mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-06 00:44:07 +01:00
* fix(deps): bump dompurify, @modelcontextprotocol/sdk, zod, body-parser, fast-uri and ip-address to their OSV-fixed releases (#3462) Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com> * build(diagram-render): empty excalidraw's public Firebase config literal in the bundle; declare BUILD_INFO.json's test lane Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com> * test(diagram-render): name the bundle, BUILD_INFO and build script by repo path so the pre-gate sees their lane Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com> * chore(pregate): drop the BUILD_INFO.json lane declaration; the drift test names the file now Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com> * fix: pre-landing review fixes Testing specialist: the drift test asserts the bundled DOMPurify is the override and the bundle carries no Google API key; deps-smoke refuses ip-address below 10.7.4 and checks every bumped package against its OSV-fixed floor in both lockfiles. Adversarial: build.ts fails when any AIza key survives the strip. Outside voice and red team: the CHANGELOG hash and scope lines match the shipped tree. Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com> * docs(diagram-render): document the Firebase-literal strip and the new drift checks Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com> --------- Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
4178 lines
7.5 MiB
Plaintext
4178 lines
7.5 MiB
Plaintext
<!doctype html>
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<base href="https://gstack-render.localhost/">
|
||
<title>gstack diagram-render</title>
|
||
<style>
|
||
body { font-family: Helvetica, "Liberation Sans", Arial, sans-serif; margin: 0; }
|
||
</style>
|
||
<script>
|
||
window.__errors = [];
|
||
window.onerror = function (msg, src, line, col, err) {
|
||
window.__errors.push(String(msg) + " @" + line + ":" + col);
|
||
};
|
||
window.addEventListener("unhandledrejection", function (e) {
|
||
window.__errors.push("unhandledrejection: " + String(e.reason).slice(0, 500));
|
||
});
|
||
</script>
|
||
</head>
|
||
<body>
|
||
<div id="status">loading</div>
|
||
<script type="module">
|
||
var Lje=Object.create;var{getPrototypeOf:Rje,defineProperty:iR,getOwnPropertyNames:Nje}=Object;var UmA=Object.prototype.hasOwnProperty;function Gje(A){return this[A]}var Uje,Mje,yu=(A,e,t)=>{var r=A!=null&&typeof A==="object";if(r){var i=e?Uje??=new WeakMap:Mje??=new WeakMap,u=i.get(A);if(u)return u}t=A!=null?Lje(Rje(A)):{};let a=e||!A||!A.__esModule||!UmA.call(A,"default")?iR(t,"default",{value:A,enumerable:!0}):t;if(A&&typeof A==="object"||typeof A==="function"){for(let n of Nje(A))if(!UmA.call(a,n))iR(a,n,{get:Gje.bind(A,n),enumerable:!0})}if(r)i.set(A,a);return a};var wu=(A,e)=>()=>(e||A((e={exports:{}}).exports,e),e.exports);var Tje=(A)=>A;function Yje(A,e){this[A]=Tje.bind(null,e)}var yt=(A,e)=>{for(var t in e)iR(A,t,{get:e[t],enumerable:!0,configurable:!0,set:Yje.bind(e,t)})};var P=(A,e,t)=>()=>{if(A)try{e=A(A=0)}catch(r){t=[r]}if(t)throw t[0];return e};var PZ=(A,e,t)=>{for(var r in e)iR(A,r,{get:e[r],set:t[r],enumerable:!0,configurable:!0})},oD=((A)=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):A)(function(A){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+A+'" is not supported')});var MmA,y=(A,e)=>MmA(A,"name",{value:e,configurable:!0}),gQ=(A,e)=>{for(var t in e)MmA(A,t,{get:e[t],enumerable:!0})};var Nt=P(()=>{MmA=Object.defineProperty});var uR=wu(function(_Z,WZ){(function(A,e){typeof _Z=="object"&&typeof WZ<"u"?WZ.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs=e()})(_Z,function(){var A=1000,e=60000,t=3600000,r="millisecond",i="second",u="minute",a="hour",n="day",o="week",s="month",l="quarter",g="year",C="date",B="Invalid Date",E=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,I={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(x){var k=["th","st","nd","rd"],T=x%100;return"["+x+(k[(T-20)%10]||k[T]||k[0])+"]"}},h=function(x,k,T){var R=String(x);return!R||R.length>=k?x:""+Array(k+1-R.length).join(T)+x},Q={s:h,z:function(x){var k=-x.utcOffset(),T=Math.abs(k),R=Math.floor(T/60),L=T%60;return(k<=0?"+":"-")+h(R,2,"0")+":"+h(L,2,"0")},m:function x(k,T){if(k.date()<T.date())return-x(T,k);var R=12*(T.year()-k.year())+(T.month()-k.month()),L=k.clone().add(R,s),M=T-L<0,U=k.clone().add(R+(M?-1:1),s);return+(-(R+(T-L)/(M?L-U:U-L))||0)},a:function(x){return x<0?Math.ceil(x)||0:Math.floor(x)},p:function(x){return{M:s,y:g,w:o,d:n,D:C,h:a,m:u,s:i,ms:r,Q:l}[x]||String(x||"").toLowerCase().replace(/s$/,"")},u:function(x){return x===void 0}},p="en",m={};m[p]=I;var f="$isDayjsObject",D=function(x){return x instanceof v||!(!x||!x[f])},w=function x(k,T,R){var L;if(!k)return p;if(typeof k=="string"){var M=k.toLowerCase();m[M]&&(L=M),T&&(m[M]=T,L=M);var U=k.split("-");if(!L&&U.length>1)return x(U[0])}else{var Y=k.name;m[Y]=k,L=Y}return!R&&L&&(p=L),L||!R&&p},b=function(x,k){if(D(x))return x.clone();var T=typeof k=="object"?k:{};return T.date=x,T.args=arguments,new v(T)},F=Q;F.l=w,F.i=D,F.w=function(x,k){return b(x,{locale:k.$L,utc:k.$u,x:k.$x,$offset:k.$offset})};var v=function(){function x(T){this.$L=w(T.locale,null,!0),this.parse(T),this.$x=this.$x||T.x||{},this[f]=!0}var k=x.prototype;return k.parse=function(T){this.$d=function(R){var{date:L,utc:M}=R;if(L===null)return new Date(NaN);if(F.u(L))return new Date;if(L instanceof Date)return new Date(L);if(typeof L=="string"&&!/Z$/i.test(L)){var U=L.match(E);if(U){var Y=U[2]-1||0,H=(U[7]||"0").substring(0,3);return M?new Date(Date.UTC(U[1],Y,U[3]||1,U[4]||0,U[5]||0,U[6]||0,H)):new Date(U[1],Y,U[3]||1,U[4]||0,U[5]||0,U[6]||0,H)}}return new Date(L)}(T),this.init()},k.init=function(){var T=this.$d;this.$y=T.getFullYear(),this.$M=T.getMonth(),this.$D=T.getDate(),this.$W=T.getDay(),this.$H=T.getHours(),this.$m=T.getMinutes(),this.$s=T.getSeconds(),this.$ms=T.getMilliseconds()},k.$utils=function(){return F},k.isValid=function(){return this.$d.toString()!==B},k.isSame=function(T,R){var L=b(T);return this.startOf(R)<=L&&L<=this.endOf(R)},k.isAfter=function(T,R){return b(T)<this.startOf(R)},k.isBefore=function(T,R){return this.endOf(R)<b(T)},k.$g=function(T,R,L){return F.u(T)?this[R]:this.set(L,T)},k.unix=function(){return Math.floor(this.valueOf()/1000)},k.valueOf=function(){return this.$d.getTime()},k.startOf=function(T,R){var L=this,M=!!F.u(R)||R,U=F.p(T),Y=function(q,CA){var tA=F.w(L.$u?Date.UTC(L.$y,CA,q):new Date(L.$y,CA,q),L);return M?tA:tA.endOf(n)},H=function(q,CA){return F.w(L.toDate()[q].apply(L.toDate("s"),(M?[0,0,0,0]:[23,59,59,999]).slice(CA)),L)},J=this.$W,K=this.$M,O=this.$D,_="set"+(this.$u?"UTC":"");switch(U){case g:return M?Y(1,0):Y(31,11);case s:return M?Y(1,K):Y(0,K+1);case o:var z=this.$locale().weekStart||0,j=(J<z?J+7:J)-z;return Y(M?O-j:O+(6-j),K);case n:case C:return H(_+"Hours",0);case a:return H(_+"Minutes",1);case u:return H(_+"Seconds",2);case i:return H(_+"Milliseconds",3);default:return this.clone()}},k.endOf=function(T){return this.startOf(T,!1)},k.$set=function(T,R){var L,M=F.p(T),U="set"+(this.$u?"UTC":""),Y=(L={},L[n]=U+"Date",L[C]=U+"Date",L[s]=U+"Month",L[g]=U+"FullYear",L[a]=U+"Hours",L[u]=U+"Minutes",L[i]=U+"Seconds",L[r]=U+"Milliseconds",L)[M],H=M===n?this.$D+(R-this.$W):R;if(M===s||M===g){var J=this.clone().set(C,1);J.$d[Y](H),J.init(),this.$d=J.set(C,Math.min(this.$D,J.daysInMonth())).$d}else Y&&this.$d[Y](H);return this.init(),this},k.set=function(T,R){return this.clone().$set(T,R)},k.get=function(T){return this[F.p(T)]()},k.add=function(T,R){var L,M=this;T=Number(T);var U=F.p(R),Y=function(K){var O=b(M);return F.w(O.date(O.date()+Math.round(K*T)),M)};if(U===s)return this.set(s,this.$M+T);if(U===g)return this.set(g,this.$y+T);if(U===n)return Y(1);if(U===o)return Y(7);var H=(L={},L[u]=e,L[a]=t,L[i]=A,L)[U]||1,J=this.$d.getTime()+T*H;return F.w(J,this)},k.subtract=function(T,R){return this.add(-1*T,R)},k.format=function(T){var R=this,L=this.$locale();if(!this.isValid())return L.invalidDate||B;var M=T||"YYYY-MM-DDTHH:mm:ssZ",U=F.z(this),Y=this.$H,H=this.$m,J=this.$M,{weekdays:K,months:O,meridiem:_}=L,z=function(CA,tA,lA,gA){return CA&&(CA[tA]||CA(R,M))||lA[tA].slice(0,gA)},j=function(CA){return F.s(Y%12||12,CA,"0")},q=_||function(CA,tA,lA){var gA=CA<12?"AM":"PM";return lA?gA.toLowerCase():gA};return M.replace(d,function(CA,tA){return tA||function(lA){switch(lA){case"YY":return String(R.$y).slice(-2);case"YYYY":return F.s(R.$y,4,"0");case"M":return J+1;case"MM":return F.s(J+1,2,"0");case"MMM":return z(L.monthsShort,J,O,3);case"MMMM":return z(O,J);case"D":return R.$D;case"DD":return F.s(R.$D,2,"0");case"d":return String(R.$W);case"dd":return z(L.weekdaysMin,R.$W,K,2);case"ddd":return z(L.weekdaysShort,R.$W,K,3);case"dddd":return K[R.$W];case"H":return String(Y);case"HH":return F.s(Y,2,"0");case"h":return j(1);case"hh":return j(2);case"a":return q(Y,H,!0);case"A":return q(Y,H,!1);case"m":return String(H);case"mm":return F.s(H,2,"0");case"s":return String(R.$s);case"ss":return F.s(R.$s,2,"0");case"SSS":return F.s(R.$ms,3,"0");case"Z":return U}return null}(CA)||U.replace(":","")})},k.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},k.diff=function(T,R,L){var M,U=this,Y=F.p(R),H=b(T),J=(H.utcOffset()-this.utcOffset())*e,K=this-H,O=function(){return F.m(U,H)};switch(Y){case g:M=O()/12;break;case s:M=O();break;case l:M=O()/3;break;case o:M=(K-J)/604800000;break;case n:M=(K-J)/86400000;break;case a:M=K/t;break;case u:M=K/e;break;case i:M=K/A;break;default:M=K}return L?M:F.a(M)},k.daysInMonth=function(){return this.endOf(s).$D},k.$locale=function(){return m[this.$L]},k.locale=function(T,R){if(!T)return this.$L;var L=this.clone(),M=w(T,R,!0);return M&&(L.$L=M),L},k.clone=function(){return F.w(this.$d,this)},k.toDate=function(){return new Date(this.valueOf())},k.toJSON=function(){return this.isValid()?this.toISOString():null},k.toISOString=function(){return this.$d.toISOString()},k.toString=function(){return this.$d.toUTCString()},x}(),S=v.prototype;return b.prototype=S,[["$ms",r],["$s",i],["$m",u],["$H",a],["$W",n],["$M",s],["$y",g],["$D",C]].forEach(function(x){S[x[1]]=function(k){return this.$g(k,x[0],x[1])}}),b.extend=function(x,k){return x.$i||(x(k,v,b),x.$i=!0),b},b.locale=w,b.isDayjs=D,b.unix=function(x){return b(1000*x)},b.en=m[p],b.Ls=m,b.p={},b})});var TmA,Vd,sA,rb,_g;var ir=P(()=>{Nt();TmA=yu(uR(),1),Vd={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},sA={trace:y((...A)=>{},"trace"),debug:y((...A)=>{},"debug"),info:y((...A)=>{},"info"),warn:y((...A)=>{},"warn"),error:y((...A)=>{},"error"),fatal:y((...A)=>{},"fatal")},rb=y(function(A="fatal"){let e=Vd.fatal;if(typeof A==="string"){if(A.toLowerCase()in Vd)e=Vd[A]}else if(typeof A==="number")e=A;if(sA.trace=()=>{},sA.debug=()=>{},sA.info=()=>{},sA.warn=()=>{},sA.error=()=>{},sA.fatal=()=>{},e<=Vd.fatal)sA.fatal=console.error?console.error.bind(console,_g("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",_g("FATAL"));if(e<=Vd.error)sA.error=console.error?console.error.bind(console,_g("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",_g("ERROR"));if(e<=Vd.warn)sA.warn=console.warn?console.warn.bind(console,_g("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",_g("WARN"));if(e<=Vd.info)sA.info=console.info?console.info.bind(console,_g("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",_g("INFO"));if(e<=Vd.debug)sA.debug=console.debug?console.debug.bind(console,_g("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",_g("DEBUG"));if(e<=Vd.trace)sA.trace=console.debug?console.debug.bind(console,_g("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",_g("TRACE"))},"setLogLevel"),_g=y((A)=>`%c${TmA.default().format("ss.SSS")} : ${A} : `,"format")});var aR,YmA;var HmA=P(()=>{aR={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:(A)=>A>=255?255:A<0?0:A,g:(A)=>A>=255?255:A<0?0:A,b:(A)=>A>=255?255:A<0?0:A,h:(A)=>A%360,s:(A)=>A>=100?100:A<0?0:A,l:(A)=>A>=100?100:A<0?0:A,a:(A)=>A>=1?1:A<0?0:A},toLinear:(A)=>{let e=A/255;return A>0.03928?Math.pow((e+0.055)/1.055,2.4):e/12.92},hue2rgb:(A,e,t)=>{if(t<0)t+=1;if(t>1)t-=1;if(t<0.16666666666666666)return A+(e-A)*6*t;if(t<0.5)return e;if(t<0.6666666666666666)return A+(e-A)*(0.6666666666666666-t)*6;return A},hsl2rgb:({h:A,s:e,l:t},r)=>{if(!e)return t*2.55;A/=360,e/=100,t/=100;let i=t<0.5?t*(1+e):t+e-t*e,u=2*t-i;switch(r){case"r":return aR.hue2rgb(u,i,A+0.3333333333333333)*255;case"g":return aR.hue2rgb(u,i,A)*255;case"b":return aR.hue2rgb(u,i,A-0.3333333333333333)*255}},rgb2hsl:({r:A,g:e,b:t},r)=>{A/=255,e/=255,t/=255;let i=Math.max(A,e,t),u=Math.min(A,e,t),a=(i+u)/2;if(r==="l")return a*100;if(i===u)return 0;let n=i-u,o=a>0.5?n/(2-i-u):n/(i+u);if(r==="s")return o*100;switch(i){case A:return((e-t)/n+(e<t?6:0))*60;case e:return((t-A)/n+2)*60;case t:return((A-e)/n+4)*60;default:return-1}}},YmA=aR});var Hje,KmA;var JmA=P(()=>{Hje={clamp:(A,e,t)=>{if(e>t)return Math.min(e,Math.max(t,A));return Math.min(t,Math.max(e,A))},round:(A)=>Math.round(A*10000000000)/10000000000},KmA=Hje});var Kje,OmA;var PmA=P(()=>{Kje={dec2hex:(A)=>{let e=Math.round(A).toString(16);return e.length>1?e:`0${e}`}},OmA=Kje});var Jje,$t;var _B=P(()=>{HmA();JmA();PmA();Jje={channel:YmA,lang:KmA,unit:OmA},$t=Jje});var jd,Zn;var ib=P(()=>{_B();jd={};for(let A=0;A<=255;A++)jd[A]=$t.unit.dec2hex(A);Zn={ALL:0,RGB:1,HSL:2}});class _mA{constructor(){this.type=Zn.ALL}get(){return this.type}set(A){if(this.type&&this.type!==A)throw Error("Cannot change both RGB and HSL channels at the same time");this.type=A}reset(){this.type=Zn.ALL}is(A){return this.type===A}}var WmA;var qmA=P(()=>{ib();WmA=_mA});class zmA{constructor(A,e){this.color=e,this.changed=!1,this.data=A,this.type=new WmA}set(A,e){return this.color=e,this.changed=!1,this.data=A,this.type.type=Zn.ALL,this}_ensureHSL(){let A=this.data,{h:e,s:t,l:r}=A;if(e===void 0)A.h=$t.channel.rgb2hsl(A,"h");if(t===void 0)A.s=$t.channel.rgb2hsl(A,"s");if(r===void 0)A.l=$t.channel.rgb2hsl(A,"l")}_ensureRGB(){let A=this.data,{r:e,g:t,b:r}=A;if(e===void 0)A.r=$t.channel.hsl2rgb(A,"r");if(t===void 0)A.g=$t.channel.hsl2rgb(A,"g");if(r===void 0)A.b=$t.channel.hsl2rgb(A,"b")}get r(){let A=this.data,e=A.r;if(!this.type.is(Zn.HSL)&&e!==void 0)return e;return this._ensureHSL(),$t.channel.hsl2rgb(A,"r")}get g(){let A=this.data,e=A.g;if(!this.type.is(Zn.HSL)&&e!==void 0)return e;return this._ensureHSL(),$t.channel.hsl2rgb(A,"g")}get b(){let A=this.data,e=A.b;if(!this.type.is(Zn.HSL)&&e!==void 0)return e;return this._ensureHSL(),$t.channel.hsl2rgb(A,"b")}get h(){let A=this.data,e=A.h;if(!this.type.is(Zn.RGB)&&e!==void 0)return e;return this._ensureRGB(),$t.channel.rgb2hsl(A,"h")}get s(){let A=this.data,e=A.s;if(!this.type.is(Zn.RGB)&&e!==void 0)return e;return this._ensureRGB(),$t.channel.rgb2hsl(A,"s")}get l(){let A=this.data,e=A.l;if(!this.type.is(Zn.RGB)&&e!==void 0)return e;return this._ensureRGB(),$t.channel.rgb2hsl(A,"l")}get a(){return this.data.a}set r(A){this.type.set(Zn.RGB),this.changed=!0,this.data.r=A}set g(A){this.type.set(Zn.RGB),this.changed=!0,this.data.g=A}set b(A){this.type.set(Zn.RGB),this.changed=!0,this.data.b=A}set h(A){this.type.set(Zn.HSL),this.changed=!0,this.data.h=A}set s(A){this.type.set(Zn.HSL),this.changed=!0,this.data.s=A}set l(A){this.type.set(Zn.HSL),this.changed=!0,this.data.l=A}set a(A){this.changed=!0,this.data.a=A}}var ZmA;var VmA=P(()=>{_B();qmA();ib();ZmA=zmA});var Oje,cQ;var ub=P(()=>{VmA();Oje=new ZmA({r:0,g:0,b:0,a:0},"transparent"),cQ=Oje});var jmA,Pp;var qZ=P(()=>{ub();ib();jmA={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:(A)=>{if(A.charCodeAt(0)!==35)return;let e=A.match(jmA.re);if(!e)return;let t=e[1],r=parseInt(t,16),i=t.length,u=i%4===0,a=i>4,n=a?1:17,o=a?8:4,s=u?0:-1,l=a?255:15;return cQ.set({r:(r>>o*(s+3)&l)*n,g:(r>>o*(s+2)&l)*n,b:(r>>o*(s+1)&l)*n,a:u?(r&l)*n/255:1},A)},stringify:(A)=>{let{r:e,g:t,b:r,a:i}=A;if(i<1)return`#${jd[Math.round(e)]}${jd[Math.round(t)]}${jd[Math.round(r)]}${jd[Math.round(i*255)]}`;else return`#${jd[Math.round(e)]}${jd[Math.round(t)]}${jd[Math.round(r)]}`}},Pp=jmA});var nR,ab;var XmA=P(()=>{_B();ub();nR={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:(A)=>{let e=A.match(nR.hueRe);if(e){let[,t,r]=e;switch(r){case"grad":return $t.channel.clamp.h(parseFloat(t)*0.9);case"rad":return $t.channel.clamp.h(parseFloat(t)*180/Math.PI);case"turn":return $t.channel.clamp.h(parseFloat(t)*360)}}return $t.channel.clamp.h(parseFloat(A))},parse:(A)=>{let e=A.charCodeAt(0);if(e!==104&&e!==72)return;let t=A.match(nR.re);if(!t)return;let[,r,i,u,a,n]=t;return cQ.set({h:nR._hue2deg(r),s:$t.channel.clamp.s(parseFloat(i)),l:$t.channel.clamp.l(parseFloat(u)),a:a?$t.channel.clamp.a(n?parseFloat(a)/100:parseFloat(a)):1},A)},stringify:(A)=>{let{h:e,s:t,l:r,a:i}=A;if(i<1)return`hsla(${$t.lang.round(e)}, ${$t.lang.round(t)}%, ${$t.lang.round(r)}%, ${i})`;else return`hsl(${$t.lang.round(e)}, ${$t.lang.round(t)}%, ${$t.lang.round(r)}%)`}},ab=nR});var oR,zZ;var $mA=P(()=>{qZ();oR={colors:{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",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#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",grey:"#808080",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",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#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",rebeccapurple:"#663399",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",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:(A)=>{A=A.toLowerCase();let e=oR.colors[A];if(!e)return;return Pp.parse(e)},stringify:(A)=>{let e=Pp.stringify(A);for(let t in oR.colors)if(oR.colors[t]===e)return t;return}},zZ=oR});var A2A,nb;var e2A=P(()=>{_B();ub();A2A={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:(A)=>{let e=A.charCodeAt(0);if(e!==114&&e!==82)return;let t=A.match(A2A.re);if(!t)return;let[,r,i,u,a,n,o,s,l]=t;return cQ.set({r:$t.channel.clamp.r(i?parseFloat(r)*2.55:parseFloat(r)),g:$t.channel.clamp.g(a?parseFloat(u)*2.55:parseFloat(u)),b:$t.channel.clamp.b(o?parseFloat(n)*2.55:parseFloat(n)),a:s?$t.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},A)},stringify:(A)=>{let{r:e,g:t,b:r,a:i}=A;if(i<1)return`rgba(${$t.lang.round(e)}, ${$t.lang.round(t)}, ${$t.lang.round(r)}, ${$t.lang.round(i)})`;else return`rgb(${$t.lang.round(e)}, ${$t.lang.round(t)}, ${$t.lang.round(r)})`}},nb=A2A});var Pje,Vn;var Xd=P(()=>{qZ();XmA();$mA();e2A();ib();Pje={format:{keyword:zZ,hex:Pp,rgb:nb,rgba:nb,hsl:ab,hsla:ab},parse:(A)=>{if(typeof A!=="string")return A;let e=Pp.parse(A)||nb.parse(A)||ab.parse(A)||zZ.parse(A);if(e)return e;throw Error(`Unsupported color format: "${A}"`)},stringify:(A)=>{if(!A.changed&&A.color)return A.color;if(A.type.is(Zn.HSL)||A.data.r===void 0)return ab.stringify(A);else if(A.a<1||!Number.isInteger(A.r)||!Number.isInteger(A.g)||!Number.isInteger(A.b))return nb.stringify(A);else return Pp.stringify(A)}},Vn=Pje});var _je=(A,e)=>{let t=Vn.parse(A);for(let r in e)t[r]=$t.channel.clamp[r](e[r]);return Vn.stringify(t)},sR;var ZZ=P(()=>{_B();Xd();sR=_je});var Wje=(A,e,t=0,r=1)=>{if(typeof A!=="number")return sR(A,{a:e});let i=cQ.set({r:$t.channel.clamp.r(A),g:$t.channel.clamp.g(e),b:$t.channel.clamp.b(t),a:$t.channel.clamp.a(r)});return Vn.stringify(i)},ln;var VZ=P(()=>{_B();ub();Xd();ZZ();ln=Wje});var qje=(A,e)=>$t.lang.round(Vn.parse(A)[e]),_p;var t2A=P(()=>{_B();Xd();_p=qje});var zje=(A)=>{let{r:e,g:t,b:r}=Vn.parse(A),i=0.2126*$t.channel.toLinear(e)+0.7152*$t.channel.toLinear(t)+0.0722*$t.channel.toLinear(r);return $t.lang.round(i)},r2A;var i2A=P(()=>{_B();Xd();r2A=zje});var Zje=(A)=>r2A(A)>=0.5,u2A;var a2A=P(()=>{i2A();u2A=Zje});var Vje=(A)=>!u2A(A),uu;var n2A=P(()=>{a2A();uu=Vje});var jje=(A,e,t)=>{let r=Vn.parse(A),i=r[e],u=$t.channel.clamp[e](i+t);if(i!==u)r[e]=u;return Vn.stringify(r)},sD;var lR=P(()=>{_B();Xd();sD=jje});var Xje=(A,e)=>sD(A,"l",e),Ie;var o2A=P(()=>{lR();Ie=Xje});var $je=(A,e)=>sD(A,"l",-e),he;var s2A=P(()=>{lR();he=$je});var AXe=(A,e)=>sD(A,"a",-e),gR;var l2A=P(()=>{lR();gR=AXe});var eXe=(A,e)=>{let t=Vn.parse(A),r={};for(let i in e){if(!e[i])continue;r[i]=t[i]+e[i]}return sR(A,r)},QA;var g2A=P(()=>{Xd();ZZ();QA=eXe});var tXe=(A,e,t=50)=>{let{r,g:i,b:u,a}=Vn.parse(A),{r:n,g:o,b:s,a:l}=Vn.parse(e),g=t/100,C=g*2-1,B=a-l,d=((C*B===-1?C:(C+B)/(1+C*B))+1)/2,I=1-d,h=r*d+n*I,Q=i*d+o*I,p=u*d+s*I,m=a*g+l*(1-g);return ln(h,Q,p,m)},c2A;var C2A=P(()=>{Xd();VZ();c2A=tXe});var rXe=(A,e=100)=>{let t=Vn.parse(A);return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,c2A(t,A,e)},ue;var B2A=P(()=>{Xd();C2A();ue=rXe});var E2A=P(()=>{VZ();t2A();n2A();o2A();s2A();l2A();g2A();B2A()});var kn=P(()=>{E2A()});function iXe(A,e){this.v=A,this.k=e}function d2A(A,e){(e==null||e>A.length)&&(e=A.length);for(var t=0,r=Array(e);t<e;t++)r[t]=A[t];return r}function uXe(A){if(Array.isArray(A))return A}function aXe(A,e){var t=A==null?null:typeof Symbol<"u"&&A[Symbol.iterator]||A["@@iterator"];if(t!=null){var r,i,u,a,n=[],o=!0,s=!1;try{if(u=(t=t.call(A)).next,e===0){if(Object(t)!==t)return;o=!1}else for(;!(o=(r=u.call(t)).done)&&(n.push(r.value),n.length!==e);o=!0);}catch(l){s=!0,i=l}finally{try{if(!o&&t.return!=null&&(a=t.return(),Object(a)!==a))return}finally{if(s)throw i}}return n}}function nXe(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function oXe(A,e){return uXe(A)||aXe(A,e)||sXe(A,e)||nXe()}function sXe(A,e){if(A){if(typeof A=="string")return d2A(A,e);var t={}.toString.call(A).slice(8,-1);return t==="Object"&&A.constructor&&(t=A.constructor.name),t==="Map"||t==="Set"?Array.from(A):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?d2A(A,e):void 0}}function cR(A){var e,t;function r(u,a){try{var n=A[u](a),o=n.value,s=o instanceof iXe;Promise.resolve(s?o.v:o).then(function(l){if(s){var g=u==="return"&&o.k?u:"next";if(!o.k||l.done)return r(g,l);l=A[g](l).value}i(!!n.done,l)},function(l){r("throw",l)})}catch(l){i(2,l)}}function i(u,a){u===2?e.reject(a):e.resolve({value:a,done:u}),(e=e.next)?r(e.key,e.arg):t=null}this._invoke=function(u,a){return new Promise(function(n,o){var s={key:u,arg:a,resolve:n,reject:o,next:null};t?t=t.next=s:(e=t=s,r(u,a))})},typeof A.return!="function"&&(this.return=void 0)}function ga(A){return function(e){if(e instanceof RegExp)e.lastIndex=0;for(var t=arguments.length,r=Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return nV(A,e,r)}}function G2A(A){return function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return oV(A,t)}}function Mi(A,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Wp;if(I2A)I2A(A,null);if(!gD(e))return A;let r=e.length;while(r--){let i=e[r];if(typeof i==="string"){let u=t(i);if(u!==i){if(!lXe(e))e[r]=u;i=u}}A[i]=!0}return A}function IXe(A){for(let e=0;e<A.length;e++)if(!$s(A,e))A[e]=null;return A}function jl(A){let e=lD(null);for(let r of S2A(A)){var t=oXe(r,2);let i=t[0],u=t[1];if($s(A,i))if(gD(u))e[i]=IXe(u);else if(u&&typeof u==="object"&&u.constructor===Object)e[i]=jl(u);else e[i]=u}return e}function hXe(A){switch(typeof A){case"string":return A;case"number":return EXe(A);case"boolean":return dXe(A);case"bigint":return f2A?f2A(A):"0";case"symbol":return m2A?m2A(A):"Symbol()";case"undefined":return gb(A);case"function":case"object":{if(A===null)return gb(A);let e=A,t=Wg(e,"toString");if(typeof t==="function"){let r=t(e);return typeof r==="string"?r:gb(r)}return gb(A)}default:return gb(A)}}function Wg(A,e){while(A!==null){let r=R2A(A,e);if(r){if(r.get)return ga(r.get);if(typeof r.value==="function")return ga(r.value)}A=L2A(A)}function t(){return null}return t}function QXe(A,e){while(A!==null){let t=R2A(A,e);if(t)return t.get?ga(t.get):null;A=L2A(A)}return null}function pXe(A){try{return zo(A,""),!0}catch(e){return!1}}function U2A(){let A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:NXe(),e=(ze)=>U2A(ze);if(e.version="3.4.17",e.removed=[],!A||!A.document||A.document.nodeType!==Fn.document||!A.Element)return e.isSupported=!1,e;let t=A.document,r=t,i=r.currentScript;A.DocumentFragment;let{HTMLTemplateElement:u,Node:a,Element:n,NodeFilter:o}=A;A.NamedNodeMap===void 0&&(A.NamedNodeMap||A.MozNamedAttrMap),A.HTMLFormElement;let{DOMParser:s,trustedTypes:l}=A,g=n.prototype,C=Wg(g,"cloneNode"),B=Wg(g,"remove"),E=Wg(g,"removeAttributeNode"),d=Wg(g,"nextSibling"),I=Wg(g,"childNodes"),h=Wg(g,"parentNode"),Q=Wg(g,"shadowRoot"),p=Wg(g,"attributes"),m=a&&a.prototype?Wg(a.prototype,"nodeType"):null,f=a&&a.prototype?Wg(a.prototype,"nodeName"):null,D=a&&a.prototype?Wg(a.prototype,"ownerDocument"):null,w=function(GA){return m?m(GA):GA.nodeType},b=function(GA){return f?f(GA):GA.nodeName},F=QXe(g,"namespaceURI"),v=function(GA){return F?F(GA):GA.namespaceURI};if(typeof u==="function"){let ze=t.createElement("template");if(ze.content&&ze.content.ownerDocument)t=ze.content.ownerDocument}let S,x="",k,T=!1,R=0,L=function(){if(R>0)throw AI('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},M=function(GA){L(),R++;try{return S.createHTML(GA)}finally{R--}},U=function(GA){L(),R++;try{return S.createScriptURL(GA)}finally{R--}},Y=function(){if(!T)k=GXe(l,i),T=!0;return k},H=t,{implementation:J,createNodeIterator:K,createDocumentFragment:O,getElementsByTagName:_}=H,z=r.importNode,j=x2A();e.isSupported=typeof S2A==="function"&&typeof h==="function"&&J&&J.createHTMLDocument!==void 0;let q=DXe,CA=yXe,tA=wXe,lA=bXe,gA=vXe,aA=kXe,RA=FXe,wA=SXe,JA=v2A,TA=null,qA=Mi({},[...D2A,...eV,...tV,...rV,...y2A]),BA=null,bA=Mi({},[...w2A,...iV,...b2A,...CR]),FA=Object.seal(lD(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),IA=null,nA=null,eA=Object.seal(lD(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),EA=!0,mA=!0,kA=!1,SA=!0,YA=!1,dA=!0,W=!1,Z=!1,pA=null,AA=null,DA=!1,rA=!1,KA=!1,_A=!1,zA=!0,WA=!1,te="user-content-",ZA=!0,ee=!1,$A=null,oe={},vA=null,Pe=Mi({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),MA=null,ke=Mi({},["audio","video","img","source","image","track"]),We=null,se=Mi({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Te="http://www.w3.org/1998/Math/MathML",je="http://www.w3.org/2000/svg",xe="http://www.w3.org/1999/xhtml",yA=xe,Ne=!1,He=null,de=Mi({},[Te,je,xe],AV),NA=wo(["mi","mo","mn","ms","mtext"]),ce=Mi({},NA),me=wo(["annotation-xml"]),Le=Mi({},me),Lt=Mi({},["title","style","font","a","script"]),tt=null,Ht=["application/xhtml+xml","text/html"],lr="text/html",It=null,Ct=null,Kt=t.createElement("form"),Ce=function(GA){return GA instanceof RegExp||GA instanceof Function},De=function(){let GA=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Ct&&Ct===GA)return;if(!GA||typeof GA!=="object")GA={};GA=jl(GA),tt=Ht.indexOf(GA.PARSER_MEDIA_TYPE)===-1?lr:GA.PARSER_MEDIA_TYPE,It=tt==="application/xhtml+xml"?AV:Wp,TA=CQ(GA,"ALLOWED_TAGS",qA,{transform:It}),BA=CQ(GA,"ALLOWED_ATTR",bA,{transform:It}),He=CQ(GA,"ALLOWED_NAMESPACES",de,{transform:AV}),We=CQ(GA,"ADD_URI_SAFE_ATTR",se,{transform:It,base:se}),MA=CQ(GA,"ADD_DATA_URI_TAGS",ke,{transform:It,base:ke}),vA=CQ(GA,"FORBID_CONTENTS",Pe,{transform:It}),IA=CQ(GA,"FORBID_TAGS",jl({}),{transform:It}),nA=CQ(GA,"FORBID_ATTR",jl({}),{transform:It}),oe=$s(GA,"USE_PROFILES")?GA.USE_PROFILES&&typeof GA.USE_PROFILES==="object"?jl(GA.USE_PROFILES):GA.USE_PROFILES:!1,EA=GA.ALLOW_ARIA_ATTR!==!1,mA=GA.ALLOW_DATA_ATTR!==!1,kA=GA.ALLOW_UNKNOWN_PROTOCOLS||!1,SA=GA.ALLOW_SELF_CLOSE_IN_ATTR!==!1,YA=GA.SAFE_FOR_TEMPLATES||!1,dA=GA.SAFE_FOR_XML!==!1,W=GA.WHOLE_DOCUMENT||!1,rA=GA.RETURN_DOM||!1,KA=GA.RETURN_DOM_FRAGMENT||!1,_A=GA.RETURN_TRUSTED_TYPE||!1,DA=GA.FORCE_BODY||!1,zA=GA.SANITIZE_DOM!==!1,WA=GA.SANITIZE_NAMED_PROPS||!1,ZA=GA.KEEP_CONTENT!==!1,ee=GA.IN_PLACE||!1,JA=pXe(GA.ALLOWED_URI_REGEXP)?GA.ALLOWED_URI_REGEXP:v2A,yA=typeof GA.NAMESPACE==="string"?GA.NAMESPACE:xe,ce=aV(GA,"MATHML_TEXT_INTEGRATION_POINTS",()=>Mi({},NA)),Le=aV(GA,"HTML_INTEGRATION_POINTS",()=>Mi({},me));let ie=aV(GA,"CUSTOM_ELEMENT_HANDLING",()=>lD(null));if(FA=lD(null),$s(ie,"tagNameCheck")&&Ce(ie.tagNameCheck))FA.tagNameCheck=ie.tagNameCheck;if($s(ie,"attributeNameCheck")&&Ce(ie.attributeNameCheck))FA.attributeNameCheck=ie.attributeNameCheck;if($s(ie,"allowCustomizedBuiltInElements")&&typeof ie.allowCustomizedBuiltInElements==="boolean")FA.allowCustomizedBuiltInElements=ie.allowCustomizedBuiltInElements;if(Zo(FA),YA)mA=!1;if(KA)rA=!0;if(oe){if(TA=Mi({},y2A),BA=lD(null),oe.html===!0)Mi(TA,D2A),Mi(BA,w2A);if(oe.svg===!0)Mi(TA,eV),Mi(BA,iV),Mi(BA,CR);if(oe.svgFilters===!0)Mi(TA,tV),Mi(BA,iV),Mi(BA,CR);if(oe.mathMl===!0)Mi(TA,rV),Mi(BA,b2A),Mi(BA,CR)}if(eA.tagCheck=null,eA.attributeCheck=null,$s(GA,"ADD_TAGS")){if(typeof GA.ADD_TAGS==="function")eA.tagCheck=GA.ADD_TAGS;else if(gD(GA.ADD_TAGS)){if(TA===qA)TA=jl(TA);Mi(TA,GA.ADD_TAGS,It)}}if($s(GA,"ADD_ATTR")){if(typeof GA.ADD_ATTR==="function")eA.attributeCheck=GA.ADD_ATTR;else if(gD(GA.ADD_ATTR)){if(BA===bA)BA=jl(BA);Mi(BA,GA.ADD_ATTR,It)}}if($s(GA,"ADD_FORBID_CONTENTS")&&gD(GA.ADD_FORBID_CONTENTS)){if(vA===Pe)vA=jl(vA);Mi(vA,GA.ADD_FORBID_CONTENTS,It)}if(ZA)TA["#text"]=!0;if(W)Mi(TA,["html","head","body"]);if(TA.table)Mi(TA,["tbody"]),delete IA.tbody;if(GA.TRUSTED_TYPES_POLICY){if(typeof GA.TRUSTED_TYPES_POLICY.createHTML!=="function")throw AI('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof GA.TRUSTED_TYPES_POLICY.createScriptURL!=="function")throw AI('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let Je=S;S=GA.TRUSTED_TYPES_POLICY;try{x=M("")}catch(Oe){throw S=Je,Oe}}else if(GA.TRUSTED_TYPES_POLICY===null)S=void 0,x="";else{if(S===void 0)S=Y();if(S&&typeof x==="string")x=M("")}if(wo)wo(GA);Ct=GA},Ve=Mi({},[...eV,...tV,...fXe]),Vt=Mi({},[...rV,...mXe]),jt=function(GA,ie,Je){if(ie.namespaceURI===xe)return GA==="svg";if(ie.namespaceURI===Te)return GA==="svg"&&(Je==="annotation-xml"||ce[Je]);return Boolean(Ve[GA])},Or=function(GA,ie,Je){if(ie.namespaceURI===xe)return GA==="math";if(ie.namespaceURI===je)return GA==="math"&&Le[Je];return Boolean(Vt[GA])},bi=function(GA,ie,Je){if(ie.namespaceURI===je&&!Le[Je])return!1;if(ie.namespaceURI===Te&&!ce[Je])return!1;return!Vt[GA]&&(Lt[GA]||!Ve[GA])},fr=function(GA){let ie=v(GA),Je=Wp(b(GA)),Oe=h(GA),zt,mr;if(Oe&&w(Oe)===Fn.element)zt={namespaceURI:v(Oe)},mr=Wp(b(Oe));else zt={namespaceURI:yA},mr="template";if(!He[ie])return!1;if(ie===je)return jt(Je,zt,mr);if(ie===Te)return Or(Je,zt,mr);if(ie===xe)return bi(Je,zt,mr);if(tt==="application/xhtml+xml"&&He[ie])return!0;return!1},At=function(GA){ob(e.removed,{element:GA});try{h(GA).removeChild(GA)}catch(ie){if(B(GA),!h(GA))throw AI("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Ye=function(GA,ie,Je){try{E(GA,ie)}catch(Oe){try{GA.removeAttribute(Je)}catch(zt){}}},Bt=function(GA){LA(GA);let ie=I(GA);if(ie)$d(cXe(ie),(Oe)=>{try{B(Oe)}catch(zt){}});let Je=w(GA)===Fn.element?p(GA):null;if(Je)for(let Oe=Je.length-1;Oe>=0;--Oe){let zt=Je[Oe],mr=zt&&zt.name;if(typeof mr==="string")Ye(GA,zt,mr)}},nt=function(GA,ie,Je){if(!Je)try{Je=ie.getAttributeNode(GA)}catch(Oe){Je=null}ob(e.removed,{attribute:Je||null,from:ie});try{if(Je)E(ie,Je);else ie.removeAttribute(GA)}catch(Oe){try{ie.removeAttribute(GA)}catch(zt){}}if(GA==="is")if(rA||KA)try{At(ie)}catch(Oe){}else try{ie.setAttribute(GA,"")}catch(Oe){}},Me=function(GA){let ie=p(GA);if(!ie)return;for(let Je=ie.length-1;Je>=0;--Je){let Oe=ie[Je],zt=Oe&&Oe.name;if(typeof zt!=="string"||BA[It(zt)])continue;Ye(GA,Oe,zt)}},kt=function(GA,ie){let Je=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,Oe=[GA];while(Oe.length>0){let zt=Oe.pop();if(ie(zt)===!1)continue;if(Je&&w(zt)===Fn.element){let ii=Q(zt);if(Du(ii))Oe.push(ii)}let mr=I(zt);if(mr)for(let ii=mr.length-1;ii>=0;--ii)Oe.push(mr[ii])}},LA=function(GA){kt(GA,(ie)=>{if(w(ie)===Fn.element)Me(ie)})},Gi=function(GA){let ie=[];return kt(GA,(Je)=>{ie.push(Je)},!0),ie},HA=function(GA,ie){let Je=XZ();$d(Gi(GA),(Oe)=>{if(w(Oe)===Fn.element)$Z(Je,Oe)}),$d(ie,(Oe)=>{if(w(Oe)===Fn.element&&!sb(Je,Oe))Me(Oe)})},Er=function(GA,ie){let Je=!1;return $d(e.removed,(Oe)=>{if(Oe.element)Je=Je||Oe.element===GA,LA(Oe.element)}),HA(GA,ie),Je},xa=8,ns=function(GA,ie){let Je=$A,Oe=null,zt=()=>{if(!Oe)Oe=XZ(),$d(ie,(mr)=>{$Z(Oe,mr)});return Oe};for(let mr=0;;mr++){let ii=Gi(GA),sn=[GA],Vl=!1;if($d(ii,(qo)=>{if(w(qo)===Fn.documentFragment)ob(sn,qo);else if(!Vl&&!sb(Je,qo))Vl=sb(zt(),qo)}),!Vl)return;if(mr>=xa)throw AI("the tree kept changing during in-place sanitization; refusing to return it");$d(sn,(qo,x0)=>{Og(qo,x0>0,GA,zt())})}},Og=function(GA,ie,Je,Oe){let zt=v0(GA),mr;while(mr=zt.nextNode()){if(!sb(Oe,mr)||sb($A,mr))continue;if(ie)Pa(j.uponSanitizeShadowNode,mr,null);if(ss(mr,Je),iD(mr,Je),Du(mr.content))nQ(mr.content)}},os=function(GA){if($A)$Z($A,GA)},ri=function(GA,ie){if(!dA)return!1;if(GA==="patchsrc")return!0;return GA==="for"&&ie!=="label"&&ie!=="output"},Ku=function(GA){if(!dA)return;kt(GA,(ie)=>{let Je=w(ie);if(Je===Fn.processingInstruction||Je===Fn.comment&&zo(k2A,ie.data)){try{B(ie)}catch(Oe){}return!1}if(Je===Fn.element){let Oe=ie,zt=It(b(ie));try{if(Oe.hasAttribute&&Oe.hasAttribute("patchsrc"))Oe.removeAttribute("patchsrc");if(Oe.hasAttribute&&Oe.hasAttribute("for")&&ri("for",zt))Oe.removeAttribute("for")}catch(mr){}}return!0})},yo=function(GA){let ie=null,Je=null;if(DA)GA="<remove></remove>"+GA;else{let mr=Q2A(GA,/^[\r\n\t ]+/);Je=mr&&mr[0]}if(tt==="application/xhtml+xml"&&yA===xe)GA='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+GA+"</body></html>";let Oe=S?M(GA):GA;if(yA===xe)try{ie=new s().parseFromString(Oe,tt)}catch(mr){}if(!ie||!ie.documentElement){ie=J.createDocument(yA,"template",null);try{ie.documentElement.innerHTML=Ne?x:Oe}catch(mr){}}let zt=ie.body||ie.documentElement;if(GA&&Je)zt.insertBefore(t.createTextNode(Je),zt.childNodes[0]||null);if(yA===xe)return _.call(ie,W?"html":"body")[0];return W?ie.documentElement:zt},v0=function(GA){let ie=D?D(GA):GA.ownerDocument;return K.call(ie||GA,GA,o.SHOW_ELEMENT|o.SHOW_COMMENT|o.SHOW_TEXT|o.SHOW_PROCESSING_INSTRUCTION|o.SHOW_CDATA_SECTION,null)},Sa=function(GA){return GA=lb(GA,q," "),GA=lb(GA,CA," "),GA=lb(GA,tA," "),GA},JB=function(GA){var ie;bn(GA);let Je=(ie=GA.querySelectorAll)===null||ie===void 0?void 0:ie.call(GA,"template");if(Je)$d(Je,(Oe)=>{if(Du(Oe.content))JB(Oe.content)})},bn=function(GA){GA.normalize();let ie=D?D(GA):GA.ownerDocument,Je=K.call(ie||GA,GA,o.SHOW_TEXT|o.SHOW_COMMENT|o.SHOW_CDATA_SECTION|o.SHOW_PROCESSING_INSTRUCTION,null),Oe=Je.nextNode();while(Oe)Oe.data=Sa(Oe.data),Oe=Je.nextNode()},AC=function(GA){let ie=f?f(GA):null;if(typeof ie!=="string")return!1;if(It(ie)!=="form")return!1;return typeof GA.nodeName!=="string"||typeof GA.textContent!=="string"||typeof GA.removeChild!=="function"||GA.attributes!==p(GA)||typeof GA.removeAttribute!=="function"||typeof GA.removeAttributeNode!=="function"||typeof GA.getAttributeNode!=="function"||typeof GA.setAttribute!=="function"||typeof GA.namespaceURI!=="string"||typeof GA.insertBefore!=="function"||typeof GA.hasChildNodes!=="function"||GA.nodeType!==m(GA)||GA.childNodes!==I(GA)},Du=function(GA){if(!m||typeof GA!=="object"||GA===null)return!1;try{return m(GA)===Fn.documentFragment}catch(ie){return!1}},zl=function(GA){if(!m||typeof GA!=="object"||GA===null)return!1;try{return typeof m(GA)==="number"}catch(ie){return!1}};function Pa(ze,GA,ie){if(ze.length===0)return;$d(ze,(Je)=>{Je.call(e,GA,ie,Ct)})}let k0=function(GA,ie){if(dA&&GA.hasChildNodes()&&!zl(GA.firstElementChild)&&zo(uV,GA.textContent)&&zo(uV,GA.innerHTML))return!0;if(dA&&RXe[ie]&&w(GA)===Fn.element&&v(GA)===xe&&(zl(GA.firstElementChild)||typeof GA.textContent==="string"&&zo(uV,GA.textContent)))return!0;if(GA.nodeType===Fn.processingInstruction)return!0;if(dA&&GA.nodeType===Fn.comment&&zo(k2A,GA.data))return!0;return!1},aQ=function(GA,ie){if(GA instanceof RegExp)return zo(GA,ie);if(GA instanceof Function){for(var Je=arguments.length,Oe=Array(Je>2?Je-2:0),zt=2;zt<Je;zt++)Oe[zt-2]=arguments[zt];return Boolean(GA(ie,...Oe))}return!1},eC=function(GA,ie,Je){if(!IA[ie]&&OB(ie)&&aQ(FA.tagNameCheck,ie))return!1;if(ZA&&!vA[ie]&&!vA[Wp(ie)]){let Oe=h(GA),zt=I(GA);if(zt&&Oe){let mr=zt.length;for(let ii=mr-1;ii>=0;--ii){let sn=GA===Je?C(zt[ii],!0):zt[ii];Oe.insertBefore(sn,d(GA))}}}return At(GA),!0},tC=function(GA,ie,Je,Oe){if(GA.length===0)return ie;return ie===Je||ie===Oe?jl(ie):ie},Zl=function(GA,ie){if(GA===ie||h(GA)!==null)return!1;if(ee)LA(GA);return!0},ss=function(GA,ie){if(os(GA),Pa(j.beforeSanitizeElements,GA,null),Zl(GA,ie))return!0;if(AC(GA))return At(GA),!0;let Je=It(b(GA));if(TA=tC(j.uponSanitizeElement,TA,qA,pA),Pa(j.uponSanitizeElement,GA,{tagName:Je,allowedTags:TA}),Zl(GA,ie))return!0;if(k0(GA,Je))return At(GA),!0;if(IA[Je]||!(eA.tagCheck instanceof Function&&eA.tagCheck(Je))&&!TA[Je]){let Oe=eC(GA,Je,ie);if(Oe===!1){if(Pa(j.afterSanitizeElements,GA,null),Zl(GA,ie))return!0}return Oe}if(w(GA)===Fn.element&&!fr(GA))return At(GA),!0;if((Je==="noscript"||Je==="noembed"||Je==="noframes")&&zo(LXe,GA.innerHTML))return At(GA),!0;if(YA&&GA.nodeType===Fn.text){let Oe=Sa(GA.textContent);if(GA.textContent!==Oe)ob(e.removed,{element:GA.cloneNode()}),GA.textContent=Oe}return Pa(j.afterSanitizeElements,GA,null),Zl(GA,ie)},rC=function(GA,ie,Je){if(nA[ie])return!1;if(ri(ie,GA))return!1;if(zA&&(ie==="id"||ie==="name")&&((Je in t)||(Je in Kt)))return!1;let Oe=BA[ie]||eA.attributeCheck instanceof Function&&eA.attributeCheck(ie,GA);if(mA&&zo(lA,ie))return!0;if(EA&&zo(gA,ie))return!0;if(!Oe)return OB(GA)&&aQ(FA.tagNameCheck,GA)&&aQ(FA.attributeNameCheck,ie,GA)||ie==="is"&&FA.allowCustomizedBuiltInElements&&aQ(FA.tagNameCheck,Je);if(We[ie])return!0;if(zo(JA,lb(Je,RA,"")))return!0;if((ie==="src"||ie==="xlink:href"||ie==="href")&&GA!=="script"&&p2A(Je,"data:")===0&&MA[GA])return!0;if(kA&&!zo(aA,lb(Je,RA,"")))return!0;return!Je},Pg=Mi({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),OB=function(GA){return!Pg[Wp(GA)]&&zo(wA,GA)},F0=function(GA,ie,Je,Oe){if(S&&typeof l==="object"&&typeof l.getAttributeType==="function"&&!Je)switch(l.getAttributeType(GA,ie)){case"TrustedHTML":return M(Oe);case"TrustedScriptURL":return U(Oe)}return Oe},RZ=function(GA,ie,Je,Oe){try{if(Je)GA.setAttributeNS(Je,ie,Oe);else GA.setAttribute(ie,Oe);if(AC(GA))return At(GA),!1;return!0}catch(zt){return nt(ie,GA),!1}},iC=function(GA,ie){if(dA&&zo(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,ie))return!0;return Wp(GA)==="attributename"&&Q2A(ie,"href")!==null},iD=function(GA,ie){if(Pa(j.beforeSanitizeAttributes,GA,null),Zl(GA,ie))return;let Je=GA.attributes;if(!Je||AC(GA))return;BA=tC(j.uponSanitizeAttribute,BA,bA,AA);let Oe={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:BA,forceKeepAttr:void 0},zt=Je.length,mr=It(GA.nodeName);while(zt--){let ii=Je[zt],{name:sn,namespaceURI:Vl,value:qo}=ii,x0=It(sn),oQ=qo,S0=sn==="value"?oQ:BXe(oQ),sQ=!1;if(Oe.attrName=x0,Oe.attrValue=S0,Oe.keepAttr=!0,Oe.forceKeepAttr=void 0,Pa(j.uponSanitizeAttribute,GA,Oe),S0=Oe.attrValue,WA&&(x0==="id"||x0==="name")&&p2A(S0,te)!==0)nt(sn,GA,ii),S0=te+S0,sQ=!0;if(iC(sn,S0)){nt(sn,GA,ii);continue}if(Oe.forceKeepAttr)continue;if(!Oe.keepAttr){nt(sn,GA,ii);continue}if(!SA&&zo(F2A,S0)){nt(sn,GA,ii);continue}if(YA)S0=Sa(S0);if(!rC(mr,x0,S0)){nt(sn,GA,ii);continue}if(S0=F0(mr,x0,Vl,S0),S0!==oQ){if(RZ(GA,sn,Vl,S0)&&sQ)h2A(e.removed)}}Pa(j.afterSanitizeAttributes,GA,null),Zl(GA,ie)},nQ=function(GA){let ie=null,Je=v0(GA);Pa(j.beforeSanitizeShadowDOM,GA,null);while(ie=Je.nextNode()){if(Pa(j.uponSanitizeShadowNode,ie,null),ss(ie,GA),iD(ie,GA),Du(ie.content))nQ(ie.content);if(w(ie)===Fn.element){let Oe=Q(ie);if(Du(Oe))uD(Oe),nQ(Oe)}}if(YA)bn(GA);Pa(j.afterSanitizeShadowDOM,GA,null)},uD=function(GA){let ie=[{node:GA,shadow:null}];while(ie.length>0){let Je=ie.pop();if(Je.shadow){nQ(Je.shadow);continue}let Oe=Je.node,zt=w(Oe)===Fn.element,mr=I(Oe);if(mr)for(let ii=mr.length-1;ii>=0;--ii)ie.push({node:mr[ii],shadow:null});if(zt){let ii=f?f(Oe):null;if(typeof ii==="string"&&It(ii)==="template"){let sn=Oe.content;if(Du(sn))ie.push({node:sn,shadow:null})}}if(zt){let ii=Q(Oe);if(Du(ii))ie.push({node:null,shadow:ii},{node:ii,shadow:null})}}};return e.sanitize=function(ze){let GA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ie=null,Je=null,Oe=null,zt=null;if(Ne=!ze,Ne)ze="<!-->";if(typeof ze!=="string"&&!zl(ze)){if(ze=hXe(ze),typeof ze!=="string")throw AI("dirty is not a string, aborting")}if(!e.isSupported)return ze;if(Z)TA=pA,BA=AA;else De(GA);if(j.uponSanitizeElement.length>0||j.uponSanitizeAttribute.length>0)TA=jl(TA);if(j.uponSanitizeAttribute.length>0)BA=jl(BA);e.removed=[];let mr=ee&&typeof ze!=="string"&&zl(ze),ii=[],sn=$A;if(mr){Ku(ze);let x0=b(ze);if(typeof x0==="string"){let oQ=It(x0);if(!TA[oQ]||IA[oQ])throw Bt(ze),AI("root node is forbidden and cannot be sanitized in-place")}if(AC(ze))throw Bt(ze),AI("root node is clobbered and cannot be sanitized in-place");ii=Gi(ze),$A=XZ()}else if(zl(ze)){if(ie=yo("<!---->"),Je=ie.ownerDocument.importNode(ze,!0),Je.nodeType===Fn.element&&Je.nodeName==="BODY")ie=Je;else if(Je.nodeName==="HTML")ie=Je;else ie.appendChild(Je);uD(ie)}else{if(!rA&&!YA&&!W&&ze.indexOf("<")===-1)return S&&_A?M(ze):ze;if(ie=yo(ze),!ie)return rA?null:_A?x:""}if(ie&&DA)At(ie.firstChild);let Vl=mr?ze:ie;try{if(mr)uD(ze);let x0=v0(Vl);while(Oe=x0.nextNode())if(ss(Oe,Vl),iD(Oe,Vl),Du(Oe.content))nQ(Oe.content);if(mr)ns(ze,ii)}catch(x0){if(mr)Bt(ze),Er(ze,ii);throw x0}finally{$A=sn}if(mr){if(Er(ze,ii))throw AI("a node selected for removal could not be safely returned; refusing to sanitize in place");if(YA)JB(ze);return ze}if(rA){if(YA)JB(ie);if(KA){zt=O.call(ie.ownerDocument);while(ie.firstChild)zt.appendChild(ie.firstChild)}else zt=ie;if(BA.shadowroot||BA.shadowrootmode)zt=z.call(r,zt,!0);return zt}let qo=W?ie.outerHTML:ie.innerHTML;if(W&&TA["!doctype"]&&ie.ownerDocument&&ie.ownerDocument.doctype&&ie.ownerDocument.doctype.name&&zo(xXe,ie.ownerDocument.doctype.name))qo="<!DOCTYPE "+ie.ownerDocument.doctype.name+`>
|
||
`+qo;if(YA)qo=Sa(qo);return S&&_A?M(qo):qo},e.setConfig=function(){let ze=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};De(ze),Z=!0,pA=TA,AA=BA},e.clearConfig=function(){Ct=null,Z=!1,pA=null,AA=null,S=k,x=""},e.isValidAttribute=function(ze,GA,ie){if(!Ct)De({});let Je=It(ze),Oe=It(GA);if(typeof ie==="string"&&(iC(GA,ie)||!SA&&zo(F2A,ie)))return!1;return rC(Je,Oe,ie)},e.addHook=function(ze,GA){if(typeof GA!=="function")return;if(!$s(j,ze))return;ob(j[ze],GA)},e.removeHook=function(ze,GA){if(!$s(j,ze))return;if(GA!==void 0){let ie=gXe(j[ze],GA);return ie===-1?void 0:CXe(j[ze],ie,1)[0]}return h2A(j[ze])},e.removeHooks=function(ze){if(!$s(j,ze))return;j[ze]=[]},e.removeAllHooks=function(){j=x2A()},e}var S2A,I2A,lXe,L2A,R2A,wo,Zo,lD,N2A,nV,oV,$d,gXe,h2A,ob,cXe,CXe,gD,XZ,$Z,sb,Wp,AV,Q2A,lb,p2A,BXe,EXe,dXe,f2A,m2A,$s,gb,zo,AI,D2A,eV,tV,fXe,rV,mXe,y2A,w2A,iV,b2A,CR,DXe,yXe,wXe,bXe,vXe,v2A,kXe,FXe,xXe,SXe,uV,k2A,LXe,F2A,Fn,RXe,NXe=function(){return typeof window>"u"?null:window},GXe=function(e,t){if(typeof e!=="object"||typeof e.createPolicy!=="function")return null;let r=null,i="data-tt-policy-suffix";if(t&&t.hasAttribute(i))r=t.getAttribute(i);let u="dompurify"+(r?"#"+r:"");try{return e.createPolicy(u,{createHTML(a){return a},createScriptURL(a){return a}})}catch(a){return console.warn("TrustedTypes policy "+u+" could not be created."),null}},x2A=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},CQ=function(e,t,r,i){return $s(e,t)&&gD(e[t])?Mi(i.base?jl(i.base):{},e[t],i.transform):r},aV=function(e,t,r){let i=$s(e,t)?e[t]:void 0;return i&&typeof i==="object"?jl(i):r()},Al;var cD=P(()=>{/*! @license DOMPurify 3.4.17 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.17/LICENSE *//*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */cR.prototype[typeof Symbol=="function"&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},cR.prototype.next=function(A){return this._invoke("next",A)},cR.prototype.throw=function(A){return this._invoke("throw",A)},cR.prototype.return=function(A){return this._invoke("return",A)};S2A=Object.entries,I2A=Object.setPrototypeOf,lXe=Object.isFrozen,L2A=Object.getPrototypeOf,R2A=Object.getOwnPropertyDescriptor,wo=Object.freeze,Zo=Object.seal,lD=Object.create,N2A=typeof Reflect<"u"&&Reflect,nV=N2A.apply,oV=N2A.construct;if(!wo)wo=function(e){return e};if(!Zo)Zo=function(e){return e};if(!nV)nV=function(e,t){for(var r=arguments.length,i=Array(r>2?r-2:0),u=2;u<r;u++)i[u-2]=arguments[u];return e.apply(t,i)};if(!oV)oV=function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return new e(...r)};$d=ga(Array.prototype.forEach);Array.prototype.indexOf;gXe=ga(Array.prototype.lastIndexOf),h2A=ga(Array.prototype.pop),ob=ga(Array.prototype.push),cXe=ga(Array.prototype.slice),CXe=ga(Array.prototype.splice),gD=Array.isArray,XZ=G2A(Set),$Z=ga(Set.prototype.add),sb=ga(Set.prototype.has),Wp=ga(String.prototype.toLowerCase),AV=ga(String.prototype.toString),Q2A=ga(String.prototype.match),lb=ga(String.prototype.replace),p2A=ga(String.prototype.indexOf),BXe=ga(String.prototype.trim),EXe=ga(Number.prototype.toString),dXe=ga(Boolean.prototype.toString),f2A=typeof BigInt>"u"?null:ga(BigInt.prototype.toString),m2A=typeof Symbol>"u"?null:ga(Symbol.prototype.toString),$s=ga(Object.prototype.hasOwnProperty),gb=ga(Object.prototype.toString),zo=ga(RegExp.prototype.test),AI=G2A(TypeError);D2A=wo(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),eV=wo(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),tV=wo(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),fXe=wo(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),rV=wo(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),mXe=wo(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),y2A=wo(["#text"]),w2A=wo(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),iV=wo(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),b2A=wo(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),CR=wo(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),DXe=Zo(/{{[\w\W]*|^[\w\W]*}}/g),yXe=Zo(/<%[\w\W]*|^[\w\W]*%>/g),wXe=Zo(/\${[\w\W]*/g),bXe=Zo(/^data-[\-\w.\u00B7-\uFFFF]+$/),vXe=Zo(/^aria-[\-\w]+$/),v2A=Zo(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),kXe=Zo(/^(?:\w+script|data):/i),FXe=Zo(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),xXe=Zo(/^html$/i),SXe=Zo(/^[a-z][.\w]*(-[.\w]+)+$/i),uV=Zo(/<[/\w!]/g),k2A=Zo(/<[/\w]/g),LXe=Zo(/<\/no(script|embed|frames)/i),F2A=Zo(/\/>/i),Fn={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},RXe=wo(Mi({},["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]));Al=U2A()});function JXe(A){if(typeof A!=="string")return A.enum[0];switch(A){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{};default:throw Error("Unexpected schema type; settings must declare an explicit default.")}}function OXe(A){if(A.default!==void 0)return A.default;var e=Array.isArray(A.type)?A.type[0]:A.type;return JXe(e)}function PXe(A,e,t,r){var i=t[e];A[e]=i!==void 0?r.processor?r.processor(i):i:OXe(r)}class xR{constructor(A){if(A===void 0)A={};this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,A=A||{};for(var e of Object.keys(fV)){var t=fV[e];if(t)PXe(this,e,A,t)}}reportNonstrict(A,e,t){var r=this.strict;if(typeof r==="function")r=r(A,e,t);if(!r||r==="ignore")return;else if(r===!0||r==="error")throw new ut("LaTeX-incompatible input and strict mode is set to 'error': "+(e+" ["+A+"]"),t);else if(r==="warn")typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(e+" ["+A+"]"));else typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+r+"': "+e+" ["+A+"]"))}useStrictBehavior(A,e,t){var r=this.strict;if(typeof r==="function")try{r=r(A,e,t)}catch(i){r="error"}if(!r||r==="ignore")return!1;else if(r===!0||r==="error")return!0;else if(r==="warn")return typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(e+" ["+A+"]")),!1;else return typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+r+"': "+e+" ["+A+"]")),!1}isTrusted(A){if("url"in A&&A.url&&!A.protocol){var e=KXe(A.url);if(e==null)return!1;A.protocol=e}var t=typeof this.trust==="function"?this.trust(A):this.trust;return Boolean(t)}}class tI{constructor(A,e,t){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=A,this.size=e,this.cramped=t}sup(){return qB[_Xe[this.id]]}sub(){return qB[WXe[this.id]]}fracNum(){return qB[qXe[this.id]]}fracDen(){return qB[zXe[this.id]]}cramp(){return qB[ZXe[this.id]]}text(){return qB[VXe[this.id]]}isTight(){return this.size>=2}}function jXe(A){for(var e=0;e<mV.length;e++){var t=mV[e];for(var r=0;r<t.blocks.length;r++){var i=t.blocks[r];if(A>=i[0]&&A<=i[1])return t.name}}return null}function hDA(A){for(var e=0;e<fR.length;e+=2)if(A>=fR[e]&&A<=fR[e+1])return!0;return!1}function o$e(A){return"toText"in A}class Zp{constructor(A){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=A,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(A){return this.classes.includes(A)}toNode(){var A=document.createDocumentFragment();for(var e=0;e<this.children.length;e++)A.appendChild(this.children[e].toNode());return A}toMarkup(){var A="";for(var e=0;e<this.children.length;e++)A+=this.children[e].toMarkup();return A}toText(){return this.children.map((A)=>{if(o$e(A))return A.toText();throw Error("Expected MathDomNode with toText, got "+A.constructor.name)}).join("")}}class Vp{constructor(A,e,t,r){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,this.italic=void 0,pDA.call(this,A,t,r),this.children=e||[]}setAttribute(A,e){this.attributes[A]=e}hasClass(A){return this.classes.includes(A)}toNode(){return fDA.call(this,"span")}toMarkup(){return mDA.call(this,"span")}}class pb{constructor(A,e,t,r){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,pDA.call(this,e,r),this.children=t||[],this.setAttribute("href",A)}setAttribute(A,e){this.attributes[A]=e}hasClass(A){return this.classes.includes(A)}toNode(){return fDA.call(this,"a")}toMarkup(){return mDA.call(this,"a")}}class DDA{constructor(A,e,t){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=e,this.src=A,this.classes=["mord"],this.height=0,this.depth=0,this.maxFontSize=0,this.style=t}hasClass(A){return this.classes.includes(A)}toNode(){var A=document.createElement("img");return A.src=this.src,A.alt=this.alt,A.className="mord",Object.assign(A.style,this.style),A}toMarkup(){var A='<img src="'+L0(this.src)+'"'+(' alt="'+L0(this.alt)+'"'),e=KV(this.style);if(e)A+=' style="'+L0(e)+'"';return A+="'/>",A}}class tl{constructor(A,e,t,r,i,u,a,n){this.text=void 0,this.height=void 0,this.depth=void 0,this.italic=void 0,this.skew=void 0,this.width=void 0,this.maxFontSize=void 0,this.classes=void 0,this.style=void 0,this.text=A,this.height=e||0,this.depth=t||0,this.italic=r||0,this.skew=i||0,this.width=u||0,this.classes=a||[],this.style=n||{},this.maxFontSize=0;var o=jXe(this.text.charCodeAt(0));if(o)this.classes.push(o+"_fallback");if(/[îïíì]/.test(this.text))this.text=g$e[this.text]}hasClass(A){return this.classes.includes(A)}toNode(){var A=document.createTextNode(this.text),e=null;if(this.italic>0)e=document.createElement("span"),e.style.marginRight=gt(this.italic);if(this.classes.length>0)e=e||document.createElement("span"),e.className=EQ(this.classes);if(Object.keys(this.style).length>0)e=e||document.createElement("span"),Object.assign(e.style,this.style);if(e)return e.appendChild(A),e;else return A}toMarkup(){var A=!1,e="<span";if(this.classes.length)A=!0,e+=' class="',e+=L0(EQ(this.classes)),e+='"';var t="";if(this.italic>0)t+="margin-right:"+gt(this.italic)+";";if(t+=KV(this.style),t)A=!0,e+=' style="'+L0(t)+'"';var r=L0(this.text);if(A)return e+=">",e+=r,e+="</span>",e;else return r}}class ZB{constructor(A,e){this.children=void 0,this.attributes=void 0,this.children=A||[],this.attributes=e||{}}toNode(){var A="http://www.w3.org/2000/svg",e=document.createElementNS(A,"svg");for(var t of Object.keys(this.attributes))e.setAttribute(t,this.attributes[t]);for(var r=0;r<this.children.length;r++)e.appendChild(this.children[r].toNode());return e}toMarkup(){var A='<svg xmlns="http://www.w3.org/2000/svg"';for(var e of Object.keys(this.attributes))A+=" "+e+'="'+L0(this.attributes[e])+'"';A+=">";for(var t=0;t<this.children.length;t++)A+=this.children[t].toMarkup();return A+="</svg>",A}}class aI{constructor(A,e){this.pathName=void 0,this.alternate=void 0,this.pathName=A,this.alternate=e}toNode(){var A="http://www.w3.org/2000/svg",e=document.createElementNS(A,"path");if(this.alternate)e.setAttribute("d",this.alternate);else e.setAttribute("d",M2A[this.pathName]);return e}toMarkup(){if(this.alternate)return'<path d="'+L0(this.alternate)+'"/>';else return'<path d="'+L0(M2A[this.pathName])+'"/>'}}class wR{constructor(A){this.attributes=void 0,this.attributes=A||{}}toNode(){var A="http://www.w3.org/2000/svg",e=document.createElementNS(A,"line");for(var t of Object.keys(this.attributes))e.setAttribute(t,this.attributes[t]);return e}toMarkup(){var A="<line";for(var e of Object.keys(this.attributes))A+=" "+e+'="'+L0(this.attributes[e])+'"';return A+="/>",A}}function c$e(A){if(A instanceof tl)return A;else throw Error("Expected symbolNode but got "+String(A)+".")}function C$e(A){if(A instanceof Vp)return A;else throw Error("Expected span<HtmlDomNode> but got "+String(A)+".")}function E$e(A,e){zB[A]=e}function JV(A,e,t){if(!zB[e])throw Error("Font metrics not found for font: "+e+".");var r=A.charCodeAt(0),i=zB[e][r];if(!i&&A[0]in T2A)r=T2A[A[0]].charCodeAt(0),i=zB[e][r];if(!i&&t==="text"){if(hDA(r))i=zB[e][77]}if(i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function d$e(A){var e;if(A>=5)e=0;else if(A>=3)e=1;else e=2;if(!sV[e]){var t=sV[e]={cssEmPerMu:BR.quad[e]/18};for(var r in BR)if(BR.hasOwnProperty(r))t[r]=BR[r][e]}return sV[e]}function V(A,e,t,r,i,u){if(Ca[A][i]={font:e,group:t,replace:r},u&&r)Ca[A][r]=Ca[A][i]}function wt(A){var{type:e,names:t,props:r,handler:i,htmlBuilder:u,mathmlBuilder:a}=A,n={type:e,numArgs:r.numArgs,argTypes:r.argTypes,allowedInArgument:!!r.allowedInArgument,allowedInText:!!r.allowedInText,allowedInMath:r.allowedInMath===void 0?!0:r.allowedInMath,numOptionalArgs:r.numOptionalArgs||0,infix:!!r.infix,primitive:!!r.primitive,handler:i};for(var o=0;o<t.length;++o)FDA[t[o]]=n;if(e){if(u)vR[e]=u;if(a)kR[e]=a}}function jp(A){var{type:e,htmlBuilder:t,mathmlBuilder:r}=A;wt({type:e,names:[],props:{numArgs:0},handler(){throw Error("Should never be called.")},htmlBuilder:t,mathmlBuilder:r})}function dR(A,e){var t=rt(["base"],A,e),r=rt(["strut"]);if(r.style.height=gt(t.height+t.depth),t.depth)r.style.verticalAlign=gt(-t.depth);return t.children.unshift(r),t}function RV(A,e){var t=null;if(A.length===1&&A[0].type==="tag")t=A[0].tag,A=A[0].body;var r=Xn(A,e,"root"),i;if(r.length===2&&r[1].hasClass("tag"))i=r.pop();var u=[],a=[];for(var n=0;n<r.length;n++)if(a.push(r[n]),r[n].hasClass("mbin")||r[n].hasClass("mrel")||r[n].hasClass("allowbreak")){var o=!1;while(n<r.length-1&&r[n+1].hasClass("mspace")&&!r[n+1].hasClass("newline"))if(n++,a.push(r[n]),r[n].hasClass("nobreak"))o=!0;if(!o)u.push(dR(a,e)),a=[]}else if(r[n].hasClass("newline")){if(a.pop(),a.length>0)u.push(dR(a,e)),a=[];u.push(r[n])}if(a.length>0)u.push(dR(a,e));var s;if(t)s=dR(Xn(t,e,!0),e),s.classes=["tag"],u.push(s);else if(i)u.push(i);var l=rt(["katex-html"],u);if(l.setAttribute("aria-hidden","true"),s){var g=s.children[0];if(g.style.height=gt(l.height+l.depth),l.depth)g.style.verticalAlign=gt(-l.depth)}return l}function SDA(A){return new Zp(A)}class it{constructor(A,e,t){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=A,this.attributes={},this.children=e||[],this.classes=t||[]}setAttribute(A,e){this.attributes[A]=e}getAttribute(A){return this.attributes[A]}toNode(){var A=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var e in this.attributes)if(Object.prototype.hasOwnProperty.call(this.attributes,e))A.setAttribute(e,this.attributes[e]);if(this.classes.length>0)A.className=EQ(this.classes);for(var t=0;t<this.children.length;t++)if(this.children[t]instanceof gn&&this.children[t+1]instanceof gn){var r=this.children[t].toText()+this.children[++t].toText();while(this.children[t+1]instanceof gn)r+=this.children[++t].toText();A.appendChild(new gn(r).toNode())}else A.appendChild(this.children[t].toNode());return A}toMarkup(){var A="<"+this.type;for(var e in this.attributes)if(Object.prototype.hasOwnProperty.call(this.attributes,e))A+=" "+e+'="',A+=L0(this.attributes[e]),A+='"';if(this.classes.length>0)A+=' class ="'+L0(EQ(this.classes))+'"';A+=">";for(var t=0;t<this.children.length;t++)A+=this.children[t].toMarkup();return A+="</"+this.type+">",A}toText(){return this.children.map((A)=>A.toText()).join("")}}class gn{constructor(A){this.text=void 0,this.text=A}toNode(){return document.createTextNode(this.text)}toMarkup(){return L0(this.toText())}toText(){return this.text}}class _V{constructor(A){if(this.width=void 0,this.character=void 0,this.width=A,A>=0.05555&&A<=0.05556)this.character=" ";else if(A>=0.1666&&A<=0.1667)this.character=" ";else if(A>=0.2222&&A<=0.2223)this.character=" ";else if(A>=0.2777&&A<=0.2778)this.character=" ";else if(A>=-0.05556&&A<=-0.05555)this.character=" ";else if(A>=-0.1667&&A<=-0.1666)this.character=" ";else if(A>=-0.2223&&A<=-0.2222)this.character=" ";else if(A>=-0.2778&&A<=-0.2777)this.character=" ";else this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);else{var A=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return A.setAttribute("width",gt(this.width)),A}}toMarkup(){if(this.character)return"<mtext>"+this.character+"</mtext>";else return'<mspace width="'+gt(this.width)+'"/>'}toText(){if(this.character)return this.character;else return" "}}function lV(A){if(!A)return!1;if(A.type==="mi"&&A.children.length===1){var e=A.children[0];return e instanceof gn&&e.text==="."}else if(A.type==="mo"&&A.children.length===1&&A.getAttribute("separator")==="true"&&A.getAttribute("lspace")==="0em"&&A.getAttribute("rspace")==="0em"){var t=A.children[0];return t instanceof gn&&t.text===","}else return!1}function z2A(A,e,t,r,i){var u=Ag(A,t),a;if(u.length===1&&u[0]instanceof it&&S$e.has(u[0].type))a=u[0];else a=new it("mrow",u);var n=new it("annotation",[new gn(e)]);n.setAttribute("encoding","application/x-tex");var o=new it("semantics",[a,n]),s=new it("math",[o]);if(s.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),r)s.setAttribute("display","block");var l=i?"katex":"katex-mathml";return rt([l],[s])}class iI{constructor(A){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=A.style,this.color=A.color,this.size=A.size||iI.BASESIZE,this.textSize=A.textSize||this.size,this.phantom=!!A.phantom,this.font=A.font||"",this.fontFamily=A.fontFamily||"",this.fontWeight=A.fontWeight||"",this.fontShape=A.fontShape||"",this.sizeMultiplier=Z2A[this.size-1],this.maxSize=A.maxSize,this.minRuleThickness=A.minRuleThickness,this._fontMetrics=void 0}extend(A){var e={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};return Object.assign(e,A),new iI(e)}havingStyle(A){if(this.style===A)return this;else return this.extend({style:A,size:V2A(this.textSize,A)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(A){if(this.size===A&&this.textSize===A)return this;else return this.extend({style:this.style.text(),size:A,textSize:A,sizeMultiplier:Z2A[A-1]})}havingBaseStyle(A){A=A||this.style.text();var e=V2A(iI.BASESIZE,A);if(this.size===e&&this.textSize===iI.BASESIZE&&this.style===A)return this;else return this.extend({style:A,size:e})}havingBaseSizing(){var A;switch(this.style.id){case 4:case 5:A=3;break;case 6:case 7:A=1;break;default:A=6}return this.extend({style:this.style.text(),size:A})}withColor(A){return this.extend({color:A})}withPhantom(){return this.extend({phantom:!0})}withFont(A){return this.extend({font:A})}withTextFontFamily(A){return this.extend({fontFamily:A,font:""})}withTextFontWeight(A){return this.extend({fontWeight:A,font:""})}withTextFontShape(A){return this.extend({fontShape:A,font:""})}sizingClasses(A){if(A.size!==this.size)return["sizing","reset-size"+A.size,"size"+this.size];else return[]}baseSizingClasses(){if(this.size!==iI.BASESIZE)return["sizing","reset-size"+this.size,"size"+iI.BASESIZE];else return[]}fontMetrics(){if(!this._fontMetrics)this._fontMetrics=d$e(this.size);return this._fontMetrics}getColor(){if(this.phantom)return"transparent";else return this.color}}function J$e(A){return A in H$e}function Ai(A,e){if(!A||A.type!==e)throw Error("Expected node of type "+e+", but got "+(A?"node of type "+A.type:String(A)));return A}function GR(A){var e=UR(A);if(!e)throw Error("Expected node of symbol group type, but got "+(A?"node of type "+A.type:String(A)));return e}function UR(A){if(A&&(A.type==="atom"||K$e.hasOwnProperty(A.type)))return A;return null}function UDA(A,e){var t=Xn(A.body,e,!0);return rt([A.mclass],t,e)}function MDA(A,e){var t,r=Ag(A.body,e);if(A.mclass==="minner")t=new it("mpadded",r);else if(A.mclass==="mord")if(A.isCharacterBox)t=r[0],t.type="mi";else t=new it("mi",r);else{if(A.isCharacterBox)t=r[0],t.type="mo";else t=new it("mo",r);if(A.mclass==="mbin")t.attributes.lspace="0.22em",t.attributes.rspace="0.22em";else if(A.mclass==="mpunct")t.attributes.lspace="0em",t.attributes.rspace="0.17em";else if(A.mclass==="mopen"||A.mclass==="mclose")t.attributes.lspace="0em",t.attributes.rspace="0em";else if(A.mclass==="minner")t.attributes.lspace="0.0556em",t.attributes.width="+0.1111em"}return t}function W$e(A,e,t){var r=P$e[A];switch(r){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return t.callFunction(r,[e[0]],[e[1]]);case"\\uparrow":case"\\downarrow":{var i=t.callFunction("\\\\cdleft",[e[0]],[]),u={type:"atom",text:r,mode:"math",family:"rel"},a=t.callFunction("\\Big",[u],[]),n=t.callFunction("\\\\cdright",[e[1]],[]),o={type:"ordgroup",mode:"math",body:[i,a,n]};return t.callFunction("\\\\cdparent",[o],[])}case"\\\\cdlongequal":return t.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var s={type:"textord",text:"\\Vert",mode:"math"};return t.callFunction("\\Big",[s],[])}default:return{type:"textord",text:" ",mode:"math"}}}function q$e(A){var e=[];A.gullet.beginGroup(),A.gullet.macros.set("\\cr","\\\\\\relax"),A.gullet.beginGroup();while(!0){e.push(A.parseExpression(!1,"\\\\")),A.gullet.endGroup(),A.gullet.beginGroup();var t=A.fetch().text;if(t==="&"||t==="\\\\")A.consume();else if(t==="\\end"){if(e[e.length-1].length===0)e.pop();break}else throw new ut("Expected \\\\ or \\cr or \\end",A.nextToken)}var r=[],i=[r];for(var u=0;u<e.length;u++){var a=e[u],n=j2A();for(var o=0;o<a.length;o++)if(!X2A(a[o]))n.body.push(a[o]);else{r.push(n),o+=1;var s=GR(a[o]).text,l=[,,];if(l[0]={type:"ordgroup",mode:"math",body:[]},l[1]={type:"ordgroup",mode:"math",body:[]},"=|.".includes(s));else if("<>AV".includes(s))for(var g=0;g<2;g++){var C=!0;for(var B=o+1;B<a.length;B++){if(_$e(a[B],s)){C=!1,o=B;break}if(X2A(a[B]))throw new ut("Missing a "+s+" character to complete a CD arrow.",a[B]);l[g].body.push(a[B])}if(C)throw new ut("Missing a "+s+" character to complete a CD arrow.",a[o])}else throw new ut('Expected one of "<>AV=|." after @',a[o]);var E=W$e(s,l,A),d={type:"styling",body:[E],mode:"math",style:"display",resetFont:!0};r.push(d),n=j2A()}if(u%2===0)r.push(n);else r.shift();r=[],i.push(r)}A.gullet.endGroup(),A.gullet.endGroup();var I=Array(i[0].length).fill({type:"align",align:"c",pregap:0.25,postgap:0.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:I,colSeparationType:"CD",hLinesBeforeRow:Array(i.length+1).fill([])}}function ADA(A){return"isMiddle"in A}function TR(A,e){var t=UR(A);if(t&&iAt.has(t.text))return t;else if(t)throw new ut("Invalid delimiter '"+t.text+"' after '"+e.funcName+"'",A);else throw new ut("Invalid delimiter type '"+A.type+"'",A)}function eDA(A){if(!A.body)throw Error("Bug: The leftright ParseNode wasn't fully parsed.")}function VB(A){var{type:e,names:t,props:r,handler:i,htmlBuilder:u,mathmlBuilder:a}=A,n={type:e,numArgs:r.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i};for(var o=0;o<t.length;++o)VDA[t[o]]=n;if(u)vR[e]=u;if(a)kR[e]=a}function xA(A,e){jDA[A]=e}class el{constructor(A,e,t){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=A,this.start=e,this.end=t}static range(A,e){if(!e)return A&&A.loc;else if(!A||!A.loc||!e.loc||A.loc.lexer!==e.loc.lexer)return null;else return new el(A.loc.lexer,A.loc.start,e.loc.end)}}class Xl{constructor(A,e){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=A,this.loc=e}range(A,e){return new Xl(e,el.range(this,A))}}function tDA(A){var e=[];A.consumeSpaces();var t=A.fetch().text;if(t==="\\relax")A.consume(),A.consumeSpaces(),t=A.fetch().text;while(t==="\\hline"||t==="\\hdashline")A.consume(),e.push(t==="\\hdashline"),A.consumeSpaces(),t=A.fetch().text;return e}function VV(A){if(!A.includes("ed"))return!A.includes("*")}function hQ(A,e,t){var{hskipBeforeAndAfter:r,addJot:i,cols:u,arraystretch:a,colSeparationType:n,autoTag:o,singleRow:s,emptySingleRow:l,maxNumCols:g,leqno:C}=e;if(A.gullet.beginGroup(),!s)A.gullet.macros.set("\\cr","\\\\\\relax");if(!a){var B=A.gullet.expandMacroAsText("\\arraystretch");if(B==null)a=1;else if(a=parseFloat(B),!a||a<0)throw new ut("Invalid \\arraystretch: "+B)}A.gullet.beginGroup();var E=[],d=[E],I=[],h=[],Q=o!=null?[]:void 0;function p(){if(o)A.gullet.macros.set("\\@eqnsw","1",!0)}function m(){if(Q)if(A.gullet.macros.get("\\df@tag"))Q.push(A.subparse([new Xl("\\df@tag")])),A.gullet.macros.set("\\df@tag",void 0,!0);else Q.push(Boolean(o)&&A.gullet.macros.get("\\@eqnsw")==="1")}p(),h.push(tDA(A));while(!0){var f=A.parseExpression(!1,s?"\\end":"\\\\");A.gullet.endGroup(),A.gullet.beginGroup();var D={type:"ordgroup",mode:A.mode,body:f};if(t)D={type:"styling",mode:A.mode,style:t,resetFont:!0,body:[D]};E.push(D);var w=A.fetch().text;if(w==="&"){if(g&&E.length===g)if(s||n)throw new ut("Too many tab characters: &",A.nextToken);else A.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.");A.consume()}else if(w==="\\end"){if(m(),E.length===1&&D.type==="styling"&&D.body.length===1&&D.body[0].type==="ordgroup"&&D.body[0].body.length===0&&(d.length>1||!l))d.pop();if(h.length<d.length+1)h.push([]);break}else if(w==="\\\\"){A.consume();var b=void 0;if(A.gullet.future().text!==" ")b=A.parseSizeGroup(!0);I.push(b?b.value:null),m(),h.push(tDA(A)),E=[],d.push(E),p()}else throw new ut("Expected & or \\\\ or \\cr or \\end",A.nextToken)}return A.gullet.endGroup(),A.gullet.endGroup(),{type:"array",mode:A.mode,addJot:i,arraystretch:a,body:d,cols:u,rowGaps:I,hskipBeforeAndAfter:r,hLinesBeforeRow:h,colSeparationType:n,tags:Q,leqno:C}}function jV(A){if(A.slice(0,1)==="d")return"display";else return"text"}function ayA(A,e,t){var r=Xn(A,e,!1),i=e.sizeMultiplier/t.sizeMultiplier;for(var u=0;u<r.length;u++){var a=r[u].classes.indexOf("sizing");if(a<0)Array.prototype.push.apply(r[u].classes,e.sizingClasses(t));else if(r[u].classes[a+1]==="reset-size"+e.size)r[u].classes[a+1]="reset-size"+t.size;r[u].height*=i,r[u].depth*=i}return sI(r)}function BAt(A){return A in MV}class YV{constructor(A,e){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=A,this.settings=e,this.tokenRegex=new RegExp(mAt,"g"),this.catcodes={"%":14,"~":13}}setCatcode(A,e){this.catcodes[A]=e}lex(){var A=this.input,e=this.tokenRegex.lastIndex;if(e===A.length)return new Xl("EOF",new el(this,e,e));var t=this.tokenRegex.exec(A);if(t===null||t.index!==e)throw new ut("Unexpected character: '"+A[e]+"'",new Xl(A[e],new el(this,e,e+1)));var r=t[6]||t[3]||(t[2]?"\\ ":" ");if(this.catcodes[r]===14){var i=A.indexOf(`
|
||
`,this.tokenRegex.lastIndex);if(i===-1)this.tokenRegex.lastIndex=A.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)");else this.tokenRegex.lastIndex=i+1;return this.lex()}return new Xl(r,new el(this,e,this.tokenRegex.lastIndex))}}class syA{constructor(A,e){if(A===void 0)A={};if(e===void 0)e={};this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=e,this.builtins=A,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new ut("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var A=this.undefStack.pop();for(var e in A)if(A.hasOwnProperty(e))if(A[e]==null)delete this.current[e];else this.current[e]=A[e]}endGroups(){while(this.undefStack.length>0)this.endGroup()}has(A){return this.current.hasOwnProperty(A)||this.builtins.hasOwnProperty(A)}get(A){if(this.current.hasOwnProperty(A))return this.current[A];else return this.builtins[A]}set(A,e,t){if(t===void 0)t=!1;if(t){for(var r=0;r<this.undefStack.length;r++)delete this.undefStack[r][A];if(this.undefStack.length>0)this.undefStack[this.undefStack.length-1][A]=e}else{var i=this.undefStack[this.undefStack.length-1];if(i&&!i.hasOwnProperty(A))i[A]=this.current[A]}if(e==null)delete this.current[A];else this.current[A]=e}}class CyA{constructor(A,e,t){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=e,this.expansionCount=0,this.feed(A),this.macros=new syA(DAt,e.macros),this.mode=t,this.stack=[]}feed(A){this.lexer=new YV(A,this.settings)}switchMode(A){this.mode=A}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){if(this.stack.length===0)this.pushToken(this.lexer.lex());return this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(A){this.stack.push(A)}pushTokens(A){this.stack.push(...A)}scanArgument(A){var e,t,r;if(A){if(this.consumeSpaces(),this.future().text!=="[")return null;e=this.popToken(),{tokens:r,end:t}=this.consumeArg(["]"])}else({tokens:r,start:e,end:t}=this.consumeArg());return this.pushToken(new Xl("EOF",t.loc)),this.pushTokens(r),new Xl("",el.range(e,t))}consumeSpaces(){for(;;){var A=this.future();if(A.text===" ")this.stack.pop();else break}}consumeArg(A){var e=[],t=A&&A.length>0;if(!t)this.consumeSpaces();var r=this.future(),i,u=0,a=0;do{if(i=this.popToken(),e.push(i),i.text==="{")++u;else if(i.text==="}"){if(--u,u===-1)throw new ut("Extra }",i)}else if(i.text==="EOF")throw new ut("Unexpected end of input in a macro argument, expected '"+(A&&t?A[a]:"}")+"'",i);if(A&&t)if((u===0||u===1&&A[a]==="{")&&i.text===A[a]){if(++a,a===A.length){e.splice(-a,a);break}}else a=0}while(u!==0||t);if(r.text==="{"&&e[e.length-1].text==="}")e.pop(),e.shift();return e.reverse(),{tokens:e,start:r,end:i}}consumeArgs(A,e){if(e){if(e.length!==A+1)throw new ut("The length of delimiters doesn't match the number of args!");var t=e[0];for(var r=0;r<t.length;r++){var i=this.popToken();if(t[r]!==i.text)throw new ut("Use of the macro doesn't match its definition",i)}}var u=[];for(var a=0;a<A;a++)u.push(this.consumeArg(e&&e[a+1]).tokens);return u}countExpansion(A){if(this.expansionCount+=A,this.expansionCount>this.settings.maxExpand)throw new ut("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(A){var e=this.popToken(),t=e.text,r=!e.noexpand?this._getExpansion(t):null;if(r==null||A&&r.unexpandable){if(A&&r==null&&t[0]==="\\"&&!this.isDefined(t))throw new ut("Undefined control sequence: "+t);return this.pushToken(e),!1}this.countExpansion(1);var i=r.tokens,u=this.consumeArgs(r.numArgs,r.delimiters);if(r.numArgs){i=i.slice();for(var a=i.length-1;a>=0;--a){var n=i[a];if(n.text==="#"){if(a===0)throw new ut("Incomplete placeholder at end of macro body",n);if(n=i[--a],n.text==="#")i.splice(a+1,1);else if(/^[1-9]$/.test(n.text))i.splice(a,2,...u[+n.text-1]);else throw new ut("Not a valid argument number",n)}}}return this.pushTokens(i),i.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var A=this.stack.pop();if(A.treatAsRelax)A.text="\\relax";return A}}expandMacro(A){return this.macros.has(A)?this.expandTokens([new Xl(A)]):void 0}expandTokens(A){var e=[],t=this.stack.length;this.pushTokens(A);while(this.stack.length>t)if(this.expandOnce(!0)===!1){var r=this.stack.pop();if(r.treatAsRelax)r.noexpand=!1,r.treatAsRelax=!1;e.push(r)}return this.countExpansion(e.length),e}expandMacroAsText(A){var e=this.expandMacro(A);if(e)return e.map((t)=>t.text).join("");else return e}_getExpansion(A){var e=this.macros.get(A);if(e==null)return e;if(A.length===1){var t=this.lexer.catcodes[A];if(t!=null&&t!==13)return}var r=typeof e==="function"?e(this):e;if(typeof r==="string"){var i=0;if(r.includes("#")){var u=r.replace(/##/g,"");while(u.includes("#"+(i+1)))++i}var a=new YV(r,this.settings),n=[],o=a.lex();while(o.text!=="EOF")n.push(o),o=a.lex();n.reverse();var s={tokens:n,numArgs:i};return s}return r}isDefined(A){return this.macros.has(A)||BQ.hasOwnProperty(A)||Ca.math.hasOwnProperty(A)||Ca.text.hasOwnProperty(A)||cyA.hasOwnProperty(A)}isExpandable(A){var e=this.macros.get(A);return e!=null?typeof e==="string"||typeof e==="function"||!e.unexpandable:BQ.hasOwnProperty(A)&&!BQ[A].primitive}}class JR{constructor(A,e){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new CyA(A,e,this.mode),this.settings=e,this.leftrightDepth=0,this.nextToken=null}expect(A,e){if(e===void 0)e=!0;if(this.fetch().text!==A)throw new ut("Expected '"+A+"', got '"+this.fetch().text+"'",this.fetch());if(e)this.consume()}consume(){this.nextToken=null}fetch(){if(this.nextToken==null)this.nextToken=this.gullet.expandNextToken();return this.nextToken}switchMode(A){this.mode=A,this.gullet.switchMode(A)}parse(){if(!this.settings.globalGroup)this.gullet.beginGroup();if(this.settings.colorIsTextColor)this.gullet.macros.set("\\color","\\textcolor");try{var A=this.parseExpression(!1);if(this.expect("EOF"),!this.settings.globalGroup)this.gullet.endGroup();return A}finally{this.gullet.endGroups()}}subparse(A){var e=this.nextToken;this.consume(),this.gullet.pushToken(new Xl("}")),this.gullet.pushTokens(A);var t=this.parseExpression(!1);return this.expect("}"),this.nextToken=e,t}parseExpression(A,e){var t=[];while(!0){if(this.mode==="math")this.consumeSpaces();var r=this.fetch();if(JR.endOfExpression.has(r.text))break;if(e&&r.text===e)break;if(A&&BQ[r.text]&&BQ[r.text].infix)break;var i=this.parseAtom(e);if(!i)break;else if(i.type==="internal")continue;t.push(i)}if(this.mode==="text")this.formLigatures(t);return this.handleInfixNodes(t)}handleInfixNodes(A){var e=-1,t;for(var r=0;r<A.length;r++){var i=A[r];if(i.type==="infix"){if(e!==-1)throw new ut("only one infix operator per group",i.token);e=r,t=i.replaceWith}}if(e!==-1&&t){var u,a,n=A.slice(0,e),o=A.slice(e+1);if(n.length===1&&n[0].type==="ordgroup")u=n[0];else u={type:"ordgroup",mode:this.mode,body:n};if(o.length===1&&o[0].type==="ordgroup")a=o[0];else a={type:"ordgroup",mode:this.mode,body:o};var s;if(t==="\\\\abovefrac")s=this.callFunction(t,[u,A[e],a],[]);else s=this.callFunction(t,[u,a],[]);return[s]}else return A}handleSupSubscript(A){var e=this.fetch(),t=e.text;this.consume(),this.consumeSpaces();var r;do{var i;r=this.parseGroup(A)}while(((i=r)==null?void 0:i.type)==="internal");if(!r)throw new ut("Expected group after '"+t+"'",e);return r}formatUnsupportedCmd(A){var e=[];for(var t=0;t<A.length;t++)e.push({type:"textord",mode:"text",text:A[t]});var r={type:"text",mode:this.mode,body:e},i={type:"color",mode:this.mode,color:this.settings.errorColor,body:[r]};return i}parseAtom(A){var e=this.parseGroup("atom",A);if((e==null?void 0:e.type)==="internal")return e;if(this.mode==="text")return e;var t,r;while(!0){this.consumeSpaces();var i=this.fetch();if(i.text==="\\limits"||i.text==="\\nolimits"){if(e&&e.type==="op"){var u=i.text==="\\limits";e.limits=u,e.alwaysHandleSupSub=!0}else if(e&&e.type==="operatorname"){if(e.alwaysHandleSupSub)e.limits=i.text==="\\limits"}else throw new ut("Limit controls must follow a math operator",i);this.consume()}else if(i.text==="^"){if(t)throw new ut("Double superscript",i);t=this.handleSupSubscript("superscript")}else if(i.text==="_"){if(r)throw new ut("Double subscript",i);r=this.handleSupSubscript("subscript")}else if(i.text==="'"){if(t)throw new ut("Double superscript",i);var a={type:"textord",mode:this.mode,text:"\\prime"},n=[a];this.consume();while(this.fetch().text==="'")n.push(a),this.consume();if(this.fetch().text==="^")n.push(this.handleSupSubscript("superscript"));t={type:"ordgroup",mode:this.mode,body:n}}else if(QR[i.text]){var o=dDA.test(i.text),s=[];s.push(new Xl(QR[i.text])),this.consume();while(!0){var l=this.fetch().text;if(!QR[l])break;if(dDA.test(l)!==o)break;s.unshift(new Xl(QR[l])),this.consume()}var g=this.subparse(s);if(o)r={type:"ordgroup",mode:"math",body:g};else t={type:"ordgroup",mode:"math",body:g}}else break}if(t||r)return{type:"supsub",mode:this.mode,base:e,sup:t,sub:r};else return e}parseFunction(A,e){var t=this.fetch(),r=t.text,i=BQ[r];if(!i)return null;if(this.consume(),e&&e!=="atom"&&!i.allowedInArgument)throw new ut("Got function '"+r+"' with no arguments"+(e?" as "+e:""),t);else if(this.mode==="text"&&!i.allowedInText)throw new ut("Can't use function '"+r+"' in text mode",t);else if(this.mode==="math"&&i.allowedInMath===!1)throw new ut("Can't use function '"+r+"' in math mode",t);var{args:u,optArgs:a}=this.parseArguments(r,i);return this.callFunction(r,u,a,t,A)}callFunction(A,e,t,r,i){var u={funcName:A,parser:this,token:r,breakOnTokenText:i},a=BQ[A];if(a&&a.handler)return a.handler(u,e,t);else throw new ut("No function handler for "+A)}parseArguments(A,e){var t=e.numArgs+e.numOptionalArgs;if(t===0)return{args:[],optArgs:[]};var r=[],i=[];for(var u=0;u<t;u++){var a=e.argTypes&&e.argTypes[u],n=u<e.numOptionalArgs;if("primitive"in e&&e.primitive&&a==null||e.type==="sqrt"&&u===1&&i[0]==null)a="primitive";var o=this.parseGroupOfType("argument to '"+A+"'",a,n);if(n)i.push(o);else if(o!=null)r.push(o);else throw new ut("Null argument, please report this as a bug")}return{args:r,optArgs:i}}parseGroupOfType(A,e,t){switch(e){case"color":return this.parseColorGroup(t);case"size":return this.parseSizeGroup(t);case"url":return this.parseUrlGroup(t);case"math":case"text":return this.parseArgumentGroup(t,e);case"hbox":{var r=this.parseArgumentGroup(t,"text");return r!=null?{type:"styling",mode:r.mode,body:[r],style:"text",resetFont:!0}:null}case"raw":{var i=this.parseStringGroup("raw",t);return i!=null?{type:"raw",mode:"text",string:i.text}:null}case"primitive":{if(t)throw new ut("A primitive argument cannot be optional");var u=this.parseGroup(A);if(u==null)throw new ut("Expected group as "+A,this.fetch());return u}case"original":case null:case void 0:return this.parseArgumentGroup(t);default:throw new ut("Unknown group type as "+A,this.fetch())}}consumeSpaces(){while(this.fetch().text===" ")this.consume()}parseStringGroup(A,e){var t=this.gullet.scanArgument(e);if(t==null)return null;var r="",i;while((i=this.fetch()).text!=="EOF")r+=i.text,this.consume();return this.consume(),t.text=r,t}parseRegexGroup(A,e){var t=this.fetch(),r=t,i="",u;while((u=this.fetch()).text!=="EOF"&&A.test(i+u.text))r=u,i+=r.text,this.consume();if(i==="")throw new ut("Invalid "+e+": '"+t.text+"'",t);return t.range(r,i)}parseColorGroup(A){var e=this.parseStringGroup("color",A);if(e==null)return null;var t=/^(#[a-f0-9]{3,4}|#[a-f0-9]{6}|#[a-f0-9]{8}|[a-f0-9]{6}|[a-z]+)$/i.exec(e.text);if(!t)throw new ut("Invalid color: '"+e.text+"'",e);var r=t[0];if(/^[0-9a-f]{6}$/i.test(r))r="#"+r;return{type:"color-token",mode:this.mode,color:r}}parseSizeGroup(A){var e,t=!1;if(this.gullet.consumeSpaces(),!A&&this.gullet.future().text!=="{")e=this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,"size");else e=this.parseStringGroup("size",A);if(!e)return null;if(!A&&e.text.length===0)e.text="0pt",t=!0;var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e.text);if(!r)throw new ut("Invalid size: '"+e.text+"'",e);var i={number:+(r[1]+r[2]),unit:r[3]};if(!QDA(i))throw new ut("Invalid unit: '"+i.unit+"'",e);return{type:"size",mode:this.mode,value:i,isBlank:t}}parseUrlGroup(A){this.gullet.lexer.setCatcode("%",13),this.gullet.lexer.setCatcode("~",12);var e=this.parseStringGroup("url",A);if(this.gullet.lexer.setCatcode("%",14),this.gullet.lexer.setCatcode("~",13),e==null)return null;var t=e.text.replace(/\\([#$%&~_^{}])/g,"$1");return{type:"url",mode:this.mode,url:t}}parseArgumentGroup(A,e){var t=this.gullet.scanArgument(A);if(t==null)return null;var r=this.mode;if(e)this.switchMode(e);this.gullet.beginGroup();var i=this.parseExpression(!1,"EOF");this.expect("EOF"),this.gullet.endGroup();var u={type:"ordgroup",mode:this.mode,loc:t.loc,body:i};if(e)this.switchMode(r);return u}parseGroup(A,e){var t=this.fetch(),r=t.text,i;if(r==="{"||r==="\\begingroup"){this.consume();var u=r==="{"?"}":"\\endgroup";this.gullet.beginGroup();var a=this.parseExpression(!1,u),n=this.fetch();this.expect(u),this.gullet.endGroup(),i={type:"ordgroup",mode:this.mode,loc:el.range(t,n),body:a,semisimple:r==="\\begingroup"||void 0}}else if(i=this.parseFunction(e,A)||this.parseSymbol(),i==null&&r[0]==="\\"&&!cyA.hasOwnProperty(r)){if(this.settings.throwOnError)throw new ut("Undefined control sequence: "+r,t);i=this.formatUnsupportedCmd(r),this.consume()}return i}formLigatures(A){var e=A.length-1;for(var t=0;t<e;++t){var r=A[t];if(r.type!=="textord")continue;var i=r.text,u=A[t+1];if(!u||u.type!=="textord")continue;if(i==="-"&&u.text==="-"){var a=A[t+2];if(t+1<e&&a&&a.type==="textord"&&a.text==="-")A.splice(t,3,{type:"textord",mode:"text",loc:el.range(r,a),text:"---"}),e-=2;else A.splice(t,2,{type:"textord",mode:"text",loc:el.range(r,u),text:"--"}),e-=1}if((i==="'"||i==="`")&&u.text===i)A.splice(t,2,{type:"textord",mode:"text",loc:el.range(r,u),text:i+i}),e-=1}}parseSymbol(){var A=this.fetch(),e=A.text;if(/^\\verb[^a-zA-Z]/.test(e)){this.consume();var t=e.slice(5),r=t.charAt(0)==="*";if(r)t=t.slice(1);if(t.length<2||t.charAt(0)!==t.slice(-1))throw new ut(`\\verb assertion failed --
|
||
please report what input caused this bug`);return t=t.slice(1,-1),{type:"verb",mode:"text",body:t,star:r}}if(IDA.hasOwnProperty(e[0])&&!Ca[this.mode][e[0]]){if(this.settings.strict&&this.mode==="math")this.settings.reportNonstrict("unicodeTextInMathMode",'Accented Unicode text character "'+e[0]+'" used in math mode',A);e=IDA[e[0]]+e.slice(1)}var i=fAt.exec(e);if(i){if(e=e.substring(0,i.index),e==="i")e="ı";else if(e==="j")e="ȷ"}var u;if(Ca[this.mode][e]){if(this.settings.strict&&this.mode==="math"&&yV.includes(e))this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+e[0]+'" used in math mode',A);var a=Ca[this.mode][e].group,n=el.range(A),o;if(J$e(a))o={type:"atom",mode:this.mode,family:a,loc:n,text:e};else o={type:a,mode:this.mode,loc:n,text:e};u=o}else if(e.charCodeAt(0)>=128){if(this.settings.strict){if(!hDA(e.charCodeAt(0)))this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+e[0]+'"'+(" ("+e.charCodeAt(0)+")"),A);else if(this.mode==="math")this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+e[0]+'" used in math mode',A)}u={type:"textord",mode:"text",loc:el.range(A),text:e}}else return null;if(this.consume(),i)for(var s=0;s<i[0].length;s++){var l=i[0][s];if(!pV[l])throw new ut("Unknown accent ' "+l+"'",A);var g=pV[l][this.mode]||pV[l].text;if(!g)throw new ut("Accent "+l+" unsupported in "+this.mode+" mode",A);u={type:"accent",mode:this.mode,loc:el.range(A),label:g,isStretchy:!1,isShifty:!0,base:u}}return u}}var ut,UXe,MXe=(A)=>A.replace(UXe,"-$1").toLowerCase(),TXe,YXe,L0=(A)=>String(A).replace(YXe,(e)=>TXe[e]),pR=(A)=>{if(A.type==="ordgroup")if(A.body.length===1)return pR(A.body[0]);else return A;else if(A.type==="color")if(A.body.length===1)return pR(A.body[0]);else return A;else if(A.type==="font")return pR(A.body);else return A},HXe,nI=(A)=>HXe.has(pR(A).type),KXe=(A)=>{var e=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(A);if(!e)return"_relative";if(e[2]!==":")return null;if(!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(e[1]))return null;return e[1].toLowerCase()},fV,HV=0,yR=1,dD=2,uI=3,hb=4,qg=5,ID=6,gs=7,qB,_Xe,WXe,qXe,zXe,ZXe,VXe,Wr,mV,fR,jn=(A)=>A+" "+A,CD=80,XXe=function(e,t){return"M95,"+(622+e+t)+`
|
||
c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14
|
||
c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54
|
||
c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10
|
||
s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429
|
||
c69,-144,104.5,-217.7,106.5,-221
|
||
l`+e/2.075+" -"+e+`
|
||
c5.3,-9.3,12,-14,20,-14
|
||
H400000v`+(40+e)+`H845.2724
|
||
s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7
|
||
c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z
|
||
M`+(834+e)+" "+t+"h400000v"+(40+e)+"h-400000z"},$Xe=function(e,t){return"M263,"+(601+e+t)+`c0.7,0,18,39.7,52,119
|
||
c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120
|
||
c340,-704.7,510.7,-1060.3,512,-1067
|
||
l`+e/2.084+" -"+e+`
|
||
c4.7,-7.3,11,-11,19,-11
|
||
H40000v`+(40+e)+`H1012.3
|
||
s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232
|
||
c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1
|
||
s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26
|
||
c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z
|
||
M`+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"},A$e=function(e,t){return"M983 "+(10+e+t)+`
|
||
l`+e/3.13+" -"+e+`
|
||
c4,-6.7,10,-10,18,-10 H400000v`+(40+e)+`
|
||
H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7
|
||
s-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744
|
||
c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30
|
||
c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722
|
||
c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5
|
||
c53.7,-170.3,84.5,-266.8,92.5,-289.5z
|
||
M`+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"},e$e=function(e,t){return"M424,"+(2398+e+t)+`
|
||
c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514
|
||
c0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20
|
||
s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121
|
||
s209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081
|
||
l`+e/4.223+" -"+e+`c4,-6.7,10,-10,18,-10 H400000
|
||
v`+(40+e)+`H1014.6
|
||
s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185
|
||
c-2,6,-10,9,-24,9
|
||
c-8,0,-12,-0.7,-12,-2z M`+(1001+e)+" "+t+`
|
||
h400000v`+(40+e)+"h-400000z"},t$e=function(e,t){return"M473,"+(2713+e+t)+`
|
||
c339.3,-1799.3,509.3,-2700,510,-2702 l`+e/5.298+" -"+e+`
|
||
c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+e)+`H1017.7
|
||
s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9
|
||
c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200
|
||
c0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26
|
||
s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,
|
||
606zM`+(1001+e)+" "+t+"h400000v"+(40+e)+"H1017.7z"},r$e=function(e){var t=e/2;return"M400000 "+e+" H0 L"+t+" 0 l65 45 L145 "+(e-80)+" H400000z"},i$e=function(e,t,r){var i=r-54-t-e;return"M702 "+(e+t)+"H400000"+(40+e)+`
|
||
H742v`+i+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1
|
||
h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170
|
||
c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667
|
||
219 661 l218 661zM702 `+t+"H400000v"+(40+e)+"H742z"},u$e=function(e,t,r){t=1000*t;var i="";switch(e){case"sqrtMain":i=XXe(t,CD);break;case"sqrtSize1":i=$Xe(t,CD);break;case"sqrtSize2":i=A$e(t,CD);break;case"sqrtSize3":i=e$e(t,CD);break;case"sqrtSize4":i=t$e(t,CD);break;case"sqrtTall":i=i$e(t,CD,r)}return i},a$e=function(e,t){switch(e){case"⎜":return jn("M291 0 H417 V"+t+" H291z");case"∣":return jn("M145 0 H188 V"+t+" H145z");case"∥":return jn("M145 0 H188 V"+t+" H145z")+jn("M367 0 H410 V"+t+" H367z");case"⎟":return jn("M457 0 H583 V"+t+" H457z");case"⎢":return jn("M319 0 H403 V"+t+" H319z");case"⎥":return jn("M263 0 H347 V"+t+" H263z");case"⎪":return jn("M384 0 H504 V"+t+" H384z");case"⏐":return jn("M312 0 H355 V"+t+" H312z");case"‖":return jn("M257 0 H300 V"+t+" H257z")+jn("M478 0 H521 V"+t+" H478z");default:return""}},M2A,n$e=function(e,t){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+t+` v1759 v84 h347 v-84
|
||
H403z M403 1759 V0 H319 V1759 v`+t+" v1759 v84 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+t+` v1759 H0 v84 H347z
|
||
M347 1759 V0 H263 V1759 v`+t+" v1759 h84z";case"vert":return"M145 15 v585 v"+t+` v585 c2.667,10,9.667,15,21,15
|
||
c10,0,16.667,-5,20,-15 v-585 v`+-t+` v-585 c-2.667,-10,-9.667,-15,-21,-15
|
||
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+t+" v585 h43z";case"doublevert":return"M145 15 v585 v"+t+` v585 c2.667,10,9.667,15,21,15
|
||
c10,0,16.667,-5,20,-15 v-585 v`+-t+` v-585 c-2.667,-10,-9.667,-15,-21,-15
|
||
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+t+` v585 h43z
|
||
M367 15 v585 v`+t+` v585 c2.667,10,9.667,15,21,15
|
||
c10,0,16.667,-5,20,-15 v-585 v`+-t+` v-585 c-2.667,-10,-9.667,-15,-21,-15
|
||
c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+t+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+t+` v1715 h263 v84 H319z
|
||
MM319 602 V0 H403 V602 v`+t+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+t+` v1799 H0 v-84 H319z
|
||
MM319 602 V0 H403 V602 v`+t+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+t+` v602 h84z
|
||
M403 1759 V0 H319 V1759 v`+t+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+t+` v602 h84z
|
||
M347 1759 V0 h-84 V1759 v`+t+" v602 h84z";case"lparen":return`M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1
|
||
c-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349,
|
||
-36,557 l0,`+(t+84)+`c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,
|
||
949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9
|
||
c0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,
|
||
-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189
|
||
l0,-`+(t+92)+`c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,
|
||
-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z`;case"rparen":return`M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3,
|
||
63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5
|
||
c11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,`+(t+9)+`
|
||
c-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664
|
||
c-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11
|
||
c0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17
|
||
c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558
|
||
l0,-`+(t+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,
|
||
-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw Error("Unknown stretchy delimiter.")}},DV,s$e,QDA=function(e){if(typeof e!=="string")e=e.unit;return e in DV||e in s$e||e==="ex"},Ra=function(e,t){var r;if(e.unit in DV)r=DV[e.unit]/t.fontMetrics().ptPerEm/t.sizeMultiplier;else if(e.unit==="mu")r=t.fontMetrics().cssEmPerMu;else{var i;if(t.style.isTight())i=t.havingStyle(t.style.text());else i=t;if(e.unit==="ex")r=i.fontMetrics().xHeight;else if(e.unit==="em")r=i.fontMetrics().quad;else throw new ut("Invalid unit: '"+e.unit+"'");if(i!==t)r*=i.sizeMultiplier/t.sizeMultiplier}return Math.min(e.number*r,t.maxSize)},gt=function(e){return+e.toFixed(4)+"em"},EQ=function(e){return e.filter((t)=>t).join(" ")},KV=function(e){var t="";for(var r of Object.keys(e)){var i=e[r];if(i!==void 0)t+=MXe(r)+":"+i+";"}return t},pDA=function(e,t,r){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=r||{},t){if(t.style.isTight())this.classes.push("mtight");var i=t.getColor();if(i)this.style.color=i}},fDA=function(e){var t=document.createElement(e);t.className=EQ(this.classes),Object.assign(t.style,this.style);for(var r of Object.keys(this.attributes))t.setAttribute(r,this.attributes[r]);for(var i=0;i<this.children.length;i++)t.appendChild(this.children[i].toNode());return t},l$e,mDA=function(e){var t="<"+e;if(this.classes.length)t+=' class="'+L0(EQ(this.classes))+'"';var r=KV(this.style);if(r)t+=' style="'+L0(r)+'"';for(var i of Object.keys(this.attributes)){if(l$e.test(i))throw new ut("Invalid attribute name '"+i+"'");t+=" "+i+'="'+L0(this.attributes[i])+'"'}t+=">";for(var u=0;u<this.children.length;u++)t+=this.children[u].toMarkup();return t+="</"+e+">",t},g$e,B$e=(A)=>A instanceof Vp||A instanceof pb||A instanceof Zp,zB,BR,T2A,sV,Ca,iA="math",Xe="text",fA="main",VA="ams",Ba="accent-token",xt="bin",cs="close",pD="inner",gr="mathord",Sn="op-token",$l="open",fb="punct",XA="rel",oI="spacing",re="textord",yDA,Y2A='0123456789/@."',mR,cb,H2A='0123456789!@*()-=+";:?/.,',DR,Cb,bR="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",BD,Bb,Ur,ca,Vo,WB,rI,yV="ÐÞþ",ED,Eb,wV,K2A,J2A,I$e,zp,O2A,P2A,_2A,bV,vV,W2A,kV,q2A,h$e,Q$e=(A)=>{var e=A.charCodeAt(0),t=A.charCodeAt(1),r=(e-55296)*1024+(t-56320)+65536;if(119808<=r&&r<120484){var i=Math.floor((r-119808)/26);return q2A[i]}else if(120782<=r&&r<=120831){var u=Math.floor((r-120782)/10);return h$e[u]}else if(r===120485||r===120486)return q2A[0];else if(120486<r&&r<120782)return zp;else throw new ut("Unsupported character: "+A)},SR=function(e,t,r){if(Ca[r][e]){var i=Ca[r][e].replace;if(i)e=i}return{value:e,metrics:JV(e,t,r)}},ls=function(e,t,r,i,u){var a=SR(e,t,r),n=a.metrics;e=a.value;var o;if(n){var s=n.italic;if(r==="text"||i&&i.font==="mathit")s=0;o=new tl(e,n.height,n.depth,s,n.skew,n.width,u)}else typeof console<"u"&&console.warn("No character metrics "+("for '"+e+"' in style '"+t+"' and mode '"+r+"'")),o=new tl(e,0,0,0,0,0,u);if(i){if(o.maxFontSize=i.sizeMultiplier,i.style.isTight())o.classes.push("mtight");var l=i.getColor();if(l)o.style.color=l}return o},OV=function(e,t,r,i){if(i===void 0)i=[];if(r.font==="boldsymbol"&&SR(e,"Main-Bold",t).metrics)return ls(e,"Main-Bold",t,r,i.concat(["mathbf"]));else if(e==="\\"||Ca[t][e].font==="main")return ls(e,"Main-Regular",t,r,i);else return ls(e,"AMS-Regular",t,r,i.concat(["amsrm"]))},p$e=function(e,t,r){if(r!=="textord"&&SR(e,"Math-BoldItalic",t).metrics)return{fontName:"Math-BoldItalic",fontClass:"boldsymbol"};else return{fontName:"Main-Bold",fontClass:"mathbf"}},LR=function(e,t,r){var{mode:i,text:u}=e,a=["mord"],{font:n,fontFamily:o,fontWeight:s,fontShape:l}=t,g=i==="math"||i==="text"&&!!n,C=g?n:o,B="",E="";if(u.charCodeAt(0)===55349){var d=Q$e(u);B=d.font,E=d[i+"Class"]}if(B)return ls(u,B,i,t,a.concat(E));else if(C){var I,h;if(C==="boldsymbol"){var Q=p$e(u,i,r);I=Q.fontName,h=[Q.fontClass]}else if(g)I=FV[n].fontName,h=[n];else I=ER(o,s,l),h=[o,s,l];if(SR(u,I,i).metrics)return ls(u,I,i,t,a.concat(h));else if(yDA.hasOwnProperty(u)&&I.slice(0,10)==="Typewriter"){var p=[];for(var m=0;m<u.length;m++)p.push(ls(u[m],I,i,t,a.concat(h)));return sI(p)}}if(r==="mathord")return ls(u,"Math-Italic",i,t,a.concat(["mathnormal"]));else if(r==="textord"){var f=Ca[i][u]&&Ca[i][u].font;if(f==="ams"){var D=ER("amsrm",s,l);return ls(u,D,i,t,a.concat("amsrm",s,l))}else if(f==="main"||!f){var w=ER("textrm",s,l);return ls(u,w,i,t,a.concat(s,l))}else{var b=ER(f,s,l);return ls(u,b,i,t,a.concat(b,s,l))}}else throw Error("unexpected type: "+r+" in makeOrd")},f$e=(A,e)=>{if(EQ(A.classes)!==EQ(e.classes)||A.skew!==e.skew||A.maxFontSize!==e.maxFontSize||A.italic!==0&&A.hasClass("mathnormal"))return!1;if(A.classes.length===1){var t=A.classes[0];if(t==="mbin"||t==="mord")return!1}for(var r of Object.keys(A.style))if(A.style[r]!==e.style[r])return!1;for(var i of Object.keys(e.style))if(A.style[i]!==e.style[i])return!1;return!0},wDA=(A)=>{for(var e=0;e<A.length-1;e++){var t=A[e],r=A[e+1];if(t instanceof tl&&r instanceof tl&&f$e(t,r))t.text+=r.text,t.height=Math.max(t.height,r.height),t.depth=Math.max(t.depth,r.depth),t.italic=r.italic,A.splice(e+1,1),e--}return A},PV=function(e){var t=0,r=0,i=0;for(var u=0;u<e.children.length;u++){var a=e.children[u];if(a.height>t)t=a.height;if(a.depth>r)r=a.depth;if(a.maxFontSize>i)i=a.maxFontSize}e.height=t,e.depth=r,e.maxFontSize=i},rt=function(e,t,r,i){var u=new Vp(e,t,r,i);return PV(u),u},dQ=(A,e,t,r)=>new Vp(A,e,t,r),hD=function(e,t,r){var i=rt([e],[],t);return i.height=Math.max(r||t.fontMetrics().defaultRuleThickness,t.minRuleThickness),i.style.borderBottomWidth=gt(i.height),i.maxFontSize=1,i},m$e=function(e,t,r,i){var u=new pb(e,t,r,i);return PV(u),u},sI=function(e){var t=new Zp(e);return PV(t),t},QD=function(e,t){if(e instanceof Zp)return rt([],[e],t);return e},D$e=function(e){if(e.positionType==="individualShift"){var t=e.children,r=[t[0]],i=-t[0].shift-t[0].elem.depth,u=i;for(var a=1;a<t.length;a++){var n=-t[a].shift-u-t[a].elem.depth,o=n-(t[a-1].elem.height+t[a-1].elem.depth);u=u+n,r.push({type:"kern",size:o}),r.push(t[a])}return{children:r,depth:i}}var s;if(e.positionType==="top"){var l=e.positionData;for(var g=0;g<e.children.length;g++){var C=e.children[g];l-=C.type==="kern"?C.size:C.elem.height+C.elem.depth}s=l}else if(e.positionType==="bottom")s=-e.positionData;else{var B=e.children[0];if(B.type!=="elem")throw Error('First child must have type "elem".');if(e.positionType==="shift")s=-B.elem.depth-e.positionData;else if(e.positionType==="firstBaseline")s=-B.elem.depth;else throw Error("Invalid positionType "+e.positionType+".")}return{children:e.children,depth:s}},au=function(e,t){var{children:r,depth:i}=D$e(e),u=0;for(var a=0;a<r.length;a++){var n=r[a];if(n.type==="elem"){var o=n.elem;u=Math.max(u,o.maxFontSize,o.height)}}u+=2;var s=rt(["pstrut"],[]);s.style.height=gt(u);var l=[],g=i,C=i,B=i;for(var E=0;E<r.length;E++){var d=r[E];if(d.type==="kern")B+=d.size;else{var I=d.elem,h=d.wrapperClasses||[],Q=d.wrapperStyle||{},p=rt(h,[s,I],void 0,Q);if(p.style.top=gt(-u-B-I.depth),d.marginLeft)p.style.marginLeft=d.marginLeft;if(d.marginRight)p.style.marginRight=d.marginRight;l.push(p),B+=I.height+I.depth}g=Math.min(g,B),C=Math.max(C,B)}var m=rt(["vlist"],l);m.style.height=gt(C);var f;if(g<0){var D=rt([],[]),w=rt(["vlist"],[D]);w.style.height=gt(-g);var b=rt(["vlist-s"],[new tl("")]);f=[rt(["vlist-r"],[m,b]),rt(["vlist-r"],[w])]}else f=[rt(["vlist-r"],[m])];var F=rt(["vlist-t"],f);if(f.length===2)F.classes.push("vlist-t2");return F.height=C,F.depth=-g,F},bDA=(A,e)=>{var t=rt(["mspace"],[],e),r=Ra(A,e);return t.style.marginRight=gt(r),t},ER=(A,e,t)=>{var r,i;switch(A){case"amsrm":r="AMS";break;case"textrm":r="Main";break;case"textsf":r="SansSerif";break;case"texttt":r="Typewriter";break;default:r=A}if(e==="textbf"&&t==="textit")i="BoldItalic";else if(e==="textbf")i="Bold";else if(t==="textit")i="Italic";else i="Regular";return r+"-"+i},FV,vDA,kDA=function(e,t){var[r,i,u]=vDA[e],a=new aI(r),n=new ZB([a],{width:gt(i),height:gt(u),style:"width:"+gt(i),viewBox:"0 0 "+1000*i+" "+1000*u,preserveAspectRatio:"xMinYMin"}),o=dQ(["overlay"],[n],t);return o.height=u,o.style.height=gt(u),o.style.width=gt(i),o},La,qp,eI,y$e,w$e,FDA,vR,kR,FR=function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},xn=function(e){return e.type==="ordgroup"?e.body:[e]},b$e,v$e,k$e,F$e,Xn=function(e,t,r,i){if(i===void 0)i=[null,null];var u=[];for(var a=0;a<e.length;a++){var n=nu(e[a],t);if(n instanceof Zp){var o=n.children;u.push(...o)}else u.push(n)}if(wDA(u),!r)return u;var s=t;if(e.length===1){var l=e[0];if(l.type==="sizing")s=t.havingSize(l.size);else if(l.type==="styling")s=t.havingStyle(k$e[l.style])}var g=rt([i[0]||"leftmost"],[],t),C=rt([i[1]||"rightmost"],[],t),B=r==="root";return xV(u,(E,d)=>{var I=d.classes[0],h=E.classes[0];if(I==="mbin"&&v$e.has(h))d.classes[0]="mord";else if(h==="mbin"&&b$e.has(I))E.classes[0]="mord"},{node:g},C,B),xV(u,(E,d)=>{var I,h,Q=LV(d),p=LV(E),m=Q&&p?E.hasClass("mtight")?(I=w$e[Q])==null?void 0:I[p]:(h=y$e[Q])==null?void 0:h[p]:null;if(m)return bDA(m,s)},{node:g},C,B),u},xV=function(e,t,r,i,u){if(i)e.push(i);var a=0;for(;a<e.length;a++){var n=e[a],o=xDA(n);if(o){xV(o.children,t,r,null,u);continue}var s=!n.hasClass("mspace");if(s){var l=t(n,r.node);if(l)if(r.insertAfter)r.insertAfter(l);else e.unshift(l),a++}if(s)r.node=n;else if(u&&n.hasClass("newline"))r.node=rt(["leftmost"]);r.insertAfter=((g)=>(C)=>{e.splice(g+1,0,C),a++})(a)}if(i)e.pop()},xDA=function(e){if(e instanceof Zp||e instanceof pb||e instanceof Vp&&e.hasClass("enclosing"))return e;return null},SV=function(e,t){var r=xDA(e);if(r){var i=r.children;if(i.length){if(t==="right")return SV(i[i.length-1],"right");else if(t==="left")return SV(i[0],"left")}}return e},LV=function(e,t){if(!e)return null;if(t)e=SV(e,t);var r=e.classes[0];return F$e[r]||null},Qb=function(e,t){var r=["nulldelimiter"].concat(e.baseSizingClasses());return rt(t.concat(r))},nu=function(e,t,r){if(!e)return rt();if(vR[e.type]){var i=vR[e.type](e,t);if(r&&t.size!==r.size){i=rt(t.sizingClasses(r),[i],t);var u=t.sizeMultiplier/r.sizeMultiplier;i.height*=u,i.depth*=u}return i}else throw new ut("Got group of unknown type: '"+e.type+"'")},x$e,S$e,zg=function(e,t,r){if(Ca[t][e]&&Ca[t][e].replace&&e.charCodeAt(0)!==55349&&!(yDA.hasOwnProperty(e)&&r&&(r.fontFamily&&r.fontFamily.slice(4,6)==="tt"||r.font&&r.font.slice(4,6)==="tt")))e=Ca[t][e].replace;return new gn(e)},WV=function(e){if(e.length===1)return e[0];else return new it("mrow",e)},L$e,qV=(A,e)=>{if(A.mode==="text"){if(e.fontFamily==="texttt")return"monospace";else if(e.fontFamily==="textsf")if(e.fontShape==="textit"&&e.fontWeight==="textbf")return"sans-serif-bold-italic";else if(e.fontShape==="textit")return"sans-serif-italic";else if(e.fontWeight==="textbf")return"bold-sans-serif";else return"sans-serif";else if(e.fontShape==="textit"&&e.fontWeight==="textbf")return"bold-italic";else if(e.fontShape==="textit")return"italic";else if(e.fontWeight==="textbf")return"bold"}var t=e.font;if(!t||t==="mathnormal")return null;var r=A.mode,i=L$e[t];if(i)return typeof i==="function"?i(A):i;var u=A.text;if(x$e.has(u))return null;if(Ca[r][u]){var a=Ca[r][u].replace;if(a)u=a}var n=FV[t].fontName;if(JV(u,n,r))return FV[t].variant;return null},Ag=function(e,t,r){if(e.length===1){var i=Gu(e[0],t);if(r&&i instanceof it&&i.type==="mo")i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em");return[i]}var u=[],a;for(var n=0;n<e.length;n++){var o=Gu(e[n],t);if(o instanceof it&&a instanceof it){if(o.type==="mtext"&&a.type==="mtext"&&o.getAttribute("mathvariant")===a.getAttribute("mathvariant")){a.children.push(...o.children);continue}else if(o.type==="mn"&&a.type==="mn"){a.children.push(...o.children);continue}else if(lV(o)&&a.type==="mn"){a.children.push(...o.children);continue}else if(o.type==="mn"&&lV(a))o.children=[...a.children,...o.children],u.pop();else if((o.type==="msup"||o.type==="msub")&&o.children.length>=1&&(a.type==="mn"||lV(a))){var s=o.children[0];if(s instanceof it&&s.type==="mn")s.children=[...a.children,...s.children],u.pop()}else if(a.type==="mi"&&a.children.length===1){var l=a.children[0];if(l instanceof gn&&l.text==="̸"&&(o.type==="mo"||o.type==="mi"||o.type==="mn")){var g=o.children[0];if(g instanceof gn&&g.text.length>0)g.text=g.text.slice(0,1)+"̸"+g.text.slice(1),u.pop()}}}u.push(o),a=o}return u},IQ=function(e,t,r){return WV(Ag(e,t,r))},Gu=function(e,t){if(!e)return new it("mrow");if(kR[e.type])return kR[e.type](e,t);else throw new ut("Got group of unknown type: '"+e.type+"'")},R$e,Z2A,V2A=function(e,t){return t.size<2?e:R$e[e-1][t.size-1]},LDA=function(e){return new iI({style:e.displayMode?Wr.DISPLAY:Wr.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},RDA=function(e,t){if(t.displayMode){var r=["katex-display"];if(t.leqno)r.push("leqno");if(t.fleqn)r.push("fleqn");e=rt(r,[e])}return e},N$e=function(e,t,r){var i=LDA(r),u;if(r.output==="mathml")return z2A(e,t,i,r.displayMode,!0);else if(r.output==="html"){var a=RV(e,i);u=rt(["katex"],[a])}else{var n=z2A(e,t,i,r.displayMode,!1),o=RV(e,i);u=rt(["katex"],[n,o])}return RDA(u,r)},G$e=function(e,t,r){var i=LDA(r),u=RV(e,i),a=rt(["katex"],[u]);return RDA(a,r)},U$e,RR=function(e){var t=new it("mo",[new gn(U$e[e.replace(/^\\/,"")])]);return t.setAttribute("stretchy","true"),t},M$e,T$e,NR=function(e,t){function r(){var n=400000,o=e.label.slice(1);if(T$e.has(o)&&"base"in e){var s=e.base.type==="ordgroup"?e.base.body.length:1,l,g,C;if(s>5)if(o==="widehat"||o==="widecheck")l=420,n=2364,C=0.42,g=o+"4";else l=312,n=2340,C=0.34,g="tilde4";else{var B=[1,1,2,2,3,3][s];if(o==="widehat"||o==="widecheck")n=[0,1062,2364,2364,2364][B],l=[0,239,300,360,420][B],C=[0,0.24,0.3,0.3,0.36,0.42][B],g=o+B;else n=[0,600,1033,2339,2340][B],l=[0,260,286,306,312][B],C=[0,0.26,0.286,0.3,0.306,0.34][B],g="tilde"+B}var E=new aI(g),d=new ZB([E],{width:"100%",height:gt(C),viewBox:"0 0 "+n+" "+l,preserveAspectRatio:"none"});return{span:dQ([],[d],t),minWidth:0,height:C}}else{var I=[],h=M$e[o];if(!h)throw Error('No SVG data for "'+o+'".');var[Q,p,m]=h,f=m/1000,D=Q.length,w,b;if(D===1){if(h.length!==4)throw Error('Expected 4-tuple for single-path SVG data "'+o+'".');w=["hide-tail"],b=[h[3]]}else if(D===2)w=["halfarrow-left","halfarrow-right"],b=["xMinYMin","xMaxYMin"];else if(D===3)w=["brace-left","brace-center","brace-right"],b=["xMinYMin","xMidYMin","xMaxYMin"];else throw Error(`Correct katexImagesData or update code here to support
|
||
`+D+" children.");for(var F=0;F<D;F++){var v=new aI(Q[F]),S=new ZB([v],{width:"400em",height:gt(f),viewBox:"0 0 "+n+" "+m,preserveAspectRatio:b[F]+" slice"}),x=dQ([w[F]],[S],t);if(D===1)return{span:x,minWidth:p,height:f};else x.style.height=gt(f),I.push(x)}return{span:rt(["stretchy"],I,t),minWidth:p,height:f}}}var{span:i,minWidth:u,height:a}=r();if(i.height=a,i.style.height=gt(a),u>0)i.style.minWidth=gt(u);return i},Y$e=function(e,t,r,i,u){var a,n=e.height+e.depth+r+i;if(/fbox|color|angl/.test(t)){if(a=rt(["stretchy",t],[],u),t==="fbox"){var o=u.color&&u.getColor();if(o)a.style.borderColor=o}}else{var s=[];if(/^[bx]cancel$/.test(t))s.push(new wR({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"}));if(/^x?cancel$/.test(t))s.push(new wR({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var l=new ZB(s,{width:"100%",height:gt(n)});a=dQ([],[l],u)}return a.height=n,a.style.height=gt(n),a},H$e,K$e,NDA=(A)=>{if(A instanceof tl)return A;if(B$e(A)&&A.children.length===1)return NDA(A.children[0])},zV=(A,e)=>{var t,r,i;if(A&&A.type==="supsub")r=Ai(A.base,"accent"),t=r.base,A.base=t,i=C$e(nu(A,e)),A.base=r;else r=Ai(A,"accent"),t=r.base;var u=nu(t,e.havingCrampedStyle()),a=r.isShifty&&nI(t),n=0;if(a){var o,s;n=(o=(s=NDA(u))==null?void 0:s.skew)!=null?o:0}var l=r.label==="\\c",g=l?u.height+u.depth:Math.min(u.height,e.fontMetrics().xHeight),C;if(!r.isStretchy){var B,E;if(r.label==="\\vec")B=kDA("vec",e),E=vDA.vec[1];else if(B=LR({type:"textord",mode:r.mode,text:r.label},e,"textord"),B=c$e(B),B.italic=0,E=B.width,l)g+=B.depth;C=rt(["accent-body"],[B]);var d=r.label==="\\textcircled";if(d)C.classes.push("accent-full"),g=u.height;var I=n;if(!d)I-=E/2;if(C.style.left=gt(I),r.label==="\\textcircled")C.style.top=".2em";C=au({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:-g},{type:"elem",elem:C}]})}else C=NR(r,e),C=au({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"elem",elem:C,wrapperClasses:["svg-align"],wrapperStyle:n>0?{width:"calc(100% - "+gt(2*n)+")",marginLeft:gt(2*n)}:void 0}]});var h=rt(["mord","accent"],[C],e);if(i)return i.children[0]=h,i.height=Math.max(h.height,i.height),i.classes[0]="mord",i;else return h},GDA=(A,e)=>{var t=A.isStretchy?RR(A.label):new it("mo",[zg(A.label,A.mode)]),r=new it("mover",[Gu(A.base,e),t]);return r.setAttribute("accent","true"),r},O$e,IR=(A)=>{var e=new it("mpadded",A?[A]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e},MR=(A)=>{var e=A.type==="ordgroup"&&A.body.length?A.body[0]:A;if(e.type==="atom"&&(e.family==="bin"||e.family==="rel"))return"m"+e.family;else return"mord"},P$e,j2A=()=>({type:"styling",body:[],mode:"math",style:"display",resetFont:!0}),X2A=(A)=>A.type==="textord"&&A.text==="@",_$e=(A,e)=>(A.type==="mathord"||A.type==="atom")&&A.text===e,TDA=(A,e)=>{var t=Xn(A.body,e.withColor(A.color),!1);return sI(t)},YDA=(A,e)=>{var t=Ag(A.body,e.withColor(A.color)),r=new it("mstyle",t);return r.setAttribute("mathcolor",A.color),r},NV,HDA=(A)=>{var e=A.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new ut("Expected a control sequence",A);return e},z$e=(A)=>{var e=A.gullet.popToken();if(e.text==="="){if(e=A.gullet.popToken(),e.text===" ")e=A.gullet.popToken()}return e},KDA=(A,e,t,r)=>{var i=A.gullet.macros.get(t.text);if(i==null)t.noexpand=!0,i={tokens:[t],numArgs:0,unexpandable:!A.gullet.isExpandable(t.text)};A.gullet.macros.set(e,i,r)},db=function(e,t,r){var i=Ca.math[e]&&Ca.math[e].replace,u=JV(i||e,t,r);if(!u)throw Error("Unsupported symbol "+e+" and font size "+t+".");return u},ZV=function(e,t,r,i){var u=r.havingBaseStyle(t),a=rt(i.concat(u.sizingClasses(r)),[e],r),n=u.sizeMultiplier/r.sizeMultiplier;return a.height*=n,a.depth*=n,a.maxFontSize=u.sizeMultiplier,a},JDA=function(e,t,r){var i=t.havingBaseStyle(r),u=(1-t.sizeMultiplier/i.sizeMultiplier)*t.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=gt(u),e.height-=u,e.depth+=u},Z$e=function(e,t,r,i,u,a){var n=ls(e,"Main-Regular",u,i),o=ZV(n,t,i,a);if(r)JDA(o,i,t);return o},V$e=function(e,t,r,i){return ls(e,"Size"+t+"-Regular",r,i)},ODA=function(e,t,r,i,u,a){var n=V$e(e,t,u,i),o=ZV(rt(["delimsizing","size"+t],[n],i),Wr.TEXT,i,a);if(r)JDA(o,i,Wr.TEXT);return o},gV=function(e,t,r){var i;if(t==="Size1-Regular")i="delim-size1";else i="delim-size4";var u=rt(["delimsizinginner",i],[rt([],[ls(e,t,r)])]);return{type:"elem",elem:u}},cV=function(e,t,r){var i=zB["Size4-Regular"][e.charCodeAt(0)]?zB["Size4-Regular"][e.charCodeAt(0)][4]:zB["Size1-Regular"][e.charCodeAt(0)][4],u=new aI("inner",a$e(e,Math.round(1000*t))),a=new ZB([u],{width:gt(i),height:gt(t),style:"width:"+gt(i),viewBox:"0 0 "+1000*i+" "+Math.round(1000*t),preserveAspectRatio:"xMinYMin"}),n=dQ([],[a],r);return n.height=t,n.style.height=gt(t),n.style.width=gt(i),{type:"elem",elem:n}},GV=0.008,hR,j$e,X$e,PDA=function(e,t,r,i,u,a){var n,o,s,l,g="",C=0;n=s=l=e,o=null;var B="Size1-Regular";if(e==="\\uparrow")s=l="⏐";else if(e==="\\Uparrow")s=l="‖";else if(e==="\\downarrow")n=s="⏐";else if(e==="\\Downarrow")n=s="‖";else if(e==="\\updownarrow")n="\\uparrow",s="⏐",l="\\downarrow";else if(e==="\\Updownarrow")n="\\Uparrow",s="‖",l="\\Downarrow";else if(j$e.has(e))s="∣",g="vert",C=333;else if(X$e.has(e))s="∥",g="doublevert",C=556;else if(e==="["||e==="\\lbrack")n="⎡",s="⎢",l="⎣",B="Size4-Regular",g="lbrack",C=667;else if(e==="]"||e==="\\rbrack")n="⎤",s="⎥",l="⎦",B="Size4-Regular",g="rbrack",C=667;else if(e==="\\lfloor"||e==="⌊")s=n="⎢",l="⎣",B="Size4-Regular",g="lfloor",C=667;else if(e==="\\lceil"||e==="⌈")n="⎡",s=l="⎢",B="Size4-Regular",g="lceil",C=667;else if(e==="\\rfloor"||e==="⌋")s=n="⎥",l="⎦",B="Size4-Regular",g="rfloor",C=667;else if(e==="\\rceil"||e==="⌉")n="⎤",s=l="⎥",B="Size4-Regular",g="rceil",C=667;else if(e==="("||e==="\\lparen")n="⎛",s="⎜",l="⎝",B="Size4-Regular",g="lparen",C=875;else if(e===")"||e==="\\rparen")n="⎞",s="⎟",l="⎠",B="Size4-Regular",g="rparen",C=875;else if(e==="\\{"||e==="\\lbrace")n="⎧",o="⎨",l="⎩",s="⎪",B="Size4-Regular";else if(e==="\\}"||e==="\\rbrace")n="⎫",o="⎬",l="⎭",s="⎪",B="Size4-Regular";else if(e==="\\lgroup"||e==="⟮")n="⎧",l="⎩",s="⎪",B="Size4-Regular";else if(e==="\\rgroup"||e==="⟯")n="⎫",l="⎭",s="⎪",B="Size4-Regular";else if(e==="\\lmoustache"||e==="⎰")n="⎧",l="⎭",s="⎪",B="Size4-Regular";else if(e==="\\rmoustache"||e==="⎱")n="⎫",l="⎩",s="⎪",B="Size4-Regular";var E=db(n,B,u),d=E.height+E.depth,I=db(s,B,u),h=I.height+I.depth,Q=db(l,B,u),p=Q.height+Q.depth,m=0,f=1;if(o!==null){var D=db(o,B,u);m=D.height+D.depth,f=2}var w=d+p+m,b=Math.max(0,Math.ceil((t-w)/(f*h))),F=w+b*f*h,v=i.fontMetrics().axisHeight;if(r)v*=i.sizeMultiplier;var S=F/2-v,x=[];if(g.length>0){var k=F-d-p,T=Math.round(F*1000),R=n$e(g,Math.round(k*1000)),L=new aI(g,R),M=gt(C/1000),U=gt(T/1000),Y=new ZB([L],{width:M,height:U,viewBox:"0 0 "+C+" "+T}),H=dQ([],[Y],i);H.height=T/1000,H.style.width=M,H.style.height=U,x.push({type:"elem",elem:H})}else{if(x.push(gV(l,B,u)),x.push(hR),o===null){var J=F-d-p+2*GV;x.push(cV(s,J,i))}else{var K=(F-d-p-m)/2+2*GV;x.push(cV(s,K,i)),x.push(hR),x.push(gV(o,B,u)),x.push(hR),x.push(cV(s,K,i))}x.push(hR),x.push(gV(n,B,u))}var O=i.havingBaseStyle(Wr.TEXT),_=au({positionType:"bottom",positionData:S,children:x});return ZV(rt(["delimsizing","mult"],[_],O),Wr.TEXT,i,a)},CV=80,BV=0.08,EV=function(e,t,r,i,u){var a=u$e(e,i,r),n=new aI(e,a),o=new ZB([n],{width:"400em",height:gt(t),viewBox:"0 0 400000 "+r,preserveAspectRatio:"xMinYMin slice"});return dQ(["hide-tail"],[o],u)},$$e=function(e,t){var r=t.havingBaseSizing(),i=ZDA("\\surd",e*r.sizeMultiplier,zDA,r),u=r.sizeMultiplier,a=Math.max(0,t.minRuleThickness-t.fontMetrics().sqrtRuleThickness),n,o,s,l,g;if(i.type==="small"){if(l=1000+1000*a+CV,e<1)u=1;else if(e<1.4)u=0.7;o=(1+a+BV)/u,s=(1+a)/u,n=EV("sqrtMain",o,l,a,t),n.style.minWidth="0.853em",g=0.833/u}else if(i.type==="large")l=(1000+CV)*Ib[i.size],s=(Ib[i.size]+a)/u,o=(Ib[i.size]+a+BV)/u,n=EV("sqrtSize"+i.size,o,l,a,t),n.style.minWidth="1.02em",g=1/u;else o=e+a+BV,s=e+a,l=Math.floor(1000*e+a)+CV,n=EV("sqrtTall",o,l,a,t),n.style.minWidth="0.742em",g=1.056;return n.height=s,n.style.height=gt(o),{span:n,advanceWidth:g,ruleWidth:(t.fontMetrics().sqrtRuleThickness+a)*u}},_DA,AAt,WDA,Ib,qDA=function(e,t,r,i,u){if(e==="<"||e==="\\lt"||e==="⟨")e="\\langle";else if(e===">"||e==="\\gt"||e==="⟩")e="\\rangle";if(_DA.has(e)||WDA.has(e))return ODA(e,t,!1,r,i,u);else if(AAt.has(e))return PDA(e,Ib[t],!1,r,i,u);else throw new ut("Illegal delimiter: '"+e+"'")},eAt,tAt,zDA,rAt=function(e){if(e.type==="small")return"Main-Regular";else if(e.type==="large")return"Size"+e.size+"-Regular";else if(e.type==="stack")return"Size4-Regular";else{var t=e.type;throw Error("Add support for delim type '"+t+"' here.")}},ZDA=function(e,t,r,i){var u=Math.min(2,3-i.style.size);for(var a=u;a<r.length;a++){var n=r[a];if(n.type==="stack")break;var o=db(e,rAt(n),"math"),s=o.height+o.depth;if(n.type==="small"){var l=i.havingBaseStyle(n.style);s*=l.sizeMultiplier}if(s>t)return n}return r[r.length-1]},UV=function(e,t,r,i,u,a){if(e==="<"||e==="\\lt"||e==="⟨")e="\\langle";else if(e===">"||e==="\\gt"||e==="⟩")e="\\rangle";var n;if(WDA.has(e))n=eAt;else if(_DA.has(e))n=zDA;else n=tAt;var o=ZDA(e,t,n,i);if(o.type==="small")return Z$e(e,o.style,r,i,u,a);else if(o.type==="large")return ODA(e,o.size,r,i,u,a);else return PDA(e,t,r,i,u,a)},dV=function(e,t,r,i,u,a){var n=i.fontMetrics().axisHeight*i.sizeMultiplier,o=901,s=5/i.fontMetrics().ptPerEm,l=Math.max(t-n,r+n),g=Math.max(l/500*o,2*l-s);return UV(e,g,!0,i,u,a)},$2A,iAt,YR=(A,e)=>{var t=QD(nu(A.body,e),e),r=A.label.slice(1),i=e.sizeMultiplier,u,a,n=nI(A.body);if(r==="sout")u=rt(["stretchy","sout"]),u.height=e.fontMetrics().defaultRuleThickness/i,a=-0.5*e.fontMetrics().xHeight;else if(r==="phase"){var o=Ra({number:0.6,unit:"pt"},e),s=Ra({number:0.35,unit:"ex"},e),l=e.havingBaseSizing();i=i/l.sizeMultiplier;var g=t.height+t.depth+o+s;t.style.paddingLeft=gt(g/2+o);var C=Math.floor(1000*g*i),B=r$e(C),E=new ZB([new aI("phase",B)],{width:"400em",height:gt(C/1000),viewBox:"0 0 400000 "+C,preserveAspectRatio:"xMinYMin slice"});u=dQ(["hide-tail"],[E],e),u.style.height=gt(g),a=t.depth+o+s}else{if(/cancel/.test(r)){if(!n)t.classes.push("cancel-pad")}else if(r==="angl")t.classes.push("anglpad");else t.classes.push("boxpad");var d,I,h=0;if(/box/.test(r))h=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),d=e.fontMetrics().fboxsep+(r==="colorbox"?0:h),I=d;else if(r==="angl")h=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),d=4*h,I=Math.max(0,0.25-t.depth);else d=n?0.2:0,I=d;if(u=Y$e(t,r,d,I,e),/fbox|boxed|fcolorbox/.test(r))u.style.borderStyle="solid",u.style.borderWidth=gt(h);else if(r==="angl"&&h!==0.049)u.style.borderTopWidth=gt(h),u.style.borderRightWidth=gt(h);if(a=t.depth+I,A.backgroundColor){if(u.style.backgroundColor=A.backgroundColor,A.borderColor)u.style.borderColor=A.borderColor}}var Q;if(A.backgroundColor)Q=au({positionType:"individualShift",children:[{type:"elem",elem:u,shift:a},{type:"elem",elem:t,shift:0}]});else{var p=/cancel|phase/.test(r)?["svg-align"]:[];Q=au({positionType:"individualShift",children:[{type:"elem",elem:t,shift:0},{type:"elem",elem:u,shift:a,wrapperClasses:p}]})}if(/cancel/.test(r))Q.height=t.height,Q.depth=t.depth;if(/cancel/.test(r)&&!n)return rt(["mord","cancel-lap"],[Q],e);else return rt(["mord"],[Q],e)},HR=(A,e)=>{var t,r=new it(A.label.includes("colorbox")?"mpadded":"menclose",[Gu(A.body,e)]);switch(A.label){case"\\cancel":r.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":r.setAttribute("notation","downdiagonalstrike");break;case"\\phase":r.setAttribute("notation","phasorangle");break;case"\\sout":r.setAttribute("notation","horizontalstrike");break;case"\\fbox":r.setAttribute("notation","box");break;case"\\angl":r.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(t=e.fontMetrics().fboxsep*e.fontMetrics().ptPerEm,r.setAttribute("width","+"+2*t+"pt"),r.setAttribute("height","+"+2*t+"pt"),r.setAttribute("lspace",t+"pt"),r.setAttribute("voffset",t+"pt"),A.label==="\\fcolorbox"){var i=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness);r.setAttribute("style","border: "+gt(i)+" solid "+A.borderColor)}break;case"\\xcancel":r.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}if(A.backgroundColor)r.setAttribute("mathbackground",A.backgroundColor);return r},VDA,jDA,KR=(A)=>{var e=A.parser.settings;if(!e.displayMode)throw new ut("{"+A.envName+"} can be used only in display mode.")},uAt,jB=function(e,t){var r,i,u=e.body.length,a=e.hLinesBeforeRow,n=0,o=Array(u),s=[],l=Math.max(t.fontMetrics().arrayRuleWidth,t.minRuleThickness),g=1/t.fontMetrics().ptPerEm,C=5*g;if(e.colSeparationType&&e.colSeparationType==="small"){var B=t.havingStyle(Wr.SCRIPT).sizeMultiplier;C=0.2778*(B/t.sizeMultiplier)}var E=e.colSeparationType==="CD"?Ra({number:3,unit:"ex"},t):12*g,d=3*g,I=e.arraystretch*E,h=0.7*I,Q=0.3*I,p=0;function m(YA){for(var dA=0;dA<YA.length;++dA){if(dA>0)p+=0.25;s.push({pos:p,isDashed:YA[dA]})}}m(a[0]);for(r=0;r<e.body.length;++r){var f=e.body[r],D=h,w=Q;if(n<f.length)n=f.length;var b={cells:Array(f.length),height:0,depth:0,pos:0};for(i=0;i<f.length;++i){var F=nu(f[i],t);if(w<F.depth)w=F.depth;if(D<F.height)D=F.height;b.cells[i]=F}var v=e.rowGaps[r],S=0;if(v){if(S=Ra(v,t),S>0){if(S+=Q,w<S)w=S;S=0}}if(e.addJot&&r<e.body.length-1)w+=d;b.height=D,b.depth=w,p+=D,b.pos=p,p+=w+S,o[r]=b,m(a[r+1])}var x=p/2+t.fontMetrics().axisHeight,k=e.cols||[],T=[],R,L,M=[];if(e.tags&&e.tags.some((YA)=>YA))for(r=0;r<u;++r){var U=o[r],Y=U.pos-x,H=e.tags[r],J=void 0;if(H===!0)J=rt(["eqn-num"],[],t);else if(H===!1)J=rt([],[],t);else J=rt([],Xn(H,t,!0),t);J.depth=U.depth,J.height=U.height,M.push({type:"elem",elem:J,shift:Y})}for(i=0,L=0;i<n||L<k.length;++i,++L){var K,O=k[L],_=!0;while(((z=O)==null?void 0:z.type)==="separator"){var z;if(!_)R=rt(["arraycolsep"],[]),R.style.width=gt(t.fontMetrics().doubleRuleSep),T.push(R);if(O.separator==="|"||O.separator===":"){var j=O.separator==="|"?"solid":"dashed",q=rt(["vertical-separator"],[],t);q.style.height=gt(p),q.style.borderRightWidth=gt(l),q.style.borderRightStyle=j,q.style.margin="0 "+gt(-l/2);var CA=p-x;if(CA)q.style.verticalAlign=gt(-CA);T.push(q)}else throw new ut("Invalid separator type: "+O.separator);L++,O=k[L],_=!1}if(i>=n)continue;var tA=void 0;if(i>0||e.hskipBeforeAndAfter){var lA,gA;if(tA=(lA=(gA=O)==null?void 0:gA.pregap)!=null?lA:C,tA!==0)R=rt(["arraycolsep"],[]),R.style.width=gt(tA),T.push(R)}var aA=[];for(r=0;r<u;++r){var RA=o[r],wA=RA.cells[i];if(!wA)continue;var JA=RA.pos-x;wA.depth=RA.depth,wA.height=RA.height,aA.push({type:"elem",elem:wA,shift:JA})}var TA=au({positionType:"individualShift",children:aA}),qA=rt(["col-align-"+(((K=O)==null?void 0:K.align)||"c")],[TA]);if(T.push(qA),i<n-1||e.hskipBeforeAndAfter){var BA,bA;if(tA=(BA=(bA=O)==null?void 0:bA.postgap)!=null?BA:C,tA!==0)R=rt(["arraycolsep"],[]),R.style.width=gt(tA),T.push(R)}}var FA=rt(["mtable"],T);if(s.length>0){var IA=hD("hline",t,l),nA=hD("hdashline",t,l),eA=[{type:"elem",elem:FA,shift:0}];while(s.length>0){var EA=s.pop(),mA=EA.pos-x;if(EA.isDashed)eA.push({type:"elem",elem:nA,shift:mA});else eA.push({type:"elem",elem:IA,shift:mA})}FA=au({positionType:"individualShift",children:eA})}if(M.length===0)return rt(["mord"],[FA],t);else{var kA=au({positionType:"individualShift",children:M}),SA=rt(["tag"],[kA],t);return sI([FA,SA])}},aAt,XB=function(e,t){var r=[],i=new it("mtd",[],["mtr-glue"]),u=new it("mtd",[],["mml-eqn-num"]);for(var a=0;a<e.body.length;a++){var n=e.body[a],o=[];for(var s=0;s<n.length;s++)o.push(new it("mtd",[Gu(n[s],t)]));if(e.tags&&e.tags[a])if(o.unshift(i),o.push(i),e.leqno)o.unshift(u);else o.push(u);r.push(new it("mtr",o))}var l=new it("mtable",r),g=e.arraystretch===0.5?0.1:0.16+e.arraystretch-1+(e.addJot?0.09:0);l.setAttribute("rowspacing",gt(g));var C="",B="";if(e.cols&&e.cols.length>0){var E=e.cols,d="",I=!1,h=0,Q=E.length;if(E[0].type==="separator")C+="top ",h=1;if(E[E.length-1].type==="separator")C+="bottom ",Q-=1;for(var p=h;p<Q;p++){var m=E[p];if(m.type==="align"){if(B+=aAt[m.align],I)d+="none ";I=!0}else if(m.type==="separator"){if(I)d+=m.separator==="|"?"solid ":"dashed ",I=!1}}if(l.setAttribute("columnalign",B.trim()),/[sd]/.test(d))l.setAttribute("columnlines",d.trim())}if(e.colSeparationType==="align"){var f=e.cols||[],D="";for(var w=1;w<f.length;w++)D+=w%2?"0em ":"1em ";l.setAttribute("columnspacing",D.trim())}else if(e.colSeparationType==="alignat"||e.colSeparationType==="gather")l.setAttribute("columnspacing","0em");else if(e.colSeparationType==="small")l.setAttribute("columnspacing","0.2778em");else if(e.colSeparationType==="CD")l.setAttribute("columnspacing","0.5em");else l.setAttribute("columnspacing","1em");var b="",F=e.hLinesBeforeRow;C+=F[0].length>0?"left ":"",C+=F[F.length-1].length>0?"right ":"";for(var v=1;v<F.length-1;v++)b+=F[v].length===0?"none ":F[v][0]?"dashed ":"solid ";if(/[sd]/.test(b))l.setAttribute("rowlines",b.trim());if(C!=="")l=new it("menclose",[l]),l.setAttribute("notation",C.trim());if(e.arraystretch&&e.arraystretch<1)l=new it("mstyle",[l]),l.setAttribute("scriptlevel","1");return l},XDA=function(e,t){if(!e.envName.includes("ed"))KR(e);var r=[],i=e.envName.includes("at")?"alignat":"align",u=e.envName==="split",a=hQ(e.parser,{cols:r,addJot:!0,autoTag:u?void 0:VV(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:u?2:void 0,leqno:e.parser.settings.leqno},"display"),n=0,o=0,s={type:"ordgroup",mode:e.mode,body:[]};if(t[0]&&t[0].type==="ordgroup"){var l="";for(var g=0;g<t[0].body.length;g++){var C=Ai(t[0].body[g],"textord");l+=C.text}n=Number(l),o=n*2}var B=!o;a.body.forEach(function(h){for(var Q=1;Q<h.length;Q+=2){var p=Ai(h[Q],"styling"),m=Ai(p.body[0],"ordgroup");m.body.unshift(s)}if(!B){var f=h.length/2;if(n<f)throw new ut("Too many math in a row: "+("expected "+n+", but got "+f),h[0])}else if(o<h.length)o=h.length});for(var E=0;E<o;++E){var d="r",I=0;if(E%2===1)d="l";else if(E>0&&B)I=1;r[E]={type:"align",align:d,pregap:I,postgap:0}}return a.colSeparationType=B?"align":"alignat",a},rDA,$DA=(A,e)=>{var t=A.font,r=e.withFont(t);return nu(A.body,r)},AyA=(A,e)=>{var t=A.font,r=e.withFont(t);return Gu(A.body,r)},iDA,nAt=(A,e)=>{var t=e.style,r=t.fracNum(),i=t.fracDen(),u;u=e.havingStyle(r);var a=nu(A.numer,u,e);if(A.continued){var n=8.5/e.fontMetrics().ptPerEm,o=3.5/e.fontMetrics().ptPerEm;a.height=a.height<n?n:a.height,a.depth=a.depth<o?o:a.depth}u=e.havingStyle(i);var s=nu(A.denom,u,e),l,g,C;if(A.hasBarLine){if(A.barSize)g=Ra(A.barSize,e),l=hD("frac-line",e,g);else l=hD("frac-line",e);g=l.height,C=l.height}else l=null,g=0,C=e.fontMetrics().defaultRuleThickness;var B,E,d;if(t.size===Wr.DISPLAY.size){if(B=e.fontMetrics().num1,g>0)E=3*C;else E=7*C;d=e.fontMetrics().denom1}else{if(g>0)B=e.fontMetrics().num2,E=C;else B=e.fontMetrics().num3,E=3*C;d=e.fontMetrics().denom2}var I;if(!l){var h=B-a.depth-(s.height-d);if(h<E)B+=0.5*(E-h),d+=0.5*(E-h);I=au({positionType:"individualShift",children:[{type:"elem",elem:s,shift:d},{type:"elem",elem:a,shift:-B}]})}else{var Q=e.fontMetrics().axisHeight;if(B-a.depth-(Q+0.5*g)<E)B+=E-(B-a.depth-(Q+0.5*g));if(Q-0.5*g-(s.height-d)<E)d+=E-(Q-0.5*g-(s.height-d));var p=-(Q-0.5*g);I=au({positionType:"individualShift",children:[{type:"elem",elem:s,shift:d},{type:"elem",elem:l,shift:p},{type:"elem",elem:a,shift:-B}]})}u=e.havingStyle(t),I.height*=u.sizeMultiplier/e.sizeMultiplier,I.depth*=u.sizeMultiplier/e.sizeMultiplier;var m;if(t.size===Wr.DISPLAY.size)m=e.fontMetrics().delim1;else if(t.size===Wr.SCRIPTSCRIPT.size)m=e.havingStyle(Wr.SCRIPT).fontMetrics().delim2;else m=e.fontMetrics().delim2;var f,D;if(A.leftDelim==null)f=Qb(e,["mopen"]);else f=UV(A.leftDelim,m,!0,e.havingStyle(t),A.mode,["mopen"]);if(A.continued)D=rt([]);else if(A.rightDelim==null)D=Qb(e,["mclose"]);else D=UV(A.rightDelim,m,!0,e.havingStyle(t),A.mode,["mclose"]);return rt(["mord"].concat(u.sizingClasses(e)),[f,rt(["mfrac"],[I]),D],e)},oAt=(A,e)=>{var t=new it("mfrac",[Gu(A.numer,e),Gu(A.denom,e)]);if(!A.hasBarLine)t.setAttribute("linethickness","0px");else if(A.barSize){var r=Ra(A.barSize,e);t.setAttribute("linethickness",gt(r))}if(A.leftDelim!=null||A.rightDelim!=null){var i=[];if(A.leftDelim!=null){var u=new it("mo",[new gn(A.leftDelim.replace("\\",""))]);u.setAttribute("fence","true"),i.push(u)}if(i.push(t),A.rightDelim!=null){var a=new it("mo",[new gn(A.rightDelim.replace("\\",""))]);a.setAttribute("fence","true"),i.push(a)}return WV(i)}return t},eyA=(A,e)=>{if(!e)return A;var t={type:"styling",mode:A.mode,style:e,body:[A]};return t},uDA,aDA=function(e){var t=null;if(e.length>0)t=e,t=t==="."?null:t;return t},tyA=(A,e)=>{var t=e.style,r,i;if(A.type==="supsub")r=A.sup?nu(A.sup,e.havingStyle(t.sup()),e):nu(A.sub,e.havingStyle(t.sub()),e),i=Ai(A.base,"horizBrace");else i=Ai(A,"horizBrace");var u=nu(i.base,e.havingBaseStyle(Wr.DISPLAY)),a=NR(i,e),n;if(i.isOver)n=au({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:0.1},{type:"elem",elem:a,wrapperClasses:["svg-align"]}]});else n=au({positionType:"bottom",positionData:u.depth+0.1+a.height,children:[{type:"elem",elem:a,wrapperClasses:["svg-align"]},{type:"kern",size:0.1},{type:"elem",elem:u}]});if(r){var o=rt(["minner",i.isOver?"mover":"munder"],[n],e);if(i.isOver)n=au({positionType:"firstBaseline",children:[{type:"elem",elem:o},{type:"kern",size:0.2},{type:"elem",elem:r}]});else n=au({positionType:"bottom",positionData:o.depth+0.2+r.height+r.depth,children:[{type:"elem",elem:r},{type:"kern",size:0.2},{type:"elem",elem:o}]})}return rt(["minner",i.isOver?"mover":"munder"],[n],e)},sAt=(A,e)=>{var t=RR(A.label);return new it(A.isOver?"mover":"munder",[Gu(A.base,e),t])},IV=function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};else{var t=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!t)throw new ut("Invalid size: '"+e+"' in \\includegraphics");var r={number:+(t[1]+t[2]),unit:t[3]};if(!QDA(r))throw new ut("Invalid unit: '"+r.unit+"' in \\includegraphics.");return r}},nDA=(A,e)=>{switch(e.style.size){case Wr.DISPLAY.size:return A.display;case Wr.TEXT.size:return A.text;case Wr.SCRIPT.size:return A.script;case Wr.SCRIPTSCRIPT.size:return A.scriptscript;default:return A.text}},ryA=(A,e,t,r,i,u,a)=>{A=rt([],[A]);var n=t&&nI(t),o,s;if(e){var l=nu(e,r.havingStyle(i.sup()),r);s={elem:l,kern:Math.max(r.fontMetrics().bigOpSpacing1,r.fontMetrics().bigOpSpacing3-l.depth)}}if(t){var g=nu(t,r.havingStyle(i.sub()),r);o={elem:g,kern:Math.max(r.fontMetrics().bigOpSpacing2,r.fontMetrics().bigOpSpacing4-g.height)}}var C;if(s&&o){var B=r.fontMetrics().bigOpSpacing5+o.elem.height+o.elem.depth+o.kern+A.depth+a;C=au({positionType:"bottom",positionData:B,children:[{type:"kern",size:r.fontMetrics().bigOpSpacing5},{type:"elem",elem:o.elem,marginLeft:gt(-u)},{type:"kern",size:o.kern},{type:"elem",elem:A},{type:"kern",size:s.kern},{type:"elem",elem:s.elem,marginLeft:gt(u)},{type:"kern",size:r.fontMetrics().bigOpSpacing5}]})}else if(o){var E=A.height-a;C=au({positionType:"top",positionData:E,children:[{type:"kern",size:r.fontMetrics().bigOpSpacing5},{type:"elem",elem:o.elem,marginLeft:gt(-u)},{type:"kern",size:o.kern},{type:"elem",elem:A}]})}else if(s){var d=A.depth+a;C=au({positionType:"bottom",positionData:d,children:[{type:"elem",elem:A},{type:"kern",size:s.kern},{type:"elem",elem:s.elem,marginLeft:gt(u)},{type:"kern",size:r.fontMetrics().bigOpSpacing5}]})}else return A;var I=[C];if(o&&u!==0&&!n){var h=rt(["mspace"],[],r);h.style.marginRight=gt(u),I.unshift(h)}return rt(["mop","op-limits"],I,r)},iyA,fD=(A,e)=>{var t,r,i=!1,u;if(A.type==="supsub")t=A.sup,r=A.sub,u=Ai(A.base,"op"),i=!0;else u=Ai(A,"op");var a=e.style,n=!1;if(a.size===Wr.DISPLAY.size&&u.symbol&&!iyA.has(u.name))n=!0;var o,s;if(u.symbol){var l=n?"Size2-Regular":"Size1-Regular",g="";if(u.name==="\\oiint"||u.name==="\\oiiint")g=u.name.slice(1),u.name=g==="oiint"?"\\iint":"\\iiint";if(o=ls(u.name,l,"math",e,["mop","op-symbol",n?"large-op":"small-op"]),s=o.italic,g.length>0){var C=kDA(g+"Size"+(n?"2":"1"),e);o=au({positionType:"individualShift",children:[{type:"elem",elem:o,shift:0},{type:"elem",elem:C,shift:n?0.08:0}]}),u.name="\\"+g,o.classes.unshift("mop"),o.italic=s}}else if(u.body){var B=Xn(u.body,e,!0);if(B.length===1&&B[0]instanceof tl)o=B[0],o.classes[0]="mop";else o=rt(["mop"],B,e)}else{var E=[];for(var d=1;d<u.name.length;d++)E.push(OV(u.name[d],u.mode,e));o=rt(["mop"],E,e)}var I=0,h=0;if((o instanceof tl||u.name==="\\oiint"||u.name==="\\oiiint")&&!u.suppressBaseShift){var Q;I=(o.height-o.depth)/2-e.fontMetrics().axisHeight,h=(Q=o.italic)!=null?Q:0}if(i)return ryA(o,t,r,e,a,h,I);else{if(I)o.style.position="relative",o.style.top=gt(I);return o}},mb=(A,e)=>{var t;if(A.symbol){if(t=new it("mo",[zg(A.name,A.mode)]),iyA.has(A.name))t.setAttribute("largeop","false")}else if(A.body)t=new it("mo",Ag(A.body,e));else{t=new it("mi",[new gn(A.name.slice(1))]);var r=new it("mo",[zg("","text")]);if(A.parentIsSupSub)t=new it("mrow",[t,r]);else t=SDA([t,r])}return t},lAt,gAt,uyA=(A,e)=>{var t,r,i=!1,u;if(A.type==="supsub")t=A.sup,r=A.sub,u=Ai(A.base,"operatorname"),i=!0;else u=Ai(A,"operatorname");var a;if(u.body.length>0){var n=u.body.map((g)=>{var C="text"in g?g.text:void 0;if(typeof C==="string")return{type:"textord",mode:g.mode,text:C};else return g}),o=Xn(n,e.withFont("mathrm"),!0);for(var s=0;s<o.length;s++){var l=o[s];if(l instanceof tl)l.text=l.text.replace(/\u2212/,"-").replace(/\u2217/,"*")}a=rt(["mop"],o,e)}else a=rt(["mop"],[],e);if(i)return ryA(a,t,r,e,e.style,0,0);else return a},cAt=(A,e)=>{var t=Ag(A.body,e.withFont("mathrm")),r=!0;for(var i=0;i<t.length;i++){var u=t[i];if(u instanceof _V);else if(u instanceof it)switch(u.type){case"mi":case"mn":case"mspace":case"mtext":break;case"mo":{var a=u.children[0];if(u.children.length===1&&a instanceof gn)a.text=a.text.replace(/\u2212/,"-").replace(/\u2217/,"*");else r=!1;break}default:r=!1}else r=!1}if(r){var n=t.map((l)=>l.toText()).join("");t=[new gn(n)]}var o=new it("mi",t);o.setAttribute("mathvariant","normal");var s=new it("mo",[zg("","text")]);if(A.parentIsSupSub)return new it("mrow",[o,s]);else return SDA([o,s])},oDA,CAt=(A,e)=>{var t=e.havingSize(A.size);return ayA(A.body,t,e)},MV,EAt=function(e,t){var r=e.base;if(!r)return null;else if(r.type==="op"){var i=r.limits&&(t.style.size===Wr.DISPLAY.size||r.alwaysHandleSupSub);return i?fD:null}else if(r.type==="operatorname"){var u=r.alwaysHandleSupSub&&(t.style.size===Wr.DISPLAY.size||r.limits);return u?uyA:null}else if(r.type==="accent")return nI(r.base)?zV:null;else if(r.type==="horizBrace"){var a=!e.sub;return a===r.isOver?tyA:null}else return null},nyA,hV,QV,sDA=()=>{var A=new it("mtd",[]);return A.setAttribute("width","50%"),A},lDA,gDA,dAt,cDA=(A,e)=>{var t=A.font;if(!t)return e;else if(lDA[t])return e.withTextFontFamily(lDA[t]);else if(gDA[t])return e.withTextFontWeight(gDA[t]);else if(t==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit");return e.withTextFontShape(dAt[t])},CDA=(A)=>A.body.replace(/ /g,A.star?"␣":" "),BQ,oyA=`[ \r
|
||
]`,IAt="\\\\[a-zA-Z@]+",hAt="\\\\[^\uD800-\uDFFF]",QAt,pAt=`\\\\(
|
||
|[ \r ]+
|
||
?)[ \r ]*`,TV="[̀-ͯ]",fAt,mAt,DAt,BDA,XV=(A,e,t,r)=>{var i=A.consumeArg().tokens;if(i.length!==1)throw new ut("\\newcommand's first argument must be a macro name");var u=i[0].text,a=A.isDefined(u);if(a&&!e)throw new ut("\\newcommand{"+u+"} attempting to redefine "+(u+"; use \\renewcommand"));if(!a&&!t)throw new ut("\\renewcommand{"+u+"} when command "+u+" does not yet exist; use \\newcommand");var n=0;if(i=A.consumeArg().tokens,i.length===1&&i[0].text==="["){var o="",s=A.expandNextToken();while(s.text!=="]"&&s.text!=="EOF")o+=s.text,s=A.expandNextToken();if(!o.match(/^\s*[0-9]+\s*$/))throw new ut("Invalid number of arguments: "+o);n=parseInt(o),i=A.consumeArg().tokens}if(!(a&&r))A.macros.set(u,{tokens:i,numArgs:n});return""},EDA,yAt,$V,lyA,gyA=(A)=>(e)=>{var t=e.consumeArg().tokens,r=e.consumeArg().tokens,i=e.consumeArg().tokens,u=e.consumeArg().tokens,a=e.macros.get("|"),n=e.macros.get("\\|");e.macros.beginGroup();var o=(g)=>(C)=>{if(A){if(C.macros.set("|",a),i.length)C.macros.set("\\|",n)}var B=g;if(!g&&i.length){var E=C.future();if(E.text==="|")C.popToken(),B=!0}return{tokens:B?i:r,numArgs:0}};if(e.macros.set("|",o(!1)),i.length)e.macros.set("\\|",o(!0));var s=e.consumeArg().tokens,l=e.expandTokens([...u,...s,...t]);return e.macros.endGroup(),{tokens:l.reverse(),numArgs:0}},cyA,dDA,QR,pV,IDA,Aj=function(e,t){if(!(typeof e==="string"||e instanceof String))throw TypeError("KaTeX can only parse string typed expression");var r=new JR(e,t);delete r.gullet.macros.current["\\df@tag"];var i=r.parse();if(delete r.gullet.macros.current["\\current@color"],delete r.gullet.macros.current["\\color"],r.gullet.macros.get("\\df@tag")){if(!t.displayMode)throw new ut("\\tag works only in display equations");i=[{type:"tag",mode:"text",body:i,tag:r.subparse([new Xl("\\df@tag")])}]}return i},ByA=function(e,t,r){t.textContent="";var i=ej(e,r).toNode();t.appendChild(i)},wAt=function(e,t){var r=ej(e,t).toMarkup();return r},bAt=function(e,t){var r=new xR(t);return Aj(e,r)},EyA=function(e,t,r){if(r.throwOnError||!(e instanceof ut))throw e;var i=rt(["katex-error"],[new tl(t)]);return i.setAttribute("title",e.toString()),i.setAttribute("style","color:"+r.errorColor),i},ej=function(e,t){var r=new xR(t);try{var i=Aj(e,r);return N$e(i,e,r)}catch(u){return EyA(u,e,r)}},vAt=function(e,t){var r=new xR(t);try{var i=Aj(e,r);return G$e(i,e,r)}catch(u){return EyA(u,e,r)}},kAt="0.16.47",FAt,dyA;var IyA=P(()=>{ut=class ut extends Error{constructor(A,e){var t="KaTeX parse error: "+A,r,i,u=e&&e.loc;if(u&&u.start<=u.end){var a=u.lexer.input;if(r=u.start,i=u.end,r===a.length)t+=" at end of input: ";else t+=" at position "+(r+1)+": ";var n=a.slice(r,i).replace(/[^]/g,"$&̲"),o;if(r>15)o="…"+a.slice(r-15,r);else o=a.slice(0,r);var s;if(i+15<a.length)s=a.slice(i,i+15)+"…";else s=a.slice(i);t+=o+n+s}super(t);if(this.name="ParseError",this.position=void 0,this.length=void 0,this.rawMessage=void 0,Object.setPrototypeOf(this,ut.prototype),this.position=r,r!=null&&i!=null)this.length=i-r;this.rawMessage=A}};UXe=/([A-Z])/g,TXe={"&":"&",">":">","<":"<",'"':""","'":"'"},YXe=/[&><"']/g,HXe=new Set(["mathord","textord","atom"]),fV={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:(A)=>"#"+A},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(A,e)=>(e.push(A),e)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:(A)=>Math.max(0,A),cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:(A)=>Math.max(0,A),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1000,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:(A)=>Math.max(0,A),cli:"-e, --max-expand <n>",cliProcessor:(A)=>A==="Infinity"?1/0:parseInt(A)},globalGroup:{type:"boolean",cli:!1}};qB=[new tI(HV,0,!1),new tI(yR,0,!0),new tI(dD,1,!1),new tI(uI,1,!0),new tI(hb,2,!1),new tI(qg,2,!0),new tI(ID,3,!1),new tI(gs,3,!0)],_Xe=[hb,qg,hb,qg,ID,gs,ID,gs],WXe=[qg,qg,qg,qg,gs,gs,gs,gs],qXe=[dD,uI,hb,qg,ID,gs,ID,gs],zXe=[uI,uI,qg,qg,gs,gs,gs,gs],ZXe=[yR,yR,uI,uI,qg,qg,gs,gs],VXe=[HV,yR,dD,uI,dD,uI,dD,uI],Wr={DISPLAY:qB[HV],TEXT:qB[dD],SCRIPT:qB[hb],SCRIPTSCRIPT:qB[ID]},mV=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];fR=[];mV.forEach((A)=>A.blocks.forEach((e)=>fR.push(...e)));M2A={doubleleftarrow:`M262 157
|
||
l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3
|
||
0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28
|
||
14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5
|
||
c2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5
|
||
157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87
|
||
-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7
|
||
-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z
|
||
m8 0v40h399730v-40zm0 194v40h399730v-40z`,doublerightarrow:`M399738 392l
|
||
-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5
|
||
14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88
|
||
-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68
|
||
-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18
|
||
-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782
|
||
c-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3
|
||
-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,leftarrow:`M400000 241H110l3-3c68.7-52.7 113.7-120
|
||
135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8
|
||
-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247
|
||
c-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208
|
||
490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3
|
||
1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202
|
||
l-3-3h399890zM100 241v40h399900v-40z`,leftbrace:`M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117
|
||
-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7
|
||
5-6 9-10 13-.7 1-7.3 1-20 1H6z`,leftbraceunder:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13
|
||
35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688
|
||
0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7
|
||
-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,leftgroup:`M400000 80
|
||
H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0
|
||
435 0h399565z`,leftgroupunder:`M400000 262
|
||
H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219
|
||
435 219h399565z`,leftharpoon:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3
|
||
-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5
|
||
-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7
|
||
-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z`,leftharpoonplus:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5
|
||
20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3
|
||
-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7
|
||
-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z
|
||
m0 0v40h400000v-40z`,leftharpoondown:`M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333
|
||
5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5
|
||
1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667
|
||
-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z`,leftharpoondownplus:`M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12
|
||
10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7
|
||
-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0
|
||
v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,lefthook:`M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5
|
||
-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3
|
||
-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21
|
||
71.5 23h399859zM103 281v-40h399897v40z`,leftlinesegment:jn("M40 281 V428 H0 V94 H40 V241 H400000 v40z"),leftbracketunder:jn("M0 0 h120 V290 H399995 v120 H0z"),leftbracketover:jn("M0 440 h120 V150 H399995 v-120 H0z"),leftmapsto:jn("M40 281 V448H0V74H40V241H400000v40z"),leftToFrom:`M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23
|
||
-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8
|
||
c28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3
|
||
68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,longequal:jn("M0 50 h400000 v40H0z m0 194h40000v40H0z"),midbrace:`M200428 334
|
||
c-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14
|
||
-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7
|
||
311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11
|
||
12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,midbraceunder:`M199572 214
|
||
c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14
|
||
53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3
|
||
11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0
|
||
-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`,oiintSize1:`M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6
|
||
-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z
|
||
m368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8
|
||
60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z`,oiintSize2:`M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8
|
||
-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z
|
||
m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2
|
||
c0 110 84 276 504 276s502.4-166 502.4-276z`,oiiintSize1:`M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6
|
||
-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z
|
||
m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0
|
||
85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z`,oiiintSize2:`M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8
|
||
-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z
|
||
m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1
|
||
c0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z`,rightarrow:`M0 241v40h399891c-47.3 35.3-84 78-110 128
|
||
-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20
|
||
11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7
|
||
39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85
|
||
-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
|
||
-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
|
||
151.7 139 205zm0 0v40h399900v-40z`,rightbrace:`M400000 542l
|
||
-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5
|
||
s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1
|
||
c124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z`,rightbraceunder:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3
|
||
28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237
|
||
-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`,rightgroup:`M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0
|
||
3-1 3-3v-38c-76-158-257-219-435-219H0z`,rightgroupunder:`M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18
|
||
0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z`,rightharpoon:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3
|
||
-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2
|
||
-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58
|
||
69.2 92 94.5zm0 0v40h399900v-40z`,rightharpoonplus:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11
|
||
-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7
|
||
2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z
|
||
m0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z`,rightharpoondown:`M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8
|
||
8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5
|
||
-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95
|
||
-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z`,rightharpoondownplus:`M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8
|
||
15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3
|
||
8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3
|
||
-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z
|
||
m0-194v40h400000v-40zm0 0v40h400000v-40z`,righthook:`M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3
|
||
15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0
|
||
-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21
|
||
66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,rightlinesegment:jn("M399960 241 V94 h40 V428 h-40 V281 H0 v-40z"),rightbracketunder:jn("M399995 0 h-120 V290 H0 v120 H400000z"),rightbracketover:jn("M399995 440 h-120 V150 H0 v-120 H399995z"),rightToFrom:`M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23
|
||
1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32
|
||
-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142
|
||
-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,twoheadleftarrow:`M0 167c68 40
|
||
115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69
|
||
-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3
|
||
-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19
|
||
-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101
|
||
10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z`,twoheadrightarrow:`M400000 167
|
||
c-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3
|
||
41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42
|
||
18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333
|
||
-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70
|
||
101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z`,tilde1:`M200 55.538c-77 0-168 73.953-177 73.953-3 0-7
|
||
-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0
|
||
114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0
|
||
4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128
|
||
-68.267.847-113-73.952-191-73.952z`,tilde2:`M344 55.266c-142 0-300.638 81.316-311.5 86.418
|
||
-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9
|
||
31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114
|
||
c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751
|
||
181.476 676 181.476c-149 0-189-126.21-332-126.21z`,tilde3:`M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457
|
||
-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0
|
||
411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697
|
||
16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696
|
||
-338 0-409-156.573-744-156.573z`,tilde4:`M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345
|
||
-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409
|
||
177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9
|
||
14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409
|
||
-175.236-744-175.236z`,vec:`M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5
|
||
3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11
|
||
10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63
|
||
-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1
|
||
-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59
|
||
H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359
|
||
c-16-25.333-24-45-24-59z`,widehat1:`M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22
|
||
c-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z`,widehat2:`M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10
|
||
-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat3:`M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10
|
||
-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat4:`M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10
|
||
-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widecheck1:`M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,
|
||
-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z`,widecheck2:`M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
|
||
-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck3:`M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
|
||
-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck4:`M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
|
||
-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,baraboveleftarrow:`M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202
|
||
c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5
|
||
c-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130
|
||
s-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47
|
||
121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6
|
||
s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11
|
||
c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z
|
||
M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,rightarrowabovebar:`M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32
|
||
-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0
|
||
13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39
|
||
-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5
|
||
-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
|
||
-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
|
||
151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,baraboveshortleftharpoon:`M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
|
||
c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17
|
||
c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21
|
||
c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40
|
||
c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z
|
||
M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,rightharpoonaboveshortbar:`M0,241 l0,40c399126,0,399993,0,399993,0
|
||
c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
|
||
-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
|
||
c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
|
||
M0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z`,shortbaraboveleftharpoon:`M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
|
||
c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,
|
||
1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,
|
||
-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z
|
||
M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z`,shortrightharpoonabovebar:`M53,241l0,40c398570,0,399437,0,399437,0
|
||
c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
|
||
-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
|
||
c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
|
||
M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`};DV={pt:1,mm:2.8452755905511813,cm:28.45275590551181,in:72.27,bp:1.00375,pc:12,dd:1.070008643042351,cc:12.84010371650821,nd:1.0669781931464175,nc:12.80373831775701,sp:0.0000152587890625,px:1.00375},s$e={ex:!0,em:!0,mu:!0},l$e=/[\s"'>/=\x00-\x1f]/;g$e={"î":"ı̂","ï":"ı̈","í":"ı́","ì":"ı̀"};zB={"AMS-Regular":{"32":[0,0,0,0,0.25],"65":[0,0.68889,0,0,0.72222],"66":[0,0.68889,0,0,0.66667],"67":[0,0.68889,0,0,0.72222],"68":[0,0.68889,0,0,0.72222],"69":[0,0.68889,0,0,0.66667],"70":[0,0.68889,0,0,0.61111],"71":[0,0.68889,0,0,0.77778],"72":[0,0.68889,0,0,0.77778],"73":[0,0.68889,0,0,0.38889],"74":[0.16667,0.68889,0,0,0.5],"75":[0,0.68889,0,0,0.77778],"76":[0,0.68889,0,0,0.66667],"77":[0,0.68889,0,0,0.94445],"78":[0,0.68889,0,0,0.72222],"79":[0.16667,0.68889,0,0,0.77778],"80":[0,0.68889,0,0,0.61111],"81":[0.16667,0.68889,0,0,0.77778],"82":[0,0.68889,0,0,0.72222],"83":[0,0.68889,0,0,0.55556],"84":[0,0.68889,0,0,0.66667],"85":[0,0.68889,0,0,0.72222],"86":[0,0.68889,0,0,0.72222],"87":[0,0.68889,0,0,1],"88":[0,0.68889,0,0,0.72222],"89":[0,0.68889,0,0,0.72222],"90":[0,0.68889,0,0,0.66667],"107":[0,0.68889,0,0,0.55556],"160":[0,0,0,0,0.25],"165":[0,0.675,0.025,0,0.75],"174":[0.15559,0.69224,0,0,0.94666],"240":[0,0.68889,0,0,0.55556],"295":[0,0.68889,0,0,0.54028],"710":[0,0.825,0,0,2.33334],"732":[0,0.9,0,0,2.33334],"770":[0,0.825,0,0,2.33334],"771":[0,0.9,0,0,2.33334],"989":[0.08167,0.58167,0,0,0.77778],"1008":[0,0.43056,0.04028,0,0.66667],"8245":[0,0.54986,0,0,0.275],"8463":[0,0.68889,0,0,0.54028],"8487":[0,0.68889,0,0,0.72222],"8498":[0,0.68889,0,0,0.55556],"8502":[0,0.68889,0,0,0.66667],"8503":[0,0.68889,0,0,0.44445],"8504":[0,0.68889,0,0,0.66667],"8513":[0,0.68889,0,0,0.63889],"8592":[-0.03598,0.46402,0,0,0.5],"8594":[-0.03598,0.46402,0,0,0.5],"8602":[-0.13313,0.36687,0,0,1],"8603":[-0.13313,0.36687,0,0,1],"8606":[0.01354,0.52239,0,0,1],"8608":[0.01354,0.52239,0,0,1],"8610":[0.01354,0.52239,0,0,1.11111],"8611":[0.01354,0.52239,0,0,1.11111],"8619":[0,0.54986,0,0,1],"8620":[0,0.54986,0,0,1],"8621":[-0.13313,0.37788,0,0,1.38889],"8622":[-0.13313,0.36687,0,0,1],"8624":[0,0.69224,0,0,0.5],"8625":[0,0.69224,0,0,0.5],"8630":[0,0.43056,0,0,1],"8631":[0,0.43056,0,0,1],"8634":[0.08198,0.58198,0,0,0.77778],"8635":[0.08198,0.58198,0,0,0.77778],"8638":[0.19444,0.69224,0,0,0.41667],"8639":[0.19444,0.69224,0,0,0.41667],"8642":[0.19444,0.69224,0,0,0.41667],"8643":[0.19444,0.69224,0,0,0.41667],"8644":[0.1808,0.675,0,0,1],"8646":[0.1808,0.675,0,0,1],"8647":[0.1808,0.675,0,0,1],"8648":[0.19444,0.69224,0,0,0.83334],"8649":[0.1808,0.675,0,0,1],"8650":[0.19444,0.69224,0,0,0.83334],"8651":[0.01354,0.52239,0,0,1],"8652":[0.01354,0.52239,0,0,1],"8653":[-0.13313,0.36687,0,0,1],"8654":[-0.13313,0.36687,0,0,1],"8655":[-0.13313,0.36687,0,0,1],"8666":[0.13667,0.63667,0,0,1],"8667":[0.13667,0.63667,0,0,1],"8669":[-0.13313,0.37788,0,0,1],"8672":[-0.064,0.437,0,0,1.334],"8674":[-0.064,0.437,0,0,1.334],"8705":[0,0.825,0,0,0.5],"8708":[0,0.68889,0,0,0.55556],"8709":[0.08167,0.58167,0,0,0.77778],"8717":[0,0.43056,0,0,0.42917],"8722":[-0.03598,0.46402,0,0,0.5],"8724":[0.08198,0.69224,0,0,0.77778],"8726":[0.08167,0.58167,0,0,0.77778],"8733":[0,0.69224,0,0,0.77778],"8736":[0,0.69224,0,0,0.72222],"8737":[0,0.69224,0,0,0.72222],"8738":[0.03517,0.52239,0,0,0.72222],"8739":[0.08167,0.58167,0,0,0.22222],"8740":[0.25142,0.74111,0,0,0.27778],"8741":[0.08167,0.58167,0,0,0.38889],"8742":[0.25142,0.74111,0,0,0.5],"8756":[0,0.69224,0,0,0.66667],"8757":[0,0.69224,0,0,0.66667],"8764":[-0.13313,0.36687,0,0,0.77778],"8765":[-0.13313,0.37788,0,0,0.77778],"8769":[-0.13313,0.36687,0,0,0.77778],"8770":[-0.03625,0.46375,0,0,0.77778],"8774":[0.30274,0.79383,0,0,0.77778],"8776":[-0.01688,0.48312,0,0,0.77778],"8778":[0.08167,0.58167,0,0,0.77778],"8782":[0.06062,0.54986,0,0,0.77778],"8783":[0.06062,0.54986,0,0,0.77778],"8785":[0.08198,0.58198,0,0,0.77778],"8786":[0.08198,0.58198,0,0,0.77778],"8787":[0.08198,0.58198,0,0,0.77778],"8790":[0,0.69224,0,0,0.77778],"8791":[0.22958,0.72958,0,0,0.77778],"8796":[0.08198,0.91667,0,0,0.77778],"8806":[0.25583,0.75583,0,0,0.77778],"8807":[0.25583,0.75583,0,0,0.77778],"8808":[0.25142,0.75726,0,0,0.77778],"8809":[0.25142,0.75726,0,0,0.77778],"8812":[0.25583,0.75583,0,0,0.5],"8814":[0.20576,0.70576,0,0,0.77778],"8815":[0.20576,0.70576,0,0,0.77778],"8816":[0.30274,0.79383,0,0,0.77778],"8817":[0.30274,0.79383,0,0,0.77778],"8818":[0.22958,0.72958,0,0,0.77778],"8819":[0.22958,0.72958,0,0,0.77778],"8822":[0.1808,0.675,0,0,0.77778],"8823":[0.1808,0.675,0,0,0.77778],"8828":[0.13667,0.63667,0,0,0.77778],"8829":[0.13667,0.63667,0,0,0.77778],"8830":[0.22958,0.72958,0,0,0.77778],"8831":[0.22958,0.72958,0,0,0.77778],"8832":[0.20576,0.70576,0,0,0.77778],"8833":[0.20576,0.70576,0,0,0.77778],"8840":[0.30274,0.79383,0,0,0.77778],"8841":[0.30274,0.79383,0,0,0.77778],"8842":[0.13597,0.63597,0,0,0.77778],"8843":[0.13597,0.63597,0,0,0.77778],"8847":[0.03517,0.54986,0,0,0.77778],"8848":[0.03517,0.54986,0,0,0.77778],"8858":[0.08198,0.58198,0,0,0.77778],"8859":[0.08198,0.58198,0,0,0.77778],"8861":[0.08198,0.58198,0,0,0.77778],"8862":[0,0.675,0,0,0.77778],"8863":[0,0.675,0,0,0.77778],"8864":[0,0.675,0,0,0.77778],"8865":[0,0.675,0,0,0.77778],"8872":[0,0.69224,0,0,0.61111],"8873":[0,0.69224,0,0,0.72222],"8874":[0,0.69224,0,0,0.88889],"8876":[0,0.68889,0,0,0.61111],"8877":[0,0.68889,0,0,0.61111],"8878":[0,0.68889,0,0,0.72222],"8879":[0,0.68889,0,0,0.72222],"8882":[0.03517,0.54986,0,0,0.77778],"8883":[0.03517,0.54986,0,0,0.77778],"8884":[0.13667,0.63667,0,0,0.77778],"8885":[0.13667,0.63667,0,0,0.77778],"8888":[0,0.54986,0,0,1.11111],"8890":[0.19444,0.43056,0,0,0.55556],"8891":[0.19444,0.69224,0,0,0.61111],"8892":[0.19444,0.69224,0,0,0.61111],"8901":[0,0.54986,0,0,0.27778],"8903":[0.08167,0.58167,0,0,0.77778],"8905":[0.08167,0.58167,0,0,0.77778],"8906":[0.08167,0.58167,0,0,0.77778],"8907":[0,0.69224,0,0,0.77778],"8908":[0,0.69224,0,0,0.77778],"8909":[-0.03598,0.46402,0,0,0.77778],"8910":[0,0.54986,0,0,0.76042],"8911":[0,0.54986,0,0,0.76042],"8912":[0.03517,0.54986,0,0,0.77778],"8913":[0.03517,0.54986,0,0,0.77778],"8914":[0,0.54986,0,0,0.66667],"8915":[0,0.54986,0,0,0.66667],"8916":[0,0.69224,0,0,0.66667],"8918":[0.0391,0.5391,0,0,0.77778],"8919":[0.0391,0.5391,0,0,0.77778],"8920":[0.03517,0.54986,0,0,1.33334],"8921":[0.03517,0.54986,0,0,1.33334],"8922":[0.38569,0.88569,0,0,0.77778],"8923":[0.38569,0.88569,0,0,0.77778],"8926":[0.13667,0.63667,0,0,0.77778],"8927":[0.13667,0.63667,0,0,0.77778],"8928":[0.30274,0.79383,0,0,0.77778],"8929":[0.30274,0.79383,0,0,0.77778],"8934":[0.23222,0.74111,0,0,0.77778],"8935":[0.23222,0.74111,0,0,0.77778],"8936":[0.23222,0.74111,0,0,0.77778],"8937":[0.23222,0.74111,0,0,0.77778],"8938":[0.20576,0.70576,0,0,0.77778],"8939":[0.20576,0.70576,0,0,0.77778],"8940":[0.30274,0.79383,0,0,0.77778],"8941":[0.30274,0.79383,0,0,0.77778],"8994":[0.19444,0.69224,0,0,0.77778],"8995":[0.19444,0.69224,0,0,0.77778],"9416":[0.15559,0.69224,0,0,0.90222],"9484":[0,0.69224,0,0,0.5],"9488":[0,0.69224,0,0,0.5],"9492":[0,0.37788,0,0,0.5],"9496":[0,0.37788,0,0,0.5],"9585":[0.19444,0.68889,0,0,0.88889],"9586":[0.19444,0.74111,0,0,0.88889],"9632":[0,0.675,0,0,0.77778],"9633":[0,0.675,0,0,0.77778],"9650":[0,0.54986,0,0,0.72222],"9651":[0,0.54986,0,0,0.72222],"9654":[0.03517,0.54986,0,0,0.77778],"9660":[0,0.54986,0,0,0.72222],"9661":[0,0.54986,0,0,0.72222],"9664":[0.03517,0.54986,0,0,0.77778],"9674":[0.11111,0.69224,0,0,0.66667],"9733":[0.19444,0.69224,0,0,0.94445],"10003":[0,0.69224,0,0,0.83334],"10016":[0,0.69224,0,0,0.83334],"10731":[0.11111,0.69224,0,0,0.66667],"10846":[0.19444,0.75583,0,0,0.61111],"10877":[0.13667,0.63667,0,0,0.77778],"10878":[0.13667,0.63667,0,0,0.77778],"10885":[0.25583,0.75583,0,0,0.77778],"10886":[0.25583,0.75583,0,0,0.77778],"10887":[0.13597,0.63597,0,0,0.77778],"10888":[0.13597,0.63597,0,0,0.77778],"10889":[0.26167,0.75726,0,0,0.77778],"10890":[0.26167,0.75726,0,0,0.77778],"10891":[0.48256,0.98256,0,0,0.77778],"10892":[0.48256,0.98256,0,0,0.77778],"10901":[0.13667,0.63667,0,0,0.77778],"10902":[0.13667,0.63667,0,0,0.77778],"10933":[0.25142,0.75726,0,0,0.77778],"10934":[0.25142,0.75726,0,0,0.77778],"10935":[0.26167,0.75726,0,0,0.77778],"10936":[0.26167,0.75726,0,0,0.77778],"10937":[0.26167,0.75726,0,0,0.77778],"10938":[0.26167,0.75726,0,0,0.77778],"10949":[0.25583,0.75583,0,0,0.77778],"10950":[0.25583,0.75583,0,0,0.77778],"10955":[0.28481,0.79383,0,0,0.77778],"10956":[0.28481,0.79383,0,0,0.77778],"57350":[0.08167,0.58167,0,0,0.22222],"57351":[0.08167,0.58167,0,0,0.38889],"57352":[0.08167,0.58167,0,0,0.77778],"57353":[0,0.43056,0.04028,0,0.66667],"57356":[0.25142,0.75726,0,0,0.77778],"57357":[0.25142,0.75726,0,0,0.77778],"57358":[0.41951,0.91951,0,0,0.77778],"57359":[0.30274,0.79383,0,0,0.77778],"57360":[0.30274,0.79383,0,0,0.77778],"57361":[0.41951,0.91951,0,0,0.77778],"57366":[0.25142,0.75726,0,0,0.77778],"57367":[0.25142,0.75726,0,0,0.77778],"57368":[0.25142,0.75726,0,0,0.77778],"57369":[0.25142,0.75726,0,0,0.77778],"57370":[0.13597,0.63597,0,0,0.77778],"57371":[0.13597,0.63597,0,0,0.77778]},"Caligraphic-Regular":{"32":[0,0,0,0,0.25],"65":[0,0.68333,0,0.19445,0.79847],"66":[0,0.68333,0.03041,0.13889,0.65681],"67":[0,0.68333,0.05834,0.13889,0.52653],"68":[0,0.68333,0.02778,0.08334,0.77139],"69":[0,0.68333,0.08944,0.11111,0.52778],"70":[0,0.68333,0.09931,0.11111,0.71875],"71":[0.09722,0.68333,0.0593,0.11111,0.59487],"72":[0,0.68333,0.00965,0.11111,0.84452],"73":[0,0.68333,0.07382,0,0.54452],"74":[0.09722,0.68333,0.18472,0.16667,0.67778],"75":[0,0.68333,0.01445,0.05556,0.76195],"76":[0,0.68333,0,0.13889,0.68972],"77":[0,0.68333,0,0.13889,1.2009],"78":[0,0.68333,0.14736,0.08334,0.82049],"79":[0,0.68333,0.02778,0.11111,0.79611],"80":[0,0.68333,0.08222,0.08334,0.69556],"81":[0.09722,0.68333,0,0.11111,0.81667],"82":[0,0.68333,0,0.08334,0.8475],"83":[0,0.68333,0.075,0.13889,0.60556],"84":[0,0.68333,0.25417,0,0.54464],"85":[0,0.68333,0.09931,0.08334,0.62583],"86":[0,0.68333,0.08222,0,0.61278],"87":[0,0.68333,0.08222,0.08334,0.98778],"88":[0,0.68333,0.14643,0.13889,0.7133],"89":[0.09722,0.68333,0.08222,0.08334,0.66834],"90":[0,0.68333,0.07944,0.13889,0.72473],"160":[0,0,0,0,0.25]},"Fraktur-Regular":{"32":[0,0,0,0,0.25],"33":[0,0.69141,0,0,0.29574],"34":[0,0.69141,0,0,0.21471],"38":[0,0.69141,0,0,0.73786],"39":[0,0.69141,0,0,0.21201],"40":[0.24982,0.74947,0,0,0.38865],"41":[0.24982,0.74947,0,0,0.38865],"42":[0,0.62119,0,0,0.27764],"43":[0.08319,0.58283,0,0,0.75623],"44":[0,0.10803,0,0,0.27764],"45":[0.08319,0.58283,0,0,0.75623],"46":[0,0.10803,0,0,0.27764],"47":[0.24982,0.74947,0,0,0.50181],"48":[0,0.47534,0,0,0.50181],"49":[0,0.47534,0,0,0.50181],"50":[0,0.47534,0,0,0.50181],"51":[0.18906,0.47534,0,0,0.50181],"52":[0.18906,0.47534,0,0,0.50181],"53":[0.18906,0.47534,0,0,0.50181],"54":[0,0.69141,0,0,0.50181],"55":[0.18906,0.47534,0,0,0.50181],"56":[0,0.69141,0,0,0.50181],"57":[0.18906,0.47534,0,0,0.50181],"58":[0,0.47534,0,0,0.21606],"59":[0.12604,0.47534,0,0,0.21606],"61":[-0.13099,0.36866,0,0,0.75623],"63":[0,0.69141,0,0,0.36245],"65":[0,0.69141,0,0,0.7176],"66":[0,0.69141,0,0,0.88397],"67":[0,0.69141,0,0,0.61254],"68":[0,0.69141,0,0,0.83158],"69":[0,0.69141,0,0,0.66278],"70":[0.12604,0.69141,0,0,0.61119],"71":[0,0.69141,0,0,0.78539],"72":[0.06302,0.69141,0,0,0.7203],"73":[0,0.69141,0,0,0.55448],"74":[0.12604,0.69141,0,0,0.55231],"75":[0,0.69141,0,0,0.66845],"76":[0,0.69141,0,0,0.66602],"77":[0,0.69141,0,0,1.04953],"78":[0,0.69141,0,0,0.83212],"79":[0,0.69141,0,0,0.82699],"80":[0.18906,0.69141,0,0,0.82753],"81":[0.03781,0.69141,0,0,0.82699],"82":[0,0.69141,0,0,0.82807],"83":[0,0.69141,0,0,0.82861],"84":[0,0.69141,0,0,0.66899],"85":[0,0.69141,0,0,0.64576],"86":[0,0.69141,0,0,0.83131],"87":[0,0.69141,0,0,1.04602],"88":[0,0.69141,0,0,0.71922],"89":[0.18906,0.69141,0,0,0.83293],"90":[0.12604,0.69141,0,0,0.60201],"91":[0.24982,0.74947,0,0,0.27764],"93":[0.24982,0.74947,0,0,0.27764],"94":[0,0.69141,0,0,0.49965],"97":[0,0.47534,0,0,0.50046],"98":[0,0.69141,0,0,0.51315],"99":[0,0.47534,0,0,0.38946],"100":[0,0.62119,0,0,0.49857],"101":[0,0.47534,0,0,0.40053],"102":[0.18906,0.69141,0,0,0.32626],"103":[0.18906,0.47534,0,0,0.5037],"104":[0.18906,0.69141,0,0,0.52126],"105":[0,0.69141,0,0,0.27899],"106":[0,0.69141,0,0,0.28088],"107":[0,0.69141,0,0,0.38946],"108":[0,0.69141,0,0,0.27953],"109":[0,0.47534,0,0,0.76676],"110":[0,0.47534,0,0,0.52666],"111":[0,0.47534,0,0,0.48885],"112":[0.18906,0.52396,0,0,0.50046],"113":[0.18906,0.47534,0,0,0.48912],"114":[0,0.47534,0,0,0.38919],"115":[0,0.47534,0,0,0.44266],"116":[0,0.62119,0,0,0.33301],"117":[0,0.47534,0,0,0.5172],"118":[0,0.52396,0,0,0.5118],"119":[0,0.52396,0,0,0.77351],"120":[0.18906,0.47534,0,0,0.38865],"121":[0.18906,0.47534,0,0,0.49884],"122":[0.18906,0.47534,0,0,0.39054],"160":[0,0,0,0,0.25],"8216":[0,0.69141,0,0,0.21471],"8217":[0,0.69141,0,0,0.21471],"58112":[0,0.62119,0,0,0.49749],"58113":[0,0.62119,0,0,0.4983],"58114":[0.18906,0.69141,0,0,0.33328],"58115":[0.18906,0.69141,0,0,0.32923],"58116":[0.18906,0.47534,0,0,0.50343],"58117":[0,0.69141,0,0,0.33301],"58118":[0,0.62119,0,0,0.33409],"58119":[0,0.47534,0,0,0.50073]},"Main-Bold":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0,0,0.35],"34":[0,0.69444,0,0,0.60278],"35":[0.19444,0.69444,0,0,0.95833],"36":[0.05556,0.75,0,0,0.575],"37":[0.05556,0.75,0,0,0.95833],"38":[0,0.69444,0,0,0.89444],"39":[0,0.69444,0,0,0.31944],"40":[0.25,0.75,0,0,0.44722],"41":[0.25,0.75,0,0,0.44722],"42":[0,0.75,0,0,0.575],"43":[0.13333,0.63333,0,0,0.89444],"44":[0.19444,0.15556,0,0,0.31944],"45":[0,0.44444,0,0,0.38333],"46":[0,0.15556,0,0,0.31944],"47":[0.25,0.75,0,0,0.575],"48":[0,0.64444,0,0,0.575],"49":[0,0.64444,0,0,0.575],"50":[0,0.64444,0,0,0.575],"51":[0,0.64444,0,0,0.575],"52":[0,0.64444,0,0,0.575],"53":[0,0.64444,0,0,0.575],"54":[0,0.64444,0,0,0.575],"55":[0,0.64444,0,0,0.575],"56":[0,0.64444,0,0,0.575],"57":[0,0.64444,0,0,0.575],"58":[0,0.44444,0,0,0.31944],"59":[0.19444,0.44444,0,0,0.31944],"60":[0.08556,0.58556,0,0,0.89444],"61":[-0.10889,0.39111,0,0,0.89444],"62":[0.08556,0.58556,0,0,0.89444],"63":[0,0.69444,0,0,0.54305],"64":[0,0.69444,0,0,0.89444],"65":[0,0.68611,0,0,0.86944],"66":[0,0.68611,0,0,0.81805],"67":[0,0.68611,0,0,0.83055],"68":[0,0.68611,0,0,0.88194],"69":[0,0.68611,0,0,0.75555],"70":[0,0.68611,0,0,0.72361],"71":[0,0.68611,0,0,0.90416],"72":[0,0.68611,0,0,0.9],"73":[0,0.68611,0,0,0.43611],"74":[0,0.68611,0,0,0.59444],"75":[0,0.68611,0,0,0.90138],"76":[0,0.68611,0,0,0.69166],"77":[0,0.68611,0,0,1.09166],"78":[0,0.68611,0,0,0.9],"79":[0,0.68611,0,0,0.86388],"80":[0,0.68611,0,0,0.78611],"81":[0.19444,0.68611,0,0,0.86388],"82":[0,0.68611,0,0,0.8625],"83":[0,0.68611,0,0,0.63889],"84":[0,0.68611,0,0,0.8],"85":[0,0.68611,0,0,0.88472],"86":[0,0.68611,0.01597,0,0.86944],"87":[0,0.68611,0.01597,0,1.18888],"88":[0,0.68611,0,0,0.86944],"89":[0,0.68611,0.02875,0,0.86944],"90":[0,0.68611,0,0,0.70277],"91":[0.25,0.75,0,0,0.31944],"92":[0.25,0.75,0,0,0.575],"93":[0.25,0.75,0,0,0.31944],"94":[0,0.69444,0,0,0.575],"95":[0.31,0.13444,0.03194,0,0.575],"97":[0,0.44444,0,0,0.55902],"98":[0,0.69444,0,0,0.63889],"99":[0,0.44444,0,0,0.51111],"100":[0,0.69444,0,0,0.63889],"101":[0,0.44444,0,0,0.52708],"102":[0,0.69444,0.10903,0,0.35139],"103":[0.19444,0.44444,0.01597,0,0.575],"104":[0,0.69444,0,0,0.63889],"105":[0,0.69444,0,0,0.31944],"106":[0.19444,0.69444,0,0,0.35139],"107":[0,0.69444,0,0,0.60694],"108":[0,0.69444,0,0,0.31944],"109":[0,0.44444,0,0,0.95833],"110":[0,0.44444,0,0,0.63889],"111":[0,0.44444,0,0,0.575],"112":[0.19444,0.44444,0,0,0.63889],"113":[0.19444,0.44444,0,0,0.60694],"114":[0,0.44444,0,0,0.47361],"115":[0,0.44444,0,0,0.45361],"116":[0,0.63492,0,0,0.44722],"117":[0,0.44444,0,0,0.63889],"118":[0,0.44444,0.01597,0,0.60694],"119":[0,0.44444,0.01597,0,0.83055],"120":[0,0.44444,0,0,0.60694],"121":[0.19444,0.44444,0.01597,0,0.60694],"122":[0,0.44444,0,0,0.51111],"123":[0.25,0.75,0,0,0.575],"124":[0.25,0.75,0,0,0.31944],"125":[0.25,0.75,0,0,0.575],"126":[0.35,0.34444,0,0,0.575],"160":[0,0,0,0,0.25],"163":[0,0.69444,0,0,0.86853],"168":[0,0.69444,0,0,0.575],"172":[0,0.44444,0,0,0.76666],"176":[0,0.69444,0,0,0.86944],"177":[0.13333,0.63333,0,0,0.89444],"184":[0.17014,0,0,0,0.51111],"198":[0,0.68611,0,0,1.04166],"215":[0.13333,0.63333,0,0,0.89444],"216":[0.04861,0.73472,0,0,0.89444],"223":[0,0.69444,0,0,0.59722],"230":[0,0.44444,0,0,0.83055],"247":[0.13333,0.63333,0,0,0.89444],"248":[0.09722,0.54167,0,0,0.575],"305":[0,0.44444,0,0,0.31944],"338":[0,0.68611,0,0,1.16944],"339":[0,0.44444,0,0,0.89444],"567":[0.19444,0.44444,0,0,0.35139],"710":[0,0.69444,0,0,0.575],"711":[0,0.63194,0,0,0.575],"713":[0,0.59611,0,0,0.575],"714":[0,0.69444,0,0,0.575],"715":[0,0.69444,0,0,0.575],"728":[0,0.69444,0,0,0.575],"729":[0,0.69444,0,0,0.31944],"730":[0,0.69444,0,0,0.86944],"732":[0,0.69444,0,0,0.575],"733":[0,0.69444,0,0,0.575],"915":[0,0.68611,0,0,0.69166],"916":[0,0.68611,0,0,0.95833],"920":[0,0.68611,0,0,0.89444],"923":[0,0.68611,0,0,0.80555],"926":[0,0.68611,0,0,0.76666],"928":[0,0.68611,0,0,0.9],"931":[0,0.68611,0,0,0.83055],"933":[0,0.68611,0,0,0.89444],"934":[0,0.68611,0,0,0.83055],"936":[0,0.68611,0,0,0.89444],"937":[0,0.68611,0,0,0.83055],"8211":[0,0.44444,0.03194,0,0.575],"8212":[0,0.44444,0.03194,0,1.14999],"8216":[0,0.69444,0,0,0.31944],"8217":[0,0.69444,0,0,0.31944],"8220":[0,0.69444,0,0,0.60278],"8221":[0,0.69444,0,0,0.60278],"8224":[0.19444,0.69444,0,0,0.51111],"8225":[0.19444,0.69444,0,0,0.51111],"8242":[0,0.55556,0,0,0.34444],"8407":[0,0.72444,0.15486,0,0.575],"8463":[0,0.69444,0,0,0.66759],"8465":[0,0.69444,0,0,0.83055],"8467":[0,0.69444,0,0,0.47361],"8472":[0.19444,0.44444,0,0,0.74027],"8476":[0,0.69444,0,0,0.83055],"8501":[0,0.69444,0,0,0.70277],"8592":[-0.10889,0.39111,0,0,1.14999],"8593":[0.19444,0.69444,0,0,0.575],"8594":[-0.10889,0.39111,0,0,1.14999],"8595":[0.19444,0.69444,0,0,0.575],"8596":[-0.10889,0.39111,0,0,1.14999],"8597":[0.25,0.75,0,0,0.575],"8598":[0.19444,0.69444,0,0,1.14999],"8599":[0.19444,0.69444,0,0,1.14999],"8600":[0.19444,0.69444,0,0,1.14999],"8601":[0.19444,0.69444,0,0,1.14999],"8636":[-0.10889,0.39111,0,0,1.14999],"8637":[-0.10889,0.39111,0,0,1.14999],"8640":[-0.10889,0.39111,0,0,1.14999],"8641":[-0.10889,0.39111,0,0,1.14999],"8656":[-0.10889,0.39111,0,0,1.14999],"8657":[0.19444,0.69444,0,0,0.70277],"8658":[-0.10889,0.39111,0,0,1.14999],"8659":[0.19444,0.69444,0,0,0.70277],"8660":[-0.10889,0.39111,0,0,1.14999],"8661":[0.25,0.75,0,0,0.70277],"8704":[0,0.69444,0,0,0.63889],"8706":[0,0.69444,0.06389,0,0.62847],"8707":[0,0.69444,0,0,0.63889],"8709":[0.05556,0.75,0,0,0.575],"8711":[0,0.68611,0,0,0.95833],"8712":[0.08556,0.58556,0,0,0.76666],"8715":[0.08556,0.58556,0,0,0.76666],"8722":[0.13333,0.63333,0,0,0.89444],"8723":[0.13333,0.63333,0,0,0.89444],"8725":[0.25,0.75,0,0,0.575],"8726":[0.25,0.75,0,0,0.575],"8727":[-0.02778,0.47222,0,0,0.575],"8728":[-0.02639,0.47361,0,0,0.575],"8729":[-0.02639,0.47361,0,0,0.575],"8730":[0.18,0.82,0,0,0.95833],"8733":[0,0.44444,0,0,0.89444],"8734":[0,0.44444,0,0,1.14999],"8736":[0,0.69224,0,0,0.72222],"8739":[0.25,0.75,0,0,0.31944],"8741":[0.25,0.75,0,0,0.575],"8743":[0,0.55556,0,0,0.76666],"8744":[0,0.55556,0,0,0.76666],"8745":[0,0.55556,0,0,0.76666],"8746":[0,0.55556,0,0,0.76666],"8747":[0.19444,0.69444,0.12778,0,0.56875],"8764":[-0.10889,0.39111,0,0,0.89444],"8768":[0.19444,0.69444,0,0,0.31944],"8771":[0.00222,0.50222,0,0,0.89444],"8773":[0.027,0.638,0,0,0.894],"8776":[0.02444,0.52444,0,0,0.89444],"8781":[0.00222,0.50222,0,0,0.89444],"8801":[0.00222,0.50222,0,0,0.89444],"8804":[0.19667,0.69667,0,0,0.89444],"8805":[0.19667,0.69667,0,0,0.89444],"8810":[0.08556,0.58556,0,0,1.14999],"8811":[0.08556,0.58556,0,0,1.14999],"8826":[0.08556,0.58556,0,0,0.89444],"8827":[0.08556,0.58556,0,0,0.89444],"8834":[0.08556,0.58556,0,0,0.89444],"8835":[0.08556,0.58556,0,0,0.89444],"8838":[0.19667,0.69667,0,0,0.89444],"8839":[0.19667,0.69667,0,0,0.89444],"8846":[0,0.55556,0,0,0.76666],"8849":[0.19667,0.69667,0,0,0.89444],"8850":[0.19667,0.69667,0,0,0.89444],"8851":[0,0.55556,0,0,0.76666],"8852":[0,0.55556,0,0,0.76666],"8853":[0.13333,0.63333,0,0,0.89444],"8854":[0.13333,0.63333,0,0,0.89444],"8855":[0.13333,0.63333,0,0,0.89444],"8856":[0.13333,0.63333,0,0,0.89444],"8857":[0.13333,0.63333,0,0,0.89444],"8866":[0,0.69444,0,0,0.70277],"8867":[0,0.69444,0,0,0.70277],"8868":[0,0.69444,0,0,0.89444],"8869":[0,0.69444,0,0,0.89444],"8900":[-0.02639,0.47361,0,0,0.575],"8901":[-0.02639,0.47361,0,0,0.31944],"8902":[-0.02778,0.47222,0,0,0.575],"8968":[0.25,0.75,0,0,0.51111],"8969":[0.25,0.75,0,0,0.51111],"8970":[0.25,0.75,0,0,0.51111],"8971":[0.25,0.75,0,0,0.51111],"8994":[-0.13889,0.36111,0,0,1.14999],"8995":[-0.13889,0.36111,0,0,1.14999],"9651":[0.19444,0.69444,0,0,1.02222],"9657":[-0.02778,0.47222,0,0,0.575],"9661":[0.19444,0.69444,0,0,1.02222],"9667":[-0.02778,0.47222,0,0,0.575],"9711":[0.19444,0.69444,0,0,1.14999],"9824":[0.12963,0.69444,0,0,0.89444],"9825":[0.12963,0.69444,0,0,0.89444],"9826":[0.12963,0.69444,0,0,0.89444],"9827":[0.12963,0.69444,0,0,0.89444],"9837":[0,0.75,0,0,0.44722],"9838":[0.19444,0.69444,0,0,0.44722],"9839":[0.19444,0.69444,0,0,0.44722],"10216":[0.25,0.75,0,0,0.44722],"10217":[0.25,0.75,0,0,0.44722],"10815":[0,0.68611,0,0,0.9],"10927":[0.19667,0.69667,0,0,0.89444],"10928":[0.19667,0.69667,0,0,0.89444],"57376":[0.19444,0.69444,0,0,0]},"Main-BoldItalic":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0.11417,0,0.38611],"34":[0,0.69444,0.07939,0,0.62055],"35":[0.19444,0.69444,0.06833,0,0.94444],"37":[0.05556,0.75,0.12861,0,0.94444],"38":[0,0.69444,0.08528,0,0.88555],"39":[0,0.69444,0.12945,0,0.35555],"40":[0.25,0.75,0.15806,0,0.47333],"41":[0.25,0.75,0.03306,0,0.47333],"42":[0,0.75,0.14333,0,0.59111],"43":[0.10333,0.60333,0.03306,0,0.88555],"44":[0.19444,0.14722,0,0,0.35555],"45":[0,0.44444,0.02611,0,0.41444],"46":[0,0.14722,0,0,0.35555],"47":[0.25,0.75,0.15806,0,0.59111],"48":[0,0.64444,0.13167,0,0.59111],"49":[0,0.64444,0.13167,0,0.59111],"50":[0,0.64444,0.13167,0,0.59111],"51":[0,0.64444,0.13167,0,0.59111],"52":[0.19444,0.64444,0.13167,0,0.59111],"53":[0,0.64444,0.13167,0,0.59111],"54":[0,0.64444,0.13167,0,0.59111],"55":[0.19444,0.64444,0.13167,0,0.59111],"56":[0,0.64444,0.13167,0,0.59111],"57":[0,0.64444,0.13167,0,0.59111],"58":[0,0.44444,0.06695,0,0.35555],"59":[0.19444,0.44444,0.06695,0,0.35555],"61":[-0.10889,0.39111,0.06833,0,0.88555],"63":[0,0.69444,0.11472,0,0.59111],"64":[0,0.69444,0.09208,0,0.88555],"65":[0,0.68611,0,0,0.86555],"66":[0,0.68611,0.0992,0,0.81666],"67":[0,0.68611,0.14208,0,0.82666],"68":[0,0.68611,0.09062,0,0.87555],"69":[0,0.68611,0.11431,0,0.75666],"70":[0,0.68611,0.12903,0,0.72722],"71":[0,0.68611,0.07347,0,0.89527],"72":[0,0.68611,0.17208,0,0.8961],"73":[0,0.68611,0.15681,0,0.47166],"74":[0,0.68611,0.145,0,0.61055],"75":[0,0.68611,0.14208,0,0.89499],"76":[0,0.68611,0,0,0.69777],"77":[0,0.68611,0.17208,0,1.07277],"78":[0,0.68611,0.17208,0,0.8961],"79":[0,0.68611,0.09062,0,0.85499],"80":[0,0.68611,0.0992,0,0.78721],"81":[0.19444,0.68611,0.09062,0,0.85499],"82":[0,0.68611,0.02559,0,0.85944],"83":[0,0.68611,0.11264,0,0.64999],"84":[0,0.68611,0.12903,0,0.7961],"85":[0,0.68611,0.17208,0,0.88083],"86":[0,0.68611,0.18625,0,0.86555],"87":[0,0.68611,0.18625,0,1.15999],"88":[0,0.68611,0.15681,0,0.86555],"89":[0,0.68611,0.19803,0,0.86555],"90":[0,0.68611,0.14208,0,0.70888],"91":[0.25,0.75,0.1875,0,0.35611],"93":[0.25,0.75,0.09972,0,0.35611],"94":[0,0.69444,0.06709,0,0.59111],"95":[0.31,0.13444,0.09811,0,0.59111],"97":[0,0.44444,0.09426,0,0.59111],"98":[0,0.69444,0.07861,0,0.53222],"99":[0,0.44444,0.05222,0,0.53222],"100":[0,0.69444,0.10861,0,0.59111],"101":[0,0.44444,0.085,0,0.53222],"102":[0.19444,0.69444,0.21778,0,0.4],"103":[0.19444,0.44444,0.105,0,0.53222],"104":[0,0.69444,0.09426,0,0.59111],"105":[0,0.69326,0.11387,0,0.35555],"106":[0.19444,0.69326,0.1672,0,0.35555],"107":[0,0.69444,0.11111,0,0.53222],"108":[0,0.69444,0.10861,0,0.29666],"109":[0,0.44444,0.09426,0,0.94444],"110":[0,0.44444,0.09426,0,0.64999],"111":[0,0.44444,0.07861,0,0.59111],"112":[0.19444,0.44444,0.07861,0,0.59111],"113":[0.19444,0.44444,0.105,0,0.53222],"114":[0,0.44444,0.11111,0,0.50167],"115":[0,0.44444,0.08167,0,0.48694],"116":[0,0.63492,0.09639,0,0.385],"117":[0,0.44444,0.09426,0,0.62055],"118":[0,0.44444,0.11111,0,0.53222],"119":[0,0.44444,0.11111,0,0.76777],"120":[0,0.44444,0.12583,0,0.56055],"121":[0.19444,0.44444,0.105,0,0.56166],"122":[0,0.44444,0.13889,0,0.49055],"126":[0.35,0.34444,0.11472,0,0.59111],"160":[0,0,0,0,0.25],"168":[0,0.69444,0.11473,0,0.59111],"176":[0,0.69444,0,0,0.94888],"184":[0.17014,0,0,0,0.53222],"198":[0,0.68611,0.11431,0,1.02277],"216":[0.04861,0.73472,0.09062,0,0.88555],"223":[0.19444,0.69444,0.09736,0,0.665],"230":[0,0.44444,0.085,0,0.82666],"248":[0.09722,0.54167,0.09458,0,0.59111],"305":[0,0.44444,0.09426,0,0.35555],"338":[0,0.68611,0.11431,0,1.14054],"339":[0,0.44444,0.085,0,0.82666],"567":[0.19444,0.44444,0.04611,0,0.385],"710":[0,0.69444,0.06709,0,0.59111],"711":[0,0.63194,0.08271,0,0.59111],"713":[0,0.59444,0.10444,0,0.59111],"714":[0,0.69444,0.08528,0,0.59111],"715":[0,0.69444,0,0,0.59111],"728":[0,0.69444,0.10333,0,0.59111],"729":[0,0.69444,0.12945,0,0.35555],"730":[0,0.69444,0,0,0.94888],"732":[0,0.69444,0.11472,0,0.59111],"733":[0,0.69444,0.11472,0,0.59111],"915":[0,0.68611,0.12903,0,0.69777],"916":[0,0.68611,0,0,0.94444],"920":[0,0.68611,0.09062,0,0.88555],"923":[0,0.68611,0,0,0.80666],"926":[0,0.68611,0.15092,0,0.76777],"928":[0,0.68611,0.17208,0,0.8961],"931":[0,0.68611,0.11431,0,0.82666],"933":[0,0.68611,0.10778,0,0.88555],"934":[0,0.68611,0.05632,0,0.82666],"936":[0,0.68611,0.10778,0,0.88555],"937":[0,0.68611,0.0992,0,0.82666],"8211":[0,0.44444,0.09811,0,0.59111],"8212":[0,0.44444,0.09811,0,1.18221],"8216":[0,0.69444,0.12945,0,0.35555],"8217":[0,0.69444,0.12945,0,0.35555],"8220":[0,0.69444,0.16772,0,0.62055],"8221":[0,0.69444,0.07939,0,0.62055]},"Main-Italic":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0.12417,0,0.30667],"34":[0,0.69444,0.06961,0,0.51444],"35":[0.19444,0.69444,0.06616,0,0.81777],"37":[0.05556,0.75,0.13639,0,0.81777],"38":[0,0.69444,0.09694,0,0.76666],"39":[0,0.69444,0.12417,0,0.30667],"40":[0.25,0.75,0.16194,0,0.40889],"41":[0.25,0.75,0.03694,0,0.40889],"42":[0,0.75,0.14917,0,0.51111],"43":[0.05667,0.56167,0.03694,0,0.76666],"44":[0.19444,0.10556,0,0,0.30667],"45":[0,0.43056,0.02826,0,0.35778],"46":[0,0.10556,0,0,0.30667],"47":[0.25,0.75,0.16194,0,0.51111],"48":[0,0.64444,0.13556,0,0.51111],"49":[0,0.64444,0.13556,0,0.51111],"50":[0,0.64444,0.13556,0,0.51111],"51":[0,0.64444,0.13556,0,0.51111],"52":[0.19444,0.64444,0.13556,0,0.51111],"53":[0,0.64444,0.13556,0,0.51111],"54":[0,0.64444,0.13556,0,0.51111],"55":[0.19444,0.64444,0.13556,0,0.51111],"56":[0,0.64444,0.13556,0,0.51111],"57":[0,0.64444,0.13556,0,0.51111],"58":[0,0.43056,0.0582,0,0.30667],"59":[0.19444,0.43056,0.0582,0,0.30667],"61":[-0.13313,0.36687,0.06616,0,0.76666],"63":[0,0.69444,0.1225,0,0.51111],"64":[0,0.69444,0.09597,0,0.76666],"65":[0,0.68333,0,0,0.74333],"66":[0,0.68333,0.10257,0,0.70389],"67":[0,0.68333,0.14528,0,0.71555],"68":[0,0.68333,0.09403,0,0.755],"69":[0,0.68333,0.12028,0,0.67833],"70":[0,0.68333,0.13305,0,0.65277],"71":[0,0.68333,0.08722,0,0.77361],"72":[0,0.68333,0.16389,0,0.74333],"73":[0,0.68333,0.15806,0,0.38555],"74":[0,0.68333,0.14028,0,0.525],"75":[0,0.68333,0.14528,0,0.76888],"76":[0,0.68333,0,0,0.62722],"77":[0,0.68333,0.16389,0,0.89666],"78":[0,0.68333,0.16389,0,0.74333],"79":[0,0.68333,0.09403,0,0.76666],"80":[0,0.68333,0.10257,0,0.67833],"81":[0.19444,0.68333,0.09403,0,0.76666],"82":[0,0.68333,0.03868,0,0.72944],"83":[0,0.68333,0.11972,0,0.56222],"84":[0,0.68333,0.13305,0,0.71555],"85":[0,0.68333,0.16389,0,0.74333],"86":[0,0.68333,0.18361,0,0.74333],"87":[0,0.68333,0.18361,0,0.99888],"88":[0,0.68333,0.15806,0,0.74333],"89":[0,0.68333,0.19383,0,0.74333],"90":[0,0.68333,0.14528,0,0.61333],"91":[0.25,0.75,0.1875,0,0.30667],"93":[0.25,0.75,0.10528,0,0.30667],"94":[0,0.69444,0.06646,0,0.51111],"95":[0.31,0.12056,0.09208,0,0.51111],"97":[0,0.43056,0.07671,0,0.51111],"98":[0,0.69444,0.06312,0,0.46],"99":[0,0.43056,0.05653,0,0.46],"100":[0,0.69444,0.10333,0,0.51111],"101":[0,0.43056,0.07514,0,0.46],"102":[0.19444,0.69444,0.21194,0,0.30667],"103":[0.19444,0.43056,0.08847,0,0.46],"104":[0,0.69444,0.07671,0,0.51111],"105":[0,0.65536,0.1019,0,0.30667],"106":[0.19444,0.65536,0.14467,0,0.30667],"107":[0,0.69444,0.10764,0,0.46],"108":[0,0.69444,0.10333,0,0.25555],"109":[0,0.43056,0.07671,0,0.81777],"110":[0,0.43056,0.07671,0,0.56222],"111":[0,0.43056,0.06312,0,0.51111],"112":[0.19444,0.43056,0.06312,0,0.51111],"113":[0.19444,0.43056,0.08847,0,0.46],"114":[0,0.43056,0.10764,0,0.42166],"115":[0,0.43056,0.08208,0,0.40889],"116":[0,0.61508,0.09486,0,0.33222],"117":[0,0.43056,0.07671,0,0.53666],"118":[0,0.43056,0.10764,0,0.46],"119":[0,0.43056,0.10764,0,0.66444],"120":[0,0.43056,0.12042,0,0.46389],"121":[0.19444,0.43056,0.08847,0,0.48555],"122":[0,0.43056,0.12292,0,0.40889],"126":[0.35,0.31786,0.11585,0,0.51111],"160":[0,0,0,0,0.25],"168":[0,0.66786,0.10474,0,0.51111],"176":[0,0.69444,0,0,0.83129],"184":[0.17014,0,0,0,0.46],"198":[0,0.68333,0.12028,0,0.88277],"216":[0.04861,0.73194,0.09403,0,0.76666],"223":[0.19444,0.69444,0.10514,0,0.53666],"230":[0,0.43056,0.07514,0,0.71555],"248":[0.09722,0.52778,0.09194,0,0.51111],"338":[0,0.68333,0.12028,0,0.98499],"339":[0,0.43056,0.07514,0,0.71555],"710":[0,0.69444,0.06646,0,0.51111],"711":[0,0.62847,0.08295,0,0.51111],"713":[0,0.56167,0.10333,0,0.51111],"714":[0,0.69444,0.09694,0,0.51111],"715":[0,0.69444,0,0,0.51111],"728":[0,0.69444,0.10806,0,0.51111],"729":[0,0.66786,0.11752,0,0.30667],"730":[0,0.69444,0,0,0.83129],"732":[0,0.66786,0.11585,0,0.51111],"733":[0,0.69444,0.1225,0,0.51111],"915":[0,0.68333,0.13305,0,0.62722],"916":[0,0.68333,0,0,0.81777],"920":[0,0.68333,0.09403,0,0.76666],"923":[0,0.68333,0,0,0.69222],"926":[0,0.68333,0.15294,0,0.66444],"928":[0,0.68333,0.16389,0,0.74333],"931":[0,0.68333,0.12028,0,0.71555],"933":[0,0.68333,0.11111,0,0.76666],"934":[0,0.68333,0.05986,0,0.71555],"936":[0,0.68333,0.11111,0,0.76666],"937":[0,0.68333,0.10257,0,0.71555],"8211":[0,0.43056,0.09208,0,0.51111],"8212":[0,0.43056,0.09208,0,1.02222],"8216":[0,0.69444,0.12417,0,0.30667],"8217":[0,0.69444,0.12417,0,0.30667],"8220":[0,0.69444,0.1685,0,0.51444],"8221":[0,0.69444,0.06961,0,0.51444],"8463":[0,0.68889,0,0,0.54028]},"Main-Regular":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0,0,0.27778],"34":[0,0.69444,0,0,0.5],"35":[0.19444,0.69444,0,0,0.83334],"36":[0.05556,0.75,0,0,0.5],"37":[0.05556,0.75,0,0,0.83334],"38":[0,0.69444,0,0,0.77778],"39":[0,0.69444,0,0,0.27778],"40":[0.25,0.75,0,0,0.38889],"41":[0.25,0.75,0,0,0.38889],"42":[0,0.75,0,0,0.5],"43":[0.08333,0.58333,0,0,0.77778],"44":[0.19444,0.10556,0,0,0.27778],"45":[0,0.43056,0,0,0.33333],"46":[0,0.10556,0,0,0.27778],"47":[0.25,0.75,0,0,0.5],"48":[0,0.64444,0,0,0.5],"49":[0,0.64444,0,0,0.5],"50":[0,0.64444,0,0,0.5],"51":[0,0.64444,0,0,0.5],"52":[0,0.64444,0,0,0.5],"53":[0,0.64444,0,0,0.5],"54":[0,0.64444,0,0,0.5],"55":[0,0.64444,0,0,0.5],"56":[0,0.64444,0,0,0.5],"57":[0,0.64444,0,0,0.5],"58":[0,0.43056,0,0,0.27778],"59":[0.19444,0.43056,0,0,0.27778],"60":[0.0391,0.5391,0,0,0.77778],"61":[-0.13313,0.36687,0,0,0.77778],"62":[0.0391,0.5391,0,0,0.77778],"63":[0,0.69444,0,0,0.47222],"64":[0,0.69444,0,0,0.77778],"65":[0,0.68333,0,0,0.75],"66":[0,0.68333,0,0,0.70834],"67":[0,0.68333,0,0,0.72222],"68":[0,0.68333,0,0,0.76389],"69":[0,0.68333,0,0,0.68056],"70":[0,0.68333,0,0,0.65278],"71":[0,0.68333,0,0,0.78472],"72":[0,0.68333,0,0,0.75],"73":[0,0.68333,0,0,0.36111],"74":[0,0.68333,0,0,0.51389],"75":[0,0.68333,0,0,0.77778],"76":[0,0.68333,0,0,0.625],"77":[0,0.68333,0,0,0.91667],"78":[0,0.68333,0,0,0.75],"79":[0,0.68333,0,0,0.77778],"80":[0,0.68333,0,0,0.68056],"81":[0.19444,0.68333,0,0,0.77778],"82":[0,0.68333,0,0,0.73611],"83":[0,0.68333,0,0,0.55556],"84":[0,0.68333,0,0,0.72222],"85":[0,0.68333,0,0,0.75],"86":[0,0.68333,0.01389,0,0.75],"87":[0,0.68333,0.01389,0,1.02778],"88":[0,0.68333,0,0,0.75],"89":[0,0.68333,0.025,0,0.75],"90":[0,0.68333,0,0,0.61111],"91":[0.25,0.75,0,0,0.27778],"92":[0.25,0.75,0,0,0.5],"93":[0.25,0.75,0,0,0.27778],"94":[0,0.69444,0,0,0.5],"95":[0.31,0.12056,0.02778,0,0.5],"97":[0,0.43056,0,0,0.5],"98":[0,0.69444,0,0,0.55556],"99":[0,0.43056,0,0,0.44445],"100":[0,0.69444,0,0,0.55556],"101":[0,0.43056,0,0,0.44445],"102":[0,0.69444,0.07778,0,0.30556],"103":[0.19444,0.43056,0.01389,0,0.5],"104":[0,0.69444,0,0,0.55556],"105":[0,0.66786,0,0,0.27778],"106":[0.19444,0.66786,0,0,0.30556],"107":[0,0.69444,0,0,0.52778],"108":[0,0.69444,0,0,0.27778],"109":[0,0.43056,0,0,0.83334],"110":[0,0.43056,0,0,0.55556],"111":[0,0.43056,0,0,0.5],"112":[0.19444,0.43056,0,0,0.55556],"113":[0.19444,0.43056,0,0,0.52778],"114":[0,0.43056,0,0,0.39167],"115":[0,0.43056,0,0,0.39445],"116":[0,0.61508,0,0,0.38889],"117":[0,0.43056,0,0,0.55556],"118":[0,0.43056,0.01389,0,0.52778],"119":[0,0.43056,0.01389,0,0.72222],"120":[0,0.43056,0,0,0.52778],"121":[0.19444,0.43056,0.01389,0,0.52778],"122":[0,0.43056,0,0,0.44445],"123":[0.25,0.75,0,0,0.5],"124":[0.25,0.75,0,0,0.27778],"125":[0.25,0.75,0,0,0.5],"126":[0.35,0.31786,0,0,0.5],"160":[0,0,0,0,0.25],"163":[0,0.69444,0,0,0.76909],"167":[0.19444,0.69444,0,0,0.44445],"168":[0,0.66786,0,0,0.5],"172":[0,0.43056,0,0,0.66667],"176":[0,0.69444,0,0,0.75],"177":[0.08333,0.58333,0,0,0.77778],"182":[0.19444,0.69444,0,0,0.61111],"184":[0.17014,0,0,0,0.44445],"198":[0,0.68333,0,0,0.90278],"215":[0.08333,0.58333,0,0,0.77778],"216":[0.04861,0.73194,0,0,0.77778],"223":[0,0.69444,0,0,0.5],"230":[0,0.43056,0,0,0.72222],"247":[0.08333,0.58333,0,0,0.77778],"248":[0.09722,0.52778,0,0,0.5],"305":[0,0.43056,0,0,0.27778],"338":[0,0.68333,0,0,1.01389],"339":[0,0.43056,0,0,0.77778],"567":[0.19444,0.43056,0,0,0.30556],"710":[0,0.69444,0,0,0.5],"711":[0,0.62847,0,0,0.5],"713":[0,0.56778,0,0,0.5],"714":[0,0.69444,0,0,0.5],"715":[0,0.69444,0,0,0.5],"728":[0,0.69444,0,0,0.5],"729":[0,0.66786,0,0,0.27778],"730":[0,0.69444,0,0,0.75],"732":[0,0.66786,0,0,0.5],"733":[0,0.69444,0,0,0.5],"915":[0,0.68333,0,0,0.625],"916":[0,0.68333,0,0,0.83334],"920":[0,0.68333,0,0,0.77778],"923":[0,0.68333,0,0,0.69445],"926":[0,0.68333,0,0,0.66667],"928":[0,0.68333,0,0,0.75],"931":[0,0.68333,0,0,0.72222],"933":[0,0.68333,0,0,0.77778],"934":[0,0.68333,0,0,0.72222],"936":[0,0.68333,0,0,0.77778],"937":[0,0.68333,0,0,0.72222],"8211":[0,0.43056,0.02778,0,0.5],"8212":[0,0.43056,0.02778,0,1],"8216":[0,0.69444,0,0,0.27778],"8217":[0,0.69444,0,0,0.27778],"8220":[0,0.69444,0,0,0.5],"8221":[0,0.69444,0,0,0.5],"8224":[0.19444,0.69444,0,0,0.44445],"8225":[0.19444,0.69444,0,0,0.44445],"8230":[0,0.123,0,0,1.172],"8242":[0,0.55556,0,0,0.275],"8407":[0,0.71444,0.15382,0,0.5],"8463":[0,0.68889,0,0,0.54028],"8465":[0,0.69444,0,0,0.72222],"8467":[0,0.69444,0,0.11111,0.41667],"8472":[0.19444,0.43056,0,0.11111,0.63646],"8476":[0,0.69444,0,0,0.72222],"8501":[0,0.69444,0,0,0.61111],"8592":[-0.13313,0.36687,0,0,1],"8593":[0.19444,0.69444,0,0,0.5],"8594":[-0.13313,0.36687,0,0,1],"8595":[0.19444,0.69444,0,0,0.5],"8596":[-0.13313,0.36687,0,0,1],"8597":[0.25,0.75,0,0,0.5],"8598":[0.19444,0.69444,0,0,1],"8599":[0.19444,0.69444,0,0,1],"8600":[0.19444,0.69444,0,0,1],"8601":[0.19444,0.69444,0,0,1],"8614":[0.011,0.511,0,0,1],"8617":[0.011,0.511,0,0,1.126],"8618":[0.011,0.511,0,0,1.126],"8636":[-0.13313,0.36687,0,0,1],"8637":[-0.13313,0.36687,0,0,1],"8640":[-0.13313,0.36687,0,0,1],"8641":[-0.13313,0.36687,0,0,1],"8652":[0.011,0.671,0,0,1],"8656":[-0.13313,0.36687,0,0,1],"8657":[0.19444,0.69444,0,0,0.61111],"8658":[-0.13313,0.36687,0,0,1],"8659":[0.19444,0.69444,0,0,0.61111],"8660":[-0.13313,0.36687,0,0,1],"8661":[0.25,0.75,0,0,0.61111],"8704":[0,0.69444,0,0,0.55556],"8706":[0,0.69444,0.05556,0.08334,0.5309],"8707":[0,0.69444,0,0,0.55556],"8709":[0.05556,0.75,0,0,0.5],"8711":[0,0.68333,0,0,0.83334],"8712":[0.0391,0.5391,0,0,0.66667],"8715":[0.0391,0.5391,0,0,0.66667],"8722":[0.08333,0.58333,0,0,0.77778],"8723":[0.08333,0.58333,0,0,0.77778],"8725":[0.25,0.75,0,0,0.5],"8726":[0.25,0.75,0,0,0.5],"8727":[-0.03472,0.46528,0,0,0.5],"8728":[-0.05555,0.44445,0,0,0.5],"8729":[-0.05555,0.44445,0,0,0.5],"8730":[0.2,0.8,0,0,0.83334],"8733":[0,0.43056,0,0,0.77778],"8734":[0,0.43056,0,0,1],"8736":[0,0.69224,0,0,0.72222],"8739":[0.25,0.75,0,0,0.27778],"8741":[0.25,0.75,0,0,0.5],"8743":[0,0.55556,0,0,0.66667],"8744":[0,0.55556,0,0,0.66667],"8745":[0,0.55556,0,0,0.66667],"8746":[0,0.55556,0,0,0.66667],"8747":[0.19444,0.69444,0.11111,0,0.41667],"8764":[-0.13313,0.36687,0,0,0.77778],"8768":[0.19444,0.69444,0,0,0.27778],"8771":[-0.03625,0.46375,0,0,0.77778],"8773":[-0.022,0.589,0,0,0.778],"8776":[-0.01688,0.48312,0,0,0.77778],"8781":[-0.03625,0.46375,0,0,0.77778],"8784":[-0.133,0.673,0,0,0.778],"8801":[-0.03625,0.46375,0,0,0.77778],"8804":[0.13597,0.63597,0,0,0.77778],"8805":[0.13597,0.63597,0,0,0.77778],"8810":[0.0391,0.5391,0,0,1],"8811":[0.0391,0.5391,0,0,1],"8826":[0.0391,0.5391,0,0,0.77778],"8827":[0.0391,0.5391,0,0,0.77778],"8834":[0.0391,0.5391,0,0,0.77778],"8835":[0.0391,0.5391,0,0,0.77778],"8838":[0.13597,0.63597,0,0,0.77778],"8839":[0.13597,0.63597,0,0,0.77778],"8846":[0,0.55556,0,0,0.66667],"8849":[0.13597,0.63597,0,0,0.77778],"8850":[0.13597,0.63597,0,0,0.77778],"8851":[0,0.55556,0,0,0.66667],"8852":[0,0.55556,0,0,0.66667],"8853":[0.08333,0.58333,0,0,0.77778],"8854":[0.08333,0.58333,0,0,0.77778],"8855":[0.08333,0.58333,0,0,0.77778],"8856":[0.08333,0.58333,0,0,0.77778],"8857":[0.08333,0.58333,0,0,0.77778],"8866":[0,0.69444,0,0,0.61111],"8867":[0,0.69444,0,0,0.61111],"8868":[0,0.69444,0,0,0.77778],"8869":[0,0.69444,0,0,0.77778],"8872":[0.249,0.75,0,0,0.867],"8900":[-0.05555,0.44445,0,0,0.5],"8901":[-0.05555,0.44445,0,0,0.27778],"8902":[-0.03472,0.46528,0,0,0.5],"8904":[0.005,0.505,0,0,0.9],"8942":[0.03,0.903,0,0,0.278],"8943":[-0.19,0.313,0,0,1.172],"8945":[-0.1,0.823,0,0,1.282],"8968":[0.25,0.75,0,0,0.44445],"8969":[0.25,0.75,0,0,0.44445],"8970":[0.25,0.75,0,0,0.44445],"8971":[0.25,0.75,0,0,0.44445],"8994":[-0.14236,0.35764,0,0,1],"8995":[-0.14236,0.35764,0,0,1],"9136":[0.244,0.744,0,0,0.412],"9137":[0.244,0.745,0,0,0.412],"9651":[0.19444,0.69444,0,0,0.88889],"9657":[-0.03472,0.46528,0,0,0.5],"9661":[0.19444,0.69444,0,0,0.88889],"9667":[-0.03472,0.46528,0,0,0.5],"9711":[0.19444,0.69444,0,0,1],"9824":[0.12963,0.69444,0,0,0.77778],"9825":[0.12963,0.69444,0,0,0.77778],"9826":[0.12963,0.69444,0,0,0.77778],"9827":[0.12963,0.69444,0,0,0.77778],"9837":[0,0.75,0,0,0.38889],"9838":[0.19444,0.69444,0,0,0.38889],"9839":[0.19444,0.69444,0,0,0.38889],"10216":[0.25,0.75,0,0,0.38889],"10217":[0.25,0.75,0,0,0.38889],"10222":[0.244,0.744,0,0,0.412],"10223":[0.244,0.745,0,0,0.412],"10229":[0.011,0.511,0,0,1.609],"10230":[0.011,0.511,0,0,1.638],"10231":[0.011,0.511,0,0,1.859],"10232":[0.024,0.525,0,0,1.609],"10233":[0.024,0.525,0,0,1.638],"10234":[0.024,0.525,0,0,1.858],"10236":[0.011,0.511,0,0,1.638],"10815":[0,0.68333,0,0,0.75],"10927":[0.13597,0.63597,0,0,0.77778],"10928":[0.13597,0.63597,0,0,0.77778],"57376":[0.19444,0.69444,0,0,0]},"Math-BoldItalic":{"32":[0,0,0,0,0.25],"48":[0,0.44444,0,0,0.575],"49":[0,0.44444,0,0,0.575],"50":[0,0.44444,0,0,0.575],"51":[0.19444,0.44444,0,0,0.575],"52":[0.19444,0.44444,0,0,0.575],"53":[0.19444,0.44444,0,0,0.575],"54":[0,0.64444,0,0,0.575],"55":[0.19444,0.44444,0,0,0.575],"56":[0,0.64444,0,0,0.575],"57":[0.19444,0.44444,0,0,0.575],"65":[0,0.68611,0,0,0.86944],"66":[0,0.68611,0.04835,0,0.8664],"67":[0,0.68611,0.06979,0,0.81694],"68":[0,0.68611,0.03194,0,0.93812],"69":[0,0.68611,0.05451,0,0.81007],"70":[0,0.68611,0.15972,0,0.68889],"71":[0,0.68611,0,0,0.88673],"72":[0,0.68611,0.08229,0,0.98229],"73":[0,0.68611,0.07778,0,0.51111],"74":[0,0.68611,0.10069,0,0.63125],"75":[0,0.68611,0.06979,0,0.97118],"76":[0,0.68611,0,0,0.75555],"77":[0,0.68611,0.11424,0,1.14201],"78":[0,0.68611,0.11424,0,0.95034],"79":[0,0.68611,0.03194,0,0.83666],"80":[0,0.68611,0.15972,0,0.72309],"81":[0.19444,0.68611,0,0,0.86861],"82":[0,0.68611,0.00421,0,0.87235],"83":[0,0.68611,0.05382,0,0.69271],"84":[0,0.68611,0.15972,0,0.63663],"85":[0,0.68611,0.11424,0,0.80027],"86":[0,0.68611,0.25555,0,0.67778],"87":[0,0.68611,0.15972,0,1.09305],"88":[0,0.68611,0.07778,0,0.94722],"89":[0,0.68611,0.25555,0,0.67458],"90":[0,0.68611,0.06979,0,0.77257],"97":[0,0.44444,0,0,0.63287],"98":[0,0.69444,0,0,0.52083],"99":[0,0.44444,0,0,0.51342],"100":[0,0.69444,0,0,0.60972],"101":[0,0.44444,0,0,0.55361],"102":[0.19444,0.69444,0.11042,0,0.56806],"103":[0.19444,0.44444,0.03704,0,0.5449],"104":[0,0.69444,0,0,0.66759],"105":[0,0.69326,0,0,0.4048],"106":[0.19444,0.69326,0.0622,0,0.47083],"107":[0,0.69444,0.01852,0,0.6037],"108":[0,0.69444,0.0088,0,0.34815],"109":[0,0.44444,0,0,1.0324],"110":[0,0.44444,0,0,0.71296],"111":[0,0.44444,0,0,0.58472],"112":[0.19444,0.44444,0,0,0.60092],"113":[0.19444,0.44444,0.03704,0,0.54213],"114":[0,0.44444,0.03194,0,0.5287],"115":[0,0.44444,0,0,0.53125],"116":[0,0.63492,0,0,0.41528],"117":[0,0.44444,0,0,0.68102],"118":[0,0.44444,0.03704,0,0.56666],"119":[0,0.44444,0.02778,0,0.83148],"120":[0,0.44444,0,0,0.65903],"121":[0.19444,0.44444,0.03704,0,0.59028],"122":[0,0.44444,0.04213,0,0.55509],"160":[0,0,0,0,0.25],"915":[0,0.68611,0.15972,0,0.65694],"916":[0,0.68611,0,0,0.95833],"920":[0,0.68611,0.03194,0,0.86722],"923":[0,0.68611,0,0,0.80555],"926":[0,0.68611,0.07458,0,0.84125],"928":[0,0.68611,0.08229,0,0.98229],"931":[0,0.68611,0.05451,0,0.88507],"933":[0,0.68611,0.15972,0,0.67083],"934":[0,0.68611,0,0,0.76666],"936":[0,0.68611,0.11653,0,0.71402],"937":[0,0.68611,0.04835,0,0.8789],"945":[0,0.44444,0,0,0.76064],"946":[0.19444,0.69444,0.03403,0,0.65972],"947":[0.19444,0.44444,0.06389,0,0.59003],"948":[0,0.69444,0.03819,0,0.52222],"949":[0,0.44444,0,0,0.52882],"950":[0.19444,0.69444,0.06215,0,0.50833],"951":[0.19444,0.44444,0.03704,0,0.6],"952":[0,0.69444,0.03194,0,0.5618],"953":[0,0.44444,0,0,0.41204],"954":[0,0.44444,0,0,0.66759],"955":[0,0.69444,0,0,0.67083],"956":[0.19444,0.44444,0,0,0.70787],"957":[0,0.44444,0.06898,0,0.57685],"958":[0.19444,0.69444,0.03021,0,0.50833],"959":[0,0.44444,0,0,0.58472],"960":[0,0.44444,0.03704,0,0.68241],"961":[0.19444,0.44444,0,0,0.6118],"962":[0.09722,0.44444,0.07917,0,0.42361],"963":[0,0.44444,0.03704,0,0.68588],"964":[0,0.44444,0.13472,0,0.52083],"965":[0,0.44444,0.03704,0,0.63055],"966":[0.19444,0.44444,0,0,0.74722],"967":[0.19444,0.44444,0,0,0.71805],"968":[0.19444,0.69444,0.03704,0,0.75833],"969":[0,0.44444,0.03704,0,0.71782],"977":[0,0.69444,0,0,0.69155],"981":[0.19444,0.69444,0,0,0.7125],"982":[0,0.44444,0.03194,0,0.975],"1009":[0.19444,0.44444,0,0,0.6118],"1013":[0,0.44444,0,0,0.48333],"57649":[0,0.44444,0,0,0.39352],"57911":[0.19444,0.44444,0,0,0.43889]},"Math-Italic":{"32":[0,0,0,0,0.25],"48":[0,0.43056,0,0,0.5],"49":[0,0.43056,0,0,0.5],"50":[0,0.43056,0,0,0.5],"51":[0.19444,0.43056,0,0,0.5],"52":[0.19444,0.43056,0,0,0.5],"53":[0.19444,0.43056,0,0,0.5],"54":[0,0.64444,0,0,0.5],"55":[0.19444,0.43056,0,0,0.5],"56":[0,0.64444,0,0,0.5],"57":[0.19444,0.43056,0,0,0.5],"65":[0,0.68333,0,0.13889,0.75],"66":[0,0.68333,0.05017,0.08334,0.75851],"67":[0,0.68333,0.07153,0.08334,0.71472],"68":[0,0.68333,0.02778,0.05556,0.82792],"69":[0,0.68333,0.05764,0.08334,0.7382],"70":[0,0.68333,0.13889,0.08334,0.64306],"71":[0,0.68333,0,0.08334,0.78625],"72":[0,0.68333,0.08125,0.05556,0.83125],"73":[0,0.68333,0.07847,0.11111,0.43958],"74":[0,0.68333,0.09618,0.16667,0.55451],"75":[0,0.68333,0.07153,0.05556,0.84931],"76":[0,0.68333,0,0.02778,0.68056],"77":[0,0.68333,0.10903,0.08334,0.97014],"78":[0,0.68333,0.10903,0.08334,0.80347],"79":[0,0.68333,0.02778,0.08334,0.76278],"80":[0,0.68333,0.13889,0.08334,0.64201],"81":[0.19444,0.68333,0,0.08334,0.79056],"82":[0,0.68333,0.00773,0.08334,0.75929],"83":[0,0.68333,0.05764,0.08334,0.6132],"84":[0,0.68333,0.13889,0.08334,0.58438],"85":[0,0.68333,0.10903,0.02778,0.68278],"86":[0,0.68333,0.22222,0,0.58333],"87":[0,0.68333,0.13889,0,0.94445],"88":[0,0.68333,0.07847,0.08334,0.82847],"89":[0,0.68333,0.22222,0,0.58056],"90":[0,0.68333,0.07153,0.08334,0.68264],"97":[0,0.43056,0,0,0.52859],"98":[0,0.69444,0,0,0.42917],"99":[0,0.43056,0,0.05556,0.43276],"100":[0,0.69444,0,0.16667,0.52049],"101":[0,0.43056,0,0.05556,0.46563],"102":[0.19444,0.69444,0.10764,0.16667,0.48959],"103":[0.19444,0.43056,0.03588,0.02778,0.47697],"104":[0,0.69444,0,0,0.57616],"105":[0,0.65952,0,0,0.34451],"106":[0.19444,0.65952,0.05724,0,0.41181],"107":[0,0.69444,0.03148,0,0.5206],"108":[0,0.69444,0.01968,0.08334,0.29838],"109":[0,0.43056,0,0,0.87801],"110":[0,0.43056,0,0,0.60023],"111":[0,0.43056,0,0.05556,0.48472],"112":[0.19444,0.43056,0,0.08334,0.50313],"113":[0.19444,0.43056,0.03588,0.08334,0.44641],"114":[0,0.43056,0.02778,0.05556,0.45116],"115":[0,0.43056,0,0.05556,0.46875],"116":[0,0.61508,0,0.08334,0.36111],"117":[0,0.43056,0,0.02778,0.57246],"118":[0,0.43056,0.03588,0.02778,0.48472],"119":[0,0.43056,0.02691,0.08334,0.71592],"120":[0,0.43056,0,0.02778,0.57153],"121":[0.19444,0.43056,0.03588,0.05556,0.49028],"122":[0,0.43056,0.04398,0.05556,0.46505],"160":[0,0,0,0,0.25],"915":[0,0.68333,0.13889,0.08334,0.61528],"916":[0,0.68333,0,0.16667,0.83334],"920":[0,0.68333,0.02778,0.08334,0.76278],"923":[0,0.68333,0,0.16667,0.69445],"926":[0,0.68333,0.07569,0.08334,0.74236],"928":[0,0.68333,0.08125,0.05556,0.83125],"931":[0,0.68333,0.05764,0.08334,0.77986],"933":[0,0.68333,0.13889,0.05556,0.58333],"934":[0,0.68333,0,0.08334,0.66667],"936":[0,0.68333,0.11,0.05556,0.61222],"937":[0,0.68333,0.05017,0.08334,0.7724],"945":[0,0.43056,0.0037,0.02778,0.6397],"946":[0.19444,0.69444,0.05278,0.08334,0.56563],"947":[0.19444,0.43056,0.05556,0,0.51773],"948":[0,0.69444,0.03785,0.05556,0.44444],"949":[0,0.43056,0,0.08334,0.46632],"950":[0.19444,0.69444,0.07378,0.08334,0.4375],"951":[0.19444,0.43056,0.03588,0.05556,0.49653],"952":[0,0.69444,0.02778,0.08334,0.46944],"953":[0,0.43056,0,0.05556,0.35394],"954":[0,0.43056,0,0,0.57616],"955":[0,0.69444,0,0,0.58334],"956":[0.19444,0.43056,0,0.02778,0.60255],"957":[0,0.43056,0.06366,0.02778,0.49398],"958":[0.19444,0.69444,0.04601,0.11111,0.4375],"959":[0,0.43056,0,0.05556,0.48472],"960":[0,0.43056,0.03588,0,0.57003],"961":[0.19444,0.43056,0,0.08334,0.51702],"962":[0.09722,0.43056,0.07986,0.08334,0.36285],"963":[0,0.43056,0.03588,0,0.57141],"964":[0,0.43056,0.1132,0.02778,0.43715],"965":[0,0.43056,0.03588,0.02778,0.54028],"966":[0.19444,0.43056,0,0.08334,0.65417],"967":[0.19444,0.43056,0,0.05556,0.62569],"968":[0.19444,0.69444,0.03588,0.11111,0.65139],"969":[0,0.43056,0.03588,0,0.62245],"977":[0,0.69444,0,0.08334,0.59144],"981":[0.19444,0.69444,0,0.08334,0.59583],"982":[0,0.43056,0.02778,0,0.82813],"1009":[0.19444,0.43056,0,0.08334,0.51702],"1013":[0,0.43056,0,0.05556,0.4059],"57649":[0,0.43056,0,0.02778,0.32246],"57911":[0.19444,0.43056,0,0.08334,0.38403]},"SansSerif-Bold":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0,0,0.36667],"34":[0,0.69444,0,0,0.55834],"35":[0.19444,0.69444,0,0,0.91667],"36":[0.05556,0.75,0,0,0.55],"37":[0.05556,0.75,0,0,1.02912],"38":[0,0.69444,0,0,0.83056],"39":[0,0.69444,0,0,0.30556],"40":[0.25,0.75,0,0,0.42778],"41":[0.25,0.75,0,0,0.42778],"42":[0,0.75,0,0,0.55],"43":[0.11667,0.61667,0,0,0.85556],"44":[0.10556,0.13056,0,0,0.30556],"45":[0,0.45833,0,0,0.36667],"46":[0,0.13056,0,0,0.30556],"47":[0.25,0.75,0,0,0.55],"48":[0,0.69444,0,0,0.55],"49":[0,0.69444,0,0,0.55],"50":[0,0.69444,0,0,0.55],"51":[0,0.69444,0,0,0.55],"52":[0,0.69444,0,0,0.55],"53":[0,0.69444,0,0,0.55],"54":[0,0.69444,0,0,0.55],"55":[0,0.69444,0,0,0.55],"56":[0,0.69444,0,0,0.55],"57":[0,0.69444,0,0,0.55],"58":[0,0.45833,0,0,0.30556],"59":[0.10556,0.45833,0,0,0.30556],"61":[-0.09375,0.40625,0,0,0.85556],"63":[0,0.69444,0,0,0.51945],"64":[0,0.69444,0,0,0.73334],"65":[0,0.69444,0,0,0.73334],"66":[0,0.69444,0,0,0.73334],"67":[0,0.69444,0,0,0.70278],"68":[0,0.69444,0,0,0.79445],"69":[0,0.69444,0,0,0.64167],"70":[0,0.69444,0,0,0.61111],"71":[0,0.69444,0,0,0.73334],"72":[0,0.69444,0,0,0.79445],"73":[0,0.69444,0,0,0.33056],"74":[0,0.69444,0,0,0.51945],"75":[0,0.69444,0,0,0.76389],"76":[0,0.69444,0,0,0.58056],"77":[0,0.69444,0,0,0.97778],"78":[0,0.69444,0,0,0.79445],"79":[0,0.69444,0,0,0.79445],"80":[0,0.69444,0,0,0.70278],"81":[0.10556,0.69444,0,0,0.79445],"82":[0,0.69444,0,0,0.70278],"83":[0,0.69444,0,0,0.61111],"84":[0,0.69444,0,0,0.73334],"85":[0,0.69444,0,0,0.76389],"86":[0,0.69444,0.01528,0,0.73334],"87":[0,0.69444,0.01528,0,1.03889],"88":[0,0.69444,0,0,0.73334],"89":[0,0.69444,0.0275,0,0.73334],"90":[0,0.69444,0,0,0.67223],"91":[0.25,0.75,0,0,0.34306],"93":[0.25,0.75,0,0,0.34306],"94":[0,0.69444,0,0,0.55],"95":[0.35,0.10833,0.03056,0,0.55],"97":[0,0.45833,0,0,0.525],"98":[0,0.69444,0,0,0.56111],"99":[0,0.45833,0,0,0.48889],"100":[0,0.69444,0,0,0.56111],"101":[0,0.45833,0,0,0.51111],"102":[0,0.69444,0.07639,0,0.33611],"103":[0.19444,0.45833,0.01528,0,0.55],"104":[0,0.69444,0,0,0.56111],"105":[0,0.69444,0,0,0.25556],"106":[0.19444,0.69444,0,0,0.28611],"107":[0,0.69444,0,0,0.53056],"108":[0,0.69444,0,0,0.25556],"109":[0,0.45833,0,0,0.86667],"110":[0,0.45833,0,0,0.56111],"111":[0,0.45833,0,0,0.55],"112":[0.19444,0.45833,0,0,0.56111],"113":[0.19444,0.45833,0,0,0.56111],"114":[0,0.45833,0.01528,0,0.37222],"115":[0,0.45833,0,0,0.42167],"116":[0,0.58929,0,0,0.40417],"117":[0,0.45833,0,0,0.56111],"118":[0,0.45833,0.01528,0,0.5],"119":[0,0.45833,0.01528,0,0.74445],"120":[0,0.45833,0,0,0.5],"121":[0.19444,0.45833,0.01528,0,0.5],"122":[0,0.45833,0,0,0.47639],"126":[0.35,0.34444,0,0,0.55],"160":[0,0,0,0,0.25],"168":[0,0.69444,0,0,0.55],"176":[0,0.69444,0,0,0.73334],"180":[0,0.69444,0,0,0.55],"184":[0.17014,0,0,0,0.48889],"305":[0,0.45833,0,0,0.25556],"567":[0.19444,0.45833,0,0,0.28611],"710":[0,0.69444,0,0,0.55],"711":[0,0.63542,0,0,0.55],"713":[0,0.63778,0,0,0.55],"728":[0,0.69444,0,0,0.55],"729":[0,0.69444,0,0,0.30556],"730":[0,0.69444,0,0,0.73334],"732":[0,0.69444,0,0,0.55],"733":[0,0.69444,0,0,0.55],"915":[0,0.69444,0,0,0.58056],"916":[0,0.69444,0,0,0.91667],"920":[0,0.69444,0,0,0.85556],"923":[0,0.69444,0,0,0.67223],"926":[0,0.69444,0,0,0.73334],"928":[0,0.69444,0,0,0.79445],"931":[0,0.69444,0,0,0.79445],"933":[0,0.69444,0,0,0.85556],"934":[0,0.69444,0,0,0.79445],"936":[0,0.69444,0,0,0.85556],"937":[0,0.69444,0,0,0.79445],"8211":[0,0.45833,0.03056,0,0.55],"8212":[0,0.45833,0.03056,0,1.10001],"8216":[0,0.69444,0,0,0.30556],"8217":[0,0.69444,0,0,0.30556],"8220":[0,0.69444,0,0,0.55834],"8221":[0,0.69444,0,0,0.55834]},"SansSerif-Italic":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0.05733,0,0.31945],"34":[0,0.69444,0.00316,0,0.5],"35":[0.19444,0.69444,0.05087,0,0.83334],"36":[0.05556,0.75,0.11156,0,0.5],"37":[0.05556,0.75,0.03126,0,0.83334],"38":[0,0.69444,0.03058,0,0.75834],"39":[0,0.69444,0.07816,0,0.27778],"40":[0.25,0.75,0.13164,0,0.38889],"41":[0.25,0.75,0.02536,0,0.38889],"42":[0,0.75,0.11775,0,0.5],"43":[0.08333,0.58333,0.02536,0,0.77778],"44":[0.125,0.08333,0,0,0.27778],"45":[0,0.44444,0.01946,0,0.33333],"46":[0,0.08333,0,0,0.27778],"47":[0.25,0.75,0.13164,0,0.5],"48":[0,0.65556,0.11156,0,0.5],"49":[0,0.65556,0.11156,0,0.5],"50":[0,0.65556,0.11156,0,0.5],"51":[0,0.65556,0.11156,0,0.5],"52":[0,0.65556,0.11156,0,0.5],"53":[0,0.65556,0.11156,0,0.5],"54":[0,0.65556,0.11156,0,0.5],"55":[0,0.65556,0.11156,0,0.5],"56":[0,0.65556,0.11156,0,0.5],"57":[0,0.65556,0.11156,0,0.5],"58":[0,0.44444,0.02502,0,0.27778],"59":[0.125,0.44444,0.02502,0,0.27778],"61":[-0.13,0.37,0.05087,0,0.77778],"63":[0,0.69444,0.11809,0,0.47222],"64":[0,0.69444,0.07555,0,0.66667],"65":[0,0.69444,0,0,0.66667],"66":[0,0.69444,0.08293,0,0.66667],"67":[0,0.69444,0.11983,0,0.63889],"68":[0,0.69444,0.07555,0,0.72223],"69":[0,0.69444,0.11983,0,0.59722],"70":[0,0.69444,0.13372,0,0.56945],"71":[0,0.69444,0.11983,0,0.66667],"72":[0,0.69444,0.08094,0,0.70834],"73":[0,0.69444,0.13372,0,0.27778],"74":[0,0.69444,0.08094,0,0.47222],"75":[0,0.69444,0.11983,0,0.69445],"76":[0,0.69444,0,0,0.54167],"77":[0,0.69444,0.08094,0,0.875],"78":[0,0.69444,0.08094,0,0.70834],"79":[0,0.69444,0.07555,0,0.73611],"80":[0,0.69444,0.08293,0,0.63889],"81":[0.125,0.69444,0.07555,0,0.73611],"82":[0,0.69444,0.08293,0,0.64584],"83":[0,0.69444,0.09205,0,0.55556],"84":[0,0.69444,0.13372,0,0.68056],"85":[0,0.69444,0.08094,0,0.6875],"86":[0,0.69444,0.1615,0,0.66667],"87":[0,0.69444,0.1615,0,0.94445],"88":[0,0.69444,0.13372,0,0.66667],"89":[0,0.69444,0.17261,0,0.66667],"90":[0,0.69444,0.11983,0,0.61111],"91":[0.25,0.75,0.15942,0,0.28889],"93":[0.25,0.75,0.08719,0,0.28889],"94":[0,0.69444,0.0799,0,0.5],"95":[0.35,0.09444,0.08616,0,0.5],"97":[0,0.44444,0.00981,0,0.48056],"98":[0,0.69444,0.03057,0,0.51667],"99":[0,0.44444,0.08336,0,0.44445],"100":[0,0.69444,0.09483,0,0.51667],"101":[0,0.44444,0.06778,0,0.44445],"102":[0,0.69444,0.21705,0,0.30556],"103":[0.19444,0.44444,0.10836,0,0.5],"104":[0,0.69444,0.01778,0,0.51667],"105":[0,0.67937,0.09718,0,0.23889],"106":[0.19444,0.67937,0.09162,0,0.26667],"107":[0,0.69444,0.08336,0,0.48889],"108":[0,0.69444,0.09483,0,0.23889],"109":[0,0.44444,0.01778,0,0.79445],"110":[0,0.44444,0.01778,0,0.51667],"111":[0,0.44444,0.06613,0,0.5],"112":[0.19444,0.44444,0.0389,0,0.51667],"113":[0.19444,0.44444,0.04169,0,0.51667],"114":[0,0.44444,0.10836,0,0.34167],"115":[0,0.44444,0.0778,0,0.38333],"116":[0,0.57143,0.07225,0,0.36111],"117":[0,0.44444,0.04169,0,0.51667],"118":[0,0.44444,0.10836,0,0.46111],"119":[0,0.44444,0.10836,0,0.68334],"120":[0,0.44444,0.09169,0,0.46111],"121":[0.19444,0.44444,0.10836,0,0.46111],"122":[0,0.44444,0.08752,0,0.43472],"126":[0.35,0.32659,0.08826,0,0.5],"160":[0,0,0,0,0.25],"168":[0,0.67937,0.06385,0,0.5],"176":[0,0.69444,0,0,0.73752],"184":[0.17014,0,0,0,0.44445],"305":[0,0.44444,0.04169,0,0.23889],"567":[0.19444,0.44444,0.04169,0,0.26667],"710":[0,0.69444,0.0799,0,0.5],"711":[0,0.63194,0.08432,0,0.5],"713":[0,0.60889,0.08776,0,0.5],"714":[0,0.69444,0.09205,0,0.5],"715":[0,0.69444,0,0,0.5],"728":[0,0.69444,0.09483,0,0.5],"729":[0,0.67937,0.07774,0,0.27778],"730":[0,0.69444,0,0,0.73752],"732":[0,0.67659,0.08826,0,0.5],"733":[0,0.69444,0.09205,0,0.5],"915":[0,0.69444,0.13372,0,0.54167],"916":[0,0.69444,0,0,0.83334],"920":[0,0.69444,0.07555,0,0.77778],"923":[0,0.69444,0,0,0.61111],"926":[0,0.69444,0.12816,0,0.66667],"928":[0,0.69444,0.08094,0,0.70834],"931":[0,0.69444,0.11983,0,0.72222],"933":[0,0.69444,0.09031,0,0.77778],"934":[0,0.69444,0.04603,0,0.72222],"936":[0,0.69444,0.09031,0,0.77778],"937":[0,0.69444,0.08293,0,0.72222],"8211":[0,0.44444,0.08616,0,0.5],"8212":[0,0.44444,0.08616,0,1],"8216":[0,0.69444,0.07816,0,0.27778],"8217":[0,0.69444,0.07816,0,0.27778],"8220":[0,0.69444,0.14205,0,0.5],"8221":[0,0.69444,0.00316,0,0.5]},"SansSerif-Regular":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0,0,0.31945],"34":[0,0.69444,0,0,0.5],"35":[0.19444,0.69444,0,0,0.83334],"36":[0.05556,0.75,0,0,0.5],"37":[0.05556,0.75,0,0,0.83334],"38":[0,0.69444,0,0,0.75834],"39":[0,0.69444,0,0,0.27778],"40":[0.25,0.75,0,0,0.38889],"41":[0.25,0.75,0,0,0.38889],"42":[0,0.75,0,0,0.5],"43":[0.08333,0.58333,0,0,0.77778],"44":[0.125,0.08333,0,0,0.27778],"45":[0,0.44444,0,0,0.33333],"46":[0,0.08333,0,0,0.27778],"47":[0.25,0.75,0,0,0.5],"48":[0,0.65556,0,0,0.5],"49":[0,0.65556,0,0,0.5],"50":[0,0.65556,0,0,0.5],"51":[0,0.65556,0,0,0.5],"52":[0,0.65556,0,0,0.5],"53":[0,0.65556,0,0,0.5],"54":[0,0.65556,0,0,0.5],"55":[0,0.65556,0,0,0.5],"56":[0,0.65556,0,0,0.5],"57":[0,0.65556,0,0,0.5],"58":[0,0.44444,0,0,0.27778],"59":[0.125,0.44444,0,0,0.27778],"61":[-0.13,0.37,0,0,0.77778],"63":[0,0.69444,0,0,0.47222],"64":[0,0.69444,0,0,0.66667],"65":[0,0.69444,0,0,0.66667],"66":[0,0.69444,0,0,0.66667],"67":[0,0.69444,0,0,0.63889],"68":[0,0.69444,0,0,0.72223],"69":[0,0.69444,0,0,0.59722],"70":[0,0.69444,0,0,0.56945],"71":[0,0.69444,0,0,0.66667],"72":[0,0.69444,0,0,0.70834],"73":[0,0.69444,0,0,0.27778],"74":[0,0.69444,0,0,0.47222],"75":[0,0.69444,0,0,0.69445],"76":[0,0.69444,0,0,0.54167],"77":[0,0.69444,0,0,0.875],"78":[0,0.69444,0,0,0.70834],"79":[0,0.69444,0,0,0.73611],"80":[0,0.69444,0,0,0.63889],"81":[0.125,0.69444,0,0,0.73611],"82":[0,0.69444,0,0,0.64584],"83":[0,0.69444,0,0,0.55556],"84":[0,0.69444,0,0,0.68056],"85":[0,0.69444,0,0,0.6875],"86":[0,0.69444,0.01389,0,0.66667],"87":[0,0.69444,0.01389,0,0.94445],"88":[0,0.69444,0,0,0.66667],"89":[0,0.69444,0.025,0,0.66667],"90":[0,0.69444,0,0,0.61111],"91":[0.25,0.75,0,0,0.28889],"93":[0.25,0.75,0,0,0.28889],"94":[0,0.69444,0,0,0.5],"95":[0.35,0.09444,0.02778,0,0.5],"97":[0,0.44444,0,0,0.48056],"98":[0,0.69444,0,0,0.51667],"99":[0,0.44444,0,0,0.44445],"100":[0,0.69444,0,0,0.51667],"101":[0,0.44444,0,0,0.44445],"102":[0,0.69444,0.06944,0,0.30556],"103":[0.19444,0.44444,0.01389,0,0.5],"104":[0,0.69444,0,0,0.51667],"105":[0,0.67937,0,0,0.23889],"106":[0.19444,0.67937,0,0,0.26667],"107":[0,0.69444,0,0,0.48889],"108":[0,0.69444,0,0,0.23889],"109":[0,0.44444,0,0,0.79445],"110":[0,0.44444,0,0,0.51667],"111":[0,0.44444,0,0,0.5],"112":[0.19444,0.44444,0,0,0.51667],"113":[0.19444,0.44444,0,0,0.51667],"114":[0,0.44444,0.01389,0,0.34167],"115":[0,0.44444,0,0,0.38333],"116":[0,0.57143,0,0,0.36111],"117":[0,0.44444,0,0,0.51667],"118":[0,0.44444,0.01389,0,0.46111],"119":[0,0.44444,0.01389,0,0.68334],"120":[0,0.44444,0,0,0.46111],"121":[0.19444,0.44444,0.01389,0,0.46111],"122":[0,0.44444,0,0,0.43472],"126":[0.35,0.32659,0,0,0.5],"160":[0,0,0,0,0.25],"168":[0,0.67937,0,0,0.5],"176":[0,0.69444,0,0,0.66667],"184":[0.17014,0,0,0,0.44445],"305":[0,0.44444,0,0,0.23889],"567":[0.19444,0.44444,0,0,0.26667],"710":[0,0.69444,0,0,0.5],"711":[0,0.63194,0,0,0.5],"713":[0,0.60889,0,0,0.5],"714":[0,0.69444,0,0,0.5],"715":[0,0.69444,0,0,0.5],"728":[0,0.69444,0,0,0.5],"729":[0,0.67937,0,0,0.27778],"730":[0,0.69444,0,0,0.66667],"732":[0,0.67659,0,0,0.5],"733":[0,0.69444,0,0,0.5],"915":[0,0.69444,0,0,0.54167],"916":[0,0.69444,0,0,0.83334],"920":[0,0.69444,0,0,0.77778],"923":[0,0.69444,0,0,0.61111],"926":[0,0.69444,0,0,0.66667],"928":[0,0.69444,0,0,0.70834],"931":[0,0.69444,0,0,0.72222],"933":[0,0.69444,0,0,0.77778],"934":[0,0.69444,0,0,0.72222],"936":[0,0.69444,0,0,0.77778],"937":[0,0.69444,0,0,0.72222],"8211":[0,0.44444,0.02778,0,0.5],"8212":[0,0.44444,0.02778,0,1],"8216":[0,0.69444,0,0,0.27778],"8217":[0,0.69444,0,0,0.27778],"8220":[0,0.69444,0,0,0.5],"8221":[0,0.69444,0,0,0.5]},"Script-Regular":{"32":[0,0,0,0,0.25],"65":[0,0.7,0.22925,0,0.80253],"66":[0,0.7,0.04087,0,0.90757],"67":[0,0.7,0.1689,0,0.66619],"68":[0,0.7,0.09371,0,0.77443],"69":[0,0.7,0.18583,0,0.56162],"70":[0,0.7,0.13634,0,0.89544],"71":[0,0.7,0.17322,0,0.60961],"72":[0,0.7,0.29694,0,0.96919],"73":[0,0.7,0.19189,0,0.80907],"74":[0.27778,0.7,0.19189,0,1.05159],"75":[0,0.7,0.31259,0,0.91364],"76":[0,0.7,0.19189,0,0.87373],"77":[0,0.7,0.15981,0,1.08031],"78":[0,0.7,0.3525,0,0.9015],"79":[0,0.7,0.08078,0,0.73787],"80":[0,0.7,0.08078,0,1.01262],"81":[0,0.7,0.03305,0,0.88282],"82":[0,0.7,0.06259,0,0.85],"83":[0,0.7,0.19189,0,0.86767],"84":[0,0.7,0.29087,0,0.74697],"85":[0,0.7,0.25815,0,0.79996],"86":[0,0.7,0.27523,0,0.62204],"87":[0,0.7,0.27523,0,0.80532],"88":[0,0.7,0.26006,0,0.94445],"89":[0,0.7,0.2939,0,0.70961],"90":[0,0.7,0.24037,0,0.8212],"160":[0,0,0,0,0.25]},"Size1-Regular":{"32":[0,0,0,0,0.25],"40":[0.35001,0.85,0,0,0.45834],"41":[0.35001,0.85,0,0,0.45834],"47":[0.35001,0.85,0,0,0.57778],"91":[0.35001,0.85,0,0,0.41667],"92":[0.35001,0.85,0,0,0.57778],"93":[0.35001,0.85,0,0,0.41667],"123":[0.35001,0.85,0,0,0.58334],"125":[0.35001,0.85,0,0,0.58334],"160":[0,0,0,0,0.25],"710":[0,0.72222,0,0,0.55556],"732":[0,0.72222,0,0,0.55556],"770":[0,0.72222,0,0,0.55556],"771":[0,0.72222,0,0,0.55556],"8214":[-0.00099,0.601,0,0,0.77778],"8593":[0.00001,0.6,0,0,0.66667],"8595":[0.00001,0.6,0,0,0.66667],"8657":[0.00001,0.6,0,0,0.77778],"8659":[0.00001,0.6,0,0,0.77778],"8719":[0.25001,0.75,0,0,0.94445],"8720":[0.25001,0.75,0,0,0.94445],"8721":[0.25001,0.75,0,0,1.05556],"8730":[0.35001,0.85,0,0,1],"8739":[-0.00599,0.606,0,0,0.33333],"8741":[-0.00599,0.606,0,0,0.55556],"8747":[0.30612,0.805,0.19445,0,0.47222],"8748":[0.306,0.805,0.19445,0,0.47222],"8749":[0.306,0.805,0.19445,0,0.47222],"8750":[0.30612,0.805,0.19445,0,0.47222],"8896":[0.25001,0.75,0,0,0.83334],"8897":[0.25001,0.75,0,0,0.83334],"8898":[0.25001,0.75,0,0,0.83334],"8899":[0.25001,0.75,0,0,0.83334],"8968":[0.35001,0.85,0,0,0.47222],"8969":[0.35001,0.85,0,0,0.47222],"8970":[0.35001,0.85,0,0,0.47222],"8971":[0.35001,0.85,0,0,0.47222],"9168":[-0.00099,0.601,0,0,0.66667],"10216":[0.35001,0.85,0,0,0.47222],"10217":[0.35001,0.85,0,0,0.47222],"10752":[0.25001,0.75,0,0,1.11111],"10753":[0.25001,0.75,0,0,1.11111],"10754":[0.25001,0.75,0,0,1.11111],"10756":[0.25001,0.75,0,0,0.83334],"10758":[0.25001,0.75,0,0,0.83334]},"Size2-Regular":{"32":[0,0,0,0,0.25],"40":[0.65002,1.15,0,0,0.59722],"41":[0.65002,1.15,0,0,0.59722],"47":[0.65002,1.15,0,0,0.81111],"91":[0.65002,1.15,0,0,0.47222],"92":[0.65002,1.15,0,0,0.81111],"93":[0.65002,1.15,0,0,0.47222],"123":[0.65002,1.15,0,0,0.66667],"125":[0.65002,1.15,0,0,0.66667],"160":[0,0,0,0,0.25],"710":[0,0.75,0,0,1],"732":[0,0.75,0,0,1],"770":[0,0.75,0,0,1],"771":[0,0.75,0,0,1],"8719":[0.55001,1.05,0,0,1.27778],"8720":[0.55001,1.05,0,0,1.27778],"8721":[0.55001,1.05,0,0,1.44445],"8730":[0.65002,1.15,0,0,1],"8747":[0.86225,1.36,0.44445,0,0.55556],"8748":[0.862,1.36,0.44445,0,0.55556],"8749":[0.862,1.36,0.44445,0,0.55556],"8750":[0.86225,1.36,0.44445,0,0.55556],"8896":[0.55001,1.05,0,0,1.11111],"8897":[0.55001,1.05,0,0,1.11111],"8898":[0.55001,1.05,0,0,1.11111],"8899":[0.55001,1.05,0,0,1.11111],"8968":[0.65002,1.15,0,0,0.52778],"8969":[0.65002,1.15,0,0,0.52778],"8970":[0.65002,1.15,0,0,0.52778],"8971":[0.65002,1.15,0,0,0.52778],"10216":[0.65002,1.15,0,0,0.61111],"10217":[0.65002,1.15,0,0,0.61111],"10752":[0.55001,1.05,0,0,1.51112],"10753":[0.55001,1.05,0,0,1.51112],"10754":[0.55001,1.05,0,0,1.51112],"10756":[0.55001,1.05,0,0,1.11111],"10758":[0.55001,1.05,0,0,1.11111]},"Size3-Regular":{"32":[0,0,0,0,0.25],"40":[0.95003,1.45,0,0,0.73611],"41":[0.95003,1.45,0,0,0.73611],"47":[0.95003,1.45,0,0,1.04445],"91":[0.95003,1.45,0,0,0.52778],"92":[0.95003,1.45,0,0,1.04445],"93":[0.95003,1.45,0,0,0.52778],"123":[0.95003,1.45,0,0,0.75],"125":[0.95003,1.45,0,0,0.75],"160":[0,0,0,0,0.25],"710":[0,0.75,0,0,1.44445],"732":[0,0.75,0,0,1.44445],"770":[0,0.75,0,0,1.44445],"771":[0,0.75,0,0,1.44445],"8730":[0.95003,1.45,0,0,1],"8968":[0.95003,1.45,0,0,0.58334],"8969":[0.95003,1.45,0,0,0.58334],"8970":[0.95003,1.45,0,0,0.58334],"8971":[0.95003,1.45,0,0,0.58334],"10216":[0.95003,1.45,0,0,0.75],"10217":[0.95003,1.45,0,0,0.75]},"Size4-Regular":{"32":[0,0,0,0,0.25],"40":[1.25003,1.75,0,0,0.79167],"41":[1.25003,1.75,0,0,0.79167],"47":[1.25003,1.75,0,0,1.27778],"91":[1.25003,1.75,0,0,0.58334],"92":[1.25003,1.75,0,0,1.27778],"93":[1.25003,1.75,0,0,0.58334],"123":[1.25003,1.75,0,0,0.80556],"125":[1.25003,1.75,0,0,0.80556],"160":[0,0,0,0,0.25],"710":[0,0.825,0,0,1.8889],"732":[0,0.825,0,0,1.8889],"770":[0,0.825,0,0,1.8889],"771":[0,0.825,0,0,1.8889],"8730":[1.25003,1.75,0,0,1],"8968":[1.25003,1.75,0,0,0.63889],"8969":[1.25003,1.75,0,0,0.63889],"8970":[1.25003,1.75,0,0,0.63889],"8971":[1.25003,1.75,0,0,0.63889],"9115":[0.64502,1.155,0,0,0.875],"9116":[0.00001,0.6,0,0,0.875],"9117":[0.64502,1.155,0,0,0.875],"9118":[0.64502,1.155,0,0,0.875],"9119":[0.00001,0.6,0,0,0.875],"9120":[0.64502,1.155,0,0,0.875],"9121":[0.64502,1.155,0,0,0.66667],"9122":[-0.00099,0.601,0,0,0.66667],"9123":[0.64502,1.155,0,0,0.66667],"9124":[0.64502,1.155,0,0,0.66667],"9125":[-0.00099,0.601,0,0,0.66667],"9126":[0.64502,1.155,0,0,0.66667],"9127":[0.00001,0.9,0,0,0.88889],"9128":[0.65002,1.15,0,0,0.88889],"9129":[0.90001,0,0,0,0.88889],"9130":[0,0.3,0,0,0.88889],"9131":[0.00001,0.9,0,0,0.88889],"9132":[0.65002,1.15,0,0,0.88889],"9133":[0.90001,0,0,0,0.88889],"9143":[0.88502,0.915,0,0,1.05556],"10216":[1.25003,1.75,0,0,0.80556],"10217":[1.25003,1.75,0,0,0.80556],"57344":[-0.00499,0.605,0,0,1.05556],"57345":[-0.00499,0.605,0,0,1.05556],"57680":[0,0.12,0,0,0.45],"57681":[0,0.12,0,0,0.45],"57682":[0,0.12,0,0,0.45],"57683":[0,0.12,0,0,0.45]},"Typewriter-Regular":{"32":[0,0,0,0,0.525],"33":[0,0.61111,0,0,0.525],"34":[0,0.61111,0,0,0.525],"35":[0,0.61111,0,0,0.525],"36":[0.08333,0.69444,0,0,0.525],"37":[0.08333,0.69444,0,0,0.525],"38":[0,0.61111,0,0,0.525],"39":[0,0.61111,0,0,0.525],"40":[0.08333,0.69444,0,0,0.525],"41":[0.08333,0.69444,0,0,0.525],"42":[0,0.52083,0,0,0.525],"43":[-0.08056,0.53055,0,0,0.525],"44":[0.13889,0.125,0,0,0.525],"45":[-0.08056,0.53055,0,0,0.525],"46":[0,0.125,0,0,0.525],"47":[0.08333,0.69444,0,0,0.525],"48":[0,0.61111,0,0,0.525],"49":[0,0.61111,0,0,0.525],"50":[0,0.61111,0,0,0.525],"51":[0,0.61111,0,0,0.525],"52":[0,0.61111,0,0,0.525],"53":[0,0.61111,0,0,0.525],"54":[0,0.61111,0,0,0.525],"55":[0,0.61111,0,0,0.525],"56":[0,0.61111,0,0,0.525],"57":[0,0.61111,0,0,0.525],"58":[0,0.43056,0,0,0.525],"59":[0.13889,0.43056,0,0,0.525],"60":[-0.05556,0.55556,0,0,0.525],"61":[-0.19549,0.41562,0,0,0.525],"62":[-0.05556,0.55556,0,0,0.525],"63":[0,0.61111,0,0,0.525],"64":[0,0.61111,0,0,0.525],"65":[0,0.61111,0,0,0.525],"66":[0,0.61111,0,0,0.525],"67":[0,0.61111,0,0,0.525],"68":[0,0.61111,0,0,0.525],"69":[0,0.61111,0,0,0.525],"70":[0,0.61111,0,0,0.525],"71":[0,0.61111,0,0,0.525],"72":[0,0.61111,0,0,0.525],"73":[0,0.61111,0,0,0.525],"74":[0,0.61111,0,0,0.525],"75":[0,0.61111,0,0,0.525],"76":[0,0.61111,0,0,0.525],"77":[0,0.61111,0,0,0.525],"78":[0,0.61111,0,0,0.525],"79":[0,0.61111,0,0,0.525],"80":[0,0.61111,0,0,0.525],"81":[0.13889,0.61111,0,0,0.525],"82":[0,0.61111,0,0,0.525],"83":[0,0.61111,0,0,0.525],"84":[0,0.61111,0,0,0.525],"85":[0,0.61111,0,0,0.525],"86":[0,0.61111,0,0,0.525],"87":[0,0.61111,0,0,0.525],"88":[0,0.61111,0,0,0.525],"89":[0,0.61111,0,0,0.525],"90":[0,0.61111,0,0,0.525],"91":[0.08333,0.69444,0,0,0.525],"92":[0.08333,0.69444,0,0,0.525],"93":[0.08333,0.69444,0,0,0.525],"94":[0,0.61111,0,0,0.525],"95":[0.09514,0,0,0,0.525],"96":[0,0.61111,0,0,0.525],"97":[0,0.43056,0,0,0.525],"98":[0,0.61111,0,0,0.525],"99":[0,0.43056,0,0,0.525],"100":[0,0.61111,0,0,0.525],"101":[0,0.43056,0,0,0.525],"102":[0,0.61111,0,0,0.525],"103":[0.22222,0.43056,0,0,0.525],"104":[0,0.61111,0,0,0.525],"105":[0,0.61111,0,0,0.525],"106":[0.22222,0.61111,0,0,0.525],"107":[0,0.61111,0,0,0.525],"108":[0,0.61111,0,0,0.525],"109":[0,0.43056,0,0,0.525],"110":[0,0.43056,0,0,0.525],"111":[0,0.43056,0,0,0.525],"112":[0.22222,0.43056,0,0,0.525],"113":[0.22222,0.43056,0,0,0.525],"114":[0,0.43056,0,0,0.525],"115":[0,0.43056,0,0,0.525],"116":[0,0.55358,0,0,0.525],"117":[0,0.43056,0,0,0.525],"118":[0,0.43056,0,0,0.525],"119":[0,0.43056,0,0,0.525],"120":[0,0.43056,0,0,0.525],"121":[0.22222,0.43056,0,0,0.525],"122":[0,0.43056,0,0,0.525],"123":[0.08333,0.69444,0,0,0.525],"124":[0.08333,0.69444,0,0,0.525],"125":[0.08333,0.69444,0,0,0.525],"126":[0,0.61111,0,0,0.525],"127":[0,0.61111,0,0,0.525],"160":[0,0,0,0,0.525],"176":[0,0.61111,0,0,0.525],"184":[0.19445,0,0,0,0.525],"305":[0,0.43056,0,0,0.525],"567":[0.22222,0.43056,0,0,0.525],"711":[0,0.56597,0,0,0.525],"713":[0,0.56555,0,0,0.525],"714":[0,0.61111,0,0,0.525],"715":[0,0.61111,0,0,0.525],"728":[0,0.61111,0,0,0.525],"730":[0,0.61111,0,0,0.525],"770":[0,0.61111,0,0,0.525],"771":[0,0.61111,0,0,0.525],"776":[0,0.61111,0,0,0.525],"915":[0,0.61111,0,0,0.525],"916":[0,0.61111,0,0,0.525],"920":[0,0.61111,0,0,0.525],"923":[0,0.61111,0,0,0.525],"926":[0,0.61111,0,0,0.525],"928":[0,0.61111,0,0,0.525],"931":[0,0.61111,0,0,0.525],"933":[0,0.61111,0,0,0.525],"934":[0,0.61111,0,0,0.525],"936":[0,0.61111,0,0,0.525],"937":[0,0.61111,0,0,0.525],"8216":[0,0.61111,0,0,0.525],"8217":[0,0.61111,0,0,0.525],"8242":[0,0.61111,0,0,0.525],"9251":[0.11111,0.21944,0,0,0.525]}},BR={slant:[0.25,0.25,0.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[0.431,0.431,0.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[0.677,0.732,0.925],num2:[0.394,0.384,0.387],num3:[0.444,0.471,0.504],denom1:[0.686,0.752,1.025],denom2:[0.345,0.344,0.532],sup1:[0.413,0.503,0.504],sup2:[0.363,0.431,0.404],sup3:[0.289,0.286,0.294],sub1:[0.15,0.143,0.2],sub2:[0.247,0.286,0.4],supDrop:[0.386,0.353,0.494],subDrop:[0.05,0.071,0.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[0.25,0.25,0.25],defaultRuleThickness:[0.04,0.049,0.049],bigOpSpacing1:[0.111,0.111,0.111],bigOpSpacing2:[0.166,0.166,0.166],bigOpSpacing3:[0.2,0.2,0.2],bigOpSpacing4:[0.6,0.611,0.611],bigOpSpacing5:[0.1,0.143,0.143],sqrtRuleThickness:[0.04,0.04,0.04],ptPerEm:[10,10,10],doubleRuleSep:[0.2,0.2,0.2],arrayRuleWidth:[0.04,0.04,0.04],fboxsep:[0.3,0.3,0.3],fboxrule:[0.04,0.04,0.04]},T2A={"Å":"A","Ð":"D","Þ":"o","å":"a","ð":"d","þ":"o","А":"A","Б":"B","В":"B","Г":"F","Д":"A","Е":"E","Ж":"K","З":"3","И":"N","Й":"N","К":"K","Л":"N","М":"M","Н":"H","О":"O","П":"N","Р":"P","С":"C","Т":"T","У":"y","Ф":"O","Х":"X","Ц":"U","Ч":"h","Ш":"W","Щ":"W","Ъ":"B","Ы":"X","Ь":"B","Э":"3","Ю":"X","Я":"R","а":"a","б":"b","в":"a","г":"r","д":"y","е":"e","ж":"m","з":"e","и":"n","й":"n","к":"n","л":"n","м":"m","н":"n","о":"o","п":"n","р":"p","с":"c","т":"o","у":"y","ф":"b","х":"x","ц":"n","ч":"n","ш":"w","щ":"w","ъ":"a","ы":"m","ь":"a","э":"e","ю":"m","я":"r"};sV={};Ca={math:{},text:{}};V(iA,fA,XA,"≡","\\equiv",!0);V(iA,fA,XA,"≺","\\prec",!0);V(iA,fA,XA,"≻","\\succ",!0);V(iA,fA,XA,"∼","\\sim",!0);V(iA,fA,XA,"⊥","\\perp");V(iA,fA,XA,"⪯","\\preceq",!0);V(iA,fA,XA,"⪰","\\succeq",!0);V(iA,fA,XA,"≃","\\simeq",!0);V(iA,fA,XA,"∣","\\mid",!0);V(iA,fA,XA,"≪","\\ll",!0);V(iA,fA,XA,"≫","\\gg",!0);V(iA,fA,XA,"≍","\\asymp",!0);V(iA,fA,XA,"∥","\\parallel");V(iA,fA,XA,"⋈","\\bowtie",!0);V(iA,fA,XA,"⌣","\\smile",!0);V(iA,fA,XA,"⊑","\\sqsubseteq",!0);V(iA,fA,XA,"⊒","\\sqsupseteq",!0);V(iA,fA,XA,"≐","\\doteq",!0);V(iA,fA,XA,"⌢","\\frown",!0);V(iA,fA,XA,"∋","\\ni",!0);V(iA,fA,XA,"∝","\\propto",!0);V(iA,fA,XA,"⊢","\\vdash",!0);V(iA,fA,XA,"⊣","\\dashv",!0);V(iA,fA,XA,"∋","\\owns");V(iA,fA,fb,".","\\ldotp");V(iA,fA,fb,"⋅","\\cdotp");V(iA,fA,fb,"⋅","·");V(Xe,fA,re,"⋅","·");V(iA,fA,re,"#","\\#");V(Xe,fA,re,"#","\\#");V(iA,fA,re,"&","\\&");V(Xe,fA,re,"&","\\&");V(iA,fA,re,"ℵ","\\aleph",!0);V(iA,fA,re,"∀","\\forall",!0);V(iA,fA,re,"ℏ","\\hbar",!0);V(iA,fA,re,"∃","\\exists",!0);V(iA,fA,re,"∇","\\nabla",!0);V(iA,fA,re,"♭","\\flat",!0);V(iA,fA,re,"ℓ","\\ell",!0);V(iA,fA,re,"♮","\\natural",!0);V(iA,fA,re,"♣","\\clubsuit",!0);V(iA,fA,re,"℘","\\wp",!0);V(iA,fA,re,"♯","\\sharp",!0);V(iA,fA,re,"♢","\\diamondsuit",!0);V(iA,fA,re,"ℜ","\\Re",!0);V(iA,fA,re,"♡","\\heartsuit",!0);V(iA,fA,re,"ℑ","\\Im",!0);V(iA,fA,re,"♠","\\spadesuit",!0);V(iA,fA,re,"§","\\S",!0);V(Xe,fA,re,"§","\\S");V(iA,fA,re,"¶","\\P",!0);V(Xe,fA,re,"¶","\\P");V(iA,fA,re,"†","\\dag");V(Xe,fA,re,"†","\\dag");V(Xe,fA,re,"†","\\textdagger");V(iA,fA,re,"‡","\\ddag");V(Xe,fA,re,"‡","\\ddag");V(Xe,fA,re,"‡","\\textdaggerdbl");V(iA,fA,cs,"⎱","\\rmoustache",!0);V(iA,fA,$l,"⎰","\\lmoustache",!0);V(iA,fA,cs,"⟯","\\rgroup",!0);V(iA,fA,$l,"⟮","\\lgroup",!0);V(iA,fA,xt,"∓","\\mp",!0);V(iA,fA,xt,"⊖","\\ominus",!0);V(iA,fA,xt,"⊎","\\uplus",!0);V(iA,fA,xt,"⊓","\\sqcap",!0);V(iA,fA,xt,"∗","\\ast");V(iA,fA,xt,"⊔","\\sqcup",!0);V(iA,fA,xt,"◯","\\bigcirc",!0);V(iA,fA,xt,"∙","\\bullet",!0);V(iA,fA,xt,"‡","\\ddagger");V(iA,fA,xt,"≀","\\wr",!0);V(iA,fA,xt,"⨿","\\amalg");V(iA,fA,xt,"&","\\And");V(iA,fA,XA,"⟵","\\longleftarrow",!0);V(iA,fA,XA,"⇐","\\Leftarrow",!0);V(iA,fA,XA,"⟸","\\Longleftarrow",!0);V(iA,fA,XA,"⟶","\\longrightarrow",!0);V(iA,fA,XA,"⇒","\\Rightarrow",!0);V(iA,fA,XA,"⟹","\\Longrightarrow",!0);V(iA,fA,XA,"↔","\\leftrightarrow",!0);V(iA,fA,XA,"⟷","\\longleftrightarrow",!0);V(iA,fA,XA,"⇔","\\Leftrightarrow",!0);V(iA,fA,XA,"⟺","\\Longleftrightarrow",!0);V(iA,fA,XA,"↦","\\mapsto",!0);V(iA,fA,XA,"⟼","\\longmapsto",!0);V(iA,fA,XA,"↗","\\nearrow",!0);V(iA,fA,XA,"↩","\\hookleftarrow",!0);V(iA,fA,XA,"↪","\\hookrightarrow",!0);V(iA,fA,XA,"↘","\\searrow",!0);V(iA,fA,XA,"↼","\\leftharpoonup",!0);V(iA,fA,XA,"⇀","\\rightharpoonup",!0);V(iA,fA,XA,"↙","\\swarrow",!0);V(iA,fA,XA,"↽","\\leftharpoondown",!0);V(iA,fA,XA,"⇁","\\rightharpoondown",!0);V(iA,fA,XA,"↖","\\nwarrow",!0);V(iA,fA,XA,"⇌","\\rightleftharpoons",!0);V(iA,VA,XA,"≮","\\nless",!0);V(iA,VA,XA,"","\\@nleqslant");V(iA,VA,XA,"","\\@nleqq");V(iA,VA,XA,"⪇","\\lneq",!0);V(iA,VA,XA,"≨","\\lneqq",!0);V(iA,VA,XA,"","\\@lvertneqq");V(iA,VA,XA,"⋦","\\lnsim",!0);V(iA,VA,XA,"⪉","\\lnapprox",!0);V(iA,VA,XA,"⊀","\\nprec",!0);V(iA,VA,XA,"⋠","\\npreceq",!0);V(iA,VA,XA,"⋨","\\precnsim",!0);V(iA,VA,XA,"⪹","\\precnapprox",!0);V(iA,VA,XA,"≁","\\nsim",!0);V(iA,VA,XA,"","\\@nshortmid");V(iA,VA,XA,"∤","\\nmid",!0);V(iA,VA,XA,"⊬","\\nvdash",!0);V(iA,VA,XA,"⊭","\\nvDash",!0);V(iA,VA,XA,"⋪","\\ntriangleleft");V(iA,VA,XA,"⋬","\\ntrianglelefteq",!0);V(iA,VA,XA,"⊊","\\subsetneq",!0);V(iA,VA,XA,"","\\@varsubsetneq");V(iA,VA,XA,"⫋","\\subsetneqq",!0);V(iA,VA,XA,"","\\@varsubsetneqq");V(iA,VA,XA,"≯","\\ngtr",!0);V(iA,VA,XA,"","\\@ngeqslant");V(iA,VA,XA,"","\\@ngeqq");V(iA,VA,XA,"⪈","\\gneq",!0);V(iA,VA,XA,"≩","\\gneqq",!0);V(iA,VA,XA,"","\\@gvertneqq");V(iA,VA,XA,"⋧","\\gnsim",!0);V(iA,VA,XA,"⪊","\\gnapprox",!0);V(iA,VA,XA,"⊁","\\nsucc",!0);V(iA,VA,XA,"⋡","\\nsucceq",!0);V(iA,VA,XA,"⋩","\\succnsim",!0);V(iA,VA,XA,"⪺","\\succnapprox",!0);V(iA,VA,XA,"≆","\\ncong",!0);V(iA,VA,XA,"","\\@nshortparallel");V(iA,VA,XA,"∦","\\nparallel",!0);V(iA,VA,XA,"⊯","\\nVDash",!0);V(iA,VA,XA,"⋫","\\ntriangleright");V(iA,VA,XA,"⋭","\\ntrianglerighteq",!0);V(iA,VA,XA,"","\\@nsupseteqq");V(iA,VA,XA,"⊋","\\supsetneq",!0);V(iA,VA,XA,"","\\@varsupsetneq");V(iA,VA,XA,"⫌","\\supsetneqq",!0);V(iA,VA,XA,"","\\@varsupsetneqq");V(iA,VA,XA,"⊮","\\nVdash",!0);V(iA,VA,XA,"⪵","\\precneqq",!0);V(iA,VA,XA,"⪶","\\succneqq",!0);V(iA,VA,XA,"","\\@nsubseteqq");V(iA,VA,xt,"⊴","\\unlhd");V(iA,VA,xt,"⊵","\\unrhd");V(iA,VA,XA,"↚","\\nleftarrow",!0);V(iA,VA,XA,"↛","\\nrightarrow",!0);V(iA,VA,XA,"⇍","\\nLeftarrow",!0);V(iA,VA,XA,"⇏","\\nRightarrow",!0);V(iA,VA,XA,"↮","\\nleftrightarrow",!0);V(iA,VA,XA,"⇎","\\nLeftrightarrow",!0);V(iA,VA,XA,"△","\\vartriangle");V(iA,VA,re,"ℏ","\\hslash");V(iA,VA,re,"▽","\\triangledown");V(iA,VA,re,"◊","\\lozenge");V(iA,VA,re,"Ⓢ","\\circledS");V(iA,VA,re,"®","\\circledR");V(Xe,VA,re,"®","\\circledR");V(iA,VA,re,"∡","\\measuredangle",!0);V(iA,VA,re,"∄","\\nexists");V(iA,VA,re,"℧","\\mho");V(iA,VA,re,"Ⅎ","\\Finv",!0);V(iA,VA,re,"⅁","\\Game",!0);V(iA,VA,re,"‵","\\backprime");V(iA,VA,re,"▲","\\blacktriangle");V(iA,VA,re,"▼","\\blacktriangledown");V(iA,VA,re,"■","\\blacksquare");V(iA,VA,re,"⧫","\\blacklozenge");V(iA,VA,re,"★","\\bigstar");V(iA,VA,re,"∢","\\sphericalangle",!0);V(iA,VA,re,"∁","\\complement",!0);V(iA,VA,re,"ð","\\eth",!0);V(Xe,fA,re,"ð","ð");V(iA,VA,re,"╱","\\diagup");V(iA,VA,re,"╲","\\diagdown");V(iA,VA,re,"□","\\square");V(iA,VA,re,"□","\\Box");V(iA,VA,re,"◊","\\Diamond");V(iA,VA,re,"¥","\\yen",!0);V(Xe,VA,re,"¥","\\yen",!0);V(iA,VA,re,"✓","\\checkmark",!0);V(Xe,VA,re,"✓","\\checkmark");V(iA,VA,re,"ℶ","\\beth",!0);V(iA,VA,re,"ℸ","\\daleth",!0);V(iA,VA,re,"ℷ","\\gimel",!0);V(iA,VA,re,"ϝ","\\digamma",!0);V(iA,VA,re,"ϰ","\\varkappa");V(iA,VA,$l,"┌","\\@ulcorner",!0);V(iA,VA,cs,"┐","\\@urcorner",!0);V(iA,VA,$l,"└","\\@llcorner",!0);V(iA,VA,cs,"┘","\\@lrcorner",!0);V(iA,VA,XA,"≦","\\leqq",!0);V(iA,VA,XA,"⩽","\\leqslant",!0);V(iA,VA,XA,"⪕","\\eqslantless",!0);V(iA,VA,XA,"≲","\\lesssim",!0);V(iA,VA,XA,"⪅","\\lessapprox",!0);V(iA,VA,XA,"≊","\\approxeq",!0);V(iA,VA,xt,"⋖","\\lessdot");V(iA,VA,XA,"⋘","\\lll",!0);V(iA,VA,XA,"≶","\\lessgtr",!0);V(iA,VA,XA,"⋚","\\lesseqgtr",!0);V(iA,VA,XA,"⪋","\\lesseqqgtr",!0);V(iA,VA,XA,"≑","\\doteqdot");V(iA,VA,XA,"≓","\\risingdotseq",!0);V(iA,VA,XA,"≒","\\fallingdotseq",!0);V(iA,VA,XA,"∽","\\backsim",!0);V(iA,VA,XA,"⋍","\\backsimeq",!0);V(iA,VA,XA,"⫅","\\subseteqq",!0);V(iA,VA,XA,"⋐","\\Subset",!0);V(iA,VA,XA,"⊏","\\sqsubset",!0);V(iA,VA,XA,"≼","\\preccurlyeq",!0);V(iA,VA,XA,"⋞","\\curlyeqprec",!0);V(iA,VA,XA,"≾","\\precsim",!0);V(iA,VA,XA,"⪷","\\precapprox",!0);V(iA,VA,XA,"⊲","\\vartriangleleft");V(iA,VA,XA,"⊴","\\trianglelefteq");V(iA,VA,XA,"⊨","\\vDash",!0);V(iA,VA,XA,"⊪","\\Vvdash",!0);V(iA,VA,XA,"⌣","\\smallsmile");V(iA,VA,XA,"⌢","\\smallfrown");V(iA,VA,XA,"≏","\\bumpeq",!0);V(iA,VA,XA,"≎","\\Bumpeq",!0);V(iA,VA,XA,"≧","\\geqq",!0);V(iA,VA,XA,"⩾","\\geqslant",!0);V(iA,VA,XA,"⪖","\\eqslantgtr",!0);V(iA,VA,XA,"≳","\\gtrsim",!0);V(iA,VA,XA,"⪆","\\gtrapprox",!0);V(iA,VA,xt,"⋗","\\gtrdot");V(iA,VA,XA,"⋙","\\ggg",!0);V(iA,VA,XA,"≷","\\gtrless",!0);V(iA,VA,XA,"⋛","\\gtreqless",!0);V(iA,VA,XA,"⪌","\\gtreqqless",!0);V(iA,VA,XA,"≖","\\eqcirc",!0);V(iA,VA,XA,"≗","\\circeq",!0);V(iA,VA,XA,"≜","\\triangleq",!0);V(iA,VA,XA,"∼","\\thicksim");V(iA,VA,XA,"≈","\\thickapprox");V(iA,VA,XA,"⫆","\\supseteqq",!0);V(iA,VA,XA,"⋑","\\Supset",!0);V(iA,VA,XA,"⊐","\\sqsupset",!0);V(iA,VA,XA,"≽","\\succcurlyeq",!0);V(iA,VA,XA,"⋟","\\curlyeqsucc",!0);V(iA,VA,XA,"≿","\\succsim",!0);V(iA,VA,XA,"⪸","\\succapprox",!0);V(iA,VA,XA,"⊳","\\vartriangleright");V(iA,VA,XA,"⊵","\\trianglerighteq");V(iA,VA,XA,"⊩","\\Vdash",!0);V(iA,VA,XA,"∣","\\shortmid");V(iA,VA,XA,"∥","\\shortparallel");V(iA,VA,XA,"≬","\\between",!0);V(iA,VA,XA,"⋔","\\pitchfork",!0);V(iA,VA,XA,"∝","\\varpropto");V(iA,VA,XA,"◀","\\blacktriangleleft");V(iA,VA,XA,"∴","\\therefore",!0);V(iA,VA,XA,"∍","\\backepsilon");V(iA,VA,XA,"▶","\\blacktriangleright");V(iA,VA,XA,"∵","\\because",!0);V(iA,VA,XA,"⋘","\\llless");V(iA,VA,XA,"⋙","\\gggtr");V(iA,VA,xt,"⊲","\\lhd");V(iA,VA,xt,"⊳","\\rhd");V(iA,VA,XA,"≂","\\eqsim",!0);V(iA,fA,XA,"⋈","\\Join");V(iA,VA,XA,"≑","\\Doteq",!0);V(iA,VA,xt,"∔","\\dotplus",!0);V(iA,VA,xt,"∖","\\smallsetminus");V(iA,VA,xt,"⋒","\\Cap",!0);V(iA,VA,xt,"⋓","\\Cup",!0);V(iA,VA,xt,"⩞","\\doublebarwedge",!0);V(iA,VA,xt,"⊟","\\boxminus",!0);V(iA,VA,xt,"⊞","\\boxplus",!0);V(iA,VA,xt,"⋇","\\divideontimes",!0);V(iA,VA,xt,"⋉","\\ltimes",!0);V(iA,VA,xt,"⋊","\\rtimes",!0);V(iA,VA,xt,"⋋","\\leftthreetimes",!0);V(iA,VA,xt,"⋌","\\rightthreetimes",!0);V(iA,VA,xt,"⋏","\\curlywedge",!0);V(iA,VA,xt,"⋎","\\curlyvee",!0);V(iA,VA,xt,"⊝","\\circleddash",!0);V(iA,VA,xt,"⊛","\\circledast",!0);V(iA,VA,xt,"⋅","\\centerdot");V(iA,VA,xt,"⊺","\\intercal",!0);V(iA,VA,xt,"⋒","\\doublecap");V(iA,VA,xt,"⋓","\\doublecup");V(iA,VA,xt,"⊠","\\boxtimes",!0);V(iA,VA,XA,"⇢","\\dashrightarrow",!0);V(iA,VA,XA,"⇠","\\dashleftarrow",!0);V(iA,VA,XA,"⇇","\\leftleftarrows",!0);V(iA,VA,XA,"⇆","\\leftrightarrows",!0);V(iA,VA,XA,"⇚","\\Lleftarrow",!0);V(iA,VA,XA,"↞","\\twoheadleftarrow",!0);V(iA,VA,XA,"↢","\\leftarrowtail",!0);V(iA,VA,XA,"↫","\\looparrowleft",!0);V(iA,VA,XA,"⇋","\\leftrightharpoons",!0);V(iA,VA,XA,"↶","\\curvearrowleft",!0);V(iA,VA,XA,"↺","\\circlearrowleft",!0);V(iA,VA,XA,"↰","\\Lsh",!0);V(iA,VA,XA,"⇈","\\upuparrows",!0);V(iA,VA,XA,"↿","\\upharpoonleft",!0);V(iA,VA,XA,"⇃","\\downharpoonleft",!0);V(iA,fA,XA,"⊶","\\origof",!0);V(iA,fA,XA,"⊷","\\imageof",!0);V(iA,VA,XA,"⊸","\\multimap",!0);V(iA,VA,XA,"↭","\\leftrightsquigarrow",!0);V(iA,VA,XA,"⇉","\\rightrightarrows",!0);V(iA,VA,XA,"⇄","\\rightleftarrows",!0);V(iA,VA,XA,"↠","\\twoheadrightarrow",!0);V(iA,VA,XA,"↣","\\rightarrowtail",!0);V(iA,VA,XA,"↬","\\looparrowright",!0);V(iA,VA,XA,"↷","\\curvearrowright",!0);V(iA,VA,XA,"↻","\\circlearrowright",!0);V(iA,VA,XA,"↱","\\Rsh",!0);V(iA,VA,XA,"⇊","\\downdownarrows",!0);V(iA,VA,XA,"↾","\\upharpoonright",!0);V(iA,VA,XA,"⇂","\\downharpoonright",!0);V(iA,VA,XA,"⇝","\\rightsquigarrow",!0);V(iA,VA,XA,"⇝","\\leadsto");V(iA,VA,XA,"⇛","\\Rrightarrow",!0);V(iA,VA,XA,"↾","\\restriction");V(iA,fA,re,"‘","`");V(iA,fA,re,"$","\\$");V(Xe,fA,re,"$","\\$");V(Xe,fA,re,"$","\\textdollar");V(iA,fA,re,"%","\\%");V(Xe,fA,re,"%","\\%");V(iA,fA,re,"_","\\_");V(Xe,fA,re,"_","\\_");V(Xe,fA,re,"_","\\textunderscore");V(iA,fA,re,"∠","\\angle",!0);V(iA,fA,re,"∞","\\infty",!0);V(iA,fA,re,"′","\\prime");V(iA,fA,re,"△","\\triangle");V(iA,fA,re,"Γ","\\Gamma",!0);V(iA,fA,re,"Δ","\\Delta",!0);V(iA,fA,re,"Θ","\\Theta",!0);V(iA,fA,re,"Λ","\\Lambda",!0);V(iA,fA,re,"Ξ","\\Xi",!0);V(iA,fA,re,"Π","\\Pi",!0);V(iA,fA,re,"Σ","\\Sigma",!0);V(iA,fA,re,"Υ","\\Upsilon",!0);V(iA,fA,re,"Φ","\\Phi",!0);V(iA,fA,re,"Ψ","\\Psi",!0);V(iA,fA,re,"Ω","\\Omega",!0);V(iA,fA,re,"A","Α");V(iA,fA,re,"B","Β");V(iA,fA,re,"E","Ε");V(iA,fA,re,"Z","Ζ");V(iA,fA,re,"H","Η");V(iA,fA,re,"I","Ι");V(iA,fA,re,"K","Κ");V(iA,fA,re,"M","Μ");V(iA,fA,re,"N","Ν");V(iA,fA,re,"O","Ο");V(iA,fA,re,"P","Ρ");V(iA,fA,re,"T","Τ");V(iA,fA,re,"X","Χ");V(iA,fA,re,"¬","\\neg",!0);V(iA,fA,re,"¬","\\lnot");V(iA,fA,re,"⊤","\\top");V(iA,fA,re,"⊥","\\bot");V(iA,fA,re,"∅","\\emptyset");V(iA,VA,re,"∅","\\varnothing");V(iA,fA,gr,"α","\\alpha",!0);V(iA,fA,gr,"β","\\beta",!0);V(iA,fA,gr,"γ","\\gamma",!0);V(iA,fA,gr,"δ","\\delta",!0);V(iA,fA,gr,"ϵ","\\epsilon",!0);V(iA,fA,gr,"ζ","\\zeta",!0);V(iA,fA,gr,"η","\\eta",!0);V(iA,fA,gr,"θ","\\theta",!0);V(iA,fA,gr,"ι","\\iota",!0);V(iA,fA,gr,"κ","\\kappa",!0);V(iA,fA,gr,"λ","\\lambda",!0);V(iA,fA,gr,"μ","\\mu",!0);V(iA,fA,gr,"ν","\\nu",!0);V(iA,fA,gr,"ξ","\\xi",!0);V(iA,fA,gr,"ο","\\omicron",!0);V(iA,fA,gr,"π","\\pi",!0);V(iA,fA,gr,"ρ","\\rho",!0);V(iA,fA,gr,"σ","\\sigma",!0);V(iA,fA,gr,"τ","\\tau",!0);V(iA,fA,gr,"υ","\\upsilon",!0);V(iA,fA,gr,"ϕ","\\phi",!0);V(iA,fA,gr,"χ","\\chi",!0);V(iA,fA,gr,"ψ","\\psi",!0);V(iA,fA,gr,"ω","\\omega",!0);V(iA,fA,gr,"ε","\\varepsilon",!0);V(iA,fA,gr,"ϑ","\\vartheta",!0);V(iA,fA,gr,"ϖ","\\varpi",!0);V(iA,fA,gr,"ϱ","\\varrho",!0);V(iA,fA,gr,"ς","\\varsigma",!0);V(iA,fA,gr,"φ","\\varphi",!0);V(iA,fA,xt,"∗","*",!0);V(iA,fA,xt,"+","+");V(iA,fA,xt,"−","-",!0);V(iA,fA,xt,"⋅","\\cdot",!0);V(iA,fA,xt,"∘","\\circ",!0);V(iA,fA,xt,"÷","\\div",!0);V(iA,fA,xt,"±","\\pm",!0);V(iA,fA,xt,"×","\\times",!0);V(iA,fA,xt,"∩","\\cap",!0);V(iA,fA,xt,"∪","\\cup",!0);V(iA,fA,xt,"∖","\\setminus",!0);V(iA,fA,xt,"∧","\\land");V(iA,fA,xt,"∨","\\lor");V(iA,fA,xt,"∧","\\wedge",!0);V(iA,fA,xt,"∨","\\vee",!0);V(iA,fA,re,"√","\\surd");V(iA,fA,$l,"⟨","\\langle",!0);V(iA,fA,$l,"∣","\\lvert");V(iA,fA,$l,"∥","\\lVert");V(iA,fA,cs,"?","?");V(iA,fA,cs,"!","!");V(iA,fA,cs,"⟩","\\rangle",!0);V(iA,fA,cs,"∣","\\rvert");V(iA,fA,cs,"∥","\\rVert");V(iA,fA,XA,"=","=");V(iA,fA,XA,":",":");V(iA,fA,XA,"≈","\\approx",!0);V(iA,fA,XA,"≅","\\cong",!0);V(iA,fA,XA,"≥","\\ge");V(iA,fA,XA,"≥","\\geq",!0);V(iA,fA,XA,"←","\\gets");V(iA,fA,XA,">","\\gt",!0);V(iA,fA,XA,"∈","\\in",!0);V(iA,fA,XA,"","\\@not");V(iA,fA,XA,"⊂","\\subset",!0);V(iA,fA,XA,"⊃","\\supset",!0);V(iA,fA,XA,"⊆","\\subseteq",!0);V(iA,fA,XA,"⊇","\\supseteq",!0);V(iA,VA,XA,"⊈","\\nsubseteq",!0);V(iA,VA,XA,"⊉","\\nsupseteq",!0);V(iA,fA,XA,"⊨","\\models");V(iA,fA,XA,"←","\\leftarrow",!0);V(iA,fA,XA,"≤","\\le");V(iA,fA,XA,"≤","\\leq",!0);V(iA,fA,XA,"<","\\lt",!0);V(iA,fA,XA,"→","\\rightarrow",!0);V(iA,fA,XA,"→","\\to");V(iA,VA,XA,"≱","\\ngeq",!0);V(iA,VA,XA,"≰","\\nleq",!0);V(iA,fA,oI," ","\\ ");V(iA,fA,oI," ","\\space");V(iA,fA,oI," ","\\nobreakspace");V(Xe,fA,oI," ","\\ ");V(Xe,fA,oI," "," ");V(Xe,fA,oI," ","\\space");V(Xe,fA,oI," ","\\nobreakspace");V(iA,fA,oI,"","\\nobreak");V(iA,fA,oI,"","\\allowbreak");V(iA,fA,fb,",",",");V(iA,fA,fb,";",";");V(iA,VA,xt,"⊼","\\barwedge",!0);V(iA,VA,xt,"⊻","\\veebar",!0);V(iA,fA,xt,"⊙","\\odot",!0);V(iA,fA,xt,"⊕","\\oplus",!0);V(iA,fA,xt,"⊗","\\otimes",!0);V(iA,fA,re,"∂","\\partial",!0);V(iA,fA,xt,"⊘","\\oslash",!0);V(iA,VA,xt,"⊚","\\circledcirc",!0);V(iA,VA,xt,"⊡","\\boxdot",!0);V(iA,fA,xt,"△","\\bigtriangleup");V(iA,fA,xt,"▽","\\bigtriangledown");V(iA,fA,xt,"†","\\dagger");V(iA,fA,xt,"⋄","\\diamond");V(iA,fA,xt,"⋆","\\star");V(iA,fA,xt,"◃","\\triangleleft");V(iA,fA,xt,"▹","\\triangleright");V(iA,fA,$l,"{","\\{");V(Xe,fA,re,"{","\\{");V(Xe,fA,re,"{","\\textbraceleft");V(iA,fA,cs,"}","\\}");V(Xe,fA,re,"}","\\}");V(Xe,fA,re,"}","\\textbraceright");V(iA,fA,$l,"{","\\lbrace");V(iA,fA,cs,"}","\\rbrace");V(iA,fA,$l,"[","\\lbrack",!0);V(Xe,fA,re,"[","\\lbrack",!0);V(iA,fA,cs,"]","\\rbrack",!0);V(Xe,fA,re,"]","\\rbrack",!0);V(iA,fA,$l,"(","\\lparen",!0);V(iA,fA,cs,")","\\rparen",!0);V(Xe,fA,re,"<","\\textless",!0);V(Xe,fA,re,">","\\textgreater",!0);V(iA,fA,$l,"⌊","\\lfloor",!0);V(iA,fA,cs,"⌋","\\rfloor",!0);V(iA,fA,$l,"⌈","\\lceil",!0);V(iA,fA,cs,"⌉","\\rceil",!0);V(iA,fA,re,"\\","\\backslash");V(iA,fA,re,"∣","|");V(iA,fA,re,"∣","\\vert");V(Xe,fA,re,"|","\\textbar",!0);V(iA,fA,re,"∥","\\|");V(iA,fA,re,"∥","\\Vert");V(Xe,fA,re,"∥","\\textbardbl");V(Xe,fA,re,"~","\\textasciitilde");V(Xe,fA,re,"\\","\\textbackslash");V(Xe,fA,re,"^","\\textasciicircum");V(iA,fA,XA,"↑","\\uparrow",!0);V(iA,fA,XA,"⇑","\\Uparrow",!0);V(iA,fA,XA,"↓","\\downarrow",!0);V(iA,fA,XA,"⇓","\\Downarrow",!0);V(iA,fA,XA,"↕","\\updownarrow",!0);V(iA,fA,XA,"⇕","\\Updownarrow",!0);V(iA,fA,Sn,"∐","\\coprod");V(iA,fA,Sn,"⋁","\\bigvee");V(iA,fA,Sn,"⋀","\\bigwedge");V(iA,fA,Sn,"⨄","\\biguplus");V(iA,fA,Sn,"⋂","\\bigcap");V(iA,fA,Sn,"⋃","\\bigcup");V(iA,fA,Sn,"∫","\\int");V(iA,fA,Sn,"∫","\\intop");V(iA,fA,Sn,"∬","\\iint");V(iA,fA,Sn,"∭","\\iiint");V(iA,fA,Sn,"∏","\\prod");V(iA,fA,Sn,"∑","\\sum");V(iA,fA,Sn,"⨂","\\bigotimes");V(iA,fA,Sn,"⨁","\\bigoplus");V(iA,fA,Sn,"⨀","\\bigodot");V(iA,fA,Sn,"∮","\\oint");V(iA,fA,Sn,"∯","\\oiint");V(iA,fA,Sn,"∰","\\oiiint");V(iA,fA,Sn,"⨆","\\bigsqcup");V(iA,fA,Sn,"∫","\\smallint");V(Xe,fA,pD,"…","\\textellipsis");V(iA,fA,pD,"…","\\mathellipsis");V(Xe,fA,pD,"…","\\ldots",!0);V(iA,fA,pD,"…","\\ldots",!0);V(iA,fA,pD,"⋯","\\@cdots",!0);V(iA,fA,pD,"⋱","\\ddots",!0);V(iA,fA,re,"⋮","\\varvdots");V(Xe,fA,re,"⋮","\\varvdots");V(iA,fA,Ba,"ˊ","\\acute");V(iA,fA,Ba,"ˋ","\\grave");V(iA,fA,Ba,"¨","\\ddot");V(iA,fA,Ba,"~","\\tilde");V(iA,fA,Ba,"ˉ","\\bar");V(iA,fA,Ba,"˘","\\breve");V(iA,fA,Ba,"ˇ","\\check");V(iA,fA,Ba,"^","\\hat");V(iA,fA,Ba,"⃗","\\vec");V(iA,fA,Ba,"˙","\\dot");V(iA,fA,Ba,"˚","\\mathring");V(iA,fA,gr,"","\\@imath");V(iA,fA,gr,"","\\@jmath");V(iA,fA,re,"ı","ı");V(iA,fA,re,"ȷ","ȷ");V(Xe,fA,re,"ı","\\i",!0);V(Xe,fA,re,"ȷ","\\j",!0);V(Xe,fA,re,"ß","\\ss",!0);V(Xe,fA,re,"æ","\\ae",!0);V(Xe,fA,re,"œ","\\oe",!0);V(Xe,fA,re,"ø","\\o",!0);V(Xe,fA,re,"Æ","\\AE",!0);V(Xe,fA,re,"Œ","\\OE",!0);V(Xe,fA,re,"Ø","\\O",!0);V(Xe,fA,Ba,"ˊ","\\'");V(Xe,fA,Ba,"ˋ","\\`");V(Xe,fA,Ba,"ˆ","\\^");V(Xe,fA,Ba,"˜","\\~");V(Xe,fA,Ba,"ˉ","\\=");V(Xe,fA,Ba,"˘","\\u");V(Xe,fA,Ba,"˙","\\.");V(Xe,fA,Ba,"¸","\\c");V(Xe,fA,Ba,"˚","\\r");V(Xe,fA,Ba,"ˇ","\\v");V(Xe,fA,Ba,"¨","\\\"");V(Xe,fA,Ba,"˝","\\H");V(Xe,fA,Ba,"◯","\\textcircled");yDA={"--":!0,"---":!0,"``":!0,"''":!0};V(Xe,fA,re,"–","--",!0);V(Xe,fA,re,"–","\\textendash");V(Xe,fA,re,"—","---",!0);V(Xe,fA,re,"—","\\textemdash");V(Xe,fA,re,"‘","`",!0);V(Xe,fA,re,"‘","\\textquoteleft");V(Xe,fA,re,"’","'",!0);V(Xe,fA,re,"’","\\textquoteright");V(Xe,fA,re,"“","``",!0);V(Xe,fA,re,"“","\\textquotedblleft");V(Xe,fA,re,"”","''",!0);V(Xe,fA,re,"”","\\textquotedblright");V(iA,fA,re,"°","\\degree",!0);V(Xe,fA,re,"°","\\degree");V(Xe,fA,re,"°","\\textdegree",!0);V(iA,fA,re,"£","\\pounds");V(iA,fA,re,"£","\\mathsterling",!0);V(Xe,fA,re,"£","\\pounds");V(Xe,fA,re,"£","\\textsterling",!0);V(iA,VA,re,"✠","\\maltese");V(Xe,VA,re,"✠","\\maltese");for(cb=0;cb<Y2A.length;cb++)mR=Y2A.charAt(cb),V(iA,fA,re,mR,mR);for(Cb=0;Cb<H2A.length;Cb++)DR=H2A.charAt(Cb),V(Xe,fA,re,DR,DR);for(Bb=0;Bb<bR.length;Bb++)BD=bR.charAt(Bb),V(iA,fA,gr,BD,BD),V(Xe,fA,re,BD,BD);V(iA,VA,re,"C","ℂ");V(Xe,VA,re,"C","ℂ");V(iA,VA,re,"H","ℍ");V(Xe,VA,re,"H","ℍ");V(iA,VA,re,"N","ℕ");V(Xe,VA,re,"N","ℕ");V(iA,VA,re,"P","ℙ");V(Xe,VA,re,"P","ℙ");V(iA,VA,re,"Q","ℚ");V(Xe,VA,re,"Q","ℚ");V(iA,VA,re,"R","ℝ");V(Xe,VA,re,"R","ℝ");V(iA,VA,re,"Z","ℤ");V(Xe,VA,re,"Z","ℤ");V(iA,fA,gr,"h","ℎ");V(Xe,fA,gr,"h","ℎ");for(Vo=0;Vo<bR.length;Vo++)if(ca=bR.charAt(Vo),Ur=String.fromCharCode(55349,56320+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56372+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56424+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56580+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56684+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56736+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56788+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56840+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56944+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Vo<26)Ur=String.fromCharCode(55349,56632+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur),Ur=String.fromCharCode(55349,56476+Vo),V(iA,fA,gr,ca,Ur),V(Xe,fA,re,ca,Ur);Ur=String.fromCharCode(55349,56668);V(iA,fA,gr,"k",Ur);V(Xe,fA,re,"k",Ur);for(rI=0;rI<10;rI++)WB=rI.toString(),Ur=String.fromCharCode(55349,57294+rI),V(iA,fA,gr,WB,Ur),V(Xe,fA,re,WB,Ur),Ur=String.fromCharCode(55349,57314+rI),V(iA,fA,gr,WB,Ur),V(Xe,fA,re,WB,Ur),Ur=String.fromCharCode(55349,57324+rI),V(iA,fA,gr,WB,Ur),V(Xe,fA,re,WB,Ur),Ur=String.fromCharCode(55349,57334+rI),V(iA,fA,gr,WB,Ur),V(Xe,fA,re,WB,Ur);for(Eb=0;Eb<yV.length;Eb++)ED=yV.charAt(Eb),V(iA,fA,gr,ED,ED),V(Xe,fA,re,ED,ED);wV={mathClass:"mathbf",textClass:"textbf",font:"Main-Bold"},K2A={mathClass:"mathnormal",textClass:"textit",font:"Math-Italic"},J2A={mathClass:"boldsymbol",textClass:"boldsymbol",font:"Main-BoldItalic"},I$e={mathClass:"mathscr",textClass:"textscr",font:"Script-Regular"},zp={mathClass:"",textClass:"",font:""},O2A={mathClass:"mathfrak",textClass:"textfrak",font:"Fraktur-Regular"},P2A={mathClass:"mathbb",textClass:"textbb",font:"AMS-Regular"},_2A={mathClass:"mathboldfrak",textClass:"textboldfrak",font:"Fraktur-Regular"},bV={mathClass:"mathsf",textClass:"textsf",font:"SansSerif-Regular"},vV={mathClass:"mathboldsf",textClass:"textboldsf",font:"SansSerif-Bold"},W2A={mathClass:"mathitsf",textClass:"textitsf",font:"SansSerif-Italic"},kV={mathClass:"mathtt",textClass:"texttt",font:"Typewriter-Regular"},q2A=[wV,wV,K2A,K2A,J2A,J2A,I$e,zp,zp,zp,O2A,O2A,P2A,P2A,_2A,_2A,bV,bV,vV,vV,W2A,W2A,zp,zp,kV,kV],h$e=[wV,zp,bV,vV,kV],FV={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathsfit:{variant:"sans-serif-italic",fontName:"SansSerif-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},vDA={vec:["vec",0.471,0.714],oiintSize1:["oiintSize1",0.957,0.499],oiintSize2:["oiintSize2",1.472,0.659],oiiintSize1:["oiiintSize1",1.304,0.499],oiiintSize2:["oiiintSize2",1.98,0.659]},La={number:3,unit:"mu"},qp={number:4,unit:"mu"},eI={number:5,unit:"mu"},y$e={mord:{mop:La,mbin:qp,mrel:eI,minner:La},mop:{mord:La,mop:La,mrel:eI,minner:La},mbin:{mord:qp,mop:qp,mopen:qp,minner:qp},mrel:{mord:eI,mop:eI,mopen:eI,minner:eI},mopen:{},mclose:{mop:La,mbin:qp,mrel:eI,minner:La},mpunct:{mord:La,mop:La,mrel:eI,mopen:La,mclose:La,mpunct:La,minner:La},minner:{mord:La,mop:La,mbin:qp,mrel:eI,mopen:La,mpunct:La,minner:La}},w$e={mord:{mop:La},mop:{mord:La,mop:La},mbin:{},mrel:{},mopen:{},mclose:{mop:La},mpunct:{},minner:{mop:La}},FDA={},vR={},kR={};b$e=new Set(["leftmost","mbin","mopen","mrel","mop","mpunct"]),v$e=new Set(["rightmost","mrel","mclose","mpunct"]),k$e={display:Wr.DISPLAY,text:Wr.TEXT,script:Wr.SCRIPT,scriptscript:Wr.SCRIPTSCRIPT},F$e={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"};x$e=new Set(["\\imath","\\jmath"]),S$e=new Set(["mrow","mtable"]),L$e={mathit:"italic",boldsymbol:(A)=>A.type==="textord"?"bold":"bold-italic",mathbf:"bold",mathbb:"double-struck",mathsfit:"sans-serif-italic",mathfrak:"fraktur",mathscr:"script",mathcal:"script",mathsf:"sans-serif",mathtt:"monospace"};R$e=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],Z2A=[0.5,0.6,0.7,0.8,0.9,1,1.2,1.44,1.728,2.074,2.488];iI.BASESIZE=6;U$e={widehat:"^",widecheck:"ˇ",widetilde:"~",utilde:"~",overleftarrow:"←",underleftarrow:"←",xleftarrow:"←",overrightarrow:"→",underrightarrow:"→",xrightarrow:"→",underbrace:"⏟",overbrace:"⏞",underbracket:"⎵",overbracket:"⎴",overgroup:"⏠",undergroup:"⏡",overleftrightarrow:"↔",underleftrightarrow:"↔",xleftrightarrow:"↔",Overrightarrow:"⇒",xRightarrow:"⇒",overleftharpoon:"↼",xleftharpoonup:"↼",overrightharpoon:"⇀",xrightharpoonup:"⇀",xLeftarrow:"⇐",xLeftrightarrow:"⇔",xhookleftarrow:"↩",xhookrightarrow:"↪",xmapsto:"↦",xrightharpoondown:"⇁",xleftharpoondown:"↽",xrightleftharpoons:"⇌",xleftrightharpoons:"⇋",xtwoheadleftarrow:"↞",xtwoheadrightarrow:"↠",xlongequal:"=",xtofrom:"⇄",xrightleftarrows:"⇄",xrightequilibrium:"⇌",xleftequilibrium:"⇋","\\cdrightarrow":"→","\\cdleftarrow":"←","\\cdlongequal":"="},M$e={overrightarrow:[["rightarrow"],0.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],0.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],0.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],0.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],0.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],0.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],0.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],0.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],0.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],0.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],0.888,522,"xMaxYMin"],xlongequal:[["longequal"],0.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],0.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],0.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],0.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],0.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],0.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],0.888,522],overbracket:[["leftbracketover","rightbracketover"],1.6,440],underbracket:[["leftbracketunder","rightbracketunder"],1.6,410],overgroup:[["leftgroup","rightgroup"],0.888,342],undergroup:[["leftgroupunder","rightgroupunder"],0.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},T$e=new Set(["widehat","widecheck","widetilde","utilde"]),H$e={bin:1,close:1,inner:1,open:1,punct:1,rel:1},K$e={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1};O$e=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map((A)=>"\\"+A).join("|"));wt({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:(A,e)=>{var t=FR(e[0]),r=!O$e.test(A.funcName),i=!r||A.funcName==="\\widehat"||A.funcName==="\\widetilde"||A.funcName==="\\widecheck";return{type:"accent",mode:A.parser.mode,label:A.funcName,isStretchy:r,isShifty:i,base:t}},htmlBuilder:zV,mathmlBuilder:GDA});wt({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.","\\\"","\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(A,e)=>{var t=e[0],r=A.parser.mode;if(r==="math")A.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+A.funcName+" works only in text mode"),r="text";return{type:"accent",mode:r,label:A.funcName,isStretchy:!1,isShifty:!0,base:t}},htmlBuilder:zV,mathmlBuilder:GDA});wt({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0];return{type:"accentUnder",mode:t.mode,label:r,base:i}},htmlBuilder:(A,e)=>{var t=nu(A.base,e),r=NR(A,e),i=A.label==="\\utilde"?0.12:0,u=au({positionType:"top",positionData:t.height,children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:t}]});return rt(["mord","accentunder"],[u],e)},mathmlBuilder:(A,e)=>{var t=RR(A.label),r=new it("munder",[Gu(A.base,e),t]);return r.setAttribute("accentunder","true"),r}});wt({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(A,e,t){var{parser:r,funcName:i}=A;return{type:"xArrow",mode:r.mode,label:i,body:e[0],below:t[0]}},htmlBuilder(A,e){var t=e.style,r=e.havingStyle(t.sup()),i=QD(nu(A.body,r,e),e),u=A.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(u+"-arrow-pad");var a;if(A.below)r=e.havingStyle(t.sub()),a=QD(nu(A.below,r,e),e),a.classes.push(u+"-arrow-pad");var n=NR(A,e),o=-e.fontMetrics().axisHeight+0.5*n.height,s=-e.fontMetrics().axisHeight-0.5*n.height-0.111;if(i.depth>0.25||A.label==="\\xleftequilibrium")s-=i.depth;var l;if(a){var g=-e.fontMetrics().axisHeight+a.height+0.5*n.height+0.111;l=au({positionType:"individualShift",children:[{type:"elem",elem:i,shift:s},{type:"elem",elem:n,shift:o,wrapperClasses:["svg-align"]},{type:"elem",elem:a,shift:g}]})}else l=au({positionType:"individualShift",children:[{type:"elem",elem:i,shift:s},{type:"elem",elem:n,shift:o,wrapperClasses:["svg-align"]}]});return rt(["mrel","x-arrow"],[l],e)},mathmlBuilder(A,e){var t=RR(A.label);t.setAttribute("minsize",A.label.charAt(0)==="x"?"1.75em":"3.0em");var r;if(A.body){var i=IR(Gu(A.body,e));if(A.below){var u=IR(Gu(A.below,e));r=new it("munderover",[t,u,i])}else r=new it("mover",[t,i])}else if(A.below){var a=IR(Gu(A.below,e));r=new it("munder",[t,a])}else r=IR(),r=new it("mover",[t,r]);return r}});wt({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(A,e){var{parser:t,funcName:r}=A,i=e[0];return{type:"mclass",mode:t.mode,mclass:"m"+r.slice(5),body:xn(i),isCharacterBox:nI(i)}},htmlBuilder:UDA,mathmlBuilder:MDA});wt({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(A,e){var{parser:t}=A;return{type:"mclass",mode:t.mode,mclass:MR(e[0]),body:xn(e[1]),isCharacterBox:nI(e[1])}}});wt({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(A,e){var{parser:t,funcName:r}=A,i=e[1],u=e[0],a;if(r!=="\\stackrel")a=MR(i);else a="mrel";var n={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:r!=="\\stackrel",body:xn(i)},o={type:"supsub",mode:u.mode,base:n,sup:r==="\\underset"?null:u,sub:r==="\\underset"?u:null};return{type:"mclass",mode:t.mode,mclass:a,body:[o],isCharacterBox:nI(o)}},htmlBuilder:UDA,mathmlBuilder:MDA});wt({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(A,e){var{parser:t}=A;return{type:"pmb",mode:t.mode,mclass:MR(e[0]),body:xn(e[0])}},htmlBuilder(A,e){var t=Xn(A.body,e,!0),r=rt([A.mclass],t,e);return r.style.textShadow="0.02em 0.01em 0.04px",r},mathmlBuilder(A,e){var t=Ag(A.body,e),r=new it("mstyle",t);return r.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),r}});P$e={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"};wt({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(A,e){var{parser:t,funcName:r}=A;return{type:"cdlabel",mode:t.mode,side:r.slice(4),label:e[0]}},htmlBuilder(A,e){var t=e.havingStyle(e.style.sup()),r=QD(nu(A.label,t,e),e);return r.classes.push("cd-label-"+A.side),r.style.bottom=gt(0.8-r.depth),r.height=0,r.depth=0,r},mathmlBuilder(A,e){var t=new it("mrow",[Gu(A.label,e)]);if(t=new it("mpadded",[t]),t.setAttribute("width","0"),A.side==="left")t.setAttribute("lspace","-1width");return t.setAttribute("voffset","0.7em"),t=new it("mstyle",[t]),t.setAttribute("displaystyle","false"),t.setAttribute("scriptlevel","1"),t}});wt({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(A,e){var{parser:t}=A;return{type:"cdlabelparent",mode:t.mode,fragment:e[0]}},htmlBuilder(A,e){var t=QD(nu(A.fragment,e),e);return t.classes.push("cd-vert-arrow"),t},mathmlBuilder(A,e){return new it("mrow",[Gu(A.fragment,e)])}});wt({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(A,e){var{parser:t}=A,r=Ai(e[0],"ordgroup"),i=r.body,u="";for(var a=0;a<i.length;a++){var n=Ai(i[a],"textord");u+=n.text}var o=parseInt(u),s;if(isNaN(o))throw new ut("\\@char has non-numeric argument "+u);else if(o<0||o>=1114111)throw new ut("\\@char with invalid code point "+u);else if(o<=65535)s=String.fromCharCode(o);else o-=65536,s=String.fromCharCode((o>>10)+55296,(o&1023)+56320);return{type:"textord",mode:t.mode,text:s}}});wt({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(A,e){var{parser:t}=A,r=Ai(e[0],"color-token").color,i=e[1];return{type:"color",mode:t.mode,color:r,body:xn(i)}},htmlBuilder:TDA,mathmlBuilder:YDA});wt({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(A,e){var{parser:t,breakOnTokenText:r}=A,i=Ai(e[0],"color-token").color;t.gullet.macros.set("\\current@color",i);var u=t.parseExpression(!0,r);return{type:"color",mode:t.mode,color:i,body:u}},htmlBuilder:TDA,mathmlBuilder:YDA});wt({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(A,e,t){var{parser:r}=A,i=r.gullet.future().text==="["?r.parseSizeGroup(!0):null,u=!r.settings.displayMode||!r.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:r.mode,newLine:u,size:i&&Ai(i,"size").value}},htmlBuilder(A,e){var t=rt(["mspace"],[],e);if(A.newLine){if(t.classes.push("newline"),A.size)t.style.marginTop=gt(Ra(A.size,e))}return t},mathmlBuilder(A,e){var t=new it("mspace");if(A.newLine){if(t.setAttribute("linebreak","newline"),A.size)t.setAttribute("height",gt(Ra(A.size,e)))}return t}});NV={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"};wt({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(A){var{parser:e,funcName:t}=A;e.consumeSpaces();var r=e.fetch();if(NV[r.text]){if(t==="\\global"||t==="\\\\globallong")r.text=NV[r.text];return Ai(e.parseFunction(),"internal")}throw new ut("Invalid token after macro prefix",r)}});wt({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(A){var{parser:e,funcName:t}=A,r=e.gullet.popToken(),i=r.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new ut("Expected a control sequence",r);var u=0,a,n=[[]];while(e.gullet.future().text!=="{")if(r=e.gullet.popToken(),r.text==="#"){if(e.gullet.future().text==="{"){a=e.gullet.future(),n[u].push("{");break}if(r=e.gullet.popToken(),!/^[1-9]$/.test(r.text))throw new ut('Invalid argument number "'+r.text+'"');if(parseInt(r.text)!==u+1)throw new ut('Argument number "'+r.text+'" out of order');u++,n.push([])}else if(r.text==="EOF")throw new ut("Expected a macro definition");else n[u].push(r.text);var{tokens:o}=e.gullet.consumeArg();if(a)o.unshift(a);if(t==="\\edef"||t==="\\xdef")o=e.gullet.expandTokens(o),o.reverse();return e.gullet.macros.set(i,{tokens:o,numArgs:u,delimiters:n},t===NV[t]),{type:"internal",mode:e.mode}}});wt({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(A){var{parser:e,funcName:t}=A,r=HDA(e.gullet.popToken());e.gullet.consumeSpaces();var i=z$e(e);return KDA(e,r,i,t==="\\\\globallet"),{type:"internal",mode:e.mode}}});wt({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(A){var{parser:e,funcName:t}=A,r=HDA(e.gullet.popToken()),i=e.gullet.popToken(),u=e.gullet.popToken();return KDA(e,r,u,t==="\\\\globalfuture"),e.gullet.pushToken(u),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});hR={type:"kern",size:-1*GV},j$e=new Set(["|","\\lvert","\\rvert","\\vert"]),X$e=new Set(["\\|","\\lVert","\\rVert","\\Vert"]),_DA=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","\\surd"]),AAt=new Set(["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱"]),WDA=new Set(["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"]),Ib=[0,1.2,1.8,2.4,3],eAt=[{type:"small",style:Wr.SCRIPTSCRIPT},{type:"small",style:Wr.SCRIPT},{type:"small",style:Wr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],tAt=[{type:"small",style:Wr.SCRIPTSCRIPT},{type:"small",style:Wr.SCRIPT},{type:"small",style:Wr.TEXT},{type:"stack"}],zDA=[{type:"small",style:Wr.SCRIPTSCRIPT},{type:"small",style:Wr.SCRIPT},{type:"small",style:Wr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],$2A={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},iAt=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","<",">","\\langle","⟨","\\rangle","⟩","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."]);wt({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:(A,e)=>{var t=TR(e[0],A);return{type:"delimsizing",mode:A.parser.mode,size:$2A[A.funcName].size,mclass:$2A[A.funcName].mclass,delim:t.text}},htmlBuilder:(A,e)=>{if(A.delim===".")return rt([A.mclass]);return qDA(A.delim,A.size,e,A.mode,[A.mclass])},mathmlBuilder:(A)=>{var e=[];if(A.delim!==".")e.push(zg(A.delim,A.mode));var t=new it("mo",e);if(A.mclass==="mopen"||A.mclass==="mclose")t.setAttribute("fence","true");else t.setAttribute("fence","false");t.setAttribute("stretchy","true");var r=gt(Ib[A.size]);return t.setAttribute("minsize",r),t.setAttribute("maxsize",r),t}});wt({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(A,e)=>{var t=A.parser.gullet.macros.get("\\current@color");if(t&&typeof t!=="string")throw new ut("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:A.parser.mode,delim:TR(e[0],A).text,color:t}}});wt({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(A,e)=>{var t=TR(e[0],A),r=A.parser;++r.leftrightDepth;var i=r.parseExpression(!1);--r.leftrightDepth,r.expect("\\right",!1);var u=Ai(r.parseFunction(),"leftright-right");return{type:"leftright",mode:r.mode,body:i,left:t.text,right:u.delim,rightColor:u.color}},htmlBuilder:(A,e)=>{eDA(A);var t=Xn(A.body,e,!0,["mopen","mclose"]),r=0,i=0,u=!1;for(var a=0;a<t.length;a++){var n=t[a];if(ADA(n))u=!0;else r=Math.max(t[a].height,r),i=Math.max(t[a].depth,i)}r*=e.sizeMultiplier,i*=e.sizeMultiplier;var o;if(A.left===".")o=Qb(e,["mopen"]);else o=dV(A.left,r,i,e,A.mode,["mopen"]);if(t.unshift(o),u)for(var s=1;s<t.length;s++){var l=t[s];if(ADA(l)){var g=l.isMiddle;t[s]=dV(g.delim,r,i,g.options,A.mode,[])}}var C;if(A.right===".")C=Qb(e,["mclose"]);else{var B=A.rightColor?e.withColor(A.rightColor):e;C=dV(A.right,r,i,B,A.mode,["mclose"])}return t.push(C),rt(["minner"],t,e)},mathmlBuilder:(A,e)=>{eDA(A);var t=Ag(A.body,e);if(A.left!=="."){var r=new it("mo",[zg(A.left,A.mode)]);r.setAttribute("fence","true"),t.unshift(r)}if(A.right!=="."){var i=new it("mo",[zg(A.right,A.mode)]);if(i.setAttribute("fence","true"),A.rightColor)i.setAttribute("mathcolor",A.rightColor);t.push(i)}return WV(t)}});wt({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(A,e)=>{var t=TR(e[0],A);if(!A.parser.leftrightDepth)throw new ut("\\middle without preceding \\left",t);return{type:"middle",mode:A.parser.mode,delim:t.text}},htmlBuilder:(A,e)=>{var t;if(A.delim===".")t=Qb(e,[]);else t=qDA(A.delim,1,e,A.mode,[]),t.isMiddle={delim:A.delim,options:e};return t},mathmlBuilder:(A,e)=>{var t=A.delim==="\\vert"||A.delim==="|"?zg("|","text"):zg(A.delim,A.mode),r=new it("mo",[t]);return r.setAttribute("fence","true"),r.setAttribute("lspace","0.05em"),r.setAttribute("rspace","0.05em"),r}});wt({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","hbox"]},handler(A,e,t){var{parser:r,funcName:i}=A,u=Ai(e[0],"color-token").color,a=e[1];return{type:"enclose",mode:r.mode,label:i,backgroundColor:u,body:a}},htmlBuilder:YR,mathmlBuilder:HR});wt({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","hbox"]},handler(A,e,t){var{parser:r,funcName:i}=A,u=Ai(e[0],"color-token").color,a=Ai(e[1],"color-token").color,n=e[2];return{type:"enclose",mode:r.mode,label:i,backgroundColor:a,borderColor:u,body:n}},htmlBuilder:YR,mathmlBuilder:HR});wt({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(A,e){var{parser:t}=A;return{type:"enclose",mode:t.mode,label:"\\fbox",body:e[0]}}});wt({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\phase"],props:{numArgs:1},handler(A,e){var{parser:t,funcName:r}=A,i=e[0];return{type:"enclose",mode:t.mode,label:r,body:i}},htmlBuilder:YR,mathmlBuilder:HR});wt({type:"enclose",names:["\\sout"],props:{numArgs:1,allowedInText:!0},handler(A,e){var{parser:t,funcName:r}=A;if(t.mode==="math")t.settings.reportNonstrict("mathVsSout","LaTeX's \\sout works only in text mode");var i=e[0];return{type:"enclose",mode:t.mode,label:r,body:i}},htmlBuilder:YR,mathmlBuilder:HR});wt({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(A,e){var{parser:t}=A;return{type:"enclose",mode:t.mode,label:"\\angl",body:e[0]}}});VDA={};jDA={};uAt=new Set(["gather","gather*"]);aAt={c:"center ",l:"left ",r:"right "};VB({type:"array",names:["array","darray"],props:{numArgs:1},handler(A,e){var t=UR(e[0]),r=t?[e[0]]:Ai(e[0],"ordgroup").body,i=r.map(function(a){var n=GR(a),o=n.text;if("lcr".includes(o))return{type:"align",align:o};else if(o==="|")return{type:"separator",separator:"|"};else if(o===":")return{type:"separator",separator:":"};throw new ut("Unknown column alignment: "+o,a)}),u={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return hQ(A.parser,u,jV(A.envName))},htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(A){var e={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[A.envName.replace("*","")],t="c",r={hskipBeforeAndAfter:!1,cols:[{type:"align",align:t}]};if(A.envName.charAt(A.envName.length-1)==="*"){var i=A.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),t=i.fetch().text,!"lcr".includes(t))throw new ut("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),r.cols=[{type:"align",align:t}]}}var u=hQ(A.parser,r,jV(A.envName)),a=Math.max(0,...u.body.map((n)=>n.length));return u.cols=Array(a).fill({type:"align",align:t}),e?{type:"leftright",mode:A.mode,body:[u],left:e[0],right:e[1],rightColor:void 0}:u},htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(A){var e={arraystretch:0.5},t=hQ(A.parser,e,"script");return t.colSeparationType="small",t},htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["subarray"],props:{numArgs:1},handler(A,e){var t=UR(e[0]),r=t?[e[0]]:Ai(e[0],"ordgroup").body,i=r.map(function(n){var o=GR(n),s=o.text;if("lc".includes(s))return{type:"align",align:s};throw new ut("Unknown column alignment: "+s,n)});if(i.length>1)throw new ut("{subarray} can contain only one column");var u={cols:i,hskipBeforeAndAfter:!1,arraystretch:0.5},a=hQ(A.parser,u,"script");if(a.body.length>0&&a.body[0].length>1)throw new ut("{subarray} can contain only one column");return a},htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(A){var e={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},t=hQ(A.parser,e,jV(A.envName));return{type:"leftright",mode:A.mode,body:[t],left:A.envName.includes("r")?".":"\\{",right:A.envName.includes("r")?"\\}":".",rightColor:void 0}},htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:XDA,htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(A){if(uAt.has(A.envName))KR(A);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:VV(A.envName),emptySingleRow:!0,leqno:A.parser.settings.leqno};return hQ(A.parser,e,"display")},htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:XDA,htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(A){KR(A);var e={autoTag:VV(A.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:A.parser.settings.leqno};return hQ(A.parser,e,"display")},htmlBuilder:jB,mathmlBuilder:XB});VB({type:"array",names:["CD"],props:{numArgs:0},handler(A){return KR(A),q$e(A.parser)},htmlBuilder:jB,mathmlBuilder:XB});xA("\\nonumber","\\gdef\\@eqnsw{0}");xA("\\notag","\\nonumber");wt({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(A,e){throw new ut(A.funcName+" valid only within array environment")}});rDA=VDA;wt({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(A,e){var{parser:t,funcName:r}=A,i=e[0];if(i.type!=="ordgroup")throw new ut("Invalid environment name",i);var u="";for(var a=0;a<i.body.length;++a)u+=Ai(i.body[a],"textord").text;if(r==="\\begin"){if(!rDA.hasOwnProperty(u))throw new ut("No such environment: "+u,i);var n=rDA[u],{args:o,optArgs:s}=t.parseArguments("\\begin{"+u+"}",n),l={mode:t.mode,envName:u,parser:t},g=n.handler(l,o,s);t.expect("\\end",!1);var C=t.nextToken,B=Ai(t.parseFunction(),"environment");if(B.name!==u)throw new ut("Mismatch: \\begin{"+u+"} matched by \\end{"+B.name+"}",C);return g}return{type:"environment",mode:t.mode,name:u,nameGroup:i}}});iDA={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak"};wt({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=FR(e[0]),u=r;if(u in iDA)u=iDA[u];return{type:"font",mode:t.mode,font:u.slice(1),body:i}},htmlBuilder:$DA,mathmlBuilder:AyA});wt({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(A,e)=>{var{parser:t}=A,r=e[0];return{type:"mclass",mode:t.mode,mclass:MR(r),body:[{type:"font",mode:t.mode,font:"boldsymbol",body:r}],isCharacterBox:nI(r)}}});wt({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(A,e)=>{var{parser:t,funcName:r,breakOnTokenText:i}=A,{mode:u}=t,a=t.parseExpression(!0,i);return{type:"font",mode:u,font:"math"+r.slice(1),body:{type:"ordgroup",mode:t.mode,body:a}}},htmlBuilder:$DA,mathmlBuilder:AyA});wt({type:"genfrac",names:["\\cfrac","\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0],u=e[1],a,n=null,o=null;switch(r){case"\\cfrac":case"\\dfrac":case"\\frac":case"\\tfrac":a=!0;break;case"\\\\atopfrac":a=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":a=!1,n="(",o=")";break;case"\\\\bracefrac":a=!1,n="\\{",o="\\}";break;case"\\\\brackfrac":a=!1,n="[",o="]";break;default:throw Error("Unrecognized genfrac command")}var s=r==="\\cfrac",l=null;if(s||r.startsWith("\\d"))l="display";else if(r.startsWith("\\t"))l="text";return eyA({type:"genfrac",mode:t.mode,numer:i,denom:u,continued:s,hasBarLine:a,leftDelim:n,rightDelim:o,barSize:null},l)},htmlBuilder:nAt,mathmlBuilder:oAt});wt({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(A){var{parser:e,funcName:t,token:r}=A,i;switch(t){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw Error("Unrecognized infix genfrac command")}return{type:"infix",mode:e.mode,replaceWith:i,token:r}}});uDA=["display","text","script","scriptscript"];wt({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(A,e){var{parser:t}=A,r=e[4],i=e[5],u=FR(e[0]),a=u.type==="atom"&&u.family==="open"?aDA(u.text):null,n=FR(e[1]),o=n.type==="atom"&&n.family==="close"?aDA(n.text):null,s=Ai(e[2],"size"),l,g=null;if(s.isBlank)l=!0;else g=s.value,l=g.number>0;var C=null,B=e[3];if(B.type==="ordgroup"){if(B.body.length>0){var E=Ai(B.body[0],"textord");C=uDA[Number(E.text)]}}else B=Ai(B,"textord"),C=uDA[Number(B.text)];return eyA({type:"genfrac",mode:t.mode,numer:r,denom:i,continued:!1,hasBarLine:l,barSize:g,leftDelim:a,rightDelim:o},C)}});wt({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(A,e){var{parser:t,funcName:r,token:i}=A;return{type:"infix",mode:t.mode,replaceWith:"\\\\abovefrac",size:Ai(e[0],"size").value,token:i}}});wt({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0],u=Ai(e[1],"infix").size;if(!u)throw Error("\\\\abovefrac expected size, but got "+String(u));var a=e[2],n=u.number>0;return{type:"genfrac",mode:t.mode,numer:i,denom:a,continued:!1,hasBarLine:n,barSize:u,leftDelim:null,rightDelim:null}}});wt({type:"horizBrace",names:["\\overbrace","\\underbrace","\\overbracket","\\underbracket"],props:{numArgs:1},handler(A,e){var{parser:t,funcName:r}=A;return{type:"horizBrace",mode:t.mode,label:r,isOver:r.includes("\\over"),base:e[0]}},htmlBuilder:tyA,mathmlBuilder:sAt});wt({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(A,e)=>{var{parser:t}=A,r=e[1],i=Ai(e[0],"url").url;if(!t.settings.isTrusted({command:"\\href",url:i}))return t.formatUnsupportedCmd("\\href");return{type:"href",mode:t.mode,href:i,body:xn(r)}},htmlBuilder:(A,e)=>{var t=Xn(A.body,e,!1);return m$e(A.href,[],t,e)},mathmlBuilder:(A,e)=>{var t=IQ(A.body,e);if(!(t instanceof it))t=new it("mrow",[t]);return t.setAttribute("href",A.href),t}});wt({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(A,e)=>{var{parser:t}=A,r=Ai(e[0],"url").url;if(!t.settings.isTrusted({command:"\\url",url:r}))return t.formatUnsupportedCmd("\\url");var i=[];for(var u=0;u<r.length;u++){var a=r[u];if(a==="~")a="\\textasciitilde";i.push({type:"textord",mode:"text",text:a})}var n={type:"text",mode:t.mode,font:"\\texttt",body:i};return{type:"href",mode:t.mode,href:r,body:xn(n)}}});wt({type:"hbox",names:["\\hbox"],props:{numArgs:1,argTypes:["text"],allowedInText:!0,primitive:!0},handler(A,e){var{parser:t}=A;return{type:"hbox",mode:t.mode,body:xn(e[0])}},htmlBuilder(A,e){var t=Xn(A.body,e.withFont(""),!1);return sI(t)},mathmlBuilder(A,e){return new it("mrow",Ag(A.body,e.withFont("")))}});wt({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:(A,e)=>{var{parser:t,funcName:r,token:i}=A,u=Ai(e[0],"raw").string,a=e[1];if(t.settings.strict)t.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var n,o={};switch(r){case"\\htmlClass":o.class=u,n={command:"\\htmlClass",class:u};break;case"\\htmlId":o.id=u,n={command:"\\htmlId",id:u};break;case"\\htmlStyle":o.style=u,n={command:"\\htmlStyle",style:u};break;case"\\htmlData":{var s=u.split(",");for(var l=0;l<s.length;l++){var g=s[l],C=g.indexOf("=");if(C<0)throw new ut("\\htmlData key/value '"+g+"' missing equals sign");var B=g.slice(0,C),E=g.slice(C+1);o["data-"+B.trim()]=E}n={command:"\\htmlData",attributes:o};break}default:throw Error("Unrecognized html command")}if(!t.settings.isTrusted(n))return t.formatUnsupportedCmd(r);return{type:"html",mode:t.mode,attributes:o,body:xn(a)}},htmlBuilder:(A,e)=>{var t=Xn(A.body,e,!1),r=["enclosing"];if(A.attributes.class)r.push(...A.attributes.class.trim().split(/\s+/));var i=rt(r,t,e);for(var u in A.attributes)if(u!=="class"&&A.attributes.hasOwnProperty(u))i.setAttribute(u,A.attributes[u]);return i},mathmlBuilder:(A,e)=>IQ(A.body,e)});wt({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInArgument:!0,allowedInText:!0},handler:(A,e)=>{var{parser:t}=A;return{type:"htmlmathml",mode:t.mode,html:xn(e[0]),mathml:xn(e[1])}},htmlBuilder:(A,e)=>{var t=Xn(A.html,e,!1);return sI(t)},mathmlBuilder:(A,e)=>IQ(A.mathml,e)});wt({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(A,e,t)=>{var{parser:r}=A,i={number:0,unit:"em"},u={number:0.9,unit:"em"},a={number:0,unit:"em"},n="";if(t[0]){var o=Ai(t[0],"raw").string,s=o.split(",");for(var l=0;l<s.length;l++){var g=s[l].split("=");if(g.length===2){var C=g[1].trim();switch(g[0].trim()){case"alt":n=C;break;case"width":i=IV(C);break;case"height":u=IV(C);break;case"totalheight":a=IV(C);break;default:throw new ut("Invalid key: '"+g[0]+"' in \\includegraphics.")}}}}var B=Ai(e[0],"url").url;if(n==="")n=B,n=n.replace(/^.*[\\/]/,""),n=n.substring(0,n.lastIndexOf("."));if(!r.settings.isTrusted({command:"\\includegraphics",url:B}))return r.formatUnsupportedCmd("\\includegraphics");return{type:"includegraphics",mode:r.mode,alt:n,width:i,height:u,totalheight:a,src:B}},htmlBuilder:(A,e)=>{var t=Ra(A.height,e),r=0;if(A.totalheight.number>0)r=Ra(A.totalheight,e)-t;var i=0;if(A.width.number>0)i=Ra(A.width,e);var u={height:gt(t+r)};if(i>0)u.width=gt(i);if(r>0)u.verticalAlign=gt(-r);var a=new DDA(A.src,A.alt,u);return a.height=t,a.depth=r,a},mathmlBuilder:(A,e)=>{var t=new it("mglyph",[]);t.setAttribute("alt",A.alt);var r=Ra(A.height,e),i=0;if(A.totalheight.number>0)i=Ra(A.totalheight,e)-r,t.setAttribute("valign",gt(-i));if(t.setAttribute("height",gt(r+i)),A.width.number>0){var u=Ra(A.width,e);t.setAttribute("width",gt(u))}return t.setAttribute("src",A.src),t}});wt({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(A,e){var{parser:t,funcName:r}=A,i=Ai(e[0],"size");if(t.settings.strict){var u=r[1]==="m",a=i.value.unit==="mu";if(u){if(!a)t.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" supports only mu units, "+("not "+i.value.unit+" units"));if(t.mode!=="math")t.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" works only in math mode")}else if(a)t.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" doesn't support mu units")}return{type:"kern",mode:t.mode,dimension:i.value}},htmlBuilder(A,e){return bDA(A.dimension,e)},mathmlBuilder(A,e){var t=Ra(A.dimension,e);return new _V(t)}});wt({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0];return{type:"lap",mode:t.mode,alignment:r.slice(5),body:i}},htmlBuilder:(A,e)=>{var t;if(A.alignment==="clap")t=rt([],[nu(A.body,e)]),t=rt(["inner"],[t],e);else t=rt(["inner"],[nu(A.body,e)]);var r=rt(["fix"],[]),i=rt([A.alignment],[t,r],e),u=rt(["strut"]);if(u.style.height=gt(i.height+i.depth),i.depth)u.style.verticalAlign=gt(-i.depth);return i.children.unshift(u),i=rt(["thinbox"],[i],e),rt(["mord","vbox"],[i],e)},mathmlBuilder:(A,e)=>{var t=new it("mpadded",[Gu(A.body,e)]);if(A.alignment!=="rlap"){var r=A.alignment==="llap"?"-1":"-0.5";t.setAttribute("lspace",r+"width")}return t.setAttribute("width","0px"),t}});wt({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(A,e){var{funcName:t,parser:r}=A,i=r.mode;r.switchMode("math");var u=t==="\\("?"\\)":"$",a=r.parseExpression(!1,u);return r.expect(u),r.switchMode(i),{type:"styling",mode:r.mode,style:"text",resetFont:!0,body:a}}});wt({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(A,e){throw new ut("Mismatched "+A.funcName)}});wt({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(A,e)=>{var{parser:t}=A;return{type:"mathchoice",mode:t.mode,display:xn(e[0]),text:xn(e[1]),script:xn(e[2]),scriptscript:xn(e[3])}},htmlBuilder:(A,e)=>{var t=nDA(A,e),r=Xn(t,e,!1);return sI(r)},mathmlBuilder:(A,e)=>{var t=nDA(A,e);return IQ(t,e)}});iyA=new Set(["\\smallint"]),lAt={"∏":"\\prod","∐":"\\coprod","∑":"\\sum","⋀":"\\bigwedge","⋁":"\\bigvee","⋂":"\\bigcap","⋃":"\\bigcup","⨀":"\\bigodot","⨁":"\\bigoplus","⨂":"\\bigotimes","⨄":"\\biguplus","⨆":"\\bigsqcup"};wt({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","∏","∐","∑","⋀","⋁","⋂","⋃","⨀","⨁","⨂","⨄","⨆"],props:{numArgs:0},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=r;if(i.length===1)i=lAt[i];return{type:"op",mode:t.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},htmlBuilder:fD,mathmlBuilder:mb});wt({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(A,e)=>{var{parser:t}=A,r=e[0];return{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:xn(r)}},htmlBuilder:fD,mathmlBuilder:mb});gAt={"∫":"\\int","∬":"\\iint","∭":"\\iiint","∮":"\\oint","∯":"\\oiint","∰":"\\oiiint"};wt({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(A){var{parser:e,funcName:t}=A;return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:t}},htmlBuilder:fD,mathmlBuilder:mb});wt({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(A){var{parser:e,funcName:t}=A;return{type:"op",mode:e.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:t}},htmlBuilder:fD,mathmlBuilder:mb});wt({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","∫","∬","∭","∮","∯","∰"],props:{numArgs:0,allowedInArgument:!0},handler(A){var{parser:e,funcName:t}=A,r=t;if(r.length===1)r=gAt[r];return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:r}},htmlBuilder:fD,mathmlBuilder:mb});wt({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0];return{type:"operatorname",mode:t.mode,body:xn(i),alwaysHandleSupSub:r==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},htmlBuilder:uyA,mathmlBuilder:cAt});xA("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");jp({type:"ordgroup",htmlBuilder(A,e){if(A.semisimple)return sI(Xn(A.body,e,!1));return rt(["mord"],Xn(A.body,e,!0),e)},mathmlBuilder(A,e){return IQ(A.body,e,!0)}});wt({type:"overline",names:["\\overline"],props:{numArgs:1},handler(A,e){var{parser:t}=A,r=e[0];return{type:"overline",mode:t.mode,body:r}},htmlBuilder(A,e){var t=nu(A.body,e.havingCrampedStyle()),r=hD("overline-line",e),i=e.fontMetrics().defaultRuleThickness,u=au({positionType:"firstBaseline",children:[{type:"elem",elem:t},{type:"kern",size:3*i},{type:"elem",elem:r},{type:"kern",size:i}]});return rt(["mord","overline"],[u],e)},mathmlBuilder(A,e){var t=new it("mo",[new gn("‾")]);t.setAttribute("stretchy","true");var r=new it("mover",[Gu(A.body,e),t]);return r.setAttribute("accent","true"),r}});wt({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(A,e)=>{var{parser:t}=A,r=e[0];return{type:"phantom",mode:t.mode,body:xn(r)}},htmlBuilder:(A,e)=>{var t=Xn(A.body,e.withPhantom(),!1);return sI(t)},mathmlBuilder:(A,e)=>{var t=Ag(A.body,e);return new it("mphantom",t)}});xA("\\hphantom","\\smash{\\phantom{#1}}");wt({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(A,e)=>{var{parser:t}=A,r=e[0];return{type:"vphantom",mode:t.mode,body:r}},htmlBuilder:(A,e)=>{var t=rt(["inner"],[nu(A.body,e.withPhantom())]),r=rt(["fix"],[]);return rt(["mord","rlap"],[t,r],e)},mathmlBuilder:(A,e)=>{var t=Ag(xn(A.body),e),r=new it("mphantom",t),i=new it("mpadded",[r]);return i.setAttribute("width","0px"),i}});wt({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(A,e){var{parser:t}=A,r=Ai(e[0],"size").value,i=e[1];return{type:"raisebox",mode:t.mode,dy:r,body:i}},htmlBuilder(A,e){var t=nu(A.body,e),r=Ra(A.dy,e);return au({positionType:"shift",positionData:-r,children:[{type:"elem",elem:t}]})},mathmlBuilder(A,e){var t=new it("mpadded",[Gu(A.body,e)]),r=A.dy.number+A.dy.unit;return t.setAttribute("voffset",r),t}});wt({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(A){var{parser:e}=A;return{type:"internal",mode:e.mode}}});wt({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(A,e,t){var{parser:r}=A,i=t[0],u=Ai(e[0],"size"),a=Ai(e[1],"size");return{type:"rule",mode:r.mode,shift:i&&Ai(i,"size").value,width:u.value,height:a.value}},htmlBuilder(A,e){var t=rt(["mord","rule"],[],e),r=Ra(A.width,e),i=Ra(A.height,e),u=A.shift?Ra(A.shift,e):0;return t.style.borderRightWidth=gt(r),t.style.borderTopWidth=gt(i),t.style.bottom=gt(u),t.width=r,t.height=i+u,t.depth=-u,t.maxFontSize=i*1.125*e.sizeMultiplier,t},mathmlBuilder(A,e){var t=Ra(A.width,e),r=Ra(A.height,e),i=A.shift?Ra(A.shift,e):0,u=e.color&&e.getColor()||"black",a=new it("mspace");a.setAttribute("mathbackground",u),a.setAttribute("width",gt(t)),a.setAttribute("height",gt(r));var n=new it("mpadded",[a]);if(i>=0)n.setAttribute("height",gt(i));else n.setAttribute("height",gt(i)),n.setAttribute("depth",gt(-i));return n.setAttribute("voffset",gt(i)),n}});oDA=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"];wt({type:"sizing",names:oDA,props:{numArgs:0,allowedInText:!0},handler:(A,e)=>{var{breakOnTokenText:t,funcName:r,parser:i}=A,u=i.parseExpression(!1,t);return{type:"sizing",mode:i.mode,size:oDA.indexOf(r)+1,body:u}},htmlBuilder:CAt,mathmlBuilder:(A,e)=>{var t=e.havingSize(A.size),r=Ag(A.body,t),i=new it("mstyle",r);return i.setAttribute("mathsize",gt(t.sizeMultiplier)),i}});wt({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(A,e,t)=>{var{parser:r}=A,i=!1,u=!1,a=t[0]&&Ai(t[0],"ordgroup");if(a){var n;for(var o=0;o<a.body.length;++o){var s=a.body[o];if(n=GR(s).text,n==="t")i=!0;else if(n==="b")u=!0;else{i=!1,u=!1;break}}}else i=!0,u=!0;var l=e[0];return{type:"smash",mode:r.mode,body:l,smashHeight:i,smashDepth:u}},htmlBuilder:(A,e)=>{var t=rt([],[nu(A.body,e)]);if(!A.smashHeight&&!A.smashDepth)return t;if(A.smashHeight)t.height=0;if(A.smashDepth)t.depth=0;if(A.smashHeight&&A.smashDepth)return rt(["mord","smash"],[t],e);if(t.children)for(var r=0;r<t.children.length;r++){if(A.smashHeight)t.children[r].height=0;if(A.smashDepth)t.children[r].depth=0}var i=au({positionType:"firstBaseline",children:[{type:"elem",elem:t}]});return rt(["mord"],[i],e)},mathmlBuilder:(A,e)=>{var t=new it("mpadded",[Gu(A.body,e)]);if(A.smashHeight)t.setAttribute("height","0px");if(A.smashDepth)t.setAttribute("depth","0px");return t}});wt({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(A,e,t){var{parser:r}=A,i=t[0],u=e[0];return{type:"sqrt",mode:r.mode,body:u,index:i}},htmlBuilder(A,e){var t=nu(A.body,e.havingCrampedStyle());if(t.height===0)t.height=e.fontMetrics().xHeight;t=QD(t,e);var r=e.fontMetrics(),i=r.defaultRuleThickness,u=i;if(e.style.id<Wr.TEXT.id)u=e.fontMetrics().xHeight;var a=i+u/4,n=t.height+t.depth+a+i,{span:o,ruleWidth:s,advanceWidth:l}=$$e(n,e),g=o.height-s;if(g>t.height+t.depth+a)a=(a+g-t.height-t.depth)/2;var C=o.height-t.height-a-s;t.style.paddingLeft=gt(l);var B=au({positionType:"firstBaseline",children:[{type:"elem",elem:t,wrapperClasses:["svg-align"]},{type:"kern",size:-(t.height+C)},{type:"elem",elem:o},{type:"kern",size:s}]});if(!A.index)return rt(["mord","sqrt"],[B],e);else{var E=e.havingStyle(Wr.SCRIPTSCRIPT),d=nu(A.index,E,e),I=0.6*(B.height-B.depth),h=au({positionType:"shift",positionData:-I,children:[{type:"elem",elem:d}]}),Q=rt(["root"],[h]);return rt(["mord","sqrt"],[Q,B],e)}},mathmlBuilder(A,e){var{body:t,index:r}=A;return r?new it("mroot",[Gu(t,e),Gu(r,e)]):new it("msqrt",[Gu(t,e)])}});MV={display:Wr.DISPLAY,text:Wr.TEXT,script:Wr.SCRIPT,scriptscript:Wr.SCRIPTSCRIPT};wt({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(A,e){var{breakOnTokenText:t,funcName:r,parser:i}=A,u=i.parseExpression(!0,t),a=r.slice(1,r.length-5);if(!BAt(a))throw Error("Unknown style: "+a);return{type:"styling",mode:i.mode,style:a,body:u}},htmlBuilder(A,e){var t=MV[A.style],r=e.havingStyle(t);if(A.resetFont)r=r.withFont("");return ayA(A.body,r,e)},mathmlBuilder(A,e){var t=MV[A.style],r=e.havingStyle(t);if(A.resetFont)r=r.withFont("");var i=Ag(A.body,r),u=new it("mstyle",i),a={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},n=a[A.style];return u.setAttribute("scriptlevel",n[0]),u.setAttribute("displaystyle",n[1]),u}});jp({type:"supsub",htmlBuilder(A,e){var t=EAt(A,e);if(t)return t(A,e);var{base:r,sup:i,sub:u}=A,a=nu(r,e),n,o,s=e.fontMetrics(),l=0,g=0,C=r&&nI(r);if(i){var B=e.havingStyle(e.style.sup());if(n=nu(i,B,e),!C)l=a.height-B.fontMetrics().supDrop*B.sizeMultiplier/e.sizeMultiplier}if(u){var E=e.havingStyle(e.style.sub());if(o=nu(u,E,e),!C)g=a.depth+E.fontMetrics().subDrop*E.sizeMultiplier/e.sizeMultiplier}var d;if(e.style===Wr.DISPLAY)d=s.sup1;else if(e.style.cramped)d=s.sup3;else d=s.sup2;var I=e.sizeMultiplier,h=gt(0.5/s.ptPerEm/I),Q=null;if(o){var p=A.base&&A.base.type==="op"&&A.base.name&&(A.base.name==="\\oiint"||A.base.name==="\\oiiint");if(a instanceof tl||p){var m;Q=gt(-((m=a.italic)!=null?m:0))}}var f;if(n&&o){l=Math.max(l,d,n.depth+0.25*s.xHeight),g=Math.max(g,s.sub2);var D=s.defaultRuleThickness,w=4*D;if(l-n.depth-(o.height-g)<w){g=w-(l-n.depth)+o.height;var b=0.8*s.xHeight-(l-n.depth);if(b>0)l+=b,g-=b}var F=[{type:"elem",elem:o,shift:g,marginRight:h,marginLeft:Q},{type:"elem",elem:n,shift:-l,marginRight:h}];f=au({positionType:"individualShift",children:F})}else if(o){g=Math.max(g,s.sub1,o.height-0.8*s.xHeight);var v=[{type:"elem",elem:o,marginLeft:Q,marginRight:h}];f=au({positionType:"shift",positionData:g,children:v})}else if(n)l=Math.max(l,d,n.depth+0.25*s.xHeight),f=au({positionType:"shift",positionData:-l,children:[{type:"elem",elem:n,marginRight:h}]});else throw Error("supsub must have either sup or sub.");var S=LV(a,"right")||"mord";return rt([S],[a,rt(["msupsub"],[f])],e)},mathmlBuilder(A,e){var t=!1,r,i;if(A.base&&A.base.type==="horizBrace"){if(i=!!A.sup,i===A.base.isOver)t=!0,r=A.base.isOver}if(A.base&&(A.base.type==="op"||A.base.type==="operatorname"))A.base.parentIsSupSub=!0;var u=[Gu(A.base,e)];if(A.sub)u.push(Gu(A.sub,e));if(A.sup)u.push(Gu(A.sup,e));var a;if(t)a=r?"mover":"munder";else if(!A.sub){var n=A.base;if(n&&n.type==="op"&&n.limits&&(e.style===Wr.DISPLAY||n.alwaysHandleSupSub))a="mover";else if(n&&n.type==="operatorname"&&n.alwaysHandleSupSub&&(n.limits||e.style===Wr.DISPLAY))a="mover";else a="msup"}else if(!A.sup){var o=A.base;if(o&&o.type==="op"&&o.limits&&(e.style===Wr.DISPLAY||o.alwaysHandleSupSub))a="munder";else if(o&&o.type==="operatorname"&&o.alwaysHandleSupSub&&(o.limits||e.style===Wr.DISPLAY))a="munder";else a="msub"}else{var s=A.base;if(s&&s.type==="op"&&s.limits&&e.style===Wr.DISPLAY)a="munderover";else if(s&&s.type==="operatorname"&&s.alwaysHandleSupSub&&(e.style===Wr.DISPLAY||s.limits))a="munderover";else a="msubsup"}return new it(a,u)}});jp({type:"atom",htmlBuilder(A,e){return OV(A.text,A.mode,e,["m"+A.family])},mathmlBuilder(A,e){var t=new it("mo",[zg(A.text,A.mode)]);if(A.family==="bin"){var r=qV(A,e);if(r==="bold-italic")t.setAttribute("mathvariant",r)}else if(A.family==="punct")t.setAttribute("separator","true");else if(A.family==="open"||A.family==="close")t.setAttribute("stretchy","false");return t}});nyA={mi:"italic",mn:"normal",mtext:"normal"};jp({type:"mathord",htmlBuilder(A,e){return LR(A,e,"mathord")},mathmlBuilder(A,e){var t=new it("mi",[zg(A.text,A.mode,e)]),r=qV(A,e)||"italic";if(r!==nyA[t.type])t.setAttribute("mathvariant",r);return t}});jp({type:"textord",htmlBuilder(A,e){return LR(A,e,"textord")},mathmlBuilder(A,e){var t=zg(A.text,A.mode,e),r=qV(A,e)||"normal",i;if(A.mode==="text")i=new it("mtext",[t]);else if(/[0-9]/.test(A.text))i=new it("mn",[t]);else if(A.text==="\\prime")i=new it("mo",[t]);else i=new it("mi",[t]);if(r!==nyA[i.type])i.setAttribute("mathvariant",r);return i}});hV={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},QV={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};jp({type:"spacing",htmlBuilder(A,e){if(QV.hasOwnProperty(A.text)){var t=QV[A.text].className||"";if(A.mode==="text"){var r=LR(A,e,"textord");return r.classes.push(t),r}else return rt(["mspace",t],[OV(A.text,A.mode,e)],e)}else if(hV.hasOwnProperty(A.text))return rt(["mspace",hV[A.text]],[],e);else throw new ut('Unknown type of space "'+A.text+'"')},mathmlBuilder(A,e){var t;if(QV.hasOwnProperty(A.text))t=new it("mtext",[new gn(" ")]);else if(hV.hasOwnProperty(A.text))return new it("mspace");else throw new ut('Unknown type of space "'+A.text+'"');return t}});jp({type:"tag",mathmlBuilder(A,e){var t=new it("mtable",[new it("mtr",[sDA(),new it("mtd",[IQ(A.body,e)]),sDA(),new it("mtd",[IQ(A.tag,e)])])]);return t.setAttribute("width","100%"),t}});lDA={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},gDA={"\\textbf":"textbf","\\textmd":"textmd"},dAt={"\\textit":"textit","\\textup":"textup"};wt({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(A,e){var{parser:t,funcName:r}=A,i=e[0];return{type:"text",mode:t.mode,body:xn(i),font:r}},htmlBuilder(A,e){var t=cDA(A,e),r=Xn(A.body,t,!0);return rt(["mord","text"],r,t)},mathmlBuilder(A,e){var t=cDA(A,e);return IQ(A.body,t)}});wt({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(A,e){var{parser:t}=A;return{type:"underline",mode:t.mode,body:e[0]}},htmlBuilder(A,e){var t=nu(A.body,e),r=hD("underline-line",e),i=e.fontMetrics().defaultRuleThickness,u=au({positionType:"top",positionData:t.height,children:[{type:"kern",size:i},{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:t}]});return rt(["mord","underline"],[u],e)},mathmlBuilder(A,e){var t=new it("mo",[new gn("‾")]);t.setAttribute("stretchy","true");var r=new it("munder",[Gu(A.body,e),t]);return r.setAttribute("accentunder","true"),r}});wt({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(A,e){var{parser:t}=A;return{type:"vcenter",mode:t.mode,body:e[0]}},htmlBuilder(A,e){var t=nu(A.body,e),r=e.fontMetrics().axisHeight,i=0.5*(t.height-r-(t.depth+r));return au({positionType:"shift",positionData:i,children:[{type:"elem",elem:t}]})},mathmlBuilder(A,e){var t=new it("mpadded",[Gu(A.body,e)],["vcenter"]);return new it("mrow",[t])}});wt({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(A,e,t){throw new ut("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(A,e){var t=CDA(A),r=[],i=e.havingStyle(e.style.text());for(var u=0;u<t.length;u++){var a=t[u];if(a==="~")a="\\textasciitilde";r.push(ls(a,"Typewriter-Regular",A.mode,i,["mord","texttt"]))}return rt(["mord","text"].concat(i.sizingClasses(e)),wDA(r),i)},mathmlBuilder(A,e){var t=new gn(CDA(A)),r=new it("mtext",[t]);return r.setAttribute("mathvariant","monospace"),r}});BQ=FDA,QAt="("+IAt+")"+oyA+"*",fAt=new RegExp(TV+"+$"),mAt="("+oyA+"+)|"+(pAt+"|")+"([!-\\[\\]-‧-豈-]"+(TV+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(TV+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+QAt)+("|"+hAt+")");DAt=jDA;xA("\\noexpand",function(A){var e=A.popToken();if(A.isExpandable(e.text))e.noexpand=!0,e.treatAsRelax=!0;return{tokens:[e],numArgs:0}});xA("\\expandafter",function(A){var e=A.popToken();return A.expandOnce(!0),{tokens:[e],numArgs:0}});xA("\\@firstoftwo",function(A){var e=A.consumeArgs(2);return{tokens:e[0],numArgs:0}});xA("\\@secondoftwo",function(A){var e=A.consumeArgs(2);return{tokens:e[1],numArgs:0}});xA("\\@ifnextchar",function(A){var e=A.consumeArgs(3);A.consumeSpaces();var t=A.future();if(e[0].length===1&&e[0][0].text===t.text)return{tokens:e[1],numArgs:0};else return{tokens:e[2],numArgs:0}});xA("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");xA("\\TextOrMath",function(A){var e=A.consumeArgs(2);if(A.mode==="text")return{tokens:e[0],numArgs:0};else return{tokens:e[1],numArgs:0}});BDA={"0":0,"1":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};xA("\\char",function(A){var e=A.popToken(),t,r=0;if(e.text==="'")t=8,e=A.popToken();else if(e.text==='"')t=16,e=A.popToken();else if(e.text==="`")if(e=A.popToken(),e.text[0]==="\\")r=e.text.charCodeAt(1);else if(e.text==="EOF")throw new ut("\\char` missing argument");else r=e.text.charCodeAt(0);else t=10;if(t){if(r=BDA[e.text],r==null||r>=t)throw new ut("Invalid base-"+t+" digit "+e.text);var i;while((i=BDA[A.future().text])!=null&&i<t)r*=t,r+=i,A.popToken()}return"\\@char{"+r+"}"});xA("\\newcommand",(A)=>XV(A,!1,!0,!1));xA("\\renewcommand",(A)=>XV(A,!0,!1,!1));xA("\\providecommand",(A)=>XV(A,!0,!0,!0));xA("\\message",(A)=>{var e=A.consumeArgs(1)[0];return console.log(e.reverse().map((t)=>t.text).join("")),""});xA("\\errmessage",(A)=>{var e=A.consumeArgs(1)[0];return console.error(e.reverse().map((t)=>t.text).join("")),""});xA("\\show",(A)=>{var e=A.popToken(),t=e.text;return console.log(e,A.macros.get(t),BQ[t],Ca.math[t],Ca.text[t]),""});xA("\\bgroup","{");xA("\\egroup","}");xA("~","\\nobreakspace");xA("\\lq","`");xA("\\rq","'");xA("\\aa","\\r a");xA("\\AA","\\r A");xA("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`©}");xA("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");xA("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}");xA("ℬ","\\mathscr{B}");xA("ℰ","\\mathscr{E}");xA("ℱ","\\mathscr{F}");xA("ℋ","\\mathscr{H}");xA("ℐ","\\mathscr{I}");xA("ℒ","\\mathscr{L}");xA("ℳ","\\mathscr{M}");xA("ℛ","\\mathscr{R}");xA("ℭ","\\mathfrak{C}");xA("ℌ","\\mathfrak{H}");xA("ℨ","\\mathfrak{Z}");xA("\\Bbbk","\\Bbb{k}");xA("\\llap","\\mathllap{\\textrm{#1}}");xA("\\rlap","\\mathrlap{\\textrm{#1}}");xA("\\clap","\\mathclap{\\textrm{#1}}");xA("\\mathstrut","\\vphantom{(}");xA("\\underbar","\\underline{\\text{#1}}");xA("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}\\nobreak}{\\char"338}');xA("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}");xA("\\ne","\\neq");xA("≠","\\neq");xA("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}"+"{\\mathrel{\\char`∉}}");xA("∉","\\notin");xA("≘","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}"+"}{\\mathrel{\\char`≘}}");xA("≙","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`≘}}");xA("≚","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`≚}}");xA("≛","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}"+"{\\mathrel{\\char`≛}}");xA("≝","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}"+"{\\mathrel{\\char`≝}}");xA("≞","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}"+"{\\mathrel{\\char`≞}}");xA("≟","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`≟}}");xA("⟂","\\perp");xA("‼","\\mathclose{!\\mkern-0.8mu!}");xA("∌","\\notni");xA("⌜","\\ulcorner");xA("⌝","\\urcorner");xA("⌞","\\llcorner");xA("⌟","\\lrcorner");xA("©","\\copyright");xA("®","\\textregistered");xA("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');xA("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');xA("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');xA("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');xA("\\vdots","{\\varvdots\\rule{0pt}{15pt}}");xA("⋮","\\vdots");xA("\\varGamma","\\mathit{\\Gamma}");xA("\\varDelta","\\mathit{\\Delta}");xA("\\varTheta","\\mathit{\\Theta}");xA("\\varLambda","\\mathit{\\Lambda}");xA("\\varXi","\\mathit{\\Xi}");xA("\\varPi","\\mathit{\\Pi}");xA("\\varSigma","\\mathit{\\Sigma}");xA("\\varUpsilon","\\mathit{\\Upsilon}");xA("\\varPhi","\\mathit{\\Phi}");xA("\\varPsi","\\mathit{\\Psi}");xA("\\varOmega","\\mathit{\\Omega}");xA("\\substack","\\begin{subarray}{c}#1\\end{subarray}");xA("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");xA("\\boxed","\\fbox{$\\displaystyle{#1}$}");xA("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");xA("\\implies","\\DOTSB\\;\\Longrightarrow\\;");xA("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");xA("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}");xA("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");EDA={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"},yAt=new Set(["bin","rel"]);xA("\\dots",function(A){var e="\\dotso",t=A.expandAfterFuture().text;if(t in EDA)e=EDA[t];else if(t.slice(0,4)==="\\not")e="\\dotsb";else if(t in Ca.math){if(yAt.has(Ca.math[t].group))e="\\dotsb"}return e});$V={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};xA("\\dotso",function(A){var e=A.future().text;if(e in $V)return"\\ldots\\,";else return"\\ldots"});xA("\\dotsc",function(A){var e=A.future().text;if(e in $V&&e!==",")return"\\ldots\\,";else return"\\ldots"});xA("\\cdots",function(A){var e=A.future().text;if(e in $V)return"\\@cdots\\,";else return"\\@cdots"});xA("\\dotsb","\\cdots");xA("\\dotsm","\\cdots");xA("\\dotsi","\\!\\cdots");xA("\\dotsx","\\ldots\\,");xA("\\DOTSI","\\relax");xA("\\DOTSB","\\relax");xA("\\DOTSX","\\relax");xA("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");xA("\\,","\\tmspace+{3mu}{.1667em}");xA("\\thinspace","\\,");xA("\\>","\\mskip{4mu}");xA("\\:","\\tmspace+{4mu}{.2222em}");xA("\\medspace","\\:");xA("\\;","\\tmspace+{5mu}{.2777em}");xA("\\thickspace","\\;");xA("\\!","\\tmspace-{3mu}{.1667em}");xA("\\negthinspace","\\!");xA("\\negmedspace","\\tmspace-{4mu}{.2222em}");xA("\\negthickspace","\\tmspace-{5mu}{.277em}");xA("\\enspace","\\kern.5em ");xA("\\enskip","\\hskip.5em\\relax");xA("\\quad","\\hskip1em\\relax");xA("\\qquad","\\hskip2em\\relax");xA("\\tag","\\@ifstar\\tag@literal\\tag@paren");xA("\\tag@paren","\\tag@literal{({#1})}");xA("\\tag@literal",(A)=>{if(A.macros.get("\\df@tag"))throw new ut("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});xA("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");xA("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");xA("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");xA("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");xA("\\newline","\\\\\\relax");xA("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");lyA=gt(zB["Main-Regular"][84][1]-0.7*zB["Main-Regular"][65][1]);xA("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+lyA+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");xA("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+lyA+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");xA("\\hspace","\\@ifstar\\@hspacer\\@hspace");xA("\\@hspace","\\hskip #1\\relax");xA("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");xA("\\ordinarycolon",":");xA("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");xA("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');xA("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');xA("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');xA("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');xA("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');xA("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');xA("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');xA("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');xA("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');xA("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');xA("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');xA("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');xA("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');xA("∷","\\dblcolon");xA("∹","\\eqcolon");xA("≔","\\coloneqq");xA("≕","\\eqqcolon");xA("⩴","\\Coloneqq");xA("\\ratio","\\vcentcolon");xA("\\coloncolon","\\dblcolon");xA("\\colonequals","\\coloneqq");xA("\\coloncolonequals","\\Coloneqq");xA("\\equalscolon","\\eqqcolon");xA("\\equalscoloncolon","\\Eqqcolon");xA("\\colonminus","\\coloneq");xA("\\coloncolonminus","\\Coloneq");xA("\\minuscolon","\\eqcolon");xA("\\minuscoloncolon","\\Eqcolon");xA("\\coloncolonapprox","\\Colonapprox");xA("\\coloncolonsim","\\Colonsim");xA("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");xA("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");xA("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");xA("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");xA("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`∌}}");xA("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");xA("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");xA("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");xA("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");xA("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");xA("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");xA("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");xA("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");xA("\\gvertneqq","\\html@mathml{\\@gvertneqq}{≩}");xA("\\lvertneqq","\\html@mathml{\\@lvertneqq}{≨}");xA("\\ngeqq","\\html@mathml{\\@ngeqq}{≱}");xA("\\ngeqslant","\\html@mathml{\\@ngeqslant}{≱}");xA("\\nleqq","\\html@mathml{\\@nleqq}{≰}");xA("\\nleqslant","\\html@mathml{\\@nleqslant}{≰}");xA("\\nshortmid","\\html@mathml{\\@nshortmid}{∤}");xA("\\nshortparallel","\\html@mathml{\\@nshortparallel}{∦}");xA("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{⊈}");xA("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{⊉}");xA("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{⊊}");xA("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{⫋}");xA("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{⊋}");xA("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{⫌}");xA("\\imath","\\html@mathml{\\@imath}{ı}");xA("\\jmath","\\html@mathml{\\@jmath}{ȷ}");xA("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}"+"{\\mathopen{\\char`⟦}}");xA("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}"+"{\\mathclose{\\char`⟧}}");xA("⟦","\\llbracket");xA("⟧","\\rrbracket");xA("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}"+"{\\mathopen{\\char`⦃}}");xA("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}"+"{\\mathclose{\\char`⦄}}");xA("⦃","\\lBrace");xA("⦄","\\rBrace");xA("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}"+"{\\char`⦵}}");xA("⦵","\\minuso");xA("\\darr","\\downarrow");xA("\\dArr","\\Downarrow");xA("\\Darr","\\Downarrow");xA("\\lang","\\langle");xA("\\rang","\\rangle");xA("\\uarr","\\uparrow");xA("\\uArr","\\Uparrow");xA("\\Uarr","\\Uparrow");xA("\\N","\\mathbb{N}");xA("\\R","\\mathbb{R}");xA("\\Z","\\mathbb{Z}");xA("\\alef","\\aleph");xA("\\alefsym","\\aleph");xA("\\Alpha","\\mathrm{A}");xA("\\Beta","\\mathrm{B}");xA("\\bull","\\bullet");xA("\\Chi","\\mathrm{X}");xA("\\clubs","\\clubsuit");xA("\\cnums","\\mathbb{C}");xA("\\Complex","\\mathbb{C}");xA("\\Dagger","\\ddagger");xA("\\diamonds","\\diamondsuit");xA("\\empty","\\emptyset");xA("\\Epsilon","\\mathrm{E}");xA("\\Eta","\\mathrm{H}");xA("\\exist","\\exists");xA("\\harr","\\leftrightarrow");xA("\\hArr","\\Leftrightarrow");xA("\\Harr","\\Leftrightarrow");xA("\\hearts","\\heartsuit");xA("\\image","\\Im");xA("\\infin","\\infty");xA("\\Iota","\\mathrm{I}");xA("\\isin","\\in");xA("\\Kappa","\\mathrm{K}");xA("\\larr","\\leftarrow");xA("\\lArr","\\Leftarrow");xA("\\Larr","\\Leftarrow");xA("\\lrarr","\\leftrightarrow");xA("\\lrArr","\\Leftrightarrow");xA("\\Lrarr","\\Leftrightarrow");xA("\\Mu","\\mathrm{M}");xA("\\natnums","\\mathbb{N}");xA("\\Nu","\\mathrm{N}");xA("\\Omicron","\\mathrm{O}");xA("\\plusmn","\\pm");xA("\\rarr","\\rightarrow");xA("\\rArr","\\Rightarrow");xA("\\Rarr","\\Rightarrow");xA("\\real","\\Re");xA("\\reals","\\mathbb{R}");xA("\\Reals","\\mathbb{R}");xA("\\Rho","\\mathrm{P}");xA("\\sdot","\\cdot");xA("\\sect","\\S");xA("\\spades","\\spadesuit");xA("\\sub","\\subset");xA("\\sube","\\subseteq");xA("\\supe","\\supseteq");xA("\\Tau","\\mathrm{T}");xA("\\thetasym","\\vartheta");xA("\\weierp","\\wp");xA("\\Zeta","\\mathrm{Z}");xA("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");xA("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");xA("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");xA("\\bra","\\mathinner{\\langle{#1}|}");xA("\\ket","\\mathinner{|{#1}\\rangle}");xA("\\braket","\\mathinner{\\langle{#1}\\rangle}");xA("\\Bra","\\left\\langle#1\\right|");xA("\\Ket","\\left|#1\\right\\rangle");xA("\\bra@ket",gyA(!1));xA("\\bra@set",gyA(!0));xA("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");xA("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");xA("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");xA("\\angln","{\\angl n}");xA("\\blue","\\textcolor{##6495ed}{#1}");xA("\\orange","\\textcolor{##ffa500}{#1}");xA("\\pink","\\textcolor{##ff00af}{#1}");xA("\\red","\\textcolor{##df0030}{#1}");xA("\\green","\\textcolor{##28ae7b}{#1}");xA("\\gray","\\textcolor{gray}{#1}");xA("\\purple","\\textcolor{##9d38bd}{#1}");xA("\\blueA","\\textcolor{##ccfaff}{#1}");xA("\\blueB","\\textcolor{##80f6ff}{#1}");xA("\\blueC","\\textcolor{##63d9ea}{#1}");xA("\\blueD","\\textcolor{##11accd}{#1}");xA("\\blueE","\\textcolor{##0c7f99}{#1}");xA("\\tealA","\\textcolor{##94fff5}{#1}");xA("\\tealB","\\textcolor{##26edd5}{#1}");xA("\\tealC","\\textcolor{##01d1c1}{#1}");xA("\\tealD","\\textcolor{##01a995}{#1}");xA("\\tealE","\\textcolor{##208170}{#1}");xA("\\greenA","\\textcolor{##b6ffb0}{#1}");xA("\\greenB","\\textcolor{##8af281}{#1}");xA("\\greenC","\\textcolor{##74cf70}{#1}");xA("\\greenD","\\textcolor{##1fab54}{#1}");xA("\\greenE","\\textcolor{##0d923f}{#1}");xA("\\goldA","\\textcolor{##ffd0a9}{#1}");xA("\\goldB","\\textcolor{##ffbb71}{#1}");xA("\\goldC","\\textcolor{##ff9c39}{#1}");xA("\\goldD","\\textcolor{##e07d10}{#1}");xA("\\goldE","\\textcolor{##a75a05}{#1}");xA("\\redA","\\textcolor{##fca9a9}{#1}");xA("\\redB","\\textcolor{##ff8482}{#1}");xA("\\redC","\\textcolor{##f9685d}{#1}");xA("\\redD","\\textcolor{##e84d39}{#1}");xA("\\redE","\\textcolor{##bc2612}{#1}");xA("\\maroonA","\\textcolor{##ffbde0}{#1}");xA("\\maroonB","\\textcolor{##ff92c6}{#1}");xA("\\maroonC","\\textcolor{##ed5fa6}{#1}");xA("\\maroonD","\\textcolor{##ca337c}{#1}");xA("\\maroonE","\\textcolor{##9e034e}{#1}");xA("\\purpleA","\\textcolor{##ddd7ff}{#1}");xA("\\purpleB","\\textcolor{##c6b9fc}{#1}");xA("\\purpleC","\\textcolor{##aa87ff}{#1}");xA("\\purpleD","\\textcolor{##7854ab}{#1}");xA("\\purpleE","\\textcolor{##543b78}{#1}");xA("\\mintA","\\textcolor{##f5f9e8}{#1}");xA("\\mintB","\\textcolor{##edf2df}{#1}");xA("\\mintC","\\textcolor{##e0e5cc}{#1}");xA("\\grayA","\\textcolor{##f6f7f7}{#1}");xA("\\grayB","\\textcolor{##f0f1f2}{#1}");xA("\\grayC","\\textcolor{##e3e5e6}{#1}");xA("\\grayD","\\textcolor{##d6d8da}{#1}");xA("\\grayE","\\textcolor{##babec2}{#1}");xA("\\grayF","\\textcolor{##888d93}{#1}");xA("\\grayG","\\textcolor{##626569}{#1}");xA("\\grayH","\\textcolor{##3b3e40}{#1}");xA("\\grayI","\\textcolor{##21242c}{#1}");xA("\\kaBlue","\\textcolor{##314453}{#1}");xA("\\kaGreen","\\textcolor{##71B307}{#1}");cyA={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};dDA=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,QR=Object.freeze({"₊":"+","₋":"-","₌":"=","₍":"(","₎":")","₀":"0","₁":"1","₂":"2","₃":"3","₄":"4","₅":"5","₆":"6","₇":"7","₈":"8","₉":"9","ₐ":"a","ₑ":"e","ₕ":"h","ᵢ":"i","ⱼ":"j","ₖ":"k","ₗ":"l","ₘ":"m","ₙ":"n","ₒ":"o","ₚ":"p","ᵣ":"r","ₛ":"s","ₜ":"t","ᵤ":"u","ᵥ":"v","ₓ":"x","ᵦ":"β","ᵧ":"γ","ᵨ":"ρ","ᵩ":"ϕ","ᵪ":"χ","⁺":"+","⁻":"-","⁼":"=","⁽":"(","⁾":")","⁰":"0","¹":"1","²":"2","³":"3","⁴":"4","⁵":"5","⁶":"6","⁷":"7","⁸":"8","⁹":"9","ᴬ":"A","ᴮ":"B","ᴰ":"D","ᴱ":"E","ᴳ":"G","ᴴ":"H","ᴵ":"I","ᴶ":"J","ᴷ":"K","ᴸ":"L","ᴹ":"M","ᴺ":"N","ᴼ":"O","ᴾ":"P","ᴿ":"R","ᵀ":"T","ᵁ":"U","ⱽ":"V","ᵂ":"W","ᵃ":"a","ᵇ":"b","ᶜ":"c","ᵈ":"d","ᵉ":"e","ᶠ":"f","ᵍ":"g","ʰ":"h","ⁱ":"i","ʲ":"j","ᵏ":"k","ˡ":"l","ᵐ":"m","ⁿ":"n","ᵒ":"o","ᵖ":"p","ʳ":"r","ˢ":"s","ᵗ":"t","ᵘ":"u","ᵛ":"v","ʷ":"w","ˣ":"x","ʸ":"y","ᶻ":"z","ᵝ":"β","ᵞ":"γ","ᵟ":"δ","ᵠ":"ϕ","ᵡ":"χ","ᶿ":"θ"}),pV={"́":{text:"\\'",math:"\\acute"},"̀":{text:"\\`",math:"\\grave"},"̈":{text:"\\\"",math:"\\ddot"},"̃":{text:"\\~",math:"\\tilde"},"̄":{text:"\\=",math:"\\bar"},"̆":{text:"\\u",math:"\\breve"},"̌":{text:"\\v",math:"\\check"},"̂":{text:"\\^",math:"\\hat"},"̇":{text:"\\.",math:"\\dot"},"̊":{text:"\\r",math:"\\mathring"},"̋":{text:"\\H"},"̧":{text:"\\c"}},IDA={"á":"á","à":"à","ä":"ä","ǟ":"ǟ","ã":"ã","ā":"ā","ă":"ă","ắ":"ắ","ằ":"ằ","ẵ":"ẵ","ǎ":"ǎ","â":"â","ấ":"ấ","ầ":"ầ","ẫ":"ẫ","ȧ":"ȧ","ǡ":"ǡ","å":"å","ǻ":"ǻ","ḃ":"ḃ","ć":"ć","ḉ":"ḉ","č":"č","ĉ":"ĉ","ċ":"ċ","ç":"ç","ď":"ď","ḋ":"ḋ","ḑ":"ḑ","é":"é","è":"è","ë":"ë","ẽ":"ẽ","ē":"ē","ḗ":"ḗ","ḕ":"ḕ","ĕ":"ĕ","ḝ":"ḝ","ě":"ě","ê":"ê","ế":"ế","ề":"ề","ễ":"ễ","ė":"ė","ȩ":"ȩ","ḟ":"ḟ","ǵ":"ǵ","ḡ":"ḡ","ğ":"ğ","ǧ":"ǧ","ĝ":"ĝ","ġ":"ġ","ģ":"ģ","ḧ":"ḧ","ȟ":"ȟ","ĥ":"ĥ","ḣ":"ḣ","ḩ":"ḩ","í":"í","ì":"ì","ï":"ï","ḯ":"ḯ","ĩ":"ĩ","ī":"ī","ĭ":"ĭ","ǐ":"ǐ","î":"î","ǰ":"ǰ","ĵ":"ĵ","ḱ":"ḱ","ǩ":"ǩ","ķ":"ķ","ĺ":"ĺ","ľ":"ľ","ļ":"ļ","ḿ":"ḿ","ṁ":"ṁ","ń":"ń","ǹ":"ǹ","ñ":"ñ","ň":"ň","ṅ":"ṅ","ņ":"ņ","ó":"ó","ò":"ò","ö":"ö","ȫ":"ȫ","õ":"õ","ṍ":"ṍ","ṏ":"ṏ","ȭ":"ȭ","ō":"ō","ṓ":"ṓ","ṑ":"ṑ","ŏ":"ŏ","ǒ":"ǒ","ô":"ô","ố":"ố","ồ":"ồ","ỗ":"ỗ","ȯ":"ȯ","ȱ":"ȱ","ő":"ő","ṕ":"ṕ","ṗ":"ṗ","ŕ":"ŕ","ř":"ř","ṙ":"ṙ","ŗ":"ŗ","ś":"ś","ṥ":"ṥ","š":"š","ṧ":"ṧ","ŝ":"ŝ","ṡ":"ṡ","ş":"ş","ẗ":"ẗ","ť":"ť","ṫ":"ṫ","ţ":"ţ","ú":"ú","ù":"ù","ü":"ü","ǘ":"ǘ","ǜ":"ǜ","ǖ":"ǖ","ǚ":"ǚ","ũ":"ũ","ṹ":"ṹ","ū":"ū","ṻ":"ṻ","ŭ":"ŭ","ǔ":"ǔ","û":"û","ů":"ů","ű":"ű","ṽ":"ṽ","ẃ":"ẃ","ẁ":"ẁ","ẅ":"ẅ","ŵ":"ŵ","ẇ":"ẇ","ẘ":"ẘ","ẍ":"ẍ","ẋ":"ẋ","ý":"ý","ỳ":"ỳ","ÿ":"ÿ","ỹ":"ỹ","ȳ":"ȳ","ŷ":"ŷ","ẏ":"ẏ","ẙ":"ẙ","ź":"ź","ž":"ž","ẑ":"ẑ","ż":"ż","Á":"Á","À":"À","Ä":"Ä","Ǟ":"Ǟ","Ã":"Ã","Ā":"Ā","Ă":"Ă","Ắ":"Ắ","Ằ":"Ằ","Ẵ":"Ẵ","Ǎ":"Ǎ","Â":"Â","Ấ":"Ấ","Ầ":"Ầ","Ẫ":"Ẫ","Ȧ":"Ȧ","Ǡ":"Ǡ","Å":"Å","Ǻ":"Ǻ","Ḃ":"Ḃ","Ć":"Ć","Ḉ":"Ḉ","Č":"Č","Ĉ":"Ĉ","Ċ":"Ċ","Ç":"Ç","Ď":"Ď","Ḋ":"Ḋ","Ḑ":"Ḑ","É":"É","È":"È","Ë":"Ë","Ẽ":"Ẽ","Ē":"Ē","Ḗ":"Ḗ","Ḕ":"Ḕ","Ĕ":"Ĕ","Ḝ":"Ḝ","Ě":"Ě","Ê":"Ê","Ế":"Ế","Ề":"Ề","Ễ":"Ễ","Ė":"Ė","Ȩ":"Ȩ","Ḟ":"Ḟ","Ǵ":"Ǵ","Ḡ":"Ḡ","Ğ":"Ğ","Ǧ":"Ǧ","Ĝ":"Ĝ","Ġ":"Ġ","Ģ":"Ģ","Ḧ":"Ḧ","Ȟ":"Ȟ","Ĥ":"Ĥ","Ḣ":"Ḣ","Ḩ":"Ḩ","Í":"Í","Ì":"Ì","Ï":"Ï","Ḯ":"Ḯ","Ĩ":"Ĩ","Ī":"Ī","Ĭ":"Ĭ","Ǐ":"Ǐ","Î":"Î","İ":"İ","Ĵ":"Ĵ","Ḱ":"Ḱ","Ǩ":"Ǩ","Ķ":"Ķ","Ĺ":"Ĺ","Ľ":"Ľ","Ļ":"Ļ","Ḿ":"Ḿ","Ṁ":"Ṁ","Ń":"Ń","Ǹ":"Ǹ","Ñ":"Ñ","Ň":"Ň","Ṅ":"Ṅ","Ņ":"Ņ","Ó":"Ó","Ò":"Ò","Ö":"Ö","Ȫ":"Ȫ","Õ":"Õ","Ṍ":"Ṍ","Ṏ":"Ṏ","Ȭ":"Ȭ","Ō":"Ō","Ṓ":"Ṓ","Ṑ":"Ṑ","Ŏ":"Ŏ","Ǒ":"Ǒ","Ô":"Ô","Ố":"Ố","Ồ":"Ồ","Ỗ":"Ỗ","Ȯ":"Ȯ","Ȱ":"Ȱ","Ő":"Ő","Ṕ":"Ṕ","Ṗ":"Ṗ","Ŕ":"Ŕ","Ř":"Ř","Ṙ":"Ṙ","Ŗ":"Ŗ","Ś":"Ś","Ṥ":"Ṥ","Š":"Š","Ṧ":"Ṧ","Ŝ":"Ŝ","Ṡ":"Ṡ","Ş":"Ş","Ť":"Ť","Ṫ":"Ṫ","Ţ":"Ţ","Ú":"Ú","Ù":"Ù","Ü":"Ü","Ǘ":"Ǘ","Ǜ":"Ǜ","Ǖ":"Ǖ","Ǚ":"Ǚ","Ũ":"Ũ","Ṹ":"Ṹ","Ū":"Ū","Ṻ":"Ṻ","Ŭ":"Ŭ","Ǔ":"Ǔ","Û":"Û","Ů":"Ů","Ű":"Ű","Ṽ":"Ṽ","Ẃ":"Ẃ","Ẁ":"Ẁ","Ẅ":"Ẅ","Ŵ":"Ŵ","Ẇ":"Ẇ","Ẍ":"Ẍ","Ẋ":"Ẋ","Ý":"Ý","Ỳ":"Ỳ","Ÿ":"Ÿ","Ỹ":"Ỹ","Ȳ":"Ȳ","Ŷ":"Ŷ","Ẏ":"Ẏ","Ź":"Ź","Ž":"Ž","Ẑ":"Ẑ","Ż":"Ż","ά":"ά","ὰ":"ὰ","ᾱ":"ᾱ","ᾰ":"ᾰ","έ":"έ","ὲ":"ὲ","ή":"ή","ὴ":"ὴ","ί":"ί","ὶ":"ὶ","ϊ":"ϊ","ΐ":"ΐ","ῒ":"ῒ","ῑ":"ῑ","ῐ":"ῐ","ό":"ό","ὸ":"ὸ","ύ":"ύ","ὺ":"ὺ","ϋ":"ϋ","ΰ":"ΰ","ῢ":"ῢ","ῡ":"ῡ","ῠ":"ῠ","ώ":"ώ","ὼ":"ὼ","Ύ":"Ύ","Ὺ":"Ὺ","Ϋ":"Ϋ","Ῡ":"Ῡ","Ῠ":"Ῠ","Ώ":"Ώ","Ὼ":"Ὼ"};JR.endOfExpression=new Set(["}","\\endgroup","\\end","\\right","&"]);if(typeof document<"u"){if(document.compatMode!=="CSS1Compat")typeof console<"u"&&console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype."),ByA=function(){throw new ut("KaTeX doesn't work in quirks mode.")}}FAt={Span:Vp,Anchor:pb,SymbolNode:tl,SvgNode:ZB,PathNode:aI,LineNode:wR},dyA={version:kAt,render:ByA,renderToString:wAt,ParseError:ut,SETTINGS_SCHEMA:fV,__parse:bAt,__renderToDomTree:ej,__renderToHTMLTree:vAt,__setFontMetrics:E$e,__defineSymbol:V,__defineFunction:wt,__defineMacro:xA,__domTree:FAt}});function LyA(){Al.addHook("beforeSanitizeAttributes",(e)=>{if(e.tagName==="A"&&e.hasAttribute("target"))e.setAttribute("data-temp-href-target",e.getAttribute("target")??"")}),Al.addHook("afterSanitizeAttributes",(e)=>{if(e.tagName==="A"&&e.hasAttribute("data-temp-href-target")){if(e.setAttribute("target",e.getAttribute("data-temp-href-target")??""),e.removeAttribute("data-temp-href-target"),e.getAttribute("target")==="_blank")e.setAttribute("rel","noopener")}})}function ZR(A){return[...A.cssRules].map((e)=>e.cssText).join(`
|
||
`)}var tj,Ea,AE="#ffffff",eE="#f2f2f2",br,xAt,SAt,LAt,RAt,NAt,R0,GAt,UAt,MAt,TAt,YAt,HAt,KAt,JAt,OAt,PAt,_At,WAt,qAt,zAt,ZAt,VAt,$B,jo,myA,DyA,jAt,ur,XAt,$At,yb,ij,$p,Zg,rl,_R,Xp,Db,wb,yyA,wyA,byA,uj,aj,st,vyA,kyA,bb,Aet,hyA,FyA,eet,qR,ki,nj,mD,tet,oj,QQ,vb,zR,xyA,SyA,Af,ret,iet,RyA,QyA,or,uet,aet,net,oet,NyA,ef,set,get,tE,rj,cet,Cet,pyA,OR,da,DD,Bet,yD,_e,Eet,det,jr,rE,PR,Iet,het,GyA,VR,sj="",lj="",gj="",cj,sr,Dr,vr,kr,Fr,Mr,xr,fyA,Qet,OA,kb,jR,XR,Fb,pet,WR,xb,$R,fet;var rr=P(()=>{ir();Nt();kn();kn();kn();kn();kn();kn();kn();kn();kn();kn();kn();kn();cD();tj=y((A,e,{depth:t=2}={})=>{let r={depth:t};if(Array.isArray(e)&&!Array.isArray(A))return e.forEach((i)=>tj(A,i,r)),A;else if(Array.isArray(e)&&Array.isArray(A))return e.forEach((i)=>{if(!A.includes(i))A.push(i)}),A;if(A===void 0||A===null||t<=0)if(A!==void 0&&A!==null&&typeof A==="object"&&typeof e==="object")return Object.assign(A,e);else return e;if(e!==void 0&&e!==null&&typeof A==="object"&&typeof e==="object"){let i=A;Object.entries(e).forEach(([u,a])=>{if(typeof a==="object"){if(a===null)return;if(!Object.hasOwn(A,u))Object.defineProperty(A,u,{value:void 0,writable:!0,enumerable:!0,configurable:!0});if(i[u]===void 0)i[u]=Array.isArray(a)?[]:{};if(typeof i[u]==="object")i[u]=tj(i[u],a,{depth:t-1})}else if(typeof i[u]!=="object")if(Object.hasOwn(A,u))i[u]=a;else Object.defineProperty(A,u,{value:a,writable:!0,enumerable:!0,configurable:!0})})}return A},"assignWithDepth"),Ea=tj,br=y((A,e)=>e?QA(A,{s:-40,l:10}):QA(A,{s:-40,l:-10}),"mkBorder"),xAt=class{static{y(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.useGradient=!0,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||br(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||br(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||br(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ue(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ue(this.tertiaryColor),this.lineColor=this.lineColor||ue(this.background),this.arrowheadColor=this.arrowheadColor||ue(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ue(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||"navy",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.darkMode)this.rowOdd=this.rowOdd||he(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||he(this.mainBkg,10);else this.rowOdd=this.rowOdd||Ie(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Ie(this.mainBkg,5);if(this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.darkMode)for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],75);else for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],25);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||ue(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)if(this.darkMode)this["cScalePeer"+e]=this["cScalePeer"+e]||Ie(this["cScale"+e],10);else this["cScalePeer"+e]=this["cScalePeer"+e]||he(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(5+e*3)}),this["surfacePeer"+e]=this["surfacePeer"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(8+e*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||QA(this.primaryColor,{h:64}),this.fillType3=this.fillType3||QA(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||QA(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||QA(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||QA(this.primaryColor,{h:128}),this.fillType7=this.fillType7||QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-10}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.venn1=this.venn1??QA(this.primaryColor,{l:-30}),this.venn2=this.venn2??QA(this.secondaryColor,{l:-30}),this.venn3=this.venn3??QA(this.tertiaryColor,{l:-30}),this.venn4=this.venn4??QA(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??QA(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??QA(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??QA(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??QA(this.secondaryColor,{h:120,l:-30}),this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#8B0000",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#E8F5E9",complicatedBg:this.cynefin?.complicatedBg||"#E3F2FD",chaoticBg:this.cynefin?.chaoticBg||"#FBE9E7",clearBg:this.cynefin?.clearBg||"#FFF8E1",confusionBg:this.cynefin?.confusionBg||"#F3E5F5",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#dc3545",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.background,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.background},this.archEdgeColor=this.archEdgeColor||"#777",this.archEdgeArrowColor=this.archEdgeArrowColor||"#777",this.archEdgeWidth=this.archEdgeWidth||"3",this.archGroupBorderColor=this.archGroupBorderColor||"#000",this.archGroupBorderWidth=this.archGroupBorderWidth||"2px",this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"white",this.emUiStroke=this.emUiStroke||"#dbdada",this.emProcessorFill=this.emProcessorFill||"#edb3f6",this.emProcessorStroke=this.emProcessorStroke||"#b88cbf",this.emReadModelFill=this.emReadModelFill||"#d3f1a2",this.emReadModelStroke=this.emReadModelStroke||"#a3b732",this.emCommandFill=this.emCommandFill||"#bcd6fe",this.emCommandStroke=this.emCommandStroke||"#679ac3",this.emEventFill=this.emEventFill||"#ffb778",this.emEventStroke=this.emEventStroke||"#c19a0f",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||"rgb(250,250,250)",this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||"rgb(240,240,240)",this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},SAt=y((A)=>{let e=new xAt;return e.calculate(A),e},"getThemeVariables"),LAt=class{static{y(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ie(this.primaryColor,16),this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=ue(this.background),this.secondaryBorderColor=br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=br(this.tertiaryColor,this.darkMode),this.primaryTextColor=ue(this.primaryColor),this.secondaryTextColor=ue(this.secondaryColor),this.tertiaryTextColor=ue(this.tertiaryColor),this.lineColor=ue(this.background),this.textColor=ue(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ie(ue("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=ln(255,255,255,0.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.clusterBkg="#302F3D",this.sectionBkgColor=he("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=he(this.sectionBkgColor,10),this.taskBorderColor=ln(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=ln(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||Ie(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||he(this.mainBkg,10),this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal"}updateColors(){this.secondBkg=Ie(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=Ie(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.background,this.taskBkgColor=Ie(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=ue(this.doneTaskBkgColor),this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=QA(this.primaryColor,{h:64}),this.fillType3=QA(this.secondaryColor,{h:64}),this.fillType4=QA(this.primaryColor,{h:-64}),this.fillType5=QA(this.secondaryColor,{h:-64}),this.fillType6=QA(this.primaryColor,{h:128}),this.fillType7=QA(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330});for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleInv"+A]=this["cScaleInv"+A]||ue(this["cScale"+A]);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScalePeer"+A]=this["cScalePeer"+A]||Ie(this["cScale"+A],10);for(let A=0;A<5;A++)this["surface"+A]=this["surface"+A]||QA(this.mainBkg,{h:30,s:-30,l:-(-10+A*4)}),this["surfacePeer"+A]=this["surfacePeer"+A]||QA(this.mainBkg,{h:30,s:-30,l:-(-7+A*4)});this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleLabel"+A]=this["cScaleLabel"+A]||this.scaleLabelColor;for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["pie"+A]=this["cScale"+A];this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.mainContrastColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.mainContrastColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7";for(let A=0;A<8;A++)this["venn"+(A+1)]=this["venn"+(A+1)]??Ie(this["cScale"+A],30);this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#FF6B6B",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#1B5E20",complicatedBg:this.cynefin?.complicatedBg||"#0D47A1",chaoticBg:this.cynefin?.chaoticBg||"#BF360C",clearBg:this.cynefin?.clearBg||"#F57F17",confusionBg:this.cynefin?.confusionBg||"#4A148C",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#3498db,#2ecc71,#e74c3c,#f1c40f,#bdc3c7,#ffffff,#34495e,#9b59b6,#1abc9c,#e67e22"},this.packet={startByteColor:this.primaryTextColor,endByteColor:this.primaryTextColor,labelColor:this.primaryTextColor,titleColor:this.primaryTextColor,blockStrokeColor:this.primaryTextColor,blockFillColor:this.background},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#ff6b6b",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.mainBkg,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.mainBkg},this.classText=this.primaryTextColor,this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=Ie(this.secondaryColor,20),this.git1=Ie(this.pie2||this.secondaryColor,20),this.git2=Ie(this.pie3||this.tertiaryColor,20),this.git3=Ie(this.pie4||QA(this.primaryColor,{h:-30}),20),this.git4=Ie(this.pie5||QA(this.primaryColor,{h:-60}),20),this.git5=Ie(this.pie6||QA(this.primaryColor,{h:-90}),10),this.git6=Ie(this.pie7||QA(this.primaryColor,{h:60}),10),this.git7=Ie(this.pie8||QA(this.primaryColor,{h:120}),20),this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||ue(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||ue(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"#2d2d2d",this.emUiStroke=this.emUiStroke||"#555",this.emProcessorFill=this.emProcessorFill||Ie("#5a3d5c",10),this.emProcessorStroke=this.emProcessorStroke||"#8a6d8c",this.emReadModelFill=this.emReadModelFill||Ie("#3d5a2d",10),this.emReadModelStroke=this.emReadModelStroke||"#6d8c5c",this.emCommandFill=this.emCommandFill||Ie("#2d3d5a",10),this.emCommandStroke=this.emCommandStroke||"#5c6d8c",this.emEventFill=this.emEventFill||Ie("#5a452d",10),this.emEventStroke=this.emEventStroke||"#8c755c",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||Ie(this.background,5),this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||Ie(this.background,12),this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||Ie(this.background,12),this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||Ie(this.background,2),this.nodeBorder=this.nodeBorder||"#999"}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},RAt=y((A)=>{let e=new LAt;return e.calculate(A),e},"getThemeVariables"),NAt=class{static{y(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=QA(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=br(this.primaryColor,this.darkMode),this.secondaryBorderColor=br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=br(this.tertiaryColor,this.darkMode),this.primaryTextColor=ue(this.primaryColor),this.secondaryTextColor=ue(this.secondaryColor),this.tertiaryTextColor=ue(this.tertiaryColor),this.lineColor=ue(this.background),this.textColor=ue(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.primaryBorderColor=br(this.primaryColor,this.darkMode),this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.clusterBkg="#FBFBFF",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.sectionBkgColor=ln(102,102,255,0.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="navy",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd="calculated",this.rowEven="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!1,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow(1px 2px 2px rgba(185, 185, 185, 1))",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||he(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||he(this.tertiaryColor,40);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScale"+A]=he(this["cScale"+A],10),this["cScalePeer"+A]=this["cScalePeer"+A]||he(this["cScale"+A],25);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleInv"+A]=this["cScaleInv"+A]||QA(this["cScale"+A],{h:180});for(let A=0;A<5;A++)this["surface"+A]=this["surface"+A]||QA(this.mainBkg,{h:30,l:-(5+A*5)}),this["surfacePeer"+A]=this["surfacePeer"+A]||QA(this.mainBkg,{h:30,l:-(7+A*5)});if(this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor,this.labelTextColor!=="calculated"){this.cScaleLabel0=this.cScaleLabel0||ue(this.labelTextColor),this.cScaleLabel3=this.cScaleLabel3||ue(this.labelTextColor);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleLabel"+A]=this["cScaleLabel"+A]||this.labelTextColor}if(this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.titleColor=this.textColor,this.edgeLabelBackground=this.labelBackground,this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.signalColor=this.textColor,this.signalTextColor=this.textColor,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.rowOdd=this.rowOdd||Ie(this.primaryColor,75)||"#ffffff",this.rowEven=this.rowEven||Ie(this.primaryColor,1),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.specialStateColor=this.lineColor,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=QA(this.primaryColor,{h:64}),this.fillType3=QA(this.secondaryColor,{h:64}),this.fillType4=QA(this.primaryColor,{h:-64}),this.fillType5=QA(this.secondaryColor,{h:-64}),this.fillType6=QA(this.primaryColor,{h:128}),this.fillType7=QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||QA(this.tertiaryColor,{l:-40}),this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-30}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-20}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-20}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-40}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:-40}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-40}),this.pie11=this.pie11||QA(this.primaryColor,{h:-90,l:-40}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-30}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.venn1=this.venn1??QA(this.primaryColor,{l:-30}),this.venn2=this.venn2??QA(this.secondaryColor,{l:-30}),this.venn3=this.venn3??QA(this.tertiaryColor,{l:-40}),this.venn4=this.venn4??QA(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??QA(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??QA(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??QA(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??QA(this.secondaryColor,{h:120,l:-30}),this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#8B0000",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#E8F5E9",complicatedBg:this.cynefin?.complicatedBg||"#E3F2FD",chaoticBg:this.cynefin?.chaoticBg||"#FBE9E7",clearBg:this.cynefin?.clearBg||"#FFF8E1",confusionBg:this.cynefin?.confusionBg||"#F3E5F5",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#dc3545",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.background,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.background},this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#ECECFF,#8493A6,#FFC3A0,#DCDDE1,#B8E994,#D1A36F,#C3CDE6,#FFB6C1,#496078,#F8F3E3"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.labelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||he(ue(this.git0),25),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||ue(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||ue(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"white",this.emUiStroke=this.emUiStroke||"#dbdada",this.emProcessorFill=this.emProcessorFill||"#edb3f6",this.emProcessorStroke=this.emProcessorStroke||"#b88cbf",this.emReadModelFill=this.emReadModelFill||"#d3f1a2",this.emReadModelStroke=this.emReadModelStroke||"#a3b732",this.emCommandFill=this.emCommandFill||"#bcd6fe",this.emCommandStroke=this.emCommandStroke||"#679ac3",this.emEventFill=this.emEventFill||"#ffb778",this.emEventStroke=this.emEventStroke||"#c19a0f",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||"rgb(250,250,250)",this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||"rgb(240,240,240)",this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(Object.keys(this).forEach((t)=>{if(this[t]==="calculated")this[t]=void 0}),typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},R0=y((A)=>{let e=new NAt;return e.calculate(A),e},"getThemeVariables"),GAt=class{static{y(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=Ie("#cde498",10),this.primaryBorderColor=br(this.primaryColor,this.darkMode),this.secondaryBorderColor=br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=br(this.tertiaryColor,this.darkMode),this.primaryTextColor=ue(this.primaryColor),this.secondaryTextColor=ue(this.secondaryColor),this.tertiaryTextColor=ue(this.primaryColor),this.lineColor=ue(this.background),this.textColor=ue(this.background),this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,0.5))"}updateColors(){this.actorBorder=he(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||he(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||he(this.tertiaryColor,40);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScale"+A]=he(this["cScale"+A],10),this["cScalePeer"+A]=this["cScalePeer"+A]||he(this["cScale"+A],25);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleInv"+A]=this["cScaleInv"+A]||QA(this["cScale"+A],{h:180});this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor;for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleLabel"+A]=this["cScaleLabel"+A]||this.scaleLabelColor;for(let A=0;A<5;A++)this["surface"+A]=this["surface"+A]||QA(this.mainBkg,{h:30,s:-30,l:-(5+A*5)}),this["surfacePeer"+A]=this["surfacePeer"+A]||QA(this.mainBkg,{h:30,s:-30,l:-(8+A*5)});if(this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.taskBorderColor=this.border1,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,this.activeTaskBorderColor=this.taskBorderColor,this.activeTaskBkgColor=this.mainBkg,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.rowOdd=this.rowOdd||Ie(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Ie(this.mainBkg,20),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor=this.lineColor,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=QA(this.primaryColor,{h:64}),this.fillType3=QA(this.secondaryColor,{h:64}),this.fillType4=QA(this.primaryColor,{h:-64}),this.fillType5=QA(this.secondaryColor,{h:-64}),this.fillType6=QA(this.primaryColor,{h:128}),this.fillType7=QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-30}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-30}),this.pie6=this.pie6||QA(this.tertiaryColor,{h:40,l:-40}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-50}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-50}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-50}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.venn1=this.venn1??QA(this.primaryColor,{l:-30}),this.venn2=this.venn2??QA(this.secondaryColor,{l:-30}),this.venn3=this.venn3??QA(this.tertiaryColor,{l:-30}),this.venn4=this.venn4??QA(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??QA(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??QA(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??QA(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??QA(this.secondaryColor,{h:120,l:-30}),this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#8B4513",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#C8E6C9",complicatedBg:this.cynefin?.complicatedBg||"#DCEDC8",chaoticBg:this.cynefin?.chaoticBg||"#FFE0B2",clearBg:this.cynefin?.clearBg||"#FFF9C4",confusionBg:this.cynefin?.confusionBg||"#D7CCC8",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.packet={startByteColor:this.primaryTextColor,endByteColor:this.primaryTextColor,labelColor:this.primaryTextColor,titleColor:this.primaryTextColor,blockStrokeColor:this.primaryTextColor,blockFillColor:this.mainBkg},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#dc3545",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.background,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.background},this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#CDE498,#FF6B6B,#A0D2DB,#D7BDE2,#F0F0F0,#FFC3A0,#7FD8BE,#FF9A8B,#FAF3E0,#FFF176"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.edgeLabelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||ue(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||ue(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"white",this.emUiStroke=this.emUiStroke||"#dbdada",this.emProcessorFill=this.emProcessorFill||"#edb3f6",this.emProcessorStroke=this.emProcessorStroke||"#b88cbf",this.emReadModelFill=this.emReadModelFill||"#d3f1a2",this.emReadModelStroke=this.emReadModelStroke||"#a3b732",this.emCommandFill=this.emCommandFill||"#bcd6fe",this.emCommandStroke=this.emCommandStroke||"#679ac3",this.emEventFill=this.emEventFill||"#ffb778",this.emEventStroke=this.emEventStroke||"#c19a0f",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||"rgb(250,250,250)",this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||"rgb(240,240,240)",this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},UAt=y((A)=>{let e=new GAt;return e.calculate(A),e},"getThemeVariables"),MAt=class{static{y(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Ie(this.contrast,55),this.background="#ffffff",this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=br(this.primaryColor,this.darkMode),this.secondaryBorderColor=br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=br(this.tertiaryColor,this.darkMode),this.primaryTextColor=ue(this.primaryColor),this.secondaryTextColor=ue(this.secondaryColor),this.tertiaryTextColor=ue(this.tertiaryColor),this.lineColor=ue(this.background),this.textColor=ue(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal",this.rowOdd=this.rowOdd||Ie(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||"#f4f4f4",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))"}updateColors(){this.secondBkg=Ie(this.contrast,55),this.border2=this.contrast,this.actorBorder=Ie(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleInv"+A]=this["cScaleInv"+A]||ue(this["cScale"+A]);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)if(this.darkMode)this["cScalePeer"+A]=this["cScalePeer"+A]||Ie(this["cScale"+A],10);else this["cScalePeer"+A]=this["cScalePeer"+A]||he(this["cScale"+A],10);this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor),this.cScaleLabel0=this.cScaleLabel0||this.cScale1,this.cScaleLabel2=this.cScaleLabel2||this.cScale1;for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleLabel"+A]=this["cScaleLabel"+A]||this.scaleLabelColor;for(let A=0;A<5;A++)this["surface"+A]=this["surface"+A]||QA(this.mainBkg,{l:-(5+A*5)}),this["surfacePeer"+A]=this["surfacePeer"+A]||QA(this.mainBkg,{l:-(8+A*5)});this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.titleColor=this.text,this.sectionBkgColor=Ie(this.contrast,30),this.sectionBkgColor2=Ie(this.contrast,30),this.taskBorderColor=he(this.contrast,10),this.taskBkgColor=this.contrast,this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor=this.text,this.taskTextOutsideColor=this.taskTextDarkColor,this.activeTaskBorderColor=this.taskBorderColor,this.activeTaskBkgColor=this.mainBkg,this.gridColor=Ie(this.border1,30),this.doneTaskBkgColor=this.done,this.doneTaskBorderColor=this.lineColor,this.critBkgColor=this.critical,this.critBorderColor=he(this.critBkgColor,10),this.todayLineColor=this.critBkgColor,this.vertLineColor=this.critBkgColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||"#000",this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f4f4f4",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.stateBorder=this.stateBorder||"#000",this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#222",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=QA(this.primaryColor,{h:64}),this.fillType3=QA(this.secondaryColor,{h:64}),this.fillType4=QA(this.primaryColor,{h:-64}),this.fillType5=QA(this.secondaryColor,{h:-64}),this.fillType6=QA(this.primaryColor,{h:128}),this.fillType7=QA(this.secondaryColor,{h:128});for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["pie"+A]=this["cScale"+A];this.pie12=this.pie0,this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7";for(let A=0;A<8;A++)this["venn"+(A+1)]=this["venn"+(A+1)]??this["cScale"+A];this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#8B0000",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#E8F5E9",complicatedBg:this.cynefin?.complicatedBg||"#E3F2FD",chaoticBg:this.cynefin?.chaoticBg||"#FBE9E7",clearBg:this.cynefin?.clearBg||"#FFF8E1",confusionBg:this.cynefin?.confusionBg||"#F3E5F5",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#EEE,#6BB8E4,#8ACB88,#C7ACD6,#E8DCC2,#FFB2A8,#FFF380,#7E8D91,#FFD8B1,#FAF3E0"},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#dc3545",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.background,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.background},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.edgeLabelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=he(this.pie1,25)||this.primaryColor,this.git1=this.pie2||this.secondaryColor,this.git2=this.pie3||this.tertiaryColor,this.git3=this.pie4||QA(this.primaryColor,{h:-30}),this.git4=this.pie5||QA(this.primaryColor,{h:-60}),this.git5=this.pie6||QA(this.primaryColor,{h:-90}),this.git6=this.pie7||QA(this.primaryColor,{h:60}),this.git7=this.pie8||QA(this.primaryColor,{h:120}),this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.branchLabelColor=this.branchLabelColor||this.labelTextColor,this.gitBranchLabel0=this.branchLabelColor,this.gitBranchLabel1="white",this.gitBranchLabel2=this.branchLabelColor,this.gitBranchLabel3="white",this.gitBranchLabel4=this.branchLabelColor,this.gitBranchLabel5=this.branchLabelColor,this.gitBranchLabel6=this.branchLabelColor,this.gitBranchLabel7=this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"white",this.emUiStroke=this.emUiStroke||"#dbdada",this.emProcessorFill=this.emProcessorFill||"#edb3f6",this.emProcessorStroke=this.emProcessorStroke||"#b88cbf",this.emReadModelFill=this.emReadModelFill||"#d3f1a2",this.emReadModelStroke=this.emReadModelStroke||"#a3b732",this.emCommandFill=this.emCommandFill||"#bcd6fe",this.emCommandStroke=this.emCommandStroke||"#679ac3",this.emEventFill=this.emEventFill||"#ffb778",this.emEventStroke=this.emEventStroke||"#c19a0f",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||"rgb(250,250,250)",this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||"rgb(240,240,240)",this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},TAt=y((A)=>{let e=new MAt;return e.calculate(A),e},"getThemeVariables"),YAt=class{static{y(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=3,this.strokeWidth=2,this.primaryBorderColor=br(this.primaryColor,this.darkMode),this.fontFamily="arial, sans-serif",this.fontSize="14px",this.nodeBorder="#000000",this.stateBorder="#000000",this.useGradient=!0,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="drop-shadow( 0px 1px 2px rgba(0, 0, 0, 0.25));",this.tertiaryColor="#ffffff",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||br(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||br(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||br(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ue(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ue(this.tertiaryColor),this.lineColor=this.lineColor||ue(this.background),this.arrowheadColor=this.arrowheadColor||ue(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ue(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let A="#ECECFE",e="#E9E9F1",t=QA(A,{h:180,l:5});if(this.sectionBkgColor=this.sectionBkgColor||t,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||e,this.sectionBkgColor2=this.sectionBkgColor2||A,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||A,this.activeTaskBorderColor=this.activeTaskBorderColor||A,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(A,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||A,this.cScale1=this.cScale1||e,this.cScale2=this.cScale2||t,this.cScale3=this.cScale3||QA(A,{h:30}),this.cScale4=this.cScale4||QA(A,{h:60}),this.cScale5=this.cScale5||QA(A,{h:90}),this.cScale6=this.cScale6||QA(A,{h:120}),this.cScale7=this.cScale7||QA(A,{h:150}),this.cScale8=this.cScale8||QA(A,{h:210,l:150}),this.cScale9=this.cScale9||QA(A,{h:270}),this.cScale10=this.cScale10||QA(A,{h:300}),this.cScale11=this.cScale11||QA(A,{h:330}),this.darkMode)for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=he(this["cScale"+i],75);else for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=he(this["cScale"+i],25);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleInv"+i]=this["cScaleInv"+i]||ue(this["cScale"+i]);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)if(this.darkMode)this["cScalePeer"+i]=this["cScalePeer"+i]||Ie(this["cScale"+i],10);else this["cScalePeer"+i]=this["cScalePeer"+i]||he(this["cScale"+i],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleLabel"+i]=this["cScaleLabel"+i]||this.scaleLabelColor;let r=this.darkMode?-4:-1;for(let i=0;i<5;i++)this["surface"+i]=this["surface"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(5+i*3)}),this["surfacePeer"+i]=this["surfacePeer"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(8+i*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||A,this.fillType1=this.fillType1||e,this.fillType2=this.fillType2||QA(A,{h:64}),this.fillType3=this.fillType3||QA(e,{h:64}),this.fillType4=this.fillType4||QA(A,{h:-64}),this.fillType5=this.fillType5||QA(e,{h:-64}),this.fillType6=this.fillType6||QA(A,{h:128}),this.fillType7=this.fillType7||QA(e,{h:128}),this.pie1=this.pie1||A,this.pie2=this.pie2||e,this.pie3=this.pie3||t,this.pie4=this.pie4||QA(A,{l:-10}),this.pie5=this.pie5||QA(e,{l:-10}),this.pie6=this.pie6||QA(t,{l:-10}),this.pie7=this.pie7||QA(A,{h:60,l:-10}),this.pie8=this.pie8||QA(A,{h:-60,l:-10}),this.pie9=this.pie9||QA(A,{h:120,l:0}),this.pie10=this.pie10||QA(A,{h:60,l:-20}),this.pie11=this.pie11||QA(A,{h:-60,l:-20}),this.pie12=this.pie12||QA(A,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||A,this.quadrant2Fill=this.quadrant2Fill||QA(A,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(A,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(A,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||A,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||A,this.git1=this.git1||e,this.git2=this.git2||t,this.git3=this.git3||QA(A,{h:-30}),this.git4=this.git4||QA(A,{h:-60}),this.git5=this.git5||QA(A,{h:-90}),this.git6=this.git6||QA(A,{h:60}),this.git7=this.git7||QA(A,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},HAt=y((A)=>{let e=new YAt;return e.calculate(A),e},"getThemeVariables"),KAt=class{static{y(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ie(this.primaryColor,16),this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=ue(this.background),this.secondaryBorderColor=br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=br(this.tertiaryColor,this.darkMode),this.primaryTextColor=ue(this.primaryColor),this.secondaryTextColor=ue(this.secondaryColor),this.tertiaryTextColor=ue(this.tertiaryColor),this.mainBkg="#2a2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ie(ue("#323D47"),10),this.border1="#ccc",this.border2=ln(255,255,255,0.25),this.arrowheadColor=ue(this.background),this.fontFamily="arial, sans-serif",this.fontSize="14px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=3,this.strokeWidth=1,this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily="arial, sans-serif",this.fontSize="14px",this.useGradient=!0,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,0.2))",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||br(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||br(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||br(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ue(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ue(this.tertiaryColor),this.lineColor=this.lineColor||ue(this.background),this.arrowheadColor=this.arrowheadColor||ue(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ue(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.darkMode)for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],75);else for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],25);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||ue(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)if(this.darkMode)this["cScalePeer"+e]=this["cScalePeer"+e]||Ie(this["cScale"+e],10);else this["cScalePeer"+e]=this["cScalePeer"+e]||he(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(5+e*3)}),this["surfacePeer"+e]=this["surfacePeer"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(8+e*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||QA(this.primaryColor,{h:64}),this.fillType3=this.fillType3||QA(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||QA(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||QA(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||QA(this.primaryColor,{h:128}),this.fillType7=this.fillType7||QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-10}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||"#0b0000",this.git1=this.git1||"#4d1037",this.git2=this.git2||"#3f5258",this.git3=this.git3||"#4f2f1b",this.git4=this.git4||"#6e0a0a",this.git5=this.git5||"#3b0048",this.git6=this.git6||"#995a01",this.git7=this.git7||"#154706",this.gitDarkMode=!0,this.gitDarkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},JAt=y((A)=>{let e=new KAt;return e.calculate(A),e},"getThemeVariables"),OAt=class{static{y(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#28253D",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.primaryBorderColor=br("#28253D",this.darkMode),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#28253D",this.stateBorder="#28253D",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.tertiaryColor="#ffffff",this.clusterBkg="#F9F9FB",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.actorBorder="#28253D",this.filterColor="#000000"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#28253D"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||br(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||br(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||br(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#FEF9C3",this.noteTextColor=this.noteTextColor||"#28253D",this.secondaryTextColor=this.secondaryTextColor||ue(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ue(this.tertiaryColor),this.lineColor=this.lineColor||ue(this.background),this.arrowheadColor=this.arrowheadColor||ue(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.noteFontWeight=600,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ue(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let A="#ECECFE",e="#E9E9F1",t=QA(A,{h:180,l:5});this.sectionBkgColor=this.sectionBkgColor||t,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||e,this.sectionBkgColor2=this.sectionBkgColor2||A,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||A,this.activeTaskBorderColor=this.activeTaskBorderColor||A,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(A,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.compositeTitleBackground="#F9F9FB",this.altBackground="#F9F9FB",this.stateEdgeLabelBackground="#FFFFFF",this.fontWeight=600,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor;for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=this.mainBkg;if(this.darkMode)for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=he(this["cScale"+i],75);else for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=he(this["cScale"+i],25);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleInv"+i]=this["cScaleInv"+i]||ue(this["cScale"+i]);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)if(this.darkMode)this["cScalePeer"+i]=this["cScalePeer"+i]||Ie(this["cScale"+i],10);else this["cScalePeer"+i]=this["cScalePeer"+i]||he(this["cScale"+i],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleLabel"+i]=this["cScaleLabel"+i]||this.scaleLabelColor;let r=this.darkMode?-4:-1;for(let i=0;i<5;i++)this["surface"+i]=this["surface"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(5+i*3)}),this["surfacePeer"+i]=this["surfacePeer"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(8+i*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||A,this.fillType1=this.fillType1||e,this.fillType2=this.fillType2||QA(A,{h:64}),this.fillType3=this.fillType3||QA(e,{h:64}),this.fillType4=this.fillType4||QA(A,{h:-64}),this.fillType5=this.fillType5||QA(e,{h:-64}),this.fillType6=this.fillType6||QA(A,{h:128}),this.fillType7=this.fillType7||QA(e,{h:128}),this.pie1=this.pie1||A,this.pie2=this.pie2||e,this.pie3=this.pie3||t,this.pie4=this.pie4||QA(A,{l:-10}),this.pie5=this.pie5||QA(e,{l:-10}),this.pie6=this.pie6||QA(t,{l:-10}),this.pie7=this.pie7||QA(A,{h:60,l:-10}),this.pie8=this.pie8||QA(A,{h:-60,l:-10}),this.pie9=this.pie9||QA(A,{h:120,l:0}),this.pie10=this.pie10||QA(A,{h:60,l:-20}),this.pie11=this.pie11||QA(A,{h:-60,l:-20}),this.pie12=this.pie12||QA(A,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||A,this.quadrant2Fill=this.quadrant2Fill||QA(A,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(A,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(A,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||A,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.requirementEdgeLabelBackground="#FFFFFF",this.git0=this.git0||A,this.git1=this.git1||e,this.git2=this.git2||t,this.git3=this.git3||QA(A,{h:-30}),this.git4=this.git4||QA(A,{h:-60}),this.git5=this.git5||QA(A,{h:-90}),this.git6=this.git6||QA(A,{h:60}),this.git7=this.git7||QA(A,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.commitLineColor=this.commitLineColor??"#BDBCCC",this.erEdgeLabelBackground="#FFFFFF",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},PAt=y((A)=>{let e=new OAt;return e.calculate(A),e},"getThemeVariables"),_At=class{static{y(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ie(this.primaryColor,16),this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=ue(this.background),this.secondaryBorderColor=br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=br(this.tertiaryColor,this.darkMode),this.primaryTextColor=ue(this.primaryColor),this.secondaryTextColor=ue(this.secondaryColor),this.tertiaryTextColor=ue(this.tertiaryColor),this.mainBkg="#111113",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ie(ue("#323D47"),10),this.border1="#ccc",this.border2=ln(255,255,255,0.25),this.arrowheadColor=ue(this.background),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.labelBackground="#111113",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.noteBkgColor=this.noteBkgColor??"#FEF9C3",this.noteTextColor=this.noteTextColor??"#28253D",this.THEME_COLOR_LIMIT=12,this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#FFFFFF",this.stateBorder="#FFFFFF",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.clusterBkg="#1E1A2E",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.filterColor="#FFFFFF"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#FFFFFF"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||br(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||br(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||br(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#FFFFFF",this.secondaryTextColor=this.secondaryTextColor||ue(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ue(this.tertiaryColor),this.lineColor=this.lineColor||ue(this.background),this.arrowheadColor=this.arrowheadColor||ue(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder="#FFFFFF",this.signalColor="#FFFFFF",this.labelBoxBorderColor="#BDBCCC",this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ue(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.compositeBackground="#16141F",this.altBackground="#16141F",this.compositeTitleBackground="#16141F",this.stateEdgeLabelBackground="#16141F",this.fontWeight=600,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.darkMode)for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],75);else for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],25);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||ue(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)if(this.darkMode)this["cScalePeer"+e]=this["cScalePeer"+e]||Ie(this["cScale"+e],10);else this["cScalePeer"+e]=this["cScalePeer"+e]||he(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(5+e*3)}),this["surfacePeer"+e]=this["surfacePeer"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(8+e*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||QA(this.primaryColor,{h:64}),this.fillType3=this.fillType3||QA(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||QA(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||QA(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||QA(this.primaryColor,{h:128}),this.fillType7=this.fillType7||QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-10}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.requirementEdgeLabelBackground="#16141F",this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.commitLineColor=this.commitLineColor??"#BDBCCC",this.erEdgeLabelBackground="#16141F",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},WAt=y((A)=>{let e=new _At;return e.calculate(A),e},"getThemeVariables"),qAt=class{static{y(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#28253D",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.primaryBorderColor=br(this.primaryColor,this.darkMode),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#28253D",this.stateBorder="#28253D",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.tertiaryColor="#ffffff",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.actorBorder="#28253D",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.borderColorArray=["#E879F9","#2DD4BF","#FB923C","#22D3EE","#4ADE80","#A78BFA","#F87171","#FACC15","#818CF8","#A3E635 ","#38BDF8","#FB7185"],this.bkgColorArray=["#FDF4FF","#F0FDFA","#FFF7ED","#ECFEFF","#F0FDF4","#F5F3FF","#FEF2F2","#FEFCE8","#EEF2FF","#F7FEE7","#F0F9FF","#FFF1F2"],this.filterColor="#000000"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#28253D"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||br(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||br(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||br(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#28253D",this.secondaryTextColor=this.secondaryTextColor||ue(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ue(this.tertiaryColor),this.lineColor=this.lineColor||ue(this.background),this.arrowheadColor=this.arrowheadColor||ue(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ue(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let A="#ECECFE",e="#E9E9F1",t=QA(A,{h:180,l:5});this.sectionBkgColor=this.sectionBkgColor||t,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||e,this.sectionBkgColor2=this.sectionBkgColor2||A,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||A,this.activeTaskBorderColor=this.activeTaskBorderColor||A,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(A,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||"#f4a8ff",this.cScale1=this.cScale1||"#46ecd5",this.cScale2=this.cScale2||"#ffb86a",this.cScale3=this.cScale3||"#dab2ff",this.cScale4=this.cScale4||"#7bf1a8",this.cScale5=this.cScale5||"#c4b4ff",this.cScale6=this.cScale6||"#ffa2a2",this.cScale7=this.cScale7||"#ffdf20",this.cScale8=this.cScale8||"#a3b3ff",this.cScale9=this.cScale9||"#bbf451",this.cScale10=this.cScale10||"#74d4ff",this.cScale11=this.cScale11||"#ffa1ad";for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleInv"+i]=this["cScaleInv"+i]||ue(this["cScale"+i]);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)if(this.darkMode)this["cScalePeer"+i]=this["cScalePeer"+i]||Ie(this["cScale"+i],10);else this["cScalePeer"+i]=this["cScalePeer"+i]||he(this["cScale"+i],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleLabel"+i]=this["cScaleLabel"+i]||this.scaleLabelColor;let r=this.darkMode?-4:-1;for(let i=0;i<5;i++)this["surface"+i]=this["surface"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(5+i*3)}),this["surfacePeer"+i]=this["surfacePeer"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(8+i*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||A,this.fillType1=this.fillType1||e,this.fillType2=this.fillType2||QA(A,{h:64}),this.fillType3=this.fillType3||QA(e,{h:64}),this.fillType4=this.fillType4||QA(A,{h:-64}),this.fillType5=this.fillType5||QA(e,{h:-64}),this.fillType6=this.fillType6||QA(A,{h:128}),this.fillType7=this.fillType7||QA(e,{h:128}),this.pie1=this.pie1||A,this.pie2=this.pie2||e,this.pie3=this.pie3||t,this.pie4=this.pie4||QA(A,{l:-10}),this.pie5=this.pie5||QA(e,{l:-10}),this.pie6=this.pie6||QA(t,{l:-10}),this.pie7=this.pie7||QA(A,{h:60,l:-10}),this.pie8=this.pie8||QA(A,{h:-60,l:-10}),this.pie9=this.pie9||QA(A,{h:120,l:0}),this.pie10=this.pie10||QA(A,{h:60,l:-20}),this.pie11=this.pie11||QA(A,{h:-60,l:-20}),this.pie12=this.pie12||QA(A,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||A,this.quadrant2Fill=this.quadrant2Fill||QA(A,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(A,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(A,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||A,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||A,this.git1=this.git1||e,this.git2=this.git2||t,this.git3=this.git3||QA(A,{h:-30}),this.git4=this.git4||QA(A,{h:-60}),this.git5=this.git5||QA(A,{h:-90}),this.git6=this.git6||QA(A,{h:60}),this.git7=this.git7||QA(A,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLineColor=this.commitLineColor??"#BDBCCC",this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.fontWeight=600,this.erEdgeLabelBackground="#FFFFFF",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},zAt=y((A)=>{let e=new qAt;return e.calculate(A),e},"getThemeVariables"),ZAt=class{static{y(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ie(this.primaryColor,16),this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=ue(this.background),this.secondaryBorderColor=br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=br(this.tertiaryColor,this.darkMode),this.primaryTextColor=ue(this.primaryColor),this.secondaryTextColor=ue(this.secondaryColor),this.tertiaryTextColor=ue(this.tertiaryColor),this.mainBkg="#111113",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ie(ue("#323D47"),10),this.border1="#ccc",this.border2=ln(255,255,255,0.25),this.arrowheadColor=ue(this.background),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.labelBackground="#111113",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.noteBkgColor=this.noteBkgColor??"#FEF9C3",this.noteTextColor=this.noteTextColor??"#28253D",this.THEME_COLOR_LIMIT=12,this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#FFFFFF",this.stateBorder="#FFFFFF",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.clusterBkg="#1E1A2E",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.borderColorArray=["#E879F9","#2DD4BF","#FB923C","#22D3EE","#4ADE80","#A78BFA","#F87171","#FACC15","#818CF8","#A3E635 ","#38BDF8","#FB7185"],this.bkgColorArray=[],this.filterColor="#FFFFFF"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#FFFFFF"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||br(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||br(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||br(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||br(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#FFFFFF",this.secondaryTextColor=this.secondaryTextColor||ue(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ue(this.tertiaryColor),this.lineColor=this.lineColor||ue(this.background),this.arrowheadColor=this.arrowheadColor||ue(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder="#FFFFFF",this.signalColor="#FFFFFF",this.labelBoxBorderColor="#BDBCCC",this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ue(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.rootLabelColor="#FFFFFF",this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||"#f4a8ff",this.cScale1=this.cScale1||"#46ecd5",this.cScale2=this.cScale2||"#ffb86a",this.cScale3=this.cScale3||"#dab2ff",this.cScale4=this.cScale4||"#7bf1a8",this.cScale5=this.cScale5||"#c4b4ff",this.cScale6=this.cScale6||"#ffa2a2",this.cScale7=this.cScale7||"#ffdf20",this.cScale8=this.cScale8||"#a3b3ff",this.cScale9=this.cScale9||"#bbf451",this.cScale10=this.cScale10||"#74d4ff",this.cScale11=this.cScale11||"#ffa1ad";for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||ue(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)if(this.darkMode)this["cScalePeer"+e]=this["cScalePeer"+e]||Ie(this["cScale"+e],10);else this["cScalePeer"+e]=this["cScalePeer"+e]||he(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=he(this["cScale"+e],75);let A=this.darkMode?-4:-1;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(5+e*3)}),this["surfacePeer"+e]=this["surfacePeer"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(8+e*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||QA(this.primaryColor,{h:64}),this.fillType3=this.fillType3||QA(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||QA(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||QA(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||QA(this.primaryColor,{h:128}),this.fillType7=this.fillType7||QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-10}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ue(this.git0),this.gitInv1=this.gitInv1||ue(this.git1),this.gitInv2=this.gitInv2||ue(this.git2),this.gitInv3=this.gitInv3||ue(this.git3),this.gitInv4=this.gitInv4||ue(this.git4),this.gitInv5=this.gitInv5||ue(this.git5),this.gitInv6=this.gitInv6||ue(this.git6),this.gitInv7=this.gitInv7||ue(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.commitLineColor=this.commitLineColor??"#BDBCCC",this.fontWeight=600,this.erEdgeLabelBackground="#16141F",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||AE,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||eE}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},VAt=y((A)=>{let e=new ZAt;return e.calculate(A),e},"getThemeVariables"),$B={base:{getThemeVariables:SAt},dark:{getThemeVariables:RAt},default:{getThemeVariables:R0},forest:{getThemeVariables:UAt},neutral:{getThemeVariables:TAt},neo:{getThemeVariables:HAt},"neo-dark":{getThemeVariables:JAt},redux:{getThemeVariables:PAt},"redux-dark":{getThemeVariables:WAt},"redux-color":{getThemeVariables:zAt},"redux-dark-color":{getThemeVariables:VAt}},jo={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:null,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200,inheritDir:!1},swimlane:{useMaxWidth:!0,lineHops:"arc",ignoreCrossLaneEdges:!0,optimizeRanksByCrossings:!0,automaticLaneOrdering:!1},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,maxLabelWidth:360,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],titleColor:"",titleFontFamily:'"trebuchet ms", verdana, arial, sans-serif',titleFontSize:"4ex"},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1,hideEmptyMembersBox:!1,hierarchicalNamespaces:!0},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,nodeSpacing:140,rankSpacing:80,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:0.75,donutHole:0,legendPosition:"right",highlightSlice:""},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showDataLabel:!1,showDataLabelOutsideBar:!1,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2,labelRotation:0},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2,labelRotation:0},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200,layoutAlgorithm:"cose-bilkent"},ishikawa:{useMaxWidth:!0,diagramPadding:20},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:"",nodeWidth:10,nodePadding:12,labelStyle:"legacy"},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},treeView:{useMaxWidth:!0,rowIndent:10,paddingX:5,paddingY:5,lineThickness:1,showIcons:!1,defaultIconPack:"",filenameIcons:{},extensionIcons:{}},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16,randomize:!1,nodeSeparation:75,idealEdgeLengthMultiplier:1.5,edgeElasticity:0.45,numIter:2500,seed:1},eventmodeling:{useMaxWidth:!0,padding:30,rowHeight:32},radar:{useMaxWidth:!0,width:600,height:600,marginTop:50,marginRight:50,marginBottom:50,marginLeft:50,axisScaleFactor:1,axisLabelFactor:1.05,curveTension:0.17},venn:{useMaxWidth:!0,width:800,height:450,padding:8,useDebugLayout:!1},cynefin:{useMaxWidth:!0,width:800,height:600,padding:40,showDomainDescriptions:!0,boundaryAmplitude:8,seed:0},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:50000,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1},myA={...jo,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF",forceNodeModelOrder:!1,considerModelOrder:"NODES_AND_EDGES"},themeCSS:void 0,themeVariables:$B.default.getThemeVariables(),sequence:{...jo.sequence,messageFont:y(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:y(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:y(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},class:{hideEmptyMembersBox:!1,hierarchicalNamespaces:!0},gantt:{...jo.gantt,tickInterval:void 0,useWidth:void 0},c4:{...jo.c4,useWidth:void 0,personFont:y(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),flowchart:{...jo.flowchart,inheritDir:!1},external_personFont:y(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:y(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:y(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:y(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:y(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:y(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:y(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:y(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:y(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:y(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:y(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:y(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:y(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:y(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:y(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:y(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:y(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:y(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:y(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:y(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:y(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...jo.pie,useWidth:984},xyChart:{...jo.xyChart,useWidth:void 0},requirement:{...jo.requirement,useWidth:void 0},packet:{...jo.packet},eventmodeling:{...jo.eventmodeling},treeView:{...jo.treeView,useWidth:void 0},radar:{...jo.radar},railroad:{...jo.railroad,fontSize:void 0,fontFamily:void 0,terminalFill:void 0,terminalStroke:void 0,terminalTextColor:void 0,nonTerminalFill:void 0,nonTerminalStroke:void 0,nonTerminalTextColor:void 0,lineColor:void 0,markerFill:void 0,commentFill:void 0,commentStroke:void 0,commentTextColor:void 0,specialFill:void 0,specialStroke:void 0,ruleNameColor:void 0},ishikawa:{...jo.ishikawa},sankey:{...jo.sankey,nodeColors:void 0},treemap:{useMaxWidth:!0,padding:10,diagramPadding:8,showValues:!0,nodeWidth:100,nodeHeight:40,borderWidth:1,valueFontSize:12,labelFontSize:14,valueFormat:","},venn:{...jo.venn},cynefin:{...jo.cynefin}},DyA=y((A,e="")=>Object.keys(A).reduce((t,r)=>{if(Array.isArray(A[r]))return t;else if(typeof A[r]==="object"&&A[r]!==null)return[...t,e+r,...DyA(A[r],"")];return[...t,e+r]},[]),"keyify"),jAt=new Set(DyA(myA,"")),ur=myA,XAt={nodeColors:/^#[\da-f]{3,8}$|^rgb\([\d\s%,.]+\)$|^hsl\([\d\s%,.]+\)$|^[a-z]+$/i,filenameIcons:/^[\w-]+(?::[\w-]+)?$/,extensionIcons:/^[\w-]+(?::[\w-]+)?$/},$At=y((A,e)=>{for(let t of Object.keys(A)){let r=A[t];if(t.startsWith("__")||t.includes("proto")||t.includes("constr")||typeof r!=="string"||!e.test(r))sA.debug("sanitize deleting dictionary entry:",t,r),delete A[t]}},"sanitizeDictionaryConfig"),yb=y((A)=>{if(sA.debug("sanitizeDirective called with",A),typeof A!=="object"||A==null)return;if(Array.isArray(A)){A.forEach((e)=>yb(e));return}for(let e of Object.keys(A)){if(sA.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!jAt.has(e)||A[e]==null){sA.debug("sanitize deleting key: ",e),delete A[e];continue}if(typeof A[e]==="object"){let r=XAt[e];if(r)$At(A[e],r);else sA.debug("sanitizing object",e),yb(A[e]);continue}let t=["themeCSS","fontFamily","altFontFamily"];for(let r of t)if(e.includes(r))sA.debug("sanitizing css option",e),A[e]=ij(A[e])}if(A.themeVariables)for(let e of Object.keys(A.themeVariables)){let t=A.themeVariables[e];if(t?.match&&!t.match(/^[\d "#%(),.;A-Za-z]+$/))A.themeVariables[e]=""}sA.debug("After sanitization",A)},"sanitizeDirective"),ij=y((A)=>{let e=0,t=0;for(let r of A){if(e<t)return"{ /* ERROR: Unbalanced CSS */ }";if(r==="{")e++;else if(r==="}")t++}if(e!==t)return"{ /* ERROR: Unbalanced CSS */ }";return A},"sanitizeCss"),$p=Object.freeze(ur),Zg=y((A)=>A===!1||["false","null","0"].includes(String(A).trim().toLowerCase())?!1:!0,"evaluate"),rl=Ea({},$p),Xp=[],Db=Ea({},$p),wb=y((A,e)=>{let t=Ea({},A),r={};for(let i of e)vyA(i),r=Ea(r,i);if(t=Ea(t,r),r.theme&&r.theme in $B){let i=Ea({},_R),u=Ea(i.themeVariables||{},r.themeVariables);if(t.theme&&t.theme in $B)t.themeVariables=$B[t.theme].getThemeVariables(u)}return Db=t,eet(Db),Db},"updateCurrentConfig"),yyA=y((A)=>{if(rl=Ea({},$p),rl=Ea(rl,A),A.theme&&$B[A.theme])rl.themeVariables=$B[A.theme].getThemeVariables(A.themeVariables);return wb(rl,Xp),rl},"setSiteConfig"),wyA=y((A)=>{_R=Ea({},A)},"saveConfigFromInitialize"),byA=y((A)=>(rl=Ea(rl,A),wb(rl,Xp),rl),"updateSiteConfig"),uj=y(()=>Ea({},rl),"getSiteConfig"),aj=y((A)=>(wb(Db,[A]),st()),"setConfig"),st=y(()=>Ea({},Db),"getConfig"),vyA=y((A)=>{if(!A)return;["secure",...rl.secure??[]].forEach((e)=>{if(Object.hasOwn(A,e))sA.debug(`Denied attempt to modify a secure key ${e}`,A[e]),delete A[e]}),Object.keys(A).forEach((e)=>{if(e.startsWith("__"))delete A[e]}),Object.keys(A).forEach((e)=>{if(typeof A[e]==="string"&&(A[e].includes("<")||A[e].includes(">")||A[e].includes("url(data:")))delete A[e];if(typeof A[e]==="object")vyA(A[e])})},"sanitize"),kyA=y((A)=>{if(yb(A),A.fontFamily&&!A.themeVariables?.fontFamily)A.themeVariables={...A.themeVariables,fontFamily:A.fontFamily};Xp.push(A),wb(rl,Xp)},"addDirective"),bb=y((A=rl)=>{Xp=[],wb(A,Xp)},"reset"),Aet={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead.",FLOWCHART_HTML_LABELS_DEPRECATED:"flowchart.htmlLabels is deprecated. Please use global htmlLabels instead."},hyA={},FyA=y((A)=>{if(hyA[A])return;sA.warn(Aet[A]),hyA[A]=!0},"issueWarning"),eet=y((A)=>{if(!A)return;if(A.lazyLoadedDiagrams||A.loadExternalDiagramsAtStartup)FyA("LAZY_LOAD_DEPRECATED")},"checkConfig"),qR=y(()=>{let A={};if(_R)A=Ea(A,_R);for(let e of Xp)A=Ea(A,e);return A},"getUserDefinedConfig"),ki=y((A)=>{if(A.flowchart?.htmlLabels!=null)FyA("FLOWCHART_HTML_LABELS_DEPRECATED");return Zg(A.htmlLabels??A.flowchart?.htmlLabels??!0)},"getEffectiveHtmlLabels"),nj=/^([^\S\n\r]*)-{3}\s*[\n\r](.*?)[\n\r]\1-{3}\s*[\n\r]+/s,mD=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,tet=/\s*%%.*\n/gm,oj=class extends Error{static{y(this,"UnknownDiagramError")}constructor(A){super(A);this.name="UnknownDiagramError"}},QQ={},vb=y(function(A,e){A=A.replace(nj,"").replace(mD,"").replace(tet,`
|
||
`);for(let[t,{detector:r}]of Object.entries(QQ))if(r(A,e))return t;throw new oj(`No diagram type detected matching given configuration for text: ${A}`)},"detectType"),zR=y((...A)=>{for(let{id:e,detector:t,loader:r}of A)xyA(e,t,r)},"registerLazyLoadedDiagrams"),xyA=y((A,e,t)=>{if(QQ[A])sA.warn(`Detector with key ${A} already exists. Overwriting.`);QQ[A]={detector:e,loader:t},sA.debug(`Detector with key ${A} added${t?" with loader":""}`)},"addDetector"),SyA=y((A)=>QQ[A].loader,"getDiagramLoader"),Af=/<br\s*\/?>/gi,ret=y((A)=>{if(!A)return[""];return NyA(A).replace(/\\n/g,"#br#").split("#br#")},"getRows"),iet=(()=>{let A=!1;return()=>{if(!A)LyA(),A=!0}})();y(LyA,"setupDompurifyHooks");RyA=y((A)=>(iet(),Al.sanitize(A)),"removeScript"),QyA=y((A,e)=>{if(ki(e)){let t=e.securityLevel;if(t==="antiscript"||t==="strict"||t==="sandbox")A=RyA(A);else if(t!=="loose")A=NyA(A),A=A.replace(/</g,"<").replace(/>/g,">"),A=A.replace(/=/g,"="),A=oet(A)}return A},"sanitizeMore"),or=y((A,e)=>{if(!A)return A;if(e.dompurifyConfig)A=Al.sanitize(QyA(A,e),e.dompurifyConfig).toString();else A=Al.sanitize(QyA(A,e),{FORBID_TAGS:["style"]}).toString();return A},"sanitizeText"),uet=y((A,e)=>{if(typeof A==="string")return or(A,e);return A.flat().map((t)=>or(t,e))},"sanitizeTextOrArray"),aet=y((A)=>Af.test(A),"hasBreaks"),net=y((A)=>A.split(Af),"splitBreaks"),oet=y((A)=>A.replace(/#br#/g,"<br/>"),"placeholderToBreak"),NyA=y((A)=>A.replace(Af,"#br#"),"breakToPlaceholder"),ef=y((A)=>{let e="";if(A)e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=CSS.escape(e);return e},"getUrl"),set=y(function(...A){let e=A.filter((t)=>!isNaN(t));return Math.max(...e)},"getMax"),get=y(function(...A){let e=A.filter((t)=>!isNaN(t));return Math.min(...e)},"getMin"),tE=y(function(A){let e=A.split(/(,)/),t=[];for(let r=0;r<e.length;r++){let i=e[r];if(i===","&&r>0&&r+1<e.length){let u=e[r-1],a=e[r+1];if(cet(u,a))i=u+","+a,r++,t.pop()}t.push(Cet(i))}return t.join("")},"parseGenericTypes"),rj=y((A,e)=>Math.max(0,A.split(e).length-1),"countOccurrence"),cet=y((A,e)=>{let t=rj(A,"~"),r=rj(e,"~");return t===1&&r===1},"shouldCombineSets"),Cet=y((A)=>{let e=rj(A,"~"),t=!1;if(e<=1)return A;if(e%2!==0&&A.startsWith("~"))A=A.substring(1),t=!0;let r=[...A],i=r.indexOf("~"),u=r.lastIndexOf("~");while(i!==-1&&u!==-1&&i!==u)r[i]="<",r[u]=">",i=r.indexOf("~"),u=r.lastIndexOf("~");if(t)r.unshift("~");return r.join("")},"processSet"),pyA=y(()=>window.MathMLElement!==void 0,"isMathMLSupported"),OR=/\$\$(.*?)\$\$/g,da=y((A)=>(A.match(OR)?.length??0)>0,"hasKatex"),DD=y(async(A,e)=>{let t=document.createElement("div");t.innerHTML=await yD(A,e),t.id="katex-temp",t.style.visibility="hidden",t.style.position="absolute",t.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",t);let i={width:t.clientWidth,height:t.clientHeight};return t.remove(),i},"calculateMathMLDimensions"),Bet=y(async(A,e)=>{if(!da(A))return A;if(!(pyA()||e.legacyMathML||e.forceLegacyMathML))return A.replace(OR,"MathML is unsupported in this environment.");{await Promise.resolve().then(() => IyA());let r=e.forceLegacyMathML||!pyA()&&e.legacyMathML?"htmlAndMathml":"mathml";return A.split(Af).map((i)=>da(i)?`<div style="display: flex; align-items: center; justify-content: center; white-space: nowrap;">${i}</div>`:`<div>${i}</div>`).join("").replace(OR,(i,u)=>dyA.renderToString(u,{throwOnError:!0,displayMode:!0,output:r}).replace(/\n/g," ").replace(/<annotation.*<\/annotation>/g,""))}return A.replace(OR,"Katex is not supported in @mermaid-js/tiny. Please use the full mermaid library.")},"renderKatexUnsanitized"),yD=y(async(A,e)=>or(await Bet(A,e),e),"renderKatexSanitized"),_e={getRows:ret,sanitizeText:or,sanitizeTextOrArray:uet,hasBreaks:aet,splitBreaks:net,lineBreakRegex:Af,removeScript:RyA,getUrl:ef,evaluate:Zg,getMax:set,getMin:get},Eet=y(function(A,e){for(let t of e)A.attr(t[0],t[1])},"d3Attrs"),det=y(function(A,e,t){let r=new Map;if(t)r.set("width","100%"),r.set("style",`max-width: ${e}px;`);else r.set("height",A),r.set("width",e);return r},"calculateSvgSizeAttrs"),jr=y(function(A,e,t,r){let i=det(e,t,r);Eet(A,i)},"configureSvgSize"),rE=y(function(A,e,t,r){let i=e.node().getBBox(),{width:u,height:a}=i;sA.info(`SVG bounds: ${u}x${a}`,i);let n=0,o=0;sA.info(`Graph bounds: ${n}x${o}`,A),n=u+t*2,o=a+t*2,sA.info(`Calculated bounds: ${n}x${o}`),jr(e,o,n,r);let s=`${i.x-t} ${i.y-t} ${i.width+2*t} ${i.height+2*t}`;e.attr("viewBox",s)},"setupGraphViewbox"),PR={};y(ZR,"cssStyleSheetToString");Iet=y((A,e,t,r)=>{let i="";if(A in PR&&PR[A])i=PR[A]({...t,svgId:r});else sA.warn(`No theme found for ${A}`);return`& {
|
||
font-family: ${t.fontFamily};
|
||
font-size: ${t.fontSize};
|
||
fill: ${t.textColor}
|
||
}
|
||
@keyframes edge-animation-frame {
|
||
from {
|
||
stroke-dashoffset: 0;
|
||
}
|
||
}
|
||
@keyframes dash {
|
||
to {
|
||
stroke-dashoffset: 0;
|
||
}
|
||
}
|
||
& .edge-animation-slow {
|
||
stroke-dasharray: 9,5 !important;
|
||
stroke-dashoffset: 900;
|
||
animation: dash 50s linear infinite;
|
||
stroke-linecap: round;
|
||
}
|
||
& .edge-animation-fast {
|
||
stroke-dasharray: 9,5 !important;
|
||
stroke-dashoffset: 900;
|
||
animation: dash 20s linear infinite;
|
||
stroke-linecap: round;
|
||
}
|
||
/* Classes common for multiple diagrams */
|
||
|
||
& .error-icon {
|
||
fill: ${t.errorBkgColor};
|
||
}
|
||
& .error-text {
|
||
fill: ${t.errorTextColor};
|
||
stroke: ${t.errorTextColor};
|
||
}
|
||
|
||
& .edge-thickness-normal {
|
||
stroke-width: ${t.strokeWidth??1}px;
|
||
}
|
||
& .edge-thickness-thick {
|
||
stroke-width: 3.5px
|
||
}
|
||
& .edge-pattern-solid {
|
||
stroke-dasharray: 0;
|
||
}
|
||
& .edge-thickness-invisible {
|
||
stroke-width: 0;
|
||
fill: none;
|
||
}
|
||
& .edge-pattern-dashed{
|
||
stroke-dasharray: 3;
|
||
}
|
||
.edge-pattern-dotted {
|
||
stroke-dasharray: 2;
|
||
}
|
||
|
||
& .marker {
|
||
fill: ${t.lineColor};
|
||
stroke: ${t.lineColor};
|
||
}
|
||
& .marker.cross {
|
||
stroke: ${t.lineColor};
|
||
}
|
||
|
||
& svg {
|
||
font-family: ${t.fontFamily};
|
||
font-size: ${t.fontSize};
|
||
}
|
||
& p {
|
||
margin: 0
|
||
}
|
||
|
||
${i}
|
||
.node .neo-node {
|
||
stroke: ${t.nodeBorder};
|
||
}
|
||
|
||
[data-look="neo"].node rect, [data-look="neo"].cluster rect, [data-look="neo"].node polygon {
|
||
stroke: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
|
||
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
|
||
}
|
||
[data-look="neo"].swimlane.cluster rect {
|
||
filter: none;
|
||
}
|
||
|
||
|
||
[data-look="neo"].node path {
|
||
stroke: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
|
||
stroke-width: ${t.strokeWidth??1}px;
|
||
}
|
||
|
||
[data-look="neo"].node .outer-path {
|
||
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
|
||
}
|
||
|
||
[data-look="neo"].node .neo-line path {
|
||
stroke: ${t.nodeBorder};
|
||
filter: none;
|
||
}
|
||
|
||
[data-look="neo"].node circle{
|
||
stroke: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
|
||
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
|
||
}
|
||
|
||
[data-look="neo"].node circle .state-start{
|
||
fill: #000000;
|
||
}
|
||
|
||
[data-look="neo"].icon-shape .icon {
|
||
fill: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
|
||
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
|
||
}
|
||
|
||
[data-look="neo"].icon-shape .icon-neo path {
|
||
stroke: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
|
||
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
|
||
}
|
||
|
||
${e}
|
||
`},"getStyles"),het=y((A,e)=>{if(e!==void 0)PR[A]=e},"addStylesForDiagram"),GyA=Iet,VR={};gQ(VR,{clear:()=>sr,getAccDescription:()=>Fr,getAccTitle:()=>vr,getDiagramTitle:()=>xr,setAccDescription:()=>kr,setAccTitle:()=>Dr,setDiagramTitle:()=>Mr});cj=y((A)=>or(A,st()),"sanitizeText"),sr=y(()=>{sj="",gj="",lj=""},"clear"),Dr=y((A)=>{sj=cj(A).replace(/^\s+/g,"")},"setAccTitle"),vr=y(()=>sj,"getAccTitle"),kr=y((A)=>{gj=cj(A).replace(/\n\s+/g,`
|
||
`)},"setAccDescription"),Fr=y(()=>gj,"getAccDescription"),Mr=y((A)=>{lj=cj(A)},"setDiagramTitle"),xr=y(()=>lj,"getDiagramTitle"),fyA=sA,Qet=rb,OA=st,kb=aj,jR=$p,XR=y((A)=>or(A,OA()),"sanitizeText"),Fb=rE,pet=y(()=>VR,"getCommonDb"),WR={},xb=y((A,e,t)=>{if(WR[A])fyA.warn(`Diagram with id ${A} already registered. Overwriting.`);if(WR[A]=e,t)xyA(A,t);het(A,e.styles),e.injectUtils?.(fyA,Qet,OA,XR,Fb,pet(),()=>{})},"registerDiagram"),$R=y((A)=>{if(A in WR)return WR[A];throw new fet(A)},"getDiagram"),fet=class extends Error{static{y(this,"DiagramNotFoundError")}constructor(A){super(`Diagram ${A} not found.`)}}});function tf(A,e){return A==null||e==null?NaN:A<e?-1:A>e?1:A>=e?0:NaN}function Cj(A,e){return A==null||e==null?NaN:e<A?-1:e>A?1:e>=A?0:NaN}function rf(A){let e,t,r;if(A.length!==2)e=tf,t=(n,o)=>tf(A(n),o),r=(n,o)=>A(n)-o;else e=A===tf||A===Cj?A:met,t=A,r=A;function i(n,o,s=0,l=n.length){if(s<l){if(e(o,o)!==0)return l;do{let g=s+l>>>1;if(t(n[g],o)<0)s=g+1;else l=g}while(s<l)}return s}function u(n,o,s=0,l=n.length){if(s<l){if(e(o,o)!==0)return l;do{let g=s+l>>>1;if(t(n[g],o)<=0)s=g+1;else l=g}while(s<l)}return s}function a(n,o,s=0,l=n.length){let g=i(n,o,s,l-1);return g>s&&r(n[g-1],o)>-r(n[g],o)?g-1:g}return{left:i,center:a,right:u}}function met(){return 0}var Bj=()=>{};function Ej(A){return A===null?NaN:+A}var UyA,MyA,Det,yet,dj;var TyA=P(()=>{Bj();UyA=rf(tf),MyA=UyA.right,Det=UyA.left,yet=rf(Ej).center,dj=MyA});function YyA({_intern:A,_key:e},t){let r=e(t);return A.has(r)?A.get(r):t}function wet({_intern:A,_key:e},t){let r=e(t);if(A.has(r))return A.get(r);return A.set(r,t),t}function bet({_intern:A,_key:e},t){let r=e(t);if(A.has(r))t=A.get(r),A.delete(r);return t}function vet(A){return A!==null&&typeof A==="object"?A.valueOf():A}var Sb;var HyA=P(()=>{Sb=class Sb extends Map{constructor(A,e=vet){super();if(Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),A!=null)for(let[t,r]of A)this.set(t,r)}get(A){return super.get(YyA(this,A))}has(A){return super.has(YyA(this,A))}set(A,e){return super.set(wet(this,A),e)}delete(A){return super.delete(bet(this,A))}}});function AN(A,e,t){let r=(e-A)/Math.max(0,t),i=Math.floor(Math.log10(r)),u=r/Math.pow(10,i),a=u>=ket?10:u>=Fet?5:u>=xet?2:1,n,o,s;if(i<0){if(s=Math.pow(10,-i)/a,n=Math.round(A*s),o=Math.round(e*s),n/s<A)++n;if(o/s>e)--o;s=-s}else{if(s=Math.pow(10,i)*a,n=Math.round(A/s),o=Math.round(e/s),n*s<A)++n;if(o*s>e)--o}if(o<n&&0.5<=t&&t<2)return AN(A,e,t*2);return[n,o,s]}function eN(A,e,t){if(e=+e,A=+A,t=+t,!(t>0))return[];if(A===e)return[A];let r=e<A,[i,u,a]=r?AN(e,A,t):AN(A,e,t);if(!(u>=i))return[];let n=u-i+1,o=Array(n);if(r)if(a<0)for(let s=0;s<n;++s)o[s]=(u-s)/-a;else for(let s=0;s<n;++s)o[s]=(u-s)*a;else if(a<0)for(let s=0;s<n;++s)o[s]=(i+s)/-a;else for(let s=0;s<n;++s)o[s]=(i+s)*a;return o}function Lb(A,e,t){return e=+e,A=+A,t=+t,AN(A,e,t)[2]}function wD(A,e,t){e=+e,A=+A,t=+t;let r=e<A,i=r?Lb(e,A,t):Lb(A,e,t);return(r?-1:1)*(i<0?1/-i:i)}var ket,Fet,xet;var KyA=P(()=>{ket=Math.sqrt(50),Fet=Math.sqrt(10),xet=Math.sqrt(2)});function tN(A,e){let t;if(e===void 0){for(let r of A)if(r!=null&&(t<r||t===void 0&&r>=r))t=r}else{let r=-1;for(let i of A)if((i=e(i,++r,A))!=null&&(t<i||t===void 0&&i>=i))t=i}return t}function rN(A,e){let t;if(e===void 0){for(let r of A)if(r!=null&&(t>r||t===void 0&&r>=r))t=r}else{let r=-1;for(let i of A)if((i=e(i,++r,A))!=null&&(t>i||t===void 0&&i>=i))t=i}return t}function iN(A,e,t){A=+A,e=+e,t=(i=arguments.length)<2?(e=A,A=0,1):i<3?1:+t;var r=-1,i=Math.max(0,Math.ceil((e-A)/t))|0,u=Array(i);while(++r<i)u[r]=A+r*t;return u}var pQ=P(()=>{TyA();Bj();KyA();HyA()});function Ij(A){return A}function Let(A){return"translate("+A+",0)"}function Ret(A){return"translate(0,"+A+")"}function Net(A){return(e)=>+A(e)}function Get(A,e){if(e=Math.max(0,A.bandwidth()-e*2)/2,A.round())e=Math.round(e);return(t)=>+A(t)+e}function Uet(){return!this.__axis}function OyA(A,e){var t=[],r=null,i=null,u=6,a=6,n=3,o=typeof window<"u"&&window.devicePixelRatio>1?0:0.5,s=A===aN||A===uN?-1:1,l=A===uN||A===hj?"x":"y",g=A===aN||A===Qj?Let:Ret;function C(B){var E=r==null?e.ticks?e.ticks.apply(e,t):e.domain():r,d=i==null?e.tickFormat?e.tickFormat.apply(e,t):Ij:i,I=Math.max(u,0)+n,h=e.range(),Q=+h[0]+o,p=+h[h.length-1]+o,m=(e.bandwidth?Get:Net)(e.copy(),o),f=B.selection?B.selection():B,D=f.selectAll(".domain").data([null]),w=f.selectAll(".tick").data(E,e).order(),b=w.exit(),F=w.enter().append("g").attr("class","tick"),v=w.select("line"),S=w.select("text");if(D=D.merge(D.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(F),v=v.merge(F.append("line").attr("stroke","currentColor").attr(l+"2",s*u)),S=S.merge(F.append("text").attr("fill","currentColor").attr(l,s*I).attr("dy",A===aN?"0em":A===Qj?"0.71em":"0.32em")),B!==f)D=D.transition(B),w=w.transition(B),v=v.transition(B),S=S.transition(B),b=b.transition(B).attr("opacity",JyA).attr("transform",function(x){return isFinite(x=m(x))?g(x+o):this.getAttribute("transform")}),F.attr("opacity",JyA).attr("transform",function(x){var k=this.parentNode.__axis;return g((k&&isFinite(k=k(x))?k:m(x))+o)});b.remove(),D.attr("d",A===uN||A===hj?a?"M"+s*a+","+Q+"H"+o+"V"+p+"H"+s*a:"M"+o+","+Q+"V"+p:a?"M"+Q+","+s*a+"V"+o+"H"+p+"V"+s*a:"M"+Q+","+o+"H"+p),w.attr("opacity",1).attr("transform",function(x){return g(m(x)+o)}),v.attr(l+"2",s*u),S.attr(l,s*I).text(d),f.filter(Uet).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",A===hj?"start":A===uN?"end":"middle"),f.each(function(){this.__axis=m})}return C.scale=function(B){return arguments.length?(e=B,C):e},C.ticks=function(){return t=Array.from(arguments),C},C.tickArguments=function(B){return arguments.length?(t=B==null?[]:Array.from(B),C):t.slice()},C.tickValues=function(B){return arguments.length?(r=B==null?null:Array.from(B),C):r&&r.slice()},C.tickFormat=function(B){return arguments.length?(i=B,C):i},C.tickSize=function(B){return arguments.length?(u=a=+B,C):u},C.tickSizeInner=function(B){return arguments.length?(u=+B,C):u},C.tickSizeOuter=function(B){return arguments.length?(a=+B,C):a},C.tickPadding=function(B){return arguments.length?(n=+B,C):n},C.offset=function(B){return arguments.length?(o=+B,C):o},C}function pj(A){return OyA(aN,A)}function fj(A){return OyA(Qj,A)}var aN=1,hj=2,Qj=3,uN=4,JyA=0.000001;var PyA=()=>{};var _yA=P(()=>{PyA()});function qyA(){for(var A=0,e=arguments.length,t={},r;A<e;++A){if(!(r=arguments[A]+"")||r in t||/[\s.]/.test(r))throw Error("illegal type: "+r);t[r]=[]}return new nN(t)}function nN(A){this._=A}function Tet(A,e){return A.trim().split(/^|\s+/).map(function(t){var r="",i=t.indexOf(".");if(i>=0)r=t.slice(i+1),t=t.slice(0,i);if(t&&!e.hasOwnProperty(t))throw Error("unknown type: "+t);return{type:t,name:r}})}function Yet(A,e){for(var t=0,r=A.length,i;t<r;++t)if((i=A[t]).name===e)return i.value}function WyA(A,e,t){for(var r=0,i=A.length;r<i;++r)if(A[r].name===e){A[r]=Met,A=A.slice(0,r).concat(A.slice(r+1));break}if(t!=null)A.push({name:e,value:t});return A}var Met,mj;var zyA=P(()=>{Met={value:()=>{}};nN.prototype=qyA.prototype={constructor:nN,on:function(A,e){var t=this._,r=Tet(A+"",t),i,u=-1,a=r.length;if(arguments.length<2){while(++u<a)if((i=(A=r[u]).type)&&(i=Yet(t[i],A.name)))return i;return}if(e!=null&&typeof e!=="function")throw Error("invalid callback: "+e);while(++u<a)if(i=(A=r[u]).type)t[i]=WyA(t[i],A.name,e);else if(e==null)for(i in t)t[i]=WyA(t[i],A.name,null);return this},copy:function(){var A={},e=this._;for(var t in e)A[t]=e[t].slice();return new nN(A)},call:function(A,e){if((i=arguments.length-2)>0)for(var t=Array(i),r=0,i,u;r<i;++r)t[r]=arguments[r+2];if(!this._.hasOwnProperty(A))throw Error("unknown type: "+A);for(u=this._[A],r=0,i=u.length;r<i;++r)u[r].value.apply(e,t)},apply:function(A,e,t){if(!this._.hasOwnProperty(A))throw Error("unknown type: "+A);for(var r=this._[A],i=0,u=r.length;i<u;++i)r[i].value.apply(e,t)}};mj=qyA});var Dj=P(()=>{zyA()});var oN="http://www.w3.org/1999/xhtml",yj;var wj=P(()=>{yj={svg:"http://www.w3.org/2000/svg",xhtml:oN,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function iE(A){var e=A+="",t=e.indexOf(":");if(t>=0&&(e=A.slice(0,t))!=="xmlns")A=A.slice(t+1);return yj.hasOwnProperty(e)?{space:yj[e],local:A}:A}var sN=P(()=>{wj()});function Het(A){return function(){var e=this.ownerDocument,t=this.namespaceURI;return t===oN&&e.documentElement.namespaceURI===oN?e.createElement(A):e.createElementNS(t,A)}}function Ket(A){return function(){return this.ownerDocument.createElementNS(A.space,A.local)}}function Rb(A){var e=iE(A);return(e.local?Ket:Het)(e)}var bj=P(()=>{sN();wj()});function Jet(){}function fQ(A){return A==null?Jet:function(){return this.querySelector(A)}}function vj(A){if(typeof A!=="function")A=fQ(A);for(var e=this._groups,t=e.length,r=Array(t),i=0;i<t;++i)for(var u=e[i],a=u.length,n=r[i]=Array(a),o,s,l=0;l<a;++l)if((o=u[l])&&(s=A.call(o,o.__data__,l,u))){if("__data__"in o)s.__data__=o.__data__;n[l]=s}return new _a(r,this._parents)}var ZyA=P(()=>{oC()});function kj(A){return A==null?[]:Array.isArray(A)?A:Array.from(A)}function Oet(){return[]}function bD(A){return A==null?Oet:function(){return this.querySelectorAll(A)}}function Pet(A){return function(){return kj(A.apply(this,arguments))}}function Fj(A){if(typeof A==="function")A=Pet(A);else A=bD(A);for(var e=this._groups,t=e.length,r=[],i=[],u=0;u<t;++u)for(var a=e[u],n=a.length,o,s=0;s<n;++s)if(o=a[s])r.push(A.call(o,o.__data__,s,a)),i.push(o);return new _a(r,i)}var VyA=P(()=>{oC()});function vD(A){return function(){return this.matches(A)}}function lN(A){return function(e){return e.matches(A)}}function Wet(A){return function(){return _et.call(this.children,A)}}function qet(){return this.firstElementChild}function xj(A){return this.select(A==null?qet:Wet(typeof A==="function"?A:lN(A)))}var _et;var jyA=P(()=>{_et=Array.prototype.find});function Zet(){return Array.from(this.children)}function Vet(A){return function(){return zet.call(this.children,A)}}function Sj(A){return this.selectAll(A==null?Zet:Vet(typeof A==="function"?A:lN(A)))}var zet;var XyA=P(()=>{zet=Array.prototype.filter});function Lj(A){if(typeof A!=="function")A=vD(A);for(var e=this._groups,t=e.length,r=Array(t),i=0;i<t;++i)for(var u=e[i],a=u.length,n=r[i]=[],o,s=0;s<a;++s)if((o=u[s])&&A.call(o,o.__data__,s,u))n.push(o);return new _a(r,this._parents)}var $yA=P(()=>{oC()});function Nb(A){return Array(A.length)}function Rj(){return new _a(this._enter||this._groups.map(Nb),this._parents)}function Gb(A,e){this.ownerDocument=A.ownerDocument,this.namespaceURI=A.namespaceURI,this._next=null,this._parent=A,this.__data__=e}var Nj=P(()=>{oC();Gb.prototype={constructor:Gb,appendChild:function(A){return this._parent.insertBefore(A,this._next)},insertBefore:function(A,e){return this._parent.insertBefore(A,e)},querySelector:function(A){return this._parent.querySelector(A)},querySelectorAll:function(A){return this._parent.querySelectorAll(A)}}});function Gj(A){return function(){return A}}function jet(A,e,t,r,i,u){var a=0,n,o=e.length,s=u.length;for(;a<s;++a)if(n=e[a])n.__data__=u[a],r[a]=n;else t[a]=new Gb(A,u[a]);for(;a<o;++a)if(n=e[a])i[a]=n}function Xet(A,e,t,r,i,u,a){var n,o,s=new Map,l=e.length,g=u.length,C=Array(l),B;for(n=0;n<l;++n)if(o=e[n])if(C[n]=B=a.call(o,o.__data__,n,e)+"",s.has(B))i[n]=o;else s.set(B,o);for(n=0;n<g;++n)if(B=a.call(A,u[n],n,u)+"",o=s.get(B))r[n]=o,o.__data__=u[n],s.delete(B);else t[n]=new Gb(A,u[n]);for(n=0;n<l;++n)if((o=e[n])&&s.get(C[n])===o)i[n]=o}function $et(A){return A.__data__}function Uj(A,e){if(!arguments.length)return Array.from(this,$et);var t=e?Xet:jet,r=this._parents,i=this._groups;if(typeof A!=="function")A=Gj(A);for(var u=i.length,a=Array(u),n=Array(u),o=Array(u),s=0;s<u;++s){var l=r[s],g=i[s],C=g.length,B=Att(A.call(l,l&&l.__data__,s,r)),E=B.length,d=n[s]=Array(E),I=a[s]=Array(E),h=o[s]=Array(C);t(l,g,d,I,h,B,e);for(var Q=0,p=0,m,f;Q<E;++Q)if(m=d[Q]){if(Q>=p)p=Q+1;while(!(f=I[p])&&++p<E);m._next=f||null}}return a=new _a(a,r),a._enter=n,a._exit=o,a}function Att(A){return typeof A==="object"&&"length"in A?A:Array.from(A)}var AwA=P(()=>{oC();Nj()});function Mj(){return new _a(this._exit||this._groups.map(Nb),this._parents)}var ewA=P(()=>{oC()});function Tj(A,e,t){var r=this.enter(),i=this,u=this.exit();if(typeof A==="function"){if(r=A(r),r)r=r.selection()}else r=r.append(A+"");if(e!=null){if(i=e(i),i)i=i.selection()}if(t==null)u.remove();else t(u);return r&&i?r.merge(i).order():i}function Yj(A){var e=A.selection?A.selection():A;for(var t=this._groups,r=e._groups,i=t.length,u=r.length,a=Math.min(i,u),n=Array(i),o=0;o<a;++o)for(var s=t[o],l=r[o],g=s.length,C=n[o]=Array(g),B,E=0;E<g;++E)if(B=s[E]||l[E])C[E]=B;for(;o<i;++o)n[o]=t[o];return new _a(n,this._parents)}var twA=P(()=>{oC()});function Hj(){for(var A=this._groups,e=-1,t=A.length;++e<t;)for(var r=A[e],i=r.length-1,u=r[i],a;--i>=0;)if(a=r[i]){if(u&&a.compareDocumentPosition(u)^4)u.parentNode.insertBefore(a,u);u=a}return this}function Kj(A){if(!A)A=ett;function e(g,C){return g&&C?A(g.__data__,C.__data__):!g-!C}for(var t=this._groups,r=t.length,i=Array(r),u=0;u<r;++u){for(var a=t[u],n=a.length,o=i[u]=Array(n),s,l=0;l<n;++l)if(s=a[l])o[l]=s;o.sort(e)}return new _a(i,this._parents).order()}function ett(A,e){return A<e?-1:A>e?1:A>=e?0:NaN}var rwA=P(()=>{oC()});function Jj(){var A=arguments[0];return arguments[0]=this,A.apply(null,arguments),this}function Oj(){return Array.from(this)}function Pj(){for(var A=this._groups,e=0,t=A.length;e<t;++e)for(var r=A[e],i=0,u=r.length;i<u;++i){var a=r[i];if(a)return a}return null}function _j(){let A=0;for(let e of this)++A;return A}function Wj(){return!this.node()}function qj(A){for(var e=this._groups,t=0,r=e.length;t<r;++t)for(var i=e[t],u=0,a=i.length,n;u<a;++u)if(n=i[u])A.call(n,n.__data__,u,i);return this}function ttt(A){return function(){this.removeAttribute(A)}}function rtt(A){return function(){this.removeAttributeNS(A.space,A.local)}}function itt(A,e){return function(){this.setAttribute(A,e)}}function utt(A,e){return function(){this.setAttributeNS(A.space,A.local,e)}}function att(A,e){return function(){var t=e.apply(this,arguments);if(t==null)this.removeAttribute(A);else this.setAttribute(A,t)}}function ntt(A,e){return function(){var t=e.apply(this,arguments);if(t==null)this.removeAttributeNS(A.space,A.local);else this.setAttributeNS(A.space,A.local,t)}}function zj(A,e){var t=iE(A);if(arguments.length<2){var r=this.node();return t.local?r.getAttributeNS(t.space,t.local):r.getAttribute(t)}return this.each((e==null?t.local?rtt:ttt:typeof e==="function"?t.local?ntt:att:t.local?utt:itt)(t,e))}var iwA=P(()=>{sN()});function Ub(A){return A.ownerDocument&&A.ownerDocument.defaultView||A.document&&A||A.defaultView}function ott(A){return function(){this.style.removeProperty(A)}}function stt(A,e,t){return function(){this.style.setProperty(A,e,t)}}function ltt(A,e,t){return function(){var r=e.apply(this,arguments);if(r==null)this.style.removeProperty(A);else this.style.setProperty(A,r,t)}}function Zj(A,e,t){return arguments.length>1?this.each((e==null?ott:typeof e==="function"?ltt:stt)(A,e,t==null?"":t)):mQ(this.node(),A)}function mQ(A,e){return A.style.getPropertyValue(e)||Ub(A).getComputedStyle(A,null).getPropertyValue(e)}var Vj=()=>{};function gtt(A){return function(){delete this[A]}}function ctt(A,e){return function(){this[A]=e}}function Ctt(A,e){return function(){var t=e.apply(this,arguments);if(t==null)delete this[A];else this[A]=t}}function jj(A,e){return arguments.length>1?this.each((e==null?gtt:typeof e==="function"?Ctt:ctt)(A,e)):this.node()[A]}function uwA(A){return A.trim().split(/^|\s+/)}function Xj(A){return A.classList||new awA(A)}function awA(A){this._node=A,this._names=uwA(A.getAttribute("class")||"")}function nwA(A,e){var t=Xj(A),r=-1,i=e.length;while(++r<i)t.add(e[r])}function owA(A,e){var t=Xj(A),r=-1,i=e.length;while(++r<i)t.remove(e[r])}function Btt(A){return function(){nwA(this,A)}}function Ett(A){return function(){owA(this,A)}}function dtt(A,e){return function(){(e.apply(this,arguments)?nwA:owA)(this,A)}}function $j(A,e){var t=uwA(A+"");if(arguments.length<2){var r=Xj(this.node()),i=-1,u=t.length;while(++i<u)if(!r.contains(t[i]))return!1;return!0}return this.each((typeof e==="function"?dtt:e?Btt:Ett)(t,e))}var swA=P(()=>{awA.prototype={add:function(A){var e=this._names.indexOf(A);if(e<0)this._names.push(A),this._node.setAttribute("class",this._names.join(" "))},remove:function(A){var e=this._names.indexOf(A);if(e>=0)this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" "))},contains:function(A){return this._names.indexOf(A)>=0}}});function Itt(){this.textContent=""}function htt(A){return function(){this.textContent=A}}function Qtt(A){return function(){var e=A.apply(this,arguments);this.textContent=e==null?"":e}}function AX(A){return arguments.length?this.each(A==null?Itt:(typeof A==="function"?Qtt:htt)(A)):this.node().textContent}function ptt(){this.innerHTML=""}function ftt(A){return function(){this.innerHTML=A}}function mtt(A){return function(){var e=A.apply(this,arguments);this.innerHTML=e==null?"":e}}function eX(A){return arguments.length?this.each(A==null?ptt:(typeof A==="function"?mtt:ftt)(A)):this.node().innerHTML}function Dtt(){if(this.nextSibling)this.parentNode.appendChild(this)}function tX(){return this.each(Dtt)}function ytt(){if(this.previousSibling)this.parentNode.insertBefore(this,this.parentNode.firstChild)}function rX(){return this.each(ytt)}function iX(A){var e=typeof A==="function"?A:Rb(A);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}var lwA=P(()=>{bj()});function wtt(){return null}function uX(A,e){var t=typeof A==="function"?A:Rb(A),r=e==null?wtt:typeof e==="function"?e:fQ(e);return this.select(function(){return this.insertBefore(t.apply(this,arguments),r.apply(this,arguments)||null)})}var gwA=P(()=>{bj()});function btt(){var A=this.parentNode;if(A)A.removeChild(this)}function aX(){return this.each(btt)}function vtt(){var A=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(A,this.nextSibling):A}function ktt(){var A=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(A,this.nextSibling):A}function nX(A){return this.select(A?ktt:vtt)}function oX(A){return arguments.length?this.property("__data__",A):this.node().__data__}function Ftt(A){return function(e){A.call(this,e,this.__data__)}}function xtt(A){return A.trim().split(/^|\s+/).map(function(e){var t="",r=e.indexOf(".");if(r>=0)t=e.slice(r+1),e=e.slice(0,r);return{type:e,name:t}})}function Stt(A){return function(){var e=this.__on;if(!e)return;for(var t=0,r=-1,i=e.length,u;t<i;++t)if(u=e[t],(!A.type||u.type===A.type)&&u.name===A.name)this.removeEventListener(u.type,u.listener,u.options);else e[++r]=u;if(++r)e.length=r;else delete this.__on}}function Ltt(A,e,t){return function(){var r=this.__on,i,u=Ftt(e);if(r){for(var a=0,n=r.length;a<n;++a)if((i=r[a]).type===A.type&&i.name===A.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=u,i.options=t),i.value=e;return}}if(this.addEventListener(A.type,u,t),i={type:A.type,name:A.name,value:e,listener:u,options:t},!r)this.__on=[i];else r.push(i)}}function sX(A,e,t){var r=xtt(A+""),i,u=r.length,a;if(arguments.length<2){var n=this.node().__on;if(n){for(var o=0,s=n.length,l;o<s;++o)for(i=0,l=n[o];i<u;++i)if((a=r[i]).type===l.type&&a.name===l.name)return l.value}return}n=e?Ltt:Stt;for(i=0;i<u;++i)this.each(n(r[i],e,t));return this}function cwA(A,e,t){var r=Ub(A),i=r.CustomEvent;if(typeof i==="function")i=new i(e,t);else if(i=r.document.createEvent("Event"),t)i.initEvent(e,t.bubbles,t.cancelable),i.detail=t.detail;else i.initEvent(e,!1,!1);A.dispatchEvent(i)}function Rtt(A,e){return function(){return cwA(this,A,e)}}function Ntt(A,e){return function(){return cwA(this,A,e.apply(this,arguments))}}function lX(A,e){return this.each((typeof e==="function"?Ntt:Rtt)(A,e))}var CwA=()=>{};function*gX(){for(var A=this._groups,e=0,t=A.length;e<t;++e)for(var r=A[e],i=0,u=r.length,a;i<u;++i)if(a=r[i])yield a}function _a(A,e){this._groups=A,this._parents=e}function BwA(){return new _a([[document.documentElement]],cX)}function Gtt(){return this}var cX,lI;var oC=P(()=>{ZyA();VyA();jyA();XyA();$yA();AwA();Nj();ewA();twA();rwA();iwA();Vj();swA();lwA();gwA();CwA();cX=[null];_a.prototype=BwA.prototype={constructor:_a,select:vj,selectAll:Fj,selectChild:xj,selectChildren:Sj,filter:Lj,data:Uj,enter:Rj,exit:Mj,join:Tj,merge:Yj,selection:Gtt,order:Hj,sort:Kj,call:Jj,nodes:Oj,node:Pj,size:_j,empty:Wj,each:qj,attr:zj,style:Zj,property:jj,classed:$j,text:AX,html:eX,raise:tX,lower:rX,append:iX,insert:uX,remove:aX,clone:nX,datum:oX,on:sX,dispatch:lX,[Symbol.iterator]:gX};lI=BwA});function Qe(A){return typeof A==="string"?new _a([[document.querySelector(A)]],[document.documentElement]):new _a([[A]],cX)}var EwA=P(()=>{oC()});var sC=P(()=>{sN();EwA();oC();Vj()});var dwA=()=>{};function DQ(A,e,t){A.prototype=e.prototype=t,t.constructor=A}function kD(A,e){var t=Object.create(A.prototype);for(var r in e)t[r]=e[r];return t}function yQ(){}function hwA(){return this.rgb().formatHex()}function Ott(){return this.rgb().formatHex8()}function Ptt(){return wwA(this).formatHsl()}function QwA(){return this.rgb().formatRgb()}function gC(A){var e,t;return A=(A+"").trim().toLowerCase(),(e=Utt.exec(A))?(t=e[1].length,e=parseInt(e[1],16),t===6?pwA(e):t===3?new Xo(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):t===8?gN(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):t===4?gN(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=Mtt.exec(A))?new Xo(e[1],e[2],e[3],1):(e=Ttt.exec(A))?new Xo(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=Ytt.exec(A))?gN(e[1],e[2],e[3],e[4]):(e=Htt.exec(A))?gN(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=Ktt.exec(A))?DwA(e[1],e[2]/100,e[3]/100,1):(e=Jtt.exec(A))?DwA(e[1],e[2]/100,e[3]/100,e[4]):IwA.hasOwnProperty(A)?pwA(IwA[A]):A==="transparent"?new Xo(NaN,NaN,NaN,0):null}function pwA(A){return new Xo(A>>16&255,A>>8&255,A&255,1)}function gN(A,e,t,r){if(r<=0)A=e=t=NaN;return new Xo(A,e,t,r)}function BX(A){if(!(A instanceof yQ))A=gC(A);if(!A)return new Xo;return A=A.rgb(),new Xo(A.r,A.g,A.b,A.opacity)}function xD(A,e,t,r){return arguments.length===1?BX(A):new Xo(A,e,t,r==null?1:r)}function Xo(A,e,t,r){this.r=+A,this.g=+e,this.b=+t,this.opacity=+r}function fwA(){return`#${uf(this.r)}${uf(this.g)}${uf(this.b)}`}function _tt(){return`#${uf(this.r)}${uf(this.g)}${uf(this.b)}${uf((isNaN(this.opacity)?1:this.opacity)*255)}`}function mwA(){let A=BN(this.opacity);return`${A===1?"rgb(":"rgba("}${af(this.r)}, ${af(this.g)}, ${af(this.b)}${A===1?")":`, ${A})`}`}function BN(A){return isNaN(A)?1:Math.max(0,Math.min(1,A))}function af(A){return Math.max(0,Math.min(255,Math.round(A)||0))}function uf(A){return A=af(A),(A<16?"0":"")+A.toString(16)}function DwA(A,e,t,r){if(r<=0)A=e=t=NaN;else if(t<=0||t>=1)A=e=NaN;else if(e<=0)A=NaN;return new lC(A,e,t,r)}function wwA(A){if(A instanceof lC)return new lC(A.h,A.s,A.l,A.opacity);if(!(A instanceof yQ))A=gC(A);if(!A)return new lC;if(A instanceof lC)return A;A=A.rgb();var e=A.r/255,t=A.g/255,r=A.b/255,i=Math.min(e,t,r),u=Math.max(e,t,r),a=NaN,n=u-i,o=(u+i)/2;if(n){if(e===u)a=(t-r)/n+(t<r)*6;else if(t===u)a=(r-e)/n+2;else a=(e-t)/n+4;n/=o<0.5?u+i:2-u-i,a*=60}else n=o>0&&o<1?0:a;return new lC(a,n,o,A.opacity)}function bwA(A,e,t,r){return arguments.length===1?wwA(A):new lC(A,e,t,r==null?1:r)}function lC(A,e,t,r){this.h=+A,this.s=+e,this.l=+t,this.opacity=+r}function ywA(A){return A=(A||0)%360,A<0?A+360:A}function cN(A){return Math.max(0,Math.min(1,A||0))}function CX(A,e,t){return(A<60?e+(t-e)*A/60:A<180?t:A<240?e+(t-e)*(240-A)/60:e)*255}var Mb=0.7,CN,FD="\\s*([+-]?\\d+)\\s*",Tb="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",uE="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Utt,Mtt,Ttt,Ytt,Htt,Ktt,Jtt,IwA;var EX=P(()=>{CN=1/Mb,Utt=/^#([0-9a-f]{3,8})$/,Mtt=new RegExp(`^rgb\\(${FD},${FD},${FD}\\)$`),Ttt=new RegExp(`^rgb\\(${uE},${uE},${uE}\\)$`),Ytt=new RegExp(`^rgba\\(${FD},${FD},${FD},${Tb}\\)$`),Htt=new RegExp(`^rgba\\(${uE},${uE},${uE},${Tb}\\)$`),Ktt=new RegExp(`^hsl\\(${Tb},${uE},${uE}\\)$`),Jtt=new RegExp(`^hsla\\(${Tb},${uE},${uE},${Tb}\\)$`),IwA={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};DQ(yQ,gC,{copy(A){return Object.assign(new this.constructor,this,A)},displayable(){return this.rgb().displayable()},hex:hwA,formatHex:hwA,formatHex8:Ott,formatHsl:Ptt,formatRgb:QwA,toString:QwA});DQ(Xo,xD,kD(yQ,{brighter(A){return A=A==null?CN:Math.pow(CN,A),new Xo(this.r*A,this.g*A,this.b*A,this.opacity)},darker(A){return A=A==null?Mb:Math.pow(Mb,A),new Xo(this.r*A,this.g*A,this.b*A,this.opacity)},rgb(){return this},clamp(){return new Xo(af(this.r),af(this.g),af(this.b),BN(this.opacity))},displayable(){return-0.5<=this.r&&this.r<255.5&&(-0.5<=this.g&&this.g<255.5)&&(-0.5<=this.b&&this.b<255.5)&&(0<=this.opacity&&this.opacity<=1)},hex:fwA,formatHex:fwA,formatHex8:_tt,formatRgb:mwA,toString:mwA}));DQ(lC,bwA,kD(yQ,{brighter(A){return A=A==null?CN:Math.pow(CN,A),new lC(this.h,this.s,this.l*A,this.opacity)},darker(A){return A=A==null?Mb:Math.pow(Mb,A),new lC(this.h,this.s,this.l*A,this.opacity)},rgb(){var A=this.h%360+(this.h<0)*360,e=isNaN(A)||isNaN(this.s)?0:this.s,t=this.l,r=t+(t<0.5?t:1-t)*e,i=2*t-r;return new Xo(CX(A>=240?A-240:A+120,i,r),CX(A,i,r),CX(A<120?A+240:A-120,i,r),this.opacity)},clamp(){return new lC(ywA(this.h),cN(this.s),cN(this.l),BN(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&(0<=this.l&&this.l<=1)&&(0<=this.opacity&&this.opacity<=1)},formatHsl(){let A=BN(this.opacity);return`${A===1?"hsl(":"hsla("}${ywA(this.h)}, ${cN(this.s)*100}%, ${cN(this.l)*100}%${A===1?")":`, ${A})`}`}}))});var vwA,kwA;var FwA=P(()=>{vwA=Math.PI/180,kwA=180/Math.PI});function GwA(A){if(A instanceof aE)return new aE(A.l,A.a,A.b,A.opacity);if(A instanceof gI)return UwA(A);if(!(A instanceof Xo))A=BX(A);var e=QX(A.r),t=QX(A.g),r=QX(A.b),i=dX((0.2225045*e+0.7168786*t+0.0606169*r)/SwA),u,a;if(e===t&&t===r)u=a=i;else u=dX((0.4360747*e+0.3850649*t+0.1430804*r)/xwA),a=dX((0.0139322*e+0.0971045*t+0.7141733*r)/LwA);return new aE(116*i-16,500*(u-i),200*(i-a),A.opacity)}function pX(A,e,t,r){return arguments.length===1?GwA(A):new aE(A,e,t,r==null?1:r)}function aE(A,e,t,r){this.l=+A,this.a=+e,this.b=+t,this.opacity=+r}function dX(A){return A>Wtt?Math.pow(A,0.3333333333333333):A/NwA+RwA}function IX(A){return A>SD?A*A*A:NwA*(A-RwA)}function hX(A){return 255*(A<=0.0031308?12.92*A:1.055*Math.pow(A,0.4166666666666667)-0.055)}function QX(A){return(A/=255)<=0.04045?A/12.92:Math.pow((A+0.055)/1.055,2.4)}function qtt(A){if(A instanceof gI)return new gI(A.h,A.c,A.l,A.opacity);if(!(A instanceof aE))A=GwA(A);if(A.a===0&&A.b===0)return new gI(NaN,0<A.l&&A.l<100?0:NaN,A.l,A.opacity);var e=Math.atan2(A.b,A.a)*kwA;return new gI(e<0?e+360:e,Math.sqrt(A.a*A.a+A.b*A.b),A.l,A.opacity)}function Yb(A,e,t,r){return arguments.length===1?qtt(A):new gI(A,e,t,r==null?1:r)}function gI(A,e,t,r){this.h=+A,this.c=+e,this.l=+t,this.opacity=+r}function UwA(A){if(isNaN(A.h))return new aE(A.l,0,0,A.opacity);var e=A.h*vwA;return new aE(A.l,Math.cos(e)*A.c,Math.sin(e)*A.c,A.opacity)}var EN=18,xwA=0.96422,SwA=1,LwA=0.82521,RwA=0.13793103448275862,SD=0.20689655172413793,NwA,Wtt;var MwA=P(()=>{EX();FwA();NwA=3*SD*SD,Wtt=SD*SD*SD;DQ(aE,pX,kD(yQ,{brighter(A){return new aE(this.l+EN*(A==null?1:A),this.a,this.b,this.opacity)},darker(A){return new aE(this.l-EN*(A==null?1:A),this.a,this.b,this.opacity)},rgb(){var A=(this.l+16)/116,e=isNaN(this.a)?A:A+this.a/500,t=isNaN(this.b)?A:A-this.b/200;return e=xwA*IX(e),A=SwA*IX(A),t=LwA*IX(t),new Xo(hX(3.1338561*e-1.6168667*A-0.4906146*t),hX(-0.9787684*e+1.9161415*A+0.033454*t),hX(0.0719453*e-0.2289914*A+1.4052427*t),this.opacity)}}));DQ(gI,Yb,kD(yQ,{brighter(A){return new gI(this.h,this.c,this.l+EN*(A==null?1:A),this.opacity)},darker(A){return new gI(this.h,this.c,this.l-EN*(A==null?1:A),this.opacity)},rgb(){return UwA(this).rgb()}}))});var LD=P(()=>{EX();MwA()});function fX(A,e,t,r,i){var u=A*A,a=u*A;return((1-3*A+3*u-a)*e+(4-6*u+3*a)*t+(1+3*A+3*u-3*a)*r+a*i)/6}function mX(A){var e=A.length-1;return function(t){var r=t<=0?t=0:t>=1?(t=1,e-1):Math.floor(t*e),i=A[r],u=A[r+1],a=r>0?A[r-1]:2*i-u,n=r<e-1?A[r+2]:2*u-i;return fX((t-r/e)*e,a,i,u,n)}}function DX(A){var e=A.length;return function(t){var r=Math.floor(((t%=1)<0?++t:t)*e),i=A[(r+e-1)%e],u=A[r%e],a=A[(r+1)%e],n=A[(r+2)%e];return fX((t-r/e)*e,i,u,a,n)}}var TwA=()=>{};var RD=(A)=>()=>A;function YwA(A,e){return function(t){return A+t*e}}function ztt(A,e,t){return A=Math.pow(A,t),e=Math.pow(e,t)-A,t=1/t,function(r){return Math.pow(A+r*e,t)}}function HwA(A,e){var t=e-A;return t?YwA(A,t>180||t<-180?t-360*Math.round(t/360):t):RD(isNaN(A)?e:A)}function KwA(A){return(A=+A)===1?cI:function(e,t){return t-e?ztt(e,t,A):RD(isNaN(e)?t:e)}}function cI(A,e){var t=e-A;return t?YwA(A,t):RD(isNaN(A)?e:A)}var yX=()=>{};function JwA(A){return function(e){var t=e.length,r=Array(t),i=Array(t),u=Array(t),a,n;for(a=0;a<t;++a)n=xD(e[a]),r[a]=n.r||0,i[a]=n.g||0,u[a]=n.b||0;return r=A(r),i=A(i),u=A(u),n.opacity=1,function(o){return n.r=r(o),n.g=i(o),n.b=u(o),n+""}}}var nf,Ztt,Vtt;var wX=P(()=>{LD();TwA();yX();nf=function A(e){var t=KwA(e);function r(i,u){var a=t((i=xD(i)).r,(u=xD(u)).r),n=t(i.g,u.g),o=t(i.b,u.b),s=cI(i.opacity,u.opacity);return function(l){return i.r=a(l),i.g=n(l),i.b=o(l),i.opacity=s(l),i+""}}return r.gamma=A,r}(1);Ztt=JwA(mX),Vtt=JwA(DX)});function bX(A,e){if(!e)e=[];var t=A?Math.min(e.length,A.length):0,r=e.slice(),i;return function(u){for(i=0;i<t;++i)r[i]=A[i]*(1-u)+e[i]*u;return r}}function OwA(A){return ArrayBuffer.isView(A)&&!(A instanceof DataView)}function PwA(A,e){var t=e?e.length:0,r=A?Math.min(t,A.length):0,i=Array(r),u=Array(t),a;for(a=0;a<r;++a)i[a]=wQ(A[a],e[a]);for(;a<t;++a)u[a]=e[a];return function(n){for(a=0;a<r;++a)u[a]=i[a](n);return u}}var _wA=P(()=>{dN()});function vX(A,e){var t=new Date;return A=+A,e=+e,function(r){return t.setTime(A*(1-r)+e*r),t}}function bo(A,e){return A=+A,e=+e,function(t){return A*(1-t)+e*t}}function kX(A,e){var t={},r={},i;if(A===null||typeof A!=="object")A={};if(e===null||typeof e!=="object")e={};for(i in e)if(i in A)t[i]=wQ(A[i],e[i]);else r[i]=e[i];return function(u){for(i in t)r[i]=t[i](u);return r}}var WwA=P(()=>{dN()});function jtt(A){return function(){return A}}function Xtt(A){return function(e){return A(e)+""}}function ND(A,e){var t=xX.lastIndex=FX.lastIndex=0,r,i,u,a=-1,n=[],o=[];A=A+"",e=e+"";while((r=xX.exec(A))&&(i=FX.exec(e))){if((u=i.index)>t)if(u=e.slice(t,u),n[a])n[a]+=u;else n[++a]=u;if((r=r[0])===(i=i[0]))if(n[a])n[a]+=i;else n[++a]=i;else n[++a]=null,o.push({i:a,x:bo(r,i)});t=FX.lastIndex}if(t<e.length)if(u=e.slice(t),n[a])n[a]+=u;else n[++a]=u;return n.length<2?o[0]?Xtt(o[0].x):jtt(e):(e=o.length,function(s){for(var l=0,g;l<e;++l)n[(g=o[l]).i]=g.x(s);return n.join("")})}var xX,FX;var SX=P(()=>{xX=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,FX=new RegExp(xX.source,"g")});function wQ(A,e){var t=typeof e,r;return e==null||t==="boolean"?RD(e):(t==="number"?bo:t==="string"?(r=gC(e))?(e=r,nf):ND:e instanceof gC?nf:e instanceof Date?vX:OwA(e)?bX:Array.isArray(e)?PwA:typeof e.valueOf!=="function"&&typeof e.toString!=="function"||isNaN(e)?kX:bo)(A,e)}var dN=P(()=>{LD();wX();_wA();WwA();SX()});function IN(A,e){return A=+A,e=+e,function(t){return Math.round(A*(1-t)+e*t)}}function QN(A,e,t,r,i,u){var a,n,o;if(a=Math.sqrt(A*A+e*e))A/=a,e/=a;if(o=A*t+e*r)t-=A*o,r-=e*o;if(n=Math.sqrt(t*t+r*r))t/=n,r/=n,o/=n;if(A*r<e*t)A=-A,e=-e,o=-o,a=-a;return{translateX:i,translateY:u,rotate:Math.atan2(e,A)*qwA,skewX:Math.atan(o)*qwA,scaleX:a,scaleY:n}}var qwA,hN;var zwA=P(()=>{qwA=180/Math.PI,hN={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function ZwA(A){let e=new(typeof DOMMatrix==="function"?DOMMatrix:WebKitCSSMatrix)(A+"");return e.isIdentity?hN:QN(e.a,e.b,e.c,e.d,e.e,e.f)}function VwA(A){if(A==null)return hN;if(!pN)pN=document.createElementNS("http://www.w3.org/2000/svg","g");if(pN.setAttribute("transform",A),!(A=pN.transform.baseVal.consolidate()))return hN;return A=A.matrix,QN(A.a,A.b,A.c,A.d,A.e,A.f)}var pN;var jwA=P(()=>{zwA()});function XwA(A,e,t,r){function i(s){return s.length?s.pop()+" ":""}function u(s,l,g,C,B,E){if(s!==g||l!==C){var d=B.push("translate(",null,e,null,t);E.push({i:d-4,x:bo(s,g)},{i:d-2,x:bo(l,C)})}else if(g||C)B.push("translate("+g+e+C+t)}function a(s,l,g,C){if(s!==l){if(s-l>180)l+=360;else if(l-s>180)s+=360;C.push({i:g.push(i(g)+"rotate(",null,r)-2,x:bo(s,l)})}else if(l)g.push(i(g)+"rotate("+l+r)}function n(s,l,g,C){if(s!==l)C.push({i:g.push(i(g)+"skewX(",null,r)-2,x:bo(s,l)});else if(l)g.push(i(g)+"skewX("+l+r)}function o(s,l,g,C,B,E){if(s!==g||l!==C){var d=B.push(i(B)+"scale(",null,",",null,")");E.push({i:d-4,x:bo(s,g)},{i:d-2,x:bo(l,C)})}else if(g!==1||C!==1)B.push(i(B)+"scale("+g+","+C+")")}return function(s,l){var g=[],C=[];return s=A(s),l=A(l),u(s.translateX,s.translateY,l.translateX,l.translateY,g,C),a(s.rotate,l.rotate,g,C),n(s.skewX,l.skewX,g,C),o(s.scaleX,s.scaleY,l.scaleX,l.scaleY,g,C),s=l=null,function(B){var E=-1,d=C.length,I;while(++E<d)g[(I=C[E]).i]=I.x(B);return g.join("")}}}var LX,RX;var $wA=P(()=>{jwA();LX=XwA(ZwA,"px, ","px)","deg)"),RX=XwA(VwA,", ",")",")")});function A6A(A){return function(e,t){var r=A((e=Yb(e)).h,(t=Yb(t)).h),i=cI(e.c,t.c),u=cI(e.l,t.l),a=cI(e.opacity,t.opacity);return function(n){return e.h=r(n),e.c=i(n),e.l=u(n),e.opacity=a(n),e+""}}}var NX,$tt;var e6A=P(()=>{LD();yX();NX=A6A(HwA),$tt=A6A(cI)});var GD=P(()=>{dN();SX();$wA();wX();e6A()});function _b(){return of||(i6A(Art),of=Ob.now()+DN)}function Art(){of=0}function Pb(){this._call=this._time=this._next=null}function yN(A,e,t){var r=new Pb;return r.restart(A,e,t),r}function u6A(){_b(),++UD;var A=fN,e;while(A){if((e=of-A._time)>=0)A._call.call(void 0,e);A=A._next}--UD}function t6A(){of=(mN=Ob.now())+DN,UD=Kb=0;try{u6A()}finally{UD=0,trt(),of=0}}function ert(){var A=Ob.now(),e=A-mN;if(e>r6A)DN-=e,mN=A}function trt(){var A,e=fN,t,r=1/0;while(e)if(e._call){if(r>e._time)r=e._time;A=e,e=e._next}else t=e._next,e._next=null,e=A?A._next=t:fN=t;Jb=A,GX(r)}function GX(A){if(UD)return;if(Kb)Kb=clearTimeout(Kb);var e=A-of;if(e>24){if(A<1/0)Kb=setTimeout(t6A,A-Ob.now()-DN);if(Hb)Hb=clearInterval(Hb)}else{if(!Hb)mN=Ob.now(),Hb=setInterval(ert,r6A);UD=1,i6A(t6A)}}var UD=0,Kb=0,Hb=0,r6A=1000,fN,Jb,mN=0,of=0,DN=0,Ob,i6A;var UX=P(()=>{Ob=typeof performance==="object"&&performance.now?performance:Date,i6A=typeof window==="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(A){setTimeout(A,17)};Pb.prototype=yN.prototype={constructor:Pb,restart:function(A,e,t){if(typeof A!=="function")throw TypeError("callback is not a function");if(t=(t==null?_b():+t)+(e==null?0:+e),!this._next&&Jb!==this){if(Jb)Jb._next=this;else fN=this;Jb=this}this._call=A,this._time=t,GX()},stop:function(){if(this._call)this._call=null,this._time=1/0,GX()}}});function Wb(A,e,t){var r=new Pb;return e=e==null?0:+e,r.restart((i)=>{r.stop(),A(i+e)},e,t),r}var a6A=P(()=>{UX()});var wN=P(()=>{UX();a6A()});function CI(A,e,t,r,i,u){var a=A.__transition;if(!a)A.__transition={};else if(t in a)return;urt(A,t,{name:e,index:r,group:i,on:rrt,tween:irt,time:u.time,delay:u.delay,duration:u.duration,ease:u.ease,timer:null,state:s6A})}function zb(A,e){var t=$n(A,e);if(t.state>s6A)throw Error("too late; already scheduled");return t}function $o(A,e){var t=$n(A,e);if(t.state>bN)throw Error("too late; already running");return t}function $n(A,e){var t=A.__transition;if(!t||!(t=t[e]))throw Error("transition not found");return t}function urt(A,e,t){var r=A.__transition,i;r[e]=t,t.timer=yN(u,0,t.time);function u(s){if(t.state=n6A,t.timer.restart(a,t.delay,t.time),t.delay<=s)a(s-t.delay)}function a(s){var l,g,C,B;if(t.state!==n6A)return o();for(l in r){if(B=r[l],B.name!==t.name)continue;if(B.state===bN)return Wb(a);if(B.state===o6A)B.state=qb,B.timer.stop(),B.on.call("interrupt",A,A.__data__,B.index,B.group),delete r[l];else if(+l<e)B.state=qb,B.timer.stop(),B.on.call("cancel",A,A.__data__,B.index,B.group),delete r[l]}if(Wb(function(){if(t.state===bN)t.state=o6A,t.timer.restart(n,t.delay,t.time),n(s)}),t.state=vN,t.on.call("start",A,A.__data__,t.index,t.group),t.state!==vN)return;t.state=bN,i=Array(C=t.tween.length);for(l=0,g=-1;l<C;++l)if(B=t.tween[l].value.call(A,A.__data__,t.index,t.group))i[++g]=B;i.length=g+1}function n(s){var l=s<t.duration?t.ease.call(null,s/t.duration):(t.timer.restart(o),t.state=kN,1),g=-1,C=i.length;while(++g<C)i[g].call(A,l);if(t.state===kN)t.on.call("end",A,A.__data__,t.index,t.group),o()}function o(){t.state=qb,t.timer.stop(),delete r[e];for(var s in r)return;delete A.__transition}}var rrt,irt,s6A=0,n6A=1,vN=2,bN=3,o6A=4,kN=5,qb=6;var il=P(()=>{Dj();wN();rrt=mj("start","end","cancel","interrupt"),irt=[]});function Zb(A,e){var t=A.__transition,r,i,u=!0,a;if(!t)return;e=e==null?null:e+"";for(a in t){if((r=t[a]).name!==e){u=!1;continue}i=r.state>vN&&r.state<kN,r.state=qb,r.timer.stop(),r.on.call(i?"interrupt":"cancel",A,A.__data__,r.index,r.group),delete t[a]}if(u)delete A.__transition}var l6A=P(()=>{il()});function MX(A){return this.each(function(){Zb(this,A)})}var g6A=P(()=>{l6A()});function art(A,e){var t,r;return function(){var i=$o(this,A),u=i.tween;if(u!==t){r=t=u;for(var a=0,n=r.length;a<n;++a)if(r[a].name===e){r=r.slice(),r.splice(a,1);break}}i.tween=r}}function nrt(A,e,t){var r,i;if(typeof t!=="function")throw Error();return function(){var u=$o(this,A),a=u.tween;if(a!==r){i=(r=a).slice();for(var n={name:e,value:t},o=0,s=i.length;o<s;++o)if(i[o].name===e){i[o]=n;break}if(o===s)i.push(n)}u.tween=i}}function TX(A,e){var t=this._id;if(A+="",arguments.length<2){var r=$n(this.node(),t).tween;for(var i=0,u=r.length,a;i<u;++i)if((a=r[i]).name===A)return a.value;return null}return this.each((e==null?art:nrt)(t,A,e))}function MD(A,e,t){var r=A._id;return A.each(function(){var i=$o(this,r);(i.value||(i.value={}))[e]=t.apply(this,arguments)}),function(i){return $n(i,r).value[e]}}var Vb=P(()=>{il()});function jb(A,e){var t;return(typeof e==="number"?bo:e instanceof gC?nf:(t=gC(e))?(e=t,nf):ND)(A,e)}var YX=P(()=>{LD();GD()});function ort(A){return function(){this.removeAttribute(A)}}function srt(A){return function(){this.removeAttributeNS(A.space,A.local)}}function lrt(A,e,t){var r,i=t+"",u;return function(){var a=this.getAttribute(A);return a===i?null:a===r?u:u=e(r=a,t)}}function grt(A,e,t){var r,i=t+"",u;return function(){var a=this.getAttributeNS(A.space,A.local);return a===i?null:a===r?u:u=e(r=a,t)}}function crt(A,e,t){var r,i,u;return function(){var a,n=t(this),o;if(n==null)return void this.removeAttribute(A);return a=this.getAttribute(A),o=n+"",a===o?null:a===r&&o===i?u:(i=o,u=e(r=a,n))}}function Crt(A,e,t){var r,i,u;return function(){var a,n=t(this),o;if(n==null)return void this.removeAttributeNS(A.space,A.local);return a=this.getAttributeNS(A.space,A.local),o=n+"",a===o?null:a===r&&o===i?u:(i=o,u=e(r=a,n))}}function HX(A,e){var t=iE(A),r=t==="transform"?RX:jb;return this.attrTween(A,typeof e==="function"?(t.local?Crt:crt)(t,r,MD(this,"attr."+A,e)):e==null?(t.local?srt:ort)(t):(t.local?grt:lrt)(t,r,e))}var c6A=P(()=>{GD();sC();Vb();YX()});function Brt(A,e){return function(t){this.setAttribute(A,e.call(this,t))}}function Ert(A,e){return function(t){this.setAttributeNS(A.space,A.local,e.call(this,t))}}function drt(A,e){var t,r;function i(){var u=e.apply(this,arguments);if(u!==r)t=(r=u)&&Ert(A,u);return t}return i._value=e,i}function Irt(A,e){var t,r;function i(){var u=e.apply(this,arguments);if(u!==r)t=(r=u)&&Brt(A,u);return t}return i._value=e,i}function KX(A,e){var t="attr."+A;if(arguments.length<2)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=="function")throw Error();var r=iE(A);return this.tween(t,(r.local?drt:Irt)(r,e))}var C6A=P(()=>{sC()});function hrt(A,e){return function(){zb(this,A).delay=+e.apply(this,arguments)}}function Qrt(A,e){return e=+e,function(){zb(this,A).delay=e}}function JX(A){var e=this._id;return arguments.length?this.each((typeof A==="function"?hrt:Qrt)(e,A)):$n(this.node(),e).delay}var B6A=P(()=>{il()});function prt(A,e){return function(){$o(this,A).duration=+e.apply(this,arguments)}}function frt(A,e){return e=+e,function(){$o(this,A).duration=e}}function OX(A){var e=this._id;return arguments.length?this.each((typeof A==="function"?prt:frt)(e,A)):$n(this.node(),e).duration}var E6A=P(()=>{il()});function mrt(A,e){if(typeof e!=="function")throw Error();return function(){$o(this,A).ease=e}}function PX(A){var e=this._id;return arguments.length?this.each(mrt(e,A)):$n(this.node(),e).ease}var d6A=P(()=>{il()});function Drt(A,e){return function(){var t=e.apply(this,arguments);if(typeof t!=="function")throw Error();$o(this,A).ease=t}}function _X(A){if(typeof A!=="function")throw Error();return this.each(Drt(this._id,A))}var I6A=P(()=>{il()});function WX(A){if(typeof A!=="function")A=vD(A);for(var e=this._groups,t=e.length,r=Array(t),i=0;i<t;++i)for(var u=e[i],a=u.length,n=r[i]=[],o,s=0;s<a;++s)if((o=u[s])&&A.call(o,o.__data__,s,u))n.push(o);return new Cs(r,this._parents,this._name,this._id)}var h6A=P(()=>{sC();sf()});function qX(A){if(A._id!==this._id)throw Error();for(var e=this._groups,t=A._groups,r=e.length,i=t.length,u=Math.min(r,i),a=Array(r),n=0;n<u;++n)for(var o=e[n],s=t[n],l=o.length,g=a[n]=Array(l),C,B=0;B<l;++B)if(C=o[B]||s[B])g[B]=C;for(;n<r;++n)a[n]=e[n];return new Cs(a,this._parents,this._name,this._id)}var Q6A=P(()=>{sf()});function yrt(A){return(A+"").trim().split(/^|\s+/).every(function(e){var t=e.indexOf(".");if(t>=0)e=e.slice(0,t);return!e||e==="start"})}function wrt(A,e,t){var r,i,u=yrt(e)?zb:$o;return function(){var a=u(this,A),n=a.on;if(n!==r)(i=(r=n).copy()).on(e,t);a.on=i}}function zX(A,e){var t=this._id;return arguments.length<2?$n(this.node(),t).on.on(A):this.each(wrt(t,A,e))}var p6A=P(()=>{il()});function brt(A){return function(){var e=this.parentNode;for(var t in this.__transition)if(+t!==A)return;if(e)e.removeChild(this)}}function ZX(){return this.on("end.remove",brt(this._id))}function VX(A){var e=this._name,t=this._id;if(typeof A!=="function")A=fQ(A);for(var r=this._groups,i=r.length,u=Array(i),a=0;a<i;++a)for(var n=r[a],o=n.length,s=u[a]=Array(o),l,g,C=0;C<o;++C)if((l=n[C])&&(g=A.call(l,l.__data__,C,n))){if("__data__"in l)g.__data__=l.__data__;s[C]=g,CI(s[C],e,t,C,s,$n(l,t))}return new Cs(u,this._parents,e,t)}var f6A=P(()=>{sC();sf();il()});function jX(A){var e=this._name,t=this._id;if(typeof A!=="function")A=bD(A);for(var r=this._groups,i=r.length,u=[],a=[],n=0;n<i;++n)for(var o=r[n],s=o.length,l,g=0;g<s;++g)if(l=o[g]){for(var C=A.call(l,l.__data__,g,o),B,E=$n(l,t),d=0,I=C.length;d<I;++d)if(B=C[d])CI(B,e,t,d,C,E);u.push(C),a.push(l)}return new Cs(u,a,e,t)}var m6A=P(()=>{sC();sf();il()});function XX(){return new vrt(this._groups,this._parents)}var vrt;var D6A=P(()=>{sC();vrt=lI.prototype.constructor});function krt(A,e){var t,r,i;return function(){var u=mQ(this,A),a=(this.style.removeProperty(A),mQ(this,A));return u===a?null:u===t&&a===r?i:i=e(t=u,r=a)}}function y6A(A){return function(){this.style.removeProperty(A)}}function Frt(A,e,t){var r,i=t+"",u;return function(){var a=mQ(this,A);return a===i?null:a===r?u:u=e(r=a,t)}}function xrt(A,e,t){var r,i,u;return function(){var a=mQ(this,A),n=t(this),o=n+"";if(n==null)o=n=(this.style.removeProperty(A),mQ(this,A));return a===o?null:a===r&&o===i?u:(i=o,u=e(r=a,n))}}function Srt(A,e){var t,r,i,u="style."+e,a="end."+u,n;return function(){var o=$o(this,A),s=o.on,l=o.value[u]==null?n||(n=y6A(e)):void 0;if(s!==t||i!==l)(r=(t=s).copy()).on(a,i=l);o.on=r}}function $X(A,e,t){var r=(A+="")==="transform"?LX:jb;return e==null?this.styleTween(A,krt(A,r)).on("end.style."+A,y6A(A)):typeof e==="function"?this.styleTween(A,xrt(A,r,MD(this,"style."+A,e))).each(Srt(this._id,A)):this.styleTween(A,Frt(A,r,e),t).on("end.style."+A,null)}var w6A=P(()=>{GD();sC();il();Vb();YX()});function Lrt(A,e,t){return function(r){this.style.setProperty(A,e.call(this,r),t)}}function Rrt(A,e,t){var r,i;function u(){var a=e.apply(this,arguments);if(a!==i)r=(i=a)&&Lrt(A,a,t);return r}return u._value=e,u}function A$(A,e,t){var r="style."+(A+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!=="function")throw Error();return this.tween(r,Rrt(A,e,t==null?"":t))}function Nrt(A){return function(){this.textContent=A}}function Grt(A){return function(){var e=A(this);this.textContent=e==null?"":e}}function e$(A){return this.tween("text",typeof A==="function"?Grt(MD(this,"text",A)):Nrt(A==null?"":A+""))}var b6A=P(()=>{Vb()});function Urt(A){return function(e){this.textContent=A.call(this,e)}}function Mrt(A){var e,t;function r(){var i=A.apply(this,arguments);if(i!==t)e=(t=i)&&Urt(i);return e}return r._value=A,r}function t$(A){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(A==null)return this.tween(e,null);if(typeof A!=="function")throw Error();return this.tween(e,Mrt(A))}function r$(){var A=this._name,e=this._id,t=FN();for(var r=this._groups,i=r.length,u=0;u<i;++u)for(var a=r[u],n=a.length,o,s=0;s<n;++s)if(o=a[s]){var l=$n(o,e);CI(o,A,t,s,a,{time:l.time+l.delay+l.duration,delay:0,duration:l.duration,ease:l.ease})}return new Cs(r,this._parents,A,t)}var v6A=P(()=>{sf();il()});function i$(){var A,e,t=this,r=t._id,i=t.size();return new Promise(function(u,a){var n={value:a},o={value:function(){if(--i===0)u()}};if(t.each(function(){var s=$o(this,r),l=s.on;if(l!==A)e=(A=l).copy(),e._.cancel.push(n),e._.interrupt.push(n),e._.end.push(o);s.on=e}),i===0)u()})}var k6A=P(()=>{il()});function Cs(A,e,t,r){this._groups=A,this._parents=e,this._name=t,this._id=r}function F6A(A){return lI().transition(A)}function FN(){return++Trt}var Trt=0,BI;var sf=P(()=>{sC();c6A();C6A();B6A();E6A();d6A();I6A();h6A();Q6A();p6A();f6A();m6A();D6A();w6A();b6A();v6A();Vb();k6A();BI=lI.prototype;Cs.prototype=F6A.prototype={constructor:Cs,select:VX,selectAll:jX,selectChild:BI.selectChild,selectChildren:BI.selectChildren,filter:WX,merge:qX,selection:XX,transition:r$,call:BI.call,nodes:BI.nodes,node:BI.node,size:BI.size,empty:BI.empty,each:BI.each,on:zX,attr:HX,attrTween:KX,style:$X,styleTween:A$,text:e$,textTween:t$,remove:ZX,tween:TX,delay:JX,duration:OX,ease:PX,easeVarying:_X,end:i$,[Symbol.iterator]:BI[Symbol.iterator]}});function xN(A){return((A*=2)<=1?A*A*A:(A-=2)*A*A+2)/2}var u$=()=>{};function Hrt(A,e){var t;while(!(t=A.__transition)||!(t=t[e]))if(!(A=A.parentNode))throw Error(`transition ${e} not found`);return t}function a$(A){var e,t;if(A instanceof Cs)e=A._id,A=A._name;else e=FN(),(t=Yrt).time=_b(),A=A==null?null:A+"";for(var r=this._groups,i=r.length,u=0;u<i;++u)for(var a=r[u],n=a.length,o,s=0;s<n;++s)if(o=a[s])CI(o,A,e,s,a,t||Hrt(o,e));return new Cs(r,this._parents,A,e)}var Yrt;var x6A=P(()=>{sf();il();u$();wN();Yrt={time:null,delay:0,duration:250,ease:xN}});var S6A=P(()=>{sC();g6A();x6A();lI.prototype.interrupt=MX;lI.prototype.transition=a$});var SN=P(()=>{S6A()});function L6A(A){return[+A[0],+A[1]]}function Krt(A){return[L6A(A[0]),L6A(A[1])]}function n$(A){return{type:A}}var lyr,gyr,cyr,Cyr,Byr,Eyr;var R6A=P(()=>{SN();({abs:lyr,max:gyr,min:cyr}=Math);Cyr={name:"x",handles:["w","e"].map(n$),input:function(A,e){return A==null?null:[[+A[0],e[0][1]],[+A[1],e[1][1]]]},output:function(A){return A&&[A[0][0],A[1][0]]}},Byr={name:"y",handles:["n","s"].map(n$),input:function(A,e){return A==null?null:[[e[0][0],+A[0]],[e[1][0],+A[1]]]},output:function(A){return A&&[A[0][1],A[1][1]]}},Eyr={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(n$),input:function(A){return A==null?null:Krt(A)},output:function(A){return A}}});var N6A=P(()=>{R6A()});function G6A(A){this._+=A[0];for(let e=1,t=A.length;e<t;++e)this._+=arguments[e]+A[e]}function Ort(A){let e=Math.floor(A);if(!(e>=0))throw Error(`invalid digits: ${A}`);if(e>15)return G6A;let t=10**e;return function(r){this._+=r[0];for(let i=1,u=r.length;i<u;++i)this._+=Math.round(arguments[i]*t)/t+r[i]}}class TD{constructor(A){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=A==null?G6A:Ort(A)}moveTo(A,e){this._append`M${this._x0=this._x1=+A},${this._y0=this._y1=+e}`}closePath(){if(this._x1!==null)this._x1=this._x0,this._y1=this._y0,this._append`Z`}lineTo(A,e){this._append`L${this._x1=+A},${this._y1=+e}`}quadraticCurveTo(A,e,t,r){this._append`Q${+A},${+e},${this._x1=+t},${this._y1=+r}`}bezierCurveTo(A,e,t,r,i,u){this._append`C${+A},${+e},${+t},${+r},${this._x1=+i},${this._y1=+u}`}arcTo(A,e,t,r,i){if(A=+A,e=+e,t=+t,r=+r,i=+i,i<0)throw Error(`negative radius: ${i}`);let u=this._x1,a=this._y1,n=t-A,o=r-e,s=u-A,l=a-e,g=s*s+l*l;if(this._x1===null)this._append`M${this._x1=A},${this._y1=e}`;else if(!(g>0.000001));else if(!(Math.abs(l*n-o*s)>0.000001)||!i)this._append`L${this._x1=A},${this._y1=e}`;else{let C=t-u,B=r-a,E=n*n+o*o,d=C*C+B*B,I=Math.sqrt(E),h=Math.sqrt(g),Q=i*Math.tan((o$-Math.acos((E+g-d)/(2*I*h)))/2),p=Q/h,m=Q/I;if(Math.abs(p-1)>0.000001)this._append`L${A+p*s},${e+p*l}`;this._append`A${i},${i},0,0,${+(l*C>s*B)},${this._x1=A+m*n},${this._y1=e+m*o}`}}arc(A,e,t,r,i,u){if(A=+A,e=+e,t=+t,u=!!u,t<0)throw Error(`negative radius: ${t}`);let a=t*Math.cos(r),n=t*Math.sin(r),o=A+a,s=e+n,l=1^u,g=u?r-i:i-r;if(this._x1===null)this._append`M${o},${s}`;else if(Math.abs(this._x1-o)>0.000001||Math.abs(this._y1-s)>0.000001)this._append`L${o},${s}`;if(!t)return;if(g<0)g=g%s$+s$;if(g>Jrt)this._append`A${t},${t},0,1,${l},${A-a},${e-n}A${t},${t},0,1,${l},${this._x1=o},${this._y1=s}`;else if(g>0.000001)this._append`A${t},${t},0,${+(g>=o$)},${l},${this._x1=A+t*Math.cos(i)},${this._y1=e+t*Math.sin(i)}`}rect(A,e,t,r){this._append`M${this._x0=this._x1=+A},${this._y0=this._y1=+e}h${t=+t}v${+r}h${-t}Z`}toString(){return this._}}function U6A(){return new TD}var o$,s$,Jrt;var M6A=P(()=>{o$=Math.PI,s$=2*o$,Jrt=s$-0.000001;U6A.prototype=TD.prototype});var l$=P(()=>{M6A()});var T6A=()=>{};var Y6A=()=>{};var H6A=()=>{};var K6A=()=>{};var J6A=()=>{};var O6A=()=>{};var P6A=()=>{};function g$(A){return Math.abs(A=Math.round(A))>=1000000000000000000000?A.toLocaleString("en").replace(/,/g,""):A.toString(10)}function lf(A,e){if(!isFinite(A)||A===0)return null;var t=(A=e?A.toExponential(e-1):A.toExponential()).indexOf("e"),r=A.slice(0,t);return[r.length>1?r[0]+r.slice(2):r,+A.slice(t+1)]}function cC(A){return A=lf(Math.abs(A)),A?A[1]:NaN}var Xb=()=>{};function c$(A,e){return function(t,r){var i=t.length,u=[],a=0,n=A[0],o=0;while(i>0&&n>0){if(o+n+1>r)n=Math.max(1,r-o);if(u.push(t.substring(i-=n,i+n)),(o+=n+1)>r)break;n=A[a=(a+1)%A.length]}return u.reverse().join(e)}}function C$(A){return function(e){return e.replace(/[0-9]/g,function(t){return A[+t]})}}function bQ(A){if(!(e=Prt.exec(A)))throw Error("invalid format: "+A);var e;return new LN({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function LN(A){this.fill=A.fill===void 0?" ":A.fill+"",this.align=A.align===void 0?">":A.align+"",this.sign=A.sign===void 0?"-":A.sign+"",this.symbol=A.symbol===void 0?"":A.symbol+"",this.zero=!!A.zero,this.width=A.width===void 0?void 0:+A.width,this.comma=!!A.comma,this.precision=A.precision===void 0?void 0:+A.precision,this.trim=!!A.trim,this.type=A.type===void 0?"":A.type+""}var Prt;var B$=P(()=>{Prt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;bQ.prototype=LN.prototype;LN.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type}});function E$(A){A:for(var e=A.length,t=1,r=-1,i;t<e;++t)switch(A[t]){case".":r=i=t;break;case"0":if(r===0)r=t;i=t;break;default:if(!+A[t])break A;if(r>0)r=0;break}return r>0?A.slice(0,r)+A.slice(i+1):A}function d$(A,e){var t=lf(A,e);if(!t)return $b=void 0,A.toPrecision(e);var r=t[0],i=t[1],u=i-($b=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,a=r.length;return u===a?r:u>a?r+Array(u-a+1).join("0"):u>0?r.slice(0,u)+"."+r.slice(u):"0."+Array(1-u).join("0")+lf(A,Math.max(0,e+u-1))[0]}var $b;var I$=()=>{};function RN(A,e){var t=lf(A,e);if(!t)return A+"";var r=t[0],i=t[1];return i<0?"0."+Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+Array(i-r.length+2).join("0")}var _6A=()=>{};var h$;var W6A=P(()=>{I$();_6A();h$={"%":(A,e)=>(A*100).toFixed(e),b:(A)=>Math.round(A).toString(2),c:(A)=>A+"",d:g$,e:(A,e)=>A.toExponential(e),f:(A,e)=>A.toFixed(e),g:(A,e)=>A.toPrecision(e),o:(A)=>Math.round(A).toString(8),p:(A,e)=>RN(A*100,e),r:RN,s:d$,X:(A)=>Math.round(A).toString(16).toUpperCase(),x:(A)=>Math.round(A).toString(16)}});function NN(A){return A}function Q$(A){var e=A.grouping===void 0||A.thousands===void 0?NN:c$(q6A.call(A.grouping,Number),A.thousands+""),t=A.currency===void 0?"":A.currency[0]+"",r=A.currency===void 0?"":A.currency[1]+"",i=A.decimal===void 0?".":A.decimal+"",u=A.numerals===void 0?NN:C$(q6A.call(A.numerals,String)),a=A.percent===void 0?"%":A.percent+"",n=A.minus===void 0?"−":A.minus+"",o=A.nan===void 0?"NaN":A.nan+"";function s(g,C){g=bQ(g);var B=g.fill,E=g.align,d=g.sign,I=g.symbol,h=g.zero,Q=g.width,p=g.comma,m=g.precision,f=g.trim,D=g.type;if(D==="n")p=!0,D="g";else if(!h$[D])m===void 0&&(m=12),f=!0,D="g";if(h||B==="0"&&E==="=")h=!0,B="0",E="=";var w=(C&&C.prefix!==void 0?C.prefix:"")+(I==="$"?t:I==="#"&&/[boxX]/.test(D)?"0"+D.toLowerCase():""),b=(I==="$"?r:/[%p]/.test(D)?a:"")+(C&&C.suffix!==void 0?C.suffix:""),F=h$[D],v=/[defgprs%]/.test(D);m=m===void 0?6:/[gprs]/.test(D)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m));function S(x){var k=w,T=b,R,L,M;if(D==="c")T=F(x)+T,x="";else{x=+x;var U=x<0||1/x<0;if(x=isNaN(x)?o:F(Math.abs(x),m),f)x=E$(x);if(U&&+x===0&&d!=="+")U=!1;if(k=(U?d==="("?d:n:d==="-"||d==="("?"":d)+k,T=(D==="s"&&!isNaN(x)&&$b!==void 0?z6A[8+$b/3]:"")+T+(U&&d==="("?")":""),v){R=-1,L=x.length;while(++R<L)if(M=x.charCodeAt(R),48>M||M>57){T=(M===46?i+x.slice(R+1):x.slice(R))+T,x=x.slice(0,R);break}}}if(p&&!h)x=e(x,1/0);var Y=k.length+x.length+T.length,H=Y<Q?Array(Q-Y+1).join(B):"";if(p&&h)x=e(H+x,H.length?Q-T.length:1/0),H="";switch(E){case"<":x=k+x+T+H;break;case"=":x=k+H+x+T;break;case"^":x=H.slice(0,Y=H.length>>1)+k+x+T+H.slice(Y);break;default:x=H+k+x+T;break}return u(x)}return S.toString=function(){return g+""},S}function l(g,C){var B=Math.max(-8,Math.min(8,Math.floor(cC(C)/3)))*3,E=Math.pow(10,-B),d=s((g=bQ(g),g.type="f",g),{suffix:z6A[8+B/3]});return function(I){return d(E*I)}}return{format:s,formatPrefix:l}}var q6A,z6A;var Z6A=P(()=>{Xb();B$();W6A();I$();q6A=Array.prototype.map,z6A=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"]});function p$(A){return GN=Q$(A),nE=GN.format,UN=GN.formatPrefix,GN}var GN,nE,UN;var V6A=P(()=>{Z6A();p$({thousands:",",grouping:[3],currency:["$",""]})});function MN(A){return Math.max(0,-cC(Math.abs(A)))}var j6A=P(()=>{Xb()});function TN(A,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(cC(e)/3)))*3-cC(Math.abs(A)))}var X6A=P(()=>{Xb()});function YN(A,e){return A=Math.abs(A),e=Math.abs(e)-A,Math.max(0,cC(e)-cC(A))+1}var $6A=P(()=>{Xb()});var f$=P(()=>{V6A();B$();j6A();X6A();$6A()});var A9A=()=>{};function _rt(A){var e=0,t=A.children,r=t&&t.length;if(!r)e=1;else while(--r>=0)e+=t[r].value;A.value=e}function m$(){return this.eachAfter(_rt)}function D$(A,e){let t=-1;for(let r of this)A.call(e,r,++t,this);return this}function y$(A,e){var t=this,r=[t],i,u,a=-1;while(t=r.pop())if(A.call(e,t,++a,this),i=t.children)for(u=i.length-1;u>=0;--u)r.push(i[u]);return this}function w$(A,e){var t=this,r=[t],i=[],u,a,n,o=-1;while(t=r.pop())if(i.push(t),u=t.children)for(a=0,n=u.length;a<n;++a)r.push(u[a]);while(t=i.pop())A.call(e,t,++o,this);return this}function b$(A,e){let t=-1;for(let r of this)if(A.call(e,r,++t,this))return r}function v$(A){return this.eachAfter(function(e){var t=+A(e.data)||0,r=e.children,i=r&&r.length;while(--i>=0)t+=r[i].value;e.value=t})}function k$(A){return this.eachBefore(function(e){if(e.children)e.children.sort(A)})}function F$(A){var e=this,t=Wrt(e,A),r=[e];while(e!==t)e=e.parent,r.push(e);var i=r.length;while(A!==t)r.splice(i,0,A),A=A.parent;return r}function Wrt(A,e){if(A===e)return A;var t=A.ancestors(),r=e.ancestors(),i=null;A=t.pop(),e=r.pop();while(A===e)i=A,A=t.pop(),e=r.pop();return i}function x$(){var A=this,e=[A];while(A=A.parent)e.push(A);return e}function S$(){return Array.from(this)}function L$(){var A=[];return this.eachBefore(function(e){if(!e.children)A.push(e)}),A}function R$(){var A=this,e=[];return A.each(function(t){if(t!==A)e.push({source:t.parent,target:t})}),e}function*N$(){var A=this,e,t=[A],r,i,u;do{e=t.reverse(),t=[];while(A=e.pop())if(yield A,r=A.children)for(i=0,u=r.length;i<u;++i)t.push(r[i])}while(t.length)}function YD(A,e){if(A instanceof Map){if(A=[void 0,A],e===void 0)e=Zrt}else if(e===void 0)e=zrt;var t=new Av(A),r,i=[t],u,a,n,o;while(r=i.pop())if((a=e(r.data))&&(o=(a=Array.from(a)).length)){r.children=a;for(n=o-1;n>=0;--n)i.push(u=a[n]=new Av(a[n])),u.parent=r,u.depth=r.depth+1}return t.eachBefore(jrt)}function qrt(){return YD(this).eachBefore(Vrt)}function zrt(A){return A.children}function Zrt(A){return Array.isArray(A)?A[1]:null}function Vrt(A){if(A.data.value!==void 0)A.value=A.data.value;A.data=A.data.data}function jrt(A){var e=0;do A.height=e;while((A=A.parent)&&A.height<++e)}function Av(A){this.data=A,this.depth=this.height=0,this.parent=null}var e9A=P(()=>{Av.prototype=YD.prototype={constructor:Av,count:m$,each:D$,eachAfter:w$,eachBefore:y$,find:b$,sum:v$,sort:k$,path:F$,ancestors:x$,descendants:S$,leaves:L$,links:R$,copy:qrt,[Symbol.iterator]:N$}});function t9A(A){if(typeof A!=="function")throw Error();return A}function HD(){return 0}function gf(A){return function(){return A}}function G$(A){A.x0=Math.round(A.x0),A.y0=Math.round(A.y0),A.x1=Math.round(A.x1),A.y1=Math.round(A.y1)}function U$(A,e,t,r,i){var u=A.children,a,n=-1,o=u.length,s=A.value&&(r-e)/A.value;while(++n<o)a=u[n],a.y0=t,a.y1=i,a.x0=e,a.x1=e+=a.value*s}function M$(A,e,t,r,i){var u=A.children,a,n=-1,o=u.length,s=A.value&&(i-t)/A.value;while(++n<o)a=u[n],a.x0=e,a.x1=r,a.y0=t,a.y1=t+=a.value*s}function $rt(A,e,t,r,i,u){var a=[],n=e.children,o,s,l=0,g=0,C=n.length,B,E,d=e.value,I,h,Q,p,m,f,D;while(l<C){B=i-t,E=u-r;do I=n[g++].value;while(!I&&g<C);h=Q=I,f=Math.max(E/B,B/E)/(d*A),D=I*I*f,m=Math.max(Q/D,D/h);for(;g<C;++g){if(I+=s=n[g].value,s<h)h=s;if(s>Q)Q=s;if(D=I*I*f,p=Math.max(Q/D,D/h),p>m){I-=s;break}m=p}if(a.push(o={value:I,dice:B<E,children:n.slice(l,g)}),o.dice)U$(o,t,r,i,d?r+=E*I/d:u);else M$(o,t,r,d?t+=B*I/d:i,u);d-=I,l=g}return a}var Xrt,r9A;var i9A=P(()=>{Xrt=(1+Math.sqrt(5))/2;r9A=function A(e){function t(r,i,u,a,n){$rt(e,r,i,u,a,n)}return t.ratio=function(r){return A((r=+r)>1?r:1)},t}(Xrt)});function HN(){var A=r9A,e=!1,t=1,r=1,i=[0],u=HD,a=HD,n=HD,o=HD,s=HD;function l(C){if(C.x0=C.y0=0,C.x1=t,C.y1=r,C.eachBefore(g),i=[0],e)C.eachBefore(G$);return C}function g(C){var B=i[C.depth],E=C.x0+B,d=C.y0+B,I=C.x1-B,h=C.y1-B;if(I<E)E=I=(E+I)/2;if(h<d)d=h=(d+h)/2;if(C.x0=E,C.y0=d,C.x1=I,C.y1=h,C.children){if(B=i[C.depth+1]=u(C)/2,E+=s(C)-B,d+=a(C)-B,I-=n(C)-B,h-=o(C)-B,I<E)E=I=(E+I)/2;if(h<d)d=h=(d+h)/2;A(C,E,d,I,h)}}return l.round=function(C){return arguments.length?(e=!!C,l):e},l.size=function(C){return arguments.length?(t=+C[0],r=+C[1],l):[t,r]},l.tile=function(C){return arguments.length?(A=t9A(C),l):A},l.padding=function(C){return arguments.length?l.paddingInner(C).paddingOuter(C):l.paddingInner()},l.paddingInner=function(C){return arguments.length?(u=typeof C==="function"?C:gf(+C),l):u},l.paddingOuter=function(C){return arguments.length?l.paddingTop(C).paddingRight(C).paddingBottom(C).paddingLeft(C):l.paddingTop()},l.paddingTop=function(C){return arguments.length?(a=typeof C==="function"?C:gf(+C),l):a},l.paddingRight=function(C){return arguments.length?(n=typeof C==="function"?C:gf(+C),l):n},l.paddingBottom=function(C){return arguments.length?(o=typeof C==="function"?C:gf(+C),l):o},l.paddingLeft=function(C){return arguments.length?(s=typeof C==="function"?C:gf(+C),l):s},l}var u9A=P(()=>{i9A()});var a9A=P(()=>{e9A();u9A()});var n9A=()=>{};var o9A=()=>{};function vQ(A,e){switch(arguments.length){case 0:break;case 1:this.range(A);break;default:this.range(e).domain(A);break}return this}function eg(){var A=new Sb,e=[],t=[],r=T$;function i(u){let a=A.get(u);if(a===void 0){if(r!==T$)return r;A.set(u,a=e.push(u)-1)}return t[a%t.length]}return i.domain=function(u){if(!arguments.length)return e.slice();e=[],A=new Sb;for(let a of u){if(A.has(a))continue;A.set(a,e.push(a)-1)}return i},i.range=function(u){return arguments.length?(t=Array.from(u),i):t.slice()},i.unknown=function(u){return arguments.length?(r=u,i):r},i.copy=function(){return eg(e,t).unknown(r)},vQ.apply(i,arguments),i}var T$;var Y$=P(()=>{pQ();T$=Symbol("implicit")});function KD(){var A=eg().unknown(void 0),{domain:e,range:t}=A,r=0,i=1,u,a,n=!1,o=0,s=0,l=0.5;delete A.unknown;function g(){var C=e().length,B=i<r,E=B?i:r,d=B?r:i;if(u=(d-E)/Math.max(1,C-o+s*2),n)u=Math.floor(u);if(E+=(d-E-u*(C-o))*l,a=u*(1-o),n)E=Math.round(E),a=Math.round(a);var I=iN(C).map(function(h){return E+u*h});return t(B?I.reverse():I)}return A.domain=function(C){return arguments.length?(e(C),g()):e()},A.range=function(C){return arguments.length?([r,i]=C,r=+r,i=+i,g()):[r,i]},A.rangeRound=function(C){return[r,i]=C,r=+r,i=+i,n=!0,g()},A.bandwidth=function(){return a},A.step=function(){return u},A.round=function(C){return arguments.length?(n=!!C,g()):n},A.padding=function(C){return arguments.length?(o=Math.min(1,s=+C),g()):o},A.paddingInner=function(C){return arguments.length?(o=Math.min(1,C),g()):o},A.paddingOuter=function(C){return arguments.length?(s=+C,g()):s},A.align=function(C){return arguments.length?(l=Math.max(0,Math.min(1,C)),g()):l},A.copy=function(){return KD(e(),[r,i]).round(n).paddingInner(o).paddingOuter(s).align(l)},vQ.apply(g(),arguments)}var s9A=P(()=>{pQ();Y$()});function H$(A){return function(){return A}}function K$(A){return+A}function JD(A){return A}function J$(A,e){return(e-=A=+A)?function(t){return(t-A)/e}:H$(isNaN(e)?NaN:0.5)}function Ait(A,e){var t;if(A>e)t=A,A=e,e=t;return function(r){return Math.max(A,Math.min(e,r))}}function eit(A,e,t){var r=A[0],i=A[1],u=e[0],a=e[1];if(i<r)r=J$(i,r),u=t(a,u);else r=J$(r,i),u=t(u,a);return function(n){return u(r(n))}}function tit(A,e,t){var r=Math.min(A.length,e.length)-1,i=Array(r),u=Array(r),a=-1;if(A[r]<A[0])A=A.slice().reverse(),e=e.slice().reverse();while(++a<r)i[a]=J$(A[a],A[a+1]),u[a]=t(e[a],e[a+1]);return function(n){var o=dj(A,n,1,r)-1;return u[o](i[o](n))}}function KN(A,e){return e.domain(A.domain()).range(A.range()).interpolate(A.interpolate()).clamp(A.clamp()).unknown(A.unknown())}function rit(){var A=l9A,e=l9A,t=wQ,r,i,u,a=JD,n,o,s;function l(){var C=Math.min(A.length,e.length);if(a!==JD)a=Ait(A[0],A[C-1]);return n=C>2?tit:eit,o=s=null,g}function g(C){return C==null||isNaN(C=+C)?u:(o||(o=n(A.map(r),e,t)))(r(a(C)))}return g.invert=function(C){return a(i((s||(s=n(e,A.map(r),bo)))(C)))},g.domain=function(C){return arguments.length?(A=Array.from(C,K$),l()):A.slice()},g.range=function(C){return arguments.length?(e=Array.from(C),l()):e.slice()},g.rangeRound=function(C){return e=Array.from(C),t=IN,l()},g.clamp=function(C){return arguments.length?(a=C?!0:JD,l()):a!==JD},g.interpolate=function(C){return arguments.length?(t=C,l()):t},g.unknown=function(C){return arguments.length?(u=C,g):u},function(C,B){return r=C,i=B,l()}}function ev(){return rit()(JD,JD)}var l9A;var O$=P(()=>{pQ();GD();l9A=[0,1]});function P$(A,e,t,r){var i=wD(A,e,t),u;switch(r=bQ(r==null?",f":r),r.type){case"s":{var a=Math.max(Math.abs(A),Math.abs(e));if(r.precision==null&&!isNaN(u=TN(i,a)))r.precision=u;return UN(r,a)}case"":case"e":case"g":case"p":case"r":{if(r.precision==null&&!isNaN(u=YN(i,Math.max(Math.abs(A),Math.abs(e)))))r.precision=u-(r.type==="e");break}case"f":case"%":{if(r.precision==null&&!isNaN(u=MN(i)))r.precision=u-(r.type==="%")*2;break}}return nE(r)}var g9A=P(()=>{pQ();f$()});function iit(A){var e=A.domain;return A.ticks=function(t){var r=e();return eN(r[0],r[r.length-1],t==null?10:t)},A.tickFormat=function(t,r){var i=e();return P$(i[0],i[i.length-1],t==null?10:t,r)},A.nice=function(t){if(t==null)t=10;var r=e(),i=0,u=r.length-1,a=r[i],n=r[u],o,s,l=10;if(n<a)s=a,a=n,n=s,s=i,i=u,u=s;while(l-- >0){if(s=Lb(a,n,t),s===o)return r[i]=a,r[u]=n,e(r);else if(s>0)a=Math.floor(a/s)*s,n=Math.ceil(n/s)*s;else if(s<0)a=Math.ceil(a*s)/s,n=Math.floor(n*s)/s;else break;o=s}return A},A}function CC(){var A=ev();return A.copy=function(){return KN(A,CC())},vQ.apply(A,arguments),iit(A)}var c9A=P(()=>{pQ();O$();g9A()});function _$(A,e){A=A.slice();var t=0,r=A.length-1,i=A[t],u=A[r],a;if(u<i)a=t,t=r,r=a,a=i,i=u,u=a;return A[t]=e.floor(i),A[r]=e.ceil(u),A}function Uu(A,e,t,r){function i(u){return A(u=arguments.length===0?new Date:new Date(+u)),u}if(i.floor=(u)=>(A(u=new Date(+u)),u),i.ceil=(u)=>(A(u=new Date(u-1)),e(u,1),A(u),u),i.round=(u)=>{let a=i(u),n=i.ceil(u);return u-a<n-u?a:n},i.offset=(u,a)=>(e(u=new Date(+u),a==null?1:Math.floor(a)),u),i.range=(u,a,n)=>{let o=[];if(u=i.ceil(u),n=n==null?1:Math.floor(n),!(u<a)||!(n>0))return o;let s;do o.push(s=new Date(+u)),e(u,n),A(u);while(s<u&&u<a);return o},i.filter=(u)=>Uu((a)=>{if(a>=a)while(A(a),!u(a))a.setTime(a-1)},(a,n)=>{if(a>=a)if(n<0)while(++n<=0)while(e(a,-1),!u(a));else while(--n>=0)while(e(a,1),!u(a));}),t)i.count=(u,a)=>(W$.setTime(+u),q$.setTime(+a),A(W$),A(q$),Math.floor(t(W$,q$))),i.every=(u)=>(u=Math.floor(u),!isFinite(u)||!(u>0)?null:!(u>1)?i:i.filter(r?(a)=>r(a)%u===0:(a)=>i.count(0,a)%u===0));return i}var W$,q$;var EI=P(()=>{W$=new Date,q$=new Date});var oE,C9A;var z$=P(()=>{EI();oE=Uu(()=>{},(A,e)=>{A.setTime(+A+e)},(A,e)=>e-A);oE.every=(A)=>{if(A=Math.floor(A),!isFinite(A)||!(A>0))return null;if(!(A>1))return oE;return Uu((e)=>{e.setTime(Math.floor(e/A)*A)},(e,t)=>{e.setTime(+e+t*A)},(e,t)=>(t-e)/A)};C9A=oE.range});var Vg=1000,N0=60000,sE=3600000,kQ=86400000,tv=604800000,Z$=2592000000,JN=31536000000;var tg,B9A;var V$=P(()=>{EI();tg=Uu((A)=>{A.setTime(A-A.getMilliseconds())},(A,e)=>{A.setTime(+A+e*Vg)},(A,e)=>(e-A)/Vg,(A)=>A.getUTCSeconds()),B9A=tg.range});var dI,uit,ON,ait;var j$=P(()=>{EI();dI=Uu((A)=>{A.setTime(A-A.getMilliseconds()-A.getSeconds()*Vg)},(A,e)=>{A.setTime(+A+e*N0)},(A,e)=>(e-A)/N0,(A)=>A.getMinutes()),uit=dI.range,ON=Uu((A)=>{A.setUTCSeconds(0,0)},(A,e)=>{A.setTime(+A+e*N0)},(A,e)=>(e-A)/N0,(A)=>A.getUTCMinutes()),ait=ON.range});var II,nit,PN,oit;var X$=P(()=>{EI();II=Uu((A)=>{A.setTime(A-A.getMilliseconds()-A.getSeconds()*Vg-A.getMinutes()*N0)},(A,e)=>{A.setTime(+A+e*sE)},(A,e)=>(e-A)/sE,(A)=>A.getHours()),nit=II.range,PN=Uu((A)=>{A.setUTCMinutes(0,0,0)},(A,e)=>{A.setTime(+A+e*sE)},(A,e)=>(e-A)/sE,(A)=>A.getUTCHours()),oit=PN.range});var jg,sit,rv,lit,_N,git;var $$=P(()=>{EI();jg=Uu((A)=>A.setHours(0,0,0,0),(A,e)=>A.setDate(A.getDate()+e),(A,e)=>(e-A-(e.getTimezoneOffset()-A.getTimezoneOffset())*N0)/kQ,(A)=>A.getDate()-1),sit=jg.range,rv=Uu((A)=>{A.setUTCHours(0,0,0,0)},(A,e)=>{A.setUTCDate(A.getUTCDate()+e)},(A,e)=>(e-A)/kQ,(A)=>A.getUTCDate()-1),lit=rv.range,_N=Uu((A)=>{A.setUTCHours(0,0,0,0)},(A,e)=>{A.setUTCDate(A.getUTCDate()+e)},(A,e)=>(e-A)/kQ,(A)=>Math.floor(A/kQ)),git=_N.range});function cf(A){return Uu((e)=>{e.setDate(e.getDate()-(e.getDay()+7-A)%7),e.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*N0)/tv)}function Cf(A){return Uu((e)=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-A)%7),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/tv)}var BC,FQ,WN,qN,lE,zN,ZN,E9A,cit,Cit,Bit,Eit,dit,Iit,Bf,OD,d9A,I9A,xQ,h9A,Q9A,p9A,hit,Qit,pit,fit,mit,Dit;var AAA=P(()=>{EI();BC=cf(0),FQ=cf(1),WN=cf(2),qN=cf(3),lE=cf(4),zN=cf(5),ZN=cf(6),E9A=BC.range,cit=FQ.range,Cit=WN.range,Bit=qN.range,Eit=lE.range,dit=zN.range,Iit=ZN.range;Bf=Cf(0),OD=Cf(1),d9A=Cf(2),I9A=Cf(3),xQ=Cf(4),h9A=Cf(5),Q9A=Cf(6),p9A=Bf.range,hit=OD.range,Qit=d9A.range,pit=I9A.range,fit=xQ.range,mit=h9A.range,Dit=Q9A.range});var hI,yit,VN,wit;var eAA=P(()=>{EI();hI=Uu((A)=>{A.setDate(1),A.setHours(0,0,0,0)},(A,e)=>{A.setMonth(A.getMonth()+e)},(A,e)=>e.getMonth()-A.getMonth()+(e.getFullYear()-A.getFullYear())*12,(A)=>A.getMonth()),yit=hI.range,VN=Uu((A)=>{A.setUTCDate(1),A.setUTCHours(0,0,0,0)},(A,e)=>{A.setUTCMonth(A.getUTCMonth()+e)},(A,e)=>e.getUTCMonth()-A.getUTCMonth()+(e.getUTCFullYear()-A.getUTCFullYear())*12,(A)=>A.getUTCMonth()),wit=VN.range});var rg,bit,EC,vit;var tAA=P(()=>{EI();rg=Uu((A)=>{A.setMonth(0,1),A.setHours(0,0,0,0)},(A,e)=>{A.setFullYear(A.getFullYear()+e)},(A,e)=>e.getFullYear()-A.getFullYear(),(A)=>A.getFullYear());rg.every=(A)=>!isFinite(A=Math.floor(A))||!(A>0)?null:Uu((e)=>{e.setFullYear(Math.floor(e.getFullYear()/A)*A),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t*A)});bit=rg.range,EC=Uu((A)=>{A.setUTCMonth(0,1),A.setUTCHours(0,0,0,0)},(A,e)=>{A.setUTCFullYear(A.getUTCFullYear()+e)},(A,e)=>e.getUTCFullYear()-A.getUTCFullYear(),(A)=>A.getUTCFullYear());EC.every=(A)=>!isFinite(A=Math.floor(A))||!(A>0)?null:Uu((e)=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/A)*A),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t*A)});vit=EC.range});function f9A(A,e,t,r,i,u){let a=[[tg,1,Vg],[tg,5,5*Vg],[tg,15,15*Vg],[tg,30,30*Vg],[u,1,N0],[u,5,5*N0],[u,15,15*N0],[u,30,30*N0],[i,1,sE],[i,3,3*sE],[i,6,6*sE],[i,12,12*sE],[r,1,kQ],[r,2,2*kQ],[t,1,tv],[e,1,Z$],[e,3,3*Z$],[A,1,JN]];function n(s,l,g){let C=l<s;if(C)[s,l]=[l,s];let B=g&&typeof g.range==="function"?g:o(s,l,g),E=B?B.range(s,+l+1):[];return C?E.reverse():E}function o(s,l,g){let C=Math.abs(l-s)/g,B=rf(([,,I])=>I).right(a,C);if(B===a.length)return A.every(wD(s/JN,l/JN,g));if(B===0)return oE.every(Math.max(wD(s,l,g),1));let[E,d]=a[C/a[B-1][2]<a[B][2]/C?B-1:B];return E.every(d)}return[n,o]}var kit,Fit,rAA,iAA;var m9A=P(()=>{pQ();z$();V$();j$();X$();$$();AAA();eAA();tAA();[kit,Fit]=f9A(EC,VN,Bf,_N,PN,ON),[rAA,iAA]=f9A(rg,hI,BC,jg,II,dI)});var jN=P(()=>{z$();V$();j$();X$();$$();AAA();eAA();tAA();m9A()});function uAA(A){if(0<=A.y&&A.y<100){var e=new Date(-1,A.m,A.d,A.H,A.M,A.S,A.L);return e.setFullYear(A.y),e}return new Date(A.y,A.m,A.d,A.H,A.M,A.S,A.L)}function aAA(A){if(0<=A.y&&A.y<100){var e=new Date(Date.UTC(-1,A.m,A.d,A.H,A.M,A.S,A.L));return e.setUTCFullYear(A.y),e}return new Date(Date.UTC(A.y,A.m,A.d,A.H,A.M,A.S,A.L))}function iv(A,e,t){return{y:A,m:e,d:t,H:0,M:0,S:0,L:0}}function nAA(A){var{dateTime:e,date:t,time:r,periods:i,days:u,shortDays:a,months:n,shortMonths:o}=A,s=uv(i),l=av(i),g=uv(u),C=av(u),B=uv(a),E=av(a),d=uv(n),I=av(n),h=uv(o),Q=av(o),p={a:M,A:U,b:Y,B:H,c:null,d:k9A,e:k9A,f:Xit,g:out,G:lut,H:Zit,I:Vit,j:jit,L:R9A,m:$it,M:Aut,p:J,q:K,Q:S9A,s:L9A,S:eut,u:tut,U:rut,V:iut,w:uut,W:aut,x:null,X:null,y:nut,Y:sut,Z:gut,"%":x9A},m={a:O,A:_,b:z,B:j,c:null,d:F9A,e:F9A,f:Eut,g:wut,G:vut,H:cut,I:Cut,j:But,L:G9A,m:dut,M:Iut,p:q,q:CA,Q:S9A,s:L9A,S:hut,u:Qut,U:put,V:fut,w:mut,W:Dut,x:null,X:null,y:yut,Y:but,Z:kut,"%":x9A},f={a:v,A:S,b:x,B:k,c:T,d:b9A,e:b9A,f:_it,g:w9A,G:y9A,H:v9A,I:v9A,j:Kit,L:Pit,m:Hit,M:Jit,p:F,q:Yit,Q:qit,s:zit,S:Oit,u:Nit,U:Git,V:Uit,w:Rit,W:Mit,x:R,X:L,y:w9A,Y:y9A,Z:Tit,"%":Wit};p.x=D(t,p),p.X=D(r,p),p.c=D(e,p),m.x=D(t,m),m.X=D(r,m),m.c=D(e,m);function D(tA,lA){return function(gA){var aA=[],RA=-1,wA=0,JA=tA.length,TA,qA,BA;if(!(gA instanceof Date))gA=new Date(+gA);while(++RA<JA)if(tA.charCodeAt(RA)===37){if(aA.push(tA.slice(wA,RA)),(qA=D9A[TA=tA.charAt(++RA)])!=null)TA=tA.charAt(++RA);else qA=TA==="e"?" ":"0";if(BA=lA[TA])TA=BA(gA,qA);aA.push(TA),wA=RA+1}return aA.push(tA.slice(wA,RA)),aA.join("")}}function w(tA,lA){return function(gA){var aA=iv(1900,void 0,1),RA=b(aA,tA,gA+="",0),wA,JA;if(RA!=gA.length)return null;if("Q"in aA)return new Date(aA.Q);if("s"in aA)return new Date(aA.s*1000+("L"in aA?aA.L:0));if(lA&&!("Z"in aA))aA.Z=0;if("p"in aA)aA.H=aA.H%12+aA.p*12;if(aA.m===void 0)aA.m="q"in aA?aA.q:0;if("V"in aA){if(aA.V<1||aA.V>53)return null;if(!("w"in aA))aA.w=1;if("Z"in aA)wA=aAA(iv(aA.y,0,1)),JA=wA.getUTCDay(),wA=JA>4||JA===0?OD.ceil(wA):OD(wA),wA=rv.offset(wA,(aA.V-1)*7),aA.y=wA.getUTCFullYear(),aA.m=wA.getUTCMonth(),aA.d=wA.getUTCDate()+(aA.w+6)%7;else wA=uAA(iv(aA.y,0,1)),JA=wA.getDay(),wA=JA>4||JA===0?FQ.ceil(wA):FQ(wA),wA=jg.offset(wA,(aA.V-1)*7),aA.y=wA.getFullYear(),aA.m=wA.getMonth(),aA.d=wA.getDate()+(aA.w+6)%7}else if("W"in aA||"U"in aA){if(!("w"in aA))aA.w="u"in aA?aA.u%7:("W"in aA)?1:0;JA="Z"in aA?aAA(iv(aA.y,0,1)).getUTCDay():uAA(iv(aA.y,0,1)).getDay(),aA.m=0,aA.d="W"in aA?(aA.w+6)%7+aA.W*7-(JA+5)%7:aA.w+aA.U*7-(JA+6)%7}if("Z"in aA)return aA.H+=aA.Z/100|0,aA.M+=aA.Z%100,aAA(aA);return uAA(aA)}}function b(tA,lA,gA,aA){var RA=0,wA=lA.length,JA=gA.length,TA,qA;while(RA<wA){if(aA>=JA)return-1;if(TA=lA.charCodeAt(RA++),TA===37){if(TA=lA.charAt(RA++),qA=f[TA in D9A?lA.charAt(RA++):TA],!qA||(aA=qA(tA,gA,aA))<0)return-1}else if(TA!=gA.charCodeAt(aA++))return-1}return aA}function F(tA,lA,gA){var aA=s.exec(lA.slice(gA));return aA?(tA.p=l.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function v(tA,lA,gA){var aA=B.exec(lA.slice(gA));return aA?(tA.w=E.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function S(tA,lA,gA){var aA=g.exec(lA.slice(gA));return aA?(tA.w=C.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function x(tA,lA,gA){var aA=h.exec(lA.slice(gA));return aA?(tA.m=Q.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function k(tA,lA,gA){var aA=d.exec(lA.slice(gA));return aA?(tA.m=I.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function T(tA,lA,gA){return b(tA,e,lA,gA)}function R(tA,lA,gA){return b(tA,t,lA,gA)}function L(tA,lA,gA){return b(tA,r,lA,gA)}function M(tA){return a[tA.getDay()]}function U(tA){return u[tA.getDay()]}function Y(tA){return o[tA.getMonth()]}function H(tA){return n[tA.getMonth()]}function J(tA){return i[+(tA.getHours()>=12)]}function K(tA){return 1+~~(tA.getMonth()/3)}function O(tA){return a[tA.getUTCDay()]}function _(tA){return u[tA.getUTCDay()]}function z(tA){return o[tA.getUTCMonth()]}function j(tA){return n[tA.getUTCMonth()]}function q(tA){return i[+(tA.getUTCHours()>=12)]}function CA(tA){return 1+~~(tA.getUTCMonth()/3)}return{format:function(tA){var lA=D(tA+="",p);return lA.toString=function(){return tA},lA},parse:function(tA){var lA=w(tA+="",!1);return lA.toString=function(){return tA},lA},utcFormat:function(tA){var lA=D(tA+="",m);return lA.toString=function(){return tA},lA},utcParse:function(tA){var lA=w(tA+="",!0);return lA.toString=function(){return tA},lA}}}function qi(A,e,t){var r=A<0?"-":"",i=(r?-A:A)+"",u=i.length;return r+(u<t?Array(t-u+1).join(e)+i:i)}function Lit(A){return A.replace(Sit,"\\$&")}function uv(A){return new RegExp("^(?:"+A.map(Lit).join("|")+")","i")}function av(A){return new Map(A.map((e,t)=>[e.toLowerCase(),t]))}function Rit(A,e,t){var r=vo.exec(e.slice(t,t+1));return r?(A.w=+r[0],t+r[0].length):-1}function Nit(A,e,t){var r=vo.exec(e.slice(t,t+1));return r?(A.u=+r[0],t+r[0].length):-1}function Git(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.U=+r[0],t+r[0].length):-1}function Uit(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.V=+r[0],t+r[0].length):-1}function Mit(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.W=+r[0],t+r[0].length):-1}function y9A(A,e,t){var r=vo.exec(e.slice(t,t+4));return r?(A.y=+r[0],t+r[0].length):-1}function w9A(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.y=+r[0]+(+r[0]>68?1900:2000),t+r[0].length):-1}function Tit(A,e,t){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(t,t+6));return r?(A.Z=r[1]?0:-(r[2]+(r[3]||"00")),t+r[0].length):-1}function Yit(A,e,t){var r=vo.exec(e.slice(t,t+1));return r?(A.q=r[0]*3-3,t+r[0].length):-1}function Hit(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.m=r[0]-1,t+r[0].length):-1}function b9A(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.d=+r[0],t+r[0].length):-1}function Kit(A,e,t){var r=vo.exec(e.slice(t,t+3));return r?(A.m=0,A.d=+r[0],t+r[0].length):-1}function v9A(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.H=+r[0],t+r[0].length):-1}function Jit(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.M=+r[0],t+r[0].length):-1}function Oit(A,e,t){var r=vo.exec(e.slice(t,t+2));return r?(A.S=+r[0],t+r[0].length):-1}function Pit(A,e,t){var r=vo.exec(e.slice(t,t+3));return r?(A.L=+r[0],t+r[0].length):-1}function _it(A,e,t){var r=vo.exec(e.slice(t,t+6));return r?(A.L=Math.floor(r[0]/1000),t+r[0].length):-1}function Wit(A,e,t){var r=xit.exec(e.slice(t,t+1));return r?t+r[0].length:-1}function qit(A,e,t){var r=vo.exec(e.slice(t));return r?(A.Q=+r[0],t+r[0].length):-1}function zit(A,e,t){var r=vo.exec(e.slice(t));return r?(A.s=+r[0],t+r[0].length):-1}function k9A(A,e){return qi(A.getDate(),e,2)}function Zit(A,e){return qi(A.getHours(),e,2)}function Vit(A,e){return qi(A.getHours()%12||12,e,2)}function jit(A,e){return qi(1+jg.count(rg(A),A),e,3)}function R9A(A,e){return qi(A.getMilliseconds(),e,3)}function Xit(A,e){return R9A(A,e)+"000"}function $it(A,e){return qi(A.getMonth()+1,e,2)}function Aut(A,e){return qi(A.getMinutes(),e,2)}function eut(A,e){return qi(A.getSeconds(),e,2)}function tut(A){var e=A.getDay();return e===0?7:e}function rut(A,e){return qi(BC.count(rg(A)-1,A),e,2)}function N9A(A){var e=A.getDay();return e>=4||e===0?lE(A):lE.ceil(A)}function iut(A,e){return A=N9A(A),qi(lE.count(rg(A),A)+(rg(A).getDay()===4),e,2)}function uut(A){return A.getDay()}function aut(A,e){return qi(FQ.count(rg(A)-1,A),e,2)}function nut(A,e){return qi(A.getFullYear()%100,e,2)}function out(A,e){return A=N9A(A),qi(A.getFullYear()%100,e,2)}function sut(A,e){return qi(A.getFullYear()%1e4,e,4)}function lut(A,e){var t=A.getDay();return A=t>=4||t===0?lE(A):lE.ceil(A),qi(A.getFullYear()%1e4,e,4)}function gut(A){var e=A.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+qi(e/60|0,"0",2)+qi(e%60,"0",2)}function F9A(A,e){return qi(A.getUTCDate(),e,2)}function cut(A,e){return qi(A.getUTCHours(),e,2)}function Cut(A,e){return qi(A.getUTCHours()%12||12,e,2)}function But(A,e){return qi(1+rv.count(EC(A),A),e,3)}function G9A(A,e){return qi(A.getUTCMilliseconds(),e,3)}function Eut(A,e){return G9A(A,e)+"000"}function dut(A,e){return qi(A.getUTCMonth()+1,e,2)}function Iut(A,e){return qi(A.getUTCMinutes(),e,2)}function hut(A,e){return qi(A.getUTCSeconds(),e,2)}function Qut(A){var e=A.getUTCDay();return e===0?7:e}function put(A,e){return qi(Bf.count(EC(A)-1,A),e,2)}function U9A(A){var e=A.getUTCDay();return e>=4||e===0?xQ(A):xQ.ceil(A)}function fut(A,e){return A=U9A(A),qi(xQ.count(EC(A),A)+(EC(A).getUTCDay()===4),e,2)}function mut(A){return A.getUTCDay()}function Dut(A,e){return qi(OD.count(EC(A)-1,A),e,2)}function yut(A,e){return qi(A.getUTCFullYear()%100,e,2)}function wut(A,e){return A=U9A(A),qi(A.getUTCFullYear()%100,e,2)}function but(A,e){return qi(A.getUTCFullYear()%1e4,e,4)}function vut(A,e){var t=A.getUTCDay();return A=t>=4||t===0?xQ(A):xQ.ceil(A),qi(A.getUTCFullYear()%1e4,e,4)}function kut(){return"+0000"}function x9A(){return"%"}function S9A(A){return+A}function L9A(A){return Math.floor(+A/1000)}var D9A,vo,xit,Sit;var M9A=P(()=>{jN();D9A={"-":"",_:" ","0":"0"},vo=/^\s*\d+/,xit=/^%/,Sit=/[\\^$*+?|[\]().{}]/g});function oAA(A){return PD=nAA(A),Ef=PD.format,T9A=PD.parse,Y9A=PD.utcFormat,H9A=PD.utcParse,PD}var PD,Ef,T9A,Y9A,H9A;var K9A=P(()=>{M9A();oAA({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]})});var sAA=P(()=>{K9A()});function Fut(A){return new Date(A)}function xut(A){return A instanceof Date?+A:+new Date(+A)}function J9A(A,e,t,r,i,u,a,n,o,s){var l=ev(),{invert:g,domain:C}=l,B=s(".%L"),E=s(":%S"),d=s("%I:%M"),I=s("%I %p"),h=s("%a %d"),Q=s("%b %d"),p=s("%B"),m=s("%Y");function f(D){return(o(D)<D?B:n(D)<D?E:a(D)<D?d:u(D)<D?I:r(D)<D?i(D)<D?h:Q:t(D)<D?p:m)(D)}return l.invert=function(D){return new Date(g(D))},l.domain=function(D){return arguments.length?C(Array.from(D,xut)):C().map(Fut)},l.ticks=function(D){var w=C();return A(w[0],w[w.length-1],D==null?10:D)},l.tickFormat=function(D,w){return w==null?f:s(w)},l.nice=function(D){var w=C();if(!D||typeof D.range!=="function")D=e(w[0],w[w.length-1],D==null?10:D);return D?C(_$(w,D)):l},l.copy=function(){return KN(l,J9A(A,e,t,r,i,u,a,n,o,s))},l}function XN(){return vQ.apply(J9A(rAA,iAA,rg,hI,BC,jg,II,dI,tg,Ef).domain([new Date(2000,0,1),new Date(2000,0,2)]),arguments)}var O9A=P(()=>{jN();sAA();O$()});var P9A=P(()=>{s9A();c9A();Y$();O9A()});function lAA(A){var e=A.length/6|0,t=Array(e),r=0;while(r<e)t[r]="#"+A.slice(r*6,++r*6);return t}var gAA;var _9A=P(()=>{gAA=lAA("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var W9A=P(()=>{_9A()});function $u(A){return function(){return A}}function z9A(A){return A>1?0:A<-1?_D:Math.acos(A)}function CAA(A){return A>=1?nv:A<=-1?-nv:Math.asin(A)}var cAA,A0,SQ,q9A,$N,dC,df,ko=0.000000000001,_D,nv,WD;var AG=P(()=>{cAA=Math.abs,A0=Math.atan2,SQ=Math.cos,q9A=Math.max,$N=Math.min,dC=Math.sin,df=Math.sqrt,_D=Math.PI,nv=_D/2,WD=2*_D});function eG(A){let e=3;return A.digits=function(t){if(!arguments.length)return e;if(t==null)e=null;else{let r=Math.floor(t);if(!(r>=0))throw RangeError(`invalid digits: ${t}`);e=r}return A},()=>new TD(e)}var BAA=P(()=>{l$()});function Sut(A){return A.innerRadius}function Lut(A){return A.outerRadius}function Rut(A){return A.startAngle}function Nut(A){return A.endAngle}function Gut(A){return A&&A.padAngle}function Uut(A,e,t,r,i,u,a,n){var o=t-A,s=r-e,l=a-i,g=n-u,C=g*o-l*s;if(C*C<ko)return;return C=(l*(e-u)-g*(A-i))/C,[A+C*o,e+C*s]}function tG(A,e,t,r,i,u,a){var n=A-t,o=e-r,s=(a?u:-u)/df(n*n+o*o),l=s*o,g=-s*n,C=A+l,B=e+g,E=t+l,d=r+g,I=(C+E)/2,h=(B+d)/2,Q=E-C,p=d-B,m=Q*Q+p*p,f=i-u,D=C*d-E*B,w=(p<0?-1:1)*df(q9A(0,f*f*m-D*D)),b=(D*p-Q*w)/m,F=(-D*Q-p*w)/m,v=(D*p+Q*w)/m,S=(-D*Q+p*w)/m,x=b-I,k=F-h,T=v-I,R=S-h;if(x*x+k*k>T*T+R*R)b=v,F=S;return{cx:b,cy:F,x01:-l,y01:-g,x11:b*(i/f-1),y11:F*(i/f-1)}}function IC(){var A=Sut,e=Lut,t=$u(0),r=null,i=Rut,u=Nut,a=Gut,n=null,o=eG(s);function s(){var l,g,C=+A.apply(this,arguments),B=+e.apply(this,arguments),E=i.apply(this,arguments)-nv,d=u.apply(this,arguments)-nv,I=cAA(d-E),h=d>E;if(!n)n=l=o();if(B<C)g=B,B=C,C=g;if(!(B>ko))n.moveTo(0,0);else if(I>WD-ko){if(n.moveTo(B*SQ(E),B*dC(E)),n.arc(0,0,B,E,d,!h),C>ko)n.moveTo(C*SQ(d),C*dC(d)),n.arc(0,0,C,d,E,h)}else{var Q=E,p=d,m=E,f=d,D=I,w=I,b=a.apply(this,arguments)/2,F=b>ko&&(r?+r.apply(this,arguments):df(C*C+B*B)),v=$N(cAA(B-C)/2,+t.apply(this,arguments)),S=v,x=v,k,T;if(F>ko){var R=CAA(F/C*dC(b)),L=CAA(F/B*dC(b));if((D-=R*2)>ko)R*=h?1:-1,m+=R,f-=R;else D=0,m=f=(E+d)/2;if((w-=L*2)>ko)L*=h?1:-1,Q+=L,p-=L;else w=0,Q=p=(E+d)/2}var M=B*SQ(Q),U=B*dC(Q),Y=C*SQ(f),H=C*dC(f);if(v>ko){var J=B*SQ(p),K=B*dC(p),O=C*SQ(m),_=C*dC(m),z;if(I<_D)if(z=Uut(M,U,O,_,J,K,Y,H)){var j=M-z[0],q=U-z[1],CA=J-z[0],tA=K-z[1],lA=1/dC(z9A((j*CA+q*tA)/(df(j*j+q*q)*df(CA*CA+tA*tA)))/2),gA=df(z[0]*z[0]+z[1]*z[1]);S=$N(v,(C-gA)/(lA-1)),x=$N(v,(B-gA)/(lA+1))}else S=x=0}if(!(w>ko))n.moveTo(M,U);else if(x>ko)if(k=tG(O,_,M,U,B,x,h),T=tG(J,K,Y,H,B,x,h),n.moveTo(k.cx+k.x01,k.cy+k.y01),x<v)n.arc(k.cx,k.cy,x,A0(k.y01,k.x01),A0(T.y01,T.x01),!h);else n.arc(k.cx,k.cy,x,A0(k.y01,k.x01),A0(k.y11,k.x11),!h),n.arc(0,0,B,A0(k.cy+k.y11,k.cx+k.x11),A0(T.cy+T.y11,T.cx+T.x11),!h),n.arc(T.cx,T.cy,x,A0(T.y11,T.x11),A0(T.y01,T.x01),!h);else n.moveTo(M,U),n.arc(0,0,B,Q,p,!h);if(!(C>ko)||!(D>ko))n.lineTo(Y,H);else if(S>ko)if(k=tG(Y,H,J,K,C,-S,h),T=tG(M,U,O,_,C,-S,h),n.lineTo(k.cx+k.x01,k.cy+k.y01),S<v)n.arc(k.cx,k.cy,S,A0(k.y01,k.x01),A0(T.y01,T.x01),!h);else n.arc(k.cx,k.cy,S,A0(k.y01,k.x01),A0(k.y11,k.x11),!h),n.arc(0,0,C,A0(k.cy+k.y11,k.cx+k.x11),A0(T.cy+T.y11,T.cx+T.x11),h),n.arc(T.cx,T.cy,S,A0(T.y11,T.x11),A0(T.y01,T.x01),!h);else n.arc(0,0,C,f,m,h)}if(n.closePath(),l)return n=null,l+""||null}return s.centroid=function(){var l=(+A.apply(this,arguments)+ +e.apply(this,arguments))/2,g=(+i.apply(this,arguments)+ +u.apply(this,arguments))/2-_D/2;return[SQ(g)*l,dC(g)*l]},s.innerRadius=function(l){return arguments.length?(A=typeof l==="function"?l:$u(+l),s):A},s.outerRadius=function(l){return arguments.length?(e=typeof l==="function"?l:$u(+l),s):e},s.cornerRadius=function(l){return arguments.length?(t=typeof l==="function"?l:$u(+l),s):t},s.padRadius=function(l){return arguments.length?(r=l==null?null:typeof l==="function"?l:$u(+l),s):r},s.startAngle=function(l){return arguments.length?(i=typeof l==="function"?l:$u(+l),s):i},s.endAngle=function(l){return arguments.length?(u=typeof l==="function"?l:$u(+l),s):u},s.padAngle=function(l){return arguments.length?(a=typeof l==="function"?l:$u(+l),s):a},s.context=function(l){return arguments.length?(n=l==null?null:l,s):n},s}var Z9A=P(()=>{AG();BAA()});function ov(A){return typeof A==="object"&&"length"in A?A:Array.from(A)}var t5r;var EAA=P(()=>{t5r=Array.prototype.slice});function V9A(A){this._context=A}function gE(A){return new V9A(A)}var dAA=P(()=>{V9A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;default:this._context.lineTo(A,e);break}}}});function j9A(A){return A[0]}function X9A(A){return A[1]}function hC(A,e){var t=$u(!0),r=null,i=gE,u=null,a=eG(n);A=typeof A==="function"?A:A===void 0?j9A:$u(A),e=typeof e==="function"?e:e===void 0?X9A:$u(e);function n(o){var s,l=(o=ov(o)).length,g,C=!1,B;if(r==null)u=i(B=a());for(s=0;s<=l;++s){if(!(s<l&&t(g=o[s],s,o))===C)if(C=!C)u.lineStart();else u.lineEnd();if(C)u.point(+A(g,s,o),+e(g,s,o))}if(B)return u=null,B+""||null}return n.x=function(o){return arguments.length?(A=typeof o==="function"?o:$u(+o),n):A},n.y=function(o){return arguments.length?(e=typeof o==="function"?o:$u(+o),n):e},n.defined=function(o){return arguments.length?(t=typeof o==="function"?o:$u(!!o),n):t},n.curve=function(o){return arguments.length?(i=o,r!=null&&(u=i(r)),n):i},n.context=function(o){return arguments.length?(o==null?r=u=null:u=i(r=o),n):r},n}var $9A=P(()=>{EAA();dAA();BAA()});function IAA(A,e){return e<A?-1:e>A?1:e>=A?0:NaN}function hAA(A){return A}function rG(){var A=hAA,e=IAA,t=null,r=$u(0),i=$u(WD),u=$u(0);function a(n){var o,s=(n=ov(n)).length,l,g,C=0,B=Array(s),E=Array(s),d=+r.apply(this,arguments),I=Math.min(WD,Math.max(-WD,i.apply(this,arguments)-d)),h,Q=Math.min(Math.abs(I)/s,u.apply(this,arguments)),p=Q*(I<0?-1:1),m;for(o=0;o<s;++o)if((m=E[B[o]=o]=+A(n[o],o,n))>0)C+=m;if(e!=null)B.sort(function(f,D){return e(E[f],E[D])});else if(t!=null)B.sort(function(f,D){return t(n[f],n[D])});for(o=0,g=C?(I-s*p)/C:0;o<s;++o,d=h)l=B[o],m=E[l],h=d+(m>0?m*g:0)+p,E[l]={data:n[l],index:o,value:m,startAngle:d,endAngle:h,padAngle:Q};return E}return a.value=function(n){return arguments.length?(A=typeof n==="function"?n:$u(+n),a):A},a.sortValues=function(n){return arguments.length?(e=n,t=null,a):e},a.sort=function(n){return arguments.length?(t=n,e=null,a):t},a.startAngle=function(n){return arguments.length?(r=typeof n==="function"?n:$u(+n),a):r},a.endAngle=function(n){return arguments.length?(i=typeof n==="function"?n:$u(+n),a):i},a.padAngle=function(n){return arguments.length?(u=typeof n==="function"?n:$u(+n),a):u},a}var A5A=P(()=>{EAA();AG()});class QAA{constructor(A,e){this._context=A,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line}point(A,e){switch(A=+A,e=+e,this._point){case 0:{if(this._point=1,this._line)this._context.lineTo(A,e);else this._context.moveTo(A,e);break}case 1:this._point=2;default:{if(this._x)this._context.bezierCurveTo(this._x0=(this._x0+A)/2,this._y0,this._x0,e,A,e);else this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,A,this._y0,A,e);break}}this._x0=A,this._y0=e}}function sv(A){return new QAA(A,!0)}function lv(A){return new QAA(A,!1)}var e5A=()=>{};function ig(){}function qD(A,e,t){A._context.bezierCurveTo((2*A._x0+A._x1)/3,(2*A._y0+A._y1)/3,(A._x0+2*A._x1)/3,(A._y0+2*A._y1)/3,(A._x0+4*A._x1+e)/6,(A._y0+4*A._y1+t)/6)}function gv(A){this._context=A}function QC(A){return new gv(A)}var cv=P(()=>{gv.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:qD(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:qD(this,A,e);break}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}}});function t5A(A){this._context=A}function iG(A){return new t5A(A)}var r5A=P(()=>{cv();t5A.prototype={areaStart:ig,areaEnd:ig,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._x2=A,this._y2=e;break;case 1:this._point=2,this._x3=A,this._y3=e;break;case 2:this._point=3,this._x4=A,this._y4=e,this._context.moveTo((this._x0+4*this._x1+A)/6,(this._y0+4*this._y1+e)/6);break;default:qD(this,A,e);break}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}}});function i5A(A){this._context=A}function uG(A){return new i5A(A)}var u5A=P(()=>{cv();i5A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var t=(this._x0+4*this._x1+A)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break;case 3:this._point=4;default:qD(this,A,e);break}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}}});function a5A(A,e){this._basis=new gv(A),this._beta=e}var pAA;var n5A=P(()=>{cv();a5A.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var A=this._x,e=this._y,t=A.length-1;if(t>0){var r=A[0],i=e[0],u=A[t]-r,a=e[t]-i,n=-1,o;while(++n<=t)o=n/t,this._basis.point(this._beta*A[n]+(1-this._beta)*(r+o*u),this._beta*e[n]+(1-this._beta)*(i+o*a))}this._x=this._y=null,this._basis.lineEnd()},point:function(A,e){this._x.push(+A),this._y.push(+e)}};pAA=function A(e){function t(r){return e===1?new gv(r):new a5A(r,e)}return t.beta=function(r){return A(+r)},t}(0.85)});function zD(A,e,t){A._context.bezierCurveTo(A._x1+A._k*(A._x2-A._x0),A._y1+A._k*(A._y2-A._y0),A._x2+A._k*(A._x1-e),A._y2+A._k*(A._y1-t),A._x2,A._y2)}function aG(A,e){this._context=A,this._k=(1-e)/6}var Cv;var Bv=P(()=>{aG.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:zD(this,this._x1,this._y1);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2,this._x1=A,this._y1=e;break;case 2:this._point=3;default:zD(this,A,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};Cv=function A(e){function t(r){return new aG(r,e)}return t.tension=function(r){return A(+r)},t}(0)});function nG(A,e){this._context=A,this._k=(1-e)/6}var fAA;var mAA=P(()=>{Bv();nG.prototype={areaStart:ig,areaEnd:ig,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._x3=A,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=A,this._y4=e);break;case 2:this._point=3,this._x5=A,this._y5=e;break;default:zD(this,A,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};fAA=function A(e){function t(r){return new nG(r,e)}return t.tension=function(r){return A(+r)},t}(0)});function oG(A,e){this._context=A,this._k=(1-e)/6}var DAA;var yAA=P(()=>{Bv();oG.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:zD(this,A,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};DAA=function A(e){function t(r){return new oG(r,e)}return t.tension=function(r){return A(+r)},t}(0)});function Ev(A,e,t){var{_x1:r,_y1:i,_x2:u,_y2:a}=A;if(A._l01_a>ko){var n=2*A._l01_2a+3*A._l01_a*A._l12_a+A._l12_2a,o=3*A._l01_a*(A._l01_a+A._l12_a);r=(r*n-A._x0*A._l12_2a+A._x2*A._l01_2a)/o,i=(i*n-A._y0*A._l12_2a+A._y2*A._l01_2a)/o}if(A._l23_a>ko){var s=2*A._l23_2a+3*A._l23_a*A._l12_a+A._l12_2a,l=3*A._l23_a*(A._l23_a+A._l12_a);u=(u*s+A._x1*A._l23_2a-e*A._l12_2a)/l,a=(a*s+A._y1*A._l23_2a-t*A._l12_2a)/l}A._context.bezierCurveTo(r,i,u,a,A._x2,A._y2)}function o5A(A,e){this._context=A,this._alpha=e}var dv;var sG=P(()=>{AG();Bv();o5A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3;default:Ev(this,A,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};dv=function A(e){function t(r){return e?new o5A(r,e):new aG(r,0)}return t.alpha=function(r){return A(+r)},t}(0.5)});function s5A(A,e){this._context=A,this._alpha=e}var wAA;var l5A=P(()=>{mAA();sG();s5A.prototype={areaStart:ig,areaEnd:ig,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=A,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=A,this._y4=e);break;case 2:this._point=3,this._x5=A,this._y5=e;break;default:Ev(this,A,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};wAA=function A(e){function t(r){return e?new s5A(r,e):new nG(r,0)}return t.alpha=function(r){return A(+r)},t}(0.5)});function g5A(A,e){this._context=A,this._alpha=e}var bAA;var c5A=P(()=>{yAA();sG();g5A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ev(this,A,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};bAA=function A(e){function t(r){return e?new g5A(r,e):new oG(r,0)}return t.alpha=function(r){return A(+r)},t}(0.5)});function C5A(A){this._context=A}function lG(A){return new C5A(A)}var B5A=P(()=>{C5A.prototype={areaStart:ig,areaEnd:ig,lineStart:function(){this._point=0},lineEnd:function(){if(this._point)this._context.closePath()},point:function(A,e){if(A=+A,e=+e,this._point)this._context.lineTo(A,e);else this._point=1,this._context.moveTo(A,e)}}});function E5A(A){return A<0?-1:1}function d5A(A,e,t){var r=A._x1-A._x0,i=e-A._x1,u=(A._y1-A._y0)/(r||i<0&&-0),a=(t-A._y1)/(i||r<0&&-0),n=(u*i+a*r)/(r+i);return(E5A(u)+E5A(a))*Math.min(Math.abs(u),Math.abs(a),0.5*Math.abs(n))||0}function I5A(A,e){var t=A._x1-A._x0;return t?(3*(A._y1-A._y0)/t-e)/2:e}function vAA(A,e,t){var{_x0:r,_y0:i,_x1:u,_y1:a}=A,n=(u-r)/3;A._context.bezierCurveTo(r+n,i+n*e,u-n,a-n*t,u,a)}function gG(A){this._context=A}function h5A(A){this._context=new Q5A(A)}function Q5A(A){this._context=A}function Iv(A){return new gG(A)}function hv(A){return new h5A(A)}var p5A=P(()=>{gG.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:vAA(this,this._t0,I5A(this,this._t0));break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){var t=NaN;if(A=+A,e=+e,A===this._x1&&e===this._y1)return;switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3,vAA(this,I5A(this,t=d5A(this,A,e)),t);break;default:vAA(this,this._t0,t=d5A(this,A,e));break}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e,this._t0=t}};(h5A.prototype=Object.create(gG.prototype)).point=function(A,e){gG.prototype.point.call(this,e,A)};Q5A.prototype={moveTo:function(A,e){this._context.moveTo(e,A)},closePath:function(){this._context.closePath()},lineTo:function(A,e){this._context.lineTo(e,A)},bezierCurveTo:function(A,e,t,r,i,u){this._context.bezierCurveTo(e,A,r,t,u,i)}}});function m5A(A){this._context=A}function f5A(A){var e,t=A.length-1,r,i=Array(t),u=Array(t),a=Array(t);i[0]=0,u[0]=2,a[0]=A[0]+2*A[1];for(e=1;e<t-1;++e)i[e]=1,u[e]=4,a[e]=4*A[e]+2*A[e+1];i[t-1]=2,u[t-1]=7,a[t-1]=8*A[t-1]+A[t];for(e=1;e<t;++e)r=i[e]/u[e-1],u[e]-=r,a[e]-=r*a[e-1];i[t-1]=a[t-1]/u[t-1];for(e=t-2;e>=0;--e)i[e]=(a[e]-i[e+1])/u[e];u[t-1]=(A[t]+i[t-1])/2;for(e=0;e<t-1;++e)u[e]=2*A[e+1]-i[e+1];return[i,u]}function ZD(A){return new m5A(A)}var D5A=P(()=>{m5A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var A=this._x,e=this._y,t=A.length;if(t)if(this._line?this._context.lineTo(A[0],e[0]):this._context.moveTo(A[0],e[0]),t===2)this._context.lineTo(A[1],e[1]);else{var r=f5A(A),i=f5A(e);for(var u=0,a=1;a<t;++u,++a)this._context.bezierCurveTo(r[0][u],i[0][u],r[1][u],i[1][u],A[a],e[a])}if(this._line||this._line!==0&&t===1)this._context.closePath();this._line=1-this._line,this._x=this._y=null},point:function(A,e){this._x.push(+A),this._y.push(+e)}}});function cG(A,e){this._context=A,this._t=e}function VD(A){return new cG(A,0.5)}function Qv(A){return new cG(A,0)}function pv(A){return new cG(A,1)}var y5A=P(()=>{cG.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){if(0<this._t&&this._t<1&&this._point===2)this._context.lineTo(this._x,this._y);if(this._line||this._line!==0&&this._point===1)this._context.closePath();if(this._line>=0)this._t=1-this._t,this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(A,e);else{var t=this._x*(1-this._t)+A*this._t;this._context.lineTo(t,this._y),this._context.lineTo(t,e)}break}}this._x=A,this._y=e}}});var w5A=P(()=>{Z9A();$9A();A5A();r5A();u5A();cv();e5A();n5A();mAA();yAA();Bv();l5A();c5A();sG();B5A();dAA();p5A();D5A();y5A()});function LQ(A,e,t){this.k=A,this.x=e,this.y=t}function FAA(A){while(!A.__zoom)if(!(A=A.parentNode))return kAA;return A.__zoom}var kAA;var xAA=P(()=>{LQ.prototype={constructor:LQ,scale:function(A){return A===1?this:new LQ(this.k*A,this.x,this.y)},translate:function(A,e){return A===0&e===0?this:new LQ(this.k,this.x+this.k*A,this.y+this.k*e)},apply:function(A){return[A[0]*this.k+this.x,A[1]*this.k+this.y]},applyX:function(A){return A*this.k+this.x},applyY:function(A){return A*this.k+this.y},invert:function(A){return[(A[0]-this.x)/this.k,(A[1]-this.y)/this.k]},invertX:function(A){return(A-this.x)/this.k},invertY:function(A){return(A-this.y)/this.k},rescaleX:function(A){return A.copy().domain(A.range().map(this.invertX,this).map(A.invert,A))},rescaleY:function(A){return A.copy().domain(A.range().map(this.invertY,this).map(A.invert,A))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};kAA=new LQ(1,0,0);FAA.prototype=LQ.prototype});var b5A=P(()=>{SN();xAA()});var v5A=P(()=>{b5A();xAA()});var Pr=P(()=>{pQ();_yA();N6A();T6A();LD();Y6A();H6A();Dj();dwA();K6A();u$();J6A();P6A();f$();A9A();a9A();GD();l$();n9A();O6A();o9A();P9A();W9A();sC();w5A();jN();sAA();wN();SN();v5A()});var zi;var cn=P(()=>{rr();Nt();Pr();zi=y((A)=>{let{securityLevel:e}=OA(),t=Qe("body");if(e==="sandbox"){let u=Qe(`#i${A}`).node()?.contentDocument??document;t=Qe(u.body)}return t.select(`#${A}`)},"selectSvgElement")});function qAA(A){return typeof A>"u"||A===null}function x5A(A){return typeof A==="object"&&A!==null}function S5A(A){if(Array.isArray(A))return A;else if(qAA(A))return[];return[A]}function L5A(A,e){var t,r,i,u;if(e){u=Object.keys(e);for(t=0,r=u.length;t<r;t+=1)i=u[t],A[i]=e[i]}return A}function R5A(A,e){var t="",r;for(r=0;r<e;r+=1)t+=A;return t}function N5A(A){return A===0&&Number.NEGATIVE_INFINITY===1/A}function zAA(A,e){var t="",r=A.reason||"(unknown reason)";if(!A.mark)return r;if(A.mark.name)t+='in "'+A.mark.name+'" ';if(t+="("+(A.mark.line+1)+":"+(A.mark.column+1)+")",!e&&A.mark.snippet)t+=`
|
||
|
||
`+A.mark.snippet;return r+" "+t}function $D(A,e){if(Error.call(this),this.name="YAMLException",this.reason=A,this.mark=e,this.message=zAA(this,!1),Error.captureStackTrace)Error.captureStackTrace(this,this.constructor);else this.stack=Error().stack||""}function CG(A,e,t,r,i){var u="",a="",n=Math.floor(i/2)-1;if(r-e>n)u=" ... ",e=r-n+u.length;if(t-r>n)a=" ...",t=r+n-a.length;return{str:u+A.slice(e,t).replace(/\t/g,"→")+a,pos:r-e+u.length}}function BG(A,e){return Ao.repeat(" ",e-A.length)+A}function G5A(A,e){if(e=Object.create(e||null),!A.buffer)return null;if(!e.maxLength)e.maxLength=79;if(typeof e.indent!=="number")e.indent=1;if(typeof e.linesBefore!=="number")e.linesBefore=3;if(typeof e.linesAfter!=="number")e.linesAfter=2;var t=/\r?\n|\r|\0/g,r=[0],i=[],u,a=-1;while(u=t.exec(A.buffer))if(i.push(u.index),r.push(u.index+u[0].length),A.position<=u.index&&a<0)a=r.length-2;if(a<0)a=r.length-1;var n="",o,s,l=Math.min(A.line+e.linesAfter,i.length).toString().length,g=e.maxLength-(e.indent+l+3);for(o=1;o<=e.linesBefore;o++){if(a-o<0)break;s=CG(A.buffer,r[a-o],i[a-o],A.position-(r[a]-r[a-o]),g),n=Ao.repeat(" ",e.indent)+BG((A.line-o+1).toString(),l)+" | "+s.str+`
|
||
`+n}s=CG(A.buffer,r[a],i[a],A.position,g),n+=Ao.repeat(" ",e.indent)+BG((A.line+1).toString(),l)+" | "+s.str+`
|
||
`,n+=Ao.repeat("-",e.indent+l+3+s.pos)+`^
|
||
`;for(o=1;o<=e.linesAfter;o++){if(a+o>=i.length)break;s=CG(A.buffer,r[a+o],i[a+o],A.position-(r[a]-r[a+o]),g),n+=Ao.repeat(" ",e.indent)+BG((A.line+o+1).toString(),l)+" | "+s.str+`
|
||
`}return n.replace(/\n$/,"")}function U5A(A){var e={};if(A!==null)Object.keys(A).forEach(function(t){A[t].forEach(function(r){e[String(r)]=t})});return e}function M5A(A,e){if(e=e||{},Object.keys(e).forEach(function(t){if(Put.indexOf(t)===-1)throw new ul('Unknown option "'+t+'" is met in definition of "'+A+'" YAML type.')}),this.options=e,this.tag=A,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=U5A(e.styleAliases||null),_ut.indexOf(this.kind)===-1)throw new ul('Unknown kind "'+this.kind+'" is specified for "'+A+'" YAML type.')}function LAA(A,e){var t=[];return A[e].forEach(function(r){var i=t.length;t.forEach(function(u,a){if(u.tag===r.tag&&u.kind===r.kind&&u.multi===r.multi)i=a}),t[i]=r}),t}function T5A(){var A={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,t;function r(i){if(i.multi)A.multi[i.kind].push(i),A.multi.fallback.push(i);else A[i.kind][i.tag]=A.fallback[i.tag]=i}y(r,"collectType");for(e=0,t=arguments.length;e<t;e+=1)arguments[e].forEach(r);return A}function EG(A){return this.extend(A)}function Y5A(A){if(A===null)return!0;var e=A.length;return e===1&&A==="~"||e===4&&(A==="null"||A==="Null"||A==="NULL")}function H5A(){return null}function K5A(A){return A===null}function J5A(A){if(A===null)return!1;var e=A.length;return e===4&&(A==="true"||A==="True"||A==="TRUE")||e===5&&(A==="false"||A==="False"||A==="FALSE")}function O5A(A){return A==="true"||A==="True"||A==="TRUE"}function P5A(A){return Object.prototype.toString.call(A)==="[object Boolean]"}function _5A(A){return 48<=A&&A<=57||65<=A&&A<=70||97<=A&&A<=102}function W5A(A){return 48<=A&&A<=55}function q5A(A){return 48<=A&&A<=57}function z5A(A){if(A===null)return!1;var e=A.length,t=0,r=!1,i;if(!e)return!1;if(i=A[t],i==="-"||i==="+")i=A[++t];if(i==="0"){if(t+1===e)return!0;if(i=A[++t],i==="b"){t++;for(;t<e;t++){if(i=A[t],i==="_")continue;if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){t++;for(;t<e;t++){if(i=A[t],i==="_")continue;if(!_5A(A.charCodeAt(t)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){t++;for(;t<e;t++){if(i=A[t],i==="_")continue;if(!W5A(A.charCodeAt(t)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;t<e;t++){if(i=A[t],i==="_")continue;if(!q5A(A.charCodeAt(t)))return!1;r=!0}if(!r||i==="_")return!1;return!0}function Z5A(A){var e=A,t=1,r;if(e.indexOf("_")!==-1)e=e.replace(/_/g,"");if(r=e[0],r==="-"||r==="+"){if(r==="-")t=-1;e=e.slice(1),r=e[0]}if(e==="0")return 0;if(r==="0"){if(e[1]==="b")return t*parseInt(e.slice(2),2);if(e[1]==="x")return t*parseInt(e.slice(2),16);if(e[1]==="o")return t*parseInt(e.slice(2),8)}return t*parseInt(e,10)}function V5A(A){return Object.prototype.toString.call(A)==="[object Number]"&&(A%1===0&&!Ao.isNegativeZero(A))}function j5A(A){if(A===null)return!1;if(!Aat.test(A)||A[A.length-1]==="_")return!1;return!0}function X5A(A){var e,t;if(e=A.replace(/_/g,"").toLowerCase(),t=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0)e=e.slice(1);if(e===".inf")return t===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY;else if(e===".nan")return NaN;return t*parseFloat(e,10)}function $5A(A,e){var t;if(isNaN(A))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===A)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===A)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Ao.isNegativeZero(A))return"-0.0";return t=A.toString(10),eat.test(t)?t.replace("e",".e"):t}function AbA(A){return Object.prototype.toString.call(A)==="[object Number]"&&(A%1!==0||Ao.isNegativeZero(A))}function ibA(A){if(A===null)return!1;if(tbA.exec(A)!==null)return!0;if(rbA.exec(A)!==null)return!0;return!1}function ubA(A){var e,t,r,i,u,a,n,o=0,s=null,l,g,C;if(e=tbA.exec(A),e===null)e=rbA.exec(A);if(e===null)throw Error("Date resolve error");if(t=+e[1],r=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(t,r,i));if(u=+e[4],a=+e[5],n=+e[6],e[7]){o=e[7].slice(0,3);while(o.length<3)o+="0";o=+o}if(e[9]){if(l=+e[10],g=+(e[11]||0),s=(l*60+g)*60000,e[9]==="-")s=-s}if(C=new Date(Date.UTC(t,r,i,u,a,n,o)),s)C.setTime(C.getTime()-s);return C}function abA(A){return A.toISOString()}function nbA(A){return A==="<<"||A===null}function obA(A){if(A===null)return!1;var e,t,r=0,i=A.length,u=ZAA;for(t=0;t<i;t++){if(e=u.indexOf(A.charAt(t)),e>64)continue;if(e<0)return!1;r+=6}return r%8===0}function sbA(A){var e,t,r=A.replace(/[\r\n=]/g,""),i=r.length,u=ZAA,a=0,n=[];for(e=0;e<i;e++){if(e%4===0&&e)n.push(a>>16&255),n.push(a>>8&255),n.push(a&255);a=a<<6|u.indexOf(r.charAt(e))}if(t=i%4*6,t===0)n.push(a>>16&255),n.push(a>>8&255),n.push(a&255);else if(t===18)n.push(a>>10&255),n.push(a>>2&255);else if(t===12)n.push(a>>4&255);return new Uint8Array(n)}function lbA(A){var e="",t=0,r,i,u=A.length,a=ZAA;for(r=0;r<u;r++){if(r%3===0&&r)e+=a[t>>18&63],e+=a[t>>12&63],e+=a[t>>6&63],e+=a[t&63];t=(t<<8)+A[r]}if(i=u%3,i===0)e+=a[t>>18&63],e+=a[t>>12&63],e+=a[t>>6&63],e+=a[t&63];else if(i===2)e+=a[t>>10&63],e+=a[t>>4&63],e+=a[t<<2&63],e+=a[64];else if(i===1)e+=a[t>>2&63],e+=a[t<<4&63],e+=a[64],e+=a[64];return e}function gbA(A){return Object.prototype.toString.call(A)==="[object Uint8Array]"}function cbA(A){if(A===null)return!0;var e=[],t,r,i,u,a,n=A;for(t=0,r=n.length;t<r;t+=1){if(i=n[t],a=!1,oat.call(i)!=="[object Object]")return!1;for(u in i)if(nat.call(i,u))if(!a)a=!0;else return!1;if(!a)return!1;if(e.indexOf(u)===-1)e.push(u);else return!1}return!0}function CbA(A){return A!==null?A:[]}function BbA(A){if(A===null)return!0;var e,t,r,i,u,a=A;u=Array(a.length);for(e=0,t=a.length;e<t;e+=1){if(r=a[e],lat.call(r)!=="[object Object]")return!1;if(i=Object.keys(r),i.length!==1)return!1;u[e]=[i[0],r[i[0]]]}return!0}function EbA(A){if(A===null)return[];var e,t,r,i,u,a=A;u=Array(a.length);for(e=0,t=a.length;e<t;e+=1)r=a[e],i=Object.keys(r),u[e]=[i[0],r[i[0]]];return u}function dbA(A){if(A===null)return!0;var e,t=A;for(e in t)if(cat.call(t,e)){if(t[e]!==null)return!1}return!0}function IbA(A){return A!==null?A:{}}function RAA(A){return Object.prototype.toString.call(A)}function pC(A){return A===10||A===13}function RQ(A){return A===9||A===32}function Bs(A){return A===9||A===32||A===10||A===13}function hf(A){return A===44||A===91||A===93||A===123||A===125}function DbA(A){var e;if(48<=A&&A<=57)return A-48;if(e=A|32,97<=e&&e<=102)return e-97+10;return-1}function ybA(A){if(A===120)return 2;if(A===117)return 4;if(A===85)return 8;return 0}function wbA(A){if(48<=A&&A<=57)return A-48;return-1}function NAA(A){return A===48?"\x00":A===97?"\x07":A===98?"\b":A===116?"\t":A===9?"\t":A===110?`
|
||
`:A===118?"\v":A===102?"\f":A===114?"\r":A===101?"\x1B":A===32?" ":A===34?'"':A===47?"/":A===92?"\\":A===78?"
":A===95?" ":A===76?"\u2028":A===80?"\u2029":""}function bbA(A){if(A<=65535)return String.fromCharCode(A);return String.fromCharCode((A-65536>>10)+55296,(A-65536&1023)+56320)}function VAA(A,e,t){if(e==="__proto__")Object.defineProperty(A,e,{configurable:!0,enumerable:!0,writable:!0,value:t});else A[e]=t}function FbA(A,e){this.input=A,this.filename=e.filename||null,this.schema=e.schema||hbA,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=A.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function jAA(A,e){var t={name:A.filename,buffer:A.input.slice(0,-1),position:A.position,line:A.line,column:A.position-A.lineStart};return t.snippet=Out(t),new ul(e,t)}function Ar(A,e){throw jAA(A,e)}function fv(A,e){if(A.onWarning)A.onWarning.call(null,jAA(A,e))}function QI(A,e,t,r){var i,u,a,n;if(e<t){if(n=A.input.slice(e,t),r){for(i=0,u=n.length;i<u;i+=1)if(a=n.charCodeAt(i),!(a===9||32<=a&&a<=1114111))Ar(A,"expected valid JSON character")}else if(Eat.test(n))Ar(A,"the stream contains non-printable characters");A.result+=n}}function GAA(A,e,t,r){var i,u,a,n;if(!Ao.isObject(t))Ar(A,"cannot merge mappings; the provided source object is unacceptable");i=Object.keys(t);for(a=0,n=i.length;a<n;a+=1)if(u=i[a],!NQ.call(e,u))VAA(e,u,t[u]),r[u]=!0}function Qf(A,e,t,r,i,u,a,n,o){var s,l;if(Array.isArray(i)){i=Array.prototype.slice.call(i);for(s=0,l=i.length;s<l;s+=1){if(Array.isArray(i[s]))Ar(A,"nested arrays are not supported inside keys");if(typeof i==="object"&&RAA(i[s])==="[object Object]")i[s]="[object Object]"}}if(typeof i==="object"&&RAA(i)==="[object Object]")i="[object Object]";if(i=String(i),e===null)e={};if(r==="tag:yaml.org,2002:merge")if(Array.isArray(u))for(s=0,l=u.length;s<l;s+=1)GAA(A,e,u[s],t);else GAA(A,e,u,t);else{if(!A.json&&!NQ.call(t,i)&&NQ.call(e,i))A.line=a||A.line,A.lineStart=n||A.lineStart,A.position=o||A.position,Ar(A,"duplicated mapping key");VAA(e,i,u),delete t[i]}return e}function fG(A){var e=A.input.charCodeAt(A.position);if(e===10)A.position++;else if(e===13){if(A.position++,A.input.charCodeAt(A.position)===10)A.position++}else Ar(A,"a line break is expected");A.line+=1,A.lineStart=A.position,A.firstTabInLine=-1}function Cn(A,e,t){var r=0,i=A.input.charCodeAt(A.position);while(i!==0){while(RQ(i)){if(i===9&&A.firstTabInLine===-1)A.firstTabInLine=A.position;i=A.input.charCodeAt(++A.position)}if(e&&i===35)do i=A.input.charCodeAt(++A.position);while(i!==10&&i!==13&&i!==0);if(pC(i)){fG(A),i=A.input.charCodeAt(A.position),r++,A.lineIndent=0;while(i===32)A.lineIndent++,i=A.input.charCodeAt(++A.position)}else break}if(t!==-1&&r!==0&&A.lineIndent<t)fv(A,"deficient indentation");return r}function wv(A){var e=A.position,t;if(t=A.input.charCodeAt(e),(t===45||t===46)&&t===A.input.charCodeAt(e+1)&&t===A.input.charCodeAt(e+2)){if(e+=3,t=A.input.charCodeAt(e),t===0||Bs(t))return!0}return!1}function mG(A,e){if(e===1)A.result+=" ";else if(e>1)A.result+=Ao.repeat(`
|
||
`,e-1)}function xbA(A,e,t){var r,i,u,a,n,o,s,l,{kind:g,result:C}=A,B;if(B=A.input.charCodeAt(A.position),Bs(B)||hf(B)||B===35||B===38||B===42||B===33||B===124||B===62||B===39||B===34||B===37||B===64||B===96)return!1;if(B===63||B===45){if(i=A.input.charCodeAt(A.position+1),Bs(i)||t&&hf(i))return!1}A.kind="scalar",A.result="",u=a=A.position,n=!1;while(B!==0){if(B===58){if(i=A.input.charCodeAt(A.position+1),Bs(i)||t&&hf(i))break}else if(B===35){if(r=A.input.charCodeAt(A.position-1),Bs(r))break}else if(A.position===A.lineStart&&wv(A)||t&&hf(B))break;else if(pC(B))if(o=A.line,s=A.lineStart,l=A.lineIndent,Cn(A,!1,-1),A.lineIndent>=e){n=!0,B=A.input.charCodeAt(A.position);continue}else{A.position=a,A.line=o,A.lineStart=s,A.lineIndent=l;break}if(n)QI(A,u,a,!1),mG(A,A.line-o),u=a=A.position,n=!1;if(!RQ(B))a=A.position+1;B=A.input.charCodeAt(++A.position)}if(QI(A,u,a,!1),A.result)return!0;return A.kind=g,A.result=C,!1}function SbA(A,e){var t,r,i;if(t=A.input.charCodeAt(A.position),t!==39)return!1;A.kind="scalar",A.result="",A.position++,r=i=A.position;while((t=A.input.charCodeAt(A.position))!==0)if(t===39)if(QI(A,r,A.position,!0),t=A.input.charCodeAt(++A.position),t===39)r=A.position,A.position++,i=A.position;else return!0;else if(pC(t))QI(A,r,i,!0),mG(A,Cn(A,!1,e)),r=i=A.position;else if(A.position===A.lineStart&&wv(A))Ar(A,"unexpected end of the document within a single quoted scalar");else A.position++,i=A.position;Ar(A,"unexpected end of the stream within a single quoted scalar")}function LbA(A,e){var t,r,i,u,a,n;if(n=A.input.charCodeAt(A.position),n!==34)return!1;A.kind="scalar",A.result="",A.position++,t=r=A.position;while((n=A.input.charCodeAt(A.position))!==0)if(n===34)return QI(A,t,A.position,!0),A.position++,!0;else if(n===92){if(QI(A,t,A.position,!0),n=A.input.charCodeAt(++A.position),pC(n))Cn(A,!1,e);else if(n<256&&vbA[n])A.result+=kbA[n],A.position++;else if((a=ybA(n))>0){i=a,u=0;for(;i>0;i--)if(n=A.input.charCodeAt(++A.position),(a=DbA(n))>=0)u=(u<<4)+a;else Ar(A,"expected hexadecimal character");A.result+=bbA(u),A.position++}else Ar(A,"unknown escape sequence");t=r=A.position}else if(pC(n))QI(A,t,r,!0),mG(A,Cn(A,!1,e)),t=r=A.position;else if(A.position===A.lineStart&&wv(A))Ar(A,"unexpected end of the document within a double quoted scalar");else A.position++,r=A.position;Ar(A,"unexpected end of the stream within a double quoted scalar")}function RbA(A,e){var t=!0,r,i,u,a=A.tag,n,o=A.anchor,s,l,g,C,B,E=Object.create(null),d,I,h,Q;if(Q=A.input.charCodeAt(A.position),Q===91)l=93,B=!1,n=[];else if(Q===123)l=125,B=!0,n={};else return!1;if(A.anchor!==null)A.anchorMap[A.anchor]=n;Q=A.input.charCodeAt(++A.position);while(Q!==0){if(Cn(A,!0,e),Q=A.input.charCodeAt(A.position),Q===l)return A.position++,A.tag=a,A.anchor=o,A.kind=B?"mapping":"sequence",A.result=n,!0;else if(!t)Ar(A,"missed comma between flow collection entries");else if(Q===44)Ar(A,"expected the node content, but found ','");if(I=d=h=null,g=C=!1,Q===63){if(s=A.input.charCodeAt(A.position+1),Bs(s))g=C=!0,A.position++,Cn(A,!0,e)}if(r=A.line,i=A.lineStart,u=A.position,pf(A,e,dG,!1,!0),I=A.tag,d=A.result,Cn(A,!0,e),Q=A.input.charCodeAt(A.position),(C||A.line===r)&&Q===58)g=!0,Q=A.input.charCodeAt(++A.position),Cn(A,!0,e),pf(A,e,dG,!1,!0),h=A.result;if(B)Qf(A,n,E,I,d,h,r,i,u);else if(g)n.push(Qf(A,null,E,I,d,h,r,i,u));else n.push(d);if(Cn(A,!0,e),Q=A.input.charCodeAt(A.position),Q===44)t=!0,Q=A.input.charCodeAt(++A.position);else t=!1}Ar(A,"unexpected end of the stream within a flow collection")}function NbA(A,e){var t,r,i=SAA,u=!1,a=!1,n=e,o=0,s=!1,l,g;if(g=A.input.charCodeAt(A.position),g===124)r=!1;else if(g===62)r=!0;else return!1;A.kind="scalar",A.result="";while(g!==0)if(g=A.input.charCodeAt(++A.position),g===43||g===45)if(SAA===i)i=g===43?k5A:Bat;else Ar(A,"repeat of a chomping mode identifier");else if((l=wbA(g))>=0)if(l===0)Ar(A,"bad explicit indentation width of a block scalar; it cannot be less than one");else if(!a)n=e+l-1,a=!0;else Ar(A,"repeat of an indentation width identifier");else break;if(RQ(g)){do g=A.input.charCodeAt(++A.position);while(RQ(g));if(g===35)do g=A.input.charCodeAt(++A.position);while(!pC(g)&&g!==0)}while(g!==0){fG(A),A.lineIndent=0,g=A.input.charCodeAt(A.position);while((!a||A.lineIndent<n)&&g===32)A.lineIndent++,g=A.input.charCodeAt(++A.position);if(!a&&A.lineIndent>n)n=A.lineIndent;if(pC(g)){o++;continue}if(A.lineIndent<n){if(i===k5A)A.result+=Ao.repeat(`
|
||
`,u?1+o:o);else if(i===SAA){if(u)A.result+=`
|
||
`}break}if(r)if(RQ(g))s=!0,A.result+=Ao.repeat(`
|
||
`,u?1+o:o);else if(s)s=!1,A.result+=Ao.repeat(`
|
||
`,o+1);else if(o===0){if(u)A.result+=" "}else A.result+=Ao.repeat(`
|
||
`,o);else A.result+=Ao.repeat(`
|
||
`,u?1+o:o);u=!0,a=!0,o=0,t=A.position;while(!pC(g)&&g!==0)g=A.input.charCodeAt(++A.position);QI(A,t,A.position,!1)}return!0}function UAA(A,e){var t,{tag:r,anchor:i}=A,u=[],a,n=!1,o;if(A.firstTabInLine!==-1)return!1;if(A.anchor!==null)A.anchorMap[A.anchor]=u;o=A.input.charCodeAt(A.position);while(o!==0){if(A.firstTabInLine!==-1)A.position=A.firstTabInLine,Ar(A,"tab characters must not be used in indentation");if(o!==45)break;if(a=A.input.charCodeAt(A.position+1),!Bs(a))break;if(n=!0,A.position++,Cn(A,!0,-1)){if(A.lineIndent<=e){u.push(null),o=A.input.charCodeAt(A.position);continue}}if(t=A.line,pf(A,e,pbA,!1,!0),u.push(A.result),Cn(A,!0,-1),o=A.input.charCodeAt(A.position),(A.line===t||A.lineIndent>e)&&o!==0)Ar(A,"bad indentation of a sequence entry");else if(A.lineIndent<e)break}if(n)return A.tag=r,A.anchor=i,A.kind="sequence",A.result=u,!0;return!1}function GbA(A,e,t){var r,i,u,a,n,o,{tag:s,anchor:l}=A,g={},C=Object.create(null),B=null,E=null,d=null,I=!1,h=!1,Q;if(A.firstTabInLine!==-1)return!1;if(A.anchor!==null)A.anchorMap[A.anchor]=g;Q=A.input.charCodeAt(A.position);while(Q!==0){if(!I&&A.firstTabInLine!==-1)A.position=A.firstTabInLine,Ar(A,"tab characters must not be used in indentation");if(r=A.input.charCodeAt(A.position+1),u=A.line,(Q===63||Q===58)&&Bs(r)){if(Q===63){if(I)Qf(A,g,C,B,E,null,a,n,o),B=E=d=null;h=!0,I=!0,i=!0}else if(I)I=!1,i=!0;else Ar(A,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line");A.position+=1,Q=r}else{if(a=A.line,n=A.lineStart,o=A.position,!pf(A,t,QbA,!1,!0))break;if(A.line===u){Q=A.input.charCodeAt(A.position);while(RQ(Q))Q=A.input.charCodeAt(++A.position);if(Q===58){if(Q=A.input.charCodeAt(++A.position),!Bs(Q))Ar(A,"a whitespace character is expected after the key-value separator within a block mapping");if(I)Qf(A,g,C,B,E,null,a,n,o),B=E=d=null;h=!0,I=!1,i=!1,B=A.tag,E=A.result}else if(h)Ar(A,"can not read an implicit mapping pair; a colon is missed");else return A.tag=s,A.anchor=l,!0}else if(h)Ar(A,"can not read a block mapping entry; a multiline key may not be an implicit key");else return A.tag=s,A.anchor=l,!0}if(A.line===u||A.lineIndent>e){if(I)a=A.line,n=A.lineStart,o=A.position;if(pf(A,e,IG,!0,i))if(I)E=A.result;else d=A.result;if(!I)Qf(A,g,C,B,E,d,a,n,o),B=E=d=null;Cn(A,!0,-1),Q=A.input.charCodeAt(A.position)}if((A.line===u||A.lineIndent>e)&&Q!==0)Ar(A,"bad indentation of a mapping entry");else if(A.lineIndent<e)break}if(I)Qf(A,g,C,B,E,null,a,n,o);if(h)A.tag=s,A.anchor=l,A.kind="mapping",A.result=g;return h}function UbA(A){var e,t=!1,r=!1,i,u,a;if(a=A.input.charCodeAt(A.position),a!==33)return!1;if(A.tag!==null)Ar(A,"duplication of a tag property");if(a=A.input.charCodeAt(++A.position),a===60)t=!0,a=A.input.charCodeAt(++A.position);else if(a===33)r=!0,i="!!",a=A.input.charCodeAt(++A.position);else i="!";if(e=A.position,t){do a=A.input.charCodeAt(++A.position);while(a!==0&&a!==62);if(A.position<A.length)u=A.input.slice(e,A.position),a=A.input.charCodeAt(++A.position);else Ar(A,"unexpected end of the stream within a verbatim tag")}else{while(a!==0&&!Bs(a)){if(a===33)if(!r){if(i=A.input.slice(e-1,A.position+1),!fbA.test(i))Ar(A,"named tag handle cannot contain such characters");r=!0,e=A.position+1}else Ar(A,"tag suffix cannot contain exclamation marks");a=A.input.charCodeAt(++A.position)}if(u=A.input.slice(e,A.position),Iat.test(u))Ar(A,"tag suffix cannot contain flow indicator characters")}if(u&&!mbA.test(u))Ar(A,"tag name cannot contain such characters: "+u);try{u=decodeURIComponent(u)}catch(n){Ar(A,"tag name is malformed: "+u)}if(t)A.tag=u;else if(NQ.call(A.tagMap,i))A.tag=A.tagMap[i]+u;else if(i==="!")A.tag="!"+u;else if(i==="!!")A.tag="tag:yaml.org,2002:"+u;else Ar(A,'undeclared tag handle "'+i+'"');return!0}function MbA(A){var e,t;if(t=A.input.charCodeAt(A.position),t!==38)return!1;if(A.anchor!==null)Ar(A,"duplication of an anchor property");t=A.input.charCodeAt(++A.position),e=A.position;while(t!==0&&!Bs(t)&&!hf(t))t=A.input.charCodeAt(++A.position);if(A.position===e)Ar(A,"name of an anchor node must contain at least one character");return A.anchor=A.input.slice(e,A.position),!0}function TbA(A){var e,t,r;if(r=A.input.charCodeAt(A.position),r!==42)return!1;r=A.input.charCodeAt(++A.position),e=A.position;while(r!==0&&!Bs(r)&&!hf(r))r=A.input.charCodeAt(++A.position);if(A.position===e)Ar(A,"name of an alias node must contain at least one character");if(t=A.input.slice(e,A.position),!NQ.call(A.anchorMap,t))Ar(A,'unidentified alias "'+t+'"');return A.result=A.anchorMap[t],Cn(A,!0,-1),!0}function pf(A,e,t,r,i){var u,a,n,o=1,s=!1,l=!1,g,C,B,E,d,I;if(A.listener!==null)A.listener("open",A);if(A.tag=null,A.anchor=null,A.kind=null,A.result=null,u=a=n=IG===t||pbA===t,r){if(Cn(A,!0,-1)){if(s=!0,A.lineIndent>e)o=1;else if(A.lineIndent===e)o=0;else if(A.lineIndent<e)o=-1}}if(o===1)while(UbA(A)||MbA(A))if(Cn(A,!0,-1)){if(s=!0,n=u,A.lineIndent>e)o=1;else if(A.lineIndent===e)o=0;else if(A.lineIndent<e)o=-1}else n=!1;if(n)n=s||i;if(o===1||IG===t){if(dG===t||QbA===t)d=e;else d=e+1;if(I=A.position-A.lineStart,o===1)if(n&&(UAA(A,I)||GbA(A,I,d))||RbA(A,d))l=!0;else{if(a&&NbA(A,d)||SbA(A,d)||LbA(A,d))l=!0;else if(TbA(A)){if(l=!0,A.tag!==null||A.anchor!==null)Ar(A,"alias node should not have any properties")}else if(xbA(A,d,dG===t)){if(l=!0,A.tag===null)A.tag="?"}if(A.anchor!==null)A.anchorMap[A.anchor]=A.result}else if(o===0)l=n&&UAA(A,I)}if(A.tag===null){if(A.anchor!==null)A.anchorMap[A.anchor]=A.result}else if(A.tag==="?"){if(A.result!==null&&A.kind!=="scalar")Ar(A,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+A.kind+'"');for(g=0,C=A.implicitTypes.length;g<C;g+=1)if(E=A.implicitTypes[g],E.resolve(A.result)){if(A.result=E.construct(A.result),A.tag=E.tag,A.anchor!==null)A.anchorMap[A.anchor]=A.result;break}}else if(A.tag!=="!"){if(NQ.call(A.typeMap[A.kind||"fallback"],A.tag))E=A.typeMap[A.kind||"fallback"][A.tag];else{E=null,B=A.typeMap.multi[A.kind||"fallback"];for(g=0,C=B.length;g<C;g+=1)if(A.tag.slice(0,B[g].tag.length)===B[g].tag){E=B[g];break}}if(!E)Ar(A,"unknown tag !<"+A.tag+">");if(A.result!==null&&E.kind!==A.kind)Ar(A,"unacceptable node kind for !<"+A.tag+'> tag; it should be "'+E.kind+'", not "'+A.kind+'"');if(!E.resolve(A.result,A.tag))Ar(A,"cannot resolve a node with !<"+A.tag+"> explicit tag");else if(A.result=E.construct(A.result,A.tag),A.anchor!==null)A.anchorMap[A.anchor]=A.result}if(A.listener!==null)A.listener("close",A);return A.tag!==null||A.anchor!==null||l}function YbA(A){var e=A.position,t,r,i,u=!1,a;A.version=null,A.checkLineBreaks=A.legacy,A.tagMap=Object.create(null),A.anchorMap=Object.create(null);while((a=A.input.charCodeAt(A.position))!==0){if(Cn(A,!0,-1),a=A.input.charCodeAt(A.position),A.lineIndent>0||a!==37)break;u=!0,a=A.input.charCodeAt(++A.position),t=A.position;while(a!==0&&!Bs(a))a=A.input.charCodeAt(++A.position);if(r=A.input.slice(t,A.position),i=[],r.length<1)Ar(A,"directive name must not be less than one character in length");while(a!==0){while(RQ(a))a=A.input.charCodeAt(++A.position);if(a===35){do a=A.input.charCodeAt(++A.position);while(a!==0&&!pC(a));break}if(pC(a))break;t=A.position;while(a!==0&&!Bs(a))a=A.input.charCodeAt(++A.position);i.push(A.input.slice(t,A.position))}if(a!==0)fG(A);if(NQ.call(F5A,r))F5A[r](A,r,i);else fv(A,'unknown document directive "'+r+'"')}if(Cn(A,!0,-1),A.lineIndent===0&&A.input.charCodeAt(A.position)===45&&A.input.charCodeAt(A.position+1)===45&&A.input.charCodeAt(A.position+2)===45)A.position+=3,Cn(A,!0,-1);else if(u)Ar(A,"directives end mark is expected");if(pf(A,A.lineIndent-1,IG,!1,!0),Cn(A,!0,-1),A.checkLineBreaks&&dat.test(A.input.slice(e,A.position)))fv(A,"non-ASCII line breaks are interpreted as content");if(A.documents.push(A.result),A.position===A.lineStart&&wv(A)){if(A.input.charCodeAt(A.position)===46)A.position+=3,Cn(A,!0,-1);return}if(A.position<A.length-1)Ar(A,"end of the stream or a document separator is expected");else return}function XAA(A,e){if(A=String(A),e=e||{},A.length!==0){if(A.charCodeAt(A.length-1)!==10&&A.charCodeAt(A.length-1)!==13)A+=`
|
||
`;if(A.charCodeAt(0)===65279)A=A.slice(1)}var t=new FbA(A,e),r=A.indexOf("\x00");if(r!==-1)t.position=r,Ar(t,"null byte is not allowed in input");t.input+="\x00";while(t.input.charCodeAt(t.position)===32)t.lineIndent+=1,t.position+=1;while(t.position<t.length-1)YbA(t);return t.documents}function HbA(A,e,t){if(e!==null&&typeof e==="object"&&typeof t>"u")t=e,e=null;var r=XAA(A,t);if(typeof e!=="function")return r;for(var i=0,u=r.length;i<u;i+=1)e(r[i])}function KbA(A,e){var t=XAA(A,e);if(t.length===0)return;else if(t.length===1)return t[0];throw new ul("expected a single document in the stream, but found more")}function VbA(A,e){var t,r,i,u,a,n,o;if(e===null)return{};t={},r=Object.keys(e);for(i=0,u=r.length;i<u;i+=1){if(a=r[i],n=String(e[a]),a.slice(0,2)==="!!")a="tag:yaml.org,2002:"+a.slice(2);if(o=A.compiledTypeMap.fallback[a],o&&PbA.call(o.styleAliases,n))n=o.styleAliases[n];t[a]=n}return t}function jbA(A){var e,t,r;if(e=A.toString(16).toUpperCase(),A<=255)t="x",r=2;else if(A<=65535)t="u",r=4;else if(A<=4294967295)t="U",r=8;else throw new ul("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+t+Ao.repeat("0",r-e.length)+e}function XbA(A){this.schema=A.schema||hbA,this.indent=Math.max(1,A.indent||2),this.noArrayIndent=A.noArrayIndent||!1,this.skipInvalid=A.skipInvalid||!1,this.flowLevel=Ao.isNothing(A.flowLevel)?-1:A.flowLevel,this.styleMap=VbA(this.schema,A.styles||null),this.sortKeys=A.sortKeys||!1,this.lineWidth=A.lineWidth||80,this.noRefs=A.noRefs||!1,this.noCompatMode=A.noCompatMode||!1,this.condenseFlow=A.condenseFlow||!1,this.quotingType=A.quotingType==='"'?Dv:Tat,this.forceQuotes=A.forceQuotes||!1,this.replacer=typeof A.replacer==="function"?A.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function TAA(A,e){var t=Ao.repeat(" ",e),r=0,i=-1,u="",a,n=A.length;while(r<n){if(i=A.indexOf(`
|
||
`,r),i===-1)a=A.slice(r),r=n;else a=A.slice(r,i+1),r=i+1;if(a.length&&a!==`
|
||
`)u+=t;u+=a}return u}function QG(A,e){return`
|
||
`+Ao.repeat(" ",A.indent*e)}function $bA(A,e){var t,r,i;for(t=0,r=A.implicitTypes.length;t<r;t+=1)if(i=A.implicitTypes[t],i.resolve(e))return!0;return!1}function yv(A){return A===mat||A===pat}function Ay(A){return 32<=A&&A<=126||161<=A&&A<=55295&&A!==8232&&A!==8233||57344<=A&&A<=65533&&A!==$AA||65536<=A&&A<=1114111}function YAA(A){return Ay(A)&&A!==$AA&&A!==fat&&A!==mv}function HAA(A,e,t){var r=YAA(A),i=r&&!yv(A);return(t?r:r&&A!==_bA&&A!==WbA&&A!==qbA&&A!==zbA&&A!==ZbA)&&A!==MAA&&!(e===hG&&!i)||YAA(e)&&!yv(e)&&A===MAA||e===hG&&i}function AvA(A){return Ay(A)&&A!==$AA&&!yv(A)&&A!==Fat&&A!==Lat&&A!==hG&&A!==_bA&&A!==WbA&&A!==qbA&&A!==zbA&&A!==ZbA&&A!==MAA&&A!==bat&&A!==kat&&A!==Dat&&A!==Gat&&A!==xat&&A!==Sat&&A!==vat&&A!==yat&&A!==wat&&A!==Rat&&A!==Nat}function evA(A){return!yv(A)&&A!==hG}function XD(A,e){var t=A.charCodeAt(e),r;if(t>=55296&&t<=56319&&e+1<A.length){if(r=A.charCodeAt(e+1),r>=56320&&r<=57343)return(t-55296)*1024+r-56320+65536}return t}function AeA(A){var e=/^\n* /;return e.test(A)}function uvA(A,e,t,r,i,u,a,n){var o,s=0,l=null,g=!1,C=!1,B=r!==-1,E=-1,d=AvA(XD(A,0))&&evA(XD(A,A.length-1));if(e||a)for(o=0;o<A.length;s>=65536?o+=2:o++){if(s=XD(A,o),!Ay(s))return jD;d=d&&HAA(s,l,n),l=s}else{for(o=0;o<A.length;s>=65536?o+=2:o++){if(s=XD(A,o),s===mv){if(g=!0,B)C=C||o-E-1>r&&A[E+1]!==" ",E=o}else if(!Ay(s))return jD;d=d&&HAA(s,l,n),l=s}C=C||B&&(o-E-1>r&&A[E+1]!==" ")}if(!g&&!C){if(d&&!a&&!i(A))return tvA;return u===Dv?jD:KAA}if(t>9&&AeA(A))return jD;if(!a)return C?ivA:rvA;return u===Dv?jD:KAA}function avA(A,e,t,r,i){A.dump=function(){if(e.length===0)return A.quotingType===Dv?'""':"''";if(!A.noCompatMode){if(Uat.indexOf(e)!==-1||Mat.test(e))return A.quotingType===Dv?'"'+e+'"':"'"+e+"'"}var u=A.indent*Math.max(1,t),a=A.lineWidth===-1?-1:Math.max(Math.min(A.lineWidth,40),A.lineWidth-u),n=r||A.flowLevel>-1&&t>=A.flowLevel;function o(s){return $bA(A,s)}switch(y(o,"testAmbiguity"),uvA(e,n,A.indent,a,o,A.quotingType,A.forceQuotes&&!r,i)){case tvA:return e;case KAA:return"'"+e.replace(/'/g,"''")+"'";case rvA:return"|"+JAA(e,A.indent)+OAA(TAA(e,u));case ivA:return">"+JAA(e,A.indent)+OAA(TAA(nvA(e,a),u));case jD:return'"'+ovA(e)+'"';default:throw new ul("impossible error: invalid scalar style")}}()}function JAA(A,e){var t=AeA(A)?String(e):"",r=A[A.length-1]===`
|
||
`,i=r&&(A[A.length-2]===`
|
||
`||A===`
|
||
`),u=i?"+":r?"":"-";return t+u+`
|
||
`}function OAA(A){return A[A.length-1]===`
|
||
`?A.slice(0,-1):A}function nvA(A,e){var t=/(\n+)([^\n]*)/g,r=function(){var s=A.indexOf(`
|
||
`);return s=s!==-1?s:A.length,t.lastIndex=s,PAA(A.slice(0,s),e)}(),i=A[0]===`
|
||
`||A[0]===" ",u,a;while(a=t.exec(A)){var n=a[1],o=a[2];u=o[0]===" ",r+=n+(!i&&!u&&o!==""?`
|
||
`:"")+PAA(o,e),i=u}return r}function PAA(A,e){if(A===""||A[0]===" ")return A;var t=/ [^ ]/g,r,i=0,u,a=0,n=0,o="";while(r=t.exec(A)){if(n=r.index,n-i>e)u=a>i?a:n,o+=`
|
||
`+A.slice(i,u),i=u+1;a=n}if(o+=`
|
||
`,A.length-i>e&&a>i)o+=A.slice(i,a)+`
|
||
`+A.slice(a+1);else o+=A.slice(i);return o.slice(1)}function ovA(A){var e="",t=0,r;for(var i=0;i<A.length;t>=65536?i+=2:i++)if(t=XD(A,i),r=U0[t],!r&&Ay(t)){if(e+=A[i],t>=65536)e+=A[i+1]}else e+=r||jbA(t);return e}function svA(A,e,t){var r="",i=A.tag,u,a,n;for(u=0,a=t.length;u<a;u+=1){if(n=t[u],A.replacer)n=A.replacer.call(t,String(u),n);if(cE(A,e,n,!1,!1)||typeof n>"u"&&cE(A,e,null,!1,!1)){if(r!=="")r+=","+(!A.condenseFlow?" ":"");r+=A.dump}}A.tag=i,A.dump="["+r+"]"}function _AA(A,e,t,r){var i="",u=A.tag,a,n,o;for(a=0,n=t.length;a<n;a+=1){if(o=t[a],A.replacer)o=A.replacer.call(t,String(a),o);if(cE(A,e+1,o,!0,!0,!1,!0)||typeof o>"u"&&cE(A,e+1,null,!0,!0,!1,!0)){if(!r||i!=="")i+=QG(A,e);if(A.dump&&mv===A.dump.charCodeAt(0))i+="-";else i+="- ";i+=A.dump}}A.tag=u,A.dump=i||"[]"}function lvA(A,e,t){var r="",i=A.tag,u=Object.keys(t),a,n,o,s,l;for(a=0,n=u.length;a<n;a+=1){if(l="",r!=="")l+=", ";if(A.condenseFlow)l+='"';if(o=u[a],s=t[o],A.replacer)s=A.replacer.call(t,o,s);if(!cE(A,e,o,!1,!1))continue;if(A.dump.length>1024)l+="? ";if(l+=A.dump+(A.condenseFlow?'"':"")+":"+(A.condenseFlow?"":" "),!cE(A,e,s,!1,!1))continue;l+=A.dump,r+=l}A.tag=i,A.dump="{"+r+"}"}function gvA(A,e,t,r){var i="",u=A.tag,a=Object.keys(t),n,o,s,l,g,C;if(A.sortKeys===!0)a.sort();else if(typeof A.sortKeys==="function")a.sort(A.sortKeys);else if(A.sortKeys)throw new ul("sortKeys must be a boolean or a function");for(n=0,o=a.length;n<o;n+=1){if(C="",!r||i!=="")C+=QG(A,e);if(s=a[n],l=t[s],A.replacer)l=A.replacer.call(t,s,l);if(!cE(A,e+1,s,!0,!0,!0))continue;if(g=A.tag!==null&&A.tag!=="?"||A.dump&&A.dump.length>1024,g)if(A.dump&&mv===A.dump.charCodeAt(0))C+="?";else C+="? ";if(C+=A.dump,g)C+=QG(A,e);if(!cE(A,e+1,l,!0,g))continue;if(A.dump&&mv===A.dump.charCodeAt(0))C+=":";else C+=": ";C+=A.dump,i+=C}A.tag=u,A.dump=i||"{}"}function WAA(A,e,t){var r,i,u,a,n,o;i=t?A.explicitTypes:A.implicitTypes;for(u=0,a=i.length;u<a;u+=1)if(n=i[u],(n.instanceOf||n.predicate)&&(!n.instanceOf||typeof e==="object"&&e instanceof n.instanceOf)&&(!n.predicate||n.predicate(e))){if(t)if(n.multi&&n.representName)A.tag=n.representName(e);else A.tag=n.tag;else A.tag="?";if(n.represent){if(o=A.styleMap[n.tag]||n.defaultStyle,ObA.call(n.represent)==="[object Function]")r=n.represent(e,o);else if(PbA.call(n.represent,o))r=n.represent[o](e,o);else throw new ul("!<"+n.tag+'> tag resolver accepts not "'+o+'" style');A.dump=r}return!0}return!1}function cE(A,e,t,r,i,u,a){if(A.tag=null,A.dump=t,!WAA(A,t,!1))WAA(A,t,!0);var n=ObA.call(A.dump),o=r,s;if(r)r=A.flowLevel<0||A.flowLevel>e;var l=n==="[object Object]"||n==="[object Array]",g,C;if(l)g=A.duplicates.indexOf(t),C=g!==-1;if(A.tag!==null&&A.tag!=="?"||C||A.indent!==2&&e>0)i=!1;if(C&&A.usedDuplicates[g])A.dump="*ref_"+g;else{if(l&&C&&!A.usedDuplicates[g])A.usedDuplicates[g]=!0;if(n==="[object Object]"){if(r&&Object.keys(A.dump).length!==0){if(gvA(A,e,A.dump,i),C)A.dump="&ref_"+g+A.dump}else if(lvA(A,e,A.dump),C)A.dump="&ref_"+g+" "+A.dump}else if(n==="[object Array]"){if(r&&A.dump.length!==0){if(A.noArrayIndent&&!a&&e>0)_AA(A,e-1,A.dump,i);else _AA(A,e,A.dump,i);if(C)A.dump="&ref_"+g+A.dump}else if(svA(A,e,A.dump),C)A.dump="&ref_"+g+" "+A.dump}else if(n==="[object String]"){if(A.tag!=="?")avA(A,A.dump,e,u,o)}else if(n==="[object Undefined]")return!1;else{if(A.skipInvalid)return!1;throw new ul("unacceptable kind of an object to dump "+n)}if(A.tag!==null&&A.tag!=="?"){if(s=encodeURI(A.tag[0]==="!"?A.tag.slice(1):A.tag).replace(/!/g,"%21"),A.tag[0]==="!")s="!"+s;else if(s.slice(0,18)==="tag:yaml.org,2002:")s="!!"+s.slice(18);else s="!<"+s+">";A.dump=s+" "+A.dump}}return!0}function cvA(A,e){var t=[],r=[],i,u;pG(A,t,r);for(i=0,u=r.length;i<u;i+=1)e.duplicates.push(t[r[i]]);e.usedDuplicates=Array(u)}function pG(A,e,t){var r,i,u;if(A!==null&&typeof A==="object")if(i=e.indexOf(A),i!==-1){if(t.indexOf(i)===-1)t.push(i)}else if(e.push(A),Array.isArray(A))for(i=0,u=A.length;i<u;i+=1)pG(A[i],e,t);else{r=Object.keys(A);for(i=0,u=r.length;i<u;i+=1)pG(A[r[i]],e,t)}}function CvA(A,e){e=e||{};var t=new XbA(e);if(!t.noRefs)cvA(A,t);var r=A;if(t.replacer)r=t.replacer.call({"":r},"",r);if(cE(t,0,r,!0,!0))return t.dump+`
|
||
`;return""}function DG(A,e){return function(){throw Error("Function yaml."+A+" is removed in js-yaml 4. Use yaml."+e+" instead, which is now safe by default.")}}var Mut,Tut,Yut,Hut,Kut,Jut,Ao,ul,Out,Put,_ut,G0,Wut,qut,zut,Zut,Vut,jut,Xut,$ut,Aat,eat,tat,ebA,rat,tbA,rbA,iat,uat,ZAA=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
||
\r`,aat,nat,oat,sat,lat,gat,cat,Cat,hbA,NQ,dG=1,QbA=2,pbA=3,IG=4,SAA=1,Bat=2,k5A=3,Eat,dat,Iat,fbA,mbA,vbA,kbA,If,F5A,hat,Qat,JbA,ObA,PbA,$AA=65279,pat=9,mv=10,fat=13,mat=32,Dat=33,yat=34,MAA=35,wat=37,bat=38,vat=39,kat=42,_bA=44,Fat=45,hG=58,xat=61,Sat=62,Lat=63,Rat=64,WbA=91,qbA=93,Nat=96,zbA=123,Gat=124,ZbA=125,U0,Uat,Mat,Tat=1,Dv=2,tvA=1,KAA=2,rvA=3,ivA=4,jD=5,Yat,Hat,GQ,UQ,Ivr,hvr,Qvr,pvr,fvr;var ff=P(()=>{Nt();y(qAA,"isNothing");y(x5A,"isObject");y(S5A,"toArray");y(L5A,"extend");y(R5A,"repeat");y(N5A,"isNegativeZero");Mut=qAA,Tut=x5A,Yut=S5A,Hut=R5A,Kut=N5A,Jut=L5A,Ao={isNothing:Mut,isObject:Tut,toArray:Yut,repeat:Hut,isNegativeZero:Kut,extend:Jut};y(zAA,"formatError");y($D,"YAMLException$1");$D.prototype=Object.create(Error.prototype);$D.prototype.constructor=$D;$D.prototype.toString=y(function(e){return this.name+": "+zAA(this,e)},"toString");ul=$D;y(CG,"getLine");y(BG,"padStart");y(G5A,"makeSnippet");Out=G5A,Put=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],_ut=["scalar","sequence","mapping"];y(U5A,"compileStyleAliases");y(M5A,"Type$1");G0=M5A;y(LAA,"compileList");y(T5A,"compileMap");y(EG,"Schema$1");EG.prototype.extend=y(function(e){var t=[],r=[];if(e instanceof G0)r.push(e);else if(Array.isArray(e))r=r.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit))){if(e.implicit)t=t.concat(e.implicit);if(e.explicit)r=r.concat(e.explicit)}else throw new ul("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");t.forEach(function(u){if(!(u instanceof G0))throw new ul("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(u.loadKind&&u.loadKind!=="scalar")throw new ul("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(u.multi)throw new ul("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(u){if(!(u instanceof G0))throw new ul("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(EG.prototype);return i.implicit=(this.implicit||[]).concat(t),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=LAA(i,"implicit"),i.compiledExplicit=LAA(i,"explicit"),i.compiledTypeMap=T5A(i.compiledImplicit,i.compiledExplicit),i},"extend");Wut=EG,qut=new G0("tag:yaml.org,2002:str",{kind:"scalar",construct:y(function(A){return A!==null?A:""},"construct")}),zut=new G0("tag:yaml.org,2002:seq",{kind:"sequence",construct:y(function(A){return A!==null?A:[]},"construct")}),Zut=new G0("tag:yaml.org,2002:map",{kind:"mapping",construct:y(function(A){return A!==null?A:{}},"construct")}),Vut=new Wut({explicit:[qut,zut,Zut]});y(Y5A,"resolveYamlNull");y(H5A,"constructYamlNull");y(K5A,"isNull");jut=new G0("tag:yaml.org,2002:null",{kind:"scalar",resolve:Y5A,construct:H5A,predicate:K5A,represent:{canonical:y(function(){return"~"},"canonical"),lowercase:y(function(){return"null"},"lowercase"),uppercase:y(function(){return"NULL"},"uppercase"),camelcase:y(function(){return"Null"},"camelcase"),empty:y(function(){return""},"empty")},defaultStyle:"lowercase"});y(J5A,"resolveYamlBoolean");y(O5A,"constructYamlBoolean");y(P5A,"isBoolean");Xut=new G0("tag:yaml.org,2002:bool",{kind:"scalar",resolve:J5A,construct:O5A,predicate:P5A,represent:{lowercase:y(function(A){return A?"true":"false"},"lowercase"),uppercase:y(function(A){return A?"TRUE":"FALSE"},"uppercase"),camelcase:y(function(A){return A?"True":"False"},"camelcase")},defaultStyle:"lowercase"});y(_5A,"isHexCode");y(W5A,"isOctCode");y(q5A,"isDecCode");y(z5A,"resolveYamlInteger");y(Z5A,"constructYamlInteger");y(V5A,"isInteger");$ut=new G0("tag:yaml.org,2002:int",{kind:"scalar",resolve:z5A,construct:Z5A,predicate:V5A,represent:{binary:y(function(A){return A>=0?"0b"+A.toString(2):"-0b"+A.toString(2).slice(1)},"binary"),octal:y(function(A){return A>=0?"0o"+A.toString(8):"-0o"+A.toString(8).slice(1)},"octal"),decimal:y(function(A){return A.toString(10)},"decimal"),hexadecimal:y(function(A){return A>=0?"0x"+A.toString(16).toUpperCase():"-0x"+A.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Aat=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");y(j5A,"resolveYamlFloat");y(X5A,"constructYamlFloat");eat=/^[-+]?[0-9]+e/;y($5A,"representYamlFloat");y(AbA,"isFloat");tat=new G0("tag:yaml.org,2002:float",{kind:"scalar",resolve:j5A,construct:X5A,predicate:AbA,represent:$5A,defaultStyle:"lowercase"}),ebA=Vut.extend({implicit:[jut,Xut,$ut,tat]}),rat=ebA,tbA=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),rbA=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");y(ibA,"resolveYamlTimestamp");y(ubA,"constructYamlTimestamp");y(abA,"representYamlTimestamp");iat=new G0("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:ibA,construct:ubA,instanceOf:Date,represent:abA});y(nbA,"resolveYamlMerge");uat=new G0("tag:yaml.org,2002:merge",{kind:"scalar",resolve:nbA});y(obA,"resolveYamlBinary");y(sbA,"constructYamlBinary");y(lbA,"representYamlBinary");y(gbA,"isBinary");aat=new G0("tag:yaml.org,2002:binary",{kind:"scalar",resolve:obA,construct:sbA,predicate:gbA,represent:lbA}),nat=Object.prototype.hasOwnProperty,oat=Object.prototype.toString;y(cbA,"resolveYamlOmap");y(CbA,"constructYamlOmap");sat=new G0("tag:yaml.org,2002:omap",{kind:"sequence",resolve:cbA,construct:CbA}),lat=Object.prototype.toString;y(BbA,"resolveYamlPairs");y(EbA,"constructYamlPairs");gat=new G0("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:BbA,construct:EbA}),cat=Object.prototype.hasOwnProperty;y(dbA,"resolveYamlSet");y(IbA,"constructYamlSet");Cat=new G0("tag:yaml.org,2002:set",{kind:"mapping",resolve:dbA,construct:IbA}),hbA=rat.extend({implicit:[iat,uat],explicit:[aat,sat,gat,Cat]}),NQ=Object.prototype.hasOwnProperty,Eat=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,dat=/[\x85\u2028\u2029]/,Iat=/[,\[\]\{\}]/,fbA=/^(?:!|!!|![a-z\-]+!)$/i,mbA=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;y(RAA,"_class");y(pC,"is_EOL");y(RQ,"is_WHITE_SPACE");y(Bs,"is_WS_OR_EOL");y(hf,"is_FLOW_INDICATOR");y(DbA,"fromHexCode");y(ybA,"escapedHexLen");y(wbA,"fromDecimalCode");y(NAA,"simpleEscapeSequence");y(bbA,"charFromCodepoint");y(VAA,"setProperty");vbA=Array(256),kbA=Array(256);for(If=0;If<256;If++)vbA[If]=NAA(If)?1:0,kbA[If]=NAA(If);y(FbA,"State$1");y(jAA,"generateError");y(Ar,"throwError");y(fv,"throwWarning");F5A={YAML:y(function(e,t,r){var i,u,a;if(e.version!==null)Ar(e,"duplication of %YAML directive");if(r.length!==1)Ar(e,"YAML directive accepts exactly one argument");if(i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null)Ar(e,"ill-formed argument of the YAML directive");if(u=parseInt(i[1],10),a=parseInt(i[2],10),u!==1)Ar(e,"unacceptable YAML version of the document");if(e.version=r[0],e.checkLineBreaks=a<2,a!==1&&a!==2)fv(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:y(function(e,t,r){var i,u;if(r.length!==2)Ar(e,"TAG directive accepts exactly two arguments");if(i=r[0],u=r[1],!fbA.test(i))Ar(e,"ill-formed tag handle (first argument) of the TAG directive");if(NQ.call(e.tagMap,i))Ar(e,'there is a previously declared suffix for "'+i+'" tag handle');if(!mbA.test(u))Ar(e,"ill-formed tag prefix (second argument) of the TAG directive");try{u=decodeURIComponent(u)}catch(a){Ar(e,"tag prefix is malformed: "+u)}e.tagMap[i]=u},"handleTagDirective")};y(QI,"captureSegment");y(GAA,"mergeMappings");y(Qf,"storeMappingPair");y(fG,"readLineBreak");y(Cn,"skipSeparationSpace");y(wv,"testDocumentSeparator");y(mG,"writeFoldedLines");y(xbA,"readPlainScalar");y(SbA,"readSingleQuotedScalar");y(LbA,"readDoubleQuotedScalar");y(RbA,"readFlowCollection");y(NbA,"readBlockScalar");y(UAA,"readBlockSequence");y(GbA,"readBlockMapping");y(UbA,"readTagProperty");y(MbA,"readAnchorProperty");y(TbA,"readAlias");y(pf,"composeNode");y(YbA,"readDocument");y(XAA,"loadDocuments");y(HbA,"loadAll$1");y(KbA,"load$1");hat=HbA,Qat=KbA,JbA={loadAll:hat,load:Qat},ObA=Object.prototype.toString,PbA=Object.prototype.hasOwnProperty,U0={};U0[0]="\\0";U0[7]="\\a";U0[8]="\\b";U0[9]="\\t";U0[10]="\\n";U0[11]="\\v";U0[12]="\\f";U0[13]="\\r";U0[27]="\\e";U0[34]="\\\"";U0[92]="\\\\";U0[133]="\\N";U0[160]="\\_";U0[8232]="\\L";U0[8233]="\\P";Uat=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],Mat=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;y(VbA,"compileStyleMap");y(jbA,"encodeHex");y(XbA,"State");y(TAA,"indentString");y(QG,"generateNextLine");y($bA,"testImplicitResolving");y(yv,"isWhitespace");y(Ay,"isPrintable");y(YAA,"isNsCharOrWhitespace");y(HAA,"isPlainSafe");y(AvA,"isPlainSafeFirst");y(evA,"isPlainSafeLast");y(XD,"codePointAt");y(AeA,"needIndentIndicator");y(uvA,"chooseScalarStyle");y(avA,"writeScalar");y(JAA,"blockHeader");y(OAA,"dropEndingNewline");y(nvA,"foldString");y(PAA,"foldLine");y(ovA,"escapeString");y(svA,"writeFlowSequence");y(_AA,"writeBlockSequence");y(lvA,"writeFlowMapping");y(gvA,"writeBlockMapping");y(WAA,"detectType");y(cE,"writeNode");y(cvA,"getDuplicateReferences");y(pG,"inspectNode");y(CvA,"dump$1");Yat=CvA,Hat={dump:Yat};y(DG,"renamed");GQ=ebA,UQ=JbA.load,Ivr=JbA.loadAll,hvr=Hat.dump,Qvr=DG("safeLoad","load"),pvr=DG("safeLoadAll","loadAll"),fvr=DG("safeDump","dump");/*! Bundled license information:
|
||
|
||
js-yaml/dist/js-yaml.mjs:
|
||
(*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT *)
|
||
*/});var BvA,mf,Kat,bv,bt,St,Jat;var e0=P(()=>{rr();Nt();BvA=y((A)=>{let{handDrawnSeed:e}=OA();return{fill:A,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:0.7,stroke:A,seed:e}},"solidStateFill"),mf=y((A)=>{let e=Kat([...A.cssCompiledStyles||[],...A.cssStyles||[],...A.labelStyle||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),Kat=y((A)=>{let e=new Map;return A.forEach((t)=>{let[r,i]=t.split(":");e.set(r.trim(),i?.trim())}),e},"styles2Map"),bv=y((A)=>A==="color"||A==="font-size"||A==="font-family"||A==="font-weight"||A==="font-style"||A==="text-decoration"||A==="text-align"||A==="text-transform"||A==="line-height"||A==="letter-spacing"||A==="word-spacing"||A==="text-shadow"||A==="text-overflow"||A==="white-space"||A==="word-wrap"||A==="word-break"||A==="overflow-wrap"||A==="hyphens","isLabelStyle"),bt=y((A)=>{let{stylesArray:e}=mf(A),t=[],r=[],i=[],u=[];return e.forEach((a)=>{let n=a[0];if(bv(n))t.push(a.join(":")+" !important");else{if(r.push(a.join(":")+" !important"),n.includes("stroke"))i.push(a.join(":")+" !important");if(n==="fill")u.push(a.join(":")+" !important")}}),{labelStyles:t.join(";"),nodeStyles:r.join(";"),stylesArray:e,borderStyles:i,backgroundStyles:u}},"styles2String"),St=y((A,e)=>{let{themeVariables:t,handDrawnSeed:r}=OA(),{nodeBorder:i,mainBkg:u}=t,{stylesMap:a}=mf(A);return Object.assign({roughness:0.7,fill:a.get("fill")||u,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:a.get("stroke")||i,seed:r,strokeWidth:a.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0],strokeLineDash:Jat(a.get("stroke-dasharray"))},e)},"userNodeOverrides"),Jat=y((A)=>{if(!A)return[0,0];let e=A.trim().split(/\s+/).map(Number);if(e.length===1){let i=isNaN(e[0])?0:e[0];return[i,i]}let t=isNaN(e[0])?0:e[0],r=isNaN(e[1])?0:e[1];return[t,r]},"getStrokeDashArray")});var IvA=wu(function(EvA){Object.defineProperty(EvA,"__esModule",{value:!0});EvA.BLANK_URL=EvA.relativeFirstCharacters=EvA.whitespaceEscapeCharsRegex=EvA.urlSchemeRegex=EvA.ctrlCharactersRegex=EvA.htmlCtrlEntityRegex=EvA.htmlEntitiesRegex=EvA.invalidProtocolRegex=void 0;EvA.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;EvA.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;EvA.htmlCtrlEntityRegex=/&(newline|tab);/gi;EvA.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;EvA.urlSchemeRegex=/^.+(:|:)/gim;EvA.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;EvA.relativeFirstCharacters=[".","/"];EvA.BLANK_URL="about:blank"});var ey=wu(function(QvA){Object.defineProperty(QvA,"__esModule",{value:!0});QvA.sanitizeUrl=$at;var M0=IvA();function Vat(A){return M0.relativeFirstCharacters.indexOf(A[0])>-1}function jat(A){var e=A.replace(M0.ctrlCharactersRegex,"");return e.replace(M0.htmlEntitiesRegex,function(t,r){return String.fromCharCode(r)})}function Xat(A){return URL.canParse(A)}function hvA(A){try{return decodeURIComponent(A)}catch(e){return A}}function $at(A){if(!A)return M0.BLANK_URL;var e,t=hvA(A.trim());do t=jat(t).replace(M0.htmlCtrlEntityRegex,"").replace(M0.ctrlCharactersRegex,"").replace(M0.whitespaceEscapeCharsRegex,"").trim(),t=hvA(t),e=t.match(M0.ctrlCharactersRegex)||t.match(M0.htmlEntitiesRegex)||t.match(M0.htmlCtrlEntityRegex)||t.match(M0.whitespaceEscapeCharsRegex);while(e&&e.length>0);var r=t;if(!r)return M0.BLANK_URL;if(Vat(r))return r;var i=r.trimStart(),u=i.match(M0.urlSchemeRegex);if(!u)return r;var a=u[0].toLowerCase().trim();if(M0.invalidProtocolRegex.test(a))return M0.BLANK_URL;var n=i.replace(/\\/g,"/");if(a==="mailto:"||a.includes("://"))return n;if(a==="http:"||a==="https:"){if(!Xat(n))return M0.BLANK_URL;var o=new URL(n);return o.protocol=o.protocol.toLowerCase(),o.hostname=o.hostname.toLowerCase(),o.toString()}return n}});function Df(A,e){if(typeof A!=="function"||e!=null&&typeof e!=="function")throw TypeError("Expected a function");let t=function(...r){let i=e?e.apply(this,r):r[0],u=t.cache;if(u.has(i))return u.get(i);let a=A.apply(this,r);return t.cache=u.set(i,a)||u,a};return t.cache=new(Df.Cache||Map),t}var pvA=P(()=>{Df.Cache=Map});function MQ(A){return A==null||typeof A!=="object"&&typeof A!=="function"}var vv=()=>{};function pI(A){if(A==null)return A===void 0?"[object Undefined]":"[object Null]";return Object.prototype.toString.call(A)}var kv=()=>{};var yG="[object RegExp]",ty="[object String]",ry="[object Number]",iy="[object Boolean]",uy="[object Arguments]",wG="[object Symbol]",bG="[object Date]",vG="[object Map]",kG="[object Set]",FG="[object Array]",xG="[object ArrayBuffer]",SG="[object Object]",LG="[object DataView]",RG="[object Uint8Array]",NG="[object Uint8ClampedArray]",GG="[object Uint16Array]",UG="[object Uint32Array]",MG="[object Int8Array]",TG="[object Int16Array]",YG="[object Int32Array]",HG="[object Float32Array]",KG="[object Float64Array]";var JG=()=>{};function fvA(A){return Array.isArray(A)}var mvA=()=>{};function ay(A){return ArrayBuffer.isView(A)&&!(A instanceof DataView)}var OG=()=>{};function TQ(A){return ay(A)}var PG=P(()=>{OG()});function teA(A){if(MQ(A))return A;let e=pI(A);if(!ent(A))return{};if(fvA(A)){let r=Array.from(A);if(A.length>0&&typeof A[0]==="string"&&Object.hasOwn(A,"index"))r.index=A.index,r.input=A.input;return r}if(TQ(A)){let r=A;return new r.constructor(r.buffer,r.byteOffset,r.length)}if(e==="[object ArrayBuffer]")return new ArrayBuffer(A.byteLength);if(e==="[object DataView]"){let r=A,{buffer:i,byteOffset:u,byteLength:a}=r,n=new ArrayBuffer(a),o=new Uint8Array(i,u,a);return new Uint8Array(n).set(o),new DataView(n)}if(e==="[object Boolean]"||e==="[object Number]"||e==="[object String]"){let i=new A.constructor(A.valueOf());if(e==="[object String]")rnt(i,A);else eeA(i,A);return i}if(e==="[object Date]")return new Date(Number(A));if(e==="[object RegExp]"){let r=A,i=new RegExp(r.source,r.flags);return i.lastIndex=r.lastIndex,i}if(e==="[object Symbol]")return Object(Symbol.prototype.valueOf.call(A));if(e==="[object Map]"){let r=A,i=new Map;return r.forEach((u,a)=>{i.set(a,u)}),i}if(e==="[object Set]"){let r=A,i=new Set;return r.forEach((u)=>{i.add(u)}),i}if(e==="[object Arguments]"){let r=A,i={};return eeA(i,r),i.length=r.length,i[Symbol.iterator]=r[Symbol.iterator],i}let t={};return int(t,A),eeA(t,A),tnt(t,A),t}function ent(A){switch(pI(A)){case uy:case FG:case xG:case LG:case iy:case bG:case HG:case KG:case MG:case TG:case YG:case vG:case ry:case SG:case yG:case kG:case ty:case wG:case RG:case NG:case GG:case UG:return!0;default:return!1}}function eeA(A,e){for(let t in e)if(Object.hasOwn(e,t))A[t]=e[t]}function tnt(A,e){let t=Object.getOwnPropertySymbols(e);for(let r=0;r<t.length;r++){let i=t[r];if(Object.prototype.propertyIsEnumerable.call(e,i))A[i]=e[i]}}function rnt(A,e){let t=e.valueOf().length;for(let r in e)if(Object.hasOwn(e,r)&&(Number.isNaN(Number(r))||Number(r)>=t))A[r]=e[r]}function int(A,e){let t=Object.getPrototypeOf(e);if(t!==null){if(typeof e.constructor==="function")Object.setPrototypeOf(A,t)}}var DvA=P(()=>{vv();kv();JG();mvA();PG()});function yvA(){}var wvA=()=>{};function bvA(A){if(MQ(A))return A;if(Array.isArray(A)||ay(A)||A instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&A instanceof SharedArrayBuffer)return A.slice(0);let e=Object.getPrototypeOf(A);if(e==null)return Object.assign(Object.create(e),A);let t=e.constructor;if(A instanceof Date||A instanceof Map||A instanceof Set)return new t(A);if(A instanceof RegExp){let r=new t(A);return r.lastIndex=A.lastIndex,r}if(A instanceof DataView)return new t(A.buffer.slice(0));if(A instanceof Error){let r;if(A instanceof AggregateError)r=new t(A.errors,A.message,{cause:A.cause});else r=new t(A.message,{cause:A.cause});return r.stack=A.stack,Object.assign(r,A),r}if(typeof File<"u"&&A instanceof File)return new t([A],A.name,{type:A.type,lastModified:A.lastModified});if(typeof A==="object")return Object.assign(Object.create(e),A);return A}var vvA=P(()=>{vv();OG()});function _G(A){return Object.getOwnPropertySymbols(A).filter((e)=>Object.prototype.propertyIsEnumerable.call(A,e))}var reA=()=>{};var ieA;var kvA=P(()=>{ieA=typeof globalThis==="object"&&globalThis||typeof window==="object"&&window||typeof self==="object"&&self||typeof global==="object"&&global||function(){return this}()});function ny(A){return typeof ieA.Buffer<"u"&&ieA.Buffer.isBuffer(A)}var WG=P(()=>{kvA()});function FvA(A){return A==="__proto__"}var xvA=()=>{};function qG(A){if(typeof A!=="object")return!1;if(A==null)return!1;if(Object.getPrototypeOf(A)===null)return!0;if(Object.prototype.toString.call(A)!=="[object Object]"){let t=A[Symbol.toStringTag];if(t==null)return!1;if(!Object.getOwnPropertyDescriptor(A,Symbol.toStringTag)?.writable)return!1;return A.toString()===`[object ${t}]`}let e=A;while(Object.getPrototypeOf(e)!==null)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(A)===e}var SvA=()=>{};function LvA(A,e){return oy(A,void 0,A,new Map,e)}function oy(A,e,t,r=new Map,i=void 0){let u=i?.(A,e,t,r);if(u!==void 0)return u;if(MQ(A))return A;if(r.has(A))return r.get(A);if(Array.isArray(A)){let a=Array(A.length);r.set(A,a);for(let n=0;n<A.length;n++)a[n]=oy(A[n],n,t,r,i);if(Object.hasOwn(A,"index"))a.index=A.index;if(Object.hasOwn(A,"input"))a.input=A.input;return a}if(A instanceof Date)return new Date(A.getTime());if(A instanceof RegExp){let a=new RegExp(A.source,A.flags);return a.lastIndex=A.lastIndex,a}if(A instanceof Map){let a=new Map;r.set(A,a);for(let[n,o]of A)a.set(n,oy(o,n,t,r,i));return a}if(A instanceof Set){let a=new Set;r.set(A,a);for(let n of A)a.add(oy(n,void 0,t,r,i));return a}if(ny(A))return A.subarray();if(ay(A)){let a=new(Object.getPrototypeOf(A)).constructor(A.length);r.set(A,a);for(let n=0;n<A.length;n++)a[n]=oy(A[n],n,t,r,i);return a}if(A instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&A instanceof SharedArrayBuffer)return A.slice(0);if(A instanceof DataView){let a=new DataView(A.buffer.slice(0),A.byteOffset,A.byteLength);return r.set(A,a),Xg(a,A,t,r,i),a}if(typeof File<"u"&&A instanceof File){let a=new File([A],A.name,{type:A.type});return r.set(A,a),Xg(a,A,t,r,i),a}if(typeof Blob<"u"&&A instanceof Blob){let a=new Blob([A],{type:A.type});return r.set(A,a),Xg(a,A,t,r,i),a}if(A instanceof Error){let a=structuredClone(A);return r.set(A,a),a.message=A.message,a.name=A.name,a.stack=A.stack,a.cause=A.cause,a.constructor=A.constructor,Xg(a,A,t,r,i),a}if(A instanceof Boolean){let a=new Boolean(A.valueOf());return r.set(A,a),Xg(a,A,t,r,i),a}if(A instanceof Number){let a=new Number(A.valueOf());return r.set(A,a),Xg(a,A,t,r,i),a}if(A instanceof String){let a=new String(A.valueOf());return r.set(A,a),Xg(a,A,t,r,i),a}if(typeof A==="object"&&unt(A)){let a=Object.create(Object.getPrototypeOf(A));return r.set(A,a),Xg(a,A,t,r,i),a}return A}function Xg(A,e,t=A,r,i){let u=[...Object.keys(e),..._G(e)];for(let a=0;a<u.length;a++){let n=u[a],o=Object.getOwnPropertyDescriptor(A,n);if(o==null||o.writable)A[n]=oy(e[n],n,t,r,i)}}function unt(A){switch(pI(A)){case uy:case FG:case xG:case LG:case iy:case bG:case HG:case KG:case MG:case TG:case YG:case vG:case ry:case SG:case yG:case kG:case ty:case wG:case RG:case NG:case GG:case UG:return!0;default:return!1}}var RvA=P(()=>{vv();OG();reA();kv();JG();WG()});function NvA(A,e){return LvA(A,(t,r,i,u)=>{let a=e?.(t,r,i,u);if(a!==void 0)return a;if(typeof A!=="object")return;if(pI(A)==="[object Object]"&&typeof A.constructor!=="function"){let n={};return u.set(A,n),Xg(n,A,i,u),n}switch(Object.prototype.toString.call(A)){case ry:case ty:case iy:{let n=new A.constructor(A?.valueOf());return Xg(n,A),n}case uy:{let n={};return Xg(n,A),n.length=A.length,n[Symbol.iterator]=A[Symbol.iterator],n}default:return}})}var GvA=P(()=>{kv();JG();RvA()});function ueA(A){return NvA(A)}var UvA=P(()=>{GvA()});function Fv(A){return A!==null&&typeof A==="object"&&pI(A)==="[object Arguments]"}var aeA=P(()=>{kv()});function xv(A){return typeof A==="object"&&A!==null}var neA=()=>{};function MvA(A){return Number.isSafeInteger(A)&&A>=0}var TvA=()=>{};function zG(A){return A!=null&&typeof A!=="function"&&MvA(A.length)}var oeA=P(()=>{TvA()});function YvA(A){return xv(A)&&zG(A)}var HvA=P(()=>{oeA();neA()});function KvA(A,...e){let t=e.slice(0,-1),r=e[e.length-1],i=A;for(let u=0;u<t.length;u++){let a=t[u];i=ZG(i,a,r,new Map)}return i}function ZG(A,e,t,r){if(MQ(A))A=Object(A);if(e==null||typeof e!=="object")return A;if(r.has(e))return bvA(r.get(e));if(r.set(e,A),Array.isArray(e)){e=e.slice();for(let u=0;u<e.length;u++)if(!(u in e))e[u]=void 0}let i=[...Object.keys(e),..._G(e)];for(let u=0;u<i.length;u++){let a=i[u];if(FvA(a))continue;let n=e[a],o=A[a];if(Fv(n))n={...n};if(Fv(o))o={...o};if(ny(n))n=ueA(n);if(Array.isArray(n))if(Array.isArray(o)){let l=[],g=Reflect.ownKeys(o);for(let C=0;C<g.length;C++){let B=g[C];l[B]=o[B]}o=l}else if(YvA(o)){let l=[];for(let g=0;g<o.length;g++)l[g]=o[g];o=l}else o=[];let s=t(o,n,a,A,e,r);if(s!==void 0)A[a]=s;else if(Array.isArray(n))A[a]=ZG(o,n,t,r);else if(xv(o)&&xv(n)&&(qG(o)||qG(n)||TQ(o)||TQ(n)))A[a]=ZG(o,n,t,r);else if(o==null&&qG(n))A[a]=ZG({},n,t,r);else if(o==null&&TQ(n))A[a]=ueA(n);else if(o===void 0||n!==void 0)A[a]=n}return A}var JvA=P(()=>{vv();vvA();reA();WG();xvA();SvA();UvA();aeA();neA();HvA();PG()});function seA(A,...e){return KvA(A,...e,yvA)}var OvA=P(()=>{wvA();JvA()});function PvA(A){let e=A?.constructor;return A===(typeof e==="function"?e.prototype:Object.prototype)}var _vA=()=>{};function VG(A){if(A==null)return!0;if(zG(A)){if(typeof A.splice!=="function"&&typeof A!=="string"&&!ny(A)&&!TQ(A)&&!Fv(A))return!1;return A.length===0}if(typeof A==="object"||typeof A==="function"){if(A instanceof Map||A instanceof Set)return A.size===0;let e=Object.keys(A);if(PvA(A))return e.filter((t)=>t!=="constructor").length===0;return e.length===0}return!0}var WvA=P(()=>{WG();oeA();aeA();_vA();PG()});var jG=P(()=>{pvA();DvA();OvA();WvA()});function $G(A,e){if(!A)return e;let t=`curve${A.charAt(0).toUpperCase()+A.slice(1)}`;return ant[t]??e}function XvA(A,e){let t=A.trim();if(!t)return;if(e.securityLevel!=="loose")return ZvA.sanitizeUrl(t);return t}function geA(A,e){if(!A||!e)return 0;return Math.sqrt(Math.pow(e.x-A.x,2)+Math.pow(e.y-A.y,2))}function $vA(A){let e,t=0;A.forEach((i)=>{t+=geA(i,e),e=i});let r=t/2;return ceA(A,r)}function AkA(A){if(A.length===1)return A[0];return $vA(A)}function ekA(A,e,t){let r=structuredClone(t);if(sA.info("our points",r),e!=="start_left"&&e!=="start_right")r.reverse();let i=25+A,u=ceA(r,i),a=10+A*0.5,n=Math.atan2(r[0].y-u.y,r[0].x-u.x),o={x:0,y:0};if(e==="start_left")o.x=Math.sin(n+Math.PI)*a+(r[0].x+u.x)/2,o.y=-Math.cos(n+Math.PI)*a+(r[0].y+u.y)/2;else if(e==="end_right")o.x=Math.sin(n-Math.PI)*a+(r[0].x+u.x)/2-5,o.y=-Math.cos(n-Math.PI)*a+(r[0].y+u.y)/2-5;else if(e==="end_left")o.x=Math.sin(n)*a+(r[0].x+u.x)/2-5,o.y=-Math.cos(n)*a+(r[0].y+u.y)/2-5;else o.x=Math.sin(n)*a+(r[0].x+u.x)/2,o.y=-Math.cos(n)*a+(r[0].y+u.y)/2;return o}function AU(A){let e="",t="";for(let r of A)if(r!==void 0)if(r.startsWith("color:")||r.startsWith("text-align:"))t=t+r+";";else e=e+r+";";return{style:e,labelStyle:t}}function tkA(A){let e="",t="0123456789abcdef",r=t.length;for(let i=0;i<A;i++)e+=t.charAt(Math.floor(Math.random()*r));return e}function Sv(A,e){return Lv(A,e).height}function t0(A,e){return Lv(A,e).width}function eU(A){return"str"in A}function si(A,e){return seA({},A,e)}function Ln(A){return A??null}function ikA(A,e){let t=Math.round(A.x),r=Math.round(A.y),i=e.replace(/(\d+\.\d+)/g,(u)=>Math.round(parseFloat(u)).toString());return i.includes(t.toString())||i.includes(r.toString())}var ZvA,leA="",ant,nnt,ont,VvA,jvA,snt,lnt,qvA,ceA,gnt,zvA=0,CeA,BeA,cnt,Cnt,yf,Bnt,Lv,Ent,XG,dnt,Int,al,Jt,rkA,ug,CE;var ai=P(()=>{rr();ir();Nt();Pr();jG();ZvA=yu(ey(),1),ant={curveBasis:QC,curveBasisClosed:iG,curveBasisOpen:uG,curveBumpX:sv,curveBumpY:lv,curveBundle:pAA,curveCardinalClosed:fAA,curveCardinalOpen:DAA,curveCardinal:Cv,curveCatmullRomClosed:wAA,curveCatmullRomOpen:bAA,curveCatmullRom:dv,curveLinear:gE,curveLinearClosed:lG,curveMonotoneX:Iv,curveMonotoneY:hv,curveNatural:ZD,curveStep:VD,curveStepAfter:pv,curveStepBefore:Qv},nnt=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,ont=y(function(A,e){let t=VvA(A,/(?:init\b)|(?:initialize\b)/),r={};if(Array.isArray(t)){let a=t.map((n)=>n.args);yb(a),r=Ea(r,[...a])}else r=t.args;if(!r)return;let i=vb(A,e),u="config";if(r[u]!==void 0){if(i==="flowchart-v2")i="flowchart";r[i]=r[u],delete r[u]}return r},"detectInit"),VvA=y(function(A,e=null){try{let t=new RegExp(`[%]{2}(?![{]${nnt.source})(?=[}][%]{2}).*
|
||
`,"ig");A=A.trim().replace(t,"").replace(/'/gm,'"'),sA.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${A}`);let r,i=[];while((r=mD.exec(A))!==null){if(r.index===mD.lastIndex)mD.lastIndex++;if(r&&!e||e&&r[1]?.match(e)||e&&r[2]?.match(e)){let u=r[1]?r[1]:r[2],a=r[3]?r[3].trim():r[4]?JSON.parse(r[4].trim()):null;i.push({type:u,args:a})}}if(i.length===0)return{type:A,args:null};return i.length===1?i[0]:i}catch(t){return sA.error(`ERROR: ${t.message} - Unable to parse directive type: '${e}' based on the text: '${A}'`),{type:void 0,args:null}}},"detectDirective"),jvA=y(function(A){return A.replace(mD,"")},"removeDirectives"),snt=y(function(A,e){for(let[t,r]of e.entries())if(r.match(A))return t;return-1},"isSubstringInArray");y($G,"interpolateToCurve");y(XvA,"formatUrl");lnt=y((A,...e)=>{let t=A.split("."),r=t.length-1,i=t[r],u=window;for(let a=0;a<r;a++)if(u=u[t[a]],!u){sA.error(`Function name: ${A} not found in window`);return}u[i](...e)},"runFunc");y(geA,"distance");y($vA,"traverseEdge");y(AkA,"calcLabelPosition");qvA=y((A,e=2)=>{let t=Math.pow(10,e);return Math.round(A*t)/t},"roundNumber"),ceA=y((A,e)=>{let t=void 0,r=e;for(let i of A){if(t){let u=geA(i,t);if(u===0)return t;if(u<r)r-=u;else{let a=r/u;if(a<=0)return t;if(a>=1)return{x:i.x,y:i.y};if(a>0&&a<1)return{x:qvA((1-a)*t.x+a*i.x,5),y:qvA((1-a)*t.y+a*i.y,5)}}}t=i}throw Error("Could not find a suitable point for the given distance")},"calculatePoint"),gnt=y((A,e,t)=>{if(sA.info(`our points ${JSON.stringify(e)}`),e[0]!==t)e=e.reverse();let i=ceA(e,25),u=A?10:5,a=Math.atan2(e[0].y-i.y,e[0].x-i.x),n={x:0,y:0};return n.x=Math.sin(a)*u+(e[0].x+i.x)/2,n.y=-Math.cos(a)*u+(e[0].y+i.y)/2,n},"calcCardinalityPosition");y(ekA,"calcTerminalLabelPosition");y(AU,"getStylesFromArray");CeA=y(()=>(zvA++,"id-"+Math.random().toString(36).substr(2,12)+"-"+zvA),"generateId");y(tkA,"makeRandomHex");BeA=y((A)=>tkA(A.length),"random"),cnt=y(function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},"getTextObj"),Cnt=y(function(A,e){let t=e.text.replace(_e.lineBreakRegex," "),[,r]=al(e.fontSize),i=A.append("text");if(i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",r),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0)i.attr("class",e.class);let u=i.append("tspan");return u.attr("x",e.x+e.textMargin*2),u.attr("fill",e.fill),u.text(t),i},"drawSimpleText"),yf=Df((A,e,t)=>{if(!A)return A;if(t=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},t),_e.lineBreakRegex.test(A))return A;let r=A.split(" ").filter(Boolean),i=[],u="";return r.forEach((a,n)=>{let o=t0(`${a} `,t),s=t0(u,t);if(o>e){let{hyphenatedStrings:C,remainingWord:B}=Bnt(a,e,"-",t);i.push(u,...C),u=B}else if(s+o>=e)i.push(u),u=a;else u=[u,a].filter(Boolean).join(" ");if(n+1===r.length)i.push(u)}),i.filter((a)=>a!=="").join(t.joinWith)},(A,e,t)=>`${A}${e}${t.fontSize}${t.fontWeight}${t.fontFamily}${t.joinWith}`),Bnt=Df((A,e,t="-",r)=>{r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},r);let i=[...A],u=[],a="";return i.forEach((n,o)=>{let s=`${a}${n}`;if(t0(s,r)>=e){let g=o+1,C=i.length===g,B=`${s}${t}`;u.push(C?s:B),a=""}else a=s}),{hyphenatedStrings:u,remainingWord:a}},(A,e,t="-",r)=>`${A}${e}${t}${r.fontSize}${r.fontWeight}${r.fontFamily}`);y(Sv,"calculateTextHeight");y(t0,"calculateTextWidth");Lv=Df((A,e)=>{let{fontSize:t=12,fontFamily:r="Arial",fontWeight:i=400}=e;if(!A)return{width:0,height:0};let[,u]=al(t),a=["sans-serif",r],n=A.split(_e.lineBreakRegex),o=[],s=Qe("body");if(!s.remove)return{width:0,height:0,lineHeight:0};let l=s.append("svg");for(let C of a){let B=0,E={width:0,height:0,lineHeight:0};for(let d of n){let I=cnt();I.text=d||leA;let h=Cnt(l,I).style("font-size",u).style("font-weight",i).style("font-family",C),Q=(h._groups||h)[0][0].getBBox();if(Q.width===0&&Q.height===0)throw Error("svg element not in render tree");E.width=Math.round(Math.max(E.width,Q.width)),B=Math.round(Q.height),E.height+=B,E.lineHeight=Math.round(Math.max(E.lineHeight,B))}o.push(E)}l.remove();let g=isNaN(o[1].height)||isNaN(o[1].width)||isNaN(o[1].lineHeight)||o[0].height>o[1].height&&o[0].width>o[1].width&&o[0].lineHeight>o[1].lineHeight?0:1;return o[g]},(A,e)=>`${A}${e.fontSize}${e.fontWeight}${e.fontFamily}`),Ent=class{constructor(A=!1,e){this.count=0,this.count=e?e.length:0,this.next=A?()=>this.count++:()=>Date.now()}static{y(this,"InitIDGenerator")}},dnt=y(function(A){return XG=XG||document.createElement("div"),A=escape(A).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),XG.innerHTML=A,unescape(XG.textContent)},"entityDecode");y(eU,"isDetailedError");Int=y((A,e,t,r)=>{if(!r)return;let i=A.node()?.getBBox();if(!i)return;A.append("text").text(r).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-t).attr("class",e)},"insertTitle"),al=y((A)=>{if(typeof A==="number")return[A,A+"px"];let e=parseInt(A??"",10);if(Number.isNaN(e))return[void 0,void 0];else if(A===String(e))return[e,A+"px"];else return[e,A]},"parseFontSize");y(si,"cleanAndMerge");Jt={assignWithDepth:Ea,wrapLabel:yf,calculateTextHeight:Sv,calculateTextWidth:t0,calculateTextDimensions:Lv,cleanAndMerge:si,detectInit:ont,detectDirective:VvA,isSubstringInArray:snt,interpolateToCurve:$G,calcLabelPosition:AkA,calcCardinalityPosition:gnt,calcTerminalLabelPosition:ekA,formatUrl:XvA,getStylesFromArray:AU,generateId:CeA,random:BeA,runFunc:lnt,entityDecode:dnt,insertTitle:Int,isLabelCoordinateInPath:ikA,parseFontSize:al,InitIDGenerator:Ent},rkA=y(function(A){let e=A;return e=e.replace(/style.*:\S*#.*;/g,function(t){return t.substring(0,t.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(t){return t.substring(0,t.length-1)}),e=e.replace(/#\w+;/g,function(t){let r=t.substring(1,t.length-1);if(/^\+?\d+$/.test(r))return"fl°°"+r+"¶ß";else return"fl°"+r+"¶ß"}),e},"encodeEntities"),ug=y(function(A){return A.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),CE=y((A,e,{counter:t=0,prefix:r,suffix:i},u)=>{if(u)return u;return`${r?`${r}_`:""}${A}_${e}_${t}${i?`_${i}`:""}`},"getEdgeId");y(Ln,"handleUndefinedAttr");y(ikA,"isLabelCoordinateInPath")});async function Rv(A,e){let t=A.getElementsByTagName("img");if(!t||t.length===0)return;let r=e.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...t].map((i)=>new Promise((u)=>{function a(){if(i.style.display="flex",i.style.flexDirection="column",r){let n=OA().fontSize?OA().fontSize:window.getComputedStyle(document.body).fontSize,o=5,[s=ur.fontSize]=al(n),l=s*5+"px";i.style.minWidth=l,i.style.maxWidth=l}else i.style.width="100%";u(i)}y(a,"setupImage"),setTimeout(()=>{if(i.complete)a()}),i.addEventListener("error",a),i.addEventListener("load",a)})))}var fC;var r0=P(()=>{ai();rr();Nt();fC=y(({flowchart:A})=>{let e=A?.subGraphTitleMargin?.top??0,t=A?.subGraphTitleMargin?.bottom??0,r=e+t;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:t,subGraphTitleTotalMargin:r}},"getSubGraphTitleMargins");y(Rv,"configureLabelImages")});var EeA=(A,e,t,r="")=>{let i=A.split(":");if(A.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;r=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let n=i.pop(),o=i.pop(),s={provider:i.length>0?i[0]:r,prefix:o,name:n};return e&&!tU(s)?null:s}let u=i[0],a=u.split("-");if(a.length>1){let n={provider:r,prefix:a.shift(),name:a.join("-")};return e&&!tU(n)?null:n}if(t&&r===""){let n={provider:r,prefix:"",name:u};return e&&!tU(n,t)?null:n}return null},tU=(A,e)=>{if(!A)return!1;return!!((e&&A.prefix===""||!!A.prefix)&&!!A.name)};var ukA=()=>{};var hnt,sy,deA,akA;var rU=P(()=>{hnt=Object.freeze({left:0,top:0,width:16,height:16}),sy=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),deA=Object.freeze({...hnt,...sy}),akA=Object.freeze({...deA,body:"",hidden:!1})});function nkA(A,e){let t={};if(!A.hFlip!==!e.hFlip)t.hFlip=!0;if(!A.vFlip!==!e.vFlip)t.vFlip=!0;let r=((A.rotate||0)+(e.rotate||0))%4;if(r)t.rotate=r;return t}var okA=()=>{};function IeA(A,e){let t=nkA(A,e);for(let r in akA)if(r in sy){if(r in A&&!(r in t))t[r]=sy[r]}else if(r in e)t[r]=e[r];else if(r in A)t[r]=A[r];return t}var skA=P(()=>{rU();okA()});function lkA(A,e){let t=A.icons,r=A.aliases||Object.create(null),i=Object.create(null);function u(a){if(t[a])return i[a]=[];if(!(a in i)){i[a]=null;let n=r[a]&&r[a].parent,o=n&&u(n);if(o)i[a]=[n].concat(o)}return i[a]}return(e||Object.keys(t).concat(Object.keys(r))).forEach(u),i}var gkA=()=>{};function ckA(A,e,t){let r=A.icons,i=A.aliases||Object.create(null),u={};function a(n){u=IeA(r[n]||i[n],u)}return a(e),t.forEach(a),IeA(A,u)}function heA(A,e){if(A.icons[e])return ckA(A,e,[]);let t=lkA(A,[e])[e];return t?ckA(A,e,t):null}var CkA=P(()=>{skA();gkA()});var Qnt,BkA;var EkA=P(()=>{rU();Qnt=Object.freeze({width:null,height:null}),BkA=Object.freeze({...Qnt,...sy})});function QeA(A,e,t){if(e===1)return A;if(t=t||100,typeof A==="number")return Math.ceil(A*e*t)/t;if(typeof A!=="string")return A;let r=A.split(pnt);if(r===null||!r.length)return A;let i=[],u=r.shift(),a=fnt.test(u);while(!0){if(a){let n=parseFloat(u);if(isNaN(n))i.push(u);else i.push(Math.ceil(n*e*t)/t)}else i.push(u);if(u=r.shift(),u===void 0)return i.join("");a=!a}}var pnt,fnt;var dkA=P(()=>{pnt=/(-?[0-9.]*[0-9]+[0-9.]*)/g,fnt=/^-?[0-9.]*[0-9]+[0-9.]*$/g});function mnt(A,e="defs"){let t="",r=A.indexOf("<"+e);while(r>=0){let i=A.indexOf(">",r),u=A.indexOf("</"+e);if(i===-1||u===-1)break;let a=A.indexOf(">",u);if(a===-1)break;t+=A.slice(i+1,u).trim(),A=A.slice(0,r).trim()+A.slice(a+1)}return{defs:t,content:A}}function Dnt(A,e){return A?"<defs>"+A+"</defs>"+e:e}function IkA(A,e,t){let r=mnt(A);return Dnt(r.defs,e+r.content+t)}var hkA=()=>{};function peA(A,e){let t={...deA,...A},r={...BkA,...e},i={left:t.left,top:t.top,width:t.width,height:t.height},u=t.body;[t,r].forEach((d)=>{let I=[],{hFlip:h,vFlip:Q,rotate:p}=d;if(h)if(Q)p+=2;else I.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),I.push("scale(-1 1)"),i.top=i.left=0;else if(Q)I.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),I.push("scale(1 -1)"),i.top=i.left=0;let m;if(p<0)p-=Math.floor(p/4)*4;switch(p=p%4,p){case 1:m=i.height/2+i.top,I.unshift("rotate(90 "+m.toString()+" "+m.toString()+")");break;case 2:I.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:m=i.width/2+i.left,I.unshift("rotate(-90 "+m.toString()+" "+m.toString()+")");break}if(p%2===1){if(i.left!==i.top)m=i.left,i.left=i.top,i.top=m;if(i.width!==i.height)m=i.width,i.width=i.height,i.height=m}if(I.length)u=IkA(u,'<g transform="'+I.join(" ")+'">',"</g>")});let{width:a,height:n}=r,{width:o,height:s}=i,l,g;if(a===null)g=n===null?"1em":n==="auto"?s:n,l=QeA(g,o/s);else l=a==="auto"?o:a,g=n===null?QeA(l,s/o):n==="auto"?s:n;let C={},B=(d,I)=>{if(!ynt(I))C[d]=I.toString()};B("width",l),B("height",g);let E=[i.left,i.top,o,s];return C.viewBox=E.join(" "),{attributes:C,viewBox:E,body:u}}var ynt=(A)=>A==="unset"||A==="undefined"||A==="none";var QkA=P(()=>{rU();EkA();dkA();hkA()});function bnt(A){A=A.replace(/[0-9]+$/,"")||"a";let e=pkA.get(A)||0;return pkA.set(A,e+1),e?`${A}${e}`:A}function feA(A){let e=[],t;while(t=wnt.exec(A))e.push(t[1]);if(!e.length)return A;let r="suffix"+(Math.random()*16777216|Date.now()).toString(16);return e.forEach((i)=>{let u=bnt(i),a=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");A=A.replace(new RegExp('([#;"])('+a+')([")]|\\.[a-z])',"g"),"$1"+u+r+"$3")}),A=A.replace(new RegExp(r,"g"),""),A}var wnt,pkA;var fkA=P(()=>{wnt=/\sid="(\S+)"/g,pkA=new Map});function meA(A,e){let t=A.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let r in e)t+=" "+r+'="'+e[r]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+t+">"+A+"</svg>"}var mkA=()=>{};var DkA=P(()=>{ukA();CkA();QkA();fkA();mkA()});var yeA,DeA,ykA,ly,wkA,bkA,ag;var Rn=P(()=>{rr();ir();Nt();DkA();yeA={body:'<g><rect width="80" height="80" style="fill: #087ebf; stroke-width: 0px;"/><text transform="translate(21.16 64.67)" style="fill: #fff; font-family: ArialMT, Arial; font-size: 67.75px;"><tspan x="0" y="0">?</tspan></text></g>',height:80,width:80},DeA=new Map,ykA=new Map,ly=y((A)=>{for(let e of A){if(!e.name)throw Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(sA.debug("Registering icon pack:",e.name),"loader"in e)ykA.set(e.name,e.loader);else if("icons"in e)DeA.set(e.name,e.icons);else throw sA.error("Invalid icon loader:",e),Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),wkA=y(async(A,e)=>{let t=EeA(A,!0,e!==void 0);if(!t)throw Error(`Invalid icon name: ${A}`);let r=t.prefix||e;if(!r)throw Error(`Icon name must contain a prefix: ${A}`);let i=DeA.get(r);if(!i){let a=ykA.get(r);if(!a)throw Error(`Icon set not found: ${t.prefix}`);try{i={...await a(),prefix:r},DeA.set(r,i)}catch(n){throw sA.error(n),Error(`Failed to load icon set: ${t.prefix}`)}}let u=heA(i,t.name);if(!u)throw Error(`Icon not found: ${A}`);return u},"getRegisteredIconData"),bkA=y(async(A)=>{try{return await wkA(A),!0}catch{return!1}},"isIconAvailable"),ag=y(async(A,e,t)=>{let r;try{r=await wkA(A,e?.fallbackPrefix)}catch(a){sA.error(a),r=yeA}let i=peA(r,e),u=meA(feA(i.body),{...i.attributes,...t});return or(u,st())},"getIconSVG")});function beA(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function RkA(A){bf=A}function Zi(A,e=""){let t=typeof A=="string"?A:A.source,r={replace:(i,u)=>{let a=typeof u=="string"?u:u.source;return a=a.replace(Es.caret,"$1"),t=t.replace(i,a),r},getRegex:()=>new RegExp(t,e)};return r}function BE(A,e){if(e){if(Es.escapeTest.test(A))return A.replace(Es.escapeReplace,FkA)}else if(Es.escapeTestNoEncode.test(A))return A.replace(Es.escapeReplaceNoEncode,FkA);return A}function xkA(A){try{A=encodeURI(A).replace(Es.percentDecode,"%")}catch{return null}return A}function SkA(A,e){let t=A.replace(Es.findPipe,(u,a,n)=>{let o=!1,s=a;for(;--s>=0&&n[s]==="\\";)o=!o;return o?"|":" |"}),r=t.split(Es.splitPipe),i=0;if(r[0].trim()||r.shift(),r.length>0&&!r.at(-1)?.trim()&&r.pop(),e)if(r.length>e)r.splice(e);else for(;r.length<e;)r.push("");for(;i<r.length;i++)r[i]=r[i].trim().replace(Es.slashPipe,"|");return r}function Gv(A,e,t){let r=A.length;if(r===0)return"";let i=0;for(;i<r;){let u=A.charAt(r-i-1);if(u===e&&!t)i++;else if(u!==e&&t)i++;else break}return A.slice(0,r-i)}function not(A,e){if(A.indexOf(e[1])===-1)return-1;let t=0;for(let r=0;r<A.length;r++)if(A[r]==="\\")r++;else if(A[r]===e[0])t++;else if(A[r]===e[1]&&(t--,t<0))return r;return t>0?-2:-1}function LkA(A,e,t,r,i){let u=e.href,a=e.title||null,n=A[1].replace(i.other.outputLinkReplace,"$1");r.state.inLink=!0;let o={type:A[0].charAt(0)==="!"?"image":"link",raw:t,href:u,title:a,text:n,tokens:r.inlineTokens(n)};return r.state.inLink=!1,o}function oot(A,e,t){let r=A.match(t.other.indentCodeCompensation);if(r===null)return e;let i=r[1];return e.split(`
|
||
`).map((u)=>{let a=u.match(t.other.beginningSpace);if(a===null)return u;let[n]=a;return n.length>=i.length?u.slice(i.length):u}).join(`
|
||
`)}function ou(A,e){return wf.parse(A,e)}var bf,Mv,vnt,Es,knt,Fnt,xnt,Tv,Snt,veA,NkA,GkA,Lnt,keA,Rnt,FeA,Nnt,Gnt,oU="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",xeA,Unt,UkA,Mnt,SeA,vkA,Tnt,Ynt,Hnt,Knt,MkA,Jnt,sU,LeA,TkA,Ont,YkA,Pnt,_nt,Wnt,HkA,qnt,znt,KkA="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Znt,Vnt,jnt,Xnt,$nt,Aot,eot,uU,tot,JkA,OkA,rot,kkA,ReA,iot,weA,uot,iU,Nv,aot,FkA=(A)=>aot[A],aU=class{options;rules;lexer;constructor(A){this.options=A||bf}space(A){let e=this.rules.block.newline.exec(A);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(A){let e=this.rules.block.code.exec(A);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:Gv(t,`
|
||
`)}}}fences(A){let e=this.rules.block.fences.exec(A);if(e){let t=e[0],r=oot(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:r}}}heading(A){let e=this.rules.block.heading.exec(A);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let r=Gv(t,"#");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(t=r.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(A){let e=this.rules.block.hr.exec(A);if(e)return{type:"hr",raw:Gv(e[0],`
|
||
`)}}blockquote(A){let e=this.rules.block.blockquote.exec(A);if(e){let t=Gv(e[0],`
|
||
`).split(`
|
||
`),r="",i="",u=[];for(;t.length>0;){let a=!1,n=[],o;for(o=0;o<t.length;o++)if(this.rules.other.blockquoteStart.test(t[o]))n.push(t[o]),a=!0;else if(!a)n.push(t[o]);else break;t=t.slice(o);let s=n.join(`
|
||
`),l=s.replace(this.rules.other.blockquoteSetextReplace,`
|
||
$1`).replace(this.rules.other.blockquoteSetextReplace2,"");r=r?`${r}
|
||
${s}`:s,i=i?`${i}
|
||
${l}`:l;let g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(l,u,!0),this.lexer.state.top=g,t.length===0)break;let C=u.at(-1);if(C?.type==="code")break;if(C?.type==="blockquote"){let B=C,E=B.raw+`
|
||
`+t.join(`
|
||
`),d=this.blockquote(E);u[u.length-1]=d,r=r.substring(0,r.length-B.raw.length)+d.raw,i=i.substring(0,i.length-B.text.length)+d.text;break}else if(C?.type==="list"){let B=C,E=B.raw+`
|
||
`+t.join(`
|
||
`),d=this.list(E);u[u.length-1]=d,r=r.substring(0,r.length-C.raw.length)+d.raw,i=i.substring(0,i.length-B.raw.length)+d.raw,t=E.substring(u.at(-1).raw.length).split(`
|
||
`);continue}}return{type:"blockquote",raw:r,tokens:u,text:i}}}list(A){let e=this.rules.block.list.exec(A);if(e){let t=e[1].trim(),r=t.length>1,i={type:"list",raw:"",ordered:r,start:r?+t.slice(0,-1):"",loose:!1,items:[]};t=r?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=r?t:"[*+-]");let u=this.rules.other.listItemRegex(t),a=!1;for(;A;){let o=!1,s="",l="";if(!(e=u.exec(A))||this.rules.block.hr.test(A))break;s=e[0],A=A.substring(s.length);let g=e[2].split(`
|
||
`,1)[0].replace(this.rules.other.listReplaceTabs,(h)=>" ".repeat(3*h.length)),C=A.split(`
|
||
`,1)[0],B=!g.trim(),E=0;if(this.options.pedantic?(E=2,l=g.trimStart()):B?E=e[1].length+1:(E=e[2].search(this.rules.other.nonSpaceChar),E=E>4?1:E,l=g.slice(E),E+=e[1].length),B&&this.rules.other.blankLine.test(C)&&(s+=C+`
|
||
`,A=A.substring(C.length+1),o=!0),!o){let h=this.rules.other.nextBulletRegex(E),Q=this.rules.other.hrRegex(E),p=this.rules.other.fencesBeginRegex(E),m=this.rules.other.headingBeginRegex(E),f=this.rules.other.htmlBeginRegex(E);for(;A;){let D=A.split(`
|
||
`,1)[0],w;if(C=D,this.options.pedantic?(C=C.replace(this.rules.other.listReplaceNesting," "),w=C):w=C.replace(this.rules.other.tabCharGlobal," "),p.test(C)||m.test(C)||f.test(C)||h.test(C)||Q.test(C))break;if(w.search(this.rules.other.nonSpaceChar)>=E||!C.trim())l+=`
|
||
`+w.slice(E);else{if(B||g.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||p.test(g)||m.test(g)||Q.test(g))break;l+=`
|
||
`+C}!B&&!C.trim()&&(B=!0),s+=D+`
|
||
`,A=A.substring(D.length+1),g=w.slice(E)}}i.loose||(a?i.loose=!0:this.rules.other.doubleBlankLine.test(s)&&(a=!0));let d=null,I;this.options.gfm&&(d=this.rules.other.listIsTask.exec(l),d&&(I=d[0]!=="[ ] ",l=l.replace(this.rules.other.listReplaceTask,""))),i.items.push({type:"list_item",raw:s,task:!!d,checked:I,loose:!1,text:l,tokens:[]}),i.raw+=s}let n=i.items.at(-1);if(n)n.raw=n.raw.trimEnd(),n.text=n.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let o=0;o<i.items.length;o++)if(this.lexer.state.top=!1,i.items[o].tokens=this.lexer.blockTokens(i.items[o].text,[]),!i.loose){let s=i.items[o].tokens.filter((g)=>g.type==="space"),l=s.length>0&&s.some((g)=>this.rules.other.anyLine.test(g.raw));i.loose=l}if(i.loose)for(let o=0;o<i.items.length;o++)i.items[o].loose=!0;return i}}html(A){let e=this.rules.block.html.exec(A);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(A){let e=this.rules.block.def.exec(A);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),r=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:r,title:i}}}table(A){let e=this.rules.block.table.exec(A);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=SkA(e[1]),r=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
|
||
`):[],u={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===r.length){for(let a of r)this.rules.other.tableAlignRight.test(a)?u.align.push("right"):this.rules.other.tableAlignCenter.test(a)?u.align.push("center"):this.rules.other.tableAlignLeft.test(a)?u.align.push("left"):u.align.push(null);for(let a=0;a<t.length;a++)u.header.push({text:t[a],tokens:this.lexer.inline(t[a]),header:!0,align:u.align[a]});for(let a of i)u.rows.push(SkA(a,u.header.length).map((n,o)=>({text:n,tokens:this.lexer.inline(n),header:!1,align:u.align[o]})));return u}}lheading(A){let e=this.rules.block.lheading.exec(A);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(A){let e=this.rules.block.paragraph.exec(A);if(e){let t=e[1].charAt(e[1].length-1)===`
|
||
`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(A){let e=this.rules.block.text.exec(A);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(A){let e=this.rules.inline.escape.exec(A);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(A){let e=this.rules.inline.tag.exec(A);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(A){let e=this.rules.inline.link.exec(A);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let u=Gv(t.slice(0,-1),"\\");if((t.length-u.length)%2===0)return}else{let u=not(e[2],"()");if(u===-2)return;if(u>-1){let a=(e[0].indexOf("!")===0?5:4)+e[1].length+u;e[2]=e[2].substring(0,u),e[0]=e[0].substring(0,a).trim(),e[3]=""}}let r=e[2],i="";if(this.options.pedantic){let u=this.rules.other.pedanticHrefTitle.exec(r);u&&(r=u[1],i=u[3])}else i=e[3]?e[3].slice(1,-1):"";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?r=r.slice(1):r=r.slice(1,-1)),LkA(e,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(A,e){let t;if((t=this.rules.inline.reflink.exec(A))||(t=this.rules.inline.nolink.exec(A))){let r=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[r.toLowerCase()];if(!i){let u=t[0].charAt(0);return{type:"text",raw:u,text:u}}return LkA(t,i,t[0],this.lexer,this.rules)}}emStrong(A,e,t=""){let r=this.rules.inline.emStrongLDelim.exec(A);if(!r||r[3]&&t.match(this.rules.other.unicodeAlphaNumeric))return;if(!(r[1]||r[2])||!t||this.rules.inline.punctuation.exec(t)){let i=[...r[0]].length-1,u,a,n=i,o=0,s=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(s.lastIndex=0,e=e.slice(-1*A.length+i);(r=s.exec(e))!=null;){if(u=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!u)continue;if(a=[...u].length,r[3]||r[4]){n+=a;continue}else if((r[5]||r[6])&&i%3&&!((i+a)%3)){o+=a;continue}if(n-=a,n>0)continue;a=Math.min(a,a+n+o);let l=[...r[0]][0].length,g=A.slice(0,i+r.index+l+a);if(Math.min(i,a)%2){let B=g.slice(1,-1);return{type:"em",raw:g,text:B,tokens:this.lexer.inlineTokens(B)}}let C=g.slice(2,-2);return{type:"strong",raw:g,text:C,tokens:this.lexer.inlineTokens(C)}}}}codespan(A){let e=this.rules.inline.code.exec(A);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),r=this.rules.other.nonSpaceChar.test(t),i=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return r&&i&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(A){let e=this.rules.inline.br.exec(A);if(e)return{type:"br",raw:e[0]}}del(A){let e=this.rules.inline.del.exec(A);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(A){let e=this.rules.inline.autolink.exec(A);if(e){let t,r;return e[2]==="@"?(t=e[1],r="mailto:"+t):(t=e[1],r=t),{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}url(A){let e;if(e=this.rules.inline.url.exec(A)){let t,r;if(e[2]==="@")t=e[0],r="mailto:"+t;else{let i;do i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(i!==e[0]);t=e[0],e[1]==="www."?r="http://"+e[0]:r=e[0]}return{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(A){let e=this.rules.inline.text.exec(A);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},mC=class A{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||bf,this.options.tokenizer=this.options.tokenizer||new aU,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:Es,block:iU.normal,inline:Nv.normal};this.options.pedantic?(t.block=iU.pedantic,t.inline=Nv.pedantic):this.options.gfm&&(t.block=iU.gfm,this.options.breaks?t.inline=Nv.breaks:t.inline=Nv.gfm),this.tokenizer.rules=t}static get rules(){return{block:iU,inline:Nv}}static lex(e,t){return new A(t).lex(e)}static lexInline(e,t){return new A(t).inlineTokens(e)}lex(e){e=e.replace(Es.carriageReturn,`
|
||
`),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let r=this.inlineQueue[t];this.inlineTokens(r.src,r.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],r=!1){for(this.options.pedantic&&(e=e.replace(Es.tabCharGlobal," ").replace(Es.spaceLine,""));e;){let i;if(this.options.extensions?.block?.some((a)=>(i=a.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let a=t.at(-1);i.raw.length===1&&a!==void 0?a.raw+=`
|
||
`:t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);let a=t.at(-1);a?.type==="paragraph"||a?.type==="text"?(a.raw+=(a.raw.endsWith(`
|
||
`)?"":`
|
||
`)+i.raw,a.text+=`
|
||
`+i.text,this.inlineQueue.at(-1).src=a.text):t.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.list(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.html(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.def(e)){e=e.substring(i.raw.length);let a=t.at(-1);a?.type==="paragraph"||a?.type==="text"?(a.raw+=(a.raw.endsWith(`
|
||
`)?"":`
|
||
`)+i.raw,a.text+=`
|
||
`+i.raw,this.inlineQueue.at(-1).src=a.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title},t.push(i));continue}if(i=this.tokenizer.table(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.lheading(e)){e=e.substring(i.raw.length),t.push(i);continue}let u=e;if(this.options.extensions?.startBlock){let a=1/0,n=e.slice(1),o;this.options.extensions.startBlock.forEach((s)=>{o=s.call({lexer:this},n),typeof o=="number"&&o>=0&&(a=Math.min(a,o))}),a<1/0&&a>=0&&(u=e.substring(0,a+1))}if(this.state.top&&(i=this.tokenizer.paragraph(u))){let a=t.at(-1);r&&a?.type==="paragraph"?(a.raw+=(a.raw.endsWith(`
|
||
`)?"":`
|
||
`)+i.raw,a.text+=`
|
||
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):t.push(i),r=u.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);let a=t.at(-1);a?.type==="text"?(a.raw+=(a.raw.endsWith(`
|
||
`)?"":`
|
||
`)+i.raw,a.text+=`
|
||
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):t.push(i);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw Error(a)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let r=e,i=null;if(this.tokens.links){let o=Object.keys(this.tokens.links);if(o.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)o.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,i.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let u;for(;(i=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)u=i[2]?i[2].length:0,r=r.slice(0,i.index+u)+"["+"a".repeat(i[0].length-u-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);r=this.options.hooks?.emStrongMask?.call({lexer:this},r)??r;let a=!1,n="";for(;e;){a||(n=""),a=!1;let o;if(this.options.extensions?.inline?.some((l)=>(o=l.call({lexer:this},e,t))?(e=e.substring(o.raw.length),t.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let l=t.at(-1);o.type==="text"&&l?.type==="text"?(l.raw+=o.raw,l.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,r,n)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),t.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),t.push(o);continue}let s=e;if(this.options.extensions?.startInline){let l=1/0,g=e.slice(1),C;this.options.extensions.startInline.forEach((B)=>{C=B.call({lexer:this},g),typeof C=="number"&&C>=0&&(l=Math.min(l,C))}),l<1/0&&l>=0&&(s=e.substring(0,l+1))}if(o=this.tokenizer.inlineText(s)){e=e.substring(o.raw.length),o.raw.slice(-1)!=="_"&&(n=o.raw.slice(-1)),a=!0;let l=t.at(-1);l?.type==="text"?(l.raw+=o.raw,l.text+=o.text):t.push(o);continue}if(e){let l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw Error(l)}}return t}},nU=class{options;parser;constructor(A){this.options=A||bf}space(A){return""}code({text:A,lang:e,escaped:t}){let r=(e||"").match(Es.notSpaceStart)?.[0],i=A.replace(Es.endingNewline,"")+`
|
||
`;return r?'<pre><code class="language-'+BE(r)+'">'+(t?i:BE(i,!0))+`</code></pre>
|
||
`:"<pre><code>"+(t?i:BE(i,!0))+`</code></pre>
|
||
`}blockquote({tokens:A}){return`<blockquote>
|
||
${this.parser.parse(A)}</blockquote>
|
||
`}html({text:A}){return A}def(A){return""}heading({tokens:A,depth:e}){return`<h${e}>${this.parser.parseInline(A)}</h${e}>
|
||
`}hr(A){return`<hr>
|
||
`}list(A){let{ordered:e,start:t}=A,r="";for(let a=0;a<A.items.length;a++){let n=A.items[a];r+=this.listitem(n)}let i=e?"ol":"ul",u=e&&t!==1?' start="'+t+'"':"";return"<"+i+u+`>
|
||
`+r+"</"+i+`>
|
||
`}listitem(A){let e="";if(A.task){let t=this.checkbox({checked:!!A.checked});A.loose?A.tokens[0]?.type==="paragraph"?(A.tokens[0].text=t+" "+A.tokens[0].text,A.tokens[0].tokens&&A.tokens[0].tokens.length>0&&A.tokens[0].tokens[0].type==="text"&&(A.tokens[0].tokens[0].text=t+" "+BE(A.tokens[0].tokens[0].text),A.tokens[0].tokens[0].escaped=!0)):A.tokens.unshift({type:"text",raw:t+" ",text:t+" ",escaped:!0}):e+=t+" "}return e+=this.parser.parse(A.tokens,!!A.loose),`<li>${e}</li>
|
||
`}checkbox({checked:A}){return"<input "+(A?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:A}){return`<p>${this.parser.parseInline(A)}</p>
|
||
`}table(A){let e="",t="";for(let i=0;i<A.header.length;i++)t+=this.tablecell(A.header[i]);e+=this.tablerow({text:t});let r="";for(let i=0;i<A.rows.length;i++){let u=A.rows[i];t="";for(let a=0;a<u.length;a++)t+=this.tablecell(u[a]);r+=this.tablerow({text:t})}return r&&(r=`<tbody>${r}</tbody>`),`<table>
|
||
<thead>
|
||
`+e+`</thead>
|
||
`+r+`</table>
|
||
`}tablerow({text:A}){return`<tr>
|
||
${A}</tr>
|
||
`}tablecell(A){let e=this.parser.parseInline(A.tokens),t=A.header?"th":"td";return(A.align?`<${t} align="${A.align}">`:`<${t}>`)+e+`</${t}>
|
||
`}strong({tokens:A}){return`<strong>${this.parser.parseInline(A)}</strong>`}em({tokens:A}){return`<em>${this.parser.parseInline(A)}</em>`}codespan({text:A}){return`<code>${BE(A,!0)}</code>`}br(A){return"<br>"}del({tokens:A}){return`<del>${this.parser.parseInline(A)}</del>`}link({href:A,title:e,tokens:t}){let r=this.parser.parseInline(t),i=xkA(A);if(i===null)return r;A=i;let u='<a href="'+A+'"';return e&&(u+=' title="'+BE(e)+'"'),u+=">"+r+"</a>",u}image({href:A,title:e,text:t,tokens:r}){r&&(t=this.parser.parseInline(r,this.parser.textRenderer));let i=xkA(A);if(i===null)return BE(t);A=i;let u=`<img src="${A}" alt="${t}"`;return e&&(u+=` title="${BE(e)}"`),u+=">",u}text(A){return"tokens"in A&&A.tokens?this.parser.parseInline(A.tokens):("escaped"in A)&&A.escaped?A.text:BE(A.text)}},NeA=class{strong({text:A}){return A}em({text:A}){return A}codespan({text:A}){return A}del({text:A}){return A}html({text:A}){return A}text({text:A}){return A}link({text:A}){return""+A}image({text:A}){return""+A}br(){return""}},DC=class A{options;renderer;textRenderer;constructor(e){this.options=e||bf,this.options.renderer=this.options.renderer||new nU,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new NeA}static parse(e,t){return new A(t).parse(e)}static parseInline(e,t){return new A(t).parseInline(e)}parse(e,t=!0){let r="";for(let i=0;i<e.length;i++){let u=e[i];if(this.options.extensions?.renderers?.[u.type]){let n=u,o=this.options.extensions.renderers[n.type].call({parser:this},n);if(o!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(n.type)){r+=o||"";continue}}let a=u;switch(a.type){case"space":{r+=this.renderer.space(a);continue}case"hr":{r+=this.renderer.hr(a);continue}case"heading":{r+=this.renderer.heading(a);continue}case"code":{r+=this.renderer.code(a);continue}case"table":{r+=this.renderer.table(a);continue}case"blockquote":{r+=this.renderer.blockquote(a);continue}case"list":{r+=this.renderer.list(a);continue}case"html":{r+=this.renderer.html(a);continue}case"def":{r+=this.renderer.def(a);continue}case"paragraph":{r+=this.renderer.paragraph(a);continue}case"text":{let n=a,o=this.renderer.text(n);for(;i+1<e.length&&e[i+1].type==="text";)n=e[++i],o+=`
|
||
`+this.renderer.text(n);t?r+=this.renderer.paragraph({type:"paragraph",raw:o,text:o,tokens:[{type:"text",raw:o,text:o,escaped:!0}]}):r+=o;continue}default:{let n='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(n),"";throw Error(n)}}}return r}parseInline(e,t=this.renderer){let r="";for(let i=0;i<e.length;i++){let u=e[i];if(this.options.extensions?.renderers?.[u.type]){let n=this.options.extensions.renderers[u.type].call({parser:this},u);if(n!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(u.type)){r+=n||"";continue}}let a=u;switch(a.type){case"escape":{r+=t.text(a);break}case"html":{r+=t.html(a);break}case"link":{r+=t.link(a);break}case"image":{r+=t.image(a);break}case"strong":{r+=t.strong(a);break}case"em":{r+=t.em(a);break}case"codespan":{r+=t.codespan(a);break}case"br":{r+=t.br(a);break}case"del":{r+=t.del(a);break}case"text":{r+=t.text(a);break}default:{let n='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(n),"";throw Error(n)}}}return r}},Uv,sot=class{defaults=beA();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=DC;Renderer=nU;TextRenderer=NeA;Lexer=mC;Tokenizer=aU;Hooks=Uv;constructor(...A){this.use(...A)}walkTokens(A,e){let t=[];for(let r of A)switch(t=t.concat(e.call(this,r)),r.type){case"table":{let i=r;for(let u of i.header)t=t.concat(this.walkTokens(u.tokens,e));for(let u of i.rows)for(let a of u)t=t.concat(this.walkTokens(a.tokens,e));break}case"list":{let i=r;t=t.concat(this.walkTokens(i.items,e));break}default:{let i=r;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach((u)=>{let a=i[u].flat(1/0);t=t.concat(this.walkTokens(a,e))}):i.tokens&&(t=t.concat(this.walkTokens(i.tokens,e)))}}return t}use(...A){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return A.forEach((t)=>{let r={...t};if(r.async=this.defaults.async||r.async||!1,t.extensions&&(t.extensions.forEach((i)=>{if(!i.name)throw Error("extension name required");if("renderer"in i){let u=e.renderers[i.name];u?e.renderers[i.name]=function(...a){let n=i.renderer.apply(this,a);return n===!1&&(n=u.apply(this,a)),n}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw Error("extension level must be 'block' or 'inline'");let u=e[i.level];u?u.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),r.extensions=e),t.renderer){let i=this.defaults.renderer||new nU(this.defaults);for(let u in t.renderer){if(!(u in i))throw Error(`renderer '${u}' does not exist`);if(["options","parser"].includes(u))continue;let a=u,n=t.renderer[a],o=i[a];i[a]=(...s)=>{let l=n.apply(i,s);return l===!1&&(l=o.apply(i,s)),l||""}}r.renderer=i}if(t.tokenizer){let i=this.defaults.tokenizer||new aU(this.defaults);for(let u in t.tokenizer){if(!(u in i))throw Error(`tokenizer '${u}' does not exist`);if(["options","rules","lexer"].includes(u))continue;let a=u,n=t.tokenizer[a],o=i[a];i[a]=(...s)=>{let l=n.apply(i,s);return l===!1&&(l=o.apply(i,s)),l}}r.tokenizer=i}if(t.hooks){let i=this.defaults.hooks||new Uv;for(let u in t.hooks){if(!(u in i))throw Error(`hook '${u}' does not exist`);if(["options","block"].includes(u))continue;let a=u,n=t.hooks[a],o=i[a];Uv.passThroughHooks.has(u)?i[a]=(s)=>{if(this.defaults.async&&Uv.passThroughHooksRespectAsync.has(u))return(async()=>{let g=await n.call(i,s);return o.call(i,g)})();let l=n.call(i,s);return o.call(i,l)}:i[a]=(...s)=>{if(this.defaults.async)return(async()=>{let g=await n.apply(i,s);return g===!1&&(g=await o.apply(i,s)),g})();let l=n.apply(i,s);return l===!1&&(l=o.apply(i,s)),l}}r.hooks=i}if(t.walkTokens){let i=this.defaults.walkTokens,u=t.walkTokens;r.walkTokens=function(a){let n=[];return n.push(u.call(this,a)),i&&(n=n.concat(i.call(this,a))),n}}this.defaults={...this.defaults,...r}}),this}setOptions(A){return this.defaults={...this.defaults,...A},this}lexer(A,e){return mC.lex(A,e??this.defaults)}parser(A,e){return DC.parse(A,e??this.defaults)}parseMarkdown(A){return(e,t)=>{let r={...t},i={...this.defaults,...r},u=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return u(Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return u(Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return u(Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=A),i.async)return(async()=>{let a=i.hooks?await i.hooks.preprocess(e):e,n=await(i.hooks?await i.hooks.provideLexer():A?mC.lex:mC.lexInline)(a,i),o=i.hooks?await i.hooks.processAllTokens(n):n;i.walkTokens&&await Promise.all(this.walkTokens(o,i.walkTokens));let s=await(i.hooks?await i.hooks.provideParser():A?DC.parse:DC.parseInline)(o,i);return i.hooks?await i.hooks.postprocess(s):s})().catch(u);try{i.hooks&&(e=i.hooks.preprocess(e));let a=(i.hooks?i.hooks.provideLexer():A?mC.lex:mC.lexInline)(e,i);i.hooks&&(a=i.hooks.processAllTokens(a)),i.walkTokens&&this.walkTokens(a,i.walkTokens);let n=(i.hooks?i.hooks.provideParser():A?DC.parse:DC.parseInline)(a,i);return i.hooks&&(n=i.hooks.postprocess(n)),n}catch(a){return u(a)}}}onError(A,e){return(t)=>{if(t.message+=`
|
||
Please report this to https://github.com/markedjs/marked.`,A){let r="<p>An error occurred:</p><pre>"+BE(t.message+"",!0)+"</pre>";return e?Promise.resolve(r):r}if(e)return Promise.reject(t);throw t}}},wf,UHr,MHr,THr,YHr,HHr,KHr,JHr;var PkA=P(()=>{bf=beA();Mv={exec:()=>null};vnt=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),Es={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:(A)=>new RegExp(`^( {0,3}${A})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}#`),htmlBeginRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}<(?:[a-z].*>|!--)`,"i")},knt=/^(?:[ \t]*(?:\n|$))+/,Fnt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,xnt=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Tv=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Snt=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,veA=/(?:[*+-]|\d{1,9}[.)])/,NkA=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,GkA=Zi(NkA).replace(/bull/g,veA).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Lnt=Zi(NkA).replace(/bull/g,veA).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),keA=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Rnt=/^[^\n]+/,FeA=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Nnt=Zi(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",FeA).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Gnt=Zi(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,veA).getRegex(),xeA=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Unt=Zi("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",xeA).replace("tag",oU).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),UkA=Zi(keA).replace("hr",Tv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",oU).getRegex(),Mnt=Zi(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",UkA).getRegex(),SeA={blockquote:Mnt,code:Fnt,def:Nnt,fences:xnt,heading:Snt,hr:Tv,html:Unt,lheading:GkA,list:Gnt,newline:knt,paragraph:UkA,table:Mv,text:Rnt},vkA=Zi("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Tv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",oU).getRegex(),Tnt={...SeA,lheading:Lnt,table:vkA,paragraph:Zi(keA).replace("hr",Tv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",vkA).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",oU).getRegex()},Ynt={...SeA,html:Zi(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",xeA).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Mv,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Zi(keA).replace("hr",Tv).replace("heading",` *#{1,6} *[^
|
||
]`).replace("lheading",GkA).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Hnt=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Knt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,MkA=/^( {2,}|\\)\n(?!\s*$)/,Jnt=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,sU=/[\p{P}\p{S}]/u,LeA=/[\s\p{P}\p{S}]/u,TkA=/[^\s\p{P}\p{S}]/u,Ont=Zi(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,LeA).getRegex(),YkA=/(?!~)[\p{P}\p{S}]/u,Pnt=/(?!~)[\s\p{P}\p{S}]/u,_nt=/(?:[^\s\p{P}\p{S}]|~)/u,Wnt=Zi(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",vnt?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),HkA=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,qnt=Zi(HkA,"u").replace(/punct/g,sU).getRegex(),znt=Zi(HkA,"u").replace(/punct/g,YkA).getRegex(),Znt=Zi(KkA,"gu").replace(/notPunctSpace/g,TkA).replace(/punctSpace/g,LeA).replace(/punct/g,sU).getRegex(),Vnt=Zi(KkA,"gu").replace(/notPunctSpace/g,_nt).replace(/punctSpace/g,Pnt).replace(/punct/g,YkA).getRegex(),jnt=Zi("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,TkA).replace(/punctSpace/g,LeA).replace(/punct/g,sU).getRegex(),Xnt=Zi(/\\(punct)/,"gu").replace(/punct/g,sU).getRegex(),$nt=Zi(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Aot=Zi(xeA).replace("(?:-->|$)","-->").getRegex(),eot=Zi("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",Aot).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),uU=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,tot=Zi(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",uU).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),JkA=Zi(/^!?\[(label)\]\[(ref)\]/).replace("label",uU).replace("ref",FeA).getRegex(),OkA=Zi(/^!?\[(ref)\](?:\[\])?/).replace("ref",FeA).getRegex(),rot=Zi("reflink|nolink(?!\\()","g").replace("reflink",JkA).replace("nolink",OkA).getRegex(),kkA=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,ReA={_backpedal:Mv,anyPunctuation:Xnt,autolink:$nt,blockSkip:Wnt,br:MkA,code:Knt,del:Mv,emStrongLDelim:qnt,emStrongRDelimAst:Znt,emStrongRDelimUnd:jnt,escape:Hnt,link:tot,nolink:OkA,punctuation:Ont,reflink:JkA,reflinkSearch:rot,tag:eot,text:Jnt,url:Mv},iot={...ReA,link:Zi(/^!?\[(label)\]\((.*?)\)/).replace("label",uU).getRegex(),reflink:Zi(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",uU).getRegex()},weA={...ReA,emStrongRDelimAst:Vnt,emStrongLDelim:znt,url:Zi(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",kkA).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:Zi(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",kkA).getRegex()},uot={...weA,br:Zi(MkA).replace("{2,}","*").getRegex(),text:Zi(weA.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},iU={normal:SeA,gfm:Tnt,pedantic:Ynt},Nv={normal:ReA,gfm:weA,breaks:uot,pedantic:iot},aot={"&":"&","<":"<",">":">",'"':""","'":"'"};Uv=class{options;block;constructor(A){this.options=A||bf}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(A){return A}postprocess(A){return A}processAllTokens(A){return A}emStrongMask(A){return A}provideLexer(){return this.block?mC.lex:mC.lexInline}provideParser(){return this.block?DC.parse:DC.parseInline}},wf=new sot;ou.options=ou.setOptions=function(A){return wf.setOptions(A),ou.defaults=wf.defaults,RkA(ou.defaults),ou};ou.getDefaults=beA;ou.defaults=bf;ou.use=function(...A){return wf.use(...A),ou.defaults=wf.defaults,RkA(ou.defaults),ou};ou.walkTokens=function(A,e){return wf.walkTokens(A,e)};ou.parseInline=wf.parseInline;ou.Parser=DC;ou.parser=DC.parse;ou.Renderer=nU;ou.TextRenderer=NeA;ou.Lexer=mC;ou.lexer=mC.lex;ou.Tokenizer=aU;ou.Hooks=Uv;ou.parse=ou;UHr=ou.options,MHr=ou.setOptions,THr=ou.use,YHr=ou.walkTokens,HHr=ou.parseInline,KHr=DC.parse,JHr=mC.lex});function lU(A){var e=[];for(var t=1;t<arguments.length;t++)e[t-1]=arguments[t];var r=Array.from(typeof A==="string"?[A]:A);r[r.length-1]=r[r.length-1].replace(/\r?\n([\t ]*)$/,"");var i=r.reduce(function(n,o){var s=o.match(/\n([\t ]+|(?!\s).)/g);if(s)return n.concat(s.map(function(l){var g,C;return(C=(g=l.match(/[\t ]/g))===null||g===void 0?void 0:g.length)!==null&&C!==void 0?C:0}));return n},[]);if(i.length){var u=new RegExp(`
|
||
[ ]{`.concat(Math.min.apply(Math,i),"}"),"g");r=r.map(function(n){return n.replace(u,`
|
||
`)})}r[0]=r[0].replace(/^\r?\n/,"");var a=r[0];return e.forEach(function(n,o){var s=a.match(/(?:^|\n)( *)$/),l=s?s[1]:"",g=n;if(typeof n==="string"&&n.includes(`
|
||
`))g=String(n).split(`
|
||
`).map(function(C,B){return B===0?C:"".concat(l).concat(C)}).join(`
|
||
`);a+=g+r[o+1]}),a}var GeA=()=>{};function WkA(A,{markdownAutoWrap:e}){let r=A.replace(/<br\/>/g,`
|
||
`).replace(/\n{2,}/g,`
|
||
`);return lU(r)}function qkA(A){return A.split(/\\n|\n|<br\s*\/?>/gi).map((e)=>e.trim().match(/<[^>]+>|[^\s<>]+/g)?.map((t)=>({content:t,type:"normal"}))??[])}function zkA(A,e={}){let t=WkA(A,e),r=ou.lexer(t),i=[[]],u=0;function a(n,o="normal"){if(n.type==="text")n.text.split(`
|
||
`).forEach((l,g)=>{if(g!==0)u++,i.push([]);l.split(" ").forEach((C)=>{if(C=C.replace(/'/g,"'"),C)i[u].push({content:C,type:o})})});else if(n.type==="strong"||n.type==="em")n.tokens.forEach((s)=>{a(s,n.type)});else if(n.type==="html")i[u].push({content:n.text,type:"normal"})}return y(a,"processNode"),r.forEach((n)=>{if(n.type==="paragraph")n.tokens?.forEach((o)=>{a(o)});else if(n.type==="html")i[u].push({content:n.text,type:"normal"});else i[u].push({content:n.raw,type:"normal"})}),i}function ZkA(A){if(!A)return"";return`<p>${A.replace(/\\n|\n/g,"<br />")}</p>`}function VkA(A,{markdownAutoWrap:e}={}){let t=ou.lexer(A);function r(i){if(i.type==="text"){if(e===!1)return i.text.replace(/\n */g,"<br/>").replace(/ /g," ");return i.text.replace(/\n */g,"<br/>")}else if(i.type==="strong")return`<strong>${i.tokens?.map(r).join("")}</strong>`;else if(i.type==="em")return`<em>${i.tokens?.map(r).join("")}</em>`;else if(i.type==="paragraph")return`<p>${i.tokens?.map(r).join("")}</p>`;else if(i.type==="space")return"";else if(i.type==="html")return`${i.text}`;else if(i.type==="escape")return i.text;return sA.warn(`Unsupported markdown: ${i.type}`),i.raw}return y(r,"output"),t.map(r).join("")}function jkA(A){if(Intl.Segmenter)return[...new Intl.Segmenter().segment(A)].map((e)=>e.segment);return[...A]}function XkA(A,e){let t=jkA(e.content);return TeA(A,[],t,e.type)}function TeA(A,e,t,r){if(t.length===0)return[{content:e.join(""),type:r},{content:"",type:r}];let[i,...u]=t,a=[...e,i];if(A([{content:a.join(""),type:r}]))return TeA(A,a,u,r);if(e.length===0&&i)e.push(i),t.shift();return[{content:e.join(""),type:r},{content:t.join(""),type:r}]}function $kA(A,e){if(A.some(({content:t})=>t.includes(`
|
||
`)))throw Error("splitLineToFitWidth does not support newlines in the line");return gU(A,e)}function gU(A,e,t=[],r=[]){if(A.length===0){if(r.length>0)t.push(r);return t.length>0?t:[]}let i="";if(A[0].content===" ")i=" ",A.shift();let u=A.shift()??{content:" ",type:"normal"},a=[...r];if(i!=="")a.push({content:i,type:"normal"});if(a.push(u),e(a))return gU(A,e,t,a);if(r.length>0)t.push(r),A.unshift(u);else if(u.content){let[n,o]=XkA(e,u);if(t.push([n]),o.content)A.unshift(o)}return gU(A,e,t)}function UeA(A,e){if(e)A.attr("style",e)}async function AFA(A,e,t,r,i=!1,u=st()){let a=A.append("foreignObject");a.attr("width",`${Math.min(10*t,_kA)}px`),a.attr("height",`${Math.min(10*t,_kA)}px`);let n=a.append("xhtml:div"),o=da(e.label)?await yD(e.label.replace(_e.lineBreakRegex,`
|
||
`),u):or(e.label,u),s=e.isNode?"nodeLabel":"edgeLabel",l=n.append("span");if(l.html(o),UeA(l,e.labelStyle),l.attr("class",`${s} ${r}`),UeA(n,e.labelStyle),n.style("display","table-cell"),n.style("white-space","nowrap"),n.style("line-height","1.5"),t!==Number.POSITIVE_INFINITY)n.style("max-width",t+"px"),n.style("text-align","center");if(n.attr("xmlns","http://www.w3.org/1999/xhtml"),i)n.attr("class","labelBkg");let g=n.node().getBoundingClientRect();if(g.width===t)n.style("display","table"),n.style("white-space","break-spaces"),n.style("width",t+"px"),g=n.node().getBoundingClientRect();return a.node()}function cU(A,e,t,r=!1){let i=A.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*t-0.1+"em").attr("dy",t+"em");if(r)i.attr("text-anchor","middle");return i}function eFA(A,e,t){let r=A.append("text"),i=cU(r,1,e);CU(i,t);let u=i.node().getComputedTextLength();return r.remove(),u}function YeA(A,e,t){let r=A.append("text"),i=cU(r,1,e);CU(i,[{content:t,type:"normal"}]);let u=i.node()?.getBoundingClientRect();if(u)r.remove();return u}function tFA(A,e,t,r=!1,i=!1){let a=e.append("g"),n=a.insert("rect").attr("class","background").attr("style","stroke: none"),o=a.append("text").attr("y","-10.1");if(i)o.attr("text-anchor","middle");let s=0;for(let l of t){let g=y((B)=>eFA(a,1.1,B)<=A,"checkWidth"),C=g(l)?[l]:$kA(l,g);for(let B of C){let E=cU(o,s,1.1,i);CU(E,B),s++}}if(r){let l=o.node().getBBox(),g=2;return n.attr("x",l.x-2).attr("y",l.y-2).attr("width",l.width+4).attr("height",l.height+4),a.node()}else return o.node()}function MeA(A){let e=/&(amp|lt|gt);/g;return A.replace(e,(t,r)=>{switch(r){case"amp":return"&";case"lt":return"<";case"gt":return">";default:return t}})}function CU(A,e){A.text(""),e.forEach((t,r)=>{let i=A.append("tspan").attr("font-style",t.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",t.type==="strong"?"bold":"normal");if(r===0)i.text(MeA(t.content));else i.text(" "+MeA(t.content))})}async function rFA(A,e={}){let t=[];A.replace(/(fa[bklrs]?):fa-([\w-]+)/g,(i,u,a)=>(t.push((async()=>{let n=`${u}:${a}`;if(await bkA(n))return await ag(n,void 0,{class:"label-icon"});else return`<i class='${or(i,e).replace(":"," ")}'></i>`})()),i));let r=await Promise.all(t);return A.replace(/(fa[bklrs]?):fa-([\w-]+)/g,()=>r.shift()??"")}var _kA=16384,Nn;var eo=P(()=>{Rn();ai();rr();ir();Nt();Pr();PkA();GeA();y(WkA,"preprocessMarkdown");y(qkA,"nonMarkdownToLines");y(zkA,"markdownToLines");y(ZkA,"nonMarkdownToHTML");y(VkA,"markdownToHTML");y(jkA,"splitTextToChars");y(XkA,"splitWordToFitWidth");y(TeA,"splitWordToFitWidthRecursion");y($kA,"splitLineToFitWidth");y(gU,"splitLineToFitWidthRecursion");y(UeA,"applyStyle");y(AFA,"addHtmlSpan");y(cU,"createTspan");y(eFA,"computeWidthOfText");y(YeA,"computeDimensionOfText");y(tFA,"createFormattedText");y(MeA,"decodeHTMLEntities");y(CU,"updateTextContentAndStyles");y(rFA,"replaceIconSubstring");Nn=y(async(A,e="",{style:t="",isTitle:r=!1,classes:i="",useHtmlLabels:u=!0,markdown:a=!0,isNode:n=!0,width:o=200,addSvgBackground:s=!1}={},l)=>{if(sA.debug("XYZ createText",e,t,r,i,u,n,"addSvgBackground: ",s),u){let g=a?VkA(e,l):ZkA(e),C=await rFA(ug(g),l),B=e.replace(/\\\\/g,"\\"),E={isNode:n,label:da(e)?B:C,labelStyle:t.replace("fill:","color:")};return await AFA(A,E,o,i,s,l)}else{let g=ug(e.replace(/<br\s*\/?>/g,"<br/>")),C=a?zkA(g.replace("<br>","<br/>"),l):qkA(g),B=tFA(o,A,C,e?s:!1,!n);if(n){if(/stroke:/.exec(t))t=t.replace("stroke:","lineColor:");let E=t.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Qe(B).attr("style",E)}else{let E=t.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");Qe(B).select("rect").attr("style",E.replace(/background:/g,"fill:"));let d=t.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Qe(B).select("text").attr("style",d)}if(r)Qe(B).selectAll("tspan.text-outer-tspan").classed("title-row",!0);else Qe(B).selectAll("tspan.text-outer-tspan").classed("row",!0);return B}},"createText")});function HeA(A,e,t){if(A&&A.length){let[r,i]=e,u=Math.PI/180*t,a=Math.cos(u),n=Math.sin(u);for(let o of A){let[s,l]=o;o[0]=(s-r)*a-(l-i)*n+r,o[1]=(s-r)*n+(l-i)*a+i}}}function lot(A,e){return A[0]===e[0]&&A[1]===e[1]}function got(A,e,t,r=1){let i=t,u=Math.max(e,0.1),a=A[0]&&A[0][0]&&typeof A[0][0]=="number"?[A]:A,n=[0,0];if(i)for(let s of a)HeA(s,n,i);let o=function(s,l,g){let C=[];for(let Q of s){let p=[...Q];lot(p[0],p[p.length-1])||p.push([p[0][0],p[0][1]]),p.length>2&&C.push(p)}let B=[];l=Math.max(l,0.1);let E=[];for(let Q of C)for(let p=0;p<Q.length-1;p++){let m=Q[p],f=Q[p+1];if(m[1]!==f[1]){let D=Math.min(m[1],f[1]);E.push({ymin:D,ymax:Math.max(m[1],f[1]),x:D===m[1]?m[0]:f[0],islope:(f[0]-m[0])/(f[1]-m[1])})}}if(E.sort((Q,p)=>Q.ymin<p.ymin?-1:Q.ymin>p.ymin?1:Q.x<p.x?-1:Q.x>p.x?1:Q.ymax===p.ymax?0:(Q.ymax-p.ymax)/Math.abs(Q.ymax-p.ymax)),!E.length)return B;let d=[],I=E[0].ymin,h=0;for(;d.length||E.length;){if(E.length){let Q=-1;for(let p=0;p<E.length&&!(E[p].ymin>I);p++)Q=p;E.splice(0,Q+1).forEach((p)=>{d.push({s:I,edge:p})})}if(d=d.filter((Q)=>!(Q.edge.ymax<=I)),d.sort((Q,p)=>Q.edge.x===p.edge.x?0:(Q.edge.x-p.edge.x)/Math.abs(Q.edge.x-p.edge.x)),(g!==1||h%l==0)&&d.length>1)for(let Q=0;Q<d.length;Q+=2){let p=Q+1;if(p>=d.length)break;let m=d[Q].edge,f=d[p].edge;B.push([[Math.round(m.x),I],[Math.round(f.x),I]])}I+=g,d.forEach((Q)=>{Q.edge.x=Q.edge.x+g*Q.edge.islope}),h++}return B}(a,u,r);if(i){for(let s of a)HeA(s,n,-i);(function(s,l,g){let C=[];s.forEach((B)=>C.push(...B)),HeA(C,l,g)})(o,n,-i)}return o}function Jv(A,e){var t;let r=e.hachureAngle+90,i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.round(Math.max(i,0.1));let u=1;return e.roughness>=1&&(((t=e.randomizer)===null||t===void 0?void 0:t.next())||Math.random())>0.7&&(u=i),got(A,i,r,u||1)}class mU{constructor(A){this.helper=A}fillPolygons(A,e){return this._fillPolygons(A,e)}_fillPolygons(A,e){let t=Jv(A,e);return{type:"fillSketch",ops:this.renderLines(t,e)}}renderLines(A,e){let t=[];for(let r of A)t.push(...this.helper.doubleLineOps(r[0][0],r[0][1],r[1][0],r[1][1],e));return t}}function DU(A){let e=A[0],t=A[1];return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}class BFA{constructor(A){this.helper=A}fillPolygons(A,e){let t=Jv(A,e=Object.assign({},e,{hachureAngle:0}));return this.dotsOnLines(t,e)}dotsOnLines(A,e){let t=[],r=e.hachureGap;r<0&&(r=4*e.strokeWidth),r=Math.max(r,0.1);let i=e.fillWeight;i<0&&(i=e.strokeWidth/2);let u=r/4;for(let a of A){let n=DU(a),o=n/r,s=Math.ceil(o)-1,l=n-s*r,g=(a[0][0]+a[1][0])/2-r/4,C=Math.min(a[0][1],a[1][1]);for(let B=0;B<s;B++){let E=C+l+B*r,d=g-u+2*Math.random()*u,I=E-u+2*Math.random()*u,h=this.helper.ellipse(d,I,i,i,e);t.push(...h.ops)}}return{type:"fillSketch",ops:t}}}class EFA{constructor(A){this.helper=A}fillPolygons(A,e){let t=Jv(A,e);return{type:"fillSketch",ops:this.dashedLine(t,e)}}dashedLine(A,e){let t=e.dashOffset<0?e.hachureGap<0?4*e.strokeWidth:e.hachureGap:e.dashOffset,r=e.dashGap<0?e.hachureGap<0?4*e.strokeWidth:e.hachureGap:e.dashGap,i=[];return A.forEach((u)=>{let a=DU(u),n=Math.floor(a/(t+r)),o=(a+r-n*(t+r))/2,s=u[0],l=u[1];s[0]>l[0]&&(s=u[1],l=u[0]);let g=Math.atan((l[1]-s[1])/(l[0]-s[0]));for(let C=0;C<n;C++){let B=C*(t+r),E=B+t,d=[s[0]+B*Math.cos(g)+o*Math.cos(g),s[1]+B*Math.sin(g)+o*Math.sin(g)],I=[s[0]+E*Math.cos(g)+o*Math.cos(g),s[1]+E*Math.sin(g)+o*Math.sin(g)];i.push(...this.helper.doubleLineOps(d[0],d[1],I[0],I[1],e))}}),i}}class dFA{constructor(A){this.helper=A}fillPolygons(A,e){let t=e.hachureGap<0?4*e.strokeWidth:e.hachureGap,r=e.zigzagOffset<0?t:e.zigzagOffset,i=Jv(A,e=Object.assign({},e,{hachureGap:t+r}));return{type:"fillSketch",ops:this.zigzagLines(i,r,e)}}zigzagLines(A,e,t){let r=[];return A.forEach((i)=>{let u=DU(i),a=Math.round(u/(2*e)),n=i[0],o=i[1];n[0]>o[0]&&(n=i[1],o=i[0]);let s=Math.atan((o[1]-n[1])/(o[0]-n[0]));for(let l=0;l<a;l++){let g=2*l*e,C=2*(l+1)*e,B=Math.sqrt(2*Math.pow(e,2)),E=[n[0]+g*Math.cos(s),n[1]+g*Math.sin(s)],d=[n[0]+C*Math.cos(s),n[1]+C*Math.sin(s)],I=[E[0]+B*Math.cos(s+Math.PI/4),E[1]+B*Math.sin(s+Math.PI/4)];r.push(...this.helper.doubleLineOps(E[0],E[1],I[0],I[1],t),...this.helper.doubleLineOps(I[0],I[1],d[0],d[1],t))}}),r}}class IFA{constructor(A){this.seed=A}next(){return this.seed?(2147483647&(this.seed=Math.imul(48271,this.seed)))/2147483648:Math.random()}}function JeA(A,e){return A.type===e}function zeA(A){let e=[],t=function(a){let n=[];for(;a!=="";)if(a.match(/^([ \t\r\n,]+)/))a=a.substr(RegExp.$1.length);else if(a.match(/^([aAcChHlLmMqQsStTvVzZ])/))n[n.length]={type:cot,text:RegExp.$1},a=a.substr(RegExp.$1.length);else{if(!a.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];n[n.length]={type:KeA,text:`${parseFloat(RegExp.$1)}`},a=a.substr(RegExp.$1.length)}return n[n.length]={type:iFA,text:""},n}(A),r="BOD",i=0,u=t[i];for(;!JeA(u,iFA);){let a=0,n=[];if(r==="BOD"){if(u.text!=="M"&&u.text!=="m")return zeA("M0,0"+A);i++,a=BU[u.text],r=u.text}else JeA(u,KeA)?a=BU[r]:(i++,a=BU[u.text],r=u.text);if(!(i+a<t.length))throw Error("Path data ended short");for(let o=i;o<i+a;o++){let s=t[o];if(!JeA(s,KeA))throw Error("Param not a number: "+r+","+s.text);n[n.length]=+s.text}if(typeof BU[r]!="number")throw Error("Bad segment: "+r);{let o={key:r,data:n};e.push(o),i+=a,u=t[i],r==="M"&&(r="L"),r==="m"&&(r="l")}}return e}function hFA(A){let e=0,t=0,r=0,i=0,u=[];for(let{key:a,data:n}of A)switch(a){case"M":u.push({key:"M",data:[...n]}),[e,t]=n,[r,i]=n;break;case"m":e+=n[0],t+=n[1],u.push({key:"M",data:[e,t]}),r=e,i=t;break;case"L":u.push({key:"L",data:[...n]}),[e,t]=n;break;case"l":e+=n[0],t+=n[1],u.push({key:"L",data:[e,t]});break;case"C":u.push({key:"C",data:[...n]}),e=n[4],t=n[5];break;case"c":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"C",data:o}),e=o[4],t=o[5];break}case"Q":u.push({key:"Q",data:[...n]}),e=n[2],t=n[3];break;case"q":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"Q",data:o}),e=o[2],t=o[3];break}case"A":u.push({key:"A",data:[...n]}),e=n[5],t=n[6];break;case"a":e+=n[5],t+=n[6],u.push({key:"A",data:[n[0],n[1],n[2],n[3],n[4],e,t]});break;case"H":u.push({key:"H",data:[...n]}),e=n[0];break;case"h":e+=n[0],u.push({key:"H",data:[e]});break;case"V":u.push({key:"V",data:[...n]}),t=n[0];break;case"v":t+=n[0],u.push({key:"V",data:[t]});break;case"S":u.push({key:"S",data:[...n]}),e=n[2],t=n[3];break;case"s":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"S",data:o}),e=o[2],t=o[3];break}case"T":u.push({key:"T",data:[...n]}),e=n[0],t=n[1];break;case"t":e+=n[0],t+=n[1],u.push({key:"T",data:[e,t]});break;case"Z":case"z":u.push({key:"Z",data:[]}),e=r,t=i}return u}function QFA(A){let e=[],t="",r=0,i=0,u=0,a=0,n=0,o=0;for(let{key:s,data:l}of A){switch(s){case"M":e.push({key:"M",data:[...l]}),[r,i]=l,[u,a]=l;break;case"C":e.push({key:"C",data:[...l]}),r=l[4],i=l[5],n=l[2],o=l[3];break;case"L":e.push({key:"L",data:[...l]}),[r,i]=l;break;case"H":r=l[0],e.push({key:"L",data:[r,i]});break;case"V":i=l[0],e.push({key:"L",data:[r,i]});break;case"S":{let g=0,C=0;t==="C"||t==="S"?(g=r+(r-n),C=i+(i-o)):(g=r,C=i),e.push({key:"C",data:[g,C,...l]}),n=l[0],o=l[1],r=l[2],i=l[3];break}case"T":{let[g,C]=l,B=0,E=0;t==="Q"||t==="T"?(B=r+(r-n),E=i+(i-o)):(B=r,E=i);let d=r+2*(B-r)/3,I=i+2*(E-i)/3,h=g+2*(B-g)/3,Q=C+2*(E-C)/3;e.push({key:"C",data:[d,I,h,Q,g,C]}),n=B,o=E,r=g,i=C;break}case"Q":{let[g,C,B,E]=l,d=r+2*(g-r)/3,I=i+2*(C-i)/3,h=B+2*(g-B)/3,Q=E+2*(C-E)/3;e.push({key:"C",data:[d,I,h,Q,B,E]}),n=g,o=C,r=B,i=E;break}case"A":{let g=Math.abs(l[0]),C=Math.abs(l[1]),B=l[2],E=l[3],d=l[4],I=l[5],h=l[6];if(g===0||C===0)e.push({key:"C",data:[r,i,I,h,I,h]}),r=I,i=h;else if(r!==I||i!==h)pFA(r,i,I,h,g,C,B,E,d).forEach(function(Q){e.push({key:"C",data:Q})}),r=I,i=h;break}case"Z":e.push({key:"Z",data:[]}),r=u,i=a}t=s}return e}function Yv(A,e,t){return[A*Math.cos(t)-e*Math.sin(t),A*Math.sin(t)+e*Math.cos(t)]}function pFA(A,e,t,r,i,u,a,n,o,s){let l=(g=a,Math.PI*g/180);var g;let C=[],B=0,E=0,d=0,I=0;if(s)[B,E,d,I]=s;else{[A,e]=Yv(A,e,-l),[t,r]=Yv(t,r,-l);let k=(A-t)/2,T=(e-r)/2,R=k*k/(i*i)+T*T/(u*u);R>1&&(R=Math.sqrt(R),i*=R,u*=R);let L=i*i,M=u*u,U=L*M-L*T*T-M*k*k,Y=L*T*T+M*k*k,H=(n===o?-1:1)*Math.sqrt(Math.abs(U/Y));d=H*i*T/u+(A+t)/2,I=H*-u*k/i+(e+r)/2,B=Math.asin(parseFloat(((e-I)/u).toFixed(9))),E=Math.asin(parseFloat(((r-I)/u).toFixed(9))),A<d&&(B=Math.PI-B),t<d&&(E=Math.PI-E),B<0&&(B=2*Math.PI+B),E<0&&(E=2*Math.PI+E),o&&B>E&&(B-=2*Math.PI),!o&&E>B&&(E-=2*Math.PI)}let h=E-B;if(Math.abs(h)>120*Math.PI/180){let k=E,T=t,R=r;E=o&&E>B?B+120*Math.PI/180*1:B+120*Math.PI/180*-1,C=pFA(t=d+i*Math.cos(E),r=I+u*Math.sin(E),T,R,i,u,a,0,o,[E,k,d,I])}h=E-B;let Q=Math.cos(B),p=Math.sin(B),m=Math.cos(E),f=Math.sin(E),D=Math.tan(h/4),w=1.3333333333333333*i*D,b=1.3333333333333333*u*D,F=[A,e],v=[A+w*p,e-b*Q],S=[t+w*f,r-b*m],x=[t,r];if(v[0]=2*F[0]-v[0],v[1]=2*F[1]-v[1],s)return[v,S,x].concat(C);{C=[v,S,x].concat(C);let k=[];for(let T=0;T<C.length;T+=3){let R=Yv(C[T][0],C[T][1],l),L=Yv(C[T+1][0],C[T+1][1],l),M=Yv(C[T+2][0],C[T+2][1],l);k.push([R[0],R[1],L[0],L[1],M[0],M[1]])}return k}}function fFA(A,e,t,r,i){return{type:"path",ops:YQ(A,e,t,r,i)}}function IU(A,e,t){let r=(A||[]).length;if(r>2){let i=[];for(let u=0;u<r-1;u++)i.push(...YQ(A[u][0],A[u][1],A[u+1][0],A[u+1][1],t));return e&&i.push(...YQ(A[r-1][0],A[r-1][1],A[0][0],A[0][1],t)),{type:"path",ops:i}}return r===2?fFA(A[0][0],A[0][1],A[1][0],A[1][1],t):{type:"path",ops:[]}}function Bot(A,e,t,r,i){return function(u,a){return IU(u,!0,a)}([[A,e],[A+t,e],[A+t,e+r],[A,e+r]],i)}function uFA(A,e){if(A.length){let t=typeof A[0][0]=="number"?[A]:A,r=EU(t[0],1*(1+0.2*e.roughness),e),i=e.disableMultiStroke?[]:EU(t[0],1.5*(1+0.22*e.roughness),oFA(e));for(let u=1;u<t.length;u++){let a=t[u];if(a.length){let n=EU(a,1*(1+0.2*e.roughness),e),o=e.disableMultiStroke?[]:EU(a,1.5*(1+0.22*e.roughness),oFA(e));for(let s of n)s.op!=="move"&&r.push(s);for(let s of o)s.op!=="move"&&i.push(s)}}return{type:"path",ops:r.concat(i)}}return{type:"path",ops:[]}}function mFA(A,e,t){let r=Math.sqrt(2*Math.PI*Math.sqrt((Math.pow(A/2,2)+Math.pow(e/2,2))/2)),i=Math.ceil(Math.max(t.curveStepCount,t.curveStepCount/Math.sqrt(200)*r)),u=2*Math.PI/i,a=Math.abs(A/2),n=Math.abs(e/2),o=1-t.curveFitting;return a+=dr(a*o,t),n+=dr(n*o,t),{increment:u,rx:a,ry:n}}function _eA(A,e,t,r){let[i,u]=sFA(r.increment,A,e,r.rx,r.ry,1,r.increment*QU(0.1,QU(0.4,1,t),t),t),a=pU(i,null,t);if(!t.disableMultiStroke&&t.roughness!==0){let[n]=sFA(r.increment,A,e,r.rx,r.ry,1.5,0,t),o=pU(n,null,t);a=a.concat(o)}return{estimatedPoints:u,opset:{type:"path",ops:a}}}function aFA(A,e,t,r,i,u,a,n,o){let s=A,l=e,g=Math.abs(t/2),C=Math.abs(r/2);g+=dr(0.01*g,o),C+=dr(0.01*C,o);let B=i,E=u;for(;B<0;)B+=2*Math.PI,E+=2*Math.PI;E-B>2*Math.PI&&(B=0,E=2*Math.PI);let d=2*Math.PI/o.curveStepCount,I=Math.min(d/2,(E-B)/2),h=lFA(I,s,l,g,C,B,E,1,o);if(!o.disableMultiStroke){let Q=lFA(I,s,l,g,C,B,E,1.5,o);h.push(...Q)}return a&&(n?h.push(...YQ(s,l,s+g*Math.cos(B),l+C*Math.sin(B),o),...YQ(s,l,s+g*Math.cos(E),l+C*Math.sin(E),o)):h.push({op:"lineTo",data:[s,l]},{op:"lineTo",data:[s+g*Math.cos(B),l+C*Math.sin(B)]})),{type:"path",ops:h}}function nFA(A,e){let t=QFA(hFA(zeA(A))),r=[],i=[0,0],u=[0,0];for(let{key:a,data:n}of t)switch(a){case"M":u=[n[0],n[1]],i=[n[0],n[1]];break;case"L":r.push(...YQ(u[0],u[1],n[0],n[1],e)),u=[n[0],n[1]];break;case"C":{let[o,s,l,g,C,B]=n;r.push(...Eot(o,s,l,g,C,B,u,e)),u=[C,B];break}case"Z":r.push(...YQ(u[0],u[1],i[0],i[1],e)),u=[i[0],i[1]]}return{type:"path",ops:r}}function OeA(A,e){let t=[];for(let r of A)if(r.length){let i=e.maxRandomnessOffset||0,u=r.length;if(u>2){t.push({op:"move",data:[r[0][0]+dr(i,e),r[0][1]+dr(i,e)]});for(let a=1;a<u;a++)t.push({op:"lineTo",data:[r[a][0]+dr(i,e),r[a][1]+dr(i,e)]})}}return{type:"fillPath",ops:t}}function gy(A,e){return function(t,r){let i=t.fillStyle||"hachure";if(!nl[i])switch(i){case"zigzag":nl[i]||(nl[i]=new cFA(r));break;case"cross-hatch":nl[i]||(nl[i]=new CFA(r));break;case"dots":nl[i]||(nl[i]=new BFA(r));break;case"dashed":nl[i]||(nl[i]=new EFA(r));break;case"zigzag-line":nl[i]||(nl[i]=new dFA(r));break;default:i="hachure",nl[i]||(nl[i]=new mU(r))}return nl[i]}(e,Cot).fillPolygons(A,e)}function oFA(A){let e=Object.assign({},A);return e.randomizer=void 0,A.seed&&(e.seed=A.seed+1),e}function DFA(A){return A.randomizer||(A.randomizer=new IFA(A.seed||0)),A.randomizer.next()}function QU(A,e,t,r=1){return t.roughness*r*(DFA(t)*(e-A)+A)}function dr(A,e,t=1){return QU(-A,A,e,t)}function YQ(A,e,t,r,i,u=!1){let a=u?i.disableMultiStrokeFill:i.disableMultiStroke,n=WeA(A,e,t,r,i,!0,!1);if(a)return n;let o=WeA(A,e,t,r,i,!0,!0);return n.concat(o)}function WeA(A,e,t,r,i,u,a){let n=Math.pow(A-t,2)+Math.pow(e-r,2),o=Math.sqrt(n),s=1;s=o<200?1:o>500?0.4:-0.0016668*o+1.233334;let l=i.maxRandomnessOffset||0;l*l*100>n&&(l=o/10);let g=l/2,C=0.2+0.2*DFA(i),B=i.bowing*i.maxRandomnessOffset*(r-e)/200,E=i.bowing*i.maxRandomnessOffset*(A-t)/200;B=dr(B,i,s),E=dr(E,i,s);let d=[],I=()=>dr(g,i,s),h=()=>dr(l,i,s),Q=i.preserveVertices;return u&&(a?d.push({op:"move",data:[A+(Q?0:I()),e+(Q?0:I())]}):d.push({op:"move",data:[A+(Q?0:dr(l,i,s)),e+(Q?0:dr(l,i,s))]})),a?d.push({op:"bcurveTo",data:[B+A+(t-A)*C+I(),E+e+(r-e)*C+I(),B+A+2*(t-A)*C+I(),E+e+2*(r-e)*C+I(),t+(Q?0:I()),r+(Q?0:I())]}):d.push({op:"bcurveTo",data:[B+A+(t-A)*C+h(),E+e+(r-e)*C+h(),B+A+2*(t-A)*C+h(),E+e+2*(r-e)*C+h(),t+(Q?0:h()),r+(Q?0:h())]}),d}function EU(A,e,t){if(!A.length)return[];let r=[];r.push([A[0][0]+dr(e,t),A[0][1]+dr(e,t)]),r.push([A[0][0]+dr(e,t),A[0][1]+dr(e,t)]);for(let i=1;i<A.length;i++)r.push([A[i][0]+dr(e,t),A[i][1]+dr(e,t)]),i===A.length-1&&r.push([A[i][0]+dr(e,t),A[i][1]+dr(e,t)]);return pU(r,null,t)}function pU(A,e,t){let r=A.length,i=[];if(r>3){let u=[],a=1-t.curveTightness;i.push({op:"move",data:[A[1][0],A[1][1]]});for(let n=1;n+2<r;n++){let o=A[n];u[0]=[o[0],o[1]],u[1]=[o[0]+(a*A[n+1][0]-a*A[n-1][0])/6,o[1]+(a*A[n+1][1]-a*A[n-1][1])/6],u[2]=[A[n+1][0]+(a*A[n][0]-a*A[n+2][0])/6,A[n+1][1]+(a*A[n][1]-a*A[n+2][1])/6],u[3]=[A[n+1][0],A[n+1][1]],i.push({op:"bcurveTo",data:[u[1][0],u[1][1],u[2][0],u[2][1],u[3][0],u[3][1]]})}if(e&&e.length===2){let n=t.maxRandomnessOffset;i.push({op:"lineTo",data:[e[0]+dr(n,t),e[1]+dr(n,t)]})}}else r===3?(i.push({op:"move",data:[A[1][0],A[1][1]]}),i.push({op:"bcurveTo",data:[A[1][0],A[1][1],A[2][0],A[2][1],A[2][0],A[2][1]]})):r===2&&i.push(...WeA(A[0][0],A[0][1],A[1][0],A[1][1],t,!0,!0));return i}function sFA(A,e,t,r,i,u,a,n){let o=[],s=[];if(n.roughness===0){A/=4,s.push([e+r*Math.cos(-A),t+i*Math.sin(-A)]);for(let l=0;l<=2*Math.PI;l+=A){let g=[e+r*Math.cos(l),t+i*Math.sin(l)];o.push(g),s.push(g)}s.push([e+r*Math.cos(0),t+i*Math.sin(0)]),s.push([e+r*Math.cos(A),t+i*Math.sin(A)])}else{let l=dr(0.5,n)-Math.PI/2;s.push([dr(u,n)+e+0.9*r*Math.cos(l-A),dr(u,n)+t+0.9*i*Math.sin(l-A)]);let g=2*Math.PI+l-0.01;for(let C=l;C<g;C+=A){let B=[dr(u,n)+e+r*Math.cos(C),dr(u,n)+t+i*Math.sin(C)];o.push(B),s.push(B)}s.push([dr(u,n)+e+r*Math.cos(l+2*Math.PI+0.5*a),dr(u,n)+t+i*Math.sin(l+2*Math.PI+0.5*a)]),s.push([dr(u,n)+e+0.98*r*Math.cos(l+a),dr(u,n)+t+0.98*i*Math.sin(l+a)]),s.push([dr(u,n)+e+0.9*r*Math.cos(l+0.5*a),dr(u,n)+t+0.9*i*Math.sin(l+0.5*a)])}return[s,o]}function lFA(A,e,t,r,i,u,a,n,o){let s=u+dr(0.1,o),l=[];l.push([dr(n,o)+e+0.9*r*Math.cos(s-A),dr(n,o)+t+0.9*i*Math.sin(s-A)]);for(let g=s;g<=a;g+=A)l.push([dr(n,o)+e+r*Math.cos(g),dr(n,o)+t+i*Math.sin(g)]);return l.push([e+r*Math.cos(a),t+i*Math.sin(a)]),l.push([e+r*Math.cos(a),t+i*Math.sin(a)]),pU(l,null,o)}function Eot(A,e,t,r,i,u,a,n){let o=[],s=[n.maxRandomnessOffset||1,(n.maxRandomnessOffset||1)+0.3],l=[0,0],g=n.disableMultiStroke?1:2,C=n.preserveVertices;for(let B=0;B<g;B++)B===0?o.push({op:"move",data:[a[0],a[1]]}):o.push({op:"move",data:[a[0]+(C?0:dr(s[0],n)),a[1]+(C?0:dr(s[0],n))]}),l=C?[i,u]:[i+dr(s[B],n),u+dr(s[B],n)],o.push({op:"bcurveTo",data:[A+dr(s[B],n),e+dr(s[B],n),t+dr(s[B],n),r+dr(s[B],n),l[0],l[1]]});return o}function Hv(A){return[...A]}function gFA(A,e=0){let t=A.length;if(t<3)throw Error("A curve must have at least three points.");let r=[];if(t===3)r.push(Hv(A[0]),Hv(A[1]),Hv(A[2]),Hv(A[2]));else{let i=[];i.push(A[0],A[0]);for(let n=1;n<A.length;n++)i.push(A[n]),n===A.length-1&&i.push(A[n]);let u=[],a=1-e;r.push(Hv(i[0]));for(let n=1;n+2<i.length;n++){let o=i[n];u[0]=[o[0],o[1]],u[1]=[o[0]+(a*i[n+1][0]-a*i[n-1][0])/6,o[1]+(a*i[n+1][1]-a*i[n-1][1])/6],u[2]=[i[n+1][0]+(a*i[n][0]-a*i[n+2][0])/6,i[n+1][1]+(a*i[n][1]-a*i[n+2][1])/6],u[3]=[i[n+1][0],i[n+1][1]],r.push(u[1],u[2],u[3])}}return r}function hU(A,e){return Math.pow(A[0]-e[0],2)+Math.pow(A[1]-e[1],2)}function dot(A,e,t){let r=hU(e,t);if(r===0)return hU(A,e);let i=((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r;return i=Math.max(0,Math.min(1,i)),hU(A,vf(e,t,i))}function vf(A,e,t){return[A[0]+(e[0]-A[0])*t,A[1]+(e[1]-A[1])*t]}function qeA(A,e,t,r){let i=r||[];if(function(n,o){let s=n[o+0],l=n[o+1],g=n[o+2],C=n[o+3],B=3*l[0]-2*s[0]-C[0];B*=B;let E=3*l[1]-2*s[1]-C[1];E*=E;let d=3*g[0]-2*C[0]-s[0];d*=d;let I=3*g[1]-2*C[1]-s[1];return I*=I,B<d&&(B=d),E<I&&(E=I),B+E}(A,e)<t){let n=A[e+0];if(i.length)(u=i[i.length-1],a=n,Math.sqrt(hU(u,a)))>1&&i.push(n);else i.push(n);i.push(A[e+3])}else{let o=A[e+0],s=A[e+1],l=A[e+2],g=A[e+3],C=vf(o,s,0.5),B=vf(s,l,0.5),E=vf(l,g,0.5),d=vf(C,B,0.5),I=vf(B,E,0.5),h=vf(d,I,0.5);qeA([o,C,d,h],0,t,i),qeA([h,I,E,g],0,t,i)}var u,a;return i}function Iot(A,e){return fU(A,0,A.length,e)}function fU(A,e,t,r,i){let u=i||[],a=A[e],n=A[t-1],o=0,s=1;for(let l=e+1;l<t-1;++l){let g=dot(A[l],a,n);g>o&&(o=g,s=l)}return Math.sqrt(o)>r?(fU(A,e,s+1,r,u),fU(A,s,t,r,u)):(u.length||u.push(a),u.push(n)),u}function PeA(A,e=0.15,t){let r=[],i=(A.length-1)/3;for(let u=0;u<i;u++)qeA(A,3*u,e,r);return t&&t>0?fU(r,0,r.length,t):r}class Kv{constructor(A){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:0.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:0.8},this.config=A||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2147483648)}_o(A){return A?Object.assign({},this.defaultOptions,A):this.defaultOptions}_d(A,e,t){return{shape:A,sets:e||[],options:t||this.defaultOptions}}line(A,e,t,r,i){let u=this._o(i);return this._d("line",[fFA(A,e,t,r,u)],u)}rectangle(A,e,t,r,i){let u=this._o(i),a=[],n=Bot(A,e,t,r,u);if(u.fill){let o=[[A,e],[A+t,e],[A+t,e+r],[A,e+r]];u.fillStyle==="solid"?a.push(OeA([o],u)):a.push(gy([o],u))}return u.stroke!==ng&&a.push(n),this._d("rectangle",a,u)}ellipse(A,e,t,r,i){let u=this._o(i),a=[],n=mFA(t,r,u),o=_eA(A,e,u,n);if(u.fill)if(u.fillStyle==="solid"){let s=_eA(A,e,u,n).opset;s.type="fillPath",a.push(s)}else a.push(gy([o.estimatedPoints],u));return u.stroke!==ng&&a.push(o.opset),this._d("ellipse",a,u)}circle(A,e,t,r){let i=this.ellipse(A,e,t,t,r);return i.shape="circle",i}linearPath(A,e){let t=this._o(e);return this._d("linearPath",[IU(A,!1,t)],t)}arc(A,e,t,r,i,u,a=!1,n){let o=this._o(n),s=[],l=aFA(A,e,t,r,i,u,a,!0,o);if(a&&o.fill)if(o.fillStyle==="solid"){let g=Object.assign({},o);g.disableMultiStroke=!0;let C=aFA(A,e,t,r,i,u,!0,!1,g);C.type="fillPath",s.push(C)}else s.push(function(g,C,B,E,d,I,h){let Q=g,p=C,m=Math.abs(B/2),f=Math.abs(E/2);m+=dr(0.01*m,h),f+=dr(0.01*f,h);let D=d,w=I;for(;D<0;)D+=2*Math.PI,w+=2*Math.PI;w-D>2*Math.PI&&(D=0,w=2*Math.PI);let b=(w-D)/h.curveStepCount,F=[];for(let v=D;v<=w;v+=b)F.push([Q+m*Math.cos(v),p+f*Math.sin(v)]);return F.push([Q+m*Math.cos(w),p+f*Math.sin(w)]),F.push([Q,p]),gy([F],h)}(A,e,t,r,i,u,o));return o.stroke!==ng&&s.push(l),this._d("arc",s,o)}curve(A,e){let t=this._o(e),r=[],i=uFA(A,t);if(t.fill&&t.fill!==ng)if(t.fillStyle==="solid"){let u=uFA(A,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));r.push({type:"fillPath",ops:this._mergedShape(u.ops)})}else{let u=[],a=A;if(a.length){let n=typeof a[0][0]=="number"?[a]:a;for(let o of n)o.length<3?u.push(...o):o.length===3?u.push(...PeA(gFA([o[0],o[0],o[1],o[2]]),10,(1+t.roughness)/2)):u.push(...PeA(gFA(o),10,(1+t.roughness)/2))}u.length&&r.push(gy([u],t))}return t.stroke!==ng&&r.push(i),this._d("curve",r,t)}polygon(A,e){let t=this._o(e),r=[],i=IU(A,!0,t);return t.fill&&(t.fillStyle==="solid"?r.push(OeA([A],t)):r.push(gy([A],t))),t.stroke!==ng&&r.push(i),this._d("polygon",r,t)}path(A,e){let t=this._o(e),r=[];if(!A)return this._d("path",r,t);A=(A||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let i=t.fill&&t.fill!=="transparent"&&t.fill!==ng,u=t.stroke!==ng,a=!!(t.simplification&&t.simplification<1),n=function(s,l,g){let C=QFA(hFA(zeA(s))),B=[],E=[],d=[0,0],I=[],h=()=>{I.length>=4&&E.push(...PeA(I,l)),I=[]},Q=()=>{h(),E.length&&(B.push(E),E=[])};for(let{key:m,data:f}of C)switch(m){case"M":Q(),d=[f[0],f[1]],E.push(d);break;case"L":h(),E.push([f[0],f[1]]);break;case"C":if(!I.length){let D=E.length?E[E.length-1]:d;I.push([D[0],D[1]])}I.push([f[0],f[1]]),I.push([f[2],f[3]]),I.push([f[4],f[5]]);break;case"Z":h(),E.push([d[0],d[1]])}if(Q(),!g)return B;let p=[];for(let m of B){let f=Iot(m,g);f.length&&p.push(f)}return p}(A,1,a?4-4*(t.simplification||1):(1+t.roughness)/2),o=nFA(A,t);if(i)if(t.fillStyle==="solid")if(n.length===1){let s=nFA(A,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));r.push({type:"fillPath",ops:this._mergedShape(s.ops)})}else r.push(OeA(n,t));else r.push(gy(n,t));return u&&(a?n.forEach((s)=>{r.push(IU(s,!1,t))}):r.push(o)),this._d("path",r,t)}opsToPath(A,e){let t="";for(let r of A.ops){let i=typeof e=="number"&&e>=0?r.data.map((u)=>+u.toFixed(e)):r.data;switch(r.op){case"move":t+=`M${i[0]} ${i[1]} `;break;case"bcurveTo":t+=`C${i[0]} ${i[1]}, ${i[2]} ${i[3]}, ${i[4]} ${i[5]} `;break;case"lineTo":t+=`L${i[0]} ${i[1]} `}}return t.trim()}toPaths(A){let e=A.sets||[],t=A.options||this.defaultOptions,r=[];for(let i of e){let u=null;switch(i.type){case"path":u={d:this.opsToPath(i),stroke:t.stroke,strokeWidth:t.strokeWidth,fill:ng};break;case"fillPath":u={d:this.opsToPath(i),stroke:ng,strokeWidth:0,fill:t.fill||ng};break;case"fillSketch":u=this.fillSketch(i,t)}u&&r.push(u)}return r}fillSketch(A,e){let t=e.fillWeight;return t<0&&(t=e.strokeWidth/2),{d:this.opsToPath(A),stroke:e.fill||ng,strokeWidth:t,fill:ng}}_mergedShape(A){return A.filter((e,t)=>t===0||e.op!=="move")}}class yFA{constructor(A,e){this.canvas=A,this.ctx=this.canvas.getContext("2d"),this.gen=new Kv(e)}draw(A){let e=A.sets||[],t=A.options||this.getDefaultOptions(),r=this.ctx,i=A.options.fixedDecimalPlaceDigits;for(let u of e)switch(u.type){case"path":r.save(),r.strokeStyle=t.stroke==="none"?"transparent":t.stroke,r.lineWidth=t.strokeWidth,t.strokeLineDash&&r.setLineDash(t.strokeLineDash),t.strokeLineDashOffset&&(r.lineDashOffset=t.strokeLineDashOffset),this._drawToContext(r,u,i),r.restore();break;case"fillPath":{r.save(),r.fillStyle=t.fill||"";let a=A.shape==="curve"||A.shape==="polygon"||A.shape==="path"?"evenodd":"nonzero";this._drawToContext(r,u,i,a),r.restore();break}case"fillSketch":this.fillSketch(r,u,t)}}fillSketch(A,e,t){let r=t.fillWeight;r<0&&(r=t.strokeWidth/2),A.save(),t.fillLineDash&&A.setLineDash(t.fillLineDash),t.fillLineDashOffset&&(A.lineDashOffset=t.fillLineDashOffset),A.strokeStyle=t.fill||"",A.lineWidth=r,this._drawToContext(A,e,t.fixedDecimalPlaceDigits),A.restore()}_drawToContext(A,e,t,r="nonzero"){A.beginPath();for(let i of e.ops){let u=typeof t=="number"&&t>=0?i.data.map((a)=>+a.toFixed(t)):i.data;switch(i.op){case"move":A.moveTo(u[0],u[1]);break;case"bcurveTo":A.bezierCurveTo(u[0],u[1],u[2],u[3],u[4],u[5]);break;case"lineTo":A.lineTo(u[0],u[1])}}e.type==="fillPath"?A.fill(r):A.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(A,e,t,r,i){let u=this.gen.line(A,e,t,r,i);return this.draw(u),u}rectangle(A,e,t,r,i){let u=this.gen.rectangle(A,e,t,r,i);return this.draw(u),u}ellipse(A,e,t,r,i){let u=this.gen.ellipse(A,e,t,r,i);return this.draw(u),u}circle(A,e,t,r){let i=this.gen.circle(A,e,t,r);return this.draw(i),i}linearPath(A,e){let t=this.gen.linearPath(A,e);return this.draw(t),t}polygon(A,e){let t=this.gen.polygon(A,e);return this.draw(t),t}arc(A,e,t,r,i,u,a=!1,n){let o=this.gen.arc(A,e,t,r,i,u,a,n);return this.draw(o),o}curve(A,e){let t=this.gen.curve(A,e);return this.draw(t),t}path(A,e){let t=this.gen.path(A,e);return this.draw(t),t}}class wFA{constructor(A,e){this.svg=A,this.gen=new Kv(e)}draw(A){let e=A.sets||[],t=A.options||this.getDefaultOptions(),r=this.svg.ownerDocument||window.document,i=r.createElementNS(dU,"g"),u=A.options.fixedDecimalPlaceDigits;for(let a of e){let n=null;switch(a.type){case"path":n=r.createElementNS(dU,"path"),n.setAttribute("d",this.opsToPath(a,u)),n.setAttribute("stroke",t.stroke),n.setAttribute("stroke-width",t.strokeWidth+""),n.setAttribute("fill","none"),t.strokeLineDash&&n.setAttribute("stroke-dasharray",t.strokeLineDash.join(" ").trim()),t.strokeLineDashOffset&&n.setAttribute("stroke-dashoffset",`${t.strokeLineDashOffset}`);break;case"fillPath":n=r.createElementNS(dU,"path"),n.setAttribute("d",this.opsToPath(a,u)),n.setAttribute("stroke","none"),n.setAttribute("stroke-width","0"),n.setAttribute("fill",t.fill||""),A.shape!=="curve"&&A.shape!=="polygon"||n.setAttribute("fill-rule","evenodd");break;case"fillSketch":n=this.fillSketch(r,a,t)}n&&i.appendChild(n)}return i}fillSketch(A,e,t){let r=t.fillWeight;r<0&&(r=t.strokeWidth/2);let i=A.createElementNS(dU,"path");return i.setAttribute("d",this.opsToPath(e,t.fixedDecimalPlaceDigits)),i.setAttribute("stroke",t.fill||""),i.setAttribute("stroke-width",r+""),i.setAttribute("fill","none"),t.fillLineDash&&i.setAttribute("stroke-dasharray",t.fillLineDash.join(" ").trim()),t.fillLineDashOffset&&i.setAttribute("stroke-dashoffset",`${t.fillLineDashOffset}`),i}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(A,e){return this.gen.opsToPath(A,e)}line(A,e,t,r,i){let u=this.gen.line(A,e,t,r,i);return this.draw(u)}rectangle(A,e,t,r,i){let u=this.gen.rectangle(A,e,t,r,i);return this.draw(u)}ellipse(A,e,t,r,i){let u=this.gen.ellipse(A,e,t,r,i);return this.draw(u)}circle(A,e,t,r){let i=this.gen.circle(A,e,t,r);return this.draw(i)}linearPath(A,e){let t=this.gen.linearPath(A,e);return this.draw(t)}polygon(A,e){let t=this.gen.polygon(A,e);return this.draw(t)}arc(A,e,t,r,i,u,a=!1,n){let o=this.gen.arc(A,e,t,r,i,u,a,n);return this.draw(o)}curve(A,e){let t=this.gen.curve(A,e);return this.draw(t)}path(A,e){let t=this.gen.path(A,e);return this.draw(t)}}var cFA,CFA,nl,cot=0,KeA=1,iFA=2,BU,Cot,ng="none",dU="http://www.w3.org/2000/svg",Ge;var Yt=P(()=>{cFA=class cFA extends mU{fillPolygons(A,e){let t=e.hachureGap;t<0&&(t=4*e.strokeWidth),t=Math.max(t,0.1);let r=Jv(A,Object.assign({},e,{hachureGap:t})),i=Math.PI/180*e.hachureAngle,u=[],a=0.5*t*Math.cos(i),n=0.5*t*Math.sin(i);for(let[o,s]of r)DU([o,s])&&u.push([[o[0]-a,o[1]+n],[...s]],[[o[0]+a,o[1]-n],[...s]]);return{type:"fillSketch",ops:this.renderLines(u,e)}}};CFA=class CFA extends mU{fillPolygons(A,e){let t=this._fillPolygons(A,e),r=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),i=this._fillPolygons(A,r);return t.ops=t.ops.concat(i.ops),t}};nl={};BU={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0};Cot={randOffset:function(A,e){return dr(A,e)},randOffsetWithRange:function(A,e,t){return QU(A,e,t)},ellipse:function(A,e,t,r,i){let u=mFA(t,r,i);return _eA(A,e,i,u).opset},doubleLineOps:function(A,e,t,r,i){return YQ(A,e,t,r,i,!0)}};Ge={canvas:(A,e)=>new yFA(A,e),svg:(A,e)=>new wFA(A,e),generator:(A)=>new Kv(A),newSeed:()=>Kv.newSeed()}});function Qi(A){let e=A.map((t,r)=>`${r===0?"M":"L"}${t.x},${t.y}`);return e.push("Z"),e.join(" ")}function HQ(A,e,t,r,i,u){let a=[],n=50,o=t-A,s=r-e,l=o/u,g=2*Math.PI/l,C=e+s/2;for(let B=0;B<=50;B++){let E=B/50,d=A+E*o,I=C+i*Math.sin(g*(d-A));a.push({x:d,y:I})}return a}function Pv(A,e,t,r,i,u){let a=[],n=i*Math.PI/180,l=(u*Math.PI/180-n)/(r-1);for(let g=0;g<r;g++){let C=n+g*l,B=A+t*Math.cos(C),E=e+t*Math.sin(C);a.push({x:-B,y:-E})}return a}function jeA(A){let e=Array.from(A.childNodes).filter((o)=>o.tagName==="path"),t=document.createElementNS("http://www.w3.org/2000/svg","path"),r=e.map((o)=>o.getAttribute("d")).filter((o)=>o!==null).join(" ");t.setAttribute("d",r);let i=e.find((o)=>o.getAttribute("fill")!=="none"),u=e.find((o)=>o.getAttribute("stroke")!=="none"),a=y((o,s)=>o?.getAttribute(s)??void 0,"getAttr");if(i){let o={fill:a(i,"fill"),"fill-opacity":a(i,"fill-opacity")??"1"};Object.entries(o).forEach(([s,l])=>{if(l)t.setAttribute(s,l)})}if(u){let o={stroke:a(u,"stroke"),"stroke-width":a(u,"stroke-width")??"1","stroke-opacity":a(u,"stroke-opacity")??"1"};Object.entries(o).forEach(([s,l])=>{if(l)t.setAttribute(s,l)})}let n=document.createElementNS("http://www.w3.org/2000/svg","g");return n.appendChild(t),n}function YFA(A,e){return A.intersect(e)}function HFA(A,e,t,r){var{x:i,y:u}=A,a=i-r.x,n=u-r.y,o=Math.sqrt(e*e*n*n+t*t*a*a),s=Math.abs(e*t*a/o);if(r.x<i)s=-s;var l=Math.abs(e*t*n/o);if(r.y<u)l=-l;return{x:i+s,y:u+l}}function JFA(A,e,t){return KFA(A,e,e,t)}function OFA(A,e,t,r){{let i=e.y-A.y,u=A.x-e.x,a=e.x*A.y-A.x*e.y,n=i*t.x+u*t.y+a,o=i*r.x+u*r.y+a,s=0.000001;if(n!==0&&o!==0&&XeA(n,o))return;let l=r.y-t.y,g=t.x-r.x,C=r.x*t.y-t.x*r.y,B=l*A.x+g*A.y+C,E=l*e.x+g*e.y+C;if(Math.abs(B)<0.000001&&Math.abs(E)<0.000001&&XeA(B,E))return;let d=i*g-l*u;if(d===0)return;let I=Math.abs(d/2),h=u*C-g*a,Q=h<0?(h-I)/d:(h+I)/d;h=l*a-i*C;let p=h<0?(h-I)/d:(h+I)/d;return{x:Q,y:p}}}function XeA(A,e){return A*e>0}function PFA(A,e,t){let{x:r,y:i}=A,u=[],{POSITIVE_INFINITY:a,POSITIVE_INFINITY:n}=Number;if(typeof e.forEach==="function")e.forEach(function(l){a=Math.min(a,l.x),n=Math.min(n,l.y)});else a=Math.min(a,e.x),n=Math.min(n,e.y);let o=r-A.width/2-a,s=i-A.height/2-n;for(let l=0;l<e.length;l++){let g=e[l],C=e[l<e.length-1?l+1:0],B=Fot(A,t,{x:o+g.x,y:s+g.y},{x:o+C.x,y:s+C.y});if(B)u.push(B)}if(!u.length)return A;if(u.length>1)u.sort(function(l,g){let C=l.x-t.x,B=l.y-t.y,E=Math.sqrt(C*C+B*B),d=g.x-t.x,I=g.y-t.y,h=Math.sqrt(d*d+I*I);return E<h?-1:E===h?0:1});return u[0]}function _FA(A,e){let{labelStyles:t}=bt(e);e.labelStyle=t;let r=cr(e),i=r;if(!r)i="anchor";let u=A.insert("g").attr("class",i).attr("id",e.domId||e.id),a=1,{cssStyles:n}=e,o=Ge.svg(u),s=St(e,{fill:"black",stroke:"none",fillStyle:"solid"});if(e.look!=="handDrawn")s.roughness=0;let l=o.circle(0,0,a*2,s),g=u.insert(()=>l,":first-child");return g.attr("class","anchor").attr("style",Ln(n)),Pt(e,g),e.intersect=function(C){return sA.info("Circle intersect",e,a,C),Ft.circle(e,a,C)},u}function $eA(A,e,t,r,i,u,a){let o=(A+t)/2,s=(e+r)/2,l=Math.atan2(r-e,t-A),g=(t-A)/2,C=(r-e)/2,B=g/i,E=C/u,d=Math.sqrt(B**2+E**2);if(d>1)throw Error("The given radii are too small to create an arc between the points.");let I=Math.sqrt(1-d**2),h=o+I*u*Math.sin(l)*(a?-1:1),Q=s-I*i*Math.cos(l)*(a?-1:1),p=Math.atan2((e-Q)/u,(A-h)/i),f=Math.atan2((r-Q)/u,(t-h)/i)-p;if(a&&f<0)f+=2*Math.PI;if(!a&&f>0)f-=2*Math.PI;let D=[];for(let w=0;w<20;w++){let b=w/19,F=p+b*f,v=h+i*Math.cos(F),S=Q+u*Math.sin(F);D.push({x:v,y:S})}return D}function WFA(A,e,t){let[r,i]=[e,t].sort((u,a)=>a-u);return i*(1-Math.sqrt(1-(A/r/2)**2))}async function qFA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=y((F)=>F+a,"calcTotalHeight"),o=y((F)=>{let v=F/2;return[v/(2.5+F/50),v]},"calcEllipseRadius"),{shapeSvg:s,bbox:l}=await Ir(A,e,cr(e)),g=n(e?.height?e?.height:l.height),[C,B]=o(g),E=WFA(g,C,B),I=(e?.width?e?.width:l.width)+u*2+E-E,h=g,{cssStyles:Q}=e,p=[{x:I/2,y:-h/2},{x:-I/2,y:-h/2},...$eA(-I/2,-h/2,-I/2,h/2,C,B,!1),{x:I/2,y:h/2},...$eA(I/2,h/2,I/2,-h/2,C,B,!0)],m=Ge.svg(s),f=St(e,{});if(e.look!=="handDrawn")f.roughness=0,f.fillStyle="solid";let D=Qi(p),w=m.path(D,f),b=s.insert(()=>w,":first-child");if(b.attr("class","basic label-container outer-path"),Q&&e.look!=="handDrawn")b.selectAll("path").attr("style",Q);if(r&&e.look!=="handDrawn")b.selectAll("path").attr("style",r);return b.attr("transform",`translate(${C/2}, 0)`),Pt(e,b),e.intersect=function(F){return Ft.polygon(e,p,F)},s}function yI(A,e,t,r){return A.insert("polygon",":first-child").attr("points",r.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+t/2+")")}async function zFA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?28:i,a=e.look==="neo"?24:i,{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=(e?.width??o.width)+(e.look==="neo"?u*2:u+yU),l=(e?.height??o.height)+(e.look==="neo"?a*2:a),g=0,C=s,B=-l,E=0,d=[{x:g+yU,y:B},{x:C,y:B},{x:C,y:E},{x:g,y:E},{x:g,y:B+yU},{x:g+yU,y:B}],I,{cssStyles:h}=e;if(e.look==="handDrawn"){let Q=Ge.svg(n),p=St(e,{}),m=Qi(d),f=Q.path(m,p);if(I=n.insert(()=>f,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),h)I.attr("style",h)}else I=yI(n,s,l,d);if(r)I.attr("style",r);return Pt(e,I),e.intersect=function(Q){return Ft.polygon(e,d,Q)},n}function ZFA(A,e){let{nodeStyles:t}=bt(e);e.label="";let r=A.insert("g").attr("class",cr(e)).attr("id",e.domId??e.id),{cssStyles:i}=e,u=Math.max(28,e.width??0),a=[{x:0,y:u/2},{x:u/2,y:0},{x:0,y:-u/2},{x:-u/2,y:0}],n=Ge.svg(r),o=St(e,{});if(e.look!=="handDrawn")o.roughness=0,o.fillStyle="solid";let s=Qi(a),l=n.path(s,o),g=r.insert(()=>l,":first-child");if(i&&e.look!=="handDrawn")g.selectAll("path").attr("style",i);if(t&&e.look!=="handDrawn")g.selectAll("path").attr("style",t);return e.width=28,e.height=28,e.intersect=function(C){return Ft.polygon(e,a,C)},r}async function AtA(A,e,t){let{labelStyles:r,nodeStyles:i}=bt(e);e.labelStyle=r;let{shapeSvg:u,bbox:a,halfPadding:n}=await Ir(A,e,cr(e)),o=16,s=t?.padding??n,l=e.look==="neo"?a.width/2+o*2:a.width/2+s,g,{cssStyles:C}=e;if(e.look==="handDrawn"){let B=Ge.svg(u),E=St(e,{}),d=B.circle(0,0,l*2,E);g=u.insert(()=>d,":first-child"),g.attr("class","basic label-container").attr("style",Ln(C))}else g=u.insert("circle",":first-child").attr("class","basic label-container").attr("style",i).attr("r",l).attr("cx",0).attr("cy",0);return Pt(e,g),e.calcIntersect=function(B,E){let d=B.width/2;return Ft.circle(B,d,E)},e.intersect=function(B){return sA.info("Circle intersect",e,l,B),Ft.circle(e,l,B)},u}function VFA(A){let e=Math.cos(Math.PI/4),t=Math.sin(Math.PI/4),r=A*2,i={x:r/2*e,y:r/2*t},u={x:-(r/2)*e,y:r/2*t},a={x:-(r/2)*e,y:-(r/2)*t},n={x:r/2*e,y:-(r/2)*t};return`M ${u.x},${u.y} L ${n.x},${n.y}
|
||
M ${i.x},${i.y} L ${a.x},${a.y}`}function jFA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t,e.label="";let i=A.insert("g").attr("class",cr(e)).attr("id",e.domId??e.id),u=Math.max(30,e?.width??0),{cssStyles:a}=e,n=Ge.svg(i),o=St(e,{});if(e.look!=="handDrawn")o.roughness=0,o.fillStyle="solid";let s=n.circle(0,0,u*2,o),l=VFA(u),g=n.path(l,o),C=i.insert(()=>s,":first-child");if(C.insert(()=>g),C.attr("class","outer-path"),a&&e.look!=="handDrawn")C.selectAll("path").attr("style",a);if(r&&e.look!=="handDrawn")C.selectAll("path").attr("style",r);return Pt(e,C),e.intersect=function(B){return sA.info("crossedCircle intersect",e,{radius:u,point:B}),Ft.circle(e,u,B)},i}function fI(A,e,t,r=100,i=0,u=180){let a=[],n=i*Math.PI/180,l=(u*Math.PI/180-n)/(r-1);for(let g=0;g<r;g++){let C=n+g*l,B=A+t*Math.cos(C),E=e+t*Math.sin(C);a.push({x:-B,y:-E})}return a}async function XFA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Ir(A,e,cr(e)),n=e.look==="neo"?18:e.padding??0,o=e.look==="neo"?12:e.padding??0,s=u.width+n,l=u.height+o,g=Math.max(5,l*0.1),{cssStyles:C}=e,B=[...fI(s/2,-l/2,g,30,-90,0),{x:-s/2-g,y:g},...fI(s/2+g*2,-g,g,20,-180,-270),...fI(s/2+g*2,g,g,20,-90,-180),{x:-s/2-g,y:-l/2},...fI(s/2,l/2,g,20,0,90)],E=[{x:s/2,y:-l/2-g},{x:-s/2,y:-l/2-g},...fI(s/2,-l/2,g,20,-90,0),{x:-s/2-g,y:-g},...fI(s/2+s*0.1,-g,g,20,-180,-270),...fI(s/2+s*0.1,g,g,20,-90,-180),{x:-s/2-g,y:l/2},...fI(s/2,l/2,g,20,0,90),{x:-s/2,y:l/2+g},{x:s/2,y:l/2+g}],d=Ge.svg(i),I=St(e,{fill:"none"});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let Q=Qi(B).replace("Z",""),p=d.path(Q,I),m=Qi(E),f=d.path(m,{...I}),D=i.insert("g",":first-child");if(D.insert(()=>f,":first-child").attr("stroke-opacity",0),D.insert(()=>p,":first-child"),D.attr("class","text"),C&&e.look!=="handDrawn")D.selectAll("path").attr("style",C);if(r&&e.look!=="handDrawn")D.selectAll("path").attr("style",r);return D.attr("transform",`translate(${g}, 0)`),a.attr("transform",`translate(${-s/2+g-(u.x-(u.left??0))},${-l/2+(e.padding??0)/2-(u.y-(u.top??0))})`),Pt(e,D),e.intersect=function(w){return Ft.polygon(e,E,w)},i}function mI(A,e,t,r=100,i=0,u=180){let a=[],n=i*Math.PI/180,l=(u*Math.PI/180-n)/(r-1);for(let g=0;g<r;g++){let C=n+g*l,B=A+t*Math.cos(C),E=e+t*Math.sin(C);a.push({x:B,y:E})}return a}async function $FA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Ir(A,e,cr(e)),n=e.look==="neo"?18:e.padding??0,o=e.look==="neo"?12:e.padding??0,s=u.width+(e.look==="neo"?n*2:n),l=u.height+(e.look==="neo"?o*2:o),g=Math.max(5,l*0.1),{cssStyles:C}=e,B=[...mI(s/2,-l/2,g,20,-90,0),{x:s/2+g,y:-g},...mI(s/2+g*2,-g,g,20,-180,-270),...mI(s/2+g*2,g,g,20,-90,-180),{x:s/2+g,y:l/2},...mI(s/2,l/2,g,20,0,90)],E=[{x:-s/2,y:-l/2-g},{x:s/2,y:-l/2-g},...mI(s/2,-l/2,g,20,-90,0),{x:s/2+g,y:-g},...mI(s/2+g*2,-g,g,20,-180,-270),...mI(s/2+g*2,g,g,20,-90,-180),{x:s/2+g,y:l/2},...mI(s/2,l/2,g,20,0,90),{x:s/2,y:l/2+g},{x:-s/2,y:l/2+g}],d=Ge.svg(i),I=St(e,{fill:"none"});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let Q=Qi(B).replace("Z",""),p=d.path(Q,I),m=Qi(E),f=d.path(m,{...I}),D=i.insert("g",":first-child");if(D.insert(()=>f,":first-child").attr("stroke-opacity",0),D.insert(()=>p,":first-child"),D.attr("class","text"),C&&e.look!=="handDrawn")D.selectAll("path").attr("style",C);if(r&&e.look!=="handDrawn")D.selectAll("path").attr("style",r);return D.attr("transform",`translate(${-g}, 0)`),a.attr("transform",`translate(${-s/2+(e.padding??0)/2-(u.x-(u.left??0))},${-l/2+(e.padding??0)/2-(u.y-(u.top??0))})`),Pt(e,D),e.intersect=function(w){return Ft.polygon(e,E,w)},i}function i0(A,e,t,r=100,i=0,u=180){let a=[],n=i*Math.PI/180,l=(u*Math.PI/180-n)/(r-1);for(let g=0;g<r;g++){let C=n+g*l,B=A+t*Math.cos(C),E=e+t*Math.sin(C);a.push({x:-B,y:-E})}return a}async function AxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Ir(A,e,cr(e)),n=e.look==="neo"?18:e.padding??0,o=e.look==="neo"?12:e.padding??0,s=u.width+(e.look==="neo"?n*2:n),l=u.height+(e.look==="neo"?o*2:o),g=Math.max(5,l*0.1),{cssStyles:C}=e,B=[...i0(s/2,-l/2,g,30,-90,0),{x:-s/2-g,y:g},...i0(s/2+g*2,-g,g,20,-180,-270),...i0(s/2+g*2,g,g,20,-90,-180),{x:-s/2-g,y:-l/2},...i0(s/2,l/2,g,20,0,90)],E=[...i0(-s/2+g+g/2,-l/2,g,20,-90,-180),{x:s/2-g/2,y:g},...i0(-s/2-g/2,-g,g,20,0,90),...i0(-s/2-g/2,g,g,20,-90,0),{x:s/2-g/2,y:-g},...i0(-s/2+g+g/2,l/2,g,30,-180,-270)],d=[{x:s/2,y:-l/2-g},{x:-s/2,y:-l/2-g},...i0(s/2,-l/2,g,20,-90,0),{x:-s/2-g,y:-g},...i0(s/2+g*2,-g,g,20,-180,-270),...i0(s/2+g*2,g,g,20,-90,-180),{x:-s/2-g,y:l/2},...i0(s/2,l/2,g,20,0,90),{x:-s/2,y:l/2+g},{x:s/2-g-g/2,y:l/2+g},...i0(-s/2+g+g/2,-l/2,g,20,-90,-180),{x:s/2-g/2,y:g},...i0(-s/2-g/2,-g,g,20,0,90),...i0(-s/2-g/2,g,g,20,-90,0),{x:s/2-g/2,y:-g},...i0(-s/2+g+g/2,l/2,g,30,-180,-270)],I=Ge.svg(i),h=St(e,{fill:"none"});if(e.look!=="handDrawn")h.roughness=0,h.fillStyle="solid";let p=Qi(B).replace("Z",""),m=I.path(p,h),D=Qi(E).replace("Z",""),w=I.path(D,h),b=Qi(d),F=I.path(b,{...h}),v=i.insert("g",":first-child");if(v.insert(()=>F,":first-child").attr("stroke-opacity",0),v.insert(()=>m,":first-child"),v.insert(()=>w,":first-child"),v.attr("class","text"),C&&e.look!=="handDrawn")v.selectAll("path").attr("style",C);if(r&&e.look!=="handDrawn")v.selectAll("path").attr("style",r);return v.attr("transform",`translate(${g-g/4}, 0)`),a.attr("transform",`translate(${-s/2+(e.padding??0)/2-(u.x-(u.left??0))},${-l/2+(e.padding??0)/2-(u.y-(u.top??0))})`),Pt(e,v),e.intersect=function(S){return Ft.polygon(e,d,S)},i}async function exA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=20,o=5,{shapeSvg:s,bbox:l}=await Ir(A,e,cr(e)),g=Math.max(n,(l.width+u*2)*1.25,e?.width??0),C=Math.max(o,l.height+a*2,e?.height??0),B=C/2,{cssStyles:E}=e,d=Ge.svg(s),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=g,Q=C,p=h-B,m=Q/4,f=[{x:p,y:0},{x:m,y:0},{x:0,y:Q/2},{x:m,y:Q},{x:p,y:Q},...Pv(-p,-Q/2,B,50,270,90)],D=Qi(f),w=d.path(D,I),b=s.insert(()=>w,":first-child");if(b.attr("class","basic label-container outer-path"),E&&e.look!=="handDrawn")b.selectChildren("path").attr("style",E);if(r&&e.look!=="handDrawn")b.selectChildren("path").attr("style",r);return b.attr("transform",`translate(${-g/2}, ${-C/2})`),Pt(e,b),e.intersect=function(F){return Ft.polygon(e,f,F)},s}async function txA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?24:i,a=e.look==="neo"?24:i;if(e.width||e.height){let I=e.width??0;if(e.width=(e.width??0)-a,e.width<vFA)e.width=vFA;let Q=I/2/(2.5+I/50);if(e.height=(e.height??0)-u-Q*3,e.height<bFA)e.height=bFA}let{shapeSvg:n,bbox:o,label:s}=await Ir(A,e,cr(e)),l=(e.width?e.width:o.width)+a,g=l/2,C=g/(2.5+l/50),B=(e.height?e.height:o.height)+u+C,E,{cssStyles:d}=e;if(e.look==="handDrawn"){let I=Ge.svg(n),h=Lot(0,0,l,B,g,C),Q=Rot(0,C,l,B,g,C),p=St(e,{}),m=I.path(h,p),f=I.path(Q,St(e,{fill:"none"}));if(E=n.insert(()=>f,":first-child"),E=n.insert(()=>m,":first-child"),E.attr("class","basic label-container"),d)E.attr("style",d)}else{let I=Sot(0,0,l,B,g,C);E=n.insert("path",":first-child").attr("d",I).attr("class","basic label-container outer-path").attr("style",Ln(d)).attr("style",r)}return E.attr("label-offset-y",C),E.attr("transform",`translate(${-l/2}, ${-(B/2+C)})`),Pt(e,E),s.attr("transform",`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${-(o.height/2)+(e.padding??0)/1.5-(o.y-(o.top??0))})`),e.intersect=function(I){let h=Ft.rect(e,I),Q=h.x-(e.x??0);if(g!=0&&(Math.abs(Q)<(e.width??0)/2||Math.abs(Q)==(e.width??0)/2&&Math.abs(h.y-(e.y??0))>(e.height??0)/2-C)){let p=C*C*(1-Q*Q/(g*g));if(p>0)p=Math.sqrt(p);if(p=C-p,I.y-(e.y??0)>0)p=-p;h.y+=p}return h},n}async function Ey(A,e,t){let{labelStyles:r,nodeStyles:i}=bt(e);e.labelStyle=r;let{shapeSvg:u,bbox:a}=await Ir(A,e,cr(e)),n=Math.max(a.width+t.labelPaddingX*2,e?.width||0),o=Math.max(a.height+t.labelPaddingY*2,e?.height||0),s=-n/2,l=-o/2,g,{rx:C,ry:B}=e,{cssStyles:E}=e;if(t?.rx&&t.ry)C=t.rx,B=t.ry;if(e.look==="handDrawn"){let d=Ge.svg(u),I=St(e,{}),h=C||B?d.path(KQ(s,l,n,o,C||0),I):d.rectangle(s,l,n,o,I);g=u.insert(()=>h,":first-child"),g.attr("class","basic label-container").attr("style",Ln(E))}else g=u.insert("rect",":first-child"),g.attr("class","basic label-container").attr("style",i).attr("rx",Ln(C)).attr("ry",Ln(B)).attr("x",s).attr("y",l).attr("width",n).attr("height",o);return Pt(e,g),e.calcIntersect=function(d,I){return Ft.rect(d,I)},e.intersect=function(d){return Ft.rect(e,d)},u}async function rxA(A,e){let{cssClasses:t,labelPaddingX:r,labelPaddingY:i,padding:u,width:a,height:n}=e,o={rx:0,ry:0,classes:t??"",labelPaddingX:r??(u??0)*2,labelPaddingY:i??u??0},s=await Ey(A,e,o);if(e.look==="handDrawn"){let B=Ge.svg(s),E=St(e,{}),d=s.select(".basic.label-container > path:nth-child(2)"),I=d.node();if(!I)return s;let h=null;if(I instanceof SVGGraphicsElement)h=I.getBBox();else return s;return s.insert(()=>B.line(h.x,h.y,h.x+h.width,h.y,E),".basic.label-container g.label"),s.insert(()=>B.line(h.x,h.y+h.height,h.x+h.width,h.y+h.height,E),".basic.label-container g.label"),d.remove(),s}let l=s.select(".basic.label-container"),g=(Number(l.attr("width"))||a)??0,C=(Number(l.attr("height"))||n)??0;if(g>0&&C>0)l.attr("stroke-dasharray",`${g} ${C}`);return s}async function ixA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.look==="neo"?16:e.padding??0,u=e.look==="neo"?16:e.padding??0,{shapeSvg:a,bbox:n,label:o}=await Ir(A,e,cr(e)),s=n.width+i,l=n.height+u,g=l*0.2,C=-s/2,B=-l/2-g/2,{cssStyles:E}=e,d=Ge.svg(a),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=[{x:C,y:B+g},{x:-C,y:B+g},{x:-C,y:-B},{x:C,y:-B},{x:C,y:B},{x:-C,y:B},{x:-C,y:B+g}],Q=d.polygon(h.map((m)=>[m.x,m.y]),I),p=a.insert(()=>Q,":first-child");if(p.attr("class","basic label-container outer-path"),E&&e.look!=="handDrawn")p.selectAll("path").attr("style",E);if(r&&e.look!=="handDrawn")p.selectAll("path").attr("style",r);return o.attr("transform",`translate(${C+(e.padding??0)/2-(n.x-(n.left??0))}, ${B+g+(e.padding??0)/2-(n.y-(n.top??0))})`),Pt(e,p),e.intersect=function(m){return Ft.rect(e,m)},a}async function uxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e),i=e.look==="neo"?12:5;e.labelStyle=t;let u=e.padding??0,a=e.look==="neo"?16:u,{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=(e?.width?e?.width/2:o.width/2)+(a??0),l=s-i,g,{cssStyles:C}=e;if(e.look==="handDrawn"){let B=Ge.svg(n),E=St(e,{roughness:0.2,strokeWidth:2.5}),d=St(e,{roughness:0.2,strokeWidth:1.5}),I=B.circle(0,0,s*2,E),h=B.circle(0,0,l*2,d);g=n.insert("g",":first-child"),g.attr("class",Ln(e.cssClasses)).attr("style",Ln(C)),g.node()?.appendChild(I),g.node()?.appendChild(h)}else{g=n.insert("g",":first-child");let B=g.insert("circle",":first-child"),E=g.insert("circle");g.attr("class","basic label-container").attr("style",r),B.attr("class","outer-circle").attr("style",r).attr("r",s).attr("cx",0).attr("cy",0),E.attr("class","inner-circle").attr("style",r).attr("r",l).attr("cx",0).attr("cy",0)}return Pt(e,g),e.intersect=function(B){return sA.info("DoubleCircle intersect",e,s,B),Ft.circle(e,s,B)},n}function axA(A,e,{config:{themeVariables:t}}){let{labelStyles:r,nodeStyles:i}=bt(e);e.label="",e.labelStyle=r;let u=A.insert("g").attr("class",cr(e)).attr("id",e.domId??e.id),a=7,{cssStyles:n}=e,o=Ge.svg(u),{nodeBorder:s}=t,l=St(e,{fillStyle:"solid"});if(e.look!=="handDrawn")l.roughness=0;let g=o.circle(0,0,a*2,l),C=u.insert(()=>g,":first-child");if(C.selectAll("path").attr("style",`fill: ${s} !important;`),n&&n.length>0&&e.look!=="handDrawn")C.selectAll("path").attr("style",n);if(i&&e.look!=="handDrawn")C.selectAll("path").attr("style",i);return Pt(e,C),e.intersect=function(B){return sA.info("filledCircle intersect",e,{radius:a,point:B}),Ft.circle(e,a,B)},u}async function nxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?i*2:i;if(e.width||e.height){if(e.height=e?.height??0,e.height<kFA)e.height=kFA;if(e.width=(e?.width??0)-u-u/2,e.width<FFA)e.width=FFA}let{shapeSvg:a,bbox:n,label:o}=await Ir(A,e,cr(e)),s=(e?.width?e?.width:n.width)+(u??0),l=e?.height?e?.height:s+n.height,g=l,C=[{x:0,y:-l},{x:g,y:-l},{x:g/2,y:0}],{cssStyles:B}=e,E=Ge.svg(a),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=Qi(C),h=E.path(I,d),Q=a.insert(()=>h,":first-child").attr("transform",`translate(${-l/2}, ${l/2})`).attr("class","outer-path");if(B&&e.look!=="handDrawn")Q.selectChildren("path").attr("style",B);if(r&&e.look!=="handDrawn")Q.selectChildren("path").attr("style",r);return e.width=s,e.height=l,Pt(e,Q),o.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))}, ${-l/2+(e.padding??0)/2+(n.y-(n.top??0))})`),e.intersect=function(p){return sA.info("Triangle intersect",e,C,p),Ft.polygon(e,C,p)},a}function oxA(A,e,{dir:t,config:{state:r,themeVariables:i}}){let{nodeStyles:u}=bt(e);e.label="";let a=A.insert("g").attr("class",cr(e)).attr("id",e.domId??e.id),{cssStyles:n}=e,o=Math.max(70,e?.width??0),s=Math.max(10,e?.height??0);if(t==="LR")o=Math.max(10,e?.width??0),s=Math.max(70,e?.height??0);let l=-1*o/2,g=-1*s/2,C=Ge.svg(a),B=St(e,{stroke:i.lineColor,fill:i.lineColor});if(e.look!=="handDrawn")B.roughness=0,B.fillStyle="solid";let E=C.rectangle(l,g,o,s,B),d=a.insert(()=>E,":first-child");if(n&&e.look!=="handDrawn")d.selectAll("path").attr("style",n);if(u&&e.look!=="handDrawn")d.selectAll("path").attr("style",u);Pt(e,d);let I=r?.padding??0;if(e.width&&e.height)e.width+=I/2||0,e.height+=I/2||0;return e.intersect=function(h){return Ft.rect(e,h)},a}async function sxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=15,u=10,a=e.look==="neo"?16:e.padding??0,n=e.look==="neo"?12:e.padding??0;if(e.width||e.height){if(e.height=(e?.height??0)-n*2,e.height<u)e.height=u;if(e.width=(e?.width??0)-a*2,e.width<i)e.width=i}let{shapeSvg:o,bbox:s}=await Ir(A,e,cr(e)),l=(e?.width?e?.width:Math.max(i,s.width))+a*2,g=(e?.height?e?.height:Math.max(u,s.height))+n*2,C=g/2,{cssStyles:B}=e,E=Ge.svg(o),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=[{x:-l/2,y:-g/2},{x:l/2-C,y:-g/2},...Pv(-l/2+C,0,C,50,90,270),{x:l/2-C,y:g/2},{x:-l/2,y:g/2}],h=Qi(I),Q=E.path(h,d),p=o.insert(()=>Q,":first-child");if(p.attr("class","basic label-container outer-path"),B&&e.look!=="handDrawn")p.selectChildren("path").attr("style",B);if(r&&e.look!=="handDrawn")p.selectChildren("path").attr("style",r);return Pt(e,p),e.intersect=function(m){return sA.info("Pill intersect",e,{radius:C,point:m}),Ft.polygon(e,I,m)},o}async function lxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e),i=e.look==="neo"?3.5:4;e.labelStyle=t;let u=e.padding??0,a=70,n=32,o=e.look==="neo"?a:u,s=e.look==="neo"?n:u;if(e.width||e.height){let p=(e.height??0)/i;e.width=(e?.width??0)-2*p-s,e.height=(e.height??0)-o}let{shapeSvg:l,bbox:g}=await Ir(A,e,cr(e)),C=(e?.height?e?.height:g.height)+o,B=C/i,E=(e?.width?e?.width:g.width)+2*B+s,d=[{x:B,y:0},{x:E-B,y:0},{x:E,y:-C/2},{x:E-B,y:-C},{x:B,y:-C},{x:0,y:-C/2}],I,{cssStyles:h}=e;if(e.look==="handDrawn"){let Q=Ge.svg(l),p=St(e,{}),m=Not(0,0,E,C,B),f=Q.path(m,p);if(I=l.insert(()=>f,":first-child").attr("transform",`translate(${-E/2}, ${C/2})`),h)I.attr("style",h)}else I=yI(l,E,C,d);if(r)I.attr("style",r);return e.width=E,e.height=C,Pt(e,I),e.intersect=function(Q){return Ft.polygon(e,d,Q)},l}async function gxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.label="",e.labelStyle=t;let{shapeSvg:i}=await Ir(A,e,cr(e)),u=Math.max(30,e?.width??0),a=Math.max(30,e?.height??0),{cssStyles:n}=e,o=Ge.svg(i),s=St(e,{});if(e.look!=="handDrawn")s.roughness=0,s.fillStyle="solid";let l=[{x:0,y:0},{x:u,y:0},{x:0,y:a},{x:u,y:a}],g=Qi(l),C=o.path(g,s),B=i.insert(()=>C,":first-child");if(B.attr("class","basic label-container outer-path"),n&&e.look!=="handDrawn")B.selectChildren("path").attr("style",n);if(r&&e.look!=="handDrawn")B.selectChildren("path").attr("style",r);return B.attr("transform",`translate(${-u/2}, ${-a/2})`),Pt(e,B),e.intersect=function(E){return sA.info("Pill intersect",e,{points:l}),Ft.polygon(e,l,E)},i}async function cxA(A,e,{config:{themeVariables:t,flowchart:r}}){let{labelStyles:i}=bt(e);e.labelStyle=i;let u=e.assetHeight??48,a=e.assetWidth??48,n=Math.max(u,a),o=r?.wrappingWidth;e.width=Math.max(n,o??0);let{shapeSvg:s,bbox:l,label:g}=await Ir(A,e,"icon-shape default"),C=e.pos==="t",B=n,E=n,{nodeBorder:d}=t,{stylesMap:I}=mf(e),h=-E/2,Q=-B/2,p=e.label?8:0,m=Ge.svg(s),f=St(e,{stroke:"none",fill:"none"});if(e.look!=="handDrawn")f.roughness=0,f.fillStyle="solid";let D=m.rectangle(h,Q,E,B,f),w=Math.max(E,l.width),b=B+l.height+p,F=m.rectangle(-w/2,-b/2,w,b,{...f,fill:"transparent",stroke:"none"}),v=s.insert(()=>D,":first-child"),S=s.insert(()=>F);if(e.icon){let x=s.append("g");x.html(`<g>${await ag(e.icon,{height:n,width:n,fallbackPrefix:""})}</g>`);let k=x.node().getBBox(),{width:T,height:R,x:L,y:M}=k;x.attr("transform",`translate(${-T/2-L},${C?l.height/2+p/2-R/2-M:-l.height/2-p/2-R/2-M})`),x.attr("style",`color: ${I.get("stroke")??d};`)}return g.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))},${C?-b/2:b/2-l.height})`),v.attr("transform",`translate(0,${C?l.height/2+p/2:-l.height/2-p/2})`),Pt(e,S),e.intersect=function(x){if(sA.info("iconSquare intersect",e,x),!e.label)return Ft.rect(e,x);let k=e.x??0,T=e.y??0,R=e.height??0,L=[];if(C)L=[{x:k-l.width/2,y:T-R/2},{x:k+l.width/2,y:T-R/2},{x:k+l.width/2,y:T-R/2+l.height+p},{x:k+E/2,y:T-R/2+l.height+p},{x:k+E/2,y:T+R/2},{x:k-E/2,y:T+R/2},{x:k-E/2,y:T-R/2+l.height+p},{x:k-l.width/2,y:T-R/2+l.height+p}];else L=[{x:k-E/2,y:T-R/2},{x:k+E/2,y:T-R/2},{x:k+E/2,y:T-R/2+B},{x:k+l.width/2,y:T-R/2+B},{x:k+l.width/2/2,y:T+R/2},{x:k-l.width/2,y:T+R/2},{x:k-l.width/2,y:T-R/2+B},{x:k-E/2,y:T-R/2+B}];return Ft.polygon(e,L,x)},s}async function CxA(A,e,{config:{themeVariables:t,flowchart:r}}){let{labelStyles:i}=bt(e);e.labelStyle=i;let u=e.assetHeight??48,a=e.assetWidth??48,n=Math.max(u,a),o=r?.wrappingWidth;e.width=Math.max(n,o??0);let{shapeSvg:s,bbox:l,label:g}=await Ir(A,e,"icon-shape default"),C=20,B=e.label?8:0,E=e.pos==="t",{nodeBorder:d,mainBkg:I}=t,{stylesMap:h}=mf(e),Q=Ge.svg(s),p=St(e,{});if(e.look!=="handDrawn")p.roughness=0,p.fillStyle="solid";let m=h.get("fill");p.stroke=m??I;let f=s.append("g");if(e.icon)f.html(`<g>${await ag(e.icon,{height:n,width:n,fallbackPrefix:""})}</g>`);let D=f.node().getBBox(),{width:w,height:b,x:F,y:v}=D,S=Math.max(w,b)*Math.SQRT2+C*2,x=Q.circle(0,0,S,p),k=Math.max(S,l.width),T=S+l.height+B,R=Q.rectangle(-k/2,-T/2,k,T,{...p,fill:"transparent",stroke:"none"}),L=s.insert(()=>x,":first-child"),M=s.insert(()=>R);return f.attr("transform",`translate(${-w/2-F},${E?l.height/2+B/2-b/2-v:-l.height/2-B/2-b/2-v})`),f.attr("style",`color: ${h.get("stroke")??d};`),g.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))},${E?-T/2:T/2-l.height})`),L.attr("transform",`translate(0,${E?l.height/2+B/2:-l.height/2-B/2})`),Pt(e,M),e.intersect=function(U){return sA.info("iconSquare intersect",e,U),Ft.rect(e,U)},s}async function BxA(A,e,{config:{themeVariables:t,flowchart:r}}){let{labelStyles:i}=bt(e);e.labelStyle=i;let u=e.assetHeight??48,a=e.assetWidth??48,n=Math.max(u,a),o=r?.wrappingWidth;e.width=Math.max(n,o??0);let{shapeSvg:s,bbox:l,halfPadding:g,label:C}=await Ir(A,e,"icon-shape default"),B=e.pos==="t",E=n+g*2,d=n+g*2,{nodeBorder:I,mainBkg:h}=t,{stylesMap:Q}=mf(e),p=-d/2,m=-E/2,f=e.label?8:0,D=Ge.svg(s),w=St(e,{});if(e.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let b=Q.get("fill");w.stroke=b??h;let F=D.path(KQ(p,m,d,E,5),w),v=Math.max(d,l.width),S=E+l.height+f,x=D.rectangle(-v/2,-S/2,v,S,{...w,fill:"transparent",stroke:"none"}),k=s.insert(()=>F,":first-child").attr("class","icon-shape2"),T=s.insert(()=>x);if(e.icon){let R=s.append("g");R.html(`<g>${await ag(e.icon,{height:n,width:n,fallbackPrefix:""})}</g>`);let L=R.node().getBBox(),{width:M,height:U,x:Y,y:H}=L;R.attr("transform",`translate(${-M/2-Y},${B?l.height/2+f/2-U/2-H:-l.height/2-f/2-U/2-H})`),R.attr("style",`color: ${Q.get("stroke")??I};`)}return C.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))},${B?-S/2:S/2-l.height})`),k.attr("transform",`translate(0,${B?l.height/2+f/2:-l.height/2-f/2})`),Pt(e,T),e.intersect=function(R){if(sA.info("iconSquare intersect",e,R),!e.label)return Ft.rect(e,R);let L=e.x??0,M=e.y??0,U=e.height??0,Y=[];if(B)Y=[{x:L-l.width/2,y:M-U/2},{x:L+l.width/2,y:M-U/2},{x:L+l.width/2,y:M-U/2+l.height+f},{x:L+d/2,y:M-U/2+l.height+f},{x:L+d/2,y:M+U/2},{x:L-d/2,y:M+U/2},{x:L-d/2,y:M-U/2+l.height+f},{x:L-l.width/2,y:M-U/2+l.height+f}];else Y=[{x:L-d/2,y:M-U/2},{x:L+d/2,y:M-U/2},{x:L+d/2,y:M-U/2+E},{x:L+l.width/2,y:M-U/2+E},{x:L+l.width/2/2,y:M+U/2},{x:L-l.width/2,y:M+U/2},{x:L-l.width/2,y:M-U/2+E},{x:L-d/2,y:M-U/2+E}];return Ft.polygon(e,Y,R)},s}async function ExA(A,e,{config:{themeVariables:t,flowchart:r}}){let{labelStyles:i}=bt(e);e.labelStyle=i;let u=e.assetHeight??48,a=e.assetWidth??48,n=Math.max(u,a),o=r?.wrappingWidth;e.width=Math.max(n,o??0);let{shapeSvg:s,bbox:l,halfPadding:g,label:C}=await Ir(A,e,"icon-shape default"),B=e.pos==="t",E=n+g*2,d=n+g*2,{nodeBorder:I,mainBkg:h}=t,{stylesMap:Q}=mf(e),p=-d/2,m=-E/2,f=e.label?8:0,D=Ge.svg(s),w=St(e,{});if(e.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let b=Q.get("fill");w.stroke=b??h;let F=D.path(KQ(p,m,d,E,0.1),w),v=Math.max(d,l.width),S=E+l.height+f,x=D.rectangle(-v/2,-S/2,v,S,{...w,fill:"transparent",stroke:"none"}),k=s.insert(()=>F,":first-child"),T=s.insert(()=>x);if(e.icon){let R=s.append("g");R.html(`<g>${await ag(e.icon,{height:n,width:n,fallbackPrefix:""})}</g>`);let L=R.node().getBBox(),{width:M,height:U,x:Y,y:H}=L;R.attr("transform",`translate(${-M/2-Y},${B?l.height/2+f/2-U/2-H:-l.height/2-f/2-U/2-H})`),R.attr("style",`color: ${Q.get("stroke")??I};`)}return C.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))},${B?-S/2:S/2-l.height})`),k.attr("transform",`translate(0,${B?l.height/2+f/2:-l.height/2-f/2})`),Pt(e,T),e.intersect=function(R){if(sA.info("iconSquare intersect",e,R),!e.label)return Ft.rect(e,R);let L=e.x??0,M=e.y??0,U=e.height??0,Y=[];if(B)Y=[{x:L-l.width/2,y:M-U/2},{x:L+l.width/2,y:M-U/2},{x:L+l.width/2,y:M-U/2+l.height+f},{x:L+d/2,y:M-U/2+l.height+f},{x:L+d/2,y:M+U/2},{x:L-d/2,y:M+U/2},{x:L-d/2,y:M-U/2+l.height+f},{x:L-l.width/2,y:M-U/2+l.height+f}];else Y=[{x:L-d/2,y:M-U/2},{x:L+d/2,y:M-U/2},{x:L+d/2,y:M-U/2+E},{x:L+l.width/2,y:M-U/2+E},{x:L+l.width/2/2,y:M+U/2},{x:L-l.width/2,y:M+U/2},{x:L-l.width/2,y:M-U/2+E},{x:L-d/2,y:M-U/2+E}];return Ft.polygon(e,Y,R)},s}async function dxA(A,e,{config:{flowchart:t}}){let r=new Image;r.src=e?.img??"",await r.decode();let i=Number(r.naturalWidth.toString().replace("px","")),u=Number(r.naturalHeight.toString().replace("px",""));e.imageAspectRatio=i/u;let{labelStyles:a}=bt(e);e.labelStyle=a;let n=t?.wrappingWidth;e.defaultWidth=t?.wrappingWidth;let o=Math.max(e.label?n??0:0,e?.assetWidth??i),s=e.constraint==="on"?e?.assetHeight?e.assetHeight*e.imageAspectRatio:o:o,l=e.constraint==="on"?s/e.imageAspectRatio:e?.assetHeight??u;e.width=Math.max(s,n??0);let{shapeSvg:g,bbox:C,label:B}=await Ir(A,e,"image-shape default"),E=e.pos==="t",d=-s/2,I=-l/2,h=e.label?8:0,Q=Ge.svg(g),p=St(e,{});if(e.look!=="handDrawn")p.roughness=0,p.fillStyle="solid";let m=Q.rectangle(d,I,s,l,p),f=Math.max(s,C.width),D=l+C.height+h,w=Q.rectangle(-f/2,-D/2,f,D,{...p,fill:"none",stroke:"none"}),b=g.insert(()=>m,":first-child"),F=g.insert(()=>w);if(e.img){let v=g.append("image");v.attr("href",e.img),v.attr("width",s),v.attr("height",l),v.attr("preserveAspectRatio","none"),v.attr("transform",`translate(${-s/2},${E?D/2-l:-D/2})`)}return B.attr("transform",`translate(${-C.width/2-(C.x-(C.left??0))},${E?-l/2-C.height/2-h/2:l/2-C.height/2+h/2})`),b.attr("transform",`translate(0,${E?C.height/2+h/2:-C.height/2-h/2})`),Pt(e,F),e.intersect=function(v){if(sA.info("iconSquare intersect",e,v),!e.label)return Ft.rect(e,v);let S=e.x??0,x=e.y??0,k=e.height??0,T=[];if(E)T=[{x:S-C.width/2,y:x-k/2},{x:S+C.width/2,y:x-k/2},{x:S+C.width/2,y:x-k/2+C.height+h},{x:S+s/2,y:x-k/2+C.height+h},{x:S+s/2,y:x+k/2},{x:S-s/2,y:x+k/2},{x:S-s/2,y:x-k/2+C.height+h},{x:S-C.width/2,y:x-k/2+C.height+h}];else T=[{x:S-s/2,y:x-k/2},{x:S+s/2,y:x-k/2},{x:S+s/2,y:x-k/2+l},{x:S+C.width/2,y:x-k/2+l},{x:S+C.width/2/2,y:x+k/2},{x:S-C.width/2,y:x+k/2},{x:S-C.width/2,y:x-k/2+l},{x:S-s/2,y:x-k/2+l}];return Ft.polygon(e,T,v)},g}async function IxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=i,a=e.look==="neo"?i*2:i,{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=Math.max(o.width+(a??0)*2,e?.width??0),l=Math.max(o.height+(u??0)*2,e?.height??0),g=[{x:0,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:-3*l/6,y:-l}],C,{cssStyles:B}=e;if(e.look==="handDrawn"){let E=Ge.svg(n),d=St(e,{}),I=Qi(g),h=E.path(I,d);if(C=n.insert(()=>h,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),B)C.attr("style",B)}else C=yI(n,s,l,g);if(r)C.attr("style",r);return e.width=s,e.height=l,Pt(e,C),e.intersect=function(E){return Ft.polygon(e,g,E)},n}async function hxA(A,e){let{shapeSvg:t,bbox:r,label:i}=await Ir(A,e,"label"),u=t.insert("rect",":first-child"),a=0.1,n=0.1;return u.attr("width",0.1).attr("height",0.1),t.attr("class","label edgeLabel"),i.attr("transform",`translate(${-(r.width/2)-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),Pt(e,u),e.intersect=function(o){return Ft.rect(e,o)},t}async function QxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=i,a=e.look==="neo"?i*2:i,{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=(e?.height??o.height)+u,l=(e?.width??o.width)+a,g=[{x:0,y:0},{x:l+3*s/6,y:0},{x:l,y:-s},{x:-(3*s)/6,y:-s}],C,{cssStyles:B}=e;if(e.look==="handDrawn"){let E=Ge.svg(n),d=St(e,{}),I=Qi(g),h=E.path(I,d);if(C=n.insert(()=>h,":first-child").attr("transform",`translate(${-l/2}, ${s/2})`),B)C.attr("style",B)}else C=yI(n,l,s,g);if(r)C.attr("style",r);return e.width=l,e.height=s,Pt(e,C),e.intersect=function(E){return Ft.polygon(e,g,E)},n}async function pxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=i,a=e.look==="neo"?i*2:i,{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=(e?.height??o.height)+u,l=(e?.width??o.width)+a,g=[{x:-3*s/6,y:0},{x:l,y:0},{x:l+3*s/6,y:-s},{x:0,y:-s}],C,{cssStyles:B}=e;if(e.look==="handDrawn"){let E=Ge.svg(n),d=St(e,{}),I=Qi(g),h=E.path(I,d);if(C=n.insert(()=>h,":first-child").attr("transform",`translate(${-l/2}, ${s/2})`),B)C.attr("style",B)}else C=yI(n,l,s,g);if(r)C.attr("style",r);return e.width=l,e.height=s,Pt(e,C),e.intersect=function(E){return Ft.polygon(e,g,E)},n}function fxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.label="",e.labelStyle=t;let i=A.insert("g").attr("class",cr(e)).attr("id",e.domId??e.id),{cssStyles:u}=e,a=Math.max(35,e?.width??0),n=Math.max(35,e?.height??0),o=7,s=[{x:a,y:0},{x:0,y:n+o/2},{x:a-2*o,y:n+o/2},{x:0,y:2*n},{x:a,y:n-o/2},{x:2*o,y:n-o/2}],l=Ge.svg(i),g=St(e,{});if(e.look!=="handDrawn")g.roughness=0,g.fillStyle="solid";let C=Qi(s),B=l.path(C,g),E=i.insert(()=>B,":first-child");if(E.attr("class","outer-path"),u&&e.look!=="handDrawn")E.selectAll("path").attr("style",u);if(r&&e.look!=="handDrawn")E.selectAll("path").attr("style",r);return E.attr("transform",`translate(-${a/2},${-n})`),Pt(e,E),e.intersect=function(d){return sA.info("lightningBolt intersect",e,d),Ft.polygon(e,s,d)},i}async function mxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?24:i;if(e.width||e.height){let h=e.width??0;if(e.width=(e.width??0)-u,e.width<SFA)e.width=SFA;let p=h/2/(2.5+h/50);if(e.height=(e.height??0)-a-p*3,e.height<xFA)e.height=xFA}let{shapeSvg:n,bbox:o,label:s}=await Ir(A,e,cr(e)),l=(e?.width?e?.width:o.width)+u*2,g=l/2,C=g/(2.5+l/50),B=(e?.height?e?.height:o.height)+C+a*2,E=B*0.1,d,{cssStyles:I}=e;if(e.look==="handDrawn"){let h=Ge.svg(n),Q=Uot(0,0,l,B,g,C,E),p=Mot(0,C,l,B,g,C),m=St(e,{}),f=h.path(Q,m),D=h.path(p,m);if(n.insert(()=>D,":first-child").attr("class","line"),d=n.insert(()=>f,":first-child"),d.attr("class","basic label-container"),I)d.attr("style",I)}else{let h=Got(0,0,l,B,g,C,E);d=n.insert("path",":first-child").attr("d",h).attr("class","basic label-container outer-path").attr("style",Ln(I)).attr("style",r)}return d.attr("label-offset-y",C),d.attr("transform",`translate(${-l/2}, ${-(B/2+C)})`),Pt(e,d),s.attr("transform",`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${-(o.height/2)+C-(o.y-(o.top??0))})`),e.intersect=function(h){let Q=Ft.rect(e,h),p=Q.x-(e.x??0);if(g!=0&&(Math.abs(p)<(e.width??0)/2||Math.abs(p)==(e.width??0)/2&&Math.abs(Q.y-(e.y??0))>(e.height??0)/2-C)){let m=C*C*(1-p*p/(g*g));if(m>0)m=Math.sqrt(m);if(m=C-m,h.y-(e.y??0)>0)m=-m;Q.y+=m}return Q},n}async function DxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i;if(e.width||e.height){let m=e.width;if(e.width=(m??0)*10/11-u*2,e.width<10)e.width=10;if(e.height=(e?.height??0)-a*2,e.height<10)e.height=10}let{shapeSvg:n,bbox:o,label:s}=await Ir(A,e,cr(e)),l=(e?.width?e?.width:o.width)+(u??0)*2,g=(e?.height?e?.height:o.height)+(a??0)*2,C=e.look==="neo"?g/4:g/8,B=g+C,{cssStyles:E}=e,d=Ge.svg(n),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=[{x:-l/2-l/2*0.1,y:-B/2},{x:-l/2-l/2*0.1,y:B/2},...HQ(-l/2-l/2*0.1,B/2,l/2+l/2*0.1,B/2,C,0.8),{x:l/2+l/2*0.1,y:-B/2},{x:-l/2-l/2*0.1,y:-B/2},{x:-l/2,y:-B/2},{x:-l/2,y:B/2*1.1},{x:-l/2,y:-B/2}],Q=d.polygon(h.map((m)=>[m.x,m.y]),I),p=n.insert(()=>Q,":first-child");if(p.attr("class","basic label-container outer-path"),E&&e.look!=="handDrawn")p.selectAll("path").attr("style",E);if(r&&e.look!=="handDrawn")p.selectAll("path").attr("style",r);return p.attr("transform",`translate(0,${-C/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)+l/2*0.1/2-(o.x-(o.left??0))},${-g/2+(e.padding??0)-C/2-(o.y-(o.top??0))})`),Pt(e,p),e.intersect=function(m){return Ft.polygon(e,h,m)},n}async function yxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=e.look==="neo"?10:5;if(e.width||e.height)e.width=Math.max((e?.width??0)-u*2-2*n,10),e.height=Math.max((e?.height??0)-a*2-2*n,10);let{shapeSvg:o,bbox:s,label:l}=await Ir(A,e,cr(e)),g=(e?.width?e?.width:s.width)+u*2+2*n,C=(e?.height?e?.height:s.height)+a*2+2*n,B=g-2*n,E=C-2*n,d=-B/2,I=-E/2,{cssStyles:h}=e,Q=Ge.svg(o),p=St(e,{}),m=[{x:d-n,y:I+n},{x:d-n,y:I+E+n},{x:d+B-n,y:I+E+n},{x:d+B-n,y:I+E},{x:d+B,y:I+E},{x:d+B,y:I+E-n},{x:d+B+n,y:I+E-n},{x:d+B+n,y:I-n},{x:d+n,y:I-n},{x:d+n,y:I},{x:d,y:I},{x:d,y:I+n}],f=[{x:d,y:I+n},{x:d+B-n,y:I+n},{x:d+B-n,y:I+E},{x:d+B,y:I+E},{x:d+B,y:I},{x:d,y:I}];if(e.look!=="handDrawn")p.roughness=0,p.fillStyle="solid";let D=Qi(m),w=Q.path(D,p),b=Qi(f),F=Q.path(b,p);if(e.look!=="handDrawn")w=jeA(w),F=jeA(F);let v=o.insert("g",":first-child");if(v.insert(()=>w),v.insert(()=>F),v.attr("class","basic label-container outer-path"),h&&e.look!=="handDrawn")v.selectAll("path").attr("style",h);if(r&&e.look!=="handDrawn")v.selectAll("path").attr("style",r);return l.attr("transform",`translate(${-(s.width/2)-n-(s.x-(s.left??0))}, ${-(s.height/2)+n-(s.y-(s.top??0))})`),Pt(e,v),e.intersect=function(S){return Ft.polygon(e,m,S)},o}async function wxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Ir(A,e,cr(e)),n=e.padding??0,o=e.look==="neo"?16:n,s=e.look==="neo"?12:n,l=!0;if(e.width||e.height)l=!1,e.width=(e?.width??0)-o*2,e.height=(e?.height??0)-s*3;let g=Math.max(u.width,e?.width??0)+o*2,C=Math.max(u.height,e?.height??0)+s*3,B=e.look==="neo"?C/4:C/8,E=C+(l?B/2:-B/2),d=-g/2,I=-E/2,h=10,{cssStyles:Q}=e,p=HQ(d-h,I+E+h,d+g-h,I+E+h,B,0.8),m=p?.[p.length-1],f=[{x:d-h,y:I+h},{x:d-h,y:I+E+h},...p,{x:d+g-h,y:m.y-h},{x:d+g,y:m.y-h},{x:d+g,y:m.y-2*h},{x:d+g+h,y:m.y-2*h},{x:d+g+h,y:I-h},{x:d+h,y:I-h},{x:d+h,y:I},{x:d,y:I},{x:d,y:I+h}],D=[{x:d,y:I+h},{x:d+g-h,y:I+h},{x:d+g-h,y:m.y-h},{x:d+g,y:m.y-h},{x:d+g,y:I},{x:d,y:I}],w=Ge.svg(i),b=St(e,{});if(e.look!=="handDrawn")b.roughness=0,b.fillStyle="solid";let F=Qi(f),v=w.path(F,b),S=Qi(D),x=w.path(S,b),k=i.insert(()=>v,":first-child");if(k.insert(()=>x),k.attr("class","basic label-container outer-path"),Q&&e.look!=="handDrawn")k.selectAll("path").attr("style",Q);if(r&&e.look!=="handDrawn")k.selectAll("path").attr("style",r);return k.attr("transform",`translate(0,${-B/2})`),a.attr("transform",`translate(${-(u.width/2)-h-(u.x-(u.left??0))}, ${-(u.height/2)+h-B/2-(u.y-(u.top??0))})`),Pt(e,k),e.intersect=function(T){return Ft.polygon(e,f,T)},i}async function bxA(A,e,{config:{themeVariables:t}}){let{labelStyles:r,nodeStyles:i}=bt(e);if(e.labelStyle=r,!(e.useHtmlLabels||ki(st())))e.centerLabel=!0;let{shapeSvg:a,bbox:n,label:o}=await Ir(A,e,cr(e)),s=Math.max(n.width+(e.padding??0)*2,e?.width??0),l=Math.max(n.height+(e.padding??0)*2,e?.height??0),g=-s/2,C=-l/2,{cssStyles:B}=e,E=Ge.svg(a),d=St(e,{fill:t.noteBkgColor,stroke:t.noteBorderColor});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=E.rectangle(g,C,s,l,d),h=a.insert(()=>I,":first-child");if(h.attr("class","basic label-container outer-path"),o.attr("class","label noteLabel"),B&&e.look!=="handDrawn")h.selectAll("path").attr("style",B);if(i&&e.look!=="handDrawn")h.selectAll("path").attr("style",i);return o.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),Pt(e,h),e.intersect=function(Q){return Ft.rect(e,Q)},a}async function vxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u}=await Ir(A,e,cr(e)),a=u.width+(e.padding??0),n=u.height+(e.padding??0),o=a+n,s=0.5,l=[{x:o/2,y:0},{x:o,y:-o/2},{x:o/2,y:-o},{x:0,y:-o/2}],g,{cssStyles:C}=e;if(e.look==="handDrawn"){let B=Ge.svg(i),E=St(e,{}),d=Tot(0,0,o),I=B.path(d,E);if(g=i.insert(()=>I,":first-child").attr("transform",`translate(${-o/2+s}, ${o/2})`),C)g.attr("style",C)}else g=yI(i,o,o,l),g.attr("transform",`translate(${-o/2+s}, ${o/2})`);if(r)g.attr("style",r);return Pt(e,g),e.calcIntersect=function(B,E){let d=B.width,I=[{x:d/2,y:0},{x:d,y:-d/2},{x:d/2,y:-d},{x:0,y:-d/2}],h=Ft.polygon(B,I,E);return{x:h.x-0.5,y:h.y-0.5}},e.intersect=function(B){return this.calcIntersect(e,B)},i}async function kxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?21:i??0,a=e.look==="neo"?12:i??0,{shapeSvg:n,bbox:o,label:s}=await Ir(A,e,cr(e)),l=(e?.width??o.width)+(e.look==="neo"?u*2:u),g=(e?.height??o.height)+(e.look==="neo"?a*2:a),C=-l/2,B=-g/2,E=B/2,d=[{x:C+E,y:B},{x:C,y:0},{x:C+E,y:-B},{x:-C,y:-B},{x:-C,y:B}],{cssStyles:I}=e,h=Ge.svg(n),Q=St(e,{});if(e.look!=="handDrawn")Q.roughness=0,Q.fillStyle="solid";let p=Qi(d),m=h.path(p,Q),f=n.insert(()=>m,":first-child");if(f.attr("class","basic label-container outer-path"),I&&e.look!=="handDrawn")f.selectAll("path").attr("style",I);if(r&&e.look!=="handDrawn")f.selectAll("path").attr("style",r);return f.attr("transform",`translate(${-E/2},0)`),s.attr("transform",`translate(${-E/2-o.width/2-(o.x-(o.left??0))}, ${-(o.height/2)-(o.y-(o.top??0))})`),Pt(e,f),e.intersect=function(D){return Ft.polygon(e,d,D)},n}async function FxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i;if(!e.cssClasses)i="node default";else i="node "+e.cssClasses;let u=A.insert("g").attr("class",i).attr("id",e.domId||e.id),a=u.insert("g"),n=u.insert("g").attr("class","label").attr("style",r),{description:o,label:s}=e,l=await DI(n,s,e.labelStyle,!0,!0),g={width:0,height:0};if(ki(OA())){let b=l.children[0],F=Qe(l);g=b.getBoundingClientRect(),F.attr("width",g.width),F.attr("height",g.height)}sA.info("Text 2",o);let C=o||[],B=l.getBBox(),E=await DI(n,Array.isArray(C)?C.join("<br/>"):C,e.labelStyle,!0,!0),d=E.children[0],I=Qe(E);g=d.getBoundingClientRect(),I.attr("width",g.width),I.attr("height",g.height);let h=(e.padding||0)/2;Qe(E).attr("transform","translate( "+(g.width>B.width?0:(B.width-g.width)/2)+", "+(B.height+h+5)+")"),Qe(l).attr("transform","translate( "+(g.width<B.width?0:-(B.width-g.width)/2)+", 0)"),g=n.node().getBBox(),n.attr("transform","translate("+-g.width/2+", "+(-g.height/2-h+3)+")");let Q=g.width+(e.padding||0),p=g.height+(e.padding||0),m=-g.width/2-h,f=-g.height/2-h,D,w;if(e.look==="handDrawn"){let b=Ge.svg(u),F=St(e,{}),v=b.path(KQ(m,f,Q,p,e.rx||0),F),S=b.line(-g.width/2-h,-g.height/2-h+B.height+h,g.width/2+h,-g.height/2-h+B.height+h,F);w=u.insert(()=>(sA.debug("Rough node insert CXC",v),S),":first-child"),D=u.insert(()=>(sA.debug("Rough node insert CXC",v),v),":first-child")}else D=a.insert("rect",":first-child"),w=a.insert("line"),D.attr("class","outer title-state").attr("style",r).attr("x",-g.width/2-h).attr("y",-g.height/2-h).attr("width",g.width+(e.padding||0)).attr("height",g.height+(e.padding||0)),w.attr("class","divider").attr("x1",-g.width/2-h).attr("x2",g.width/2+h).attr("y1",-g.height/2-h+B.height+h).attr("y2",-g.height/2-h+B.height+h);return Pt(e,D),e.intersect=function(b){return Ft.rect(e,b)},u}async function xxA(A,e,{config:{themeVariables:t}}){let r=t?.radius??5,i={rx:r,ry:r,classes:"",labelPaddingX:(e?.padding??0)*1,labelPaddingY:(e?.padding??0)*1};return Ey(A,e,i)}async function SxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.look==="neo"?16:e.padding??0,u=e.look==="neo"?12:e.padding??0,{shapeSvg:a,bbox:n,label:o}=await Ir(A,e,cr(e)),s=(e?.width??n.width)+i*2+(e.look==="neo"?kf:kf*2),l=(e?.height??n.height)+u*2,g=s-kf,C=l,B=kf-s/2,E=-l/2,{cssStyles:d}=e,I=Ge.svg(a),h=St(e,{});if(e.look!=="handDrawn")h.roughness=0,h.fillStyle="solid";let Q=[{x:B,y:E},{x:B+g,y:E},{x:B+g,y:E+C},{x:B-kf,y:E+C},{x:B-kf,y:E},{x:B,y:E},{x:B,y:E+C}],p=I.polygon(Q.map((f)=>[f.x,f.y]),h),m=a.insert(()=>p,":first-child");if(m.attr("class","basic label-container outer-path").attr("style",Ln(d)),r&&e.look!=="handDrawn")m.selectAll("path").attr("style",r);if(d&&e.look!=="handDrawn")m.selectAll("path").attr("style",r);return o.attr("transform",`translate(${kf/2-n.width/2-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),Pt(e,m),e.intersect=function(f){return Ft.rect(e,f)},a}async function LxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i;if(e.width||e.height)e.width=Math.max((e?.width??0)-u*2,10),e.height=Math.max((e?.height??0)/1.5-a*2,10);let{shapeSvg:n,bbox:o,label:s}=await Ir(A,e,cr(e)),l=(e?.width?e?.width:o.width)+u*2,g=((e?.height?e?.height:o.height)+a*2)*1.5,C=l,B=g/1.5,E=-C/2,d=-B/2,{cssStyles:I}=e,h=Ge.svg(n),Q=St(e,{});if(e.look!=="handDrawn")Q.roughness=0,Q.fillStyle="solid";let p=[{x:E,y:d},{x:E,y:d+B},{x:E+C,y:d+B},{x:E+C,y:d-B/2}],m=Qi(p),f=h.path(m,Q),D=n.insert(()=>f,":first-child");if(D.attr("class","basic label-container outer-path"),I&&e.look!=="handDrawn")D.selectChildren("path").attr("style",I);if(r&&e.look!=="handDrawn")D.selectChildren("path").attr("style",r);return D.attr("transform",`translate(0, ${B/4})`),s.attr("transform",`translate(${-C/2+(e.padding??0)-(o.x-(o.left??0))}, ${-B/4+(e.padding??0)-(o.y-(o.top??0))})`),Pt(e,D),e.intersect=function(w){return Ft.polygon(e,p,w)},n}async function RxA(A,e){let t=e.padding??0,r=e.look==="neo"?16:t*2,i=e.look==="neo"?12:t,u={rx:0,ry:0,classes:"",labelPaddingX:e.labelPaddingX??r,labelPaddingY:i};return Ey(A,e,u)}async function NxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?20:i,a=e.look==="neo"?12:i,{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=o.height+(e.look==="neo"?a*2:a),l=o.width+s/4+(e.look==="neo"?u*2:u),g=s/2,{cssStyles:C}=e,B=Ge.svg(n),E=St(e,{});if(e.look!=="handDrawn")E.roughness=0,E.fillStyle="solid";let d=[{x:-l/2+g,y:-s/2},{x:l/2-g,y:-s/2},...Pv(-l/2+g,0,g,50,90,270),{x:l/2-g,y:s/2},...Pv(l/2-g,0,g,50,270,450)],I=Qi(d),h=B.path(I,E),Q=n.insert(()=>h,":first-child");if(Q.attr("class","basic label-container outer-path"),C&&e.look!=="handDrawn")Q.selectChildren("path").attr("style",C);if(r&&e.look!=="handDrawn")Q.selectChildren("path").attr("style",r);return Pt(e,Q),e.intersect=function(p){return Ft.polygon(e,d,p)},n}async function GxA(A,e){let t={rx:e.look==="neo"?3:5,ry:e.look==="neo"?3:5,classes:"flowchart-node"};return Ey(A,e,t)}function UxA(A,e,{config:{themeVariables:t}}){let{labelStyles:r,nodeStyles:i}=bt(e);e.labelStyle=r;let{cssStyles:u}=e,{lineColor:a,stateBorder:n,nodeBorder:o,nodeShadow:s}=t;if(e.width||e.height){if((e.width??0)<14)e.width=14;if((e.height??0)<14)e.height=14}if(!e.width)e.width=14;if(!e.height)e.height=14;let l=A.insert("g").attr("class","node default").attr("id",e.domId??e.id),g=Ge.svg(l),C=St(e,{});if(e.look!=="handDrawn")C.roughness=0,C.fillStyle="solid";let B=g.circle(0,0,e.width,{...C,stroke:a,strokeWidth:2}),E=n??o,d=(e.width??0)*5/14,I=g.circle(0,0,d,{...C,fill:E,stroke:E,strokeWidth:2,fillStyle:"solid"}),h=l.insert(()=>B,":first-child");if(h.insert(()=>I),e.look!=="handDrawn")h.attr("class","outer-path");if(u)h.selectAll("path").attr("style",u);if(i)h.selectAll("path").attr("style",i);if(e.width<25&&s&&e.look!=="handDrawn"){let Q=A.node()?.ownerSVGElement?.id??"",p=Q?`${Q}-drop-shadow-small`:"drop-shadow-small";h.attr("style",`filter:url(#${p})`)}return Pt(e,h),e.intersect=function(Q){return Ft.circle(e,(e.width??0)/2,Q)},l}function MxA(A,e,{config:{themeVariables:t}}){let{lineColor:r,nodeShadow:i}=t;if(e.width||e.height){if((e.width??0)<14)e.width=14;if((e.height??0)<14)e.height=14}if(!e.width)e.width=14;if(!e.height)e.height=14;let u=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),a;if(e.look==="handDrawn"){let o=Ge.svg(u).circle(0,0,e.width,BvA(r));a=u.insert(()=>o),a.attr("class","state-start").attr("r",(e.width??7)/2).attr("width",e.width??14).attr("height",e.height??14)}else a=u.insert("circle",":first-child"),a.attr("class","state-start").attr("r",(e.width??7)/2).attr("width",e.width??14).attr("height",e.height??14);if(e.width<25&&i&&e.look!=="handDrawn"){let n=A.node()?.ownerSVGElement?.id??"",o=n?`${n}-drop-shadow-small`:"drop-shadow-small";a.attr("style",`filter:url(#${o})`)}return Pt(e,a),e.intersect=function(n){return Ft.circle(e,(e.width??7)/2,n)},u}async function TxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e?.padding??8,u=e.look==="neo"?28:i,a=e.look==="neo"?12:i,{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=(e?.width??o.width)+2*cy+u,l=(e?.height??o.height)+a,g=s-2*cy,C=l,B=-s/2,E=-l/2,d=[{x:0,y:0},{x:g,y:0},{x:g,y:-C},{x:0,y:-C},{x:0,y:0},{x:-8,y:0},{x:g+8,y:0},{x:g+8,y:-C},{x:-8,y:-C},{x:-8,y:0}];if(e.look==="handDrawn"){let I=Ge.svg(n),h=St(e,{}),Q=I.rectangle(B,E,g+16,C,h),p=I.line(B+cy,E,B+cy,E+C,h),m=I.line(B+cy+g,E,B+cy+g,E+C,h);n.insert(()=>p,":first-child"),n.insert(()=>m,":first-child");let f=n.insert(()=>Q,":first-child"),{cssStyles:D}=e;f.attr("class","basic label-container").attr("style",Ln(D)),Pt(e,f)}else{let I=yI(n,g,C,d);if(r)I.attr("style",r);Pt(e,I)}return e.intersect=function(I){return Ft.polygon(e,d,I)},n}async function YxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i;if(e.width||e.height)e.height=Math.max((e?.height??0)-a*2,10),e.width=Math.max((e?.width??0)-u*2-VeA*(e.height+a*2),10);let{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=(e?.height?e?.height:o.height)+a*2,l=VeA*s,g=VeA*s,B=(e?.width?e?.width:o.width)+u*2+l-l,E=s,d=-B/2,I=-E/2,{cssStyles:h}=e,Q=Ge.svg(n),p=St(e,{}),m=[{x:d-l/2,y:I},{x:d+B+l/2,y:I},{x:d+B+l/2,y:I+E},{x:d-l/2,y:I+E}],f=[{x:d+B-l/2,y:I+E},{x:d+B+l/2,y:I+E},{x:d+B+l/2,y:I+E-g}];if(e.look!=="handDrawn")p.roughness=0,p.fillStyle="solid";let D=Qi(m),w=Q.path(D,p),b=Qi(f),F=Q.path(b,{...p,fillStyle:"solid"}),v=n.insert(()=>F,":first-child");if(v.insert(()=>w,":first-child"),v.attr("class","basic label-container outer-path"),h&&e.look!=="handDrawn")v.selectAll("path").attr("style",h);if(r&&e.look!=="handDrawn")v.selectAll("path").attr("style",r);return Pt(e,v),e.intersect=function(S){return Ft.polygon(e,m,S)},n}async function HxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Ir(A,e,cr(e)),n=Math.max(u.width+(e.padding??0)*2,e?.width??0),o=Math.max(u.height+(e.padding??0)*2,e?.height??0),s=o/8,l=0.2*n,g=0.2*o,C=o+s,{cssStyles:B}=e,E=Ge.svg(i),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=[{x:-n/2-n/2*0.1,y:C/2},...HQ(-n/2-n/2*0.1,C/2,n/2+n/2*0.1,C/2,s,0.8),{x:n/2+n/2*0.1,y:-C/2},{x:-n/2-n/2*0.1,y:-C/2}],h=-n/2+n/2*0.1,Q=-C/2-g*0.4,p=[{x:h+n-l,y:(Q+o)*1.3},{x:h+n,y:Q+o-g},{x:h+n,y:(Q+o)*0.9},...HQ(h+n,(Q+o)*1.25,h+n-l,(Q+o)*1.3,-o*0.02,0.5)],m=Qi(I),f=E.path(m,d),D=Qi(p),w=E.path(D,{...d,fillStyle:"solid"}),b=i.insert(()=>w,":first-child");if(b.insert(()=>f,":first-child"),b.attr("class","basic label-container outer-path"),B&&e.look!=="handDrawn")b.selectAll("path").attr("style",B);if(r&&e.look!=="handDrawn")b.selectAll("path").attr("style",r);return b.attr("transform",`translate(0,${-s/2})`),a.attr("transform",`translate(${-n/2+(e.padding??0)-(u.x-(u.left??0))},${-o/2+(e.padding??0)-s/2-(u.y-(u.top??0))})`),Pt(e,b),e.intersect=function(F){return Ft.polygon(e,I,F)},i}async function KxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u}=await Ir(A,e,cr(e)),a=Math.max(u.width+(e.padding??0),e?.width||0),n=Math.max(u.height+(e.padding??0),e?.height||0),o=-a/2,s=-n/2,l=i.insert("rect",":first-child");return l.attr("class","text").attr("style",r).attr("rx",0).attr("ry",0).attr("x",o).attr("y",s).attr("width",a).attr("height",n),Pt(e,l),e.intersect=function(g){return Ft.rect(e,g)},i}async function JxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?12:i/2;if(e.width||e.height){let d=e.height??0;if(e.height=(e.height??0)-u,e.height<LFA)e.height=LFA;let h=d/2/(2.5+d/50);if(e.width=(e.width??0)-u-h*3,e.width<RFA)e.width=RFA}let{shapeSvg:a,bbox:n,label:o}=await Ir(A,e,cr(e)),s=(e.height?e.height:n.height)+u,l=s/2,g=l/(2.5+s/50),C=(e.width?e.width:n.width)+g+u,{cssStyles:B}=e,E;if(e.look==="handDrawn"){let d=Ge.svg(a),I=Hot(0,0,C,s,g,l),h=Kot(0,0,C,s,g,l),Q=d.path(I,St(e,{})),p=d.path(h,St(e,{fill:"none"}));if(E=a.insert(()=>p,":first-child"),E=a.insert(()=>Q,":first-child"),E.attr("class","basic label-container"),B)E.attr("style",B)}else{let d=Yot(0,0,C,s,g,l);if(E=a.insert("path",":first-child").attr("d",d).attr("class","basic label-container").attr("style",Ln(B)).attr("style",r),E.attr("class","basic label-container outer-path"),B)E.selectAll("path").attr("style",B);if(r)E.selectAll("path").attr("style",r)}return E.attr("label-offset-x",g),E.attr("transform",`translate(${-C/2}, ${s/2} )`),o.attr("transform",`translate(${-(n.width/2)-g-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),Pt(e,E),e.intersect=function(d){let I=Ft.rect(e,d),h=I.y-(e.y??0);if(l!=0&&(Math.abs(h)<(e.height??0)/2||Math.abs(h)==(e.height??0)/2&&Math.abs(I.x-(e.x??0))>(e.width??0)/2-g)){let Q=g*g*(1-h*h/(l*l));if(Q!=0)Q=Math.sqrt(Math.abs(Q));if(Q=g-Q,d.x-(e.x??0)>0)Q=-Q;I.x+=Q}return I},a}async function OxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?i:i,a=e.look==="neo"?i*2:i,{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=(e?.height??o.height)+u,l=(e?.width??o.width)+a,g=[{x:-3*s/6,y:0},{x:l+3*s/6,y:0},{x:l,y:-s},{x:0,y:-s}],C,{cssStyles:B}=e;if(e.look==="handDrawn"){let E=Ge.svg(n),d=St(e,{}),I=Qi(g),h=E.path(I,d);if(C=n.insert(()=>h,":first-child").attr("transform",`translate(${-l/2}, ${s/2})`),B)C.attr("style",B)}else C=yI(n,l,s,g);if(r)C.attr("style",r);return e.width=l,e.height=s,Pt(e,C),e.intersect=function(E){return Ft.polygon(e,g,E)},n}async function PxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=15,o=5;if(e.width||e.height){if(e.height=(e.height??0)-a*2,e.height<o)e.height=o;if(e.width=(e.width??0)-u*2,e.width<n)e.width=n}let{shapeSvg:s,bbox:l}=await Ir(A,e,cr(e)),g=(e?.width?e?.width:l.width)+u*2,C=(e?.height?e?.height:l.height)+a*2,{cssStyles:B}=e,E=Ge.svg(s),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=[{x:-g/2*0.8,y:-C/2},{x:g/2*0.8,y:-C/2},{x:g/2,y:-C/2*0.6},{x:g/2,y:C/2},{x:-g/2,y:C/2},{x:-g/2,y:-C/2*0.6}],h=Qi(I),Q=E.path(h,d),p=s.insert(()=>Q,":first-child");if(p.attr("class","basic label-container outer-path"),B&&e.look!=="handDrawn")p.selectChildren("path").attr("style",B);if(r&&e.look!=="handDrawn")p.selectChildren("path").attr("style",r);return Pt(e,p),e.intersect=function(m){return Ft.polygon(e,I,m)},s}async function _xA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?i*2:i;if(e.width||e.height){if(e.width=((e?.width??0)-u)/2,e.width<GFA)e.width=GFA;if(e.height=e?.height??0,e.height<NFA)e.height=NFA}let{shapeSvg:a,bbox:n,label:o}=await Ir(A,e,cr(e)),s=Zg(OA().flowchart?.htmlLabels),l=(e?.width?e?.width:n.width)+u,g=e?.height?e?.height:l+n.height,C=g,B=[{x:0,y:0},{x:C,y:0},{x:C/2,y:-g}],{cssStyles:E}=e,d=Ge.svg(a),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=Qi(B),Q=d.path(h,I),p=a.insert(()=>Q,":first-child").attr("transform",`translate(${-g/2}, ${g/2})`).attr("class","outer-path");if(E&&e.look!=="handDrawn")p.selectChildren("path").attr("style",E);if(r&&e.look!=="handDrawn")p.selectChildren("path").attr("style",r);return e.width=l,e.height=g,Pt(e,p),o.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))}, ${g/2-(n.height+(e.padding??0)/(s?2:1)-(n.y-(n.top??0)))})`),e.intersect=function(m){return sA.info("Triangle intersect",e,B,m),Ft.polygon(e,B,m)},a}async function WxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=!0;if(e.width||e.height){if(n=!1,e.width=(e?.width??0)-u*2,e.width<10)e.width=10;if(e.height=(e?.height??0)-a*2,e.height<10)e.height=10}let{shapeSvg:o,bbox:s,label:l}=await Ir(A,e,cr(e)),g=(e?.width?e?.width:s.width)+(u??0)*2,C=(e?.height?e?.height:s.height)+(a??0)*2,B=e.look==="neo"?C/4:C/8,E=C+(n?B:-B),{cssStyles:d}=e,h=14-g,Q=h>0?h/2:0,p=Ge.svg(o),m=St(e,{});if(e.look!=="handDrawn")m.roughness=0,m.fillStyle="solid";let f=[{x:-g/2-Q,y:E/2},...HQ(-g/2-Q,E/2,g/2+Q,E/2,B,0.8),{x:g/2+Q,y:-E/2},{x:-g/2-Q,y:-E/2}],D=Qi(f),w=p.path(D,m),b=o.insert(()=>w,":first-child");if(b.attr("class","basic label-container outer-path"),d&&e.look!=="handDrawn")b.selectAll("path").attr("style",d);if(r&&e.look!=="handDrawn")b.selectAll("path").attr("style",r);return b.attr("transform",`translate(0,${-B/2})`),l.attr("transform",`translate(${-g/2+(e.padding??0)-(s.x-(s.left??0))},${-C/2+(e.padding??0)-B-(s.y-(s.top??0))})`),Pt(e,b),e.intersect=function(F){return Ft.polygon(e,f,F)},o}async function qxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?20:i;if(e.width||e.height){if(e.width=e?.width??0,e.width<20)e.width=20;if(e.height=e?.height??0,e.height<10)e.height=10;let m=Math.min(e.height*0.2,e.height/4);e.height=Math.ceil(e.height-a-m*2.2222222222222223),e.width=e.width-u*2}let{shapeSvg:n,bbox:o}=await Ir(A,e,cr(e)),s=(e?.width?e?.width:o.width)+u*2,l=(e?.height?e?.height:o.height)+a,g=l/8,C=l+g*2,{cssStyles:B}=e,E=Ge.svg(n),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=[{x:-s/2,y:C/2},...HQ(-s/2,C/2,s/2,C/2,g,1),{x:s/2,y:-C/2},...HQ(s/2,-C/2,-s/2,-C/2,g,-1)],h=Qi(I),Q=E.path(h,d),p=n.insert(()=>Q,":first-child");if(p.attr("class","basic label-container"),B&&e.look!=="handDrawn")p.selectAll("path").attr("style",B);if(r&&e.look!=="handDrawn")p.selectAll("path").attr("style",r);return Pt(e,p),e.intersect=function(m){return Ft.polygon(e,I,m)},n}async function zxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e.look==="neo"?16:e.padding??0,u=e.look==="neo"?12:e.padding??0;if(e.width||e.height)e.width=Math.max((e?.width??0)-i*2-Wa,10),e.height=Math.max((e?.height??0)-u*2-Wa,10);let{shapeSvg:a,bbox:n,label:o}=await Ir(A,e,cr(e)),s=(e?.width?e?.width:n.width)+i*2+Wa,l=(e?.height?e?.height:n.height)+u*2+Wa,g=s-Wa,C=l-Wa,B=-g/2,E=-C/2,{cssStyles:d}=e,I=Ge.svg(a),h=St(e,{}),Q=[{x:B-Wa,y:E-Wa},{x:B-Wa,y:E+C},{x:B+g,y:E+C},{x:B+g,y:E-Wa}],p=`M${B-Wa},${E-Wa} L${B+g},${E-Wa} L${B+g},${E+C} L${B-Wa},${E+C} L${B-Wa},${E-Wa}
|
||
M${B-Wa},${E} L${B+g},${E}
|
||
M${B},${E-Wa} L${B},${E+C}`;if(e.look!=="handDrawn")h.roughness=0,h.fillStyle="solid";let m=I.path(p,h),f=a.insert(()=>m,":first-child");if(f.attr("transform",`translate(${Wa/2}, ${Wa/2})`),f.attr("class","basic label-container outer-path"),d&&e.look!=="handDrawn")f.selectAll("path").attr("style",d);if(r&&e.look!=="handDrawn")f.selectAll("path").attr("style",r);return o.attr("transform",`translate(${-(n.width/2)+Wa/2-(n.x-(n.left??0))}, ${-(n.height/2)+Wa/2-(n.y-(n.top??0))})`),Pt(e,f),e.intersect=function(D){return Ft.polygon(e,Q,D)},a}async function etA(A,e){let t=e;if(t.alias)e.label=t.alias;let{theme:r,themeVariables:i}=st(),{rowEven:u,rowOdd:a,nodeBorder:n,borderColorArray:o}=i;if(e.look==="handDrawn"){let{themeVariables:j}=st(),{background:q}=j,CA={...e,id:e.id+"-background",domId:(e.domId||e.id)+"-background",look:"default",cssStyles:["stroke: none",`fill: ${q}`]};await etA(A,CA)}let s=st();e.useHtmlLabels=s.htmlLabels;let l=s.er?.diagramPadding??10,g=s.er?.entityPadding??6,{cssStyles:C}=e,{labelStyles:B,nodeStyles:E}=bt(e);if(t.attributes.length===0&&e.label){let j={rx:0,ry:0,labelPaddingX:l,labelPaddingY:l*1.5,classes:""};if(t0(e.label,s)+j.labelPaddingX*2<s.er.minEntityWidth)e.width=s.er.minEntityWidth;let q=await Ey(A,e,j);if(r!=null&&UFA.has(r)){let CA=t.colorIndex??0;q.attr("data-color-id",`color-${CA%o.length}`)}if(!Zg(s.htmlLabels)){let CA=q.select("text"),tA=CA.node()?.getBBox();CA.attr("transform",`translate(${-tA.width/2}, 0)`)}return q}if(!s.htmlLabels)l*=1.25,g*=1.25;let d=cr(e);if(!d)d="node default";let I=A.insert("g").attr("class",d).attr("id",e.domId||e.id),h=await Cy(I,e.label??"",s,0,0,["name"],B);h.height+=g;let Q=0,p=[],m=[],f=0,D=0,w=0,b=0,F=!0,v=!0;for(let j of t.attributes){let q=await Cy(I,j.type,s,0,Q,["attribute-type"],B);f=Math.max(f,q.width+l);let CA=await Cy(I,j.name,s,0,Q,["attribute-name"],B);D=Math.max(D,CA.width+l);let tA=await Cy(I,j.keys.join(),s,0,Q,["attribute-keys"],B);w=Math.max(w,tA.width+l);let lA=await Cy(I,j.comment,s,0,Q,["attribute-comment"],B);b=Math.max(b,lA.width+l);let gA=Math.max(q.height,CA.height,tA.height,lA.height)+g;m.push({yOffset:Q,rowHeight:gA}),Q+=gA}let S=4;if(w<=l)F=!1,w=0,S--;if(b<=l)v=!1,b=0,S--;let x=I.node().getBBox();if(h.width+l*2-(f+D+w+b)>0){let j=h.width+l*2-(f+D+w+b);if(f+=j/S,D+=j/S,w>0)w+=j/S;if(b>0)b+=j/S}let k=f+D+w+b,T=Ge.svg(I),R=St(e,{});if(e.look!=="handDrawn")R.roughness=0,R.fillStyle="solid";let L=0;if(m.length>0)L=m.reduce((j,q)=>j+(q?.rowHeight??0),0);let M=Math.max(x.width+l*2,e?.width||0,k),U=Math.max((L??0)+h.height,e?.height||0),Y=-M/2,H=-U/2;if(I.selectAll("g:not(:first-child)").each((j,q,CA)=>{let tA=Qe(CA[q]),lA=tA.attr("transform"),gA=0,aA=0;if(lA){let wA=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(lA);if(wA){if(gA=parseFloat(wA[1]),aA=parseFloat(wA[2]),tA.attr("class").includes("attribute-name"))gA+=f;else if(tA.attr("class").includes("attribute-keys"))gA+=f+D;else if(tA.attr("class").includes("attribute-comment"))gA+=f+D+w}}tA.attr("transform",`translate(${Y+l/2+gA}, ${aA+H+h.height+g/2})`)}),I.select(".name").attr("transform","translate("+-h.width/2+", "+(H+g/2)+")"),r!=null&&UFA.has(r)){let j=t.colorIndex??0;I.attr("data-color-id",`color-${j%o.length}`)}let J=T.rectangle(Y,H,M,U,R),K=I.insert(()=>J,":first-child").attr("class","outer-path").attr("style",C.join(""));p.push(0);for(let[j,q]of m.entries()){let tA=(j+1)%2===0&&q.yOffset!==0,lA=T.rectangle(Y,h.height+H+q?.yOffset,M,q?.rowHeight,{...R,fill:tA?u:a,stroke:n});I.insert(()=>lA,"g.label").attr("style",C.join("")).attr("class",`row-rect-${tA?"even":"odd"}`)}let O=0.0001,_=By(Y,h.height+H,M+Y,h.height+H,O),z=T.polygon(_.map((j)=>[j.x,j.y]),R);if(I.insert(()=>z).attr("class","divider"),_=By(f+Y,h.height+H,f+Y,U+H,O),z=T.polygon(_.map((j)=>[j.x,j.y]),R),I.insert(()=>z).attr("class","divider"),F){let j=f+D+Y;_=By(j,h.height+H,j,U+H,O),z=T.polygon(_.map((q)=>[q.x,q.y]),R),I.insert(()=>z).attr("class","divider")}if(v){let j=f+D+w+Y;_=By(j,h.height+H,j,U+H,O),z=T.polygon(_.map((q)=>[q.x,q.y]),R),I.insert(()=>z).attr("class","divider")}for(let j of p){let q=h.height+H+j;_=By(Y,q,M+Y,q,O),z=T.polygon(_.map((CA)=>[CA.x,CA.y]),R),I.insert(()=>z).attr("class","divider")}if(Pt(e,K),E&&e.look!=="handDrawn")if(r!=null&&Jot.has(r))I.selectAll("path").attr("style",E);else{let q=E.split(";")?.filter((CA)=>CA.includes("stroke"))?.map((CA)=>`${CA}`).join("; ");I.selectAll("path").attr("style",q??""),I.selectAll(".row-rect-even path").attr("style",E)}return e.intersect=function(j){return Ft.rect(e,j)},I}async function Cy(A,e,t,r=0,i=0,u=[],a=""){let n=A.insert("g").attr("class",`label ${u.join(" ")}`).attr("transform",`translate(${r}, ${i})`).attr("style",a);if(e!==tE(e))e=tE(e),e=e.replaceAll("<","<").replaceAll(">",">");let o=n.node().appendChild(await Nn(n,e,{width:t0(e,t)+100,style:a,useHtmlLabels:t.htmlLabels},t));if(e.includes("<")||e.includes(">")){let l=o.children[0];l.textContent=l.textContent.replaceAll("<","<").replaceAll(">",">");while(l.childNodes[0])l=l.childNodes[0],l.textContent=l.textContent.replaceAll("<","<").replaceAll(">",">")}let s=o.getBBox();if(Zg(t.htmlLabels)){let l=o.children[0];l.style.textAlign="start";let g=Qe(o);s=l.getBoundingClientRect(),g.attr("width",s.width),g.attr("height",s.height)}return s}function By(A,e,t,r,i){if(A===t)return[{x:A-i/2,y:e},{x:A+i/2,y:e},{x:t+i/2,y:r},{x:t-i/2,y:r}];return[{x:A,y:e-i/2},{x:A,y:e+i/2},{x:t,y:r+i/2},{x:t,y:r-i/2}]}async function ZxA(A,e,t,r,i=t.class.padding??12){let u=!r?3:0,a=A.insert("g").attr("class",cr(e)).attr("id",e.domId||e.id),n=null,o=null,s=null,l=null,g=0,C=0,B=0;if(n=a.insert("g").attr("class","annotation-group text"),e.annotations.length>0){let Q=e.annotations[0];await Ov(n,{text:`«${Q}»`},0),g=n.node().getBBox().height}o=a.insert("g").attr("class","label-group text"),await Ov(o,e,0,["font-weight: bolder"]);let E=o.node().getBBox();C=E.height,s=a.insert("g").attr("class","members-group text");let d=0;for(let Q of e.members){let p=await Ov(s,Q,d,[Q.parseClassifier()]);d+=p+u}if(B=s.node().getBBox().height,B<=0)B=i/2;l=a.insert("g").attr("class","methods-group text");let I=0;for(let Q of e.methods){let p=await Ov(l,Q,I,[Q.parseClassifier()]);I+=p+u}let h=a.node().getBBox();if(n!==null){let Q=n.node().getBBox();n.attr("transform",`translate(${-Q.width/2})`)}return o.attr("transform",`translate(${-E.width/2}, ${g})`),h=a.node().getBBox(),s.attr("transform",`translate(0, ${g+C+i*2})`),h=a.node().getBBox(),l.attr("transform",`translate(0, ${g+C+(B?B+i*4:i*2)})`),h=a.node().getBBox(),{shapeSvg:a,bbox:h}}async function Ov(A,e,t,r=[]){let i=A.insert("g").attr("class","label").attr("style",r.join("; ")),u=st(),a="useHtmlLabels"in e?e.useHtmlLabels:Zg(u.htmlLabels)??!0,n="";if("text"in e)n=e.text;else n=e.label;if(!a&&n.startsWith("\\"))n=n.substring(1);if(da(n))a=!0;let o=await Nn(i,XR(ug(n)),{width:t0(n,u)+50,classes:"markdown-node-label",useHtmlLabels:a},u),s,l=1;if(!a){if(r.includes("font-weight: bolder"))Qe(o).selectAll("tspan").attr("font-weight","");l=o.children.length;let g=o.children[0];if(o.textContent===""||o.textContent.includes(">")){if(g.textContent=n[0]+n.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),n[1]===" ")g.textContent=g.textContent[0]+" "+g.textContent.substring(1)}if(g.textContent==="undefined")g.textContent="";s=o.getBBox()}else{let g=o.children[0],C=Qe(o);if(l=g.innerHTML.split("<br>").length,g.innerHTML.includes("</math>"))l+=g.innerHTML.split("<mrow>").length-1;let B=g.getElementsByTagName("img");if(B){let E=n.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...B].map((d)=>new Promise((I)=>{function h(){if(d.style.display="flex",d.style.flexDirection="column",E){let Q=u.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,p=5,m=parseInt(Q,10)*5+"px";d.style.minWidth=m,d.style.maxWidth=m}else d.style.width="100%";I(d)}y(h,"setupImage"),setTimeout(()=>{if(d.complete)h()}),d.addEventListener("error",h),d.addEventListener("load",h)})))}s=g.getBoundingClientRect(),C.attr("width",s.width),C.attr("height",s.height)}return i.attr("transform","translate(0,"+(-s.height/(2*l)+t)+")"),s.height}async function VxA(A,e){let t=OA(),{themeVariables:r}=t,{useGradient:i}=r,u=t.class.padding??12,a=u,n=e.useHtmlLabels??Zg(t.htmlLabels)??!0,o=e;o.annotations=o.annotations??[],o.members=o.members??[],o.methods=o.methods??[];let{shapeSvg:s,bbox:l}=await ZxA(A,e,t,n,a),{labelStyles:g,nodeStyles:C}=bt(e);e.labelStyle=g,e.cssStyles=o.styles||"";let B=o.styles?.join(";")||C||"";if(!e.cssStyles)e.cssStyles=B.replaceAll("!important","").split(";");let E=o.members.length===0&&o.methods.length===0&&!t.class?.hideEmptyMembersBox,d=Ge.svg(s),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=Math.max(e.width??0,l.width),Q=Math.max(e.height??0,l.height),p=(e.height??0)>l.height;if(o.members.length===0&&o.methods.length===0)Q+=a;else if(o.members.length>0&&o.methods.length===0)Q+=a*2;let m=-h/2,f=-Q/2,D=E?u*2:o.members.length===0&&o.methods.length===0?-u:0;if(p)D=u*2;let w=d.rectangle(m-u,f-u-(E?u:o.members.length===0&&o.methods.length===0?-u/2:0),h+2*u,Q+2*u+D,I),b=s.insert(()=>w,":first-child");b.attr("class","basic label-container outer-path");let F=b.node().getBBox(),v=s.select(".annotation-group").node().getBBox().height-(E?u/2:0)||0,S=s.select(".label-group").node().getBBox().height-(E?u/2:0)||0,x=s.select(".members-group").node().getBBox().height-(E?u/2:0)||0,k=(v+S+f+u-(f-u-(E?u:o.members.length===0&&o.methods.length===0?-u/2:0)))/2;if(s.selectAll(".text").each((T,R,L)=>{let M=Qe(L[R]),U=M.attr("transform"),Y=0;if(U){let O=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(U);if(O)Y=parseFloat(O[2])}let H=Y+f+u-(E?u:o.members.length===0&&o.methods.length===0?-u/2:0);if(M.attr("class").includes("methods-group")){let K=Math.max(x,a/2);if(p)H=Math.max(k,v+S+K+f+a*2+u)+a*2;else H=v+S+K+f+a*4+u}if(o.members.length===0&&o.methods.length===0&&t.class?.hideEmptyMembersBox)if(o.annotations.length>0)H=Y-a;else H=Y;if(!n)H-=4;let J=m;if(M.attr("class").includes("label-group")||M.attr("class").includes("annotation-group"))J=-M.node()?.getBBox().width/2||0,s.selectAll("text").each(function(K,O,_){if(window.getComputedStyle(_[O]).textAnchor==="middle")J=0});M.attr("transform",`translate(${J}, ${H})`)}),o.members.length>0||o.methods.length>0||E){let T=v+S+f+u,R=d.line(F.x,T,F.x+F.width,T+0.001,I);s.insert(()=>R).attr("class",`divider${e.look==="neo"&&!i?" neo-line":""}`).attr("style",B)}if(E||o.members.length>0||o.methods.length>0){let T=v+S+x+f+a*2+u,R=d.line(F.x,p?Math.max(k,T):T,F.x+F.width,(p?Math.max(k,T):T)+0.001,I);s.insert(()=>R).attr("class",`divider${e.look==="neo"&&!i?" neo-line":""}`).attr("style",B)}if(o.look!=="handDrawn")s.selectAll("path").attr("style",B);if(b.select(":nth-child(2)").attr("style",B),s.selectAll(".divider").select("path").attr("style",B),e.labelStyle)s.selectAll("span").attr("style",e.labelStyle);else s.selectAll("span").attr("style",B);if(!n){let T=RegExp(/color\s*:\s*([^;]*)/),R=T.exec(B);if(R){let L=R[0].replace("color","fill");s.selectAll("tspan").attr("style",L)}else if(g){let L=T.exec(g);if(L){let M=L[0].replace("color","fill");s.selectAll("tspan").attr("style",M)}}}return Pt(e,b),e.intersect=function(T){return Ft.rect(e,T)},s}async function jxA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let i=e,u=e,a=20,n=20,o="verifyMethod"in e,s=cr(e),{themeVariables:l}=OA(),{borderColorArray:g,requirementEdgeLabelBackground:C}=l,B=A.insert("g").attr("class",s).attr("id",e.domId??e.id),E;if(o)E=await EE(B,`<<${i.type}>>`,0,e.labelStyle);else E=await EE(B,"<<Element>>",0,e.labelStyle);let d=E,I=await EE(B,i.name,d,e.labelStyle+"; font-weight: bold;");if(d+=I+n,o){let F=await EE(B,`${i.requirementId?`ID: ${i.requirementId}`:""}`,d,e.labelStyle);d+=F;let v=await EE(B,`${i.text?`Text: ${i.text}`:""}`,d,e.labelStyle);d+=v;let S=await EE(B,`${i.risk?`Risk: ${i.risk}`:""}`,d,e.labelStyle);d+=S,await EE(B,`${i.verifyMethod?`Verification: ${i.verifyMethod}`:""}`,d,e.labelStyle)}else{let F=await EE(B,`${u.type?`Type: ${u.type}`:""}`,d,e.labelStyle);d+=F,await EE(B,`${u.docRef?`Doc Ref: ${u.docRef}`:""}`,d,e.labelStyle)}let h=(B.node()?.getBBox().width??200)+a,Q=(B.node()?.getBBox().height??200)+a,p=-h/2,m=-Q/2,f=Ge.svg(B),D=St(e,{});if(e.look!=="handDrawn")D.roughness=0,D.fillStyle="solid";let w=f.rectangle(p,m,h,Q,D),b=B.insert(()=>w,":first-child");if(b.attr("class","basic label-container outer-path").attr("style",r),g?.length){let F=e.colorIndex??0;B.attr("data-color-id",`color-${F%g.length}`)}if(B.selectAll(".label").each((F,v,S)=>{let x=Qe(S[v]),k=x.attr("transform"),T=0,R=0;if(k){let Y=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(k);if(Y)T=parseFloat(Y[1]),R=parseFloat(Y[2])}let L=R-Q/2,M=p+a/2;if(v===0||v===1)M=T;x.attr("transform",`translate(${M}, ${L+a})`)}),d>E+I+n){let F=m+E+I+n,v;if(e.look==="neo"){let k=[[p,F],[p+h,F],[p+h,F+0.001],[p,F+0.001]];v=f.polygon(k,D)}else v=f.line(p,F,p+h,F,D);B.insert(()=>v).attr("class","divider")}if(Pt(e,b),e.intersect=function(F){return Ft.rect(e,F)},r&&e.look!=="handDrawn"&&(C||g?.length))B.selectAll("path").attr("style",r);return B}async function EE(A,e,t,r=""){if(e==="")return 0;let i=A.insert("g").attr("class","label").attr("style",r),u=OA(),a=u.htmlLabels??!0,n=await Nn(i,XR(ug(e)),{width:t0(e,u)+50,classes:"markdown-node-label",useHtmlLabels:a,style:r},u),o;if(!a){let s=n.children[0];for(let l of s.children)if(r)l.setAttribute("style",r);o=n.getBBox(),o.height+=6}else{let s=n.children[0],l=Qe(n);o=s.getBoundingClientRect(),l.attr("width",o.width),l.attr("height",o.height)}return i.attr("transform",`translate(${-o.width/2},${-o.height/2+t})`),o.height}async function XxA(A,e,{config:t}){let{labelStyles:r,nodeStyles:i}=bt(e);e.labelStyle=r||"";let u=10,a=e.width;e.width=(e.width??200)-10;let{shapeSvg:n,bbox:o,label:s}=await Ir(A,e,cr(e)),l=e.padding||10,g="",C;if("ticket"in e&&e.ticket&&t?.kanban?.ticketBaseUrl)g=t?.kanban?.ticketBaseUrl.replace("#TICKET#",e.ticket),C=n.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",g).attr("target","_blank");let B={useHtmlLabels:e.useHtmlLabels,labelStyle:e.labelStyle||"",width:e.width,img:e.img,padding:e.padding||8,centerLabel:!1},E,d;if(C)({label:E,bbox:d}=await ZeA(C,"ticket"in e&&e.ticket||"",B));else({label:E,bbox:d}=await ZeA(n,"ticket"in e&&e.ticket||"",B));let{label:I,bbox:h}=await ZeA(n,"assigned"in e&&e.assigned||"",B);e.width=a;let Q=10,p=e?.width||0,m=Math.max(d.height,h.height)/2,f=Math.max(o.height+Q*2,e?.height||0)+m,D=-p/2,w=-f/2;s.attr("transform","translate("+(l-p/2)+", "+(-m-o.height/2)+")"),E.attr("transform","translate("+(l-p/2)+", "+(-m+o.height/2)+")"),I.attr("transform","translate("+(l+p/2-h.width-2*u)+", "+(-m+o.height/2)+")");let b,{rx:F,ry:v}=e,{cssStyles:S}=e;if(e.look==="handDrawn"){let x=Ge.svg(n),k=St(e,{}),T=F||v?x.path(KQ(D,w,p,f,F||0),k):x.rectangle(D,w,p,f,k);b=n.insert(()=>T,":first-child"),b.attr("class","basic label-container").attr("style",S?S:null)}else{b=n.insert("rect",":first-child"),b.attr("class","basic label-container __APA__").attr("style",i).attr("rx",F??5).attr("ry",v??5).attr("x",D).attr("y",w).attr("width",p).attr("height",f);let x="priority"in e&&e.priority;if(x){let k=n.append("line"),T=D+2,R=w+Math.floor((F??0)/2),L=w+f-Math.floor((F??0)/2);k.attr("x1",T).attr("y1",R).attr("x2",T).attr("y2",L).attr("stroke-width","4").attr("stroke",Oot(x))}}return Pt(e,b),e.height=f,e.intersect=function(x){return Ft.rect(e,x)},n}async function $xA(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,halfPadding:a,label:n}=await Ir(A,e,cr(e)),o=u.width+10*a,s=u.height+8*a,l=0.15*o,{cssStyles:g}=e,C=u.width+20,B=u.height+20,E=Math.max(o,C),d=Math.max(s,B);n.attr("transform",`translate(${-u.width/2}, ${-u.height/2})`);let I,h=`M0 0
|
||
a${l},${l} 1 0,0 ${E*0.25},${-1*d*0.1}
|
||
a${l},${l} 1 0,0 ${E*0.25},0
|
||
a${l},${l} 1 0,0 ${E*0.25},0
|
||
a${l},${l} 1 0,0 ${E*0.25},${d*0.1}
|
||
|
||
a${l},${l} 1 0,0 ${E*0.15},${d*0.33}
|
||
a${l*0.8},${l*0.8} 1 0,0 0,${d*0.34}
|
||
a${l},${l} 1 0,0 ${-1*E*0.15},${d*0.33}
|
||
|
||
a${l},${l} 1 0,0 ${-1*E*0.25},${d*0.15}
|
||
a${l},${l} 1 0,0 ${-1*E*0.25},0
|
||
a${l},${l} 1 0,0 ${-1*E*0.25},0
|
||
a${l},${l} 1 0,0 ${-1*E*0.25},${-1*d*0.15}
|
||
|
||
a${l},${l} 1 0,0 ${-1*E*0.1},${-1*d*0.33}
|
||
a${l*0.8},${l*0.8} 1 0,0 0,${-1*d*0.34}
|
||
a${l},${l} 1 0,0 ${E*0.1},${-1*d*0.33}
|
||
H0 V0 Z`;if(e.look==="handDrawn"){let Q=Ge.svg(i),p=St(e,{}),m=Q.path(h,p);I=i.insert(()=>m,":first-child"),I.attr("class","basic label-container").attr("style",Ln(g))}else I=i.insert("path",":first-child").attr("class","basic label-container").attr("style",r).attr("d",h);return I.attr("transform",`translate(${-E/2}, ${-d/2})`),Pt(e,I),e.calcIntersect=function(Q,p){return Ft.rect(Q,p)},e.intersect=function(Q){return sA.info("Bang intersect",e,Q),Ft.rect(e,Q)},i}async function A7A(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,halfPadding:a,label:n}=await Ir(A,e,cr(e)),o=u.width+2*a,s=u.height+2*a,l=0.15*o,g=0.25*o,C=0.35*o,B=0.2*o,{cssStyles:E}=e,d,I=`M0 0
|
||
a${l},${l} 0 0,1 ${o*0.25},${-1*o*0.1}
|
||
a${C},${C} 1 0,1 ${o*0.4},${-1*o*0.1}
|
||
a${g},${g} 1 0,1 ${o*0.35},${o*0.2}
|
||
|
||
a${l},${l} 1 0,1 ${o*0.15},${s*0.35}
|
||
a${B},${B} 1 0,1 ${-1*o*0.15},${s*0.65}
|
||
|
||
a${g},${l} 1 0,1 ${-1*o*0.25},${o*0.15}
|
||
a${C},${C} 1 0,1 ${-1*o*0.5},0
|
||
a${l},${l} 1 0,1 ${-1*o*0.25},${-1*o*0.15}
|
||
|
||
a${l},${l} 1 0,1 ${-1*o*0.1},${-1*s*0.35}
|
||
a${B},${B} 1 0,1 ${o*0.1},${-1*s*0.65}
|
||
H0 V0 Z`;if(e.look==="handDrawn"){let h=Ge.svg(i),Q=St(e,{}),p=h.path(I,Q);d=i.insert(()=>p,":first-child"),d.attr("class","basic label-container").attr("style",Ln(E))}else d=i.insert("path",":first-child").attr("class","basic label-container").attr("style",r).attr("d",I);return n.attr("transform",`translate(${-u.width/2}, ${-u.height/2})`),d.attr("transform",`translate(${-o/2}, ${-s/2})`),Pt(e,d),e.calcIntersect=function(h,Q){return Ft.rect(h,Q)},e.intersect=function(h){return sA.info("Cloud intersect",e,h),Ft.rect(e,h)},i}async function e7A(A,e){let{labelStyles:t,nodeStyles:r}=bt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,halfPadding:a,label:n}=await Ir(A,e,cr(e)),o=u.width+8*a,s=u.height+2*a,l=5,g=e.look==="neo"?`
|
||
M${-o/2} ${s/2-l}
|
||
v${-s+2*l}
|
||
q0,-${l} ${l},-${l}
|
||
h${o-2*l}
|
||
q${l},0 ${l},${l}
|
||
v${s-l}
|
||
H${-o/2}
|
||
Z
|
||
`:`
|
||
M${-o/2} ${s/2-l}
|
||
v${-s+2*l}
|
||
q0,-${l} ${l},-${l}
|
||
h${o-2*l}
|
||
q${l},0 ${l},${l}
|
||
v${s-2*l}
|
||
q0,${l} ${-l},${l}
|
||
h${-(o-2*l)}
|
||
q${-l},0 ${-l},${-l}
|
||
Z
|
||
`;if(!e.domId)throw Error(`defaultMindmapNode: node "${e.id}" is missing a domId — was render.ts domId prefixing skipped?`);let C=i.append("path").attr("id",e.domId).attr("class","node-bkg node-"+e.type).attr("style",r).attr("d",g);return i.append("line").attr("class","node-line-").attr("x1",-o/2).attr("y1",s/2).attr("x2",o/2).attr("y2",s/2),n.attr("transform",`translate(${-u.width/2}, ${-u.height/2})`),i.append(()=>n.node()),Pt(e,C),e.calcIntersect=function(B,E){return Ft.rect(B,E)},e.intersect=function(B){return Ft.rect(e,B)},i}async function t7A(A,e){let t={padding:e.padding??0};return AtA(A,e,t)}function ttA(A){return A in r7A}async function wI(A,e,t){let r,i;if(e.shape==="rect")if(e.rx&&e.ry)e.shape="roundedRect";else e.shape="squareRect";let u=e.shape?r7A[e.shape]:void 0;if(!u)throw Error(`No such shape: ${e.shape}. Please check your syntax.`);if(e.link){let a;if(t.config.securityLevel==="sandbox")a="_top";else if(e.linkTarget)a=e.linkTarget||"_blank";r=A.insert("svg:a").attr("xlink:href",e.link).attr("target",a??null),i=await u(r,e,t)}else i=await u(A,e,t),r=i;if(r.attr("data-look",Ln(e.look)),e.tooltip)i.attr("title",e.tooltip);if(bU.set(e.id,r),e.haveCallback)r.attr("class",r.attr("class")+" clickable");return r}var Ir,ZeA,Pt,cr,hot,Ff,Qot,DI,KQ,pot,MFA,fot,mot,Dot,yot,wot,bot,TFA,JQ,wU,vot,KFA,kot,Fot,xot,Ft,yU=12,Sot,Lot,Rot,bFA=8,vFA=8,kFA=10,FFA=10,Not,Got,Uot,Mot,xFA=10,SFA=10,Tot,kf=8,cy=8,VeA=0.2,Yot,Hot,Kot,LFA=5,RFA=10,NFA=10,GFA=10,Wa=10,UFA,Jot,Oot,Pot,_ot,r7A,bU,i7A,vU,xf;var u0=P(()=>{e0();r0();eo();Rn();ai();rr();ir();Nt();Pr();Pr();Yt();Pr();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Pr();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Yt();Pr();Pr();Yt();Pr();Yt();Pr();Yt();Yt();Yt();Ir=y(async(A,e,t)=>{let r,i=e.useHtmlLabels||Zg(OA()?.htmlLabels);if(!t)r="node default";else r=t;let u=A.insert("g").attr("class",r).attr("id",e.domId||e.id),a=u.insert("g").attr("class","label").attr("style",Ln(e.labelStyle)),n;if(e.label===void 0)n="";else n=typeof e.label==="string"?e.label:e.label[0];let o=!!e.icon||!!e.img,s=e.labelType==="markdown",l=await Nn(a,or(ug(n),OA()),{useHtmlLabels:i,width:e.width||OA().flowchart?.wrappingWidth,classes:s?"markdown-node-label":"",style:e.labelStyle,addSvgBackground:o,markdown:s},OA()),g=l.getBBox(),C=(e?.padding??0)/2;if(i){let B=l.children[0],E=Qe(l);await Rv(B,n),g=B.getBoundingClientRect(),E.attr("width",g.width),E.attr("height",g.height)}if(i)a.attr("transform","translate("+-g.width/2+", "+-g.height/2+")");else a.attr("transform","translate(0, "+-g.height/2+")");if(e.centerLabel)a.attr("transform","translate("+-g.width/2+", "+-g.height/2+")");return a.insert("rect",":first-child"),{shapeSvg:u,bbox:g,halfPadding:C,label:a}},"labelHelper"),ZeA=y(async(A,e,t)=>{let r=t.useHtmlLabels??ki(OA()),i=A.insert("g").attr("class","label").attr("style",t.labelStyle||""),u=await Nn(i,or(ug(e),OA()),{useHtmlLabels:r,width:t.width||OA()?.flowchart?.wrappingWidth,style:t.labelStyle,addSvgBackground:!!t.icon||!!t.img}),a=u.getBBox(),n=t.padding/2;if(ki(OA())){let o=u.children[0],s=Qe(u);a=o.getBoundingClientRect(),s.attr("width",a.width),s.attr("height",a.height)}if(r)i.attr("transform","translate("+-a.width/2+", "+-a.height/2+")");else i.attr("transform","translate(0, "+-a.height/2+")");if(t.centerLabel)i.attr("transform","translate("+-a.width/2+", "+-a.height/2+")");return i.insert("rect",":first-child"),{shapeSvg:A,bbox:a,halfPadding:n,label:i}},"insertLabel"),Pt=y((A,e)=>{let t=e.node().getBBox();A.width=t.width,A.height=t.height},"updateNodeBounds"),cr=y((A,e)=>(A.look==="handDrawn"?"rough-node":"node")+" "+A.cssClasses+" "+(e||""),"getNodeClasses");y(Qi,"createPathFromPoints");y(HQ,"generateFullSineWavePoints");y(Pv,"generateCirclePoints");y(jeA,"mergePaths");hot=y((A,e)=>{var{x:t,y:r}=A,i=e.x-t,u=e.y-r,a=A.width/2,n=A.height/2,o,s;if(Math.abs(u)*a>Math.abs(i)*n){if(u<0)n=-n;o=u===0?0:n*i/u,s=n}else{if(i<0)a=-a;o=a,s=i===0?0:a*u/i}return{x:t+o,y:r+s}},"intersectRect"),Ff=hot,Qot=y(async(A,e,t,r=!1,i=!1)=>{let u=e||"";if(typeof u==="object")u=u[0];let a=OA(),n=ki(a);return await Nn(A,u,{style:t,isTitle:r,useHtmlLabels:n,markdown:!1,isNode:i,width:Number.POSITIVE_INFINITY},a)},"createLabel"),DI=Qot,KQ=y((A,e,t,r,i)=>["M",A+i,e,"H",A+t-i,"A",i,i,0,0,1,A+t,e+i,"V",e+r-i,"A",i,i,0,0,1,A+t-i,e+r,"H",A+i,"A",i,i,0,0,1,A,e+r-i,"V",e+i,"A",i,i,0,0,1,A+i,e,"Z"].join(" "),"createRoundedRectPathD"),pot=y(async(A,e)=>{let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{clusterBkg:u,clusterBorder:a}=r,n=a,{labelStyles:o,nodeStyles:s,borderStyles:l,backgroundStyles:g}=bt(e),C=A.insert("g").attr("class","cluster swimlane "+(e.cssClasses||"")).attr("id",e.id).attr("data-id",e.id).attr("data-et","cluster").attr("data-look",e.look),B=Zg(t.flowchart.htmlLabels),E=e.direction==="LR",d=C.insert("g").attr("class","cluster-label swimlane-label"),I=await Nn(d,e.label,{style:e.labelStyle,useHtmlLabels:B,isNode:!0,width:e.width}),h=I.getBBox();if(B){let k=I.children[0],T=Qe(I);h=k.getBoundingClientRect(),T.attr("width",h.width),T.attr("height",h.height)}let Q=e.padding??0,p=e.width<=h.width+Q?h.width+Q:e.width;if(e.width<=h.width+Q)e.diff=(p-e.width)/2-Q;else e.diff=-Q;let m=e.height,f=e.y-m/2,D=e.y+m/2,w=e.x-p/2,b=e.swimlaneContentTop!==void 0?e.swimlaneContentTop:f+m/3,F=E?4:0,v=h.height+2*F,S,x;if(E){let k=Math.max(v,h.height+2*F),T=w+k,R=Math.max(0,p-k);if(e.look==="handDrawn"){let U=Ge.svg(C),Y=St(e,{roughness:0.7,fill:u,stroke:n,fillWeight:3,seed:i}),H=St(e,{roughness:0.7,fill:"none",stroke:n,seed:i}),J=U.rectangle(w,f,k,m,Y);S=C.insert(()=>J,":first-child");let K=U.rectangle(T,f,R,m,H);x=C.insert(()=>K,":first-child"),S.select("path:nth-child(2)").attr("style",l.join(";")),S.select("path").attr("style",g.join(";").replace("fill","stroke"))}else S=C.insert("rect",":first-child"),x=C.insert("rect",":first-child"),S.attr("class","swimlane-title").attr("style",s).attr("x",w).attr("y",f).attr("width",k).attr("height",m).attr("fill",u).attr("stroke",n),x.attr("class","swimlane-body").attr("style",s).attr("x",T).attr("y",f).attr("width",R).attr("height",m).attr("fill","none").attr("stroke",n);let L=w+k/2,M=e.y;d.attr("transform",`translate(${L}, ${M}) rotate(-90) translate(${-h.width/2}, ${-h.height/2})`)}else{let k=Math.max(0,b-f),T=Math.min(v,k),R=f+T,L=Math.max(0,D-R),M=e.x-p/2;if(e.look==="handDrawn"){let H=Ge.svg(C),J=St(e,{roughness:0.7,fill:u,stroke:n,fillWeight:3,seed:i}),K=St(e,{roughness:0.7,fill:"none",stroke:n,seed:i}),O=H.rectangle(M,f,p,T,J);S=C.insert(()=>O,":first-child");let _=H.rectangle(M,R,p,L,K);x=C.insert(()=>_,":first-child"),S.select("path:nth-child(2)").attr("style",l.join(";")),S.select("path").attr("style",g.join(";").replace("fill","stroke"))}else S=C.insert("rect",":first-child"),x=C.insert("rect",":first-child"),S.attr("class","swimlane-title").attr("style",s).attr("x",M).attr("y",f).attr("width",p).attr("height",T).attr("fill",u).attr("stroke",n),x.attr("class","swimlane-body").attr("style",s).attr("x",M).attr("y",R).attr("width",p).attr("height",L).attr("fill","none").attr("stroke",n);let U=e.x-h.width/2,Y=f+(T-h.height)/2;d.attr("transform",`translate(${U}, ${Y})`)}if(sA.trace("Swimlane data ",e,JSON.stringify(e)),o){let k=d.select("span");if(k)k.attr("style",o)}return e.offsetX=0,e.width=p,e.height=m,e.offsetY=h.height-Q/2,e.intersect=function(k){return Ff(e,k)},{cluster:C,labelBBox:h}},"swimlane"),MFA=y(async(A,e)=>{sA.info("Creating subgraph rect for ",e.id,e);let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{clusterBkg:u,clusterBorder:a}=r,{labelStyles:n,nodeStyles:o,borderStyles:s,backgroundStyles:l}=bt(e),g=A.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.domId).attr("data-look",e.look),C=ki(t),B=g.insert("g").attr("class","cluster-label "),E;if(e.labelType==="markdown")E=await Nn(B,e.label,{style:e.labelStyle,useHtmlLabels:C,isNode:!0,width:e.width});else E=await DI(B,e.label,e.labelStyle||"",!1,!0);let d=E.getBBox();if(ki(t)){let w=E.children[0],b=Qe(E);d=w.getBoundingClientRect(),b.attr("width",d.width),b.attr("height",d.height)}let I=e.width<=d.width+e.padding?d.width+e.padding:e.width;if(e.width<=d.width+e.padding)e.diff=(I-e.width)/2-e.padding;else e.diff=-e.padding;let h=e.height,Q=e.x-I/2,p=e.y-h/2;sA.trace("Data ",e,JSON.stringify(e));let m;if(e.look==="handDrawn"){let w=Ge.svg(g),b=St(e,{roughness:0.7,fill:u,stroke:a,fillWeight:3,seed:i}),F=w.path(KQ(Q,p,I,h,0),b);m=g.insert(()=>(sA.debug("Rough node insert CXC",F),F),":first-child"),m.select("path:nth-child(2)").attr("style",s.join(";")),m.select("path").attr("style",l.join(";").replace("fill","stroke"))}else m=g.insert("rect",":first-child"),m.attr("style",o).attr("rx",e.rx).attr("ry",e.ry).attr("x",Q).attr("y",p).attr("width",I).attr("height",h);let{subGraphTitleTopMargin:f}=fC(t);if(B.attr("transform",`translate(${e.x-d.width/2}, ${e.y-e.height/2+f})`),n){let w=B.select("span");if(w)w.attr("style",n)}let D=m.node().getBBox();return e.offsetX=0,e.width=D.width,e.height=D.height,e.offsetY=d.height-e.padding/2,e.intersect=function(w){return Ff(e,w)},{cluster:g,labelBBox:d}},"rect"),fot=y((A,e)=>{let t=A.insert("g").attr("class","note-cluster").attr("id",e.domId),r=t.insert("rect",":first-child"),i=0*e.padding,u=i/2;r.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-u).attr("y",e.y-e.height/2-u).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");let a=r.node().getBBox();return e.width=a.width,e.height=a.height,e.intersect=function(n){return Ff(e,n)},{cluster:t,labelBBox:{width:0,height:0}}},"noteGroup"),mot=y(async(A,e)=>{let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{altBackground:u,compositeBackground:a,compositeTitleBackground:n,nodeBorder:o}=r,s=A.insert("g").attr("class",e.cssClasses).attr("id",e.domId).attr("data-id",e.id).attr("data-look",e.look),l=s.insert("g",":first-child"),g=s.insert("g").attr("class","cluster-label"),C=s.append("rect"),B=await DI(g,e.label,e.labelStyle,void 0,!0),E=B.getBBox();if(ki(t)){let F=B.children[0],v=Qe(B);E=F.getBoundingClientRect(),v.attr("width",E.width),v.attr("height",E.height)}let d=0*e.padding,I=d/2,h=(e.width<=E.width+e.padding?E.width+e.padding:e.width)+d;if(e.width<=E.width+e.padding)e.diff=(h-e.width)/2-e.padding;else e.diff=-e.padding;let Q=e.height+d,p=e.height+d-E.height-6,m=e.x-h/2,f=e.y-Q/2;e.width=h;let D=e.y-e.height/2-I+E.height+2,w;if(e.look==="handDrawn"){let F=e.cssClasses.includes("statediagram-cluster-alt"),v=Ge.svg(s),S=e.rx||e.ry?v.path(KQ(m,f,h,Q,10),{roughness:0.7,fill:n,fillStyle:"solid",stroke:o,seed:i}):v.rectangle(m,f,h,Q,{seed:i});w=s.insert(()=>S,":first-child");let x=v.rectangle(m,D,h,p,{fill:F?u:a,fillStyle:F?"hachure":"solid",stroke:o,seed:i});w=s.insert(()=>S,":first-child"),C=s.insert(()=>x)}else{w=l.insert("rect",":first-child");let F="outer";w.attr("class",F).attr("x",m).attr("y",f).attr("width",h).attr("height",Q).attr("data-look",e.look),C.attr("class","inner").attr("x",m).attr("y",D).attr("width",h).attr("height",p)}g.attr("transform",`translate(${e.x-E.width/2}, ${f+1-(ki(t)?0:3)})`);let b=w.node().getBBox();return e.height=b.height,e.offsetX=0,e.offsetY=E.height-e.padding/2,e.labelBBox=E,e.intersect=function(F){return Ff(e,F)},{cluster:s,labelBBox:E}},"roundedWithTitle"),Dot=y(async(A,e)=>{sA.info("Creating subgraph rect for ",e.id,e);let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{clusterBkg:u,clusterBorder:a}=r,{labelStyles:n,nodeStyles:o,borderStyles:s,backgroundStyles:l}=bt(e),g=A.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.domId).attr("data-look",e.look),C=ki(t),B=g.insert("g").attr("class","cluster-label "),E=await Nn(B,e.label,{style:e.labelStyle,useHtmlLabels:C,isNode:!0,width:e.width}),d=E.getBBox();if(ki(t)){let w=E.children[0],b=Qe(E);d=w.getBoundingClientRect(),b.attr("width",d.width),b.attr("height",d.height)}let I=e.width<=d.width+e.padding?d.width+e.padding:e.width;if(e.width<=d.width+e.padding)e.diff=(I-e.width)/2-e.padding;else e.diff=-e.padding;let h=e.height,Q=e.x-I/2,p=e.y-h/2;sA.trace("Data ",e,JSON.stringify(e));let m;if(e.look==="handDrawn"){let w=Ge.svg(g),b=St(e,{roughness:0.7,fill:u,stroke:a,fillWeight:4,seed:i}),F=w.path(KQ(Q,p,I,h,e.rx),b);m=g.insert(()=>(sA.debug("Rough node insert CXC",F),F),":first-child"),m.select("path:nth-child(2)").attr("style",s.join(";")),m.select("path").attr("style",l.join(";").replace("fill","stroke"))}else m=g.insert("rect",":first-child"),m.attr("style",o).attr("rx",e.rx).attr("ry",e.ry).attr("x",Q).attr("y",p).attr("width",I).attr("height",h);let{subGraphTitleTopMargin:f}=fC(t);if(B.attr("transform",`translate(${e.x-d.width/2}, ${e.y-e.height/2+f})`),n){let w=B.select("span");if(w)w.attr("style",n)}let D=m.node().getBBox();return e.offsetX=0,e.width=D.width,e.height=D.height,e.offsetY=d.height-e.padding/2,e.intersect=function(w){return Ff(e,w)},{cluster:g,labelBBox:d}},"kanbanSection"),yot=y((A,e)=>{let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{nodeBorder:u}=r,a=A.insert("g").attr("class",e.cssClasses).attr("id",e.domId).attr("data-look",e.look),n=a.insert("g",":first-child"),o=0*e.padding,s=e.width+o;e.diff=-e.padding;let l=e.height+o,g=e.x-s/2,C=e.y-l/2;e.width=s;let B;if(e.look==="handDrawn"){let I=Ge.svg(a).rectangle(g,C,s,l,{fill:"lightgrey",roughness:0.5,strokeLineDash:[5],stroke:u,seed:i});B=a.insert(()=>I,":first-child")}else{B=n.insert("rect",":first-child");let d="outer";if(e.look==="neo")d="divider";else d="divider";B.attr("class",d).attr("x",g).attr("y",C).attr("width",s).attr("height",l).attr("data-look",e.look)}let E=B.node().getBBox();return e.height=E.height,e.offsetX=0,e.offsetY=0,e.intersect=function(d){return Ff(e,d)},{cluster:a,labelBBox:{}}},"divider"),wot=MFA,bot={rect:MFA,squareRect:wot,roundedWithTitle:mot,noteGroup:fot,divider:yot,kanbanSection:Dot,swimlane:pot},TFA=new Map,JQ=y(async(A,e)=>{let t=e.shape||"rect",r=await bot[t](A,e);return TFA.set(e.id,r),r},"insertCluster"),wU=y(()=>{TFA=new Map},"clear");y(YFA,"intersectNode");vot=YFA;y(HFA,"intersectEllipse");KFA=HFA;y(JFA,"intersectCircle");kot=JFA;y(OFA,"intersectLine");y(XeA,"sameSign");Fot=OFA;y(PFA,"intersectPolygon");xot=PFA,Ft={node:vot,circle:kot,ellipse:KFA,polygon:xot,rect:Ff};y(_FA,"anchor");y($eA,"generateArcPoints");y(WFA,"calculateArcSagitta");y(qFA,"bowTieRect");y(yI,"insertPolygonShape");y(zFA,"card");y(ZFA,"choice");y(AtA,"circle");y(VFA,"createLine");y(jFA,"crossedCircle");y(fI,"generateCirclePoints");y(XFA,"curlyBraceLeft");y(mI,"generateCirclePoints");y($FA,"curlyBraceRight");y(i0,"generateCirclePoints");y(AxA,"curlyBraces");y(exA,"curvedTrapezoid");Sot=y((A,e,t,r,i,u)=>[`M${A},${e+u}`,`a${i},${u} 0,0,0 ${t},0`,`a${i},${u} 0,0,0 ${-t},0`,`l0,${r}`,`a${i},${u} 0,0,0 ${t},0`,`l0,${-r}`].join(" "),"createCylinderPathD"),Lot=y((A,e,t,r,i,u)=>[`M${A},${e+u}`,`M${A+t},${e+u}`,`a${i},${u} 0,0,0 ${-t},0`,`l0,${r}`,`a${i},${u} 0,0,0 ${t},0`,`l0,${-r}`].join(" "),"createOuterCylinderPathD"),Rot=y((A,e,t,r,i,u)=>[`M${A-t/2},${-r/2}`,`a${i},${u} 0,0,0 ${t},0`].join(" "),"createInnerCylinderPathD");y(txA,"cylinder");y(Ey,"drawRect");y(rxA,"datastore");y(ixA,"dividedRectangle");y(uxA,"doublecircle");y(axA,"filledCircle");y(nxA,"flippedTriangle");y(oxA,"forkJoin");y(sxA,"halfRoundedRectangle");Not=y((A,e,t,r,i)=>[`M${A+i},${e}`,`L${A+t-i},${e}`,`L${A+t},${e-r/2}`,`L${A+t-i},${e-r}`,`L${A+i},${e-r}`,`L${A},${e-r/2}`,"Z"].join(" "),"createHexagonPathD");y(lxA,"hexagon");y(gxA,"hourglass");y(cxA,"icon");y(CxA,"iconCircle");y(BxA,"iconRounded");y(ExA,"iconSquare");y(dxA,"imageSquare");y(IxA,"inv_trapezoid");y(hxA,"labelRect");y(QxA,"lean_left");y(pxA,"lean_right");y(fxA,"lightningBolt");Got=y((A,e,t,r,i,u,a)=>[`M${A},${e+u}`,`a${i},${u} 0,0,0 ${t},0`,`a${i},${u} 0,0,0 ${-t},0`,`l0,${r}`,`a${i},${u} 0,0,0 ${t},0`,`l0,${-r}`,`M${A},${e+u+a}`,`a${i},${u} 0,0,0 ${t},0`].join(" "),"createCylinderPathD"),Uot=y((A,e,t,r,i,u,a)=>[`M${A},${e+u}`,`M${A+t},${e+u}`,`a${i},${u} 0,0,0 ${-t},0`,`l0,${r}`,`a${i},${u} 0,0,0 ${t},0`,`l0,${-r}`,`M${A},${e+u+a}`,`a${i},${u} 0,0,0 ${t},0`].join(" "),"createOuterCylinderPathD"),Mot=y((A,e,t,r,i,u)=>[`M${A-t/2},${-r/2}`,`a${i},${u} 0,0,0 ${t},0`].join(" "),"createInnerCylinderPathD");y(mxA,"linedCylinder");y(DxA,"linedWaveEdgedRect");y(yxA,"multiRect");y(wxA,"multiWaveEdgedRectangle");y(bxA,"note");Tot=y((A,e,t)=>[`M${A+t/2},${e}`,`L${A+t},${e-t/2}`,`L${A+t/2},${e-t}`,`L${A},${e-t/2}`,"Z"].join(" "),"createDecisionBoxPathD");y(vxA,"question");y(kxA,"rect_left_inv_arrow");y(FxA,"rectWithTitle");y(xxA,"roundedRect");y(SxA,"shadedProcess");y(LxA,"slopedRect");y(RxA,"squareRect");y(NxA,"stadium");y(GxA,"state");y(UxA,"stateEnd");y(MxA,"stateStart");y(TxA,"subroutine");y(YxA,"taggedRect");y(HxA,"taggedWaveEdgedRectangle");y(KxA,"text");Yot=y((A,e,t,r,i,u)=>`M${A},${e}
|
||
a${i},${u} 0,0,1 0,${-r}
|
||
l${t},0
|
||
a${i},${u} 0,0,1 0,${r}
|
||
M${t},${-r}
|
||
a${i},${u} 0,0,0 0,${r}
|
||
l${-t},0`,"createCylinderPathD"),Hot=y((A,e,t,r,i,u)=>[`M${A},${e}`,`M${A+t},${e}`,`a${i},${u} 0,0,0 0,${-r}`,`l${-t},0`,`a${i},${u} 0,0,0 0,${r}`,`l${t},0`].join(" "),"createOuterCylinderPathD"),Kot=y((A,e,t,r,i,u)=>[`M${A+t/2},${-r/2}`,`a${i},${u} 0,0,0 0,${r}`].join(" "),"createInnerCylinderPathD");y(JxA,"tiltedCylinder");y(OxA,"trapezoid");y(PxA,"trapezoidalPentagon");y(_xA,"triangle");y(WxA,"waveEdgedRectangle");y(qxA,"waveRectangle");y(zxA,"windowPane");UFA=new Set(["redux-color","redux-dark-color"]),Jot=new Set(["redux","redux-dark","redux-color","redux-dark-color"]);y(etA,"erBox");y(Cy,"addText");y(By,"lineToPolygon");y(ZxA,"textHelper");y(Ov,"addText");y(VxA,"classBox");y(jxA,"requirementBox");y(EE,"addText");Oot=y((A)=>{switch(A){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");y(XxA,"kanbanItem");y($xA,"bang");y(A7A,"cloud");y(e7A,"defaultMindmapNode");y(t7A,"mindmapCircle");Pot=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:RxA},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:xxA},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:NxA},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:TxA},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:txA},{semanticName:"Data Store",name:"Data Store",shortName:"datastore",description:"Data flow diagram data store",aliases:["data-store"],handler:rxA},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:AtA},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:$xA},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:A7A},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:vxA},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:lxA},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:pxA},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:QxA},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:OxA},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:IxA},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:uxA},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:KxA},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:zFA},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:SxA},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:MxA},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:UxA},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:oxA},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:gxA},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:XFA},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:$FA},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:AxA},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:fxA},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:WxA},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:sxA},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:JxA},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:mxA},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:exA},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:ixA},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:_xA},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:zxA},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:axA},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:PxA},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:nxA},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:LxA},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:wxA},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:yxA},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:qFA},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:jFA},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:HxA},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:YxA},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:qxA},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:kxA},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:DxA}],_ot=y(()=>{let e=[...Object.entries({state:GxA,choice:ZFA,note:bxA,rectWithTitle:FxA,labelRect:hxA,iconSquare:ExA,iconCircle:CxA,icon:cxA,iconRounded:BxA,imageSquare:dxA,anchor:_FA,kanbanItem:XxA,mindmapCircle:t7A,defaultMindmapNode:e7A,classBox:VxA,erBox:etA,requirementBox:jxA}),...Pot.flatMap((t)=>[t.shortName,..."aliases"in t?t.aliases:[],..."internalAliases"in t?t.internalAliases:[]].map((i)=>[i,t.handler]))];return Object.fromEntries(e)},"generateShapeMap"),r7A=_ot();y(ttA,"isValidShape");bU=new Map;y(wI,"insertNode");i7A=y((A,e)=>{bU.set(e.id,A)},"setNodeElem"),vU=y(()=>{bU.clear()},"clear"),xf=y((A)=>{let e=bU.get(A.id);sA.trace("Transforming node",A.diff,A,"translate("+(A.x-A.width/2-5)+", "+A.width/2+")");let t=8,r=A.diff||0;if(A.clusterNode)e.attr("transform","translate("+(A.x+r-A.width/2)+", "+(A.y-A.height/2-t)+")");else e.attr("transform","translate("+A.x+", "+A.y+")");return r},"positionNode")});function _v(A,e){if(A===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};A=Ia(A),e=Ia(e);let[t,r]=[A.x,A.y],[i,u]=[e.x,e.y],a=i-t,n=u-r;return{angle:Math.atan(n/a),deltaX:a,deltaY:n}}var $g,Gn,rtA,Ia,kU;var ds=P(()=>{Nt();$g=y((A,e)=>{if(e)return"translate("+-A.width/2+", "+-A.height/2+")";let t=A.x??0,r=A.y??0;return"translate("+-(t+A.width/2)+", "+-(r+A.height/2)+")"},"computeLabelTransform"),Gn={aggregation:17.25,extension:17.25,composition:17.25,dependency:6,lollipop:13.5,arrow_point:4,arrow_barb:0,arrow_barb_neo:5.5},rtA={arrow_point:4,arrow_cross:12.5,arrow_circle:12.5};y(_v,"calculateDeltaAndAngle");Ia=y((A)=>{if(Array.isArray(A))return{x:A[0],y:A[1]};return A},"pointTransformer"),kU=y((A)=>({x:y(function(e,t,r){let i=0,u=Ia(r[0]).x<Ia(r[r.length-1]).x?"left":"right";if(t===0&&Object.hasOwn(Gn,A.arrowTypeStart)){let{angle:B,deltaX:E}=_v(r[0],r[1]);i=Gn[A.arrowTypeStart]*Math.cos(B)*(E>=0?1:-1)}else if(t===r.length-1&&Object.hasOwn(Gn,A.arrowTypeEnd)){let{angle:B,deltaX:E}=_v(r[r.length-1],r[r.length-2]);i=Gn[A.arrowTypeEnd]*Math.cos(B)*(E>=0?1:-1)}let a=Math.abs(Ia(e).x-Ia(r[r.length-1]).x),n=Math.abs(Ia(e).y-Ia(r[r.length-1]).y),o=Math.abs(Ia(e).x-Ia(r[0]).x),s=Math.abs(Ia(e).y-Ia(r[0]).y),l=Gn[A.arrowTypeStart],g=Gn[A.arrowTypeEnd],C=1;if(a<g&&a>0&&n<g){let B=g+C-a;B*=u==="right"?-1:1,i-=B}if(o<l&&o>0&&s<l){let B=l+C-o;B*=u==="right"?-1:1,i+=B}return Ia(e).x+i},"x"),y:y(function(e,t,r){let i=0,u=Ia(r[0]).y<Ia(r[r.length-1]).y?"down":"up";if(t===0&&Object.hasOwn(Gn,A.arrowTypeStart)){let{angle:B,deltaY:E}=_v(r[0],r[1]);i=Gn[A.arrowTypeStart]*Math.abs(Math.sin(B))*(E>=0?1:-1)}else if(t===r.length-1&&Object.hasOwn(Gn,A.arrowTypeEnd)){let{angle:B,deltaY:E}=_v(r[r.length-1],r[r.length-2]);i=Gn[A.arrowTypeEnd]*Math.abs(Math.sin(B))*(E>=0?1:-1)}let a=Math.abs(Ia(e).y-Ia(r[r.length-1]).y),n=Math.abs(Ia(e).x-Ia(r[r.length-1]).x),o=Math.abs(Ia(e).y-Ia(r[0]).y),s=Math.abs(Ia(e).x-Ia(r[0]).x),l=Gn[A.arrowTypeStart],g=Gn[A.arrowTypeEnd],C=1;if(a<g&&a>0&&n<g){let B=g+C-a;B*=u==="up"?-1:1,i-=B}if(o<l&&o>0&&s<l){let B=l+C-o;B*=u==="up"?-1:1,i+=B}return Ia(e).y+i},"y")}),"getLineFunctionsWithOffset")});function qv(A,e){if(ki(OA())&&A)A.style.width=e.length*9+"px",A.style.height="12px"}function o7A(A){let e=[],t=[];for(let r=1;r<A.length-1;r++){let i=A[r-1],u=A[r],a=A[r+1];if(i.x===u.x&&u.y===a.y&&Math.abs(u.x-a.x)>5&&Math.abs(u.y-i.y)>5)e.push(u),t.push(r);else if(i.y===u.y&&u.x===a.x&&Math.abs(u.x-i.x)>5&&Math.abs(u.y-a.y)>5)e.push(u),t.push(r)}return{cornerPoints:e,cornerPointPositions:t}}function s7A(A,e){if(A.length<2)return"";let t="",r=A.length,i=0.00001;for(let u=0;u<r;u++){let a=A[u],n=A[u-1],o=A[u+1];if(u===0)t+=`M${a.x},${a.y}`;else if(u===r-1)t+=`L${a.x},${a.y}`;else{let s=a.x-n.x,l=a.y-n.y,g=o.x-a.x,C=o.y-a.y,B=Math.hypot(s,l),E=Math.hypot(g,C);if(B<i||E<i){t+=`L${a.x},${a.y}`;continue}let d=s/B,I=l/B,h=g/E,Q=C/E,p=d*h+I*Q,m=Math.max(-1,Math.min(1,p)),f=Math.acos(m);if(f<i||Math.abs(Math.PI-f)<i){t+=`L${a.x},${a.y}`;continue}let D=Math.min(e/Math.sin(f/2),B/2,E/2),w=a.x-d*D,b=a.y-I*D,F=a.x+h*D,v=a.y+Q*D;t+=`L${w},${b}`,t+=`Q${a.x},${a.y} ${F},${v}`}}return t}function itA(A,e){if(!A||!e)return{angle:0,deltaX:0,deltaY:0};let t=e.x-A.x,r=e.y-A.y;return{angle:Math.atan2(r,t),deltaX:t,deltaY:r}}function l7A(A,e){let t=A.map((i)=>({...i}));if(A.length>=2&&Gn[e.arrowTypeStart]){let i=Gn[e.arrowTypeStart],u=A[0],a=A[1],{angle:n}=itA(u,a),o=i*Math.cos(n),s=i*Math.sin(n);t[0].x=u.x+o,t[0].y=u.y+s}let r=A.length;if(r>=2&&Gn[e.arrowTypeEnd]){let i=Gn[e.arrowTypeEnd],u=A[r-1],a=A[r-2],{angle:n}=itA(a,u),o=i*Math.cos(n),s=i*Math.sin(n);t[r-1].x=u.x-o,t[r-1].y=u.y-s}return t}var Wot,qot,zot,u7A,Zot,dy,qa,FU,Wv,Sf,xU,Vot,jot,Xot,a7A,n7A,$ot,A0t,Iy,e0t,t0t,r0t,i0t,u0t,a0t,n0t,o0t,s0t,l0t,g0t,c0t,C0t,B0t,E0t,d0t,I0t,h0t,Q0t,p0t,f0t,m0t,D0t,y0t,hy;var ol=P(()=>{u0();e0();ds();r0();eo();ai();rr();ir();Nt();Pr();Yt();Wot=y((A,e,t,r,i,u=!1,a)=>{if(e.arrowTypeStart)u7A(A,"start",e.arrowTypeStart,t,r,i,u,a);if(e.arrowTypeEnd)u7A(A,"end",e.arrowTypeEnd,t,r,i,u,a)},"addEdgeMarkers"),qot={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_barb_neo:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},zot=["cross","point","circle","lollipop","aggregation","extension","composition","dependency","barb"],u7A=y((A,e,t,r,i,u,a=!1,n)=>{let o=qot[t],s=o&&zot.includes(o.type);if(!o){sA.warn(`Unknown arrow type: ${t}`);return}let l=o.type,B=`${i}_${u}-${l}${e==="start"?"Start":"End"}${a&&s?"-margin":""}`;if(n&&n.trim()!==""){let E=n.replace(/[^\dA-Za-z]/g,"_"),d=`${B}_${E}`;if(!document.getElementById(d)){let I=document.getElementById(B);if(I){let h=I.cloneNode(!0);h.id=d,h.querySelectorAll("path, circle, line").forEach((p)=>{if(p.setAttribute("stroke",n),o.fill)p.setAttribute("fill",n)}),I.parentNode?.appendChild(h)}}A.attr(`marker-${e}`,`url(${r}#${d})`)}else A.attr(`marker-${e}`,`url(${r}#${B})`)},"addEdgeMarker"),Zot=y((A)=>typeof A==="string"?A:OA()?.flowchart?.curve,"resolveEdgeCurveType"),dy=new Map,qa=new Map,FU=y(()=>{dy.clear(),qa.clear()},"clear"),Wv=y((A)=>{if(!A)return"";if(typeof A==="string")return A;return A.reduce((e,t)=>e+";"+t,"")},"getLabelStyles"),Sf=y(async(A,e)=>{let t=OA(),r=ki(t),{labelStyles:i}=bt(e);e.labelStyle=i;let u=A.insert("g").attr("class","edgeLabel"),a=u.insert("g").attr("class","label").attr("data-id",e.id),n=e.labelType==="markdown",o=void 0,s=await Nn(A,e.label,{style:Wv(e.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1,markdown:n,width:n?o:void 0},t);a.node().appendChild(s),sA.info("abc82",e,e.labelType);let l=s.getBBox(),g=l;if(r){let B=s.children[0],E=Qe(s);l=B.getBoundingClientRect(),g=l,E.attr("width",l.width),E.attr("height",l.height)}else{let B=Qe(s).select("text").node();if(B&&typeof B.getBBox==="function")g=B.getBBox()}a.attr("transform",$g(g,r)),dy.set(e.id,u),e.width=l.width,e.height=l.height;let C;if(e.startLabelLeft){let B=A.insert("g").attr("class","edgeTerminals"),E=B.insert("g").attr("class","inner"),d=await DI(E,e.startLabelLeft,Wv(e.labelStyle)||"",!1,!1);C=d;let I=d.getBBox();if(r){let h=d.children[0],Q=Qe(d);I=h.getBoundingClientRect(),Q.attr("width",I.width),Q.attr("height",I.height)}if(E.attr("transform",$g(I,r)),!qa.get(e.id))qa.set(e.id,{});qa.get(e.id).startLeft=B,qv(C,e.startLabelLeft)}if(e.startLabelRight){let B=A.insert("g").attr("class","edgeTerminals"),E=B.insert("g").attr("class","inner"),d=await DI(E,e.startLabelRight,Wv(e.labelStyle)||"",!1,!1);C=d;let I=d.getBBox();if(r){let h=d.children[0],Q=Qe(d);I=h.getBoundingClientRect(),Q.attr("width",I.width),Q.attr("height",I.height)}if(E.attr("transform",$g(I,r)),!qa.get(e.id))qa.set(e.id,{});qa.get(e.id).startRight=B,qv(C,e.startLabelRight)}if(e.endLabelLeft){let B=A.insert("g").attr("class","edgeTerminals"),E=B.insert("g").attr("class","inner"),d=await DI(B,e.endLabelLeft,Wv(e.labelStyle)||"",!1,!1);C=d;let I=d.getBBox();if(r){let h=d.children[0],Q=Qe(d);I=h.getBoundingClientRect(),Q.attr("width",I.width),Q.attr("height",I.height)}if(E.attr("transform",$g(I,r)),!qa.get(e.id))qa.set(e.id,{});qa.get(e.id).endLeft=B,qv(C,e.endLabelLeft)}if(e.endLabelRight){let B=A.insert("g").attr("class","edgeTerminals"),E=B.insert("g").attr("class","inner"),d=await DI(B,e.endLabelRight,Wv(e.labelStyle)||"",!1,!1);C=d;let I=d.getBBox();if(r){let h=d.children[0],Q=Qe(d);I=h.getBoundingClientRect(),Q.attr("width",I.width),Q.attr("height",I.height)}if(E.attr("transform",$g(I,r)),!qa.get(e.id))qa.set(e.id,{});qa.get(e.id).endRight=B,qv(C,e.endLabelRight)}return s},"insertEdgeLabel");y(qv,"setTerminalWidth");xU=y((A,e)=>{sA.debug("Moving label abc88 ",A.id,A.label,dy.get(A.id),e);let t=e.updatedPath?e.updatedPath:e.originalPath,r=OA(),{subGraphTitleTotalMargin:i}=fC(r);if(A.label){let u=dy.get(A.id),{x:a,y:n}=A;if(t){let o=Jt.calcLabelPosition(t);if(sA.debug("Moving label "+A.label+" from (",a,",",n,") to (",o.x,",",o.y,") abc88"),e.updatedPath)a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n+i/2})`)}if(A.startLabelLeft){let u=qa.get(A.id).startLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.startLabelRight){let u=qa.get(A.id).startRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelLeft){let u=qa.get(A.id).endLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelRight){let u=qa.get(A.id).endRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}},"positionEdgeLabel"),Vot=y((A,e)=>{if(!A?.isLabelEdge||!A?.id?.endsWith("-to-label")||!Array.isArray(e))return e;if(e.length!==2)return e;let[t,r]=e,i=Math.abs(r.x-t.x),u=Math.abs(r.y-t.y);if(i<0.001||u<0.001)return e;if(u>=i)return[t,{x:t.x,y:r.y},r];return[t,{x:r.x,y:t.y},r]},"orthogonalizeToLabelClippedPoints"),jot=y((A,e)=>{let{x:t,y:r}=A,i=Math.abs(e.x-t),u=Math.abs(e.y-r),a=A.width/2,n=A.height/2;return i>=a||u>=n},"outsideNode"),Xot=y((A,e,t)=>{sA.debug(`intersection calc abc89:
|
||
outsidePoint: ${JSON.stringify(e)}
|
||
insidePoint : ${JSON.stringify(t)}
|
||
node : x:${A.x} y:${A.y} w:${A.width} h:${A.height}`);let{x:r,y:i}=A,u=Math.abs(r-t.x),a=A.width/2,n=t.x<e.x?a-u:a+u,o=A.height/2,s=Math.abs(e.y-t.y),l=Math.abs(e.x-t.x);if(Math.abs(i-e.y)*a>Math.abs(r-e.x)*o){let g=t.y<e.y?e.y-o-i:i-o-e.y;n=l*g/s;let C={x:t.x<e.x?t.x+n:t.x-l+n,y:t.y<e.y?t.y+s-g:t.y-s+g};if(n===0)C.x=e.x,C.y=e.y;if(l===0)C.x=e.x;if(s===0)C.y=e.y;return sA.debug(`abc89 top/bottom calc, Q ${s}, q ${g}, R ${l}, r ${n}`,C),C}else{if(t.x<e.x)n=e.x-a-r;else n=r-a-e.x;let g=s*n/l,C=t.x<e.x?t.x+l-n:t.x-l+n,B=t.y<e.y?t.y+g:t.y-g;if(sA.debug(`sides calc abc89, Q ${s}, q ${g}, R ${l}, r ${n}`,{_x:C,_y:B}),n===0)C=e.x,B=e.y;if(l===0)C=e.x;if(s===0)B=e.y;return{x:C,y:B}}},"intersection"),a7A=y((A,e)=>{sA.warn("abc88 cutPathAtIntersect",A,e);let t=[],r=A[0],i=!1;return A.forEach((u)=>{if(sA.info("abc88 checking point",u,e),!jot(e,u)&&!i){let a=Xot(e,r,u);sA.debug("abc88 inside",u,r,a),sA.debug("abc88 intersection",a,e);let n=!1;if(t.forEach((o)=>{n=n||o.x===a.x&&o.y===a.y}),!t.some((o)=>o.x===a.x&&o.y===a.y))t.push(a);else sA.warn("abc88 no intersect",a,t);i=!0}else if(sA.warn("abc88 outside",u,r),r=u,!i)t.push(u)}),sA.debug("returning points",t),t},"cutPathAtIntersect");y(o7A,"extractCornerPoints");n7A=y(function(A,e,t){let r=e.x-A.x,i=e.y-A.y,u=Math.sqrt(r*r+i*i),a=t/u;return{x:e.x-a*r,y:e.y-a*i}},"findAdjacentPoint"),$ot=y(function(A){let{cornerPointPositions:e}=o7A(A),t=[];for(let r=0;r<A.length;r++)if(e.includes(r)){let i=A[r-1],u=A[r+1],a=A[r],n=n7A(i,a,5),o=n7A(u,a,5),s=o.x-n.x,l=o.y-n.y;t.push(n);let g=Math.sqrt(2)*2,C={x:a.x,y:a.y};if(Math.abs(u.x-i.x)>10&&Math.abs(u.y-i.y)>=10){sA.debug("Corner point fixing",Math.abs(u.x-i.x),Math.abs(u.y-i.y));let B=5;if(a.x===n.x)C={x:s<0?n.x-B+g:n.x+B-g,y:l<0?n.y-g:n.y+g};else C={x:s<0?n.x-g:n.x+g,y:l<0?n.y-B+g:n.y+B-g}}else sA.debug("Corner point skipping fixing",Math.abs(u.x-i.x),Math.abs(u.y-i.y));t.push(C,o)}else t.push(A[r]);return t},"fixCorners"),A0t=y((A,e,t)=>{let r=A-e-t,i=2,u=2,a=4,n=Math.floor(r/4),o=Array(n).fill("2 2").join(" ");return`0 ${e} ${o} ${t}`},"generateDashArray"),Iy=y(function(A,e,t,r,i,u,a,n=!1){if(!a)throw Error(`insertEdge: missing diagramId for edge "${e.id}" — edge IDs require a diagram prefix for uniqueness`);let{handDrawnSeed:o,layout:s}=OA(),l=e.points,g=!1,C=i;var B=u;let E=[];for(let U in e.cssCompiledStyles){if(bv(U))continue;E.push(e.cssCompiledStyles[U])}if(s==="swimlane"){if(B.intersect&&C.intersect&&Array.isArray(l)&&l.length>=2)if(l.length===2)l=[C.intersect(l[0]),B.intersect(l[1])];else{let U=l.slice(1,-1),Y=U[0],H=U[U.length-1],J=0.5,K=Math.abs(l[l.length-1].x-H.x)<0.5&&Math.abs(l[l.length-1].y-H.y)<0.5,O=C.intersect(Y),_=K?H:B.intersect(H),z=Math.abs(_.x-H.x)<0.5&&Math.abs(_.y-H.y)<0.5,q=Math.abs(O.x-Y.x)<0.5&&Math.abs(O.y-Y.y)<0.5?[]:[O],CA=z?[]:[_];l=[...q,...U,...CA]}l=Vot(e,l)}else if(B.intersect&&C.intersect&&!n)l=l.slice(1,e.points.length-1),l.unshift(C.intersect(l[0])),l.push(B.intersect(l[l.length-1]));let d=btoa(JSON.stringify(l));if(e.toCluster)sA.info("to cluster abc88",t.get(e.toCluster)),l=a7A(e.points,t.get(e.toCluster).node),g=!0;if(e.fromCluster)sA.debug("from cluster abc88",t.get(e.fromCluster),JSON.stringify(l,null,2)),l=a7A(l.reverse(),t.get(e.fromCluster).node).reverse(),g=!0;let I=l.filter((U)=>!Number.isNaN(U.y)),h=Zot(e.curve);if(h!=="rounded")I=$ot(I);let Q=gE;switch(h){case"linear":Q=gE;break;case"basis":Q=QC;break;case"cardinal":Q=Cv;break;case"bumpX":Q=sv;break;case"bumpY":Q=lv;break;case"catmullRom":Q=dv;break;case"monotoneX":Q=Iv;break;case"monotoneY":Q=hv;break;case"natural":Q=ZD;break;case"step":Q=VD;break;case"stepAfter":Q=pv;break;case"stepBefore":Q=Qv;break;case"rounded":Q=gE;break;default:Q=QC}let{x:p,y:m}=kU(e),f=hC().x(p).y(m).curve(Q),D;switch(e.thickness){case"normal":D="edge-thickness-normal";break;case"thick":D="edge-thickness-thick";break;case"invisible":D="edge-thickness-invisible";break;default:D="edge-thickness-normal"}switch(e.pattern){case"solid":D+=" edge-pattern-solid";break;case"dotted":D+=" edge-pattern-dotted";break;case"dashed":D+=" edge-pattern-dashed";break;default:D+=" edge-pattern-solid"}let w,b=h==="rounded"?s7A(l7A(I,e),5):f(I),F=Array.isArray(e.style)?e.style:[e.style],v=F.find((U)=>U?.startsWith("stroke:")),S="";if(e.animate)S="edge-animation-fast";if(e.animation)S="edge-animation-"+e.animation;let x=!1;if(e.look==="handDrawn"){let U=Ge.svg(A);Object.assign([],I);let Y=U.path(b,{roughness:0.3,seed:o});D+=" transition",w=Qe(Y).select("path").attr("id",`${a}-${e.id}`).attr("class"," "+D+(e.classes?" "+e.classes:"")+(S?" "+S:"")).attr("style",F?F.reduce((J,K)=>J+";"+K,""):"");let H=w.attr("d");w.attr("d",H),A.node().appendChild(w.node())}else{let U=E.join(";"),Y=F?F.reduce((z,j)=>z+j+";",""):"",H=(U?U+";"+Y+";":Y)+";"+(F?F.reduce((z,j)=>z+";"+j,""):"");w=A.append("path").attr("d",b).attr("id",`${a}-${e.id}`).attr("class"," "+D+(e.classes?" "+e.classes:"")+(S?" "+S:"")).attr("style",H),v=H.match(/stroke:([^;]+)/)?.[1],x=e.animate===!0||!!e.animation||U.includes("animation");let J=w.node(),K=typeof J.getTotalLength==="function"?J.getTotalLength():0,O=rtA[e.arrowTypeStart]||0,_=rtA[e.arrowTypeEnd]||0;if(e.look==="neo"&&!x){let j=`stroke-dasharray: ${e.pattern==="dotted"||e.pattern==="dashed"?A0t(K,O,_):`0 ${O} ${K-O-_} ${_}`}; stroke-dashoffset: 0;`;w.attr("style",j+w.attr("style"))}}if(w.attr("data-edge",!0),w.attr("data-et","edge"),w.attr("data-id",e.id),w.attr("data-points",d),w.attr("data-look",Ln(e.look)),e.showPoints)I.forEach((U)=>{A.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",U.x).attr("cy",U.y)});let k="";if(OA().flowchart.arrowMarkerAbsolute||OA().state.arrowMarkerAbsolute)k=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,k=k.replace(/\(/g,"\\(").replace(/\)/g,"\\)");sA.info("arrowTypeStart",e.arrowTypeStart),sA.info("arrowTypeEnd",e.arrowTypeEnd);let T=!x&&e?.look==="neo";Wot(w,e,k,a,r,T,v);let R=Math.floor(l.length/2),L=l[R];if(!Jt.isLabelCoordinateInPath(L,w.attr("d")))g=!0;let M={};if(g)M.updatedPath=l;return M.originalPath=e.points,M},"insertEdge");y(s7A,"generateRoundedPath");y(itA,"calculateDeltaAndAngle");y(l7A,"applyMarkerOffsetsToPoints");e0t=y((A,e,t,r)=>{e.forEach((i)=>{y0t[i](A,t,r)})},"insertMarkers"),t0t=y((A,e,t)=>{sA.trace("Making markers for ",t),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M 1,7 L18,13 V 1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),A.append("marker").attr("id",t+"_"+e+"-extensionStart-margin").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("viewBox","0 0 20 14").append("polygon").attr("points","10,7 18,13 18,1").style("stroke-width",2).style("stroke-dasharray","0"),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionEnd-margin").attr("class","marker extension "+e).attr("refX",9).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("viewBox","0 0 20 14").append("polygon").attr("points","10,1 10,13 18,7").style("stroke-width",2).style("stroke-dasharray","0")},"extension"),r0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionStart-margin").attr("class","marker composition "+e).attr("refX",15).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("viewBox","0 0 15 15").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionEnd-margin").attr("class","marker composition "+e).attr("refX",3.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),i0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationStart-margin").attr("class","marker aggregation "+e).attr("refX",15).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",2).attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationEnd-margin").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",2).attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),u0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyStart-margin").attr("class","marker dependency "+e).attr("refX",4).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyEnd-margin").attr("class","marker dependency "+e).attr("refX",16).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),a0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopStart-margin").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6).attr("stroke-width",2),A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopEnd-margin").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6).attr("stroke-width",2)},"lollipop"),n0t=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-pointEnd-margin").attr("class","marker "+e).attr("viewBox","0 0 11.5 14").attr("refX",11.5).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",10.5).attr("markerHeight",14).attr("orient","auto").append("path").attr("d","M 0 0 L 11.5 7 L 0 14 z").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-pointStart-margin").attr("class","marker "+e).attr("viewBox","0 0 11.5 14").attr("refX",1).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11.5).attr("markerHeight",14).attr("orient","auto").append("polygon").attr("points","0,7 11.5,14 11.5,0").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0")},"point"),o0t=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-circleEnd-margin").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refY",5).attr("refX",12.25).attr("markerUnits","userSpaceOnUse").attr("markerWidth",14).attr("markerHeight",14).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-circleStart-margin").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-2).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",14).attr("markerHeight",14).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0")},"circle"),s0t=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-crossEnd-margin").attr("class","marker cross "+e).attr("viewBox","0 0 15 15").attr("refX",17.7).attr("refY",7.5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 1,1 L 14,14 M 1,14 L 14,1").attr("class","arrowMarkerPath").style("stroke-width",2.5),A.append("marker").attr("id",t+"_"+e+"-crossStart-margin").attr("class","marker cross "+e).attr("viewBox","0 0 15 15").attr("refX",-3.5).attr("refY",7.5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 1,1 L 14,14 M 1,14 L 14,1").attr("class","arrowMarkerPath").style("stroke-width",2.5).style("stroke-dasharray","1,0")},"cross"),l0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),g0t=y((A,e,t)=>{let r=st(),{themeVariables:i}=r,{transitionColor:u}=i;A.append("defs").append("marker").attr("id",t+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L11,14 L13,7 L11,0 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-barbEnd-margin").attr("refX",17).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L11,14 L13,7 L11,0 Z").attr("fill",`${u}`)},"barbNeo"),c0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-onlyOneStart").attr("class","marker onlyOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),A.append("defs").append("marker").attr("id",t+"_"+e+"-onlyOneEnd").attr("class","marker onlyOne "+e).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),C0t=y((A,e,t)=>{let r=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrOneStart").attr("class","marker zeroOrOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");r.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),r.append("path").attr("d","M9,0 L9,18");let i=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+e).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),i.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),B0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-oneOrMoreStart").attr("class","marker oneOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),A.append("defs").append("marker").attr("id",t+"_"+e+"-oneOrMoreEnd").attr("class","marker oneOrMore "+e).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),E0t=y((A,e,t)=>{let r=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");r.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),r.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let i=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+e).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),i.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),d0t=y((A,e,t)=>{let r=st(),{themeVariables:i}=r,{strokeWidth:u}=i;A.append("defs").append("marker").attr("id",t+"_"+e+"-onlyOneStart").attr("class","marker onlyOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M9,0 L9,18 M15,0 L15,18").attr("stroke-width",`${u}`),A.append("defs").append("marker").attr("id",t+"_"+e+"-onlyOneEnd").attr("class","marker onlyOne "+e).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M3,0 L3,18 M9,0 L9,18").attr("stroke-width",`${u}`)},"only_one_neo"),I0t=y((A,e,t)=>{let r=st(),{themeVariables:i}=r,{strokeWidth:u,mainBkg:a}=i,n=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrOneStart").attr("class","marker zeroOrOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse");n.append("circle").attr("fill",a??"white").attr("cx",21).attr("cy",9).attr("stroke-width",`${u}`).attr("r",6),n.append("path").attr("d","M9,0 L9,18").attr("stroke-width",`${u}`);let o=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+e).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("markerUnits","userSpaceOnUse").attr("orient","auto");o.append("circle").attr("fill",a??"white").attr("cx",9).attr("cy",9).attr("stroke-width",`${u}`).attr("r",6),o.append("path").attr("d","M21,0 L21,18").attr("stroke-width",`${u}`)},"zero_or_one_neo"),h0t=y((A,e,t)=>{let r=st(),{themeVariables:i}=r,{strokeWidth:u}=i;A.append("defs").append("marker").attr("id",t+"_"+e+"-oneOrMoreStart").attr("class","marker oneOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27").attr("stroke-width",`${u}`),A.append("defs").append("marker").attr("id",t+"_"+e+"-oneOrMoreEnd").attr("class","marker oneOrMore "+e).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18").attr("stroke-width",`${u}`)},"one_or_more_neo"),Q0t=y((A,e,t)=>{let r=st(),{themeVariables:i}=r,{strokeWidth:u,mainBkg:a}=i,n=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto");n.append("circle").attr("fill",a??"white").attr("cx",45.5).attr("cy",18).attr("r",6).attr("stroke-width",`${u}`),n.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18").attr("stroke-width",`${u}`);let o=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+e).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse");o.append("circle").attr("fill",a??"white").attr("cx",11).attr("cy",18).attr("r",6).attr("stroke-width",`${u}`),o.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18").attr("stroke-width",`${u}`)},"zero_or_more_neo"),p0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0
|
||
L20,10
|
||
M20,10
|
||
L0,20`)},"requirement_arrow"),f0t=y((A,e,t)=>{let r=st(),{themeVariables:i}=r,{strokeWidth:u}=i;A.append("defs").append("marker").attr("id",t+"_"+e+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("stroke-width",`${u}`).attr("viewBox","0 0 25 20").append("path").attr("d",`M0,0
|
||
L20,10
|
||
M20,10
|
||
L0,20`).attr("stroke-linejoin","miter")},"requirement_arrow_neo"),m0t=y((A,e,t)=>{let r=A.append("defs").append("marker").attr("id",t+"_"+e+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");r.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),r.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),r.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),D0t=y((A,e,t)=>{let r=st(),{themeVariables:i}=r,{strokeWidth:u}=i,a=A.append("defs").append("marker").attr("id",t+"_"+e+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("g");a.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),a.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),a.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10),a.selectAll("*").attr("stroke-width",`${u}`)},"requirement_contains_neo"),y0t={extension:t0t,composition:r0t,aggregation:i0t,dependency:u0t,lollipop:a0t,point:n0t,circle:o0t,cross:s0t,barb:l0t,barbNeo:g0t,only_one:c0t,zero_or_one:C0t,one_or_more:B0t,zero_or_more:E0t,only_one_neo:d0t,zero_or_one_neo:I0t,one_or_more_neo:h0t,zero_or_more_neo:Q0t,requirement_arrow:p0t,requirement_contains:m0t,requirement_arrow_neo:f0t,requirement_contains_neo:D0t},hy=e0t});var w0t,SU;var utA=P(()=>{w0t=typeof global=="object"&&global&&global.Object===Object&&global,SU=w0t});var b0t,v0t,za;var Ac=P(()=>{utA();b0t=typeof self=="object"&&self&&self.Object===Object&&self,v0t=SU||b0t||Function("return this")(),za=v0t});var k0t,Fo;var Lf=P(()=>{Ac();k0t=za.Symbol,Fo=k0t});function S0t(A){var e=F0t.call(A,zv),t=A[zv];try{A[zv]=void 0;var r=!0}catch(u){}var i=x0t.call(A);if(r)if(e)A[zv]=t;else delete A[zv];return i}var g7A,F0t,x0t,zv,c7A;var C7A=P(()=>{Lf();g7A=Object.prototype,F0t=g7A.hasOwnProperty,x0t=g7A.toString,zv=Fo?Fo.toStringTag:void 0;c7A=S0t});function N0t(A){return R0t.call(A)}var L0t,R0t,B7A;var E7A=P(()=>{L0t=Object.prototype,R0t=L0t.toString;B7A=N0t});function M0t(A){if(A==null)return A===void 0?U0t:G0t;return d7A&&d7A in Object(A)?c7A(A):B7A(A)}var G0t="[object Null]",U0t="[object Undefined]",d7A,Is;var OQ=P(()=>{Lf();C7A();E7A();d7A=Fo?Fo.toStringTag:void 0;Is=M0t});function T0t(A){return A!=null&&typeof A=="object"}var Bn;var yC=P(()=>{Bn=T0t});function H0t(A){return typeof A=="symbol"||Bn(A)&&Is(A)==Y0t}var Y0t="[object Symbol]",og;var Rf=P(()=>{OQ();yC();og=H0t});function K0t(A,e){var t=-1,r=A==null?0:A.length,i=Array(r);while(++t<r)i[t]=e(A[t],t,A);return i}var dE;var Zv=P(()=>{dE=K0t});var J0t,ei;var Un=P(()=>{J0t=Array.isArray,ei=J0t});function Q7A(A){if(typeof A=="string")return A;if(ei(A))return dE(A,Q7A)+"";if(og(A))return h7A?h7A.call(A):"";var e=A+"";return e=="0"&&1/A==-O0t?"-0":e}var O0t=1/0,I7A,h7A,p7A;var f7A=P(()=>{Lf();Zv();Un();Rf();I7A=Fo?Fo.prototype:void 0,h7A=I7A?I7A.toString:void 0;p7A=Q7A});function _0t(A){var e=A.length;while(e--&&P0t.test(A.charAt(e)));return e}var P0t,m7A;var D7A=P(()=>{P0t=/\s/;m7A=_0t});function q0t(A){return A?A.slice(0,m7A(A)+1).replace(W0t,""):A}var W0t,y7A;var w7A=P(()=>{D7A();W0t=/^\s+/;y7A=q0t});function z0t(A){var e=typeof A;return A!=null&&(e=="object"||e=="function")}var ha;var ec=P(()=>{ha=z0t});function $0t(A){if(typeof A=="number")return A;if(og(A))return b7A;if(ha(A)){var e=typeof A.valueOf=="function"?A.valueOf():A;A=ha(e)?e+"":e}if(typeof A!="string")return A===0?A:+A;A=y7A(A);var t=V0t.test(A);return t||j0t.test(A)?X0t(A.slice(2),t?2:8):Z0t.test(A)?b7A:+A}var b7A=NaN,Z0t,V0t,j0t,X0t,v7A;var k7A=P(()=>{w7A();ec();Rf();Z0t=/^[-+]0x[0-9a-f]+$/i,V0t=/^0b[01]+$/i,j0t=/^0o[0-7]+$/i,X0t=parseInt;v7A=$0t});function est(A){if(!A)return A===0?A:0;if(A=v7A(A),A===F7A||A===-F7A){var e=A<0?-1:1;return e*Ast}return A===A?A:0}var F7A=1/0,Ast=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,Qy;var atA=P(()=>{k7A();Qy=est});function tst(A){var e=Qy(A),t=e%1;return e===e?t?e-t:e:0}var x7A;var S7A=P(()=>{atA();x7A=tst});function rst(A){return A}var sl;var PQ=P(()=>{sl=rst});function ost(A){if(!ha(A))return!1;var e=Is(A);return e==ust||e==ast||e==ist||e==nst}var ist="[object AsyncFunction]",ust="[object Function]",ast="[object GeneratorFunction]",nst="[object Proxy]",IE;var Vv=P(()=>{OQ();ec();IE=ost});var sst,LU;var L7A=P(()=>{Ac();sst=za["__core-js_shared__"],LU=sst});function lst(A){return!!R7A&&R7A in A}var R7A,N7A;var G7A=P(()=>{L7A();R7A=function(){var A=/[^.]+$/.exec(LU&&LU.keys&&LU.keys.IE_PROTO||"");return A?"Symbol(src)_1."+A:""}();N7A=lst});function Cst(A){if(A!=null){try{return cst.call(A)}catch(e){}try{return A+""}catch(e){}}return""}var gst,cst,bI;var ntA=P(()=>{gst=Function.prototype,cst=gst.toString;bI=Cst});function fst(A){if(!ha(A)||N7A(A))return!1;var e=IE(A)?pst:Est;return e.test(bI(A))}var Bst,Est,dst,Ist,hst,Qst,pst,U7A;var M7A=P(()=>{Vv();G7A();ec();ntA();Bst=/[\\^$.*+?()[\]{}|]/g,Est=/^\[object .+?Constructor\]$/,dst=Function.prototype,Ist=Object.prototype,hst=dst.toString,Qst=Ist.hasOwnProperty,pst=RegExp("^"+hst.call(Qst).replace(Bst,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");U7A=fst});function mst(A,e){return A==null?void 0:A[e]}var T7A;var Y7A=P(()=>{T7A=mst});function Dst(A,e){var t=T7A(A,e);return U7A(t)?t:void 0}var ll;var _Q=P(()=>{M7A();Y7A();ll=Dst});var yst,RU;var H7A=P(()=>{_Q();Ac();yst=ll(za,"WeakMap"),RU=yst});var K7A,wst,J7A;var O7A=P(()=>{ec();K7A=Object.create,wst=function(){function A(){}return function(e){if(!ha(e))return{};if(K7A)return K7A(e);A.prototype=e;var t=new A;return A.prototype=void 0,t}}(),J7A=wst});function bst(A,e,t){switch(t.length){case 0:return A.call(e);case 1:return A.call(e,t[0]);case 2:return A.call(e,t[0],t[1]);case 3:return A.call(e,t[0],t[1],t[2])}return A.apply(e,t)}var P7A;var _7A=P(()=>{P7A=bst});function vst(){}var W7A;var q7A=P(()=>{W7A=vst});function kst(A,e){var t=-1,r=A.length;e||(e=Array(r));while(++t<r)e[t]=A[t];return e}var NU;var otA=P(()=>{NU=kst});function Lst(A){var e=0,t=0;return function(){var r=Sst(),i=xst-(r-t);if(t=r,i>0){if(++e>=Fst)return arguments[0]}else e=0;return A.apply(void 0,arguments)}}var Fst=800,xst=16,Sst,z7A;var Z7A=P(()=>{Sst=Date.now;z7A=Lst});function Rst(A){return function(){return A}}var gl;var stA=P(()=>{gl=Rst});var Nst,py;var ltA=P(()=>{_Q();Nst=function(){try{var A=ll(Object,"defineProperty");return A({},"",{}),A}catch(e){}}(),py=Nst});var Gst,V7A;var j7A=P(()=>{stA();ltA();PQ();Gst=!py?sl:function(A,e){return py(A,"toString",{configurable:!0,enumerable:!1,value:gl(e),writable:!0})},V7A=Gst});var Ust,GU;var gtA=P(()=>{j7A();Z7A();Ust=z7A(V7A),GU=Ust});function Mst(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A)===!1)break;return A}var UU;var ctA=P(()=>{UU=Mst});function Tst(A,e,t,r){var i=A.length,u=t+(r?1:-1);while(r?u--:++u<i)if(e(A[u],u,A))return u;return-1}var MU;var CtA=P(()=>{MU=Tst});function Yst(A){return A!==A}var X7A;var $7A=P(()=>{X7A=Yst});function Hst(A,e,t){var r=t-1,i=A.length;while(++r<i)if(A[r]===e)return r;return-1}var A8A;var e8A=P(()=>{A8A=Hst});function Kst(A,e,t){return e===e?A8A(A,e,t):MU(A,X7A,t)}var t8A;var r8A=P(()=>{CtA();$7A();e8A();t8A=Kst});function Jst(A,e){var t=A==null?0:A.length;return!!t&&t8A(A,e,0)>-1}var i8A;var u8A=P(()=>{r8A();i8A=Jst});function _st(A,e){var t=typeof A;return e=e==null?Ost:e,!!e&&(t=="number"||t!="symbol"&&Pst.test(A))&&(A>-1&&A%1==0&&A<e)}var Ost=9007199254740991,Pst,WQ;var jv=P(()=>{Pst=/^(?:0|[1-9]\d*)$/;WQ=_st});function Wst(A,e,t){if(e=="__proto__"&&py)py(A,e,{configurable:!0,enumerable:!0,value:t,writable:!0});else A[e]=t}var qQ;var Xv=P(()=>{ltA();qQ=Wst});function qst(A,e){return A===e||A!==A&&e!==e}var tc;var Nf=P(()=>{tc=qst});function Vst(A,e,t){var r=A[e];if(!(Zst.call(A,e)&&tc(r,t))||t===void 0&&!(e in A))qQ(A,e,t)}var zst,Zst,zQ;var $v=P(()=>{Xv();Nf();zst=Object.prototype,Zst=zst.hasOwnProperty;zQ=Vst});function jst(A,e,t,r){var i=!t;t||(t={});var u=-1,a=e.length;while(++u<a){var n=e[u],o=r?r(t[n],A[n],n,t,A):void 0;if(o===void 0)o=A[n];if(i)qQ(t,n,o);else zQ(t,n,o)}return t}var hE;var fy=P(()=>{$v();Xv();hE=jst});function Xst(A,e,t){return e=a8A(e===void 0?A.length-1:e,0),function(){var r=arguments,i=-1,u=a8A(r.length-e,0),a=Array(u);while(++i<u)a[i]=r[e+i];i=-1;var n=Array(e+1);while(++i<e)n[i]=r[i];return n[e]=t(a),P7A(A,this,n)}}var a8A,TU;var BtA=P(()=>{_7A();a8A=Math.max;TU=Xst});function $st(A,e){return GU(TU(A,e,sl),A+"")}var ZQ;var Ak=P(()=>{PQ();BtA();gtA();ZQ=$st});function elt(A){return typeof A=="number"&&A>-1&&A%1==0&&A<=Alt}var Alt=9007199254740991,my;var YU=P(()=>{my=elt});function tlt(A){return A!=null&&my(A.length)&&!IE(A)}var xo;var QE=P(()=>{Vv();YU();xo=tlt});function rlt(A,e,t){if(!ha(t))return!1;var r=typeof e;if(r=="number"?xo(t)&&WQ(e,t.length):r=="string"&&(e in t))return tc(t[e],A);return!1}var vI;var ek=P(()=>{Nf();QE();jv();ec();vI=rlt});function ilt(A){return ZQ(function(e,t){var r=-1,i=t.length,u=i>1?t[i-1]:void 0,a=i>2?t[2]:void 0;if(u=A.length>3&&typeof u=="function"?(i--,u):void 0,a&&vI(t[0],t[1],a))u=i<3?void 0:u,i=1;e=Object(e);while(++r<i){var n=t[r];if(n)A(e,n,r,u)}return e})}var n8A;var o8A=P(()=>{Ak();ek();n8A=ilt});function alt(A){var e=A&&A.constructor,t=typeof e=="function"&&e.prototype||ult;return A===t}var ult,VQ;var tk=P(()=>{ult=Object.prototype;VQ=alt});function nlt(A,e){var t=-1,r=Array(A);while(++t<A)r[t]=e(t);return r}var s8A;var l8A=P(()=>{s8A=nlt});function slt(A){return Bn(A)&&Is(A)==olt}var olt="[object Arguments]",EtA;var g8A=P(()=>{OQ();yC();EtA=slt});var c8A,llt,glt,clt,wC;var Dy=P(()=>{g8A();yC();c8A=Object.prototype,llt=c8A.hasOwnProperty,glt=c8A.propertyIsEnumerable,clt=EtA(function(){return arguments}())?EtA:function(A){return Bn(A)&&llt.call(A,"callee")&&!glt.call(A,"callee")},wC=clt});function Clt(){return!1}var C8A;var B8A=P(()=>{C8A=Clt});var KU={};yt(KU,{default:()=>rc});var I8A,E8A,Blt,d8A,Elt,dlt,rc;var yy=P(()=>{Ac();B8A();I8A=typeof KU=="object"&&KU&&!KU.nodeType&&KU,E8A=I8A&&typeof HU=="object"&&HU&&!HU.nodeType&&HU,Blt=E8A&&E8A.exports===I8A,d8A=Blt?za.Buffer:void 0,Elt=d8A?d8A.isBuffer:void 0,dlt=Elt||C8A,rc=dlt});function Klt(A){return Bn(A)&&my(A.length)&&!!Aa[Is(A)]}var Ilt="[object Arguments]",hlt="[object Array]",Qlt="[object Boolean]",plt="[object Date]",flt="[object Error]",mlt="[object Function]",Dlt="[object Map]",ylt="[object Number]",wlt="[object Object]",blt="[object RegExp]",vlt="[object Set]",klt="[object String]",Flt="[object WeakMap]",xlt="[object ArrayBuffer]",Slt="[object DataView]",Llt="[object Float32Array]",Rlt="[object Float64Array]",Nlt="[object Int8Array]",Glt="[object Int16Array]",Ult="[object Int32Array]",Mlt="[object Uint8Array]",Tlt="[object Uint8ClampedArray]",Ylt="[object Uint16Array]",Hlt="[object Uint32Array]",Aa,h8A;var Q8A=P(()=>{OQ();YU();yC();Aa={};Aa[Llt]=Aa[Rlt]=Aa[Nlt]=Aa[Glt]=Aa[Ult]=Aa[Mlt]=Aa[Tlt]=Aa[Ylt]=Aa[Hlt]=!0;Aa[Ilt]=Aa[hlt]=Aa[xlt]=Aa[Qlt]=Aa[Slt]=Aa[plt]=Aa[flt]=Aa[mlt]=Aa[Dlt]=Aa[ylt]=Aa[wlt]=Aa[blt]=Aa[vlt]=Aa[klt]=Aa[Flt]=!1;h8A=Klt});function Jlt(A){return function(e){return A(e)}}var jQ;var rk=P(()=>{jQ=Jlt});var OU={};yt(OU,{default:()=>pE});var p8A,ik,Olt,dtA,Plt,pE;var PU=P(()=>{utA();p8A=typeof OU=="object"&&OU&&!OU.nodeType&&OU,ik=p8A&&typeof JU=="object"&&JU&&!JU.nodeType&&JU,Olt=ik&&ik.exports===p8A,dtA=Olt&&SU.process,Plt=function(){try{var A=ik&&ik.require&&ik.require("util").types;if(A)return A;return dtA&&dtA.binding&&dtA.binding("util")}catch(e){}}(),pE=Plt});var f8A,_lt,XQ;var uk=P(()=>{Q8A();rk();PU();f8A=pE&&pE.isTypedArray,_lt=f8A?jQ(f8A):h8A,XQ=_lt});function zlt(A,e){var t=ei(A),r=!t&&wC(A),i=!t&&!r&&rc(A),u=!t&&!r&&!i&&XQ(A),a=t||r||i||u,n=a?s8A(A.length,String):[],o=n.length;for(var s in A)if((e||qlt.call(A,s))&&!(a&&(s=="length"||i&&(s=="offset"||s=="parent")||u&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||WQ(s,o))))n.push(s);return n}var Wlt,qlt,_U;var ItA=P(()=>{l8A();Dy();Un();yy();jv();uk();Wlt=Object.prototype,qlt=Wlt.hasOwnProperty;_U=zlt});function Zlt(A,e){return function(t){return A(e(t))}}var WU;var htA=P(()=>{WU=Zlt});var Vlt,m8A;var D8A=P(()=>{htA();Vlt=WU(Object.keys,Object),m8A=Vlt});function $lt(A){if(!VQ(A))return m8A(A);var e=[];for(var t in Object(A))if(Xlt.call(A,t)&&t!="constructor")e.push(t);return e}var jlt,Xlt,wy;var qU=P(()=>{tk();D8A();jlt=Object.prototype,Xlt=jlt.hasOwnProperty;wy=$lt});function Agt(A){return xo(A)?_U(A):wy(A)}var Za;var kI=P(()=>{ItA();qU();QE();Za=Agt});function egt(A){var e=[];if(A!=null)for(var t in Object(A))e.push(t);return e}var y8A;var w8A=P(()=>{y8A=egt});function igt(A){if(!ha(A))return y8A(A);var e=VQ(A),t=[];for(var r in A)if(!(r=="constructor"&&(e||!rgt.call(A,r))))t.push(r);return t}var tgt,rgt,b8A;var v8A=P(()=>{ec();tk();w8A();tgt=Object.prototype,rgt=tgt.hasOwnProperty;b8A=igt});function ugt(A){return xo(A)?_U(A,!0):b8A(A)}var cl;var $Q=P(()=>{ItA();v8A();QE();cl=ugt});function ogt(A,e){if(ei(A))return!1;var t=typeof A;if(t=="number"||t=="symbol"||t=="boolean"||A==null||og(A))return!0;return ngt.test(A)||!agt.test(A)||e!=null&&A in Object(e)}var agt,ngt,by;var zU=P(()=>{Un();Rf();agt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ngt=/^\w*$/;by=ogt});var sgt,FI;var ak=P(()=>{_Q();sgt=ll(Object,"create"),FI=sgt});function lgt(){this.__data__=FI?FI(null):{},this.size=0}var k8A;var F8A=P(()=>{ak();k8A=lgt});function ggt(A){var e=this.has(A)&&delete this.__data__[A];return this.size-=e?1:0,e}var x8A;var S8A=P(()=>{x8A=ggt});function Egt(A){var e=this.__data__;if(FI){var t=e[A];return t===cgt?void 0:t}return Bgt.call(e,A)?e[A]:void 0}var cgt="__lodash_hash_undefined__",Cgt,Bgt,L8A;var R8A=P(()=>{ak();Cgt=Object.prototype,Bgt=Cgt.hasOwnProperty;L8A=Egt});function hgt(A){var e=this.__data__;return FI?e[A]!==void 0:Igt.call(e,A)}var dgt,Igt,N8A;var G8A=P(()=>{ak();dgt=Object.prototype,Igt=dgt.hasOwnProperty;N8A=hgt});function pgt(A,e){var t=this.__data__;return this.size+=this.has(A)?0:1,t[A]=FI&&e===void 0?Qgt:e,this}var Qgt="__lodash_hash_undefined__",U8A;var M8A=P(()=>{ak();U8A=pgt});function vy(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}var QtA;var T8A=P(()=>{F8A();S8A();R8A();G8A();M8A();vy.prototype.clear=k8A;vy.prototype.delete=x8A;vy.prototype.get=L8A;vy.prototype.has=N8A;vy.prototype.set=U8A;QtA=vy});function fgt(){this.__data__=[],this.size=0}var Y8A;var H8A=P(()=>{Y8A=fgt});function mgt(A,e){var t=A.length;while(t--)if(tc(A[t][0],e))return t;return-1}var A4;var nk=P(()=>{Nf();A4=mgt});function wgt(A){var e=this.__data__,t=A4(e,A);if(t<0)return!1;var r=e.length-1;if(t==r)e.pop();else ygt.call(e,t,1);return--this.size,!0}var Dgt,ygt,K8A;var J8A=P(()=>{nk();Dgt=Array.prototype,ygt=Dgt.splice;K8A=wgt});function bgt(A){var e=this.__data__,t=A4(e,A);return t<0?void 0:e[t][1]}var O8A;var P8A=P(()=>{nk();O8A=bgt});function vgt(A){return A4(this.__data__,A)>-1}var _8A;var W8A=P(()=>{nk();_8A=vgt});function kgt(A,e){var t=this.__data__,r=A4(t,A);if(r<0)++this.size,t.push([A,e]);else t[r][1]=e;return this}var q8A;var z8A=P(()=>{nk();q8A=kgt});function ky(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}var e4;var ok=P(()=>{H8A();J8A();P8A();W8A();z8A();ky.prototype.clear=Y8A;ky.prototype.delete=K8A;ky.prototype.get=O8A;ky.prototype.has=_8A;ky.prototype.set=q8A;e4=ky});var Fgt,t4;var ZU=P(()=>{_Q();Ac();Fgt=ll(za,"Map"),t4=Fgt});function xgt(){this.size=0,this.__data__={hash:new QtA,map:new(t4||e4),string:new QtA}}var Z8A;var V8A=P(()=>{T8A();ok();ZU();Z8A=xgt});function Sgt(A){var e=typeof A;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?A!=="__proto__":A===null}var j8A;var X8A=P(()=>{j8A=Sgt});function Lgt(A,e){var t=A.__data__;return j8A(e)?t[typeof e=="string"?"string":"hash"]:t.map}var r4;var sk=P(()=>{X8A();r4=Lgt});function Rgt(A){var e=r4(this,A).delete(A);return this.size-=e?1:0,e}var $8A;var ASA=P(()=>{sk();$8A=Rgt});function Ngt(A){return r4(this,A).get(A)}var eSA;var tSA=P(()=>{sk();eSA=Ngt});function Ggt(A){return r4(this,A).has(A)}var rSA;var iSA=P(()=>{sk();rSA=Ggt});function Ugt(A,e){var t=r4(this,A),r=t.size;return t.set(A,e),this.size+=t.size==r?0:1,this}var uSA;var aSA=P(()=>{sk();uSA=Ugt});function Fy(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}var Gf;var VU=P(()=>{V8A();ASA();tSA();iSA();aSA();Fy.prototype.clear=Z8A;Fy.prototype.delete=$8A;Fy.prototype.get=eSA;Fy.prototype.has=rSA;Fy.prototype.set=uSA;Gf=Fy});function ptA(A,e){if(typeof A!="function"||e!=null&&typeof e!="function")throw TypeError(Mgt);var t=function(){var r=arguments,i=e?e.apply(this,r):r[0],u=t.cache;if(u.has(i))return u.get(i);var a=A.apply(this,r);return t.cache=u.set(i,a)||u,a};return t.cache=new(ptA.Cache||Gf),t}var Mgt="Expected a function",nSA;var oSA=P(()=>{VU();ptA.Cache=Gf;nSA=ptA});function Ygt(A){var e=nSA(A,function(r){if(t.size===Tgt)t.clear();return r}),t=e.cache;return e}var Tgt=500,sSA;var lSA=P(()=>{oSA();sSA=Ygt});var Hgt,Kgt,Jgt,gSA;var cSA=P(()=>{lSA();Hgt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Kgt=/\\(\\)?/g,Jgt=sSA(function(A){var e=[];if(A.charCodeAt(0)===46)e.push("");return A.replace(Hgt,function(t,r,i,u){e.push(i?u.replace(Kgt,"$1"):r||t)}),e}),gSA=Jgt});function Ogt(A){return A==null?"":p7A(A)}var jU;var ftA=P(()=>{f7A();jU=Ogt});function Pgt(A,e){if(ei(A))return A;return by(A,e)?[A]:gSA(jU(A))}var i4;var lk=P(()=>{Un();zU();cSA();ftA();i4=Pgt});function Wgt(A){if(typeof A=="string"||og(A))return A;var e=A+"";return e=="0"&&1/A==-_gt?"-0":e}var _gt=1/0,fE;var xy=P(()=>{Rf();fE=Wgt});function qgt(A,e){e=i4(e,A);var t=0,r=e.length;while(A!=null&&t<r)A=A[fE(e[t++])];return t&&t==r?A:void 0}var u4;var gk=P(()=>{lk();xy();u4=qgt});function zgt(A,e,t){var r=A==null?void 0:u4(A,e);return r===void 0?t:r}var CSA;var BSA=P(()=>{gk();CSA=zgt});function Zgt(A,e){var t=-1,r=e.length,i=A.length;while(++t<r)A[i+t]=e[t];return A}var Sy;var XU=P(()=>{Sy=Zgt});function Vgt(A){return ei(A)||wC(A)||!!(ESA&&A&&A[ESA])}var ESA,dSA;var ISA=P(()=>{Lf();Dy();Un();ESA=Fo?Fo.isConcatSpreadable:void 0;dSA=Vgt});function hSA(A,e,t,r,i){var u=-1,a=A.length;t||(t=dSA),i||(i=[]);while(++u<a){var n=A[u];if(e>0&&t(n))if(e>1)hSA(n,e-1,t,r,i);else Sy(i,n);else if(!r)i[i.length]=n}return i}var Ly;var $U=P(()=>{XU();ISA();Ly=hSA});function jgt(A){var e=A==null?0:A.length;return e?Ly(A,1):[]}var ic;var mtA=P(()=>{$U();ic=jgt});function Xgt(A){return GU(TU(A,void 0,ic),A+"")}var QSA;var pSA=P(()=>{mtA();BtA();gtA();QSA=Xgt});var $gt,Ry;var AM=P(()=>{htA();$gt=WU(Object.getPrototypeOf,Object),Ry=$gt});function uct(A){if(!Bn(A)||Is(A)!=Act)return!1;var e=Ry(A);if(e===null)return!0;var t=rct.call(e,"constructor")&&e.constructor;return typeof t=="function"&&t instanceof t&&fSA.call(t)==ict}var Act="[object Object]",ect,tct,fSA,rct,ict,mSA;var DSA=P(()=>{OQ();AM();yC();ect=Function.prototype,tct=Object.prototype,fSA=ect.toString,rct=tct.hasOwnProperty,ict=fSA.call(Object);mSA=uct});function Bct(A){return Cct.test(A)}var act="\\ud800-\\udfff",nct="\\u0300-\\u036f",oct="\\ufe20-\\ufe2f",sct="\\u20d0-\\u20ff",lct,gct="\\ufe0e\\ufe0f",cct="\\u200d",Cct,ySA;var wSA=P(()=>{lct=nct+oct+sct,Cct=RegExp("["+cct+act+lct+gct+"]");ySA=Bct});function Ect(A,e,t,r){var i=-1,u=A==null?0:A.length;if(r&&u)t=A[++i];while(++i<u)t=e(t,A[i],i,A);return t}var bSA;var vSA=P(()=>{bSA=Ect});function dct(){this.__data__=new e4,this.size=0}var kSA;var FSA=P(()=>{ok();kSA=dct});function Ict(A){var e=this.__data__,t=e.delete(A);return this.size=e.size,t}var xSA;var SSA=P(()=>{xSA=Ict});function hct(A){return this.__data__.get(A)}var LSA;var RSA=P(()=>{LSA=hct});function Qct(A){return this.__data__.has(A)}var NSA;var GSA=P(()=>{NSA=Qct});function fct(A,e){var t=this.__data__;if(t instanceof e4){var r=t.__data__;if(!t4||r.length<pct-1)return r.push([A,e]),this.size=++t.size,this;t=this.__data__=new Gf(r)}return t.set(A,e),this.size=t.size,this}var pct=200,USA;var MSA=P(()=>{ok();ZU();VU();USA=fct});function Ny(A){var e=this.__data__=new e4(A);this.size=e.size}var mE;var ck=P(()=>{ok();FSA();SSA();RSA();GSA();MSA();Ny.prototype.clear=kSA;Ny.prototype.delete=xSA;Ny.prototype.get=LSA;Ny.prototype.has=NSA;Ny.prototype.set=USA;mE=Ny});function mct(A,e){return A&&hE(e,Za(e),A)}var TSA;var YSA=P(()=>{fy();kI();TSA=mct});function Dct(A,e){return A&&hE(e,cl(e),A)}var HSA;var KSA=P(()=>{fy();$Q();HSA=Dct});var tM={};yt(tM,{default:()=>Ck});function wct(A,e){if(e)return A.slice();var t=A.length,r=PSA?PSA(t):new A.constructor(t);return A.copy(r),r}var _SA,JSA,yct,OSA,PSA,Ck;var DtA=P(()=>{Ac();_SA=typeof tM=="object"&&tM&&!tM.nodeType&&tM,JSA=_SA&&typeof eM=="object"&&eM&&!eM.nodeType&&eM,yct=JSA&&JSA.exports===_SA,OSA=yct?za.Buffer:void 0,PSA=OSA?OSA.allocUnsafe:void 0;Ck=wct});function bct(A,e){var t=-1,r=A==null?0:A.length,i=0,u=[];while(++t<r){var a=A[t];if(e(a,t,A))u[i++]=a}return u}var rM;var ytA=P(()=>{rM=bct});function vct(){return[]}var iM;var wtA=P(()=>{iM=vct});var kct,Fct,WSA,xct,Gy;var uM=P(()=>{ytA();wtA();kct=Object.prototype,Fct=kct.propertyIsEnumerable,WSA=Object.getOwnPropertySymbols,xct=!WSA?iM:function(A){if(A==null)return[];return A=Object(A),rM(WSA(A),function(e){return Fct.call(A,e)})},Gy=xct});function Sct(A,e){return hE(A,Gy(A),e)}var qSA;var zSA=P(()=>{fy();uM();qSA=Sct});var Lct,Rct,aM;var btA=P(()=>{XU();AM();uM();wtA();Lct=Object.getOwnPropertySymbols,Rct=!Lct?iM:function(A){var e=[];while(A)Sy(e,Gy(A)),A=Ry(A);return e},aM=Rct});function Nct(A,e){return hE(A,aM(A),e)}var ZSA;var VSA=P(()=>{fy();btA();ZSA=Nct});function Gct(A,e,t){var r=e(A);return ei(A)?r:Sy(r,t(A))}var nM;var vtA=P(()=>{XU();Un();nM=Gct});function Uct(A){return nM(A,Za,Gy)}var Bk;var ktA=P(()=>{vtA();uM();kI();Bk=Uct});function Mct(A){return nM(A,cl,aM)}var jSA;var XSA=P(()=>{vtA();btA();$Q();jSA=Mct});var Tct,oM;var $SA=P(()=>{_Q();Ac();Tct=ll(za,"DataView"),oM=Tct});var Yct,sM;var ALA=P(()=>{_Q();Ac();Yct=ll(za,"Promise"),sM=Yct});var Hct,a4;var FtA=P(()=>{_Q();Ac();Hct=ll(za,"Set"),a4=Hct});var eLA="[object Map]",Kct="[object Object]",tLA="[object Promise]",rLA="[object Set]",iLA="[object WeakMap]",uLA="[object DataView]",Jct,Oct,Pct,_ct,Wct,Uf,sg;var Mf=P(()=>{$SA();ZU();ALA();FtA();H7A();OQ();ntA();Jct=bI(oM),Oct=bI(t4),Pct=bI(sM),_ct=bI(a4),Wct=bI(RU),Uf=Is;if(oM&&Uf(new oM(new ArrayBuffer(1)))!=uLA||t4&&Uf(new t4)!=eLA||sM&&Uf(sM.resolve())!=tLA||a4&&Uf(new a4)!=rLA||RU&&Uf(new RU)!=iLA)Uf=function(A){var e=Is(A),t=e==Kct?A.constructor:void 0,r=t?bI(t):"";if(r)switch(r){case Jct:return uLA;case Oct:return eLA;case Pct:return tLA;case _ct:return rLA;case Wct:return iLA}return e};sg=Uf});function Zct(A){var e=A.length,t=new A.constructor(e);if(e&&typeof A[0]=="string"&&zct.call(A,"index"))t.index=A.index,t.input=A.input;return t}var qct,zct,aLA;var nLA=P(()=>{qct=Object.prototype,zct=qct.hasOwnProperty;aLA=Zct});var Vct,Uy;var xtA=P(()=>{Ac();Vct=za.Uint8Array,Uy=Vct});function jct(A){var e=new A.constructor(A.byteLength);return new Uy(e).set(new Uy(A)),e}var My;var lM=P(()=>{xtA();My=jct});function Xct(A,e){var t=e?My(A.buffer):A.buffer;return new A.constructor(t,A.byteOffset,A.byteLength)}var oLA;var sLA=P(()=>{lM();oLA=Xct});function ACt(A){var e=new A.constructor(A.source,$ct.exec(A));return e.lastIndex=A.lastIndex,e}var $ct,lLA;var gLA=P(()=>{$ct=/\w*$/;lLA=ACt});function eCt(A){return CLA?Object(CLA.call(A)):{}}var cLA,CLA,BLA;var ELA=P(()=>{Lf();cLA=Fo?Fo.prototype:void 0,CLA=cLA?cLA.valueOf:void 0;BLA=eCt});function tCt(A,e){var t=e?My(A.buffer):A.buffer;return new A.constructor(t,A.byteOffset,A.length)}var gM;var StA=P(()=>{lM();gM=tCt});function mCt(A,e,t){var r=A.constructor;switch(e){case gCt:return My(A);case rCt:case iCt:return new r(+A);case cCt:return oLA(A,t);case CCt:case BCt:case ECt:case dCt:case ICt:case hCt:case QCt:case pCt:case fCt:return gM(A,t);case uCt:return new r;case aCt:case sCt:return new r(A);case nCt:return lLA(A);case oCt:return new r;case lCt:return BLA(A)}}var rCt="[object Boolean]",iCt="[object Date]",uCt="[object Map]",aCt="[object Number]",nCt="[object RegExp]",oCt="[object Set]",sCt="[object String]",lCt="[object Symbol]",gCt="[object ArrayBuffer]",cCt="[object DataView]",CCt="[object Float32Array]",BCt="[object Float64Array]",ECt="[object Int8Array]",dCt="[object Int16Array]",ICt="[object Int32Array]",hCt="[object Uint8Array]",QCt="[object Uint8ClampedArray]",pCt="[object Uint16Array]",fCt="[object Uint32Array]",dLA;var ILA=P(()=>{lM();sLA();gLA();ELA();StA();dLA=mCt});function DCt(A){return typeof A.constructor=="function"&&!VQ(A)?J7A(Ry(A)):{}}var cM;var LtA=P(()=>{O7A();AM();tk();cM=DCt});function wCt(A){return Bn(A)&&sg(A)==yCt}var yCt="[object Map]",hLA;var QLA=P(()=>{Mf();yC();hLA=wCt});var pLA,bCt,fLA;var mLA=P(()=>{QLA();rk();PU();pLA=pE&&pE.isMap,bCt=pLA?jQ(pLA):hLA,fLA=bCt});function kCt(A){return Bn(A)&&sg(A)==vCt}var vCt="[object Set]",DLA;var yLA=P(()=>{Mf();yC();DLA=kCt});var wLA,FCt,bLA;var vLA=P(()=>{yLA();rk();PU();wLA=pE&&pE.isSet,FCt=wLA?jQ(wLA):DLA,bLA=FCt});function CM(A,e,t,r,i,u){var a,n=e&xCt,o=e&SCt,s=e&LCt;if(t)a=i?t(A,r,i,u):t(A);if(a!==void 0)return a;if(!ha(A))return A;var l=ei(A);if(l){if(a=aLA(A),!n)return NU(A,a)}else{var g=sg(A),C=g==FLA||g==MCt;if(rc(A))return Ck(A,n);if(g==xLA||g==kLA||C&&!i){if(a=o||C?{}:cM(A),!n)return o?ZSA(A,HSA(a,A)):qSA(A,TSA(a,A))}else{if(!Ju[g])return i?A:{};a=dLA(A,g,n)}}u||(u=new mE);var B=u.get(A);if(B)return B;if(u.set(A,a),bLA(A))A.forEach(function(I){a.add(CM(I,e,t,I,A,u))});else if(fLA(A))A.forEach(function(I,h){a.set(h,CM(I,e,t,h,A,u))});var E=s?o?jSA:Bk:o?cl:Za,d=l?void 0:E(A);return UU(d||A,function(I,h){if(d)h=I,I=A[h];zQ(a,h,CM(I,e,t,h,A,u))}),a}var xCt=1,SCt=2,LCt=4,kLA="[object Arguments]",RCt="[object Array]",NCt="[object Boolean]",GCt="[object Date]",UCt="[object Error]",FLA="[object Function]",MCt="[object GeneratorFunction]",TCt="[object Map]",YCt="[object Number]",xLA="[object Object]",HCt="[object RegExp]",KCt="[object Set]",JCt="[object String]",OCt="[object Symbol]",PCt="[object WeakMap]",_Ct="[object ArrayBuffer]",WCt="[object DataView]",qCt="[object Float32Array]",zCt="[object Float64Array]",ZCt="[object Int8Array]",VCt="[object Int16Array]",jCt="[object Int32Array]",XCt="[object Uint8Array]",$Ct="[object Uint8ClampedArray]",ABt="[object Uint16Array]",eBt="[object Uint32Array]",Ju,BM;var RtA=P(()=>{ck();ctA();$v();YSA();KSA();DtA();otA();zSA();VSA();ktA();XSA();Mf();nLA();ILA();LtA();Un();yy();mLA();ec();vLA();kI();$Q();Ju={};Ju[kLA]=Ju[RCt]=Ju[_Ct]=Ju[WCt]=Ju[NCt]=Ju[GCt]=Ju[qCt]=Ju[zCt]=Ju[ZCt]=Ju[VCt]=Ju[jCt]=Ju[TCt]=Ju[YCt]=Ju[xLA]=Ju[HCt]=Ju[KCt]=Ju[JCt]=Ju[OCt]=Ju[XCt]=Ju[$Ct]=Ju[ABt]=Ju[eBt]=!0;Ju[UCt]=Ju[FLA]=Ju[PCt]=!1;BM=CM});function rBt(A){return BM(A,tBt)}var tBt=4,NtA;var SLA=P(()=>{RtA();NtA=rBt});function aBt(A){return BM(A,iBt|uBt)}var iBt=1,uBt=4,GtA;var LLA=P(()=>{RtA();GtA=aBt});function oBt(A){return this.__data__.set(A,nBt),this}var nBt="__lodash_hash_undefined__",RLA;var NLA=P(()=>{RLA=oBt});function sBt(A){return this.__data__.has(A)}var GLA;var ULA=P(()=>{GLA=sBt});function EM(A){var e=-1,t=A==null?0:A.length;this.__data__=new Gf;while(++e<t)this.add(A[e])}var dM;var UtA=P(()=>{VU();NLA();ULA();EM.prototype.add=EM.prototype.push=RLA;EM.prototype.has=GLA;dM=EM});function lBt(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A))return!0;return!1}var MLA;var TLA=P(()=>{MLA=lBt});function gBt(A,e){return A.has(e)}var IM;var MtA=P(()=>{IM=gBt});function BBt(A,e,t,r,i,u){var a=t&cBt,n=A.length,o=e.length;if(n!=o&&!(a&&o>n))return!1;var s=u.get(A),l=u.get(e);if(s&&l)return s==e&&l==A;var g=-1,C=!0,B=t&CBt?new dM:void 0;u.set(A,e),u.set(e,A);while(++g<n){var E=A[g],d=e[g];if(r)var I=a?r(d,E,g,e,A,u):r(E,d,g,A,e,u);if(I!==void 0){if(I)continue;C=!1;break}if(B){if(!MLA(e,function(h,Q){if(!IM(B,Q)&&(E===h||i(E,h,t,r,u)))return B.push(Q)})){C=!1;break}}else if(!(E===d||i(E,d,t,r,u))){C=!1;break}}return u.delete(A),u.delete(e),C}var cBt=1,CBt=2,hM;var TtA=P(()=>{UtA();TLA();MtA();hM=BBt});function EBt(A){var e=-1,t=Array(A.size);return A.forEach(function(r,i){t[++e]=[i,r]}),t}var YLA;var HLA=P(()=>{YLA=EBt});function dBt(A){var e=-1,t=Array(A.size);return A.forEach(function(r){t[++e]=r}),t}var Ty;var QM=P(()=>{Ty=dBt});function xBt(A,e,t,r,i,u,a){switch(t){case FBt:if(A.byteLength!=e.byteLength||A.byteOffset!=e.byteOffset)return!1;A=A.buffer,e=e.buffer;case kBt:if(A.byteLength!=e.byteLength||!u(new Uy(A),new Uy(e)))return!1;return!0;case QBt:case pBt:case DBt:return tc(+A,+e);case fBt:return A.name==e.name&&A.message==e.message;case yBt:case bBt:return A==e+"";case mBt:var n=YLA;case wBt:var o=r&IBt;if(n||(n=Ty),A.size!=e.size&&!o)return!1;var s=a.get(A);if(s)return s==e;r|=hBt,a.set(A,e);var l=hM(n(A),n(e),r,i,u,a);return a.delete(A),l;case vBt:if(YtA)return YtA.call(A)==YtA.call(e)}return!1}var IBt=1,hBt=2,QBt="[object Boolean]",pBt="[object Date]",fBt="[object Error]",mBt="[object Map]",DBt="[object Number]",yBt="[object RegExp]",wBt="[object Set]",bBt="[object String]",vBt="[object Symbol]",kBt="[object ArrayBuffer]",FBt="[object DataView]",KLA,YtA,JLA;var OLA=P(()=>{Lf();xtA();Nf();TtA();HLA();QM();KLA=Fo?Fo.prototype:void 0,YtA=KLA?KLA.valueOf:void 0;JLA=xBt});function NBt(A,e,t,r,i,u){var a=t&SBt,n=Bk(A),o=n.length,s=Bk(e),l=s.length;if(o!=l&&!a)return!1;var g=o;while(g--){var C=n[g];if(!(a?C in e:RBt.call(e,C)))return!1}var B=u.get(A),E=u.get(e);if(B&&E)return B==e&&E==A;var d=!0;u.set(A,e),u.set(e,A);var I=a;while(++g<o){C=n[g];var h=A[C],Q=e[C];if(r)var p=a?r(Q,h,C,e,A,u):r(h,Q,C,A,e,u);if(!(p===void 0?h===Q||i(h,Q,t,r,u):p)){d=!1;break}I||(I=C=="constructor")}if(d&&!I){var m=A.constructor,f=e.constructor;if(m!=f&&(("constructor"in A)&&("constructor"in e))&&!(typeof m=="function"&&m instanceof m&&typeof f=="function"&&f instanceof f))d=!1}return u.delete(A),u.delete(e),d}var SBt=1,LBt,RBt,PLA;var _LA=P(()=>{ktA();LBt=Object.prototype,RBt=LBt.hasOwnProperty;PLA=NBt});function MBt(A,e,t,r,i,u){var a=ei(A),n=ei(e),o=a?qLA:sg(A),s=n?qLA:sg(e);o=o==WLA?pM:o,s=s==WLA?pM:s;var l=o==pM,g=s==pM,C=o==s;if(C&&rc(A)){if(!rc(e))return!1;a=!0,l=!1}if(C&&!l)return u||(u=new mE),a||XQ(A)?hM(A,e,t,r,i,u):JLA(A,e,o,t,r,i,u);if(!(t&GBt)){var B=l&&zLA.call(A,"__wrapped__"),E=g&&zLA.call(e,"__wrapped__");if(B||E){var d=B?A.value():A,I=E?e.value():e;return u||(u=new mE),i(d,I,t,r,u)}}if(!C)return!1;return u||(u=new mE),PLA(A,e,t,r,i,u)}var GBt=1,WLA="[object Arguments]",qLA="[object Array]",pM="[object Object]",UBt,zLA,ZLA;var VLA=P(()=>{ck();TtA();OLA();_LA();Mf();Un();yy();uk();UBt=Object.prototype,zLA=UBt.hasOwnProperty;ZLA=MBt});function jLA(A,e,t,r,i){if(A===e)return!0;if(A==null||e==null||!Bn(A)&&!Bn(e))return A!==A&&e!==e;return ZLA(A,e,t,r,jLA,i)}var fM;var HtA=P(()=>{VLA();yC();fM=jLA});function HBt(A,e,t,r){var i=t.length,u=i,a=!r;if(A==null)return!u;A=Object(A);while(i--){var n=t[i];if(a&&n[2]?n[1]!==A[n[0]]:!(n[0]in A))return!1}while(++i<u){n=t[i];var o=n[0],s=A[o],l=n[1];if(a&&n[2]){if(s===void 0&&!(o in A))return!1}else{var g=new mE;if(r)var C=r(s,l,o,A,e,g);if(!(C===void 0?fM(l,s,TBt|YBt,r,g):C))return!1}}return!0}var TBt=1,YBt=2,XLA;var $LA=P(()=>{ck();HtA();XLA=HBt});function KBt(A){return A===A&&!ha(A)}var mM;var KtA=P(()=>{ec();mM=KBt});function JBt(A){var e=Za(A),t=e.length;while(t--){var r=e[t],i=A[r];e[t]=[r,i,mM(i)]}return e}var ARA;var eRA=P(()=>{KtA();kI();ARA=JBt});function OBt(A,e){return function(t){if(t==null)return!1;return t[A]===e&&(e!==void 0||(A in Object(t)))}}var DM;var JtA=P(()=>{DM=OBt});function PBt(A){var e=ARA(A);if(e.length==1&&e[0][2])return DM(e[0][0],e[0][1]);return function(t){return t===A||XLA(t,A,e)}}var tRA;var rRA=P(()=>{$LA();eRA();JtA();tRA=PBt});function _Bt(A,e){return A!=null&&e in Object(A)}var iRA;var uRA=P(()=>{iRA=_Bt});function WBt(A,e,t){e=i4(e,A);var r=-1,i=e.length,u=!1;while(++r<i){var a=fE(e[r]);if(!(u=A!=null&&t(A,a)))break;A=A[a]}if(u||++r!=i)return u;return i=A==null?0:A.length,!!i&&my(i)&&WQ(a,i)&&(ei(A)||wC(A))}var yM;var OtA=P(()=>{lk();Dy();Un();jv();YU();xy();yM=WBt});function qBt(A,e){return A!=null&&yM(A,e,iRA)}var wM;var PtA=P(()=>{uRA();OtA();wM=qBt});function VBt(A,e){if(by(A)&&mM(e))return DM(fE(A),e);return function(t){var r=CSA(t,A);return r===void 0&&r===e?wM(t,A):fM(e,r,zBt|ZBt)}}var zBt=1,ZBt=2,aRA;var nRA=P(()=>{HtA();BSA();PtA();zU();KtA();JtA();xy();aRA=VBt});function jBt(A){return function(e){return e==null?void 0:e[A]}}var bM;var _tA=P(()=>{bM=jBt});function XBt(A){return function(e){return u4(e,A)}}var oRA;var sRA=P(()=>{gk();oRA=XBt});function $Bt(A){return by(A)?bM(fE(A)):oRA(A)}var lRA;var gRA=P(()=>{_tA();sRA();zU();xy();lRA=$Bt});function AEt(A){if(typeof A=="function")return A;if(A==null)return sl;if(typeof A=="object")return ei(A)?aRA(A[0],A[1]):tRA(A);return lRA(A)}var T0;var xI=P(()=>{rRA();nRA();PQ();Un();gRA();T0=AEt});function eEt(A){return function(e,t,r){var i=-1,u=Object(e),a=r(e),n=a.length;while(n--){var o=a[A?n:++i];if(t(u[o],o,u)===!1)break}return e}}var cRA;var CRA=P(()=>{cRA=eEt});var tEt,Yy;var vM=P(()=>{CRA();tEt=cRA(),Yy=tEt});function rEt(A,e){return A&&Yy(A,e,Za)}var Hy;var kM=P(()=>{vM();kI();Hy=rEt});function iEt(A,e){return function(t,r){if(t==null)return t;if(!xo(t))return A(t,r);var i=t.length,u=e?i:-1,a=Object(t);while(e?u--:++u<i)if(r(a[u],u,a)===!1)break;return t}}var BRA;var ERA=P(()=>{QE();BRA=iEt});var uEt,n4;var Ek=P(()=>{kM();ERA();uEt=BRA(Hy),n4=uEt});var aEt=function(){return za.Date.now()},FM;var dRA=P(()=>{Ac();FM=aEt});var IRA,nEt,oEt,WtA;var hRA=P(()=>{Ak();Nf();ek();$Q();IRA=Object.prototype,nEt=IRA.hasOwnProperty,oEt=ZQ(function(A,e){A=Object(A);var t=-1,r=e.length,i=r>2?e[2]:void 0;if(i&&vI(e[0],e[1],i))r=1;while(++t<r){var u=e[t],a=cl(u),n=-1,o=a.length;while(++n<o){var s=a[n],l=A[s];if(l===void 0||tc(l,IRA[s])&&!nEt.call(A,s))A[s]=u[s]}}return A}),WtA=oEt});function sEt(A,e,t){if(t!==void 0&&!tc(A[e],t)||t===void 0&&!(e in A))qQ(A,e,t)}var dk;var qtA=P(()=>{Xv();Nf();dk=sEt});function lEt(A){return Bn(A)&&xo(A)}var xM;var ztA=P(()=>{QE();yC();xM=lEt});function gEt(A,e){if(e==="constructor"&&typeof A[e]==="function")return;if(e=="__proto__")return;return A[e]}var Ik;var ZtA=P(()=>{Ik=gEt});function cEt(A){return hE(A,cl(A))}var QRA;var pRA=P(()=>{fy();$Q();QRA=cEt});function CEt(A,e,t,r,i,u,a){var n=Ik(A,t),o=Ik(e,t),s=a.get(o);if(s){dk(A,t,s);return}var l=u?u(n,o,t+"",A,e,a):void 0,g=l===void 0;if(g){var C=ei(o),B=!C&&rc(o),E=!C&&!B&&XQ(o);if(l=o,C||B||E)if(ei(n))l=n;else if(xM(n))l=NU(n);else if(B)g=!1,l=Ck(o,!0);else if(E)g=!1,l=gM(o,!0);else l=[];else if(mSA(o)||wC(o)){if(l=n,wC(n))l=QRA(n);else if(!ha(n)||IE(n))l=cM(o)}else g=!1}if(g)a.set(o,l),i(l,o,r,u,a),a.delete(o);dk(A,t,l)}var fRA;var mRA=P(()=>{qtA();DtA();StA();otA();LtA();Dy();Un();ztA();yy();Vv();ec();DSA();uk();ZtA();pRA();fRA=CEt});function DRA(A,e,t,r,i){if(A===e)return;Yy(e,function(u,a){if(i||(i=new mE),ha(u))fRA(A,e,a,t,DRA,r,i);else{var n=r?r(Ik(A,a),u,a+"",A,e,i):void 0;if(n===void 0)n=u;dk(A,a,n)}},cl)}var yRA;var wRA=P(()=>{ck();qtA();vM();mRA();ec();$Q();ZtA();yRA=DRA});function BEt(A,e,t){var r=-1,i=A==null?0:A.length;while(++r<i)if(t(e,A[r]))return!0;return!1}var bRA;var vRA=P(()=>{bRA=BEt});function EEt(A){var e=A==null?0:A.length;return e?A[e-1]:void 0}var o4;var kRA=P(()=>{o4=EEt});function dEt(A){return typeof A=="function"?A:sl}var Ky;var SM=P(()=>{PQ();Ky=dEt});function IEt(A,e){var t=ei(A)?UU:n4;return t(A,Ky(e))}var ve;var VtA=P(()=>{ctA();Ek();SM();Un();ve=IEt});var FRA=P(()=>{VtA()});function hEt(A,e){var t=[];return n4(A,function(r,i,u){if(e(r,i,u))t.push(r)}),t}var xRA;var SRA=P(()=>{Ek();xRA=hEt});function QEt(A,e){var t=ei(A)?rM:xRA;return t(A,T0(e,3))}var hs;var LRA=P(()=>{ytA();SRA();xI();Un();hs=QEt});function pEt(A){return function(e,t,r){var i=Object(e);if(!xo(e)){var u=T0(t,3);e=Za(e),t=function(n){return u(i[n],n,i)}}var a=A(e,t,r);return a>-1?i[u?e[a]:a]:void 0}}var RRA;var NRA=P(()=>{xI();QE();kI();RRA=pEt});function mEt(A,e,t){var r=A==null?0:A.length;if(!r)return-1;var i=t==null?0:x7A(t);if(i<0)i=fEt(r+i,0);return MU(A,T0(e,3),i)}var fEt,GRA;var URA=P(()=>{CtA();xI();S7A();fEt=Math.max;GRA=mEt});var DEt,Jy;var MRA=P(()=>{NRA();URA();DEt=RRA(GRA),Jy=DEt});function yEt(A,e){var t=-1,r=xo(A)?Array(A.length):[];return n4(A,function(i,u,a){r[++t]=e(i,u,a)}),r}var LM;var jtA=P(()=>{Ek();QE();LM=yEt});function wEt(A,e){var t=ei(A)?dE:LM;return t(A,T0(e,3))}var Vi;var TRA=P(()=>{Zv();xI();jtA();Un();Vi=wEt});function bEt(A,e){return A==null?A:Yy(A,Ky(e),cl)}var XtA;var YRA=P(()=>{vM();SM();$Q();XtA=bEt});function vEt(A,e){return A&&Hy(A,Ky(e))}var $tA;var HRA=P(()=>{kM();SM();$tA=vEt});function kEt(A,e){return A>e}var KRA;var JRA=P(()=>{KRA=kEt});function SEt(A,e){return A!=null&&xEt.call(A,e)}var FEt,xEt,ORA;var PRA=P(()=>{FEt=Object.prototype,xEt=FEt.hasOwnProperty;ORA=SEt});function LEt(A,e){return A!=null&&yM(A,e,ORA)}var hk;var _RA=P(()=>{PRA();OtA();hk=LEt});function NEt(A){return typeof A=="string"||!ei(A)&&Bn(A)&&Is(A)==REt}var REt="[object String]",WRA;var qRA=P(()=>{OQ();Un();yC();WRA=NEt});function GEt(A,e){return dE(e,function(t){return A[t]})}var zRA;var ZRA=P(()=>{Zv();zRA=GEt});function UEt(A){return A==null?[]:zRA(A,Za(A))}var lg;var VRA=P(()=>{ZRA();kI();lg=UEt});function KEt(A){if(A==null)return!0;if(xo(A)&&(ei(A)||typeof A=="string"||typeof A.splice=="function"||rc(A)||XQ(A)||wC(A)))return!A.length;var e=sg(A);if(e==MEt||e==TEt)return!A.size;if(VQ(A))return!wy(A).length;for(var t in A)if(HEt.call(A,t))return!1;return!0}var MEt="[object Map]",TEt="[object Set]",YEt,HEt,RM;var jRA=P(()=>{qU();Mf();Dy();Un();QE();yy();tk();uk();YEt=Object.prototype,HEt=YEt.hasOwnProperty;RM=KEt});function JEt(A){return A===void 0}var bu;var XRA=P(()=>{bu=JEt});function OEt(A,e){return A<e}var NM;var ArA=P(()=>{NM=OEt});function PEt(A,e){var t={};return e=T0(e,3),Hy(A,function(r,i,u){qQ(t,i,e(r,i,u))}),t}var Tf;var $RA=P(()=>{Xv();kM();xI();Tf=PEt});function _Et(A,e,t){var r=-1,i=A.length;while(++r<i){var u=A[r],a=e(u);if(a!=null&&(n===void 0?a===a&&!og(a):t(a,n)))var n=a,o=u}return o}var Oy;var GM=P(()=>{Rf();Oy=_Et});function WEt(A){return A&&A.length?Oy(A,sl,KRA):void 0}var Cl;var ANA=P(()=>{GM();JRA();PQ();Cl=WEt});var qEt,Py;var eNA=P(()=>{wRA();o8A();qEt=n8A(function(A,e,t){yRA(A,e,t)}),Py=qEt});function zEt(A){return A&&A.length?Oy(A,sl,NM):void 0}var SI;var tNA=P(()=>{GM();ArA();PQ();SI=zEt});function ZEt(A,e){return A&&A.length?Oy(A,T0(e,2),NM):void 0}var Yf;var rNA=P(()=>{GM();xI();ArA();Yf=ZEt});function VEt(A,e,t,r){if(!ha(A))return A;e=i4(e,A);var i=-1,u=e.length,a=u-1,n=A;while(n!=null&&++i<u){var o=fE(e[i]),s=t;if(o==="__proto__"||o==="constructor"||o==="prototype")return A;if(i!=a){var l=n[o];if(s=r?r(l,o,n):void 0,s===void 0)s=ha(l)?l:WQ(e[i+1])?[]:{}}zQ(n,o,s),n=n[o]}return A}var iNA;var uNA=P(()=>{$v();lk();jv();ec();xy();iNA=VEt});function jEt(A,e,t){var r=-1,i=e.length,u={};while(++r<i){var a=e[r],n=u4(A,a);if(t(n,a))iNA(u,i4(a,A),n)}return u}var aNA;var nNA=P(()=>{gk();uNA();lk();aNA=jEt});function XEt(A,e){var t=A.length;A.sort(e);while(t--)A[t]=A[t].value;return A}var oNA;var sNA=P(()=>{oNA=XEt});function $Et(A,e){if(A!==e){var t=A!==void 0,r=A===null,i=A===A,u=og(A),a=e!==void 0,n=e===null,o=e===e,s=og(e);if(!n&&!s&&!u&&A>e||u&&a&&o&&!n&&!s||r&&a&&o||!t&&o||!i)return 1;if(!r&&!u&&!s&&A<e||s&&t&&i&&!r&&!u||n&&t&&i||!a&&i||!o)return-1}return 0}var lNA;var gNA=P(()=>{Rf();lNA=$Et});function Adt(A,e,t){var r=-1,i=A.criteria,u=e.criteria,a=i.length,n=t.length;while(++r<a){var o=lNA(i[r],u[r]);if(o){if(r>=n)return o;var s=t[r];return o*(s=="desc"?-1:1)}}return A.index-e.index}var cNA;var CNA=P(()=>{gNA();cNA=Adt});function edt(A,e,t){if(e.length)e=dE(e,function(u){if(ei(u))return function(a){return u4(a,u.length===1?u[0]:u)};return u});else e=[sl];var r=-1;e=dE(e,jQ(T0));var i=LM(A,function(u,a,n){var o=dE(e,function(s){return s(u)});return{criteria:o,index:++r,value:u}});return oNA(i,function(u,a){return cNA(u,a,t)})}var BNA;var ENA=P(()=>{Zv();gk();xI();jtA();sNA();rk();CNA();PQ();Un();BNA=edt});var tdt,dNA;var INA=P(()=>{_tA();tdt=bM("length"),dNA=tdt});function Bdt(A){var e=hNA.lastIndex=0;while(hNA.test(A))++e;return e}var QNA="\\ud800-\\udfff",rdt="\\u0300-\\u036f",idt="\\ufe20-\\ufe2f",udt="\\u20d0-\\u20ff",adt,ndt="\\ufe0e\\ufe0f",odt,erA,trA="\\ud83c[\\udffb-\\udfff]",sdt,pNA,fNA="(?:\\ud83c[\\udde6-\\uddff]){2}",mNA="[\\ud800-\\udbff][\\udc00-\\udfff]",ldt="\\u200d",DNA,yNA,gdt,cdt,Cdt,hNA,wNA;var bNA=P(()=>{adt=rdt+idt+udt,odt="["+QNA+"]",erA="["+adt+"]",sdt="(?:"+erA+"|"+trA+")",pNA="[^"+QNA+"]",DNA=sdt+"?",yNA="["+ndt+"]?",gdt="(?:"+ldt+"(?:"+[pNA,fNA,mNA].join("|")+")"+yNA+DNA+")*",cdt=yNA+DNA+gdt,Cdt="(?:"+[pNA+erA+"?",erA,fNA,mNA,odt].join("|")+")",hNA=RegExp(trA+"(?="+trA+")|"+Cdt+cdt,"g");wNA=Bdt});function Edt(A){return ySA(A)?wNA(A):dNA(A)}var vNA;var kNA=P(()=>{INA();wSA();bNA();vNA=Edt});function ddt(A,e){return aNA(A,e,function(t,r){return wM(A,r)})}var FNA;var xNA=P(()=>{nNA();PtA();FNA=ddt});var Idt,Hf;var SNA=P(()=>{xNA();pSA();Idt=QSA(function(A,e){return A==null?{}:FNA(A,e)}),Hf=Idt});function pdt(A,e,t,r){var i=-1,u=Qdt(hdt((e-A)/(t||1)),0),a=Array(u);while(u--)a[r?u:++i]=A,A+=t;return a}var hdt,Qdt,LNA;var RNA=P(()=>{hdt=Math.ceil,Qdt=Math.max;LNA=pdt});function fdt(A){return function(e,t,r){if(r&&typeof r!="number"&&vI(e,t,r))t=r=void 0;if(e=Qy(e),t===void 0)t=e,e=0;else t=Qy(t);return r=r===void 0?e<t?1:-1:Qy(r),LNA(e,t,r,A)}}var NNA;var GNA=P(()=>{RNA();ek();atA();NNA=fdt});var mdt,uc;var UNA=P(()=>{GNA();mdt=NNA(),uc=mdt});function Ddt(A,e,t,r,i){return i(A,function(u,a,n){t=r?(r=!1,u):e(t,u,a,n)}),t}var MNA;var TNA=P(()=>{MNA=Ddt});function ydt(A,e,t){var r=ei(A)?bSA:MNA,i=arguments.length<3;return r(A,T0(e,4),t,i,n4)}var DE;var YNA=P(()=>{vSA();Ek();xI();TNA();Un();DE=ydt});function vdt(A){if(A==null)return 0;if(xo(A))return WRA(A)?vNA(A):A.length;var e=sg(A);if(e==wdt||e==bdt)return A.size;return wy(A).length}var wdt="[object Map]",bdt="[object Set]",rrA;var HNA=P(()=>{qU();Mf();QE();qRA();kNA();rrA=vdt});var kdt,yE;var KNA=P(()=>{$U();ENA();Ak();ek();kdt=ZQ(function(A,e){if(A==null)return[];var t=e.length;if(t>1&&vI(A,e[0],e[1]))e=[];else if(t>2&&vI(e[0],e[1],e[2]))e=[e[0]];return BNA(A,Ly(e,1),[])}),yE=kdt});var Fdt=1/0,xdt,JNA;var ONA=P(()=>{FtA();q7A();QM();xdt=!(a4&&1/Ty(new a4([,-0]))[1]==Fdt)?W7A:function(A){return new a4(A)},JNA=xdt});function Ldt(A,e,t){var r=-1,i=i8A,u=A.length,a=!0,n=[],o=n;if(t)a=!1,i=bRA;else if(u>=Sdt){var s=e?null:JNA(A);if(s)return Ty(s);a=!1,i=IM,o=new dM}else o=e?[]:n;A:while(++r<u){var l=A[r],g=e?e(l):l;if(l=t||l!==0?l:0,a&&g===g){var C=o.length;while(C--)if(o[C]===g)continue A;if(e)o.push(g);n.push(l)}else if(!i(o,g,t)){if(o!==n)o.push(g);n.push(l)}}return n}var Sdt=200,PNA;var _NA=P(()=>{UtA();u8A();vRA();MtA();ONA();QM();PNA=Ldt});var Rdt,irA;var WNA=P(()=>{$U();Ak();_NA();ztA();Rdt=ZQ(function(A){return PNA(Ly(A,1,xM,!0))}),irA=Rdt});function Gdt(A){var e=++Ndt;return jU(A)+e}var Ndt=0,Kf;var qNA=P(()=>{ftA();Kf=Gdt});function Udt(A,e,t){var r=-1,i=A.length,u=e.length,a={};while(++r<i){var n=r<u?e[r]:void 0;t(a,A[r],n)}return a}var zNA;var ZNA=P(()=>{zNA=Udt});function Mdt(A,e){return zNA(A||[],e||[],zQ)}var UM;var VNA=P(()=>{$v();ZNA();UM=Mdt});var Bu=P(()=>{SLA();LLA();stA();hRA();FRA();LRA();MRA();mtA();VtA();YRA();HRA();_RA();Un();jRA();Vv();XRA();kI();kRA();TRA();$RA();ANA();eNA();tNA();rNA();dRA();SNA();UNA();YNA();HNA();KNA();WNA();qNA();VRA();VNA()});class ji{constructor(A={}){if(this._isDirected=Object.prototype.hasOwnProperty.call(A,"directed")?A.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(A,"multigraph")?A.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(A,"compound")?A.compound:!1,this._label=void 0,this._defaultNodeLabelFn=gl(void 0),this._defaultEdgeLabelFn=gl(void 0),this._nodes={},this._isCompound)this._parent={},this._children={},this._children[Jf]={};this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(A){return this._label=A,this}graph(){return this._label}setDefaultNodeLabel(A){if(!IE(A))A=gl(A);return this._defaultNodeLabelFn=A,this}nodeCount(){return this._nodeCount}nodes(){return Za(this._nodes)}sources(){var A=this;return hs(this.nodes(),function(e){return RM(A._in[e])})}sinks(){var A=this;return hs(this.nodes(),function(e){return RM(A._out[e])})}setNodes(A,e){var t=arguments,r=this;return ve(A,function(i){if(t.length>1)r.setNode(i,e);else r.setNode(i)}),this}setNode(A,e){if(Object.prototype.hasOwnProperty.call(this._nodes,A)){if(arguments.length>1)this._nodes[A]=e;return this}if(this._nodes[A]=arguments.length>1?e:this._defaultNodeLabelFn(A),this._isCompound)this._parent[A]=Jf,this._children[A]={},this._children[Jf][A]=!0;return this._in[A]={},this._preds[A]={},this._out[A]={},this._sucs[A]={},++this._nodeCount,this}node(A){return this._nodes[A]}hasNode(A){return Object.prototype.hasOwnProperty.call(this._nodes,A)}removeNode(A){if(Object.prototype.hasOwnProperty.call(this._nodes,A)){var e=(t)=>this.removeEdge(this._edgeObjs[t]);if(delete this._nodes[A],this._isCompound)this._removeFromParentsChildList(A),delete this._parent[A],ve(this.children(A),(t)=>{this.setParent(t)}),delete this._children[A];ve(Za(this._in[A]),e),delete this._in[A],delete this._preds[A],ve(Za(this._out[A]),e),delete this._out[A],delete this._sucs[A],--this._nodeCount}return this}setParent(A,e){if(!this._isCompound)throw Error("Cannot set parent in a non-compound graph");if(bu(e))e=Jf;else{e+="";for(var t=e;!bu(t);t=this.parent(t))if(t===A)throw Error("Setting "+e+" as parent of "+A+" would create a cycle");this.setNode(e)}return this.setNode(A),this._removeFromParentsChildList(A),this._parent[A]=e,this._children[e][A]=!0,this}_removeFromParentsChildList(A){delete this._children[this._parent[A]][A]}parent(A){if(this._isCompound){var e=this._parent[A];if(e!==Jf)return e}}children(A){if(bu(A))A=Jf;if(this._isCompound){var e=this._children[A];if(e)return Za(e)}else if(A===Jf)return this.nodes();else if(this.hasNode(A))return[]}predecessors(A){var e=this._preds[A];if(e)return Za(e)}successors(A){var e=this._sucs[A];if(e)return Za(e)}neighbors(A){var e=this.predecessors(A);if(e)return irA(e,this.successors(A))}isLeaf(A){var e;if(this.isDirected())e=this.successors(A);else e=this.neighbors(A);return e.length===0}filterNodes(A){var e=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});e.setGraph(this.graph());var t=this;ve(this._nodes,function(u,a){if(A(a))e.setNode(a,u)}),ve(this._edgeObjs,function(u){if(e.hasNode(u.v)&&e.hasNode(u.w))e.setEdge(u,t.edge(u))});var r={};function i(u){var a=t.parent(u);if(a===void 0||e.hasNode(a))return r[u]=a,a;else if(a in r)return r[a];else return i(a)}if(this._isCompound)ve(e.nodes(),function(u){e.setParent(u,i(u))});return e}setDefaultEdgeLabel(A){if(!IE(A))A=gl(A);return this._defaultEdgeLabelFn=A,this}edgeCount(){return this._edgeCount}edges(){return lg(this._edgeObjs)}setPath(A,e){var t=this,r=arguments;return DE(A,function(i,u){if(r.length>1)t.setEdge(i,u,e);else t.setEdge(i,u);return u}),this}setEdge(){var A,e,t,r,i=!1,u=arguments[0];if(typeof u==="object"&&u!==null&&"v"in u){if(A=u.v,e=u.w,t=u.name,arguments.length===2)r=arguments[1],i=!0}else if(A=u,e=arguments[1],t=arguments[3],arguments.length>2)r=arguments[2],i=!0;if(A=""+A,e=""+e,!bu(t))t=""+t;var a=Qk(this._isDirected,A,e,t);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,a)){if(i)this._edgeLabels[a]=r;return this}if(!bu(t)&&!this._isMultigraph)throw Error("Cannot set a named edge when isMultigraph = false");this.setNode(A),this.setNode(e),this._edgeLabels[a]=i?r:this._defaultEdgeLabelFn(A,e,t);var n=Ydt(this._isDirected,A,e,t);return A=n.v,e=n.w,Object.freeze(n),this._edgeObjs[a]=n,XNA(this._preds[e],A),XNA(this._sucs[A],e),this._in[e][a]=n,this._out[A][a]=n,this._edgeCount++,this}edge(A,e,t){var r=arguments.length===1?urA(this._isDirected,arguments[0]):Qk(this._isDirected,A,e,t);return this._edgeLabels[r]}hasEdge(A,e,t){var r=arguments.length===1?urA(this._isDirected,arguments[0]):Qk(this._isDirected,A,e,t);return Object.prototype.hasOwnProperty.call(this._edgeLabels,r)}removeEdge(A,e,t){var r=arguments.length===1?urA(this._isDirected,arguments[0]):Qk(this._isDirected,A,e,t),i=this._edgeObjs[r];if(i)A=i.v,e=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],$NA(this._preds[e],A),$NA(this._sucs[A],e),delete this._in[e][r],delete this._out[A][r],this._edgeCount--;return this}inEdges(A,e){var t=this._in[A];if(t){var r=lg(t);if(!e)return r;return hs(r,function(i){return i.v===e})}}outEdges(A,e){var t=this._out[A];if(t){var r=lg(t);if(!e)return r;return hs(r,function(i){return i.w===e})}}nodeEdges(A,e){var t=this.inEdges(A,e);if(t)return t.concat(this.outEdges(A,e))}}function XNA(A,e){if(A[e])A[e]++;else A[e]=1}function $NA(A,e){if(!--A[e])delete A[e]}function Qk(A,e,t,r){var i=""+e,u=""+t;if(!A&&i>u){var a=i;i=u,u=a}return i+jNA+u+jNA+(bu(r)?Tdt:r)}function Ydt(A,e,t,r){var i=""+e,u=""+t;if(!A&&i>u){var a=i;i=u,u=a}var n={v:i,w:u};if(r)n.name=r;return n}function urA(A,e){return Qk(A,e.v,e.w,e.name)}var Tdt="\x00",Jf="\x00",jNA="\x01";var MM=P(()=>{Bu();ji.prototype._nodeCount=0;ji.prototype._edgeCount=0});var gg=P(()=>{MM()});function bC(A){var e={options:{directed:A.isDirected(),multigraph:A.isMultigraph(),compound:A.isCompound()},nodes:Hdt(A),edges:Kdt(A)};if(!bu(A.graph()))e.value=NtA(A.graph());return e}function Hdt(A){return Vi(A.nodes(),function(e){var t=A.node(e),r=A.parent(e),i={v:e};if(!bu(t))i.value=t;if(!bu(r))i.parent=r;return i})}function Kdt(A){return Vi(A.edges(),function(e){var t=A.edge(e),r={v:e.v,w:e.w};if(!bu(e.name))r.name=e.name;if(!bu(t))r.value=t;return r})}var arA=P(()=>{Bu();MM()});var Hr,s4,tGA,TM,Of,Jdt,nrA,rGA,Odt,Pf,eGA,iGA,uGA,aGA,nGA,oGA,Pdt;var orA=P(()=>{ir();Nt();gg();arA();Hr=new Map,s4=new Map,tGA=new Map,TM=y(()=>{s4.clear(),tGA.clear(),Hr.clear()},"clear"),Of=y((A,e)=>{let t=s4.get(e)||[];return sA.trace("In isDescendant",e," ",A," = ",t.includes(A)),t.includes(A)},"isDescendant"),Jdt=y((A,e)=>{let t=s4.get(e)||[];if(sA.info("Descendants of ",e," is ",t),sA.info("Edge is ",A),A.v===e||A.w===e)return!1;if(!t)return sA.debug("Tilt, ",e,",not in descendants"),!1;return t.includes(A.v)||Of(A.v,e)||Of(A.w,e)||t.includes(A.w)},"edgeInCluster"),nrA=y((A,e,t,r)=>{sA.warn("Copying children of ",A,"root",r,"data",e.node(A),r);let i=e.children(A)||[];if(A!==r)i.push(A);sA.warn("Copying (nodes) clusterId",A,"nodes",i),i.forEach((u)=>{if(e.children(u).length>0)nrA(u,e,t,r);else{let a=e.node(u);if(sA.info("cp ",u," to ",r," with parent ",A),t.setNode(u,a),r!==e.parent(u))sA.warn("Setting parent",u,e.parent(u)),t.setParent(u,e.parent(u));if(A!==r&&u!==A)sA.debug("Setting parent",u,A),t.setParent(u,A);else sA.info("In copy ",A,"root",r,"data",e.node(A),r),sA.debug("Not Setting parent for node=",u,"cluster!==rootId",A!==r,"node!==clusterId",u!==A);let n=e.edges(u);sA.debug("Copying Edges",n),n.forEach((o)=>{sA.info("Edge",o);let s=e.edge(o.v,o.w,o.name);sA.info("Edge data",s,r);try{if(Jdt(o,r)){let l=s4.get(r)||[],g=l.includes(o.v)||Of(o.v,r)||o.v===r,C=l.includes(o.w)||Of(o.w,r)||o.w===r;if(g&&C)sA.info("Copying as ",o.v,o.w,s,o.name),t.setEdge(o.v,o.w,s,o.name),sA.info("newGraph edges ",t.edges(),t.edge(t.edges()[0]));else{let B=g?r:o.v,E=C?r:o.w;sA.info("Rebinding cross-boundary edge as ",B,E,s,o.name),e.setEdge(B,E,s,o.name)}}else sA.info("Skipping copy of edge ",o.v,"-->",o.w," rootId: ",r," clusterId:",A)}catch(l){sA.error(l)}})}sA.debug("Removing node",u),e.removeNode(u)})},"copy"),rGA=y((A,e)=>{let t=e.children(A),r=[...t];for(let i of t)tGA.set(i,A),r=[...r,...rGA(i,e)];return r},"extractDescendants"),Odt=y((A,e,t)=>{let r=A.edges().filter((o)=>o.v===e||o.w===e),i=A.edges().filter((o)=>o.v===t||o.w===t),u=r.map((o)=>({v:o.v===e?t:o.v,w:o.w===e?e:o.w})),a=i.map((o)=>({v:o.v,w:o.w}));return u.filter((o)=>a.some((s)=>o.v===s.v&&o.w===s.w))},"findCommonEdges"),Pf=y((A,e,t)=>{let r=e.children(A);if(sA.trace("Searching children of id ",A,r),r.length<1)return A;let i;for(let u of r){let a=Pf(u,e,t),n=Odt(e,t,a);if(a)if(n.length>0)i=a;else return a}return i},"findNonClusterChild"),eGA=y((A)=>{if(!Hr.has(A))return A;if(!Hr.get(A).externalConnections)return A;if(Hr.has(A))return Hr.get(A).id;return A},"getAnchorId"),iGA=y((A,e)=>{if(!A||e>10){sA.debug("Opting out, no graph ");return}else sA.debug("Opting in, graph ");A.nodes().forEach(function(t){if(A.children(t).length>0)sA.warn("Cluster identified",t," Replacement id in edges: ",Pf(t,A,t)),s4.set(t,rGA(t,A)),Hr.set(t,{id:Pf(t,A,t),clusterData:A.node(t)})}),A.nodes().forEach(function(t){let r=A.children(t),i=A.edges();if(r.length>0)sA.debug("Cluster identified",t,s4),i.forEach((u)=>{let a=Of(u.v,t),n=Of(u.w,t);if(a^n)sA.warn("Edge: ",u," leaves cluster ",t),sA.warn("Descendants of XXX ",t,": ",s4.get(t)),Hr.get(t).externalConnections=!0});else sA.debug("Not a cluster ",t,s4)});for(let t of Hr.keys()){let r=Hr.get(t).id,i=A.parent(r);if(i!==t&&Hr.has(i)&&!Hr.get(i).externalConnections)Hr.get(t).id=i;let u=A.edges().some((a)=>a.v===t);if(r&&Hr.get(t)?.externalConnections&&u&&oGA(A,r,t)){let a=Pdt(A,t,A.parent(r));if(a)Hr.get(t).id=a}}A.edges().forEach(function(t){let r=A.edge(t);sA.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),sA.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(A.edge(t)));let{v:i,w:u}=t;if(sA.warn("Fix XXX",Hr,"ids:",t.v,t.w,"Translating: ",Hr.get(t.v)," --- ",Hr.get(t.w)),Hr.get(t.v)||Hr.get(t.w)){if(sA.warn("Fixing and trying - removing XXX",t.v,t.w,t.name),i=eGA(t.v),u=eGA(t.w),A.removeEdge(t.v,t.w,t.name),i!==t.v){let a=A.parent(i);Hr.get(a).externalConnections=!0,r.fromCluster=t.v}if(u!==t.w){let a=A.parent(u);Hr.get(a).externalConnections=!0,r.toCluster=t.w}sA.warn("Fix Replacing with XXX",i,u,t.name),A.setEdge(i,u,r,t.name)}}),sA.warn("Adjusted Graph",bC(A)),uGA(A,0),sA.trace(Hr)},"adjustClustersAndEdges"),uGA=y((A,e)=>{if(sA.warn("extractor - ",e,bC(A),A.children("D")),e>10){sA.error("Bailing out");return}let t=A.nodes(),r=!1;for(let i of t){let u=A.children(i);r=r||u.length>0}if(!r){sA.debug("Done, no node has children",A.nodes());return}sA.debug("Nodes = ",t,e);for(let i of t)if(sA.debug("Extracting node",i,Hr,Hr.has(i)&&!Hr.get(i).externalConnections,!A.parent(i),A.node(i),A.children("D")," Depth ",e),!Hr.has(i))sA.debug("Not a cluster",i,e);else if(Hr.get(i)?.clusterData?.explicitDir&&A.children(i)&&A.children(i).length>0){sA.warn("Cluster with explicit dir, creating subgraph for children",i,e);let u=Hr.get(i).clusterData.dir,a=new ji({multigraph:!0,compound:!0}).setGraph({rankdir:u,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});nrA(i,A,a,i);let n=A.node(i)||{};A.setNode(i,{...n,clusterNode:!0,id:i,clusterData:Hr.get(i).clusterData,label:Hr.get(i).label,graph:a}),sA.warn("Subgraph for cluster with explicit dir created:",i,bC(a))}else if(!Hr.get(i).externalConnections&&A.children(i)&&A.children(i).length>0){sA.warn("Cluster without external connections, without a parent and with children",i,e);let a=A.graph().rankdir==="TB"?"LR":"TB";if(Hr.get(i)?.clusterData?.dir)a=Hr.get(i).clusterData.dir,sA.warn("Fixing dir",Hr.get(i).clusterData.dir,a);let n=new ji({multigraph:!0,compound:!0}).setGraph({rankdir:a,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});nrA(i,A,n,i);let o=A.node(i)||{};A.setNode(i,{...o,clusterNode:!0,id:i,clusterData:Hr.get(i).clusterData,label:Hr.get(i).label,graph:n}),sA.debug("Old graph after copy",bC(A))}else sA.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!Hr.get(i).externalConnections," no parent: ",!A.parent(i)," children ",A.children(i)&&A.children(i).length>0,A.children("D"),e),sA.debug(Hr);t=A.nodes(),sA.warn("New list of nodes",t);for(let i of t){let u=A.node(i);if(sA.warn(" Now next level",i,u),u?.clusterNode)uGA(u.graph,e+1)}},"extractor"),aGA=y((A,e)=>{if(e.length===0)return[];let t=Object.assign([],e);return e.forEach((r)=>{let i=A.children(r),u=aGA(A,i);t=[...t,...u]}),t},"sorter"),nGA=y((A)=>aGA(A,A.children()),"sortNodesByHierarchy"),oGA=y((A,e,t)=>{let r=A.parent(e);while(r&&r!==t){let i=Hr.get(r);if(i&&!i.externalConnections)return!0;r=A.parent(r)}return!1},"isNodeInExtractableCluster"),Pdt=y((A,e,t)=>{let r=A.children(e)??[];for(let i of r){if(i===t||Of(i,t))continue;let u=Pf(i,A,e);if(!u)continue;if(!oGA(A,u,e))return u}return null},"findSafeAnchorNode")});class srA{constructor(){var A={};A._next=A._prev=A,this._sentinel=A}dequeue(){var A=this._sentinel,e=A._prev;if(e!==A)return sGA(e),e}enqueue(A){var e=this._sentinel;if(A._prev&&A._next)sGA(A);A._next=e._next,e._next._prev=A,e._next=A,A._prev=e}toString(){var A=[],e=this._sentinel,t=e._prev;while(t!==e)A.push(JSON.stringify(t,_dt)),t=t._prev;return"["+A.join(", ")+"]"}}function sGA(A){A._prev._next=A._next,A._next._prev=A._prev,delete A._next,delete A._prev}function _dt(A,e){if(A!=="_next"&&A!=="_prev")return e}var lGA=()=>{};function gGA(A,e){if(A.nodeCount()<=1)return[];var t=zdt(A,e||Wdt),r=qdt(t.graph,t.buckets,t.zeroIdx);return ic(Vi(r,function(i){return A.outEdges(i.v,i.w)}))}function qdt(A,e,t){var r=[],i=e[e.length-1],u=e[0],a;while(A.nodeCount()){while(a=u.dequeue())lrA(A,e,t,a);while(a=i.dequeue())lrA(A,e,t,a);if(A.nodeCount()){for(var n=e.length-2;n>0;--n)if(a=e[n].dequeue(),a){r=r.concat(lrA(A,e,t,a,!0));break}}}return r}function lrA(A,e,t,r,i){var u=i?[]:void 0;return ve(A.inEdges(r.v),function(a){var n=A.edge(a),o=A.node(a.v);if(i)u.push({v:a.v,w:a.w});o.out-=n,grA(e,t,o)}),ve(A.outEdges(r.v),function(a){var n=A.edge(a),o=a.w,s=A.node(o);s.in-=n,grA(e,t,s)}),A.removeNode(r.v),u}function zdt(A,e){var t=new ji,r=0,i=0;ve(A.nodes(),function(n){t.setNode(n,{v:n,in:0,out:0})}),ve(A.edges(),function(n){var o=t.edge(n.v,n.w)||0,s=e(n),l=o+s;t.setEdge(n.v,n.w,l),i=Math.max(i,t.node(n.v).out+=s),r=Math.max(r,t.node(n.w).in+=s)});var u=uc(i+r+3).map(function(){return new srA}),a=r+1;return ve(t.nodes(),function(n){grA(u,a,t.node(n))}),{graph:t,buckets:u,zeroIdx:a}}function grA(A,e,t){if(!t.out)A[0].enqueue(t);else if(!t.in)A[A.length-1].enqueue(t);else A[t.out-t.in+e].enqueue(t)}var Wdt;var cGA=P(()=>{Bu();gg();lGA();Wdt=gl(1)});function CGA(A){var e=A.graph().acyclicer==="greedy"?gGA(A,t(A)):Zdt(A);ve(e,function(r){var i=A.edge(r);A.removeEdge(r),i.forwardName=r.name,i.reversed=!0,A.setEdge(r.w,r.v,i,Kf("rev"))});function t(r){return function(i){return r.edge(i).weight}}}function Zdt(A){var e=[],t={},r={};function i(u){if(Object.prototype.hasOwnProperty.call(r,u))return;r[u]=!0,t[u]=!0,ve(A.outEdges(u),function(a){if(Object.prototype.hasOwnProperty.call(t,a.w))e.push(a);else i(a.w)}),delete t[u]}return ve(A.nodes(),i),e}function BGA(A){ve(A.edges(),function(e){var t=A.edge(e);if(t.reversed){A.removeEdge(e);var r=t.forwardName;delete t.reversed,delete t.forwardName,A.setEdge(e.w,e.v,t,r)}})}var crA=P(()=>{Bu();cGA()});function wE(A,e,t,r){var i;do i=Kf(r);while(A.hasNode(i));return t.dummy=e,A.setNode(i,t),i}function dGA(A){var e=new ji().setGraph(A.graph());return ve(A.nodes(),function(t){e.setNode(t,A.node(t))}),ve(A.edges(),function(t){var r=e.edge(t.v,t.w)||{weight:0,minlen:1},i=A.edge(t);e.setEdge(t.v,t.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),e}function YM(A){var e=new ji({multigraph:A.isMultigraph()}).setGraph(A.graph());return ve(A.nodes(),function(t){if(!A.children(t).length)e.setNode(t,A.node(t))}),ve(A.edges(),function(t){e.setEdge(t,A.edge(t))}),e}function CrA(A,e){var{x:t,y:r}=A,i=e.x-t,u=e.y-r,a=A.width/2,n=A.height/2;if(!i&&!u)throw Error("Not possible to find intersection inside of the rectangle");var o,s;if(Math.abs(u)*a>Math.abs(i)*n){if(u<0)n=-n;o=n*i/u,s=n}else{if(i<0)a=-a;o=a,s=a*u/i}return{x:t+o,y:r+s}}function l4(A){var e=Vi(uc(ErA(A)+1),function(){return[]});return ve(A.nodes(),function(t){var r=A.node(t),i=r.rank;if(!bu(i))e[i][r.order]=t}),e}function IGA(A){var e=SI(Vi(A.nodes(),function(t){return A.node(t).rank}));ve(A.nodes(),function(t){var r=A.node(t);if(hk(r,"rank"))r.rank-=e})}function hGA(A){var e=SI(Vi(A.nodes(),function(u){return A.node(u).rank})),t=[];ve(A.nodes(),function(u){var a=A.node(u).rank-e;if(!t[a])t[a]=[];t[a].push(u)});var r=0,i=A.graph().nodeRankFactor;ve(t,function(u,a){if(bu(u)&&a%i!==0)--r;else if(r)ve(u,function(n){A.node(n).rank+=r})})}function BrA(A,e,t,r){var i={width:0,height:0};if(arguments.length>=4)i.rank=t,i.order=r;return wE(A,"border",i,e)}function ErA(A){return Cl(Vi(A.nodes(),function(e){var t=A.node(e).rank;if(!bu(t))return t}))}function QGA(A,e){var t={lhs:[],rhs:[]};return ve(A,function(r){if(e(r))t.lhs.push(r);else t.rhs.push(r)}),t}function pGA(A,e){var t=FM();try{return e()}finally{console.log(A+" time: "+(FM()-t)+"ms")}}function fGA(A,e){return e()}var bE=P(()=>{Bu();gg()});function DGA(A){function e(t){var r=A.children(t),i=A.node(t);if(r.length)ve(r,e);if(Object.prototype.hasOwnProperty.call(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var u=i.minRank,a=i.maxRank+1;u<a;++u)mGA(A,"borderLeft","_bl",t,i,u),mGA(A,"borderRight","_br",t,i,u)}}ve(A.children(),e)}function mGA(A,e,t,r,i,u){var a={width:0,height:0,rank:u,borderType:e},n=i[e][u-1],o=wE(A,"border",a,t);if(i[e][u]=o,A.setParent(o,r),n)A.setEdge(n,o,{weight:1})}var yGA=P(()=>{Bu();bE()});function bGA(A){var e=A.graph().rankdir.toLowerCase();if(e==="lr"||e==="rl")kGA(A)}function vGA(A){var e=A.graph().rankdir.toLowerCase();if(e==="bt"||e==="rl")Vdt(A);if(e==="lr"||e==="rl")jdt(A),kGA(A)}function kGA(A){ve(A.nodes(),function(e){wGA(A.node(e))}),ve(A.edges(),function(e){wGA(A.edge(e))})}function wGA(A){var e=A.width;A.width=A.height,A.height=e}function Vdt(A){ve(A.nodes(),function(e){drA(A.node(e))}),ve(A.edges(),function(e){var t=A.edge(e);if(ve(t.points,drA),Object.prototype.hasOwnProperty.call(t,"y"))drA(t)})}function drA(A){A.y=-A.y}function jdt(A){ve(A.nodes(),function(e){IrA(A.node(e))}),ve(A.edges(),function(e){var t=A.edge(e);if(ve(t.points,IrA),Object.prototype.hasOwnProperty.call(t,"x"))IrA(t)})}function IrA(A){var e=A.x;A.x=A.y,A.y=e}var FGA=P(()=>{Bu()});function xGA(A){A.graph().dummyChains=[],ve(A.edges(),function(e){$dt(A,e)})}function $dt(A,e){var t=e.v,r=A.node(t).rank,i=e.w,u=A.node(i).rank,a=e.name,n=A.edge(e),o=n.labelRank;if(u===r+1)return;A.removeEdge(e);var s=void 0,l,g;for(g=0,++r;r<u;++g,++r){if(n.points=[],s={width:0,height:0,edgeLabel:n,edgeObj:e,rank:r},l=wE(A,"edge",s,"_d"),r===o)s.width=n.width,s.height=n.height,s.dummy="edge-label",s.labelpos=n.labelpos;if(A.setEdge(t,l,{weight:n.weight},a),g===0)A.graph().dummyChains.push(l);t=l}A.setEdge(t,i,{weight:n.weight},a)}function SGA(A){ve(A.graph().dummyChains,function(e){var t=A.node(e),r=t.edgeLabel,i;A.setEdge(t.edgeObj,r);while(t.dummy){if(i=A.successors(e)[0],A.removeNode(e),r.points.push({x:t.x,y:t.y}),t.dummy==="edge-label")r.x=t.x,r.y=t.y,r.width=t.width,r.height=t.height;e=i,t=A.node(e)}})}var hrA=P(()=>{Bu();bE()});function fk(A){var e={};function t(r){var i=A.node(r);if(Object.prototype.hasOwnProperty.call(e,r))return i.rank;e[r]=!0;var u=SI(Vi(A.outEdges(r),function(a){return t(a.w)-A.edge(a).minlen}));if(u===Number.POSITIVE_INFINITY||u===void 0||u===null)u=0;return i.rank=u}ve(A.sources(),t)}function _f(A,e){return A.node(e.w).rank-A.node(e.v).rank-A.edge(e).minlen}var HM=P(()=>{Bu()});function KM(A){var e=new ji({directed:!1}),t=A.nodes()[0],r=A.nodeCount();e.setNode(t,{});var i,u;while(AIt(e,A)<r)i=eIt(e,A),u=e.hasNode(i.v)?_f(A,i):-_f(A,i),tIt(e,A,u);return e}function AIt(A,e){function t(r){ve(e.nodeEdges(r),function(i){var u=i.v,a=r===u?i.w:u;if(!A.hasNode(a)&&!_f(e,i))A.setNode(a,{}),A.setEdge(r,a,{}),t(a)})}return ve(A.nodes(),t),A.nodeCount()}function eIt(A,e){return Yf(e.edges(),function(t){if(A.hasNode(t.v)!==A.hasNode(t.w))return _f(e,t)})}function tIt(A,e,t){ve(A.nodes(),function(r){e.node(r).rank+=t})}var QrA=P(()=>{Bu();gg();HM()});var RGA=()=>{};var prA=()=>{};var Oti;var frA=P(()=>{Bu();prA();Oti=gl(1)});var NGA=P(()=>{frA()});var mrA=()=>{};var GGA=P(()=>{mrA()});var Vti;var UGA=P(()=>{Bu();Vti=gl(1)});function DrA(A){var e={},t={},r=[];function i(u){if(Object.prototype.hasOwnProperty.call(t,u))throw new mk;if(!Object.prototype.hasOwnProperty.call(e,u))t[u]=!0,e[u]=!0,ve(A.predecessors(u),i),delete t[u],r.push(u)}if(ve(A.sinks(),i),rrA(e)!==A.nodeCount())throw new mk;return r}function mk(){}var yrA=P(()=>{Bu();DrA.CycleException=mk;mk.prototype=Error()});var MGA=P(()=>{yrA()});function JM(A,e,t){if(!ei(e))e=[e];var r=(A.isDirected()?A.successors:A.neighbors).bind(A),i=[],u={};return ve(e,function(a){if(!A.hasNode(a))throw Error("Graph does not have node: "+a);TGA(A,a,t==="post",u,r,i)}),i}function TGA(A,e,t,r,i,u){if(!Object.prototype.hasOwnProperty.call(r,e)){if(r[e]=!0,!t)u.push(e);if(ve(i(e),function(a){TGA(A,a,t,r,i,u)}),t)u.push(e)}}var wrA=P(()=>{Bu()});function brA(A,e){return JM(A,e,"post")}var YGA=P(()=>{wrA()});function vrA(A,e){return JM(A,e,"pre")}var HGA=P(()=>{wrA()});var KGA=P(()=>{prA();MM()});var JGA=P(()=>{RGA();frA();NGA();GGA();UGA();MGA();YGA();HGA();KGA();mrA();yrA()});function c4(A){A=dGA(A),fk(A);var e=KM(A);FrA(e),krA(e,A);var t,r;while(t=WGA(e))r=qGA(e,A,t),zGA(e,A,t,r)}function krA(A,e){var t=brA(A,A.nodes());t=t.slice(0,t.length-1),ve(t,function(r){nIt(A,e,r)})}function nIt(A,e,t){var r=A.node(t),i=r.parent;A.edge(t,i).cutvalue=PGA(A,e,t)}function PGA(A,e,t){var r=A.node(t),i=r.parent,u=!0,a=e.edge(t,i),n=0;if(!a)u=!1,a=e.edge(i,t);return n=a.weight,ve(e.nodeEdges(t),function(o){var s=o.v===t,l=s?o.w:o.v;if(l!==i){var g=s===u,C=e.edge(o).weight;if(n+=g?C:-C,sIt(A,t,l)){var B=A.edge(t,l).cutvalue;n+=g?-B:B}}}),n}function FrA(A,e){if(arguments.length<2)e=A.nodes()[0];_GA(A,{},1,e)}function _GA(A,e,t,r,i){var u=t,a=A.node(r);if(e[r]=!0,ve(A.neighbors(r),function(n){if(!Object.prototype.hasOwnProperty.call(e,n))t=_GA(A,e,t,n,r)}),a.low=u,a.lim=t++,i)a.parent=i;else delete a.parent;return t}function WGA(A){return Jy(A.edges(),function(e){return A.edge(e).cutvalue<0})}function qGA(A,e,t){var{v:r,w:i}=t;if(!e.hasEdge(r,i))r=t.w,i=t.v;var u=A.node(r),a=A.node(i),n=u,o=!1;if(u.lim>a.lim)n=a,o=!0;var s=hs(e.edges(),function(l){return o===OGA(A,A.node(l.v),n)&&o!==OGA(A,A.node(l.w),n)});return Yf(s,function(l){return _f(e,l)})}function zGA(A,e,t,r){var{v:i,w:u}=t;A.removeEdge(i,u),A.setEdge(r.v,r.w,{}),FrA(A),krA(A,e),oIt(A,e)}function oIt(A,e){var t=Jy(A.nodes(),function(i){return!e.node(i).parent}),r=vrA(A,t);r=r.slice(1),ve(r,function(i){var u=A.node(i).parent,a=e.edge(i,u),n=!1;if(!a)a=e.edge(u,i),n=!0;e.node(i).rank=e.node(u).rank+(n?a.minlen:-a.minlen)})}function sIt(A,e,t){return A.hasEdge(e,t)}function OGA(A,e,t){return t.low<=e.lim&&e.lim<=t.lim}var ZGA=P(()=>{Bu();JGA();bE();QrA();HM();c4.initLowLimValues=FrA;c4.initCutValues=krA;c4.calcCutValue=PGA;c4.leaveEdge=WGA;c4.enterEdge=qGA;c4.exchangeEdges=zGA});function xrA(A){switch(A.graph().ranker){case"network-simplex":VGA(A);break;case"tight-tree":gIt(A);break;case"longest-path":lIt(A);break;default:VGA(A)}}function gIt(A){fk(A),KM(A)}function VGA(A){c4(A)}var lIt;var SrA=P(()=>{QrA();ZGA();HM();lIt=fk});function jGA(A){var e=wE(A,"root",{},"_root"),t=cIt(A),r=Cl(lg(t))-1,i=2*r+1;A.graph().nestingRoot=e,ve(A.edges(),function(a){A.edge(a).minlen*=i});var u=CIt(A)+1;ve(A.children(),function(a){XGA(A,e,i,u,r,t,a)}),A.graph().nodeRankFactor=i}function XGA(A,e,t,r,i,u,a){var n=A.children(a);if(!n.length){if(a!==e)A.setEdge(e,a,{weight:0,minlen:t});return}var o=BrA(A,"_bt"),s=BrA(A,"_bb"),l=A.node(a);if(A.setParent(o,a),l.borderTop=o,A.setParent(s,a),l.borderBottom=s,ve(n,function(g){XGA(A,e,t,r,i,u,g);var C=A.node(g),B=C.borderTop?C.borderTop:g,E=C.borderBottom?C.borderBottom:g,d=C.borderTop?r:2*r,I=B!==E?1:i-u[a]+1;A.setEdge(o,B,{weight:d,minlen:I,nestingEdge:!0}),A.setEdge(E,s,{weight:d,minlen:I,nestingEdge:!0})}),!A.parent(a))A.setEdge(e,o,{weight:0,minlen:i+u[a]})}function cIt(A){var e={};function t(r,i){var u=A.children(r);if(u&&u.length)ve(u,function(a){t(a,i+1)});e[r]=i}return ve(A.children(),function(r){t(r,1)}),e}function CIt(A){return DE(A.edges(),function(e,t){return e+A.edge(t).weight},0)}function $GA(A){var e=A.graph();A.removeNode(e.nestingRoot),delete e.nestingRoot,ve(A.edges(),function(t){var r=A.edge(t);if(r.nestingEdge)A.removeEdge(t)})}var AUA=P(()=>{Bu();bE()});function eUA(A,e,t){var r={},i;ve(t,function(u){var a=A.parent(u),n,o;while(a){if(n=A.parent(a),n)o=r[n],r[n]=a;else o=i,i=a;if(o&&o!==a){e.setEdge(o,a);return}a=n}})}var tUA=P(()=>{Bu()});function rUA(A,e,t){var r=EIt(A),i=new ji({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(function(u){return A.node(u)});return ve(A.nodes(),function(u){var a=A.node(u),n=A.parent(u);if(a.rank===e||a.minRank<=e&&e<=a.maxRank){if(i.setNode(u),i.setParent(u,n||r),ve(A[t](u),function(o){var s=o.v===u?o.w:o.v,l=i.edge(s,u),g=!bu(l)?l.weight:0;i.setEdge(s,u,{weight:A.edge(o).weight+g})}),Object.prototype.hasOwnProperty.call(a,"minRank"))i.setNode(u,{borderLeft:a.borderLeft[e],borderRight:a.borderRight[e]})}}),i}function EIt(A){var e;while(A.hasNode(e=Kf("_root")));return e}var iUA=P(()=>{Bu();gg()});function uUA(A,e){var t=0;for(var r=1;r<e.length;++r)t+=dIt(A,e[r-1],e[r]);return t}function dIt(A,e,t){var r=UM(t,Vi(t,function(s,l){return l})),i=ic(Vi(e,function(s){return yE(Vi(A.outEdges(s),function(l){return{pos:r[l.w],weight:A.edge(l).weight}}),"pos")})),u=1;while(u<t.length)u<<=1;var a=2*u-1;u-=1;var n=Vi(Array(a),function(){return 0}),o=0;return ve(i.forEach(function(s){var l=s.pos+u;n[l]+=s.weight;var g=0;while(l>0){if(l%2)g+=n[l+1];l=l-1>>1,n[l]+=s.weight}o+=s.weight*g})),o}var aUA=P(()=>{Bu()});function nUA(A){var e={},t=hs(A.nodes(),function(n){return!A.children(n).length}),r=Cl(Vi(t,function(n){return A.node(n).rank})),i=Vi(uc(r+1),function(){return[]});function u(n){if(hk(e,n))return;e[n]=!0;var o=A.node(n);i[o.rank].push(n),ve(A.successors(n),u)}var a=yE(t,function(n){return A.node(n).rank});return ve(a,u),i}var oUA=P(()=>{Bu()});function sUA(A,e){return Vi(e,function(t){var r=A.inEdges(t);if(!r.length)return{v:t};else{var i=DE(r,function(u,a){var n=A.edge(a),o=A.node(a.v);return{sum:u.sum+n.weight*o.order,weight:u.weight+n.weight}},{sum:0,weight:0});return{v:t,barycenter:i.sum/i.weight,weight:i.weight}}})}var lUA=P(()=>{Bu()});function gUA(A,e){var t={};ve(A,function(i,u){var a=t[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:u};if(!bu(i.barycenter))a.barycenter=i.barycenter,a.weight=i.weight}),ve(e.edges(),function(i){var u=t[i.v],a=t[i.w];if(!bu(u)&&!bu(a))a.indegree++,u.out.push(t[i.w])});var r=hs(t,function(i){return!i.indegree});return IIt(r)}function IIt(A){var e=[];function t(u){return function(a){if(a.merged)return;if(bu(a.barycenter)||bu(u.barycenter)||a.barycenter>=u.barycenter)hIt(u,a)}}function r(u){return function(a){if(a.in.push(u),--a.indegree===0)A.push(a)}}while(A.length){var i=A.pop();e.push(i),ve(i.in.reverse(),t(i)),ve(i.out,r(i))}return Vi(hs(e,function(u){return!u.merged}),function(u){return Hf(u,["vs","i","barycenter","weight"])})}function hIt(A,e){var t=0,r=0;if(A.weight)t+=A.barycenter*A.weight,r+=A.weight;if(e.weight)t+=e.barycenter*e.weight,r+=e.weight;A.vs=e.vs.concat(A.vs),A.barycenter=t/r,A.weight=r,A.i=Math.min(e.i,A.i),e.merged=!0}var cUA=P(()=>{Bu()});function BUA(A,e){var t=QGA(A,function(l){return Object.prototype.hasOwnProperty.call(l,"barycenter")}),r=t.lhs,i=yE(t.rhs,function(l){return-l.i}),u=[],a=0,n=0,o=0;r.sort(QIt(!!e)),o=CUA(u,i,o),ve(r,function(l){o+=l.vs.length,u.push(l.vs),a+=l.barycenter*l.weight,n+=l.weight,o=CUA(u,i,o)});var s={vs:ic(u)};if(n)s.barycenter=a/n,s.weight=n;return s}function CUA(A,e,t){var r;while(e.length&&(r=o4(e)).i<=t)e.pop(),A.push(r.vs),t++;return t}function QIt(A){return function(e,t){if(e.barycenter<t.barycenter)return-1;else if(e.barycenter>t.barycenter)return 1;return!A?e.i-t.i:t.i-e.i}}var EUA=P(()=>{Bu();bE()});function LrA(A,e,t,r){var i=A.children(e),u=A.node(e),a=u?u.borderLeft:void 0,n=u?u.borderRight:void 0,o={};if(a)i=hs(i,function(E){return E!==a&&E!==n});var s=sUA(A,i);ve(s,function(E){if(A.children(E.v).length){var d=LrA(A,E.v,t,r);if(o[E.v]=d,Object.prototype.hasOwnProperty.call(d,"barycenter"))fIt(E,d)}});var l=gUA(s,t);pIt(l,o);var g=BUA(l,r);if(a){if(g.vs=ic([a,g.vs,n]),A.predecessors(a).length){var C=A.node(A.predecessors(a)[0]),B=A.node(A.predecessors(n)[0]);if(!Object.prototype.hasOwnProperty.call(g,"barycenter"))g.barycenter=0,g.weight=0;g.barycenter=(g.barycenter*g.weight+C.order+B.order)/(g.weight+2),g.weight+=2}}return g}function pIt(A,e){ve(A,function(t){t.vs=ic(t.vs.map(function(r){if(e[r])return e[r].vs;return r}))})}function fIt(A,e){if(!bu(A.barycenter))A.barycenter=(A.barycenter*A.weight+e.barycenter*e.weight)/(A.weight+e.weight),A.weight+=e.weight;else A.barycenter=e.barycenter,A.weight=e.weight}var dUA=P(()=>{Bu();lUA();cUA();EUA()});function QUA(A){var e=ErA(A),t=IUA(A,uc(1,e+1),"inEdges"),r=IUA(A,uc(e-1,-1,-1),"outEdges"),i=nUA(A);hUA(A,i);var u=Number.POSITIVE_INFINITY,a;for(var n=0,o=0;o<4;++n,++o){mIt(n%2?t:r,n%4>=2),i=l4(A);var s=uUA(A,i);if(s<u)o=0,a=GtA(i),u=s}hUA(A,a)}function IUA(A,e,t){return Vi(e,function(r){return rUA(A,r,t)})}function mIt(A,e){var t=new ji;ve(A,function(r){var i=r.graph().root,u=LrA(r,i,t,e);ve(u.vs,function(a,n){r.node(a).order=n}),eUA(r,t,u.vs)})}function hUA(A,e){ve(e,function(t){ve(t,function(r,i){A.node(r).order=i})})}var pUA=P(()=>{Bu();gg();bE();tUA();iUA();aUA();oUA();dUA()});function fUA(A){var e=yIt(A);ve(A.graph().dummyChains,function(t){var r=A.node(t),i=r.edgeObj,u=DIt(A,e,i.v,i.w),{path:a,lca:n}=u,o=0,s=a[o],l=!0;while(t!==i.w){if(r=A.node(t),l){while((s=a[o])!==n&&A.node(s).maxRank<r.rank)o++;if(s===n)l=!1}if(!l){while(o<a.length-1&&A.node(s=a[o+1]).minRank<=r.rank)o++;s=a[o]}A.setParent(t,s),t=A.successors(t)[0]}})}function DIt(A,e,t,r){var i=[],u=[],a=Math.min(e[t].low,e[r].low),n=Math.max(e[t].lim,e[r].lim),o,s;o=t;do o=A.parent(o),i.push(o);while(o&&(e[o].low>a||n>e[o].lim));s=o,o=r;while((o=A.parent(o))!==s)u.push(o);return{path:i.concat(u.reverse()),lca:s}}function yIt(A){var e={},t=0;function r(i){var u=t;ve(A.children(i),r),e[i]={low:u,lim:t++}}return ve(A.children(),r),e}var mUA=P(()=>{Bu()});function wIt(A,e){var t={};function r(i,u){var a=0,n=0,o=i.length,s=o4(u);return ve(u,function(l,g){var C=vIt(A,l),B=C?A.node(C).order:o;if(C||l===s)ve(u.slice(n,g+1),function(E){ve(A.predecessors(E),function(d){var I=A.node(d),h=I.order;if((h<a||B<h)&&!(I.dummy&&A.node(E).dummy))DUA(t,d,E)})}),n=g+1,a=B}),u}return DE(e,r),t}function bIt(A,e){var t={};function r(u,a,n,o,s){var l;ve(uc(a,n),function(g){if(l=u[g],A.node(l).dummy)ve(A.predecessors(l),function(C){var B=A.node(C);if(B.dummy&&(B.order<o||B.order>s))DUA(t,C,l)})})}function i(u,a){var n=-1,o,s=0;return ve(a,function(l,g){if(A.node(l).dummy==="border"){var C=A.predecessors(l);if(C.length)o=A.node(C[0]).order,r(a,s,g,n,o),s=g,n=o}r(a,s,a.length,o,u.length)}),a}return DE(e,i),t}function vIt(A,e){if(A.node(e).dummy)return Jy(A.predecessors(e),function(t){return A.node(t).dummy})}function DUA(A,e,t){if(e>t){var r=e;e=t,t=r}if(!Object.prototype.hasOwnProperty.call(A,e))Object.defineProperty(A,e,{enumerable:!0,configurable:!0,value:{},writable:!0});var i=A[e];Object.defineProperty(i,t,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function kIt(A,e,t){if(e>t){var r=e;e=t,t=r}return!!A[e]&&Object.prototype.hasOwnProperty.call(A[e],t)}function FIt(A,e,t,r){var i={},u={},a={};return ve(e,function(n){ve(n,function(o,s){i[o]=o,u[o]=o,a[o]=s})}),ve(e,function(n){var o=-1;ve(n,function(s){var l=r(s);if(l.length){l=yE(l,function(d){return a[d]});var g=(l.length-1)/2;for(var C=Math.floor(g),B=Math.ceil(g);C<=B;++C){var E=l[C];if(u[s]===s&&o<a[E]&&!kIt(t,s,E))u[E]=s,u[s]=i[s]=i[E],o=a[E]}}})}),{root:i,align:u}}function xIt(A,e,t,r,i){var u={},a=SIt(A,e,t,i),n=i?"borderLeft":"borderRight";function o(g,C){var B=a.nodes(),E=B.pop(),d={};while(E){if(d[E])g(E);else d[E]=!0,B.push(E),B=B.concat(C(E));E=B.pop()}}function s(g){u[g]=a.inEdges(g).reduce(function(C,B){return Math.max(C,u[B.v]+a.edge(B))},0)}function l(g){var C=a.outEdges(g).reduce(function(E,d){return Math.min(E,u[d.w]-a.edge(d))},Number.POSITIVE_INFINITY),B=A.node(g);if(C!==Number.POSITIVE_INFINITY&&B.borderType!==n)u[g]=Math.max(u[g],C)}return o(s,a.predecessors.bind(a)),o(l,a.successors.bind(a)),ve(r,function(g){u[g]=u[t[g]]}),u}function SIt(A,e,t,r){var i=new ji,u=A.graph(),a=GIt(u.nodesep,u.edgesep,r);return ve(e,function(n){var o;ve(n,function(s){var l=t[s];if(i.setNode(l),o){var g=t[o],C=i.edge(g,l);i.setEdge(g,l,Math.max(a(A,s,o),C||0))}o=s})}),i}function LIt(A,e){return Yf(lg(e),function(t){var{NEGATIVE_INFINITY:r,POSITIVE_INFINITY:i}=Number;return XtA(t,function(u,a){var n=UIt(A,a)/2;r=Math.max(u+n,r),i=Math.min(u-n,i)}),r-i})}function RIt(A,e){var t=lg(e),r=SI(t),i=Cl(t);ve(["u","d"],function(u){ve(["l","r"],function(a){var n=u+a,o=A[n],s;if(o===e)return;var l=lg(o);if(s=a==="l"?r-SI(l):i-Cl(l),s)A[n]=Tf(o,function(g){return g+s})})})}function NIt(A,e){return Tf(A.ul,function(t,r){if(e)return A[e.toLowerCase()][r];else{var i=yE(Vi(A,r));return(i[1]+i[2])/2}})}function yUA(A){var e=l4(A),t=Py(wIt(A,e),bIt(A,e)),r={},i;ve(["u","d"],function(a){i=a==="u"?e:lg(e).reverse(),ve(["l","r"],function(n){if(n==="r")i=Vi(i,function(g){return lg(g).reverse()});var o=(a==="u"?A.predecessors:A.successors).bind(A),s=FIt(A,i,t,o),l=xIt(A,i,s.root,s.align,n==="r");if(n==="r")l=Tf(l,function(g){return-g});r[a+n]=l})});var u=LIt(A,r);return RIt(r,u),NIt(r,A.graph().align)}function GIt(A,e,t){return function(r,i,u){var a=r.node(i),n=r.node(u),o=0,s;if(o+=a.width/2,Object.prototype.hasOwnProperty.call(a,"labelpos"))switch(a.labelpos.toLowerCase()){case"l":s=-a.width/2;break;case"r":s=a.width/2;break}if(s)o+=t?s:-s;if(s=0,o+=(a.dummy?e:A)/2,o+=(n.dummy?e:A)/2,o+=n.width/2,Object.prototype.hasOwnProperty.call(n,"labelpos"))switch(n.labelpos.toLowerCase()){case"l":s=n.width/2;break;case"r":s=-n.width/2;break}if(s)o+=t?s:-s;return s=0,o}}function UIt(A,e){return A.node(e).width}var wUA=P(()=>{Bu();gg();bE()});function bUA(A){A=YM(A),MIt(A),$tA(yUA(A),function(e,t){A.node(t).x=e})}function MIt(A){var e=l4(A),t=A.graph().ranksep,r=0;ve(e,function(i){var u=Cl(Vi(i,function(a){return A.node(a).height}));ve(i,function(a){A.node(a).y=r+u/2}),r+=u+t})}var vUA=P(()=>{Bu();bE();wUA()});function Dk(A,e){var t=e&&e.debugTiming?pGA:fGA;t("layout",()=>{var r=t(" buildLayoutGraph",()=>zIt(A));t(" runLayout",()=>TIt(r,t)),t(" updateInputGraph",()=>YIt(A,r))})}function TIt(A,e){e(" makeSpaceForEdgeLabels",()=>ZIt(A)),e(" removeSelfEdges",()=>iht(A)),e(" acyclic",()=>CGA(A)),e(" nestingGraph.run",()=>jGA(A)),e(" rank",()=>xrA(YM(A))),e(" injectEdgeLabelProxies",()=>VIt(A)),e(" removeEmptyRanks",()=>hGA(A)),e(" nestingGraph.cleanup",()=>$GA(A)),e(" normalizeRanks",()=>IGA(A)),e(" assignRankMinMax",()=>jIt(A)),e(" removeEdgeLabelProxies",()=>XIt(A)),e(" normalize.run",()=>xGA(A)),e(" parentDummyChains",()=>fUA(A)),e(" addBorderSegments",()=>DGA(A)),e(" order",()=>QUA(A)),e(" insertSelfEdges",()=>uht(A)),e(" adjustCoordinateSystem",()=>bGA(A)),e(" position",()=>bUA(A)),e(" positionSelfEdges",()=>aht(A)),e(" removeBorderNodes",()=>rht(A)),e(" normalize.undo",()=>SGA(A)),e(" fixupEdgeLabelCoords",()=>eht(A)),e(" undoCoordinateSystem",()=>vGA(A)),e(" translateGraph",()=>$It(A)),e(" assignNodeIntersects",()=>Aht(A)),e(" reversePoints",()=>tht(A)),e(" acyclic.undo",()=>BGA(A))}function YIt(A,e){ve(A.nodes(),function(t){var r=A.node(t),i=e.node(t);if(r){if(r.x=i.x,r.y=i.y,e.children(t).length)r.width=i.width,r.height=i.height}}),ve(A.edges(),function(t){var r=A.edge(t),i=e.edge(t);if(r.points=i.points,Object.prototype.hasOwnProperty.call(i,"x"))r.x=i.x,r.y=i.y}),A.graph().width=e.graph().width,A.graph().height=e.graph().height}function zIt(A){var e=new ji({multigraph:!0,compound:!0}),t=NrA(A.graph());return e.setGraph(Py({},KIt,RrA(t,HIt),Hf(t,JIt))),ve(A.nodes(),function(r){var i=NrA(A.node(r));e.setNode(r,WtA(RrA(i,OIt),PIt)),e.setParent(r,A.parent(r))}),ve(A.edges(),function(r){var i=NrA(A.edge(r));e.setEdge(r,Py({},WIt,RrA(i,_It),Hf(i,qIt)))}),e}function ZIt(A){var e=A.graph();e.ranksep/=2,ve(A.edges(),function(t){var r=A.edge(t);if(r.minlen*=2,r.labelpos.toLowerCase()!=="c")if(e.rankdir==="TB"||e.rankdir==="BT")r.width+=r.labeloffset;else r.height+=r.labeloffset})}function VIt(A){ve(A.edges(),function(e){var t=A.edge(e);if(t.width&&t.height){var r=A.node(e.v),i=A.node(e.w),u={rank:(i.rank-r.rank)/2+r.rank,e};wE(A,"edge-proxy",u,"_ep")}})}function jIt(A){var e=0;ve(A.nodes(),function(t){var r=A.node(t);if(r.borderTop)r.minRank=A.node(r.borderTop).rank,r.maxRank=A.node(r.borderBottom).rank,e=Cl(e,r.maxRank)}),A.graph().maxRank=e}function XIt(A){ve(A.nodes(),function(e){var t=A.node(e);if(t.dummy==="edge-proxy")A.edge(t.e).labelRank=t.rank,A.removeNode(e)})}function $It(A){var e=Number.POSITIVE_INFINITY,t=0,r=Number.POSITIVE_INFINITY,i=0,u=A.graph(),a=u.marginx||0,n=u.marginy||0;function o(s){var{x:l,y:g,width:C,height:B}=s;e=Math.min(e,l-C/2),t=Math.max(t,l+C/2),r=Math.min(r,g-B/2),i=Math.max(i,g+B/2)}ve(A.nodes(),function(s){o(A.node(s))}),ve(A.edges(),function(s){var l=A.edge(s);if(Object.prototype.hasOwnProperty.call(l,"x"))o(l)}),e-=a,r-=n,ve(A.nodes(),function(s){var l=A.node(s);l.x-=e,l.y-=r}),ve(A.edges(),function(s){var l=A.edge(s);if(ve(l.points,function(g){g.x-=e,g.y-=r}),Object.prototype.hasOwnProperty.call(l,"x"))l.x-=e;if(Object.prototype.hasOwnProperty.call(l,"y"))l.y-=r}),u.width=t-e+a,u.height=i-r+n}function Aht(A){ve(A.edges(),function(e){var t=A.edge(e),r=A.node(e.v),i=A.node(e.w),u,a;if(!t.points)t.points=[],u=i,a=r;else u=t.points[0],a=t.points[t.points.length-1];t.points.unshift(CrA(r,u)),t.points.push(CrA(i,a))})}function eht(A){ve(A.edges(),function(e){var t=A.edge(e);if(Object.prototype.hasOwnProperty.call(t,"x")){if(t.labelpos==="l"||t.labelpos==="r")t.width-=t.labeloffset;switch(t.labelpos){case"l":t.x-=t.width/2+t.labeloffset;break;case"r":t.x+=t.width/2+t.labeloffset;break}}})}function tht(A){ve(A.edges(),function(e){var t=A.edge(e);if(t.reversed)t.points.reverse()})}function rht(A){ve(A.nodes(),function(e){if(A.children(e).length){var t=A.node(e),r=A.node(t.borderTop),i=A.node(t.borderBottom),u=A.node(o4(t.borderLeft)),a=A.node(o4(t.borderRight));t.width=Math.abs(a.x-u.x),t.height=Math.abs(i.y-r.y),t.x=u.x+t.width/2,t.y=r.y+t.height/2}}),ve(A.nodes(),function(e){if(A.node(e).dummy==="border")A.removeNode(e)})}function iht(A){ve(A.edges(),function(e){if(e.v===e.w){var t=A.node(e.v);if(!t.selfEdges)t.selfEdges=[];t.selfEdges.push({e,label:A.edge(e)}),A.removeEdge(e)}})}function uht(A){var e=l4(A);ve(e,function(t){var r=0;ve(t,function(i,u){var a=A.node(i);a.order=u+r,ve(a.selfEdges,function(n){wE(A,"selfedge",{width:n.label.width,height:n.label.height,rank:a.rank,order:u+ ++r,e:n.e,label:n.label},"_se")}),delete a.selfEdges})})}function aht(A){ve(A.nodes(),function(e){var t=A.node(e);if(t.dummy==="selfedge"){var r=A.node(t.e.v),i=r.x+r.width/2,u=r.y,a=t.x-i,n=r.height/2;A.setEdge(t.e,t.label),A.removeNode(e),t.label.points=[{x:i+2*a/3,y:u-n},{x:i+5*a/6,y:u-n},{x:i+a,y:u},{x:i+5*a/6,y:u+n},{x:i+2*a/3,y:u+n}],t.label.x=t.x,t.label.y=t.y}})}function RrA(A,e){return Tf(Hf(A,e),Number)}function NrA(A){var e={};return ve(A,function(t,r){e[r.toLowerCase()]=t}),e}var HIt,KIt,JIt,OIt,PIt,_It,WIt,qIt;var kUA=P(()=>{Bu();gg();yGA();FGA();crA();hrA();SrA();AUA();pUA();mUA();vUA();bE();HIt=["nodesep","edgesep","ranksep","marginx","marginy"],KIt={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},JIt=["acyclicer","ranker","rankdir","align"],OIt=["width","height"],PIt={width:0,height:0},_It=["minlen","weight","width","height","labeloffset"],WIt={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},qIt=["labelpos"]});var GrA=P(()=>{crA();kUA();hrA();SrA()});var RUA={};yt(RUA,{getEdgesToRender:()=>SUA,render:()=>ght});var FUA,xUA,nht,oht,sht,lht,SUA,LUA,ght;var NUA=P(()=>{orA();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();GrA();arA();gg();FUA=y((A,e,t)=>Math.max(e,Math.min(t,A)),"clamp"),xUA=y((A="TB")=>{switch(A){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";case"TB":default:return"top"}},"getDefaultSelfLoopSide"),nht=y((A)=>A==="flowchart"||A==="flowchart-v2"||A==="stateDiagram","shouldMergeSelfLoopSegments"),oht=y((A,e,t,r,i)=>{let u=[],a=new Set;if(t.forEach(({start:l,end:g})=>{if(l!==r)a.add(l);if(g!==r)a.add(g)}),a.forEach((l)=>{let g=A.node(l);if(typeof g?.x==="number"&&typeof g?.y==="number")u.push(g)}),u.length===0)t.forEach(({edge:l})=>{(l.points??[]).forEach((g)=>{if(typeof g?.x==="number"&&typeof g?.y==="number")u.push(g)})});if(u.length===0)return xUA(i);let n=u.reduce((l,g)=>({x:l.x+g.x/u.length,y:l.y+g.y/u.length}),{x:0,y:0}),o=n.x-e.x,s=n.y-e.y;if(Math.abs(o)>Math.abs(s))return o>0?"right":"left";if(Math.abs(s)>0)return s>0?"bottom":"top";return xUA(i)},"getSelfLoopSide"),sht=y((A,e="top",t=0,r=0)=>{let i=A.x,u=A.y-t,a=A.width/2,n=A.height/2,o=Math.max(36,Math.min(100,A.width*0.8)),s=FUA(Math.max(r,A.width*0.35),36,o),l=FUA(Math.min(A.width,A.height)*0.45,24,48);switch(e){case"bottom":{let g=u+n;return[{x:i-s/2,y:g},{x:i-s/2,y:g+l},{x:i+s/2,y:g+l},{x:i+s/2,y:g}]}case"right":{let g=i+a;return[{x:g,y:u-s/2},{x:g+l,y:u-s/2},{x:g+l,y:u+s/2},{x:g,y:u+s/2}]}case"left":{let g=i-a;return[{x:g,y:u-s/2},{x:g-l,y:u-s/2},{x:g-l,y:u+s/2},{x:g,y:u+s/2}]}case"top":default:{let g=u-n;return[{x:i-s/2,y:g},{x:i-s/2,y:g-l},{x:i+s/2,y:g-l},{x:i+s/2,y:g}]}}},"getSelfLoopPoints"),lht=y((A,e,t="top",r=0,i={})=>{let a=A.x,n=A.y-r,o=i.width??0,s=i.height??0;switch(t){case"bottom":return{x:a,y:Math.max(...e.map((l)=>l.y))+s/2+4};case"right":return{x:Math.max(...e.map((l)=>l.x))+o/2+4,y:n};case"left":return{x:Math.min(...e.map((l)=>l.x))-o/2-4,y:n};case"top":default:return{x:a,y:Math.min(...e.map((l)=>l.y))-s/2-4}}},"getSelfLoopLabelPosition"),SUA=y((A,e=0,{mergeSelfLoops:t=!0}={})=>{let r=new Map,i=[],u=A.graph()?.rankdir;return A.edges().forEach((a)=>{let n=A.edge(a);if(t&&n.selfLoop){let o=n.selfLoop.id;if(!r.has(o))r.set(o,[]);r.get(o).push({edge:n,start:a.v,end:a.w})}else i.push({edge:n,start:a.v,end:a.w})}),r.forEach((a)=>{if(a.length!==3){a.forEach((h)=>i.push(h));return}a.sort((h,Q)=>h.edge.selfLoop.order-Q.edge.selfLoop.order);let[n,o,s]=a,l=n.edge.originalEdge??o.edge.originalEdge??s.edge.originalEdge??o.edge,g=A.node(l.start);if(!g){a.forEach((h)=>i.push(h));return}let C={width:o.edge.width,height:o.edge.height},B=oht(A,g,a,l.start,u),E=sht(g,B,e,C.width??0),d=lht(g,E,B,e,C),I={...o.edge,...l,id:l.id,points:E,start:l.start,end:l.end,x:d.x,y:d.y,width:C.width,height:C.height,labelStyle:o.edge.labelStyle,fromCluster:n.edge.fromCluster??o.edge.fromCluster??s.edge.fromCluster,toCluster:n.edge.toCluster??o.edge.toCluster??s.edge.toCluster};delete I.selfLoop,delete I.originalEdge,i.push({edge:I,start:I.start,end:I.end})}),i},"getEdgesToRender"),LUA=y(async(A,e,t,r,i,u)=>{sA.warn("Graph in recursive render:XAX",bC(e),i);let a=e.graph().rankdir;sA.trace("Dir in recursive render - dir:",a);let n=A.insert("g").attr("class","root");if(!e.nodes())sA.info("No nodes found for",e);else sA.info("Recursive render XXX",e.nodes());if(e.edges().length>0)sA.info("Recursive edges",e.edge(e.edges()[0]));let o=n.insert("g").attr("class","clusters"),s=n.insert("g").attr("class","edgePaths"),l=n.insert("g").attr("class","edgeLabels"),g=n.insert("g").attr("class","nodes"),C=nht(t);await Promise.all(e.nodes().map(async function(Q){let p=e.node(Q);if(i!==void 0){let m=JSON.parse(JSON.stringify(i.clusterData));if(sA.trace(`Setting data for parent cluster XXX
|
||
Node.id = `,Q,`
|
||
data=`,m.height,`
|
||
Parent cluster`,i.height),e.setNode(i.id,m),!e.parent(Q))sA.trace("Setting parent",Q,i.id),e.setParent(Q,i.id,m)}if(sA.info("(Insert) Node XXX"+Q+": "+JSON.stringify(e.node(Q))),p?.clusterNode){sA.info("Cluster identified XBX",Q,p.width,e.node(Q));let{ranksep:m,nodesep:f}=e.graph();p.graph.setGraph({...p.graph.graph(),ranksep:m+25,nodesep:f});let D=await LUA(g,p.graph,t,r,e.node(Q),u),w=D.elem;Pt(p,w),p.diff=D.diff||0,sA.info("New compound node after recursive render XAX",Q,"width",p.width,"height",p.height),i7A(w,p)}else if(e.children(Q).length>0)sA.trace("Cluster - the non recursive path XBX",Q,p.id,p,p.width,"Graph:",e),sA.trace(Pf(p.id,e)),Hr.set(p.id,{id:Pf(p.id,e),node:p});else sA.trace("Node - the non recursive path XAX",Q,g,e.node(Q),a),await wI(g,e.node(Q),{config:u,dir:a})})),await y(async()=>{let Q=e.edges().map(async function(p){let m=e.edge(p.v,p.w,p.name);if(sA.info("Edge "+p.v+" -> "+p.w+": "+JSON.stringify(p)),sA.info("Edge "+p.v+" -> "+p.w+": ",p," ",JSON.stringify(e.edge(p))),sA.info("Fix",Hr,"ids:",p.v,p.w,"Translating: ",Hr.get(p.v),Hr.get(p.w)),C&&m.selfLoop){if(m.selfLoop.order!==1)return;let f=m.id;m.id=m.selfLoop.id,await Sf(l,m),m.id=f;return}await Sf(l,m)});await Promise.all(Q)},"processEdges")(),sA.info("Graph before layout:",JSON.stringify(bC(e))),sA.info("############################################# XXX"),sA.info("### Layout ### XXX"),sA.info("############################################# XXX"),Dk(e),sA.info("Graph after layout:",JSON.stringify(bC(e)));let E=0,{subGraphTitleTotalMargin:d}=fC(u);await Promise.all(nGA(e).map(async function(Q){let p=e.node(Q);if(sA.info("Position XBX => "+Q+": ("+p.x,","+p.y,") width: ",p.width," height: ",p.height),p?.clusterNode)p.y+=d,sA.info("A tainted cluster node XBX1",Q,p.id,p.width,p.height,p.x,p.y,e.parent(Q)),Hr.get(p.id).node=p,xf(p);else if(e.children(Q).length>0){sA.info("A pure cluster node XBX1",Q,p.id,p.x,p.y,p.width,p.height,e.parent(Q)),p.height+=d,e.node(p.parentId);let m=p?.padding/2||0,f=p?.labelBBox?.height||0,D=f-m||0;sA.debug("OffsetY",D,"labelHeight",f,"halfPadding",m),await JQ(o,p),Hr.get(p.id).node=p}else{let m=e.node(p.parentId);p.y+=d/2,sA.info("A regular node XBX1 - using the padding",p.id,"parent",p.parentId,p.width,p.height,p.x,p.y,"offsetY",p.offsetY,"parent",m,m?.offsetY,p),xf(p)}}));let I=d/2;return SUA(e,I,{mergeSelfLoops:C}).forEach(function({edge:Q,start:p,end:m}){sA.info("Edge "+p+" -> "+m+": "+JSON.stringify(Q),Q),Q.points.forEach((b)=>b.y+=I);let f=e.node(p),D=e.node(m),w=Iy(s,Q,Hr,t,f,D,r);xU(Q,w)}),e.nodes().forEach(function(Q){let p=e.node(Q);if(sA.info(Q,p.type,p.diff),p.isGroup)E=p.diff}),sA.warn("Returning from recursive render XAX",n,E),{elem:n,diff:E}},"recursiveRender"),ght=y(async(A,e)=>{let t=new ji({multigraph:!0,compound:!0}).setGraph({rankdir:A.direction,nodesep:A.config?.nodeSpacing||A.config?.flowchart?.nodeSpacing||A.nodeSpacing,ranksep:A.config?.rankSpacing||A.config?.flowchart?.rankSpacing||A.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),r=e.select("g");hy(r,A.markers,A.type,A.diagramId),vU(),FU(),wU(),TM(),A.nodes.forEach((u)=>{if(t.setNode(u.id,{...u}),u.parentId)t.setParent(u.id,u.parentId)}),sA.debug("Edges:",A.edges),A.edges.forEach((u)=>{if(u.start===u.end){let a=u.start,n=a+"---"+a+"---1",o=a+"---"+a+"---2",s=t.node(a);t.setNode(n,{domId:n,id:n,parentId:s.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),t.setParent(n,s.parentId),t.setNode(o,{domId:o,id:o,parentId:s.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),t.setParent(o,s.parentId);let l=structuredClone(u),g=structuredClone(u),C=structuredClone(u),B=structuredClone(u);if(g.originalEdge=l,g.selfLoop={id:l.id,order:0},C.originalEdge=l,C.selfLoop={id:l.id,order:1},B.originalEdge=l,B.selfLoop={id:l.id,order:2},g.label="",g.arrowTypeEnd="none",g.endLabelLeft="",g.endLabelRight="",g.startLabelLeft="",g.id=a+"-cyclic-special-1",C.startLabelRight="",C.startLabelLeft="",C.endLabelLeft="",C.endLabelRight="",C.arrowTypeStart="none",C.arrowTypeEnd="none",C.id=a+"-cyclic-special-mid",B.label="",B.startLabelRight="",B.startLabelLeft="",B.arrowTypeStart="none",s.isGroup)g.fromCluster=a,B.toCluster=a;B.id=a+"-cyclic-special-2",B.arrowTypeStart="none",t.setEdge(a,n,g,a+"-cyclic-special-0"),t.setEdge(n,o,C,a+"-cyclic-special-1"),t.setEdge(o,a,B,a+"-cyclic-special-2")}else t.setEdge(u.start,u.end,{...u},u.id)}),sA.warn("Graph at first:",JSON.stringify(bC(t))),iGA(t),sA.warn("Graph after XAX:",JSON.stringify(bC(t)));let i=OA();await LUA(r,t,A.type,A.diagramId,void 0,i)},"render")});function UrA(){if(typeof globalThis>"u")return;return globalThis}function Cht(){return Boolean(UrA()?.mermaidCaptureSizes)}function GUA(){if(typeof location>"u")return"browser-dev";return`${location.pathname}${location.search}`}function UUA(A,e){let t=UrA();if(!t)return;let r=e.node(),u=((r&&"ownerSVGElement"in r?r.ownerSVGElement:null)??r)?.id??"(unknown)";t.mermaidCapturedSizes??=[];let a={svgId:u,sizes:A};t.mermaidCapturedSizes.push(a),t.mermaidLastCapturedSizes=a}function MrA(A,e){let t=[];for(let r of e.nodes){if(r.isGroup)continue;t.push({id:r.id,width:r.width??0,height:r.height??0})}if(t.length===0)return;UUA({metadata:{captureVersion:cht,capturedAt:new Date().toISOString(),capturedFrom:GUA()},nodes:t},A)}var cht=1;var MUA=P(()=>{Nt();y(UrA,"getCaptureGlobal");y(Cht,"shouldCaptureSizes");y(GUA,"capturedFromLocation");y(UUA,"emitCapturedSizes");y(MrA,"captureNodeSizes")});var wTA={};yt(wTA,{render:()=>yTA});async function PUA(A,e){let t=new ji({multigraph:!0,compound:!0}),r=[...e.edges],i=OA(),u=A.insert("g").attr("class","root"),a=u.insert("g").attr("class","clusters"),n=u.insert("g").attr("class","edges edgePath"),o=u.insert("g").attr("class","edgeLabels"),s=u.insert("g").attr("class","nodes"),l=new Map,g=A.node()!=null;await Promise.all(e.nodes.map(async(C)=>{if(C.isGroup)t.setNode(C.id,{...C});else{if(g){let B=await wI(s,C,{config:i,dir:C.dir}),E=B.node()?.getBBox()??{width:0,height:0};l.set(C.id,B),C.width=E.width,C.height=E.height}t.setNode(C.id,{...C})}}));for(let C of r)if(t.setEdge(C.start,C.end,{...C},C.id),!e.edges.some((E)=>E.id===C.id))e.edges.push(C);if(globalThis.mermaidCaptureSizes){await Promise.resolve().then(() => MUA());MrA(A,e)}return{graph:t,groups:{clusters:a,edgePaths:n,edgeLabels:o,nodes:s,rootGroups:u},nodeElements:l}}function VM(A){let e=[];for(let t=0;t<A.length-1;t++)e.push({a:A[t],b:A[t+1]});return e}function _UA(A,e,t,r){let i=e.x-A.x,u=e.y-A.y,a=r.x-t.x,n=r.y-t.y,o=i*n-u*a;if(o===0)return null;let s=t.x-A.x,l=t.y-A.y,g=(s*n-l*a)/o,C=(s*u-l*i)/o;if(g<=PM||g>=1-PM||C<=PM||C>=1-PM)return null;return{point:{x:A.x+g*i,y:A.y+g*u},tA:g,tB:C}}function JrA(A){return Math.abs(A.b.x-A.a.x)>=Math.abs(A.b.y-A.a.y)}function WUA(A){let e=[];for(let t=0;t<A.length;t++){let r=A[t],i=VM(r.points);for(let u=t+1;u<A.length;u++){let a=A[u],n=VM(a.points);for(let[o,s]of i.entries())for(let[l,g]of n.entries()){let C=_UA(s.a,s.b,g.a,g.b);if(!C)continue;let B=JrA(s),E=JrA(g);if(B!==E?B:!1)e.push({jumpEdgeId:r.id,otherEdgeId:a.id,segIndex:o,t:C.tA,point:C.point});else e.push({jumpEdgeId:a.id,otherEdgeId:r.id,segIndex:l,t:C.tB,point:C.point})}}}return e}function kC(A){let e=Math.round(A*1000)/1000;return Number.isInteger(e)?`${e}`:`${e}`}function Wy(A){return`${kC(A.x)},${kC(A.y)}`}function qUA(A){let e=A.b.x-A.a.x,t=A.b.y-A.a.y;if(Math.abs(e)>=Math.abs(t))return e>=0?1:0;return t>=0?1:0}function zUA(A,e){if(A.length<2)return A.map((u)=>({...u}));let t=A.map((u)=>({...u})),r=e.arrowTypeStart&&Gn[e.arrowTypeStart];if(r){let u=A[0],a=A[1],n=Math.atan2(a.y-u.y,a.x-u.x);t[0].x=u.x+r*Math.cos(n),t[0].y=u.y+r*Math.sin(n)}let i=e.arrowTypeEnd&&Gn[e.arrowTypeEnd];if(i){let u=A.length,a=A[u-2],n=A[u-1],o=Math.atan2(n.y-a.y,n.x-a.x);t[u-1].x=n.x-i*Math.cos(o),t[u-1].y=n.y-i*Math.sin(o)}return t}function ZUA(A,e,t,r,i){let u=A.point.x,a=A.point.y,n={x:u-e*A.r,y:a-t*A.r},o={x:u+e*A.r,y:a+t*A.r},s=[`L${Wy(n)}`];if(i==="arc")s.push(`A${kC(A.r)},${kC(A.r)} 0 0 ${r} ${Wy(o)}`);else s.push(`M${Wy(o)}`);return s}function OrA(A,e,t,r){let i=e.x-A.x,u=e.y-A.y,a=t.x-e.x,n=t.y-e.y,o=Math.hypot(i,u),s=Math.hypot(a,n);if(o<OM||s<OM)return null;let l=i/o,g=u/o,C=a/s,B=n/s,E=l*C+g*B,d=Math.max(-1,Math.min(1,E)),I=Math.acos(d);if(I<OM||Math.abs(Math.PI-I)<OM)return null;let h=Math.min(r/Math.sin(I/2),o/2,s/2);return{startX:e.x-l*h,startY:e.y-g*h,endX:e.x+C*h,endY:e.y+B*h,ctrlX:e.x,ctrlY:e.y,cutLen:h}}function VUA(A,e,t){let r=A.points;if(r.length<2)return"";let i=zUA(r,A),u=A.curve==="rounded",a=VM(i),n=new Map;for(let s of e){let l=a[s.segIndex];if(!l)continue;let g=Math.hypot(l.b.x-l.a.x,l.b.y-l.a.y),C=n.get(s.segIndex)??[];C.push({t:s.t,point:s.point,d:s.t*g,r:t.jumpRadius}),n.set(s.segIndex,C)}let o=[`M${Wy(i[0])}`];for(let s=0;s<a.length;s++){let l=a[s],g=Math.hypot(l.b.x-l.a.x,l.b.y-l.a.y),C=g===0?0:(l.b.x-l.a.x)/g,B=g===0?0:(l.b.y-l.a.y)/g,E=qUA(l),d=0;if(u&&s>0){let p=OrA(i[s-1],i[s],i[s+1]??i[s],TUA);if(p)d=p.cutLen}let I=g,h=null;if(u&&s<a.length-1){if(h=OrA(i[s],i[s+1],i[s+2]??i[s+1],TUA),h)I=g-h.cutLen}let Q=[...n.get(s)??[]].sort((p,m)=>p.t-m.t);for(let p of Q)p.r=Math.min(p.r,p.d-d,I-p.d);for(let p=0;p<Q.length-1;p++){let m=Q[p+1].d-Q[p].d;if(Q[p].r+Q[p+1].r>m){let f=m/2;Q[p].r=Math.min(Q[p].r,f),Q[p+1].r=Math.min(Q[p+1].r,f)}}for(let p of Q){if(p.r<Bht)continue;o.push(...ZUA(p,C,B,E,t.jumpStyle))}if(u&&h)o.push(`L${kC(h.startX)},${kC(h.startY)}`),o.push(`Q${kC(h.ctrlX)},${kC(h.ctrlY)} ${kC(h.endX)},${kC(h.endY)}`);else o.push(`L${Wy(l.b)}`)}return o.join(" ")}function jUA(A){return/^[\d\s+,.LMelm-]*$/.test(A)}function XUA(A){if(!A)return!0;return A==="linear"||A==="rounded"||A==="step"||A==="stepBefore"||A==="stepAfter"}function $UA(A){if(!A)return null;try{let e=typeof atob==="function"?atob(A):Buffer.from(A,"base64").toString(),t=JSON.parse(e);if(!Array.isArray(t))return null;let r=[];for(let i of t)if(i&&typeof i.x==="number"&&typeof i.y==="number")r.push({x:i.x,y:i.y});return r.length>=2?r:null}catch{return null}}function AMA(A,e,t){if(!t.enabled)return;let r=A.node();if(!r)return;let i=new Map;for(let s of e)i.set(s.id,s);let u=[],a=new Map;for(let s of e){let l=typeof CSS<"u"&&CSS.escape?CSS.escape(s.id):s.id,g=r.querySelector(`path[data-id="${l}"]`);if(!g)continue;a.set(s.id,g);let B=$UA(g.getAttribute("data-points"))??s.points;u.push({...s,points:B})}let n=WUA(u);if(n.length===0)return;let o=new Map;for(let s of n){let l=o.get(s.jumpEdgeId)??[];l.push(s),o.set(s.jumpEdgeId,l)}for(let s of u){let l=o.get(s.id);if(!l||l.length===0)continue;let C=i.get(s.id)?.curve;if(C!==void 0&&!XUA(C))continue;let B=a.get(s.id);if(!B)continue;if(C===void 0){let p=B.getAttribute("d")??"";if(!jUA(p))continue}let E=B.getAttribute("style")??"",d=/stroke-dasharray\s*:\s*0\s+([\d.]+)\s+[\d.]+\s+([\d.]+)/.exec(E),I=d?Number.parseFloat(d[1]):null,h=d?Number.parseFloat(d[2]):null,Q=VUA(s,l,t);if(B.setAttribute("d",Q),I!==null&&h!==null&&typeof B.getTotalLength==="function"){let p=B.getTotalLength(),m=Math.max(0,p-I-h),f=`0 ${I} ${m} ${h}`,D=E.replace(/stroke-dasharray\s*:[^;]*;?/g,`stroke-dasharray: ${f};`).replace(/;\s*;+/g,";");B.setAttribute("style",D)}}}async function eMA(A,e){for(let i of A.nodes)if(i.isGroup)await JQ(e.clusters,i);else xf(i);let t=new Map;for(let i of A.nodes)if(i?.id)t.set(i.id,i);for(let i of A.edges){let u=i.start?t.get(i.start)??{}:{},a=i.end?t.get(i.end)??{}:{},n=Iy(e.edgePaths,{...i},{},A.type,u,a,A.diagramId);if(i.label)await Sf(e.rootGroups,i);if(i.label)tMA(i,n)}let r=A.config?.swimlane?.lineHops;if(r!==!1){let i=r==="gap"?"gap":"arc",u=A.edges.filter((a)=>Array.isArray(a.points)&&a.points.length>=2).map((a)=>({id:a.id,points:a.points,curve:a.curve,arrowTypeStart:a.arrowTypeStart,arrowTypeEnd:a.arrowTypeEnd}));AMA(e.edgePaths,u,{enabled:!0,jumpRadius:6,jumpStyle:i})}}function tMA(A,e){let t=e?.updatedPath??e?.originalPath,r=st(),{subGraphTitleTotalMargin:i}=fC({flowchart:r.flowchart??{}});if(A.label){let u=dy.get(A.id),{x:a,y:n}=A;if(t){let o=Jt.calcLabelPosition(t);if(sA.debug("Moving label "+A.label+" from (",a,",",n,") to (",o.x,",",o.y,") abc88"),e)a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n+i/2})`)}if(A?.startLabelLeft){let u=qa.get(A.id).startLeft,a=A?.x,n=A?.y;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.startLabelRight){let u=qa.get(A.id).startRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelLeft){let u=qa.get(A.id).endLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelRight){let u=qa.get(A.id).endRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}}function PrA(A){return Math.max(A.padding??YUA,YUA)}function rMA(A){let{x:e,y:t,width:r,height:i}=A,u=A.swimlaneContentTop;if(typeof e!=="number"||typeof t!=="number"||typeof r!=="number"||typeof i!=="number"||typeof u!=="number"||!Number.isFinite(e)||!Number.isFinite(t)||!Number.isFinite(r)||!Number.isFinite(i)||!Number.isFinite(u)||r<=0||i<=0){delete A.groupTitleRect;return}let a=t-i/2,n=Math.min(u,t+i/2),o=Math.min(Eht,Math.max(0,n-a)),s=a+o;if(s<=a){delete A.groupTitleRect;return}A.groupTitleRect={left:e-r/2,right:e+r/2,top:a,bottom:s}}function iMA(A){let e=A.direction,t=A.nodes??=[];for(let u of A.nodes??[])if(u.isGroup&&!u.parentId){if(u.shape="swimlane",e)u.direction=e}let r=t.filter((u)=>!u.isGroup&&!u.parentId);if(r.length===0)return;let i=t.find((u)=>u.id===TrA);if(!i)i={id:TrA,label:"",isGroup:!0,shape:"swimlane",padding:20,...e?{direction:e}:{}},t.push(i);else if(i.isGroup){if(i.shape="swimlane",e)i.direction=e}for(let u of r)u.parentId=TrA}function uMA(A){let e=new Map;for(let o of A.nodes??[])e.set(o.id,o);let t=[];for(let o of A.edges??[]){let s=typeof o.start==="string"?o.start:void 0,l=typeof o.end==="string"?o.end:void 0;if(!s||!l)continue;if(o.labelNodeId)continue;t.push({id:o.id,src:s,dst:l,ref:o})}let r=A.nodes??[],i=r.filter((o)=>o.isGroup),u=r.filter((o)=>!o.isGroup);return{nodes:[...[...i].reverse(),...u].map((o)=>o.id),edges:t,layout:A,nodeById:e}}function aMA(A,e,t,r){let{layout:i}=A,u=A.nodeById,a=r?.layerGap??100,n=r?.nodeGap??40,o=0;for(let C of e.layers){let B=0;for(let E of C){let d=u.get(E);if(!d){B++;continue}d.layer=o,d.order=B;let I=t.x[E]??B*n,h=t.y[E]??o*a;d.x=I,d.y=h,B++}o++}let s=i.nodes??[],l=new Map,g=[];for(let C of s){if(!C?.isGroup)continue;if(!C.parentId)g.push(C);let B=s.filter((Q)=>Q.parentId===C.id),E=1/0,d=-1/0,I=1/0,h=-1/0;for(let Q of B){let p=Q.x??t.x[Q.id],m=Q.y??t.y[Q.id],f=Q.width??0,D=Q.height??0;if(p!=null&&m!=null)E=Math.min(E,p-f/2),d=Math.max(d,p+f/2),I=Math.min(I,m-D/2),h=Math.max(h,m+D/2)}if(E===1/0||I===1/0)C.x=C.x??0,C.y=C.y??0,C.width=C.width??0,C.height=C.height??0;else{let Q=C.padding??20,p=C.parentId?Q:2*PrA(C),m=Q,f=Math.max(0,d-E)+p,D=Math.max(0,h-I)+m,w=(E+d)/2,b=(I+h)/2;C.x=w,C.y=b,C.width=f,C.height=D,l.set(C.id,{minX:E,maxX:d,minY:I,maxY:h})}}if(g.length>0&&l.size>0){let C=1/0,B=-1/0,E=0;for(let d of g){let I=d.padding??20;if(I>E)E=I;let h=l.get(d.id);if(!h)continue;C=Math.min(C,h.minY),B=Math.max(B,h.maxY)}if(C!==1/0&&B!==-1/0){let d=Math.max(0,B-C),I=36,h=Math.max(E,36),Q=d+2*h,p=(C+B)/2;for(let F of g)F.y=p,F.height=Q,F.swimlaneContentTop=C;let m=[...g].sort((F,v)=>{let S=F.x??0,x=v.x??0;return S-x}),f=[],D=[],w=[];for(let F of m){let v=l.get(F.id);if(!v)continue;let S=Math.max(0,v.maxX-v.minX)+2*PrA(F),x=(v.minX+v.maxX)/2;f.push(F.id),D.push(x),w.push(S)}let b=f.length;if(b>0){let F=new Map;if(b===1)F.set(f[0],w[0]);else{let v=[];for(let R=0;R<b-1;R++)v.push(D[R+1]-D[R]);let S=Array(b);S[0]=0;for(let R=0;R<b-1;R++)S[R+1]=2*v[R]-S[R];let x=0,k=Number.POSITIVE_INFINITY;for(let R=0;R<b;R++){let L=w[R];if(R%2===0)x=Math.max(x,L-S[R]);else k=Math.min(k,S[R]-L)}let T=x;if(x<=k)T=(x+k)/2;else T=x;for(let R=0;R<b;R++){let L=S[R]+(R%2===0?T:-T),M=Math.max(w[R],L);F.set(f[R],M)}}for(let v of g){let S=F.get(v.id);if(S!=null)v.width=S;rMA(v)}}}}}function nMA(A){let e=[],t=[],r=new Map;for(let a of A.nodes)r.set(a.id,a);for(let a of A.edges){if(!a.label||a.label.length===0)continue;if(a.isLayoutOnly)continue;if(a.labelNodeId)continue;let n=a.start?r.get(a.start):void 0,o=a.end?r.get(a.end):void 0;if(!n||!o){sA.warn(dht,`Edge ${a.id} has missing source or target node`);continue}let s=`edge-label-${a.start}-${a.end}-${a.id}`,g=n.parentId!==o.parentId?o.parentId:n.parentId,C={id:s,label:a.label,edgeStart:a.start??"",edgeEnd:a.end??"",shape:"labelRect",width:0,height:0,isEdgeLabel:!0,isDummy:!0,parentId:g,isGroup:!1,labelStyle:Array.isArray(a.labelStyle)?a.labelStyle[0]:a.labelStyle??"",...n.dir?{dir:n.dir}:{}};e.push(C),a.labelNodeId=s,a.label=void 0,a.text=void 0;let B={id:`${a.id}-to-label`,start:a.start,end:s,type:"normal",isLayoutOnly:!0},E={id:`${a.id}-from-label`,start:s,end:a.end,type:"normal",isLayoutOnly:!0};t.push(B,E)}let i=[...A.nodes,...e],u=[...A.edges,...t];return{...A,nodes:i,edges:u}}function fiA(A){let e=A.x??0,t=A.y??0,r=A.width??0,i=A.height??0;return r>0&&i>0?{cx:e,cy:t,rect:qy(e,t,r,i)}:void 0}function miA(A){if(A.isGroup)return;let e=fiA(A);if(!e)return;return{id:String(A.id??""),cx:e.cx,cy:e.cy,rect:e.rect}}function nc(A,e,t=Lo){return Math.abs(A.x-e.x)<t&&Math.abs(A.y-e.y)<t}function Bi(A,e,t=Lo){return Math.abs(A.x-e.x)<t}function pi(A,e,t=Lo){return Math.abs(A.y-e.y)<t}function Va(A,e,t=Lo){return pi(A,e,t)&&Math.abs(A.x-e.x)>t}function ja(A,e,t=Lo){return Bi(A,e,t)&&Math.abs(A.y-e.y)>t}function Qs(A,e,t,r){return Math.max(0,Math.min(Math.max(A,e),Math.max(t,r))-Math.max(Math.min(A,e),Math.min(t,r)))}function vE(A,e,t=Lo){if(A.horizontal&&e.horizontal&&pi(A.a,e.a,t))return Qs(A.a.x,A.b.x,e.a.x,e.b.x);if(A.vertical&&e.vertical&&Bi(A.a,e.a,t))return Qs(A.a.y,A.b.y,e.a.y,e.b.y);return 0}function zy(A,e=Lo){let t=[];for(let r=0;r<A.length-1;r++){let i=A[r],u=A[r+1],a=Va(i,u,e),n=ja(i,u,e);if(a||n)t.push({index:r,a:i,b:u,horizontal:a,vertical:n})}return t}function cg(A,e=Lo){let t=zy(A,e),r=0;for(let i=1;i<t.length;i++)if(t[i-1].horizontal!==t[i].horizontal)r++;return r}function Ti(A,e=Lo){let t=[];for(let r of A){let i=t.length>0?t[t.length-1]:void 0;if(!i||!nc(i,r,e))t.push({x:r.x,y:r.y})}return t}function DiA(A,e=Lo){if(!A||A.length!==4)return;let[t,r,i,u]=A;if(Va(t,r,e)&&ja(r,i,e)&&Va(i,u,e))return{kind:"HVH",p0:t,p1:r,p2:i,p3:u};return ja(t,r,e)&&Va(r,i,e)&&ja(i,u,e)?{kind:"VHV",p0:t,p1:r,p2:i,p3:u}:void 0}function aT(A,e,t,r=0){let i=Math.min(A.x,e.x),u=Math.max(A.x,e.x),a=Math.min(A.y,e.y),n=Math.max(A.y,e.y);return u>t.left-r&&i<t.right+r&&n>t.top-r&&a<t.bottom+r}function yiA(A,e,t=0){return A.x>e.left+t&&A.x<e.right-t&&A.y>e.top+t&&A.y<e.bottom-t}function oMA(A,e){return A.left<=e.left&&A.right>=e.right&&A.top<=e.top&&A.bottom>=e.bottom}function jM(A,e){return A.left<e.right&&A.right>e.left&&A.top<e.bottom&&A.bottom>e.top}function _rA(A,e){return{left:A.left-e,right:A.right+e,top:A.top-e,bottom:A.bottom+e}}function qy(A,e,t,r){return{left:A-t/2,right:A+t/2,top:e-r/2,bottom:e+r/2}}function El(A){return fiA(A)?.rect}function zf(A,e){switch(e){case"top":return{x:A.cx,y:A.rect.top};case"bottom":return{x:A.cx,y:A.rect.bottom};case"left":return{x:A.rect.left,y:A.cy};case"right":return{x:A.rect.right,y:A.cy}}}function wiA(A,e,t,r,i,u=Lo){let a=e==="left"||e==="right",n=r==="left"||r==="right";if(a&&n){if(e==="right"&&r==="left"&&A.x<t.x||e==="left"&&r==="right"&&A.x>t.x){if(pi(A,t,u))return[A,t];let g=(A.x+t.x)/2;return[A,{x:g,y:A.y},{x:g,y:t.y},t]}if(e===r){if(pi(A,t,u))return;let g=e==="left"?Math.min(A.x,t.x)-i:Math.max(A.x,t.x)+i;return[A,{x:g,y:A.y},{x:g,y:t.y},t]}return}if(!a&&!n){if(e===r){if(Bi(A,t,u))return;let C=e==="top"?Math.min(A.y,t.y)-i:Math.max(A.y,t.y)+i;return[A,{x:A.x,y:C},{x:t.x,y:C},t]}if(!(e==="bottom"&&r==="top"&&A.y<t.y||e==="top"&&r==="bottom"&&A.y>t.y))return;if(Bi(A,t,u))return[A,t];let g=(A.y+t.y)/2;return[A,{x:A.x,y:g},{x:t.x,y:g},t]}if(a&&!n){let l=e==="right"&&t.x>A.x||e==="left"&&t.x<A.x,g=r==="top"&&A.y<t.y||r==="bottom"&&A.y>t.y;return l&&g?[A,{x:t.x,y:A.y},t]:void 0}let o=e==="bottom"&&t.y>A.y||e==="top"&&t.y<A.y,s=r==="left"&&A.x<t.x||r==="right"&&A.x>t.x;return o&&s?[A,{x:A.x,y:t.y},t]:void 0}function biA(A,e,t,r){return e==="left"||e==="right"?[A,{x:r,y:A.y},{x:r,y:t.y},t]:[A,{x:A.x,y:r},{x:t.x,y:r},t]}function nT(A){let e=new Map,t=[];for(let r of A){if(r.isEdgeLabel)continue;let i=miA(r);if(!i)continue;e.set(i.id,i),t.push({id:i.id,rect:i.rect})}return{nodeInfoById:e,realNodeRects:t}}function B4(A){let e=[],t=[];for(let r of A){let i=miA(r);if(!i)continue;let u={id:i.id,rect:i.rect};if(r.isEdgeLabel)t.push(u);else e.push(u)}return{realNodeRects:e,labelNodeRects:t}}function sMA(A,{includeEdgeLabels:e=!0}={}){let t=[];for(let r of A){if(r.isGroup||!e&&r.isEdgeLabel)continue;let i=r.x??0,u=r.y??0,a=r.width??0,n=r.height??0;t.push({nodeId:r.id,...qy(i,u,a,n)})}return t}function viA(A,e,t=Lo){let{start:r,end:i}=A;if(!r||!i)return;let u=e.get(r),a=e.get(i);if(!u||!a)return;return{srcId:r,dstId:i,srcInfo:u,dstInfo:a,collinearX:Math.abs(u.cx-a.cx)<t,collinearY:Math.abs(u.cy-a.cy)<t}}function En(A,e,t,r=[],i=0){for(let u of t){if(r.includes(u.id))continue;if(aT(A,e,u.rect,-i))return!0}return!1}function kiA(A,e,t,r,i=Lo,u=0.000001){let a=pi(A,e,i),n=Bi(A,e,i),o=pi(t,r,i),s=Bi(t,r,i);if(a&&o||n&&s)return!1;if(!(a||n)||!(o||s))return!1;let l=a?{a:A,b:e}:{a:t,b:r},g=n?{a:A,b:e}:{a:t,b:r},C=l.a.y,B=Math.min(l.a.x,l.b.x),E=Math.max(l.a.x,l.b.x),d=g.a.x,I=Math.min(g.a.y,g.b.y),h=Math.max(g.a.y,g.b.y);if(d<B||d>E||C<I||C>h)return!1;let Q=Math.abs(d-l.a.x)<u&&Math.abs(C-l.a.y)<u||Math.abs(d-l.b.x)<u&&Math.abs(C-l.b.y)<u,p=Math.abs(d-g.a.x)<u&&Math.abs(C-g.a.y)<u||Math.abs(d-g.b.x)<u&&Math.abs(C-g.b.y)<u;return!(Q&&p)}function lMA(A,e,t,r,i=Lo){let u=pi(A,e,i),a=Bi(A,e,i),n=pi(t,r,i),o=Bi(t,r,i);if(a&&o&&Bi(A,t,i))return Qs(A.y,e.y,t.y,r.y)>i;if(u&&n&&pi(A,t,i))return Qs(A.x,e.x,t.x,r.x)>i;return!1}function XM(A,e,t,r,{epsilon:i=Lo,skipDegenerateOther:u=!1}={}){for(let a of t){if(a===r||a.isLayoutOnly)continue;let n=a.points;if(!n||n.length<2)continue;for(let o=0;o<n.length-1;o++){let s=n[o],l=n[o+1];if(u&&nc(s,l,i))continue;if(kiA(A,e,s,l,i)||lMA(A,e,s,l,i))return!0}}return!1}function LI(A,e,t,r,i=Lo){let u=pi(A,e,i),a=Bi(A,e,i),n=pi(t,r,i),o=Bi(t,r,i);if(!(u&&o||a&&n))return!1;let s=u?{a:A,b:e}:{a:t,b:r},l=u?{a:t,b:r}:{a:A,b:e},g=s.a.y,C=Math.min(s.a.x,s.b.x),B=Math.max(s.a.x,s.b.x),E=l.a.x,d=Math.min(l.a.y,l.b.y),I=Math.max(l.a.y,l.b.y);return E>C+i&&E<B-i&&g>d+i&&g<I-i}function WrA(A,e,t){let r=Math.min(e,t),i=Math.max(e,t);return A>r+Lo&&A<i-Lo}function gMA(A,e,t){if(Bi(A,e)&&Bi(e,t))return WrA(e.y,A.y,t.y);if(pi(A,e)&&pi(e,t))return WrA(e.x,A.x,t.x);return!1}function cMA(A){let e=!1,t=[];for(let r=0;r<A.length;r++){let i=t[t.length-1],u=A[r],a=r+1<A.length?A[r+1]:void 0;if(i&&a){if(nc(i,a)){r++,e=!0;continue}if(gMA(i,u,a)){e=!0;continue}}t.push(u)}return{points:t,changed:e}}function $M(A){let e=[A[0]];for(let r=1;r<A.length;r++){let i=e[e.length-1],u=A[r];if(!Bi(i,u)&&!pi(i,u)){let a=e.length>=2?e[e.length-2]:void 0,o=(a?Bi(a,i):!1)?{x:i.x,y:u.y}:{x:u.x,y:i.y};e.push(o)}e.push(u)}let t=[];for(let r of e){let i=t[t.length-1];if(!i||!nc(i,r))t.push(r)}return t}function kE(A){if(A.length<3)return A;let e=[...A];for(let t=0;t<32;t++){let r=cMA(e);if(e=r.points,!r.changed)break}return e}function FiA(A,e,t){let r=A;if(r.isLayoutOnly||!r.points||r.points.length<t)return;let i=r.start?e.get(r.start):void 0,u=r.end?e.get(r.end):void 0;return{edge:r,points:r.points,srcRect:i?El(i):void 0,dstRect:u?El(u):void 0}}function CMA(A,e,t){if(pi(A,e,yr))return{x:A.x<t.left?t.left:t.right,y:A.y};if(Bi(A,e,yr)){let r=A.y<t.top?t.top:t.bottom;return{x:A.x,y:r}}return{x:Math.min(t.right,Math.max(t.left,A.x)),y:Math.min(t.bottom,Math.max(t.top,A.y))}}function qrA(A,e,t){let r=t?1:-1,i=t?0:A.length-1;while(i>=0&&i<A.length&&yiA(A[i],e,Iht))i+=r;if(i<0||i>=A.length)return A;let u=i-r;if(u<0||u>=A.length)return A;let a=CMA(A[i],A[u],e);return t?[a,...A.slice(i)]:[...A.slice(0,i+1),a]}function BMA(A,e){for(let t of A){let r=FiA(t,e,2);if(!r)continue;let i=[...r.points];if(r.srcRect)i=qrA(i,r.srcRect,!0);if(r.dstRect)i=qrA(i,r.dstRect,!1);i=kE($M(i)),i=xiA(i,r.srcRect,r.dstRect),r.edge.points=kE($M(i))}}function zrA(A,e,t,r=!1){if(pi(A,e,yr)){if(e.y<t.top-yr||e.y>t.bottom+yr)return e;if(r){if(A.x<t.left-yr)return{x:t.left,y:A.y};if(A.x>t.right+yr)return{x:t.right,y:A.y}}return{x:Math.abs(e.x-t.left)<=Math.abs(e.x-t.right)?t.left:t.right,y:A.y}}if(Bi(A,e,yr)){if(e.x<t.left-yr||e.x>t.right+yr)return e;if(r){if(A.y<t.top-yr)return{x:A.x,y:t.top};if(A.y>t.bottom+yr)return{x:A.x,y:t.bottom}}let i=Math.abs(e.y-t.top)<=Math.abs(e.y-t.bottom);return{x:A.x,y:i?t.top:t.bottom}}return e}function AT(A,e,t){let r=A[e];for(let i=e+t;i>=0&&i<A.length;i+=t){let u=A[i];if(!nc(u,r,yr))return u}return A[e+t]}function eT(A,e){let t=A+HUA,r=e-HUA;return t<=r?{lo:t,hi:r}:{lo:(A+e)/2,hi:(A+e)/2}}function ZrA(A,e,t){let{lo:r,hi:i}=eT(e,t);return Math.min(i,Math.max(r,A))}function EMA(A){let e=Math.max(...A.map((r)=>r.lo)),t=Math.min(...A.map((r)=>r.hi));if(e>t)return;return{lo:e,hi:t}}function VrA(A,e){return e==="left"||e==="right"?eT(A.top,A.bottom):eT(A.left,A.right)}function tT(A,e,t){let r=A.y>=t.top-yr&&A.y<=t.bottom+yr,i=A.x>=t.left-yr&&A.x<=t.right+yr;if(pi(A,e,yr)&&r){if(Math.abs(A.x-t.left)<yr)return"left";if(Math.abs(A.x-t.right)<yr)return"right"}if(Bi(A,e,yr)&&i){if(Math.abs(A.y-t.top)<yr)return"top";if(Math.abs(A.y-t.bottom)<yr)return"bottom"}return}function yk(A){return A==="left"||A==="right"}function dMA(A,e,t,r,i){let u=[],a=t?tT(A,e,t):void 0,n=r?tT(e,A,r):void 0;if(t&&a&&yk(a)===i)u.push(VrA(t,a));if(r&&n&&yk(n)===i)u.push(VrA(r,n));return u.length>0?EMA(u):void 0}function jrA(A,e,t,r,i){let u=dMA(A,e,t,r,i);if(!u)return;let a=i?A.y:A.x,n=Math.min(u.hi,Math.max(u.lo,a));if(Math.abs(n-a)<yr)return;return i?[{x:A.x,y:n},{x:e.x,y:n}]:[{x:n,y:A.y},{x:n,y:e.y}]}function xiA(A,e,t){if(A.length!==2)return A;let[r,i]=A;if(pi(r,i,yr))return jrA(r,i,e,t,!0)??A;if(Bi(r,i,yr))return jrA(r,i,e,t,!1)??A;return A}function IMA(A,e,t){return yk(t)?{x:A.x,y:ZrA(A.y,e.top,e.bottom)}:{x:ZrA(A.x,e.left,e.right),y:A.y}}function hMA(A,e,t,r,i,u){let a=A.map((n)=>({...n}));for(let n=e;n>=0&&n<A.length;n+=t){let o=A[n];if(u&&!pi(o,r,yr))break;if(!u&&!Bi(o,r,yr))break;if(u)a[n].y=i.y;else a[n].x=i.x}return a}function XrA(A,e,t){if(A.length<2)return A;let r=t?0:A.length-1,i=t?1:-1,u=A[r],a=AT(A,r,i);if(!a)return A;let n=tT(u,a,e);if(!n)return A;let o=yk(n),s=IMA(u,e,n);if(nc(u,s,yr))return A;return hMA(A,r,i,u,s,o)}function $rA(A,e,t){let r=Math.min(A.x,e.x)>=t.left-yr&&Math.max(A.x,e.x)<=t.right+yr,i=Math.min(A.y,e.y)>=t.top-yr&&Math.max(A.y,e.y)<=t.bottom+yr;if(Math.abs(A.y-t.top)<yr&&Math.abs(e.y-t.top)<yr&&r)return"top";if(Math.abs(A.y-t.bottom)<yr&&Math.abs(e.y-t.bottom)<yr&&r)return"bottom";if(Math.abs(A.x-t.left)<yr&&Math.abs(e.x-t.left)<yr&&i)return"left";if(Math.abs(A.x-t.right)<yr&&Math.abs(e.x-t.right)<yr&&i)return"right";return}function AiA(A,e,t,r){switch(A){case"top":return Bi(e,t,yr)&&t.y<r.top-yr;case"bottom":return Bi(e,t,yr)&&t.y>r.bottom+yr;case"left":return pi(e,t,yr)&&t.x<r.left-yr;case"right":return pi(e,t,yr)&&t.x>r.right+yr}}function eiA(A,e,t){if(A.length<3)return A;if(t){let u=$rA(A[0],A[1],e);if(u&&AiA(u,A[1],A[2],e))return A.slice(1);return A}let r=A.length-1,i=$rA(A[r-1],A[r],e);if(i&&AiA(i,A[r-1],A[r-2],e))return A.slice(0,r);return A}function QMA(A,e,t){let r=A;if(e){let u=AT(r,0,1);if(u){let a=zrA(u,r[0],e);if(a!==r[0])r=[a,...r.slice(1)]}r=eiA(r,e,!0)}if(t){let u=r.length-1,a=AT(r,u,-1);if(a){let n=zrA(a,r[u],t,!0);if(n!==r[u])r=[...r.slice(0,u),n]}r=eiA(r,t,!1)}let i=xiA(r,e,t);if(i!==r||r.length===2)return i;if(e)r=XrA(r,e,!0);if(t)r=XrA(r,t,!1);return r}function tiA(A,e){for(let t of A){let r=FiA(t,e,2);if(!r)continue;let i=Ti(r.points,yr),u=QMA(i,r.srcRect,r.dstRect);if(u.length<3){r.edge.points=u;continue}let a=[u[0],{...u[0]},...u.slice(1,-1),u[u.length-1],{...u[u.length-1]}];r.edge.points=a}}function SiA(A){return new Map(A.map((e)=>[e.id,e]))}function pMA(A,e){let t=A.parentId,r=null;while(t){let i=e.get(t);if(!i?.isGroup)break;r=i.id,t=i.parentId}return r}function riA(A,e){let t=0,r=A.parentId;while(r){let i=e.get(r);if(!i?.isGroup)break;t++,r=i.parentId}return t}function LiA(A){let e=1/0,t=-1/0,r=1/0,i=-1/0;for(let u of A){let{x:a,y:n}=u;if(typeof a!=="number"||typeof n!=="number")continue;let o=u.width??0,s=u.height??0;e=Math.min(e,a-o/2),t=Math.max(t,a+o/2),r=Math.min(r,n-s/2),i=Math.max(i,n+s/2)}if(e===1/0||r===1/0)return null;return{minX:e,maxX:t,minY:r,maxY:i}}function fMA(A,e){let t=A.padding??20;A.x=(e.minX+e.maxX)/2,A.y=(e.minY+e.maxY)/2,A.width=Math.max(0,e.maxX-e.minX)+t,A.height=Math.max(0,e.maxY-e.minY)+t}function mMA(A){let e=SiA(A),t=A.filter((r)=>r.isGroup&&r.parentId).sort((r,i)=>riA(i,e)-riA(r,e));for(let r of t){let i=A.filter((a)=>a.parentId===r.id),u=LiA(i);if(u)fMA(r,u)}}function rT(A,e){let t=A.nodes??[],r=A.edges??[],i=t.filter((o)=>!o.isGroup),u=1/0,a=-1/0;for(let o of i){let s=o[e];if(typeof s!=="number")continue;u=Math.min(u,s),a=Math.max(a,s)}if(!Number.isFinite(u)||!Number.isFinite(a))return!1;let n=y((o)=>u+a-o,"mirror");for(let o of t){let s=o[e];if(typeof s==="number")o[e]=n(s);let l=o.groupTitleRect;if(l)o.groupTitleRect=e==="x"?{...l,left:n(l.right),right:n(l.left)}:{...l,top:n(l.bottom),bottom:n(l.top)}}for(let o of r)for(let s of o.points??[])s[e]=n(s[e]);return!0}function DMA(A){if(!(A.nodes??[]).some((t)=>!t.isGroup))return!0;return rT(A,"y")}function yMA(A,e="LR"){let t=A.nodes??[],r=A.edges??[],i=t.filter((k)=>!k.isGroup),u=1/0,a=1/0;for(let k of i){let T=k.x??0,R=k.y??0;if(T<u)u=T;if(R<a)a=R}if(!Number.isFinite(u)||!Number.isFinite(a))return!1;let n=36,o=0,s=0;for(let k of i)o+=k.width??0,s+=k.height??0;let l=o/i.length,g=s/i.length,C=g>0?Math.max(1,l/g):1;for(let k of i){let T=k.x??0,L=((k.y??0)-a)*C+n,M=T-u;k.x=L,k.y=M}for(let k of r){if(!k.points)continue;for(let T of k.points){let R=T.x,M=(T.y-a)*C+n,U=R-u;T.x=M,T.y=U}}mMA(t);let B=t.filter((k)=>k.isGroup&&!k.parentId);if(B.length===0){if(e==="RL")rT(A,"x");return!0}let E=SiA(t),d=new Map;for(let k of t){if(k.isGroup)continue;let T=pMA(k,E);if(!T)continue;let R=d.get(T)??[];R.push(k),d.set(T,R)}let I=0;for(let k of B){let T=k.padding??0;if(T>I)I=T}let h=[],Q=1/0,p=-1/0;for(let k of B){let T=d.get(k.id)??[],R=LiA(T);if(!R)continue;Q=Math.min(Q,R.minX),p=Math.max(p,R.maxX),h.push({lane:k,contentTop:R.minY,contentBottom:R.maxY,centerY:(R.minY+R.maxY)/2})}if(Q===1/0||p===-1/0)return!0;let m=Math.max(0,p-Q),f=Math.max(I,10),D=m+2*f,w=n+D,v=(Q+p)/2-D/2-n,S=v+w/2,x=Math.max(I,n);h.sort((k,T)=>k.centerY-T.centerY);for(let k=0;k<h.length;k++){let T=h[k],R,L;if(k===0)R=T.contentTop-x;else R=(h[k-1].contentBottom+T.contentTop)/2;if(k===h.length-1)L=T.contentBottom+x;else{let Y=h[k+1];L=(T.contentBottom+Y.contentTop)/2}let M=Math.max(0,L-R),U=(R+L)/2;T.lane.x=S,T.lane.y=U,T.lane.width=w,T.lane.height=M,T.lane.swimlaneContentTop=T.contentTop,T.lane.groupTitleRect={left:v,right:v+n,top:R,bottom:L}}if(e==="RL")rT(A,"x");return!0}function wMA(A,e){let{nodeInfoById:t,realNodeRects:r}=nT(e);for(let i of A){if(i.isLayoutOnly)continue;let u=i.points;if(!u||u.length<4)continue;let a=DiA(Ti(u,vC),vC);if(!a)continue;let{p3:n}=a,o=a.kind==="HVH",s=viA(i,t,vC);if(!s)continue;let{srcId:l,dstId:g,srcInfo:C,dstInfo:B,collinearX:E,collinearY:d}=s;if(E||d)continue;let I,h=C.rect;for(let Q of Qht){let p,m,f;if(o){let S=B.cy>C.cy?h.bottom:h.top,x=C.cx+Q;if(x<=h.left+vC||x>=h.right-vC)continue;p={x,y:S},m={x,y:n.y},f={x:n.x,y:n.y}}else{let S=B.cx>C.cx?h.right:h.left,x=C.cy+Q;if(x<=h.top+vC||x>=h.bottom-vC)continue;p={x:S,y:x},m={x:n.x,y:x},f={x:n.x,y:n.y}}let D=nc(p,m,vC),w=nc(m,f,vC);if(D&&w)continue;if(!D&&En(p,m,r,[l],1))continue;if(!w&&En(m,f,r,[g],1))continue;let b=!D&&XM(p,m,A,i,{epsilon:vC,skipDegenerateOther:!0}),F=!w&&XM(m,f,A,i,{epsilon:vC,skipDegenerateOther:!0});if(b||F)continue;if(D)I=[m,f];else if(w)I=[p,m];else I=[p,m,f];break}if(I)i.points=I}}function bMA(A,e){let{realNodeRects:u,labelNodeRects:a}=B4(e.values());for(let n of A){if(n.isLayoutOnly)continue;let o=n.points;if(!o||o.length<4)continue;let s=Ti(o,0.001);if(s.length<4)continue;let l=s.length-1,g=s[l],C=s[l-1],B=s[l-2],E=g.x-C.x,d=g.y-C.y,I=Math.hypot(E,d);if(I>=10||I<0.001)continue;let h=C.x-B.x,Q=C.y-B.y;if(Math.hypot(h,Q)<0.001)continue;let m=Va(C,g,0.001),f=ja(C,g,0.001),D=Va(B,C,0.001),w=ja(B,C,0.001);if(!(m&&w||f&&D))continue;let{end:b,start:F}=n,v=b?e.get(b):void 0;if(!v)continue;let S=v.x??0,x=v.y??0,k=El(v);if(!k)continue;let T,R;if(w){let K=Q<0;T={x:S,y:B.y},R={x:S,y:K?k.bottom:k.top}}else{let K=h>0;T={x:B.x,y:x},R={x:K?k.right:k.left,y:x}}if(En(T,R,u,b?[b]:[],-2))continue;if(En(T,R,a,[],-2))continue;if(F){let K=e.get(F),O=K?El(K):void 0;if(O&&yiA(T,O,2))continue}let L=y((K,O)=>`${K.x.toFixed(3)},${K.y.toFixed(3)}|${O.x.toFixed(3)},${O.y.toFixed(3)}`,"ownSegmentKey"),M=new Set;for(let K=0;K<s.length-1;K++)M.add(L(s[K],s[K+1]));let U=y((K,O)=>{for(let _ of A){if(_===n)continue;if(_.isLayoutOnly)continue;let z=_.points;if(!z||z.length<2)continue;for(let j=0;j<z.length-1;j++){let q=z[j],CA=z[j+1];if(M.has(L(q,CA)))continue;if(LI(K,O,q,CA,0.001))return!0}}return!1},"segmentCrossesOtherEdge");if(U(T,R))continue;if(l-3>=0){let K=s[l-3],O=[F,b].filter((_)=>Boolean(_));if(En(K,T,u,O,-2))continue;if(U(K,T))continue}let H=[...s.slice(0,l-2),T,R];n.points=H;let J=n.labelNodeId;if(J){let K=e.get(J);if(K){let O=K.width??0,_=K.height??0;if(O>0&&_>0){let z,j,q=-1;for(let CA=0;CA<H.length-1;CA++){let tA=H[CA],lA=H[CA+1],gA=Math.hypot(lA.x-tA.x,lA.y-tA.y),aA=pi(tA,lA,0.001),RA=Bi(tA,lA,0.001);if(!(aA&&gA>=O+2||RA&&gA>=_+2))continue;if(gA>q)q=gA,z=(tA.x+lA.x)/2,j=(tA.y+lA.y)/2}if(z!==void 0&&j!==void 0)K.x=z,K.y=j}}}}}function vMA(A,e){let i=y((B,E)=>{let d=B.x??0,I=B.y??0,h=E.x-d,Q=E.y-I,p=(B.width??0)/2,m=(B.height??0)/2;if(Math.abs(Q)*p>Math.abs(h)*m){if(Q<0)m=-m;return{x:d+(Q===0?0:m*h/Q),y:I+m}}if(h<0)p=-p;return{x:d+p,y:I+(h===0?0:p*Q/h)}},"rectIntersect"),u=y((B,E)=>{let d=Ti(B.points??[]);if(d.length<2)return;let I=E?B.start:B.end,h=I?e.get(I):void 0,Q=h?El(h):void 0;if(!h||!I||!Q)return;let p=E?d[0]:d[d.length-1],m=E?d[1]:d[d.length-2],f=i(h,p),D=p;if(YrA(m,f))D=m;if(Bi(f,D,Ot))return{edge:B,edgeId:String(B.id??""),nodeId:I,atStart:E,orientation:"V",coord:f.x,min:Math.min(f.y,D.y),max:Math.max(f.y,D.y),boundary:f,railEnd:D,rect:Q};if(pi(f,D,Ot))return{edge:B,edgeId:String(B.id??""),nodeId:I,atStart:E,orientation:"H",coord:f.y,min:Math.min(f.x,D.x),max:Math.max(f.x,D.x),boundary:f,railEnd:D,rect:Q};return},"terminalLaneFor"),a=y((B,E)=>Math.max(0,Math.min(B.max,E.max)-Math.max(B.min,E.min)),"projectedOverlapLength"),n=y((B,E)=>{if(B.nodeId!==E.nodeId||B.orientation!==E.orientation)return!1;if(B.orientation==="H")return(Math.abs(B.boundary.x-B.rect.left)<1||Math.abs(B.boundary.x-B.rect.right)<1)&&Bi(B.boundary,E.boundary,1);return(Math.abs(B.boundary.y-B.rect.top)<1||Math.abs(B.boundary.y-B.rect.bottom)<1)&&pi(B.boundary,E.boundary,1)},"sameTerminalFace"),o=y((B,E)=>{if(B.nodeId!==E.nodeId||B.orientation!==E.orientation)return!1;return a(B,E)>=So&&Math.abs(B.coord-E.coord)<0.5},"exactTerminalLaneConflict"),s=y((B,E)=>{if(B.nodeId!==E.nodeId||B.orientation!==E.orientation||B.orientation!=="H"||B.atStart===E.atStart)return!1;let d=a(B,E);if(d<So)return!1;let I=B.rect.bottom-B.rect.top;if(d<I||d>2*I)return!1;return n(B,E)&&Math.abs(B.coord-E.coord)<16},"nearTerminalLaneConflict"),l=y((B,E)=>{let d=Ti(B.edge.points??[]);if(d.length<2)return;let I=B.orientation==="V"?{x:B.boundary.x+E,y:B.boundary.y}:{x:B.boundary.x,y:B.boundary.y+E},h=B.orientation==="V"?{x:B.railEnd.x+E,y:B.railEnd.y}:{x:B.railEnd.x,y:B.railEnd.y+E};if(!y(()=>{if(Math.abs(B.boundary.y-B.rect.top)<1||Math.abs(B.boundary.y-B.rect.bottom)<1)return pi(I,B.boundary,Ot)&&I.x>=B.rect.left+1&&I.x<=B.rect.right-1;if(Math.abs(B.boundary.x-B.rect.left)<1||Math.abs(B.boundary.x-B.rect.right)<1)return Bi(I,B.boundary,Ot)&&I.y>=B.rect.top+1&&I.y<=B.rect.bottom-1;return!1},"boundaryStaysOnSameFace")())return;if(B.atStart){let D=d.length>1&&nc(d[1],B.railEnd,Ot),w=d.slice(D?2:1),b=w[0];if(b&&!YrA(b,h))return;return[I,h,...w]}let p=d.length>1&&nc(d[d.length-2],B.railEnd,Ot),m=d.slice(0,p?-2:-1),f=m[m.length-1];if(f&&!YrA(f,h))return;return[...m,h,I]},"shiftedCandidate"),g=y((B)=>{let E=B.edge,d=Ti(E.points??[]);if(d.length!==2)return!1;let{start:I,end:h}=E,Q=I?e.get(I):void 0,p=h?e.get(h):void 0;if(!Q||!p)return!1;let m=Q.x??0,f=Q.y??0,D=p.x??0,w=p.y??0,[b,F]=d;return pi(b,F,Ot)&&Math.abs(f-w)<1&&Math.abs(m-D)>1||Bi(b,F,Ot)&&Math.abs(m-D)<1&&Math.abs(f-w)>1},"laneIsStraightCollinearConnector"),C=[-7,7,-14,14,-21,21];for(let B=0;B<8;B++){let E=A.filter((I)=>!I.isLayoutOnly).flatMap((I)=>[u(I,!0),u(I,!1)]).filter((I)=>Boolean(I)),d=!1;for(let I=0;I<E.length&&!d;I++)for(let h=I+1;h<E.length&&!d;h++){let Q=E[I],p=E[h];if(Q.edge===p.edge||!(o(Q,p)||s(Q,p)))continue;let m=!o(Q,p),f=[Q,p].sort((D,w)=>{let b=g(D),F=g(w);if(b!==F)return Number(b)-Number(F);return Number(!w.atStart)-Number(!D.atStart)});for(let D of f){for(let w of C){let b=l(D,w);if(!b)continue;let F=u({...D.edge,points:b},D.atStart);if(!F||E.some((v)=>v.edge!==D.edge&&(o(F,v)||m&&s(F,v))))continue;D.edge.points=b,d=!0;break}if(d)break}}if(!d)return}}function kMA(A,e){let{realNodeRects:i,labelNodeRects:u}=B4(e.values()),a=y((o,s)=>{let{start:l,end:g}=o,C=ti(s);if(C.length!==s.length-1)return!1;let B=[l,g].filter((E)=>Boolean(E));for(let E of C){if(En(E.a,E.b,i,B,-2))return!1;if(En(E.a,E.b,u,[],-2))return!1}for(let E of A){if(E===o||E.isLayoutOnly)continue;let d=E.points;if(!d||d.length<2)continue;for(let I of C)for(let h of ti(Ti(d))){if(vE(I,h,0.5)>=So)return!1;if(LI(I.a,I.b,h.a,h.b,Ot))return!1}}return!0},"candidateIsSafe"),n=y((o,s)=>{if(s+4>=o.length)return;let l=o[s],g=o[s+1],C=o[s+2],B=o[s+3],E=o[s+4],d=Va(l,g)&&ja(g,C)&&Va(C,B)&&ja(B,E)&&Bi(l,B,Ot)&&Bi(l,E,Ot)&&Bi(g,C,Ot)&&(g.x-l.x)*(B.x-C.x)<0,I=ja(l,g)&&Va(g,C)&&ja(C,B)&&Va(B,E)&&pi(l,B,Ot)&&pi(l,E,Ot)&&pi(g,C,Ot)&&(g.y-l.y)*(B.y-C.y)<0;if(d||I)return Ti([...o.slice(0,s+1),E,...o.slice(s+5)]);if(s+5>=o.length)return;let h=o[s+5],Q=ja(l,g)&&Va(g,C)&&ja(C,B)&&Va(B,E)&&ja(E,h)&&Bi(l,E,Ot)&&Bi(l,h,Ot)&&Bi(C,B,Ot)&&(C.x-g.x)*(E.x-B.x)<0,p=Va(l,g)&&ja(g,C)&&Va(C,B)&&ja(B,E)&&Va(E,h)&&pi(l,E,Ot)&&pi(l,h,Ot)&&pi(C,B,Ot)&&(C.y-g.y)*(E.y-B.y)<0;if(!Q&&!p)return;return Ti([...o.slice(0,s+1),h,...o.slice(s+6)])},"withoutDogleg");for(let o=0;o<8;o++){let s=!1;for(let l of A){if(l.isLayoutOnly)continue;let g=Ti(l.points??[]);for(let C=0;C<=g.length-5;C++){let B=n(g,C);if(!B||!a(l,B))continue;l.points=B,s=!0;break}if(s)break}if(!s)return}}function iiA(A,e){let{realNodeRects:u,labelNodeRects:a}=B4(e.values()),n=A.filter((E)=>!E.isLayoutOnly),o=y((E,d,I)=>Ti(E===d?I??[]:E.points??[]),"pointsFor"),s=y((E,d)=>{let I=0;for(let h=0;h<n.length;h++){let Q=ti(o(n[h],E,d));for(let p=h+1;p<n.length;p++){let m=ti(o(n[p],E,d));for(let f of Q)for(let D of m)if(LI(f.a,f.b,D.a,D.b,Ot))I++}}return I},"strictCrossingCount"),l=y((E)=>{let d=ti(E);if(d.length!==3)return;let I=d[1];if(d[0].horizontal===I.horizontal||d[2].horizontal===I.horizontal)return;return{index:I.index,horizontal:I.horizontal,vertical:I.vertical,segment:I}},"middleRail"),g=y((E,d)=>{let I=[E.start,E.end].filter((h)=>Boolean(h));return u.filter((h)=>{if(I.includes(h.id))return!1;let Q=h.rect;if(d.horizontal)return Qs(d.a.x,d.b.x,Q.left,Q.right)>=So&&d.a.y>=Q.top-2&&d.a.y<=Q.bottom+2;return Qs(d.a.y,d.b.y,Q.top,Q.bottom)>=So&&d.a.x>=Q.left-2&&d.a.x<=Q.right+2})},"blockingRectsFor"),C=y((E,d,I)=>{let h=E.map((p)=>({...p}));if(d.horizontal)h[d.index].y=I,h[d.index+1].y=I;else if(d.vertical)h[d.index].x=I,h[d.index+1].x=I;else return;let Q=kE(Ti(h));return ti(Q).length===Q.length-1?Q:void 0},"candidateByMovingRail"),B=y((E,d,I)=>{let h=[E.start,E.end].filter((p)=>Boolean(p)),Q=ti(d);if(Q.length!==d.length-1)return!1;for(let p of Q){if(En(p.a,p.b,u,h,-2))return!1;if(En(p.a,p.b,a,[],-2))return!1}for(let p of n){if(p===E)continue;for(let m of Q)for(let f of ti(o(p)))if(vE(m,f,0.5)>=So)return!1}return s(E,d)<=I},"candidateIsSafe");for(let E=0;E<8;E++){let d=s(),I=!1;for(let h of n){let Q=o(h),p=l(Q);if(!p)continue;let m=g(h,p.segment);if(m.length===0)continue;let f=p.horizontal?[Math.min(...m.map((D)=>D.rect.top))-20,Math.max(...m.map((D)=>D.rect.bottom))+20]:[Math.min(...m.map((D)=>D.rect.left))-20,Math.max(...m.map((D)=>D.rect.right))+20];for(let D of f){let w=C(Q,p.segment,D);if(!w||!B(h,w,d))continue;h.points=w,I=!0;break}if(I)break}if(!I)return}}function uiA(A,e){let r=y((o)=>{let s=o.groupTitleRect;if(!s||typeof s.left!=="number"||typeof s.right!=="number"||typeof s.top!=="number"||typeof s.bottom!=="number"||!Number.isFinite(s.left)||!Number.isFinite(s.right)||!Number.isFinite(s.top)||!Number.isFinite(s.bottom)||s.right<=s.left||s.bottom<=s.top)return;return{left:s.left,right:s.right,top:s.top,bottom:s.bottom}},"validTitleRect"),i=y((o)=>{if(!o.isGroup||o.parentId)return;let s=o.direction,l=typeof s==="string"?s.toUpperCase():"";if(l==="LR"||l==="RL"||l==="BT")return;let g=r(o),{y:C,height:B}=o;if(!g||typeof C!=="number"||typeof B!=="number"||!Number.isFinite(C)||!Number.isFinite(B)||B<=0)return;let E=g.right-g.left,d=g.bottom-g.top;if(d<=0||E<d)return;return{node:o,rect:g}},"topLaneTitleFor"),u=y((o,s)=>{if(!o.horizontal)return!1;let l=o.a.y;if(l<=s.top+Ot||l>=s.bottom-Ot)return!1;return Qs(o.a.x,o.b.x,s.left,s.right)>=So},"horizontalSegmentIntersectsTitle"),a=[...e.values()].map(i).filter((o)=>Boolean(o));if(a.length===0)return;let n=0;for(let o of A){if(o.isLayoutOnly)continue;let s=Ti(o.points??[]);for(let l of ti(s))for(let g of a){if(!u(l,g.rect))continue;n=Math.max(n,g.rect.bottom-l.a.y+4)}}if(n<=Ot)return;for(let o of a){let s=o.node.y,l=o.node.height;if(typeof s!=="number"||typeof l!=="number"||!Number.isFinite(s)||!Number.isFinite(l)||l<=0)continue;o.node.y=s-n/2,o.node.height=l+n,o.node.groupTitleRect={...o.rect,top:o.rect.top-n,bottom:o.rect.bottom-n}}}function aiA(A,e){let r=y((s)=>{let l=s.groupTitleRect;if(!l||typeof l.left!=="number"||typeof l.right!=="number"||typeof l.top!=="number"||typeof l.bottom!=="number"||!Number.isFinite(l.left)||!Number.isFinite(l.right)||!Number.isFinite(l.top)||!Number.isFinite(l.bottom)||l.right<=l.left||l.bottom<=l.top)return;return{left:l.left,right:l.right,top:l.top,bottom:l.bottom}},"validTitleRect"),i=y((s)=>{if(!s.isGroup||s.parentId)return;if(s.direction!=="LR")return;let g=r(s),{x:C,width:B}=s;if(!g||typeof C!=="number"||typeof B!=="number"||!Number.isFinite(C)||!Number.isFinite(B)||B<=0)return;let E=g.right-g.left,d=g.bottom-g.top;if(E<=0||d<E)return;return{node:s,rect:g}},"leftLaneTitleFor"),u=y((s,l)=>{if(!s.vertical)return!1;let g=s.a.x;if(g<=l.left+Ot||g>=l.right-Ot)return!1;return Qs(s.a.y,s.b.y,l.top,l.bottom)>=So},"verticalSegmentIntersectsTitle"),a=y((s,l)=>{if(!s.horizontal)return!1;let g=s.a.y;if(g<=l.top+Ot||g>=l.bottom-Ot)return!1;return Qs(s.a.x,s.b.x,l.left,l.right)>=So},"horizontalSegmentIntersectsTitle"),n=[...e.values()].map(i).filter((s)=>Boolean(s));if(n.length===0)return;let o=0;for(let s of A){if(s.isLayoutOnly)continue;let l=Ti(s.points??[]);for(let g of ti(l))for(let C of n)if(u(g,C.rect))o=Math.max(o,C.rect.right-g.a.x+4);else if(a(g,C.rect)){let B=Math.min(g.a.x,g.b.x);o=Math.max(o,C.rect.right-B+4)}}if(o<=Ot)return;for(let s of n){let l=s.node.x,g=s.node.width;if(typeof l!=="number"||typeof g!=="number"||!Number.isFinite(l)||!Number.isFinite(g)||g<=0)continue;s.node.x=l-o/2,s.node.width=g+o,s.node.groupTitleRect={...s.rect,left:s.rect.left-o,right:s.rect.right-o}}}function FMA(A,e){let{realNodeRects:i}=B4(e.values()),u=A.filter((d)=>!d.isLayoutOnly),a=y((d,I=new Map)=>Ti(I.get(d)??d.points??[]),"replacementPointsFor"),n=y((d=new Map)=>{let I=0;for(let h=0;h<u.length;h++){let Q=ti(a(u[h],d));for(let p=h+1;p<u.length;p++){let m=ti(a(u[p],d));for(let f of Q)for(let D of m)if(LI(f.a,f.b,D.a,D.b,Ot))I++}}return I},"crossingCount"),o=y((d=new Map)=>u.reduce((I,h)=>I+cg(a(h,d)),0),"totalBends"),s=y((d)=>{let I=a(d);if(I.length<4)return;let h=I[I.length-2],Q=I[I.length-1];if(!Va(h,Q,Ot)&&!ja(h,Q,Ot))return;return{tailStart:h,terminal:Q}},"terminalTailFor"),l=y((d,I)=>{let h=a(d);if(h.length<3)return;let Q=h[0],p=h[1],m;if(Va(Q,p,Ot))m={x:p.x,y:I.tailStart.y};else if(ja(Q,p,Ot))m={x:I.tailStart.x,y:p.y};else return;let f=kE(Ti([Q,p,m,I.tailStart,I.terminal]));return ti(f).length===f.length-1?f:void 0},"candidateWithDestinationTail"),g=y((d,I)=>{let h=[d.start,d.end].filter((Q)=>Boolean(Q));for(let Q of ti(I))if(En(Q.a,Q.b,i,h,-2))return!0;return!1},"pathHasNodeHit"),C=y((d,I,h)=>{for(let Q of u){if(Q===d)continue;for(let p of ti(I))for(let m of ti(a(Q,h)))if(vE(p,m,0.5)>=So)return!0}return!1},"pathHasSharedTrack"),B=y((d,I,h)=>!g(d,I)&&!C(d,I,h),"candidateIsSafe"),E=y(()=>{let d=new Map;for(let I of u){let h=I.end;if(!h||!e.has(h))continue;if(a(I).length<4)continue;let p=d.get(h)??[];p.push(I),d.set(h,p)}return d},"edgesByDestination");for(let d=0;d<4;d++){let I=n();if(I===0)return;let h=o(),Q,p=I,m=h;for(let f of E().values())for(let D=0;D<f.length;D++)for(let w=D+1;w<f.length;w++){let b=f[D],F=f[w],v=s(b),S=s(F);if(!v||!S)continue;let x=l(b,S),k=l(F,v);if(!x||!k)continue;let T=new Map([[b,x],[F,k]]);if(!B(b,x,T)||!B(F,k,T))continue;let R=n(T),L=o(T);if(R>=I)continue;if(R>p||R===p&&L>=m)continue;Q=T,p=R,m=L}if(!Q)return;for(let[f,D]of Q)f.points=D}}function xMA(A,e){let{realNodeRects:a,labelNodeRects:n}=B4(e.values()),o=A.filter((f)=>!f.isLayoutOnly),s=y((f,D=new Map)=>Ti(D.get(f)??f.points??[]),"replacementPointsFor"),l=y((f=new Map)=>{let D=0;for(let w=0;w<o.length;w++){let b=ti(s(o[w],f));for(let F=w+1;F<o.length;F++){let v=ti(s(o[F],f));for(let S of b)for(let x of v)if(LI(S.a,S.b,x.a,x.b,Ot))D++}}return D},"strictCrossingCount"),g=y((f=new Map)=>o.reduce((D,w)=>D+cg(s(w,f)),0),"totalBends"),C=y((f)=>{let{start:D,end:w}=f,b=D?e.get(D):void 0,F=w?e.get(w):void 0,v=b?El(b):void 0,S=F?El(F):void 0;return v&&S?{src:v,dst:S}:void 0},"endpointRectsFor"),B=y((f,D,w)=>{if(w.index<=0||w.index+1>=D.length-1)return;let b=C(f);if(!b)return;if(w.vertical){let F=w.a.x,v=Math.min(b.src.left,b.dst.left),S=Math.max(b.src.right,b.dst.right),x=F<v-Ot?"left":F>S+Ot?"right":void 0;if(!x)return;return{edge:f,points:D,segmentIndex:w.index,axis:"vertical",side:x,coord:F,min:Math.min(w.a.y,w.b.y),max:Math.max(w.a.y,w.b.y)}}if(w.horizontal){let F=w.a.y,v=Math.min(b.src.top,b.dst.top),S=Math.max(b.src.bottom,b.dst.bottom),x=F<v-Ot?"top":F>S+Ot?"bottom":void 0;if(!x)return;return{edge:f,points:D,segmentIndex:w.index,axis:"horizontal",side:x,coord:F,min:Math.min(w.a.x,w.b.x),max:Math.max(w.a.x,w.b.x)}}return},"externalRailForSegment"),E=y(()=>{let f=[];for(let D of o){let w=s(D);for(let b of ti(w)){let F=B(D,w,b);if(F)f.push(F)}}return f},"collectExternalRails"),d=y((f,D)=>f.edge!==D.edge&&f.axis===D.axis&&f.side===D.side&&Qs(f.min,f.max,D.min,D.max)>=So,"railsInteract"),I=y((f)=>{let D=[],w=new Set;for(let b of f){if(w.has(b))continue;let F=[b],v=[];w.add(b);while(F.length>0){let S=F.pop();v.push(S);for(let x of f)if(!w.has(x)&&d(S,x))w.add(x),F.push(x)}if(v.length>1)D.push(v)}return D},"connectedComponents"),h=y((f)=>{let D=[];for(let w of f)if(!D.some((b)=>Math.abs(b-w.coord)<Ot))D.push(w.coord);while(D.length<f.length){let w=Math.min(...D),b=Math.max(...D),F=f[0].side;D.push(F==="left"||F==="top"?w-12*(f.length-D.length):b+12*(f.length-D.length))}return D},"uniqueCoordsFor"),Q=y((f)=>{let D=f.map((F)=>F.coord),w=h(f),b=[];if(f.length<=6){let F=Array(w.length).fill(!1),v=[],S=y(()=>{if(v.length===f.length){if(v.some((x,k)=>Math.abs(x-D[k])>=Ot))b.push([...v]);return}for(let[x,k]of w.entries()){if(F[x])continue;F[x]=!0,v.push(k),S(),v.pop(),F[x]=!1}},"visit");return S(),b}for(let F=0;F<D.length;F++)for(let v=F+1;v<D.length;v++){let S=[...D];[S[F],S[v]]=[S[v],S[F]],b.push(S)}return b},"coordinateAssignmentsFor"),p=y((f,D)=>{let w=new Map;for(let[F,v]of f.entries()){let S=D[F],x=w.get(v.edge)??v.points.map((k)=>({x:k.x,y:k.y}));if(v.axis==="vertical")x[v.segmentIndex].x=S,x[v.segmentIndex+1].x=S;else x[v.segmentIndex].y=S,x[v.segmentIndex+1].y=S;w.set(v.edge,x)}let b=new Map;for(let[F,v]of w){let S=kE(Ti(v));if(ti(S).length!==S.length-1)return;b.set(F,S)}return b},"replacementsForAssignment"),m=y((f)=>{for(let[D,w]of f){let b=[D.start,D.end].filter((F)=>Boolean(F));for(let F of ti(w)){if(En(F.a,F.b,a,b,-2))return!1;if(En(F.a,F.b,n,[],-2))return!1}}for(let D=0;D<o.length;D++){let w=o[D],b=f.has(w),F=ti(s(w,f));for(let v=D+1;v<o.length;v++){let S=o[v];if(!b&&!f.has(S))continue;let x=ti(s(S,f));for(let k of F)for(let T of x)if(vE(k,T,0.5)>=So)return!1}}return!0},"candidateIsSafe");for(let f=0;f<4;f++){let D=l();if(D===0)return;let w,b=D,F=g(),v=Number.POSITIVE_INFINITY;for(let S of I(E()))for(let x of Q(S)){let k=p(S,x);if(!k||!m(k))continue;let T=l(k);if(T>=D)continue;let R=g(k),L=S.reduce((M,U,Y)=>M+Math.abs(x[Y]-U.coord),0);if(T>b||T===b&&(R>F||R===F&&L>=v))continue;w=k,b=T,F=R,v=L}if(!w)return;for(let[S,x]of w)S.points=x}}function SMA(A,e){let{realNodeRects:i,labelNodeRects:u}=B4(e.values()),a=A.filter((E)=>!E.isLayoutOnly),n=y((E,d,I)=>Ti(E===d?I??[]:E.points??[]),"pointsFor"),o=y((E)=>ti(E).reduce((d,I)=>{let h=I.a.x-I.b.x,Q=I.a.y-I.b.y;return d+Math.hypot(h,Q)},0),"pathLength"),s=y((E,d)=>{let I=0;for(let h=0;h<a.length;h++){let Q=ti(n(a[h],E,d));for(let p=h+1;p<a.length;p++){let m=ti(n(a[p],E,d));for(let f of Q)for(let D of m)if(LI(f.a,f.b,D.a,D.b,Ot))I++}}return I},"strictCrossingCount"),l=y((E,d)=>{if(E.horizontal){let I=E.a.y;return(Math.abs(I-d.top)<1||Math.abs(I-d.bottom)<1)&&Qs(E.a.x,E.b.x,d.left,d.right)>=So}if(E.vertical){let I=E.a.x;return(Math.abs(I-d.left)<1||Math.abs(I-d.right)<1)&&Qs(E.a.y,E.b.y,d.top,d.bottom)>=So}return!1},"segmentRunsAlongRectBorder"),g=y((E)=>{let d=[E.start,E.end].filter((h)=>Boolean(h)),I=[];for(let h of d){let Q=e.get(h),p=Q?El(Q):void 0;if(p)I.push(p)}return I},"endpointRectsFor"),C=y((E,d)=>{if(d+3>=E.length)return[];let I=E[d],h=E[d+1],Q=E[d+2],p=E[d+3],m=Va(I,h,Ot)&&ja(h,Q,Ot)&&Va(Q,p,Ot),f=ja(I,h,Ot)&&Va(h,Q,Ot)&&ja(Q,p,Ot);if(!m&&!f)return[];if(!(m?Math.sign(h.x-I.x)!==Math.sign(p.x-Q.x):Math.sign(h.y-I.y)!==Math.sign(p.y-Q.y)))return[];let w=Bi(I,p,Ot)||pi(I,p,Ot)?[]:[{x:I.x,y:p.y},{x:p.x,y:I.y}],b=w.length===0?[[...E.slice(0,d+1),...E.slice(d+3)]]:w.map((v)=>[...E.slice(0,d+1),v,...E.slice(d+3)]),F=new Set;return b.map((v)=>kE(Ti(v))).filter((v)=>{if(ti(v).length!==v.length-1)return!1;if(!v.some((x)=>nc(x,p,Ot)))return!1;let S=v.map((x)=>`${x.x.toFixed(3)},${x.y.toFixed(3)}`).join("|");if(F.has(S))return!1;return F.add(S),!0})},"shortcutCandidatesAt"),B=y((E,d,I)=>{let h=[E.start,E.end].filter((p)=>Boolean(p)),Q=g(E);for(let p of ti(d)){if(En(p.a,p.b,i,h,-2))return!1;if(En(p.a,p.b,u,[],-2))return!1;if(Q.some((m)=>l(p,m)))return!1}for(let p of a){if(p===E)continue;for(let m of ti(d))for(let f of ti(n(p)))if(vE(m,f,0.5)>=So)return!1}return s(E,d)<=I},"candidateIsSafe");for(let E=0;E<8;E++){let d=s(),I,h,Q=d,{POSITIVE_INFINITY:p,POSITIVE_INFINITY:m}=Number;for(let f of a){let D=n(f),w=cg(D,Ot),b=o(D);for(let F=0;F<=D.length-4;F++)for(let v of C(D,F)){let S=cg(v,Ot),x=o(v);if(!(S<w||S===w&&x<b-Ot)||!B(f,v,d))continue;let T=s(f,v);if(T>Q||T===Q&&(S>p||S===p&&x>=m))continue;I=f,h=v,Q=T,p=S,m=x}}if(!I||!h)return;I.points=h}}function LMA(A,e){let a=[];for(let BA of e.values()){if(BA.isGroup||BA.isEdgeLabel)continue;let bA=BA.x??0,FA=BA.y??0,IA=El(BA);if(!IA)continue;a.push({id:String(BA.id??""),cx:bA,cy:FA,rect:IA})}if(a.length===0)return;let n=new Map(a.map((BA)=>[BA.id,BA])),o=a.map((BA)=>({id:BA.id,rect:BA.rect})),s=["top","bottom","left","right"],l={top:Math.min(...a.map((BA)=>BA.rect.top))-20,bottom:Math.max(...a.map((BA)=>BA.rect.bottom))+20,left:Math.min(...a.map((BA)=>BA.rect.left))-20,right:Math.max(...a.map((BA)=>BA.rect.right))+20},g=A.filter((BA)=>!BA.isLayoutOnly),C=new Map(g.map((BA,bA)=>[BA,bA])),B=y((BA)=>{let bA=BA==="left"||BA==="top"?-1:1,FA=[];for(let IA=0;IA<=2;IA++)FA.push(l[BA]+bA*20*IA);return FA},"outwardTracksForSide"),E=y((BA,bA=new Map)=>Ti(bA.get(BA)??BA.points??[]),"replacementPointsFor"),d=y((BA,bA)=>{let FA=0;for(let IA of BA)for(let nA of bA)if(LI(IA.a,IA.b,nA.a,nA.b,Ot))FA++;return FA},"crossingCountBetweenSegments"),I=y((BA,bA)=>d(ti(BA),ti(bA)),"crossingCountBetweenPaths"),h=y((BA=new Map)=>{let bA=0,FA=[],IA=new Set,nA=[],eA=y((EA)=>{if(!IA.has(EA))IA.add(EA),nA.push(EA)},"addEdge");for(let EA=0;EA<g.length;EA++){let mA=g[EA],kA=E(mA,BA);for(let SA=EA+1;SA<g.length;SA++){let YA=g[SA],dA=I(kA,E(YA,BA));if(dA>0)bA+=dA,FA.push({first:mA,second:YA,count:dA}),eA(mA),eA(YA)}}return nA.sort((EA,mA)=>(C.get(EA)??0)-(C.get(mA)??0)),{count:bA,pairs:FA,edgeSet:IA,edges:nA}},"crossingSnapshot"),Q=y((BA,bA)=>{let FA=new Set(bA.keys());if(FA.size===0)return BA.count;let IA=0;for(let eA of BA.pairs)if(FA.has(eA.first)||FA.has(eA.second))IA+=eA.count;let nA=0;for(let eA=0;eA<g.length;eA++){let EA=g[eA],mA=FA.has(EA),kA=E(EA,bA);for(let SA=eA+1;SA<g.length;SA++){let YA=g[SA];if(!mA&&!FA.has(YA))continue;nA+=I(kA,E(YA,bA))}}return BA.count-IA+nA},"crossingCountWithReplacements"),p=y((BA)=>{let bA=new Map;for(let nA of BA.pairs){let eA=bA.get(nA.first)??new Set;eA.add(nA.second),bA.set(nA.first,eA);let EA=bA.get(nA.second)??new Set;EA.add(nA.first),bA.set(nA.second,EA)}let FA=[],IA=new Set;for(let nA of BA.edges){if(IA.has(nA))continue;let eA=[nA],EA=[];IA.add(nA);while(eA.length>0){let mA=eA.pop();EA.push(mA);for(let kA of bA.get(mA)??[])if(!IA.has(kA))IA.add(kA),eA.push(kA)}if(EA.sort((mA,kA)=>(C.get(mA)??0)-(C.get(kA)??0)),EA.length>1)FA.push(EA)}return FA},"crossingComponents"),m=y((BA)=>[BA.start,BA.end].filter((bA)=>Boolean(bA)),"endpointIdsFor"),f=y((BA)=>{let bA=[];for(let FA of p(BA)){let IA=new Set(FA),nA=new Set(FA.flatMap((EA)=>m(EA))),eA=[...FA];for(let EA of g){if(IA.has(EA))continue;if(m(EA).some((mA)=>nA.has(mA)))eA.push(EA)}eA.sort((EA,mA)=>(C.get(EA)??0)-(C.get(mA)??0)),bA.push(eA)}return bA},"pairSearchGroups"),D=y((BA,bA,FA)=>Q(BA,new Map([[bA,FA]])),"crossingCountWithSingleReplacement"),w=y((BA)=>{let bA=new Map;for(let FA of BA.pairs)bA.set(FA.first,(bA.get(FA.first)??0)+FA.count),bA.set(FA.second,(bA.get(FA.second)??0)+FA.count);return bA},"currentCrossingsByEdge"),b=y((BA)=>BA.slice(1).reduce((bA,FA,IA)=>{let nA=BA[IA];return bA+Math.abs(FA.x-nA.x)+Math.abs(FA.y-nA.y)},0),"pathLength"),F=y((BA=new Map)=>g.reduce((bA,FA)=>bA+cg(E(FA,BA)),0),"totalBends"),v=y((BA=new Map)=>g.reduce((bA,FA)=>bA+b(E(FA,BA)),0),"totalLength"),S=y((BA,bA,FA=new Map)=>{let IA=ti(bA);for(let nA of g){if(nA===BA)continue;for(let eA of IA)for(let EA of ti(E(nA,FA)))if(vE(eA,EA,0.5)>=So)return!0}return!1},"pathHasSegmentConflict"),x=y((BA,bA)=>{let FA=[BA.start,BA.end].filter((IA)=>Boolean(IA));for(let IA of ti(bA))if(En(IA.a,IA.b,o,FA,-2))return!0;return!1},"pathHitsNode"),k=y((BA,bA)=>{let FA=kE(Ti(bA));if(ti(FA).length===FA.length-1)BA.push(FA)},"pushOrthogonalCandidate"),T=y((BA)=>BA==="left"||BA==="right","sideIsHorizontal"),R=y((BA,bA,FA)=>{switch(bA){case"left":return Math.min(BA.x,FA.x)-20;case"right":return Math.max(BA.x,FA.x)+20;case"top":return Math.min(BA.y,FA.y)-20;case"bottom":return Math.max(BA.y,FA.y)+20}},"localTrackForSameSide"),L=y((BA,bA,FA,IA)=>{let nA=FA==="left"||FA==="top"?-1:1,eA=[R(bA,FA,IA),l[FA]];for(let EA of eA)for(let mA=0;mA<=2;mA++)k(BA,biA(bA,FA,IA,EA+nA*20*mA))},"addSameSideCandidates"),M=y((BA,bA,FA,IA,nA)=>{for(let eA of B(FA))for(let EA of B(nA))k(BA,[bA,{x:eA,y:bA.y},{x:eA,y:EA},{x:IA.x,y:EA},IA])},"addHorizontalToVerticalCandidates"),U=y((BA,bA,FA,IA,nA)=>{for(let eA of B(FA))for(let EA of B(nA))k(BA,[bA,{x:bA.x,y:eA},{x:EA,y:eA},{x:EA,y:IA.y},IA])},"addVerticalToHorizontalCandidates"),Y=y((BA,bA,FA,IA,nA)=>{let eA=[...B("top"),...B("bottom")];for(let EA of B(FA))for(let mA of B(nA))for(let kA of eA)k(BA,[bA,{x:EA,y:bA.y},{x:EA,y:kA},{x:mA,y:kA},{x:mA,y:IA.y},IA])},"addHorizontalPairCandidates"),H=y((BA,bA,FA,IA,nA)=>{let eA=[...B("left"),...B("right")];for(let EA of B(FA))for(let mA of B(nA))for(let kA of eA)k(BA,[bA,{x:bA.x,y:EA},{x:kA,y:EA},{x:kA,y:mA},{x:IA.x,y:mA},IA])},"addVerticalPairCandidates"),J=y((BA)=>{let bA=new Set;return BA.map((FA)=>Ti(FA)).filter((FA)=>{let IA=FA.map((nA)=>`${nA.x.toFixed(3)},${nA.y.toFixed(3)}`).join("|");if(bA.has(IA)||FA.length<2)return!1;return bA.add(IA),!0})},"dedupeCandidatePaths"),K=y((BA,bA,FA,IA)=>{let nA=[],eA=wiA(BA,bA,FA,IA,20,Ot);if(eA)k(nA,eA);if(bA===IA)L(nA,BA,bA,FA);let EA=T(bA),mA=T(IA);if(EA&&!mA)M(nA,BA,bA,FA,IA);else if(!EA&&mA)U(nA,BA,bA,FA,IA);else if(EA)Y(nA,BA,bA,FA,IA);else H(nA,BA,bA,FA,IA);return J(nA)},"buildCandidatesForSides"),O=y((BA,bA,FA,IA)=>{let nA=[...B("left"),...B("right")],eA=[...B("top"),...B("bottom")];for(let EA of s){let mA=zf(IA,EA),kA=EA==="top"||EA==="bottom"?B(EA):eA;for(let SA of nA){k(BA,[bA,FA,{x:SA,y:FA.y},{x:SA,y:mA.y},mA]);for(let YA of kA)k(BA,[bA,FA,{x:SA,y:FA.y},{x:SA,y:YA},{x:mA.x,y:YA},mA])}}},"addVerticalDepartureOuterTrackCandidates"),_=y((BA,bA,FA,IA)=>{let nA=[...B("left"),...B("right")],eA=[...B("top"),...B("bottom")];for(let EA of s){let mA=zf(IA,EA),kA=EA==="left"||EA==="right"?B(EA):nA;for(let SA of eA){k(BA,[bA,FA,{x:FA.x,y:SA},{x:mA.x,y:SA},mA]);for(let YA of kA)k(BA,[bA,FA,{x:FA.x,y:SA},{x:YA,y:SA},{x:YA,y:mA.y},mA])}}},"addHorizontalDepartureOuterTrackCandidates"),z=y((BA)=>{let{start:bA,end:FA}=BA,IA=FA?n.get(FA):void 0;if(!bA||!IA)return[];let nA=Ti(BA.points??[]);if(nA.length<4)return[];let eA=nA[0],EA=nA[1],mA=[];if(ja(eA,EA,Ot))O(mA,eA,EA,IA);else if(Va(eA,EA,Ot))_(mA,eA,EA,IA);return mA},"terminalPreservingOuterTrackCandidates"),j=y((BA)=>{let{start:bA,end:FA}=BA,IA=bA?n.get(bA):void 0,nA=FA?n.get(FA):void 0;if(!IA||!nA)return[];let eA=[];for(let EA of s){let mA=zf(IA,EA);for(let kA of s)eA.push(...K(mA,EA,zf(nA,kA),kA))}return eA.push(...z(BA)),eA},"candidatePathsFor"),q=y(()=>new Map(g.map((BA)=>[BA,ti(E(BA))])),"currentSegmentsByEdge"),CA=y((BA,bA,FA)=>{let IA=new Set;for(let nA of g){if(nA===BA)continue;let eA=FA.get(nA)??ti(E(nA));if(bA.some((EA)=>eA.some((mA)=>vE(EA,mA,0.5)>=So)))IA.add(nA)}return IA},"sharedTrackConflictsFor"),tA=y((BA,bA,FA,IA)=>{let nA=new Set;return j(BA).map((EA)=>kE(Ti(EA))).filter((EA)=>{if(x(BA,EA))return!1;let mA=EA.map((kA)=>`${kA.x.toFixed(3)},${kA.y.toFixed(3)}`).join("|");if(nA.has(mA)||EA.length<2)return!1;return nA.add(mA),!0}).map((EA)=>{let mA=ti(EA),kA=0;for(let SA of g){if(SA===BA)continue;kA+=d(mA,FA.get(SA)??ti(E(SA)))}return{candidate:EA,candidateSegments:mA,crossings:bA.count-(IA.get(BA)??0)+kA,bends:cg(EA,Ot),totalBends:cg(EA),length:b(EA)}}).filter(({crossings:EA})=>EA<=bA.count).sort((EA,mA)=>EA.crossings-mA.crossings||EA.bends-mA.bends||EA.length-mA.length).slice(0,48).map((EA)=>({path:EA.candidate,segments:EA.candidateSegments,sharedTrackConflicts:CA(BA,EA.candidateSegments,FA),totalBends:EA.totalBends,length:EA.length}))},"pairCandidatesFor"),lA=y((BA,bA,FA,IA,nA,eA)=>{let EA=0;for(let kA of BA.pairs)if(kA.first===bA||kA.second===bA||kA.first===IA||kA.second===IA)EA+=kA.count;let mA=d(FA.segments,nA.segments);for(let kA of g){if(kA===bA||kA===IA)continue;let SA=eA.get(kA)??ti(E(kA));mA+=d(FA.segments,SA)+d(nA.segments,SA)}return BA.count-EA+mA},"pairCrossingCount"),gA=y((BA,bA)=>{for(let FA of BA.sharedTrackConflicts)if(FA!==bA)return!1;return!0},"conflictsOnlyWith"),aA=y((BA,bA)=>BA.segments.some((FA)=>bA.segments.some((IA)=>vE(FA,IA,0.5)>=So)),"candidatesShareTrack"),RA=y((BA,bA,FA,IA)=>gA(bA,FA.edge)&&gA(IA,BA.edge)&&!aA(bA,IA),"pairCandidatesAreCompatible"),wA=y((BA,bA,FA,IA,nA)=>{let eA=lA(BA.current,bA.edge,FA,IA.edge,nA,BA.baseSegments);if(eA>=BA.current.count)return;return{replacements:new Map([[bA.edge,FA.path],[IA.edge,nA.path]]),crossings:eA,bends:BA.currentBends-(BA.baseBendsByEdge.get(bA.edge)??0)-(BA.baseBendsByEdge.get(IA.edge)??0)+FA.totalBends+nA.totalBends,length:BA.currentLength-(BA.baseLengthByEdge.get(bA.edge)??0)-(BA.baseLengthByEdge.get(IA.edge)??0)+FA.length+nA.length}},"scorePairReplacement"),JA=y((BA,bA)=>BA.crossings<bA.crossings||BA.crossings===bA.crossings&&(BA.bends<bA.bends||BA.bends===bA.bends&&BA.length<bA.length),"pairScoreIsBetter"),TA=y((BA,bA,FA,IA)=>{let nA=IA;for(let eA of bA.candidates)for(let EA of FA.candidates){if(!RA(bA,eA,FA,EA))continue;let mA=wA(BA,bA,eA,FA,EA);if(mA&&JA(mA,nA))nA=mA}return nA},"bestScoreForOptionPair"),qA=y((BA)=>{let bA=F(),FA=v(),IA=q(),nA=w(BA),eA=new Map(g.map((dA)=>[dA,cg(E(dA))])),EA=new Map(g.map((dA)=>[dA,b(E(dA))])),mA=new Map,kA=f(BA);for(let dA of kA)for(let W of dA){if(mA.has(W))continue;let Z=tA(W,BA,IA,nA);if(Z.length>0)mA.set(W,{edge:W,candidates:Z})}let SA={replacements:new Map,crossings:BA.count,bends:bA,length:FA},YA={current:BA,currentBends:bA,currentLength:FA,baseBendsByEdge:eA,baseLengthByEdge:EA,baseSegments:IA};for(let dA of kA){let W=new Set(dA.filter((pA)=>BA.edgeSet.has(pA))),Z=dA.map((pA)=>mA.get(pA)).filter((pA)=>Boolean(pA));for(let pA=0;pA<Z.length;pA++){let AA=Z[pA];for(let DA=pA+1;DA<Z.length;DA++){let rA=Z[DA];if(!W.has(AA.edge)&&!W.has(rA.edge))continue;SA=TA(YA,AA,rA,SA)}}}return SA.replacements.size>0?SA.replacements:void 0},"bestPairedReplacement");for(let BA=0;BA<4;BA++){let bA=h(),FA=bA.count;if(FA===0)return;let IA,nA,eA=FA,EA=Number.POSITIVE_INFINITY;for(let kA of bA.edges){let SA=cg(E(kA),Ot);for(let YA of j(kA)){let dA=x(kA,YA),W=!dA&&S(kA,YA),Z=D(bA,kA,YA),pA=cg(YA,Ot);if(dA||W)continue;if(!(Z<FA||Z===FA&&pA<SA))continue;if(Z>eA||Z===eA&&pA>=EA)continue;IA=kA,nA=YA,eA=Z,EA=pA}}if(IA&&nA){IA.points=nA;continue}let mA=qA(bA);if(!mA)return;for(let[kA,SA]of mA)kA.points=SA}}function RMA(A,e){let{nodeInfoById:t,realNodeRects:r}=nT(e),i=["top","bottom","left","right"],u=20,a={top:Math.min(...r.map((d)=>d.rect.top))-20,bottom:Math.max(...r.map((d)=>d.rect.bottom))+20,left:Math.min(...r.map((d)=>d.rect.left))-20,right:Math.max(...r.map((d)=>d.rect.right))+20},n=y((d,I,h,Q)=>{let p=[],m=wiA(d,I,h,Q,20,C4);if(m)p.push(m);if(I===Q)p.push(biA(d,I,h,a[I]));return p},"buildOrthogonalPathCandidates"),o=y((d,I)=>{for(let h=0;h<d.length-1;h++){let Q=d[h],p=d[h+1];if(En(Q,p,r,I,1))return!0}return!1},"pathHitsNode"),s=y((d,I,h=!1)=>{let Q=0,p=zy(d,C4),{start:m,end:f}=I;for(let D of A){if(D===I||D.isLayoutOnly)continue;let{start:w,end:b}=D;if(!h&&m&&f&&(w===m||w===f||b===m||b===f))continue;let F=D.points;if(!F||F.length<2)continue;for(let v of p)for(let S of zy(F,C4)){if(kiA(v.a,v.b,S.a,S.b,C4,C4)){Q++;continue}if(vE(v,S,C4)>=pht)Q++}}return Q},"pathConflictCount"),l=4,g=y((d,I)=>{let h=Math.abs(d.y-I.rect.top),Q=Math.abs(d.y-I.rect.bottom),p=Math.abs(d.x-I.rect.left),m=Math.abs(d.x-I.rect.right),f="top",D=h;if(Q<D)f="bottom",D=Q;if(p<D)f="left",D=p;if(m<D)f="right",D=m;return f},"nearestSideOfRect"),C=new Map,B=y((d,I,h)=>{let Q=C.get(d)??[];Q.push({side:I,edgeId:h}),C.set(d,Q)},"addFaceClaim");for(let d of A){if(d.isLayoutOnly)continue;let I=d.points??[];if(I.length<1)continue;let h=d.id??"",{start:Q,end:p}=d;if(Q){let m=t.get(Q);if(m)B(Q,g(I[0],m),h)}if(p){let m=t.get(p);if(m)B(p,g(I[I.length-1],m),h)}}let E=y((d,I,h)=>C.get(d)?.some((Q)=>Q.edgeId!==h&&Q.side===I)??!1,"faceIsClaimed");for(let d of A){if(d.isLayoutOnly)continue;let I=d.points;if(!I||I.length<2)continue;let h=cg(I,C4);if(h<4)continue;let{start:Q,end:p}=d;if(!Q||!p)continue;let m=t.get(Q),f=t.get(p);if(!m||!f)continue;let D=d.id??"",w=s(I,d,!0),b=s(I,d),F,v=w,S=h;for(let x of i){if(E(Q,x,D))continue;let k=zf(m,x);for(let T of i){if(E(p,T,D))continue;let R=zf(f,T);for(let L of n(k,x,R,T)){if(o(L,[Q,p]))continue;let M=cg(L,C4);if(w>0){let U=s(L,d,!0);if(U>v||U===v&&M>=S)continue;v=U,S=M,F=L;continue}if(s(L,d)>b)continue;if(M<S)S=M,F=L}}}if(F){d.points=F;let x=C.get(Q);if(x)C.set(Q,x.filter((T)=>T.edgeId!==D));let k=C.get(p);if(k)C.set(p,k.filter((T)=>T.edgeId!==D));B(Q,g(F[0],m),D),B(p,g(F[F.length-1],f),D)}}}function niA(A,e){let t=e?0:A.length-1,r=e?1:-1,i=A[t],u=A[t+r];if(!i||!u)return;let a=u.x-i.x,n=u.y-i.y;if(Math.abs(a)+Math.abs(n)<Bl)return;if(Math.abs(n)<=Bl){let s=i.x+Math.sign(a)*KUA;return{left:Math.min(i.x,s),right:Math.max(i.x,s),top:i.y-WM,bottom:i.y+WM}}if(Math.abs(a)<=Bl){let s=i.y+Math.sign(n)*KUA;return{left:i.x-WM,right:i.x+WM,top:Math.min(i.y,s),bottom:Math.max(i.y,s)}}return{left:Math.min(i.x,u.x),right:Math.max(i.x,u.x),top:Math.min(i.y,u.y),bottom:Math.max(i.y,u.y)}}function NMA(A){return{left:Math.min(A.left,A.right),right:Math.max(A.left,A.right),top:Math.min(A.top,A.bottom),bottom:Math.max(A.top,A.bottom)}}function oiA(A,e){let t=Ti(e),r=niA(t,!0),i=niA(t,!1);return[r,i].some((u)=>u&&jM(A,NMA(u)))}function zM(A,e){let t=[];for(let E of A){if(E.isLayoutOnly)continue;let d=E.points;if(!d||d.length<2)continue;for(let I=0;I<d.length-1;I++)t.push({edgeId:E.id,p1:d[I],p2:d[I+1]})}let r=[],i=[];for(let E of e.values()){let{isGroup:d,parentId:I}=E;if(d&&!I){let Q=El(E);if(Q)i.push({id:E.id,rect:Q});continue}if(d)continue;if(E.isEdgeLabel)continue;let h=El(E);if(!h)continue;r.push({nodeId:E.id,rect:h})}let u=3,a=1,n=12,o=y((E,d)=>{let I=_rA(d,u);for(let{nodeId:h,rect:Q}of r){if(h===E)continue;if(jM(I,Q))return!0}return!1},"labelOverlapsForeignNode"),s=y((E,d)=>{let I=_rA(d,u);for(let h of t){if(h.edgeId===E)continue;if(aT(h.p1,h.p2,I))return!0}return!1},"labelOverlapsForeignEdge"),l=y((E,d,I)=>o(E,I)||s(d,I),"labelOverlapsAnything"),g=[],C=y((E)=>{for(let{id:d,rect:I}of i)if(oMA(I,E))return d;return},"findContainingLane"),B=y((E,d)=>g.some((I)=>I.labelId!==E&&jM(d,I.rect)),"overlapsPlacedLabel");for(let E of A){if(E.isLayoutOnly)continue;let d=E.labelNodeId;if(!d)continue;let I=e.get(d);if(!I)continue;let h=E.points;if(!h||h.length<2)continue;let Q=I.width??0,p=I.height??0;if(Q<=0||p<=0)continue;let m=[];for(let J=0;J<h.length-1;J++){let K=h[J],O=h[J+1],_=Math.abs(K.x-O.x),z=Math.abs(K.y-O.y);if(_<Bl&&z<Bl)continue;if(_>=Bl&&z>=Bl)continue;m.push({idx:J,length:_+z,orientation:_>=Bl?"horizontal":"vertical",midX:(K.x+O.x)/2,midY:(K.y+O.y)/2})}if(m.length===0)continue;let f=m.length>=3?m.filter((J)=>J.idx>0&&J.idx<m.length-1):m,D=f.length>0?f:m,w=Q>=p?"horizontal":"vertical",b=y((J)=>[...J].sort((K,O)=>{let _=K.orientation===w,z=O.orientation===w;if(_!==z)return _?-1:1;let j=K.length>=(K.orientation==="horizontal"?Q:p)+2,q=O.length>=(O.orientation==="horizontal"?Q:p)+2;if(j!==q)return j?-1:1;return O.length-K.length}),"rankSegments"),F=m[0],v=m[m.length-1],S=[0.5,0.25,0.75,0.05,0.95,0.15,0.85,0.1,0.9],x=y((J,K)=>{let O=h[J.idx],_=h[J.idx+1];return{midX:O.x+(_.x-O.x)*K,midY:O.y+(_.y-O.y)*K}},"anchorAtT"),k=y((J,K,O)=>Math.min(O,Math.max(K,J)),"clamp"),T=y((J,K)=>J.midX>=K.left-Bl&&J.midX<=K.right+Bl&&J.midY>=K.top-Bl&&J.midY<=K.bottom+Bl,"pointInsideRectInclusive"),R=y((J)=>{let K=qy(J.midX,J.midY,Q,p),O=C(K);if(O)return{laneId:O,anchor:J,rect:K};let _=i.find(({rect:gA})=>T(J,gA));if(!_)return;let z=_.rect.left+Q/2+a,j=_.rect.right-Q/2-a,q=_.rect.top+p/2+a,CA=_.rect.bottom-p/2-a;if(z>j||q>CA)return;let tA={midX:k(J.midX,z,j),midY:k(J.midY,q,CA)},lA=qy(tA.midX,tA.midY,Q,p);return T(J,lA)?{laneId:_.id,anchor:tA,rect:lA}:void 0},"placementForAnchor"),L=y((J,K,O)=>J.orientation==="horizontal"?Math.abs(K.midX-O.x):Math.abs(K.midY-O.y),"distanceAlongSegment"),M=y((J,K)=>{let _=(J.orientation==="horizontal"?Q/2:p/2)+n;if(J===F){let z=h[J.idx];if(L(J,K,z)+Bl<_)return!1}if(J===v){let z=h[J.idx+1];if(L(J,K,z)+Bl<_)return!1}return!0},"labelClearsTerminalEndpoints"),U=y((J)=>{let K=b(J);for(let O of K)for(let _ of S){let z=x(O,_);if(!M(O,z))continue;let j=R(z);if(!j)continue;if(oiA(j.rect,h))continue;if(B(d,j.rect))continue;if(!l(d,E.id,j.rect))return{laneId:j.laneId,anchor:j.anchor}}return},"tryPool"),Y=y((J,K,O=!1)=>{let _=b(J);for(let z of _){let j={midX:z.midX,midY:z.midY};if(K&&!M(z,j))continue;let q=R(j);if(q&&!oiA(q.rect,h)&&!B(d,q.rect)&&!o(d,q.rect)&&(O||!s(E.id,q.rect)))return{laneId:q.laneId,anchor:q.anchor}}return},"findLaneContainingFallback"),H=U(D)??(D.length<m.length?U(m):void 0)??Y(m,!0)??Y(m,!1)??Y(m,!1,!0);if(H){I.x=H.anchor.midX,I.y=H.anchor.midY,I.parentId=H.laneId;let J=qy(H.anchor.midX,H.anchor.midY,Q,p),K=g.findIndex((O)=>O.labelId===d);if(K>=0)g[K]={labelId:d,rect:J};else g.push({labelId:d,rect:J})}}}function siA(A,e){return A<e?`${A}::${e}`:`${e}::${A}`}function GMA(A,e){let{nodeInfoById:t,realNodeRects:r}=nT(e),i=new Map;for(let a of e){let n=a.id;if(a.isGroup)continue;if(a.isEdgeLabel){i.set(n,{w:a.width??0,h:a.height??0});continue}}let u=y((a,n,o,s)=>{let l=siA(n,o),g=0,C=y((B)=>{if(!B)return;let E=i.get(B);if(!E)return;let d=s==="x"?E.w/2:E.h/2;if(d>g)g=d},"consider");C(a.labelNodeId);for(let B of A){if(B===a)continue;if(B.isLayoutOnly)continue;let{start:E,end:d}=B;if(!E||!d)continue;if(siA(E,d)!==l)continue;C(B.labelNodeId)}return g>0?g+mht:0},"labelClearanceFor");for(let a of A){if(a.isLayoutOnly)continue;let n=a.points;if(!DiA(n,HrA))continue;let o=viA(a,t,HrA);if(!o)continue;let{srcId:s,dstId:l,srcInfo:g,dstInfo:C,collinearX:B,collinearY:E}=o;if(B===E)continue;let d,I;if(B){let f=C.cy>g.cy;d={x:g.cx,y:f?g.rect.bottom:g.rect.top},I={x:C.cx,y:f?C.rect.top:C.rect.bottom}}else{let f=C.cx>g.cx;d={x:f?g.rect.right:g.rect.left,y:g.cy},I={x:f?C.rect.left:C.rect.right,y:C.cy}}if(En(d,I,r,[s,l],1))continue;let Q=u(a,s,l,B?"x":"y"),p=Q>JUA?Q:JUA,m=[0,p,-p];for(let f of m){let D={...d},w={...I};if(B){if(D.x+=f,w.x+=f,D.x<=g.rect.left||D.x>=g.rect.right)continue;if(w.x<=C.rect.left||w.x>=C.rect.right)continue}else{if(D.y+=f,w.y+=f,D.y<=g.rect.top||D.y>=g.rect.bottom)continue;if(w.y<=C.rect.top||w.y>=C.rect.bottom)continue}if(En(D,w,r,[s,l],1))continue;if(XM(D,w,A,a,{epsilon:HrA}))continue;a.points=[D,w];break}}}function liA(A,e){let{realNodeRects:s,labelNodeRects:l}=B4(e.values()),g=y((D,w)=>zy(w,0.001).map((b)=>({...b,edge:D,interior:b.index>=1&&b.index<=w.length-3})),"segmentsFor"),C=y(()=>{let D=[];for(let w of A){if(w.isLayoutOnly)continue;let b=w.points;if(!b||b.length<2)continue;D.push(...g(w,Ti(b)))}return D},"allSegments"),B=y((D,w)=>{if(D.horizontal&&w.horizontal)return Qs(D.a.x,D.b.x,w.a.x,w.b.x)>=8&&Math.abs(D.a.y-w.a.y)<7;if(D.vertical&&w.vertical)return Qs(D.a.y,D.b.y,w.a.y,w.b.y)>=8&&Math.abs(D.a.x-w.a.x)<7;return!1},"hasCrowdedParallelTrack"),E=y((D,w)=>{let{start:b,end:F}=D,v=g(D,w);if(v.length!==w.length-1)return!1;let S=[b,F].filter((k)=>Boolean(k)),x=D.labelNodeId?[D.labelNodeId]:[];for(let k of v){if(En(k.a,k.b,s,S,-2))return!1;if(En(k.a,k.b,l,x,-2))return!1}for(let k of A){if(k===D||k.isLayoutOnly)continue;let T=k.points;if(!T||T.length<2)continue;for(let R of v)for(let L of g(k,Ti(T))){if(B(R,L))return!1;if(LI(R.a,R.b,L.a,L.b,0.001))return!1}}return!0},"candidateIsSafe"),d=y((D,w)=>{let b=Ti(D.edge.points??[]);if(b.length<4||D.index>=b.length-1)return;let F=b.map((v)=>({...v}));if(D.horizontal)F[D.index].y+=w,F[D.index+1].y+=w;else if(D.vertical)F[D.index].x+=w,F[D.index+1].x+=w;else return;return g(D.edge,F).length===F.length-1?F:void 0},"shiftedCandidate"),I=y((D,w)=>({x:D.x??(w.left+w.right)/2,y:D.y??(w.top+w.bottom)/2}),"nodeCenter"),h=y((D)=>{let w=D.edge,b=Ti(w.points??[]);if(b.length!==4||D.index!==1)return;let F=w.start?e.get(w.start):void 0,v=w.end?e.get(w.end):void 0,S=F?El(F):void 0,x=v?El(v):void 0,k=b.slice(D.index+2);if(!F||!v||!S||!x||k.length===0)return;return{sourceCenter:I(F,S),targetCenter:I(v,x),sourceRect:S,tail:k}},"sourceDetourContextFor"),Q=y((D,w,b,F,v,S)=>{let x=F.y>=b.y,k=x?v.bottom:v.top,T=k+(x?20:-20);if(x&&D.b.y<=T+0.001||!x&&D.b.y>=T-0.001)return;let R=D.a.x+w;return Ti([{x:b.x,y:k},{x:b.x,y:T},{x:R,y:T},{x:R,y:D.b.y},...S],0.001)},"verticalSourceDetour"),p=y((D,w,b,F,v,S)=>{let x=F.x>=b.x,k=x?v.right:v.left,T=k+(x?20:-20);if(x&&D.b.x<=T+0.001||!x&&D.b.x>=T-0.001)return;let R=D.a.y+w;return Ti([{x:k,y:b.y},{x:T,y:b.y},{x:T,y:R},{x:D.b.x,y:R},...S],0.001)},"horizontalSourceDetour"),m=y((D,w)=>{let b=h(D);if(!b)return;if(D.vertical)return Q(D,w,b.sourceCenter,b.targetCenter,b.sourceRect,b.tail);if(D.horizontal)return p(D,w,b.sourceCenter,b.targetCenter,b.sourceRect,b.tail);return},"sourceDetourCandidate"),f=[-7,7,-14,14,-21,21];for(let D=0;D<12;D++){let w=C(),b=!1;for(let F=0;F<w.length&&!b;F++)for(let v=F+1;v<w.length&&!b;v++){let S=w[F],x=w[v];if(S.edge===x.edge||!B(S,x))continue;let k=[S,x].filter((T)=>T.interior);for(let T of k){for(let R of f){let L=d(T,R);if(L&&E(T.edge,L)){T.edge.points=L,b=!0;break}let M=m(T,R);if(M&&E(T.edge,M)){T.edge.points=M,b=!0;break}}if(b)break}}if(!b)return}}function UMA(A,e,t,r){let i=e.x-A.x,u=e.y-A.y,a=r.x-t.x,n=r.y-t.y,o=i*n-u*a;if(Math.abs(o)<0.0000000001)return!1;let s=t.x-A.x,l=t.y-A.y,g=(s*n-l*a)/o,C=(s*u-l*i)/o,B=0.01;return g>B&&g<1-B&&C>B&&C<1-B}function MMA(A){let e=A.nodes??[],t=A.edges??[],r=[];if(!t.length||!e.length)return r;let i=sMA(e),u=1,a=[];for(let o of t){if(o.isLayoutOnly)continue;let s=o.points;if(!s||s.length<2)continue;let{start:l,end:g,labelNodeId:C}=o,B=o.id??`${l}->${g}`;for(let E of i){if(E.nodeId===l||E.nodeId===g)continue;if(C&&E.nodeId===C)continue;for(let d=0;d<s.length-1;d++)if(aT(s[d],s[d+1],E,-u)){r.push({type:"edge-node-overlap",edgeId:B,targetId:E.nodeId,detail:`segment ${d} passes through node "${E.nodeId}"`});break}}for(let E=0;E<s.length-1;E++)a.push({edgeId:B,start:l,end:g,p1:s[E],p2:s[E+1]})}let n=new Set;for(let o=0;o<a.length;o++)for(let s=o+1;s<a.length;s++){let l=a[o],g=a[s];if(l.edgeId===g.edgeId)continue;if(l.start===g.start||l.start===g.end||l.end===g.start||l.end===g.end)continue;if(UMA(l.p1,l.p2,g.p1,g.p2)){let C=l.edgeId<g.edgeId?`${l.edgeId}|${g.edgeId}`:`${g.edgeId}|${l.edgeId}`;if(!n.has(C))n.add(C),r.push({type:"edge-edge-crossing",edgeId:l.edgeId,targetId:g.edgeId,detail:`edges "${l.edgeId}" and "${g.edgeId}" cross`})}}if(r.length>0){let o=r.filter((l)=>l.type==="edge-node-overlap").length,s=r.filter((l)=>l.type==="edge-edge-crossing").length;sA.warn(`[SWIMLANE_VALIDATE] ${r.length} issue(s) detected: ${o} edge-node overlap(s), ${s} edge crossing(s)`);for(let l of r)sA.warn(`[SWIMLANE_VALIDATE] ${l.type}: ${l.detail}`)}return r}function TMA(A,e){let t=A.nodes??[],r=A.edges??[],i=t.filter((n)=>!n.isGroup);if((e==="LR"||e==="RL")&&i.length>0&&!yMA(A,e))return;if(e==="BT"&&i.length>0&&!DMA(A))return;for(let n of r){if(n.isLayoutOnly)continue;let o=n.points;if(!o||o.length<2)continue;n.points=kE($M(o))}RMA(r,t),GMA(r,t),wMA(r,t);let u=new Map;for(let n of t)u.set(String(n.id),n);zM(r,u),BMA(r,u),bMA(r,u),liA(r,u),vMA(r,u),kMA(r,u),iiA(r,u),FMA(r,u);let a=y(()=>{LMA(r,u),xMA(r,u),SMA(r,u),zM(r,u),tiA(r,u),iiA(r,u),zM(r,u),tiA(r,u)},"finalizeRenderedEdges");a(),liA(r,u),a(),uiA(r,u),aiA(r,u),uiA(r,u),aiA(r,u)}function E4(A){let e=new Map(A.nodeById),t=new Set,r=[];for(let u of A.edges){if(!e.has(u.src)||!e.has(u.dst))continue;let a=`${u.id}:${u.src}->${u.dst}`;if(t.has(a))continue;t.add(a),r.push(u)}return{nodes:[...e.keys()],edges:r,layout:A.layout,nodeById:e}}function RiA(A,e){return A.edges.filter((t)=>t.dst===e)}function YMA(A){let e=new Map;for(let t of A.nodes)e.set(t,[]);for(let t of A.edges)e.get(t.src).push(t.dst);return e}function NiA(A){let e=YMA(A);for(let t of e.values())t.sort((r,i)=>r.localeCompare(i));return e}function GiA(A){let e=new Map;for(let t of A.nodes)e.set(t,0);for(let t of A.edges)e.set(t.dst,(e.get(t.dst)??0)+1);return e}function UiA(A){return[...A.entries()].filter(([,e])=>e===0).map(([e])=>e).sort((e,t)=>e.localeCompare(t))}function oT(A,e=()=>!0){let t=new Map,r=new Map;for(let i of A.nodes)t.set(i,[]),r.set(i,[]);for(let i of A.edges){if(!e(i))continue;r.get(i.src).push(i.dst),t.get(i.dst).push(i.src)}return{preds:t,succs:r}}function MiA(A,e,t,r){let i=0;for(let a of A.nodes){if(r?.skipGroups&&A.nodeById.get(a)?.isGroup)continue;i=Math.max(i,t[a]??0)}let u=Array.from({length:i+1},()=>[]);for(let a of e){if(r?.skipGroups&&A.nodeById.get(a)?.isGroup)continue;u[Math.max(0,t[a]??0)].push(a)}return u}function wk(A){let e=GiA(A),t=UiA(e),r=[],i=NiA(A);while(t.length){let u=t.shift();r.push(u);for(let a of i.get(u)??[])if(e.set(a,(e.get(a)??0)-1),(e.get(a)??0)===0){let n=0;while(n<t.length&&t[n]<a)n++;t.splice(n,0,a)}}return r.length===A.nodes.length?r:null}function Zy(A){let e=new Map,t=0;for(let r of A)e.set(r,t),t++;return e}function TiA(A){let e=Array(A.length),t=y((r,i)=>{if(i-r<=1)return 0;let u=r+i>>1,a=t(r,u)+t(u,i),n=r,o=u,s=r;while(n<u||o<i)if(o>=i||n<u&&A[n]<=A[o])e[s++]=A[n++];else e[s++]=A[o++],a+=u-n;for(let l=r;l<i;l++)A[l]=e[l];return a},"count");return t(0,A.length)}function HMA(A){let e=E4(A),t=new Map;for(let l of e.nodes)t.set(l,[]);for(let l of e.edges)t.get(l.src).push(l);for(let l of t.values())l.sort((g,C)=>g.dst===C.dst?g.id.localeCompare(C.id):g.dst.localeCompare(C.dst));let r=Object.create(null);for(let l of e.nodes)r[l]=0;let i=[],u=y((l)=>{r[l]=1;for(let g of t.get(l)??[]){let C=g.dst;if(r[C]===0)u(C);else if(r[C]===1)i.push(g)}r[l]=2},"dfs"),a=[...e.nodes].sort((l,g)=>l.localeCompare(g));for(let l of a)if(r[l]===0)u(l);let n=new Set(i.map((l)=>`${l.id}:${l.src}->${l.dst}`)),o=e.edges.map((l)=>n.has(`${l.id}:${l.src}->${l.dst}`)?{id:l.id,src:l.dst,dst:l.src,weight:l.weight,ref:l.ref}:l);return{acyclic:{nodes:[...e.nodes],edges:o,layout:e.layout,nodeById:new Map(e.nodeById)},reversed:i}}function KMA(A){let e=new Map,t=y((r)=>{if(e.has(r))return e.get(r);let i=A.nodeById.get(r);if(!i)return e.set(r,null),null;let u=i.parentId;if(!u)return e.set(r,null),null;let n=t(u)??u;return e.set(r,n),n},"resolve");for(let r of A.nodes)t(r);return e}function RI(A){let e=KMA(A);return(t)=>e.get(t)??null}function sT(A){let e=[];for(let t of A.layout.nodes??[])if(t.isGroup&&!t.parentId)e.push(t.id);return[...new Set(e)].reverse()}function YiA(A,e){let t=sT(A);if(!e||e.length===0)return t;let r=new Set(t),i=new Set,u=[];for(let a of e){if(!r.has(a)||i.has(a))continue;i.add(a),u.push(a)}for(let a of t){if(i.has(a))continue;u.push(a)}return u}function JMA(A,e){let t=E4(A),r=e?.laneOf??(()=>null),i=e?.rankHint,{preds:u}=oT(t);for(let f of u.values())f.sort((D,w)=>D.localeCompare(w));let a=wk(t)??[...t.nodes].sort((f,D)=>f.localeCompare(D)),n=new Map;for(let[f,D]of a.entries())n.set(D,f);let o=new Map,s=new Map;for(let f of t.nodes)s.set(f,[]);for(let f of a){let D=(u.get(f)??[]).filter((w)=>o.has(w));if(D.length>0){let w=OMA(f,D,{laneOf:r,rankHint:i,topoIndex:n});o.set(f,w),s.get(w).push(f)}else if(!o.has(f))o.set(f,null)}for(let f of t.nodes)if(!o.has(f))o.set(f,null);let l=new Set;for(let f of t.nodes)if((o.get(f)??null)===null)l.add(f);let g=[...l].sort((f,D)=>{let w=n.get(f)??0,b=n.get(D)??0;if(w===b)return f.localeCompare(D);return w-b}),C=PMA(t),B=new Map;for(let[f,D]of C.entries())B.set(f,[...D].sort((w,b)=>w.localeCompare(b)));let E=_MA(B),d=WMA(B),I=new Map;for(let f of t.nodes)I.set(f,[]);for(let f of d)for(let D of f.nodes){let w=I.get(D);if(w)w.push(f.id);else I.set(D,[f.id])}let h=[],Q=[],p=new Set,m=y((f)=>{if(p.has(f))return;p.add(f),h.push(f);for(let D of s.get(f)??[])m(D);Q.push(f)},"walk");for(let f of g)m(f);for(let f of a)m(f);return{parent:o,children:s,roots:g,componentOf:E,blocks:d,nodeBlocks:I,adjacency:B,preorder:h,postorder:Q,topologicalOrder:a}}function OMA(A,e,t){let r=t.laneOf(A);return[...e].sort((u,a)=>{let n=t.laneOf(u),o=t.laneOf(a),s=n!=null&&n===r,l=o!=null&&o===r;if(s!==l)return s?-1:1;let g=t.rankHint?.[u],C=t.rankHint?.[a];if(g!=null&&C!=null&&g!==C)return C-g;let B=t.topoIndex.get(u)??0,E=t.topoIndex.get(a)??0;if(B!==E)return B-E;return u.localeCompare(a)})[0]}function PMA(A){let e=new Map;for(let t of A.nodes)e.set(t,new Set);for(let t of A.edges)e.get(t.src).add(t.dst),e.get(t.dst).add(t.src);return e}function _MA(A){let e=new Map,t=0;for(let r of A.keys()){if(e.has(r))continue;let i=[r];while(i.length>0){let u=i.pop();if(e.has(u))continue;e.set(u,t);for(let a of A.get(u)??[])if(!e.has(a))i.push(a)}t++}return e}function WMA(A){let e=new Map,t=new Map,r=[],i=[],u=0,a=y((n,o)=>{e.set(n,++u),t.set(n,u);for(let s of A.get(n)??[]){if(s===o)continue;if(!e.has(s)){if(r.push([n,s]),a(s,n),t.set(n,Math.min(t.get(n)??u,t.get(s)??u)),(t.get(s)??0)>=(e.get(n)??0))i.push(qMA(n,s,r,i.length))}else if((e.get(s)??0)<(e.get(n)??0))r.push([n,s]),t.set(n,Math.min(t.get(n)??u,e.get(s)??u))}},"visit");for(let n of A.keys())if(!e.has(n))a(n,null);return i}function qMA(A,e,t,r){let i=[],u=new Set;while(t.length>0){let a=t.pop();if(i.push(a),u.add(a[0]),u.add(a[1]),a[0]===A&&a[1]===e||a[0]===e&&a[1]===A)break}return{id:r,edges:i,nodes:[...u]}}function zMA(A,e,t){let r=[...A.nodes],i=new Map;for(let[Q,p]of r.entries())i.set(p,Q);let u=r.length,a=Array(u).fill(-1),n=Array(u).fill(0),o=[],s=new Set;for(let Q of r){let p=t.parent.get(Q)??null,m=i.get(Q);if(m==null)continue;if(p==null){if(a[m]=-1,n[m]=0,!s.has(Q))s.add(Q),o.push(Q)}}while(o.length>0){let Q=o.shift(),p=i.get(Q);if(p==null)continue;let m=t.children.get(Q)??[];for(let f of m){if(s.has(f))continue;let D=i.get(f);if(D==null)continue;a[D]=p,n[D]=n[p]+1,s.add(f),o.push(f)}}for(let Q of r){if(s.has(Q))continue;let p=i.get(Q);if(p==null)continue;a[p]=-1,n[p]=0,s.add(Q)}let l=Math.max(1,Math.ceil(Math.log2(Math.max(1,u)))+1),g=Array.from({length:l},()=>Array(u).fill(-1));for(let Q=0;Q<u;Q++)g[0][Q]=a[Q];for(let Q=1;Q<l;Q++)for(let p=0;p<u;p++){let m=g[Q-1][p];g[Q][p]=m===-1?-1:g[Q-1][m]}let C=y((Q,p)=>{if(Q===-1||p===-1)return-1;if(n[Q]<n[p])[Q,p]=[p,Q];let m=n[Q]-n[p];for(let f=0;f<l;f++)if(m>>f&1){if(Q=g[f][Q],Q===-1)return-1}if(Q===p)return Q;for(let f=l-1;f>=0;f--){let D=g[f][Q],w=g[f][p];if(D===-1||w===-1)continue;if(D!==w)Q=D,p=w}return g[0][Q]},"lcaIndex"),B=Array.from({length:u},()=>new Map);for(let Q of A.edges){let{src:p,dst:m}=Q,f=e[p],D=e[m];if(f==null||D==null)continue;if(f>D)[p,m]=[m,p],[f,D]=[D,f];if(f==null||D==null||f===D)continue;let w=i.get(p),b=i.get(m);if(w==null||b==null)continue;let F=C(w,b);if(F===-1)continue;let v=B[F];for(let S=f;S<D;S++)v.set(S,(v.get(S)??0)+1)}let E=new Map,d=y((Q,p)=>{if(p.size===0)return;for(let[m,f]of p)Q.set(m,(Q.get(m)??0)+f)},"mergeInto"),I=new Set,h=y((Q)=>{let p=i.get(Q);I.add(Q);let m=p==null?void 0:B[p],f=m?new Map(m):new Map,D=t.children.get(Q)??[];for(let w of D){let b=h(w),F=e[Q];if(F!=null){let v=E.get(Q);if(!v)v=new Map,E.set(Q,v);let S=b.get(F)??0,x=e[w];if(x!=null&&x>F)S+=1;v.set(w,S)}d(f,b)}return f},"dfs");for(let Q of t.roots)if(!I.has(Q))h(Q);for(let Q of r)if(!I.has(Q))h(Q);return E}function ZMA(A,e,t){let r=new Map,i=y((u)=>{let a=t[u]??0,n=[...e.get(u)??[]];n.sort(HiA(t));for(let o of n){i(o);let s=r.get(o);if(s!=null)a=Math.min(a,s)}r.set(u,a)},"annotate");for(let u of A)i(u);return r}function HiA(A){return(e,t)=>{let r=A[e]??0,i=A[t]??0;return r===i?e.localeCompare(t):r-i}}function VMA(A,e,t,r){let i=0;for(let o of e){let s=t[o]??0;if(s>i)i=s}let u=Array.from({length:i+1},()=>[]),a=new Set,n=y((o)=>{if(a.has(o))return;a.add(o);let s=t[o]??0;if(!u[s])u[s]=[];u[s].push(o);for(let l of r(o))n(l)},"emit");for(let o of A)n(o);for(let o of e)if(!a.has(o)){let s=t[o]??0;if(!u[s])u[s]=[];u[s].push(o),a.add(o)}return u}function jMA(A){let e=[];for(let t of A){let r=new Set,i=[];for(let u of t){if(r.has(u))continue;r.add(u),i.push(u)}e.push(i)}return e}function XMA(A,e,t,r){return(i)=>{let u=A.get(i)??[];if(u.length===0)return[];let a=e[i]??0,n=[],o=[],s=t.get(i);for(let l of u){let g=r.get(l)??a;if(g>a)n.push({child:l,min:g});else o.push(l)}return n.sort((l,g)=>{if(l.min===g.min)return l.child.localeCompare(g.child);return l.min-g.min}),o.sort((l,g)=>{let C=s?.get(l)??0,B=s?.get(g)??0;if(C!==B)return C-B;let E=r.get(l)??a,d=r.get(g)??a;if(E!==d)return E-d;return l.localeCompare(g)}),[...n.map((l)=>l.child),...o]}}function uT(A,e,t){let r=JMA(A,{rankHint:e,laneOf:t}),{children:i,roots:u}=r;for(let g of A.nodes)if(!i.has(g))i.set(g,[]);let a=zMA(A,e,r),n=[...u].sort(HiA(e)),o=ZMA(n,i,e),s=XMA(i,e,a,o),l=VMA(n,A.nodes,e,s);return l=jMA(l),l}function $MA(A,e,t){let r=new Set(A),i=new Set(e),u=Zy(e),a=[];for(let n of t)if(r.has(n.src)&&i.has(n.dst))a.push(u.get(n.dst));return TiA(a)}function giA(A,e,t){let r=[];for(let u of e){let a=t[u.src],n=t[u.dst];if(a==null||n==null||a===n)continue;let{src:o,dst:s}=u,l=a,g=n;if(a>n)o=u.dst,s=u.src,l=n,g=a;for(let C=l;C<g;C++)r.push({id:`${u.id}@${C}`,src:o,dst:s,ref:u.ref})}let i=0;for(let u=0;u+1<A.length;u++)i+=$MA(A[u],A[u+1],r);return i}function ATA(A,e){let t={...e},{preds:r}=oT(A),i=RI(A),u=uT(A,t,i),a=giA(u,A.edges,t),n=iT.MAX_CROSSING_OPTIMIZATION_PASSES;for(let o=0;o<n;o++){let s=!1,l=[...A.nodes].sort((g,C)=>(t[C]??0)-(t[g]??0));for(let g of l){let C=t[g]??0;if(C===0)continue;let B=0;for(let h of r.get(g)??[])B=Math.max(B,(t[h]??0)+1);if(B>=C)continue;let E=C;t[g]=B;let d=uT(A,t,i),I=giA(d,A.edges,t);if(I<a)a=I,s=!0;else t[g]=E}if(!s)break}return t}function eTA(A,e){let t=RI(A),r=[...A.nodes].sort((i,u)=>(e[i]??0)-(e[u]??0)||i.localeCompare(u));for(let i of r){let u=t(i);if(!u)continue;let a=A.edges.filter((d)=>d.src===i);if(a.length===0)continue;let n=!1,o=0;for(let d of a){let I=t(d.dst);if(I==null||I===u)n=!0;else o++}if(o===0||n)continue;let s=0,l=!1;for(let d of A.edges){if(d.dst!==i)continue;let I=t(d.src);if(!I)continue;if(I===u)l=!0;else s++}if(s>0||!l)continue;let g=e[i]??0,C=g+o,B=0;for(let d of A.edges)if(d.dst===i)B=Math.max(B,(e[d.src]??0)+1);let E=Math.max(g,B,C);if(E!==g)e[i]=E}}function tTA(A,e){let t=E4(A),r=wk(t)??[...t.nodes].sort(),i=e?.compactSingleInput??!1,u=RI(t),a=Object.create(null);for(let o of r){let s=RiA(t,o),l=e?.ignoreCrossLaneEdges?s.filter((g)=>{let C=u(g.src),B=u(o);if(!C||!B)return!0;return C===B}):s;if(l.length===0)a[o]=0;else if(i&&l.length===1){let g=l[0].src,C=u(g),B=u(o);if(C!==B)a[o]=a[g]??0;else a[o]=(a[g]??0)+1}else{let g=-1/0;for(let C of l)g=Math.max(g,(a[C.src]??0)+1);a[o]=g===-1/0?0:g}}if(e?.optimizeRanksByCrossings??!1)a=ATA(t,a);if(e?.ignoreCrossLaneEdges)eTA(t,a);return{layers:uT(t,a,u),rankOf:a,dummy:new Set}}function rTA(A,e){let t=E4(A),i={...tTA(t,{compactSingleInput:e?.compactSingleInput,ignoreCrossLaneEdges:e?.ignoreCrossLaneEdges,optimizeRanksByCrossings:e?.optimizeRanksByCrossings}).rankOf},u=RI(t),{preds:a,succs:n}=oT(t,(E)=>{if(e?.ignoreCrossLaneEdges){let d=u(E.src),I=u(E.dst);if(d&&I&&d!==I)return!1}return!0}),o=wk(t)??[...t.nodes],s=[...o].reverse(),l=y((E,d)=>{let I=0;for(let p of a.get(E)??[])I=Math.max(I,(i[p]??0)+1);let h=Number.POSITIVE_INFINITY,Q=n.get(E)??[];if(Q.length>0)h=Math.min(...Q.map((p)=>(i[p]??0)-1));if(!Number.isFinite(h))h=Math.max(I,d);return Math.min(Math.max(d,I),h)},"clampFeasible"),g=iT.GRAVITY_ITERATIONS,C=y((E)=>{let d=!1;for(let I of E){let h=a.get(I)??[],Q=n.get(I)??[];if(h.length===0&&Q.length===0)continue;let p=h.length>0?h.reduce((w,b)=>w+(i[b]??0)+1,0)/h.length:i[I]??0,m=Q.length>0?Q.reduce((w,b)=>w+(i[b]??0)-1,0)/Q.length:i[I]??0,f=Math.round((p+m)/2),D=l(I,f);if(D!==i[I])i[I]=D,d=!0}return d},"relaxOrder");for(let E=0;E<g;E++){let d=C(o),I=C(s);if(!d&&!I)break}for(let E of o){let d=0;for(let I of a.get(E)??[])d=Math.max(d,(i[I]??0)+1);if((i[E]??0)<d)i[E]=d}for(let E of s){let d=n.get(E)??[];if(d.length>0){let I=Math.min(...d.map((h)=>(i[h]??0)-1));if((i[E]??0)>I)i[E]=I}}return{layers:MiA(t,o,i),rankOf:i,dummy:new Set}}function iTA(A){let e=GiA(A),t=NiA(A),r=UiA(e),i=[];while(r.length>0){let u=[];for(let a of r){i.push(a);for(let n of t.get(a)??[])if(e.set(n,(e.get(n)??0)-1),(e.get(n)??0)===0)u.push(n)}r=u.sort((a,n)=>a.localeCompare(n))}return i.length===A.nodes.length?i:null}function uTA(A,e){let t=E4(A),r=e?.direction==="LR"?iTA(t)??[...t.nodes].sort():wk(t)??[...t.nodes].sort(),i=RI(t),u=y((l)=>i(l)??l,"laneOf"),a=Object.create(null),n=new Map,o=y((l,g)=>{if(e?.ignoreCrossLaneEdges??!0)return u(l)===u(g)?1:0;return 1},"edgeWeight");for(let l of r){if(t.nodeById.get(l)?.isGroup)continue;let C=RiA(t,l),B=0;if(C.length>0)for(let h of C){let Q=h.src,p=a[Q]??0;B=Math.max(B,p+o(Q,l))}let E=u(l),d=n.get(E)??0,I=Math.max(B,d);a[l]=I,n.set(E,I+1)}return{layers:MiA(t,r,a,{skipGroups:!0}),rankOf:a,dummy:new Set}}function aTA(A,e){let t=E4(e),{rankOf:r}=A,i=A.layers.map((B)=>[...B]),u=new Set(A.dummy?[...A.dummy]:[]),a=0,n=new Map(t.nodeById),o=y((B)=>{let E=`placeholder-${a++}`,d={id:E,isGroup:!1,isDummy:!0,width:0,height:0};n.set(E,d),u.add(E);while(i.length<=B)i.push([]);return i[B].push(E),r[E]=B,E},"addDummyAt"),s=[...t.edges].sort((B,E)=>B.id===E.id?B.src===E.src?B.dst.localeCompare(E.dst):B.src.localeCompare(E.src):B.id.localeCompare(E.id)),l=[];for(let B of s){let E=r[B.src]??0,d=r[B.dst]??0;if(d-E<=1){l.push(B);continue}let I=B.src;for(let Q=E+1,p=0;Q<d;Q++,p++){let m=o(Q);l.push({id:`${B.id}#${p}`,src:I,dst:m,weight:B.weight,ref:B.ref}),I=m}let h=d-E-2;l.push({id:`${B.id}#${Math.max(h+1,0)}`,src:I,dst:B.dst,weight:B.weight,ref:B.ref})}let C={nodes:[...t.nodes,...[...u].filter((B)=>!t.nodes.includes(B))],edges:l,layout:t.layout,nodeById:n};return{layering:{layers:i,rankOf:r,dummy:u},graphWithDummies:C}}function ciA(A){let e=A.length;if(e===0)return Number.POSITIVE_INFINITY;let t=[...A].sort((r,i)=>r-i);if(e%2===1)return t[(e-1)/2];return 0.5*(t[e/2-1]+t[e/2])}function CiA(A){if(A.length===0)return Number.POSITIVE_INFINITY;return A.reduce((t,r)=>t+r,0)/A.length}function nTA(A,e,t,r){let i=new Map;for(let u of A)i.set(u,[]);for(let u of t)if(r==="down"){if(e.has(u.src)&&i.has(u.dst))i.get(u.dst).push(e.get(u.src))}else if(e.has(u.dst)&&i.has(u.src))i.get(u.src).push(e.get(u.dst));return i}function oTA(A,e,t){let r=t.get(A)??0,i=t.get(e)??0;return r!==i?r-i:A.localeCompare(e)}function BiA(A,e,t){let r=new Set(A),i=new Set(e),u=Zy(A),a=Zy(e),n=[];for(let s of t)if(r.has(s.src)&&i.has(s.dst))n.push({u:u.get(s.src),v:a.get(s.dst)});n.sort((s,l)=>s.u===l.u?s.v-l.v:s.u-l.u);let o=n.map((s)=>s.v);return TiA(o)}function ZM(A,e,t){return[...A].sort((r,i)=>{let u=ciA(e.get(r)??[]),a=ciA(e.get(i)??[]);if(u===a)return oTA(r,i,t);if(!isFinite(u))return 1;if(!isFinite(a))return-1;return u-a})}function EiA(A,e,t,r,i,u){let a=Zy(A),n=Zy(e),o=nTA(e,a,t,r);if(!i||!u||u.length===0)return ZM(e,o,n);let s=new Map;for(let C of e){let B=i(C),E=s.get(B)??[];E.push(C),s.set(B,E)}let l=[];for(let C of u){let B=s.get(C);if(!B||B.length===0)continue;let E=ZM(B,o,n);l.push(...E)}let g=s.get(null);if(g&&g.length>0){let C=ZM(g,o,n);for(let B of C){let E=CiA(o.get(B)??[]),d=l.length;if(isFinite(E))for(let[I,h]of l.entries()){let Q=CiA(o.get(h)??[]);if(E<Q){d=I;break}}l.splice(d,0,B)}}return l}function diA(A,e,t,r,i){let u=[...e],a=new Set(A),n=new Set(e),o=r?new Set(r):null,s=t.filter((d)=>a.has(d.src)&&n.has(d.dst)),l=o?t.filter((d)=>n.has(d.src)&&o.has(d.dst)):void 0,g=y((d)=>{let I=BiA(A,d,s);if(l&&r)I+=BiA(d,r,l);return I},"crossingScore"),C=i?new Map:null;if(i&&C)for(let d of e)C.set(d,i(d));let B=!0,E=g(u);while(B){B=!1;for(let d=0;d+1<u.length;d++){if(C){let Q=C.get(u[d]),p=C.get(u[d+1]);if(Q!==p)continue}let I=E;[u[d],u[d+1]]=[u[d+1],u[d]];let h=g(u);if(h<I)E=h,B=!0;else[u[d],u[d+1]]=[u[d+1],u[d]]}}return u}function sTA(A,e,t){let r=A.layers.map((n)=>[...n]),i=e.edges,u=RI(e),a=YiA(e,t?.laneOrder);for(let n=0;n<3;n++){for(let o=1;o<r.length;o++)r[o]=EiA(r[o-1],r[o],i,"down",u,a),r[o]=diA(r[o-1],r[o],i,r[o+1],u);for(let o=r.length-2;o>=0;o--)r[o]=EiA(r[o+1],r[o],i,"up",u,a),r[o]=diA(r[o+1],r[o],i,r[o-1],u)}return{layers:r}}function lTA(A,e,t){let r=t?.layerGap??OUA.DEFAULT_LAYER_GAP,i=t?.nodeGap??OUA.DEFAULT_NODE_GAP,u=t?.laneGap??i*2,a=t?.direction??"TB",n=a==="LR"||a==="RL",o=A.layers,s=Object.create(null),l=Object.create(null),g=y((v)=>e.nodeById.get(v),"getNode"),C=y((v)=>g(v)?.width??0,"getWidth"),B=y((v)=>g(v)?.height??0,"getHeight"),E=RI(e),d=YiA(e,t?.laneOrder),I=o.map((v)=>v.reduce((S,x)=>Math.max(S,B(x)),0)),h=[];if(n)for(let v=0;v+1<o.length;v++){let S=o[v].reduce((U,Y)=>Math.max(U,C(Y)),0),x=o[v+1].reduce((U,Y)=>Math.max(U,C(Y)),0),k=I[v],T=I[v+1],R=k/2+T/2,L=(S+x)/2,M=Math.max(0,L-R-r);h.push(M)}let Q=new Set;for(let v of o)for(let S of v)Q.add(E(S));let p=Q.has(null),m=d.filter((v)=>Q.has(v)),f=[...p?[null]:[],...m],D=Object.create(null);for(let v of m)D[v]=0;if(p)D.null=0;for(let v of o){let S=Object.create(null),x=[];for(let k of v){let T=E(k);if(T===null)x.push(k);else(S[T]||=[]).push(k)}for(let[k,T]of Object.entries(S)){let R=T.reduce((L,M)=>L+C(M),0)+i*Math.max(0,T.length-1);D[k]=Math.max(D[k]??0,R)}if(p&&x.length){let k=x.reduce((T,R)=>T+C(R),0)+i*Math.max(0,x.length-1);D.null=Math.max(D.null??0,k)}}let w=new Map;{let v=f.map((k)=>(k===null?D.null:D[k])??0),x=-(v.reduce((k,T)=>k+T,0)+u*Math.max(0,f.length-1))/2;for(let k=0;k<f.length;k++){let T=f[k],R=v[k]??0,L=x+R/2;if(w.set(T,L),x+=R,k<f.length-1)x+=u}}let b=0;for(let[v,S]of o.entries()){let x=I[v]??0,k=new Map;for(let R of S){let L=E(R),M=k.get(L)??[];M.push(R),k.set(L,M)}for(let R of f){let L=k.get(R)??[];if(L.length===0)continue;let M=w.get(R);if(L.length===1){let U=L[0];s[U]=M,l[U]=b+x/2}else{let U=L.map((J)=>C(J)),Y=U.reduce((J,K)=>J+K,0)+i*(L.length-1),H=M-Y/2;for(let[J,K]of L.entries()){let O=U[J];s[K]=H+O/2,l[K]=b+x/2,H+=O+i}}}let T=h[v]??0;b+=x+r+T}let F=new Map;for(let v of e.edges){let S=v.ref.id;if(!F.has(S))F.set(S,[]);F.get(S).push(v)}for(let[,v]of F){if(v.length===0)continue;let S=v[0].ref,{start:x,end:k}=S;if(x==null||k==null)continue;let T=Math.round(((s[x]??0)+(s[k]??0))/2),R=new Set;for(let L of v)R.add(L.src),R.add(L.dst);for(let L of R){if(L===x||L===k)continue;if(e.nodeById.get(L)?.isDummy)s[L]=T}}return{x:s,y:l}}function cTA(A){let e=2166136261;for(let t=0;t<A.length;t++)e^=A.charCodeAt(t),e=Math.imul(e,16777619);return e>>>0}function CTA(A){let e=A>>>0;return()=>{e+=1831565813;let t=e;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}}function BTA(A,e){let t=[...A],r=CTA(e);for(let i=t.length-1;i>0;i--){let u=Math.floor(r()*(i+1));[t[i],t[u]]=[t[u],t[i]]}return t}function ETA(A,e){let t=0;for(let[r,i]of A.entries())t+=Math.abs(r-(e.get(i)??r));return t}function IiA(A,e){let t=new Map;for(let[i,u]of A.entries())t.set(u,i);let r=0;for(let{a:i,b:u,weight:a}of e){let n=t.get(i),o=t.get(u);if(n==null||o==null)continue;r+=a*Math.abs(n-o)}return r}function dTA(A){let e=sT(A);if(e.length<2)return[];let t=new Map(e.map((u,a)=>[u,a])),r=RI(A),i=new Map;for(let u of A.layout.edges??[]){if(u.isLayoutOnly)continue;let a=typeof u.start==="string"?u.start:void 0,n=typeof u.end==="string"?u.end:void 0;if(!a||!n||!A.nodeById.has(a)||!A.nodeById.has(n))continue;let o=r(a),s=r(n);if(!o||!s||o===s)continue;let l=t.get(o),g=t.get(s);if(l==null||g==null)continue;let[C,B]=l<=g?[o,s]:[s,o],E=`${C}\x00${B}`,d=i.get(E);if(d)d.weight++;else i.set(E,{a:C,b:B,weight:1})}return[...i.values()]}function hiA(A,e,t){let r=[...A],i=IiA(r,e),u=!0,a=0,n=Math.max(1,r.length);while(u&&a<n){u=!1,a++;for(let o=0;o+1<r.length;o++){[r[o],r[o+1]]=[r[o+1],r[o]];let s=IiA(r,e);if(s<i)i=s,u=!0;else[r[o],r[o+1]]=[r[o+1],r[o]]}}return{order:r,cost:i,sourceDistance:ETA(r,t)}}function ITA(A,e){if(A.cost!==e.cost)return A.cost<e.cost;return A.sourceDistance<e.sourceDistance}function hTA(A,e,t){let r=[...e].sort((i,u)=>i.a===u.a?i.b.localeCompare(u.b):i.a.localeCompare(u.a)).map(({a:i,b:u,weight:a})=>`${i}:${u}:${a}`).join("|");return cTA(`${A.join("|")}#${r}#${t}`)}function QTA(A,e={}){let t=sT(A);if(t.length<2)return t;let r=dTA(A);if(r.length===0)return t;let i=new Map(t.map((n,o)=>[n,o])),u=hiA(t,r,i),a=Math.max(0,e.restarts??gTA);for(let n=0;n<a;n++){let o=hTA(t,r,n),s=BTA(t,o),l=hiA(s,r,i);if(ITA(l,u))u=l}return u.order}function pTA(A,e){let t=e?.ignoreCrossLaneEdges??!0,r=e?.optimizeRanksByCrossings??!0,i=E4(A),u=e?.automaticLaneOrdering?QTA(i,{restarts:gTA}):void 0,a=HMA(i),n=a.acyclic,o=t?uTA(n,{compactSingleInput:e?.compactSingleInput??iT.DEFAULT_COMPACT_SINGLE_INPUT,ignoreCrossLaneEdges:!0,direction:e?.direction}):rTA(n,{compactSingleInput:e?.compactSingleInput??iT.DEFAULT_COMPACT_SINGLE_INPUT,ignoreCrossLaneEdges:!1,optimizeRanksByCrossings:r}),{layering:s,graphWithDummies:l}=aTA(o,n),g=sTA(s,l,{laneOrder:u}),C=lTA(g,l,{layerGap:e?.layerGap,nodeGap:e?.nodeGap,direction:e?.direction,laneOrder:u});return{acyclic:n,reversed:a.reversed,layering:s,ordered:g,coordinates:C}}function QiA(A,e,t){let r=A.x??0,i=A.y??0,u=e.x-r,a=e.y-i,n=Math.abs(u),o=Math.abs(a);if(n<ni&&o<ni)return t;let s=3;if(o>ni&&o*s>=n)return a>0?"bottom":"top";if(n>ni)return u>0?"right":"left";return t}function piA(A,e){return Math.abs(A.to-e.from)<ni||Math.abs(A.to-e.to)<ni?A.to:A.from}function qf(A,e){return A.orient==="vertical"?{x:A.coord,y:e}:{x:e,y:A.coord}}function fTA(A,e){let t=A.nodes??[],r=A.edges??[],i=[];for(let nA of r){if(nA.isLayoutOnly)continue;i.push({...nA,__originalEdge:nA})}let u=new Map,a=new Map,n=[],o=e==="LR";for(let nA of t)u.set(nA.id,nA);let s=t.filter((nA)=>nA.isGroup&&!nA.parentId);for(let nA of s){let eA={id:nA.id},EA=y((mA)=>{a.set(mA.id,eA),t.filter((kA)=>kA.parentId===mA.id).forEach(EA)},"assignLane");EA(nA)}let l=t.filter((nA)=>!nA.isGroup&&!nA.isEdgeLabel).map((nA)=>{let eA=nA.width??10,EA=nA.height??10,mA=nA.x??0,kA=nA.y??0,SA=yht;return{nodeId:nA.id,minX:mA-eA/2-SA,maxX:mA+eA/2+SA,minY:kA-EA/2-SA,maxY:kA+EA/2+SA,visualXHalfExtent:o?EA/2+SA:eA/2+SA}}),g=y((nA,eA,EA,mA)=>{let kA=n.find((SA)=>SA.orientation===nA&&Math.abs(SA.coord-eA)<1);if(!kA)kA={id:`pipe-${nA}-${eA.toFixed(0)}`,orientation:nA,coord:eA,spanMin:EA,spanMax:mA,tracks:[]},n.push(kA);return kA.spanMin=Math.min(kA.spanMin,EA),kA.spanMax=Math.max(kA.spanMax,mA),kA},"getOrAddPipe"),C=y((nA,eA)=>{let EA=nA.width??10,mA=nA.height??10,kA=nA.x??0,SA=nA.y??0;switch(eA){case"top":return{x:kA,y:SA-mA/2};case"bottom":return{x:kA,y:SA+mA/2};case"left":return{x:kA-EA/2,y:SA};case"right":return{x:kA+EA/2,y:SA}}},"portForSide"),B=y((nA,eA,EA)=>C(nA,QiA(nA,eA,EA?"bottom":"top")),"getOrthogonalPort"),E=[],d=[],I=new Set,h=1000,Q=y((nA,eA,EA)=>{if(E.length===0)return 0;let mA=Math.abs(eA.y-EA.y)<ni,kA=Math.abs(eA.x-EA.x)<ni;if(!mA&&!kA)return 0;let SA=0;if(mA){let YA=eA.y,dA=Math.min(eA.x,EA.x)-ni,W=Math.max(eA.x,EA.x)+ni;if(W<=dA)return 0;for(let Z of E){if(Z.edgeIndex===nA||Z.orientation!=="vertical")continue;if(Z.pipe.coord<dA||Z.pipe.coord>W)continue;if(Z.from-ni<=YA&&Z.to+ni>=YA)SA+=h}}else if(kA){let YA=eA.x,dA=Math.min(eA.y,EA.y)-ni,W=Math.max(eA.y,EA.y)+ni;if(W<=dA)return 0;for(let Z of E){if(Z.edgeIndex===nA||Z.orientation!=="horizontal")continue;if(Z.pipe.coord<dA||Z.pipe.coord>W)continue;if(Z.from-ni<=YA&&Z.to+ni>=YA)SA+=h}}return SA},"crossingPenalty"),p=i.map((nA,eA)=>{if(!nA.start||!nA.end)return{idx:eA,crossLane:0,dx:0,dy:0};let EA=u.get(nA.start),mA=u.get(nA.end),kA=a.get(nA.start),SA=a.get(nA.end),YA=kA&&SA&&kA.id!==SA.id?1:0,dA=EA&&mA?Math.abs((mA.x??0)-(EA.x??0)):0,W=EA&&mA?Math.abs((mA.y??0)-(EA.y??0)):0;return{idx:eA,crossLane:YA,dx:dA,dy:W}}).sort((nA,eA)=>{if(nA.crossLane!==eA.crossLane)return eA.crossLane-nA.crossLane;let EA=nA.dx+nA.dy,mA=eA.dx+eA.dy;if(Math.abs(EA-mA)>1)return EA-mA;return nA.idx-eA.idx}).map((nA)=>nA.idx),m=y((nA,eA,EA,mA)=>{let kA=Math.min(nA.x,eA.x),SA=Math.max(nA.x,eA.x),YA=Math.min(nA.y,eA.y),dA=Math.max(nA.y,eA.y);return!!l.find((Z)=>{if(EA&&Z.nodeId===EA)return!1;if(mA&&Z.nodeId===mA)return!1;if(Math.abs(nA.x-eA.x)>ni)return Z.minY<nA.y&&Z.maxY>nA.y&&Z.maxX>kA&&Z.minX<SA;else return Z.minX<nA.x&&Z.maxX>nA.x&&Z.maxY>YA&&Z.minY<dA})},"isSegmentBlocked"),f=new Map,D=new Map;for(let nA of i){if(!nA.start||!nA.end||nA.start===nA.end)continue;D.set(nA.start,(D.get(nA.start)??0)+1),D.set(nA.end,(D.get(nA.end)??0)+1)}let w=y((nA,eA)=>QiA(nA,eA,"bottom"),"determineSide"),b=new Map;for(let[nA,eA]of i.entries()){if(!eA.start||!eA.end||eA.start===eA.end)continue;if(eA.points&&eA.points.length>0)continue;let EA=u.get(eA.start),mA=u.get(eA.end);if(!EA||!mA)continue;let kA=(mA.x??0)-(EA.x??0),SA=(mA.y??0)-(EA.y??0);b.set(nA,{edgeIdx:nA,srcId:eA.start,dstId:eA.end,srcSide:w(EA,{x:mA.x??0,y:mA.y??0}),dstSide:w(mA,{x:EA.x??0,y:EA.y??0}),absDx:Math.abs(kA),absDy:Math.abs(SA),dxSign:Math.sign(kA),dySign:Math.sign(SA)})}let F=y((nA)=>{if(nA.srcSide==="top"||nA.srcSide==="bottom")return nA.absDx===0?1/0:nA.absDy/nA.absDx;return nA.absDy===0?1/0:nA.absDx/nA.absDy},"preferenceStrength"),v=y((nA)=>{if(nA.srcSide==="top"||nA.srcSide==="bottom")return nA.dxSign>=0?"right":"left";return nA.dySign>=0?"bottom":"top"},"secondarySide"),S=new Map;for(let nA of b.values()){let eA=`${nA.srcId}:${nA.srcSide}`;if(!S.has(eA))S.set(eA,[]);S.get(eA).push(nA)}let x=new Map,k=y((nA,eA)=>`${nA}:${eA}`,"loadKey");for(let nA of b.values())x.set(k(nA.srcId,nA.srcSide),(x.get(k(nA.srcId,nA.srcSide))??0)+1),x.set(k(nA.dstId,nA.dstSide),(x.get(k(nA.dstId,nA.dstSide))??0)+1);for(let nA of S.values()){if(nA.length<2)continue;nA.sort((eA,EA)=>{let mA=F(eA),kA=F(EA);if(Math.abs(mA-kA)>0.000000001)return kA-mA;return eA.edgeIdx-EA.edgeIdx});for(let eA=1;eA<nA.length;eA++){let EA=nA[eA],mA=v(EA),kA=x.get(k(EA.srcId,EA.srcSide))??0,SA=x.get(k(EA.srcId,mA))??0;if(SA>=kA)continue;x.set(k(EA.srcId,EA.srcSide),kA-1),x.set(k(EA.srcId,mA),SA+1),EA.srcSide=mA}}let T=y((nA)=>{let eA=nA?.shape;return eA==="question"||eA==="diamond"},"isDiamondNode"),R=new Map;for(let nA of b.values()){if(!R.has(nA.dstId))R.set(nA.dstId,new Set);R.get(nA.dstId).add(nA.dstSide)}for(let nA of b.values()){if(!T(u.get(nA.srcId)))continue;let eA=R.get(nA.srcId);if(!eA?.has(nA.srcSide))continue;let EA=v(nA);if(eA.has(EA)||(x.get(k(nA.srcId,EA))??0)>0)continue;let mA=x.get(k(nA.srcId,nA.srcSide))??0;x.set(k(nA.srcId,nA.srcSide),Math.max(0,mA-1)),x.set(k(nA.srcId,EA),1),nA.srcSide=EA}for(let nA of b.values()){let{edgeIdx:eA,srcId:EA,dstId:mA,srcSide:kA,dstSide:SA}=nA,YA=u.get(EA),dA=u.get(mA),W=`${EA}:${kA}:src`,Z=kA==="top"||kA==="bottom"?dA.x??0:dA.y??0;if(!f.has(W))f.set(W,[]);f.get(W).push({edgeIdx:eA,oppositeCoord:Z});let pA=`${mA}:${SA}:dst`,AA=SA==="top"||SA==="bottom"?YA.x??0:YA.y??0;if(!f.has(pA))f.set(pA,[]);f.get(pA).push({edgeIdx:eA,oppositeCoord:AA})}let L=new Map,M=8;for(let[nA,eA]of f){if(eA.length<2)continue;eA.sort((zA,WA)=>zA.oppositeCoord-WA.oppositeCoord);let EA=nA.split(":"),mA=EA.slice(0,-2).join(":"),kA=EA[EA.length-2],SA=EA[EA.length-1],YA=u.get(mA);if(!YA)continue;let W=kA==="left"||kA==="right"?YA.height??10:YA.width??10,Z=YA.shape,AA=Z==="question"||Z==="diamond"?W*0.3:W,rA=Math.min(20,Math.max(M,AA/(eA.length+1))),_A=-(rA*(eA.length-1))/2;for(let[zA,WA]of eA.entries()){let te=_A+zA*rA,ZA=`${WA.edgeIdx}:${SA}`;L.set(ZA,te)}}let U=y((nA)=>Boolean(i[nA]?.labelNodeId),"edgeHasLabelNode"),Y=y((nA,eA)=>{if(!nA)return!1;return(f.get(`${nA}:${eA}:src`)??[]).some(({edgeIdx:EA})=>U(EA))||(f.get(`${nA}:${eA}:dst`)??[]).some(({edgeIdx:EA})=>U(EA))},"faceHasLabelNode"),H=y((nA,eA,EA)=>{if(eA==="top"||eA==="bottom")return{x:nA.x+EA,y:nA.y};else return{x:nA.x,y:nA.y+EA}},"applyPortOffset"),J=y((nA,eA,EA)=>{let mA=b.get(nA),kA={x:EA.x??0,y:EA.y??0},SA={x:eA.x??0,y:eA.y??0},YA=mA?.srcSide??w(eA,kA),dA=mA?.dstSide??w(EA,SA),W=mA?C(eA,mA.srcSide):B(eA,kA,!0),Z=mA?C(EA,mA.dstSide):B(EA,SA,!1),pA=L.get(`${nA}:src`),AA=L.get(`${nA}:dst`);if(pA!==void 0)W=H(W,YA,pA);if(AA!==void 0)Z=H(Z,dA,AA);return{pSrcPort:W,pDstPort:Z,srcSide:YA,dstSide:dA}},"portsForEdge");for(let nA of p){let eA=i[nA];if(d[nA]=[],!eA.start||!eA.end)continue;if(eA.points&&eA.points.length>0)continue;if(eA.start===eA.end)continue;let EA=u.get(eA.start),mA=u.get(eA.end);if(!EA||!mA)continue;let{pSrcPort:kA,pDstPort:SA,srcSide:YA,dstSide:dA}=J(nA,EA,mA),W={...kA},Z={...SA},pA=YA==="top"||YA==="bottom",AA=dA==="top"||dA==="bottom";if(pA){let Ce=kA.y>(EA.y??0);W.y=Ce?kA.y+ac:kA.y-ac}else{let Ce=kA.x>(EA.x??0);W.x=Ce?kA.x+ac:kA.x-ac}if(AA){let Ce=SA.y>(mA.y??0);Z.y=Ce?SA.y+ac:SA.y-ac}else{let Ce=SA.x>(mA.x??0);Z.x=Ce?SA.x+ac:SA.x-ac}let DA=y((Ce,De)=>{for(let Ve of l){if(De.includes(Ve.nodeId))continue;if(Ce.x>Ve.minX&&Ce.x<Ve.maxX&&Ce.y>Ve.minY&&Ce.y<Ve.maxY)return{inside:!0,obstacle:Ve}}return{inside:!1}},"isPointInObstacle"),rA=y((Ce,De,Ve,Vt,jt)=>{if(jt){let fr=Ce.y>(De.y??0);return{x:(Ve.x??0)>=Ce.x?Vt.maxX+Wf:Vt.minX-Wf,y:fr?Vt.maxY+_y:Vt.minY-_y,leavesPositiveSide:fr}}let Or=Ce.x>(De.x??0),bi=(Ve.y??0)>=Ce.y;return{x:Or?Vt.maxX+Wf:Vt.minX-Wf,y:bi?Vt.maxY+_y:Vt.minY-_y,leavesPositiveSide:Or}},"obstacleDetour"),KA=[],_A=[eA.start,eA.end],zA=DA(W,_A);if(zA.inside&&zA.obstacle){let Ce=zA.obstacle;if(pA){let De=rA(kA,EA,mA,Ce,!0);W.x=De.x,W.y=De.y;let Ve=De.leavesPositiveSide?Math.min(Ce.minY-2,kA.y+ac):Math.max(Ce.maxY+2,kA.y-ac);KA=[{x:kA.x,y:Ve},{x:De.x,y:Ve},{x:De.x,y:De.y}]}else{let De=rA(kA,EA,mA,Ce,!1),Ve=De.leavesPositiveSide?Math.min(Ce.minX-2,kA.x+ac):Math.max(Ce.maxX+2,kA.x-ac);W.x=De.x,W.y=De.y,KA=[{x:Ve,y:kA.y},{x:Ve,y:De.y},{x:De.x,y:De.y}]}}let WA=[],te=DA(Z,_A);if(te.inside&&te.obstacle){let Ce=te.obstacle;if(AA){let De=rA(SA,mA,EA,Ce,!0);Z.x=De.x,Z.y=De.y,WA=[{x:De.x,y:De.y},{x:SA.x,y:De.y}]}else{let De=rA(SA,mA,EA,Ce,!1);Z.x=De.x,Z.y=De.y,WA=[{x:De.x,y:De.y},{x:De.x,y:SA.y}]}}if(KA.length===0&&WA.length===0){let Ce=Wf,De=Math.abs(W.x-Z.x)<Ce,Ve=Math.abs(W.y-Z.y)<Ce,Vt=L.get(`${nA}:src`)!==void 0||L.get(`${nA}:dst`)!==void 0,jt=(f.get(`${eA.start??""}:${YA}:src`)?.length??0)+(f.get(`${eA.start??""}:${YA}:dst`)?.length??0),Or=(f.get(`${eA.end??""}:${dA}:src`)?.length??0)+(f.get(`${eA.end??""}:${dA}:dst`)?.length??0),bi=jt>1||Or>1,fr=D.get(eA.start??"")??0,At=D.get(eA.end??"")??0,Ye=jt>1&&Y(eA.start,YA)||Or>1&&Y(eA.end,dA),Bt=jt<=1||fr<=2,nt=Or<=1||At<=2;if((De||Ve)&&!Vt&&(!bi||bi&&!Ye&&Bt&&nt)){if(!m(kA,SA,eA.start,eA.end)){eA.points=[{...kA},{...W},{...Z},{...SA}],I.add(nA);let LA=Ve?"horizontal":"vertical",Gi=Ve?kA.y:kA.x,HA=Ve?Math.min(kA.x,SA.x):Math.min(kA.y,SA.y),Er=Ve?Math.max(kA.x,SA.x):Math.max(kA.y,SA.y),xa={id:`fast-path-${LA}-${Gi.toFixed(0)}-${nA}`,orientation:LA,coord:Gi,spanMin:HA,spanMax:Er,tracks:[]};E.push({edgeIndex:nA,segmentIndex:0,orientation:LA,pipe:xa,trackIndex:0,from:HA,to:Er});continue}}}let ZA=g("vertical",W.x,W.y,W.y);W.x=ZA.coord;let ee=g("vertical",Z.x,Z.y,Z.y);Z.x=ee.coord;let $A=Math.min(W.x,Z.x)-50,oe=Math.max(W.x,Z.x)+50,vA=Math.min(W.y,Z.y)-50,Pe=Math.max(W.y,Z.y)+50;for(let Ce of l){let De=Math.min(W.x,Z.x),Ve=Math.max(W.x,Z.x),Vt=Math.min(W.y,Z.y),jt=Math.max(W.y,Z.y);if(Ce.minX<Ve&&Ce.maxX>De&&Ce.minY<jt&&Ce.maxY>Vt)$A=Math.min($A,Ce.minX-qM),oe=Math.max(oe,Ce.maxX+qM),vA=Math.min(vA,Ce.minY-qM),Pe=Math.max(Pe,Ce.maxY+qM)}for(let Ce of l){if(Ce.maxX<$A||Ce.minX>oe||Ce.maxY<vA||Ce.minY>Pe)continue;let De=Wf;g("horizontal",Ce.minY-De,$A,oe),g("horizontal",Ce.maxY+De,$A,oe);let Ve=_y;g("vertical",Ce.minX-Ve,vA,Pe),g("vertical",Ce.maxX+Ve,vA,Pe)}g("horizontal",W.y,$A,oe),g("horizontal",Z.y,$A,oe);let MA=n.filter((Ce)=>Ce.orientation==="horizontal"&&Ce.coord>=vA&&Ce.coord<=Pe),ke=n.filter((Ce)=>Ce.orientation==="vertical"&&Ce.coord>=$A&&Ce.coord<=oe),We=y((Ce,De)=>`${Ce.toFixed(1)},${De.toFixed(1)}`,"getKey"),se=We(W.x,W.y),Te=We(Z.x,Z.y),je=new Map,xe=new Map,yA=new Map,Ne=new Set,He=[];je.set(se,0),yA.set(se,"n"),He.push({key:se,f:Math.hypot(Z.x-W.x,Z.y-W.y),pt:W}),Ne.add(se);let de=[],NA=y((Ce,De)=>m(Ce,De,eA.start,eA.end),"checkSegmentBlocked"),ce={x:Z.x,y:W.y},me=NA(W,ce),Le=NA(ce,Z),Lt=me||Le,tt={x:W.x,y:Z.y},Ht=NA(W,tt),lr=NA(tt,Z),It=Ht||lr;if(!Lt)if(Math.abs(W.y-Z.y)<ni||Math.abs(W.x-Z.x)<ni)de=[W,Z];else de=[W,ce,Z];else if(!It)if(Math.abs(W.x-Z.x)<ni)de=[W,Z];else de=[W,tt,Z];if(de.length===0)while(He.length>0){He.sort((At,Ye)=>At.f-Ye.f);let Ce=He.shift();if(Ne.delete(Ce.key),Ce.key===Te){let At=Te,Ye=Z;de=[Ye];while(xe.has(At)){let Bt=xe.get(At);de.unshift(Bt),Ye=Bt,At=We(Bt.x,Bt.y)}break}let De=Ce.pt.x,Ve=Ce.pt.y,Vt=ke.sort((At,Ye)=>At.coord-Ye.coord),jt=Vt.findIndex((At)=>Math.abs(At.coord-De)<1),Or=MA.sort((At,Ye)=>At.coord-Ye.coord),bi=Or.findIndex((At)=>Math.abs(At.coord-Ve)<1),fr=[];if(jt>0)fr.push({x:Vt[jt-1].coord,y:Ve});if(jt>=0&&jt<Vt.length-1)fr.push({x:Vt[jt+1].coord,y:Ve});if(bi>0)fr.push({x:De,y:Or[bi-1].coord});if(bi>=0&&bi<Or.length-1)fr.push({x:De,y:Or[bi+1].coord});for(let At of fr){let Ye=Math.min(De,At.x),Bt=Math.max(De,At.x),nt=Math.min(Ve,At.y),Me=Math.max(Ve,At.y);if(l.some((bn)=>{if(bn.nodeId===eA.start||bn.nodeId===eA.end)return!1;if(Ye!==Bt)return bn.minY<Ve&&bn.maxY>Ve&&bn.maxX>Ye&&bn.minX<Bt;else return bn.minX<De&&bn.maxX>De&&bn.maxY>nt&&bn.minY<Me}))continue;let LA=We(At.x,At.y),Gi=Math.abs(At.x-De)+Math.abs(At.y-Ve),HA=Q(nA,Ce.pt,At),Er=0,xa=Z.x-W.x,ns=Z.y-W.y,Og=At.x-De,os=At.y-Ve;if(ns>10&&os<-5||ns<-10&&os>5)Er=Math.abs(os)*100;if(xa>10&&Og<-5||xa<-10&&Og>5)Er+=Math.abs(Og)*50;let ri=0,Ku=yA.get(Ce.key)??"n",yo=Math.abs(Og)>ni?"h":"v";if(Ku!=="n"&&Ku!==yo)ri=50;let v0=Gi+HA+Er+ri,Sa=(je.get(Ce.key)??1/0)+v0,JB=Math.abs(Z.x-At.x)+Math.abs(Z.y-At.y);if(Sa<(je.get(LA)??1/0))if(xe.set(LA,Ce.pt),je.set(LA,Sa),yA.set(LA,yo),!Ne.has(LA))He.push({key:LA,f:Sa+JB,pt:At}),Ne.add(LA);else{let bn=He.findIndex((AC)=>AC.key===LA);if(bn!==-1)He[bn].f=Sa+JB}}}if(de.length===0)de=[W,{x:W.x,y:Z.y},Z];if(de.length>4){let Ce=de[0],De=de[de.length-1],Ve=Math.min(Ce.x,De.x),Vt=Math.max(Ce.x,De.x),jt=Math.min(Ce.y,De.y),Or=Math.max(Ce.y,De.y);for(let nt of de)Ve=Math.min(Ve,nt.x),Vt=Math.max(Vt,nt.x),jt=Math.min(jt,nt.y),Or=Math.max(Or,nt.y);let bi=Vt>Math.max(Ce.x,De.x),fr=Ve<Math.min(Ce.x,De.x);if(o){let nt=_y;if(bi){let Me=Math.max(Ce.x,De.x),kt=Math.min(Ce.y,De.y),LA=Math.max(Ce.y,De.y),Gi=l.filter((HA)=>HA.minX<Me&&HA.maxX>Me&&HA.minY<LA&&HA.maxY>kt);if(Gi.length>0){let HA=Math.max(Ce.x,De.x);for(let Er of Gi){let xa=(Er.minX+Er.maxX)/2;if(Er.visualXHalfExtent===void 0||isNaN(Er.visualXHalfExtent))continue;let ns=xa+Er.visualXHalfExtent+nt;HA=Math.max(HA,ns)}if(!isNaN(HA))Vt=HA}}if(fr){let Me=l.filter((kt)=>kt.minX<Math.min(Ce.x,De.x)+nt&&kt.minY<Math.max(Ce.y,De.y)&&kt.maxY>Math.min(Ce.y,De.y));if(Me.length>0){let kt=Math.min(Ce.x,De.x);for(let LA of Me){let HA=(LA.minX+LA.maxX)/2-LA.visualXHalfExtent-nt;kt=Math.min(kt,HA)}Ve=kt}}}let At=y((nt)=>{let Me=De.y>Ce.y,kt=l.filter((HA)=>{let Er=Math.min(Ce.x,De.x)<HA.maxX&&Math.max(Ce.x,De.x)>HA.minX,xa=Math.min(Ce.y,De.y)<HA.maxY&&Math.max(Ce.y,De.y)>HA.minY;return Er&&xa}),LA=kt;if(o&&kt.length>0){let HA=kt.filter((Er)=>Er.minX<nt&&Er.maxX>nt);if(HA.length>0)LA=HA}if(LA.length===0)return De.y;let Gi=Wf;if(Me){let Er=Math.max(...LA.map((xa)=>xa.maxY))+Gi;if(Er<De.y-ni)return Er}else{let Er=Math.min(...LA.map((xa)=>xa.minY))-Gi;if(Er>De.y+ni)return Er}return De.y},"findBestReturnY"),Ye=y((nt)=>{let Me=At(nt),kt={x:nt,y:Ce.y},LA={x:nt,y:Me},Gi={x:De.x,y:Me},HA=NA(Ce,kt),Er=NA(kt,LA),xa=NA(LA,Gi),ns=Me!==De.y?NA(Gi,De):!1;if(!HA&&!Er&&!xa&&!ns){if(Math.abs(Me-De.y)<ni)return[Ce,kt,LA,De];return[Ce,kt,LA,Gi,De]}return null},"trySimplifyWithDetourX"),Bt=bi&&!fr?Ye(Vt):fr&&!bi?Ye(Ve):null;if(Bt)de=Bt}let Ct=[kA,...KA,...de,...WA.reverse(),SA];if(Ct.length>=3){let Ce=Ct[Ct.length-1],De=Ct[Ct.length-2],Ve=Ct[Ct.length-3],Vt=Math.abs(Ve.y-De.y)<ni&&Math.abs(De.y-Ce.y)<ni,jt=Math.abs(Ve.x-De.x)<ni&&Math.abs(De.x-Ce.x)<ni;if(Vt){let Or=Math.sign(De.x-Ve.x),bi=Math.sign(Ce.x-Ve.x);if(Or!==0&&Or===bi&&Math.abs(De.x-Ve.x)>Math.abs(Ce.x-Ve.x))Ct.splice(-2,1)}else if(jt){let Or=Math.sign(De.y-Ve.y),bi=Math.sign(Ce.y-Ve.y);if(Or!==0&&Or===bi&&Math.abs(De.y-Ve.y)>Math.abs(Ce.y-Ve.y))Ct.splice(-2,1)}}let Kt=[Ct[0]];for(let Ce=1;Ce<Ct.length-1;Ce++){if(Ce===1){Kt.push(Ct[Ce]);continue}let De=Kt[Kt.length-1],Ve=Ct[Ce],Vt=Ct[Ce+1];if(Math.abs(De.y-Ve.y)<ni&&Math.abs(Ve.y-Vt.y)<ni){let jt=Ve.x>De.x,Or=Vt.x>Ve.x;if(jt!==Or){Kt.push(Ve);continue}continue}if(Math.abs(De.x-Ve.x)<ni&&Math.abs(Ve.x-Vt.x)<ni){let jt=Ve.y>De.y,Or=Vt.y>Ve.y;if(jt!==Or){Kt.push(Ve);continue}continue}Kt.push(Ve)}Kt.push(Ct[Ct.length-1]);for(let Ce=0;Ce<Kt.length-1;Ce++){let De=Kt[Ce],Ve=Kt[Ce+1],Vt=Math.abs(De.x-Ve.x)<ni?"vertical":"horizontal",jt=Vt==="vertical"?De.x:De.y,Or=Vt==="vertical"?Math.min(De.y,Ve.y):Math.min(De.x,Ve.x),bi=Vt==="vertical"?Math.max(De.y,Ve.y):Math.max(De.x,Ve.x),fr=g(Vt,jt,Or,bi),At={edgeIndex:nA,segmentIndex:Ce,orientation:Vt,pipe:fr,trackIndex:0,from:Or,to:bi};if(E.push(At),d[nA].push(E.length-1),!fr.tracks[0])fr.tracks[0]={index:0,coord:fr.coord,segments:[]};fr.tracks[0].segments.push({edgeIndex:nA,segmentIndex:Ce,from:Or,to:bi})}}let K=y((nA,eA)=>nA.from<eA.to&&eA.from<nA.to,"segmentsOverlap"),O=y((nA,eA,EA,mA)=>{let kA=!mA.segments.some((YA)=>(YA.edgeIndex!==eA.edgeIndex||YA.segmentIndex!==eA.segmentIndex)&&K(YA,nA)),SA=!EA.segments.some((YA)=>(YA.edgeIndex!==nA.edgeIndex||YA.segmentIndex!==nA.segmentIndex)&&K(YA,eA));if(kA&&SA)return nA.trackIndex=mA.index,eA.trackIndex=EA.index,EA.segments=[...EA.segments.filter((YA)=>YA.edgeIndex!==nA.edgeIndex||YA.segmentIndex!==nA.segmentIndex),{edgeIndex:eA.edgeIndex,segmentIndex:eA.segmentIndex,from:eA.from,to:eA.to}],mA.segments=[...mA.segments.filter((YA)=>YA.edgeIndex!==eA.edgeIndex||YA.segmentIndex!==eA.segmentIndex),{edgeIndex:nA.edgeIndex,segmentIndex:nA.segmentIndex,from:nA.from,to:nA.to}],!0;return!1},"trySwapSegmentsAcrossTracks"),_=y((nA)=>{let eA=nA.tracks.length;return nA.tracks[eA]={index:eA,coord:nA.coord,segments:[]},eA},"createNewTrack"),z=y((nA,eA)=>{let EA=nA.pipe.tracks[nA.trackIndex];EA.segments=EA.segments.filter((kA)=>kA.edgeIndex!==nA.edgeIndex||kA.segmentIndex!==nA.segmentIndex),nA.trackIndex=eA,nA.pipe.tracks[eA].segments.push({edgeIndex:nA.edgeIndex,segmentIndex:nA.segmentIndex,from:nA.from,to:nA.to})},"moveSegmentToTrack"),j=y((nA,eA)=>{let EA=d[nA.edgeIndex];for(let mA of EA){let kA=E[mA];if(kA.pipe===nA.pipe)z(kA,eA)}},"moveSegmentChainToTrack"),q=y((nA)=>{let eA=d[nA.edgeIndex],EA=eA.indexOf(E.indexOf(nA)),mA=[];if(EA>0)mA.push(E[eA[EA-1]]);if(EA<eA.length-1)mA.push(E[eA[EA+1]]);return mA},"getAdjacentSegmentsAlongEdge"),CA=y((nA,eA)=>{if(nA.orientation===eA.orientation)return!1;let EA=nA.orientation==="horizontal"?nA:eA,mA=nA.orientation==="horizontal"?eA:nA;return mA.pipe.coord>EA.from&&mA.pipe.coord<EA.to&&EA.pipe.coord>mA.from&&EA.pipe.coord<mA.to},"haveAnyCrossing"),tA=y((nA,eA)=>{for(let EA of nA.tracks)if(!EA.segments.some((kA)=>(kA.edgeIndex!==eA.edgeIndex||kA.segmentIndex!==eA.segmentIndex)&&K(kA,eA)))return EA.index;return-1},"findAvailableTrack"),lA=y((nA,eA)=>{if(nA.trackIndex===eA.trackIndex)return K(nA,eA);let EA=q(nA),mA=q(eA);return EA.some((kA)=>mA.some((SA)=>CA(kA,SA)))},"segmentsConflict"),gA=y((nA,eA,EA)=>{if(O(nA,eA,nA.pipe.tracks[nA.trackIndex],eA.pipe.tracks[eA.trackIndex]))return;let mA=tA(nA.pipe,eA);EA(eA,mA!==-1?mA:_(nA.pipe))},"resolveTrackConflict"),aA=y((nA)=>{let eA=0;for(let EA=0;EA<nA.length;EA++)for(let mA=EA+1;mA<nA.length;mA++){let kA=nA[EA],SA=nA[mA];if(kA.pipe!==SA.pipe)continue;if(lA(kA,SA))eA++,gA(kA,SA,j)}return eA},"resolveHandleConflicts"),RA=new Map,wA=y((nA)=>{if(RA.has(nA))return RA.get(nA);let eA=d[nA];if(eA.length===0){let dA={dest:0,deviation:0,base:0,delta:0};return RA.set(nA,dA),dA}let mA=E[eA[0]].pipe.coord,kA=mA;for(let dA=1;dA<eA.length;dA++){let W=E[eA[dA]];if(W.orientation==="horizontal"){let{from:Z,to:pA}=W;kA=Math.abs(Z-mA)>Math.abs(pA-mA)?Z:pA;break}}let SA=Math.abs(kA-mA),YA={dest:kA,deviation:SA,base:mA,delta:kA-mA};return RA.set(nA,YA),YA},"getDestInfo"),JA=y(()=>{let nA=0,eA=new Map;for(let[mA,kA]of i.entries()){if(d[mA].length===0)continue;if(!kA.start)continue;if(!eA.has(kA.start))eA.set(kA.start,[]);eA.get(kA.start).push(mA)}let EA=y((mA)=>{let kA=i[mA];if(!kA.start||!kA.end)return 0;let SA=u.get(kA.start),YA=u.get(kA.end);if(!SA||!YA)return 0;let dA=(YA.x??0)-(SA.x??0),W=(YA.y??0)-(SA.y??0);return Math.abs(dA)+Math.abs(W)},"getEdgeDistance");for(let mA of eA.values()){mA.sort((SA,YA)=>{let dA=wA(SA),W=wA(YA);if(Math.abs(dA.deviation-W.deviation)>1)return dA.deviation-W.deviation;if(Math.abs(dA.dest-W.dest)>1)return dA.dest-W.dest;let Z=EA(SA),pA=EA(YA);if(Math.abs(Z-pA)>1)return pA-Z;let AA=d[SA].length,DA=d[YA].length;if(AA!==DA)return AA-DA;if(AA===1){let rA=d[SA][0],KA=d[YA][0];if(E[rA]&&E[KA]){let _A=E[rA],zA=E[KA],WA=Math.abs(_A.to-_A.from),te=Math.abs(zA.to-zA.from);if(Math.abs(WA-te)>1)return WA-te}}return 0});let kA=mA.map((SA)=>E[d[SA][0]]);nA+=aA(kA)}return nA},"fixSourceHandleCrossings"),TA=y(()=>{let nA=0,eA=new Map;for(let[EA,mA]of i.entries()){if(d[EA].length===0)continue;if(!mA.end)continue;if(!eA.has(mA.end))eA.set(mA.end,[]);eA.get(mA.end).push(EA)}for(let EA of eA.values()){EA.sort((kA,SA)=>{let YA=y((Z)=>{let pA=d[Z];if(pA.length<2)return 0;let AA=E[pA[pA.length-2]];return Math.abs(AA.to-AA.from)},"getDist"),dA=YA(kA),W=YA(SA);if(Math.abs(dA-W)>0.1)return dA-W;return kA-SA});let mA=EA.map((kA)=>E[d[kA][d[kA].length-1]]);nA+=aA(mA)}return nA},"fixTargetHandleCrossings"),qA=y(()=>{let nA=0;for(let eA of n){let EA=[];for(let mA of eA.tracks)for(let kA of mA.segments){let SA=d[kA.edgeIndex].find((YA)=>E[YA].segmentIndex===kA.segmentIndex);if(SA!==void 0)EA.push(E[SA])}EA.sort((mA,kA)=>mA.edgeIndex-kA.edgeIndex||mA.segmentIndex-kA.segmentIndex);for(let mA=0;mA<EA.length;mA++)for(let kA=mA+1;kA<EA.length;kA++){let SA=EA[mA],YA=EA[kA];if(lA(SA,YA))nA++,gA(SA,YA,z)}}return nA},"fixPipeCrossings"),BA=0,bA=10;while(BA<bA){let nA=0;if(nA+=JA(),nA+=TA(),nA+=qA(),nA===0)break;BA++}let FA=new Map;for(let nA of n){let eA=[];nA.tracks.forEach((mA)=>{mA.segments.forEach((kA)=>{eA.push({edgeIndex:kA.edgeIndex,segmentIndex:kA.segmentIndex,trackIndex:mA.index,from:kA.from,to:kA.to})})}),eA.sort((mA,kA)=>mA.from-kA.from);let EA=[];if(eA.length>0){let mA=[eA[0]],kA=eA[0].to;for(let SA=1;SA<eA.length;SA++){let YA=eA[SA];if(YA.from<kA)mA.push(YA),kA=Math.max(kA,YA.to);else EA.push(mA),mA=[YA],kA=YA.to}EA.push(mA)}for(let mA of EA){let kA=new Set;mA.forEach((rA)=>kA.add(rA.trackIndex));let SA=new Map;mA.forEach((rA)=>{let KA=wA(rA.edgeIndex);SA.set(rA.trackIndex,(SA.get(rA.trackIndex)??0)+KA.delta)});let YA=[...kA].filter((rA)=>(SA.get(rA)??0)<-1),dA=[...kA].filter((rA)=>(SA.get(rA)??0)>1),W=[...kA].filter((rA)=>Math.abs(SA.get(rA)??0)<=1);YA.sort((rA,KA)=>(SA.get(KA)??0)-(SA.get(rA)??0)),dA.sort((rA,KA)=>(SA.get(rA)??0)-(SA.get(KA)??0));let Z=y((rA,KA)=>{mA.filter((_A)=>_A.trackIndex===rA).forEach((_A)=>{let zA=I.has(_A.edgeIndex)?nA.coord:KA;FA.set(`${_A.edgeIndex}-${_A.segmentIndex}`,zA)})},"assignCoord"),pA=0;for(let rA of YA)pA++,Z(rA,nA.coord-pA*KrA);if(W.length===0&&kA.size>0){let rA=[...kA].sort((zA,WA)=>Math.abs(SA.get(zA)??0)-Math.abs(SA.get(WA)??0))[0],KA=YA.indexOf(rA);if(KA!==-1)YA.splice(KA,1);let _A=dA.indexOf(rA);if(_A!==-1)dA.splice(_A,1);W.push(rA)}let AA=0;for(let rA of W){if(AA===0)Z(rA,nA.coord);else{let KA=AA%2===1?1:-1,_A=Math.ceil(AA/2);Z(rA,nA.coord+KA*_A*KrA*0.5)}AA++}let DA=0;for(let rA of dA)DA++,Z(rA,nA.coord+DA*KrA)}}for(let[nA,eA]of i.entries()){let EA=d[nA]??[];if(EA.length===0)continue;let mA=[],kA=u.get(eA.start),SA=u.get(eA.end),{pSrcPort:YA,pDstPort:dA}=J(nA,kA,SA),W=EA.map((AA)=>{let DA=E[AA],rA=FA.get(`${DA.edgeIndex}-${DA.segmentIndex}`)??DA.pipe.coord;return{orient:DA.orientation,coord:rA,from:DA.from,to:DA.to}});mA.push(YA);for(let AA=0;AA<W.length;AA++){let DA=W[AA],rA=mA[mA.length-1],KA=DA.orient==="vertical"?rA.y:rA.x,_A=DA.orient==="vertical"?rA.x:rA.y,zA=W[AA+1],WA=AA<W.length-1;if(Math.abs(_A-DA.coord)>ni)mA.push(qf(DA,KA));if(WA&&zA.orient===DA.orient){if(Math.abs(DA.coord-zA.coord)>ni){let te=DA.orient==="vertical"?(KA+zA.from)/2:piA(DA,zA);mA.push(qf(DA,te),qf(zA,te))}else if(AA===0||AA===W.length-2)mA.push(qf(DA,piA(DA,zA)))}else if(WA)mA.push(qf(DA,zA.coord));else{let te=Math.abs(DA.from-KA)<Math.abs(DA.to-KA)?DA.to:DA.from;mA.push(qf(DA,te))}}let Z=mA[mA.length-1];if(Math.abs(Z.x-dA.x)>ni||Math.abs(Z.y-dA.y)>ni)mA.push(dA);let pA=[];if(mA.length>0)pA.push(mA[0]);for(let AA=1;AA<mA.length;AA++){let DA=mA[AA],rA=pA[pA.length-1];if(Math.abs(DA.x-rA.x)>ni||Math.abs(DA.y-rA.y)>ni)pA.push(DA)}eA.points=pA}for(let nA of i){let eA=nA.__originalEdge;if(eA&&nA.points)eA.points=nA.points}A.edges=(A.edges??[]).filter((nA)=>!nA.isLayoutOnly);let IA=y((nA,eA)=>{let EA=eA.x??0,mA=eA.y??0,kA=eA.width??0,SA=eA.height??0;if(kA<=0||SA<=0)return nA;let YA=EA-kA/2,dA=EA+kA/2,W=mA-SA/2,Z=mA+SA/2;if(nA.x<YA||nA.x>dA||nA.y<W||nA.y>Z)return nA;let pA=nA.x-YA,AA=dA-nA.x,DA=nA.y-W,rA=Z-nA.y,KA=Math.min(pA,AA,DA,rA);if(KA===pA)return{x:YA,y:nA.y};if(KA===AA)return{x:dA,y:nA.y};if(KA===DA)return{x:nA.x,y:W};return{x:nA.x,y:Z}},"nodeBoundaryClamp");for(let nA of A.edges){let eA=nA.points;if(!eA||eA.length<2)continue;let{start:EA,end:mA}=nA,kA=EA?u.get(EA):void 0,SA=mA?u.get(mA):void 0;if(kA)eA[0]=IA(eA[0],kA);if(SA)eA[eA.length-1]=IA(eA[eA.length-1],SA)}return A}function mTA(A){return A.direction??"TB"}function DTA(A){let e=uMA(A),t=A.config.flowchart?.nodeSpacing??40,r=A.config.flowchart?.rankSpacing??100,i=A.config.swimlane?.ignoreCrossLaneEdges??!0,u=A.config.swimlane?.optimizeRanksByCrossings??!0,a=A.config.swimlane?.automaticLaneOrdering??!1,n=mTA(A),{ordered:o,coordinates:s}=pTA(e,{nodeGap:t,layerGap:r,ignoreCrossLaneEdges:i,optimizeRanksByCrossings:u,automaticLaneOrdering:a,direction:n});aMA(e,o,s,{nodeGap:t,layerGap:r});for(let l of A.edges??[])delete l.points;fTA(A,n);for(let l of A.edges??[])if(!l.curve||l.curve==="basis")l.curve="rounded";return TMA(A,n),MMA(A),n}async function yTA(A,e){let t=e.select("g");hy(t,A.markers,A.type,A.diagramId),vU(),FU(),wU(),TM(),iMA(A);let r=nMA(A);A.nodes=r.nodes,A.edges=r.edges;let{groups:i}=await PUA(t,A);DTA(A),await eMA(A,i)}var TUA=5,OM=0.00001,PM=0.000001,Bht=0.001,TrA="__swimlane_default__",Eht=21,YUA=20,dht="[EdgeLabelNodes]",Lo=0.001,yr=0.001,Iht=0.5,HUA=4,vC=0.000001,hht=8,_M,Qht,Ot=0.001,So=8,ti,YrA,C4=0.001,pht=8,Bl=0.001,KUA=10,WM=7,HrA=0.000001,fht=8,JUA,mht=3,Dht,iT,OUA,gTA=8,ni,yht=8,Wf=15,_y=15,qM=25,ac=20,KrA=10;var bTA=P(()=>{orA();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();gg();y(PUA,"createGraphWithElements");y(VM,"buildSegmentList");y(_UA,"segmentIntersection");y(JrA,"isHorizontalSeg");y(WUA,"findEdgeIntersections");y(kC,"fmt");y(Wy,"pointToString");y(qUA,"getArcSweepFlag");y(zUA,"applyMarkerOffsets");y(ZUA,"emitJump");y(OrA,"computeRoundedCorner");y(VUA,"rewriteEdgePath");y(jUA,"isStraightPath");y(XUA,"curveSupportsLineHops");y($UA,"decodeDataPoints");y(AMA,"applyLineJumpsToSvg");y(eMA,"adjustLayout");y(tMA,"positionEdgeLabel");y(PrA,"topLaneHorizontalPadding");y(rMA,"assignTopLaneTitleRect");y(iMA,"prepareLayoutForSwimlanes");y(uMA,"toGraphView");y(aMA,"writeBackToLayoutData");y(nMA,"createEdgeLabelNodes");y(fiA,"measuredNodeRect");y(miA,"nodeBoundsInfoFor");y(nc,"samePoint");y(Bi,"sameX");y(pi,"sameY");y(Va,"isHorizontalSegment");y(ja,"isVerticalSegment");y(Qs,"overlapLength");y(vE,"sameAxisSegmentOverlapLength");y(zy,"orthogonalSegmentsForPoints");y(cg,"countOrthogonalBends");y(Ti,"dedupeConsecutivePoints");y(DiA,"classifyThreeSegmentRoute");y(aT,"segmentBoundsOverlapRect");y(yiA,"pointInsideRect");y(oMA,"rectContainsRect");y(jM,"rectsOverlap");y(_rA,"inflateRect");y(qy,"rectFromCenterSize");y(El,"rectOfNodeBounds");y(zf,"portForRectSide");y(wiA,"buildOrthogonalPortPath");y(biA,"buildSameSideTrackPath");y(nT,"collectRealNodeBounds");y(B4,"collectNodeRectEntries");y(sMA,"collectLayoutNodeRects");y(viA,"getNodePairGeometry");y(En,"segmentHitsAnyRect");y(kiA,"orthogonalSegmentsCross");y(lMA,"sameAxisSegmentsOverlap");y(XM,"segmentConflictsWithAnyEdge");y(LI,"orthogonalSegmentsStrictlyCross");y(WrA,"strictlyBetween");y(gMA,"isCollinearIntermediate");y(cMA,"simplifyPolylineOnce");y($M,"orthogonalizePolyline");y(kE,"simplifyPolyline");y(FiA,"endpointContextFor");y(CMA,"segmentEnterPoint");y(qrA,"clipEndpoint");y(BMA,"clipEdgeEndpointsToNodeBoundaries");y(zrA,"snapEndpointToBoundary");y(AT,"firstDistinctAdjacent");y(eT,"cornerClearanceRange");y(ZrA,"clampToCornerClearance");y(EMA,"intersectRanges");y(VrA,"clearanceRangeForSide");y(tT,"terminalSideForSegment");y(yk,"isHorizontalSide");y(dMA,"straightClearanceRange");y(jrA,"clearStraightEndpointCornerAxis");y(xiA,"clearStraightEndpointCornerConnections");y(IMA,"cornerClearedEndpoint");y(hMA,"moveCollinearEndpointRun");y(XrA,"clearEndpointCornerConnection");y($rA,"borderSideForSegment");y(AiA,"leavesOutward");y(eiA,"collapseOwnBorderStub");y(QMA,"snapAndCollapseEndpoints");y(tiA,"prepareEdgeEndpointsForRenderer");y(SiA,"buildNodeMap");y(pMA,"resolveTopLevelGroupId");y(riA,"groupDepth");y(LiA,"boundsForChildren");y(fMA,"applyGroupBounds");y(mMA,"recomputeNestedGroupBounds");y(rT,"mirrorAxis");y(DMA,"applyBtDirectionTransform");y(yMA,"applyLrDirectionTransform");_M=hht,Qht=[0,_M,-_M,2*_M,-2*_M];y(wMA,"portSwapToLShape");y(bMA,"collapseShortTerminalStub");ti=zy,YrA=y((A,e)=>Bi(A,e,Ot)||pi(A,e,Ot),"orthogonallyAligned");y(vMA,"separateSharedRenderedTerminalLanes");y(kMA,"collapseRedundantRectangularDoglegs");y(iiA,"liftObstacleHuggingSameSideRails");y(uiA,"liftTopLaneTitleBandsAboveRails");y(aiA,"shiftLeftLaneTitleBandsLeftOfRails");y(FMA,"swapDestinationTerminalTailsToReduceCrossings");y(xMA,"reassignCrossingExternalRailChannels");y(SMA,"shortcutRedundantOrthogonalJogs");y(LMA,"resolveRenderedOrthogonalCrossings");y(RMA,"simplifyDetouredEdges");y(niA,"markerClearanceRectFor");y(NMA,"normalizeRect");y(oiA,"labelOverlapsOwnMarker");y(zM,"anchorLabelsToPolyline");JUA=fht/2;y(siA,"pairKey");y(GMA,"straightenCollinearSiblingDetours");y(liA,"nudgeSharedInteriorSubpaths");y(UMA,"segmentsIntersect");y(MMA,"validateSwimlanesLayout");y(TMA,"postProcessSwimlaneLayout");y(E4,"normalizeGraph");y(RiA,"incoming");y(YMA,"buildSuccessorMap");y(NiA,"buildSortedSuccessorMap");y(GiA,"buildInDegreeMap");y(UiA,"sortedZeroInDegreeNodes");y(oT,"buildPredecessorSuccessorMaps");y(MiA,"buildLayersFromRanks");y(wk,"topoSortIfAcyclic");y(Zy,"buildLayerIndex");y(TiA,"countInversions");y(HMA,"removeCycles_DFS");y(KMA,"buildTopLaneMap");y(RI,"createTopLaneResolver");y(sT,"buildTopLaneOrder");y(YiA,"resolveTopLaneOrder");Dht={EPSILON:0.000001},iT={GRAVITY_ITERATIONS:8,MAX_CROSSING_OPTIMIZATION_PASSES:4,DEFAULT_COMPACT_SINGLE_INPUT:!0},OUA={DEFAULT_LAYER_GAP:100,DEFAULT_NODE_GAP:40};y(JMA,"buildDrivingTree");y(OMA,"chooseParent");y(PMA,"buildAdjacency");y(_MA,"assignComponents");y(WMA,"computeBlocks");y(qMA,"popBlock");y(zMA,"computeSubtreeCrossCounts");y(ZMA,"annotateMinimumLayers");y(HiA,"compareByRankThenId");y(VMA,"emitNodesInTreeOrder");y(jMA,"deduplicateLayers");y(XMA,"createChildOrderer");y(uT,"buildMultitreeLayerOrder");y($MA,"countCrossingsBetweenAdjacent");y(giA,"totalCrossings");y(ATA,"optimizeRanksByCrossings");y(eTA,"adjustCrossLaneSources");y(tTA,"assignLayers_LongestPath");y(rTA,"assignLayers_Gravity");y(iTA,"topoSortByGenerationIfAcyclic");y(uTA,"assignLayers_LaneAwareCompact");y(aTA,"makeProperLayering");y(ciA,"median");y(CiA,"barycenter");y(nTA,"neighborPositionsFor");y(oTA,"currentOrderTieBreak");y(BiA,"countCrossingsBetweenAdjacent");y(ZM,"sortByHeuristic");y(EiA,"reorderLayer");y(diA,"transposeImprove");y(sTA,"orderLayers");y(lTA,"assignCoordinates");y(cTA,"hashString");y(CTA,"mulberry32");y(BTA,"deterministicShuffle");y(ETA,"sourceDistance");y(IiA,"laneArrangementCost");y(dTA,"buildWeightedLaneEdges");y(hiA,"greedySwitch");y(ITA,"isBetterCandidate");y(hTA,"seedForRestart");y(QTA,"optimizeTopLaneOrder");y(pTA,"sugiyamaLayout");ni=Dht.EPSILON;y(QiA,"chooseOrthogonalSide");y(piA,"sharedLineEndpointCoord");y(qf,"pointOnLine");y(fTA,"routeEdgesOrthogonal");y(mTA,"getSwimlaneDirection");y(DTA,"runSwimlaneLayoutCore");y(yTA,"render")});function IaA(A,e){(e==null||e>A.length)&&(e=A.length);for(var t=0,r=Array(e);t<e;t++)r[t]=A[t];return r}function wht(A){if(Array.isArray(A))return A}function bht(A){if(Array.isArray(A))return IaA(A)}function S4(A,e){if(!(A instanceof e))throw TypeError("Cannot call a class as a function")}function vht(A,e){for(var t=0;t<e.length;t++){var r=e[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(A,tKA(r.key),r)}}function L4(A,e,t){return e&&vht(A.prototype,e),Object.defineProperty(A,"prototype",{writable:!1}),A}function Il(A,e){var t=typeof Symbol<"u"&&A[Symbol.iterator]||A["@@iterator"];if(!t){if(Array.isArray(A)||(t=MaA(A))||e){t&&(A=t);var r=0,i=function(){};return{s:i,n:function(){return r>=A.length?{done:!0}:{done:!1,value:A[r++]}},e:function(o){throw o},f:i}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var u,a=!0,n=!1;return{s:function(){t=t.call(A)},n:function(){var o=t.next();return a=o.done,o},e:function(o){n=!0,u=o},f:function(){try{a||t.return==null||t.return()}finally{if(n)throw u}}}}function eKA(A,e,t){return(e=tKA(e))in A?Object.defineProperty(A,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):A[e]=t,A}function kht(A){if(typeof Symbol<"u"&&A[Symbol.iterator]!=null||A["@@iterator"]!=null)return Array.from(A)}function Fht(A,e){var t=A==null?null:typeof Symbol<"u"&&A[Symbol.iterator]||A["@@iterator"];if(t!=null){var r,i,u,a,n=[],o=!0,s=!1;try{if(u=(t=t.call(A)).next,e===0){if(Object(t)!==t)return;o=!1}else for(;!(o=(r=u.call(t)).done)&&(n.push(r.value),n.length!==e);o=!0);}catch(l){s=!0,i=l}finally{try{if(!o&&t.return!=null&&(a=t.return(),Object(a)!==a))return}finally{if(s)throw i}}return n}}function xht(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Sht(){throw TypeError(`Invalid attempt to spread non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Tn(A,e){return wht(A)||Fht(A,e)||MaA(A,e)||xht()}function NT(A){return bht(A)||kht(A)||MaA(A)||Sht()}function Lht(A,e){if(typeof A!="object"||!A)return A;var t=A[Symbol.toPrimitive];if(t!==void 0){var r=t.call(A,e);if(typeof r!="object")return r;throw TypeError("@@toPrimitive must return a primitive value.")}return String(A)}function tKA(A){var e=Lht(A,"string");return typeof e=="symbol"?e:e+""}function io(A){return io=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},io(A)}function MaA(A,e){if(A){if(typeof A=="string")return IaA(A,e);var t={}.toString.call(A).slice(8,-1);return t==="Object"&&A.constructor&&(t=A.constructor.name),t==="Map"||t==="Set"?Array.from(A):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?IaA(A,e):void 0}}function jk(A){return A&&A.__esModule&&Object.prototype.hasOwnProperty.call(A,"default")?A.default:A}function Xk(){if(FTA)return KiA;FTA=1;function A(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}return KiA=A,KiA}function AQt(){if(xTA)return JiA;xTA=1;var A=typeof lT=="object"&&lT&&lT.Object===Object&&lT;return JiA=A,JiA}function ZT(){if(STA)return OiA;STA=1;var A=AQt(),e=typeof self=="object"&&self&&self.Object===Object&&self,t=A||e||Function("return this")();return OiA=t,OiA}function eQt(){if(LTA)return PiA;LTA=1;var A=ZT(),e=function(){return A.Date.now()};return PiA=e,PiA}function tQt(){if(RTA)return _iA;RTA=1;var A=/\s/;function e(t){var r=t.length;while(r--&&A.test(t.charAt(r)));return r}return _iA=e,_iA}function rQt(){if(NTA)return WiA;NTA=1;var A=tQt(),e=/^\s+/;function t(r){return r?r.slice(0,A(r)+1).replace(e,""):r}return WiA=t,WiA}function HaA(){if(GTA)return qiA;GTA=1;var A=ZT(),e=A.Symbol;return qiA=e,qiA}function iQt(){if(UTA)return ziA;UTA=1;var A=HaA(),e=Object.prototype,{hasOwnProperty:t,toString:r}=e,i=A?A.toStringTag:void 0;function u(a){var n=t.call(a,i),o=a[i];try{a[i]=void 0;var s=!0}catch(g){}var l=r.call(a);if(s)if(n)a[i]=o;else delete a[i];return l}return ziA=u,ziA}function uQt(){if(MTA)return ZiA;MTA=1;var A=Object.prototype,e=A.toString;function t(r){return e.call(r)}return ZiA=t,ZiA}function cKA(){if(TTA)return ViA;TTA=1;var A=HaA(),e=iQt(),t=uQt(),r="[object Null]",i="[object Undefined]",u=A?A.toStringTag:void 0;function a(n){if(n==null)return n===void 0?i:r;return u&&u in Object(n)?e(n):t(n)}return ViA=a,ViA}function aQt(){if(YTA)return jiA;YTA=1;function A(e){return e!=null&&typeof e=="object"}return jiA=A,jiA}function $k(){if(HTA)return XiA;HTA=1;var A=cKA(),e=aQt(),t="[object Symbol]";function r(i){return typeof i=="symbol"||e(i)&&A(i)==t}return XiA=r,XiA}function nQt(){if(KTA)return $iA;KTA=1;var A=rQt(),e=Xk(),t=$k(),r=NaN,i=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,a=/^0o[0-7]+$/i,n=parseInt;function o(s){if(typeof s=="number")return s;if(t(s))return r;if(e(s)){var l=typeof s.valueOf=="function"?s.valueOf():s;s=e(l)?l+"":l}if(typeof s!="string")return s===0?s:+s;s=A(s);var g=u.test(s);return g||a.test(s)?n(s.slice(2),g?2:8):i.test(s)?r:+s}return $iA=o,$iA}function oQt(){if(JTA)return AuA;JTA=1;var A=Xk(),e=eQt(),t=nQt(),r="Expected a function",{max:i,min:u}=Math;function a(n,o,s){var l,g,C,B,E,d,I=0,h=!1,Q=!1,p=!0;if(typeof n!="function")throw TypeError(r);if(o=t(o)||0,A(s))h=!!s.leading,Q="maxWait"in s,C=Q?i(t(s.maxWait)||0,o):C,p="trailing"in s?!!s.trailing:p;function m(k){var T=l,R=g;return l=g=void 0,I=k,B=n.apply(R,T),B}function f(k){return I=k,E=setTimeout(b,o),h?m(k):B}function D(k){var T=k-d,R=k-I,L=o-T;return Q?u(L,C-R):L}function w(k){var T=k-d,R=k-I;return d===void 0||T>=o||T<0||Q&&R>=C}function b(){var k=e();if(w(k))return F(k);E=setTimeout(b,D(k))}function F(k){if(E=void 0,p&&l)return m(k);return l=g=void 0,B}function v(){if(E!==void 0)clearTimeout(E);I=0,l=d=g=E=void 0}function S(){return E===void 0?B:F(e())}function x(){var k=e(),T=w(k);if(l=arguments,g=this,d=k,T){if(E===void 0)return f(d);if(Q)return clearTimeout(E),E=setTimeout(b,o),m(d)}if(E===void 0)E=setTimeout(b,o);return B}return x.cancel=v,x.flush=S,x}return AuA=a,AuA}function CQt(A,e,t,r,i){var u=i*Math.PI/180,a=Math.cos(u)*(A-t)-Math.sin(u)*(e-r)+t,n=Math.sin(u)*(A-t)+Math.cos(u)*(e-r)+r;return{x:a,y:n}}function EQt(A,e,t){if(t===0)return A;var r=(e.x1+e.x2)/2,i=(e.y1+e.y2)/2,u=e.w/e.h,a=1/u,n=CQt(A.x,A.y,r,i,t),o=BQt(n.x,n.y,r,i,u,a);return{x:o.x,y:o.y}}function bQt(){if(qTA)return DT.exports;return qTA=1,function(A,e){(function(){var t,r,i,u,a,n,o,s,l,g,C,B,E,d,I;i=Math.floor,g=Math.min,r=function(h,Q){if(h<Q)return-1;if(h>Q)return 1;return 0},l=function(h,Q,p,m,f){var D;if(p==null)p=0;if(f==null)f=r;if(p<0)throw Error("lo must be non-negative");if(m==null)m=h.length;while(p<m)if(D=i((p+m)/2),f(Q,h[D])<0)m=D;else p=D+1;return[].splice.apply(h,[p,p-p].concat(Q)),Q},n=function(h,Q,p){if(p==null)p=r;return h.push(Q),d(h,0,h.length-1,p)},a=function(h,Q){var p,m;if(Q==null)Q=r;if(p=h.pop(),h.length)m=h[0],h[0]=p,I(h,0,Q);else m=p;return m},s=function(h,Q,p){var m;if(p==null)p=r;return m=h[0],h[0]=Q,I(h,0,p),m},o=function(h,Q,p){var m;if(p==null)p=r;if(h.length&&p(h[0],Q)<0)m=[h[0],Q],Q=m[0],h[0]=m[1],I(h,0,p);return Q},u=function(h,Q){var p,m,f,D,w,b;if(Q==null)Q=r;D=function(){b=[];for(var F=0,v=i(h.length/2);0<=v?F<v:F>v;0<=v?F++:F--)b.push(F);return b}.apply(this).reverse(),w=[];for(m=0,f=D.length;m<f;m++)p=D[m],w.push(I(h,p,Q));return w},E=function(h,Q,p){var m;if(p==null)p=r;if(m=h.indexOf(Q),m===-1)return;return d(h,0,m,p),I(h,m,p)},C=function(h,Q,p){var m,f,D,w,b;if(p==null)p=r;if(f=h.slice(0,Q),!f.length)return f;u(f,p),b=h.slice(Q);for(D=0,w=b.length;D<w;D++)m=b[D],o(f,m,p);return f.sort(p).reverse()},B=function(h,Q,p){var m,f,D,w,b,F,v,S,x;if(p==null)p=r;if(Q*10<=h.length){if(D=h.slice(0,Q).sort(p),!D.length)return D;f=D[D.length-1],v=h.slice(Q);for(w=0,F=v.length;w<F;w++)if(m=v[w],p(m,f)<0)l(D,m,0,null,p),D.pop(),f=D[D.length-1];return D}u(h,p),x=[];for(b=0,S=g(Q,h.length);0<=S?b<S:b>S;0<=S?++b:--b)x.push(a(h,p));return x},d=function(h,Q,p,m){var f,D,w;if(m==null)m=r;f=h[p];while(p>Q){if(w=p-1>>1,D=h[w],m(f,D)<0){h[p]=D,p=w;continue}break}return h[p]=f},I=function(h,Q,p){var m,f,D,w,b;if(p==null)p=r;f=h.length,b=Q,D=h[Q],m=2*Q+1;while(m<f){if(w=m+1,w<f&&!(p(h[m],h[w])<0))m=w;h[Q]=h[m],Q=m,m=2*Q+1}return h[Q]=D,d(h,b,Q,p)},t=function(){h.push=n,h.pop=a,h.replace=s,h.pushpop=o,h.heapify=u,h.updateItem=E,h.nlargest=C,h.nsmallest=B;function h(Q){this.cmp=Q!=null?Q:r,this.nodes=[]}return h.prototype.push=function(Q){return n(this.nodes,Q,this.cmp)},h.prototype.pop=function(){return a(this.nodes,this.cmp)},h.prototype.peek=function(){return this.nodes[0]},h.prototype.contains=function(Q){return this.nodes.indexOf(Q)!==-1},h.prototype.replace=function(Q){return s(this.nodes,Q,this.cmp)},h.prototype.pushpop=function(Q){return o(this.nodes,Q,this.cmp)},h.prototype.heapify=function(){return u(this.nodes,this.cmp)},h.prototype.updateItem=function(Q){return E(this.nodes,Q,this.cmp)},h.prototype.clear=function(){return this.nodes=[]},h.prototype.empty=function(){return this.nodes.length===0},h.prototype.size=function(){return this.nodes.length},h.prototype.clone=function(){var Q=new h;return Q.nodes=this.nodes.slice(0),Q},h.prototype.toArray=function(){return this.nodes.slice(0)},h.prototype.insert=h.prototype.push,h.prototype.top=h.prototype.peek,h.prototype.front=h.prototype.peek,h.prototype.has=h.prototype.contains,h.prototype.copy=h.prototype.clone,h}(),function(h,Q){return A.exports=Q()}(this,function(){return t})}).call(wQt)}(DT),DT.exports}function vQt(){if(zTA)return tuA;return zTA=1,tuA=bQt(),tuA}function A4t(A,e){if(A.length<3)throw Error("Need at least 3 vertices");var t=function(b,F){return{x:b.x+F.x,y:b.y+F.y}},r=function(b,F){return{x:b.x-F.x,y:b.y-F.y}},i=function(b,F){return{x:b.x*F,y:b.y*F}},u=function(b,F){return b.x*F.y-b.y*F.x},a=function(b){var F=$Qt(b.x,b.y);return F===0?{x:0,y:0}:{x:b.x/F,y:b.y/F}},n=function(b){var F=0;for(var v=0;v<b.length;v++){var S=b[v],x=b[(v+1)%b.length];F+=S.x*x.y-x.x*S.y}return F/2},o=function(b,F,v,S){var x=r(F,b),k=r(S,v),T=u(x,k);if(Math.abs(T)<0.000000001)return t(b,i(x,0.5));var R=u(r(v,b),k)/T;return t(b,i(x,R))},s=A.map(function(w){return{x:w.x,y:w.y}});if(n(s)<0)s.reverse();var l=s.length,g=[];for(var C=0;C<l;C++){var B=s[C],E=s[(C+1)%l],d=r(E,B),I=a({x:d.y,y:-d.x});g.push(I)}var h=g.map(function(w,b){var F=t(s[b],i(w,e)),v=t(s[(b+1)%l],i(w,e));return{p1:F,p2:v}}),Q=[];for(var p=0;p<l;p++){var m=h[(p-1+l)%l],f=h[p],D=o(m.p1,m.p2,f.p1,f.p2);Q.push(D)}return Q}function e4t(A,e,t,r,i,u){var a=l4t(A,e,t,r,i),n=A4t(a,u),o=ms();return n.forEach(function(s){return DKA(o,s.x,s.y)}),o}function auA(A,e){function t(g){var C=[];for(var B=0;B<g.length;B++){var E=g[B],d=g[(B+1)%g.length],I={x:d.x-E.x,y:d.y-E.y},h={x:-I.y,y:I.x},Q=Math.sqrt(h.x*h.x+h.y*h.y);C.push({x:h.x/Q,y:h.y/Q})}return C}function r(g,C){var B=1/0,E=-1/0,d=Il(g),I;try{for(d.s();!(I=d.n()).done;){var h=I.value,Q=h.x*C.x+h.y*C.y;B=Math.min(B,Q),E=Math.max(E,Q)}}catch(p){d.e(p)}finally{d.f()}return{min:B,max:E}}function i(g,C){return!(g.max<C.min||C.max<g.min)}var u=[].concat(NT(t(A)),NT(t(e))),a=Il(u),n;try{for(a.s();!(n=a.n()).done;){var o=n.value,s=r(A,o),l=r(e,o);if(!i(s,l))return!1}}catch(g){a.e(g)}finally{a.f()}return!0}function XT(A,e,t,r,i,u){var a;if(Na(A))a=A;else a=cw[A]||cw.euclidean;if(e===0&&Na(A))return a(i,u);else return a(e,t,r,i,u)}function $T(){if(cYA)return ouA;cYA=1;var A=Array.isArray;return ouA=A,ouA}function r1t(){if(CYA)return suA;CYA=1;var A=$T(),e=$k(),t=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function i(u,a){if(A(u))return!1;var n=typeof u;if(n=="number"||n=="symbol"||n=="boolean"||u==null||e(u))return!0;return r.test(u)||!t.test(u)||a!=null&&u in Object(a)}return suA=i,suA}function i1t(){if(BYA)return luA;BYA=1;var A=cKA(),e=Xk(),t="[object AsyncFunction]",r="[object Function]",i="[object GeneratorFunction]",u="[object Proxy]";function a(n){if(!e(n))return!1;var o=A(n);return o==r||o==i||o==t||o==u}return luA=a,luA}function u1t(){if(EYA)return guA;EYA=1;var A=ZT(),e=A["__core-js_shared__"];return guA=e,guA}function a1t(){if(dYA)return cuA;dYA=1;var A=u1t(),e=function(){var r=/[^.]+$/.exec(A&&A.keys&&A.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function t(r){return!!e&&e in r}return cuA=t,cuA}function n1t(){if(IYA)return CuA;IYA=1;var A=Function.prototype,e=A.toString;function t(r){if(r!=null){try{return e.call(r)}catch(i){}try{return r+""}catch(i){}}return""}return CuA=t,CuA}function o1t(){if(hYA)return BuA;hYA=1;var A=i1t(),e=a1t(),t=Xk(),r=n1t(),i=/[\\^$.*+?()[\]{}|]/g,u=/^\[object .+?Constructor\]$/,a=Function.prototype,n=Object.prototype,o=a.toString,s=n.hasOwnProperty,l=RegExp("^"+o.call(s).replace(i,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function g(C){if(!t(C)||e(C))return!1;var B=A(C)?l:u;return B.test(r(C))}return BuA=g,BuA}function s1t(){if(QYA)return EuA;QYA=1;function A(e,t){return e==null?void 0:e[t]}return EuA=A,EuA}function ZaA(){if(pYA)return duA;pYA=1;var A=o1t(),e=s1t();function t(r,i){var u=e(r,i);return A(u)?u:void 0}return duA=t,duA}function AY(){if(fYA)return IuA;fYA=1;var A=ZaA(),e=A(Object,"create");return IuA=e,IuA}function l1t(){if(mYA)return huA;mYA=1;var A=AY();function e(){this.__data__=A?A(null):{},this.size=0}return huA=e,huA}function g1t(){if(DYA)return QuA;DYA=1;function A(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}return QuA=A,QuA}function c1t(){if(yYA)return puA;yYA=1;var A=AY(),e="__lodash_hash_undefined__",t=Object.prototype,r=t.hasOwnProperty;function i(u){var a=this.__data__;if(A){var n=a[u];return n===e?void 0:n}return r.call(a,u)?a[u]:void 0}return puA=i,puA}function C1t(){if(wYA)return fuA;wYA=1;var A=AY(),e=Object.prototype,t=e.hasOwnProperty;function r(i){var u=this.__data__;return A?u[i]!==void 0:t.call(u,i)}return fuA=r,fuA}function B1t(){if(bYA)return muA;bYA=1;var A=AY(),e="__lodash_hash_undefined__";function t(r,i){var u=this.__data__;return this.size+=this.has(r)?0:1,u[r]=A&&i===void 0?e:i,this}return muA=t,muA}function E1t(){if(vYA)return DuA;vYA=1;var A=l1t(),e=g1t(),t=c1t(),r=C1t(),i=B1t();function u(a){var n=-1,o=a==null?0:a.length;this.clear();while(++n<o){var s=a[n];this.set(s[0],s[1])}}return u.prototype.clear=A,u.prototype.delete=e,u.prototype.get=t,u.prototype.has=r,u.prototype.set=i,DuA=u,DuA}function d1t(){if(kYA)return yuA;kYA=1;function A(){this.__data__=[],this.size=0}return yuA=A,yuA}function TKA(){if(FYA)return wuA;FYA=1;function A(e,t){return e===t||e!==e&&t!==t}return wuA=A,wuA}function eY(){if(xYA)return buA;xYA=1;var A=TKA();function e(t,r){var i=t.length;while(i--)if(A(t[i][0],r))return i;return-1}return buA=e,buA}function I1t(){if(SYA)return vuA;SYA=1;var A=eY(),e=Array.prototype,t=e.splice;function r(i){var u=this.__data__,a=A(u,i);if(a<0)return!1;var n=u.length-1;if(a==n)u.pop();else t.call(u,a,1);return--this.size,!0}return vuA=r,vuA}function h1t(){if(LYA)return kuA;LYA=1;var A=eY();function e(t){var r=this.__data__,i=A(r,t);return i<0?void 0:r[i][1]}return kuA=e,kuA}function Q1t(){if(RYA)return FuA;RYA=1;var A=eY();function e(t){return A(this.__data__,t)>-1}return FuA=e,FuA}function p1t(){if(NYA)return xuA;NYA=1;var A=eY();function e(t,r){var i=this.__data__,u=A(i,t);if(u<0)++this.size,i.push([t,r]);else i[u][1]=r;return this}return xuA=e,xuA}function f1t(){if(GYA)return SuA;GYA=1;var A=d1t(),e=I1t(),t=h1t(),r=Q1t(),i=p1t();function u(a){var n=-1,o=a==null?0:a.length;this.clear();while(++n<o){var s=a[n];this.set(s[0],s[1])}}return u.prototype.clear=A,u.prototype.delete=e,u.prototype.get=t,u.prototype.has=r,u.prototype.set=i,SuA=u,SuA}function m1t(){if(UYA)return LuA;UYA=1;var A=ZaA(),e=ZT(),t=A(e,"Map");return LuA=t,LuA}function D1t(){if(MYA)return RuA;MYA=1;var A=E1t(),e=f1t(),t=m1t();function r(){this.size=0,this.__data__={hash:new A,map:new(t||e),string:new A}}return RuA=r,RuA}function y1t(){if(TYA)return NuA;TYA=1;function A(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}return NuA=A,NuA}function tY(){if(YYA)return GuA;YYA=1;var A=y1t();function e(t,r){var i=t.__data__;return A(r)?i[typeof r=="string"?"string":"hash"]:i.map}return GuA=e,GuA}function w1t(){if(HYA)return UuA;HYA=1;var A=tY();function e(t){var r=A(this,t).delete(t);return this.size-=r?1:0,r}return UuA=e,UuA}function b1t(){if(KYA)return MuA;KYA=1;var A=tY();function e(t){return A(this,t).get(t)}return MuA=e,MuA}function v1t(){if(JYA)return TuA;JYA=1;var A=tY();function e(t){return A(this,t).has(t)}return TuA=e,TuA}function k1t(){if(OYA)return YuA;OYA=1;var A=tY();function e(t,r){var i=A(this,t),u=i.size;return i.set(t,r),this.size+=i.size==u?0:1,this}return YuA=e,YuA}function F1t(){if(PYA)return HuA;PYA=1;var A=D1t(),e=w1t(),t=b1t(),r=v1t(),i=k1t();function u(a){var n=-1,o=a==null?0:a.length;this.clear();while(++n<o){var s=a[n];this.set(s[0],s[1])}}return u.prototype.clear=A,u.prototype.delete=e,u.prototype.get=t,u.prototype.has=r,u.prototype.set=i,HuA=u,HuA}function x1t(){if(_YA)return KuA;_YA=1;var A=F1t(),e="Expected a function";function t(r,i){if(typeof r!="function"||i!=null&&typeof i!="function")throw TypeError(e);var u=function(){var a=arguments,n=i?i.apply(this,a):a[0],o=u.cache;if(o.has(n))return o.get(n);var s=r.apply(this,a);return u.cache=o.set(n,s)||o,s};return u.cache=new(t.Cache||A),u}return t.Cache=A,KuA=t,KuA}function S1t(){if(WYA)return JuA;WYA=1;var A=x1t(),e=500;function t(r){var i=A(r,function(a){if(u.size===e)u.clear();return a}),u=i.cache;return i}return JuA=t,JuA}function YKA(){if(qYA)return OuA;qYA=1;var A=S1t(),e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,t=/\\(\\)?/g,r=A(function(i){var u=[];if(i.charCodeAt(0)===46)u.push("");return i.replace(e,function(a,n,o,s){u.push(o?s.replace(t,"$1"):n||a)}),u});return OuA=r,OuA}function HKA(){if(zYA)return PuA;zYA=1;function A(e,t){var r=-1,i=e==null?0:e.length,u=Array(i);while(++r<i)u[r]=t(e[r],r,e);return u}return PuA=A,PuA}function L1t(){if(ZYA)return _uA;ZYA=1;var A=HaA(),e=HKA(),t=$T(),r=$k(),i=A?A.prototype:void 0,u=i?i.toString:void 0;function a(n){if(typeof n=="string")return n;if(t(n))return e(n,a)+"";if(r(n))return u?u.call(n):"";var o=n+"";return o=="0"&&1/n==-1/0?"-0":o}return _uA=a,_uA}function KKA(){if(VYA)return WuA;VYA=1;var A=L1t();function e(t){return t==null?"":A(t)}return WuA=e,WuA}function JKA(){if(jYA)return quA;jYA=1;var A=$T(),e=r1t(),t=YKA(),r=KKA();function i(u,a){if(A(u))return u;return e(u,a)?[u]:t(r(u))}return quA=i,quA}function VaA(){if(XYA)return zuA;XYA=1;var A=$k();function e(t){if(typeof t=="string"||A(t))return t;var r=t+"";return r=="0"&&1/t==-1/0?"-0":r}return zuA=e,zuA}function R1t(){if($YA)return ZuA;$YA=1;var A=JKA(),e=VaA();function t(r,i){i=A(i,r);var u=0,a=i.length;while(r!=null&&u<a)r=r[e(i[u++])];return u&&u==a?r:void 0}return ZuA=t,ZuA}function N1t(){if(AHA)return VuA;AHA=1;var A=R1t();function e(t,r,i){var u=t==null?void 0:A(t,r);return u===void 0?i:u}return VuA=e,VuA}function M1t(){if(eHA)return juA;eHA=1;var A=ZaA(),e=function(){try{var t=A(Object,"defineProperty");return t({},"",{}),t}catch(r){}}();return juA=e,juA}function T1t(){if(tHA)return XuA;tHA=1;var A=M1t();function e(t,r,i){if(r=="__proto__"&&A)A(t,r,{configurable:!0,enumerable:!0,value:i,writable:!0});else t[r]=i}return XuA=e,XuA}function Y1t(){if(rHA)return $uA;rHA=1;var A=T1t(),e=TKA(),t=Object.prototype,r=t.hasOwnProperty;function i(u,a,n){var o=u[a];if(!(r.call(u,a)&&e(o,n))||n===void 0&&!(a in u))A(u,a,n)}return $uA=i,$uA}function H1t(){if(iHA)return AaA;iHA=1;var A=9007199254740991,e=/^(?:0|[1-9]\d*)$/;function t(r,i){var u=typeof r;return i=i==null?A:i,!!i&&(u=="number"||u!="symbol"&&e.test(r))&&(r>-1&&r%1==0&&r<i)}return AaA=t,AaA}function K1t(){if(uHA)return eaA;uHA=1;var A=Y1t(),e=JKA(),t=H1t(),r=Xk(),i=VaA();function u(a,n,o,s){if(!r(a))return a;n=e(n,a);var l=-1,g=n.length,C=g-1,B=a;while(B!=null&&++l<g){var E=i(n[l]),d=o;if(E==="__proto__"||E==="constructor"||E==="prototype")return a;if(l!=C){var I=B[E];if(d=s?s(I,E,B):void 0,d===void 0)d=r(I)?I:t(n[l+1])?[]:{}}A(B,E,d),B=B[E]}return a}return eaA=u,eaA}function J1t(){if(aHA)return taA;aHA=1;var A=K1t();function e(t,r,i){return t==null?t:A(t,r,i)}return taA=e,taA}function _1t(){if(nHA)return raA;nHA=1;function A(e,t){var r=-1,i=e.length;t||(t=Array(i));while(++r<i)t[r]=e[r];return t}return raA=A,raA}function W1t(){if(oHA)return iaA;oHA=1;var A=HKA(),e=_1t(),t=$T(),r=$k(),i=YKA(),u=VaA(),a=KKA();function n(o){if(t(o))return A(o,u);return r(o)?[o]:e(i(a(o)))}return iaA=n,iaA}function XaA(A,e,t,r){var i=[],u=new dw,a=A.cy(),n=a.hasCompoundNodes();for(var o=0;o<A.length;o++){var s=A[o];if(t)i.push(s);else if(n)r(i,u,s)}while(i.length>0){var l=i.shift();if(e(l),u.add(l.id()),n)r(i,u,l)}return A}function PKA(A,e,t){if(t.isParent()){var r=t._private.children;for(var i=0;i<r.length;i++){var u=r[i];if(!e.has(u.id()))A.push(u)}}}function _KA(A,e,t){if(t.isChild()){var r=t._private.parent;if(!e.has(r.id()))A.push(r)}}function cpt(A,e,t){_KA(A,e,t),PKA(A,e,t)}function uaA(A){return function(e){var t=this;if(e===void 0)e=!0;if(t.length===0)return;if(t.isNode()&&!t.removed()){var r=0,i=t[0],u=i._private.edges;for(var a=0;a<u.length;a++){var n=u[a];if(!e&&n.isLoop())continue;r+=A(i,n)}return r}else return}}function jy(A,e){return function(t){var r,i=this.nodes();for(var u=0;u<i.length;u++){var a=i[u],n=a[A](t);if(n!==void 0&&(r===void 0||e(n,r)))r=n}return r}}function kk(){return!1}function IT(){return!0}function iY(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Lpt,e=arguments.length>1?arguments[1]:void 0;for(var t=0;t<EHA.length;t++){var r=EHA[t];this[r]=A[r]||eJA[r]}this.context=e||this.context,this.listeners=[],this.emitting=0}function aJA(A,e,t){var r=t._private,i=r.styleCache=r.styleCache||[],u;if((u=i[A])!=null)return u;else return u=i[A]=e(t),u}function uY(A,e){return A=t3(A),function(r){return aJA(A,e,r)}}function aY(A,e){A=t3(A);var t=function(i){return e.call(i)};return function(){var i=this[0];if(i)return aJA(A,t,i)}}function naA(A,e){var t=A._private,r=t.data.parent?A.parents():null;if(r)for(var i=0;i<r.length;i++){var u=r[i];if(!e(u))return!1}return!0}function $aA(A){var e=A.ok,t=A.edgeOkViaNode||A.ok,r=A.parentOk||A.ok;return function(){var i=this.cy();if(!i.styleEnabled())return!0;var u=this[0],a=i.hasCompoundNodes();if(u){var n=u._private;if(!e(u))return!1;if(u.isNode())return!a||naA(u,r);else{var{source:o,target:s}=n;return t(o)&&(!a||naA(o,t))&&(o===s||t(s)&&(!a||naA(s,t)))}}}}function IHA(A){return function(){var e=arguments,t=[];if(e.length===2){var r=e[0],i=e[1];this.on(A.event,r,i)}else if(e.length===1&&Na(e[0])){var u=e[0];this.on(A.event,u)}else if(e.length===0||e.length===1&&Mu(e[0])){var a=e.length===1?e[0]:null;for(var n=0;n<this.length;n++){var o=this[n],s=!A.ableField||o._private[A.ableField],l=o._private[A.field]!=A.value;if(A.overrideAble){var g=A.overrideAble(o);if(g!==void 0){if(s=g,!g)return this}}if(s){if(o._private[A.field]=A.value,l)t.push(o)}}var C=this.spawn(t);if(C.updateStyle(),C.emit(A.event),a)C.emit(a)}return this}}function Qw(A){y4[A.field]=function(){var e=this[0];if(e){if(A.overrideField){var t=A.overrideField(e);if(t!==void 0)return t}return e._private[A.field]}},y4[A.on]=IHA({event:A.on,field:A.field,ableField:A.ableField,overrideAble:A.overrideAble,value:!0}),y4[A.off]=IHA({event:A.off,field:A.field,ableField:A.ableField,overrideAble:A.overrideAble,value:!1})}function fHA(A){return function(t){var r=[];for(var i=0;i<this.length;i++){var u=this[i],a=u._private[A.attr];if(a)r.push(a)}return this.spawn(r,!0).filter(t)}}function mHA(A){return function(t){var r=[],i=this._private.cy,u=A||{};if(tr(t))t=i.$(t);for(var a=0;a<t.length;a++){var n=t[a]._private.edges;for(var o=0;o<n.length;o++){var s=n[o],l=s._private.data,g=this.hasElementWithId(l.source)&&t.hasElementWithId(l.target),C=t.hasElementWithId(l.source)&&this.hasElementWithId(l.target),B=g||C;if(!B)continue;if(u.thisIsSrc||u.thisIsTgt){if(u.thisIsSrc&&!g)continue;if(u.thisIsTgt&&!C)continue}r.push(s)}}return this.spawn(r,!0)}}function DHA(A){var e={codirected:!1};return A=Cr({},e,A),function(r){var i=[],u=this.edges(),a=A;for(var n=0;n<u.length;n++){var o=u[n],s=o._private,l=s.source,g=l._private.data.id,C=s.data.target,B=l._private.edges;for(var E=0;E<B.length;E++){var d=B[E],I=d._private.data,{target:h,source:Q}=I,p=h===C&&Q===g,m=g===h&&C===Q;if(a.codirected&&p||!a.codirected&&(p||m))i.push(d)}}return this.spawn(i,!0).filter(r)}}function Opt(A,e,t,r){var i=4,u=0.001,a=0.0000001,n=10,o=11,s=1/(o-1),l=typeof Float32Array<"u";if(arguments.length!==4)return!1;for(var g=0;g<4;++g)if(typeof arguments[g]!=="number"||isNaN(arguments[g])||!isFinite(arguments[g]))return!1;A=Math.min(A,1),t=Math.min(t,1),A=Math.max(A,0),t=Math.max(t,0);var C=l?new Float32Array(o):Array(o);function B(v,S){return 1-3*S+3*v}function E(v,S){return 3*S-6*v}function d(v){return 3*v}function I(v,S,x){return((B(S,x)*v+E(S,x))*v+d(S))*v}function h(v,S,x){return 3*B(S,x)*v*v+2*E(S,x)*v+d(S)}function Q(v,S){for(var x=0;x<i;++x){var k=h(S,A,t);if(k===0)return S;var T=I(S,A,t)-v;S-=T/k}return S}function p(){for(var v=0;v<o;++v)C[v]=I(v*s,A,t)}function m(v,S,x){var k,T,R=0;do if(T=S+(x-S)/2,k=I(T,A,t)-v,k>0)x=T;else S=T;while(Math.abs(k)>a&&++R<n);return T}function f(v){var S=0,x=1,k=o-1;for(;x!==k&&C[x]<=v;++x)S+=s;--x;var T=(v-C[x])/(C[x+1]-C[x]),R=S+T*s,L=h(R,A,t);if(L>=u)return Q(v,R);else if(L===0)return R;else return m(v,S,S+s)}var D=!1;function w(){if(D=!0,A!==e||t!==r)p()}var b=function(S){if(!D)w();if(A===e&&t===r)return S;if(S===0)return 0;if(S===1)return 1;return I(f(S),e,r)};b.getControlPoints=function(){return[{x:A,y:e},{x:t,y:r}]};var F="generateBezier("+[A,e,t,r]+")";return b.toString=function(){return F},b}function yHA(A,e,t,r,i){if(r===1)return t;if(e===t)return t;var u=i(e,t,r);if(A==null)return u;if(A.roundValue||A.color)u=Math.round(u);if(A.min!==void 0)u=Math.max(u,A.min);if(A.max!==void 0)u=Math.min(u,A.max);return u}function wHA(A,e){if(A.pfValue!=null||A.value!=null)if(A.pfValue!=null&&(e==null||e.type.units!=="%"))return A.pfValue;else return A.value;else return A}function Xy(A,e,t,r,i){var u=i!=null?i.type:null;if(t<0)t=0;else if(t>1)t=1;var a=wHA(A,i),n=wHA(e,i);if(Qt(a)&&Qt(n))return yHA(u,a,n,t,r);else if(Mu(a)&&Mu(n)){var o=[];for(var s=0;s<n.length;s++){var l=a[s],g=n[s];if(l!=null&&g!=null){var C=yHA(u,l,g,t,r);o.push(C)}else o.push(g)}return o}return}function _pt(A,e,t,r){var i=!r,u=A._private,a=e._private,{easing:n,startTime:o}=a,s=r?A:A.cy(),l=s.style();if(!a.easingImpl)if(n==null)a.easingImpl=kT.linear;else{var g;if(tr(n)){var C=l.parse("transition-timing-function",n);g=C.value}else g=n;var B,E;if(tr(g))B=g,E=[];else B=g[1],E=g.slice(2).map(function(Y){return+Y});if(E.length>0){if(B==="spring")E.push(a.duration);a.easingImpl=kT[B].apply(null,E)}else a.easingImpl=kT[B]}var d=a.easingImpl,I;if(a.duration===0)I=1;else I=(t-o)/a.duration;if(a.applying)I=a.progress;if(I<0)I=0;else if(I>1)I=1;if(a.delay==null){var{startPosition:h,position:Q}=a;if(Q&&i&&!A.locked()){var p={};if(Fk(h.x,Q.x))p.x=Xy(h.x,Q.x,I,d);if(Fk(h.y,Q.y))p.y=Xy(h.y,Q.y,I,d);A.position(p)}var{startPan:m,pan:f}=a,D=u.pan,w=f!=null&&r;if(w){if(Fk(m.x,f.x))D.x=Xy(m.x,f.x,I,d);if(Fk(m.y,f.y))D.y=Xy(m.y,f.y,I,d);A.emit("pan")}var{startZoom:b,zoom:F}=a,v=F!=null&&r;if(v){if(Fk(b,F))u.zoom=Jk(u.minZoom,Xy(b,F,I,d),u.maxZoom);A.emit("zoom")}if(w||v)A.emit("viewport");var S=a.style;if(S&&S.length>0&&i){for(var x=0;x<S.length;x++){var k=S[x],T=k.name,R=k,L=a.startStyle[T],M=l.properties[L.name],U=Xy(L,R,I,d,M);l.overrideBypass(A,T,U)}A.emit("style")}}return a.progress=I,I}function Fk(A,e){if(A==null||e==null)return!1;if(Qt(A)&&Qt(e))return!0;else if(A&&e)return!0;return!1}function Wpt(A,e,t,r){var i=e._private;i.started=!0,i.startTime=t-i.progress*i.duration}function bHA(A,e){var t=e._private.aniEles,r=[];function i(l,g){var C=l._private,B=C.animation.current,E=C.animation.queue,d=!1;if(B.length===0){var I=E.shift();if(I)B.push(I)}var h=function(D){for(var w=D.length-1;w>=0;w--){var b=D[w];b()}D.splice(0,D.length)};for(var Q=B.length-1;Q>=0;Q--){var p=B[Q],m=p._private;if(m.stopped){B.splice(Q,1),m.hooked=!1,m.playing=!1,m.started=!1,h(m.frames);continue}if(!m.playing&&!m.applying)continue;if(m.playing&&m.applying)m.applying=!1;if(!m.started)Wpt(l,p,A);if(_pt(l,p,A,g),m.applying)m.applying=!1;if(h(m.frames),m.step!=null)m.step(A);if(p.completed())B.splice(Q,1),m.hooked=!1,m.playing=!1,m.started=!1,h(m.completes);d=!0}if(!g&&B.length===0&&E.length===0)r.push(l);return d}var u=!1;for(var a=0;a<t.length;a++){var n=t[a],o=i(n);u=u||o}var s=i(e,!0);if(u||s)if(t.length>0)e.notify("draw",t);else e.notify("draw");t.unmerge(r),e.emit("step")}function oJA(A){this.options=Cr({},Aft,eft,A)}function sJA(A){this.options=Cr({},tft,A)}function lJA(A){this.options=Cr({},rft,A)}function sY(A){this.options=Cr({},ift,A),this.options.layout=this;var e=this.options.eles.nodes(),t=this.options.eles.edges(),r=t.filter(function(i){var u=i.source().data("id"),a=i.target().data("id"),n=e.some(function(s){return s.data("id")===u}),o=e.some(function(s){return s.data("id")===a});return!n||!o});this.options.eles=this.options.eles.not(r)}function BJA(A){this.options=Cr({},Qft,A)}function tnA(A){this.options=Cr({},pft,A)}function EJA(A){this.options=Cr({},fft,A)}function dJA(A){this.options=Cr({},mft,A)}function IJA(A){this.options=A,this.notifications=0}function pJA(A,e){if(e.radius===0)A.lineTo(e.cx,e.cy);else A.arc(e.cx,e.cy,e.radius,e.startAngle,e.endAngle,e.counterClockwise)}function inA(A,e,t,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;if(r===0||e.radius===0)return{cx:e.x,cy:e.y,radius:0,startX:e.x,startY:e.y,stopX:e.x,stopY:e.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0};return wft(A,e,t,r,i),{cx:kaA,cy:FaA,radius:Xf,startX:hJA,startY:QJA,stopX:xaA,stopY:SaA,startAngle:SE.ang+Math.PI/2*A3,endAngle:oc.ang-Math.PI/2*A3,counterClockwise:ST}}function fJA(A){var e=[];if(A==null)return;for(var t=0;t<A.length;t+=2){var r=A[t],i=A[t+1];e.push({x:r,y:i})}return e}function vft(A,e,t){var r=function(s,l,g,C){return Ro(s,l,g,C)},i=e._private,u=i.rstyle.bezierPts;for(var a=0;a<A.bezierProjPcts.length;a++){var n=A.bezierProjPcts[a];u.push({x:r(t[0],t[2],t[4],n),y:r(t[1],t[3],t[5],n)})}}function u3t(A,e){for(var t=0;t<e.length;t++){var r=e[t];A.lineTo(r.x,r.y)}}function a3t(A,e,t){var r;for(var i=0;i<e.length;i++){var u=e[i];if(i===0)r=u;A.lineTo(u.x,u.y)}A.quadraticCurveTo(t.x,t.y,r.x,r.y)}function PHA(A,e,t){if(A.beginPath)A.beginPath();var r=e;for(var i=0;i<r.length;i++){var u=r[i];A.lineTo(u.x,u.y)}var a=t,n=t[0];A.moveTo(n.x,n.y);for(var i=1;i<a.length;i++){var u=a[i];A.lineTo(u.x,u.y)}if(A.closePath)A.closePath()}function n3t(A,e,t,r,i){if(A.beginPath)A.beginPath();A.arc(t,r,i,0,Math.PI*2,!1);var u=e,a=u[0];A.moveTo(a.x,a.y);for(var n=0;n<u.length;n++){var o=u[n];A.lineTo(o.x,o.y)}if(A.closePath)A.closePath()}function o3t(A,e,t,r){A.arc(e,t,r,0,Math.PI*2,!1)}function B3t(A,e,t,r,i){var u=Math.min(r,i),a=u/2,n=e+r/2,o=t+i/2;A.beginPath(),A.arc(n,o,a,0,Math.PI*2),A.closePath()}function _HA(A,e,t,r,i){var u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:5,a=Math.min(u,r/2,i/2);A.beginPath(),A.moveTo(e+a,t),A.lineTo(e+r-a,t),A.quadraticCurveTo(e+r,t,e+r,t+a),A.lineTo(e+r,t+i-a),A.quadraticCurveTo(e+r,t+i,e+r-a,t+i),A.lineTo(e+a,t+i),A.quadraticCurveTo(e,t+i,e,t+i-a),A.lineTo(e,t+a),A.quadraticCurveTo(e,t,e+a,t),A.closePath()}function WHA(A,e,t){var r=A.createShader(e);if(A.shaderSource(r,t),A.compileShader(r),!A.getShaderParameter(r,A.COMPILE_STATUS))throw Error(A.getShaderInfoLog(r));return r}function d3t(A,e,t){var r=WHA(A,A.VERTEX_SHADER,e),i=WHA(A,A.FRAGMENT_SHADER,t),u=A.createProgram();if(A.attachShader(u,r),A.attachShader(u,i),A.linkProgram(u),!A.getProgramParameter(u,A.LINK_STATUS))throw Error("Could not initialize shaders");return u}function I3t(A,e,t){if(t===void 0)t=e;var r=A.makeOffscreenCanvas(e,t),i=r.context=r.getContext("2d");return r.clear=function(){return i.clearRect(0,0,r.width,r.height)},r.clear(),r}function nnA(A){var e=A.pixelRatio,t=A.cy.zoom(),r=A.cy.pan();return{zoom:t*e,pan:{x:r.x*e,y:r.y*e}}}function h3t(A){var e=A.pixelRatio,t=A.cy.zoom();return t*e}function Q3t(A,e,t,r,i){var u=r*t+e.x,a=i*t+e.y;return a=Math.round(A.canvasHeight-a),[u,a]}function p3t(A,e){if(e.picking)return!0;else{if(A.pstyle("background-fill").value!=="solid")return!1;if(A.pstyle("background-image").strValue!=="none")return!1;if(A.pstyle("border-width").value===0)return!0;if(A.pstyle("border-opacity").value===0)return!0;if(A.pstyle("border-style").value!=="solid")return!1;return!0}}function f3t(A,e){if(A.length!==e.length)return!1;for(var t=0;t<A.length;t++)if(A[t]!==e[t])return!1;return!0}function Vf(A,e,t){var r=A[0]/255,i=A[1]/255,u=A[2]/255,a=e,n=t||[,,,,];return n[0]=r*a,n[1]=i*a,n[2]=u*a,n[3]=a,n}function ew(A,e){var t=e||[,,,,];return t[0]=(A>>0&255)/255,t[1]=(A>>8&255)/255,t[2]=(A>>16&255)/255,t[3]=(A>>24&255)/255,t}function m3t(A){return A[0]+(A[1]<<8)+(A[2]<<16)+(A[3]<<24)}function D3t(A,e){var t=A.createTexture();return t.buffer=function(r){A.bindTexture(A.TEXTURE_2D,t),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_S,A.CLAMP_TO_EDGE),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_T,A.CLAMP_TO_EDGE),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MAG_FILTER,A.LINEAR),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MIN_FILTER,A.LINEAR_MIPMAP_NEAREST),A.pixelStorei(A.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),A.texImage2D(A.TEXTURE_2D,0,A.RGBA,A.RGBA,A.UNSIGNED_BYTE,r),A.generateMipmap(A.TEXTURE_2D),A.bindTexture(A.TEXTURE_2D,null)},t.deleteTexture=function(){A.deleteTexture(t)},t}function GJA(A,e){switch(e){case"float":return[1,A.FLOAT,4];case"vec2":return[2,A.FLOAT,4];case"vec3":return[3,A.FLOAT,4];case"vec4":return[4,A.FLOAT,4];case"int":return[1,A.INT,4];case"ivec2":return[2,A.INT,4]}}function UJA(A,e,t){switch(e){case A.FLOAT:return new Float32Array(t);case A.INT:return new Int32Array(t)}}function y3t(A,e,t,r,i,u){switch(e){case A.FLOAT:return new Float32Array(t.buffer,u*r,i);case A.INT:return new Int32Array(t.buffer,u*r,i)}}function w3t(A,e,t,r){var i=GJA(A,e),u=Tn(i,2),a=u[0],n=u[1],o=UJA(A,n,r),s=A.createBuffer();if(A.bindBuffer(A.ARRAY_BUFFER,s),A.bufferData(A.ARRAY_BUFFER,o,A.STATIC_DRAW),n===A.FLOAT)A.vertexAttribPointer(t,a,n,!1,0,0);else if(n===A.INT)A.vertexAttribIPointer(t,a,n,0,0);return A.enableVertexAttribArray(t),A.bindBuffer(A.ARRAY_BUFFER,null),s}function xE(A,e,t,r){var i=GJA(A,t),u=Tn(i,3),a=u[0],n=u[1],o=u[2],s=UJA(A,n,e*a),l=a*o,g=A.createBuffer();if(A.bindBuffer(A.ARRAY_BUFFER,g),A.bufferData(A.ARRAY_BUFFER,e*l,A.DYNAMIC_DRAW),A.enableVertexAttribArray(r),n===A.FLOAT)A.vertexAttribPointer(r,a,n,!1,l,0);else if(n===A.INT)A.vertexAttribIPointer(r,a,n,l,0);A.vertexAttribDivisor(r,1),A.bindBuffer(A.ARRAY_BUFFER,null);var C=Array(e);for(var B=0;B<e;B++)C[B]=y3t(A,n,s,l,a,B);return g.dataArray=s,g.stride=l,g.size=a,g.getView=function(E){return C[E]},g.setPoint=function(E,d,I){var h=C[E];h[0]=d,h[1]=I},g.bufferSubData=function(E){if(A.bindBuffer(A.ARRAY_BUFFER,g),E)A.bufferSubData(A.ARRAY_BUFFER,0,s,0,E*a);else A.bufferSubData(A.ARRAY_BUFFER,0,s)},g}function b3t(A,e,t){var r=9,i=new Float32Array(e*r),u=Array(e);for(var a=0;a<e;a++){var n=a*r*4;u[a]=new Float32Array(i.buffer,n,r)}var o=A.createBuffer();A.bindBuffer(A.ARRAY_BUFFER,o),A.bufferData(A.ARRAY_BUFFER,i.byteLength,A.DYNAMIC_DRAW);for(var s=0;s<3;s++){var l=t+s;A.enableVertexAttribArray(l),A.vertexAttribPointer(l,3,A.FLOAT,!1,36,s*12),A.vertexAttribDivisor(l,1)}return A.bindBuffer(A.ARRAY_BUFFER,null),o.getMatrixView=function(g){return u[g]},o.setData=function(g,C){u[C].set(g,0)},o.bufferSubData=function(){A.bindBuffer(A.ARRAY_BUFFER,o),A.bufferSubData(A.ARRAY_BUFFER,0,i)},o}function v3t(A){var e=A.createFramebuffer();A.bindFramebuffer(A.FRAMEBUFFER,e);var t=A.createTexture();return A.bindTexture(A.TEXTURE_2D,t),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MIN_FILTER,A.LINEAR),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_S,A.CLAMP_TO_EDGE),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_T,A.CLAMP_TO_EDGE),A.framebufferTexture2D(A.FRAMEBUFFER,A.COLOR_ATTACHMENT0,A.TEXTURE_2D,t,0),A.bindFramebuffer(A.FRAMEBUFFER,null),e.setFramebufferAttachmentSizes=function(r,i){A.bindTexture(A.TEXTURE_2D,t),A.texImage2D(A.TEXTURE_2D,0,A.RGBA,r,i,0,A.RGBA,A.UNSIGNED_BYTE,null)},e}function gaA(){var A=new qHA(9);if(qHA!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[5]=0,A[6]=0,A[7]=0;return A[0]=1,A[4]=1,A[8]=1,A}function zHA(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function k3t(A,e,t){var r=e[0],i=e[1],u=e[2],a=e[3],n=e[4],o=e[5],s=e[6],l=e[7],g=e[8],C=t[0],B=t[1],E=t[2],d=t[3],I=t[4],h=t[5],Q=t[6],p=t[7],m=t[8];return A[0]=C*r+B*a+E*s,A[1]=C*i+B*n+E*l,A[2]=C*u+B*o+E*g,A[3]=d*r+I*a+h*s,A[4]=d*i+I*n+h*l,A[5]=d*u+I*o+h*g,A[6]=Q*r+p*a+m*s,A[7]=Q*i+p*n+m*l,A[8]=Q*u+p*o+m*g,A}function RT(A,e,t){var r=e[0],i=e[1],u=e[2],a=e[3],n=e[4],o=e[5],s=e[6],l=e[7],g=e[8],C=t[0],B=t[1];return A[0]=r,A[1]=i,A[2]=u,A[3]=a,A[4]=n,A[5]=o,A[6]=C*r+B*a+s,A[7]=C*i+B*n+l,A[8]=C*u+B*o+g,A}function ZHA(A,e,t){var r=e[0],i=e[1],u=e[2],a=e[3],n=e[4],o=e[5],s=e[6],l=e[7],g=e[8],C=Math.sin(t),B=Math.cos(t);return A[0]=B*r+C*a,A[1]=B*i+C*n,A[2]=B*u+C*o,A[3]=B*a-C*r,A[4]=B*n-C*i,A[5]=B*o-C*u,A[6]=s,A[7]=l,A[8]=g,A}function RaA(A,e,t){var r=t[0],i=t[1];return A[0]=r*e[0],A[1]=r*e[1],A[2]=r*e[2],A[3]=i*e[3],A[4]=i*e[4],A[5]=i*e[5],A[6]=e[6],A[7]=e[7],A[8]=e[8],A}function F3t(A,e,t){return A[0]=2/e,A[1]=0,A[2]=0,A[3]=0,A[4]=-2/t,A[5]=0,A[6]=-1,A[7]=1,A[8]=1,A}function L3t(A,e){if(A.intersection)return A.intersection(e);else return new Set(NT(A).filter(function(t){return e.has(t)}))}function H3t(A){var e=A.cy.container(),t=e&&e.style&&e.style.backgroundColor||"white";return sKA(t)}function TJA(A,e){var t=A._private.rscratch;return fs(t,"labelWrapCachedLines",e)||[]}function K3t(A){{var e=A.render;A.render=function(u){u=u||{};var a=A.cy;if(A.webgl)if(a.zoom()>xJA)J3t(A),e.call(A,u);else O3t(A),HJA(A,u,Tk.SCREEN)}}{var t=A.matchCanvasSize;A.matchCanvasSize=function(u){t.call(A,u),A.pickingFrameBuffer.setFramebufferAttachmentSizes(A.canvasWidth,A.canvasHeight),A.pickingFrameBuffer.needsDraw=!0}}A.findNearestElements=function(u,a,n,o){return Z3t(A,u,a)};{var r=A.invalidateCachedZSortedEles;A.invalidateCachedZSortedEles=function(){r.call(A),A.pickingFrameBuffer.needsDraw=!0}}{var i=A.notify;A.notify=function(u,a){if(i.call(A,u,a),u==="viewport"||u==="bounds")A.pickingFrameBuffer.needsDraw=!0;else if(u==="background")A.drawing.invalidate(a,{type:"node-body"})}}}function J3t(A){var e=A.data.contexts[A.WEBGL];e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}function O3t(A){var e=function(r){r.save(),r.setTransform(1,0,0,1,0,0),r.clearRect(0,0,A.canvasWidth,A.canvasHeight),r.restore()};e(A.data.contexts[A.NODE]),e(A.data.contexts[A.DRAG])}function P3t(A){var{canvasWidth:e,canvasHeight:t}=A,r=nnA(A),{pan:i,zoom:u}=r,a=gaA();RT(a,a,[i.x,i.y]),RaA(a,a,[u,u]);var n=gaA();F3t(n,e,t);var o=gaA();return k3t(o,n,a),o}function YJA(A,e){var{canvasWidth:t,canvasHeight:r}=A,i=nnA(A),{pan:u,zoom:a}=i;e.setTransform(1,0,0,1,0,0),e.clearRect(0,0,t,r),e.translate(u.x,u.y),e.scale(a,a)}function _3t(A,e){A.drawSelectionRectangle(e,function(t){return YJA(A,t)})}function W3t(A){var e=A.data.contexts[A.NODE];e.save(),YJA(A,e),e.strokeStyle="rgba(0, 0, 0, 0.3)",e.beginPath(),e.moveTo(-1000,0),e.lineTo(1000,0),e.stroke(),e.beginPath(),e.moveTo(0,-1000),e.lineTo(0,1000),e.stroke(),e.restore()}function q3t(A){var e=function(i,u,a){var n=i.atlasManager.getAtlasCollection(u),o=A.data.contexts[A.NODE],s=n.atlases;for(var l=0;l<s.length;l++){var g=s[l],C=g.canvas;if(C){var{width:B,height:E}=C,d=B*l,I=C.height*a,h=0.4;o.save(),o.scale(h,h),o.drawImage(C,d,I),o.strokeStyle="black",o.rect(d,I,B,E),o.stroke(),o.restore()}}},t=0;e(A.drawing,"node",t++),e(A.drawing,"label",t++)}function z3t(A,e,t,r,i){var u,a,n,o,s=nnA(A),{pan:l,zoom:g}=s;{var C=Q3t(A,l,g,e,t),B=Tn(C,2),E=B[0],d=B[1],I=6;u=E-I/2,a=d-I/2,n=I,o=I}if(n===0||o===0)return[];var h=A.data.contexts[A.WEBGL];if(h.bindFramebuffer(h.FRAMEBUFFER,A.pickingFrameBuffer),A.pickingFrameBuffer.needsDraw)h.viewport(0,0,h.canvas.width,h.canvas.height),HJA(A,null,Tk.PICKING),A.pickingFrameBuffer.needsDraw=!1;var Q=n*o,p=new Uint8Array(Q*4);h.readPixels(u,a,n,o,h.RGBA,h.UNSIGNED_BYTE,p),h.bindFramebuffer(h.FRAMEBUFFER,null);var m=new Set;for(var f=0;f<Q;f++){var D=p.slice(f*4,f*4+4),w=m3t(D)-1;if(w>=0)m.add(w)}return m}function Z3t(A,e,t){var r=z3t(A,e,t),i=A.getCachedZSortedEles(),u,a,n=Il(r),o;try{for(n.s();!(o=n.n()).done;){var s=o.value,l=i[s];if(!u&&l.isNode())u=l;if(!a&&l.isEdge())a=l;if(u&&a)break}}catch(g){n.e(g)}finally{n.f()}return[u,a].filter(Boolean)}function daA(A,e,t){var r=A.drawing;if(e+=1,t.isNode())r.drawNode(t,e,"node-underlay"),r.drawNode(t,e,"node-body"),r.drawTexture(t,e,"label"),r.drawNode(t,e,"node-overlay");else r.drawEdgeLine(t,e),r.drawEdgeArrow(t,e,"source"),r.drawEdgeArrow(t,e,"target"),r.drawTexture(t,e,"label"),r.drawTexture(t,e,"edge-source-label"),r.drawTexture(t,e,"edge-target-label")}function HJA(A,e,t){var r;if(A.webglDebug)r=performance.now();var i=A.drawing,u=0;if(t.screen){if(A.data.canvasNeedsRedraw[A.SELECT_BOX])_3t(A,e)}if(A.data.canvasNeedsRedraw[A.NODE]||t.picking){var a=A.data.contexts[A.WEBGL];if(t.screen)a.clearColor(0,0,0,0),a.enable(a.BLEND),a.blendFunc(a.ONE,a.ONE_MINUS_SRC_ALPHA);else a.disable(a.BLEND);a.clear(a.COLOR_BUFFER_BIT|a.DEPTH_BUFFER_BIT),a.viewport(0,0,a.canvas.width,a.canvas.height);var n=P3t(A),o=A.getCachedZSortedEles();if(u=o.length,i.startFrame(n,t),t.screen){for(var s=0;s<o.nondrag.length;s++)daA(A,s,o.nondrag[s]);for(var l=0;l<o.drag.length;l++)daA(A,l,o.drag[l])}else if(t.picking)for(var g=0;g<o.length;g++)daA(A,g,o[g]);if(i.endFrame(),t.screen&&A.webglDebugShowAtlases)W3t(A),q3t(A);A.data.canvasNeedsRedraw[A.NODE]=!1,A.data.canvasNeedsRedraw[A.DRAG]=!1}if(A.webglDebug){var C=performance.now(),B=!1,E=Math.ceil(C-r),d=i.getDebugInfo(),I=["".concat(u," elements"),"".concat(d.totalInstances," instances"),"".concat(d.batchCount," batches"),"".concat(d.totalAtlases," atlases"),"".concat(d.wrappedCount," wrapped textures"),"".concat(d.simpleCount," simple shapes")].join(", ");if(B)console.log("WebGL (".concat(t.name,") - time ").concat(E,"ms, ").concat(I));else{console.log("WebGL (".concat(t.name,") - frame time ").concat(E,"ms")),console.log("Totals:"),console.log(" ".concat(I)),console.log("Texture Atlases Used:");var h=d.atlasInfo,Q=Il(h),p;try{for(Q.s();!(p=Q.n()).done;){var m=p.value;console.log(" ".concat(m.type,": ").concat(m.keyCount," keys, ").concat(m.atlasCount," atlases"))}}catch(f){Q.e(f)}finally{Q.f()}console.log("")}}if(A.data.gc)console.log("Garbage Collect!"),A.data.gc=!1,i.gc()}function V3t(A,e){var t=atob(A),r=new ArrayBuffer(t.length),i=new Uint8Array(r);for(var u=0;u<t.length;u++)i[u]=t.charCodeAt(u);return new Blob([r],{type:e})}function AKA(A){var e=A.indexOf(",");return A.substr(e+1)}function JJA(A,e,t){var r=function(){return e.toDataURL(t,A.quality)};switch(A.output){case"blob-promise":return new Iw(function(i,u){try{e.toBlob(function(a){if(a!=null)i(a);else u(Error("`canvas.toBlob()` sent a null value in its callback"))},t,A.quality)}catch(a){u(a)}});case"blob":return V3t(AKA(r()),t);case"base64":return AKA(r());case"base64uri":default:return r()}}function PJA(A){var e=this,t=e.cy.window(),r=t.document;if(A.webgl)oi.CANVAS_LAYERS=e.CANVAS_LAYERS=4,console.log("webgl rendering enabled");e.data={canvases:Array(oi.CANVAS_LAYERS),contexts:Array(oi.CANVAS_LAYERS),canvasNeedsRedraw:Array(oi.CANVAS_LAYERS),bufferCanvases:Array(oi.BUFFER_COUNT),bufferContexts:Array(oi.CANVAS_LAYERS)};var i="-webkit-tap-highlight-color",u="rgba(0,0,0,0)";e.data.canvasContainer=r.createElement("div");var a=e.data.canvasContainer.style;e.data.canvasContainer.style[i]=u,a.position="relative",a.zIndex="0",a.overflow="hidden";var n=A.cy.container();n.appendChild(e.data.canvasContainer),n.style[i]=u;var o={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};if(Kht())o["-ms-touch-action"]="none",o["touch-action"]="none";for(var s=0;s<oi.CANVAS_LAYERS;s++){var l=e.data.canvases[s]=r.createElement("canvas"),g=oi.CANVAS_TYPES[s];if(e.data.contexts[s]=l.getContext(g),!e.data.contexts[s])Qa("Could not create canvas of type "+g);Object.keys(o).forEach(function(tA){l.style[tA]=o[tA]}),l.style.position="absolute",l.setAttribute("data-id","layer"+s),l.style.zIndex=String(oi.CANVAS_LAYERS-s),e.data.canvasContainer.appendChild(l),e.data.canvasNeedsRedraw[s]=!1}if(e.data.topCanvas=e.data.canvases[0],e.data.canvases[oi.NODE].setAttribute("data-id","layer"+oi.NODE+"-node"),e.data.canvases[oi.SELECT_BOX].setAttribute("data-id","layer"+oi.SELECT_BOX+"-selectbox"),e.data.canvases[oi.DRAG].setAttribute("data-id","layer"+oi.DRAG+"-drag"),e.data.canvases[oi.WEBGL])e.data.canvases[oi.WEBGL].setAttribute("data-id","layer"+oi.WEBGL+"-webgl");for(var s=0;s<oi.BUFFER_COUNT;s++)e.data.bufferCanvases[s]=r.createElement("canvas"),e.data.bufferContexts[s]=e.data.bufferCanvases[s].getContext("2d"),e.data.bufferCanvases[s].style.position="absolute",e.data.bufferCanvases[s].setAttribute("data-id","buffer"+s),e.data.bufferCanvases[s].style.zIndex=String(-s-1),e.data.bufferCanvases[s].style.visibility="hidden";e.pathsEnabled=!0;var C=ms(),B=function(lA){return{x:(lA.x1+lA.x2)/2,y:(lA.y1+lA.y2)/2}},E=function(lA){return{x:-lA.w/2,y:-lA.h/2}},d=function(lA){var gA=lA[0]._private,aA=gA.oldBackgroundTimestamp===gA.backgroundTimestamp;return!aA},I=function(lA){return lA[0]._private.nodeKey},h=function(lA){return lA[0]._private.labelStyleKey},Q=function(lA){return lA[0]._private.sourceLabelStyleKey},p=function(lA){return lA[0]._private.targetLabelStyleKey},m=function(lA,gA,aA,RA,wA){return e.drawElement(lA,gA,aA,!1,!1,wA)},f=function(lA,gA,aA,RA,wA){return e.drawElementText(lA,gA,aA,RA,"main",wA)},D=function(lA,gA,aA,RA,wA){return e.drawElementText(lA,gA,aA,RA,"source",wA)},w=function(lA,gA,aA,RA,wA){return e.drawElementText(lA,gA,aA,RA,"target",wA)},b=function(lA){return lA.boundingBox(),lA[0]._private.bodyBounds},F=function(lA){return lA.boundingBox(),lA[0]._private.labelBounds.main||C},v=function(lA){return lA.boundingBox(),lA[0]._private.labelBounds.source||C},S=function(lA){return lA.boundingBox(),lA[0]._private.labelBounds.target||C},x=function(lA,gA){return gA},k=function(lA){return B(b(lA))},T=function(lA,gA,aA){var RA=lA?lA+"-":"";return{x:gA.x+aA.pstyle(RA+"text-margin-x").pfValue,y:gA.y+aA.pstyle(RA+"text-margin-y").pfValue}},R=function(lA,gA,aA){var RA=lA[0]._private.rscratch;return{x:RA[gA],y:RA[aA]}},L=function(lA){return T("",R(lA,"labelX","labelY"),lA)},M=function(lA){return T("source",R(lA,"sourceLabelX","sourceLabelY"),lA)},U=function(lA){return T("target",R(lA,"targetLabelX","targetLabelY"),lA)},Y=function(lA){return E(b(lA))},H=function(lA){return E(v(lA))},J=function(lA){return E(S(lA))},K=function(lA){var gA=F(lA),aA=E(F(lA));if(lA.isNode()){switch(Bw(lA.pstyle("text-halign").value)){case"left":aA.x=-gA.w-(gA.leftPad||0);break;case"right":aA.x=-(gA.rightPad||0);break}switch(Ew(lA.pstyle("text-valign").value)){case"top":aA.y=-gA.h-(gA.topPad||0);break;case"bottom":aA.y=-(gA.botPad||0);break}}return aA},O=e.data.eleTxrCache=new Gk(e,{getKey:I,doesEleInvalidateKey:d,drawElement:m,getBoundingBox:b,getRotationPoint:k,getRotationOffset:Y,allowEdgeTxrCaching:!1,allowParentTxrCaching:!1}),_=e.data.lblTxrCache=new Gk(e,{getKey:h,drawElement:f,getBoundingBox:F,getRotationPoint:L,getRotationOffset:K,isVisible:x}),z=e.data.slbTxrCache=new Gk(e,{getKey:Q,drawElement:D,getBoundingBox:v,getRotationPoint:M,getRotationOffset:H,isVisible:x}),j=e.data.tlbTxrCache=new Gk(e,{getKey:p,drawElement:w,getBoundingBox:S,getRotationPoint:U,getRotationOffset:J,isVisible:x}),q=e.data.lyrTxrCache=new SJA(e);e.onUpdateEleCalcs(function(lA,gA){O.invalidateElements(gA),_.invalidateElements(gA),z.invalidateElements(gA),j.invalidateElements(gA),q.invalidateElements(gA);for(var aA=0;aA<gA.length;aA++){var RA=gA[aA]._private;RA.oldBackgroundTimestamp=RA.backgroundTimestamp}});var CA=function(lA){for(var gA=0;gA<lA.length;gA++)q.enqueueElementRefinement(lA[gA].ele)};if(O.onDequeue(CA),_.onDequeue(CA),z.onDequeue(CA),j.onDequeue(CA),A.webgl)e.initWebgl(A,{getStyleKey:I,getLabelKey:h,getSourceLabelKey:Q,getTargetLabelKey:p,drawElement:m,drawLabel:f,drawSourceLabel:D,drawTargetLabel:w,getElementBox:b,getLabelBox:F,getSourceLabelBox:v,getTargetLabelBox:S,getElementRotationPoint:k,getElementRotationOffset:Y,getLabelRotationPoint:L,getSourceLabelRotationPoint:M,getTargetLabelRotationPoint:U,getLabelRotationOffset:K,getSourceLabelRotationOffset:H,getTargetLabelRotationOffset:J})}function qJA(A,e,t){var r=t,i=function(b){du("Can not register `"+e+"` for `"+A+"` since `"+b+"` already exists in the prototype and can not be overridden")};if(A==="core")if(qk.prototype[e])return i(e);else qk.prototype[e]=t;else if(A==="collection")if(n0.prototype[e])return i(e);else n0.prototype[e]=t;else if(A==="layout"){var u=function(b){if(this.options=b,t.call(this,b),!Hi(this._private))this._private={};this._private.cy=b.cy,this._private.listeners=[],this.createEmitter()},a=u.prototype=Object.create(t.prototype),n=[];for(var o=0;o<n.length;o++){var s=n[o];a[s]=a[s]||function(){return this}}if(a.start&&!a.run)a.run=function(){return this.start(),this};else if(!a.start&&a.run)a.start=function(){return this.run(),this};var l=t.prototype.stop;if(a.stop=function(){var w=this.options;if(w&&w.animate){var b=this.animations;if(b)for(var F=0;F<b.length;F++)b[F].stop()}if(l)l.call(this);else this.emit("layoutstop");return this},!a.destroy)a.destroy=function(){return this};a.cy=function(){return this._private.cy};var g=function(b){return b._private.cy},C={addEventFields:function(b,F){F.layout=b,F.cy=g(b),F.target=b},bubble:function(){return!0},parent:function(b){return g(b)}};Cr(a,{createEmitter:function(){return this._private.emitter=new iY(C,this),this},emitter:function(){return this._private.emitter},on:function(b,F){return this.emitter().on(b,F),this},one:function(b,F){return this.emitter().one(b,F),this},once:function(b,F){return this.emitter().one(b,F),this},removeListener:function(b,F){return this.emitter().removeListener(b,F),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},emit:function(b,F){return this.emitter().emit(b,F),this}}),Eu.eventAliasesOn(a),r=u}else if(A==="renderer"&&e!=="null"&&e!=="base"){var B=zJA("renderer","base"),E=B.prototype,d=t,I=t.prototype,h=function(){B.apply(this,arguments),d.apply(this,arguments)},Q=h.prototype;for(var p in E){var m=E[p],f=I[p]!=null;if(f)return i(p);Q[p]=m}for(var D in I)Q[D]=I[D];E.clientFunctions.forEach(function(w){Q[w]=Q[w]||function(){Qa("Renderer does not implement `renderer."+w+"()` on its prototype")}}),r=h}else if(A==="__proto__"||A==="constructor"||A==="prototype")return Qa(A+" is an illegal type to be registered, possibly lead to prototype pollutions");return lKA({map:_JA,keys:[A,e],value:r})}function zJA(A,e){return gKA({map:_JA,keys:[A,e]})}function emt(A,e,t,r,i){return lKA({map:WJA,keys:[A,e,t,r],value:i})}function tmt(A,e,t,r){return gKA({map:WJA,keys:[A,e,t,r]})}var to,vTA,Rht,rKA,Nht,Ght,Zk=function(e){return e&&e.instanceString&&Na(e.instanceString)?e.instanceString():null},tr=function(e){return e!=null&&io(e)==Rht},Na=function(e){return e!=null&&io(e)===Nht},Mu=function(e){return!Cg(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},Hi=function(e){return e!=null&&io(e)===rKA&&!Mu(e)&&e.constructor===Object},Uht=function(e){return e!=null&&io(e)===rKA},Qt=function(e){return e!=null&&io(e)===io(1)&&!isNaN(e)},iKA=function(e){return Qt(e)&&Math.floor(e)===e},GT=function(e){if(Ght==="undefined")return;else return e!=null&&e instanceof HTMLElement},Cg=function(e){return Vk(e)||uKA(e)},Vk=function(e){return Zk(e)==="collection"&&e._private.single},uKA=function(e){return Zk(e)==="collection"&&!e._private.single},TaA=function(e){return Zk(e)==="core"},aKA=function(e){return Zk(e)==="stylesheet"},Mht=function(e){return Zk(e)==="event"},w4=function(e){if(e===void 0||e===null)return!0;else if(e===""||e.match(/^\s+$/))return!0;return!1},Tht=function(e){if(typeof HTMLElement>"u")return!1;else return e instanceof HTMLElement},Yht=function(e){return Hi(e)&&Qt(e.x1)&&Qt(e.x2)&&Qt(e.y1)&&Qt(e.y2)},Hht=function(e){return Uht(e)&&Na(e.then)},Kht=function(){return vTA&&vTA.userAgent.match(/msie|trident|edge/i)},gw=function(e,t){if(!t)t=function(){if(arguments.length===1)return arguments[0];else if(arguments.length===0)return"undefined";var u=[];for(var a=0;a<arguments.length;a++)u.push(arguments[a]);return u.join("$")};var r=function(){var u=this,a=arguments,n,o=t.apply(u,a),s=r.cache;if(!(n=s[o]))n=s[o]=e.apply(u,a);return n};return r.cache={},r},YaA,zT,nKA,kTA=function(e){if(w4(e))return e;return e.charAt(0).toUpperCase()+e.substring(1)},p4=function(e,t){return e.slice(-1*t.length)===t},ro="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",Jht,Oht,Pht,_ht,Wht="\\#[0-9a-fA-F]{3}",qht="\\#[0-9a-fA-F]{6}",oKA=function(e,t){if(e<t)return-1;else if(e>t)return 1;else return 0},zht=function(e,t){return-1*oKA(e,t)},Cr,Zht=function(e){if(!(e.length===4||e.length===7)||e[0]!=="#")return;var t=e.length===4,r,i,u,a=16;if(t)r=parseInt(e[1]+e[1],a),i=parseInt(e[2]+e[2],a),u=parseInt(e[3]+e[3],a);else r=parseInt(e[1]+e[2],a),i=parseInt(e[3]+e[4],a),u=parseInt(e[5]+e[6],a);return[r,i,u]},Vht=function(e){var t,r,i,u,a,n,o,s;function l(E,d,I){if(I<0)I+=1;if(I>1)I-=1;if(I<0.16666666666666666)return E+(d-E)*6*I;if(I<0.5)return d;if(I<0.6666666666666666)return E+(d-E)*(0.6666666666666666-I)*6;return E}var g=new RegExp("^"+Pht+"$").exec(e);if(g){if(r=parseInt(g[1]),r<0)r=(360- -1*r%360)%360;else if(r>360)r=r%360;if(r/=360,i=parseFloat(g[2]),i<0||i>100)return;if(i=i/100,u=parseFloat(g[3]),u<0||u>100)return;if(u=u/100,a=g[4],a!==void 0){if(a=parseFloat(a),a<0||a>1)return}if(i===0)n=o=s=Math.round(u*255);else{var C=u<0.5?u*(1+i):u+i-u*i,B=2*u-C;n=Math.round(255*l(B,C,r+0.3333333333333333)),o=Math.round(255*l(B,C,r)),s=Math.round(255*l(B,C,r-0.3333333333333333))}t=[n,o,s,a]}return t},jht=function(e){var t,r=new RegExp("^"+Jht+"$").exec(e);if(r){t=[];var i=[];for(var u=1;u<=3;u++){var a=r[u];if(a[a.length-1]==="%")i[u]=!0;if(a=parseFloat(a),i[u])a=a/100*255;if(a<0||a>255)return;t.push(Math.floor(a))}var n=i[1]||i[2]||i[3],o=i[1]&&i[2]&&i[3];if(n&&!o)return;var s=r[4];if(s!==void 0){if(s=parseFloat(s),s<0||s>1)return;t.push(s)}}return t},Xht=function(e){return $ht[e.toLowerCase()]},sKA=function(e){return(Mu(e)?e:null)||Xht(e)||Zht(e)||jht(e)||Vht(e)},$ht,lKA=function(e){var{map:t,keys:r}=e,i=r.length;for(var u=0;u<i;u++){var a=r[u];if(Hi(a))throw Error("Tried to set map with object key");if(u<r.length-1){if(t[a]==null)t[a]={};t=t[a]}else t[a]=e.value}},gKA=function(e){var{map:t,keys:r}=e,i=r.length;for(var u=0;u<i;u++){var a=r[u];if(Hi(a))throw Error("Tried to get map with object key");if(t=t[a],t==null)return t}return t},lT,KiA,FTA,JiA,xTA,OiA,STA,PiA,LTA,_iA,RTA,WiA,NTA,qiA,GTA,ziA,UTA,ZiA,MTA,ViA,TTA,jiA,YTA,XiA,HTA,$iA,KTA,AuA,JTA,sQt,AF,euA,CKA,lQt,UT=function(e){return lQt(e)},UI,$f=9261,BKA=65599,rw=5381,EKA=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:$f,r=t,i;for(;;){if(i=e.next(),i.done)break;r=r*BKA+i.value|0}return r},Yk=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:$f;return t*BKA+e|0},Hk=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:rw;return(t<<5)+t+e|0},gQt=function(e,t){return e*2097152+t},d4=function(e){return e[0]*2097152+e[1]},gT=function(e,t){return[Yk(e[0],t[0]),Hk(e[1],t[1])]},OTA=function(e,t){var r={value:0,done:!1},i=0,u=e.length,a={next:function(){if(i<u)r.value=e[i++];else r.done=!0;return r}};return EKA(a,t)},t3=function(e,t){var r={value:0,done:!1},i=0,u=e.length,a={next:function(){if(i<u)r.value=e.charCodeAt(i++);else r.done=!0;return r}};return EKA(a,t)},dKA=function(){return cQt(arguments)},cQt=function(e){var t;for(var r=0;r<e.length;r++){var i=e[r];if(r===0)t=t3(i);else t=t3(i,t)}return t},BQt=function(e,t,r,i,u,a){return{x:(e-r)*u+r,y:(t-i)*a+i}},PTA=!0,dQt,IQt,KaA,IKA=function(){return!0},MT=function(){return!1},_TA=function(){return 0},JaA=function(){},Qa=function(e){throw Error(e)},hKA=function(e){if(e!==void 0)PTA=!!e;else return PTA},du=function(e){if(!hKA())return;if(dQt)console.warn(e);else if(console.log(e),IQt)console.trace()},hQt=function(e){return Cr({},e)},RE=function(e){if(e==null)return e;if(Mu(e))return e.slice();else if(Hi(e))return hQt(e);else return e},QQt=function(e){return e.slice()},QKA=function(e,t){for(t=e="";e++<36;t+=e*51&52?(e^15?8^Math.random()*(e^20?16:4):4).toString(16):"-");return t},pQt,pKA=function(){return pQt},o0=function(e){var t=Object.keys(e);return function(r){var i={};for(var u=0;u<t.length;u++){var a=t[u],n=r==null?void 0:r[a];i[a]=n===void 0?e[a]:n}return i}},b4=function(e,t,r){for(var i=e.length-1;i>=0;i--)if(e[i]===t)e.splice(i,1)},OaA=function(e){e.splice(0,e.length)},fQt=function(e,t){for(var r=0;r<t.length;r++){var i=t[r];e.push(i)}},fs=function(e,t,r){if(r)t=nKA(r,t);return e[t]},LE=function(e,t,r,i){if(r)t=nKA(r,t);e[t]=i},mQt,GI,DQt="undefined",yQt,dw,VT=function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||t===void 0||!TaA(e)){Qa("An element must have a core reference and parameters set");return}var i=t.group;if(i==null)if(t.data&&t.data.source!=null&&t.data.target!=null)i="edges";else i="nodes";if(i!=="nodes"&&i!=="edges"){Qa("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var u=this._private={cy:e,single:!0,data:t.data||{},position:t.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:i,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:t.selected?!0:!1,selectable:t.selectable===void 0?!0:t.selectable?!0:!1,locked:t.locked?!0:!1,grabbed:!1,grabbable:t.grabbable===void 0?!0:t.grabbable?!0:!1,pannable:t.pannable===void 0?i==="edges"?!0:!1:t.pannable?!0:!1,active:!1,classes:new dw,animation:{current:[],queue:[]},rscratch:{},scratch:t.scratch||{},edges:[],children:[],parent:t.parent&&t.parent.isNode()?t.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(u.position.x==null)u.position.x=0;if(u.position.y==null)u.position.y=0;if(t.renderedPosition){var a=t.renderedPosition,n=e.pan(),o=e.zoom();u.position={x:(a.x-n.x)/o,y:(a.y-n.y)/o}}var s=[];if(Mu(t.classes))s=t.classes;else if(tr(t.classes))s=t.classes.split(/\s+/);for(var l=0,g=s.length;l<g;l++){var C=s[l];if(!C||C==="")continue;u.classes.add(C)}if(this.createEmitter(),r===void 0||r)this.restore();var B=t.style||t.css;if(B)du("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(B)},WTA=function(e){return e={bfs:e.bfs||!e.dfs,dfs:e.dfs||!e.bfs},function(r,i,u){var a;if(Hi(r)&&!Cg(r))a=r,r=a.roots||a.root,i=a.visit,u=a.directed;u=arguments.length===2&&!Na(i)?i:u,i=Na(i)?i:function(){};var n=this._private.cy,o=r=tr(r)?this.filter(r):r,s=[],l=[],g={},C={},B={},E=0,d,I=this.byGroup(),{nodes:h,edges:Q}=I;for(var p=0;p<o.length;p++){var m=o[p],f=m.id();if(m.isNode()){if(s.unshift(m),e.bfs)B[f]=!0,l.push(m);C[f]=0}}var D=function(){var k=e.bfs?s.shift():s.pop(),T=k.id();if(e.dfs){if(B[T])return 0;B[T]=!0,l.push(k)}var R=C[T],L=g[T],M=L!=null?L.source():null,U=L!=null?L.target():null,Y=L==null?void 0:k.same(M)?U[0]:M[0],H;if(H=i(k,L,Y,E++,R),H===!0)return d=k,1;if(H===!1)return 1;var J=k.connectedEdges().filter(function(j){return(!u||j.source().same(k))&&Q.has(j)});for(var K=0;K<J.length;K++){var O=J[K],_=O.connectedNodes().filter(function(j){return!j.same(k)&&h.has(j)}),z=_.id();if(_.length!==0&&!B[z]){if(_=_[0],s.push(_),e.bfs)B[z]=!0,l.push(_);g[z]=O,C[z]=C[T]+1}}},w;while(s.length!==0){if(w=D(),w===0)continue;if(w===1)break}var b=n.collection();for(var F=0;F<l.length;F++){var v=l[F],S=g[v.id()];if(S!=null)b.push(S);b.push(v)}return{path:n.collection(b),found:n.collection(d)}}},Kk,DT,wQt,qTA,tuA,zTA,kQt,eF,FQt,xQt,SQt,LQt,RQt,NQt,GQt,UQt,MQt,TQt,YQt=function(e,t,r){if(r.length===0)Qa("Karger-Stein must be run on a connected (sub)graph");var i=r[e],u=i[1],a=i[2],n=t[u],o=t[a],s=r;for(var l=s.length-1;l>=0;l--){var g=s[l],C=g[1],B=g[2];if(t[C]===n&&t[B]===o||t[C]===o&&t[B]===n)s.splice(l,1)}for(var E=0;E<s.length;E++){var d=s[E];if(d[1]===o)s[E]=d.slice(),s[E][1]=n;else if(d[2]===o)s[E]=d.slice(),s[E][2]=n}for(var I=0;I<t.length;I++)if(t[I]===o)t[I]=n;return s},ruA=function(e,t,r,i){while(r>i){var u=Math.floor(Math.random()*t.length);t=YQt(u,e,t),r--}return t},HQt,iuA,KQt=function(e){return{x:e.x,y:e.y}},jT=function(e,t,r){return{x:e.x*t+r.x,y:e.y*t+r.y}},fKA=function(e,t,r){return{x:(e.x-r.x)/t,y:(e.y-r.y)/t}},iw=function(e){return{x:e[0],y:e[1]}},JQt=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=1/0;for(var u=t;u<r;u++){var a=e[u];if(isFinite(a))i=Math.min(a,i)}return i},OQt=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=-1/0;for(var u=t;u<r;u++){var a=e[u];if(isFinite(a))i=Math.max(a,i)}return i},PQt=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=0,u=0;for(var a=t;a<r;a++){var n=e[a];if(isFinite(n))i+=n,u++}return i/u},_Qt=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,u=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;if(i)e=e.slice(t,r);else{if(r<e.length)e.splice(r,e.length-r);if(t>0)e.splice(0,t)}var n=0;for(var o=e.length-1;o>=0;o--){var s=e[o];if(a){if(!isFinite(s))e[o]=-1/0,n++}else e.splice(o,1)}if(u)e.sort(function(C,B){return C-B});var l=e.length,g=Math.floor(l/2);if(l%2!==0)return e[g+1+n];else return(e[g-1+n]+e[g+n])/2},mKA=function(e,t){if(t===0)return e;return mKA(t,e%t)},WQt=function(e){var t=e[0];for(var r=0;r<e.length;r++)if(!iKA(e[r]))return 0;else if(r>0)t=mKA(t,e[r]);return t},qQt=function(e){return Math.PI*e/180},cT=function(e,t){return Math.atan2(t,e)-Math.PI/2},PaA,_aA=function(e){if(e>0)return 1;else if(e<0)return-1;else return 0},r3=function(e,t){return Math.sqrt(jf(e,t))},jf=function(e,t){var r=t.x-e.x,i=t.y-e.y;return r*r+i*i},zQt=function(e){var t=e.length,r=0;for(var i=0;i<t;i++)r+=e[i];for(var u=0;u<t;u++)e[u]=e[u]/r;return e},Ro=function(e,t,r,i){return(1-i)*(1-i)*e+2*(1-i)*i*t+i*i*r},nw=function(e,t,r,i){return{x:Ro(e.x,t.x,r.x,i),y:Ro(e.y,t.y,r.y,i)}},ZQt=function(e,t,r,i){var u={x:t.x-e.x,y:t.y-e.y},a=r3(e,t),n={x:u.x/a,y:u.y/a};return r=r==null?0:r,i=i!=null?i:r*a,{x:e.x+n.x*i,y:e.y+n.y*i}},Jk=function(e,t,r){return Math.max(e,Math.min(r,t))},ms=function(e){if(e==null)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};else if(e.x1!=null&&e.y1!=null){if(e.x2!=null&&e.y2!=null&&e.x2>=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};else if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},VQt=function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},jQt=function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},XQt=function(e,t){e.x1=Math.min(e.x1,t.x1),e.x2=Math.max(e.x2,t.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,t.y1),e.y2=Math.max(e.y2,t.y2),e.h=e.y2-e.y1},DKA=function(e,t,r){e.x1=Math.min(e.x1,t),e.x2=Math.max(e.x2,t),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r),e.y2=Math.max(e.y2,r),e.h=e.y2-e.y1},yT=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=t,e.x2+=t,e.y1-=t,e.y2+=t,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},wT=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],r,i,u,a;if(t.length===1)r=i=u=a=t[0];else if(t.length===2)r=u=t[0],a=i=t[1];else if(t.length===4){var n=Tn(t,4);r=n[0],i=n[1],u=n[2],a=n[3]}return e.x1-=a,e.x2+=i,e.y1-=r,e.y2+=u,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},ZTA=function(e,t){e.x1=t.x1,e.y1=t.y1,e.x2=t.x2,e.y2=t.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},WaA=function(e,t){if(e.x1>t.x2)return!1;if(t.x1>e.x2)return!1;if(e.x2<t.x1)return!1;if(t.x2<e.x1)return!1;if(e.y2<t.y1)return!1;if(t.y2<e.y1)return!1;if(e.y1>t.y2)return!1;if(t.y1>e.y2)return!1;return!0},f4=function(e,t,r){return e.x1<=t&&t<=e.x2&&e.y1<=r&&r<=e.y2},VTA=function(e,t){return f4(e,t.x,t.y)},yKA=function(e,t){return f4(e,t.x1,t.y1)&&f4(e,t.x2,t.y2)},$Qt,wKA=function(e,t,r,i,u,a,n){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",s=o==="auto"?v4(u,a):o,l=u/2,g=a/2;s=Math.min(s,l,g);var C=s!==l,B=s!==g,E;if(C){var d=r-l+s-n,I=i-g-n,h=r+l-s+n,Q=I;if(E=m4(e,t,r,i,d,I,h,Q,!1),E.length>0)return E}if(B){var p=r+l+n,m=i-g+s-n,f=p,D=i+g-s+n;if(E=m4(e,t,r,i,p,m,f,D,!1),E.length>0)return E}if(C){var w=r-l+s-n,b=i+g+n,F=r+l-s+n,v=b;if(E=m4(e,t,r,i,w,b,F,v,!1),E.length>0)return E}if(B){var S=r-l-n,x=i-g+s-n,k=S,T=i+g-s+n;if(E=m4(e,t,r,i,S,x,k,T,!1),E.length>0)return E}var R;{var L=r-l+s,M=i-g+s;if(R=Rk(e,t,r,i,L,M,s+n),R.length>0&&R[0]<=L&&R[1]<=M)return[R[0],R[1]]}{var U=r+l-s,Y=i-g+s;if(R=Rk(e,t,r,i,U,Y,s+n),R.length>0&&R[0]>=U&&R[1]<=Y)return[R[0],R[1]]}{var H=r+l-s,J=i+g-s;if(R=Rk(e,t,r,i,H,J,s+n),R.length>0&&R[0]>=H&&R[1]>=J)return[R[0],R[1]]}{var K=r-l+s,O=i+g-s;if(R=Rk(e,t,r,i,K,O,s+n),R.length>0&&R[0]<=K&&R[1]>=O)return[R[0],R[1]]}return[]},t4t=function(e,t,r,i,u,a,n){var o=n,s=Math.min(r,u),l=Math.max(r,u),g=Math.min(i,a),C=Math.max(i,a);return s-o<=e&&e<=l+o&&g-o<=t&&t<=C+o},r4t=function(e,t,r,i,u,a,n,o,s){var l={x1:Math.min(r,n,u)-s,x2:Math.max(r,n,u)+s,y1:Math.min(i,o,a)-s,y2:Math.max(i,o,a)+s};if(e<l.x1||e>l.x2||t<l.y1||t>l.y2)return!1;else return!0},i4t=function(e,t,r,i){r-=i;var u=t*t-4*e*r;if(u<0)return[];var a=Math.sqrt(u),n=2*e,o=(-t+a)/n,s=(-t-a)/n;return[o,s]},u4t=function(e,t,r,i,u){var a=0.00001;if(e===0)e=a;t/=e,r/=e,i/=e;var n,o,s,l,g,C,B,E;if(o=(3*r-t*t)/9,s=-(27*i)+t*(9*r-2*(t*t)),s/=54,n=o*o*o+s*s,u[1]=0,B=t/3,n>0){g=s+Math.sqrt(n),g=g<0?-Math.pow(-g,0.3333333333333333):Math.pow(g,0.3333333333333333),C=s-Math.sqrt(n),C=C<0?-Math.pow(-C,0.3333333333333333):Math.pow(C,0.3333333333333333),u[0]=-B+g+C,B+=(g+C)/2,u[4]=u[2]=-B,B=Math.sqrt(3)*(-C+g)/2,u[3]=B,u[5]=-B;return}if(u[5]=u[3]=0,n===0){E=s<0?-Math.pow(-s,0.3333333333333333):Math.pow(s,0.3333333333333333),u[0]=-B+2*E,u[4]=u[2]=-(E+B);return}o=-o,l=o*o*o,l=Math.acos(s/Math.sqrt(l)),E=2*Math.sqrt(o),u[0]=-B+E*Math.cos(l/3),u[2]=-B+E*Math.cos((l+2*Math.PI)/3),u[4]=-B+E*Math.cos((l+4*Math.PI)/3);return},a4t=function(e,t,r,i,u,a,n,o){var s=1*r*r-4*r*u+2*r*n+4*u*u-4*u*n+n*n+i*i-4*i*a+2*i*o+4*a*a-4*a*o+o*o,l=9*r*u-3*r*r-3*r*n-6*u*u+3*u*n+9*i*a-3*i*i-3*i*o-6*a*a+3*a*o,g=3*r*r-6*r*u+r*n-r*e+2*u*u+2*u*e-n*e+3*i*i-6*i*a+i*o-i*t+2*a*a+2*a*t-o*t,C=1*r*u-r*r+r*e-u*e+i*a-i*i+i*t-a*t,B=[];u4t(s,l,g,C,B);var E=0.0000001,d=[];for(var I=0;I<6;I+=2)if(Math.abs(B[I+1])<E&&B[I]>=0&&B[I]<=1)d.push(B[I]);d.push(1),d.push(0);var h=-1,Q,p,m;for(var f=0;f<d.length;f++)if(Q=Math.pow(1-d[f],2)*r+2*(1-d[f])*d[f]*u+d[f]*d[f]*n,p=Math.pow(1-d[f],2)*i+2*(1-d[f])*d[f]*a+d[f]*d[f]*o,m=Math.pow(Q-e,2)+Math.pow(p-t,2),h>=0){if(m<h)h=m}else h=m;return h},n4t=function(e,t,r,i,u,a){var n=[e-r,t-i],o=[u-r,a-i],s=o[0]*o[0]+o[1]*o[1],l=n[0]*n[0]+n[1]*n[1],g=n[0]*o[0]+n[1]*o[1],C=g*g/s;if(g<0)return l;if(C>s)return(e-u)*(e-u)+(t-a)*(t-a);return l-C},dl=function(e,t,r){var i,u,a,n,o,s=0;for(var l=0;l<r.length/2;l++){if(i=r[l*2],u=r[l*2+1],l+1<r.length/2)a=r[(l+1)*2],n=r[(l+1)*2+1];else a=r[(l+1-r.length/2)*2],n=r[(l+1-r.length/2)*2+1];if(i==e&&a==e);else if(i>=e&&e>=a||i<=e&&e<=a){if(o=(e-i)/(a-i)*(n-u)+u,o>t)s++}else continue}if(s%2===0)return!1;else return!0},MI=function(e,t,r,i,u,a,n,o,s){var l=Array(r.length),g;if(o[0]!=null)if(g=Math.atan(o[1]/o[0]),o[0]<0)g=g+Math.PI/2;else g=-g-Math.PI/2;else g=o;var C=Math.cos(-g),B=Math.sin(-g);for(var E=0;E<l.length/2;E++)l[E*2]=a/2*(r[E*2]*C-r[E*2+1]*B),l[E*2+1]=n/2*(r[E*2+1]*C+r[E*2]*B),l[E*2]+=i,l[E*2+1]+=u;var d;if(s>0){var I=YT(l,-s);d=TT(I)}else d=l;return dl(e,t,d)},o4t=function(e,t,r,i,u,a,n,o){var s=Array(r.length*2);for(var l=0;l<o.length;l++){var g=o[l];s[l*4+0]=g.startX,s[l*4+1]=g.startY,s[l*4+2]=g.stopX,s[l*4+3]=g.stopY;var C=Math.pow(g.cx-e,2)+Math.pow(g.cy-t,2);if(C<=Math.pow(g.radius,2))return!0}return dl(e,t,s)},TT=function(e){var t=Array(e.length/2),r,i,u,a,n,o,s,l;for(var g=0;g<e.length/4;g++){if(r=e[g*4],i=e[g*4+1],u=e[g*4+2],a=e[g*4+3],g<e.length/4-1)n=e[(g+1)*4],o=e[(g+1)*4+1],s=e[(g+1)*4+2],l=e[(g+1)*4+3];else n=e[0],o=e[1],s=e[2],l=e[3];var C=m4(r,i,u,a,n,o,s,l,!0);t[g*2]=C[0],t[g*2+1]=C[1]}return t},YT=function(e,t){var r=Array(e.length*2),i,u,a,n;for(var o=0;o<e.length/2;o++){if(i=e[o*2],u=e[o*2+1],o<e.length/2-1)a=e[(o+1)*2],n=e[(o+1)*2+1];else a=e[0],n=e[1];var s=n-u,l=-(a-i),g=Math.sqrt(s*s+l*l),C=s/g,B=l/g;r[o*4]=i+C*t,r[o*4+1]=u+B*t,r[o*4+2]=a+C*t,r[o*4+3]=n+B*t}return r},s4t=function(e,t,r,i,u,a){var n=r-e,o=i-t;n/=u,o/=a;var s=Math.sqrt(n*n+o*o),l=s-1;if(l<0)return[];var g=l/s;return[(r-e)*g+e,(i-t)*g+t]},e3=function(e,t,r,i,u,a,n){return e-=u,t-=a,e/=r/2+n,t/=i/2+n,e*e+t*t<=1},Rk=function(e,t,r,i,u,a,n){var o=[r-e,i-t],s=[e-u,t-a],l=o[0]*o[0]+o[1]*o[1],g=2*(s[0]*o[0]+s[1]*o[1]),C=s[0]*s[0]+s[1]*s[1]-n*n,B=g*g-4*l*C;if(B<0)return[];var E=(-g+Math.sqrt(B))/(2*l),d=(-g-Math.sqrt(B))/(2*l),I=Math.min(E,d),h=Math.max(E,d),Q=[];if(I>=0&&I<=1)Q.push(I);if(h>=0&&h<=1)Q.push(h);if(Q.length===0)return[];var p=Q[0]*o[0]+e,m=Q[0]*o[1]+t;if(Q.length>1)if(Q[0]==Q[1])return[p,m];else{var f=Q[1]*o[0]+e,D=Q[1]*o[1]+t;return[p,m,f,D]}else return[p,m]},uuA=function(e,t,r){if(t<=e&&e<=r||r<=e&&e<=t)return e;else if(e<=t&&t<=r||r<=t&&t<=e)return t;else return r},m4=function(e,t,r,i,u,a,n,o,s){var l=e-u,g=r-e,C=n-u,B=t-a,E=i-t,d=o-a,I=C*B-d*l,h=g*B-E*l,Q=d*g-C*E;if(Q!==0){var p=I/Q,m=h/Q,f=0.001,D=0-f,w=1+f;if(D<=p&&p<=w&&D<=m&&m<=w)return[e+p*g,t+p*E];else if(!s)return[];else return[e+p*g,t+p*E]}else if(I===0||h===0){if(uuA(e,r,n)===n)return[n,o];if(uuA(e,r,u)===u)return[u,a];if(uuA(u,n,r)===r)return[r,i];return[]}else return[]},l4t=function(e,t,r,i,u){var a=[],n=i/2,o=u/2,s=t,l=r;a.push({x:s+n*e[0],y:l+o*e[1]});for(var g=1;g<e.length/2;g++)a.push({x:s+n*e[g*2],y:l+o*e[g*2+1]});return a},Ok=function(e,t,r,i,u,a,n,o){var s=[],l,g=Array(r.length),C=!0;if(a==null)C=!1;var B;if(C){for(var E=0;E<g.length/2;E++)g[E*2]=r[E*2]*a+i,g[E*2+1]=r[E*2+1]*n+u;if(o>0){var d=YT(g,-o);B=TT(d)}else B=g}else B=r;var I,h,Q,p;for(var m=0;m<B.length/2;m++){if(I=B[m*2],h=B[m*2+1],m<B.length/2-1)Q=B[(m+1)*2],p=B[(m+1)*2+1];else Q=B[0],p=B[1];if(l=m4(e,t,i,u,I,h,Q,p),l.length!==0)s.push(l[0],l[1])}return s},g4t=function(e,t,r,i,u,a,n,o,s){var l=[],g,C=Array(r.length*2);s.forEach(function(Q,p){if(p===0)C[C.length-2]=Q.startX,C[C.length-1]=Q.startY;else C[p*4-2]=Q.startX,C[p*4-1]=Q.startY;if(C[p*4]=Q.stopX,C[p*4+1]=Q.stopY,g=Rk(e,t,i,u,Q.cx,Q.cy,Q.radius),g.length!==0)l.push(g[0],g[1])});for(var B=0;B<C.length/4;B++)if(g=m4(e,t,i,u,C[B*4],C[B*4+1],C[B*4+2],C[B*4+3],!1),g.length!==0)l.push(g[0],g[1]);if(l.length>2){var E=[l[0],l[1]],d=Math.pow(E[0]-e,2)+Math.pow(E[1]-t,2);for(var I=1;I<l.length/2;I++){var h=Math.pow(l[I*2]-e,2)+Math.pow(l[I*2+1]-t,2);if(h<=d)E[0]=l[I*2],E[1]=l[I*2+1],d=h}return E}return l},CT=function(e,t,r){var i=[e[0]-t[0],e[1]-t[1]],u=Math.sqrt(i[0]*i[0]+i[1]*i[1]),a=(u-r)/u;if(a<0)a=0.00001;return[t[0]+a*i[0],t[1]+a*i[1]]},ps=function(e,t){var r=haA(e,t);return r=bKA(r),r},bKA=function(e){var t,r,i=e.length/2,u=1/0,a=1/0,n=-1/0,o=-1/0;for(var s=0;s<i;s++)t=e[2*s],r=e[2*s+1],u=Math.min(u,t),n=Math.max(n,t),a=Math.min(a,r),o=Math.max(o,r);var l=2/(n-u),g=2/(o-a);for(var C=0;C<i;C++)t=e[2*C]=e[2*C]*l,r=e[2*C+1]=e[2*C+1]*g,u=Math.min(u,t),n=Math.max(n,t),a=Math.min(a,r),o=Math.max(o,r);if(a<-1)for(var B=0;B<i;B++)r=e[2*B+1]=e[2*B+1]+(-1-a);return e},haA=function(e,t){var r=1/e*2*Math.PI,i=e%2===0?Math.PI/2+r/2:Math.PI/2;i+=t;var u=Array(e*2),a;for(var n=0;n<e;n++)a=n*r+i,u[2*n]=Math.cos(a),u[2*n+1]=Math.sin(-a);return u},v4=function(e,t){return Math.min(e/4,t/4,8)},vKA=function(e,t){return Math.min(e/10,t/10,8)},qaA=function(){return 8},c4t=function(e,t,r){return[e-2*t+r,2*(t-e),e]},QaA=function(e,t){return{heightOffset:Math.min(15,0.05*t),widthOffset:Math.min(100,0.25*e),ctrlPtOffsetPct:0.05}},C4t,B4t,jTA,ow,XTA,sw,E4t,paA,d4t,I4t=function(e){return d4t(e)},h4t=function(e,t){var r=0;for(var i=0;i<t.length;i++)r+=t[i](e);return r},Q4t=function(e,t,r){for(var i=0;i<t;i++)e[i*t+i]=r},kKA=function(e,t){var r;for(var i=0;i<t;i++){r=0;for(var u=0;u<t;u++)r+=e[u*t+i];for(var a=0;a<t;a++)e[a*t+i]=e[a*t+i]/r}},p4t=function(e,t,r){var i=Array(r*r);for(var u=0;u<r;u++){for(var a=0;a<r;a++)i[u*r+a]=0;for(var n=0;n<r;n++)for(var o=0;o<r;o++)i[u*r+o]+=e[u*r+n]*t[n*r+o]}return i},f4t=function(e,t,r){var i=e.slice(0);for(var u=1;u<r;u++)e=p4t(e,i,t);return e},m4t=function(e,t,r){var i=Array(t*t);for(var u=0;u<t*t;u++)i[u]=Math.pow(e[u],r);return kKA(i,t),i},D4t=function(e,t,r,i){for(var u=0;u<r;u++){var a=Math.round(e[u]*Math.pow(10,i))/Math.pow(10,i),n=Math.round(t[u]*Math.pow(10,i))/Math.pow(10,i);if(a!==n)return!1}return!0},y4t=function(e,t,r,i){var u=[];for(var a=0;a<t;a++){var n=[];for(var o=0;o<t;o++)if(Math.round(e[a*t+o]*1000)/1000>0)n.push(r[o]);if(n.length!==0)u.push(i.collection(n))}return u},w4t=function(e,t){for(var r=0;r<e.length;r++)if(!t[r]||e[r].id()!==t[r].id())return!1;return!0},b4t=function(e){for(var t=0;t<e.length;t++)for(var r=0;r<e.length;r++)if(t!=r&&w4t(e[t],e[r]))e.splice(r,1);return e},$TA=function(e){var t=this.nodes(),r=this.edges(),i=this.cy(),u=I4t(e),a={};for(var n=0;n<t.length;n++)a[t[n].id()]=n;var o=t.length,s=o*o,l=Array(s),g;for(var C=0;C<s;C++)l[C]=0;for(var B=0;B<r.length;B++){var E=r[B],d=a[E.source().id()],I=a[E.target().id()],h=h4t(E,u.attributes);l[d*o+I]+=h,l[I*o+d]+=h}Q4t(l,o,u.multFactor),kKA(l,o);var Q=!0,p=0;while(Q&&p<u.maxIterations){if(Q=!1,g=f4t(l,o,u.expandFactor),l=m4t(g,o,u.inflateFactor),!D4t(l,g,s,4))Q=!0;p++}var m=y4t(l,o,t,i);return m=b4t(m),m},v4t,k4t=function(e){return e},FKA=function(e,t){return Math.abs(t-e)},AYA=function(e,t,r){return e+FKA(t,r)},eYA=function(e,t,r){return e+Math.pow(r-t,2)},F4t=function(e){return Math.sqrt(e)},x4t=function(e,t,r){return Math.max(e,FKA(t,r))},bk=function(e,t,r,i,u){var a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:k4t,n=i,o,s;for(var l=0;l<e;l++)o=t(l),s=r(l),n=u(n,o,s);return a(n)},cw,S4t,zaA=function(e){return S4t(e)},HT=function(e,t,r,i,u){var a=u!=="kMedoids",n=a?function(g){return r[g]}:function(g){return i[g](r)},o=function(C){return i[C](t)},s=r,l=t;return XT(e,i.length,n,o,s,l)},nuA=function(e,t,r){var i=r.length,u=Array(i),a=Array(i),n=Array(t),o=null;for(var s=0;s<i;s++)u[s]=e.min(r[s]).value,a[s]=e.max(r[s]).value;for(var l=0;l<t;l++){o=[];for(var g=0;g<i;g++)o[g]=Math.random()*(a[g]-u[g])+u[g];n[l]=o}return n},xKA=function(e,t,r,i,u){var a=1/0,n=0;for(var o=0;o<t.length;o++){var s=HT(r,e,t[o],i,u);if(s<a)a=s,n=o}return n},SKA=function(e,t,r){var i=[],u=null;for(var a=0;a<t.length;a++)if(u=t[a],r[u.id()]===e)i.push(u);return i},L4t=function(e,t,r){return Math.abs(t-e)<=r},R4t=function(e,t,r){for(var i=0;i<e.length;i++)for(var u=0;u<e[i].length;u++){var a=Math.abs(e[i][u]-t[i][u]);if(a>r)return!1}return!0},N4t=function(e,t,r){for(var i=0;i<r;i++)if(e===t[i])return!0;return!1},tYA=function(e,t){var r=Array(t);if(e.length<50)for(var i=0;i<t;i++){var u=e[Math.floor(Math.random()*e.length)];while(N4t(u,r,i))u=e[Math.floor(Math.random()*e.length)];r[i]=u}else for(var a=0;a<t;a++)r[a]=e[Math.floor(Math.random()*e.length)];return r},rYA=function(e,t,r){var i=0;for(var u=0;u<t.length;u++)i+=HT("manhattan",t[u],e,r,"kMedoids");return i},G4t=function(e){var t=this.cy(),r=this.nodes(),i=null,u=zaA(e),a=Array(u.k),n={},o;if(u.testMode)if(typeof u.testCentroids==="number")u.testCentroids,o=nuA(r,u.k,u.attributes);else if(io(u.testCentroids)==="object")o=u.testCentroids;else o=nuA(r,u.k,u.attributes);else o=nuA(r,u.k,u.attributes);var s=!0,l=0;while(s&&l<u.maxIterations){for(var g=0;g<r.length;g++)i=r[g],n[i.id()]=xKA(i,o,u.distance,u.attributes,"kMeans");s=!1;for(var C=0;C<u.k;C++){var B=SKA(C,r,n);if(B.length===0)continue;var E=u.attributes.length,d=o[C],I=Array(E),h=Array(E);for(var Q=0;Q<E;Q++){h[Q]=0;for(var p=0;p<B.length;p++)i=B[p],h[Q]+=u.attributes[Q](i);if(I[Q]=h[Q]/B.length,!L4t(I[Q],d[Q],u.sensitivityThreshold))s=!0}o[C]=I,a[C]=t.collection(B)}l++}return a},U4t=function(e){var t=this.cy(),r=this.nodes(),i=null,u=zaA(e),a=Array(u.k),n,o={},s,l=Array(u.k);if(u.testMode)if(typeof u.testCentroids==="number");else if(io(u.testCentroids)==="object")n=u.testCentroids;else n=tYA(r,u.k);else n=tYA(r,u.k);var g=!0,C=0;while(g&&C<u.maxIterations){for(var B=0;B<r.length;B++)i=r[B],o[i.id()]=xKA(i,n,u.distance,u.attributes,"kMedoids");g=!1;for(var E=0;E<n.length;E++){var d=SKA(E,r,o);if(d.length===0)continue;l[E]=rYA(n[E],d,u.attributes);for(var I=0;I<d.length;I++)if(s=rYA(d[I],d,u.attributes),s<l[E])l[E]=s,n[E]=d[I],g=!0;a[E]=t.collection(d)}C++}return a},M4t=function(e,t,r,i,u){var a,n;for(var o=0;o<t.length;o++)for(var s=0;s<e.length;s++)i[o][s]=Math.pow(r[o][s],u.m);for(var l=0;l<e.length;l++)for(var g=0;g<u.attributes.length;g++){a=0,n=0;for(var C=0;C<t.length;C++)a+=i[C][l]*u.attributes[g](t[C]),n+=i[C][l];e[l][g]=a/n}},T4t=function(e,t,r,i,u){for(var a=0;a<e.length;a++)t[a]=e[a].slice();var n,o,s,l=2/(u.m-1);for(var g=0;g<r.length;g++)for(var C=0;C<i.length;C++){n=0;for(var B=0;B<r.length;B++)o=HT(u.distance,i[C],r[g],u.attributes,"cmeans"),s=HT(u.distance,i[C],r[B],u.attributes,"cmeans"),n+=Math.pow(o/s,l);e[C][g]=1/n}},Y4t=function(e,t,r,i){var u=Array(r.k);for(var a=0;a<u.length;a++)u[a]=[];var n,o;for(var s=0;s<t.length;s++){n=-1/0,o=-1;for(var l=0;l<t[0].length;l++)if(t[s][l]>n)n=t[s][l],o=l;u[o].push(e[s])}for(var g=0;g<u.length;g++)u[g]=i.collection(u[g]);return u},iYA=function(e){var t=this.cy(),r=this.nodes(),i=zaA(e),u,a,n,o,s;o=Array(r.length);for(var l=0;l<r.length;l++)o[l]=Array(i.k);n=Array(r.length);for(var g=0;g<r.length;g++)n[g]=Array(i.k);for(var C=0;C<r.length;C++){var B=0;for(var E=0;E<i.k;E++)n[C][E]=Math.random(),B+=n[C][E];for(var d=0;d<i.k;d++)n[C][d]=n[C][d]/B}a=Array(i.k);for(var I=0;I<i.k;I++)a[I]=Array(i.attributes.length);s=Array(r.length);for(var h=0;h<r.length;h++)s[h]=Array(i.k);var Q=!0,p=0;while(Q&&p<i.maxIterations){if(Q=!1,M4t(a,r,n,s,i),T4t(n,o,a,r,i),!R4t(n,o,i.sensitivityThreshold))Q=!0;p++}return u=Y4t(r,n,i,t),{clusters:u,degreeOfMembership:n}},H4t,K4t,J4t,O4t=function(e){var t=K4t(e),r=J4t[t.linkage];if(r!=null)t.linkage=r;return t},uYA=function(e,t,r,i,u){var a=0,n=1/0,o,s=u.attributes,l=function(F,v){return XT(u.distance,s.length,function(S){return s[S](F)},function(S){return s[S](v)},F,v)};for(var g=0;g<e.length;g++){var C=e[g].key,B=r[C][i[C]];if(B<n)a=C,n=B}if(u.mode==="threshold"&&n>=u.threshold||u.mode==="dendrogram"&&e.length===1)return!1;var E=t[a],d=t[i[a]],I;if(u.mode==="dendrogram")I={left:E,right:d,key:E.key};else I={value:E.value.concat(d.value),key:E.key};e[E.index]=I,e.splice(d.index,1),t[E.key]=I;for(var h=0;h<e.length;h++){var Q=e[h];if(E.key===Q.key)o=1/0;else if(u.linkage==="min"){if(o=r[E.key][Q.key],r[E.key][Q.key]>r[d.key][Q.key])o=r[d.key][Q.key]}else if(u.linkage==="max"){if(o=r[E.key][Q.key],r[E.key][Q.key]<r[d.key][Q.key])o=r[d.key][Q.key]}else if(u.linkage==="mean")o=(r[E.key][Q.key]*E.size+r[d.key][Q.key]*d.size)/(E.size+d.size);else if(u.mode==="dendrogram")o=l(Q.value,E.value);else o=l(Q.value[0],E.value[0]);r[E.key][Q.key]=r[Q.key][E.key]=o}for(var p=0;p<e.length;p++){var m=e[p].key;if(i[m]===E.key||i[m]===d.key){var f=m;for(var D=0;D<e.length;D++){var w=e[D].key;if(r[m][w]<r[m][f])f=w}i[m]=f}e[p].index=p}return E.key=d.key=E.index=d.index=null,!0},uw=function(e,t,r){if(!e)return;if(e.value)t.push(e.value);else{if(e.left)uw(e.left,t);if(e.right)uw(e.right,t)}},faA=function(e,t){if(!e)return"";if(e.left&&e.right){var r=faA(e.left,t),i=faA(e.right,t),u=t.add({group:"nodes",data:{id:r+","+i}});return t.add({group:"edges",data:{source:r,target:u.id()}}),t.add({group:"edges",data:{source:i,target:u.id()}}),u.id()}else if(e.value)return e.value.id()},maA=function(e,t,r){if(!e)return[];var i=[],u=[],a=[];if(t===0){if(e.left)uw(e.left,i);if(e.right)uw(e.right,u);return a=i.concat(u),[r.collection(a)]}else if(t===1)if(e.value)return[r.collection(e.value)];else{if(e.left)uw(e.left,i);if(e.right)uw(e.right,u);return[r.collection(i),r.collection(u)]}else if(e.value)return[r.collection(e.value)];else{if(e.left)i=maA(e.left,t-1,r);if(e.right)u=maA(e.right,t-1,r);return i.concat(u)}},aYA=function(e){var t=this.cy(),r=this.nodes(),i=O4t(e),u=i.attributes,a=function(p,m){return XT(i.distance,u.length,function(f){return u[f](p)},function(f){return u[f](m)},p,m)},n=[],o=[],s=[],l=[];for(var g=0;g<r.length;g++){var C={value:i.mode==="dendrogram"?r[g]:[r[g]],key:g,index:g};n[g]=C,l[g]=C,o[g]=[],s[g]=0}for(var B=0;B<n.length;B++)for(var E=0;E<=B;E++){var d=void 0;if(i.mode==="dendrogram")d=B===E?1/0:a(n[B].value,n[E].value);else d=B===E?1/0:a(n[B].value[0],n[E].value[0]);if(o[B][E]=d,o[E][B]=d,d<o[B][s[B]])s[B]=E}var I=uYA(n,l,o,s,i);while(I)I=uYA(n,l,o,s,i);var h;if(i.mode==="dendrogram"){if(h=maA(n[0],i.dendrogramDepth,t),i.addDendrogram)faA(n[0],t)}else h=Array(n.length),n.forEach(function(Q,p){Q.key=Q.index=null,h[p]=t.collection(Q.value)});return h},P4t,_4t,W4t=function(e){var{damping:t,preference:r}=e;if(!(0.5<=t&&t<1))Qa("Damping must range on [0.5, 1). Got: ".concat(t));var i=["median","mean","min","max"];if(!(i.some(function(u){return u===r})||Qt(r)))Qa("Preference must be one of [".concat(i.map(function(u){return"'".concat(u,"'")}).join(", "),"] or a number. Got: ").concat(r));return _4t(e)},q4t=function(e,t,r,i){var u=function(n,o){return i[o](n)};return-XT(e,i.length,function(a){return u(t,a)},function(a){return u(r,a)},t,r)},z4t=function(e,t){var r=null;if(t==="median")r=_Qt(e);else if(t==="mean")r=PQt(e);else if(t==="min")r=JQt(e);else if(t==="max")r=OQt(e);else r=t;return r},Z4t=function(e,t,r){var i=[];for(var u=0;u<e;u++)if(t[u*e+u]+r[u*e+u]>0)i.push(u);return i},nYA=function(e,t,r){var i=[];for(var u=0;u<e;u++){var a=-1,n=-1/0;for(var o=0;o<r.length;o++){var s=r[o];if(t[u*e+s]>n)a=s,n=t[u*e+s]}if(a>0)i.push(a)}for(var l=0;l<r.length;l++)i[r[l]]=r[l];return i},V4t=function(e,t,r){var i=nYA(e,t,r);for(var u=0;u<r.length;u++){var a=[];for(var n=0;n<i.length;n++)if(i[n]===r[u])a.push(n);var o=-1,s=-1/0;for(var l=0;l<a.length;l++){var g=0;for(var C=0;C<a.length;C++)g+=t[a[C]*e+a[l]];if(g>s)o=l,s=g}r[u]=a[o]}return i=nYA(e,t,r),i},oYA=function(e){var t=this.cy(),r=this.nodes(),i=W4t(e),u={};for(var a=0;a<r.length;a++)u[r[a].id()]=a;var n,o,s,l,g,C;n=r.length,o=n*n,s=Array(o);for(var B=0;B<o;B++)s[B]=-1/0;for(var E=0;E<n;E++)for(var d=0;d<n;d++)if(E!==d)s[E*n+d]=q4t(i.distance,r[E],r[d],i.attributes);l=z4t(s,i.preference);for(var I=0;I<n;I++)s[I*n+I]=l;g=Array(o);for(var h=0;h<o;h++)g[h]=0;C=Array(o);for(var Q=0;Q<o;Q++)C[Q]=0;var p=Array(n),m=Array(n),f=Array(n);for(var D=0;D<n;D++)p[D]=0,m[D]=0,f[D]=0;var w=Array(n*i.minIterations);for(var b=0;b<w.length;b++)w[b]=0;var F;for(F=0;F<i.maxIterations;F++){for(var v=0;v<n;v++){var S=-1/0,x=-1/0,k=-1,T=0;for(var R=0;R<n;R++)if(p[R]=g[v*n+R],T=C[v*n+R]+s[v*n+R],T>=S)x=S,S=T,k=R;else if(T>x)x=T;for(var L=0;L<n;L++)g[v*n+L]=(1-i.damping)*(s[v*n+L]-S)+i.damping*p[L];g[v*n+k]=(1-i.damping)*(s[v*n+k]-x)+i.damping*p[k]}for(var M=0;M<n;M++){var U=0;for(var Y=0;Y<n;Y++)p[Y]=C[Y*n+M],m[Y]=Math.max(0,g[Y*n+M]),U+=m[Y];U-=m[M],m[M]=g[M*n+M],U+=m[M];for(var H=0;H<n;H++)C[H*n+M]=(1-i.damping)*Math.min(0,U-m[H])+i.damping*p[H];C[M*n+M]=(1-i.damping)*(U-m[M])+i.damping*p[M]}var J=0;for(var K=0;K<n;K++){var O=C[K*n+K]+g[K*n+K]>0?1:0;w[F%i.minIterations*n+K]=O,J+=O}if(J>0&&(F>=i.minIterations-1||F==i.maxIterations-1)){var _=0;for(var z=0;z<n;z++){f[z]=0;for(var j=0;j<i.minIterations;j++)f[z]+=w[j*n+z];if(f[z]===0||f[z]===i.minIterations)_++}if(_===n)break}}var q=Z4t(n,g,C),CA=V4t(n,s,q),tA={};for(var lA=0;lA<q.length;lA++)tA[q[lA]]=[];for(var gA=0;gA<r.length;gA++){var aA=u[r[gA].id()],RA=CA[aA];if(RA!=null)tA[RA].push(r[gA])}var wA=Array(q.length);for(var JA=0;JA<q.length;JA++)wA[JA]=t.collection(tA[q[JA]]);return wA},j4t,X4t,$4t,BT=function(){var e=this,t={},r=0,i=0,u=[],a=[],n={},o=function(C,B){var E=a.length-1,d=[],I=e.spawn();while(a[E].x!=C||a[E].y!=B)d.push(a.pop().edge),E--;d.push(a.pop().edge),d.forEach(function(h){var Q=h.connectedNodes().intersection(e);I.merge(h),Q.forEach(function(p){var m=p.id(),f=p.connectedEdges().intersection(e);if(I.merge(p),!t[m].cutVertex)I.merge(f);else I.merge(f.filter(function(D){return D.isLoop()}))})}),u.push(I)},s=function(C,B,E){if(C===E)i+=1;t[B]={id:r,low:r++,cutVertex:!1};var d=e.getElementById(B).connectedEdges().intersection(e);if(d.size()===0)u.push(e.spawn(e.getElementById(B)));else{var I,h,Q,p;d.forEach(function(m){if(I=m.source().id(),h=m.target().id(),Q=I===B?h:I,Q!==E){if(p=m.id(),!n[p])n[p]=!0,a.push({x:B,y:Q,edge:m});if(!(Q in t)){if(s(C,Q,B),t[B].low=Math.min(t[B].low,t[Q].low),t[B].id<=t[Q].low)t[B].cutVertex=!0,o(B,Q)}else t[B].low=Math.min(t[B].low,t[Q].id)}})}};e.forEach(function(g){if(g.isNode()){var C=g.id();if(!(C in t))i=0,s(C,C),t[C].cutVertex=i>1}});var l=Object.keys(t).filter(function(g){return t[g].cutVertex}).map(function(g){return e.getElementById(g)});return{cut:e.spawn(l),components:u}},A1t,ET=function(){var e=this,t={},r=0,i=[],u=[],a=e.spawn(e),n=function(s){u.push(s),t[s]={index:r,low:r++,explored:!1};var l=e.getElementById(s).connectedEdges().intersection(e);if(l.forEach(function(d){var I=d.target().id();if(I!==s){if(!(I in t))n(I);if(!t[I].explored)t[s].low=Math.min(t[s].low,t[I].low)}}),t[s].index===t[s].low){var g=e.spawn();for(;;){var C=u.pop();if(g.merge(e.getElementById(C)),t[C].low=t[s].index,t[C].explored=!0,C===s)break}var B=g.edgesWith(g),E=g.merge(B);i.push(E),a=a.difference(E)}};return e.forEach(function(o){if(o.isNode()){var s=o.id();if(!(s in t))n(s)}}),{cut:a,components:i}},e1t,LKA,RKA=0,NKA=1,GKA=2,SC=function(e){if(!(this instanceof SC))return new SC(e);if(this.id="Thenable/1.0.7",this.state=RKA,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof e==="function")e.call(this,this.fulfill.bind(this),this.reject.bind(this))},sYA=function(e,t,r,i){if(e.state===RKA)e.state=t,e[r]=i,UKA(e);return e},UKA=function(e){if(e.state===NKA)lYA(e,"onFulfilled",e.fulfillValue);else if(e.state===GKA)lYA(e,"onRejected",e.rejectReason)},lYA=function(e,t,r){if(e[t].length===0)return;var i=e[t];e[t]=[];var u=function(){for(var n=0;n<i.length;n++)i[n](r)};if(typeof setImmediate==="function")setImmediate(u);else setTimeout(u,0)},gYA=function(e,t,r){return function(i){if(typeof e!=="function")t[r].call(t,i);else{var u;try{u=e(i)}catch(a){t.reject(a);return}MKA(t,u)}}},MKA=function(e,t){if(e===t||e.proxy===t){e.reject(TypeError("cannot resolve promise with itself"));return}var r;if(io(t)==="object"&&t!==null||typeof t==="function")try{r=t.then}catch(u){e.reject(u);return}if(typeof r==="function"){var i=!1;try{r.call(t,function(u){if(i)return;if(i=!0,u===t)e.reject(TypeError("circular thenable chain"));else MKA(e,u)},function(u){if(i)return;i=!0,e.reject(u)})}catch(u){if(!i)e.reject(u)}return}e.fulfill(t)},Iw,DaA=function(e,t,r){var i=TaA(e),u=!i,a=this._private=Cr({duration:1000},t,r);if(a.target=e,a.style=a.style||a.css,a.started=!1,a.playing=!1,a.hooked=!1,a.applying=!1,a.progress=0,a.completes=[],a.frames=[],a.complete&&Na(a.complete))a.completes.push(a.complete);if(u){var n=e.position();a.startPosition=a.startPosition||{x:n.x,y:n.y},a.startStyle=a.startStyle||e.cy().style().getAnimationStartStyle(e,a.style)}if(i){var o=e.pan();a.startPan={x:o.x,y:o.y},a.startZoom=e.zoom()}this.length=1,this[0]=this},i3,t1t,ouA,cYA,suA,CYA,luA,BYA,guA,EYA,cuA,dYA,CuA,IYA,BuA,hYA,EuA,QYA,duA,pYA,IuA,fYA,huA,mYA,QuA,DYA,puA,yYA,fuA,wYA,muA,bYA,DuA,vYA,yuA,kYA,wuA,FYA,buA,xYA,vuA,SYA,kuA,LYA,FuA,RYA,xuA,NYA,SuA,GYA,LuA,UYA,RuA,MYA,NuA,TYA,GuA,YYA,UuA,HYA,MuA,KYA,TuA,JYA,YuA,OYA,HuA,PYA,KuA,_YA,JuA,WYA,OuA,qYA,PuA,zYA,_uA,ZYA,WuA,VYA,quA,jYA,zuA,XYA,ZuA,$YA,VuA,AHA,G1t,U1t,juA,eHA,XuA,tHA,$uA,rHA,AaA,iHA,eaA,uHA,taA,aHA,O1t,P1t,raA,nHA,iaA,oHA,q1t,z1t,Z1t,V1t,Eu,j1t,bT,Yi,vu=function(){return{checks:[]}},Gt,yaA,X1t,$1t=function(e,t){return X1t[e](t)},Apt,Vy=function(e){return e.replace(new RegExp("\\\\("+Yi.metaChar+")","g"),function(t,r){return r})},I4=function(e,t,r){e[e.length-1]=r},waA,ept=function(e){var t,r,i;for(var u=0;u<waA.length;u++){var a=waA[u],n=a.name,o=e.match(a.regexObj);if(o!=null){r=o,t=a,i=n;var s=o[0];e=e.substring(s.length);break}}return{expr:t,match:r,name:i,remaining:e}},tpt=function(e){var t=e.match(/^\s+/);if(t){var r=t[0];e=e.substring(r.length)}return e},rpt=function(e){var t=this,r=t.inputText=e,i=t[0]=vu();t.length=1,r=tpt(r);for(;;){var u=ept(r);if(u.expr==null)return du("The selector `"+e+"`is invalid"),!1;else{var a=u.match.slice(1),n=u.expr.populate(t,i,a);if(n===!1)return!1;else if(n!=null)i=n}if(r=u.remaining,r.match(/^\s*$/))break}var o=t[t.length-1];if(t.currentSubject!=null)o.subject=t.currentSubject;o.edgeCount=t.edgeCount,o.compoundCount=t.compoundCount;for(var s=0;s<t.length;s++){var l=t[s];if(l.compoundCount>0&&l.edgeCount>0)return du("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(l.edgeCount>1)return du("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;else if(l.edgeCount===1)du("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},ipt=function(){if(this.toStringCache!=null)return this.toStringCache;var e=function(l){if(l==null)return"";else return l},t=function(l){if(tr(l))return'"'+l+'"';else return e(l)},r=function(l){return" "+l+" "},i=function(l,g){var{type:C,value:B}=l;switch(C){case Gt.GROUP:{var E=e(B);return E.substring(0,E.length-1)}case Gt.DATA_COMPARE:{var{field:d,operator:I}=l;return"["+d+r(e(I))+t(B)+"]"}case Gt.DATA_BOOL:{var{operator:h,field:Q}=l;return"["+e(h)+Q+"]"}case Gt.DATA_EXIST:{var p=l.field;return"["+p+"]"}case Gt.META_COMPARE:{var{operator:m,field:f}=l;return"[["+f+r(e(m))+t(B)+"]]"}case Gt.STATE:return B;case Gt.ID:return"#"+B;case Gt.CLASS:return"."+B;case Gt.PARENT:case Gt.CHILD:return u(l.parent,g)+r(">")+u(l.child,g);case Gt.ANCESTOR:case Gt.DESCENDANT:return u(l.ancestor,g)+" "+u(l.descendant,g);case Gt.COMPOUND_SPLIT:{var D=u(l.left,g),w=u(l.subject,g),b=u(l.right,g);return D+(D.length>0?" ":"")+w+b}case Gt.TRUE:return""}},u=function(l,g){return l.checks.reduce(function(C,B,E){return C+(g===l&&E===0?"$":"")+i(B,g)},"")},a="";for(var n=0;n<this.length;n++){var o=this[n];if(a+=u(o,o.subject),this.length>1&&n<this.length-1)a+=", "}return this.toStringCache=a,a},upt,OKA=function(e,t,r){var i,u=tr(e),a=Qt(e),n=tr(r),o,s,l=!1,g=!1,C=!1;if(t.indexOf("!")>=0)t=t.replace("!",""),g=!0;if(t.indexOf("@")>=0)t=t.replace("@",""),l=!0;if(u||n||l)o=!u&&!a?"":""+e,s=""+r;if(l)e=o=o.toLowerCase(),r=s=s.toLowerCase();switch(t){case"*=":i=o.indexOf(s)>=0;break;case"$=":i=o.indexOf(s,o.length-s.length)>=0;break;case"^=":i=o.indexOf(s)===0;break;case"=":i=e===r;break;case">":C=!0,i=e>r;break;case">=":C=!0,i=e>=r;break;case"<":C=!0,i=e<r;break;case"<=":C=!0,i=e<=r;break;default:i=!1;break}if(g&&(e!=null||!C))i=!i;return i},apt=function(e,t){switch(t){case"?":return e?!0:!1;case"!":return e?!1:!0;case"^":return e===void 0}},npt=function(e){return e!==void 0},jaA=function(e,t){return e.data(t)},opt=function(e,t){return e[t]()},Xa,ea=function(e,t){return e.checks.every(function(r){return Xa[r.type](r,t)})},spt=function(e){var t=this;if(t.length===1&&t[0].checks.length===1&&t[0].checks[0].type===Gt.ID)return e.getElementById(t[0].checks[0].value).collection();var r=function(u){for(var a=0;a<t.length;a++){var n=t[a];if(ea(n,u))return!0}return!1};if(t.text()==null)r=function(){return!0};return e.filter(r)},lpt=function(e){var t=this;for(var r=0;r<t.length;r++){var i=t[r];if(ea(i,e))return!0}return!1},gpt,k4=function(e){if(this.inputText=e,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,e==null||tr(e)&&e.match(/^\s*$/));else if(Cg(e))this.addQuery({checks:[{type:Gt.COLLECTION,value:e.collection()}]});else if(Na(e))this.addQuery({checks:[{type:Gt.FILTER,value:e}]});else if(tr(e)){if(!this.parse(e))this.invalid=!0}else Qa("A selector must be created from a string; found ")},F4,D4,lc=function(e,t){return function(i,u,a,n){var o=i,s=this,l;if(o==null)l="";else if(Cg(o)&&o.length===1)l=o.id();if(s.length===1&&l){var g=s[0]._private,C=g.traversalCache=g.traversalCache||{},B=C[t]=C[t]||[],E=t3(l),d=B[E];if(d)return d;else return B[E]=e.call(s,i,u,a,n)}else return e.call(s,i,u,a,n)}},Cw,Pk,WKA,Cpt,rY,xC,qKA,zKA=function(e,t,r){for(var i=0;i<e.length;i++){var u=e[i];if(!u.locked()){var a=u._private.position,n={x:t.x!=null?t.x-a.x:0,y:t.y!=null?t.y-a.y:0};if(u.isParent()&&!(n.x===0&&n.y===0))u.children().shift(n,r);u.dirtyBoundingBoxCache()}}},sHA,Bpt,Bw=function(e){switch(e){case"left":case"right-inside":return"left";case"right":case"left-inside":return"right";default:return"center"}},Ew=function(e){switch(e){case"top":case"bottom-inside":return"top";case"bottom":case"top-inside":return"bottom";default:return"center"}},Ept=function(e){switch(e){case"left":return"right";case"right":return"left";case"left-inside":return"left";case"right-inside":return"right";default:return"center"}},lw,R4,sc=function(e){if(e===1/0||e===-1/0)return 0;return e},FC=function(e,t,r,i,u){if(i-t===0||u-r===0)return;if(t==null||r==null||i==null||u==null)return;e.x1=t<e.x1?t:e.x1,e.x2=i>e.x2?i:e.x2,e.y1=r<e.y1?r:e.y1,e.y2=u>e.y2?u:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},Q4=function(e,t){if(t==null)return e;return FC(e,t.x1,t.y1,t.x2,t.y2)},vk=function(e,t,r){return fs(e,t,r)},dT=function(e,t,r){if(t.cy().headless())return;var i=t._private,u=i.rstyle,a=u.arrowWidth/2,n=t.pstyle(r+"-arrow-shape").value,o,s;if(n!=="none"){if(r==="source")o=u.srcX,s=u.srcY;else if(r==="target")o=u.tgtX,s=u.tgtY;else o=u.midX,s=u.midY;var l=i.arrowBounds=i.arrowBounds||{},g=l[r]=l[r]||{};g.x1=o-a,g.y1=s-a,g.x2=o+a,g.y2=s+a,g.w=g.x2-g.x1,g.h=g.y2-g.y1,yT(g,1),FC(e,g.x1,g.y1,g.x2,g.y2)}},aaA=function(e,t,r){if(t.cy().headless())return;var i;if(r)i=r+"-";else i="";var u=t._private,a=u.rstyle,n=t.pstyle(i+"label").strValue;if(n){var o=t.pstyle("text-halign"),s=t.pstyle("text-valign"),l=vk(a,"labelWidth",r),g=vk(a,"labelHeight",r),C=vk(a,"labelX",r),B=vk(a,"labelY",r),E=t.pstyle(i+"text-margin-x").pfValue,d=t.pstyle(i+"text-margin-y").pfValue,I=t.isEdge(),h=t.pstyle(i+"text-rotation"),Q=t.pstyle("text-outline-width").pfValue,p=t.pstyle("text-border-width").pfValue,m=p/2,f=t.pstyle("text-background-padding").pfValue,D=2,w=g,b=l,F=b/2,v=w/2,S,x,k,T;if(I)S=C-F,x=C+F,k=B-v,T=B+v;else{switch(Bw(o.value)){case"left":S=C-b,x=C;break;case"center":S=C-F,x=C+F;break;case"right":S=C,x=C+b;break}switch(Ew(s.value)){case"top":k=B-w,T=B;break;case"center":k=B-v,T=B+v;break;case"bottom":k=B,T=B+w;break}}var R=E-Math.max(Q,m)-f-D,L=E+Math.max(Q,m)+f+D,M=d-Math.max(Q,m)-f-D,U=d+Math.max(Q,m)+f+D;S+=R,x+=L,k+=M,T+=U;var Y=r||"main",H=u.labelBounds,J=H[Y]=H[Y]||{};J.x1=S,J.y1=k,J.x2=x,J.y2=T,J.w=x-S,J.h=T-k,J.leftPad=R,J.rightPad=L,J.topPad=M,J.botPad=U;var K=I&&h.strValue==="autorotate",O=h.pfValue!=null&&h.pfValue!==0;if(K||O){var _=K?vk(u.rstyle,"labelAngle",r):h.pfValue,z=Math.cos(_),j=Math.sin(_),q=(S+x)/2,CA=(k+T)/2;if(!I){switch(Bw(o.value)){case"left":q=x;break;case"right":q=S;break}switch(Ew(s.value)){case"top":CA=T;break;case"bottom":CA=k;break}}var tA=function(qA,BA){return qA=qA-q,BA=BA-CA,{x:qA*z-BA*j+q,y:qA*j+BA*z+CA}},lA=tA(S,k),gA=tA(S,T),aA=tA(x,k),RA=tA(x,T);S=Math.min(lA.x,gA.x,aA.x,RA.x),x=Math.max(lA.x,gA.x,aA.x,RA.x),k=Math.min(lA.y,gA.y,aA.y,RA.y),T=Math.max(lA.y,gA.y,aA.y,RA.y)}var wA=Y+"Rot",JA=H[wA]=H[wA]||{};JA.x1=S,JA.y1=k,JA.x2=x,JA.y2=T,JA.w=x-S,JA.h=T-k,FC(e,S,k,x,T),FC(u.labelBounds.all,S,k,x,T)}return e},lHA=function(e,t){if(t.cy().headless())return;var r=t.pstyle("outline-opacity").value,i=t.pstyle("outline-width").value,u=t.pstyle("outline-offset").value,a=i+u;ZKA(e,t,r,a,"outside",a/2)},ZKA=function(e,t,r,i,u,a){if(r===0||i<=0||u==="inside")return;var n=t.cy(),o=n.renderer(),s=o.nodeShapes[o.getNodeShape(t)];if(!s)return;var l=t.position(),{x:g,y:C}=l,B=t.width(),E=t.height();if(s.hasMiterBounds){if(u==="center")i/=2;var d=s.miterBounds(g,C,B,E,i);Q4(e,d)}else if(a!=null&&a>0)wT(e,[a,a,a,a])},dpt=function(e,t){if(t.cy().headless())return;var r=t.pstyle("border-opacity").value,i=t.pstyle("border-width").pfValue,u=t.pstyle("border-position").value;ZKA(e,t,r,i,u)},Ipt=function(e,t){var r=e._private.cy,i=r.styleEnabled(),u=r.headless(),a=ms(),n=e._private,o=e.isNode(),s=e.isEdge(),l,g,C,B,E,d,I=n.rstyle,h=o&&i?e.pstyle("bounds-expansion").pfValue:[0],Q=function(TA){return TA.pstyle("display").value!=="none"},p=!i||Q(e)&&(!s||Q(e.source())&&Q(e.target()));if(p){var m=0,f=0;if(i&&t.includeOverlays){if(m=e.pstyle("overlay-opacity").value,m!==0)f=e.pstyle("overlay-padding").value}var D=0,w=0;if(i&&t.includeUnderlays){if(D=e.pstyle("underlay-opacity").value,D!==0)w=e.pstyle("underlay-padding").value}var b=Math.max(f,w),F=0,v=0;if(i)F=e.pstyle("width").pfValue,v=F/2;if(o&&t.includeNodes){var S=e.position();E=S.x,d=S.y;var x=e.outerWidth(),k=x/2,T=e.outerHeight(),R=T/2;if(l=E-k,g=E+k,C=d-R,B=d+R,FC(a,l,C,g,B),i)lHA(a,e);if(i&&t.includeOutlines&&!u)lHA(a,e);if(i)dpt(a,e)}else if(s&&t.includeEdges)if(i&&!u){var L=e.pstyle("curve-style").strValue;if(l=Math.min(I.srcX,I.midX,I.tgtX),g=Math.max(I.srcX,I.midX,I.tgtX),C=Math.min(I.srcY,I.midY,I.tgtY),B=Math.max(I.srcY,I.midY,I.tgtY),l-=v,g+=v,C-=v,B+=v,FC(a,l,C,g,B),L==="haystack"){var M=I.haystackPts;if(M&&M.length===2){if(l=M[0].x,C=M[0].y,g=M[1].x,B=M[1].y,l>g){var U=l;l=g,g=U}if(C>B){var Y=C;C=B,B=Y}FC(a,l-v,C-v,g+v,B+v)}}else if(L==="bezier"||L==="unbundled-bezier"||p4(L,"segments")||p4(L,"taxi")){var H;switch(L){case"bezier":case"unbundled-bezier":H=I.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":H=I.linePts;break}if(H!=null)for(var J=0;J<H.length;J++){var K=H[J];l=K.x-v,g=K.x+v,C=K.y-v,B=K.y+v,FC(a,l,C,g,B)}}}else{var O=e.source(),_=O.position(),z=e.target(),j=z.position();if(l=_.x,g=j.x,C=_.y,B=j.y,l>g){var q=l;l=g,g=q}if(C>B){var CA=C;C=B,B=CA}l-=v,g+=v,C-=v,B+=v,FC(a,l,C,g,B)}if(i&&t.includeEdges&&s)dT(a,e,"mid-source"),dT(a,e,"mid-target"),dT(a,e,"source"),dT(a,e,"target");if(i){var tA=e.pstyle("ghost").value==="yes";if(tA){var lA=e.pstyle("ghost-offset-x").pfValue,gA=e.pstyle("ghost-offset-y").pfValue;FC(a,a.x1+lA,a.y1+gA,a.x2+lA,a.y2+gA)}}var aA=n.bodyBounds=n.bodyBounds||{};if(ZTA(aA,a),wT(aA,h),yT(aA,1),i)l=a.x1,g=a.x2,C=a.y1,B=a.y2,FC(a,l-b,C-b,g+b,B+b);var RA=n.overlayBounds=n.overlayBounds||{};ZTA(RA,a),wT(RA,h),yT(RA,1);var wA=n.labelBounds=n.labelBounds||{};if(wA.all!=null)jQt(wA.all);else wA.all=ms();if(i&&t.includeLabels){if(t.includeMainLabels)aaA(a,e,null);if(s){if(t.includeSourceLabels)aaA(a,e,"source");if(t.includeTargetLabels)aaA(a,e,"target")}}}if(a.x1=sc(a.x1),a.y1=sc(a.y1),a.x2=sc(a.x2),a.y2=sc(a.y2),a.w=sc(a.x2-a.x1),a.h=sc(a.y2-a.y1),a.w>0&&a.h>0&&p)wT(a,h),yT(a,1);return a},VKA=function(e){var t=0,r=function(a){return(a?1:0)<<t++},i=0;return i+=r(e.incudeNodes),i+=r(e.includeEdges),i+=r(e.includeLabels),i+=r(e.includeMainLabels),i+=r(e.includeSourceLabels),i+=r(e.includeTargetLabels),i+=r(e.includeOverlays),i+=r(e.includeOutlines),i},jKA=function(e){var t=function(n){return Math.round(n)};if(e.isEdge()){var r=e.source().position(),i=e.target().position();return OTA([t(r.x),t(r.y),t(i.x),t(i.y)])}else{var u=e.position();return OTA([t(u.x),t(u.y)])}},gHA=function(e,t){var r=e._private,i,u=e.isEdge(),a=t==null?cHA:VKA(t),n=a===cHA;if(r.bbCache==null)i=Ipt(e,_k),r.bbCache=i,r.bbCachePosKey=jKA(e);else i=r.bbCache;if(!n){var o=e.isNode();if(i=ms(),t.includeNodes&&o||t.includeEdges&&!o)if(t.includeOverlays)Q4(i,r.overlayBounds);else Q4(i,r.bodyBounds);if(t.includeLabels)if(t.includeMainLabels&&(!u||t.includeSourceLabels&&t.includeTargetLabels))Q4(i,r.labelBounds.all);else{if(t.includeMainLabels)Q4(i,r.labelBounds.mainRot);if(t.includeSourceLabels)Q4(i,r.labelBounds.sourceRot);if(t.includeTargetLabels)Q4(i,r.labelBounds.targetRot)}i.w=i.x2-i.x1,i.h=i.y2-i.y1}return i},_k,cHA,CHA,hpt,Nk,tF,XKA=function(e){e.uppercaseName=kTA(e.name),e.autoName="auto"+e.uppercaseName,e.labelName="label"+e.uppercaseName,e.outerName="outer"+e.uppercaseName,e.uppercaseOuterName=kTA(e.outerName),Nk[e.name]=function(){var r=this[0],i=r._private,u=i.cy,a=u._private.styleEnabled;if(r)if(a){if(r.isParent())return r.updateCompoundBounds(),i[e.autoName]||0;var n=r.pstyle(e.name);switch(n.strValue){case"label":return r.recalculateRenderedStyle(),i.rstyle[e.labelName]||0;default:return n.pfValue}}else return 1},Nk["outer"+e.uppercaseName]=function(){var r=this[0],i=r._private,u=i.cy,a=u._private.styleEnabled;if(r)if(a){var n=r[e.name](),o=r.pstyle("border-position").value,s;if(o==="center")s=r.pstyle("border-width").pfValue;else if(o==="outside")s=2*r.pstyle("border-width").pfValue;else s=0;var l=2*r.padding();return n+s+l}else return 1},Nk["rendered"+e.uppercaseName]=function(){var r=this[0];if(r){var i=r[e.name]();return i*this.cy().zoom()}},Nk["rendered"+e.uppercaseOuterName]=function(){var r=this[0];if(r){var i=r[e.outerName]();return i*this.cy().zoom()}}},Qpt,ppt=function(e,t){if(e.isEdge()&&e.takesUpSpace())return t(e)},fpt=function(e,t){if(e.isEdge()&&e.takesUpSpace()){var r=e.cy();return jT(t(e),r.zoom(),r.pan())}},mpt=function(e,t){if(e.isEdge()&&e.takesUpSpace()){var r=e.cy(),i=r.pan(),u=r.zoom();return t(e).map(function(a){return jT(a,u,i)})}},Dpt=function(e){return e.renderer().getControlPoints(e)},ypt=function(e){return e.renderer().getSegmentPoints(e)},wpt=function(e){return e.renderer().getSourceEndpoint(e)},bpt=function(e){return e.renderer().getTargetEndpoint(e)},vpt=function(e){return e.renderer().getEdgeMidpoint(e)},BHA,kpt=function(e){return"rendered"+e[0].toUpperCase()+e.substr(1)},Fpt,xpt,$KA=function(e,t){this.recycle(e,t)},AJA,Spt=".*",eJA,EHA,Lpt,x4,tJA=function(e,t,r,i,u,a,n){if(Na(i))u=i,i=null;if(n)if(a==null)a=n;else a=Cr({},a,n);var o=Mu(r)?r:r.split(/\s+/);for(var s=0;s<o.length;s++){var l=o[s];if(w4(l))continue;var g=l.match(AJA);if(g){var C=g[1],B=g[2]?g[2]:null,E=t(e,l,C,B,i,u,a);if(E===!1)break}}},dHA=function(e,t){return e.addEventFields(e.context,t),new $KA(t.type,t)},Rpt=function(e,t,r){if(Mht(r)){t(e,r);return}else if(Hi(r)){t(e,dHA(e,r));return}var i=Mu(r)?r:r.split(/\s+/);for(var u=0;u<i.length;u++){var a=i[u];if(w4(a))continue;var n=a.match(AJA);if(n){var o=n[1],s=n[2]?n[2]:null,l=dHA(e,{type:o,namespace:s,target:e.context});t(e,l)}}},Npt,hT=function(e){if(tr(e))return new k4(e);else return e},rJA,iJA,Xi,Gpt,uJA=function(e,t){var r=e.cy(),i=r.hasCompoundNodes();function u(l){var g=l.pstyle("z-compound-depth");if(g.value==="auto")return i?l.zDepth():0;else if(g.value==="bottom")return-1;else if(g.value==="top")return KaA;return 0}var a=u(e)-u(t);if(a!==0)return a;function n(l){var g=l.pstyle("z-index-compare");if(g.value==="auto")return l.isNode()?1:0;return 0}var o=n(e)-n(t);if(o!==0)return o;var s=e.pstyle("z-index").value-t.pstyle("z-index").value;if(s!==0)return s;return e.poolIndex()-t.poolIndex()},KT,Upt=function(){var e="undefined",t=(typeof Symbol>"u"?"undefined":io(Symbol))!=e&&io(Symbol.iterator)!=e;if(t)KT[Symbol.iterator]=function(){var r=this,i={value:void 0,done:!1},u=0,a=this.length;return eKA({next:function(){if(u<a)i.value=r[u++];else i.value=void 0,i.done=!0;return i}},Symbol.iterator,function(){return this})}},Mpt,vT,a0,hw,Tpt,Ypt,Hpt,Kpt,y4,Y0,hHA=function(e){return function(r){var i=this,u=[];for(var a=0;a<i.length;a++){var n=i[a];if(!n.isNode())continue;var o=!1,s=n.connectedEdges();for(var l=0;l<s.length;l++){var g=s[l],C=g.source(),B=g.target();if(e.noIncomingEdges&&B===n&&C!==n||e.noOutgoingEdges&&C===n&&B!==n){o=!0;break}}if(!o)u.push(n)}return this.spawn(u,!0).filter(r)}},QHA=function(e){return function(t){var r=this,i=[];for(var u=0;u<r.length;u++){var a=r[u];if(!a.isNode())continue;var n=a.connectedEdges();for(var o=0;o<n.length;o++){var s=n[o],l=s.source(),g=s.target();if(e.outgoing&&l===a)i.push(s),i.push(g);else if(e.incoming&&g===a)i.push(s),i.push(l)}}return this.spawn(i,!0).filter(t)}},pHA=function(e){return function(t){var r=this,i=[],u={};for(;;){var a=e.outgoing?r.outgoers():r.incomers();if(a.length===0)break;var n=!1;for(var o=0;o<a.length;o++){var s=a[o],l=s.id();if(!u[l])u[l]=!0,i.push(s),n=!0}if(!n)break;r=a}return this.spawn(i,!0).filter(t)}},n0=function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e===void 0){Qa("A collection must have a reference to the core");return}var u=new GI,a=!1;if(!t)t=[];else if(t.length>0&&Hi(t[0])&&!Vk(t[0])){a=!0;var n=[],o=new dw;for(var s=0,l=t.length;s<l;s++){var g=t[s];if(g.data==null)g.data={};var C=g.data;if(C.id==null)C.id=QKA();else if(e.hasElementWithId(C.id)||o.has(C.id))continue;var B=new VT(e,g,!1);n.push(B),o.add(C.id)}t=n}this.length=0;for(var E=0,d=t.length;E<d;E++){var I=t[E][0];if(I==null)continue;var h=I._private.data.id;if(!r||!u.has(h)){if(r)u.set(h,{index:this.length,ele:I});this[this.length]=I,this.length++}}if(this._private={eles:this,cy:e,get map(){if(this.lazyMap==null)this.rebuildMap();return this.lazyMap},set map(Q){this.lazyMap=Q},rebuildMap:function(){var p=this.lazyMap=new GI,m=this.eles;for(var f=0;f<m.length;f++){var D=m[f];p.set(D.id(),{index:f,ele:D})}}},r)this._private.map=u;if(a&&!i)this.restore()},Pu,Jpt,Ppt,Ou=function(e,t,r,i){var u=Opt(e,t,r,i);return function(a,n,o){return a+(n-a)*u(o)}},kT,qpt,zpt,QT=function(e){if(tr(e))return new k4(e);else return e},nJA,baA,FT,Zpt,Vpt,vaA,xT,Go,Uk="t",jpt="f",rF,AnA,NE,nY,enA,Mn,oY,No=function(e){if(!(this instanceof No))return new No(e);if(!TaA(e)){Qa("A style must have a core reference");return}this._private={cy:e,coreStyle:{}},this.length=0,this.resetToDefault()},H0,Xpt,$pt="single",u3,Wk,qk=function(e){var t=this;e=Cr({},e);var r=e.container;if(r&&!GT(r)&>(r[0]))r=r[0];var i=r?r._cyreg:null;if(i=i||{},i&&i.cy)i.cy.destroy(),i={};var u=i.readies=i.readies||[];if(r)r._cyreg=i;i.cy=t;var a=to!==void 0&&r!==void 0&&!e.headless,n=e;n.layout=Cr({name:a?"grid":"null"},n.layout),n.renderer=Cr({name:a?"canvas":"null"},n.renderer);var o=function(E,d,I){if(d!==void 0)return d;else if(I!==void 0)return I;else return E},s=this._private={container:r,ready:!1,options:n,elements:new n0(this),listeners:[],aniEles:new n0(this),data:n.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:0.00000000000000000000000000000000000000000000000001,maxZoom:100000000000000000000000000000000000000000000000000,zoomingEnabled:o(!0,n.zoomingEnabled),userZoomingEnabled:o(!0,n.userZoomingEnabled),panningEnabled:o(!0,n.panningEnabled),userPanningEnabled:o(!0,n.userPanningEnabled),boxSelectionEnabled:o(!0,n.boxSelectionEnabled),autolock:o(!1,n.autolock,n.autolockNodes),autoungrabify:o(!1,n.autoungrabify,n.autoungrabifyNodes),autounselectify:o(!1,n.autounselectify),styleEnabled:n.styleEnabled===void 0?a:n.styleEnabled,zoom:Qt(n.zoom)?n.zoom:1,pan:{x:Hi(n.pan)&&Qt(n.pan.x)?n.pan.x:0,y:Hi(n.pan)&&Qt(n.pan.y)?n.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:o(250,n.multiClickDebounceTime)};this.createEmitter(),this.selectionType(n.selectionType),this.zoomRange({min:n.minZoom,max:n.maxZoom});var l=function(E,d){var I=E.some(Hht);if(I)return Iw.all(E).then(d);else d(E)};if(s.styleEnabled)t.setStyle([]);var g=Cr({},n,n.renderer);t.initRenderer(g);var C=function(E,d,I){t.notifications(!1);var h=t.mutableElements();if(h.length>0)h.remove();if(E!=null){if(Hi(E)||Mu(E))t.add(E)}t.one("layoutready",function(p){t.notifications(!0),t.emit(p),t.one("load",d),t.emitAndNotify("load")}).one("layoutstop",function(){t.one("done",I),t.emit("done")});var Q=Cr({},t._private.options.layout);Q.eles=t.elements(),t.layout(Q).run()};l([n.style,n.elements],function(B){var E=B[0],d=B[1];if(s.styleEnabled)t.style().append(E);C(d,function(){if(t.startAnimationLoop(),s.ready=!0,Na(n.ready))t.on("ready",n.ready);for(var I=0;I<u.length;I++){var h=u[I];t.on("ready",h)}if(i)i.readies=[];t.emit("ready")},n.done)})},JT,Aft,eft,$y=function(e){return e.scratch("breadthfirst")},vHA=function(e,t){return e.scratch("breadthfirst",t)},tft,rft,oaA,ift,uft=function(e,t,r){var i=r.eles.edges(),u=r.eles.nodes(),a=ms(r.boundingBox?r.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),n={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:u.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:i.size(),temperature:r.initialTemp,clientWidth:a.w,clientHeight:a.h,boundingBox:a},o=r.eles.components(),s={};for(var l=0;l<o.length;l++){var g=o[l];for(var C=0;C<g.length;C++){var B=g[C];s[B.id()]=l}}for(var l=0;l<n.nodeSize;l++){var E=u[l],d=E.layoutDimensions(r),I={};I.isLocked=E.locked(),I.id=E.data("id"),I.parentId=E.data("parent"),I.cmptId=s[E.id()],I.children=[],I.positionX=E.position("x"),I.positionY=E.position("y"),I.offsetX=0,I.offsetY=0,I.height=d.w,I.width=d.h,I.maxX=I.positionX+I.width/2,I.minX=I.positionX-I.width/2,I.maxY=I.positionY+I.height/2,I.minY=I.positionY-I.height/2,I.padLeft=parseFloat(E.style("padding")),I.padRight=parseFloat(E.style("padding")),I.padTop=parseFloat(E.style("padding")),I.padBottom=parseFloat(E.style("padding")),I.nodeRepulsion=Na(r.nodeRepulsion)?r.nodeRepulsion(E):r.nodeRepulsion,n.layoutNodes.push(I),n.idToIndex[I.id]=l}var h=[],Q=0,p=-1,m=[];for(var l=0;l<n.nodeSize;l++){var E=n.layoutNodes[l],f=E.parentId;if(f!=null)n.layoutNodes[n.idToIndex[f]].children.push(E.id);else h[++p]=E.id,m.push(E.id)}n.graphSet.push(m);while(Q<=p){var D=h[Q++],w=n.idToIndex[D],B=n.layoutNodes[w],b=B.children;if(b.length>0){n.graphSet.push(b);for(var l=0;l<b.length;l++)h[++p]=b[l]}}for(var l=0;l<n.graphSet.length;l++){var F=n.graphSet[l];for(var C=0;C<F.length;C++){var v=n.idToIndex[F[C]];n.indexToGraph[v]=l}}for(var l=0;l<n.edgeSize;l++){var S=i[l],x={};x.id=S.data("id"),x.sourceId=S.data("source"),x.targetId=S.data("target");var k=Na(r.idealEdgeLength)?r.idealEdgeLength(S):r.idealEdgeLength,T=Na(r.edgeElasticity)?r.edgeElasticity(S):r.edgeElasticity,R=n.idToIndex[x.sourceId],L=n.idToIndex[x.targetId],M=n.indexToGraph[R],U=n.indexToGraph[L];if(M!=U){var Y=aft(x.sourceId,x.targetId,n),H=n.graphSet[Y],J=0,I=n.layoutNodes[R];while(H.indexOf(I.id)===-1)I=n.layoutNodes[n.idToIndex[I.parentId]],J++;I=n.layoutNodes[L];while(H.indexOf(I.id)===-1)I=n.layoutNodes[n.idToIndex[I.parentId]],J++;k*=J*r.nestingFactor}x.idealLength=k,x.elasticity=T,n.layoutEdges.push(x)}return n},aft=function(e,t,r){var i=gJA(e,t,0,r);if(2>i.count)return 0;else return i.graph},gJA=function(e,t,r,i){var u=i.graphSet[r];if(-1<u.indexOf(e)&&-1<u.indexOf(t))return{count:2,graph:r};var a=0;for(var n=0;n<u.length;n++){var o=u[n],s=i.idToIndex[o],l=i.layoutNodes[s].children;if(l.length===0)continue;var g=i.indexToGraph[i.idToIndex[l[0]]],C=gJA(e,t,g,i);if(C.count===0)continue;else if(C.count===1){if(a++,a===2)break}else return C}return{count:a,graph:r}},nft,oft=function(e,t){var{clientWidth:r,clientHeight:i}=e;for(var u=0;u<e.nodeSize;u++){var a=e.layoutNodes[u];if(a.children.length===0&&!a.isLocked)a.positionX=Math.random()*r,a.positionY=Math.random()*i}},cJA=function(e,t,r){var i=e.boundingBox,u={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0};if(t.boundingBox)r.forEach(function(a){var n=e.layoutNodes[e.idToIndex[a.data("id")]];u.x1=Math.min(u.x1,n.positionX),u.x2=Math.max(u.x2,n.positionX),u.y1=Math.min(u.y1,n.positionY),u.y2=Math.max(u.y2,n.positionY)}),u.w=u.x2-u.x1,u.h=u.y2-u.y1;return function(a,n){var o=e.layoutNodes[e.idToIndex[a.data("id")]];if(t.boundingBox){var s=u.w===0?0.5:(o.positionX-u.x1)/u.w,l=u.h===0?0.5:(o.positionY-u.y1)/u.h;return{x:i.x1+s*i.w,y:i.y1+l*i.h}}else return{x:o.positionX,y:o.positionY}}},sft=function(e,t,r){var i=r.layout,u=r.eles.nodes(),a=cJA(e,r,u);if(u.positions(a),e.ready!==!0)e.ready=!0,i.one("layoutready",r.ready),i.emit({type:"layoutready",layout:this})},lft=function(e,t,r){gft(e,t),Bft(e),Eft(e,t),dft(e),Ift(e)},gft=function(e,t){for(var r=0;r<e.graphSet.length;r++){var i=e.graphSet[r],u=i.length;for(var a=0;a<u;a++){var n=e.layoutNodes[e.idToIndex[i[a]]];for(var o=a+1;o<u;o++){var s=e.layoutNodes[e.idToIndex[i[o]]];cft(n,s,e,t)}}}},kHA=function(e){return-e+2*e*Math.random()},cft=function(e,t,r,i){var u=e.cmptId,a=t.cmptId;if(u!==a&&!r.isCompound)return;var n=t.positionX-e.positionX,o=t.positionY-e.positionY,s=1;if(n===0&&o===0)n=kHA(s),o=kHA(s);var l=Cft(e,t,n,o);if(l>0)var g=i.nodeOverlap*l,C=Math.sqrt(n*n+o*o),B=g*n/C,E=g*o/C;else var d=OT(e,n,o),I=OT(t,-1*n,-1*o),h=I.x-d.x,Q=I.y-d.y,p=h*h+Q*Q,C=Math.sqrt(p),g=(e.nodeRepulsion+t.nodeRepulsion)/p,B=g*h/C,E=g*Q/C;if(!e.isLocked)e.offsetX-=B,e.offsetY-=E;if(!t.isLocked)t.offsetX+=B,t.offsetY+=E;return},Cft=function(e,t,r,i){if(r>0)var u=e.maxX-t.minX;else var u=t.maxX-e.minX;if(i>0)var a=e.maxY-t.minY;else var a=t.maxY-e.minY;if(u>=0&&a>=0)return Math.sqrt(u*u+a*a);else return 0},OT=function(e,t,r){var{positionX:i,positionY:u}=e,a=e.height||1,n=e.width||1,o=r/t,s=a/n,l={};if(t===0&&0<r)return l.x=i,l.y=u+a/2,l;if(t===0&&0>r)return l.x=i,l.y=u+a/2,l;if(0<t&&-1*s<=o&&o<=s)return l.x=i+n/2,l.y=u+n*r/2/t,l;if(0>t&&-1*s<=o&&o<=s)return l.x=i-n/2,l.y=u-n*r/2/t,l;if(0<r&&(o<=-1*s||o>=s))return l.x=i+a*t/2/r,l.y=u+a/2,l;if(0>r&&(o<=-1*s||o>=s))return l.x=i-a*t/2/r,l.y=u-a/2,l;return l},Bft=function(e,t){for(var r=0;r<e.edgeSize;r++){var i=e.layoutEdges[r],u=e.idToIndex[i.sourceId],a=e.layoutNodes[u],n=e.idToIndex[i.targetId],o=e.layoutNodes[n],s=o.positionX-a.positionX,l=o.positionY-a.positionY;if(s===0&&l===0)continue;var g=OT(a,s,l),C=OT(o,-1*s,-1*l),B=C.x-g.x,E=C.y-g.y,d=Math.sqrt(B*B+E*E),I=Math.pow(i.idealLength-d,2)/i.elasticity;if(d!==0)var h=I*B/d,Q=I*E/d;else var h=0,Q=0;if(!a.isLocked)a.offsetX+=h,a.offsetY+=Q;if(!o.isLocked)o.offsetX-=h,o.offsetY-=Q}},Eft=function(e,t){if(t.gravity===0)return;var r=1;for(var i=0;i<e.graphSet.length;i++){var u=e.graphSet[i],a=u.length;if(i===0)var n=e.clientHeight/2,o=e.clientWidth/2;else var s=e.layoutNodes[e.idToIndex[u[0]]],l=e.layoutNodes[e.idToIndex[s.parentId]],{positionX:n,positionY:o}=l;for(var g=0;g<a;g++){var C=e.layoutNodes[e.idToIndex[u[g]]];if(C.isLocked)continue;var B=n-C.positionX,E=o-C.positionY,d=Math.sqrt(B*B+E*E);if(d>r){var I=t.gravity*B/d,h=t.gravity*E/d;C.offsetX+=I,C.offsetY+=h}}}},dft=function(e,t){var r=[],i=0,u=-1;r.push.apply(r,e.graphSet[0]),u+=e.graphSet[0].length;while(i<=u){var a=r[i++],n=e.idToIndex[a],o=e.layoutNodes[n],s=o.children;if(0<s.length&&!o.isLocked){var{offsetX:l,offsetY:g}=o;for(var C=0;C<s.length;C++){var B=e.layoutNodes[e.idToIndex[s[C]]];B.offsetX+=l,B.offsetY+=g,r[++u]=s[C]}o.offsetX=0,o.offsetY=0}}},Ift=function(e,t){for(var r=0;r<e.nodeSize;r++){var i=e.layoutNodes[r];if(0<i.children.length)i.maxX=void 0,i.minX=void 0,i.maxY=void 0,i.minY=void 0}for(var r=0;r<e.nodeSize;r++){var i=e.layoutNodes[r];if(0<i.children.length||i.isLocked)continue;var u=hft(i.offsetX,i.offsetY,e.temperature);i.positionX+=u.x,i.positionY+=u.y,i.offsetX=0,i.offsetY=0,i.minX=i.positionX-i.width,i.maxX=i.positionX+i.width,i.minY=i.positionY-i.height,i.maxY=i.positionY+i.height,CJA(i,e)}for(var r=0;r<e.nodeSize;r++){var i=e.layoutNodes[r];if(0<i.children.length&&!i.isLocked)i.positionX=(i.maxX+i.minX)/2,i.positionY=(i.maxY+i.minY)/2,i.width=i.maxX-i.minX,i.height=i.maxY-i.minY}},hft=function(e,t,r){var i=Math.sqrt(e*e+t*t);if(i>r)var u={x:r*e/i,y:r*t/i};else var u={x:e,y:t};return u},CJA=function(e,t){var r=e.parentId;if(r==null)return;var i=t.layoutNodes[t.idToIndex[r]],u=!1;if(i.maxX==null||e.maxX+i.padRight>i.maxX)i.maxX=e.maxX+i.padRight,u=!0;if(i.minX==null||e.minX-i.padLeft<i.minX)i.minX=e.minX-i.padLeft,u=!0;if(i.maxY==null||e.maxY+i.padBottom>i.maxY)i.maxY=e.maxY+i.padBottom,u=!0;if(i.minY==null||e.minY-i.padTop<i.minY)i.minY=e.minY-i.padTop,u=!0;if(u)return CJA(i,t);return},FHA=function(e,t){var r=e.layoutNodes,i=[];for(var u=0;u<r.length;u++){var a=r[u],n=a.cmptId,o=i[n]=i[n]||[];o.push(a)}var s=0;for(var u=0;u<i.length;u++){var l=i[u];if(!l)continue;l.x1=1/0,l.x2=-1/0,l.y1=1/0,l.y2=-1/0;for(var g=0;g<l.length;g++){var C=l[g];l.x1=Math.min(l.x1,C.positionX-C.width/2),l.x2=Math.max(l.x2,C.positionX+C.width/2),l.y1=Math.min(l.y1,C.positionY-C.height/2),l.y2=Math.max(l.y2,C.positionY+C.height/2)}l.w=l.x2-l.x1,l.h=l.y2-l.y1,s+=l.w*l.h}i.sort(function(Q,p){return p.w*p.h-Q.w*Q.h});var B=0,E=0,d=0,I=0,h=Math.sqrt(s)*e.clientWidth/e.clientHeight;for(var u=0;u<i.length;u++){var l=i[u];if(!l)continue;for(var g=0;g<l.length;g++){var C=l[g];if(!C.isLocked)C.positionX+=B-l.x1,C.positionY+=E-l.y1}if(B+=l.w+t.componentSpacing,d+=l.w+t.componentSpacing,I=Math.max(I,l.h),d>h)E+=I+t.componentSpacing,B=0,d=0,I=0}},Qft,pft,fft,mft,Dft,xHA=function(){},SHA=function(){throw Error("A headless instance can not render images")},rnA,n3,PT,kaA,FaA,SE,oc,LHA,RHA,A3,ST,NI,Zf,Xf,FE,Aw,pT,hJA,QJA,xaA,SaA,NHA,GHA=function(e,t,r){r.x=t.x-e.x,r.y=t.y-e.y,r.len=Math.sqrt(r.x*r.x+r.y*r.y),r.nx=r.x/r.len,r.ny=r.y/r.len,r.ang=Math.atan2(r.ny,r.nx)},yft=function(e,t){t.x=e.x*-1,t.y=e.y*-1,t.nx=e.nx*-1,t.ny=e.ny*-1,t.ang=e.ang>0?-(Math.PI-e.ang):Math.PI+e.ang},wft=function(e,t,r,i,u){if(e!==NHA?GHA(t,e,SE):yft(oc,SE),GHA(t,r,oc),LHA=SE.nx*oc.ny-SE.ny*oc.nx,RHA=SE.nx*oc.nx-SE.ny*-oc.ny,NI=Math.asin(Math.max(-1,Math.min(1,LHA))),Math.abs(NI)<0.000001){kaA=t.x,FaA=t.y,Xf=Aw=0;return}if(A3=1,ST=!1,RHA<0)if(NI<0)NI=Math.PI+NI;else NI=Math.PI-NI,A3=-1,ST=!0;else if(NI>0)A3=-1,ST=!0;if(t.radius!==void 0)Aw=t.radius;else Aw=i;if(Zf=NI/2,pT=Math.min(SE.len/2,oc.len/2),u)if(FE=Math.abs(Math.cos(Zf)*Aw/Math.sin(Zf)),FE>pT)FE=pT,Xf=Math.abs(FE*Math.sin(Zf)/Math.cos(Zf));else Xf=Aw;else FE=Math.min(pT,Aw),Xf=Math.abs(FE*Math.sin(Zf)/Math.cos(Zf));xaA=t.x+oc.nx*FE,SaA=t.y+oc.ny*FE,kaA=xaA-oc.ny*Xf*A3,FaA=SaA+oc.nx*Xf*A3,hJA=t.x+SE.nx*FE,QJA=t.y+SE.ny*FE,NHA=t},zk=0.01,bft,K0,iF,unA,GE,mJA=function(e,t){var r=Math.atan(t/e);if(e===0&&r<0)r=r*-1;return r},DJA=function(e,t){var r=t.x-e.x,i=t.y-e.y;return mJA(r,i)},kft=function(e,t,r,i){var u=Jk(0,i-0.001,1),a=Jk(0,i+0.001,1),n=nw(e,t,r,u),o=nw(e,t,r,a);return DJA(n,o)},yJA,UHA=28,MHA=!1,lY,gY,wJA,bJA,vJA=function(e,t){var r=e[0];if(!r||r._private.grabbed===t)return;r._private.grabbed=t,e.updateStyle(!1)},Fft=function(e){vJA(e,!0)},xft=function(e){vJA(e,!1)},pw,TI,uF,THA=function(e,t,r){var i=e.beforeRenderCallbacks;for(var u=0;u<i.length;u++)i[u].fn(t,r)},Sft=function(e){this.init(e)},kJA,fw,saA=16.666666666666668,FJA,Lft,YHA=25,fT=50,LT=-4,LaA=3,xJA=7.99,Rft=8,Nft=1024,Gft=1024,Uft=1024,Mft=0.2,Tft=0.8,Yft=10,Hft=0.15,Kft=0.1,Jft=0.9,Oft=0.9,Pft=100,_ft=1,aw,Wft,Gk=function(e,t){var r=this;r.renderer=e,r.onDequeues=[];var i=Wft(t);Cr(r,i),r.lookup=new Lft(i.getKey,i.doesEleInvalidateKey),r.setupDequeueing()},uo,qft=1,Mk=-4,_T=2,zft=3.99,Zft=50,Vft=50,jft=0.15,Xft=0.1,$ft=0.9,A3t=0.9,e3t=1,HHA=250,t3t=16000000,KHA=32767,r3t=!0,SJA=function(e){var t=this,r=t.renderer=e,i=r.cy;t.layersByLevel={},t.firstGet=!0,t.lastInvalidationTime=UI()-2*HHA,t.skipping=!1,t.eleTxrDeqs=i.collection(),t.scheduleElementRefinement=AF(function(){t.refineElementTextures(t.eleTxrDeqs),t.eleTxrDeqs.unmerge(t.eleTxrDeqs)},Vft),r.beforeRender(function(a,n){if(n-t.lastInvalidationTime<=HHA)t.skipping=!0;else t.skipping=!1},r.beforeRenderPriorities.lyrTxrSkip);var u=function(n,o){return o.reqs-n.reqs};t.layersQueue=new eF(u),t.setupDequeueing()},s0,JHA=0,i3t,LJA,OHA,UE,s3t=function(){return 0},l3t=function(e,t){return e.getTextAngle(t,null)},g3t=function(e,t){return e.getTextAngle(t,"source")},c3t=function(e,t){return e.getTextAngle(t,"target")},C3t=function(e,t){return t.effectiveOpacity()},laA=function(e,t){return t.pstyle("text-opacity").pfValue*t.effectiveOpacity()},YI,RJA=function(e){if(!["overlay","underlay"].includes(e))throw Error("Invalid state");return function(t,r){if(!r.visible())return;var i=r.pstyle("".concat(e,"-opacity")).value;if(i===0)return;var u=this,a=u.usePaths(),n=r._private.rscratch,o=r.pstyle("".concat(e,"-padding")).pfValue,s=2*o,l=r.pstyle("".concat(e,"-color")).value;if(t.lineWidth=s,n.edgeType==="self"&&!a)t.lineCap="butt";else t.lineCap="round";u.colorStrokeStyle(t,l[0],l[1],l[2],i),u.drawEdgePath(r,t,n.allpts,"solid")}},anA,o3,N4,NJA=function(e){if(!["overlay","underlay"].includes(e))throw Error("Invalid state");return function(t,r,i,u,a){var n=this;if(!r.visible())return;var o=r.pstyle("".concat(e,"-padding")).pfValue,s=r.pstyle("".concat(e,"-opacity")).value,l=r.pstyle("".concat(e,"-color")).value,g=r.pstyle("".concat(e,"-shape")).value,C=r.pstyle("".concat(e,"-corner-radius")).value;if(s>0){if(i=i||r.position(),u==null||a==null){var B=r.padding();u=r.width()+2*B,a=r.height()+2*B}n.colorFillStyle(t,l[0],l[1],l[2],s),n.nodeShapes[g].draw(t,i.x,i.y,u+o*2,a+o*2,C),t.fill()}}},Ds,E3t=100,xk,qHA,x3t,S3t,R3t,N3t,G3t=`
|
||
float circleSD(vec2 p, float r) {
|
||
return distance(vec2(0), p) - r; // signed distance
|
||
}
|
||
`,U3t=`
|
||
float rectangleSD(vec2 p, vec2 b) {
|
||
vec2 d = abs(p)-b;
|
||
return distance(vec2(0),max(d,0.0)) + min(max(d.x,d.y),0.0);
|
||
}
|
||
`,M3t=`
|
||
float roundRectangleSD(vec2 p, vec2 b, vec4 cr) {
|
||
cr.xy = (p.x > 0.0) ? cr.xy : cr.zw;
|
||
cr.x = (p.y > 0.0) ? cr.x : cr.y;
|
||
vec2 q = abs(p) - b + cr.x;
|
||
return min(max(q.x, q.y), 0.0) + distance(vec2(0), max(q, 0.0)) - cr.x;
|
||
}
|
||
`,T3t=`
|
||
float ellipseSD(vec2 p, vec2 ab) {
|
||
p = abs( p ); // symmetry
|
||
|
||
// find root with Newton solver
|
||
vec2 q = ab*(p-ab);
|
||
float w = (q.x<q.y)? 1.570796327 : 0.0;
|
||
for( int i=0; i<5; i++ ) {
|
||
vec2 cs = vec2(cos(w),sin(w));
|
||
vec2 u = ab*vec2( cs.x,cs.y);
|
||
vec2 v = ab*vec2(-cs.y,cs.x);
|
||
w = w + dot(p-u,v)/(dot(p-u,u)+dot(v,v));
|
||
}
|
||
|
||
// compute final point and distance
|
||
float d = length(p-ab*vec2(cos(w),sin(w)));
|
||
|
||
// return signed distance
|
||
return (dot(p/ab,p/ab)>1.0) ? d : -d;
|
||
}
|
||
`,Tk,WT,caA=0,VHA=1,jHA=2,CaA=3,tw=4,mT=5,Sk=6,Lk=7,Y3t,MJA,BaA=function(e,t){return function(r){var i=e(r),u=TJA(r,t);if(u.length>1)return u.map(function(a,n){return"".concat(i,"_").concat(n)});return i}},EaA=function(e,t){return function(r,i){var u=e(r);if(typeof i==="string"){var a=i.indexOf("_");if(a>0){var n=Number(i.substring(a+1)),o=TJA(r,t),s=u.h/o.length,l=s*n,g=u.y1+l;return{x1:u.x1,w:u.w,y1:g,h:s,yOffset:l}}}return u}},G4,XHA,$HA,NaA,GaA,KJA,h4,aF,OJA,j3t,oi,X3t,$3t,Amt,_JA,WJA,UaA=function(){if(arguments.length===2)return zJA.apply(null,arguments);else if(arguments.length===3)return qJA.apply(null,arguments);else if(arguments.length===4)return tmt.apply(null,arguments);else if(arguments.length===5)return emt.apply(null,arguments);else Qa("Invalid extension access syntax")},qT=function(){if(!(this instanceof qT))return new qT;this.length=0},a3,rmt="3.34.2",gc=function(e){if(e===void 0)e={};if(Hi(e))return new qk(e);else if(tr(e))return UaA.apply(UaA,arguments)};var onA=P(()=>{to=typeof window>"u"?null:window,vTA=to?to.navigator:null;to&&to.document;Rht=io(""),rKA=io({}),Nht=io(function(){}),Ght=typeof HTMLElement>"u"?"undefined":io(HTMLElement),YaA=gw(function(A){return A.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()})}),zT=gw(function(A){return A.replace(/(-\w)/g,function(e){return e[1].toUpperCase()})}),nKA=gw(function(A,e){return A+e[0].toUpperCase()+e.substring(1)},function(A,e){return A+"$"+e}),Jht="rgb[a]?\\(("+ro+"[%]?)\\s*,\\s*("+ro+"[%]?)\\s*,\\s*("+ro+"[%]?)(?:\\s*,\\s*("+ro+"))?\\)",Oht="rgb[a]?\\((?:"+ro+"[%]?)\\s*,\\s*(?:"+ro+"[%]?)\\s*,\\s*(?:"+ro+"[%]?)(?:\\s*,\\s*(?:"+ro+"))?\\)",Pht="hsl[a]?\\(("+ro+")\\s*,\\s*("+ro+"[%])\\s*,\\s*("+ro+"[%])(?:\\s*,\\s*("+ro+"))?\\)",_ht="hsl[a]?\\((?:"+ro+")\\s*,\\s*(?:"+ro+"[%])\\s*,\\s*(?:"+ro+"[%])(?:\\s*,\\s*(?:"+ro+"))?\\)",Cr=Object.assign!=null?Object.assign.bind(Object):function(A){var e=arguments;for(var t=1;t<e.length;t++){var r=e[t];if(r==null)continue;var i=Object.keys(r);for(var u=0;u<i.length;u++){var a=i[u];A[a]=r[a]}}return A},$ht={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},lT=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};sQt=oQt(),AF=jk(sQt),euA=to?to.performance:null,CKA=euA&&euA.now?function(){return euA.now()}:function(){return Date.now()},lQt=function(){if(to){if(to.requestAnimationFrame)return function(A){to.requestAnimationFrame(A)};else if(to.mozRequestAnimationFrame)return function(A){to.mozRequestAnimationFrame(A)};else if(to.webkitRequestAnimationFrame)return function(A){to.webkitRequestAnimationFrame(A)};else if(to.msRequestAnimationFrame)return function(A){to.msRequestAnimationFrame(A)}}return function(A){if(A)setTimeout(function(){A(CKA())},16.666666666666668)}}(),UI=CKA;dQt=console.warn!=null,IQt=console.trace!=null,KaA=Number.MAX_SAFE_INTEGER||9007199254740991,pQt={},mQt=function(){function A(){S4(this,A),this._obj={}}return L4(A,[{key:"set",value:function(t,r){return this._obj[t]=r,this}},{key:"delete",value:function(t){return this._obj[t]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(t){return this._obj[t]!==void 0}},{key:"get",value:function(t){return this._obj[t]}}])}(),GI=typeof Map<"u"?Map:mQt,yQt=function(){function A(e){if(S4(this,A),this._obj=Object.create(null),this.size=0,e!=null){var t;if(e.instanceString!=null&&e.instanceString()===this.instanceString())t=e.toArray();else t=e;for(var r=0;r<t.length;r++)this.add(t[r])}}return L4(A,[{key:"instanceString",value:function(){return"set"}},{key:"add",value:function(t){var r=this._obj;if(r[t]!==1)r[t]=1,this.size++}},{key:"delete",value:function(t){var r=this._obj;if(r[t]===1)r[t]=0,this.size--}},{key:"clear",value:function(){this._obj=Object.create(null)}},{key:"has",value:function(t){return this._obj[t]===1}},{key:"toArray",value:function(){var t=this;return Object.keys(this._obj).filter(function(r){return t.has(r)})}},{key:"forEach",value:function(t,r){return this.toArray().forEach(t,r)}}])}(),dw=(typeof Set>"u"?"undefined":io(Set))!==DQt?Set:yQt,Kk={breadthFirstSearch:WTA({bfs:!0}),depthFirstSearch:WTA({dfs:!0})};Kk.bfs=Kk.breadthFirstSearch;Kk.dfs=Kk.depthFirstSearch;DT={exports:{}},wQt=DT.exports;kQt=vQt(),eF=jk(kQt),FQt=o0({root:null,weight:function(e){return 1},directed:!1}),xQt={dijkstra:function(e){if(!Hi(e)){var t=arguments;e={root:t[0],weight:t[1],directed:t[2]}}var r=FQt(e),{root:i,weight:u,directed:a}=r,n=this,o=u,s=tr(i)?this.filter(i)[0]:i[0],l={},g={},C={},B=this.byGroup(),{nodes:E,edges:d}=B;d.unmergeBy(function(R){return R.isLoop()});var I=function(L){return l[L.id()]},h=function(L,M){l[L.id()]=M,Q.updateItem(L)},Q=new eF(function(R,L){return I(R)-I(L)});for(var p=0;p<E.length;p++){var m=E[p];l[m.id()]=m.same(s)?0:1/0,Q.push(m)}var f=function(L,M){var U=(a?L.edgesTo(M):L.edgesWith(M)).intersect(d),Y=1/0,H;for(var J=0;J<U.length;J++){var K=U[J],O=o(K);if(O<Y||!H)Y=O,H=K}return{edge:H,dist:Y}};while(Q.size()>0){var D=Q.pop(),w=I(D),b=D.id();if(C[b]=w,w===1/0)continue;var F=D.neighborhood().intersect(E);for(var v=0;v<F.length;v++){var S=F[v],x=S.id(),k=f(D,S),T=w+k.dist;if(T<I(S))h(S,T),g[x]={node:D,edge:k.edge}}}return{distanceTo:function(L){var M=tr(L)?E.filter(L)[0]:L[0];return C[M.id()]},pathTo:function(L){var M=tr(L)?E.filter(L)[0]:L[0],U=[],Y=M,H=Y.id();if(M.length>0){U.unshift(M);while(g[H]){var J=g[H];U.unshift(J.edge),U.unshift(J.node),Y=J.node,H=Y.id()}}return n.spawn(U)}}}},SQt={kruskal:function(e){e=e||function(p){return 1};var t=this.byGroup(),{nodes:r,edges:i}=t,u=r.length,a=Array(u),n=r,o=function(m){for(var f=0;f<a.length;f++){var D=a[f];if(D.has(m))return f}};for(var s=0;s<u;s++)a[s]=this.spawn(r[s]);var l=i.sort(function(p,m){return e(p)-e(m)});for(var g=0;g<l.length;g++){var C=l[g],B=C.source()[0],E=C.target()[0],d=o(B),I=o(E),h=a[d],Q=a[I];if(d!==I)n.merge(C),h.merge(Q),a.splice(I,1)}return n}},LQt=o0({root:null,goal:null,weight:function(e){return 1},heuristic:function(e){return 0},directed:!1}),RQt={aStar:function(e){var t=this.cy(),r=LQt(e),{root:i,goal:u,heuristic:a,directed:n,weight:o}=r;i=t.collection(i)[0],u=t.collection(u)[0];var s=i.id(),l=u.id(),g={},C={},B={},E=new eF(function(H,J){return C[H.id()]-C[J.id()]}),d=new dw,I={},h={},Q=function(J,K){E.push(J),d.add(K)},p,m,f=function(){p=E.pop(),m=p.id(),d.delete(m)},D=function(J){return d.has(J)};Q(i,s),g[s]=0,C[s]=a(i);var w=0;while(E.size()>0){if(f(),w++,m===l){var b=[],F=u,v=l,S=h[v];for(;;){if(b.unshift(F),S!=null)b.unshift(S);if(F=I[v],F==null)break;v=F.id(),S=h[v]}return{found:!0,distance:g[m],path:this.spawn(b),steps:w}}B[m]=!0;var x=p._private.edges;for(var k=0;k<x.length;k++){var T=x[k];if(!this.hasElementWithId(T.id()))continue;if(n&&T.data("source")!==m)continue;var R=T.source(),L=T.target(),M=R.id()!==m?R:L,U=M.id();if(!this.hasElementWithId(U))continue;if(B[U])continue;var Y=g[m]+o(T);if(!D(U)){g[U]=Y,C[U]=Y+a(M),Q(M,U),I[U]=p,h[U]=T;continue}if(Y<g[U])g[U]=Y,C[U]=Y+a(M),E.updateItem(M),I[U]=p,h[U]=T}}return{found:!1,distance:void 0,path:void 0,steps:w}}},NQt=o0({weight:function(e){return 1},directed:!1}),GQt={floydWarshall:function(e){var t=this.cy(),r=NQt(e),{weight:i,directed:u}=r,a=i,n=this.byGroup(),{nodes:o,edges:s}=n,l=o.length,g=l*l,C=function(O){return o.indexOf(O)},B=function(O){return o[O]},E=Array(g);for(var d=0;d<g;d++){var I=d%l,h=(d-I)/l;if(h===I)E[d]=0;else E[d]=1/0}var Q=Array(g),p=Array(g);for(var m=0;m<s.length;m++){var f=s[m],D=f.source()[0],w=f.target()[0];if(D===w)continue;var b=C(D),F=C(w),v=b*l+F,S=a(f);if(E[v]>S)E[v]=S,Q[v]=F,p[v]=f;if(!u){var x=F*l+b;if(!u&&E[x]>S)E[x]=S,Q[x]=b,p[x]=f}}for(var k=0;k<l;k++)for(var T=0;T<l;T++){var R=T*l+k;for(var L=0;L<l;L++){var M=T*l+L,U=k*l+L;if(E[R]+E[U]<E[M])E[M]=E[R]+E[U],Q[M]=Q[R]}}var Y=function(O){return(tr(O)?t.filter(O):O)[0]},H=function(O){return C(Y(O))},J={distance:function(O,_){var z=H(O),j=H(_);return E[z*l+j]},path:function(O,_){var z=H(O),j=H(_),q=B(z);if(z===j)return q.collection();if(Q[z*l+j]==null)return t.collection();var CA=t.collection(),tA=z,lA;CA.merge(q);while(z!==j)tA=z,z=Q[z*l+j],lA=p[tA*l+z],CA.merge(lA),CA.merge(B(z));return CA}};return J}},UQt=o0({weight:function(e){return 1},directed:!1,root:null}),MQt={bellmanFord:function(e){var t=this,r=UQt(e),{weight:i,directed:u,root:a}=r,n=i,o=this,s=this.cy(),l=this.byGroup(),{edges:g,nodes:C}=l,B=C.length,E=new GI,d=!1,I=[];a=s.collection(a)[0],g.unmergeBy(function(qA){return qA.isLoop()});var h=g.length,Q=function(BA){var bA=E.get(BA.id());if(!bA)bA={},E.set(BA.id(),bA);return bA},p=function(BA){return(tr(BA)?s.$(BA):BA)[0]},m=function(BA){return Q(p(BA)).dist},f=function(BA){var bA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:a,FA=p(BA),IA=[],nA=FA;for(;;){if(nA==null)return t.spawn();var eA=Q(nA),{edge:EA,pred:mA}=eA;if(IA.unshift(nA[0]),nA.same(bA)&&IA.length>0)break;if(EA!=null)IA.unshift(EA);nA=mA}return o.spawn(IA)};for(var D=0;D<B;D++){var w=C[D],b=Q(w);if(w.same(a))b.dist=0;else b.dist=1/0;b.pred=null,b.edge=null}var F=!1,v=function(BA,bA,FA,IA,nA,eA){var EA=IA.dist+eA;if(EA<nA.dist&&!FA.same(IA.edge))nA.dist=EA,nA.pred=BA,nA.edge=FA,F=!0};for(var S=1;S<B;S++){F=!1;for(var x=0;x<h;x++){var k=g[x],T=k.source(),R=k.target(),L=n(k),M=Q(T),U=Q(R);if(v(T,R,k,M,U,L),!u)v(R,T,k,U,M,L)}if(!F)break}if(F){var Y=[];for(var H=0;H<h;H++){var J=g[H],K=J.source(),O=J.target(),_=n(J),z=Q(K).dist,j=Q(O).dist;if(z+_<j||!u&&j+_<z){if(!d)du("Graph contains a negative weight cycle for Bellman-Ford"),d=!0;if(e.findNegativeWeightCycles!==!1){var q=[];if(z+_<j)q.push(K);if(!u&&j+_<z)q.push(O);var CA=q.length;for(var tA=0;tA<CA;tA++){var lA=q[tA],gA=[lA];gA.push(Q(lA).edge);var aA=Q(lA).pred;while(gA.indexOf(aA)===-1)gA.push(aA),gA.push(Q(aA).edge),aA=Q(aA).pred;gA=gA.slice(gA.indexOf(aA));var RA=gA[0].id(),wA=0;for(var JA=2;JA<gA.length;JA+=2)if(gA[JA].id()<RA)RA=gA[JA].id(),wA=JA;gA=gA.slice(wA).concat(gA.slice(0,wA)),gA.push(gA[0]);var TA=gA.map(function(qA){return qA.id()}).join(",");if(Y.indexOf(TA)===-1)I.push(o.spawn(gA)),Y.push(TA)}}else break}}}return{distanceTo:m,pathTo:f,hasNegativeWeightCycle:d,negativeWeightCycles:I}}},TQt=Math.sqrt(2),HQt={kargerStein:function(){var e=this,t=this.byGroup(),{nodes:r,edges:i}=t;i.unmergeBy(function(U){return U.isLoop()});var u=r.length,a=i.length,n=Math.ceil(Math.pow(Math.log(u)/Math.LN2,2)),o=Math.floor(u/TQt);if(u<2){Qa("At least 2 nodes are required for Karger-Stein algorithm");return}var s=[];for(var l=0;l<a;l++){var g=i[l];s.push([l,r.indexOf(g.source()),r.indexOf(g.target())])}var C=1/0,B=[],E=Array(u),d=Array(u),I=Array(u),h=function(Y,H){for(var J=0;J<u;J++)H[J]=Y[J]};for(var Q=0;Q<=n;Q++){for(var p=0;p<u;p++)d[p]=p;var m=ruA(d,s.slice(),u,o),f=m.slice();h(d,I);var D=ruA(d,m,o,2),w=ruA(I,f,o,2);if(D.length<=w.length&&D.length<C)C=D.length,B=D,h(d,E);else if(w.length<=D.length&&w.length<C)C=w.length,B=w,h(I,E)}var b=this.spawn(B.map(function(U){return i[U[0]]})),F=this.spawn(),v=this.spawn(),S=E[0];for(var x=0;x<E.length;x++){var k=E[x],T=r[x];if(k===S)F.merge(T);else v.merge(T)}var R=function(Y){var H=e.spawn();return Y.forEach(function(J){H.merge(J),J.connectedEdges().forEach(function(K){if(e.contains(K)&&!b.contains(K))H.merge(K)})}),H},L=[R(F),R(v)],M={cut:b,components:L,partition1:F,partition2:v};return M}},PaA=Math.log2||function(A){return Math.log(A)/Math.log(2)},$Qt=(iuA=Math.hypot)!==null&&iuA!==void 0?iuA:function(A,e){return Math.sqrt(A*A+e*e)};C4t=o0({dampingFactor:0.8,precision:0.000001,iterations:200,weight:function(e){return 1}}),B4t={pageRank:function(e){var t=C4t(e),{dampingFactor:r,precision:i,iterations:u,weight:a}=t,n=this._private.cy,o=this.byGroup(),{nodes:s,edges:l}=o,g=s.length,C=g*g,B=l.length,E=Array(C),d=Array(g),I=(1-r)/g;for(var h=0;h<g;h++){for(var Q=0;Q<g;Q++){var p=h*g+Q;E[p]=0}d[h]=0}for(var m=0;m<B;m++){var f=l[m],D=f.data("source"),w=f.data("target");if(D===w)continue;var b=s.indexOfId(D),F=s.indexOfId(w),v=a(f),S=F*g+b;E[S]+=v,d[b]+=v}var x=1/g+I;for(var k=0;k<g;k++)if(d[k]===0)for(var T=0;T<g;T++){var R=T*g+k;E[R]=x}else for(var L=0;L<g;L++){var M=L*g+k;E[M]=E[M]/d[k]+I}var U=Array(g),Y=Array(g),H;for(var J=0;J<g;J++)U[J]=1;for(var K=0;K<u;K++){for(var O=0;O<g;O++)Y[O]=0;for(var _=0;_<g;_++)for(var z=0;z<g;z++){var j=_*g+z;Y[_]+=E[j]*U[z]}zQt(Y),H=U,U=Y,Y=H;var q=0;for(var CA=0;CA<g;CA++){var tA=H[CA]-U[CA];q+=tA*tA}if(q<i)break}var lA={rank:function(aA){return aA=n.collection(aA)[0],U[s.indexOf(aA)]}};return lA}},jTA=o0({root:null,weight:function(e){return 1},directed:!1,alpha:0}),ow={degreeCentralityNormalized:function(e){e=jTA(e);var t=this.cy(),r=this.nodes(),i=r.length;if(!e.directed){var u={},a=0;for(var n=0;n<i;n++){var o=r[n];e.root=o;var s=this.degreeCentrality(e);if(a<s.degree)a=s.degree;u[o.id()]=s.degree}return{degree:function(p){if(a===0)return 0;if(tr(p))p=t.filter(p);return u[p.id()]/a}}}else{var l={},g={},C=0,B=0;for(var E=0;E<i;E++){var d=r[E],I=d.id();e.root=d;var h=this.degreeCentrality(e);if(C<h.indegree)C=h.indegree;if(B<h.outdegree)B=h.outdegree;l[I]=h.indegree,g[I]=h.outdegree}return{indegree:function(p){if(C==0)return 0;if(tr(p))p=t.filter(p);return l[p.id()]/C},outdegree:function(p){if(B===0)return 0;if(tr(p))p=t.filter(p);return g[p.id()]/B}}}},degreeCentrality:function(e){e=jTA(e);var t=this.cy(),r=this,i=e,{root:u,weight:a,directed:n,alpha:o}=i;if(u=t.collection(u)[0],!n){var s=u.connectedEdges().intersection(r),l=s.length,g=0;for(var C=0;C<s.length;C++)g+=a(s[C]);return{degree:Math.pow(l,1-o)*Math.pow(g,o)}}else{var B=u.connectedEdges(),E=B.filter(function(D){return D.target().same(u)&&r.has(D)}),d=B.filter(function(D){return D.source().same(u)&&r.has(D)}),I=E.length,h=d.length,Q=0,p=0;for(var m=0;m<E.length;m++)Q+=a(E[m]);for(var f=0;f<d.length;f++)p+=a(d[f]);return{indegree:Math.pow(I,1-o)*Math.pow(Q,o),outdegree:Math.pow(h,1-o)*Math.pow(p,o)}}}};ow.dc=ow.degreeCentrality;ow.dcn=ow.degreeCentralityNormalised=ow.degreeCentralityNormalized;XTA=o0({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),sw={closenessCentralityNormalized:function(e){var t=XTA(e),{harmonic:r,weight:i,directed:u}=t,a=this.cy(),n={},o=0,s=this.nodes(),l=this.floydWarshall({weight:i,directed:u});for(var g=0;g<s.length;g++){var C=0,B=s[g];for(var E=0;E<s.length;E++)if(g!==E){var d=l.distance(B,s[E]);if(r)C+=1/d;else C+=d}if(!r)C=1/C;if(o<C)o=C;n[B.id()]=C}return{closeness:function(h){if(o==0)return 0;if(tr(h))h=a.filter(h)[0].id();else h=h.id();return n[h]/o}}},closenessCentrality:function(e){var t=XTA(e),{root:r,weight:i,directed:u,harmonic:a}=t;r=this.filter(r)[0];var n=this.dijkstra({root:r,weight:i,directed:u}),o=0,s=this.nodes();for(var l=0;l<s.length;l++){var g=s[l];if(!g.same(r)){var C=n.distanceTo(g);if(a)o+=1/C;else o+=C}}return a?o:1/o}};sw.cc=sw.closenessCentrality;sw.ccn=sw.closenessCentralityNormalised=sw.closenessCentralityNormalized;E4t=o0({weight:null,directed:!1}),paA={betweennessCentrality:function(e){var t=E4t(e),{directed:r,weight:i}=t,u=i!=null,a=this.cy(),n=this.nodes(),o={},s={},l=0,g={set:function(p,m){if(s[p]=m,m>l)l=m},get:function(p){return s[p]}};for(var C=0;C<n.length;C++){var B=n[C],E=B.id();if(r)o[E]=B.outgoers().nodes();else o[E]=B.openNeighborhood().nodes();g.set(E,0)}var d=function(){var p=n[I].id(),m=[],f={},D={},w={},b=new eF(function(_,z){return w[_]-w[z]});for(var F=0;F<n.length;F++){var v=n[F].id();f[v]=[],D[v]=0,w[v]=1/0}D[p]=1,w[p]=0,b.push(p);while(!b.empty()){var S=b.pop();if(m.push(S),u)for(var x=0;x<o[S].length;x++){var k=o[S][x],T=a.getElementById(S),R=void 0;if(T.edgesTo(k).length>0)R=T.edgesTo(k)[0];else R=k.edgesTo(T)[0];var L=i(R);if(k=k.id(),w[k]>w[S]+L){if(w[k]=w[S]+L,b.nodes.indexOf(k)<0)b.push(k);else b.updateItem(k);D[k]=0,f[k]=[]}if(w[k]==w[S]+L)D[k]=D[k]+D[S],f[k].push(S)}else for(var M=0;M<o[S].length;M++){var U=o[S][M].id();if(w[U]==1/0)b.push(U),w[U]=w[S]+1;if(w[U]==w[S]+1)D[U]=D[U]+D[S],f[U].push(S)}}var Y={};for(var H=0;H<n.length;H++)Y[n[H].id()]=0;while(m.length>0){var J=m.pop();for(var K=0;K<f[J].length;K++){var O=f[J][K];Y[O]=Y[O]+D[O]/D[J]*(1+Y[J])}if(J!=n[I].id())g.set(J,g.get(J)+Y[J])}};for(var I=0;I<n.length;I++)d();var h={betweenness:function(p){var m=a.collection(p).id();return g.get(m)},betweennessNormalized:function(p){if(l==0)return 0;var m=a.collection(p).id();return g.get(m)/l}};return h.betweennessNormalised=h.betweennessNormalized,h}};paA.bc=paA.betweennessCentrality;d4t=o0({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(A){return 1}]}),v4t={markovClustering:$TA,mcl:$TA},cw={euclidean:function(e,t,r){if(e>=2)return bk(e,t,r,0,eYA,F4t);else return bk(e,t,r,0,AYA)},squaredEuclidean:function(e,t,r){return bk(e,t,r,0,eYA)},manhattan:function(e,t,r){return bk(e,t,r,0,AYA)},max:function(e,t,r){return bk(e,t,r,-1/0,x4t)}};cw["squared-euclidean"]=cw.squaredEuclidean;cw.squaredeuclidean=cw.squaredEuclidean;S4t=o0({k:2,m:2,sensitivityThreshold:0.0001,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),H4t={kMeans:G4t,kMedoids:U4t,fuzzyCMeans:iYA,fcm:iYA},K4t=o0({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),J4t={single:"min",complete:"max"},P4t={hierarchicalClustering:aYA,hca:aYA},_4t=o0({distance:"euclidean",preference:"median",damping:0.8,maxIterations:1000,minIterations:100,attributes:[]}),j4t={affinityPropagation:oYA,ap:oYA},X4t=o0({root:void 0,directed:!1}),$4t={hierholzer:function(e){if(!Hi(e)){var t=arguments;e={root:t[0],directed:t[1]}}var r=X4t(e),{root:i,directed:u}=r,a=this,n=!1,o,s,l;if(i)l=tr(i)?this.filter(i)[0].id():i[0].id();var g={},C={};if(u)a.forEach(function(Q){var p=Q.id();if(Q.isNode()){var m=Q.indegree(!0),f=Q.outdegree(!0),D=m-f,w=f-m;if(D==1)if(o)n=!0;else o=p;else if(w==1)if(s)n=!0;else s=p;else if(w>1||D>1)n=!0;g[p]=[],Q.outgoers().forEach(function(b){if(b.isEdge())g[p].push(b.id())})}else C[p]=[void 0,Q.target().id()]});else a.forEach(function(Q){var p=Q.id();if(Q.isNode()){var m=Q.degree(!0);if(m%2)if(!o)o=p;else if(!s)s=p;else n=!0;g[p]=[],Q.connectedEdges().forEach(function(f){return g[p].push(f.id())})}else C[p]=[Q.source().id(),Q.target().id()]});var B={found:!1,trail:void 0};if(n)return B;else if(s&&o){if(u){if(l&&s!=l)return B;l=s}else if(l&&s!=l&&o!=l)return B;else if(!l)l=s}else if(!l)l=a[0].id();var E=function(p){var m=p,f=[p],D,w,b;while(g[m].length){if(D=g[m].shift(),w=C[D][0],b=C[D][1],m!=b)g[b]=g[b].filter(function(F){return F!=D}),m=b;else if(!u&&m!=w)g[w]=g[w].filter(function(F){return F!=D}),m=w;f.unshift(D),f.unshift(m)}return f},d=[],I=[];I=E(l);while(I.length!=1)if(g[I[0]].length==0)d.unshift(a.getElementById(I.shift())),d.unshift(a.getElementById(I.shift()));else I=E(I.shift()).concat(I);d.unshift(a.getElementById(I.shift()));for(var h in g)if(g[h].length)return B;return B.found=!0,B.trail=this.spawn(d,!0),B}},A1t={hopcroftTarjanBiconnected:BT,htbc:BT,htb:BT,hopcroftTarjanBiconnectedComponents:BT},e1t={tarjanStronglyConnected:ET,tsc:ET,tscc:ET,tarjanStronglyConnectedComponents:ET},LKA={};[Kk,xQt,SQt,RQt,GQt,MQt,HQt,B4t,ow,sw,paA,v4t,H4t,P4t,j4t,$4t,A1t,e1t].forEach(function(A){Cr(LKA,A)});/*!
|
||
Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable
|
||
Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com)
|
||
Licensed under The MIT License (http://opensource.org/licenses/MIT)
|
||
*/SC.prototype={fulfill:function(e){return sYA(this,NKA,"fulfillValue",e)},reject:function(e){return sYA(this,GKA,"rejectReason",e)},then:function(e,t){var r=this,i=new SC;return r.onFulfilled.push(gYA(e,i,"fulfill")),r.onRejected.push(gYA(t,i,"reject")),UKA(r),i.proxy}};SC.all=function(A){return new SC(function(e,t){var r=Array(A.length),i=0,u=function(o,s){if(r[o]=s,i++,i===A.length)e(r)};for(var a=0;a<A.length;a++)(function(n){var o=A[n],s=o!=null&&o.then!=null;if(s)o.then(function(g){u(n,g)},function(g){t(g)});else{var l=o;u(n,l)}})(a)})};SC.resolve=function(A){return new SC(function(e,t){e(A)})};SC.reject=function(A){return new SC(function(e,t){t(A)})};Iw=typeof Promise<"u"?Promise:SC,i3=DaA.prototype;Cr(i3,{instanceString:function(){return"animation"},hook:function(){var e=this._private;if(!e.hooked){var t,r=e.target._private.animation;if(e.queue)t=r.queue;else t=r.current;if(t.push(this),Cg(e.target))e.target.cy().addToAnimationPool(e.target);e.hooked=!0}return this},play:function(){var e=this._private;if(e.progress===1)e.progress=0;return e.playing=!0,e.started=!1,e.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var e=this._private;return e.applying=!0,e.started=!1,e.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var e=this._private;return e.playing=!1,e.started=!1,this},stop:function(){var e=this._private;return e.playing=!1,e.started=!1,e.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(e){var t=this._private;if(e===void 0)return t.progress*t.duration;else return this.progress(e/t.duration)},progress:function(e){var t=this._private,r=t.playing;if(e===void 0)return t.progress;else{if(r)this.pause();if(t.progress=e,t.started=!1,r)this.play()}return this},completed:function(){return this._private.progress===1},reverse:function(){var e=this._private,t=e.playing;if(t)this.pause();e.progress=1-e.progress,e.started=!1;var r=function(s,l){var g=e[s];if(g==null)return;e[s]=e[l],e[l]=g};if(r("zoom","startZoom"),r("pan","startPan"),r("position","startPosition"),e.style)for(var i=0;i<e.style.length;i++){var u=e.style[i],a=u.name,n=e.startStyle[a];e.startStyle[a]=u,e.style[i]=n}if(t)this.play();return this},promise:function(e){var t=this._private,r;switch(e){case"frame":r=t.frames;break;default:case"complete":case"completed":r=t.completes}return new Iw(function(i,u){r.push(function(){i()})})}});i3.complete=i3.completed;i3.run=i3.play;i3.running=i3.playing;t1t={animated:function(){return function(){var t=this,r=t.length!==void 0,i=r?t:[t],u=this._private.cy||this;if(!u.styleEnabled())return!1;var a=i[0];if(a)return a._private.animation.current.length>0}},clearQueue:function(){return function(){var t=this,r=t.length!==void 0,i=r?t:[t],u=this._private.cy||this;if(!u.styleEnabled())return this;for(var a=0;a<i.length;a++){var n=i[a];n._private.animation.queue=[]}return this}},delay:function(){return function(t,r){var i=this._private.cy||this;if(!i.styleEnabled())return this;return this.animate({delay:t,duration:t,complete:r})}},delayAnimation:function(){return function(t,r){var i=this._private.cy||this;if(!i.styleEnabled())return this;return this.animation({delay:t,duration:t,complete:r})}},animation:function(){return function(t,r){var i=this,u=i.length!==void 0,a=u?i:[i],n=this._private.cy||this,o=!u,s=!o;if(!n.styleEnabled())return this;var l=n.style();t=Cr({},t,r);var g=Object.keys(t).length===0;if(g)return new DaA(a[0],t);if(t.duration===void 0)t.duration=400;switch(t.duration){case"slow":t.duration=600;break;case"fast":t.duration=200;break}if(s)t.style=l.getPropsList(t.style||t.css),t.css=void 0;if(s&&t.renderedPosition!=null){var C=t.renderedPosition,B=n.pan(),E=n.zoom();t.position=fKA(C,E,B)}if(o&&t.panBy!=null){var d=t.panBy,I=n.pan();t.pan={x:I.x+d.x,y:I.y+d.y}}var h=t.center||t.centre;if(o&&h!=null){var Q=n.getCenterPan(h.eles,t.zoom);if(Q!=null)t.pan=Q}if(o&&t.fit!=null){var p=t.fit,m=n.getFitViewport(p.eles||p.boundingBox,p.padding);if(m!=null)t.pan=m.pan,t.zoom=m.zoom}if(o&&Hi(t.zoom)){var f=n.getZoomedViewport(t.zoom);if(f!=null){if(f.zoomed)t.zoom=f.zoom;if(f.panned)t.pan=f.pan}else t.zoom=null}return new DaA(a[0],t)}},animate:function(){return function(t,r){var i=this,u=i.length!==void 0,a=u?i:[i],n=this._private.cy||this;if(!n.styleEnabled())return this;if(r)t=Cr({},t,r);for(var o=0;o<a.length;o++){var s=a[o],l=s.animated()&&(t.queue===void 0||t.queue),g=s.animation(t,l?{queue:!0}:void 0);g.play()}return this}},stop:function(){return function(t,r){var i=this,u=i.length!==void 0,a=u?i:[i],n=this._private.cy||this;if(!n.styleEnabled())return this;for(var o=0;o<a.length;o++){var s=a[o],l=s._private,g=l.animation.current;for(var C=0;C<g.length;C++){var B=g[C],E=B._private;if(r)E.duration=0}if(t)l.animation.queue=[];if(!r)l.animation.current=[]}return n.notify("draw"),this}}};G1t=N1t(),U1t=jk(G1t);O1t=J1t(),P1t=jk(O1t);q1t=W1t(),z1t=jk(q1t),Z1t={data:function(e){var t={field:"data",bindingEvent:"data",allowBinding:!1,allowSetting:!1,allowGetting:!1,settingEvent:"data",settingTriggersEvent:!1,triggerFnName:"trigger",immutableKeys:{},updateStyle:!1,beforeGet:function(i){},beforeSet:function(i,u){},onSet:function(i){},canSet:function(i){return!0}};return e=Cr({},t,e),function(i,u){var a=e,n=this,o=n.length!==void 0,s=o?n:[n],l=o?n[0]:n;if(tr(i)){var g=i.indexOf(".")!==-1,C=g&&z1t(i);if(a.allowGetting&&u===void 0){var B;if(l)if(a.beforeGet(l),C&&l._private[a.field][i]===void 0)B=U1t(l._private[a.field],C);else B=l._private[a.field][i];return B}else if(a.allowSetting&&u!==void 0){var E=!a.immutableKeys[i];if(E){var d=eKA({},i,u);a.beforeSet(n,d);for(var I=0,h=s.length;I<h;I++){var Q=s[I];if(a.canSet(Q))if(C&&l._private[a.field][i]===void 0)P1t(Q._private[a.field],C,u);else Q._private[a.field][i]=u}if(a.updateStyle)n.updateStyle();if(a.onSet(n),a.settingTriggersEvent)n[a.triggerFnName](a.settingEvent)}}}else if(a.allowSetting&&Hi(i)){var p=i,m,f,D=Object.keys(p);a.beforeSet(n,p);for(var w=0;w<D.length;w++){m=D[w],f=p[m];var b=!a.immutableKeys[m];if(b)for(var F=0;F<s.length;F++){var v=s[F];if(a.canSet(v))v._private[a.field][m]=f}}if(a.updateStyle)n.updateStyle();if(a.onSet(n),a.settingTriggersEvent)n[a.triggerFnName](a.settingEvent)}else if(a.allowBinding&&Na(i)){var S=i;n.on(a.bindingEvent,S)}else if(a.allowGetting&&i===void 0){var x;if(l)a.beforeGet(l),x=l._private[a.field];return x}return n}},removeData:function(e){var t={field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}};return e=Cr({},t,e),function(i){var u=e,a=this,n=a.length!==void 0,o=n?a:[a];if(tr(i)){var s=i.split(/\s+/),l=s.length;for(var g=0;g<l;g++){var C=s[g];if(w4(C))continue;var B=!u.immutableKeys[C];if(B)for(var E=0,d=o.length;E<d;E++)o[E]._private[u.field][C]=void 0}if(u.triggerEvent)a[u.triggerFnName](u.event)}else if(i===void 0){for(var I=0,h=o.length;I<h;I++){var Q=o[I]._private[u.field],p=Object.keys(Q);for(var m=0;m<p.length;m++){var f=p[m],D=!u.immutableKeys[f];if(D)Q[f]=void 0}}if(u.triggerEvent)a[u.triggerFnName](u.event)}return a}}},V1t={eventAliasesOn:function(e){var t=e;t.addListener=t.listen=t.bind=t.on,t.unlisten=t.unbind=t.off=t.removeListener,t.trigger=t.emit,t.pon=t.promiseOn=function(r,i){var u=this,a=Array.prototype.slice.call(arguments,0);return new Iw(function(n,o){var s=function(B){u.off.apply(u,g),n(B)},l=a.concat([s]),g=l.concat([]);u.on.apply(u,l)})}}},Eu={};[t1t,Z1t,V1t].forEach(function(A){Cr(Eu,A)});j1t={animate:Eu.animate(),animation:Eu.animation(),animated:Eu.animated(),clearQueue:Eu.clearQueue(),delay:Eu.delay(),delayAnimation:Eu.delayAnimation(),stop:Eu.stop()},bT={classes:function(e){var t=this;if(e===void 0){var r=[];return t[0]._private.classes.forEach(function(E){return r.push(E)}),r}else if(!Mu(e))e=(e||"").match(/\S+/g)||[];var i=[],u=new dw(e);for(var a=0;a<t.length;a++){var n=t[a],o=n._private,s=o.classes,l=!1;for(var g=0;g<e.length;g++){var C=e[g],B=s.has(C);if(!B){l=!0;break}}if(!l)l=s.size!==e.length;if(l)o.classes=u,i.push(n)}if(i.length>0)this.spawn(i).updateStyle().emit("class");return t},addClass:function(e){return this.toggleClass(e,!0)},hasClass:function(e){var t=this[0];return t!=null&&t._private.classes.has(e)},toggleClass:function(e,t){if(!Mu(e))e=e.match(/\S+/g)||[];var r=this,i=t===void 0,u=[];for(var a=0,n=r.length;a<n;a++){var o=r[a],s=o._private.classes,l=!1;for(var g=0;g<e.length;g++){var C=e[g],B=s.has(C),E=!1;if(t||i&&!B)s.add(C),E=!0;else if(!t||i&&B)s.delete(C),E=!0;if(!l&&E)u.push(o),l=!0}}if(u.length>0)this.spawn(u).updateStyle().emit("class");return r},removeClass:function(e){return this.toggleClass(e,!1)},flashClass:function(e,t){var r=this;if(t==null)t=250;else if(t===0)return r;return r.addClass(e),setTimeout(function(){r.removeClass(e)},t),r}};bT.className=bT.classNames=bT.classes;Yi={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:ro,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Yi.variable="(?:[\\w-.]|(?:\\\\"+Yi.metaChar+"))+";Yi.className="(?:[\\w-]|(?:\\\\"+Yi.metaChar+"))+";Yi.value=Yi.string+"|"+Yi.number;Yi.id=Yi.variable;(function(){var A,e,t;A=Yi.comparatorOp.split("|");for(t=0;t<A.length;t++)e=A[t],Yi.comparatorOp+="|@"+e;A=Yi.comparatorOp.split("|");for(t=0;t<A.length;t++){if(e=A[t],e.indexOf("!")>=0)continue;if(e==="=")continue;Yi.comparatorOp+="|\\!"+e}})();Gt={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},yaA=[{selector:":selected",matches:function(e){return e.selected()}},{selector:":unselected",matches:function(e){return!e.selected()}},{selector:":selectable",matches:function(e){return e.selectable()}},{selector:":unselectable",matches:function(e){return!e.selectable()}},{selector:":locked",matches:function(e){return e.locked()}},{selector:":unlocked",matches:function(e){return!e.locked()}},{selector:":visible",matches:function(e){return e.visible()}},{selector:":hidden",matches:function(e){return!e.visible()}},{selector:":transparent",matches:function(e){return e.transparent()}},{selector:":grabbed",matches:function(e){return e.grabbed()}},{selector:":free",matches:function(e){return!e.grabbed()}},{selector:":removed",matches:function(e){return e.removed()}},{selector:":inside",matches:function(e){return!e.removed()}},{selector:":grabbable",matches:function(e){return e.grabbable()}},{selector:":ungrabbable",matches:function(e){return!e.grabbable()}},{selector:":animated",matches:function(e){return e.animated()}},{selector:":unanimated",matches:function(e){return!e.animated()}},{selector:":parent",matches:function(e){return e.isParent()}},{selector:":childless",matches:function(e){return e.isChildless()}},{selector:":child",matches:function(e){return e.isChild()}},{selector:":orphan",matches:function(e){return e.isOrphan()}},{selector:":nonorphan",matches:function(e){return e.isChild()}},{selector:":compound",matches:function(e){if(e.isNode())return e.isParent();else return e.source().isParent()||e.target().isParent()}},{selector:":loop",matches:function(e){return e.isLoop()}},{selector:":simple",matches:function(e){return e.isSimple()}},{selector:":active",matches:function(e){return e.active()}},{selector:":inactive",matches:function(e){return!e.active()}},{selector:":backgrounding",matches:function(e){return e.backgrounding()}},{selector:":nonbackgrounding",matches:function(e){return!e.backgrounding()}}].sort(function(A,e){return zht(A.selector,e.selector)}),X1t=function(){var A={},e;for(var t=0;t<yaA.length;t++)e=yaA[t],A[e.selector]=e.matches;return A}(),Apt="("+yaA.map(function(A){return A.selector}).join("|")+")",waA=[{name:"group",query:!0,regex:"("+Yi.group+")",populate:function(e,t,r){var i=Tn(r,1),u=i[0];t.checks.push({type:Gt.GROUP,value:u==="*"?u:u+"s"})}},{name:"state",query:!0,regex:Apt,populate:function(e,t,r){var i=Tn(r,1),u=i[0];t.checks.push({type:Gt.STATE,value:u})}},{name:"id",query:!0,regex:"\\#("+Yi.id+")",populate:function(e,t,r){var i=Tn(r,1),u=i[0];t.checks.push({type:Gt.ID,value:Vy(u)})}},{name:"className",query:!0,regex:"\\.("+Yi.className+")",populate:function(e,t,r){var i=Tn(r,1),u=i[0];t.checks.push({type:Gt.CLASS,value:Vy(u)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+Yi.variable+")\\s*\\]",populate:function(e,t,r){var i=Tn(r,1),u=i[0];t.checks.push({type:Gt.DATA_EXIST,field:Vy(u)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+Yi.variable+")\\s*("+Yi.comparatorOp+")\\s*("+Yi.value+")\\s*\\]",populate:function(e,t,r){var i=Tn(r,3),u=i[0],a=i[1],n=i[2],o=new RegExp("^"+Yi.string+"$").exec(n)!=null;if(o)n=n.substring(1,n.length-1);else n=parseFloat(n);t.checks.push({type:Gt.DATA_COMPARE,field:Vy(u),operator:a,value:n})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+Yi.boolOp+")\\s*("+Yi.variable+")\\s*\\]",populate:function(e,t,r){var i=Tn(r,2),u=i[0],a=i[1];t.checks.push({type:Gt.DATA_BOOL,field:Vy(a),operator:u})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+Yi.meta+")\\s*("+Yi.comparatorOp+")\\s*("+Yi.number+")\\s*\\]\\]",populate:function(e,t,r){var i=Tn(r,3),u=i[0],a=i[1],n=i[2];t.checks.push({type:Gt.META_COMPARE,field:Vy(u),operator:a,value:parseFloat(n)})}},{name:"nextQuery",separator:!0,regex:Yi.separator,populate:function(e,t){var{currentSubject:r,edgeCount:i,compoundCount:u}=e,a=e[e.length-1];if(r!=null)a.subject=r,e.currentSubject=null;a.edgeCount=i,a.compoundCount=u,e.edgeCount=0,e.compoundCount=0;var n=e[e.length++]=vu();return n}},{name:"directedEdge",separator:!0,regex:Yi.directedEdge,populate:function(e,t){if(e.currentSubject==null){var r=vu(),i=t,u=vu();return r.checks.push({type:Gt.DIRECTED_EDGE,source:i,target:u}),I4(e,t,r),e.edgeCount++,u}else{var a=vu(),n=t,o=vu();return a.checks.push({type:Gt.NODE_SOURCE,source:n,target:o}),I4(e,t,a),e.edgeCount++,o}}},{name:"undirectedEdge",separator:!0,regex:Yi.undirectedEdge,populate:function(e,t){if(e.currentSubject==null){var r=vu(),i=t,u=vu();return r.checks.push({type:Gt.UNDIRECTED_EDGE,nodes:[i,u]}),I4(e,t,r),e.edgeCount++,u}else{var a=vu(),n=t,o=vu();return a.checks.push({type:Gt.NODE_NEIGHBOR,node:n,neighbor:o}),I4(e,t,a),o}}},{name:"child",separator:!0,regex:Yi.child,populate:function(e,t){if(e.currentSubject==null){var r=vu(),i=vu(),u=e[e.length-1];return r.checks.push({type:Gt.CHILD,parent:u,child:i}),I4(e,t,r),e.compoundCount++,i}else if(e.currentSubject===t){var a=vu(),n=e[e.length-1],o=vu(),s=vu(),l=vu(),g=vu();return a.checks.push({type:Gt.COMPOUND_SPLIT,left:n,right:o,subject:s}),s.checks=t.checks,t.checks=[{type:Gt.TRUE}],g.checks.push({type:Gt.TRUE}),o.checks.push({type:Gt.PARENT,parent:g,child:l}),I4(e,n,a),e.currentSubject=s,e.compoundCount++,l}else{var C=vu(),B=vu(),E=[{type:Gt.PARENT,parent:C,child:B}];return C.checks=t.checks,t.checks=E,e.compoundCount++,B}}},{name:"descendant",separator:!0,regex:Yi.descendant,populate:function(e,t){if(e.currentSubject==null){var r=vu(),i=vu(),u=e[e.length-1];return r.checks.push({type:Gt.DESCENDANT,ancestor:u,descendant:i}),I4(e,t,r),e.compoundCount++,i}else if(e.currentSubject===t){var a=vu(),n=e[e.length-1],o=vu(),s=vu(),l=vu(),g=vu();return a.checks.push({type:Gt.COMPOUND_SPLIT,left:n,right:o,subject:s}),s.checks=t.checks,t.checks=[{type:Gt.TRUE}],g.checks.push({type:Gt.TRUE}),o.checks.push({type:Gt.ANCESTOR,ancestor:g,descendant:l}),I4(e,n,a),e.currentSubject=s,e.compoundCount++,l}else{var C=vu(),B=vu(),E=[{type:Gt.ANCESTOR,ancestor:C,descendant:B}];return C.checks=t.checks,t.checks=E,e.compoundCount++,B}}},{name:"subject",modifier:!0,regex:Yi.subject,populate:function(e,t){if(e.currentSubject!=null&&e.currentSubject!==t)return du("Redefinition of subject in selector `"+e.toString()+"`"),!1;e.currentSubject=t;var r=e[e.length-1],i=r.checks[0],u=i==null?null:i.type;if(u===Gt.DIRECTED_EDGE)i.type=Gt.NODE_TARGET;else if(u===Gt.UNDIRECTED_EDGE)i.type=Gt.NODE_NEIGHBOR,i.node=i.nodes[1],i.neighbor=i.nodes[0],i.nodes=null}}];waA.forEach(function(A){return A.regexObj=new RegExp("^"+A.regex)});upt={parse:rpt,toString:ipt},Xa=[];Xa[Gt.GROUP]=function(A,e){var t=A.value;return t==="*"||t===e.group()};Xa[Gt.STATE]=function(A,e){var t=A.value;return $1t(t,e)};Xa[Gt.ID]=function(A,e){var t=A.value;return e.id()===t};Xa[Gt.CLASS]=function(A,e){var t=A.value;return e.hasClass(t)};Xa[Gt.META_COMPARE]=function(A,e){var{field:t,operator:r,value:i}=A;return OKA(opt(e,t),r,i)};Xa[Gt.DATA_COMPARE]=function(A,e){var{field:t,operator:r,value:i}=A;return OKA(jaA(e,t),r,i)};Xa[Gt.DATA_BOOL]=function(A,e){var{field:t,operator:r}=A;return apt(jaA(e,t),r)};Xa[Gt.DATA_EXIST]=function(A,e){var t=A.field;return A.operator,npt(jaA(e,t))};Xa[Gt.UNDIRECTED_EDGE]=function(A,e){var t=A.nodes[0],r=A.nodes[1],i=e.source(),u=e.target();return ea(t,i)&&ea(r,u)||ea(r,i)&&ea(t,u)};Xa[Gt.NODE_NEIGHBOR]=function(A,e){return ea(A.node,e)&&e.neighborhood().some(function(t){return t.isNode()&&ea(A.neighbor,t)})};Xa[Gt.DIRECTED_EDGE]=function(A,e){return ea(A.source,e.source())&&ea(A.target,e.target())};Xa[Gt.NODE_SOURCE]=function(A,e){return ea(A.source,e)&&e.outgoers().some(function(t){return t.isNode()&&ea(A.target,t)})};Xa[Gt.NODE_TARGET]=function(A,e){return ea(A.target,e)&&e.incomers().some(function(t){return t.isNode()&&ea(A.source,t)})};Xa[Gt.CHILD]=function(A,e){return ea(A.child,e)&&ea(A.parent,e.parent())};Xa[Gt.PARENT]=function(A,e){return ea(A.parent,e)&&e.children().some(function(t){return ea(A.child,t)})};Xa[Gt.DESCENDANT]=function(A,e){return ea(A.descendant,e)&&e.ancestors().some(function(t){return ea(A.ancestor,t)})};Xa[Gt.ANCESTOR]=function(A,e){return ea(A.ancestor,e)&&e.descendants().some(function(t){return ea(A.descendant,t)})};Xa[Gt.COMPOUND_SPLIT]=function(A,e){return ea(A.subject,e)&&ea(A.left,e)&&ea(A.right,e)};Xa[Gt.TRUE]=function(){return!0};Xa[Gt.COLLECTION]=function(A,e){var t=A.value;return t.has(e)};Xa[Gt.FILTER]=function(A,e){var t=A.value;return t(e)};gpt={matches:lpt,filter:spt},F4=k4.prototype;[upt,gpt].forEach(function(A){return Cr(F4,A)});F4.text=function(){return this.inputText};F4.size=function(){return this.length};F4.eq=function(A){return this[A]};F4.sameText=function(A){return!this.invalid&&!A.invalid&&this.text()===A.text()};F4.addQuery=function(A){this[this.length++]=A};F4.selector=F4.toString;D4={allAre:function(e){var t=new k4(e);return this.every(function(r){return t.matches(r)})},is:function(e){var t=new k4(e);return this.some(function(r){return t.matches(r)})},some:function(e,t){for(var r=0;r<this.length;r++){var i=!t?e(this[r],r,this):e.apply(t,[this[r],r,this]);if(i)return!0}return!1},every:function(e,t){for(var r=0;r<this.length;r++){var i=!t?e(this[r],r,this):e.apply(t,[this[r],r,this]);if(!i)return!1}return!0},same:function(e){if(this===e)return!0;e=this.cy().collection(e);var t=this.length,r=e.length;if(t!==r)return!1;if(t===1)return this[0]===e[0];return this.every(function(i){return e.hasElementWithId(i.id())})},anySame:function(e){return e=this.cy().collection(e),this.some(function(t){return e.hasElementWithId(t.id())})},allAreNeighbors:function(e){e=this.cy().collection(e);var t=this.neighborhood();return e.every(function(r){return t.hasElementWithId(r.id())})},contains:function(e){e=this.cy().collection(e);var t=this;return e.every(function(r){return t.hasElementWithId(r.id())})}};D4.allAreNeighbours=D4.allAreNeighbors;D4.has=D4.contains;D4.equal=D4.equals=D4.same;Cw={parent:function(e){var t=[];if(this.length===1){var r=this[0]._private.parent;if(r)return r}for(var i=0;i<this.length;i++){var u=this[i],a=u._private.parent;if(a)t.push(a)}return this.spawn(t,!0).filter(e)},parents:function(e){var t=[],r=this.parent();while(r.nonempty()){for(var i=0;i<r.length;i++){var u=r[i];t.push(u)}r=r.parent()}return this.spawn(t,!0).filter(e)},commonAncestors:function(e){var t;for(var r=0;r<this.length;r++){var i=this[r],u=i.parents();t=t||u,t=t.intersect(u)}return t.filter(e)},orphans:function(e){return this.stdFilter(function(t){return t.isOrphan()}).filter(e)},nonorphans:function(e){return this.stdFilter(function(t){return t.isChild()}).filter(e)},children:lc(function(A){var e=[];for(var t=0;t<this.length;t++){var r=this[t],i=r._private.children;for(var u=0;u<i.length;u++)e.push(i[u])}return this.spawn(e,!0).filter(A)},"children"),siblings:function(e){return this.parent().children().not(this).filter(e)},isParent:function(){var e=this[0];if(e)return e.isNode()&&e._private.children.length!==0},isChildless:function(){var e=this[0];if(e)return e.isNode()&&e._private.children.length===0},isChild:function(){var e=this[0];if(e)return e.isNode()&&e._private.parent!=null},isOrphan:function(){var e=this[0];if(e)return e.isNode()&&e._private.parent==null},descendants:function(e){var t=[];function r(i){for(var u=0;u<i.length;u++){var a=i[u];if(t.push(a),a.children().nonempty())r(a.children())}}return r(this.children()),this.spawn(t,!0).filter(e)}};Cw.forEachDown=function(A){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return XaA(this,A,e,PKA)};Cw.forEachUp=function(A){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return XaA(this,A,e,_KA)};Cw.forEachUpAndDown=function(A){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return XaA(this,A,e,cpt)};Cw.ancestors=Cw.parents;Pk=WKA={data:Eu.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Eu.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Eu.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Eu.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Eu.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Eu.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var e=this[0];if(e)return e._private.data.id}};Pk.attr=Pk.data;Pk.removeAttr=Pk.removeData;Cpt=WKA,rY={};Cr(rY,{degree:uaA(function(A,e){if(e.source().same(e.target()))return 2;else return 1}),indegree:uaA(function(A,e){if(e.target().same(A))return 1;else return 0}),outdegree:uaA(function(A,e){if(e.source().same(A))return 1;else return 0})});Cr(rY,{minDegree:jy("degree",function(A,e){return A<e}),maxDegree:jy("degree",function(A,e){return A>e}),minIndegree:jy("indegree",function(A,e){return A<e}),maxIndegree:jy("indegree",function(A,e){return A>e}),minOutdegree:jy("outdegree",function(A,e){return A<e}),maxOutdegree:jy("outdegree",function(A,e){return A>e})});Cr(rY,{totalDegree:function(e){var t=0,r=this.nodes();for(var i=0;i<r.length;i++)t+=r[i].degree(e);return t}});sHA={field:"position",bindingEvent:"position",allowBinding:!0,allowSetting:!0,settingEvent:"position",settingTriggersEvent:!0,triggerFnName:"emitAndNotify",allowGetting:!0,validKeys:["x","y"],beforeGet:function(e){e.updateCompoundBounds()},beforeSet:function(e,t){zKA(e,t,!1)},onSet:function(e){e.dirtyCompoundBoundsCache()},canSet:function(e){return!e.locked()}};xC=qKA={position:Eu.data(sHA),silentPosition:Eu.data(Cr({},sHA,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:function(e,t){zKA(e,t,!0)},onSet:function(e){e.dirtyCompoundBoundsCache()}})),positions:function(e,t){if(Hi(e))if(t)this.silentPosition(e);else this.position(e);else if(Na(e)){var r=e,i=this.cy();i.startBatch();for(var u=0;u<this.length;u++){var a=this[u],n=void 0;if(n=r(a,u))if(t)a.silentPosition(n);else a.position(n)}i.endBatch()}return this},silentPositions:function(e){return this.positions(e,!0)},shift:function(e,t,r){var i;if(Hi(e))i={x:Qt(e.x)?e.x:0,y:Qt(e.y)?e.y:0},r=t;else if(tr(e)&&Qt(t))i={x:0,y:0},i[e]=t;if(i!=null){var u=this.cy();u.startBatch();for(var a=0;a<this.length;a++){var n=this[a];if(u.hasCompoundNodes()&&n.isChild()&&n.ancestors().anySame(this))continue;var o=n.position(),s={x:o.x+i.x,y:o.y+i.y};if(r)n.silentPosition(s);else n.position(s)}u.endBatch()}return this},silentShift:function(e,t){if(Hi(e))this.shift(e,!0);else if(tr(e)&&Qt(t))this.shift(e,t,!0);return this},renderedPosition:function(e,t){var r=this[0],i=this.cy(),u=i.zoom(),a=i.pan(),n=Hi(e)?e:void 0,o=n!==void 0||t!==void 0&&tr(e);if(r&&r.isNode())if(o)for(var s=0;s<this.length;s++){var l=this[s];if(t!==void 0)l.position(e,(t-a[e])/u);else if(n!==void 0)l.position(fKA(n,u,a))}else{var g=r.position();if(n=jT(g,u,a),e===void 0)return n;else return n[e]}else if(!o)return;return this},relativePosition:function(e,t){var r=this[0],i=this.cy(),u=Hi(e)?e:void 0,a=u!==void 0||t!==void 0&&tr(e),n=i.hasCompoundNodes();if(r&&r.isNode())if(a)for(var o=0;o<this.length;o++){var s=this[o],l=n?s.parent():null,g=l&&l.length>0,C=g;if(g)l=l[0];var B=C?l.position():{x:0,y:0};if(t!==void 0)s.position(e,t+B[e]);else if(u!==void 0)s.position({x:u.x+B.x,y:u.y+B.y})}else{var E=r.position(),d=n?r.parent():null,I=d&&d.length>0,h=I;if(I)d=d[0];var Q=h?d.position():{x:0,y:0};if(u={x:E.x-Q.x,y:E.y-Q.y},e===void 0)return u;else return u[e]}else if(!a)return;return this}};xC.modelPosition=xC.point=xC.position;xC.modelPositions=xC.points=xC.positions;xC.renderedPoint=xC.renderedPosition;xC.relativePoint=xC.relativePosition;Bpt=qKA;lw=R4={};R4.renderedBoundingBox=function(A){var e=this.boundingBox(A),t=this.cy(),r=t.zoom(),i=t.pan(),u=e.x1*r+i.x,a=e.x2*r+i.x,n=e.y1*r+i.y,o=e.y2*r+i.y;return{x1:u,x2:a,y1:n,y2:o,w:a-u,h:o-n}};R4.dirtyCompoundBoundsCache=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;return this.forEachUp(function(t){if(t.isParent()){var r=t._private;if(r.compoundBoundsClean=!1,r.bbCache=null,!A)t.emitAndNotify("bounds")}}),this};R4.updateCompoundBounds=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;if(!A&&e.batching())return this;function t(a){if(!a.isParent())return;var n=a._private,o=a.children(),s=a.pstyle("compound-sizing-wrt-labels").value==="include",l={width:{val:a.pstyle("min-width").pfValue,left:a.pstyle("min-width-bias-left"),right:a.pstyle("min-width-bias-right")},height:{val:a.pstyle("min-height").pfValue,top:a.pstyle("min-height-bias-top"),bottom:a.pstyle("min-height-bias-bottom")}},g=o.boundingBox({includeLabels:s,includeOverlays:!1,useCache:!1}),C=n.position;if(g.w===0||g.h===0)g={w:a.pstyle("width").pfValue,h:a.pstyle("height").pfValue},g.x1=C.x-g.w/2,g.x2=C.x+g.w/2,g.y1=C.y-g.h/2,g.y2=C.y+g.h/2;function B(F,v,S){var x=0,k=0,T=v+S;if(F>0&&T>0)x=v/T*F,k=S/T*F;return{biasDiff:x,biasComplementDiff:k}}function E(F,v,S,x){if(S.units==="%")switch(x){case"width":return F>0?S.pfValue*F:0;case"height":return v>0?S.pfValue*v:0;case"average":return F>0&&v>0?S.pfValue*(F+v)/2:0;case"min":return F>0&&v>0?F>v?S.pfValue*v:S.pfValue*F:0;case"max":return F>0&&v>0?F>v?S.pfValue*F:S.pfValue*v:0;default:return 0}else if(S.units==="px")return S.pfValue;else return 0}var d=l.width.left.value;if(l.width.left.units==="px"&&l.width.val>0)d=d*100/l.width.val;var I=l.width.right.value;if(l.width.right.units==="px"&&l.width.val>0)I=I*100/l.width.val;var h=l.height.top.value;if(l.height.top.units==="px"&&l.height.val>0)h=h*100/l.height.val;var Q=l.height.bottom.value;if(l.height.bottom.units==="px"&&l.height.val>0)Q=Q*100/l.height.val;var p=B(l.width.val-g.w,d,I),{biasDiff:m,biasComplementDiff:f}=p,D=B(l.height.val-g.h,h,Q),{biasDiff:w,biasComplementDiff:b}=D;n.autoPadding=E(g.w,g.h,a.pstyle("padding"),a.pstyle("padding-relative-to").value),n.autoWidth=Math.max(g.w,l.width.val),C.x=(-m+g.x1+g.x2+f)/2,n.autoHeight=Math.max(g.h,l.height.val),C.y=(-w+g.y1+g.y2+b)/2}for(var r=0;r<this.length;r++){var i=this[r],u=i._private;if(!u.compoundBoundsClean||A){if(t(i),!e.batching())u.compoundBoundsClean=!0}}return this};_k={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},cHA=VKA(_k),CHA=o0(_k);R4.boundingBox=function(A){var e,t=A===void 0||A.useCache===void 0||A.useCache===!0,r=gw(function(l){var g=l._private;return g.bbCache==null||g.styleDirty||g.bbCachePosKey!==jKA(l)},function(l){return l.id()});if(t&&this.length===1&&!r(this[0])){if(A===void 0)A=_k;else A=CHA(A);e=gHA(this[0],A)}else{e=ms(),A=A||_k;var i=CHA(A),u=this,a=u.cy(),n=a.styleEnabled();if(this.edges().forEach(r),this.nodes().forEach(r),n)this.recalculateRenderedStyle(t);this.updateCompoundBounds(!t);for(var o=0;o<u.length;o++){var s=u[o];if(r(s))s.dirtyBoundingBoxCache();Q4(e,gHA(s,i))}}return e.x1=sc(e.x1),e.y1=sc(e.y1),e.x2=sc(e.x2),e.y2=sc(e.y2),e.w=sc(e.x2-e.x1),e.h=sc(e.y2-e.y1),e};R4.dirtyBoundingBoxCache=function(){for(var A=0;A<this.length;A++){var e=this[A]._private;e.bbCache=null,e.bbCachePosKey=null,e.bodyBounds=null,e.overlayBounds=null,e.labelBounds.all=null,e.labelBounds.source=null,e.labelBounds.target=null,e.labelBounds.main=null,e.labelBounds.sourceRot=null,e.labelBounds.targetRot=null,e.labelBounds.mainRot=null,e.arrowBounds.source=null,e.arrowBounds.target=null,e.arrowBounds["mid-source"]=null,e.arrowBounds["mid-target"]=null}return this.emitAndNotify("bounds"),this};R4.boundingBoxAt=function(A){var e=this.nodes(),t=this.cy(),r=t.hasCompoundNodes(),i=t.collection();if(r)i=e.filter(function(s){return s.isParent()}),e=e.not(i);if(Hi(A)){var u=A;A=function(){return u}}var a=function(l,g){return l._private.bbAtOldPos=A(l,g)},n=function(l){return l._private.bbAtOldPos};if(t.startBatch(),e.forEach(a).silentPositions(A),r)i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0);var o=VQt(this.boundingBox({useCache:!1}));if(e.silentPositions(n),r)i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0);return t.endBatch(),o};lw.boundingbox=lw.bb=lw.boundingBox;lw.renderedBoundingbox=lw.renderedBoundingBox;hpt=R4;Nk=tF={};XKA({name:"width"});XKA({name:"height"});tF.padding=function(){var A=this[0],e=A._private;if(A.isParent())if(A.updateCompoundBounds(),e.autoPadding!==void 0)return e.autoPadding;else return A.pstyle("padding").pfValue;else return A.pstyle("padding").pfValue};tF.paddedHeight=function(){var A=this[0];return A.height()+2*A.padding()};tF.paddedWidth=function(){var A=this[0];return A.width()+2*A.padding()};Qpt=tF,BHA={controlPoints:{get:Dpt,mult:!0},segmentPoints:{get:ypt,mult:!0},sourceEndpoint:{get:wpt},targetEndpoint:{get:bpt},midpoint:{get:vpt}},Fpt=Object.keys(BHA).reduce(function(A,e){var t=BHA[e],r=kpt(e);if(A[e]=function(){return ppt(this,t.get)},t.mult)A[r]=function(){return mpt(this,t.get)};else A[r]=function(){return fpt(this,t.get)};return A},{}),xpt=Cr({},Bpt,hpt,Qpt,Fpt);/*!
|
||
Event object based on jQuery events, MIT license
|
||
|
||
https://jquery.org/license/
|
||
https://tldrlegal.com/license/mit-license
|
||
https://github.com/jquery/jquery/blob/master/src/event.js
|
||
*/$KA.prototype={instanceString:function(){return"event"},recycle:function(e,t){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=kk,e!=null&&e.preventDefault)this.type=e.type,this.isDefaultPrevented=e.defaultPrevented?IT:kk;else if(e!=null&&e.type)t=e;else this.type=e;if(t!=null)this.originalEvent=t.originalEvent,this.type=t.type!=null?t.type:this.type,this.cy=t.cy,this.target=t.target,this.position=t.position,this.renderedPosition=t.renderedPosition,this.namespace=t.namespace,this.layout=t.layout;if(this.cy!=null&&this.position!=null&&this.renderedPosition==null){var r=this.position,i=this.cy.zoom(),u=this.cy.pan();this.renderedPosition={x:r.x*i+u.x,y:r.y*i+u.y}}this.timeStamp=e&&e.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=IT;var e=this.originalEvent;if(!e)return;if(e.preventDefault)e.preventDefault()},stopPropagation:function(){this.isPropagationStopped=IT;var e=this.originalEvent;if(!e)return;if(e.stopPropagation)e.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=IT,this.stopPropagation()},isDefaultPrevented:kk,isPropagationStopped:kk,isImmediatePropagationStopped:kk};AJA=/^([^.]+)(\.(?:[^.]+))?$/,eJA={qualifierCompare:function(e,t){return e===t},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(e){return e},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},EHA=Object.keys(eJA),Lpt={};x4=iY.prototype;x4.on=x4.addListener=function(A,e,t,r,i){return tJA(this,function(u,a,n,o,s,l,g){if(Na(l))u.listeners.push({event:a,callback:l,type:n,namespace:o,qualifier:s,conf:g})},A,e,t,r,i),this};x4.one=function(A,e,t,r){return this.on(A,e,t,r,{one:!0})};x4.removeListener=x4.off=function(A,e,t,r){var i=this;if(this.emitting!==0)this.listeners=QQt(this.listeners);var u=this.listeners,a=function(s){var l=u[s];tJA(i,function(g,C,B,E,d,I){if((l.type===B||A==="*")&&(!E&&l.namespace!==".*"||l.namespace===E)&&(!d||g.qualifierCompare(l.qualifier,d))&&(!I||l.callback===I))return u.splice(s,1),!1},A,e,t,r)};for(var n=u.length-1;n>=0;n--)a(n);return this};x4.removeAllListeners=function(){return this.removeListener("*")};x4.emit=x4.trigger=function(A,e,t){var r=this.listeners,i=r.length;if(this.emitting++,!Mu(e))e=[e];return Rpt(this,function(u,a){if(t!=null)r=[{event:a.event,type:a.type,namespace:a.namespace,callback:t}],i=r.length;var n=function(){var l=r[o];if(l.type===a.type&&(!l.namespace||l.namespace===a.namespace||l.namespace===Spt)&&u.eventMatches(u.context,l,a)){var g=[a];if(e!=null)fQt(g,e);if(u.beforeEmit(u.context,l,a),l.conf&&l.conf.one)u.listeners=u.listeners.filter(function(E){return E!==l});var C=u.callbackContext(u.context,l,a),B=l.callback.apply(C,g);if(u.afterEmit(u.context,l,a),B===!1)a.stopPropagation(),a.preventDefault()}};for(var o=0;o<i;o++)n();if(u.bubble(u.context)&&!a.isPropagationStopped())u.parent(u.context).emit(a,e)},A),this.emitting--,this};Npt={qualifierCompare:function(e,t){if(e==null||t==null)return e==null&&t==null;else return e.sameText(t)},eventMatches:function(e,t,r){var i=t.qualifier;if(i!=null)return e!==r.target&&Vk(r.target)&&i.matches(r.target);return!0},addEventFields:function(e,t){t.cy=e.cy(),t.target=e},callbackContext:function(e,t,r){return t.qualifier!=null?r.target:e},beforeEmit:function(e,t){if(t.conf&&t.conf.once)t.conf.onceCollection.removeListener(t.event,t.qualifier,t.callback)},bubble:function(){return!0},parent:function(e){return e.isChild()?e.parent():e.cy()}},rJA={createEmitter:function(){for(var e=0;e<this.length;e++){var t=this[e],r=t._private;if(!r.emitter)r.emitter=new iY(Npt,t)}return this},emitter:function(){return this._private.emitter},on:function(e,t,r){var i=hT(t);for(var u=0;u<this.length;u++){var a=this[u];a.emitter().on(e,i,r)}return this},removeListener:function(e,t,r){var i=hT(t);for(var u=0;u<this.length;u++){var a=this[u];a.emitter().removeListener(e,i,r)}return this},removeAllListeners:function(){for(var e=0;e<this.length;e++){var t=this[e];t.emitter().removeAllListeners()}return this},one:function(e,t,r){var i=hT(t);for(var u=0;u<this.length;u++){var a=this[u];a.emitter().one(e,i,r)}return this},once:function(e,t,r){var i=hT(t);for(var u=0;u<this.length;u++){var a=this[u];a.emitter().on(e,i,r,{once:!0,onceCollection:this})}},emit:function(e,t){for(var r=0;r<this.length;r++){var i=this[r];i.emitter().emit(e,t)}return this},emitAndNotify:function(e,t){if(this.length===0)return;return this.cy().notify(e,this),this.emit(e,t),this}};Eu.eventAliasesOn(rJA);iJA={nodes:function(e){return this.filter(function(t){return t.isNode()}).filter(e)},edges:function(e){return this.filter(function(t){return t.isEdge()}).filter(e)},byGroup:function(){var e=this.spawn(),t=this.spawn();for(var r=0;r<this.length;r++){var i=this[r];if(i.isNode())e.push(i);else t.push(i)}return{nodes:e,edges:t}},filter:function(e,t){if(e===void 0)return this;else if(tr(e)||Cg(e))return new k4(e).filter(this);else if(Na(e)){var r=this.spawn(),i=this;for(var u=0;u<i.length;u++){var a=i[u],n=t?e.apply(t,[a,u,i]):e(a,u,i);if(n)r.push(a)}return r}return this.spawn()},not:function(e){if(!e)return this;else{if(tr(e))e=this.filter(e);var t=this.spawn();for(var r=0;r<this.length;r++){var i=this[r],u=e.has(i);if(!u)t.push(i)}return t}},absoluteComplement:function(){var e=this.cy();return e.mutableElements().not(this)},intersect:function(e){if(tr(e)){var t=e;return this.filter(t)}var r=this.spawn(),i=this,u=e,a=this.length<e.length,n=a?i:u,o=a?u:i;for(var s=0;s<n.length;s++){var l=n[s];if(o.has(l))r.push(l)}return r},xor:function(e){var t=this._private.cy;if(tr(e))e=t.$(e);var r=this.spawn(),i=this,u=e,a=function(o,s){for(var l=0;l<o.length;l++){var g=o[l],C=g._private.data.id,B=s.hasElementWithId(C);if(!B)r.push(g)}};return a(i,u),a(u,i),r},diff:function(e){var t=this._private.cy;if(tr(e))e=t.$(e);var r=this.spawn(),i=this.spawn(),u=this.spawn(),a=this,n=e,o=function(l,g,C){for(var B=0;B<l.length;B++){var E=l[B],d=E._private.data.id,I=g.hasElementWithId(d);if(I)u.merge(E);else C.push(E)}};return o(a,n,r),o(n,a,i),{left:r,right:i,both:u}},add:function(e){var t=this._private.cy;if(!e)return this;if(tr(e)){var r=e;e=t.mutableElements().filter(r)}var i=this.spawnSelf();for(var u=0;u<e.length;u++){var a=e[u],n=!this.has(a);if(n)i.push(a)}return i},merge:function(e){var t=this._private,r=t.cy;if(!e)return this;if(e&&tr(e)){var i=e;e=r.mutableElements().filter(i)}var u=t.map;for(var a=0;a<e.length;a++){var n=e[a],o=n._private.data.id,s=!u.has(o);if(s){var l=this.length++;this[l]=n,u.set(o,{ele:n,index:l})}}return this},unmergeAt:function(e){var t=this[e],r=t.id(),i=this._private,u=i.map;this[e]=void 0,u.delete(r);var a=e===this.length-1;if(this.length>1&&!a){var n=this.length-1,o=this[n],s=o._private.data.id;this[n]=void 0,this[e]=o,u.set(s,{ele:o,index:e})}return this.length--,this},unmergeOne:function(e){e=e[0];var t=this._private,r=e._private.data.id,i=t.map,u=i.get(r);if(!u)return this;var a=u.index;return this.unmergeAt(a),this},unmerge:function(e){var t=this._private.cy;if(!e)return this;if(e&&tr(e)){var r=e;e=t.mutableElements().filter(r)}for(var i=0;i<e.length;i++)this.unmergeOne(e[i]);return this},unmergeBy:function(e){for(var t=this.length-1;t>=0;t--){var r=this[t];if(e(r))this.unmergeAt(t)}return this},map:function(e,t){var r=[],i=this;for(var u=0;u<i.length;u++){var a=i[u],n=t?e.apply(t,[a,u,i]):e(a,u,i);r.push(n)}return r},reduce:function(e,t){var r=t,i=this;for(var u=0;u<i.length;u++)r=e(r,i[u],u,i);return r},max:function(e,t){var r=-1/0,i,u=this;for(var a=0;a<u.length;a++){var n=u[a],o=t?e.apply(t,[n,a,u]):e(n,a,u);if(o>r)r=o,i=n}return{value:r,ele:i}},min:function(e,t){var r=1/0,i,u=this;for(var a=0;a<u.length;a++){var n=u[a],o=t?e.apply(t,[n,a,u]):e(n,a,u);if(o<r)r=o,i=n}return{value:r,ele:i}}},Xi=iJA;Xi.u=Xi["|"]=Xi["+"]=Xi.union=Xi.or=Xi.add;Xi["\\"]=Xi["!"]=Xi["-"]=Xi.difference=Xi.relativeComplement=Xi.subtract=Xi.not;Xi.n=Xi["&"]=Xi["."]=Xi.and=Xi.intersection=Xi.intersect;Xi["^"]=Xi["(+)"]=Xi["(-)"]=Xi.symmetricDifference=Xi.symdiff=Xi.xor;Xi.fnFilter=Xi.filterFn=Xi.stdFilter=Xi.filter;Xi.complement=Xi.abscomp=Xi.absoluteComplement;Gpt={isNode:function(){return this.group()==="nodes"},isEdge:function(){return this.group()==="edges"},isLoop:function(){return this.isEdge()&&this.source()[0]===this.target()[0]},isSimple:function(){return this.isEdge()&&this.source()[0]!==this.target()[0]},group:function(){var e=this[0];if(e)return e._private.group}},KT={forEach:function(e,t){if(Na(e)){var r=this.length;for(var i=0;i<r;i++){var u=this[i],a=t?e.apply(t,[u,i,this]):e(u,i,this);if(a===!1)break}}return this},toArray:function(){var e=[];for(var t=0;t<this.length;t++)e.push(this[t]);return e},slice:function(e,t){var r=[],i=this.length;if(t==null)t=i;if(e==null)e=0;if(e<0)e=i+e;if(t<0)t=i+t;for(var u=e;u>=0&&u<t&&u<i;u++)r.push(this[u]);return this.spawn(r)},size:function(){return this.length},eq:function(e){return this[e]||this.spawn()},first:function(){return this[0]||this.spawn()},last:function(){return this[this.length-1]||this.spawn()},empty:function(){return this.length===0},nonempty:function(){return!this.empty()},sort:function(e){if(!Na(e))return this;var t=this.toArray().sort(e);return this.spawn(t)},sortByZIndex:function(){return this.sort(uJA)},zDepth:function(){var e=this[0];if(!e)return;var t=e._private,r=t.group;if(r==="nodes"){var i=t.data.parent?e.parents().size():0;if(!e.isParent())return KaA-1;return i}else{var{source:u,target:a}=t,n=u.zDepth(),o=a.zDepth();return Math.max(n,o,0)}}};KT.each=KT.forEach;Upt();Mpt=o0({nodeDimensionsIncludeLabels:!1}),vT={layoutDimensions:function(e){e=Mpt(e);var t;if(!this.takesUpSpace())t={w:0,h:0};else if(e.nodeDimensionsIncludeLabels){var r=this.boundingBox();t={w:r.w,h:r.h}}else t={w:this.outerWidth(),h:this.outerHeight()};if(t.w===0||t.h===0)t.w=t.h=1;return t},layoutPositions:function(e,t,r){var i=this.nodes().filter(function(f){return!f.isParent()}),u=this.cy(),a=t.eles,n=function(D){return D.id()},o=gw(r,n);e.emit({type:"layoutstart",layout:e}),e.animations=[];var s=function(D,w,b){var F={x:w.x1+w.w/2,y:w.y1+w.h/2},v={x:(b.x-F.x)*D,y:(b.y-F.y)*D};return{x:F.x+v.x,y:F.y+v.y}},l=t.spacingFactor&&t.spacingFactor!==1,g=function(){if(!l)return null;var D=ms();for(var w=0;w<i.length;w++){var b=i[w],F=o(b,w);DKA(D,F.x,F.y)}return D},C=g(),B=gw(function(f,D){var w=o(f,D);if(l){var b=Math.abs(t.spacingFactor);w=s(b,C,w)}if(t.transform!=null)w=t.transform(f,w);return w},n);if(t.animate){for(var E=0;E<i.length;E++){var d=i[E],I=B(d,E),h=t.animateFilter==null||t.animateFilter(d,E);if(h){var Q=d.animation({position:I,duration:t.animationDuration,easing:t.animationEasing});e.animations.push(Q)}else d.position(I)}if(t.fit){var p=u.animation({fit:{boundingBox:a.boundingBoxAt(B),padding:t.padding},duration:t.animationDuration,easing:t.animationEasing});e.animations.push(p)}else if(t.zoom!==void 0&&t.pan!==void 0){var m=u.animation({zoom:t.zoom,pan:t.pan,duration:t.animationDuration,easing:t.animationEasing});e.animations.push(m)}e.animations.forEach(function(f){return f.play()}),e.one("layoutready",t.ready),e.emit({type:"layoutready",layout:e}),Iw.all(e.animations.map(function(f){return f.promise()})).then(function(){e.one("layoutstop",t.stop),e.emit({type:"layoutstop",layout:e})})}else{if(i.positions(B),t.fit)u.fit(t.eles,t.padding);if(t.zoom!=null)u.zoom(t.zoom);if(t.pan)u.pan(t.pan);e.one("layoutready",t.ready),e.emit({type:"layoutready",layout:e}),e.one("layoutstop",t.stop),e.emit({type:"layoutstop",layout:e})}return this},layout:function(e){var t=this.cy();return t.makeLayout(Cr({},e,{eles:this}))}};vT.createLayout=vT.makeLayout=vT.layout;a0={recalculateRenderedStyle:function(e){var t=this.cy(),r=t.renderer(),i=t.styleEnabled();if(r&&i)r.recalculateRenderedStyle(this,e);return this},dirtyStyleCache:function(){var e=this.cy(),t=function(u){return u._private.styleCache=null};if(e.hasCompoundNodes()){var r=this.spawnSelf().merge(this.descendants()).merge(this.parents());r.merge(r.connectedEdges()),r.forEach(t)}else this.forEach(function(i){t(i),i.connectedEdges().forEach(t)});return this},updateStyle:function(e){var t=this._private.cy;if(!t.styleEnabled())return this;if(t.batching()){var r=t._private.batchStyleEles;return r.merge(this),this}var i=t.hasCompoundNodes(),u=this;if(e=e||e===void 0?!0:!1,i)u=this.spawnSelf().merge(this.descendants()).merge(this.parents());var a=u;if(e)a.emitAndNotify("style");else a.emit("style");return u.forEach(function(n){return n._private.styleDirty=!0}),this},cleanStyle:function(){var e=this.cy();if(!e.styleEnabled())return;for(var t=0;t<this.length;t++){var r=this[t];if(r._private.styleDirty)r._private.styleDirty=!1,e.style().apply(r)}},parsedStyle:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this[0],i=r.cy();if(!i.styleEnabled())return;if(r){if(r._private.styleDirty)r._private.styleDirty=!1,i.style().apply(r);var u=r._private.style[e];if(u!=null)return u;else if(t)return i.style().getDefaultProperty(e);else return null}},numericStyle:function(e){var t=this[0];if(!t.cy().styleEnabled())return;if(t){var r=t.pstyle(e);return r.pfValue!==void 0?r.pfValue:r.value}},numericStyleUnits:function(e){var t=this[0];if(!t.cy().styleEnabled())return;if(t)return t.pstyle(e).units},renderedStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var r=this[0];if(r)return t.style().getRenderedStyle(r,e)},style:function(e,t){var r=this.cy();if(!r.styleEnabled())return this;var i=!1,u=r.style();if(Hi(e)){var a=e;u.applyBypass(this,a,i),this.emitAndNotify("style")}else if(tr(e))if(t===void 0){var n=this[0];if(n)return u.getStylePropertyValue(n,e);else return}else u.applyBypass(this,e,t,i),this.emitAndNotify("style");else if(e===void 0){var o=this[0];if(o)return u.getRawStyle(o);else return}return this},removeStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var r=!1,i=t.style(),u=this;if(e===void 0)for(var a=0;a<u.length;a++){var n=u[a];i.removeAllBypasses(n,r)}else{e=e.split(/\s+/);for(var o=0;o<u.length;o++){var s=u[o];i.removeBypasses(s,e,r)}}return this.emitAndNotify("style"),this},show:function(){return this.css("display","element"),this},hide:function(){return this.css("display","none"),this},effectiveOpacity:function(){var e=this.cy();if(!e.styleEnabled())return 1;var t=e.hasCompoundNodes(),r=this[0];if(r){var i=r._private,u=r.pstyle("opacity").value;if(!t)return u;var a=!i.data.parent?null:r.parents();if(a)for(var n=0;n<a.length;n++){var o=a[n],s=o.pstyle("opacity").value;u=s*u}return u}},transparent:function(){var e=this.cy();if(!e.styleEnabled())return!1;var t=this[0],r=t.cy().hasCompoundNodes();if(t)if(!r)return t.pstyle("opacity").value===0;else return t.effectiveOpacity()===0},backgrounding:function(){var e=this.cy();if(!e.styleEnabled())return!1;var t=this[0];return t._private.backgrounding?!0:!1}};hw=uY("eleTakesUpSpace",function(A){return A.pstyle("display").value==="element"&&A.width()!==0&&(A.isNode()?A.height()!==0:!0)});a0.takesUpSpace=aY("takesUpSpace",$aA({ok:hw}));Tpt=uY("eleInteractive",function(A){return A.pstyle("events").value==="yes"&&A.pstyle("visibility").value==="visible"&&hw(A)}),Ypt=uY("parentInteractive",function(A){return A.pstyle("visibility").value==="visible"&&hw(A)});a0.interactive=aY("interactive",$aA({ok:Tpt,parentOk:Ypt,edgeOkViaNode:hw}));a0.noninteractive=function(){var A=this[0];if(A)return!A.interactive()};Hpt=uY("eleVisible",function(A){return A.pstyle("visibility").value==="visible"&&A.pstyle("opacity").pfValue!==0&&hw(A)}),Kpt=hw;a0.visible=aY("visible",$aA({ok:Hpt,edgeOkViaNode:Kpt}));a0.hidden=function(){var A=this[0];if(A)return!A.visible()};a0.isBundledBezier=aY("isBundledBezier",function(){if(!this.cy().styleEnabled())return!1;return!this.removed()&&this.pstyle("curve-style").value==="bezier"&&this.takesUpSpace()});a0.bypass=a0.css=a0.style;a0.renderedCss=a0.renderedStyle;a0.removeBypass=a0.removeCss=a0.removeStyle;a0.pstyle=a0.parsedStyle;y4={};Qw({field:"locked",overrideField:function(e){return e.cy().autolock()?!0:void 0},on:"lock",off:"unlock"});Qw({field:"grabbable",overrideField:function(e){return e.cy().autoungrabify()||e.pannable()?!1:void 0},on:"grabify",off:"ungrabify"});Qw({field:"selected",ableField:"selectable",overrideAble:function(e){return e.cy().autounselectify()?!1:void 0},on:"select",off:"unselect"});Qw({field:"selectable",overrideField:function(e){return e.cy().autounselectify()?!1:void 0},on:"selectify",off:"unselectify"});y4.deselect=y4.unselect;y4.grabbed=function(){var A=this[0];if(A)return A._private.grabbed};Qw({field:"active",on:"activate",off:"unactivate"});Qw({field:"pannable",on:"panify",off:"unpanify"});y4.inactive=function(){var A=this[0];if(A)return!A._private.active};Y0={};Y0.clearTraversalCache=function(){for(var A=0;A<this.length;A++)this[A]._private.traversalCache=null};Cr(Y0,{roots:hHA({noIncomingEdges:!0}),leaves:hHA({noOutgoingEdges:!0}),outgoers:lc(QHA({outgoing:!0}),"outgoers"),successors:pHA({outgoing:!0}),incomers:lc(QHA({incoming:!0}),"incomers"),predecessors:pHA({})});Cr(Y0,{neighborhood:lc(function(A){var e=[],t=this.nodes();for(var r=0;r<t.length;r++){var i=t[r],u=i.connectedEdges();for(var a=0;a<u.length;a++){var n=u[a],o=n.source(),s=n.target(),l=i===o?s:o;if(l.length>0)e.push(l[0]);e.push(n[0])}}return this.spawn(e,!0).filter(A)},"neighborhood"),closedNeighborhood:function(e){return this.neighborhood().add(this).filter(e)},openNeighborhood:function(e){return this.neighborhood(e)}});Y0.neighbourhood=Y0.neighborhood;Y0.closedNeighbourhood=Y0.closedNeighborhood;Y0.openNeighbourhood=Y0.openNeighborhood;Cr(Y0,{source:lc(function(e){var t=this[0],r;if(t)r=t._private.source||t.cy().collection();return r&&e?r.filter(e):r},"source"),target:lc(function(e){var t=this[0],r;if(t)r=t._private.target||t.cy().collection();return r&&e?r.filter(e):r},"target"),sources:fHA({attr:"source"}),targets:fHA({attr:"target"})});Cr(Y0,{edgesWith:lc(mHA(),"edgesWith"),edgesTo:lc(mHA({thisIsSrc:!0}),"edgesTo")});Cr(Y0,{connectedEdges:lc(function(A){var e=[],t=this;for(var r=0;r<t.length;r++){var i=t[r];if(!i.isNode())continue;var u=i._private.edges;for(var a=0;a<u.length;a++){var n=u[a];e.push(n)}}return this.spawn(e,!0).filter(A)},"connectedEdges"),connectedNodes:lc(function(A){var e=[],t=this;for(var r=0;r<t.length;r++){var i=t[r];if(!i.isEdge())continue;e.push(i.source()[0]),e.push(i.target()[0])}return this.spawn(e,!0).filter(A)},"connectedNodes"),parallelEdges:lc(DHA(),"parallelEdges"),codirectedEdges:lc(DHA({codirected:!0}),"codirectedEdges")});Cr(Y0,{components:function(e){var t=this,r=t.cy(),i=r.collection(),u=e==null?t.nodes():e.nodes(),a=[];if(e!=null&&u.empty())u=e.sources();var n=function(l,g){i.merge(l),u.unmerge(l),g.merge(l)};if(u.empty())return t.spawn();var o=function(){var l=r.collection();a.push(l);var g=u[0];n(g,l),t.bfs({directed:!1,roots:g,visit:function(B){return n(B,l)}}),l.forEach(function(C){C.connectedEdges().forEach(function(B){if(t.has(B)&&l.has(B.source())&&l.has(B.target()))l.merge(B)})})};do o();while(u.length>0);return a},component:function(){var e=this[0];return e.cy().mutableElements().components(e)[0]}});Y0.componentsOf=Y0.components;Pu=VT.prototype=n0.prototype=Object.create(Array.prototype);Pu.instanceString=function(){return"collection"};Pu.spawn=function(A,e){return new n0(this.cy(),A,e)};Pu.spawnSelf=function(){return this.spawn(this)};Pu.cy=function(){return this._private.cy};Pu.renderer=function(){return this._private.cy.renderer()};Pu.element=function(){return this[0]};Pu.collection=function(){if(uKA(this))return this;else return new n0(this._private.cy,[this])};Pu.unique=function(){return new n0(this._private.cy,this,!0)};Pu.hasElementWithId=function(A){return A=""+A,this._private.map.has(A)};Pu.getElementById=function(A){A=""+A;var e=this._private.cy,t=this._private.map.get(A);return t?t.ele:new n0(e)};Pu.$id=Pu.getElementById;Pu.poolIndex=function(){var A=this._private.cy,e=A._private.elements,t=this[0]._private.data.id;return e._private.map.get(t).index};Pu.indexOf=function(A){var e=A[0]._private.data.id;return this._private.map.get(e).index};Pu.indexOfId=function(A){return A=""+A,this._private.map.get(A).index};Pu.json=function(A){var e=this.element(),t=this.cy();if(e==null&&A)return this;if(e==null)return;var r=e._private;if(Hi(A)){if(t.startBatch(),A.data){e.data(A.data);var i=r.data;if(e.isEdge()){var u=!1,a={},n=A.data.source,o=A.data.target;if(n!=null&&n!=i.source)a.source=""+n,u=!0;if(o!=null&&o!=i.target)a.target=""+o,u=!0;if(u)e=e.move(a)}else{var s="parent"in A.data,l=A.data.parent;if(s&&(l!=null||i.parent!=null)&&l!=i.parent){if(l===void 0)l=null;if(l!=null)l=""+l;e=e.move({parent:l})}}}if(A.position)e.position(A.position);var g=function(d,I,h){var Q=A[d];if(Q!=null&&Q!==r[d])if(Q)e[I]();else e[h]()};if(g("removed","remove","restore"),g("selected","select","unselect"),g("selectable","selectify","unselectify"),g("locked","lock","unlock"),g("grabbable","grabify","ungrabify"),g("pannable","panify","unpanify"),A.classes!=null)e.classes(A.classes);return t.endBatch(),this}else if(A===void 0){var C={data:RE(r.data),position:RE(r.position),group:r.group,removed:r.removed,selected:r.selected,selectable:r.selectable,locked:r.locked,grabbable:r.grabbable,pannable:r.pannable,classes:null};C.classes="";var B=0;return r.classes.forEach(function(E){return C.classes+=B++===0?E:" "+E}),C}};Pu.jsons=function(){var A=[];for(var e=0;e<this.length;e++){var t=this[e],r=t.json();A.push(r)}return A};Pu.clone=function(){var A=this.cy(),e=[];for(var t=0;t<this.length;t++){var r=this[t],i=r.json(),u=new VT(A,i,!1);e.push(u)}return new n0(A,e)};Pu.copy=Pu.clone;Pu.restore=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,t=this,r=t.cy(),i=r._private,u=[],a=[],n;for(var o=0,s=t.length;o<s;o++){var l=t[o];if(e&&!l.removed())continue;if(l.isNode())u.push(l);else a.push(l)}n=u.concat(a);var g,C=function(){n.splice(g,1),g--};for(g=0;g<n.length;g++){var B=n[g],E=B._private,d=E.data;if(B.clearTraversalCache(),!e&&!E.removed);else if(d.id===void 0)d.id=QKA();else if(Qt(d.id))d.id=""+d.id;else if(w4(d.id)||!tr(d.id)){Qa("Can not create element with invalid string ID `"+d.id+"`"),C();continue}else if(r.hasElementWithId(d.id)){Qa("Can not create second element with ID `"+d.id+"`"),C();continue}var I=d.id;if(B.isNode()){var h=E.position;if(h.x==null)h.x=0;if(h.y==null)h.y=0}if(B.isEdge()){var Q=B,p=["source","target"],m=p.length,f=!1;for(var D=0;D<m;D++){var w=p[D],b=d[w];if(Qt(b))b=d[w]=""+d[w];if(b==null||b==="")Qa("Can not create edge `"+I+"` with unspecified "+w),f=!0;else if(!r.hasElementWithId(b))Qa("Can not create edge `"+I+"` with nonexistent "+w+" `"+b+"`"),f=!0}if(f){C();continue}var F=r.getElementById(d.source),v=r.getElementById(d.target);if(F.same(v))F._private.edges.push(Q);else F._private.edges.push(Q),v._private.edges.push(Q);Q._private.source=F,Q._private.target=v}if(E.map=new GI,E.map.set(I,{ele:B,index:0}),E.removed=!1,e)r.addToPool(B)}for(var S=0;S<u.length;S++){var x=u[S],k=x._private.data;if(Qt(k.parent))k.parent=""+k.parent;var T=k.parent,R=T!=null;if(R||x._private.parent){var L=x._private.parent?r.collection().merge(x._private.parent):r.getElementById(T);if(L.empty())k.parent=void 0;else if(L[0].removed())du("Node added with missing parent, reference to parent removed"),k.parent=void 0,x._private.parent=null;else{var M=!1,U=L;while(!U.empty()){if(x.same(U)){M=!0,k.parent=void 0;break}U=U.parent()}if(!M)L[0]._private.children.push(x),x._private.parent=L[0],i.hasCompoundNodes=!0}}}if(n.length>0){var Y=n.length===t.length?t:new n0(r,n);for(var H=0;H<Y.length;H++){var J=Y[H];if(J.isNode())continue;J.parallelEdges().clearTraversalCache(),J.source().clearTraversalCache(),J.target().clearTraversalCache()}var K;if(i.hasCompoundNodes)K=r.collection().merge(Y).merge(Y.connectedNodes()).merge(Y.parent());else K=Y;if(K.dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(A),A)Y.emitAndNotify("add");else if(e)Y.emit("add")}return t};Pu.removed=function(){var A=this[0];return A&&A._private.removed};Pu.inside=function(){var A=this[0];return A&&!A._private.removed};Pu.remove=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,t=this,r=[],i={},u=t._private.cy;function a(T){var R=T._private.edges;for(var L=0;L<R.length;L++)o(R[L])}function n(T){var R=T._private.children;for(var L=0;L<R.length;L++)o(R[L])}function o(T){var R=i[T.id()];if(e&&T.removed()||R)return;else i[T.id()]=!0;if(T.isNode())r.push(T),a(T),n(T);else r.unshift(T)}for(var s=0,l=t.length;s<l;s++){var g=t[s];o(g)}function C(T,R){var L=T._private.edges;b4(L,R),T.clearTraversalCache()}function B(T){T.clearTraversalCache()}var E=[];E.ids={};function d(T,R){R=R[0],T=T[0];var L=T._private.children,M=T.id();if(b4(L,R),R._private.parent=null,!E.ids[M])E.ids[M]=!0,E.push(T)}if(t.dirtyCompoundBoundsCache(),e)u.removeFromPool(r);for(var I=0;I<r.length;I++){var h=r[I];if(h.isEdge()){var Q=h.source()[0],p=h.target()[0];C(Q,h),C(p,h);var m=h.parallelEdges();for(var f=0;f<m.length;f++){var D=m[f];if(B(D),D.isBundledBezier())D.dirtyBoundingBoxCache()}}else{var w=h.parent();if(w.length!==0)d(w,h)}if(e)h._private.removed=!0}var b=u._private.elements;u._private.hasCompoundNodes=!1;for(var F=0;F<b.length;F++){var v=b[F];if(v.isParent()){u._private.hasCompoundNodes=!0;break}}var S=new n0(this.cy(),r);if(S.size()>0){if(A)S.emitAndNotify("remove");else if(e)S.emit("remove")}for(var x=0;x<E.length;x++){var k=E[x];if(!e||!k.removed())k.updateStyle()}return S};Pu.move=function(A){var e=this._private.cy,t=this,r=!1,i=!1,u=function(E){return E==null?E:""+E};if(A.source!==void 0||A.target!==void 0){var a=u(A.source),n=u(A.target),o=a!=null&&e.hasElementWithId(a),s=n!=null&&e.hasElementWithId(n);if(o||s)e.batch(function(){t.remove(r,i),t.emitAndNotify("moveout");for(var B=0;B<t.length;B++){var E=t[B],d=E._private.data;if(E.isEdge()){if(o)d.source=a;if(s)d.target=n}}t.restore(r,i)}),t.emitAndNotify("move")}else if(A.parent!==void 0){var l=u(A.parent),g=l===null||e.hasElementWithId(l);if(g){var C=l===null?void 0:l;e.batch(function(){var B=t.remove(r,i);B.emitAndNotify("moveout");for(var E=0;E<t.length;E++){var d=t[E],I=d._private.data;if(d.isNode())I.parent=C}B.restore(r,i)}),t.emitAndNotify("move")}}return this};[LKA,j1t,bT,D4,Cw,Cpt,rY,xpt,rJA,iJA,Gpt,KT,vT,a0,y4,Y0].forEach(function(A){Cr(Pu,A)});Jpt={add:function(e){var t,r=this;if(Cg(e)){var i=e;if(i._private.cy===r)t=i.restore();else{var u=[];for(var a=0;a<i.length;a++){var n=i[a];u.push(n.json())}t=new n0(r,u)}}else if(Mu(e)){var o=e;t=new n0(r,o)}else if(Hi(e)&&(Mu(e.nodes)||Mu(e.edges))){var s=e,l=[],g=["nodes","edges"];for(var C=0,B=g.length;C<B;C++){var E=g[C],d=s[E];if(Mu(d))for(var I=0,h=d.length;I<h;I++){var Q=Cr({group:E},d[I]);l.push(Q)}}t=new n0(r,l)}else{var p=e;t=new VT(r,p).collection()}return t},remove:function(e){if(Cg(e));else if(tr(e)){var t=e;e=this.$(t)}return e.remove()}};/*! Bezier curve function generator. Copyright Gaetan Renaudeau. MIT License: http://en.wikipedia.org/wiki/MIT_License *//*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */Ppt=function(){function A(r){return-r.tension*r.x-r.friction*r.v}function e(r,i,u){var a={x:r.x+u.dx*i,v:r.v+u.dv*i,tension:r.tension,friction:r.friction};return{dx:a.v,dv:A(a)}}function t(r,i){var u={dx:r.v,dv:A(r)},a=e(r,i*0.5,u),n=e(r,i*0.5,a),o=e(r,i,n),s=0.16666666666666666*(u.dx+2*(a.dx+n.dx)+o.dx),l=0.16666666666666666*(u.dv+2*(a.dv+n.dv)+o.dv);return r.x=r.x+s*i,r.v=r.v+l*i,r}return function r(i,u,a){var n={x:-1,v:0,tension:null,friction:null},o=[0],s=0,l=0.0001,g=0.016,C,B,E;if(i=parseFloat(i)||500,u=parseFloat(u)||20,a=a||null,n.tension=i,n.friction=u,C=a!==null,C)s=r(i,u),B=s/a*g;else B=g;for(;;)if(E=t(E||n,B),o.push(1+E.x),s+=16,!(Math.abs(E.x)>l&&Math.abs(E.v)>l))break;return!C?s:function(d){return o[d*(o.length-1)|0]}}}(),kT={linear:function(e,t,r){return e+(t-e)*r},ease:Ou(0.25,0.1,0.25,1),"ease-in":Ou(0.42,0,1,1),"ease-out":Ou(0,0,0.58,1),"ease-in-out":Ou(0.42,0,0.58,1),"ease-in-sine":Ou(0.47,0,0.745,0.715),"ease-out-sine":Ou(0.39,0.575,0.565,1),"ease-in-out-sine":Ou(0.445,0.05,0.55,0.95),"ease-in-quad":Ou(0.55,0.085,0.68,0.53),"ease-out-quad":Ou(0.25,0.46,0.45,0.94),"ease-in-out-quad":Ou(0.455,0.03,0.515,0.955),"ease-in-cubic":Ou(0.55,0.055,0.675,0.19),"ease-out-cubic":Ou(0.215,0.61,0.355,1),"ease-in-out-cubic":Ou(0.645,0.045,0.355,1),"ease-in-quart":Ou(0.895,0.03,0.685,0.22),"ease-out-quart":Ou(0.165,0.84,0.44,1),"ease-in-out-quart":Ou(0.77,0,0.175,1),"ease-in-quint":Ou(0.755,0.05,0.855,0.06),"ease-out-quint":Ou(0.23,1,0.32,1),"ease-in-out-quint":Ou(0.86,0,0.07,1),"ease-in-expo":Ou(0.95,0.05,0.795,0.035),"ease-out-expo":Ou(0.19,1,0.22,1),"ease-in-out-expo":Ou(1,0,0,1),"ease-in-circ":Ou(0.6,0.04,0.98,0.335),"ease-out-circ":Ou(0.075,0.82,0.165,1),"ease-in-out-circ":Ou(0.785,0.135,0.15,0.86),spring:function(e,t,r){if(r===0)return kT.linear;var i=Ppt(e,t,r);return function(u,a,n){return u+(a-u)*i(n)}},"cubic-bezier":Ou};qpt={animate:Eu.animate(),animation:Eu.animation(),animated:Eu.animated(),clearQueue:Eu.clearQueue(),delay:Eu.delay(),delayAnimation:Eu.delayAnimation(),stop:Eu.stop(),addToAnimationPool:function(e){var t=this;if(!t.styleEnabled())return;t._private.aniEles.merge(e)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var e=this;if(e._private.animationsRunning=!0,!e.styleEnabled())return;function t(){if(!e._private.animationsRunning)return;UT(function(u){bHA(u,e),t()})}var r=e.renderer();if(r&&r.beforeRender)r.beforeRender(function(u,a){bHA(a,e)},r.beforeRenderPriorities.animations);else t()}},zpt={qualifierCompare:function(e,t){if(e==null||t==null)return e==null&&t==null;else return e.sameText(t)},eventMatches:function(e,t,r){var i=t.qualifier;if(i!=null)return e!==r.target&&Vk(r.target)&&i.matches(r.target);return!0},addEventFields:function(e,t){t.cy=e,t.target=e},callbackContext:function(e,t,r){return t.qualifier!=null?r.target:e}},nJA={createEmitter:function(){var e=this._private;if(!e.emitter)e.emitter=new iY(zpt,this);return this},emitter:function(){return this._private.emitter},on:function(e,t,r){return this.emitter().on(e,QT(t),r),this},removeListener:function(e,t,r){return this.emitter().removeListener(e,QT(t),r),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(e,t,r){return this.emitter().one(e,QT(t),r),this},once:function(e,t,r){return this.emitter().one(e,QT(t),r),this},emit:function(e,t){return this.emitter().emit(e,t),this},emitAndNotify:function(e,t){return this.emit(e),this.notify(e,t),this}};Eu.eventAliasesOn(nJA);baA={png:function(e){var t=this._private.renderer;return e=e||{},t.png(e)},jpg:function(e){var t=this._private.renderer;return e=e||{},e.bg=e.bg||"#fff",t.jpg(e)}};baA.jpeg=baA.jpg;FT={layout:function(e){var t=this;if(e==null){Qa("Layout options must be specified to make a layout");return}if(e.name==null){Qa("A `name` must be specified to make a layout");return}var r=e.name,i=t.extension("layout",r);if(i==null){Qa("No such layout `"+r+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var u;if(tr(e.eles))u=t.$(e.eles);else u=e.eles!=null?e.eles:t.$();var a=new i(Cr({},e,{cy:t,eles:u}));return a}};FT.createLayout=FT.makeLayout=FT.layout;Zpt={notify:function(e,t){var r=this._private;if(this.batching()){r.batchNotifications=r.batchNotifications||{};var i=r.batchNotifications[e]=r.batchNotifications[e]||this.collection();if(t!=null)i.merge(t);return}if(!r.notificationsEnabled)return;var u=this.renderer();if(this.destroyed()||!u)return;u.notify(e,t)},notifications:function(e){var t=this._private;if(e===void 0)return t.notificationsEnabled;else t.notificationsEnabled=e?!0:!1;return this},noNotifications:function(e){this.notifications(!1),e(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var e=this._private;if(e.batchCount==null)e.batchCount=0;if(e.batchCount===0)e.batchStyleEles=this.collection(),e.batchNotifications={};return e.batchCount++,this},endBatch:function(){var e=this._private;if(e.batchCount===0)return this;if(e.batchCount--,e.batchCount===0){e.batchStyleEles.updateStyle();var t=this.renderer();Object.keys(e.batchNotifications).forEach(function(r){var i=e.batchNotifications[r];if(i.empty())t.notify(r);else t.notify(r,i)})}return this},batch:function(e){return this.startBatch(),e(),this.endBatch(),this},batchData:function(e){var t=this;return this.batch(function(){var r=Object.keys(e);for(var i=0;i<r.length;i++){var u=r[i],a=e[u],n=t.getElementById(u);n.data(a)}})}},Vpt=o0({hideEdgesOnViewport:!1,textureOnViewport:!1,motionBlur:!1,motionBlurOpacity:0.05,pixelRatio:void 0,desktopTapThreshold:4,touchTapThreshold:8,wheelSensitivity:1,debug:!1,showFps:!1,webgl:!1,webglDebug:!1,webglDebugShowAtlases:!1,webglTexSize:2048,webglTexRows:36,webglTexRowsNodes:18,webglBatchSize:2048,webglTexPerBatch:14,webglBgColor:[255,255,255]}),vaA={renderTo:function(e,t,r,i){var u=this._private.renderer;return u.renderTo(e,t,r,i),this},renderer:function(){return this._private.renderer},forceRender:function(){return this.notify("draw"),this},resize:function(){return this.invalidateSize(),this.emitAndNotify("resize"),this},initRenderer:function(e){var t=this,r=t.extension("renderer",e.name);if(r==null){Qa("Can not initialise: No such renderer `".concat(e.name,"` found. Did you forget to import it and `cytoscape.use()` it?"));return}if(e.wheelSensitivity!==void 0)du("You have set a custom wheel sensitivity. This will make your app zoom unnaturally when using mainstream mice. You should change this value from the default only if you can guarantee that all your users will use the same hardware and OS configuration as your current machine.");var i=Vpt(e);i.cy=t,t._private.renderer=new r(i),this.notify("init")},destroyRenderer:function(){var e=this;e.notify("destroy");var t=e.container();if(t){t._cyreg=null;while(t.childNodes.length>0)t.removeChild(t.childNodes[0])}e._private.renderer=null,e.mutableElements().forEach(function(r){var i=r._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},onRender:function(e){return this.on("render",e)},offRender:function(e){return this.off("render",e)}};vaA.invalidateDimensions=vaA.resize;xT={collection:function(e,t){if(tr(e))return this.$(e);else if(Cg(e))return e.collection();else if(Mu(e)){if(!t)t={};return new n0(this,e,t.unique,t.removed)}return new n0(this)},nodes:function(e){var t=this.$(function(r){return r.isNode()});if(e)return t.filter(e);return t},edges:function(e){var t=this.$(function(r){return r.isEdge()});if(e)return t.filter(e);return t},$:function(e){var t=this._private.elements;if(e)return t.filter(e);else return t.spawnSelf()},mutableElements:function(){return this._private.elements}};xT.elements=xT.filter=xT.$;Go={};Go.apply=function(A){var e=this,t=e._private,r=t.cy,i=r.collection();for(var u=0;u<A.length;u++){var a=A[u],n=e.getContextMeta(a);if(n.empty)continue;var o=e.getContextStyle(n),s=e.applyContextStyle(n,o,a);if(a._private.appliedInitStyle)e.updateTransitions(a,s.diffProps);else a._private.appliedInitStyle=!0;var l=e.updateStyleHints(a);if(l)i.push(a)}return i};Go.getPropertiesDiff=function(A,e){var t=this,r=t._private.propDiffs=t._private.propDiffs||{},i=A+"-"+e,u=r[i];if(u)return u;var a=[],n={};for(var o=0;o<t.length;o++){var s=t[o],l=A[o]===Uk,g=e[o]===Uk,C=l!==g,B=s.mappedProperties.length>0;if(C||g&&B){var E=void 0;if(C&&B)E=s.properties;else if(C)E=s.properties;else if(B)E=s.mappedProperties;for(var d=0;d<E.length;d++){var I=E[d],h=I.name,Q=!1;for(var p=o+1;p<t.length;p++){var m=t[p],f=e[p]===Uk;if(!f)continue;if(Q=m.properties[I.name]!=null,Q)break}if(!n[h]&&!Q)n[h]=!0,a.push(h)}}}return r[i]=a,a};Go.getContextMeta=function(A){var e=this,t="",r,i=A._private.styleCxtKey||"";for(var u=0;u<e.length;u++){var a=e[u],n=a.selector&&a.selector.matches(A);if(n)t+=Uk;else t+=jpt}return r=e.getPropertiesDiff(i,t),A._private.styleCxtKey=t,{key:t,diffPropNames:r,empty:r.length===0}};Go.getContextStyle=function(A){var e=A.key,t=this,r=this._private.contextStyles=this._private.contextStyles||{};if(r[e])return r[e];var i={_private:{key:e}};for(var u=0;u<t.length;u++){var a=t[u],n=e[u]===Uk;if(!n)continue;for(var o=0;o<a.properties.length;o++){var s=a.properties[o];i[s.name]=s}}return r[e]=i,i};Go.applyContextStyle=function(A,e,t){var r=this,i=A.diffPropNames,u={},a=r.types;for(var n=0;n<i.length;n++){var o=i[n],s=e[o],l=t.pstyle(o);if(!s)if(!l)continue;else if(l.bypass)s={name:o,deleteBypassed:!0};else s={name:o,delete:!0};if(l===s)continue;if(s.mapped===a.fn&&l!=null&&l.mapping!=null&&l.mapping.value===s.value){var g=l.mapping,C=g.fnValue=s.value(t);if(C===g.prevFnValue)continue}var B=u[o]={prev:l};if(r.applyParsedProperty(t,s),B.next=t.pstyle(o),B.next&&B.next.bypass)B.next=B.next.bypassed}return{diffProps:u}};Go.updateStyleHints=function(A){var e=A._private,t=this,{propertyGroupNames:r,propertyGroupKeys:i}=t,u=function(aA,RA,wA){return t.getPropertiesHash(aA,RA,wA)},a=e.styleKey;if(A.removed())return!1;var n=e.group==="nodes",o=A._private.style;r=Object.keys(o);for(var s=0;s<i.length;s++){var l=i[s];e.styleKeys[l]=[$f,rw]}var g=function(aA,RA){return e.styleKeys[RA][0]=Yk(aA,e.styleKeys[RA][0])},C=function(aA,RA){return e.styleKeys[RA][1]=Hk(aA,e.styleKeys[RA][1])},B=function(aA,RA){g(aA,RA),C(aA,RA)},E=function(aA,RA){for(var wA=0;wA<aA.length;wA++){var JA=aA.charCodeAt(wA);g(JA,RA),C(JA,RA)}},d=2000000000,I=function(aA){return-128<aA&&aA<128&&Math.floor(aA)!==aA?d-(aA*1024|0):aA};for(var h=0;h<r.length;h++){var Q=r[h],p=o[Q];if(p==null)continue;var m=this.properties[Q],{type:f,groupKey:D}=m,w=void 0;if(m.hashOverride!=null)w=m.hashOverride(A,p);else if(p.pfValue!=null)w=p.pfValue;var b=m.enums==null?p.value:null,F=w!=null,v=b!=null,S=F||v,x=p.units;if(f.number&&S&&!f.multiple){var k=F?w:b;if(B(I(k),D),!F&&x!=null)E(x,D)}else E(p.strValue,D)}var T=[$f,rw];for(var R=0;R<i.length;R++){var L=i[R],M=e.styleKeys[L];T[0]=Yk(M[0],T[0]),T[1]=Hk(M[1],T[1])}e.styleKey=gQt(T[0],T[1]);var U=e.styleKeys;e.labelDimsKey=d4(U.labelDimensions);var Y=u(A,["label"],U.labelDimensions);if(e.labelKey=d4(Y),e.labelStyleKey=d4(gT(U.commonLabel,Y)),!n){var H=u(A,["source-label"],U.labelDimensions);e.sourceLabelKey=d4(H),e.sourceLabelStyleKey=d4(gT(U.commonLabel,H));var J=u(A,["target-label"],U.labelDimensions);e.targetLabelKey=d4(J),e.targetLabelStyleKey=d4(gT(U.commonLabel,J))}if(n){var K=e.styleKeys,{nodeBody:O,nodeBorder:_,nodeOutline:z,backgroundImage:j,compound:q,pie:CA,stripe:tA}=K,lA=[O,_,z,j,q,CA,tA].filter(function(gA){return gA!=null}).reduce(gT,[$f,rw]);e.nodeKey=d4(lA),e.hasPie=CA!=null&&CA[0]!==$f&&CA[1]!==rw,e.hasStripe=tA!=null&&tA[0]!==$f&&tA[1]!==rw}return a!==e.styleKey};Go.clearStyleHints=function(A){var e=A._private;e.styleCxtKey="",e.styleKeys={},e.styleKey=null,e.labelKey=null,e.labelStyleKey=null,e.sourceLabelKey=null,e.sourceLabelStyleKey=null,e.targetLabelKey=null,e.targetLabelStyleKey=null,e.nodeKey=null,e.hasPie=null,e.hasStripe=null};Go.applyParsedProperty=function(A,e){var t=this,r=e,i=A._private.style,u,a=t.types,n=t.properties[r.name].type,o=r.bypass,s=i[r.name],l=s&&s.bypass,g=A._private,C="mapping",B=function(O){if(O==null)return null;else if(O.pfValue!=null)return O.pfValue;else return O.value},E=function(){var O=B(s),_=B(r);t.checkTriggers(A,r.name,O,_)};if(e.name==="curve-style"&&A.isEdge()&&(e.value!=="bezier"&&A.isLoop()||e.value==="haystack"&&(A.source().isParent()||A.target().isParent())))r=e=this.parse(e.name,"bezier",o);if(r.delete)return i[r.name]=void 0,E(),!0;if(r.deleteBypassed)if(!s)return E(),!0;else if(s.bypass)return s.bypassed=void 0,E(),!0;else return!1;if(r.deleteBypass)if(!s)return E(),!0;else if(s.bypass)return i[r.name]=s.bypassed,E(),!0;else return!1;var d=function(){du("Do not assign mappings to elements without corresponding data (i.e. ele `"+A.id()+"` has no mapping for property `"+r.name+"` with data field `"+r.field+"`); try a `["+r.field+"]` selector to limit scope to elements with `"+r.field+"` defined")};switch(r.mapped){case a.mapData:{var I=r.field.split("."),h=g.data;for(var Q=0;Q<I.length&&h;Q++){var p=I[Q];h=h[p]}if(h==null)return d(),!1;var m;if(!Qt(h))return du("Do not use continuous mappers without specifying numeric data (i.e. `"+r.field+": "+h+"` for `"+A.id()+"` is non-numeric)"),!1;else{var f=r.fieldMax-r.fieldMin;if(f===0)m=0;else m=(h-r.fieldMin)/f}if(m<0)m=0;else if(m>1)m=1;if(n.color){var D=r.valueMin[0],w=r.valueMax[0],b=r.valueMin[1],F=r.valueMax[1],v=r.valueMin[2],S=r.valueMax[2],x=r.valueMin[3]==null?1:r.valueMin[3],k=r.valueMax[3]==null?1:r.valueMax[3],T=[Math.round(D+(w-D)*m),Math.round(b+(F-b)*m),Math.round(v+(S-v)*m),Math.round(x+(k-x)*m)];u={bypass:r.bypass,name:r.name,value:T,strValue:"rgb("+T[0]+", "+T[1]+", "+T[2]+")"}}else if(n.number){var R=r.valueMin+(r.valueMax-r.valueMin)*m;u=this.parse(r.name,R,r.bypass,C)}else return!1;if(!u)return d(),!1;u.mapping=r,r=u;break}case a.data:{var L=r.field.split("."),M=g.data;for(var U=0;U<L.length&&M;U++){var Y=L[U];M=M[Y]}if(M!=null)u=this.parse(r.name,M,r.bypass,C);if(!u)return d(),!1;u.mapping=r,r=u;break}case a.fn:{var H=r.value,J=r.fnValue!=null?r.fnValue:H(A);if(r.prevFnValue=J,J==null)return du("Custom function mappers may not return null (i.e. `"+r.name+"` for ele `"+A.id()+"` is null)"),!1;if(u=this.parse(r.name,J,r.bypass,C),!u)return du("Custom function mappers may not return invalid values for the property type (i.e. `"+r.name+"` for ele `"+A.id()+"` is invalid)"),!1;u.mapping=RE(r),r=u;break}case void 0:break;default:return!1}if(o){if(l)r.bypassed=s.bypassed;else r.bypassed=s;i[r.name]=r}else if(l)s.bypassed=r;else i[r.name]=r;return E(),!0};Go.cleanElements=function(A,e){for(var t=0;t<A.length;t++){var r=A[t];if(this.clearStyleHints(r),r.dirtyCompoundBoundsCache(),r.dirtyBoundingBoxCache(),!e)r._private.style={};else{var i=r._private.style,u=Object.keys(i);for(var a=0;a<u.length;a++){var n=u[a],o=i[n];if(o!=null)if(o.bypass)o.bypassed=null;else i[n]=null}}}};Go.update=function(){var A=this._private.cy,e=A.mutableElements();e.updateStyle()};Go.updateTransitions=function(A,e){var t=this,r=A._private,i=A.pstyle("transition-property").value,u=A.pstyle("transition-duration").pfValue,a=A.pstyle("transition-delay").pfValue;if(i.length>0&&u>0){var n={},o=!1;for(var s=0;s<i.length;s++){var l=i[s],g=A.pstyle(l),C=e[l];if(!C)continue;var B=C.prev,E=B,d=C.next!=null?C.next:g,I=!1,h=void 0,Q=0.000001;if(!E)continue;if(Qt(E.pfValue)&&Qt(d.pfValue))I=d.pfValue-E.pfValue,h=E.pfValue+Q*I;else if(Qt(E.value)&&Qt(d.value))I=d.value-E.value,h=E.value+Q*I;else if(Mu(E.value)&&Mu(d.value))I=E.value[0]!==d.value[0]||E.value[1]!==d.value[1]||E.value[2]!==d.value[2],h=E.strValue;if(I)n[l]=d.strValue,this.applyBypass(A,l,h),o=!0}if(!o)return;r.transitioning=!0,new Iw(function(p){if(a>0)A.delayAnimation(a).play().promise().then(p);else p()}).then(function(){return A.animation({style:n,duration:u,easing:A.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){t.removeBypasses(A,i),A.emitAndNotify("style"),r.transitioning=!1})}else if(r.transitioning)this.removeBypasses(A,i),A.emitAndNotify("style"),r.transitioning=!1};Go.checkTrigger=function(A,e,t,r,i,u){var a=this.properties[e],n=i(a);if(A.removed())return;if(n!=null&&n(t,r,A))u(a)};Go.checkZOrderTrigger=function(A,e,t,r){var i=this;this.checkTrigger(A,e,t,r,function(u){return u.triggersZOrder},function(){i._private.cy.notify("zorder",A)})};Go.checkBoundsTrigger=function(A,e,t,r){this.checkTrigger(A,e,t,r,function(i){return i.triggersBounds},function(i){A.dirtyCompoundBoundsCache(),A.dirtyBoundingBoxCache()})};Go.checkConnectedEdgesBoundsTrigger=function(A,e,t,r){this.checkTrigger(A,e,t,r,function(i){return i.triggersBoundsOfConnectedEdges},function(i){A.connectedEdges().forEach(function(u){u.dirtyBoundingBoxCache()})})};Go.checkParallelEdgesBoundsTrigger=function(A,e,t,r){this.checkTrigger(A,e,t,r,function(i){return i.triggersBoundsOfParallelEdges},function(i){A.parallelEdges().forEach(function(u){u.dirtyBoundingBoxCache()})})};Go.checkTriggers=function(A,e,t,r){A.dirtyStyleCache(),this.checkZOrderTrigger(A,e,t,r),this.checkBoundsTrigger(A,e,t,r),this.checkConnectedEdgesBoundsTrigger(A,e,t,r),this.checkParallelEdgesBoundsTrigger(A,e,t,r)};rF={};rF.applyBypass=function(A,e,t,r){var i=this,u=[],a=!0;if(e==="*"||e==="**"){if(t!==void 0)for(var n=0;n<i.properties.length;n++){var o=i.properties[n],s=o.name,l=this.parse(s,t,!0);if(l)u.push(l)}}else if(tr(e)){var g=this.parse(e,t,!0);if(g)u.push(g)}else if(Hi(e)){var C=e;r=t;var B=Object.keys(C);for(var E=0;E<B.length;E++){var d=B[E],I=C[d];if(I===void 0)I=C[zT(d)];if(I!==void 0){var h=this.parse(d,I,!0);if(h)u.push(h)}}}else return!1;if(u.length===0)return!1;var Q=!1;for(var p=0;p<A.length;p++){var m=A[p],f={},D=void 0;for(var w=0;w<u.length;w++){var b=u[w];if(r){var F=m.pstyle(b.name);D=f[b.name]={prev:F}}if(Q=this.applyParsedProperty(m,RE(b))||Q,r)D.next=m.pstyle(b.name)}if(Q)this.updateStyleHints(m);if(r)this.updateTransitions(m,f,a)}return Q};rF.overrideBypass=function(A,e,t){e=YaA(e);for(var r=0;r<A.length;r++){var i=A[r],u=i._private.style[e],a=this.properties[e].type,{color:n,mutiple:o}=a,s=!u?null:u.pfValue!=null?u.pfValue:u.value;if(!u||!u.bypass)this.applyBypass(i,e,t);else{if(u.value=t,u.pfValue!=null)u.pfValue=t;if(n)u.strValue="rgb("+t.join(",")+")";else if(o)u.strValue=t.join(" ");else u.strValue=""+t;this.updateStyleHints(i)}this.checkTriggers(i,e,s,t)}};rF.removeAllBypasses=function(A,e){return this.removeBypasses(A,this.propertyNames,e)};rF.removeBypasses=function(A,e,t){var r=!0;for(var i=0;i<A.length;i++){var u=A[i],a={};for(var n=0;n<e.length;n++){var o=e[n],s=this.properties[o],l=u.pstyle(s.name);if(!l||!l.bypass)continue;var g="",C=this.parse(o,g,!0),B=a[s.name]={prev:l};this.applyParsedProperty(u,C),B.next=u.pstyle(s.name)}if(this.updateStyleHints(u),t)this.updateTransitions(u,a,r)}};AnA={};AnA.getEmSizeInPixels=function(){var A=this.containerCss("font-size");if(A!=null)return parseFloat(A);else return 1};AnA.containerCss=function(A){var e=this._private.cy,t=e.container(),r=e.window();if(r&&t&&r.getComputedStyle)return r.getComputedStyle(t).getPropertyValue(A)};NE={};NE.getRenderedStyle=function(A,e){if(e)return this.getStylePropertyValue(A,e,!0);else return this.getRawStyle(A,!0)};NE.getRawStyle=function(A,e){var t=this;if(A=A[0],A){var r={};for(var i=0;i<t.properties.length;i++){var u=t.properties[i],a=t.getStylePropertyValue(A,u.name,e);if(a!=null)r[u.name]=a,r[zT(u.name)]=a}return r}};NE.getIndexedStyle=function(A,e,t,r){var i=A.pstyle(e)[t][r];return i!=null?i:A.cy().style().getDefaultProperty(e)[t][0]};NE.getStylePropertyValue=function(A,e,t){var r=this;if(A=A[0],A){var i=r.properties[e];if(i.alias)i=i.pointsTo;var u=i.type,a=A.pstyle(i.name);if(a){var{value:n,units:o,strValue:s}=a;if(t&&u.number&&n!=null&&Qt(n)){var l=A.cy().zoom(),g=function(I){return I*l},C=function(I,h){return g(I)+h},B=Mu(n),E=B?o.every(function(d){return d!=null}):o!=null;if(E)if(B)return n.map(function(d,I){return C(d,o[I])}).join(" ");else return C(n,o);else if(B)return n.map(function(d){return tr(d)?d:""+g(d)}).join(" ");else return""+g(n)}else if(s!=null)return s}return null}};NE.getAnimationStartStyle=function(A,e){var t={};for(var r=0;r<e.length;r++){var i=e[r],u=i.name,a=A.pstyle(u);if(a!==void 0)if(Hi(a))a=this.parse(u,a.strValue);else a=this.parse(u,a);if(a)t[u]=a}return t};NE.getPropsList=function(A){var e=this,t=[],r=A,i=e.properties;if(r){var u=Object.keys(r);for(var a=0;a<u.length;a++){var n=u[a],o=r[n],s=i[n]||i[YaA(n)],l=this.parse(s.name,o);if(l)t.push(l)}}return t};NE.getNonDefaultPropertiesHash=function(A,e,t){var r=t.slice(),i,u,a,n,o,s;for(o=0;o<e.length;o++)if(i=e[o],u=A.pstyle(i,!1),u==null)continue;else if(u.pfValue!=null)r[0]=Yk(n,r[0]),r[1]=Hk(n,r[1]);else{a=u.strValue;for(s=0;s<a.length;s++)n=a.charCodeAt(s),r[0]=Yk(n,r[0]),r[1]=Hk(n,r[1])}return r};NE.getPropertiesHash=NE.getNonDefaultPropertiesHash;nY={};nY.appendFromJson=function(A){var e=this;for(var t=0;t<A.length;t++){var r=A[t],i=r.selector,u=r.style||r.css,a=Object.keys(u);e.selector(i);for(var n=0;n<a.length;n++){var o=a[n],s=u[o];e.css(o,s)}}return e};nY.fromJson=function(A){var e=this;return e.resetToDefault(),e.appendFromJson(A),e};nY.json=function(){var A=[];for(var e=this.defaultLength;e<this.length;e++){var t=this[e],{selector:r,properties:i}=t,u={};for(var a=0;a<i.length;a++){var n=i[a];u[n.name]=n.strValue}A.push({selector:!r?"core":r.toString(),style:u})}return A};enA={};enA.appendFromString=function(A){var e=this,t=this,r=""+A,i,u,a;r=r.replace(/[/][*](\s|.)+?[*][/]/g,"");function n(){if(r.length>i.length)r=r.substr(i.length);else r=""}function o(){if(u.length>a.length)u=u.substr(a.length);else u=""}for(;;){var s=r.match(/^\s*$/);if(s)break;var l=r.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!l){du("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+r);break}i=l[0];var g=l[1];if(g!=="core"){var C=new k4(g);if(C.invalid){du("Skipping parsing of block: Invalid selector found in string stylesheet: "+g),n();continue}}var B=l[2],E=!1;u=B;var d=[];for(;;){var I=u.match(/^\s*$/);if(I)break;var h=u.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!h){du("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+B),E=!0;break}a=h[0];var Q=h[1],p=h[2],m=e.properties[Q];if(!m){du("Skipping property: Invalid property name in: "+a),o();continue}var f=t.parse(Q,p);if(!f){du("Skipping property: Invalid property definition in: "+a),o();continue}d.push({name:Q,val:p}),o()}if(E){n();break}t.selector(g);for(var D=0;D<d.length;D++){var w=d[D];t.css(w.name,w.val)}n()}return t};enA.fromString=function(A){var e=this;return e.resetToDefault(),e.appendFromString(A),e};Mn={};(function(){var A=ro,e=Oht,t=_ht,r=Wht,i=qht,u=function(gA){return"^"+gA+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},a=function(gA){var aA=A+"|\\w+|"+e+"|"+t+"|"+r+"|"+i;return"^"+gA+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+A+")\\s*\\,\\s*("+A+")\\s*,\\s*("+aA+")\\s*\\,\\s*("+aA+")\\)$"},n=[`^url\\s*\\(\\s*['"]?(.+?)['"]?\\s*\\)$`,"^(none)$","^(.+)$"];Mn.types={time:{number:!0,min:0,units:"s|ms",implicitUnits:"ms"},percent:{number:!0,min:0,max:100,units:"%",implicitUnits:"%"},percentages:{number:!0,min:0,max:100,units:"%",implicitUnits:"%",multiple:!0},zeroOneNumber:{number:!0,min:0,max:1,unitless:!0},zeroOneNumbers:{number:!0,min:0,max:1,unitless:!0,multiple:!0},nOneOneNumber:{number:!0,min:-1,max:1,unitless:!0},nonNegativeInt:{number:!0,min:0,integer:!0,unitless:!0},nonNegativeNumber:{number:!0,min:0,unitless:!0},position:{enums:["parent","origin"]},nodeSize:{number:!0,min:0,enums:["label"]},number:{number:!0,unitless:!0},numbers:{number:!0,unitless:!0,multiple:!0},positiveNumber:{number:!0,unitless:!0,min:0,strictMin:!0},size:{number:!0,min:0},bidirectionalSize:{number:!0},bidirectionalSizeMaybePercent:{number:!0,allowPercent:!0},bidirectionalSizes:{number:!0,multiple:!0},sizeMaybePercent:{number:!0,min:0,allowPercent:!0},axisDirection:{enums:["horizontal","leftward","rightward","vertical","upward","downward","auto"]},axisDirectionExplicit:{enums:["leftward","rightward","upward","downward"]},axisDirectionPrimary:{enums:["horizontal","vertical"]},paddingRelativeTo:{enums:["width","height","average","min","max"]},bgWH:{number:!0,min:0,allowPercent:!0,enums:["auto"],multiple:!0},bgPos:{number:!0,allowPercent:!0,multiple:!0},bgRelativeTo:{enums:["inner","include-padding"],multiple:!0},bgRepeat:{enums:["repeat","repeat-x","repeat-y","no-repeat"],multiple:!0},bgFit:{enums:["none","contain","cover"],multiple:!0},bgCrossOrigin:{enums:["anonymous","use-credentials","null"],multiple:!0},bgClip:{enums:["none","node"],multiple:!0},bgContainment:{enums:["inside","over"],multiple:!0},boxSelection:{enums:["contain","overlap","none"]},color:{color:!0},colors:{color:!0,multiple:!0},fill:{enums:["solid","linear-gradient","radial-gradient"]},bool:{enums:["yes","no"]},bools:{enums:["yes","no"],multiple:!0},lineStyle:{enums:["solid","dotted","dashed"]},lineCap:{enums:["butt","round","square"]},linePosition:{enums:["center","inside","outside"]},lineJoin:{enums:["round","bevel","miter"]},borderStyle:{enums:["solid","dotted","dashed","double"]},curveStyle:{enums:["bezier","unbundled-bezier","haystack","segments","straight","straight-triangle","taxi","round-segments","round-taxi"]},radiusType:{enums:["arc-radius","influence-radius"],multiple:!0},fontFamily:{regex:"^([\\w- \\\"]+(?:\\s*,\\s*[\\w- \\\"]+)*)$"},fontStyle:{enums:["italic","normal","oblique"]},fontWeight:{enums:["normal","bold","bolder","lighter","100","200","300","400","500","600","800","900",100,200,300,400,500,600,700,800,900]},textDecoration:{enums:["none","underline","overline","line-through"]},textTransform:{enums:["none","uppercase","lowercase"]},textWrap:{enums:["none","wrap","ellipsis"]},textOverflowWrap:{enums:["whitespace","anywhere"]},textBackgroundShape:{enums:["rectangle","roundrectangle","round-rectangle","circle"]},nodeShape:{enums:["rectangle","roundrectangle","round-rectangle","cutrectangle","cut-rectangle","bottomroundrectangle","bottom-round-rectangle","barrel","ellipse","triangle","round-triangle","square","pentagon","round-pentagon","hexagon","round-hexagon","concavehexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","tag","round-tag","star","diamond","round-diamond","vee","rhomboid","right-rhomboid","polygon"]},overlayShape:{enums:["roundrectangle","round-rectangle","ellipse"]},cornerRadius:{number:!0,min:0,units:"px|em",implicitUnits:"px",enums:["auto"]},compoundIncludeLabels:{enums:["include","exclude"]},arrowShape:{enums:["tee","triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","square","circle","diamond","chevron","none"]},arrowFill:{enums:["filled","hollow"]},arrowWidth:{number:!0,units:"%|px|em",implicitUnits:"px",enums:["match-line"]},display:{enums:["element","none"]},visibility:{enums:["hidden","visible"]},zCompoundDepth:{enums:["bottom","orphan","auto","top"]},zIndexCompare:{enums:["auto","manual"]},valign:{enums:["top","top-inside","center","bottom","bottom-inside"]},halign:{enums:["left","left-inside","center","right","right-inside"]},justification:{enums:["left","center","right","auto"]},textMetrics:{enums:["font","glyph"]},text:{string:!0},data:{mapping:!0,regex:u("data")},layoutData:{mapping:!0,regex:u("layoutData")},scratch:{mapping:!0,regex:u("scratch")},mapData:{mapping:!0,regex:a("mapData")},mapLayoutData:{mapping:!0,regex:a("mapLayoutData")},mapScratch:{mapping:!0,regex:a("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:n,singleRegexMatchValue:!0},urls:{regexes:n,singleRegexMatchValue:!0,multiple:!0},propList:{propList:!0},angle:{number:!0,units:"deg|rad",implicitUnits:"rad"},textRotation:{number:!0,units:"deg|rad",implicitUnits:"rad",enums:["none","autorotate"]},polygonPointList:{number:!0,multiple:!0,evenMultiple:!0,min:-1,max:1,unitless:!0},edgeDistances:{enums:["intersection","node-position","endpoints"]},edgeEndpoint:{number:!0,multiple:!0,units:"%|px|em|deg|rad",implicitUnits:"px",enums:["inside-to-node","outside-to-node","outside-to-node-or-label","outside-to-line","outside-to-line-or-label"],singleEnum:!0,validate:function(gA,aA){switch(gA.length){case 2:return aA[0]!=="deg"&&aA[0]!=="rad"&&aA[1]!=="deg"&&aA[1]!=="rad";case 1:return tr(gA[0])||aA[0]==="deg"||aA[0]==="rad";default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+A+")\\s*,\\s*("+A+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+A+")\\s*,\\s*("+A+")\\s*,\\s*("+A+")\\s*,\\s*("+A+")\\s*\\)$"],enums:["linear","ease","ease-in","ease-out","ease-in-out","ease-in-sine","ease-out-sine","ease-in-out-sine","ease-in-quad","ease-out-quad","ease-in-out-quad","ease-in-cubic","ease-out-cubic","ease-in-out-cubic","ease-in-quart","ease-out-quart","ease-in-out-quart","ease-in-quint","ease-out-quint","ease-in-out-quint","ease-in-expo","ease-out-expo","ease-in-out-expo","ease-in-circ","ease-out-circ","ease-in-out-circ"]},gradientDirection:{enums:["to-bottom","to-top","to-left","to-right","to-bottom-right","to-bottom-left","to-top-right","to-top-left","to-right-bottom","to-left-bottom","to-right-top","to-left-top"]},boundsExpansion:{number:!0,multiple:!0,min:0,validate:function(gA){var aA=gA.length;return aA===1||aA===2||aA===4}}};var o={zeroNonZero:function(gA,aA){if((gA==null||aA==null)&&gA!==aA)return!0;if(gA==0&&aA!=0)return!0;else if(gA!=0&&aA==0)return!0;else return!1},any:function(gA,aA){return gA!=aA},emptyNonEmpty:function(gA,aA){var RA=w4(gA),wA=w4(aA);return RA&&!wA||!RA&&wA}},s=Mn.types,l=[{name:"label",type:s.text,triggersBounds:o.any,triggersZOrder:o.emptyNonEmpty},{name:"text-rotation",type:s.textRotation,triggersBounds:o.any},{name:"text-margin-x",type:s.bidirectionalSize,triggersBounds:o.any},{name:"text-margin-y",type:s.bidirectionalSize,triggersBounds:o.any}],g=[{name:"source-label",type:s.text,triggersBounds:o.any},{name:"source-text-rotation",type:s.textRotation,triggersBounds:o.any},{name:"source-text-margin-x",type:s.bidirectionalSize,triggersBounds:o.any},{name:"source-text-margin-y",type:s.bidirectionalSize,triggersBounds:o.any},{name:"source-text-offset",type:s.size,triggersBounds:o.any}],C=[{name:"target-label",type:s.text,triggersBounds:o.any},{name:"target-text-rotation",type:s.textRotation,triggersBounds:o.any},{name:"target-text-margin-x",type:s.bidirectionalSize,triggersBounds:o.any},{name:"target-text-margin-y",type:s.bidirectionalSize,triggersBounds:o.any},{name:"target-text-offset",type:s.size,triggersBounds:o.any}],B=[{name:"font-family",type:s.fontFamily,triggersBounds:o.any},{name:"font-style",type:s.fontStyle,triggersBounds:o.any},{name:"font-weight",type:s.fontWeight,triggersBounds:o.any},{name:"font-size",type:s.size,triggersBounds:o.any},{name:"text-transform",type:s.textTransform,triggersBounds:o.any},{name:"text-wrap",type:s.textWrap,triggersBounds:o.any},{name:"text-overflow-wrap",type:s.textOverflowWrap,triggersBounds:o.any},{name:"text-max-width",type:s.size,triggersBounds:o.any},{name:"text-outline-width",type:s.size,triggersBounds:o.any},{name:"line-height",type:s.positiveNumber,triggersBounds:o.any}],E=[{name:"text-valign",type:s.valign,triggersBounds:o.any},{name:"text-halign",type:s.halign,triggersBounds:o.any},{name:"color",type:s.color},{name:"text-outline-color",type:s.color},{name:"text-outline-opacity",type:s.zeroOneNumber},{name:"text-background-color",type:s.color},{name:"text-background-opacity",type:s.zeroOneNumber},{name:"text-background-padding",type:s.size,triggersBounds:o.any},{name:"text-border-opacity",type:s.zeroOneNumber},{name:"text-border-color",type:s.color},{name:"text-border-width",type:s.size,triggersBounds:o.any},{name:"text-border-style",type:s.borderStyle,triggersBounds:o.any},{name:"text-background-shape",type:s.textBackgroundShape,triggersBounds:o.any},{name:"text-justification",type:s.justification},{name:"text-metrics",type:s.textMetrics},{name:"box-select-labels",type:s.bool,triggersBounds:o.any}],d=[{name:"events",type:s.bool,triggersZOrder:o.any},{name:"text-events",type:s.bool,triggersZOrder:o.any},{name:"box-selection",type:s.boxSelection,triggersZOrder:o.any}],I=[{name:"display",type:s.display,triggersZOrder:o.any,triggersBounds:o.any,triggersBoundsOfConnectedEdges:o.any,triggersBoundsOfParallelEdges:function(gA,aA,RA){if(gA===aA)return!1;return RA.pstyle("curve-style").value==="bezier"}},{name:"visibility",type:s.visibility,triggersZOrder:o.any},{name:"opacity",type:s.zeroOneNumber,triggersZOrder:o.zeroNonZero},{name:"text-opacity",type:s.zeroOneNumber},{name:"min-zoomed-font-size",type:s.size},{name:"z-compound-depth",type:s.zCompoundDepth,triggersZOrder:o.any},{name:"z-index-compare",type:s.zIndexCompare,triggersZOrder:o.any},{name:"z-index",type:s.number,triggersZOrder:o.any}],h=[{name:"overlay-padding",type:s.size,triggersBounds:o.any},{name:"overlay-color",type:s.color},{name:"overlay-opacity",type:s.zeroOneNumber,triggersBounds:o.zeroNonZero},{name:"overlay-shape",type:s.overlayShape,triggersBounds:o.any},{name:"overlay-corner-radius",type:s.cornerRadius}],Q=[{name:"underlay-padding",type:s.size,triggersBounds:o.any},{name:"underlay-color",type:s.color},{name:"underlay-opacity",type:s.zeroOneNumber,triggersBounds:o.zeroNonZero},{name:"underlay-shape",type:s.overlayShape,triggersBounds:o.any},{name:"underlay-corner-radius",type:s.cornerRadius}],p=[{name:"transition-property",type:s.propList},{name:"transition-duration",type:s.time},{name:"transition-delay",type:s.time},{name:"transition-timing-function",type:s.easing}],m=function(gA,aA){if(aA.value==="label")return-gA.poolIndex();else return aA.pfValue},f=[{name:"height",type:s.nodeSize,triggersBounds:o.any,hashOverride:m},{name:"width",type:s.nodeSize,triggersBounds:o.any,hashOverride:m},{name:"shape",type:s.nodeShape,triggersBounds:o.any},{name:"shape-polygon-points",type:s.polygonPointList,triggersBounds:o.any},{name:"corner-radius",type:s.cornerRadius},{name:"background-color",type:s.color},{name:"background-fill",type:s.fill},{name:"background-opacity",type:s.zeroOneNumber},{name:"background-blacken",type:s.nOneOneNumber},{name:"background-gradient-stop-colors",type:s.colors},{name:"background-gradient-stop-positions",type:s.percentages},{name:"background-gradient-direction",type:s.gradientDirection},{name:"padding",type:s.sizeMaybePercent,triggersBounds:o.any},{name:"padding-relative-to",type:s.paddingRelativeTo,triggersBounds:o.any},{name:"bounds-expansion",type:s.boundsExpansion,triggersBounds:o.any}],D=[{name:"border-color",type:s.color},{name:"border-opacity",type:s.zeroOneNumber},{name:"border-width",type:s.size,triggersBounds:o.any},{name:"border-style",type:s.borderStyle},{name:"border-cap",type:s.lineCap},{name:"border-join",type:s.lineJoin},{name:"border-dash-pattern",type:s.numbers},{name:"border-dash-offset",type:s.number},{name:"border-position",type:s.linePosition}],w=[{name:"outline-color",type:s.color},{name:"outline-opacity",type:s.zeroOneNumber},{name:"outline-width",type:s.size,triggersBounds:o.any},{name:"outline-style",type:s.borderStyle},{name:"outline-offset",type:s.size,triggersBounds:o.any}],b=[{name:"background-image",type:s.urls},{name:"background-image-crossorigin",type:s.bgCrossOrigin},{name:"background-image-opacity",type:s.zeroOneNumbers},{name:"background-image-containment",type:s.bgContainment},{name:"background-image-smoothing",type:s.bools},{name:"background-position-x",type:s.bgPos},{name:"background-position-y",type:s.bgPos},{name:"background-width-relative-to",type:s.bgRelativeTo},{name:"background-height-relative-to",type:s.bgRelativeTo},{name:"background-repeat",type:s.bgRepeat},{name:"background-fit",type:s.bgFit},{name:"background-clip",type:s.bgClip},{name:"background-width",type:s.bgWH},{name:"background-height",type:s.bgWH},{name:"background-offset-x",type:s.bgPos},{name:"background-offset-y",type:s.bgPos}],F=[{name:"position",type:s.position,triggersBounds:o.any},{name:"compound-sizing-wrt-labels",type:s.compoundIncludeLabels,triggersBounds:o.any},{name:"min-width",type:s.size,triggersBounds:o.any},{name:"min-width-bias-left",type:s.sizeMaybePercent,triggersBounds:o.any},{name:"min-width-bias-right",type:s.sizeMaybePercent,triggersBounds:o.any},{name:"min-height",type:s.size,triggersBounds:o.any},{name:"min-height-bias-top",type:s.sizeMaybePercent,triggersBounds:o.any},{name:"min-height-bias-bottom",type:s.sizeMaybePercent,triggersBounds:o.any}],v=[{name:"line-style",type:s.lineStyle},{name:"line-color",type:s.color},{name:"line-fill",type:s.fill},{name:"line-cap",type:s.lineCap},{name:"line-opacity",type:s.zeroOneNumber},{name:"line-dash-pattern",type:s.numbers},{name:"line-dash-offset",type:s.number},{name:"line-outline-width",type:s.size},{name:"line-outline-color",type:s.color},{name:"line-gradient-stop-colors",type:s.colors},{name:"line-gradient-stop-positions",type:s.percentages},{name:"curve-style",type:s.curveStyle,triggersBounds:o.any,triggersBoundsOfParallelEdges:function(gA,aA){if(gA===aA)return!1;return gA==="bezier"||aA==="bezier"}},{name:"haystack-radius",type:s.zeroOneNumber,triggersBounds:o.any},{name:"source-endpoint",type:s.edgeEndpoint,triggersBounds:o.any},{name:"target-endpoint",type:s.edgeEndpoint,triggersBounds:o.any},{name:"control-point-step-size",type:s.size,triggersBounds:o.any},{name:"control-point-distances",type:s.bidirectionalSizes,triggersBounds:o.any},{name:"control-point-weights",type:s.numbers,triggersBounds:o.any},{name:"segment-distances",type:s.bidirectionalSizes,triggersBounds:o.any},{name:"segment-weights",type:s.numbers,triggersBounds:o.any},{name:"segment-radii",type:s.numbers,triggersBounds:o.any},{name:"radius-type",type:s.radiusType,triggersBounds:o.any},{name:"taxi-turn",type:s.bidirectionalSizeMaybePercent,triggersBounds:o.any},{name:"taxi-turn-min-distance",type:s.size,triggersBounds:o.any},{name:"taxi-direction",type:s.axisDirection,triggersBounds:o.any},{name:"taxi-radius",type:s.number,triggersBounds:o.any},{name:"edge-distances",type:s.edgeDistances,triggersBounds:o.any},{name:"arrow-scale",type:s.positiveNumber,triggersBounds:o.any},{name:"loop-direction",type:s.angle,triggersBounds:o.any},{name:"loop-sweep",type:s.angle,triggersBounds:o.any},{name:"source-distance-from-node",type:s.size,triggersBounds:o.any},{name:"target-distance-from-node",type:s.size,triggersBounds:o.any}],S=[{name:"ghost",type:s.bool,triggersBounds:o.any},{name:"ghost-offset-x",type:s.bidirectionalSize,triggersBounds:o.any},{name:"ghost-offset-y",type:s.bidirectionalSize,triggersBounds:o.any},{name:"ghost-opacity",type:s.zeroOneNumber}],x=[{name:"selection-box-color",type:s.color},{name:"selection-box-opacity",type:s.zeroOneNumber},{name:"selection-box-border-color",type:s.color},{name:"selection-box-border-width",type:s.size},{name:"active-bg-color",type:s.color},{name:"active-bg-opacity",type:s.zeroOneNumber},{name:"active-bg-size",type:s.size},{name:"outside-texture-bg-color",type:s.color},{name:"outside-texture-bg-opacity",type:s.zeroOneNumber}],k=[];Mn.pieBackgroundN=16,k.push({name:"pie-size",type:s.sizeMaybePercent}),k.push({name:"pie-hole",type:s.sizeMaybePercent}),k.push({name:"pie-start-angle",type:s.angle});for(var T=1;T<=Mn.pieBackgroundN;T++)k.push({name:"pie-"+T+"-background-color",type:s.color}),k.push({name:"pie-"+T+"-background-size",type:s.percent}),k.push({name:"pie-"+T+"-background-opacity",type:s.zeroOneNumber});var R=[];Mn.stripeBackgroundN=16,R.push({name:"stripe-size",type:s.sizeMaybePercent}),R.push({name:"stripe-direction",type:s.axisDirectionPrimary});for(var L=1;L<=Mn.stripeBackgroundN;L++)R.push({name:"stripe-"+L+"-background-color",type:s.color}),R.push({name:"stripe-"+L+"-background-size",type:s.percent}),R.push({name:"stripe-"+L+"-background-opacity",type:s.zeroOneNumber});var M=[],U=Mn.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:s.arrowShape,triggersBounds:o.any},{name:"arrow-color",type:s.color},{name:"arrow-fill",type:s.arrowFill},{name:"arrow-width",type:s.arrowWidth}].forEach(function(lA){U.forEach(function(gA){var aA=gA+"-"+lA.name,{type:RA,triggersBounds:wA}=lA;M.push({name:aA,type:RA,triggersBounds:wA})})},{});var Y=Mn.properties=[].concat(d,p,I,h,Q,S,E,B,l,g,C,f,D,w,b,k,R,F,v,M,x),H=Mn.propertyGroups={behavior:d,transition:p,visibility:I,overlay:h,underlay:Q,ghost:S,commonLabel:E,labelDimensions:B,mainLabel:l,sourceLabel:g,targetLabel:C,nodeBody:f,nodeBorder:D,nodeOutline:w,backgroundImage:b,pie:k,stripe:R,compound:F,edgeLine:v,edgeArrow:M,core:x},J=Mn.propertyGroupNames={},K=Mn.propertyGroupKeys=Object.keys(H);K.forEach(function(lA){J[lA]=H[lA].map(function(gA){return gA.name}),H[lA].forEach(function(gA){return gA.groupKey=lA})});var O=Mn.aliases=[{name:"content",pointsTo:"label"},{name:"control-point-distance",pointsTo:"control-point-distances"},{name:"control-point-weight",pointsTo:"control-point-weights"},{name:"segment-distance",pointsTo:"segment-distances"},{name:"segment-weight",pointsTo:"segment-weights"},{name:"segment-radius",pointsTo:"segment-radii"},{name:"edge-text-rotation",pointsTo:"text-rotation"},{name:"padding-left",pointsTo:"padding"},{name:"padding-right",pointsTo:"padding"},{name:"padding-top",pointsTo:"padding"},{name:"padding-bottom",pointsTo:"padding"}];Mn.propertyNames=Y.map(function(lA){return lA.name});for(var _=0;_<Y.length;_++){var z=Y[_];Y[z.name]=z}for(var j=0;j<O.length;j++){var q=O[j],CA=Y[q.pointsTo],tA={name:q.name,alias:!0,pointsTo:CA};Y.push(tA),Y[q.name]=tA}})();Mn.getDefaultProperty=function(A){return this.getDefaultProperties()[A]};Mn.getDefaultProperties=function(){var A=this._private;if(A.defaultProperties!=null)return A.defaultProperties;var e=Cr({"selection-box-color":"#ddd","selection-box-opacity":0.65,"selection-box-border-color":"#aaa","selection-box-border-width":1,"active-bg-color":"black","active-bg-opacity":0.15,"active-bg-size":30,"outside-texture-bg-color":"#000","outside-texture-bg-opacity":0.125,events:"yes","text-events":"no","text-valign":"top","text-halign":"center","text-justification":"auto","line-height":1,color:"#000","box-selection":"contain","text-outline-color":"#000","text-outline-width":0,"text-outline-opacity":1,"text-opacity":1,"text-decoration":"none","text-transform":"none","text-wrap":"none","text-overflow-wrap":"whitespace","text-max-width":9999,"text-background-color":"#000","text-background-opacity":0,"text-background-shape":"rectangle","text-background-padding":0,"text-border-opacity":0,"text-border-width":0,"text-border-style":"solid","text-border-color":"#000","font-family":"Helvetica Neue, Helvetica, sans-serif","font-style":"normal","font-weight":"normal","font-size":16,"min-zoomed-font-size":0,"text-rotation":"none","source-text-rotation":"none","target-text-rotation":"none",visibility:"visible",display:"element",opacity:1,"z-compound-depth":"auto","z-index-compare":"auto","z-index":0,label:"","text-margin-x":0,"text-margin-y":0,"source-label":"","source-text-offset":0,"source-text-margin-x":0,"source-text-margin-y":0,"target-label":"","target-text-offset":0,"target-text-margin-x":0,"target-text-margin-y":0,"overlay-opacity":0,"overlay-color":"#000","overlay-padding":10,"overlay-shape":"round-rectangle","overlay-corner-radius":"auto","underlay-opacity":0,"underlay-color":"#000","underlay-padding":10,"underlay-shape":"round-rectangle","underlay-corner-radius":"auto","text-metrics":"font","transition-property":"none","transition-duration":0,"transition-delay":0,"transition-timing-function":"linear","box-select-labels":"no","background-blacken":0,"background-color":"#999","background-fill":"solid","background-opacity":1,"background-image":"none","background-image-crossorigin":"anonymous","background-image-opacity":1,"background-image-containment":"inside","background-image-smoothing":"yes","background-position-x":"50%","background-position-y":"50%","background-offset-x":0,"background-offset-y":0,"background-width-relative-to":"include-padding","background-height-relative-to":"include-padding","background-repeat":"no-repeat","background-fit":"none","background-clip":"node","background-width":"auto","background-height":"auto","border-color":"#000","border-opacity":1,"border-width":0,"border-style":"solid","border-dash-pattern":[4,2],"border-dash-offset":0,"border-cap":"butt","border-join":"miter","border-position":"center","outline-color":"#999","outline-opacity":1,"outline-width":0,"outline-offset":0,"outline-style":"solid",height:30,width:30,shape:"ellipse","shape-polygon-points":"-1, -1, 1, -1, 1, 1, -1, 1","corner-radius":"auto","bounds-expansion":0,"background-gradient-direction":"to-bottom","background-gradient-stop-colors":"#999","background-gradient-stop-positions":"0%",ghost:"no","ghost-offset-y":0,"ghost-offset-x":0,"ghost-opacity":0,padding:0,"padding-relative-to":"width",position:"origin","compound-sizing-wrt-labels":"include","min-width":0,"min-width-bias-left":0,"min-width-bias-right":0,"min-height":0,"min-height-bias-top":0,"min-height-bias-bottom":0},{"pie-size":"100%","pie-hole":0,"pie-start-angle":"0deg"},[{name:"pie-{{i}}-background-color",value:"black"},{name:"pie-{{i}}-background-size",value:"0%"},{name:"pie-{{i}}-background-opacity",value:1}].reduce(function(o,s){for(var l=1;l<=Mn.pieBackgroundN;l++){var g=s.name.replace("{{i}}",l),C=s.value;o[g]=C}return o},{}),{"stripe-size":"100%","stripe-direction":"horizontal"},[{name:"stripe-{{i}}-background-color",value:"black"},{name:"stripe-{{i}}-background-size",value:"0%"},{name:"stripe-{{i}}-background-opacity",value:1}].reduce(function(o,s){for(var l=1;l<=Mn.stripeBackgroundN;l++){var g=s.name.replace("{{i}}",l),C=s.value;o[g]=C}return o},{}),{"line-style":"solid","line-color":"#999","line-fill":"solid","line-cap":"butt","line-opacity":1,"line-outline-width":0,"line-outline-color":"#000","line-gradient-stop-colors":"#999","line-gradient-stop-positions":"0%","control-point-step-size":40,"control-point-weights":0.5,"segment-weights":0.5,"segment-distances":20,"segment-radii":15,"radius-type":"arc-radius","taxi-turn":"50%","taxi-radius":15,"taxi-turn-min-distance":10,"taxi-direction":"auto","edge-distances":"intersection","curve-style":"haystack","haystack-radius":0,"arrow-scale":1,"loop-direction":"-45deg","loop-sweep":"-90deg","source-distance-from-node":0,"target-distance-from-node":0,"source-endpoint":"outside-to-node","target-endpoint":"outside-to-node","line-dash-pattern":[6,3],"line-dash-offset":0},[{name:"arrow-shape",value:"none"},{name:"arrow-color",value:"#999"},{name:"arrow-fill",value:"filled"},{name:"arrow-width",value:1}].reduce(function(o,s){return Mn.arrowPrefixes.forEach(function(l){var g=l+"-"+s.name,C=s.value;o[g]=C}),o},{})),t={};for(var r=0;r<this.properties.length;r++){var i=this.properties[r];if(i.pointsTo)continue;var u=i.name,a=e[u],n=this.parse(u,a);t[u]=n}return A.defaultProperties=t,A.defaultProperties};Mn.addDefaultStylesheet=function(){this.selector(":parent").css({shape:"rectangle",padding:10,"background-color":"#eee","border-color":"#ccc","border-width":1}).selector("edge").css({width:3}).selector(":loop").css({"curve-style":"bezier"}).selector("edge:compound").css({"curve-style":"bezier","source-endpoint":"outside-to-line","target-endpoint":"outside-to-line"}).selector(":selected").css({"background-color":"#0169D9","line-color":"#0169D9","source-arrow-color":"#0169D9","target-arrow-color":"#0169D9","mid-source-arrow-color":"#0169D9","mid-target-arrow-color":"#0169D9"}).selector(":parent:selected").css({"background-color":"#CCE1F9","border-color":"#aec8e5"}).selector(":active").css({"overlay-color":"black","overlay-padding":10,"overlay-opacity":0.25}),this.defaultLength=this.length};oY={};oY.parse=function(A,e,t,r){var i=this;if(Na(e))return i.parseImplWarn(A,e,t,r);var u=r==="mapping"||r===!0||r===!1||r==null?"dontcare":r,a=t?"t":"f",n=""+e,o=dKA(A,n,a,u),s=i.propCache=i.propCache||[],l;if(!(l=s[o]))l=s[o]=i.parseImplWarn(A,e,t,r);if(t||r==="mapping"){if(l=RE(l),l)l.value=RE(l.value)}return l};oY.parseImplWarn=function(A,e,t,r){var i=this.parseImpl(A,e,t,r);if(!i&&e!=null)du("The style property `".concat(A,": ").concat(e,"` is invalid"));if(i&&(i.name==="width"||i.name==="height")&&e==="label")du("The style value of `label` is deprecated for `"+i.name+"`");return i};oY.parseImpl=function(A,e,t,r){var i=this;A=YaA(A);var u=i.properties[A],a=e,n=i.types;if(!u)return null;if(e===void 0)return null;if(u.alias)u=u.pointsTo,A=u.name;var o=tr(e);if(o)e=e.trim();var s=u.type;if(!s)return null;if(t&&(e===""||e===null))return{name:A,value:e,bypass:!0,deleteBypass:!0};if(Na(e))return{name:A,value:e,strValue:"fn",mapped:n.fn,bypass:t};var l,g;if(!o||r||e.length<7||e[1]!=="a");else if(e.length>=7&&e[0]==="d"&&(l=new RegExp(n.data.regex).exec(e))){if(t)return!1;var C=n.data;return{name:A,value:l,strValue:""+e,mapped:C,field:l[1],bypass:t}}else if(e.length>=10&&e[0]==="m"&&(g=new RegExp(n.mapData.regex).exec(e))){if(t)return!1;if(s.multiple)return!1;var B=n.mapData;if(!(s.color||s.number))return!1;var E=this.parse(A,g[4]);if(!E||E.mapped)return!1;var d=this.parse(A,g[5]);if(!d||d.mapped)return!1;if(E.pfValue===d.pfValue||E.strValue===d.strValue)return du("`"+A+": "+e+"` is not a valid mapper because the output range is zero; converting to `"+A+": "+E.strValue+"`"),this.parse(A,E.strValue);else if(s.color){var I=E.value,h=d.value,Q=I[0]===h[0]&&I[1]===h[1]&&I[2]===h[2]&&(I[3]===h[3]||(I[3]==null||I[3]===1)&&(h[3]==null||h[3]===1));if(Q)return!1}return{name:A,value:g,strValue:""+e,mapped:B,field:g[1],fieldMin:parseFloat(g[2]),fieldMax:parseFloat(g[3]),valueMin:E.value,valueMax:d.value,bypass:t}}if(s.multiple&&r!=="multiple"){var p;if(o)p=e.split(/\s+/);else if(Mu(e))p=e;else p=[e];if(s.evenMultiple&&p.length%2!==0)return null;var m=[],f=[],D=[],w="",b=!1;for(var F=0;F<p.length;F++){var v=i.parse(A,p[F],t,"multiple");b=b||tr(v.value),m.push(v.value),D.push(v.pfValue!=null?v.pfValue:v.value),f.push(v.units),w+=(F>0?" ":"")+v.strValue}if(s.validate&&!s.validate(m,f))return null;if(s.singleEnum&&b)if(m.length===1&&tr(m[0]))return{name:A,value:m[0],strValue:m[0],bypass:t};else return null;return{name:A,value:m,pfValue:D,strValue:w,bypass:t,units:f}}var S=function(){for(var tA=0;tA<s.enums.length;tA++){var lA=s.enums[tA];if(lA===e)return{name:A,value:e,strValue:""+e,bypass:t}}return null};if(s.number){var x,k="px";if(s.units)x=s.units;if(s.implicitUnits)k=s.implicitUnits;if(!s.unitless){if(o){var T="px|em"+(s.allowPercent?"|\\%":"");if(x)T=x;var R=e.match("^("+ro+")("+T+")?$");if(R)e=R[1],x=R[2]||k}else if(!x||s.implicitUnits)x=k}if(e=parseFloat(e),isNaN(e)&&s.enums===void 0)return null;if(isNaN(e)&&s.enums!==void 0)return e=a,S();if(s.integer&&!iKA(e))return null;if(s.min!==void 0&&(e<s.min||s.strictMin&&e===s.min)||s.max!==void 0&&(e>s.max||s.strictMax&&e===s.max))return null;var L={name:A,value:e,strValue:""+e+(x?x:""),units:x,bypass:t};if(s.unitless||x!=="px"&&x!=="em")L.pfValue=e;else L.pfValue=x==="px"||!x?e:this.getEmSizeInPixels()*e;if(x==="ms"||x==="s")L.pfValue=x==="ms"?e:1000*e;if(x==="deg"||x==="rad")L.pfValue=x==="rad"?e:qQt(e);if(x==="%")L.pfValue=e/100;return L}else if(s.propList){var M=[],U=""+e;if(U==="none");else{var Y=U.split(/\s*,\s*|\s+/);for(var H=0;H<Y.length;H++){var J=Y[H].trim();if(i.properties[J])M.push(J);else du("`"+J+"` is not a valid property name")}if(M.length===0)return null}return{name:A,value:M,strValue:M.length===0?"none":M.join(" "),bypass:t}}else if(s.color){var K=sKA(e);if(!K)return null;return{name:A,value:K,pfValue:K,strValue:"rgb("+K[0]+","+K[1]+","+K[2]+")",bypass:t}}else if(s.regex||s.regexes){if(s.enums){var O=S();if(O)return O}var _=s.regexes?s.regexes:[s.regex];for(var z=0;z<_.length;z++){var j=new RegExp(_[z]),q=j.exec(e);if(q)return{name:A,value:s.singleRegexMatchValue?q[1]:q,strValue:""+e,bypass:t}}return null}else if(s.string)return{name:A,value:""+e,strValue:""+e,bypass:t};else if(s.enums)return S();else return null};H0=No.prototype;H0.instanceString=function(){return"style"};H0.clear=function(){var A=this._private,e=A.cy,t=e.elements();for(var r=0;r<this.length;r++)this[r]=void 0;return this.length=0,A.contextStyles={},A.propDiffs={},this.cleanElements(t,!0),t.forEach(function(i){var u=i[0]._private;u.styleDirty=!0,u.appliedInitStyle=!1}),this};H0.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this};H0.core=function(A){return this._private.coreStyle[A]||this.getDefaultProperty(A)};H0.selector=function(A){var e=A==="core"?null:new k4(A),t=this.length++;return this[t]={selector:e,properties:[],mappedProperties:[],index:t},this};H0.css=function(){var A=this,e=arguments;if(e.length===1){var t=e[0];for(var r=0;r<A.properties.length;r++){var i=A.properties[r],u=t[i.name];if(u===void 0)u=t[zT(i.name)];if(u!==void 0)this.cssRule(i.name,u)}}else if(e.length===2)this.cssRule(e[0],e[1]);return this};H0.style=H0.css;H0.cssRule=function(A,e){var t=this.parse(A,e);if(t){var r=this.length-1;if(this[r].properties.push(t),this[r].properties[t.name]=t,t.name.match(/pie-(\d+)-background-size/)&&t.value)this._private.hasPie=!0;if(t.name.match(/stripe-(\d+)-background-size/)&&t.value)this._private.hasStripe=!0;if(t.mapped)this[r].mappedProperties.push(t);var i=!this[r].selector;if(i)this._private.coreStyle[t.name]=t}return this};H0.append=function(A){if(aKA(A))A.appendToStyle(this);else if(Mu(A))this.appendFromJson(A);else if(tr(A))this.appendFromString(A);return this};No.fromJson=function(A,e){var t=new No(A);return t.fromJson(e),t};No.fromString=function(A,e){return new No(A).fromString(e)};[Go,rF,AnA,NE,nY,enA,Mn,oY].forEach(function(A){Cr(H0,A)});No.types=H0.types;No.properties=H0.properties;No.propertyGroups=H0.propertyGroups;No.propertyGroupNames=H0.propertyGroupNames;No.propertyGroupKeys=H0.propertyGroupKeys;Xpt={style:function(e){if(e){var t=this.setStyle(e);t.update()}return this._private.style},setStyle:function(e){var t=this._private;if(aKA(e))t.style=e.generateStyle(this);else if(Mu(e))t.style=No.fromJson(this,e);else if(tr(e))t.style=No.fromString(this,e);else t.style=No(this);return t.style},updateStyle:function(){this.mutableElements().updateStyle()}},u3={autolock:function(e){if(e!==void 0)this._private.autolock=e?!0:!1;else return this._private.autolock;return this},autoungrabify:function(e){if(e!==void 0)this._private.autoungrabify=e?!0:!1;else return this._private.autoungrabify;return this},autounselectify:function(e){if(e!==void 0)this._private.autounselectify=e?!0:!1;else return this._private.autounselectify;return this},selectionType:function(e){var t=this._private;if(t.selectionType==null)t.selectionType=$pt;if(e!==void 0){if(e==="additive"||e==="single")t.selectionType=e}else return t.selectionType;return this},panningEnabled:function(e){if(e!==void 0)this._private.panningEnabled=e?!0:!1;else return this._private.panningEnabled;return this},userPanningEnabled:function(e){if(e!==void 0)this._private.userPanningEnabled=e?!0:!1;else return this._private.userPanningEnabled;return this},zoomingEnabled:function(e){if(e!==void 0)this._private.zoomingEnabled=e?!0:!1;else return this._private.zoomingEnabled;return this},userZoomingEnabled:function(e){if(e!==void 0)this._private.userZoomingEnabled=e?!0:!1;else return this._private.userZoomingEnabled;return this},boxSelectionEnabled:function(e){if(e!==void 0)this._private.boxSelectionEnabled=e?!0:!1;else return this._private.boxSelectionEnabled;return this},pan:function(){var e=arguments,t=this._private.pan,r,i,u,a,n;switch(e.length){case 0:return t;case 1:if(tr(e[0]))return r=e[0],t[r];else if(Hi(e[0])){if(!this._private.panningEnabled)return this;if(u=e[0],a=u.x,n=u.y,Qt(a))t.x=a;if(Qt(n))t.y=n;this.emit("pan viewport")}break;case 2:if(!this._private.panningEnabled)return this;if(r=e[0],i=e[1],(r==="x"||r==="y")&&Qt(i))t[r]=i;this.emit("pan viewport");break}return this.notify("viewport"),this},panBy:function(e,t){var r=arguments,i=this._private.pan,u,a,n,o,s;if(!this._private.panningEnabled)return this;switch(r.length){case 1:if(Hi(e)){if(n=r[0],o=n.x,s=n.y,Qt(o))i.x+=o;if(Qt(s))i.y+=s;this.emit("pan viewport")}break;case 2:if(u=e,a=t,(u==="x"||u==="y")&&Qt(a))i[u]+=a;this.emit("pan viewport");break}return this.notify("viewport"),this},gc:function(){this.notify("gc")},fit:function(e,t){var r=this.getFitViewport(e,t);if(r){var i=this._private;i.zoom=r.zoom,i.pan=r.pan,this.emit("pan zoom viewport"),this.notify("viewport")}return this},getFitViewport:function(e,t){if(Qt(e)&&t===void 0)t=e,e=void 0;if(!this._private.panningEnabled||!this._private.zoomingEnabled)return;var r;if(tr(e)){var i=e;e=this.$(i)}else if(Yht(e)){var u=e;r={x1:u.x1,y1:u.y1,x2:u.x2,y2:u.y2},r.w=r.x2-r.x1,r.h=r.y2-r.y1}else if(!Cg(e))e=this.mutableElements();if(Cg(e)&&e.empty())return;r=r||e.boundingBox();var a=this.width(),n=this.height(),o;if(t=Qt(t)?t:0,!isNaN(a)&&!isNaN(n)&&a>0&&n>0&&!isNaN(r.w)&&!isNaN(r.h)&&r.w>0&&r.h>0){o=Math.min((a-2*t)/r.w,(n-2*t)/r.h),o=o>this._private.maxZoom?this._private.maxZoom:o,o=o<this._private.minZoom?this._private.minZoom:o;var s={x:(a-o*(r.x1+r.x2))/2,y:(n-o*(r.y1+r.y2))/2};return{zoom:o,pan:s}}return},zoomRange:function(e,t){var r=this._private;if(t==null){var i=e;e=i.min,t=i.max}if(Qt(e)&&Qt(t)&&e<=t)r.minZoom=e,r.maxZoom=t;else if(Qt(e)&&t===void 0&&e<=r.maxZoom)r.minZoom=e;else if(Qt(t)&&e===void 0&&t>=r.minZoom)r.maxZoom=t;return this},minZoom:function(e){if(e===void 0)return this._private.minZoom;else return this.zoomRange({min:e})},maxZoom:function(e){if(e===void 0)return this._private.maxZoom;else return this.zoomRange({max:e})},getZoomedViewport:function(e){var t=this._private,{pan:r,zoom:i}=t,u,a,n=!1;if(!t.zoomingEnabled)n=!0;if(Qt(e))a=e;else if(Hi(e)){if(a=e.level,e.position!=null)u=jT(e.position,i,r);else if(e.renderedPosition!=null)u=e.renderedPosition;if(u!=null&&!t.panningEnabled)n=!0}if(a=a>t.maxZoom?t.maxZoom:a,a=a<t.minZoom?t.minZoom:a,n||!Qt(a)||a===i||u!=null&&(!Qt(u.x)||!Qt(u.y)))return null;if(u!=null){var o=r,s=i,l=a,g={x:-l/s*(u.x-o.x)+u.x,y:-l/s*(u.y-o.y)+u.y};return{zoomed:!0,panned:!0,zoom:l,pan:g}}else return{zoomed:!0,panned:!1,zoom:a,pan:r}},zoom:function(e){if(e===void 0)return this._private.zoom;else{var t=this.getZoomedViewport(e),r=this._private;if(t==null||!t.zoomed)return this;if(r.zoom=t.zoom,t.panned)r.pan.x=t.pan.x,r.pan.y=t.pan.y;return this.emit("zoom"+(t.panned?" pan":"")+" viewport"),this.notify("viewport"),this}},viewport:function(e){var t=this._private,r=!0,i=!0,u=[],a=!1,n=!1;if(!e)return this;if(!Qt(e.zoom))r=!1;if(!Hi(e.pan))i=!1;if(!r&&!i)return this;if(r){var o=e.zoom;if(o<t.minZoom||o>t.maxZoom||!t.zoomingEnabled)a=!0;else t.zoom=o,u.push("zoom")}if(i&&(!a||!e.cancelOnFailedZoom)&&t.panningEnabled){var s=e.pan;if(Qt(s.x))t.pan.x=s.x,n=!1;if(Qt(s.y))t.pan.y=s.y,n=!1;if(!n)u.push("pan")}if(u.length>0)u.push("viewport"),this.emit(u.join(" ")),this.notify("viewport");return this},center:function(e){var t=this.getCenterPan(e);if(t)this._private.pan=t,this.emit("pan viewport"),this.notify("viewport");return this},getCenterPan:function(e,t){if(!this._private.panningEnabled)return;if(tr(e)){var r=e;e=this.mutableElements().filter(r)}else if(!Cg(e))e=this.mutableElements();if(e.length===0)return;var i=e.boundingBox(),u=this.width(),a=this.height();t=t===void 0?this._private.zoom:t;var n={x:(u-t*(i.x1+i.x2))/2,y:(a-t*(i.y1+i.y2))/2};return n},reset:function(){if(!this._private.panningEnabled||!this._private.zoomingEnabled)return this;return this.viewport({pan:{x:0,y:0},zoom:1}),this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var e=this._private,t=e.container,r=this;return e.sizeCache=e.sizeCache||(t?function(){var i=r.window().getComputedStyle(t),u=function(n){return parseFloat(i.getPropertyValue(n))};return{width:t.clientWidth-u("padding-left")-u("padding-right"),height:t.clientHeight-u("padding-top")-u("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var e=this._private.pan,t=this._private.zoom,r=this.renderedExtent(),i={x1:(r.x1-e.x)/t,x2:(r.x2-e.x)/t,y1:(r.y1-e.y)/t,y2:(r.y2-e.y)/t};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},renderedExtent:function(){var e=this.width(),t=this.height();return{x1:0,y1:0,x2:e,y2:t,w:e,h:t}},multiClickDebounceTime:function(e){if(e)this._private.multiClickDebounceTime=e;else return this._private.multiClickDebounceTime;return this}};u3.centre=u3.center;u3.autolockNodes=u3.autolock;u3.autoungrabifyNodes=u3.autoungrabify;Wk={data:Eu.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Eu.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Eu.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Eu.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Wk.attr=Wk.data;Wk.removeAttr=Wk.removeData;JT=qk.prototype;Cr(JT,{instanceString:function(){return"core"},isReady:function(){return this._private.ready},destroyed:function(){return this._private.destroyed},ready:function(e){if(this.isReady())this.emitter().emit("ready",[],e);else this.on("ready",e);return this},destroy:function(){var e=this;if(e.destroyed())return;return e.stopAnimationLoop(),e.destroyRenderer(),this.emit("destroy"),e._private.destroyed=!0,e},hasElementWithId:function(e){return this._private.elements.hasElementWithId(e)},getElementById:function(e){return this._private.elements.getElementById(e)},hasCompoundNodes:function(){return this._private.hasCompoundNodes},headless:function(){return this._private.renderer.isHeadless()},styleEnabled:function(){return this._private.styleEnabled},addToPool:function(e){return this._private.elements.merge(e),this},removeFromPool:function(e){return this._private.elements.unmerge(e),this},container:function(){return this._private.container||null},window:function(){var e=this._private.container;if(e==null)return to;var t=this._private.container.ownerDocument;if(t===void 0||t==null)return to;return t.defaultView||to},mount:function(e){if(e==null)return;var t=this,r=t._private,i=r.options;if(!GT(e)&>(e[0]))e=e[0];return t.stopAnimationLoop(),t.destroyRenderer(),r.container=e,r.styleEnabled=!0,t.invalidateSize(),t.initRenderer(Cr({},i,i.renderer,{name:i.renderer.name==="null"?"canvas":i.renderer.name})),t.startAnimationLoop(),t.style(i.style),t.emit("mount"),t},unmount:function(){var e=this;return e.stopAnimationLoop(),e.destroyRenderer(),e.initRenderer({name:"null"}),e.emit("unmount"),e},options:function(){return RE(this._private.options)},json:function(e){var t=this,r=t._private,i=t.mutableElements(),u=function(m){return t.getElementById(m.id())};if(Hi(e)){if(t.startBatch(),e.elements){var a={},n=function(m,f){var D=[],w=[];for(var b=0;b<m.length;b++){var F=m[b];if(!F.data.id){du("cy.json() cannot handle elements without an ID attribute");continue}var v=""+F.data.id,S=t.getElementById(v);if(a[v]=!0,S.length!==0)w.push({ele:S,json:F});else if(f)F.group=f,D.push(F);else D.push(F)}t.add(D);for(var x=0;x<w.length;x++){var k=w[x],{ele:T,json:R}=k;T.json(R)}};if(Mu(e.elements))n(e.elements);else{var o=["nodes","edges"];for(var s=0;s<o.length;s++){var l=o[s],g=e.elements[l];if(Mu(g))n(g,l)}}var C=t.collection();i.filter(function(p){return!a[p.id()]}).forEach(function(p){if(p.isParent())C.merge(p);else p.remove()}),C.forEach(function(p){return p.children().move({parent:null})}),C.forEach(function(p){return u(p).remove()})}if(e.style)t.style(e.style);if(e.zoom!=null&&e.zoom!==r.zoom)t.zoom(e.zoom);if(e.pan){if(e.pan.x!==r.pan.x||e.pan.y!==r.pan.y)t.pan(e.pan)}if(e.data)t.data(e.data);var B=["minZoom","maxZoom","zoomingEnabled","userZoomingEnabled","panningEnabled","userPanningEnabled","boxSelectionEnabled","autolock","autoungrabify","autounselectify","multiClickDebounceTime"];for(var E=0;E<B.length;E++){var d=B[E];if(e[d]!=null)t[d](e[d])}return t.endBatch(),this}else{var I=!!e,h={};if(I)h.elements=this.elements().map(function(p){return p.json()});else h.elements={},i.forEach(function(p){var m=p.group();if(!h.elements[m])h.elements[m]=[];h.elements[m].push(p.json())});if(this._private.styleEnabled)h.style=t.style().json();h.data=RE(t.data());var Q=r.options;return h.zoomingEnabled=r.zoomingEnabled,h.userZoomingEnabled=r.userZoomingEnabled,h.zoom=r.zoom,h.minZoom=r.minZoom,h.maxZoom=r.maxZoom,h.panningEnabled=r.panningEnabled,h.userPanningEnabled=r.userPanningEnabled,h.pan=RE(r.pan),h.boxSelectionEnabled=r.boxSelectionEnabled,h.renderer=RE(Q.renderer),h.hideEdgesOnViewport=Q.hideEdgesOnViewport,h.textureOnViewport=Q.textureOnViewport,h.wheelSensitivity=Q.wheelSensitivity,h.motionBlur=Q.motionBlur,h.multiClickDebounceTime=Q.multiClickDebounceTime,h}}});JT.$id=JT.getElementById;[Jpt,qpt,nJA,baA,FT,Zpt,vaA,xT,Xpt,u3,Wk].forEach(function(A){Cr(JT,A)});Aft={fit:!0,directed:!1,direction:"downward",padding:30,circle:!1,grid:!1,spacingFactor:1.75,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,roots:void 0,depthSort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}},eft={maximal:!1,acyclic:!1};oJA.prototype.run=function(){var A=this.options,{cy:e,eles:t}=A,r=t.nodes().filter(function(bA){return bA.isChildless()}),i=t,u=A.directed,a=A.acyclic||A.maximal||A.maximalAdjustments>0,n=!!A.boundingBox,o=ms(n?A.boundingBox:structuredClone(e.extent())),s;if(Cg(A.roots))s=A.roots;else if(Mu(A.roots)){var l=[];for(var g=0;g<A.roots.length;g++){var C=A.roots[g],B=e.getElementById(C);l.push(B)}s=e.collection(l)}else if(tr(A.roots))s=e.$(A.roots);else if(u)s=r.roots();else{var E=t.components();s=e.collection();var d=function(){var FA=E[I],IA=FA.maxDegree(!1),nA=FA.filter(function(eA){return eA.degree(!1)===IA});s=s.add(nA)};for(var I=0;I<E.length;I++)d()}var h=[],Q={},p=function(FA,IA){if(h[IA]==null)h[IA]=[];var nA=h[IA].length;h[IA].push(FA),vHA(FA,{index:nA,depth:IA})},m=function(FA,IA){var nA=$y(FA),{depth:eA,index:EA}=nA;if(h[eA][EA]=null,FA.isChildless())p(FA,IA)};i.bfs({roots:s,directed:A.directed,visit:function(FA,IA,nA,eA,EA){var mA=FA[0],kA=mA.id();if(mA.isChildless())p(mA,EA);Q[kA]=!0}});var f=[];for(var D=0;D<r.length;D++){var w=r[D];if(Q[w.id()])continue;else f.push(w)}var b=function(FA){var IA=h[FA];for(var nA=0;nA<IA.length;nA++){var eA=IA[nA];if(eA==null){IA.splice(nA,1),nA--;continue}vHA(eA,{depth:FA,index:nA})}},F=function(FA,IA){var nA=$y(FA),eA=FA.incomers().filter(function(W){return W.isNode()&&t.has(W)}),EA=-1,mA=FA.id();for(var kA=0;kA<eA.length;kA++){var SA=eA[kA],YA=$y(SA);EA=Math.max(EA,YA.depth)}if(nA.depth<=EA){if(!A.acyclic&&IA[mA])return null;var dA=EA+1;return m(FA,dA),IA[mA]=dA,!0}return!1};if(u&&a){var v=[],S={},x=function(FA){return v.push(FA)},k=function(){return v.shift()};r.forEach(function(bA){return v.push(bA)});while(v.length>0){var T=k(),R=F(T,S);if(R)T.outgoers().filter(function(bA){return bA.isNode()&&t.has(bA)}).forEach(x);else if(R===null){du("Detected double maximal shift for node `"+T.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var L=0;if(A.avoidOverlap)for(var M=0;M<r.length;M++){var U=r[M],Y=U.layoutDimensions(A),{w:H,h:J}=Y;L=Math.max(L,H,J)}var K={},O=function(FA){if(K[FA.id()])return K[FA.id()];var IA=$y(FA).depth,nA=FA.neighborhood(),eA=0,EA=0;for(var mA=0;mA<nA.length;mA++){var kA=nA[mA];if(kA.isEdge()||kA.isParent()||!r.has(kA))continue;var SA=$y(kA);if(SA==null)continue;var{index:YA,depth:dA}=SA;if(YA==null||dA==null)continue;var W=h[dA].length;if(dA<IA)eA+=YA/W,EA++}if(EA=Math.max(1,EA),eA=eA/EA,EA===0)eA=0;return K[FA.id()]=eA,eA},_=function(FA,IA){var nA=O(FA),eA=O(IA),EA=nA-eA;if(EA===0)return oKA(FA.id(),IA.id());else return EA};if(A.depthSort!==void 0)_=A.depthSort;var z=h.length;for(var j=0;j<z;j++)h[j].sort(_),b(j);var q=[];for(var CA=0;CA<f.length;CA++)q.push(f[CA]);var tA=function(){for(var FA=0;FA<z;FA++)b(FA)};if(q.length)h.unshift(q),z=h.length,tA();var lA=0;for(var gA=0;gA<z;gA++)lA=Math.max(h[gA].length,lA);var aA={x:o.x1+o.w/2,y:o.y1+o.h/2},RA=r.reduce(function(bA,FA){return function(IA){return{w:bA.w===-1?IA.w:(bA.w+IA.w)/2,h:bA.h===-1?IA.h:(bA.h+IA.h)/2}}(FA.boundingBox({includeLabels:A.nodeDimensionsIncludeLabels}))},{w:-1,h:-1}),wA=Math.max(z===1?0:n?(o.h-A.padding*2-RA.h)/(z-1):(o.h-A.padding*2-RA.h)/(z+1),L),JA=h.reduce(function(bA,FA){return Math.max(bA,FA.length)},0),TA=function(FA){var IA=$y(FA),{depth:nA,index:eA}=IA;if(A.circle){var EA=Math.min(o.w/2/z,o.h/2/z);EA=Math.max(EA,L);var mA=EA*nA+EA-(z>0&&h[0].length<=3?EA/2:0),kA=2*Math.PI/h[nA].length*eA;if(nA===0&&h[0].length===1)mA=1;return{x:aA.x+mA*Math.cos(kA),y:aA.y+mA*Math.sin(kA)}}else{var SA=h[nA].length,YA=Math.max(SA===1?0:n?(o.w-A.padding*2-RA.w)/((A.grid?JA:SA)-1):(o.w-A.padding*2-RA.w)/((A.grid?JA:SA)+1),L),dA={x:aA.x+(eA+1-(SA+1)/2)*YA,y:aA.y+(nA+1-(z+1)/2)*wA};return dA}},qA={downward:0,leftward:90,upward:180,rightward:-90};if(Object.keys(qA).indexOf(A.direction)===-1)Qa("Invalid direction '".concat(A.direction,"' specified for breadthfirst layout. Valid values are: ").concat(Object.keys(qA).join(", ")));var BA=function(FA){return EQt(TA(FA),o,qA[A.direction])};return t.nodes().layoutPositions(this,A,BA),this};tft={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};sJA.prototype.run=function(){var A=this.options,e=A,t=A.cy,r=e.eles,i=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,u=r.nodes().not(":parent");if(e.sort)u=u.sort(e.sort);var a=ms(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()}),n={x:a.x1+a.w/2,y:a.y1+a.h/2},o=e.sweep===void 0?2*Math.PI-2*Math.PI/u.length:e.sweep,s=o/Math.max(1,u.length-1),l,g=0;for(var C=0;C<u.length;C++){var B=u[C],E=B.layoutDimensions(e),{w:d,h:I}=E;g=Math.max(g,d,I)}if(Qt(e.radius))l=e.radius;else if(u.length<=1)l=0;else l=Math.min(a.h,a.w)/2-g;if(u.length>1&&e.avoidOverlap){g*=1.75;var h=Math.cos(s)-Math.cos(0),Q=Math.sin(s)-Math.sin(0),p=Math.sqrt(g*g/(h*h+Q*Q));l=Math.max(p,l)}var m=function(D,w){var b=e.startAngle+w*s*(i?1:-1),F=l*Math.cos(b),v=l*Math.sin(b),S={x:n.x+F,y:n.y+v};return S};return r.nodes().layoutPositions(this,e,m),this};rft={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(e){return e.degree()},levelWidth:function(e){return e.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};lJA.prototype.run=function(){var A=this.options,e=A,t=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,r=A.cy,i=e.eles,u=i.nodes().not(":parent"),a=ms(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),n={x:a.x1+a.w/2,y:a.y1+a.h/2},o=[],s=0;for(var l=0;l<u.length;l++){var g=u[l],C=void 0;C=e.concentric(g),o.push({value:C,node:g}),g._private.scratch.concentric=C}u.updateStyle();for(var B=0;B<u.length;B++){var E=u[B],d=E.layoutDimensions(e);s=Math.max(s,d.w,d.h)}o.sort(function(wA,JA){return JA.value-wA.value});var I=e.levelWidth(u),h=[[]],Q=h[0];for(var p=0;p<o.length;p++){var m=o[p];if(Q.length>0){var f=Math.abs(Q[0].value-m.value);if(f>=I)Q=[],h.push(Q)}Q.push(m)}var D=s+e.minNodeSpacing;if(!e.avoidOverlap){var w=h.length>0&&h[0].length>1,b=Math.min(a.w,a.h)/2-D,F=b/(h.length+w?1:0);D=Math.min(D,F)}var v=0;for(var S=0;S<h.length;S++){var x=h[S],k=e.sweep===void 0?2*Math.PI-2*Math.PI/x.length:e.sweep,T=x.dTheta=k/Math.max(1,x.length-1);if(x.length>1&&e.avoidOverlap){var R=Math.cos(T)-Math.cos(0),L=Math.sin(T)-Math.sin(0),M=Math.sqrt(D*D/(R*R+L*L));v=Math.max(M,v)}x.r=v,v+=D}if(e.equidistant){var U=0,Y=0;for(var H=0;H<h.length;H++){var J=h[H],K=J.r-Y;U=Math.max(U,K)}Y=0;for(var O=0;O<h.length;O++){var _=h[O];if(O===0)Y=_.r;_.r=Y,Y+=U}}var z={};for(var j=0;j<h.length;j++){var q=h[j],{dTheta:CA,r:tA}=q;for(var lA=0;lA<q.length;lA++){var gA=q[lA],aA=e.startAngle+(t?1:-1)*CA*lA,RA={x:n.x+tA*Math.cos(aA),y:n.y+tA*Math.sin(aA)};z[gA.node.id()]=RA}}return i.nodes().layoutPositions(this,e,function(wA){var JA=wA.id();return z[JA]}),this};ift={ready:function(){},stop:function(){},animate:!0,animationEasing:void 0,animationDuration:void 0,animateFilter:function(e,t){return!0},animationThreshold:250,refresh:20,fit:!0,padding:30,boundingBox:void 0,nodeDimensionsIncludeLabels:!1,randomize:!1,componentSpacing:40,nodeRepulsion:function(e){return 2048},nodeOverlap:4,idealEdgeLength:function(e){return 32},edgeElasticity:function(e){return 32},nestingFactor:1.2,gravity:1,numIter:1000,initialTemp:1000,coolingFactor:0.99,minTemp:1};sY.prototype.run=function(){var A=this.options,e=A.cy,t=this;if(t.stopped=!1,A.animate===!0||A.animate===!1)t.emit({type:"layoutstart",layout:t});if(A.debug===!0)oaA=!0;else oaA=!1;var r=uft(e,t,A);if(oaA)nft(r);if(A.randomize)oft(r);var i=UI(),u=function(){if(sft(r,e,A),A.fit===!0)e.fit(A.padding)},a=function(C){if(t.stopped||C>=A.numIter)return!1;if(lft(r,A),r.temperature=r.temperature*A.coolingFactor,r.temperature<A.minTemp)return!1;return!0},n=function(){if(A.animate===!0||A.animate===!1)u(),t.one("layoutstop",A.stop),t.emit({type:"layoutstop",layout:t});else{var C=A.eles.nodes(),B=cJA(r,A,C);C.layoutPositions(t,A,B)}},o=0,s=!0;if(A.animate===!0){var l=function(){var C=0;while(s&&C<A.refresh)s=a(o),o++,C++;if(!s)FHA(r,A),n();else{var B=UI();if(B-i>=A.animationThreshold)u();UT(l)}};l()}else{while(s)s=a(o),o++;FHA(r,A),n()}return this};sY.prototype.stop=function(){if(this.stopped=!0,this.thread)this.thread.stop();return this.emit("layoutstop"),this};sY.prototype.destroy=function(){if(this.thread)this.thread.stop();return this};Qft={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(e){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};BJA.prototype.run=function(){var A=this.options,e=A,t=A.cy,r=e.eles,i=r.nodes().not(":parent");if(e.sort)i=i.sort(e.sort);var u=ms(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()});if(u.h===0||u.w===0)r.nodes().layoutPositions(this,e,function(O){return{x:u.x1,y:u.y1}});else{var a=i.size(),n=Math.sqrt(a*u.h/u.w),o=Math.round(n),s=Math.round(u.w/u.h*n),l=function(_){if(_==null)return Math.min(o,s);else{var z=Math.min(o,s);if(z==o)o=_;else s=_}},g=function(_){if(_==null)return Math.max(o,s);else{var z=Math.max(o,s);if(z==o)o=_;else s=_}},C=e.rows,B=e.cols!=null?e.cols:e.columns;if(C!=null&&B!=null)o=C,s=B;else if(C!=null&&B==null)o=C,s=Math.ceil(a/o);else if(C==null&&B!=null)s=B,o=Math.ceil(a/s);else if(s*o>a){var E=l(),d=g();if((E-1)*d>=a)l(E-1);else if((d-1)*E>=a)g(d-1)}else while(s*o<a){var I=l(),h=g();if((h+1)*I>=a)g(h+1);else l(I+1)}var Q=u.w/s,p=u.h/o;if(e.condense)Q=0,p=0;if(e.avoidOverlap)for(var m=0;m<i.length;m++){var f=i[m],D=f._private.position;if(D.x==null||D.y==null)D.x=0,D.y=0;var w=f.layoutDimensions(e),b=e.avoidOverlapPadding,F=w.w+b,v=w.h+b;Q=Math.max(Q,F),p=Math.max(p,v)}var S={},x=function(_,z){return S["c-"+_+"-"+z]?!0:!1},k=function(_,z){S["c-"+_+"-"+z]=!0},T=0,R=0,L=function(){if(R++,R>=s)R=0,T++},M={};for(var U=0;U<i.length;U++){var Y=i[U],H=e.position(Y);if(H&&(H.row!==void 0||H.col!==void 0)){var J={row:H.row,col:H.col};if(J.col===void 0){J.col=0;while(x(J.row,J.col))J.col++}else if(J.row===void 0){J.row=0;while(x(J.row,J.col))J.row++}M[Y.id()]=J,k(J.row,J.col)}}var K=function(_,z){var j,q;if(_.locked()||_.isParent())return!1;var CA=M[_.id()];if(CA)j=CA.col*Q+Q/2+u.x1,q=CA.row*p+p/2+u.y1;else{while(x(T,R))L();j=R*Q+Q/2+u.x1,q=T*p+p/2+u.y1,k(T,R),L()}return{x:j,y:q}};i.layoutPositions(this,e,K)}return this};pft={ready:function(){},stop:function(){}};tnA.prototype.run=function(){var A=this.options,e=A.eles,t=this;return A.cy,t.emit("layoutstart"),e.nodes().positions(function(){return{x:0,y:0}}),t.one("layoutready",A.ready),t.emit("layoutready"),t.one("layoutstop",A.stop),t.emit("layoutstop"),this};tnA.prototype.stop=function(){return this};fft={positions:void 0,zoom:void 0,pan:void 0,fit:!0,padding:30,spacingFactor:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};EJA.prototype.run=function(){var A=this.options,e=A.eles,t=e.nodes(),r=Na(A.positions);function i(u){if(A.positions==null)return KQt(u.position());if(r)return A.positions(u);var a=A.positions[u._private.data.id];if(a==null)return null;return a}return t.layoutPositions(this,A,function(u,a){var n=i(u);if(u.locked()||n==null)return!1;return n}),this};mft={fit:!0,padding:30,boundingBox:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};dJA.prototype.run=function(){var A=this.options,{cy:e,eles:t}=A,r=ms(A.boundingBox?A.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),i=function(a,n){return{x:r.x1+Math.round(Math.random()*r.w),y:r.y1+Math.round(Math.random()*r.h)}};return t.nodes().layoutPositions(this,A,i),this};Dft=[{name:"breadthfirst",impl:oJA},{name:"circle",impl:sJA},{name:"concentric",impl:lJA},{name:"cose",impl:sY},{name:"grid",impl:BJA},{name:"null",impl:tnA},{name:"preset",impl:EJA},{name:"random",impl:dJA}];IJA.prototype={recalculateRenderedStyle:xHA,notify:function(){this.notifications++},init:xHA,isHeadless:function(){return!0},png:SHA,jpg:SHA};rnA={};rnA.arrowShapeWidth=0.3;rnA.registerArrowShapes=function(){var A=this.arrowShapes={},e=this,t=function(s,l,g,C,B,E,d){var I=B.x-g/2-d,h=B.x+g/2+d,Q=B.y-g/2-d,p=B.y+g/2+d,m=I<=s&&s<=h&&Q<=l&&l<=p;return m},r=function(s,l,g,C,B){var E=s*Math.cos(C)-l*Math.sin(C),d=s*Math.sin(C)+l*Math.cos(C),I=E*g,h=d*g,Q=I+B.x,p=h+B.y;return{x:Q,y:p}},i=function(s,l,g,C){var B=[];for(var E=0;E<s.length;E+=2){var d=s[E],I=s[E+1];B.push(r(d,I,l,g,C))}return B},u=function(s){var l=[];for(var g=0;g<s.length;g++){var C=s[g];l.push(C.x,C.y)}return l},a=function(s){return s.pstyle("width").pfValue*s.pstyle("arrow-scale").pfValue*2},n=function(s,l){if(tr(l))l=A[l];A[s]=Cr({name:s,points:[-0.15,-0.3,0.15,-0.3,0.15,0.3,-0.15,0.3],collide:function(C,B,E,d,I,h){var Q=u(i(this.points,E+2*h,d,I)),p=dl(C,B,Q);return p},roughCollide:t,draw:function(C,B,E,d){var I=i(this.points,B,E,d);e.arrowShapeImpl("polygon")(C,I)},spacing:function(C){return 0},gap:a},l)};n("none",{collide:MT,roughCollide:MT,draw:JaA,spacing:_TA,gap:_TA}),n("triangle",{points:[-0.15,-0.3,0,0,0.15,-0.3]}),n("arrow","triangle"),n("triangle-backcurve",{points:A.triangle.points,controlPoint:[0,-0.15],roughCollide:t,draw:function(s,l,g,C,B){var E=i(this.points,l,g,C),d=this.controlPoint,I=r(d[0],d[1],l,g,C);e.arrowShapeImpl(this.name)(s,E,I)},gap:function(s){return a(s)*0.8}}),n("triangle-tee",{points:[0,0,0.15,-0.3,-0.15,-0.3,0,0],pointsTee:[-0.15,-0.4,-0.15,-0.5,0.15,-0.5,0.15,-0.4],collide:function(s,l,g,C,B,E,d){var I=u(i(this.points,g+2*d,C,B)),h=u(i(this.pointsTee,g+2*d,C,B)),Q=dl(s,l,I)||dl(s,l,h);return Q},draw:function(s,l,g,C,B){var E=i(this.points,l,g,C),d=i(this.pointsTee,l,g,C);e.arrowShapeImpl(this.name)(s,E,d)}}),n("circle-triangle",{radius:0.15,pointsTr:[0,-0.15,0.15,-0.45,-0.15,-0.45,0,-0.15],collide:function(s,l,g,C,B,E,d){var I=B,h=Math.pow(I.x-s,2)+Math.pow(I.y-l,2)<=Math.pow((g+2*d)*this.radius,2),Q=u(i(this.points,g+2*d,C,B));return dl(s,l,Q)||h},draw:function(s,l,g,C,B){var E=i(this.pointsTr,l,g,C);e.arrowShapeImpl(this.name)(s,E,C.x,C.y,this.radius*l)},spacing:function(s){return e.getArrowWidth(s.pstyle("width").pfValue,s.pstyle("arrow-scale").value)*this.radius}}),n("triangle-cross",{points:[0,0,0.15,-0.3,-0.15,-0.3,0,0],baseCrossLinePts:[-0.15,-0.4,-0.15,-0.4,0.15,-0.4,0.15,-0.4],crossLinePts:function(s,l){var g=this.baseCrossLinePts.slice(),C=l/s,B=3,E=5;return g[B]=g[B]-C,g[E]=g[E]-C,g},collide:function(s,l,g,C,B,E,d){var I=u(i(this.points,g+2*d,C,B)),h=u(i(this.crossLinePts(g,E),g+2*d,C,B)),Q=dl(s,l,I)||dl(s,l,h);return Q},draw:function(s,l,g,C,B){var E=i(this.points,l,g,C),d=i(this.crossLinePts(l,B),l,g,C);e.arrowShapeImpl(this.name)(s,E,d)}}),n("vee",{points:[-0.15,-0.3,0,0,0.15,-0.3,0,-0.15],gap:function(s){return a(s)*0.525}}),n("circle",{radius:0.15,collide:function(s,l,g,C,B,E,d){var I=B,h=Math.pow(I.x-s,2)+Math.pow(I.y-l,2)<=Math.pow((g+2*d)*this.radius,2);return h},draw:function(s,l,g,C,B){e.arrowShapeImpl(this.name)(s,C.x,C.y,this.radius*l)},spacing:function(s){return e.getArrowWidth(s.pstyle("width").pfValue,s.pstyle("arrow-scale").value)*this.radius}}),n("tee",{points:[-0.15,0,-0.15,-0.1,0.15,-0.1,0.15,0],spacing:function(s){return 1},gap:function(s){return 1}}),n("square",{points:[-0.15,0,0.15,0,0.15,-0.3,-0.15,-0.3]}),n("diamond",{points:[-0.15,-0.15,0,-0.3,0.15,-0.15,0,0],gap:function(s){return s.pstyle("width").pfValue*s.pstyle("arrow-scale").value}}),n("chevron",{points:[0,0,-0.15,-0.15,-0.1,-0.2,0,-0.1,0.1,-0.2,0.15,-0.15],gap:function(s){return 0.95*s.pstyle("width").pfValue*s.pstyle("arrow-scale").value}})};n3={};n3.projectIntoViewport=function(A,e){var t=this.cy,r=this.findContainerClientCoords(),i=r[0],u=r[1],a=r[4],n=t.pan(),o=t.zoom(),s=((A-i)/a-n.x)/o,l=((e-u)/a-n.y)/o;return[s,l]};n3.findContainerClientCoords=function(){if(this.containerBB)return this.containerBB;var A=this.container,e=A.getBoundingClientRect(),t=this.cy.window().getComputedStyle(A),r=function(h){return parseFloat(t.getPropertyValue(h))},i={left:r("padding-left"),right:r("padding-right"),top:r("padding-top"),bottom:r("padding-bottom")},u={left:r("border-left-width"),right:r("border-right-width"),top:r("border-top-width"),bottom:r("border-bottom-width")},{clientWidth:a,clientHeight:n}=A,o=i.left+i.right,s=i.top+i.bottom,l=u.left+u.right,g=e.width/(a+l),C=a-o,B=n-s,E=e.left+i.left+u.left,d=e.top+i.top+u.top;return this.containerBB=[E,d,C,B,g]};n3.invalidateContainerClientCoordsCache=function(){this.containerBB=null};n3.findNearestElement=function(A,e,t,r){return this.findNearestElements(A,e,t,r)[0]};n3.findNearestElements=function(A,e,t,r){var i=this,u=this,a=u.getCachedZSortedEles(),n=[],o=u.cy.zoom(),s=u.cy.hasCompoundNodes(),l=(r?24:8)/o,g=(r?8:2)/o,C=(r?8:2)/o,B=1/0,E,d;if(t)a=a.interactive;function I(w,b){if(w.isNode())if(d)return;else d=w,n.push(w);if(w.isEdge()&&(b==null||b<B))if(E){if(E.pstyle("z-compound-depth").value===w.pstyle("z-compound-depth").value&&E.pstyle("z-compound-depth").value===w.pstyle("z-compound-depth").value){for(var F=0;F<n.length;F++)if(n[F].isEdge()){n[F]=w,E=w,B=b!=null?b:B;break}}}else n.push(w),E=w,B=b!=null?b:B}function h(w){var b=w.outerWidth()+2*g,F=w.outerHeight()+2*g,v=b/2,S=F/2,x=w.position(),k=w.pstyle("corner-radius").value==="auto"?"auto":w.pstyle("corner-radius").pfValue,T=w._private.rscratch;if(x.x-v<=A&&A<=x.x+v&&x.y-S<=e&&e<=x.y+S){var R=u.nodeShapes[i.getNodeShape(w)];if(R.checkPoint(A,e,0,b,F,x.x,x.y,k,T))return I(w,0),!0}}function Q(w){var b=w._private,F=b.rscratch,v=w.pstyle("width").pfValue,S=w.pstyle("arrow-scale").value,x=v/2+l,k=x*x,T=x*2,{source:U,target:Y}=b,R;if(F.edgeType==="segments"||F.edgeType==="straight"||F.edgeType==="haystack"){var L=F.allpts;for(var M=0;M+3<L.length;M+=2)if(t4t(A,e,L[M],L[M+1],L[M+2],L[M+3],T)&&k>(R=n4t(A,e,L[M],L[M+1],L[M+2],L[M+3])))return I(w,R),!0}else if(F.edgeType==="bezier"||F.edgeType==="multibezier"||F.edgeType==="self"||F.edgeType==="compound"){var L=F.allpts;for(var M=0;M+5<F.allpts.length;M+=4)if(r4t(A,e,L[M],L[M+1],L[M+2],L[M+3],L[M+4],L[M+5],T)&&k>(R=a4t(A,e,L[M],L[M+1],L[M+2],L[M+3],L[M+4],L[M+5])))return I(w,R),!0}var U=U||b.source,Y=Y||b.target,H=i.getArrowWidth(v,S),J=[{name:"source",x:F.arrowStartX,y:F.arrowStartY,angle:F.srcArrowAngle},{name:"target",x:F.arrowEndX,y:F.arrowEndY,angle:F.tgtArrowAngle},{name:"mid-source",x:F.midX,y:F.midY,angle:F.midsrcArrowAngle},{name:"mid-target",x:F.midX,y:F.midY,angle:F.midtgtArrowAngle}];for(var M=0;M<J.length;M++){var K=J[M],O=u.arrowShapes[w.pstyle(K.name+"-arrow-shape").value],_=w.pstyle("width").pfValue;if(O.roughCollide(A,e,H,K.angle,{x:K.x,y:K.y},_,l)&&O.collide(A,e,H,K.angle,{x:K.x,y:K.y},_,l))return I(w),!0}if(s&&n.length>0)h(U),h(Y)}function p(w,b,F){return fs(w,b,F)}function m(w,b){var F=w._private,v=C,S;if(b)S=b+"-";else S="";w.boundingBox();var x=F.labelBounds[b||"main"],k=w.pstyle(S+"label").value,T=w.pstyle("text-events").strValue==="yes";if(!T||!k)return;var R=p(F.rscratch,"labelX",b),L=p(F.rscratch,"labelY",b),M=p(F.rscratch,"labelAngle",b),U=w.pstyle(S+"text-margin-x").pfValue,Y=w.pstyle(S+"text-margin-y").pfValue,H=x.x1-v-U,J=x.x2+v-U,K=x.y1-v-Y,O=x.y2+v-Y;if(M){var _=Math.cos(M),z=Math.sin(M),j=function(RA,wA){return RA=RA-R,wA=wA-L,{x:RA*_-wA*z+R,y:RA*z+wA*_+L}},q=j(H,K),CA=j(H,O),tA=j(J,K),lA=j(J,O),gA=[q.x+U,q.y+Y,tA.x+U,tA.y+Y,lA.x+U,lA.y+Y,CA.x+U,CA.y+Y];if(dl(A,e,gA))return I(w),!0}else if(f4(x,A,e))return I(w),!0}for(var f=a.length-1;f>=0;f--){var D=a[f];if(D.isNode())h(D)||m(D);else Q(D)||m(D)||m(D,"source")||m(D,"target")}return n};n3.getAllInBox=function(A,e,t,r){var i=this.getCachedZSortedEles().interactive,u=this.cy.zoom(),a=2/u,n=[],o=Math.min(A,t),s=Math.max(A,t),l=Math.min(e,r),g=Math.max(e,r);A=o,t=s,e=l,r=g;var C=ms({x1:A,y1:e,x2:t,y2:r}),B=[{x:C.x1,y:C.y1},{x:C.x2,y:C.y1},{x:C.x2,y:C.y2},{x:C.x1,y:C.y2}],E=[[B[0],B[1]],[B[1],B[2]],[B[2],B[3]],[B[3],B[0]]];function d(RA,wA,JA){return fs(RA,wA,JA)}function I(RA,wA){var JA=RA._private,TA=a,qA="";RA.boundingBox();var BA=JA.labelBounds.main;if(!BA)return null;var bA=d(JA.rscratch,"labelX",wA),FA=d(JA.rscratch,"labelY",wA),IA=d(JA.rscratch,"labelAngle",wA),nA=RA.pstyle(qA+"text-margin-x").pfValue,eA=RA.pstyle(qA+"text-margin-y").pfValue,EA=BA.x1-TA-nA,mA=BA.x2+TA-nA,kA=BA.y1-TA-eA,SA=BA.y2+TA-eA;if(IA){var YA=Math.cos(IA),dA=Math.sin(IA),W=function(pA,AA){return pA=pA-bA,AA=AA-FA,{x:pA*YA-AA*dA+bA,y:pA*dA+AA*YA+FA}};return[W(EA,kA),W(mA,kA),W(mA,SA),W(EA,SA)]}else return[{x:EA,y:kA},{x:mA,y:kA},{x:mA,y:SA},{x:EA,y:SA}]}function h(RA,wA,JA,TA){function qA(BA,bA,FA){return(FA.y-BA.y)*(bA.x-BA.x)>(bA.y-BA.y)*(FA.x-BA.x)}return qA(RA,JA,TA)!==qA(wA,JA,TA)&&qA(RA,wA,JA)!==qA(RA,wA,TA)}for(var Q=0;Q<i.length;Q++){var p=i[Q];if(p.isNode()){var m=p,f=m.pstyle("text-events").strValue==="yes",D=m.pstyle("box-selection").strValue,w=m.pstyle("box-select-labels").strValue==="yes";if(D==="none")continue;var b=(D==="overlap"||w)&&f,F=m.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:b});if(D==="contain"){var v=!1;if(w&&f){var S=I(m);if(S&&auA(S,B))n.push(m),v=!0}if(!v&&yKA(C,F))n.push(m)}else if(D==="overlap"){if(WaA(C,F)){var x=m.boundingBox({includeNodes:!0,includeEdges:!0,includeLabels:!1,includeMainLabels:!1,includeSourceLabels:!1,includeTargetLabels:!1}),k=[{x:x.x1,y:x.y1},{x:x.x2,y:x.y1},{x:x.x2,y:x.y2},{x:x.x1,y:x.y2}];if(auA(k,B))n.push(m);else{var T=I(m);if(T&&auA(T,B))n.push(m)}}}}else{var R=p,L=R._private,M=L.rscratch,U=R.pstyle("box-selection").strValue;if(U==="none")continue;if(U==="contain"){if(M.startX!=null&&M.startY!=null&&!f4(C,M.startX,M.startY))continue;if(M.endX!=null&&M.endY!=null&&!f4(C,M.endX,M.endY))continue;if(M.edgeType==="bezier"||M.edgeType==="multibezier"||M.edgeType==="self"||M.edgeType==="compound"||M.edgeType==="segments"||M.edgeType==="haystack"){var Y=L.rstyle.bezierPts||L.rstyle.linePts||L.rstyle.haystackPts,H=!0;for(var J=0;J<Y.length;J++)if(!VTA(C,Y[J])){H=!1;break}if(H)n.push(R)}else if(M.edgeType==="straight")n.push(R)}else if(U==="overlap"){var K=!1;if(M.startX!=null&&M.startY!=null&&M.endX!=null&&M.endY!=null&&(f4(C,M.startX,M.startY)||f4(C,M.endX,M.endY)))n.push(R),K=!0;else if(!K&&M.edgeType==="haystack"){var O=L.rstyle.haystackPts;for(var _=0;_<O.length;_++)if(VTA(C,O[_])){n.push(R),K=!0;break}}if(!K){var z=L.rstyle.bezierPts||L.rstyle.linePts||L.rstyle.haystackPts;if((!z||z.length<2)&&M.edgeType==="straight"){if(M.startX!=null&&M.startY!=null&&M.endX!=null&&M.endY!=null)z=[{x:M.startX,y:M.startY},{x:M.endX,y:M.endY}]}if(!z||z.length<2)continue;for(var j=0;j<z.length-1;j++){var q=z[j],CA=z[j+1];for(var tA=0;tA<E.length;tA++){var lA=Tn(E[tA],2),gA=lA[0],aA=lA[1];if(h(q,CA,gA,aA)){n.push(R),K=!0;break}}if(K)break}}}}}return n};PT={};PT.calculateArrowAngles=function(A){var e=A._private.rscratch,t=e.edgeType==="haystack",r=e.edgeType==="bezier",i=e.edgeType==="multibezier",u=e.edgeType==="segments",a=e.edgeType==="compound",n=e.edgeType==="self",o,s,l,g,C,B,h,Q;if(t)l=e.haystackPts[0],g=e.haystackPts[1],C=e.haystackPts[2],B=e.haystackPts[3];else l=e.arrowStartX,g=e.arrowStartY,C=e.arrowEndX,B=e.arrowEndY;if(h=e.midX,Q=e.midY,u)o=l-e.segpts[0],s=g-e.segpts[1];else if(i||a||n||r){var E=e.allpts,d=Ro(E[0],E[2],E[4],0.1),I=Ro(E[1],E[3],E[5],0.1);o=l-d,s=g-I}else o=l-h,s=g-Q;e.srcArrowAngle=cT(o,s);var{midX:h,midY:Q}=e;if(t)h=(l+C)/2,Q=(g+B)/2;if(o=C-l,s=B-g,u){var E=e.allpts;if(E.length/2%2===0){var p=E.length/2,m=p-2;o=E[p]-E[m],s=E[p+1]-E[m+1]}else if(e.isRound)o=e.midVector[1],s=-e.midVector[0];else{var p=E.length/2-1,m=p-2;o=E[p]-E[m],s=E[p+1]-E[m+1]}}else if(i||a||n){var{allpts:E,ctrlpts:f}=e,D,w,b,F;if(f.length/2%2===0){var v=E.length/2-1,S=v+2,x=S+2;D=Ro(E[v],E[S],E[x],0),w=Ro(E[v+1],E[S+1],E[x+1],0),b=Ro(E[v],E[S],E[x],0.0001),F=Ro(E[v+1],E[S+1],E[x+1],0.0001)}else{var S=E.length/2-1,v=S-2,x=S+2;D=Ro(E[v],E[S],E[x],0.4999),w=Ro(E[v+1],E[S+1],E[x+1],0.4999),b=Ro(E[v],E[S],E[x],0.5),F=Ro(E[v+1],E[S+1],E[x+1],0.5)}o=b-D,s=F-w}if(e.midtgtArrowAngle=cT(o,s),e.midDispX=o,e.midDispY=s,o*=-1,s*=-1,u){var E=e.allpts;if(E.length/2%2===0);else if(!e.isRound){var p=E.length/2-1,k=p+2;o=-(E[k]-E[p]),s=-(E[k+1]-E[p+1])}}if(e.midsrcArrowAngle=cT(o,s),u)o=C-e.segpts[e.segpts.length-2],s=B-e.segpts[e.segpts.length-1];else if(i||a||n||r){var E=e.allpts,T=E.length,d=Ro(E[T-6],E[T-4],E[T-2],0.9),I=Ro(E[T-5],E[T-3],E[T-1],0.9);o=C-d,s=B-I}else o=C-h,s=B-Q;e.tgtArrowAngle=cT(o,s)};PT.getArrowWidth=PT.getArrowHeight=function(A,e){var t=this.arrowWidthCache=this.arrowWidthCache||{},r=t[A+", "+e];if(r)return r;return r=Math.max(Math.pow(A*13.37,0.9),29)*e,t[A+", "+e]=r,r};SE={},oc={};bft=Math.sqrt(2*zk),K0={};K0.findMidptPtsEtc=function(A,e){var{posPts:t,intersectionPts:r,vectorNormInverse:i}=e,u,a=A.pstyle("source-endpoint"),n=A.pstyle("target-endpoint"),o=a.units!=null&&n.units!=null,s=function(f,D,w,b){var F=b-D,v=w-f,S=Math.sqrt(v*v+F*F);return{x:-F/S,y:v/S}},l=A.pstyle("edge-distances").value;switch(l){case"node-position":u=t;break;case"intersection":u=r;break;case"endpoints":{if(o){var g=this.manualEndptToPx(A.source()[0],a),C=Tn(g,2),B=C[0],E=C[1],d=this.manualEndptToPx(A.target()[0],n),I=Tn(d,2),h=I[0],Q=I[1],p={x1:B,y1:E,x2:h,y2:Q};i=s(B,E,h,Q),u=p}else du("Edge ".concat(A.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),u=r;break}}return{midptPts:u,vectorNormInverse:i}};K0.findHaystackPoints=function(A){for(var e=0;e<A.length;e++){var t=A[e],r=t._private,i=r.rscratch;if(!i.haystack){var u=Math.random()*2*Math.PI;i.source={x:Math.cos(u),y:Math.sin(u)},u=Math.random()*2*Math.PI,i.target={x:Math.cos(u),y:Math.sin(u)}}var{source:a,target:n}=r,o=a.position(),s=n.position(),l=a.width(),g=n.width(),C=a.height(),B=n.height(),E=t.pstyle("haystack-radius").value,d=E/2;i.haystackPts=i.allpts=[i.source.x*l*d+o.x,i.source.y*C*d+o.y,i.target.x*g*d+s.x,i.target.y*B*d+s.y],i.midX=(i.allpts[0]+i.allpts[2])/2,i.midY=(i.allpts[1]+i.allpts[3])/2,i.edgeType="haystack",i.haystack=!0,this.storeEdgeProjections(t),this.calculateArrowAngles(t),this.recalculateEdgeLabelProjections(t),this.calculateLabelAngles(t)}};K0.findSegmentsPoints=function(A,e){var t=A._private.rscratch,r=A.pstyle("segment-weights"),i=A.pstyle("segment-distances"),u=A.pstyle("segment-radii"),a=A.pstyle("radius-type"),n=Math.min(r.pfValue.length,i.pfValue.length),o=u.pfValue[u.pfValue.length-1],s=a.pfValue[a.pfValue.length-1];t.edgeType="segments",t.segpts=[],t.radii=[],t.isArcRadius=[];for(var l=0;l<n;l++){var g=r.pfValue[l],C=i.pfValue[l],B=1-g,E=g,d=this.findMidptPtsEtc(A,e),{midptPts:I,vectorNormInverse:h}=d,Q={x:I.x1*B+I.x2*E,y:I.y1*B+I.y2*E};t.segpts.push(Q.x+h.x*C,Q.y+h.y*C),t.radii.push(u.pfValue[l]!==void 0?u.pfValue[l]:o),t.isArcRadius.push((a.pfValue[l]!==void 0?a.pfValue[l]:s)==="arc-radius")}};K0.findLoopPoints=function(A,e,t,r){var i=A._private.rscratch,{dirCounts:u,srcPos:a}=e,n=A.pstyle("control-point-distances"),o=n?n.pfValue[0]:void 0,s=A.pstyle("loop-direction").pfValue,l=A.pstyle("loop-sweep").pfValue,g=A.pstyle("control-point-step-size").pfValue;i.edgeType="self";var C=t,B=g;if(r)C=0,B=o;var E=s-Math.PI/2,d=E-l/2,I=E+l/2,h=String(s+"_"+l);C=u[h]===void 0?u[h]=0:++u[h],i.ctrlpts=[a.x+Math.cos(d)*1.4*B*(C/3+1),a.y+Math.sin(d)*1.4*B*(C/3+1),a.x+Math.cos(I)*1.4*B*(C/3+1),a.y+Math.sin(I)*1.4*B*(C/3+1)]};K0.findCompoundLoopPoints=function(A,e,t,r){var i=A._private.rscratch;i.edgeType="compound";var{srcPos:u,tgtPos:a,srcW:n,srcH:o,tgtW:s,tgtH:l}=e,g=A.pstyle("control-point-step-size").pfValue,C=A.pstyle("control-point-distances"),B=C?C.pfValue[0]:void 0,E=t,d=g;if(r)E=0,d=B;var I=50,h={x:u.x-n/2,y:u.y-o/2},Q={x:a.x-s/2,y:a.y-l/2},p={x:Math.min(h.x,Q.x),y:Math.min(h.y,Q.y)},m=0.5,f=Math.max(m,Math.log(n*zk)),D=Math.max(m,Math.log(s*zk));i.ctrlpts=[p.x,p.y-(1+Math.pow(I,1.12)/100)*d*(E/3+1)*f,p.x-(1+Math.pow(I,1.12)/100)*d*(E/3+1)*D,p.y]};K0.findStraightEdgePoints=function(A){A._private.rscratch.edgeType="straight"};K0.findBezierPoints=function(A,e,t,r,i){var u=A._private.rscratch,a=A.pstyle("control-point-step-size").pfValue,n=A.pstyle("control-point-distances"),o=A.pstyle("control-point-weights"),s=n&&o?Math.min(n.value.length,o.value.length):1,l=n?n.pfValue[0]:void 0,g=o.value[0],C=r;u.edgeType=C?"multibezier":"bezier",u.ctrlpts=[];for(var B=0;B<s;B++){var E=(0.5-e.eles.length/2+t)*a*(i?-1:1),d=void 0,I=_aA(E);if(C)l=n?n.pfValue[B]:a,g=o.value[B];if(r)d=l;else d=l!==void 0?I*l:void 0;var h=d!==void 0?d:E,Q=1-g,p=g,m=this.findMidptPtsEtc(A,e),{midptPts:f,vectorNormInverse:D}=m,w={x:f.x1*Q+f.x2*p,y:f.y1*Q+f.y2*p};u.ctrlpts.push(w.x+D.x*h,w.y+D.y*h)}};K0.findTaxiPoints=function(A,e){var t=A._private.rscratch;t.edgeType="segments";var r="vertical",i="horizontal",u="leftward",a="rightward",n="downward",o="upward",s="auto",{posPts:l,srcW:g,srcH:C,tgtW:B,tgtH:E}=e,d=A.pstyle("edge-distances").value,I=d!=="node-position",h=A.pstyle("taxi-direction").value,Q=h,p=A.pstyle("taxi-turn"),m=p.units==="%",f=p.pfValue,D=f<0,w=A.pstyle("taxi-turn-min-distance").pfValue,b=I?(g+B)/2:0,F=I?(C+E)/2:0,v=l.x2-l.x1,S=l.y2-l.y1,x=function(AA,DA){if(AA>0)return Math.max(AA-DA,0);else return Math.min(AA+DA,0)},k=x(v,b),T=x(S,F),R=!1;if(Q===s)h=Math.abs(k)>Math.abs(T)?i:r;else if(Q===o||Q===n)h=r,R=!0;else if(Q===u||Q===a)h=i,R=!0;var L=h===r,M=L?T:k,U=L?S:v,Y=_aA(U),H=!1;if(!(R&&(m||D))&&(Q===n&&U<0||Q===o&&U>0||Q===u&&U>0||Q===a&&U<0))Y*=-1,M=Y*Math.abs(M),H=!0;var J;if(m){var K=f<0?1+f:f;J=K*M}else{var O=f<0?M:0;J=O+f*Y}var _=function(AA){return Math.abs(AA)<w||Math.abs(AA)>=Math.abs(M)},z=_(J),j=_(Math.abs(M)-Math.abs(J)),q=z||j;if(q&&!H)if(L){var CA=Math.abs(U)<=C/2,tA=Math.abs(v)<=B/2;if(CA){var lA=(l.x1+l.x2)/2,{y1:gA,y2:aA}=l;t.segpts=[lA,gA,lA,aA]}else if(tA){var RA=(l.y1+l.y2)/2,{x1:wA,x2:JA}=l;t.segpts=[wA,RA,JA,RA]}else t.segpts=[l.x1,l.y2]}else{var TA=Math.abs(U)<=g/2,qA=Math.abs(S)<=E/2;if(TA){var BA=(l.y1+l.y2)/2,{x1:bA,x2:FA}=l;t.segpts=[bA,BA,FA,BA]}else if(qA){var IA=(l.x1+l.x2)/2,{y1:nA,y2:eA}=l;t.segpts=[IA,nA,IA,eA]}else t.segpts=[l.x2,l.y1]}else if(L){var EA=l.y1+J+(I?C/2*Y:0),{x1:mA,x2:kA}=l;t.segpts=[mA,EA,kA,EA]}else{var SA=l.x1+J+(I?g/2*Y:0),{y1:YA,y2:dA}=l;t.segpts=[SA,YA,SA,dA]}if(t.isRound){var W=A.pstyle("taxi-radius").value,Z=A.pstyle("radius-type").value[0]==="arc-radius";t.radii=Array(t.segpts.length/2).fill(W),t.isArcRadius=Array(t.segpts.length/2).fill(Z)}};K0.tryToCorrectInvalidPoints=function(A,e){var t=A._private.rscratch;if(t.edgeType==="bezier"){var{srcPos:r,tgtPos:i,srcW:u,srcH:a,tgtW:n,tgtH:o,srcShape:s,tgtShape:l,srcCornerRadius:g,tgtCornerRadius:C,srcRs:B,tgtRs:E}=e,d=!Qt(t.startX)||!Qt(t.startY),I=!Qt(t.arrowStartX)||!Qt(t.arrowStartY),h=!Qt(t.endX)||!Qt(t.endY),Q=!Qt(t.arrowEndX)||!Qt(t.arrowEndY),p=3,m=this.getArrowWidth(A.pstyle("width").pfValue,A.pstyle("arrow-scale").value)*this.arrowShapeWidth,f=p*m,D=r3({x:t.ctrlpts[0],y:t.ctrlpts[1]},{x:t.startX,y:t.startY}),w=D<f,b=r3({x:t.ctrlpts[0],y:t.ctrlpts[1]},{x:t.endX,y:t.endY}),F=b<f,v=!1;if(d||I||w){v=!0;var S={x:t.ctrlpts[0]-r.x,y:t.ctrlpts[1]-r.y},x=Math.sqrt(S.x*S.x+S.y*S.y),k={x:S.x/x,y:S.y/x},T=Math.max(u,a),R={x:t.ctrlpts[0]+k.x*2*T,y:t.ctrlpts[1]+k.y*2*T},L=s.intersectLine(r.x,r.y,u,a,R.x,R.y,0,g,B);if(w)t.ctrlpts[0]=t.ctrlpts[0]+k.x*(f-D),t.ctrlpts[1]=t.ctrlpts[1]+k.y*(f-D);else t.ctrlpts[0]=L[0]+k.x*f,t.ctrlpts[1]=L[1]+k.y*f}if(h||Q||F){v=!0;var M={x:t.ctrlpts[0]-i.x,y:t.ctrlpts[1]-i.y},U=Math.sqrt(M.x*M.x+M.y*M.y),Y={x:M.x/U,y:M.y/U},H=Math.max(u,a),J={x:t.ctrlpts[0]+Y.x*2*H,y:t.ctrlpts[1]+Y.y*2*H},K=l.intersectLine(i.x,i.y,n,o,J.x,J.y,0,C,E);if(F)t.ctrlpts[0]=t.ctrlpts[0]+Y.x*(f-b),t.ctrlpts[1]=t.ctrlpts[1]+Y.y*(f-b);else t.ctrlpts[0]=K[0]+Y.x*f,t.ctrlpts[1]=K[1]+Y.y*f}if(v)this.findEndpoints(A)}};K0.storeAllpts=function(A){var e=A._private.rscratch;if(e.edgeType==="multibezier"||e.edgeType==="bezier"||e.edgeType==="self"||e.edgeType==="compound"){e.allpts=[],e.allpts.push(e.startX,e.startY);for(var t=0;t+1<e.ctrlpts.length;t+=2)if(e.allpts.push(e.ctrlpts[t],e.ctrlpts[t+1]),t+3<e.ctrlpts.length)e.allpts.push((e.ctrlpts[t]+e.ctrlpts[t+2])/2,(e.ctrlpts[t+1]+e.ctrlpts[t+3])/2);e.allpts.push(e.endX,e.endY);var r,i;if(e.ctrlpts.length/2%2===0)r=e.allpts.length/2-1,e.midX=e.allpts[r],e.midY=e.allpts[r+1];else r=e.allpts.length/2-3,i=0.5,e.midX=Ro(e.allpts[r],e.allpts[r+2],e.allpts[r+4],i),e.midY=Ro(e.allpts[r+1],e.allpts[r+3],e.allpts[r+5],i)}else if(e.edgeType==="straight")e.allpts=[e.startX,e.startY,e.endX,e.endY],e.midX=(e.startX+e.endX+e.arrowStartX+e.arrowEndX)/4,e.midY=(e.startY+e.endY+e.arrowStartY+e.arrowEndY)/4;else if(e.edgeType==="segments"){if(e.allpts=[],e.allpts.push(e.startX,e.startY),e.allpts.push.apply(e.allpts,e.segpts),e.allpts.push(e.endX,e.endY),e.isRound){e.roundCorners=[];for(var u=2;u+3<e.allpts.length;u+=2){var a=e.radii[u/2-1],n=e.isArcRadius[u/2-1];e.roundCorners.push(inA({x:e.allpts[u-2],y:e.allpts[u-1]},{x:e.allpts[u],y:e.allpts[u+1],radius:a},{x:e.allpts[u+2],y:e.allpts[u+3]},a,n))}}if(e.segpts.length%4===0){var o=e.segpts.length/2,s=o-2;e.midX=(e.segpts[s]+e.segpts[o])/2,e.midY=(e.segpts[s+1]+e.segpts[o+1])/2}else{var l=e.segpts.length/2-1;if(!e.isRound)e.midX=e.segpts[l],e.midY=e.segpts[l+1];else{var g={x:e.segpts[l],y:e.segpts[l+1]},C=e.roundCorners[l/2];if(C.radius===0){var B={x:e.segpts[l+2],y:e.segpts[l+3]};e.midX=g.x,e.midY=g.y,e.midVector=[g.y-B.y,B.x-g.x]}else{var E=[g.x-C.cx,g.y-C.cy],d=C.radius/Math.sqrt(Math.pow(E[0],2)+Math.pow(E[1],2));E=E.map(function(I){return I*d}),e.midX=C.cx+E[0],e.midY=C.cy+E[1],e.midVector=E}}}}};K0.checkForInvalidEdgeWarning=function(A){var e=A[0]._private.rscratch;if(e.nodesOverlap||Qt(e.startX)&&Qt(e.startY)&&Qt(e.endX)&&Qt(e.endY))e.loggedErr=!1;else if(!e.loggedErr)e.loggedErr=!0,du("Edge `"+A.id()+"` has invalid endpoints and so it is impossible to draw. Adjust your edge style (e.g. control points) accordingly or use an alternative edge type. This is expected behaviour when the source node and the target node overlap.")};K0.findEdgeControlPoints=function(A){var e=this;if(!A||A.length===0)return;var t=this,r=t.cy,i=r.hasCompoundNodes(),u=new GI,a=function(F,v){return[].concat(NT(F),[v?1:0]).join("-")},n=[],o=[];for(var s=0;s<A.length;s++){var l=A[s],g=l._private,C=l.pstyle("curve-style").value;if(l.removed()||!l.takesUpSpace())continue;if(C==="haystack"){o.push(l);continue}var B=C==="unbundled-bezier"||p4(C,"segments")||C==="straight"||C==="straight-triangle"||p4(C,"taxi"),E=C==="unbundled-bezier"||C==="bezier",{source:d,target:I}=g,h=d.poolIndex(),Q=I.poolIndex(),p=[h,Q].sort(),m=a(p,B),f=u.get(m);if(f==null)f={eles:[]},n.push({pairId:p,edgeIsUnbundled:B}),u.set(m,f);if(f.eles.push(l),B)f.hasUnbundled=!0;if(E)f.hasBezier=!0}var D=function(){var F=n[w],{pairId:v,edgeIsUnbundled:S}=F,x=a(v,S),k=u.get(x),T;if(!k.hasUnbundled){var R=k.eles[0].parallelEdges().filter(function(Z){return Z.isBundledBezier()});OaA(k.eles),R.forEach(function(Z){return k.eles.push(Z)}),k.eles.sort(function(Z,pA){return Z.poolIndex()-pA.poolIndex()})}var L=k.eles[0],M=L.source(),U=L.target();if(M.poolIndex()>U.poolIndex()){var Y=M;M=U,U=Y}var H=k.srcPos=M.position(),J=k.tgtPos=U.position(),K=k.srcW=M.outerWidth(),O=k.srcH=M.outerHeight(),_=k.tgtW=U.outerWidth(),z=k.tgtH=U.outerHeight(),j=k.srcShape=t.nodeShapes[e.getNodeShape(M)],q=k.tgtShape=t.nodeShapes[e.getNodeShape(U)],CA=k.srcCornerRadius=M.pstyle("corner-radius").value==="auto"?"auto":M.pstyle("corner-radius").pfValue,tA=k.tgtCornerRadius=U.pstyle("corner-radius").value==="auto"?"auto":U.pstyle("corner-radius").pfValue,lA=k.tgtRs=U._private.rscratch,gA=k.srcRs=M._private.rscratch;k.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var aA=0;aA<k.eles.length;aA++){var RA=k.eles[aA],wA=RA[0]._private.rscratch,JA=RA.pstyle("curve-style").value,TA=JA==="unbundled-bezier"||p4(JA,"segments")||p4(JA,"taxi"),qA=!M.same(RA.source());if(!k.calculatedIntersection&&M!==U&&(k.hasBezier||k.hasUnbundled)){k.calculatedIntersection=!0;var BA=j.intersectLine(H.x,H.y,K,O,J.x,J.y,0,CA,gA),bA=k.srcIntn=BA,FA=q.intersectLine(J.x,J.y,_,z,H.x,H.y,0,tA,lA),IA=k.tgtIntn=FA,nA=k.intersectionPts={x1:BA[0],x2:FA[0],y1:BA[1],y2:FA[1]},eA=k.posPts={x1:H.x,x2:J.x,y1:H.y,y2:J.y},EA=FA[1]-BA[1],mA=FA[0]-BA[0],kA=Math.sqrt(mA*mA+EA*EA);if(Qt(kA)&&kA>=bft);else kA=Math.sqrt(Math.max(mA*mA,zk)+Math.max(EA*EA,zk));var SA=k.vector={x:mA,y:EA},YA=k.vectorNorm={x:SA.x/kA,y:SA.y/kA},dA={x:-YA.y,y:YA.x};k.nodesOverlap=!Qt(kA)||q.checkPoint(BA[0],BA[1],0,_,z,J.x,J.y,tA,lA)||j.checkPoint(FA[0],FA[1],0,K,O,H.x,H.y,CA,gA),k.vectorNormInverse=dA,T={nodesOverlap:k.nodesOverlap,dirCounts:k.dirCounts,calculatedIntersection:!0,hasBezier:k.hasBezier,hasUnbundled:k.hasUnbundled,eles:k.eles,srcPos:J,srcRs:lA,tgtPos:H,tgtRs:gA,srcW:_,srcH:z,tgtW:K,tgtH:O,srcIntn:IA,tgtIntn:bA,srcShape:q,tgtShape:j,posPts:{x1:eA.x2,y1:eA.y2,x2:eA.x1,y2:eA.y1},intersectionPts:{x1:nA.x2,y1:nA.y2,x2:nA.x1,y2:nA.y1},vector:{x:-SA.x,y:-SA.y},vectorNorm:{x:-YA.x,y:-YA.y},vectorNormInverse:{x:-dA.x,y:-dA.y}}}var W=qA?T:k;if(wA.nodesOverlap=W.nodesOverlap,wA.srcIntn=W.srcIntn,wA.tgtIntn=W.tgtIntn,wA.isRound=JA.startsWith("round"),i&&(M.isParent()||M.isChild()||U.isParent()||U.isChild())&&(M.parents().anySame(U)||U.parents().anySame(M)||M.same(U)&&M.isParent()))e.findCompoundLoopPoints(RA,W,aA,TA);else if(M===U)e.findLoopPoints(RA,W,aA,TA);else if(JA.endsWith("segments"))e.findSegmentsPoints(RA,W);else if(JA.endsWith("taxi"))e.findTaxiPoints(RA,W);else if(JA==="straight"||!TA&&k.eles.length%2===1&&aA===Math.floor(k.eles.length/2))e.findStraightEdgePoints(RA);else e.findBezierPoints(RA,W,aA,TA,qA);e.findEndpoints(RA),e.tryToCorrectInvalidPoints(RA,W),e.checkForInvalidEdgeWarning(RA),e.storeAllpts(RA),e.storeEdgeProjections(RA),e.calculateArrowAngles(RA),e.recalculateEdgeLabelProjections(RA),e.calculateLabelAngles(RA)}};for(var w=0;w<n.length;w++)D();this.findHaystackPoints(o)};K0.getSegmentPoints=function(A){var e=A[0]._private.rscratch;this.recalculateRenderedStyle(A);var t=e.edgeType;if(t==="segments")return fJA(e.segpts)};K0.getControlPoints=function(A){var e=A[0]._private.rscratch;this.recalculateRenderedStyle(A);var t=e.edgeType;if(t==="bezier"||t==="multibezier"||t==="self"||t==="compound")return fJA(e.ctrlpts)};K0.getEdgeMidpoint=function(A){var e=A[0]._private.rscratch;return this.recalculateRenderedStyle(A),{x:e.midX,y:e.midY}};iF={};iF.manualEndptToPx=function(A,e){var t=this,r=A.position(),i=A.outerWidth(),u=A.outerHeight(),a=A._private.rscratch;if(e.value.length===2){var n=[e.pfValue[0],e.pfValue[1]];if(e.units[0]==="%")n[0]=n[0]*i;if(e.units[1]==="%")n[1]=n[1]*u;return n[0]+=r.x,n[1]+=r.y,n}else{var o=e.pfValue[0];o=-Math.PI/2+o;var s=2*Math.max(i,u),l=[r.x+Math.cos(o)*s,r.y+Math.sin(o)*s];return t.nodeShapes[this.getNodeShape(A)].intersectLine(r.x,r.y,i,u,l[0],l[1],0,A.pstyle("corner-radius").value==="auto"?"auto":A.pstyle("corner-radius").pfValue,a)}};iF.findEndpoints=function(A){var e,t,r,i,u=this,a,n=A.source()[0],o=A.target()[0],s=n.position(),l=o.position(),g=A.pstyle("target-arrow-shape").value,C=A.pstyle("source-arrow-shape").value,B=A.pstyle("target-distance-from-node").pfValue,E=A.pstyle("source-distance-from-node").pfValue,d=n._private.rscratch,I=o._private.rscratch,h=A.pstyle("curve-style").value,Q=A._private.rscratch,p=Q.edgeType,m=p4(h,"taxi"),f=p==="self"||p==="compound",D=p==="bezier"||p==="multibezier"||f,w=p!=="bezier",b=p==="straight"||p==="segments",F=p==="segments",v=D||w||b,S=f||m,x=A.pstyle("source-endpoint"),k=S?"outside-to-node":x.value,T=n.pstyle("corner-radius").value==="auto"?"auto":n.pstyle("corner-radius").pfValue,R=A.pstyle("target-endpoint"),L=S?"outside-to-node":R.value,M=o.pstyle("corner-radius").value==="auto"?"auto":o.pstyle("corner-radius").pfValue;Q.srcManEndpt=x,Q.tgtManEndpt=R;var U,Y,H,J,K=(e=(R===null||R===void 0||(t=R.pfValue)===null||t===void 0?void 0:t.length)===2?R.pfValue:null)!==null&&e!==void 0?e:[0,0],O=(r=(x===null||x===void 0||(i=x.pfValue)===null||i===void 0?void 0:i.length)===2?x.pfValue:null)!==null&&r!==void 0?r:[0,0];if(D){var _=[Q.ctrlpts[0],Q.ctrlpts[1]],z=w?[Q.ctrlpts[Q.ctrlpts.length-2],Q.ctrlpts[Q.ctrlpts.length-1]]:_;U=z,Y=_}else if(b){var j=!F?[l.x+K[0],l.y+K[1]]:Q.segpts.slice(0,2),q=!F?[s.x+O[0],s.y+O[1]]:Q.segpts.slice(Q.segpts.length-2);U=q,Y=j}if(L==="inside-to-node")a=[l.x,l.y];else if(R.units)a=this.manualEndptToPx(o,R);else if(L==="outside-to-line")a=Q.tgtIntn;else{if(L==="outside-to-node"||L==="outside-to-node-or-label")H=U;else if(L==="outside-to-line"||L==="outside-to-line-or-label")H=[s.x,s.y];if(a=u.nodeShapes[this.getNodeShape(o)].intersectLine(l.x,l.y,o.outerWidth(),o.outerHeight(),H[0],H[1],0,M,I),L==="outside-to-node-or-label"||L==="outside-to-line-or-label"){var CA=o._private.rscratch,{labelWidth:tA,labelHeight:lA,labelX:gA,labelY:aA}=CA,RA=tA/2,wA=lA/2,JA=o.pstyle("text-valign").value;if(JA=Ew(JA),JA==="top")aA-=wA;else if(JA==="bottom")aA+=wA;var TA=o.pstyle("text-halign").value;if(TA=Bw(TA),TA==="left")gA-=RA;else if(TA==="right")gA+=RA;var qA=Ok(H[0],H[1],[gA-RA,aA-wA,gA+RA,aA-wA,gA+RA,aA+wA,gA-RA,aA+wA],l.x,l.y);if(qA.length>0){var BA=s,bA=jf(BA,iw(a)),FA=jf(BA,iw(qA)),IA=bA;if(FA<bA)a=qA,IA=FA;if(qA.length>2){var nA=jf(BA,{x:qA[2],y:qA[3]});if(nA<IA)a=[qA[2],qA[3]]}}}}var eA=CT(a,U,u.arrowShapes[g].spacing(A)+B),EA=CT(a,U,u.arrowShapes[g].gap(A)+B);if(Q.endX=EA[0],Q.endY=EA[1],Q.arrowEndX=eA[0],Q.arrowEndY=eA[1],k==="inside-to-node")a=[s.x,s.y];else if(x.units)a=this.manualEndptToPx(n,x);else if(k==="outside-to-line")a=Q.srcIntn;else{if(k==="outside-to-node"||k==="outside-to-node-or-label")J=Y;else if(k==="outside-to-line"||k==="outside-to-line-or-label")J=[l.x,l.y];if(a=u.nodeShapes[this.getNodeShape(n)].intersectLine(s.x,s.y,n.outerWidth(),n.outerHeight(),J[0],J[1],0,T,d),k==="outside-to-node-or-label"||k==="outside-to-line-or-label"){var mA=n._private.rscratch,{labelWidth:kA,labelHeight:SA,labelX:YA,labelY:dA}=mA,W=kA/2,Z=SA/2,pA=n.pstyle("text-valign").value;if(pA=Ew(pA),pA==="top")dA-=Z;else if(pA==="bottom")dA+=Z;var AA=n.pstyle("text-halign").value;if(AA=Bw(AA),AA==="left")YA-=W;else if(AA==="right")YA+=W;var DA=Ok(J[0],J[1],[YA-W,dA-Z,YA+W,dA-Z,YA+W,dA+Z,YA-W,dA+Z],s.x,s.y);if(DA.length>0){var rA=l,KA=jf(rA,iw(a)),_A=jf(rA,iw(DA)),zA=KA;if(_A<KA)a=[DA[0],DA[1]],zA=_A;if(DA.length>2){var WA=jf(rA,{x:DA[2],y:DA[3]});if(WA<zA)a=[DA[2],DA[3]]}}}}var te=CT(a,Y,u.arrowShapes[C].spacing(A)+E),ZA=CT(a,Y,u.arrowShapes[C].gap(A)+E);if(Q.startX=ZA[0],Q.startY=ZA[1],Q.arrowStartX=te[0],Q.arrowStartY=te[1],v)if(!Qt(Q.startX)||!Qt(Q.startY)||!Qt(Q.endX)||!Qt(Q.endY))Q.badLine=!0;else Q.badLine=!1};iF.getSourceEndpoint=function(A){var e=A[0]._private.rscratch;switch(this.recalculateRenderedStyle(A),e.edgeType){case"haystack":return{x:e.haystackPts[0],y:e.haystackPts[1]};default:return{x:e.arrowStartX,y:e.arrowStartY}}};iF.getTargetEndpoint=function(A){var e=A[0]._private.rscratch;switch(this.recalculateRenderedStyle(A),e.edgeType){case"haystack":return{x:e.haystackPts[2],y:e.haystackPts[3]};default:return{x:e.arrowEndX,y:e.arrowEndY}}};unA={};unA.storeEdgeProjections=function(A){var e=A._private,t=e.rscratch,r=t.edgeType;if(e.rstyle.bezierPts=null,e.rstyle.linePts=null,e.rstyle.haystackPts=null,r==="multibezier"||r==="bezier"||r==="self"||r==="compound"){e.rstyle.bezierPts=[];for(var i=0;i+5<t.allpts.length;i+=4)vft(this,A,t.allpts.slice(i,i+6))}else if(r==="segments"){var u=e.rstyle.linePts=[];for(var i=0;i+1<t.allpts.length;i+=2)u.push({x:t.allpts[i],y:t.allpts[i+1]})}else if(r==="haystack"){var a=t.haystackPts;e.rstyle.haystackPts=[{x:a[0],y:a[1]},{x:a[2],y:a[3]}]}e.rstyle.arrowWidth=this.getArrowWidth(A.pstyle("width").pfValue,A.pstyle("arrow-scale").value)*this.arrowShapeWidth};unA.recalculateEdgeProjections=function(A){this.findEdgeControlPoints(A)};GE={};GE.recalculateNodeLabelProjection=function(A){var e=A.pstyle("label").strValue;if(w4(e))return;var t,r,i=A._private,u=A.width(),a=A.height(),n=A.padding(),o=A.position(),s=A.pstyle("text-halign").strValue,l=A.pstyle("text-valign").strValue,{rscratch:g,rstyle:C}=i;switch(s){case"left":t=o.x-u/2-n;break;case"left-inside":t=o.x-u/2+n;break;case"right":t=o.x+u/2+n;break;case"right-inside":t=o.x+u/2-n;break;default:t=o.x}switch(l){case"top":r=o.y-a/2-n;break;case"top-inside":r=o.y-a/2+n;break;case"bottom":r=o.y+a/2+n;break;case"bottom-inside":r=o.y+a/2-n;break;default:r=o.y}g.labelX=t,g.labelY=r,C.labelX=t,C.labelY=r,this.calculateLabelAngles(A),this.applyLabelDimensions(A)};GE.recalculateEdgeLabelProjections=function(A){var e,t=A._private,r=t.rscratch,i=this,u={mid:A.pstyle("label").strValue,source:A.pstyle("source-label").strValue,target:A.pstyle("target-label").strValue};if(u.mid||u.source||u.target);else return;e={x:r.midX,y:r.midY};var a=function(g,C,B){LE(t.rscratch,g,C,B),LE(t.rstyle,g,C,B)};a("labelX",null,e.x),a("labelY",null,e.y);var n=mJA(r.midDispX,r.midDispY);a("labelAutoAngle",null,n);var o=function(){if(o.cache)return o.cache;var g=[];for(var C=0;C+5<r.allpts.length;C+=4){var B={x:r.allpts[C],y:r.allpts[C+1]},E={x:r.allpts[C+2],y:r.allpts[C+3]},d={x:r.allpts[C+4],y:r.allpts[C+5]};g.push({p0:B,p1:E,p2:d,startDist:0,length:0,segments:[]})}var I=t.rstyle.bezierPts,h=i.bezierProjPcts.length;function Q(w,b,F,v,S){var x=r3(b,F),k=w.segments[w.segments.length-1],T={p0:b,p1:F,t0:v,t1:S,startDist:k?k.startDist+k.length:0,length:x};w.segments.push(T),w.length+=x}for(var p=0;p<g.length;p++){var m=g[p],f=g[p-1];if(f)m.startDist=f.startDist+f.length;Q(m,m.p0,I[p*h],0,i.bezierProjPcts[0]);for(var D=0;D<h-1;D++)Q(m,I[p*h+D],I[p*h+D+1],i.bezierProjPcts[D],i.bezierProjPcts[D+1]);Q(m,I[p*h+h-1],m.p2,i.bezierProjPcts[h-1],1)}return o.cache=g},s=function(g){var C,B=g==="source";if(!u[g])return;var E=A.pstyle(g+"-text-offset").pfValue;switch(r.edgeType){case"self":case"compound":case"bezier":case"multibezier":{var d=o(),I,h=0,Q=0;for(var p=0;p<d.length;p++){var m=d[B?p:d.length-1-p];for(var f=0;f<m.segments.length;f++){var D=m.segments[B?f:m.segments.length-1-f],w=p===d.length-1&&f===m.segments.length-1;if(h=Q,Q+=D.length,Q>=E||w){I={cp:m,segment:D};break}}if(I)break}var b=I.cp,F=I.segment,v=(E-h)/F.length,S=F.t1-F.t0,x=B?F.t0+S*v:F.t1-S*v;x=Jk(0,x,1),e=nw(b.p0,b.p1,b.p2,x),C=kft(b.p0,b.p1,b.p2,x);break}case"straight":case"segments":case"haystack":{var k=0,T,R,L,M,U=r.allpts.length;for(var Y=0;Y+3<U;Y+=2){if(B)L={x:r.allpts[Y],y:r.allpts[Y+1]},M={x:r.allpts[Y+2],y:r.allpts[Y+3]};else L={x:r.allpts[U-2-Y],y:r.allpts[U-1-Y]},M={x:r.allpts[U-4-Y],y:r.allpts[U-3-Y]};if(T=r3(L,M),R=k,k+=T,k>=E)break}var H=E-R,J=H/T;J=Jk(0,J,1),e=ZQt(L,M,J),C=DJA(L,M);break}}a("labelX",g,e.x),a("labelY",g,e.y),a("labelAutoAngle",g,C)};s("source"),s("target"),this.applyLabelDimensions(A)};GE.applyLabelDimensions=function(A){if(this.applyPrefixedLabelDimensions(A),A.isEdge())this.applyPrefixedLabelDimensions(A,"source"),this.applyPrefixedLabelDimensions(A,"target")};GE.applyPrefixedLabelDimensions=function(A,e){var t=A._private,r=this.getLabelText(A,e),i=t3(r,A._private.labelDimsKey);if(fs(t.rscratch,"prefixedLabelDimsKey",e)===i)return;LE(t.rscratch,"prefixedLabelDimsKey",e,i);var u=this.calculateLabelDimensions(A,r),a=A.pstyle("line-height").pfValue,n=A.pstyle("font-size").pfValue,o=A.pstyle("text-wrap").strValue,s=fs(t.rscratch,"labelWrapCachedLines",e)||[],l=o!=="wrap"?1:Math.max(s.length,1),g=n*a,C=u.width,B=u.height+(l-1)*(a-1)*n;LE(t.rstyle,"labelWidth",e,C),LE(t.rscratch,"labelWidth",e,C),LE(t.rstyle,"labelHeight",e,B),LE(t.rscratch,"labelHeight",e,B),LE(t.rscratch,"labelLineHeight",e,g),LE(t.rscratch,"labelActualDescent",e,u.labelActualDescent)};GE.getLabelText=function(A,e){var t=A._private,r=e?e+"-":"",i=A.pstyle(r+"label").strValue,u=A.pstyle("text-transform").value,a=function(O,_){if(_)return LE(t.rscratch,O,e,_),_;else return fs(t.rscratch,O,e)};if(!i)return"";if(u=="none");else if(u=="uppercase")i=i.toUpperCase();else if(u=="lowercase")i=i.toLowerCase();var n=A.pstyle("text-wrap").value;if(n==="wrap"){var o=a("labelKey");if(o!=null&&a("labelWrapKey")===o)return a("labelWrapCachedText");var s="",l=i.split(`
|
||
`),g=A.pstyle("text-max-width").pfValue,C=A.pstyle("text-overflow-wrap").value,B=C==="anywhere",E=[],d=/[\s\u200b]+|$/g;for(var I=0;I<l.length;I++){var h=l[I],Q=this.calculateLabelDimensions(A,h),p=Q.width;if(B){var m=h.split("").join(s);h=m}if(p>g){var f=h.matchAll(d),D="",w=0,b=Il(f),F;try{for(b.s();!(F=b.n()).done;){var v=F.value,S=v[0],x=h.substring(w,v.index);w=v.index+S.length;var k=D.length===0?x:D+x+S,T=this.calculateLabelDimensions(A,k),R=T.width;if(R<=g)D+=x+S;else{if(D)E.push(D);D=x+S}}}catch(K){b.e(K)}finally{b.f()}if(!D.match(/^[\s\u200b]+$/))E.push(D)}else E.push(h)}a("labelWrapCachedLines",E),i=a("labelWrapCachedText",E.join(`
|
||
`)),a("labelWrapKey",o)}else if(n==="ellipsis"){var L=A.pstyle("text-max-width").pfValue,M="",U="…",Y=!1;if(this.calculateLabelDimensions(A,i).width<L)return i;for(var H=0;H<i.length;H++){var J=this.calculateLabelDimensions(A,M+i[H]+U).width;if(J>L)break;if(M+=i[H],H===i.length-1)Y=!0}if(!Y)M+=U;return M}return i};GE.getLabelJustification=function(A){var e=A.pstyle("text-justification").strValue,t=A.pstyle("text-halign").strValue;if(e==="auto")if(A.isNode())return Ept(t);else return"center";else return e};GE.calculateLabelDimensions=function(A,e){var t=this,r=t.cy.window(),i=r.document,u=0,a=A.pstyle("font-style").strValue,n=A.pstyle("font-size").pfValue,o=A.pstyle("font-family").strValue,s=A.pstyle("font-weight").strValue,l=A.pstyle("text-metrics").strValue||"font",g=this.labelCalcCanvas,C=this.labelCalcCanvasContext;if(!g){g=this.labelCalcCanvas=i.createElement("canvas"),C=this.labelCalcCanvasContext=g.getContext("2d");var B=g.style;B.position="absolute",B.left="-9999px",B.top="-9999px",B.zIndex="-1",B.visibility="hidden",B.pointerEvents="none"}C.font="".concat(a," ").concat(s," ").concat(n,"px ").concat(o);var E=0,d=0,I=e.split(`
|
||
`),h=I.length,Q=0,p=0;for(var m=0;m<h;m++){var f=I[m],D=C.measureText(f),w=Math.ceil(D.width),b=n;if(l==="glyph"){if(m===0)p=D.actualBoundingBoxAscent;if(m===h-1)Q=D.actualBoundingBoxDescent}E=Math.max(w,E),d+=b}if(l==="glyph")d-=n-p-Q;return E+=u,d+=u,{width:E,height:d,labelActualAscent:p,labelActualDescent:Q}};GE.calculateLabelAngle=function(A,e){var t=A._private,r=t.rscratch,i=A.isEdge(),u=e?e+"-":"",a=A.pstyle(u+"text-rotation"),n=a.strValue;if(n==="none")return 0;else if(i&&n==="autorotate")return r.labelAutoAngle;else if(n==="autorotate")return 0;else return a.pfValue};GE.calculateLabelAngles=function(A){var e=this,t=A.isEdge(),r=A._private,i=r.rscratch;if(i.labelAngle=e.calculateLabelAngle(A),t)i.sourceLabelAngle=e.calculateLabelAngle(A,"source"),i.targetLabelAngle=e.calculateLabelAngle(A,"target")};yJA={};yJA.getNodeShape=function(A){var e=this,t=A.pstyle("shape").value;if(t==="cutrectangle"&&(A.width()<UHA||A.height()<UHA)){if(!MHA)du("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),MHA=!0;return"rectangle"}if(A.isParent())if(t==="rectangle"||t==="roundrectangle"||t==="round-rectangle"||t==="cutrectangle"||t==="cut-rectangle"||t==="barrel")return t;else return"rectangle";if(t==="polygon"){var r=A.pstyle("shape-polygon-points").value;return e.nodeShapes.makePolygon(r).name}return t};lY={};lY.registerCalculationListeners=function(){var A=this.cy,e=A.collection(),t=this,r=function(a){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.merge(a),n)for(var o=0;o<a.length;o++){var s=a[o],l=s._private,g=l.rstyle;g.clean=!1,g.cleanConnected=!1}};t.binder(A).on("bounds.* dirty.*",function(a){var n=a.target;r(n)}).on("style.* background.*",function(a){var n=a.target;r(n,!1)});var i=function(a){if(a){var n=t.onUpdateEleCalcsFns;e.cleanStyle();for(var o=0;o<e.length;o++){var s=e[o],l=s._private.rstyle;if(s.isNode()&&!l.cleanConnected)r(s.connectedEdges()),l.cleanConnected=!0}if(n)for(var g=0;g<n.length;g++){var C=n[g];C(a,e)}t.recalculateRenderedStyle(e),e=A.collection()}};t.flushRenderedStyleQueue=function(){i(!0)},t.beforeRender(i,t.beforeRenderPriorities.eleCalcs)};lY.onUpdateEleCalcs=function(A){var e=this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[];e.push(A)};lY.recalculateRenderedStyle=function(A,e){var t=function(m){return m._private.rstyle.cleanConnected};if(A.length===0)return;var r=[],i=[];if(this.destroyed)return;if(e===void 0)e=!0;for(var u=0;u<A.length;u++){var a=A[u],n=a._private,o=n.rstyle;if(a.isEdge()&&(!t(a.source())||!t(a.target())))o.clean=!1;if(a.isEdge()&&a.isBundledBezier()){if(a.parallelEdges().some(function(p){return!p._private.rstyle.clean&&p.isBundledBezier()}))o.clean=!1}if(e&&o.clean||a.removed())continue;if(a.pstyle("display").value==="none")continue;if(n.group==="nodes")i.push(a);else r.push(a);o.clean=!0}for(var s=0;s<i.length;s++){var l=i[s],g=l._private,C=g.rstyle,B=l.position();this.recalculateNodeLabelProjection(l),C.nodeX=B.x,C.nodeY=B.y,C.nodeW=l.pstyle("width").pfValue,C.nodeH=l.pstyle("height").pfValue}this.recalculateEdgeProjections(r);for(var E=0;E<r.length;E++){var d=r[E],I=d._private,{rstyle:h,rscratch:Q}=I;h.srcX=Q.arrowStartX,h.srcY=Q.arrowStartY,h.tgtX=Q.arrowEndX,h.tgtY=Q.arrowEndY,h.midX=Q.midX,h.midY=Q.midY,h.labelAngle=Q.labelAngle,h.sourceLabelAngle=Q.sourceLabelAngle,h.targetLabelAngle=Q.targetLabelAngle}};gY={};gY.updateCachedGrabbedEles=function(){var A=this.cachedZSortedEles;if(!A)return;A.drag=[],A.nondrag=[];var e=[];for(var t=0;t<A.length;t++){var r=A[t],i=r._private.rscratch;if(r.grabbed()&&!r.isParent())e.push(r);else if(i.inDragLayer)A.drag.push(r);else A.nondrag.push(r)}for(var t=0;t<e.length;t++){var r=e[t];A.drag.push(r)}};gY.invalidateCachedZSortedEles=function(){this.cachedZSortedEles=null};gY.getCachedZSortedEles=function(A){if(A||!this.cachedZSortedEles){var e=this.cy.mutableElements().toArray();e.sort(uJA),e.interactive=e.filter(function(t){return t.interactive()}),this.cachedZSortedEles=e,this.updateCachedGrabbedEles()}else e=this.cachedZSortedEles;return e};wJA={};[n3,PT,K0,iF,unA,GE,yJA,lY,gY].forEach(function(A){Cr(wJA,A)});bJA={};bJA.getCachedImage=function(A,e,t){var r=this,i=r.imageCache=r.imageCache||{},u=i[A];if(u){if(!u.image.complete)u.image.addEventListener("load",t);return u.image}else{u=i[A]=i[A]||{};var a=u.image=new Image;a.addEventListener("load",t),a.addEventListener("error",function(){a.error=!0});var n="data:",o=A.substring(0,n.length).toLowerCase()===n;if(!o)e=e==="null"?null:e,a.crossOrigin=e;return a.src=A,a}};pw={};pw.registerBinding=function(A,e,t,r){var i=Array.prototype.slice.apply(arguments,[1]);if(Array.isArray(A)){var u=[];for(var a=0;a<A.length;a++){var n=A[a];if(n!==void 0){var o=this.binder(n);u.push(o.on.apply(o,i))}}return u}var o=this.binder(A);return o.on.apply(o,i)};pw.binder=function(A){var e=this,t=e.cy.window(),r=A===t||A===t.document||A===t.document.body||Tht(A);if(e.supportsPassiveEvents==null){var i=!1;try{var u=Object.defineProperty({},"passive",{get:function(){return i=!0,!0}});t.addEventListener("test",null,u)}catch(n){}e.supportsPassiveEvents=i}var a=function(o,s,l){var g=Array.prototype.slice.call(arguments);if(r&&e.supportsPassiveEvents)g[2]={capture:l!=null?l:!1,passive:!1,once:!1};return e.bindings.push({target:A,args:g}),(A.addEventListener||A.on).apply(A,g),this};return{on:a,addEventListener:a,addListener:a,bind:a}};pw.nodeIsDraggable=function(A){return A&&A.isNode()&&!A.locked()&&A.grabbable()};pw.nodeIsGrabbable=function(A){return this.nodeIsDraggable(A)&&A.interactive()};pw.load=function(){var A=this,e=A.cy.window(),t=function(W){return W.selected()},r=function(W){var Z=W.getRootNode();if(Z&&Z.nodeType===11&&Z.host!==void 0)return Z},i=function(W,Z,pA,AA){if(W==null)W=A.cy;for(var DA=0;DA<Z.length;DA++){var rA=Z[DA];W.emit({originalEvent:pA,type:rA,position:AA})}},u=function(W){return W.shiftKey||W.metaKey||W.ctrlKey},a=function(W,Z){var pA=!0;if(A.cy.hasCompoundNodes()&&W&&W.pannable())for(var AA=0;Z&&AA<Z.length;AA++){var W=Z[AA];if(W.isNode()&&W.isParent()&&!W.pannable()){pA=!1;break}}else pA=!0;return pA},n=function(W){W[0]._private.rscratch.inDragLayer=!0},o=function(W){W[0]._private.rscratch.inDragLayer=!1},s=function(W){W[0]._private.rscratch.isGrabTarget=!0},l=function(W){W[0]._private.rscratch.isGrabTarget=!1},g=function(W,Z){var pA=Z.addToList,AA=pA.has(W);if(!AA&&W.grabbable()&&!W.locked())pA.merge(W),Fft(W)},C=function(W,Z){if(!W.cy().hasCompoundNodes())return;if(Z.inDragLayer==null&&Z.addToList==null)return;var pA=W.descendants();if(Z.inDragLayer)pA.forEach(n),pA.connectedEdges().forEach(n);if(Z.addToList)g(pA,Z)},B=function(W,Z){Z=Z||{};var pA=W.cy().hasCompoundNodes();if(Z.inDragLayer)W.forEach(n),W.neighborhood().stdFilter(function(AA){return!pA||AA.isEdge()}).forEach(n);if(Z.addToList)W.forEach(function(AA){g(AA,Z)});C(W,Z),I(W,{inDragLayer:Z.inDragLayer}),A.updateCachedGrabbedEles()},E=B,d=function(W){if(!W)return;A.getCachedZSortedEles().forEach(function(Z){xft(Z),o(Z),l(Z)}),A.updateCachedGrabbedEles()},I=function(W,Z){if(Z.inDragLayer==null&&Z.addToList==null)return;if(!W.cy().hasCompoundNodes())return;var pA=W.ancestors().orphans();if(pA.same(W))return;var AA=pA.descendants().spawnSelf().merge(pA).unmerge(W).unmerge(W.descendants()),DA=AA.connectedEdges();if(Z.inDragLayer)DA.forEach(n),AA.forEach(n);if(Z.addToList)AA.forEach(function(rA){g(rA,Z)})},h=function(){if(document.activeElement!=null&&document.activeElement.blur!=null)document.activeElement.blur()},Q=typeof MutationObserver<"u",p=typeof ResizeObserver<"u";if(Q){if(A.removeObserver=new MutationObserver(function(dA){for(var W=0;W<dA.length;W++){var Z=dA[W],pA=Z.removedNodes;if(pA)for(var AA=0;AA<pA.length;AA++){var DA=pA[AA];if(DA===A.container){A.destroy();break}}}}),A.container.parentNode)A.removeObserver.observe(A.container.parentNode,{childList:!0})}else A.registerBinding(A.container,"DOMNodeRemoved",function(dA){A.destroy()});var m=AF(function(){A.cy.resize()},100);if(Q)A.styleObserver=new MutationObserver(m),A.styleObserver.observe(A.container,{attributes:!0});if(A.registerBinding(e,"resize",m),p)A.resizeObserver=new ResizeObserver(m),A.resizeObserver.observe(A.container);var f=function(W,Z){while(W!=null)Z(W),W=W.parentNode},D=function(){A.invalidateContainerClientCoordsCache()};f(A.container,function(dA){A.registerBinding(dA,"transitionend",D),A.registerBinding(dA,"animationend",D),A.registerBinding(dA,"scroll",D)}),A.registerBinding(A.container,"contextmenu",function(dA){dA.preventDefault()});var w=function(){return A.selection[4]!==0},b=function(W){var Z=A.findContainerClientCoords(),pA=Z[0],AA=Z[1],DA=Z[2],rA=Z[3],KA=W.touches?W.touches:[W],_A=!1;for(var zA=0;zA<KA.length;zA++){var WA=KA[zA];if(pA<=WA.clientX&&WA.clientX<=pA+DA&&AA<=WA.clientY&&WA.clientY<=AA+rA){_A=!0;break}}if(!_A)return!1;var te=A.container,ZA=W.target,ee=ZA.parentNode,$A=!1;while(ee){if(ee===te){$A=!0;break}ee=ee.parentNode}if(!$A)return!1;return!0};A.registerBinding(A.container,"mousedown",function(W){if(!b(W))return;if(A.hoverData.which===1&&W.which!==1)return;W.preventDefault(),h(),A.hoverData.capture=!0,A.hoverData.which=W.which;var Z=A.cy,pA=[W.clientX,W.clientY],AA=A.projectIntoViewport(pA[0],pA[1]),DA=A.selection,rA=A.findNearestElements(AA[0],AA[1],!0,!1),KA=rA[0],_A=A.dragData.possibleDragElements;A.hoverData.mdownPos=AA,A.hoverData.mdownGPos=pA;var zA=function(oe){return{originalEvent:W,type:oe,position:{x:AA[0],y:AA[1]}}},WA=function(){A.hoverData.tapholdCancelled=!1,clearTimeout(A.hoverData.tapholdTimeout),A.hoverData.tapholdTimeout=setTimeout(function(){if(A.hoverData.tapholdCancelled)return;else{var oe=A.hoverData.down;if(oe)oe.emit(zA("taphold"));else Z.emit(zA("taphold"))}},A.tapholdDuration)};if(W.which==3){A.hoverData.cxtStarted=!0;var te={originalEvent:W,type:"cxttapstart",position:{x:AA[0],y:AA[1]}};if(KA)KA.activate(),KA.emit(te),A.hoverData.down=KA;else Z.emit(te);A.hoverData.downTime=new Date().getTime(),A.hoverData.cxtDragged=!1}else if(W.which==1){if(KA)KA.activate();{if(KA!=null){if(A.nodeIsGrabbable(KA)){var ZA=function(oe){oe.emit(zA("grab"))};if(s(KA),!KA.selected())_A=A.dragData.possibleDragElements=Z.collection(),E(KA,{addToList:_A}),KA.emit(zA("grabon")).emit(zA("grab"));else{_A=A.dragData.possibleDragElements=Z.collection();var ee=Z.$(function($A){return $A.isNode()&&$A.selected()&&A.nodeIsGrabbable($A)});B(ee,{addToList:_A}),KA.emit(zA("grabon")),ee.forEach(ZA)}A.redrawHint("eles",!0),A.redrawHint("drag",!0)}}A.hoverData.down=KA,A.hoverData.downs=rA,A.hoverData.downTime=new Date().getTime()}if(i(KA,["mousedown","tapstart","vmousedown"],W,{x:AA[0],y:AA[1]}),KA==null)DA[4]=1,A.data.bgActivePosistion={x:AA[0],y:AA[1]},A.redrawHint("select",!0),A.redraw();else if(KA.pannable())DA[4]=1;WA()}DA[0]=DA[2]=AA[0],DA[1]=DA[3]=AA[1]},!1);var F=r(A.container);A.registerBinding([e,F],"mousemove",function(W){var Z=A.hoverData.capture;if(!Z&&!b(W))return;var pA=!1,AA=A.cy,DA=AA.zoom(),rA=[W.clientX,W.clientY],KA=A.projectIntoViewport(rA[0],rA[1]),_A=A.hoverData.mdownPos,zA=A.hoverData.mdownGPos,WA=A.selection,te=null;if(!A.hoverData.draggingEles&&!A.hoverData.dragging&&!A.hoverData.selecting)te=A.findNearestElement(KA[0],KA[1],!0,!1);var ZA=A.hoverData.last,ee=A.hoverData.down,$A=[KA[0]-WA[2],KA[1]-WA[3]],oe=A.dragData.possibleDragElements,vA;if(zA){var Pe=rA[0]-zA[0],MA=Pe*Pe,ke=rA[1]-zA[1],We=ke*ke,se=MA+We;A.hoverData.isOverThresholdDrag=vA=se>=A.desktopTapThreshold2}var Te=u(W);if(vA)A.hoverData.tapholdCancelled=!0;var je=function(){var tt=A.hoverData.dragDelta=A.hoverData.dragDelta||[];if(tt.length===0)tt.push($A[0]),tt.push($A[1]);else tt[0]+=$A[0],tt[1]+=$A[1]};pA=!0,i(te,["mousemove","vmousemove","tapdrag"],W,{x:KA[0],y:KA[1]});var xe=function(tt){return{originalEvent:W,type:tt,position:{x:KA[0],y:KA[1]}}},yA=function(){if(A.data.bgActivePosistion=void 0,!A.hoverData.selecting)AA.emit(xe("boxstart"));WA[4]=1,A.hoverData.selecting=!0,A.redrawHint("select",!0),A.redraw()};if(A.hoverData.which===3){if(vA){var Ne=xe("cxtdrag");if(ee)ee.emit(Ne);else AA.emit(Ne);if(A.hoverData.cxtDragged=!0,!A.hoverData.cxtOver||te!==A.hoverData.cxtOver){if(A.hoverData.cxtOver)A.hoverData.cxtOver.emit(xe("cxtdragout"));if(A.hoverData.cxtOver=te,te)te.emit(xe("cxtdragover"))}}}else if(A.hoverData.dragging){if(pA=!0,AA.panningEnabled()&&AA.userPanningEnabled()){var He;if(A.hoverData.justStartedPan){var de=A.hoverData.mdownPos;He={x:(KA[0]-de[0])*DA,y:(KA[1]-de[1])*DA},A.hoverData.justStartedPan=!1}else He={x:$A[0]*DA,y:$A[1]*DA};AA.panBy(He),AA.emit(xe("dragpan")),A.hoverData.dragged=!0}KA=A.projectIntoViewport(W.clientX,W.clientY)}else if(WA[4]==1&&(ee==null||ee.pannable())){if(vA){if(!A.hoverData.dragging&&AA.boxSelectionEnabled()&&(Te||!AA.panningEnabled()||!AA.userPanningEnabled()))yA();else if(!A.hoverData.selecting&&AA.panningEnabled()&&AA.userPanningEnabled()){var NA=a(ee,A.hoverData.downs);if(NA)A.hoverData.dragging=!0,A.hoverData.justStartedPan=!0,WA[4]=0,A.data.bgActivePosistion=iw(_A),A.redrawHint("select",!0),A.redraw()}if(ee&&ee.pannable()&&ee.active())ee.unactivate()}}else{if(ee&&ee.pannable()&&ee.active())ee.unactivate();if((!ee||!ee.grabbed())&&te!=ZA){if(ZA)i(ZA,["mouseout","tapdragout"],W,{x:KA[0],y:KA[1]});if(te)i(te,["mouseover","tapdragover"],W,{x:KA[0],y:KA[1]});A.hoverData.last=te}if(ee)if(vA){if(AA.boxSelectionEnabled()&&Te){if(ee&&ee.grabbed()){if(d(oe),ee.emit(xe("freeon")),oe.emit(xe("free")),A.dragData.didDrag)ee.emit(xe("dragfreeon")),oe.emit(xe("dragfree"))}yA()}else if(ee&&ee.grabbed()&&A.nodeIsDraggable(ee)){var ce=!A.dragData.didDrag;if(ce)A.redrawHint("eles",!0);if(A.dragData.didDrag=!0,!A.hoverData.draggingEles)B(oe,{inDragLayer:!0});var me={x:0,y:0};if(Qt($A[0])&&Qt($A[1])){if(me.x+=$A[0],me.y+=$A[1],ce){var Le=A.hoverData.dragDelta;if(Le&&Qt(Le[0])&&Qt(Le[1]))me.x+=Le[0],me.y+=Le[1]}}A.hoverData.draggingEles=!0,oe.silentShift(me).emit(xe("position")).emit(xe("drag")),A.redrawHint("drag",!0),A.redraw()}}else je();pA=!0}if(WA[2]=KA[0],WA[3]=KA[1],pA){if(W.stopPropagation)W.stopPropagation();if(W.preventDefault)W.preventDefault();return!1}},!1);var v,S,x;A.registerBinding(e,"mouseup",function(W){if(A.hoverData.which===1&&W.which!==1&&A.hoverData.capture)return;var Z=A.hoverData.capture;if(!Z)return;A.hoverData.capture=!1;var pA=A.cy,AA=A.projectIntoViewport(W.clientX,W.clientY),DA=A.selection,rA=A.findNearestElement(AA[0],AA[1],!0,!1),KA=A.dragData.possibleDragElements,_A=A.hoverData.down,zA=u(W);if(A.data.bgActivePosistion)A.redrawHint("select",!0),A.redraw();if(A.hoverData.tapholdCancelled=!0,A.data.bgActivePosistion=void 0,_A)_A.unactivate();var WA=function(Pe){return{originalEvent:W,type:Pe,position:{x:AA[0],y:AA[1]}}};if(A.hoverData.which===3){var te=WA("cxttapend");if(_A)_A.emit(te);else pA.emit(te);if(!A.hoverData.cxtDragged){var ZA=WA("cxttap");if(_A)_A.emit(ZA);else pA.emit(ZA)}A.hoverData.cxtDragged=!1,A.hoverData.which=null}else if(A.hoverData.which===1){if(i(rA,["mouseup","tapend","vmouseup"],W,{x:AA[0],y:AA[1]}),!A.dragData.didDrag&&!A.hoverData.dragged&&!A.hoverData.selecting&&!A.hoverData.isOverThresholdDrag)if(i(_A,["click","tap","vclick"],W,{x:AA[0],y:AA[1]}),S=!1,W.timeStamp-x<=pA.multiClickDebounceTime())v&&clearTimeout(v),S=!0,x=null,i(_A,["dblclick","dbltap","vdblclick"],W,{x:AA[0],y:AA[1]});else v=setTimeout(function(){if(S)return;i(_A,["oneclick","onetap","voneclick"],W,{x:AA[0],y:AA[1]})},pA.multiClickDebounceTime()),x=W.timeStamp;if(_A==null&&!A.dragData.didDrag&&!A.hoverData.selecting&&!A.hoverData.dragged&&!u(W)){if(pA.$(t).unselect(["tapunselect"]),KA.length>0)A.redrawHint("eles",!0);A.dragData.possibleDragElements=KA=pA.collection()}if(rA==_A&&!A.dragData.didDrag&&!A.hoverData.selecting){if(rA!=null&&rA._private.selectable){if(A.hoverData.dragging);else if(pA.selectionType()==="additive"||zA)if(rA.selected())rA.unselect(["tapunselect"]);else rA.select(["tapselect"]);else if(!zA)pA.$(t).unmerge(rA).unselect(["tapunselect"]),rA.select(["tapselect"]);A.redrawHint("eles",!0)}}if(A.hoverData.selecting){var ee=pA.collection(A.getAllInBox(DA[0],DA[1],DA[2],DA[3]));if(A.redrawHint("select",!0),ee.length>0)A.redrawHint("eles",!0);pA.emit(WA("boxend"));var $A=function(Pe){return Pe.selectable()&&!Pe.selected()};if(pA.selectionType()==="additive")ee.emit(WA("box")).stdFilter($A).select().emit(WA("boxselect"));else{if(!zA)pA.$(t).unmerge(ee).unselect();ee.emit(WA("box")).stdFilter($A).select().emit(WA("boxselect"))}A.redraw()}if(A.hoverData.dragging)A.hoverData.dragging=!1,A.redrawHint("select",!0),A.redrawHint("eles",!0),A.redraw();if(!DA[4]){A.redrawHint("drag",!0),A.redrawHint("eles",!0);var oe=_A&&_A.grabbed();if(d(KA),oe){if(_A.emit(WA("freeon")),KA.emit(WA("free")),A.dragData.didDrag)_A.emit(WA("dragfreeon")),KA.emit(WA("dragfree"))}}}DA[4]=0,A.hoverData.down=null,A.hoverData.cxtStarted=!1,A.hoverData.draggingEles=!1,A.hoverData.selecting=!1,A.hoverData.isOverThresholdDrag=!1,A.dragData.didDrag=!1,A.hoverData.dragged=!1,A.hoverData.dragDelta=[],A.hoverData.mdownPos=null,A.hoverData.mdownGPos=null,A.hoverData.which=null},!1);var k=[],T=4,R,L=1e5,M=function(W){var Z=Math.abs(W[0]);for(var pA=1;pA<W.length;pA++)if(Math.abs(W[pA])!==Z)return!1;return!0},U=function(W){var Z=!1,pA=W.deltaY;if(pA==null){if(W.wheelDeltaY!=null)pA=W.wheelDeltaY/4;else if(W.wheelDelta!=null)pA=W.wheelDelta/4}if(pA===0)return;if(R==null)if(k.length>=T){R=!1;var AA=k;if(AA[0]>=5){var DA;if(M(AA))DA=AA[0];else DA=WQt(AA);if(DA>1)R=!0,L=DA}}else k.push(Math.abs(pA)),Z=!0;else if(R)L=Math.min(Math.abs(pA),L);if(A.scrollingPage)return;var rA=A.cy,KA=rA.zoom(),_A=rA.pan(),zA=A.projectIntoViewport(W.clientX,W.clientY),WA=[zA[0]*KA+_A.x,zA[1]*KA+_A.y];if(A.hoverData.draggingEles||A.hoverData.dragging||A.hoverData.cxtStarted||w()){W.preventDefault();return}if(rA.panningEnabled()&&rA.userPanningEnabled()&&rA.zoomingEnabled()&&rA.userZoomingEnabled()){W.preventDefault(),A.data.wheelZooming=!0,clearTimeout(A.data.wheelTimeout),A.data.wheelTimeout=setTimeout(function(){A.data.wheelZooming=!1,A.redrawHint("eles",!0),A.redraw()},150);var te;if(Z&&Math.abs(pA)>5)pA=_aA(pA)*5;if(te=pA/-250,R)te/=L,te*=3;te=te*A.wheelSensitivity;var ZA=W.deltaMode===1;if(ZA)te*=33;var ee=rA.zoom()*Math.pow(10,te);if(W.type==="gesturechange")ee=A.gestureStartZoom*W.scale;rA.zoom({level:ee,renderedPosition:{x:WA[0],y:WA[1]}}),rA.emit({type:W.type==="gesturechange"?"pinchzoom":"scrollzoom",originalEvent:W,position:{x:zA[0],y:zA[1]}})}};A.registerBinding(A.container,"wheel",U,!0),A.registerBinding(e,"scroll",function(W){A.scrollingPage=!0,clearTimeout(A.scrollingPageTimeout),A.scrollingPageTimeout=setTimeout(function(){A.scrollingPage=!1},250)},!0),A.registerBinding(A.container,"gesturestart",function(W){if(A.gestureStartZoom=A.cy.zoom(),!A.hasTouchStarted)W.preventDefault()},!0),A.registerBinding(A.container,"gesturechange",function(dA){if(!A.hasTouchStarted)U(dA)},!0),A.registerBinding(A.container,"mouseout",function(W){var Z=A.projectIntoViewport(W.clientX,W.clientY);A.cy.emit({originalEvent:W,type:"mouseout",position:{x:Z[0],y:Z[1]}})},!1),A.registerBinding(A.container,"mouseover",function(W){var Z=A.projectIntoViewport(W.clientX,W.clientY);A.cy.emit({originalEvent:W,type:"mouseover",position:{x:Z[0],y:Z[1]}})},!1);var Y,H,J,K,O,_,z,j,q,CA,tA,lA,gA,aA=function(W,Z,pA,AA){return Math.sqrt((pA-W)*(pA-W)+(AA-Z)*(AA-Z))},RA=function(W,Z,pA,AA){return(pA-W)*(pA-W)+(AA-Z)*(AA-Z)},wA;A.registerBinding(A.container,"touchstart",wA=function(W){if(A.hasTouchStarted=!0,!b(W))return;h(),A.touchData.capture=!0,A.data.bgActivePosistion=void 0;var Z=A.cy,pA=A.touchData.now,AA=A.touchData.earlier;if(W.touches[0]){var DA=A.projectIntoViewport(W.touches[0].clientX,W.touches[0].clientY);pA[0]=DA[0],pA[1]=DA[1]}if(W.touches[1]){var DA=A.projectIntoViewport(W.touches[1].clientX,W.touches[1].clientY);pA[2]=DA[0],pA[3]=DA[1]}if(W.touches[2]){var DA=A.projectIntoViewport(W.touches[2].clientX,W.touches[2].clientY);pA[4]=DA[0],pA[5]=DA[1]}var rA=function(Te){return{originalEvent:W,type:Te,position:{x:pA[0],y:pA[1]}}};if(W.touches[1]){A.touchData.singleTouchMoved=!0,d(A.dragData.touchDragEles);var KA=A.findContainerClientCoords();q=KA[0],CA=KA[1],tA=KA[2],lA=KA[3],Y=W.touches[0].clientX-q,H=W.touches[0].clientY-CA,J=W.touches[1].clientX-q,K=W.touches[1].clientY-CA,gA=0<=Y&&Y<=tA&&0<=J&&J<=tA&&0<=H&&H<=lA&&0<=K&&K<=lA;var _A=Z.pan(),zA=Z.zoom();O=aA(Y,H,J,K),_=RA(Y,H,J,K),z=[(Y+J)/2,(H+K)/2],j=[(z[0]-_A.x)/zA,(z[1]-_A.y)/zA];var WA=200,te=WA*WA;if(_<te&&!W.touches[2]){var ZA=A.findNearestElement(pA[0],pA[1],!0,!0),ee=A.findNearestElement(pA[2],pA[3],!0,!0);if(ZA&&ZA.isNode())ZA.activate().emit(rA("cxttapstart")),A.touchData.start=ZA;else if(ee&&ee.isNode())ee.activate().emit(rA("cxttapstart")),A.touchData.start=ee;else Z.emit(rA("cxttapstart"));if(A.touchData.start)A.touchData.start._private.grabbed=!1;A.touchData.cxt=!0,A.touchData.cxtDragged=!1,A.data.bgActivePosistion=void 0,A.redraw();return}}if(W.touches[2]){if(Z.boxSelectionEnabled())W.preventDefault()}else if(W.touches[1]);else if(W.touches[0]){var $A=A.findNearestElements(pA[0],pA[1],!0,!0),oe=$A[0];if(oe!=null){if(oe.activate(),A.touchData.start=oe,A.touchData.starts=$A,A.nodeIsGrabbable(oe)){var vA=A.dragData.touchDragEles=Z.collection(),Pe=null;if(A.redrawHint("eles",!0),A.redrawHint("drag",!0),oe.selected())Pe=Z.$(function(se){return se.selected()&&A.nodeIsGrabbable(se)}),B(Pe,{addToList:vA});else E(oe,{addToList:vA});if(s(oe),oe.emit(rA("grabon")),Pe)Pe.forEach(function(se){se.emit(rA("grab"))});else oe.emit(rA("grab"))}}if(i(oe,["touchstart","tapstart","vmousedown"],W,{x:pA[0],y:pA[1]}),oe==null)A.data.bgActivePosistion={x:DA[0],y:DA[1]},A.redrawHint("select",!0),A.redraw();A.touchData.singleTouchMoved=!1,A.touchData.singleTouchStartTime=+new Date,clearTimeout(A.touchData.tapholdTimeout),A.touchData.tapholdTimeout=setTimeout(function(){if(A.touchData.singleTouchMoved===!1&&!A.pinching&&!A.touchData.selecting)i(A.touchData.start,["taphold"],W,{x:pA[0],y:pA[1]})},A.tapholdDuration)}if(W.touches.length>=1){var MA=A.touchData.startPosition=[null,null,null,null,null,null];for(var ke=0;ke<pA.length;ke++)MA[ke]=AA[ke]=pA[ke];var We=W.touches[0];A.touchData.startGPosition=[We.clientX,We.clientY]}},!1);var JA;A.registerBinding(e,"touchmove",JA=function(W){var Z=A.touchData.capture;if(!Z&&!b(W))return;var{selection:pA,cy:AA}=A,DA=A.touchData.now,rA=A.touchData.earlier,KA=AA.zoom();if(W.touches[0]){var _A=A.projectIntoViewport(W.touches[0].clientX,W.touches[0].clientY);DA[0]=_A[0],DA[1]=_A[1]}if(W.touches[1]){var _A=A.projectIntoViewport(W.touches[1].clientX,W.touches[1].clientY);DA[2]=_A[0],DA[3]=_A[1]}if(W.touches[2]){var _A=A.projectIntoViewport(W.touches[2].clientX,W.touches[2].clientY);DA[4]=_A[0],DA[5]=_A[1]}var zA=function(HA){return{originalEvent:W,type:HA,position:{x:DA[0],y:DA[1]}}},WA=A.touchData.startGPosition,te;if(Z&&W.touches[0]&&WA){var ZA=[];for(var ee=0;ee<DA.length;ee++)ZA[ee]=DA[ee]-rA[ee];var $A=W.touches[0].clientX-WA[0],oe=$A*$A,vA=W.touches[0].clientY-WA[1],Pe=vA*vA,MA=oe+Pe;te=MA>=A.touchTapThreshold2}if(Z&&A.touchData.cxt){W.preventDefault();var ke=W.touches[0].clientX-q,We=W.touches[0].clientY-CA,se=W.touches[1].clientX-q,Te=W.touches[1].clientY-CA,je=RA(ke,We,se,Te),xe=je/_,yA=150,Ne=yA*yA,He=1.5,de=He*He;if(xe>=de||je>=Ne){A.touchData.cxt=!1,A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var NA=zA("cxttapend");if(A.touchData.start)A.touchData.start.unactivate().emit(NA),A.touchData.start=null;else AA.emit(NA)}}if(Z&&A.touchData.cxt){var NA=zA("cxtdrag");if(A.data.bgActivePosistion=void 0,A.redrawHint("select",!0),A.touchData.start)A.touchData.start.emit(NA);else AA.emit(NA);if(A.touchData.start)A.touchData.start._private.grabbed=!1;A.touchData.cxtDragged=!0;var ce=A.findNearestElement(DA[0],DA[1],!0,!0);if(!A.touchData.cxtOver||ce!==A.touchData.cxtOver){if(A.touchData.cxtOver)A.touchData.cxtOver.emit(zA("cxtdragout"));if(A.touchData.cxtOver=ce,ce)ce.emit(zA("cxtdragover"))}}else if(Z&&W.touches[2]&&AA.boxSelectionEnabled()){if(W.preventDefault(),A.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,!A.touchData.selecting)AA.emit(zA("boxstart"));if(A.touchData.selecting=!0,A.touchData.didSelect=!0,pA[4]=1,!pA||pA.length===0||pA[0]===void 0)pA[0]=(DA[0]+DA[2]+DA[4])/3,pA[1]=(DA[1]+DA[3]+DA[5])/3,pA[2]=(DA[0]+DA[2]+DA[4])/3+1,pA[3]=(DA[1]+DA[3]+DA[5])/3+1;else pA[2]=(DA[0]+DA[2]+DA[4])/3,pA[3]=(DA[1]+DA[3]+DA[5])/3;A.redrawHint("select",!0),A.redraw()}else if(Z&&W.touches[1]&&!A.touchData.didSelect&&AA.zoomingEnabled()&&AA.panningEnabled()&&AA.userZoomingEnabled()&&AA.userPanningEnabled()){W.preventDefault(),A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var me=A.dragData.touchDragEles;if(me){A.redrawHint("drag",!0);for(var Le=0;Le<me.length;Le++){var Lt=me[Le]._private;Lt.grabbed=!1,Lt.rscratch.inDragLayer=!1}}var tt=A.touchData.start,ke=W.touches[0].clientX-q,We=W.touches[0].clientY-CA,se=W.touches[1].clientX-q,Te=W.touches[1].clientY-CA,Ht=aA(ke,We,se,Te),lr=Ht/O;if(gA){var It=ke-Y,Ct=We-H,Kt=se-J,Ce=Te-K,De=(It+Kt)/2,Ve=(Ct+Ce)/2,Vt=AA.zoom(),jt=Vt*lr,Or=AA.pan(),bi=j[0]*Vt+Or.x,fr=j[1]*Vt+Or.y,At={x:-jt/Vt*(bi-Or.x-De)+bi,y:-jt/Vt*(fr-Or.y-Ve)+fr};if(tt&&tt.active()){var me=A.dragData.touchDragEles;if(d(me),A.redrawHint("drag",!0),A.redrawHint("eles",!0),tt.unactivate().emit(zA("freeon")),me)me.emit(zA("free"));if(A.dragData.didDrag){if(tt.emit(zA("dragfreeon")),me)me.emit(zA("dragfree"))}}AA.viewport({zoom:jt,pan:At,cancelOnFailedZoom:!0}),AA.emit(zA("pinchzoom")),O=Ht,Y=ke,H=We,J=se,K=Te,A.pinching=!0}if(W.touches[0]){var _A=A.projectIntoViewport(W.touches[0].clientX,W.touches[0].clientY);DA[0]=_A[0],DA[1]=_A[1]}if(W.touches[1]){var _A=A.projectIntoViewport(W.touches[1].clientX,W.touches[1].clientY);DA[2]=_A[0],DA[3]=_A[1]}if(W.touches[2]){var _A=A.projectIntoViewport(W.touches[2].clientX,W.touches[2].clientY);DA[4]=_A[0],DA[5]=_A[1]}}else if(W.touches[0]&&!A.touchData.didSelect){var Ye=A.touchData.start,Bt=A.touchData.last,ce;if(!A.hoverData.draggingEles&&!A.swipePanning)ce=A.findNearestElement(DA[0],DA[1],!0,!0);if(Z&&Ye!=null)W.preventDefault();if(Z&&Ye!=null&&A.nodeIsDraggable(Ye))if(te){var me=A.dragData.touchDragEles,nt=!A.dragData.didDrag;if(nt)B(me,{inDragLayer:!0});A.dragData.didDrag=!0;var Me={x:0,y:0};if(Qt(ZA[0])&&Qt(ZA[1])){if(Me.x+=ZA[0],Me.y+=ZA[1],nt){A.redrawHint("eles",!0);var kt=A.touchData.dragDelta;if(kt&&Qt(kt[0])&&Qt(kt[1]))Me.x+=kt[0],Me.y+=kt[1]}}if(A.hoverData.draggingEles=!0,me.silentShift(Me).emit(zA("position")).emit(zA("drag")),A.redrawHint("drag",!0),A.touchData.startPosition[0]==rA[0]&&A.touchData.startPosition[1]==rA[1])A.redrawHint("eles",!0);A.redraw()}else{var kt=A.touchData.dragDelta=A.touchData.dragDelta||[];if(kt.length===0)kt.push(ZA[0]),kt.push(ZA[1]);else kt[0]+=ZA[0],kt[1]+=ZA[1]}{if(i(Ye||ce,["touchmove","tapdrag","vmousemove"],W,{x:DA[0],y:DA[1]}),(!Ye||!Ye.grabbed())&&ce!=Bt){if(Bt)Bt.emit(zA("tapdragout"));if(ce)ce.emit(zA("tapdragover"))}A.touchData.last=ce}if(Z){for(var Le=0;Le<DA.length;Le++)if(DA[Le]&&A.touchData.startPosition[Le]&&te)A.touchData.singleTouchMoved=!0}if(Z&&(Ye==null||Ye.pannable())&&AA.panningEnabled()&&AA.userPanningEnabled()){var LA=a(Ye,A.touchData.starts);if(LA){if(W.preventDefault(),!A.data.bgActivePosistion)A.data.bgActivePosistion=iw(A.touchData.startPosition);if(A.swipePanning)AA.panBy({x:ZA[0]*KA,y:ZA[1]*KA}),AA.emit(zA("dragpan"));else if(te){if(A.swipePanning=!0,AA.panBy({x:$A*KA,y:vA*KA}),AA.emit(zA("dragpan")),Ye)Ye.unactivate(),A.redrawHint("select",!0),A.touchData.start=null}}var _A=A.projectIntoViewport(W.touches[0].clientX,W.touches[0].clientY);DA[0]=_A[0],DA[1]=_A[1]}}for(var ee=0;ee<DA.length;ee++)rA[ee]=DA[ee];if(Z&&W.touches.length>0&&!A.hoverData.draggingEles&&!A.swipePanning&&A.data.bgActivePosistion!=null)A.data.bgActivePosistion=void 0,A.redrawHint("select",!0),A.redraw()},!1);var TA;A.registerBinding(e,"touchcancel",TA=function(W){var Z=A.touchData.start;if(A.touchData.capture=!1,Z)Z.unactivate()});var qA,BA,bA,FA;if(A.registerBinding(e,"touchend",qA=function(W){var Z=A.touchData.start,pA=A.touchData.capture;if(pA){if(W.touches.length===0)A.touchData.capture=!1;W.preventDefault()}else return;var AA=A.selection;A.swipePanning=!1,A.hoverData.draggingEles=!1;var DA=A.cy,rA=DA.zoom(),KA=A.touchData.now,_A=A.touchData.earlier;if(W.touches[0]){var zA=A.projectIntoViewport(W.touches[0].clientX,W.touches[0].clientY);KA[0]=zA[0],KA[1]=zA[1]}if(W.touches[1]){var zA=A.projectIntoViewport(W.touches[1].clientX,W.touches[1].clientY);KA[2]=zA[0],KA[3]=zA[1]}if(W.touches[2]){var zA=A.projectIntoViewport(W.touches[2].clientX,W.touches[2].clientY);KA[4]=zA[0],KA[5]=zA[1]}var WA=function(Ne){return{originalEvent:W,type:Ne,position:{x:KA[0],y:KA[1]}}};if(Z)Z.unactivate();var te;if(A.touchData.cxt){if(te=WA("cxttapend"),Z)Z.emit(te);else DA.emit(te);if(!A.touchData.cxtDragged){var ZA=WA("cxttap");if(Z)Z.emit(ZA);else DA.emit(ZA)}if(A.touchData.start)A.touchData.start._private.grabbed=!1;A.touchData.cxt=!1,A.touchData.start=null,A.redraw();return}if(!W.touches[2]&&DA.boxSelectionEnabled()&&A.touchData.selecting){A.touchData.selecting=!1;var ee=DA.collection(A.getAllInBox(AA[0],AA[1],AA[2],AA[3]));AA[0]=void 0,AA[1]=void 0,AA[2]=void 0,AA[3]=void 0,AA[4]=0,A.redrawHint("select",!0),DA.emit(WA("boxend"));var $A=function(Ne){return Ne.selectable()&&!Ne.selected()};if(ee.emit(WA("box")).stdFilter($A).select().emit(WA("boxselect")),ee.nonempty())A.redrawHint("eles",!0);A.redraw()}if(Z!=null)Z.unactivate();if(W.touches[2])A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);else if(W.touches[1]);else if(W.touches[0]);else if(!W.touches[0]){A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var oe=A.dragData.touchDragEles;if(Z!=null){var vA=Z._private.grabbed;if(d(oe),A.redrawHint("drag",!0),A.redrawHint("eles",!0),vA){if(Z.emit(WA("freeon")),oe.emit(WA("free")),A.dragData.didDrag)Z.emit(WA("dragfreeon")),oe.emit(WA("dragfree"))}i(Z,["touchend","tapend","vmouseup","tapdragout"],W,{x:KA[0],y:KA[1]}),Z.unactivate(),A.touchData.start=null}else{var Pe=A.findNearestElement(KA[0],KA[1],!0,!0);i(Pe,["touchend","tapend","vmouseup","tapdragout"],W,{x:KA[0],y:KA[1]})}var MA=A.touchData.startPosition[0]-KA[0],ke=MA*MA,We=A.touchData.startPosition[1]-KA[1],se=We*We,Te=ke+se,je=Te*rA*rA;if(!A.touchData.singleTouchMoved){if(!Z)DA.$(":selected").unselect(["tapunselect"]);if(i(Z,["tap","vclick"],W,{x:KA[0],y:KA[1]}),BA=!1,W.timeStamp-FA<=DA.multiClickDebounceTime())bA&&clearTimeout(bA),BA=!0,FA=null,i(Z,["dbltap","vdblclick"],W,{x:KA[0],y:KA[1]});else bA=setTimeout(function(){if(BA)return;i(Z,["onetap","voneclick"],W,{x:KA[0],y:KA[1]})},DA.multiClickDebounceTime()),FA=W.timeStamp}if(Z!=null&&!A.dragData.didDrag&&Z._private.selectable&&je<A.touchTapThreshold2&&!A.pinching){if(DA.selectionType()==="single")DA.$(t).unmerge(Z).unselect(["tapunselect"]),Z.select(["tapselect"]);else if(Z.selected())Z.unselect(["tapunselect"]);else Z.select(["tapselect"]);A.redrawHint("eles",!0)}A.touchData.singleTouchMoved=!0}for(var xe=0;xe<KA.length;xe++)_A[xe]=KA[xe];if(A.dragData.didDrag=!1,W.touches.length===0)A.touchData.dragDelta=[],A.touchData.startPosition=[null,null,null,null,null,null],A.touchData.startGPosition=null,A.touchData.didSelect=!1;if(W.touches.length<2){if(W.touches.length===1)A.touchData.startGPosition=[W.touches[0].clientX,W.touches[0].clientY];A.pinching=!1,A.redrawHint("eles",!0),A.redraw()}},!1),typeof TouchEvent>"u"){var IA=[],nA=function(W){return{clientX:W.clientX,clientY:W.clientY,force:1,identifier:W.pointerId,pageX:W.pageX,pageY:W.pageY,radiusX:W.width/2,radiusY:W.height/2,screenX:W.screenX,screenY:W.screenY,target:W.target}},eA=function(W){return{event:W,touch:nA(W)}},EA=function(W){IA.push(eA(W))},mA=function(W){for(var Z=0;Z<IA.length;Z++){var pA=IA[Z];if(pA.event.pointerId===W.pointerId){IA.splice(Z,1);return}}},kA=function(W){var Z=IA.filter(function(pA){return pA.event.pointerId===W.pointerId})[0];Z.event=W,Z.touch=nA(W)},SA=function(W){W.touches=IA.map(function(Z){return Z.touch})},YA=function(W){return W.pointerType==="mouse"||W.pointerType===4};A.registerBinding(A.container,"pointerdown",function(dA){if(YA(dA))return;dA.preventDefault(),EA(dA),SA(dA),wA(dA)}),A.registerBinding(A.container,"pointerup",function(dA){if(YA(dA))return;mA(dA),SA(dA),qA(dA)}),A.registerBinding(A.container,"pointercancel",function(dA){if(YA(dA))return;mA(dA),SA(dA),TA(dA)}),A.registerBinding(A.container,"pointermove",function(dA){if(YA(dA))return;dA.preventDefault(),kA(dA),SA(dA),JA(dA)})}};TI={};TI.generatePolygon=function(A,e){return this.nodeShapes[A]={renderer:this,name:A,points:e,draw:function(r,i,u,a,n,o){this.renderer.nodeShapeImpl("polygon",r,i,u,a,n,this.points)},intersectLine:function(r,i,u,a,n,o,s,l){return Ok(n,o,this.points,r,i,u/2,a/2,s)},checkPoint:function(r,i,u,a,n,o,s,l){return MI(r,i,this.points,o,s,a,n,[0,-1],u)},hasMiterBounds:A!=="rectangle",miterBounds:function(r,i,u,a,n,o){return e4t(this.points,r,i,u,a,n)}}};TI.generateEllipse=function(){return this.nodeShapes.ellipse={renderer:this,name:"ellipse",draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u)},intersectLine:function(e,t,r,i,u,a,n,o){return s4t(u,a,e,t,r/2+n,i/2+n)},checkPoint:function(e,t,r,i,u,a,n,o){return e3(e,t,i,u,a,n,r)}}};TI.generateRoundPolygon=function(A,e){return this.nodeShapes[A]={renderer:this,name:A,points:e,getOrCreateCorners:function(r,i,u,a,n,o,s){if(o[s]!==void 0&&o[s+"-cx"]===r&&o[s+"-cy"]===i&&o[s+"-w"]===u&&o[s+"-h"]===a&&o[s+"-corner-radius"]===n)return o[s];o[s]=Array(e.length/2),o[s+"-cx"]=r,o[s+"-cy"]=i,o[s+"-w"]=u,o[s+"-h"]=a,o[s+"-corner-radius"]=n;var l=u/2,g=a/2;n=n==="auto"?vKA(u,a):n;var C=Array(e.length/2);for(var B=0;B<e.length/2;B++)C[B]={x:r+l*e[B*2],y:i+g*e[B*2+1]};var E,d,I,h,Q=C.length;d=C[Q-1];for(E=0;E<Q;E++)I=C[E%Q],h=C[(E+1)%Q],o[s][E]=inA(d,I,h,n),d=I,I=h;return o[s]},draw:function(r,i,u,a,n,o,s){this.renderer.nodeShapeImpl("round-polygon",r,i,u,a,n,this.points,this.getOrCreateCorners(i,u,a,n,o,s,"drawCorners"))},intersectLine:function(r,i,u,a,n,o,s,l,g){return g4t(n,o,this.points,r,i,u,a,s,this.getOrCreateCorners(r,i,u,a,l,g,"corners"))},checkPoint:function(r,i,u,a,n,o,s,l,g){return o4t(r,i,this.points,o,s,a,n,this.getOrCreateCorners(o,s,a,n,l,g,"corners"))}}};TI.generateRoundRectangle=function(){return this.nodeShapes["round-rectangle"]=this.nodeShapes.roundrectangle={renderer:this,name:"round-rectangle",points:ps(4,0),draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u,this.points,a)},intersectLine:function(e,t,r,i,u,a,n,o){return wKA(u,a,e,t,r,i,n,o)},checkPoint:function(e,t,r,i,u,a,n,o){var s=i/2,l=u/2;o=o==="auto"?v4(i,u):o,o=Math.min(s,l,o);var g=o*2;if(MI(e,t,this.points,a,n,i,u-g,[0,-1],r))return!0;if(MI(e,t,this.points,a,n,i-g,u,[0,-1],r))return!0;if(e3(e,t,g,g,a-s+o,n-l+o,r))return!0;if(e3(e,t,g,g,a+s-o,n-l+o,r))return!0;if(e3(e,t,g,g,a+s-o,n+l-o,r))return!0;if(e3(e,t,g,g,a-s+o,n+l-o,r))return!0;return!1}}};TI.generateCutRectangle=function(){return this.nodeShapes["cut-rectangle"]=this.nodeShapes.cutrectangle={renderer:this,name:"cut-rectangle",cornerLength:qaA(),points:ps(4,0),draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u,null,a)},generateCutTrianglePts:function(e,t,r,i,u){var a=u==="auto"?this.cornerLength:u,n=t/2,o=e/2,s=r-o,l=r+o,g=i-n,C=i+n;return{topLeft:[s,g+a,s+a,g,s+a,g+a],topRight:[l-a,g,l,g+a,l-a,g+a],bottomRight:[l,C-a,l-a,C,l-a,C-a],bottomLeft:[s+a,C,s,C-a,s+a,C-a]}},intersectLine:function(e,t,r,i,u,a,n,o){var s=this.generateCutTrianglePts(r+2*n,i+2*n,e,t,o),l=[].concat.apply([],[s.topLeft.splice(0,4),s.topRight.splice(0,4),s.bottomRight.splice(0,4),s.bottomLeft.splice(0,4)]);return Ok(u,a,l,e,t)},checkPoint:function(e,t,r,i,u,a,n,o){var s=o==="auto"?this.cornerLength:o;if(MI(e,t,this.points,a,n,i,u-2*s,[0,-1],r))return!0;if(MI(e,t,this.points,a,n,i-2*s,u,[0,-1],r))return!0;var l=this.generateCutTrianglePts(i,u,a,n);return dl(e,t,l.topLeft)||dl(e,t,l.topRight)||dl(e,t,l.bottomRight)||dl(e,t,l.bottomLeft)}}};TI.generateBarrel=function(){return this.nodeShapes.barrel={renderer:this,name:"barrel",points:ps(4,0),draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u)},intersectLine:function(e,t,r,i,u,a,n,o){var s=0.15,l=0.5,g=0.85,C=this.generateBarrelBezierPts(r+2*n,i+2*n,e,t),B=function(I){var h=nw({x:I[0],y:I[1]},{x:I[2],y:I[3]},{x:I[4],y:I[5]},s),Q=nw({x:I[0],y:I[1]},{x:I[2],y:I[3]},{x:I[4],y:I[5]},l),p=nw({x:I[0],y:I[1]},{x:I[2],y:I[3]},{x:I[4],y:I[5]},g);return[I[0],I[1],h.x,h.y,Q.x,Q.y,p.x,p.y,I[4],I[5]]},E=[].concat(B(C.topLeft),B(C.topRight),B(C.bottomRight),B(C.bottomLeft));return Ok(u,a,E,e,t)},generateBarrelBezierPts:function(e,t,r,i){var u=t/2,a=e/2,n=r-a,o=r+a,s=i-u,l=i+u,g=QaA(e,t),{heightOffset:C,widthOffset:B}=g,E=g.ctrlPtOffsetPct*e,d={topLeft:[n,s+C,n+E,s,n+B,s],topRight:[o-B,s,o-E,s,o,s+C],bottomRight:[o,l-C,o-E,l,o-B,l],bottomLeft:[n+B,l,n+E,l,n,l-C]};return d.topLeft.isTop=!0,d.topRight.isTop=!0,d.bottomLeft.isBottom=!0,d.bottomRight.isBottom=!0,d},checkPoint:function(e,t,r,i,u,a,n,o){var s=QaA(i,u),{heightOffset:l,widthOffset:g}=s;if(MI(e,t,this.points,a,n,i,u-2*l,[0,-1],r))return!0;if(MI(e,t,this.points,a,n,i-2*g,u,[0,-1],r))return!0;var C=this.generateBarrelBezierPts(i,u,a,n),B=function(b,F,v){var S=v[4],x=v[2],k=v[0],T=v[5],R=v[1],L=Math.min(S,k),M=Math.max(S,k),U=Math.min(T,R),Y=Math.max(T,R);if(L<=b&&b<=M&&U<=F&&F<=Y){var H=c4t(S,x,k),J=i4t(H[0],H[1],H[2],b),K=J.filter(function(O){return 0<=O&&O<=1});if(K.length>0)return K[0]}return null},E=Object.keys(C);for(var d=0;d<E.length;d++){var I=E[d],h=C[I],Q=B(e,t,h);if(Q==null)continue;var p=h[5],m=h[3],f=h[1],D=Ro(p,m,f,Q);if(h.isTop&&D<=t)return!0;if(h.isBottom&&t<=D)return!0}return!1}}};TI.generateBottomRoundrectangle=function(){return this.nodeShapes["bottom-round-rectangle"]=this.nodeShapes.bottomroundrectangle={renderer:this,name:"bottom-round-rectangle",points:ps(4,0),draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u,this.points,a)},intersectLine:function(e,t,r,i,u,a,n,o){var s=e-(r/2+n),l=t-(i/2+n),g=l,C=e+(r/2+n),B=m4(u,a,e,t,s,l,C,g,!1);if(B.length>0)return B;return wKA(u,a,e,t,r,i,n,o)},checkPoint:function(e,t,r,i,u,a,n,o){o=o==="auto"?v4(i,u):o;var s=2*o;if(MI(e,t,this.points,a,n,i,u-s,[0,-1],r))return!0;if(MI(e,t,this.points,a,n,i-s,u,[0,-1],r))return!0;var l=i/2+2*r,g=u/2+2*r,C=[a-l,n-g,a-l,n,a+l,n,a+l,n-g];if(dl(e,t,C))return!0;if(e3(e,t,s,s,a+i/2-o,n+u/2-o,r))return!0;if(e3(e,t,s,s,a-i/2+o,n+u/2-o,r))return!0;return!1}}};TI.registerNodeShapes=function(){var A=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",ps(3,0)),this.generateRoundPolygon("round-triangle",ps(3,0)),this.generatePolygon("rectangle",ps(4,0)),A.square=A.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var t=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",t),this.generateRoundPolygon("round-diamond",t)}this.generatePolygon("pentagon",ps(5,0)),this.generateRoundPolygon("round-pentagon",ps(5,0)),this.generatePolygon("hexagon",ps(6,0)),this.generateRoundPolygon("round-hexagon",ps(6,0)),this.generatePolygon("heptagon",ps(7,0)),this.generateRoundPolygon("round-heptagon",ps(7,0)),this.generatePolygon("octagon",ps(8,0)),this.generateRoundPolygon("round-octagon",ps(8,0));var r=Array(20);{var i=haA(5,0),u=haA(5,Math.PI/5),a=0.5*(3-Math.sqrt(5));a*=1.57;for(var n=0;n<u.length/2;n++)u[n*2]*=a,u[n*2+1]*=a;for(var n=0;n<5;n++)r[n*4]=i[n*2],r[n*4+1]=i[n*2+1],r[n*4+2]=u[n*2],r[n*4+3]=u[n*2+1]}r=bKA(r),this.generatePolygon("star",r),this.generatePolygon("vee",[-1,-1,0,-0.333,1,-1,0,1]),this.generatePolygon("rhomboid",[-1,-1,0.333,-1,1,1,-0.333,1]),this.generatePolygon("right-rhomboid",[-0.333,-1,1,-1,0.333,1,-1,1]),this.nodeShapes.concavehexagon=this.generatePolygon("concave-hexagon",[-1,-0.95,-0.75,0,-1,0.95,1,0.95,0.75,0,1,-0.95]);{var o=[-1,-1,0.25,-1,1,0,0.25,1,-1,1];this.generatePolygon("tag",o),this.generateRoundPolygon("round-tag",o)}A.makePolygon=function(s){var l=s.join("$"),g="polygon-"+l,C;if(C=this[g])return C;return e.generatePolygon(g,s)}};uF={};uF.timeToRender=function(){return this.redrawTotalTime/this.redrawCount};uF.redraw=function(A){A=A||pKA();var e=this;if(e.averageRedrawTime===void 0)e.averageRedrawTime=0;if(e.lastRedrawTime===void 0)e.lastRedrawTime=0;if(e.lastDrawTime===void 0)e.lastDrawTime=0;e.requestedFrame=!0,e.renderOptions=A};uF.beforeRender=function(A,e){if(this.destroyed)return;if(e==null)Qa("Priority is not optional for beforeRender");var t=this.beforeRenderCallbacks;t.push({fn:A,priority:e}),t.sort(function(r,i){return i.priority-r.priority})};uF.startRenderLoop=function(){var A=this,e=A.cy;if(A.renderLoopStarted)return;else A.renderLoopStarted=!0;var t=function(i){if(A.destroyed)return;if(e.batching());else if(A.requestedFrame&&!A.skipFrame){THA(A,!0,i);var u=UI();A.render(A.renderOptions);var a=A.lastDrawTime=UI();if(A.averageRedrawTime===void 0)A.averageRedrawTime=a-u;if(A.redrawCount===void 0)A.redrawCount=0;if(A.redrawCount++,A.redrawTotalTime===void 0)A.redrawTotalTime=0;var n=a-u;A.redrawTotalTime+=n,A.lastRedrawTime=n,A.averageRedrawTime=A.averageRedrawTime/2+n/2,A.requestedFrame=!1}else THA(A,!1,i);A.skipFrame=!1,UT(t)};UT(t)};kJA=Sft,fw=kJA.prototype;fw.clientFunctions=["redrawHint","render","renderTo","matchCanvasSize","nodeShapeImpl","arrowShapeImpl"];fw.init=function(A){var e=this;e.options=A,e.cy=A.cy;var t=e.container=A.cy.container(),r=e.cy.window();if(r){var i=r.document,u=i.head,a="__________cytoscape_stylesheet",n="__________cytoscape_container",o=i.getElementById(a)!=null;if(t.className.indexOf(n)<0)t.className=(t.className||"")+" "+n;if(!o){var s=i.createElement("style");s.id=a,s.textContent="."+n+" { position: relative; }",u.insertBefore(s,u.children[0])}var l=r.getComputedStyle(t),g=l.getPropertyValue("position");if(g==="static")du("A Cytoscape container has style position:static and so can not use UI extensions properly")}e.selection=[void 0,void 0,void 0,void 0,0],e.bezierProjPcts=[0.05,0.225,0.4,0.5,0.6,0.775,0.95],e.hoverData={down:null,last:null,downTime:null,triggerMode:null,dragging:!1,initialPan:[null,null],capture:!1},e.dragData={possibleDragElements:[]},e.touchData={start:null,capture:!1,startPosition:[null,null,null,null,null,null],singleTouchStartTime:null,singleTouchMoved:!0,now:[null,null,null,null,null,null],earlier:[null,null,null,null,null,null]},e.redraws=0,e.showFps=A.showFps,e.debug=A.debug,e.webgl=A.webgl,e.hideEdgesOnViewport=A.hideEdgesOnViewport,e.textureOnViewport=A.textureOnViewport,e.wheelSensitivity=A.wheelSensitivity,e.motionBlurEnabled=A.motionBlur,e.forcedPixelRatio=Qt(A.pixelRatio)?A.pixelRatio:null,e.motionBlur=A.motionBlur,e.motionBlurOpacity=A.motionBlurOpacity,e.motionBlurTransparency=1-e.motionBlurOpacity,e.motionBlurPxRatio=1,e.mbPxRBlurry=1,e.minMbLowQualFrames=4,e.fullQualityMb=!1,e.clearedForMotionBlur=[],e.desktopTapThreshold=A.desktopTapThreshold,e.desktopTapThreshold2=A.desktopTapThreshold*A.desktopTapThreshold,e.touchTapThreshold=A.touchTapThreshold,e.touchTapThreshold2=A.touchTapThreshold*A.touchTapThreshold,e.tapholdDuration=500,e.bindings=[],e.beforeRenderCallbacks=[],e.beforeRenderPriorities={animations:400,eleCalcs:300,eleTxrDeq:200,lyrTxrDeq:150,lyrTxrSkip:100},e.registerNodeShapes(),e.registerArrowShapes(),e.registerCalculationListeners()};fw.notify=function(A,e){var t=this,r=t.cy;if(this.destroyed)return;if(A==="init"){t.load();return}if(A==="destroy"){t.destroy();return}if(A==="add"||A==="remove"||A==="move"&&r.hasCompoundNodes()||A==="load"||A==="zorder"||A==="mount")t.invalidateCachedZSortedEles();if(A==="viewport")t.redrawHint("select",!0);if(A==="gc")t.redrawHint("gc",!0);if(A==="load"||A==="resize"||A==="mount")t.invalidateContainerClientCoordsCache(),t.matchCanvasSize(t.container);t.redrawHint("eles",!0),t.redrawHint("drag",!0),this.startRenderLoop(),this.redraw()};fw.destroy=function(){var A=this;A.destroyed=!0,A.cy.stopAnimationLoop();for(var e=0;e<A.bindings.length;e++){var t=A.bindings[e],r=t,i=r.target;(i.off||i.removeEventListener).apply(i,r.args)}if(A.bindings=[],A.beforeRenderCallbacks=[],A.onUpdateEleCalcsFns=[],A.removeObserver)A.removeObserver.disconnect();if(A.styleObserver)A.styleObserver.disconnect();if(A.resizeObserver)A.resizeObserver.disconnect();if(A.labelCalcDiv)try{document.body.removeChild(A.labelCalcDiv)}catch(u){}};fw.isHeadless=function(){return!1};[rnA,wJA,bJA,pw,TI,uF].forEach(function(A){Cr(fw,A)});FJA={setupDequeueing:function(e){return function(){var r=this,i=this.renderer;if(r.dequeueingSetup)return;else r.dequeueingSetup=!0;var u=AF(function(){i.redrawHint("eles",!0),i.redrawHint("drag",!0),i.redraw()},e.deqRedrawThreshold),a=function(s,l){var g=UI(),{averageRedrawTime:C,lastRedrawTime:B}=i,E=[],d=i.cy.extent(),I=i.getPixelRatio();if(!s)i.flushRenderedStyleQueue();while(!0){var h=UI(),Q=h-g,p=h-l;if(B<saA){var m=saA-(s?C:0);if(p>=e.deqFastCost*m)break}else if(s){if(Q>=e.deqCost*B||Q>=e.deqAvgCost*C)break}else if(p>=e.deqNoDrawCost*saA)break;var f=e.deq(r,I,d);if(f.length>0)for(var D=0;D<f.length;D++)E.push(f[D]);else break}if(E.length>0){if(e.onDeqd(r,E),!s&&e.shouldRedraw(r,E,I,d))u()}},n=e.priority||JaA;i.beforeRender(a,n(r))}}},Lft=function(){function A(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:MT;S4(this,A),this.idsByKey=new GI,this.keyForId=new GI,this.cachesByLvl=new GI,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=t}return L4(A,[{key:"getIdsFor",value:function(t){if(t==null)Qa("Can not get id list for null key");var r=this.idsByKey,i=this.idsByKey.get(t);if(!i)i=new dw,r.set(t,i);return i}},{key:"addIdForKey",value:function(t,r){if(t!=null)this.getIdsFor(t).add(r)}},{key:"deleteIdForKey",value:function(t,r){if(t!=null)this.getIdsFor(t).delete(r)}},{key:"getNumberOfIdsForKey",value:function(t){if(t==null)return 0;else return this.getIdsFor(t).size}},{key:"updateKeyMappingFor",value:function(t){var r=t.id(),i=this.keyForId.get(r),u=this.getKey(t);this.deleteIdForKey(i,r),this.addIdForKey(u,r),this.keyForId.set(r,u)}},{key:"deleteKeyMappingFor",value:function(t){var r=t.id(),i=this.keyForId.get(r);this.deleteIdForKey(i,r),this.keyForId.delete(r)}},{key:"keyHasChangedFor",value:function(t){var r=t.id(),i=this.keyForId.get(r),u=this.getKey(t);return i!==u}},{key:"isInvalid",value:function(t){return this.keyHasChangedFor(t)||this.doesEleInvalidateKey(t)}},{key:"getCachesAt",value:function(t){var r=this.cachesByLvl,i=this.lvls,u=r.get(t);if(!u)u=new GI,r.set(t,u),i.push(t);return u}},{key:"getCache",value:function(t,r){return this.getCachesAt(r).get(t)}},{key:"get",value:function(t,r){var i=this.getKey(t),u=this.getCache(i,r);if(u!=null)this.updateKeyMappingFor(t);return u}},{key:"getForCachedKey",value:function(t,r){var i=this.keyForId.get(t.id()),u=this.getCache(i,r);return u}},{key:"hasCache",value:function(t,r){return this.getCachesAt(r).has(t)}},{key:"has",value:function(t,r){var i=this.getKey(t);return this.hasCache(i,r)}},{key:"setCache",value:function(t,r,i){i.key=t,this.getCachesAt(r).set(t,i)}},{key:"set",value:function(t,r,i){var u=this.getKey(t);this.setCache(u,r,i),this.updateKeyMappingFor(t)}},{key:"deleteCache",value:function(t,r){this.getCachesAt(r).delete(t)}},{key:"delete",value:function(t,r){var i=this.getKey(t);this.deleteCache(i,r)}},{key:"invalidateKey",value:function(t){var r=this;this.lvls.forEach(function(i){return r.deleteCache(t,i)})}},{key:"invalidate",value:function(t){var r=t.id(),i=this.keyForId.get(r);this.deleteKeyMappingFor(t);var u=this.doesEleInvalidateKey(t);if(u)this.invalidateKey(i);return u||this.getNumberOfIdsForKey(i)===0}}])}(),aw={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},Wft=o0({getKey:null,doesEleInvalidateKey:MT,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:IKA,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),uo=Gk.prototype;uo.reasons=aw;uo.getTextureQueue=function(A){var e=this;return e.eleImgCaches=e.eleImgCaches||{},e.eleImgCaches[A]=e.eleImgCaches[A]||[]};uo.getRetiredTextureQueue=function(A){var e=this,t=e.eleImgCaches.retired=e.eleImgCaches.retired||{},r=t[A]=t[A]||[];return r};uo.getElementQueue=function(){var A=this,e=A.eleCacheQueue=A.eleCacheQueue||new eF(function(t,r){return r.reqs-t.reqs});return e};uo.getElementKeyToQueue=function(){var A=this,e=A.eleKeyToCacheQueue=A.eleKeyToCacheQueue||{};return e};uo.getElement=function(A,e,t,r,i){var u=this,a=this.renderer,n=a.cy.zoom(),o=this.lookup;if(!e||e.w===0||e.h===0||isNaN(e.w)||isNaN(e.h)||!A.visible()||A.removed())return null;if(!u.allowEdgeTxrCaching&&A.isEdge()||!u.allowParentTxrCaching&&A.isParent())return null;if(r==null)r=Math.ceil(PaA(n*t));if(r<LT)r=LT;else if(n>=xJA||r>LaA)return null;var s=Math.pow(2,r),l=e.h*s,g=e.w*s,C=a.eleTextBiggerThanMin(A,s);if(!this.isVisible(A,C))return null;var B=o.get(A,r);if(B&&B.invalidated)B.invalidated=!1,B.texture.invalidatedWidth-=B.width;if(B)return B;var E;if(l<=YHA)E=YHA;else if(l<=fT)E=fT;else E=Math.ceil(l/fT)*fT;if(l>Uft||g>Gft)return null;var d=u.getTextureQueue(E),I=d[d.length-2],h=function(){return u.recycleTexture(E,g)||u.addTexture(E,g)};if(!I)I=d[d.length-1];if(!I)I=h();if(I.width-I.usedWidth<g)I=h();var Q=function(L){return L&&L.scaledLabelShown===C},p=i&&i===aw.dequeue,m=i&&i===aw.highQuality,f=i&&i===aw.downscale,D;for(var w=r+1;w<=LaA;w++){var b=o.get(A,w);if(b){D=b;break}}var F=D&&D.level===r+1?D:null,v=function(){I.context.drawImage(F.texture.canvas,F.x,0,F.width,F.height,I.usedWidth,0,g,l)};if(I.context.setTransform(1,0,0,1,0,0),I.context.clearRect(I.usedWidth,0,g,E),Q(F))v();else if(Q(D))if(m){for(var S=D.level;S>r;S--)F=u.getElement(A,e,t,S,aw.downscale);v()}else return u.queueElement(A,D.level-1),D;else{var x;if(!p&&!m&&!f)for(var k=r-1;k>=LT;k--){var T=o.get(A,k);if(T){x=T;break}}if(Q(x))return u.queueElement(A,r),x;I.context.translate(I.usedWidth,0),I.context.scale(s,s),this.drawElement(I.context,A,e,C,!1),I.context.scale(1/s,1/s),I.context.translate(-I.usedWidth,0)}return B={x:I.usedWidth,texture:I,level:r,scale:s,width:g,height:l,scaledLabelShown:C},I.usedWidth+=Math.ceil(g+Rft),I.eleCaches.push(B),o.set(A,r,B),u.checkTextureFullness(I),B};uo.invalidateElements=function(A){for(var e=0;e<A.length;e++)this.invalidateElement(A[e])};uo.invalidateElement=function(A){var e=this,t=e.lookup,r=[],i=t.isInvalid(A);if(!i)return;for(var u=LT;u<=LaA;u++){var a=t.getForCachedKey(A,u);if(a)r.push(a)}var n=t.invalidate(A);if(n)for(var o=0;o<r.length;o++){var s=r[o],l=s.texture;l.invalidatedWidth+=s.width,s.invalidated=!0,e.checkTextureUtility(l)}e.removeFromQueue(A)};uo.checkTextureUtility=function(A){if(A.invalidatedWidth>=Mft*A.width)this.retireTexture(A)};uo.checkTextureFullness=function(A){var e=this,t=e.getTextureQueue(A.height);if(A.usedWidth/A.width>Tft&&A.fullnessChecks>=Yft)b4(t,A);else A.fullnessChecks++};uo.retireTexture=function(A){var e=this,t=A.height,r=e.getTextureQueue(t),i=this.lookup;b4(r,A),A.retired=!0;var u=A.eleCaches;for(var a=0;a<u.length;a++){var n=u[a];i.deleteCache(n.key,n.level)}OaA(u);var o=e.getRetiredTextureQueue(t);o.push(A)};uo.addTexture=function(A,e){var t=this,r=t.getTextureQueue(A),i={};return r.push(i),i.eleCaches=[],i.height=A,i.width=Math.max(Nft,e),i.usedWidth=0,i.invalidatedWidth=0,i.fullnessChecks=0,i.canvas=t.renderer.makeOffscreenCanvas(i.width,i.height),i.context=i.canvas.getContext("2d"),i};uo.recycleTexture=function(A,e){var t=this,r=t.getTextureQueue(A),i=t.getRetiredTextureQueue(A);for(var u=0;u<i.length;u++){var a=i[u];if(a.width>=e)return a.retired=!1,a.usedWidth=0,a.invalidatedWidth=0,a.fullnessChecks=0,OaA(a.eleCaches),a.context.setTransform(1,0,0,1,0,0),a.context.clearRect(0,0,a.width,a.height),b4(i,a),r.push(a),a}};uo.queueElement=function(A,e){var t=this,r=t.getElementQueue(),i=t.getElementKeyToQueue(),u=this.getKey(A),a=i[u];if(a)a.level=Math.max(a.level,e),a.eles.merge(A),a.reqs++,r.updateItem(a);else{var n={eles:A.spawn().merge(A),level:e,reqs:1,key:u};r.push(n),i[u]=n}};uo.dequeue=function(A){var e=this,t=e.getElementQueue(),r=e.getElementKeyToQueue(),i=[],u=e.lookup;for(var a=0;a<_ft;a++)if(t.size()>0){var n=t.pop(),o=n.key,s=n.eles[0],l=u.hasCache(s,n.level);if(r[o]=null,l)continue;i.push(n);var g=e.getBoundingBox(s);e.getElement(s,g,A,n.level,aw.dequeue)}else break;return i};uo.removeFromQueue=function(A){var e=this,t=e.getElementQueue(),r=e.getElementKeyToQueue(),i=this.getKey(A),u=r[i];if(u!=null)if(u.eles.length===1)u.reqs=KaA,t.updateItem(u),t.pop(),r[i]=null;else u.eles.unmerge(A)};uo.onDequeue=function(A){this.onDequeues.push(A)};uo.offDequeue=function(A){b4(this.onDequeues,A)};uo.setupDequeueing=FJA.setupDequeueing({deqRedrawThreshold:Pft,deqCost:Hft,deqAvgCost:Kft,deqNoDrawCost:Jft,deqFastCost:Oft,deq:function(e,t,r){return e.dequeue(t,r)},onDeqd:function(e,t){for(var r=0;r<e.onDequeues.length;r++){var i=e.onDequeues[r];i(t)}},shouldRedraw:function(e,t,r,i){for(var u=0;u<t.length;u++){var a=t[u].eles;for(var n=0;n<a.length;n++){var o=a[n].boundingBox();if(WaA(o,i))return!0}}return!1},priority:function(e){return e.renderer.beforeRenderPriorities.eleTxrDeq}});s0=SJA.prototype,i3t=Math.pow(2,53)-1;s0.makeLayer=function(A,e){var t=Math.pow(2,e),r=Math.ceil(A.w*t),i=Math.ceil(A.h*t),u=this.renderer.makeOffscreenCanvas(r,i),a={id:JHA=++JHA%i3t,bb:A,level:e,width:r,height:i,canvas:u,context:u.getContext("2d"),eles:[],elesQueue:[],reqs:0},n=a.context,o=-a.bb.x1,s=-a.bb.y1;return n.scale(t,t),n.translate(o,s),a};s0.getLayers=function(A,e,t){var r=this,i=r.renderer,u=i.cy,a=u.zoom(),n=r.firstGet;if(r.firstGet=!1,t==null){if(t=Math.ceil(PaA(a*e)),t<Mk)t=Mk;else if(a>=zft||t>_T)return null}r.validateLayersElesOrdering(t,A);var o=r.layersByLevel,s=Math.pow(2,t),l=o[t]=o[t]||[],g,C=r.levelIsComplete(t,A),B,E=function(){var v=function(R){if(r.validateLayersElesOrdering(R,A),r.levelIsComplete(R,A))return B=o[R],!0},S=function(R){if(B)return;for(var L=t+R;Mk<=L&&L<=_T;L+=R)if(v(L))break};S(1),S(-1);for(var x=l.length-1;x>=0;x--){var k=l[x];if(k.invalid)b4(l,k)}};if(!C)E();else return l;var d=function(){if(!g){g=ms();for(var v=0;v<A.length;v++)XQt(g,A[v].boundingBox())}return g},I=function(v){v=v||{};var S=v.after;d();var x=Math.ceil(g.w*s),k=Math.ceil(g.h*s);if(x>KHA||k>KHA)return null;var T=x*k;if(T>t3t)return null;var R=r.makeLayer(g,t);if(S!=null){var L=l.indexOf(S)+1;l.splice(L,0,R)}else if(v.insert===void 0||v.insert)l.unshift(R);return R};if(r.skipping&&!n)return null;var h=null,Q=A.length/qft,p=!n;for(var m=0;m<A.length;m++){var f=A[m],D=f._private.rscratch,w=D.imgLayerCaches=D.imgLayerCaches||{},b=w[t];if(b){h=b;continue}if(!h||h.eles.length>=Q||!yKA(h.bb,f.boundingBox())){if(h=I({insert:!0,after:h}),!h)return null}if(B||p)r.queueLayer(h,f);else r.drawEleInLayer(h,f,t,e);h.eles.push(f),w[t]=h}if(B)return B;if(p)return null;return l};s0.getEleLevelForLayerLevel=function(A,e){return A};s0.drawEleInLayer=function(A,e,t,r){var i=this,u=this.renderer,a=A.context,n=e.boundingBox();if(n.w===0||n.h===0||!e.visible())return;t=i.getEleLevelForLayerLevel(t,r),u.setImgSmoothing(a,!1),u.drawCachedElement(a,e,null,null,t,r3t),u.setImgSmoothing(a,!0)};s0.levelIsComplete=function(A,e){var t=this,r=t.layersByLevel[A];if(!r||r.length===0)return!1;var i=0;for(var u=0;u<r.length;u++){var a=r[u];if(a.reqs>0)return!1;if(a.invalid)return!1;i+=a.eles.length}if(i!==e.length)return!1;return!0};s0.validateLayersElesOrdering=function(A,e){var t=this.layersByLevel[A];if(!t)return;for(var r=0;r<t.length;r++){var i=t[r],u=-1;for(var a=0;a<e.length;a++)if(i.eles[0]===e[a]){u=a;break}if(u<0){this.invalidateLayer(i);continue}var n=u;for(var a=0;a<i.eles.length;a++)if(i.eles[a]!==e[n+a]){this.invalidateLayer(i);break}}};s0.updateElementsInLayers=function(A,e){var t=this,r=Vk(A[0]);for(var i=0;i<A.length;i++){var u=r?null:A[i],a=r?A[i]:A[i].ele,n=a._private.rscratch,o=n.imgLayerCaches=n.imgLayerCaches||{};for(var s=Mk;s<=_T;s++){var l=o[s];if(!l)continue;if(u&&t.getEleLevelForLayerLevel(l.level)!==u.level)continue;e(l,a,u)}}};s0.haveLayers=function(){var A=this,e=!1;for(var t=Mk;t<=_T;t++){var r=A.layersByLevel[t];if(r&&r.length>0){e=!0;break}}return e};s0.invalidateElements=function(A){var e=this;if(A.length===0)return;if(e.lastInvalidationTime=UI(),A.length===0||!e.haveLayers())return;e.updateElementsInLayers(A,function(r,i,u){e.invalidateLayer(r)})};s0.invalidateLayer=function(A){if(this.lastInvalidationTime=UI(),A.invalid)return;var{level:e,eles:t}=A,r=this.layersByLevel[e];if(b4(r,A),A.elesQueue=[],A.invalid=!0,A.replacement)A.replacement.invalid=!0;for(var i=0;i<t.length;i++){var u=t[i]._private.rscratch.imgLayerCaches;if(u)u[e]=null}};s0.refineElementTextures=function(A){var e=this;e.updateElementsInLayers(A,function(r,i,u){var a=r.replacement;if(!a)a=r.replacement=e.makeLayer(r.bb,r.level),a.replaces=r,a.eles=r.eles;if(!a.reqs)for(var n=0;n<a.eles.length;n++)e.queueLayer(a,a.eles[n])})};s0.enqueueElementRefinement=function(A){this.eleTxrDeqs.merge(A),this.scheduleElementRefinement()};s0.queueLayer=function(A,e){var t=this,r=t.layersQueue,i=A.elesQueue,u=i.hasId=i.hasId||{};if(A.replacement)return;if(e){if(u[e.id()])return;i.push(e),u[e.id()]=!0}if(A.reqs)A.reqs++,r.updateItem(A);else A.reqs=1,r.push(A)};s0.dequeue=function(A){var e=this,t=e.layersQueue,r=[],i=0;while(i<e3t){if(t.size()===0)break;var u=t.peek();if(u.replacement){t.pop();continue}if(u.replaces&&u!==u.replaces.replacement){t.pop();continue}if(u.invalid){t.pop();continue}var a=u.elesQueue.shift();if(a)e.drawEleInLayer(u,a,u.level,A),i++;if(r.length===0)r.push(!0);if(u.elesQueue.length===0){if(t.pop(),u.reqs=0,u.replaces)e.applyLayerReplacement(u);e.requestRedraw()}}return r};s0.applyLayerReplacement=function(A){var e=this,t=e.layersByLevel[A.level],r=A.replaces,i=t.indexOf(r);if(i<0||r.invalid)return;t[i]=A;for(var u=0;u<A.eles.length;u++){var a=A.eles[u]._private,n=a.imgLayerCaches=a.imgLayerCaches||{};if(n)n[A.level]=A}e.requestRedraw()};s0.requestRedraw=AF(function(){var A=this.renderer;A.redrawHint("eles",!0),A.redrawHint("drag",!0),A.redraw()},100);s0.setupDequeueing=FJA.setupDequeueing({deqRedrawThreshold:Zft,deqCost:jft,deqAvgCost:Xft,deqNoDrawCost:$ft,deqFastCost:A3t,deq:function(e,t){return e.dequeue(t)},onDeqd:JaA,shouldRedraw:IKA,priority:function(e){return e.renderer.beforeRenderPriorities.lyrTxrDeq}});LJA={};LJA.arrowShapeImpl=function(A){return(OHA||(OHA={polygon:u3t,"triangle-backcurve":a3t,"triangle-tee":PHA,"circle-triangle":n3t,"triangle-cross":PHA,circle:o3t}))[A]};UE={};UE.drawElement=function(A,e,t,r,i,u){var a=this;if(e.isNode())a.drawNode(A,e,t,r,i,u);else a.drawEdge(A,e,t,r,i,u)};UE.drawElementOverlay=function(A,e){var t=this;if(e.isNode())t.drawNodeOverlay(A,e);else t.drawEdgeOverlay(A,e)};UE.drawElementUnderlay=function(A,e){var t=this;if(e.isNode())t.drawNodeUnderlay(A,e);else t.drawEdgeUnderlay(A,e)};UE.drawCachedElementPortion=function(A,e,t,r,i,u,a,n){var o=this,s=t.getBoundingBox(e);if(s.w===0||s.h===0)return;var l=t.getElement(e,s,r,i,u);if(l!=null){var g=n(o,e);if(g===0)return;var C=a(o,e),{x1:B,y1:E,w:d,h:I}=s,h,Q,p,m,f;if(C!==0){var D=t.getRotationPoint(e);if(p=D.x,m=D.y,A.translate(p,m),A.rotate(C),f=o.getImgSmoothing(A),!f)o.setImgSmoothing(A,!0);var w=t.getRotationOffset(e);h=w.x,Q=w.y}else h=B,Q=E;var b;if(g!==1)b=A.globalAlpha,A.globalAlpha=b*g;if(A.drawImage(l.texture.canvas,l.x,0,l.width,l.height,h,Q,d,I),g!==1)A.globalAlpha=b;if(C!==0){if(A.rotate(-C),A.translate(-p,-m),!f)o.setImgSmoothing(A,!1)}}else t.drawElement(A,e)};UE.drawCachedElement=function(A,e,t,r,i,u){var a=this,n=a.data,{eleTxrCache:o,lblTxrCache:s,slbTxrCache:l,tlbTxrCache:g}=n,C=e.boundingBox(),B=u===!0?o.reasons.highQuality:null;if(C.w===0||C.h===0||!e.visible())return;if(!r||WaA(C,r)){var E=e.isEdge(),d=e.element()._private.rscratch.badLine;if(a.drawElementUnderlay(A,e),a.drawCachedElementPortion(A,e,o,t,i,B,s3t,C3t),!E||!d)a.drawCachedElementPortion(A,e,s,t,i,B,l3t,laA);if(E&&!d)a.drawCachedElementPortion(A,e,l,t,i,B,g3t,laA),a.drawCachedElementPortion(A,e,g,t,i,B,c3t,laA);a.drawElementOverlay(A,e)}};UE.drawElements=function(A,e){var t=this;for(var r=0;r<e.length;r++){var i=e[r];t.drawElement(A,i)}};UE.drawCachedElements=function(A,e,t,r){var i=this;for(var u=0;u<e.length;u++){var a=e[u];i.drawCachedElement(A,a,t,r)}};UE.drawCachedNodes=function(A,e,t,r){var i=this;for(var u=0;u<e.length;u++){var a=e[u];if(!a.isNode())continue;i.drawCachedElement(A,a,t,r)}};UE.drawLayeredElements=function(A,e,t,r){var i=this,u=i.data.lyrTxrCache.getLayers(e,t);if(u)for(var a=0;a<u.length;a++){var n=u[a],o=n.bb;if(o.w===0||o.h===0)continue;A.drawImage(n.canvas,o.x1,o.y1,o.w,o.h)}else i.drawCachedElements(A,e,t,r)};YI={};YI.drawEdge=function(A,e,t){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,a=this,n=e._private.rscratch;if(u&&!e.visible())return;if(n.badLine||n.allpts==null||isNaN(n.allpts[0]))return;var o;if(t)o=t,A.translate(-o.x1,-o.y1);var s=u?e.pstyle("opacity").value:1,l=u?e.pstyle("line-opacity").value:1,g=e.pstyle("curve-style").value,C=e.pstyle("line-style").value,B=e.pstyle("width").pfValue,E=e.pstyle("line-cap").value,d=e.pstyle("line-outline-width").value,I=e.pstyle("line-outline-color").value,h=s*l,Q=s*l,p=function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:h;if(g==="straight-triangle")a.eleStrokeStyle(A,e,R),a.drawEdgeTrianglePath(e,A,n.allpts);else A.lineWidth=B,A.lineCap=E,a.eleStrokeStyle(A,e,R),a.drawEdgePath(e,A,n.allpts,C),A.lineCap="butt"},m=function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:h;if(A.lineWidth=B+d,A.lineCap=E,d>0)a.colorStrokeStyle(A,I[0],I[1],I[2],R);else{A.lineCap="butt";return}if(g==="straight-triangle")a.drawEdgeTrianglePath(e,A,n.allpts);else a.drawEdgePath(e,A,n.allpts,C),A.lineCap="butt"},f=function(){if(!i)return;a.drawEdgeOverlay(A,e)},D=function(){if(!i)return;a.drawEdgeUnderlay(A,e)},w=function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Q;a.drawArrowheads(A,e,R)},b=function(){a.drawElementText(A,e,null,r)};A.lineJoin="round";var F=e.pstyle("ghost").value==="yes";if(F){var v=e.pstyle("ghost-offset-x").pfValue,S=e.pstyle("ghost-offset-y").pfValue,x=e.pstyle("ghost-opacity").value,k=h*x;A.translate(v,S),p(k),w(k),A.translate(-v,-S)}else m();if(D(),p(),w(),f(),b(),t)A.translate(o.x1,o.y1)};YI.drawEdgeOverlay=RJA("overlay");YI.drawEdgeUnderlay=RJA("underlay");YI.drawEdgePath=function(A,e,t,r){var i=A._private.rscratch,u=e,a,n=!1,o=this.usePaths(),s=A.pstyle("line-dash-pattern").pfValue,l=A.pstyle("line-dash-offset").pfValue;if(o){var g=t.join("$"),C=i.pathCacheKey&&i.pathCacheKey===g;if(C)a=e=i.pathCache,n=!0;else a=e=new Path2D,i.pathCacheKey=g,i.pathCache=a}if(u.setLineDash)switch(r){case"dotted":u.setLineDash([1,1]);break;case"dashed":u.setLineDash(s),u.lineDashOffset=l;break;case"solid":u.setLineDash([]);break}if(!n&&!i.badLine){if(e.beginPath)e.beginPath();switch(e.moveTo(t[0],t[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var B=2;B+3<t.length;B+=4)e.quadraticCurveTo(t[B],t[B+1],t[B+2],t[B+3]);break;case"straight":case"haystack":for(var E=2;E+1<t.length;E+=2)e.lineTo(t[E],t[E+1]);break;case"segments":if(i.isRound){var d=Il(i.roundCorners),I;try{for(d.s();!(I=d.n()).done;){var h=I.value;pJA(e,h)}}catch(p){d.e(p)}finally{d.f()}e.lineTo(t[t.length-2],t[t.length-1])}else for(var Q=2;Q+1<t.length;Q+=2)e.lineTo(t[Q],t[Q+1]);break}}if(e=u,o)e.stroke(a);else e.stroke();if(e.setLineDash)e.setLineDash([])};YI.drawEdgeTrianglePath=function(A,e,t){e.fillStyle=e.strokeStyle;var r=A.pstyle("width").pfValue;for(var i=0;i+1<t.length;i+=2){var u=[t[i+2]-t[i],t[i+3]-t[i+1]],a=Math.sqrt(u[0]*u[0]+u[1]*u[1]),n=[u[1]/a,-u[0]/a],o=[n[0]*r/2,n[1]*r/2];e.beginPath(),e.moveTo(t[i]-o[0],t[i+1]-o[1]),e.lineTo(t[i]+o[0],t[i+1]+o[1]),e.lineTo(t[i+2],t[i+3]),e.closePath(),e.fill()}};YI.drawArrowheads=function(A,e,t){var r=e._private.rscratch,i=r.edgeType==="haystack";if(!i)this.drawArrowhead(A,e,"source",r.arrowStartX,r.arrowStartY,r.srcArrowAngle,t);if(this.drawArrowhead(A,e,"mid-target",r.midX,r.midY,r.midtgtArrowAngle,t),this.drawArrowhead(A,e,"mid-source",r.midX,r.midY,r.midsrcArrowAngle,t),!i)this.drawArrowhead(A,e,"target",r.arrowEndX,r.arrowEndY,r.tgtArrowAngle,t)};YI.drawArrowhead=function(A,e,t,r,i,u,a){if(isNaN(r)||r==null||isNaN(i)||i==null||isNaN(u)||u==null)return;var n=this,o=e.pstyle(t+"-arrow-shape").value;if(o==="none")return;var s=e.pstyle(t+"-arrow-fill").value==="hollow"?"both":"filled",l=e.pstyle(t+"-arrow-fill").value,g=e.pstyle("width").pfValue,C=e.pstyle(t+"-arrow-width"),B=C.value==="match-line"?g:C.pfValue;if(C.units==="%")B*=g;var E=e.pstyle("opacity").value;if(a===void 0)a=E;var d=A.globalCompositeOperation;if(a!==1||l==="hollow")A.globalCompositeOperation="destination-out",n.colorFillStyle(A,255,255,255,1),n.colorStrokeStyle(A,255,255,255,1),n.drawArrowShape(e,A,s,g,o,B,r,i,u),A.globalCompositeOperation=d;var I=e.pstyle(t+"-arrow-color").value;n.colorFillStyle(A,I[0],I[1],I[2],a),n.colorStrokeStyle(A,I[0],I[1],I[2],a),n.drawArrowShape(e,A,l,g,o,B,r,i,u)};YI.drawArrowShape=function(A,e,t,r,i,u,a,n,o){var s=this,l=this.usePaths()&&i!=="triangle-cross",g=!1,C,B=e,E={x:a,y:n},d=A.pstyle("arrow-scale").value,I=this.getArrowWidth(r,d),h=s.arrowShapes[i];if(l){var Q=s.arrowPathCache=s.arrowPathCache||[],p=t3(i),m=Q[p];if(m!=null)C=e=m,g=!0;else C=e=new Path2D,Q[p]=C}if(!g){if(e.beginPath)e.beginPath();if(l)h.draw(e,1,0,{x:0,y:0},1);else h.draw(e,I,o,E,r);if(e.closePath)e.closePath()}if(e=B,l)e.translate(a,n),e.rotate(o),e.scale(I,I);if(t==="filled"||t==="both")if(l)e.fill(C);else e.fill();if(t==="hollow"||t==="both")if(e.lineWidth=u/(l?I:1),e.lineJoin="miter",l)e.stroke(C);else e.stroke();if(l)e.scale(1/I,1/I),e.rotate(-o),e.translate(-a,-n)};anA={};anA.safeDrawImage=function(A,e,t,r,i,u,a,n,o,s){if(i<=0||u<=0||o<=0||s<=0)return;try{A.drawImage(e,t,r,i,u,a,n,o,s)}catch(l){du(l)}};anA.drawInscribedImage=function(A,e,t,r,i){var u=this,a=t.position(),{x:n,y:o}=a,s=t.cy().style(),l=s.getIndexedStyle.bind(s),g=l(t,"background-fit","value",r),C=l(t,"background-repeat","value",r),B=t.width(),E=t.height(),d=t.padding()*2,I=B+(l(t,"background-width-relative-to","value",r)==="inner"?0:d),h=E+(l(t,"background-height-relative-to","value",r)==="inner"?0:d),Q=t._private.rscratch,p=l(t,"background-clip","value",r),m=p==="node",f=l(t,"background-image-opacity","value",r)*i,D=l(t,"background-image-smoothing","value",r),w=t.pstyle("corner-radius").value;if(w!=="auto")w=t.pstyle("corner-radius").pfValue;var b=e.width||e.cachedW,F=e.height||e.cachedH;if(b==null||F==null)document.body.appendChild(e),b=e.cachedW=e.width||e.offsetWidth,F=e.cachedH=e.height||e.offsetHeight,document.body.removeChild(e);var v=b,S=F;if(l(t,"background-width","value",r)!=="auto")if(l(t,"background-width","units",r)==="%")v=l(t,"background-width","pfValue",r)*I;else v=l(t,"background-width","pfValue",r);if(l(t,"background-height","value",r)!=="auto")if(l(t,"background-height","units",r)==="%")S=l(t,"background-height","pfValue",r)*h;else S=l(t,"background-height","pfValue",r);if(v===0||S===0)return;if(g==="contain"){var x=Math.min(I/v,h/S);v*=x,S*=x}else if(g==="cover"){var x=Math.max(I/v,h/S);v*=x,S*=x}var k=n-I/2,T=l(t,"background-position-x","units",r),R=l(t,"background-position-x","pfValue",r);if(T==="%")k+=(I-v)*R;else k+=R;var L=l(t,"background-offset-x","units",r),M=l(t,"background-offset-x","pfValue",r);if(L==="%")k+=(I-v)*M;else k+=M;var U=o-h/2,Y=l(t,"background-position-y","units",r),H=l(t,"background-position-y","pfValue",r);if(Y==="%")U+=(h-S)*H;else U+=H;var J=l(t,"background-offset-y","units",r),K=l(t,"background-offset-y","pfValue",r);if(J==="%")U+=(h-S)*K;else U+=K;if(Q.pathCache)k-=n,U-=o,n=0,o=0;var O=A.globalAlpha;A.globalAlpha=f;var _=u.getImgSmoothing(A),z=!1;if(D==="no"&&_)u.setImgSmoothing(A,!1),z=!0;else if(D==="yes"&&!_)u.setImgSmoothing(A,!0),z=!0;if(C==="no-repeat"){if(m)if(A.save(),Q.pathCache)A.clip(Q.pathCache);else u.nodeShapes[u.getNodeShape(t)].draw(A,n,o,I,h,w,Q),A.clip();if(u.safeDrawImage(A,e,0,0,b,F,k,U,v,S),m)A.restore()}else{var j=A.createPattern(e,C);A.fillStyle=j,u.nodeShapes[u.getNodeShape(t)].draw(A,n,o,I,h,w,Q),A.translate(k,U),A.fill(),A.translate(-k,-U)}if(A.globalAlpha=O,z)u.setImgSmoothing(A,_)};o3={};o3.eleTextBiggerThanMin=function(A,e){if(!e){var t=A.cy().zoom(),r=this.getPixelRatio(),i=Math.ceil(PaA(t*r));e=Math.pow(2,i)}var u=A.pstyle("font-size").pfValue*e,a=A.pstyle("min-zoomed-font-size").pfValue;if(u<a)return!1;return!0};o3.drawElementText=function(A,e,t,r,i){var u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,a=this;if(r==null){if(u&&!a.eleTextBiggerThanMin(e))return}else if(r===!1)return;if(e.isNode()){var n=e.pstyle("label");if(!n||!n.value)return;var o=a.getLabelJustification(e),s=e.pstyle("text-metrics").strValue==="glyph";A.textAlign=o,A.textBaseline=s?"alphabetic":"bottom"}else{var l=e.element()._private.rscratch.badLine,g=e.pstyle("label"),C=e.pstyle("source-label"),B=e.pstyle("target-label");if(l||(!g||!g.value)&&(!C||!C.value)&&(!B||!B.value))return;A.textAlign="center",A.textBaseline="bottom"}var E=!t,d;if(t)d=t,A.translate(-d.x1,-d.y1);if(i==null){if(a.drawText(A,e,null,E,u),e.isEdge())a.drawText(A,e,"source",E,u),a.drawText(A,e,"target",E,u)}else a.drawText(A,e,i,E,u);if(t)A.translate(d.x1,d.y1)};o3.getFontCache=function(A){var e;this.fontCaches=this.fontCaches||[];for(var t=0;t<this.fontCaches.length;t++)if(e=this.fontCaches[t],e.context===A)return e;return e={context:A},this.fontCaches.push(e),e};o3.setupTextStyle=function(A,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=e.pstyle("font-style").strValue,i=e.pstyle("font-size").pfValue+"px",u=e.pstyle("font-family").strValue,a=e.pstyle("font-weight").strValue,n=t?e.effectiveOpacity()*e.pstyle("text-opacity").value:1,o=e.pstyle("text-outline-opacity").value*n,s=e.pstyle("color").value,l=e.pstyle("text-outline-color").value;A.font=r+" "+a+" "+i+" "+u,A.lineJoin="round",this.colorFillStyle(A,s[0],s[1],s[2],n),this.colorStrokeStyle(A,l[0],l[1],l[2],o)};o3.getTextAngle=function(A,e){var t,r=A._private,i=r.rscratch,u=e?e+"-":"",a=A.pstyle(u+"text-rotation");if(a.strValue==="autorotate"){var n=fs(i,"labelAngle",e);t=A.isEdge()?n:0}else if(a.strValue==="none")t=0;else t=a.pfValue;return t};o3.drawText=function(A,e,t){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,u=e._private,a=u.rscratch,n=i?e.effectiveOpacity():1;if(i&&(n===0||e.pstyle("text-opacity").value===0))return;if(t==="main")t=null;var o=fs(a,"labelX",t),s=fs(a,"labelY",t),l,g,C=this.getLabelText(e,t);if(C!=null&&C!==""&&!isNaN(o)&&!isNaN(s)){this.setupTextStyle(A,e,i);var B=t?t+"-":"",E=fs(a,"labelWidth",t),d=fs(a,"labelHeight",t),I=fs(a,"labelActualDescent",t),h=e.pstyle(B+"text-margin-x").pfValue,Q=e.pstyle(B+"text-margin-y").pfValue,p=e.isEdge(),m=e.pstyle("text-halign").value,f=e.pstyle("text-valign").value;if(p)m="center",f="center";o+=h,s+=Q;var D;if(!r)D=0;else D=this.getTextAngle(e,t);if(D!==0)l=o,g=s,A.translate(l,g),A.rotate(D),o=0,s=0;var w=Bw(m),b=Ew(f);switch(b){case"top":break;case"center":s+=d/2;break;case"bottom":s+=d;break}var F=e.pstyle("text-background-opacity").value,v=e.pstyle("text-border-opacity").value,S=e.pstyle("text-border-width").pfValue,x=e.pstyle("text-background-padding").pfValue,k=e.pstyle("text-background-shape").strValue,T=k==="round-rectangle"||k==="roundrectangle",R=k==="circle",L=2;if(F>0||S>0&&v>0){var{fillStyle:M,strokeStyle:U,lineWidth:Y}=A,H=e.pstyle("text-background-color").value,J=e.pstyle("text-border-color").value,K=e.pstyle("text-border-style").value,O=F>0,_=S>0&&v>0,z=o-x;switch(w){case"left":z-=E;break;case"center":z-=E/2;break}var j=s-d-x,q=E+2*x,CA=d+2*x;if(O)A.fillStyle="rgba(".concat(H[0],",").concat(H[1],",").concat(H[2],",").concat(F*n,")");if(_){if(A.strokeStyle="rgba(".concat(J[0],",").concat(J[1],",").concat(J[2],",").concat(v*n,")"),A.lineWidth=S,A.setLineDash)switch(K){case"dotted":A.setLineDash([1,1]);break;case"dashed":A.setLineDash([4,2]);break;case"double":A.lineWidth=S/4,A.setLineDash([]);break;case"solid":default:A.setLineDash([]);break}}if(T)A.beginPath(),_HA(A,z,j,q,CA,L);else if(R)A.beginPath(),B3t(A,z,j,q,CA);else A.beginPath(),A.rect(z,j,q,CA);if(O)A.fill();if(_)A.stroke();if(_&&K==="double"){var tA=S/2;if(A.beginPath(),T)_HA(A,z+tA,j+tA,q-2*tA,CA-2*tA,L);else A.rect(z+tA,j+tA,q-2*tA,CA-2*tA);A.stroke()}if(A.fillStyle=M,A.strokeStyle=U,A.lineWidth=Y,A.setLineDash)A.setLineDash([])}var lA=2*e.pstyle("text-outline-width").pfValue;if(lA>0)A.lineWidth=lA;if(s-=I,e.pstyle("text-wrap").value==="wrap"){var gA=fs(a,"labelWrapCachedLines",t),aA=fs(a,"labelLineHeight",t),RA=E/2,wA=this.getLabelJustification(e);if(wA==="auto");else if(w==="left"){if(wA==="left")o+=-E;else if(wA==="center")o+=-RA}else if(w==="center"){if(wA==="left")o+=-RA;else if(wA==="right")o+=RA}else if(w==="right"){if(wA==="center")o+=RA;else if(wA==="right")o+=E}switch(b){case"top":s-=(gA.length-1)*aA;break;case"center":case"bottom":s-=(gA.length-1)*aA;break}for(var JA=0;JA<gA.length;JA++){if(lA>0)A.strokeText(gA[JA],o,s);A.fillText(gA[JA],o,s),s+=aA}}else{if(lA>0)A.strokeText(C,o,s);A.fillText(C,o,s)}if(D!==0)A.rotate(-D),A.translate(-l,-g)}};N4={};N4.drawNode=function(A,e,t){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,a=this,n,o,s=e._private,l=s.rscratch,g=e.position();if(!Qt(g.x)||!Qt(g.y))return;if(u&&!e.visible())return;var C=u?e.effectiveOpacity():1,B=a.usePaths(),E,d=!1,I=e.padding();n=e.width()+2*I,o=e.height()+2*I;var h;if(t)h=t,A.translate(-h.x1,-h.y1);var Q=e.pstyle("background-image"),p=Q.value,m=Array(p.length),f=Array(p.length),D=0;for(var w=0;w<p.length;w++){var b=p[w],F=m[w]=b!=null&&b!=="none";if(F){var v=e.cy().style().getIndexedStyle(e,"background-image-crossorigin","value",w);D++,f[w]=a.getCachedImage(b,v,function(){s.backgroundTimestamp=Date.now(),e.emitAndNotify("background")})}}var S=e.pstyle("background-blacken").value,x=e.pstyle("border-width").pfValue,k=e.pstyle("background-opacity").value*C,T=e.pstyle("border-color").value,R=e.pstyle("border-style").value,L=e.pstyle("border-join").value,M=e.pstyle("border-cap").value,U=e.pstyle("border-position").value,Y=e.pstyle("border-dash-pattern").pfValue,H=e.pstyle("border-dash-offset").pfValue,J=e.pstyle("border-opacity").value*C,K=e.pstyle("outline-width").pfValue,O=e.pstyle("outline-color").value,_=e.pstyle("outline-style").value,z=e.pstyle("outline-opacity").value*C,j=e.pstyle("outline-offset").value,q=e.pstyle("corner-radius").value;if(q!=="auto")q=e.pstyle("corner-radius").pfValue;var CA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:k;a.eleFillStyle(A,e,Z)},tA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:J;a.colorStrokeStyle(A,T[0],T[1],T[2],Z)},lA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:z;a.colorStrokeStyle(A,O[0],O[1],O[2],Z)},gA=function(Z,pA,AA,DA){var rA=a.nodePathCache=a.nodePathCache||[],KA=dKA(AA==="polygon"?AA+","+DA.join(","):AA,""+pA,""+Z,""+q),_A=rA[KA],zA,WA=!1;if(_A!=null)zA=_A,WA=!0,l.pathCache=zA;else zA=new Path2D,rA[KA]=l.pathCache=zA;return{path:zA,cacheHit:WA}},aA=e.pstyle("shape").strValue,RA=e.pstyle("shape-polygon-points").pfValue;if(B){A.translate(g.x,g.y);var wA=gA(n,o,aA,RA);E=wA.path,d=wA.cacheHit}var JA=function(){if(!d){var Z=g;if(B)Z={x:0,y:0};a.nodeShapes[a.getNodeShape(e)].draw(E||A,Z.x,Z.y,n,o,q,l)}if(B)A.fill(E);else A.fill()},TA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:C,pA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,AA=s.backgrounding,DA=0;for(var rA=0;rA<f.length;rA++){var KA=e.cy().style().getIndexedStyle(e,"background-image-containment","value",rA);if(pA&&KA==="over"||!pA&&KA==="inside"){DA++;continue}if(m[rA]&&f[rA].complete&&!f[rA].error)DA++,a.drawInscribedImage(A,f[rA],e,rA,Z)}if(s.backgrounding=DA!==D,AA!==s.backgrounding)e.updateStyle(!1)},qA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,pA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:C;if(a.hasPie(e)){if(a.drawPie(A,e,pA),Z){if(!B)a.nodeShapes[a.getNodeShape(e)].draw(A,g.x,g.y,n,o,q,l)}}},BA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,pA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:C;if(a.hasStripe(e)){if(A.save(),B)A.clip(l.pathCache);else a.nodeShapes[a.getNodeShape(e)].draw(A,g.x,g.y,n,o,q,l),A.clip();if(a.drawStripe(A,e,pA),A.restore(),Z){if(!B)a.nodeShapes[a.getNodeShape(e)].draw(A,g.x,g.y,n,o,q,l)}}},bA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:C,pA=(S>0?S:-S)*Z,AA=S>0?0:255;if(S!==0)if(a.colorFillStyle(A,AA,AA,AA,pA),B)A.fill(E);else A.fill()},FA=function(){if(x>0){if(A.lineWidth=x,A.lineCap=M,A.lineJoin=L,A.setLineDash)switch(R){case"dotted":A.setLineDash([1,1]);break;case"dashed":A.setLineDash(Y),A.lineDashOffset=H;break;case"solid":case"double":A.setLineDash([]);break}if(U!=="center"){if(A.save(),A.lineWidth*=2,U==="inside")B?A.clip(E):A.clip();else{var Z=new Path2D;Z.rect(-n/2-x,-o/2-x,n+2*x,o+2*x),Z.addPath(E),A.clip(Z,"evenodd")}B?A.stroke(E):A.stroke(),A.restore()}else B?A.stroke(E):A.stroke();if(R==="double"){A.lineWidth=x/3;var pA=A.globalCompositeOperation;if(A.globalCompositeOperation="destination-out",B)A.stroke(E);else A.stroke();A.globalCompositeOperation=pA}if(A.setLineDash)A.setLineDash([])}},IA=function(){if(K>0){if(A.lineWidth=K,A.lineCap="butt",A.setLineDash)switch(_){case"dotted":A.setLineDash([1,1]);break;case"dashed":A.setLineDash([4,2]);break;case"solid":case"double":A.setLineDash([]);break}var Z=g;if(B)Z={x:0,y:0};var pA=a.getNodeShape(e),AA=x;if(U==="inside")AA=0;if(U==="outside")AA*=2;var DA=(n+AA+(K+j))/n,rA=(o+AA+(K+j))/o,KA=n*DA,_A=o*rA,zA=a.nodeShapes[pA].points,WA;if(B){var te=gA(KA,_A,pA,zA);WA=te.path}if(pA==="ellipse")a.drawEllipsePath(WA||A,Z.x,Z.y,KA,_A);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(pA)){var ZA=0,ee=0,$A=0;if(pA==="round-diamond")ZA=(AA+j+K)*1.4;else if(pA==="round-heptagon")ZA=(AA+j+K)*1.075,$A=-(AA/2+j+K)/35;else if(pA==="round-hexagon")ZA=(AA+j+K)*1.12;else if(pA==="round-pentagon")ZA=(AA+j+K)*1.13,$A=-(AA/2+j+K)/15;else if(pA==="round-tag")ZA=(AA+j+K)*1.12,ee=(AA/2+K+j)*0.07;else if(pA==="round-triangle")ZA=(AA+j+K)*(Math.PI/2),$A=-(AA+j/2+K)/Math.PI;if(ZA!==0){if(DA=(n+ZA)/n,KA=n*DA,!["round-hexagon","round-tag"].includes(pA))rA=(o+ZA)/o,_A=o*rA}q=q==="auto"?vKA(KA,_A):q;var oe=KA/2,vA=_A/2,Pe=q+(AA+K+j)/2,MA=Array(zA.length/2),ke=Array(zA.length/2);for(var We=0;We<zA.length/2;We++)MA[We]={x:Z.x+ee+oe*zA[We*2],y:Z.y+$A+vA*zA[We*2+1]};var se,Te,je,xe,yA=MA.length;Te=MA[yA-1];for(se=0;se<yA;se++)je=MA[se%yA],xe=MA[(se+1)%yA],ke[se]=inA(Te,je,xe,Pe),Te=je,je=xe;a.drawRoundPolygonPath(WA||A,Z.x+ee,Z.y+$A,n*DA,o*rA,zA,ke)}else if(["roundrectangle","round-rectangle"].includes(pA))q=q==="auto"?v4(KA,_A):q,a.drawRoundRectanglePath(WA||A,Z.x,Z.y,KA,_A,q+(AA+K+j)/2);else if(["cutrectangle","cut-rectangle"].includes(pA))q=q==="auto"?qaA():q,a.drawCutRectanglePath(WA||A,Z.x,Z.y,KA,_A,null,q+(AA+K+j)/4);else if(["bottomroundrectangle","bottom-round-rectangle"].includes(pA))q=q==="auto"?v4(KA,_A):q,a.drawBottomRoundRectanglePath(WA||A,Z.x,Z.y,KA,_A,q+(AA+K+j)/2);else if(pA==="barrel")a.drawBarrelPath(WA||A,Z.x,Z.y,KA,_A);else if(pA.startsWith("polygon")||["rhomboid","right-rhomboid","round-tag","tag","vee"].includes(pA)){var Ne=(AA+K+j)/n;zA=TT(YT(zA,Ne)),a.drawPolygonPath(WA||A,Z.x,Z.y,n,o,zA)}else{var He=(AA+K+j)/n;zA=TT(YT(zA,-He)),a.drawPolygonPath(WA||A,Z.x,Z.y,n,o,zA)}if(B)A.stroke(WA);else A.stroke();if(_==="double"){A.lineWidth=AA/3;var de=A.globalCompositeOperation;if(A.globalCompositeOperation="destination-out",B)A.stroke(WA);else A.stroke();A.globalCompositeOperation=de}if(A.setLineDash)A.setLineDash([])}},nA=function(){if(i)a.drawNodeOverlay(A,e,g,n,o)},eA=function(){if(i)a.drawNodeUnderlay(A,e,g,n,o)},EA=function(){a.drawElementText(A,e,null,r)},mA=e.pstyle("ghost").value==="yes";if(mA){var kA=e.pstyle("ghost-offset-x").pfValue,SA=e.pstyle("ghost-offset-y").pfValue,YA=e.pstyle("ghost-opacity").value,dA=YA*C;A.translate(kA,SA),lA(),IA(),CA(YA*k),JA(),TA(dA,!0),tA(YA*J),FA(),qA(S!==0||x!==0),BA(S!==0||x!==0),TA(dA,!1),bA(dA),A.translate(-kA,-SA)}if(B)A.translate(-g.x,-g.y);if(eA(),B)A.translate(g.x,g.y);if(lA(),IA(),CA(),JA(),TA(C,!0),tA(),FA(),qA(S!==0||x!==0),BA(S!==0||x!==0),TA(C,!1),bA(),B)A.translate(-g.x,-g.y);if(EA(),nA(),t)A.translate(h.x1,h.y1)};N4.drawNodeOverlay=NJA("overlay");N4.drawNodeUnderlay=NJA("underlay");N4.hasPie=function(A){return A=A[0],A._private.hasPie};N4.hasStripe=function(A){return A=A[0],A._private.hasStripe};N4.drawPie=function(A,e,t,r){e=e[0],r=r||e.position();var i=e.cy().style(),u=e.pstyle("pie-size"),a=e.pstyle("pie-hole"),n=e.pstyle("pie-start-angle").pfValue,o=r.x,s=r.y,l=e.width(),g=e.height(),C=Math.min(l,g)/2,B,E=0,d=this.usePaths();if(d)o=0,s=0;if(u.units==="%")C=C*u.pfValue;else if(u.pfValue!==void 0)C=u.pfValue/2;if(a.units==="%")B=C*a.pfValue;else if(a.pfValue!==void 0)B=a.pfValue/2;if(B>=C)return;for(var I=1;I<=i.pieBackgroundN;I++){var h=e.pstyle("pie-"+I+"-background-size").value,Q=e.pstyle("pie-"+I+"-background-color").value,p=e.pstyle("pie-"+I+"-background-opacity").value*t,m=h/100;if(m+E>1)m=1-E;var f=1.5*Math.PI+2*Math.PI*E;f+=n;var D=2*Math.PI*m,w=f+D;if(h===0||E>=1||E+m>1)continue;if(B===0)A.beginPath(),A.moveTo(o,s),A.arc(o,s,C,f,w),A.closePath();else A.beginPath(),A.arc(o,s,C,f,w),A.arc(o,s,B,w,f,!0),A.closePath();this.colorFillStyle(A,Q[0],Q[1],Q[2],p),A.fill(),E+=m}};N4.drawStripe=function(A,e,t,r){e=e[0],r=r||e.position();var i=e.cy().style(),u=r.x,a=r.y,n=e.width(),o=e.height(),s=0,l=this.usePaths();A.save();var g=e.pstyle("stripe-direction").value,C=e.pstyle("stripe-size");switch(g){case"vertical":break;case"righward":A.rotate(-Math.PI/2);break}var B=n,E=o;if(C.units==="%")B=B*C.pfValue,E=E*C.pfValue;else if(C.pfValue!==void 0)B=C.pfValue,E=C.pfValue;if(l)u=0,a=0;a-=B/2,u-=E/2;for(var d=1;d<=i.stripeBackgroundN;d++){var I=e.pstyle("stripe-"+d+"-background-size").value,h=e.pstyle("stripe-"+d+"-background-color").value,Q=e.pstyle("stripe-"+d+"-background-opacity").value*t,p=I/100;if(p+s>1)p=1-s;if(I===0||s>=1||s+p>1)continue;A.beginPath(),A.rect(u,a+E*s,B,E*p),A.closePath(),this.colorFillStyle(A,h[0],h[1],h[2],Q),A.fill(),s+=p}A.restore()};Ds={};Ds.getPixelRatio=function(){var A=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var e=this.cy.window(),t=A.backingStorePixelRatio||A.webkitBackingStorePixelRatio||A.mozBackingStorePixelRatio||A.msBackingStorePixelRatio||A.oBackingStorePixelRatio||A.backingStorePixelRatio||1;return(e.devicePixelRatio||1)/t};Ds.paintCache=function(A){var e=this.paintCaches=this.paintCaches||[],t=!0,r;for(var i=0;i<e.length;i++)if(r=e[i],r.context===A){t=!1;break}if(t)r={context:A},e.push(r);return r};Ds.createGradientStyleFor=function(A,e,t,r,i){var u,a=this.usePaths(),n=t.pstyle(e+"-gradient-stop-colors").value,o=t.pstyle(e+"-gradient-stop-positions").pfValue;if(r==="radial-gradient")if(t.isEdge()){var s=t.sourceEndpoint(),l=t.targetEndpoint(),g=t.midpoint(),C=r3(s,g),B=r3(l,g);u=A.createRadialGradient(g.x,g.y,0,g.x,g.y,Math.max(C,B))}else{var E=a?{x:0,y:0}:t.position(),d=t.paddedWidth(),I=t.paddedHeight();u=A.createRadialGradient(E.x,E.y,0,E.x,E.y,Math.max(d,I))}else if(t.isEdge()){var h=t.sourceEndpoint(),Q=t.targetEndpoint();u=A.createLinearGradient(h.x,h.y,Q.x,Q.y)}else{var p=a?{x:0,y:0}:t.position(),m=t.paddedWidth(),f=t.paddedHeight(),D=m/2,w=f/2,b=t.pstyle("background-gradient-direction").value;switch(b){case"to-bottom":u=A.createLinearGradient(p.x,p.y-w,p.x,p.y+w);break;case"to-top":u=A.createLinearGradient(p.x,p.y+w,p.x,p.y-w);break;case"to-left":u=A.createLinearGradient(p.x+D,p.y,p.x-D,p.y);break;case"to-right":u=A.createLinearGradient(p.x-D,p.y,p.x+D,p.y);break;case"to-bottom-right":case"to-right-bottom":u=A.createLinearGradient(p.x-D,p.y-w,p.x+D,p.y+w);break;case"to-top-right":case"to-right-top":u=A.createLinearGradient(p.x-D,p.y+w,p.x+D,p.y-w);break;case"to-bottom-left":case"to-left-bottom":u=A.createLinearGradient(p.x+D,p.y-w,p.x-D,p.y+w);break;case"to-top-left":case"to-left-top":u=A.createLinearGradient(p.x+D,p.y+w,p.x-D,p.y-w);break}}if(!u)return null;var F=o.length===n.length,v=n.length;for(var S=0;S<v;S++)u.addColorStop(F?o[S]:S/(v-1),"rgba("+n[S][0]+","+n[S][1]+","+n[S][2]+","+i+")");return u};Ds.gradientFillStyle=function(A,e,t,r){var i=this.createGradientStyleFor(A,"background",e,t,r);if(!i)return null;A.fillStyle=i};Ds.colorFillStyle=function(A,e,t,r,i){A.fillStyle="rgba("+e+","+t+","+r+","+i+")"};Ds.eleFillStyle=function(A,e,t){var r=e.pstyle("background-fill").value;if(r==="linear-gradient"||r==="radial-gradient")this.gradientFillStyle(A,e,r,t);else{var i=e.pstyle("background-color").value;this.colorFillStyle(A,i[0],i[1],i[2],t)}};Ds.gradientStrokeStyle=function(A,e,t,r){var i=this.createGradientStyleFor(A,"line",e,t,r);if(!i)return null;A.strokeStyle=i};Ds.colorStrokeStyle=function(A,e,t,r,i){A.strokeStyle="rgba("+e+","+t+","+r+","+i+")"};Ds.eleStrokeStyle=function(A,e,t){var r=e.pstyle("line-fill").value;if(r==="linear-gradient"||r==="radial-gradient")this.gradientStrokeStyle(A,e,r,t);else{var i=e.pstyle("line-color").value;this.colorStrokeStyle(A,i[0],i[1],i[2],t)}};Ds.matchCanvasSize=function(A){var e=this,t=e.data,r=e.findContainerClientCoords(),i=r[2],u=r[3],a=e.getPixelRatio(),n=e.motionBlurPxRatio;if(A===e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE]||A===e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG])a=n;var o=i*a,s=u*a,l;if(o===e.canvasWidth&&s===e.canvasHeight)return;e.fontCaches=null;var g=t.canvasContainer;g.style.width=i+"px",g.style.height=u+"px";for(var C=0;C<e.CANVAS_LAYERS;C++)l=t.canvases[C],l.width=o,l.height=s,l.style.width=i+"px",l.style.height=u+"px";for(var C=0;C<e.BUFFER_COUNT;C++)l=t.bufferCanvases[C],l.width=o,l.height=s,l.style.width=i+"px",l.style.height=u+"px";if(e.textureMult=1,a<=1)l=t.bufferCanvases[e.TEXTURE_BUFFER],e.textureMult=2,l.width=o*e.textureMult,l.height=s*e.textureMult;e.canvasWidth=o,e.canvasHeight=s,e.pixelRatio=a};Ds.renderTo=function(A,e,t,r){this.render({forcedContext:A,forcedZoom:e,forcedPan:t,drawAllLayers:!0,forcedPxRatio:r})};Ds.clearCanvas=function(){var A=this,e=A.data;function t(r){r.clearRect(0,0,A.canvasWidth,A.canvasHeight)}t(e.contexts[A.NODE]),t(e.contexts[A.DRAG])};Ds.render=function(A){var e=this;A=A||pKA();var t=e.cy,r=A.forcedContext,i=A.drawAllLayers,u=A.drawOnlyNodeLayer,a=A.forcedZoom,n=A.forcedPan,o=A.forcedPxRatio===void 0?this.getPixelRatio():A.forcedPxRatio,s=e.data,l=s.canvasNeedsRedraw,g=e.textureOnViewport&&!r&&(e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming),C=A.motionBlur!==void 0?A.motionBlur:e.motionBlur,B=e.motionBlurPxRatio,E=t.hasCompoundNodes(),d=e.hoverData.draggingEles,I=e.hoverData.selecting||e.touchData.selecting?!0:!1;C=C&&!r&&e.motionBlurEnabled&&!I;var h=C;if(!r){if(e.prevPxRatio!==o)e.invalidateContainerClientCoordsCache(),e.matchCanvasSize(e.container),e.redrawHint("eles",!0),e.redrawHint("drag",!0);e.prevPxRatio=o}if(!r&&e.motionBlurTimeout)clearTimeout(e.motionBlurTimeout);if(C){if(e.mbFrames==null)e.mbFrames=0;if(e.mbFrames++,e.mbFrames<3)h=!1;if(e.mbFrames>e.minMbLowQualFrames)e.motionBlurPxRatio=e.mbPxRBlurry}if(e.clearingMotionBlur)e.motionBlurPxRatio=1;if(e.textureDrawLastFrame&&!g)l[e.NODE]=!0,l[e.SELECT_BOX]=!0;var Q=t.style(),p=t.zoom(),m=a!==void 0?a:p,f=t.pan(),D={x:f.x,y:f.y},w={zoom:p,pan:{x:f.x,y:f.y}},b=e.prevViewport,F=b===void 0||w.zoom!==b.zoom||w.pan.x!==b.pan.x||w.pan.y!==b.pan.y;if(!F&&!(d&&!E))e.motionBlurPxRatio=1;if(n)D=n;m*=o,D.x*=o,D.y*=o;var v=e.getCachedZSortedEles();function S(tA,lA,gA,aA,RA){var wA=tA.globalCompositeOperation;tA.globalCompositeOperation="destination-out",e.colorFillStyle(tA,255,255,255,e.motionBlurTransparency),tA.fillRect(lA,gA,aA,RA),tA.globalCompositeOperation=wA}function x(tA,lA){var gA,aA,RA,wA;if(!e.clearingMotionBlur&&(tA===s.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]||tA===s.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG]))gA={x:f.x*B,y:f.y*B},aA=p*B,RA=e.canvasWidth*B,wA=e.canvasHeight*B;else gA=D,aA=m,RA=e.canvasWidth,wA=e.canvasHeight;if(tA.setTransform(1,0,0,1,0,0),lA==="motionBlur")S(tA,0,0,RA,wA);else if(!r&&(lA===void 0||lA))tA.clearRect(0,0,RA,wA);if(!i)tA.translate(gA.x,gA.y),tA.scale(aA,aA);if(n)tA.translate(n.x,n.y);if(a)tA.scale(a,a)}if(!g)e.textureDrawLastFrame=!1;if(g){if(e.textureDrawLastFrame=!0,!e.textureCache){e.textureCache={},e.textureCache.bb=t.mutableElements().boundingBox(),e.textureCache.texture=e.data.bufferCanvases[e.TEXTURE_BUFFER];var k=e.data.bufferContexts[e.TEXTURE_BUFFER];k.setTransform(1,0,0,1,0,0),k.clearRect(0,0,e.canvasWidth*e.textureMult,e.canvasHeight*e.textureMult),e.render({forcedContext:k,drawOnlyNodeLayer:!0,forcedPxRatio:o*e.textureMult});var w=e.textureCache.viewport={zoom:t.zoom(),pan:t.pan(),width:e.canvasWidth,height:e.canvasHeight};w.mpan={x:(0-w.pan.x)/w.zoom,y:(0-w.pan.y)/w.zoom}}l[e.DRAG]=!1,l[e.NODE]=!1;var T=s.contexts[e.NODE],R=e.textureCache.texture,w=e.textureCache.viewport;if(T.setTransform(1,0,0,1,0,0),C)S(T,0,0,w.width,w.height);else T.clearRect(0,0,w.width,w.height);var L=Q.core("outside-texture-bg-color").value,M=Q.core("outside-texture-bg-opacity").value;e.colorFillStyle(T,L[0],L[1],L[2],M),T.fillRect(0,0,w.width,w.height);var p=t.zoom();x(T,!1),T.clearRect(w.mpan.x,w.mpan.y,w.width/w.zoom/o,w.height/w.zoom/o),T.drawImage(R,w.mpan.x,w.mpan.y,w.width/w.zoom/o,w.height/w.zoom/o)}else if(e.textureOnViewport&&!r)e.textureCache=null;var U=t.extent(),Y=e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming||e.hoverData.draggingEles||e.cy.animated(),H=e.hideEdgesOnViewport&&Y,J=[];if(J[e.NODE]=!l[e.NODE]&&C&&!e.clearedForMotionBlur[e.NODE]||e.clearingMotionBlur,J[e.NODE])e.clearedForMotionBlur[e.NODE]=!0;if(J[e.DRAG]=!l[e.DRAG]&&C&&!e.clearedForMotionBlur[e.DRAG]||e.clearingMotionBlur,J[e.DRAG])e.clearedForMotionBlur[e.DRAG]=!0;if(l[e.NODE]||i||u||J[e.NODE]){var K=C&&!J[e.NODE]&&B!==1,T=r||(K?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]:s.contexts[e.NODE]),O=C&&!K?"motionBlur":void 0;if(x(T,O),H)e.drawCachedNodes(T,v.nondrag,o,U);else e.drawLayeredElements(T,v.nondrag,o,U);if(e.debug)e.drawDebugPoints(T,v.nondrag);if(!i&&!C)l[e.NODE]=!1}if(!u&&(l[e.DRAG]||i||J[e.DRAG])){var K=C&&!J[e.DRAG]&&B!==1,T=r||(K?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG]:s.contexts[e.DRAG]);if(x(T,C&&!K?"motionBlur":void 0),H)e.drawCachedNodes(T,v.drag,o,U);else e.drawCachedElements(T,v.drag,o,U);if(e.debug)e.drawDebugPoints(T,v.drag);if(!i&&!C)l[e.DRAG]=!1}if(this.drawSelectionRectangle(A,x),C&&B!==1){var _=s.contexts[e.NODE],z=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE],j=s.contexts[e.DRAG],q=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG],CA=function(lA,gA,aA){if(lA.setTransform(1,0,0,1,0,0),aA||!h)lA.clearRect(0,0,e.canvasWidth,e.canvasHeight);else S(lA,0,0,e.canvasWidth,e.canvasHeight);var RA=B;lA.drawImage(gA,0,0,e.canvasWidth*RA,e.canvasHeight*RA,0,0,e.canvasWidth,e.canvasHeight)};if(l[e.NODE]||J[e.NODE])CA(_,z,J[e.NODE]),l[e.NODE]=!1;if(l[e.DRAG]||J[e.DRAG])CA(j,q,J[e.DRAG]),l[e.DRAG]=!1}if(e.prevViewport=w,e.clearingMotionBlur)e.clearingMotionBlur=!1,e.motionBlurCleared=!0,e.motionBlur=!0;if(C)e.motionBlurTimeout=setTimeout(function(){e.motionBlurTimeout=null,e.clearedForMotionBlur[e.NODE]=!1,e.clearedForMotionBlur[e.DRAG]=!1,e.motionBlur=!1,e.clearingMotionBlur=!g,e.mbFrames=0,l[e.NODE]=!0,l[e.DRAG]=!0,e.redraw()},E3t);if(!r)t.emit("render")};Ds.drawSelectionRectangle=function(A,e){var t=this,{cy:r,data:i}=t,u=r.style(),{drawOnlyNodeLayer:a,drawAllLayers:n}=A,o=i.canvasNeedsRedraw,s=A.forcedContext;if(t.showFps||!a&&o[t.SELECT_BOX]&&!n){var l=s||i.contexts[t.SELECT_BOX];if(e(l),t.selection[4]==1&&(t.hoverData.selecting||t.touchData.selecting)){var g=t.cy.zoom(),C=u.core("selection-box-border-width").value/g;if(l.lineWidth=C,l.fillStyle="rgba("+u.core("selection-box-color").value[0]+","+u.core("selection-box-color").value[1]+","+u.core("selection-box-color").value[2]+","+u.core("selection-box-opacity").value+")",l.fillRect(t.selection[0],t.selection[1],t.selection[2]-t.selection[0],t.selection[3]-t.selection[1]),C>0)l.strokeStyle="rgba("+u.core("selection-box-border-color").value[0]+","+u.core("selection-box-border-color").value[1]+","+u.core("selection-box-border-color").value[2]+","+u.core("selection-box-opacity").value+")",l.strokeRect(t.selection[0],t.selection[1],t.selection[2]-t.selection[0],t.selection[3]-t.selection[1])}if(i.bgActivePosistion&&!t.hoverData.selecting){var g=t.cy.zoom(),B=i.bgActivePosistion;l.fillStyle="rgba("+u.core("active-bg-color").value[0]+","+u.core("active-bg-color").value[1]+","+u.core("active-bg-color").value[2]+","+u.core("active-bg-opacity").value+")",l.beginPath(),l.arc(B.x,B.y,u.core("active-bg-size").pfValue/g,0,2*Math.PI),l.fill()}var E=t.lastRedrawTime;if(t.showFps&&E){E=Math.round(E);var d=Math.round(1000/E),I="1 frame = "+E+" ms = "+d+" fps";if(l.setTransform(1,0,0,1,0,0),l.fillStyle="rgba(255, 0, 0, 0.75)",l.strokeStyle="rgba(255, 0, 0, 0.75)",l.font="30px Arial",!xk){var h=l.measureText(I);xk=h.actualBoundingBoxAscent}l.fillText(I,0,xk);var Q=60;l.strokeRect(0,xk+10,250,20),l.fillRect(0,xk+10,250*Math.min(d/Q,1),20)}if(!n)o[t.SELECT_BOX]=!1}};qHA=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,e=arguments.length;while(e--)A+=arguments[e]*arguments[e];return Math.sqrt(A)};x3t=function(){function A(e,t,r,i){S4(this,A),this.debugID=Math.floor(Math.random()*1e4),this.r=e,this.texSize=t,this.texRows=r,this.texHeight=Math.floor(t/r),this.enableWrapping=!0,this.locked=!1,this.texture=null,this.needsBuffer=!0,this.freePointer={x:0,row:0},this.keyToLocation=new Map,this.canvas=i(e,t,t),this.scratch=i(e,t,this.texHeight,"scratch")}return L4(A,[{key:"lock",value:function(){this.locked=!0}},{key:"getKeys",value:function(){return new Set(this.keyToLocation.keys())}},{key:"getScale",value:function(t){var{w:r,h:i}=t,u=this.texHeight,a=this.texSize,n=u/i,o=r*n,s=i*n;if(o>a)n=a/r,o=r*n,s=i*n;return{scale:n,texW:o,texH:s}}},{key:"draw",value:function(t,r,i){var u=this;if(this.locked)throw Error("can't draw, atlas is locked");var a=this.texSize,n=this.texRows,o=this.texHeight,s=this.getScale(r),{scale:l,texW:g,texH:C}=s,B=function(p,m){if(i&&m){var f=m.context,{x:D,row:w}=p,b=D,F=o*w;f.save(),f.translate(b,F),f.scale(l,l),i(f,r),f.restore()}},E=[null,null],d=function(){if(B(u.freePointer,u.canvas),E[0]={x:u.freePointer.x,y:u.freePointer.row*o,w:g,h:C},E[1]={x:u.freePointer.x+g,y:u.freePointer.row*o,w:0,h:C},u.freePointer.x+=g,u.freePointer.x==a)u.freePointer.x=0,u.freePointer.row++},I=function(){var{scratch:p,canvas:m}=u;p.clear(),B({x:0,row:0},p);var f=a-u.freePointer.x,D=g-f,w=o;{var b=u.freePointer.x,F=u.freePointer.row*o,v=f;m.context.drawImage(p,0,0,v,w,b,F,v,w),E[0]={x:b,y:F,w:v,h:C}}{var S=f,x=(u.freePointer.row+1)*o,k=D;if(m)m.context.drawImage(p,S,0,k,w,0,x,k,w);E[1]={x:0,y:x,w:k,h:C}}u.freePointer.x=D,u.freePointer.row++},h=function(){u.freePointer.x=0,u.freePointer.row++};if(this.freePointer.x+g<=a)d();else if(this.freePointer.row>=n-1)return!1;else if(this.freePointer.x===a)h(),d();else if(this.enableWrapping)I();else h(),d();return this.keyToLocation.set(t,E),this.needsBuffer=!0,E}},{key:"getOffsets",value:function(t){return this.keyToLocation.get(t)}},{key:"isEmpty",value:function(){return this.freePointer.x===0&&this.freePointer.row===0}},{key:"canFit",value:function(t){if(this.locked)return!1;var r=this.texSize,i=this.texRows,u=this.getScale(t),a=u.texW;if(this.freePointer.x+a>r)return this.freePointer.row<i-1;return!0}},{key:"bufferIfNeeded",value:function(t){if(!this.texture)this.texture=D3t(t,this.debugID);if(this.needsBuffer){if(this.texture.buffer(this.canvas),this.needsBuffer=!1,this.locked)this.canvas=null,this.scratch=null}}},{key:"dispose",value:function(){if(this.texture)this.texture.deleteTexture(),this.texture=null;this.canvas=null,this.scratch=null,this.locked=!0}}])}(),S3t=function(){function A(e,t,r,i){S4(this,A),this.r=e,this.texSize=t,this.texRows=r,this.createTextureCanvas=i,this.atlases=[],this.styleKeyToAtlas=new Map,this.markedKeys=new Set}return L4(A,[{key:"getKeys",value:function(){return new Set(this.styleKeyToAtlas.keys())}},{key:"_createAtlas",value:function(){var t=this.r,r=this.texSize,i=this.texRows,u=this.createTextureCanvas;return new x3t(t,r,i,u)}},{key:"_getScratchCanvas",value:function(){if(!this.scratch){var t=this.r,r=this.texSize,i=this.texRows,u=this.createTextureCanvas,a=Math.floor(r/i);this.scratch=u(t,r,a,"scratch")}return this.scratch}},{key:"draw",value:function(t,r,i){var u=this.styleKeyToAtlas.get(t);if(!u){if(u=this.atlases[this.atlases.length-1],!u||!u.canFit(r)){if(u)u.lock();u=this._createAtlas(),this.atlases.push(u)}u.draw(t,r,i),this.styleKeyToAtlas.set(t,u)}return u}},{key:"getAtlas",value:function(t){return this.styleKeyToAtlas.get(t)}},{key:"hasAtlas",value:function(t){return this.styleKeyToAtlas.has(t)}},{key:"markKeyForGC",value:function(t){this.markedKeys.add(t)}},{key:"gc",value:function(){var t=this,r=this.markedKeys;if(r.size===0){console.log("nothing to garbage collect");return}var i=[],u=new Map,a=null,n=Il(this.atlases),o;try{var s=function(){var g=o.value,C=g.getKeys(),B=L3t(r,C);if(B.size===0)return i.push(g),C.forEach(function(f){return u.set(f,g)}),1;if(!a)a=t._createAtlas(),i.push(a);var E=Il(C),d;try{for(E.s();!(d=E.n()).done;){var I=d.value;if(!B.has(I)){var h=g.getOffsets(I),Q=Tn(h,2),p=Q[0],m=Q[1];if(!a.canFit({w:p.w+m.w,h:p.h}))a.lock(),a=t._createAtlas(),i.push(a);if(g.canvas)t._copyTextureToNewAtlas(I,g,a),u.set(I,a)}}}catch(f){E.e(f)}finally{E.f()}g.dispose()};for(n.s();!(o=n.n()).done;)if(s())continue}catch(l){n.e(l)}finally{n.f()}this.atlases=i,this.styleKeyToAtlas=u,this.markedKeys=new Set}},{key:"_copyTextureToNewAtlas",value:function(t,r,i){var u=r.getOffsets(t),a=Tn(u,2),n=a[0],o=a[1];if(o.w===0)i.draw(t,n,function(C){C.drawImage(r.canvas,n.x,n.y,n.w,n.h,0,0,n.w,n.h)});else{var s=this._getScratchCanvas();s.clear(),s.context.drawImage(r.canvas,n.x,n.y,n.w,n.h,0,0,n.w,n.h),s.context.drawImage(r.canvas,o.x,o.y,o.w,o.h,n.w,0,o.w,o.h);var l=n.w+o.w,g=n.h;i.draw(t,{w:l,h:g},function(C){C.drawImage(s,0,0,l,g,0,0,l,g)})}}},{key:"getCounts",value:function(){return{keyCount:this.styleKeyToAtlas.size,atlasCount:new Set(this.styleKeyToAtlas.values()).size}}}])}();R3t=function(){function A(e,t){S4(this,A),this.r=e,this.globalOptions=t,this.atlasSize=t.webglTexSize,this.maxAtlasesPerBatch=t.webglTexPerBatch,this.renderTypes=new Map,this.collections=new Map,this.typeAndIdToKey=new Map}return L4(A,[{key:"getAtlasSize",value:function(){return this.atlasSize}},{key:"addAtlasCollection",value:function(t,r){var i=this.globalOptions,{webglTexSize:u,createTextureCanvas:a}=i,n=r.texRows,o=this._cacheScratchCanvas(a),s=new S3t(this.r,u,n,o);this.collections.set(t,s)}},{key:"addRenderType",value:function(t,r){var i=r.collection;if(!this.collections.has(i))throw Error("invalid atlas collection name '".concat(i,"'"));var u=this.collections.get(i),a=Cr({type:t,atlasCollection:u},r);this.renderTypes.set(t,a)}},{key:"getRenderTypeOpts",value:function(t){return this.renderTypes.get(t)}},{key:"getAtlasCollection",value:function(t){return this.collections.get(t)}},{key:"_cacheScratchCanvas",value:function(t){var r=-1,i=-1,u=null;return function(a,n,o,s){if(s){if(!u||n!=r||o!=i)r=n,i=o,u=t(a,n,o);return u}else return t(a,n,o)}}},{key:"_key",value:function(t,r){return"".concat(t,"-").concat(r)}},{key:"invalidate",value:function(t){var r=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=i.forceRedraw,a=u===void 0?!1:u,n=i.filterEle,o=n===void 0?function(){return!0}:n,s=i.filterType,l=s===void 0?function(){return!0}:s,g=!1,C=!1,B=Il(t),E;try{for(B.s();!(E=B.n()).done;){var d=E.value;if(o(d)){var I=Il(this.renderTypes.values()),h;try{var Q=function(){var m=h.value,f=m.type;if(l(f)){var D=r.collections.get(m.collection),w=m.getKey(d),b=Array.isArray(w)?w:[w];if(a)b.forEach(function(x){return D.markKeyForGC(x)}),C=!0;else{var F=m.getID?m.getID(d):d.id(),v=r._key(f,F),S=r.typeAndIdToKey.get(v);if(S!==void 0&&!f3t(b,S))g=!0,r.typeAndIdToKey.delete(v),S.forEach(function(x){return D.markKeyForGC(x)})}}};for(I.s();!(h=I.n()).done;)Q()}catch(p){I.e(p)}finally{I.f()}}}}catch(p){B.e(p)}finally{B.f()}if(C)this.gc(),g=!1;return g}},{key:"gc",value:function(){var t=Il(this.collections.values()),r;try{for(t.s();!(r=t.n()).done;){var i=r.value;i.gc()}}catch(u){t.e(u)}finally{t.f()}}},{key:"getOrCreateAtlas",value:function(t,r,i,u){var a=this.renderTypes.get(r),n=this.collections.get(a.collection),o=!1,s=n.draw(u,i,function(C){if(a.drawClipped)C.save(),C.beginPath(),C.rect(0,0,i.w,i.h),C.clip(),a.drawElement(C,t,i,!0,!0),C.restore();else a.drawElement(C,t,i,!0,!0);o=!0});if(o){var l=a.getID?a.getID(t):t.id(),g=this._key(r,l);if(this.typeAndIdToKey.has(g))this.typeAndIdToKey.get(g).push(u);else this.typeAndIdToKey.set(g,[u])}return s}},{key:"getAtlasInfo",value:function(t,r){var i=this,u=this.renderTypes.get(r),a=u.getKey(t),n=Array.isArray(a)?a:[a];return n.map(function(o){var s=u.getBoundingBox(t,o),l=i.getOrCreateAtlas(t,r,s,o),g=l.getOffsets(o),C=Tn(g,2),B=C[0],E=C[1];return{atlas:l,tex:B,tex1:B,tex2:E,bb:s}})}},{key:"getDebugInfo",value:function(){var t=[],r=Il(this.collections),i;try{for(r.s();!(i=r.n()).done;){var u=Tn(i.value,2),a=u[0],n=u[1],o=n.getCounts(),{keyCount:s,atlasCount:l}=o;t.push({type:a,keyCount:s,atlasCount:l})}}catch(g){r.e(g)}finally{r.f()}return t}}])}(),N3t=function(){function A(e){S4(this,A),this.globalOptions=e,this.atlasSize=e.webglTexSize,this.maxAtlasesPerBatch=e.webglTexPerBatch,this.batchAtlases=[]}return L4(A,[{key:"getMaxAtlasesPerBatch",value:function(){return this.maxAtlasesPerBatch}},{key:"getAtlasSize",value:function(){return this.atlasSize}},{key:"getIndexArray",value:function(){return Array.from({length:this.maxAtlasesPerBatch},function(t,r){return r})}},{key:"startBatch",value:function(){this.batchAtlases=[]}},{key:"getAtlasCount",value:function(){return this.batchAtlases.length}},{key:"getAtlases",value:function(){return this.batchAtlases}},{key:"canAddToCurrentBatch",value:function(t){if(this.batchAtlases.length===this.maxAtlasesPerBatch)return this.batchAtlases.includes(t);return!0}},{key:"getAtlasIndexForBatch",value:function(t){var r=this.batchAtlases.indexOf(t);if(r<0){if(this.batchAtlases.length===this.maxAtlasesPerBatch)throw Error("cannot add more atlases to batch");this.batchAtlases.push(t),r=this.batchAtlases.length-1}return r}}])}(),Tk={SCREEN:{name:"screen",screen:!0},PICKING:{name:"picking",picking:!0}},WT={IGNORE:1,USE_BB:2},Y3t=function(){function A(e,t,r){S4(this,A),this.r=e,this.gl=t,this.maxInstances=r.webglBatchSize,this.atlasSize=r.webglTexSize,this.bgColor=r.bgColor,this.debug=r.webglDebug,this.batchDebugInfo=[],r.enableWrapping=!0,r.createTextureCanvas=I3t,this.atlasManager=new R3t(e,r),this.batchManager=new N3t(r),this.simpleShapeOptions=new Map,this.program=this._createShaderProgram(Tk.SCREEN),this.pickingProgram=this._createShaderProgram(Tk.PICKING),this.vao=this._createVAO()}return L4(A,[{key:"addAtlasCollection",value:function(t,r){this.atlasManager.addAtlasCollection(t,r)}},{key:"addTextureAtlasRenderType",value:function(t,r){this.atlasManager.addRenderType(t,r)}},{key:"addSimpleShapeRenderType",value:function(t,r){this.simpleShapeOptions.set(t,r)}},{key:"invalidate",value:function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=r.type,u=this.atlasManager;if(i)return u.invalidate(t,{filterType:function(n){return n===i},forceRedraw:!0});else return u.invalidate(t)}},{key:"gc",value:function(){this.atlasManager.gc()}},{key:"_createShaderProgram",value:function(t){var r=this.gl,i=`#version 300 es
|
||
precision highp float;
|
||
|
||
uniform mat3 uPanZoomMatrix;
|
||
uniform int uAtlasSize;
|
||
|
||
// instanced
|
||
in vec2 aPosition; // a vertex from the unit square
|
||
|
||
in mat3 aTransform; // used to transform verticies, eg into a bounding box
|
||
in int aVertType; // the type of thing we are rendering
|
||
|
||
// the z-index that is output when using picking mode
|
||
in vec4 aIndex;
|
||
|
||
// For textures
|
||
in int aAtlasId; // which shader unit/atlas to use
|
||
in vec4 aTex; // x/y/w/h of texture in atlas
|
||
|
||
// for edges
|
||
in vec4 aPointAPointB;
|
||
in vec4 aPointCPointD;
|
||
in vec2 aLineWidth; // also used for node border width
|
||
|
||
// simple shapes
|
||
in vec4 aCornerRadius; // for round-rectangle [top-right, bottom-right, top-left, bottom-left]
|
||
in vec4 aColor; // also used for edges
|
||
in vec4 aBorderColor; // aLineWidth is used for border width
|
||
|
||
// output values passed to the fragment shader
|
||
out vec2 vTexCoord;
|
||
out vec4 vColor;
|
||
out vec2 vPosition;
|
||
// flat values are not interpolated
|
||
flat out int vAtlasId;
|
||
flat out int vVertType;
|
||
flat out vec2 vTopRight;
|
||
flat out vec2 vBotLeft;
|
||
flat out vec4 vCornerRadius;
|
||
flat out vec4 vBorderColor;
|
||
flat out vec2 vBorderWidth;
|
||
flat out vec4 vIndex;
|
||
|
||
void main(void) {
|
||
int vid = gl_VertexID;
|
||
vec2 position = aPosition; // TODO make this a vec3, simplifies some code below
|
||
|
||
if(aVertType == `.concat(caA,`) {
|
||
float texX = aTex.x; // texture coordinates
|
||
float texY = aTex.y;
|
||
float texW = aTex.z;
|
||
float texH = aTex.w;
|
||
|
||
if(vid == 1 || vid == 2 || vid == 4) {
|
||
texX += texW;
|
||
}
|
||
if(vid == 2 || vid == 4 || vid == 5) {
|
||
texY += texH;
|
||
}
|
||
|
||
float d = float(uAtlasSize);
|
||
vTexCoord = vec2(texX / d, texY / d); // tex coords must be between 0 and 1
|
||
|
||
gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);
|
||
}
|
||
else if(aVertType == `).concat(tw," || aVertType == ").concat(Lk,`
|
||
|| aVertType == `).concat(mT," || aVertType == ").concat(Sk,`) { // simple shapes
|
||
|
||
// the bounding box is needed by the fragment shader
|
||
vBotLeft = (aTransform * vec3(0, 0, 1)).xy; // flat
|
||
vTopRight = (aTransform * vec3(1, 1, 1)).xy; // flat
|
||
vPosition = (aTransform * vec3(position, 1)).xy; // will be interpolated
|
||
|
||
// calculations are done in the fragment shader, just pass these along
|
||
vColor = aColor;
|
||
vCornerRadius = aCornerRadius;
|
||
vBorderColor = aBorderColor;
|
||
vBorderWidth = aLineWidth;
|
||
|
||
gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);
|
||
}
|
||
else if(aVertType == `).concat(VHA,`) {
|
||
vec2 source = aPointAPointB.xy;
|
||
vec2 target = aPointAPointB.zw;
|
||
|
||
// adjust the geometry so that the line is centered on the edge
|
||
position.y = position.y - 0.5;
|
||
|
||
// stretch the unit square into a long skinny rectangle
|
||
vec2 xBasis = target - source;
|
||
vec2 yBasis = normalize(vec2(-xBasis.y, xBasis.x));
|
||
vec2 point = source + xBasis * position.x + yBasis * aLineWidth[0] * position.y;
|
||
|
||
gl_Position = vec4(uPanZoomMatrix * vec3(point, 1.0), 1.0);
|
||
vColor = aColor;
|
||
}
|
||
else if(aVertType == `).concat(jHA,`) {
|
||
vec2 pointA = aPointAPointB.xy;
|
||
vec2 pointB = aPointAPointB.zw;
|
||
vec2 pointC = aPointCPointD.xy;
|
||
vec2 pointD = aPointCPointD.zw;
|
||
|
||
// adjust the geometry so that the line is centered on the edge
|
||
position.y = position.y - 0.5;
|
||
|
||
vec2 p0, p1, p2, pos;
|
||
if(position.x == 0.0) { // The left side of the unit square
|
||
p0 = pointA;
|
||
p1 = pointB;
|
||
p2 = pointC;
|
||
pos = position;
|
||
} else { // The right side of the unit square, use same approach but flip the geometry upside down
|
||
p0 = pointD;
|
||
p1 = pointC;
|
||
p2 = pointB;
|
||
pos = vec2(0.0, -position.y);
|
||
}
|
||
|
||
vec2 p01 = p1 - p0;
|
||
vec2 p12 = p2 - p1;
|
||
vec2 p21 = p1 - p2;
|
||
|
||
// Find the normal vector.
|
||
vec2 tangent = normalize(normalize(p12) + normalize(p01));
|
||
vec2 normal = vec2(-tangent.y, tangent.x);
|
||
|
||
// Find the vector perpendicular to p0 -> p1.
|
||
vec2 p01Norm = normalize(vec2(-p01.y, p01.x));
|
||
|
||
// Determine the bend direction.
|
||
float sigma = sign(dot(p01 + p21, normal));
|
||
float width = aLineWidth[0];
|
||
|
||
if(sign(pos.y) == -sigma) {
|
||
// This is an intersecting vertex. Adjust the position so that there's no overlap.
|
||
vec2 point = 0.5 * width * normal * -sigma / dot(normal, p01Norm);
|
||
gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0);
|
||
} else {
|
||
// This is a non-intersecting vertex. Treat it like a mitre join.
|
||
vec2 point = 0.5 * width * normal * sigma * dot(normal, p01Norm);
|
||
gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0);
|
||
}
|
||
|
||
vColor = aColor;
|
||
}
|
||
else if(aVertType == `).concat(CaA,` && vid < 3) {
|
||
// massage the first triangle into an edge arrow
|
||
if(vid == 0)
|
||
position = vec2(-0.15, -0.3);
|
||
if(vid == 1)
|
||
position = vec2( 0.0, 0.0);
|
||
if(vid == 2)
|
||
position = vec2( 0.15, -0.3);
|
||
|
||
gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);
|
||
vColor = aColor;
|
||
}
|
||
else {
|
||
gl_Position = vec4(2.0, 0.0, 0.0, 1.0); // discard vertex by putting it outside webgl clip space
|
||
}
|
||
|
||
vAtlasId = aAtlasId;
|
||
vVertType = aVertType;
|
||
vIndex = aIndex;
|
||
}
|
||
`),u=this.batchManager.getIndexArray(),a=`#version 300 es
|
||
precision highp float;
|
||
|
||
// declare texture unit for each texture atlas in the batch
|
||
`.concat(u.map(function(s){return"uniform sampler2D uTexture".concat(s,";")}).join(`
|
||
`),`
|
||
|
||
uniform vec4 uBGColor;
|
||
uniform float uZoom;
|
||
|
||
in vec2 vTexCoord;
|
||
in vec4 vColor;
|
||
in vec2 vPosition; // model coordinates
|
||
|
||
flat in int vAtlasId;
|
||
flat in vec4 vIndex;
|
||
flat in int vVertType;
|
||
flat in vec2 vTopRight;
|
||
flat in vec2 vBotLeft;
|
||
flat in vec4 vCornerRadius;
|
||
flat in vec4 vBorderColor;
|
||
flat in vec2 vBorderWidth;
|
||
|
||
out vec4 outColor;
|
||
|
||
`).concat(G3t,`
|
||
`).concat(U3t,`
|
||
`).concat(M3t,`
|
||
`).concat(T3t,`
|
||
|
||
vec4 blend(vec4 top, vec4 bot) { // blend colors with premultiplied alpha
|
||
return vec4(
|
||
top.rgb + (bot.rgb * (1.0 - top.a)),
|
||
top.a + (bot.a * (1.0 - top.a))
|
||
);
|
||
}
|
||
|
||
vec4 distInterp(vec4 cA, vec4 cB, float d) { // interpolate color using Signed Distance
|
||
// scale to the zoom level so that borders don't look blurry when zoomed in
|
||
// note 1.5 is an aribitrary value chosen because it looks good
|
||
return mix(cA, cB, 1.0 - smoothstep(0.0, 1.5 / uZoom, abs(d)));
|
||
}
|
||
|
||
void main(void) {
|
||
if(vVertType == `).concat(caA,`) {
|
||
// look up the texel from the texture unit
|
||
`).concat(u.map(function(s){return"if(vAtlasId == ".concat(s,") outColor = texture(uTexture").concat(s,", vTexCoord);")}).join(`
|
||
else `),`
|
||
}
|
||
else if(vVertType == `).concat(CaA,`) {
|
||
// mimics how canvas renderer uses context.globalCompositeOperation = 'destination-out';
|
||
outColor = blend(vColor, uBGColor);
|
||
outColor.a = 1.0; // make opaque, masks out line under arrow
|
||
}
|
||
else if(vVertType == `).concat(tw,` && vBorderWidth == vec2(0.0)) { // simple rectangle with no border
|
||
outColor = vColor; // unit square is already transformed to the rectangle, nothing else needs to be done
|
||
}
|
||
else if(vVertType == `).concat(tw," || vVertType == ").concat(Lk,`
|
||
|| vVertType == `).concat(mT," || vVertType == ").concat(Sk,`) { // use SDF
|
||
|
||
float outerBorder = vBorderWidth[0];
|
||
float innerBorder = vBorderWidth[1];
|
||
float borderPadding = outerBorder * 2.0;
|
||
float w = vTopRight.x - vBotLeft.x - borderPadding;
|
||
float h = vTopRight.y - vBotLeft.y - borderPadding;
|
||
vec2 b = vec2(w/2.0, h/2.0); // half width, half height
|
||
vec2 p = vPosition - vec2(vTopRight.x - b[0] - outerBorder, vTopRight.y - b[1] - outerBorder); // translate to center
|
||
|
||
float d; // signed distance
|
||
if(vVertType == `).concat(tw,`) {
|
||
d = rectangleSD(p, b);
|
||
} else if(vVertType == `).concat(Lk,` && w == h) {
|
||
d = circleSD(p, b.x); // faster than ellipse
|
||
} else if(vVertType == `).concat(Lk,`) {
|
||
d = ellipseSD(p, b);
|
||
} else {
|
||
d = roundRectangleSD(p, b, vCornerRadius.wzyx);
|
||
}
|
||
|
||
// use the distance to interpolate a color to smooth the edges of the shape, doesn't need multisampling
|
||
// we must smooth colors inwards, because we can't change pixels outside the shape's bounding box
|
||
if(d > 0.0) {
|
||
if(d > outerBorder) {
|
||
discard;
|
||
} else {
|
||
outColor = distInterp(vBorderColor, vec4(0), d - outerBorder);
|
||
}
|
||
} else {
|
||
if(d > innerBorder) {
|
||
vec4 outerColor = outerBorder == 0.0 ? vec4(0) : vBorderColor;
|
||
vec4 innerBorderColor = blend(vBorderColor, vColor);
|
||
outColor = distInterp(innerBorderColor, outerColor, d);
|
||
}
|
||
else {
|
||
vec4 outerColor;
|
||
if(innerBorder == 0.0 && outerBorder == 0.0) {
|
||
outerColor = vec4(0);
|
||
} else if(innerBorder == 0.0) {
|
||
outerColor = vBorderColor;
|
||
} else {
|
||
outerColor = blend(vBorderColor, vColor);
|
||
}
|
||
outColor = distInterp(vColor, outerColor, d - innerBorder);
|
||
}
|
||
}
|
||
}
|
||
else {
|
||
outColor = vColor;
|
||
}
|
||
|
||
`).concat(t.picking?`if(outColor.a == 0.0) discard;
|
||
else outColor = vIndex;`:"",`
|
||
}
|
||
`),n=d3t(r,i,a);n.aPosition=r.getAttribLocation(n,"aPosition"),n.aIndex=r.getAttribLocation(n,"aIndex"),n.aVertType=r.getAttribLocation(n,"aVertType"),n.aTransform=r.getAttribLocation(n,"aTransform"),n.aAtlasId=r.getAttribLocation(n,"aAtlasId"),n.aTex=r.getAttribLocation(n,"aTex"),n.aPointAPointB=r.getAttribLocation(n,"aPointAPointB"),n.aPointCPointD=r.getAttribLocation(n,"aPointCPointD"),n.aLineWidth=r.getAttribLocation(n,"aLineWidth"),n.aColor=r.getAttribLocation(n,"aColor"),n.aCornerRadius=r.getAttribLocation(n,"aCornerRadius"),n.aBorderColor=r.getAttribLocation(n,"aBorderColor"),n.uPanZoomMatrix=r.getUniformLocation(n,"uPanZoomMatrix"),n.uAtlasSize=r.getUniformLocation(n,"uAtlasSize"),n.uBGColor=r.getUniformLocation(n,"uBGColor"),n.uZoom=r.getUniformLocation(n,"uZoom"),n.uTextures=[];for(var o=0;o<this.batchManager.getMaxAtlasesPerBatch();o++)n.uTextures.push(r.getUniformLocation(n,"uTexture".concat(o)));return n}},{key:"_createVAO",value:function(){var t=[0,0,1,0,1,1,0,0,1,1,0,1];this.vertexCount=t.length/2;var r=this.maxInstances,i=this.gl,u=this.program,a=i.createVertexArray();return i.bindVertexArray(a),w3t(i,"vec2",u.aPosition,t),this.transformBuffer=b3t(i,r,u.aTransform),this.indexBuffer=xE(i,r,"vec4",u.aIndex),this.vertTypeBuffer=xE(i,r,"int",u.aVertType),this.atlasIdBuffer=xE(i,r,"int",u.aAtlasId),this.texBuffer=xE(i,r,"vec4",u.aTex),this.pointAPointBBuffer=xE(i,r,"vec4",u.aPointAPointB),this.pointCPointDBuffer=xE(i,r,"vec4",u.aPointCPointD),this.lineWidthBuffer=xE(i,r,"vec2",u.aLineWidth),this.colorBuffer=xE(i,r,"vec4",u.aColor),this.cornerRadiusBuffer=xE(i,r,"vec4",u.aCornerRadius),this.borderColorBuffer=xE(i,r,"vec4",u.aBorderColor),i.bindVertexArray(null),a}},{key:"buffers",get:function(){var t=this;if(!this._buffers)this._buffers=Object.keys(this).filter(function(r){return p4(r,"Buffer")}).map(function(r){return t[r]});return this._buffers}},{key:"startFrame",value:function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Tk.SCREEN;this.panZoomMatrix=t,this.renderTarget=r,this.batchDebugInfo=[],this.wrappedCount=0,this.simpleCount=0,this.startBatch()}},{key:"startBatch",value:function(){this.instanceCount=0,this.batchManager.startBatch()}},{key:"endFrame",value:function(){this.endBatch()}},{key:"_isVisible",value:function(t,r){if(t.visible()){if(r&&r.isVisible)return r.isVisible(t);return!0}return!1}},{key:"drawTexture",value:function(t,r,i){var u=this.atlasManager,a=this.batchManager,n=u.getRenderTypeOpts(i);if(!this._isVisible(t,n))return;if(t.isEdge()&&!this._isValidEdge(t))return;if(this.renderTarget.picking&&n.getTexPickingMode){var o=n.getTexPickingMode(t);if(o===WT.IGNORE)return;else if(o==WT.USE_BB){this.drawPickingRectangle(t,r,i);return}}var s=u.getAtlasInfo(t,i),l=Il(s),g;try{for(l.s();!(g=l.n()).done;){var C=g.value,{atlas:B,tex1:E,tex2:d}=C;if(!a.canAddToCurrentBatch(B))this.endBatch();var I=a.getAtlasIndexForBatch(B);for(var h=0,Q=[[E,!0],[d,!1]];h<Q.length;h++){var p=Tn(Q[h],2),m=p[0],f=p[1];if(m.w!=0){var D=this.instanceCount;this.vertTypeBuffer.getView(D)[0]=caA;var w=this.indexBuffer.getView(D);ew(r,w);var b=this.atlasIdBuffer.getView(D);b[0]=I;var F=this.texBuffer.getView(D);F[0]=m.x,F[1]=m.y,F[2]=m.w,F[3]=m.h;var v=this.transformBuffer.getMatrixView(D);if(this.setTransformMatrix(t,v,n,C,f),this.instanceCount++,!f)this.wrappedCount++;if(this.instanceCount>=this.maxInstances)this.endBatch()}}}}catch(S){l.e(S)}finally{l.f()}}},{key:"setTransformMatrix",value:function(t,r,i,u){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,n=0;if(i.shapeProps&&i.shapeProps.padding)n=t.pstyle(i.shapeProps.padding).pfValue;if(u){var{bb:o,tex1:s,tex2:l}=u,g=s.w/(s.w+l.w);if(!a)g=1-g;var C=this._getAdjustedBB(o,n,a,g);this._applyTransformMatrix(r,C,i,t)}else{var B=i.getBoundingBox(t),E=this._getAdjustedBB(B,n,!0,1);this._applyTransformMatrix(r,E,i,t)}}},{key:"_applyTransformMatrix",value:function(t,r,i,u){var a,n;zHA(t);var o=i.getRotation?i.getRotation(u):0;if(o!==0){var s=i.getRotationPoint(u),{x:l,y:g}=s;RT(t,t,[l,g]),ZHA(t,t,o);var C=i.getRotationOffset(u);a=C.x+(r.xOffset||0),n=C.y+(r.yOffset||0)}else a=r.x1,n=r.y1;RT(t,t,[a,n]),RaA(t,t,[r.w,r.h])}},{key:"_getAdjustedBB",value:function(t,r,i,u){var{x1:a,y1:n,w:o,h:s,yOffset:l}=t;if(r)a-=r,n-=r,o+=2*r,s+=2*r;var g=0,C=o*u;if(i&&u<1)o=C;else if(!i&&u<1)g=o-C,a+=g,o=C;return{x1:a,y1:n,w:o,h:s,xOffset:g,yOffset:l}}},{key:"drawPickingRectangle",value:function(t,r,i){var u=this.atlasManager.getRenderTypeOpts(i),a=this.instanceCount;this.vertTypeBuffer.getView(a)[0]=tw;var n=this.indexBuffer.getView(a);ew(r,n);var o=this.colorBuffer.getView(a);Vf([0,0,0],1,o);var s=this.transformBuffer.getMatrixView(a);if(this.setTransformMatrix(t,s,u),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"drawNode",value:function(t,r,i){var u=this.simpleShapeOptions.get(i);if(!this._isVisible(t,u))return;var a=u.shapeProps,n=this._getVertTypeForShape(t,a.shape);if(n===void 0||u.isSimple&&!u.isSimple(t,this.renderTarget)){this.drawTexture(t,r,i);return}var o=this.instanceCount;if(this.vertTypeBuffer.getView(o)[0]=n,n===mT||n===Sk){var s=u.getBoundingBox(t),l=this._getCornerRadius(t,a.radius,s),g=this.cornerRadiusBuffer.getView(o);if(g[0]=l,g[1]=l,g[2]=l,g[3]=l,n===Sk)g[0]=0,g[2]=0}var C=this.indexBuffer.getView(o);ew(r,C);var B=this.renderTarget.picking?1:i==="node-body"?t.effectiveOpacity():1,E=this.renderTarget.picking?1:t.pstyle(a.opacity).value*B,d=t.pstyle(a.color).value,I=this.colorBuffer.getView(o);Vf(d,E,I);var h=this.lineWidthBuffer.getView(o);if(h[0]=0,h[1]=0,a.border){var Q=t.pstyle("border-width").value;if(Q>0){var p=t.pstyle("border-color").value,m=B*t.pstyle("border-opacity").value,f=this.borderColorBuffer.getView(o);Vf(p,m,f);var D=t.pstyle("border-position").value;if(D==="inside")h[0]=0,h[1]=-Q;else if(D==="outside")h[0]=Q,h[1]=0;else{var w=Q/2;h[0]=w,h[1]=-w}}}var b=this.transformBuffer.getMatrixView(o);if(this.setTransformMatrix(t,b,u),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"_getVertTypeForShape",value:function(t,r){var i=t.pstyle(r).value;switch(i){case"rectangle":return tw;case"ellipse":return Lk;case"roundrectangle":case"round-rectangle":return mT;case"bottom-round-rectangle":return Sk;default:return}}},{key:"_getCornerRadius",value:function(t,r,i){var{w:u,h:a}=i;if(t.pstyle(r).value==="auto")return v4(u,a);else{var n=t.pstyle(r).pfValue,o=u/2,s=a/2;return Math.min(n,s,o)}}},{key:"drawEdgeArrow",value:function(t,r,i){if(!t.visible())return;var u=t._private.rscratch,a,n,o;if(i==="source")a=u.arrowStartX,n=u.arrowStartY,o=u.srcArrowAngle;else a=u.arrowEndX,n=u.arrowEndY,o=u.tgtArrowAngle;if(isNaN(a)||a==null||isNaN(n)||n==null||isNaN(o)||o==null)return;var s=t.pstyle(i+"-arrow-shape").value;if(s==="none")return;var l=t.pstyle(i+"-arrow-color").value,g=t.pstyle("opacity").value,C=t.pstyle("line-opacity").value,B=g*C,E=t.pstyle("width").pfValue,d=t.pstyle("arrow-scale").value,I=this.r.getArrowWidth(E,d),h=this.instanceCount,Q=this.transformBuffer.getMatrixView(h);zHA(Q),RT(Q,Q,[a,n]),RaA(Q,Q,[I,I]),ZHA(Q,Q,o),this.vertTypeBuffer.getView(h)[0]=CaA;var p=this.indexBuffer.getView(h);ew(r,p);var m=this.colorBuffer.getView(h);if(Vf(l,B,m),this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"drawEdgeLine",value:function(t,r){if(!t.visible())return;var i=this._getEdgePoints(t);if(!i)return;var u=t.pstyle("opacity").value,a=t.pstyle("line-opacity").value,n=t.pstyle("width").pfValue,o=t.pstyle("line-color").value,s=u*a;if(i.length/2+this.instanceCount>this.maxInstances)this.endBatch();if(i.length==4){var l=this.instanceCount;this.vertTypeBuffer.getView(l)[0]=VHA;var g=this.indexBuffer.getView(l);ew(r,g);var C=this.colorBuffer.getView(l);Vf(o,s,C);var B=this.lineWidthBuffer.getView(l);B[0]=n;var E=this.pointAPointBBuffer.getView(l);if(E[0]=i[0],E[1]=i[1],E[2]=i[2],E[3]=i[3],this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}else for(var d=0;d<i.length-2;d+=2){var I=this.instanceCount;this.vertTypeBuffer.getView(I)[0]=jHA;var h=this.indexBuffer.getView(I);ew(r,h);var Q=this.colorBuffer.getView(I);Vf(o,s,Q);var p=this.lineWidthBuffer.getView(I);p[0]=n;var m=i[d-2],f=i[d-1],D=i[d],w=i[d+1],b=i[d+2],F=i[d+3],v=i[d+4],S=i[d+5];if(d==0)m=2*D-b+0.001,f=2*w-F+0.001;if(d==i.length-4)v=2*b-D+0.001,S=2*F-w+0.001;var x=this.pointAPointBBuffer.getView(I);x[0]=m,x[1]=f,x[2]=D,x[3]=w;var k=this.pointCPointDBuffer.getView(I);if(k[0]=b,k[1]=F,k[2]=v,k[3]=S,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}}},{key:"_isValidEdge",value:function(t){var r=t._private.rscratch;if(r.badLine||r.allpts==null||isNaN(r.allpts[0]))return!1;return!0}},{key:"_getEdgePoints",value:function(t){var r=t._private.rscratch;if(!this._isValidEdge(t))return;var i=r.allpts;if(i.length==4)return i;var u=this._getNumSegments(t);return this._getCurveSegmentPoints(i,u)}},{key:"_getNumSegments",value:function(t){var r=15;return Math.min(Math.max(r,5),this.maxInstances)}},{key:"_getCurveSegmentPoints",value:function(t,r){if(t.length==4)return t;var i=Array((r+1)*2);for(var u=0;u<=r;u++)if(u==0)i[0]=t[0],i[1]=t[1];else if(u==r)i[u*2]=t[t.length-2],i[u*2+1]=t[t.length-1];else{var a=u/r;this._setCurvePoint(t,a,i,u*2)}return i}},{key:"_setCurvePoint",value:function(t,r,i,u){if(t.length<=2)i[u]=t[0],i[u+1]=t[1];else{var a=Array(t.length-2);for(var n=0;n<a.length;n+=2){var o=(1-r)*t[n]+r*t[n+2],s=(1-r)*t[n+1]+r*t[n+3];a[n]=o,a[n+1]=s}return this._setCurvePoint(a,r,i,u)}}},{key:"endBatch",value:function(){var t=this.gl,r=this.vao,i=this.vertexCount,u=this.instanceCount;if(u===0)return;var a=this.renderTarget.picking?this.pickingProgram:this.program;t.useProgram(a),t.bindVertexArray(r);var n=Il(this.buffers),o;try{for(n.s();!(o=n.n()).done;){var s=o.value;s.bufferSubData(u)}}catch(E){n.e(E)}finally{n.f()}var l=this.batchManager.getAtlases();for(var g=0;g<l.length;g++)l[g].bufferIfNeeded(t);for(var C=0;C<l.length;C++)t.activeTexture(t.TEXTURE0+C),t.bindTexture(t.TEXTURE_2D,l[C].texture),t.uniform1i(a.uTextures[C],C);t.uniform1f(a.uZoom,h3t(this.r)),t.uniformMatrix3fv(a.uPanZoomMatrix,!1,this.panZoomMatrix),t.uniform1i(a.uAtlasSize,this.batchManager.getAtlasSize());var B=Vf(this.bgColor,1);if(t.uniform4fv(a.uBGColor,B),t.drawArraysInstanced(t.TRIANGLES,0,i,u),t.bindVertexArray(null),t.bindTexture(t.TEXTURE_2D,null),this.debug)this.batchDebugInfo.push({count:u,atlasCount:l.length});this.startBatch()}},{key:"getDebugInfo",value:function(){var t=this.atlasManager.getDebugInfo(),r=t.reduce(function(a,n){return a+n.atlasCount},0),i=this.batchDebugInfo,u=i.reduce(function(a,n){return a+n.count},0);return{atlasInfo:t,totalAtlases:r,wrappedCount:this.wrappedCount,simpleCount:this.simpleCount,batchCount:i.length,batchInfo:i,totalInstances:u}}}])}(),MJA={};MJA.initWebgl=function(A,e){var t=this,r=t.data.contexts[t.WEBGL];A.bgColor=H3t(t),A.webglTexSize=Math.min(A.webglTexSize,r.getParameter(r.MAX_TEXTURE_SIZE)),A.webglTexRows=Math.min(A.webglTexRows,54),A.webglTexRowsNodes=Math.min(A.webglTexRowsNodes,54),A.webglBatchSize=Math.min(A.webglBatchSize,16384),A.webglTexPerBatch=Math.min(A.webglTexPerBatch,r.getParameter(r.MAX_TEXTURE_IMAGE_UNITS)),t.webglDebug=A.webglDebug,t.webglDebugShowAtlases=A.webglDebugShowAtlases,t.pickingFrameBuffer=v3t(r),t.pickingFrameBuffer.needsDraw=!0,t.drawing=new Y3t(t,r,A);var i=function(g){return function(C){return t.getTextAngle(C,g)}},u=function(g){return function(C){var B=C.pstyle(g);return B&&B.value}},a=function(g){return function(C){return C.pstyle("".concat(g,"-opacity")).value>0}},n=function(g){var C=g.pstyle("text-events").strValue==="yes";return C?WT.USE_BB:WT.IGNORE},o=function(g){var C=g.position(),{x:B,y:E}=C,d=g.outerWidth(),I=g.outerHeight();return{w:d,h:I,x1:B-d/2,y1:E-I/2}};t.drawing.addAtlasCollection("node",{texRows:A.webglTexRowsNodes}),t.drawing.addAtlasCollection("label",{texRows:A.webglTexRows}),t.drawing.addTextureAtlasRenderType("node-body",{collection:"node",getKey:e.getStyleKey,getBoundingBox:e.getElementBox,drawElement:e.drawElement}),t.drawing.addSimpleShapeRenderType("node-body",{getBoundingBox:o,isSimple:p3t,shapeProps:{shape:"shape",color:"background-color",opacity:"background-opacity",radius:"corner-radius",border:!0}}),t.drawing.addSimpleShapeRenderType("node-overlay",{getBoundingBox:o,isVisible:a("overlay"),shapeProps:{shape:"overlay-shape",color:"overlay-color",opacity:"overlay-opacity",padding:"overlay-padding",radius:"overlay-corner-radius"}}),t.drawing.addSimpleShapeRenderType("node-underlay",{getBoundingBox:o,isVisible:a("underlay"),shapeProps:{shape:"underlay-shape",color:"underlay-color",opacity:"underlay-opacity",padding:"underlay-padding",radius:"underlay-corner-radius"}}),t.drawing.addTextureAtlasRenderType("label",{collection:"label",getTexPickingMode:n,getKey:BaA(e.getLabelKey,null),getBoundingBox:EaA(e.getLabelBox,null),drawClipped:!0,drawElement:e.drawLabel,getRotation:i(null),getRotationPoint:e.getLabelRotationPoint,getRotationOffset:e.getLabelRotationOffset,isVisible:u("label")}),t.drawing.addTextureAtlasRenderType("edge-source-label",{collection:"label",getTexPickingMode:n,getKey:BaA(e.getSourceLabelKey,"source"),getBoundingBox:EaA(e.getSourceLabelBox,"source"),drawClipped:!0,drawElement:e.drawSourceLabel,getRotation:i("source"),getRotationPoint:e.getSourceLabelRotationPoint,getRotationOffset:e.getSourceLabelRotationOffset,isVisible:u("source-label")}),t.drawing.addTextureAtlasRenderType("edge-target-label",{collection:"label",getTexPickingMode:n,getKey:BaA(e.getTargetLabelKey,"target"),getBoundingBox:EaA(e.getTargetLabelBox,"target"),drawClipped:!0,drawElement:e.drawTargetLabel,getRotation:i("target"),getRotationPoint:e.getTargetLabelRotationPoint,getRotationOffset:e.getTargetLabelRotationOffset,isVisible:u("target-label")});var s=AF(function(){console.log("garbage collect flag set"),t.data.gc=!0},1e4);t.onUpdateEleCalcs(function(l,g){var C=!1;if(g&&g.length>0)C|=t.drawing.invalidate(g);if(C)s()}),K3t(t)};G4={};G4.drawPolygonPath=function(A,e,t,r,i,u){var a=r/2,n=i/2;if(A.beginPath)A.beginPath();A.moveTo(e+a*u[0],t+n*u[1]);for(var o=1;o<u.length/2;o++)A.lineTo(e+a*u[o*2],t+n*u[o*2+1]);A.closePath()};G4.drawRoundPolygonPath=function(A,e,t,r,i,u,a){a.forEach(function(n){return pJA(A,n)}),A.closePath()};G4.drawRoundRectanglePath=function(A,e,t,r,i,u){var a=r/2,n=i/2,o=u==="auto"?v4(r,i):Math.min(u,n,a);if(A.beginPath)A.beginPath();A.moveTo(e,t-n),A.arcTo(e+a,t-n,e+a,t,o),A.arcTo(e+a,t+n,e,t+n,o),A.arcTo(e-a,t+n,e-a,t,o),A.arcTo(e-a,t-n,e,t-n,o),A.lineTo(e,t-n),A.closePath()};G4.drawBottomRoundRectanglePath=function(A,e,t,r,i,u){var a=r/2,n=i/2,o=u==="auto"?v4(r,i):u;if(A.beginPath)A.beginPath();A.moveTo(e,t-n),A.lineTo(e+a,t-n),A.lineTo(e+a,t),A.arcTo(e+a,t+n,e,t+n,o),A.arcTo(e-a,t+n,e-a,t,o),A.lineTo(e-a,t-n),A.lineTo(e,t-n),A.closePath()};G4.drawCutRectanglePath=function(A,e,t,r,i,u,a){var n=r/2,o=i/2,s=a==="auto"?qaA():a;if(A.beginPath)A.beginPath();A.moveTo(e-n+s,t-o),A.lineTo(e+n-s,t-o),A.lineTo(e+n,t-o+s),A.lineTo(e+n,t+o-s),A.lineTo(e+n-s,t+o),A.lineTo(e-n+s,t+o),A.lineTo(e-n,t+o-s),A.lineTo(e-n,t-o+s),A.closePath()};G4.drawBarrelPath=function(A,e,t,r,i){var u=r/2,a=i/2,n=e-u,o=e+u,s=t-a,l=t+a,g=QaA(r,i),{widthOffset:C,heightOffset:B}=g,E=g.ctrlPtOffsetPct*C;if(A.beginPath)A.beginPath();A.moveTo(n,s+B),A.lineTo(n,l-B),A.quadraticCurveTo(n+E,l,n+C,l),A.lineTo(o-C,l),A.quadraticCurveTo(o-E,l,o,l-B),A.lineTo(o,s+B),A.quadraticCurveTo(o-E,s,o-C,s),A.lineTo(n+C,s),A.quadraticCurveTo(n+E,s,n,s+B),A.closePath()};XHA=Math.sin(0),$HA=Math.cos(0),NaA={},GaA={},KJA=Math.PI/40;for(h4=0*Math.PI;h4<2*Math.PI;h4+=KJA)NaA[h4]=Math.sin(h4),GaA[h4]=Math.cos(h4);G4.drawEllipsePath=function(A,e,t,r,i){if(A.beginPath)A.beginPath();if(A.ellipse)A.ellipse(e,t,r/2,i/2,0,0,2*Math.PI);else{var u,a,n=r/2,o=i/2;for(var s=0*Math.PI;s<2*Math.PI;s+=KJA)if(u=e-n*NaA[s]*XHA+n*GaA[s]*$HA,a=t+o*GaA[s]*XHA+o*NaA[s]*$HA,s===0)A.moveTo(u,a);else A.lineTo(u,a)}A.closePath()};aF={};aF.createBuffer=function(A,e){var t=document.createElement("canvas");return t.width=A,t.height=e,[t,t.getContext("2d")]};aF.bufferCanvasImage=function(A){var e=this.cy,t=e.mutableElements(),r=t.boundingBox(),i=this.findContainerClientCoords(),u=A.full?Math.ceil(r.w):i[2],a=A.full?Math.ceil(r.h):i[3],n=Qt(A.maxWidth)||Qt(A.maxHeight),o=this.getPixelRatio(),s=1;if(A.scale!==void 0)u*=A.scale,a*=A.scale,s=A.scale;else if(n){var l=1/0,g=1/0;if(Qt(A.maxWidth))l=s*A.maxWidth/u;if(Qt(A.maxHeight))g=s*A.maxHeight/a;s=Math.min(l,g),u*=s,a*=s}if(!n)u*=o,a*=o,s*=o;var C=document.createElement("canvas");C.width=u,C.height=a,C.style.width=u+"px",C.style.height=a+"px";var B=C.getContext("2d");if(u>0&&a>0){B.clearRect(0,0,u,a),B.globalCompositeOperation="source-over";var E=this.getCachedZSortedEles();if(A.full)B.translate(-r.x1*s,-r.y1*s),B.scale(s,s),this.drawElements(B,E),B.scale(1/s,1/s),B.translate(r.x1*s,r.y1*s);else{var d=e.pan(),I={x:d.x*s,y:d.y*s};s*=e.zoom(),B.translate(I.x,I.y),B.scale(s,s),this.drawElements(B,E),B.scale(1/s,1/s),B.translate(-I.x,-I.y)}if(A.bg)B.globalCompositeOperation="destination-over",B.fillStyle=A.bg,B.rect(0,0,u,a),B.fill()}return C};aF.png=function(A){return JJA(A,this.bufferCanvasImage(A),"image/png")};aF.jpg=function(A){return JJA(A,this.bufferCanvasImage(A),"image/jpeg")};OJA={};OJA.nodeShapeImpl=function(A,e,t,r,i,u,a,n){switch(A){case"ellipse":return this.drawEllipsePath(e,t,r,i,u);case"polygon":return this.drawPolygonPath(e,t,r,i,u,a);case"round-polygon":return this.drawRoundPolygonPath(e,t,r,i,u,a,n);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(e,t,r,i,u,n);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(e,t,r,i,u,a,n);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(e,t,r,i,u,n);case"barrel":return this.drawBarrelPath(e,t,r,i,u)}};j3t=PJA,oi=PJA.prototype;oi.CANVAS_LAYERS=3;oi.SELECT_BOX=0;oi.DRAG=1;oi.NODE=2;oi.WEBGL=3;oi.CANVAS_TYPES=["2d","2d","2d","webgl2"];oi.BUFFER_COUNT=3;oi.TEXTURE_BUFFER=0;oi.MOTIONBLUR_BUFFER_NODE=1;oi.MOTIONBLUR_BUFFER_DRAG=2;oi.redrawHint=function(A,e){var t=this;switch(A){case"eles":t.data.canvasNeedsRedraw[oi.NODE]=e;break;case"drag":t.data.canvasNeedsRedraw[oi.DRAG]=e;break;case"select":t.data.canvasNeedsRedraw[oi.SELECT_BOX]=e;break;case"gc":t.data.gc=!0;break}};X3t=typeof Path2D<"u";oi.path2dEnabled=function(A){if(A===void 0)return this.pathsEnabled;this.pathsEnabled=A?!0:!1};oi.usePaths=function(){return X3t&&this.pathsEnabled};oi.setImgSmoothing=function(A,e){if(A.imageSmoothingEnabled!=null)A.imageSmoothingEnabled=e;else A.webkitImageSmoothingEnabled=e,A.mozImageSmoothingEnabled=e,A.msImageSmoothingEnabled=e};oi.getImgSmoothing=function(A){if(A.imageSmoothingEnabled!=null)return A.imageSmoothingEnabled;else return A.webkitImageSmoothingEnabled||A.mozImageSmoothingEnabled||A.msImageSmoothingEnabled};oi.makeOffscreenCanvas=function(A,e){var t;if((typeof OffscreenCanvas>"u"?"undefined":io(OffscreenCanvas))!=="undefined")t=new OffscreenCanvas(A,e);else{var r=this.cy.window(),i=r.document;t=i.createElement("canvas"),t.width=A,t.height=e}return t};[LJA,UE,YI,anA,o3,N4,Ds,MJA,G4,aF,OJA].forEach(function(A){Cr(oi,A)});$3t=[{name:"null",impl:IJA},{name:"base",impl:kJA},{name:"canvas",impl:j3t}],Amt=[{type:"layout",extensions:Dft},{type:"renderer",extensions:$3t}],_JA={},WJA={};qk.prototype.extension=UaA;Amt.forEach(function(A){A.extensions.forEach(function(e){qJA(A.type,e.name,e.impl)})});a3=qT.prototype;a3.instanceString=function(){return"stylesheet"};a3.selector=function(A){var e=this.length++;return this[e]={selector:A,properties:[]},this};a3.css=function(A,e){var t=this.length-1;if(tr(A))this[t].properties.push({name:A,value:e});else if(Hi(A)){var r=A,i=Object.keys(r);for(var u=0;u<i.length;u++){var a=i[u],n=r[a];if(n==null)continue;var o=No.properties[a]||No.properties[zT(a)];if(o==null)continue;var s=o.name,l=n;this[t].properties.push({name:s,value:l})}}return this};a3.style=a3.css;a3.generateStyle=function(A){var e=new No(A);return this.appendToStyle(e)};a3.appendToStyle=function(A){for(var e=0;e<this.length;e++){var t=this[e],{selector:r,properties:i}=t;A.selector(r);for(var u=0;u<i.length;u++){var a=i[u];A.css(a.name,a.value)}}return A};gc.use=function(A){var e=Array.prototype.slice.call(arguments,1);return e.unshift(gc),A.apply(null,e),this};gc.warnings=function(A){return hKA(A)};gc.version=rmt;gc.stylesheet=gc.Stylesheet=qT});var lnA=wu(function(nF,snA){(function(e,t){if(typeof nF==="object"&&typeof snA==="object")snA.exports=t();else if(typeof define==="function"&&define.amd)define([],t);else if(typeof nF==="object")nF.layoutBase=t();else e.layoutBase=t()})(nF,function(){return function(A){var e={};function t(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return A[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}return t.m=A,t.c=e,t.i=function(r){return r},t.d=function(r,i,u){if(!t.o(r,i))Object.defineProperty(r,i,{configurable:!1,enumerable:!0,get:u})},t.n=function(r){var i=r&&r.__esModule?function(){return r.default}:function(){return r};return t.d(i,"a",i),i},t.o=function(r,i){return Object.prototype.hasOwnProperty.call(r,i)},t.p="",t(t.s=26)}([function(A,e,t){function r(){}r.QUALITY=1,r.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,r.DEFAULT_INCREMENTAL=!1,r.DEFAULT_ANIMATION_ON_LAYOUT=!0,r.DEFAULT_ANIMATION_DURING_LAYOUT=!1,r.DEFAULT_ANIMATION_PERIOD=50,r.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,r.DEFAULT_GRAPH_MARGIN=15,r.NODE_DIMENSIONS_INCLUDE_LABELS=!1,r.SIMPLE_NODE_SIZE=40,r.SIMPLE_NODE_HALF_SIZE=r.SIMPLE_NODE_SIZE/2,r.EMPTY_COMPOUND_NODE_SIZE=40,r.MIN_EDGE_LENGTH=1,r.WORLD_BOUNDARY=1e6,r.INITIAL_WORLD_BOUNDARY=r.WORLD_BOUNDARY/1000,r.WORLD_CENTER_X=1200,r.WORLD_CENTER_Y=900,A.exports=r},function(A,e,t){var r=t(2),i=t(8),u=t(9);function a(o,s,l){r.call(this,l),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=l,this.bendpoints=[],this.source=o,this.target=s}a.prototype=Object.create(r.prototype);for(var n in r)a[n]=r[n];a.prototype.getSource=function(){return this.source},a.prototype.getTarget=function(){return this.target},a.prototype.isInterGraph=function(){return this.isInterGraph},a.prototype.getLength=function(){return this.length},a.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},a.prototype.getBendpoints=function(){return this.bendpoints},a.prototype.getLca=function(){return this.lca},a.prototype.getSourceInLca=function(){return this.sourceInLca},a.prototype.getTargetInLca=function(){return this.targetInLca},a.prototype.getOtherEnd=function(o){if(this.source===o)return this.target;else if(this.target===o)return this.source;else throw"Node is not incident with this edge"},a.prototype.getOtherEndInGraph=function(o,s){var l=this.getOtherEnd(o),g=s.getGraphManager().getRoot();while(!0){if(l.getOwner()==s)return l;if(l.getOwner()==g)break;l=l.getOwner().getParent()}return null},a.prototype.updateLength=function(){var o=[,,,,];if(this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),o),!this.isOverlapingSourceAndTarget){if(this.lengthX=o[0]-o[2],this.lengthY=o[1]-o[3],Math.abs(this.lengthX)<1)this.lengthX=u.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=u.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)}},a.prototype.updateLengthSimple=function(){if(this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1)this.lengthX=u.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=u.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},A.exports=a},function(A,e,t){function r(i){this.vGraphObject=i}A.exports=r},function(A,e,t){var r=t(2),i=t(10),u=t(13),a=t(0),n=t(16),o=t(4);function s(g,C,B,E){if(B==null&&E==null)E=C;if(r.call(this,E),g.graphManager!=null)g=g.graphManager;if(this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=E,this.edges=[],this.graphManager=g,B!=null&&C!=null)this.rect=new u(C.x,C.y,B.width,B.height);else this.rect=new u}s.prototype=Object.create(r.prototype);for(var l in r)s[l]=r[l];s.prototype.getEdges=function(){return this.edges},s.prototype.getChild=function(){return this.child},s.prototype.getOwner=function(){return this.owner},s.prototype.getWidth=function(){return this.rect.width},s.prototype.setWidth=function(g){this.rect.width=g},s.prototype.getHeight=function(){return this.rect.height},s.prototype.setHeight=function(g){this.rect.height=g},s.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},s.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},s.prototype.getCenter=function(){return new o(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},s.prototype.getLocation=function(){return new o(this.rect.x,this.rect.y)},s.prototype.getRect=function(){return this.rect},s.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},s.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},s.prototype.setRect=function(g,C){this.rect.x=g.x,this.rect.y=g.y,this.rect.width=C.width,this.rect.height=C.height},s.prototype.setCenter=function(g,C){this.rect.x=g-this.rect.width/2,this.rect.y=C-this.rect.height/2},s.prototype.setLocation=function(g,C){this.rect.x=g,this.rect.y=C},s.prototype.moveBy=function(g,C){this.rect.x+=g,this.rect.y+=C},s.prototype.getEdgeListToNode=function(g){var C=[],B,E=this;return E.edges.forEach(function(d){if(d.target==g){if(d.source!=E)throw"Incorrect edge source!";C.push(d)}}),C},s.prototype.getEdgesBetween=function(g){var C=[],B,E=this;return E.edges.forEach(function(d){if(!(d.source==E||d.target==E))throw"Incorrect edge source and/or target";if(d.target==g||d.source==g)C.push(d)}),C},s.prototype.getNeighborsList=function(){var g=new Set,C=this;return C.edges.forEach(function(B){if(B.source==C)g.add(B.target);else{if(B.target!=C)throw"Incorrect incidency!";g.add(B.source)}}),g},s.prototype.withChildren=function(){var g=new Set,C,B;if(g.add(this),this.child!=null){var E=this.child.getNodes();for(var d=0;d<E.length;d++)C=E[d],B=C.withChildren(),B.forEach(function(I){g.add(I)})}return g},s.prototype.getNoOfChildren=function(){var g=0,C;if(this.child==null)g=1;else{var B=this.child.getNodes();for(var E=0;E<B.length;E++)C=B[E],g+=C.getNoOfChildren()}if(g==0)g=1;return g},s.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},s.prototype.calcEstimatedSize=function(){if(this.child==null)return this.estimatedSize=(this.rect.width+this.rect.height)/2;else return this.estimatedSize=this.child.calcEstimatedSize(),this.rect.width=this.estimatedSize,this.rect.height=this.estimatedSize,this.estimatedSize},s.prototype.scatter=function(){var g,C,B=-a.INITIAL_WORLD_BOUNDARY,E=a.INITIAL_WORLD_BOUNDARY;g=a.WORLD_CENTER_X+n.nextDouble()*(E-B)+B;var d=-a.INITIAL_WORLD_BOUNDARY,I=a.INITIAL_WORLD_BOUNDARY;C=a.WORLD_CENTER_Y+n.nextDouble()*(I-d)+d,this.rect.x=g,this.rect.y=C},s.prototype.updateBounds=function(){if(this.getChild()==null)throw"assert failed";if(this.getChild().getNodes().length!=0){var g=this.getChild();if(g.updateBounds(!0),this.rect.x=g.getLeft(),this.rect.y=g.getTop(),this.setWidth(g.getRight()-g.getLeft()),this.setHeight(g.getBottom()-g.getTop()),a.NODE_DIMENSIONS_INCLUDE_LABELS){var C=g.getRight()-g.getLeft(),B=g.getBottom()-g.getTop();if(this.labelWidth>C)this.rect.x-=(this.labelWidth-C)/2,this.setWidth(this.labelWidth);if(this.labelHeight>B){if(this.labelPos=="center")this.rect.y-=(this.labelHeight-B)/2;else if(this.labelPos=="top")this.rect.y-=this.labelHeight-B;this.setHeight(this.labelHeight)}}}},s.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},s.prototype.transform=function(g){var C=this.rect.x;if(C>a.WORLD_BOUNDARY)C=a.WORLD_BOUNDARY;else if(C<-a.WORLD_BOUNDARY)C=-a.WORLD_BOUNDARY;var B=this.rect.y;if(B>a.WORLD_BOUNDARY)B=a.WORLD_BOUNDARY;else if(B<-a.WORLD_BOUNDARY)B=-a.WORLD_BOUNDARY;var E=new o(C,B),d=g.inverseTransformPoint(E);this.setLocation(d.x,d.y)},s.prototype.getLeft=function(){return this.rect.x},s.prototype.getRight=function(){return this.rect.x+this.rect.width},s.prototype.getTop=function(){return this.rect.y},s.prototype.getBottom=function(){return this.rect.y+this.rect.height},s.prototype.getParent=function(){if(this.owner==null)return null;return this.owner.getParent()},A.exports=s},function(A,e,t){function r(i,u){if(i==null&&u==null)this.x=0,this.y=0;else this.x=i,this.y=u}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.setX=function(i){this.x=i},r.prototype.setY=function(i){this.y=i},r.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},r.prototype.getCopy=function(){return new r(this.x,this.y)},r.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},A.exports=r},function(A,e,t){var r=t(2),i=t(10),u=t(0),a=t(6),n=t(3),o=t(1),s=t(13),l=t(12),g=t(11);function C(E,d,I){if(r.call(this,I),this.estimatedSize=i.MIN_VALUE,this.margin=u.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=E,d!=null&&d instanceof a)this.graphManager=d;else if(d!=null&&d instanceof Layout)this.graphManager=d.graphManager}C.prototype=Object.create(r.prototype);for(var B in r)C[B]=r[B];C.prototype.getNodes=function(){return this.nodes},C.prototype.getEdges=function(){return this.edges},C.prototype.getGraphManager=function(){return this.graphManager},C.prototype.getParent=function(){return this.parent},C.prototype.getLeft=function(){return this.left},C.prototype.getRight=function(){return this.right},C.prototype.getTop=function(){return this.top},C.prototype.getBottom=function(){return this.bottom},C.prototype.isConnected=function(){return this.isConnected},C.prototype.add=function(E,d,I){if(d==null&&I==null){var h=E;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(h)>-1)throw"Node already in graph!";return h.owner=this,this.getNodes().push(h),h}else{var Q=E;if(!(this.getNodes().indexOf(d)>-1&&this.getNodes().indexOf(I)>-1))throw"Source or target not in graph!";if(!(d.owner==I.owner&&d.owner==this))throw"Both owners must be this graph!";if(d.owner!=I.owner)return null;if(Q.source=d,Q.target=I,Q.isInterGraph=!1,this.getEdges().push(Q),d.edges.push(Q),I!=d)I.edges.push(Q);return Q}},C.prototype.remove=function(E){var d=E;if(E instanceof n){if(d==null)throw"Node is null!";if(!(d.owner!=null&&d.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";var I=d.edges.slice(),h,Q=I.length;for(var p=0;p<Q;p++)if(h=I[p],h.isInterGraph)this.graphManager.remove(h);else h.source.owner.remove(h);var m=this.nodes.indexOf(d);if(m==-1)throw"Node not in owner node list!";this.nodes.splice(m,1)}else if(E instanceof o){var h=E;if(h==null)throw"Edge is null!";if(!(h.source!=null&&h.target!=null))throw"Source and/or target is null!";if(!(h.source.owner!=null&&h.target.owner!=null&&h.source.owner==this&&h.target.owner==this))throw"Source and/or target owner is invalid!";var f=h.source.edges.indexOf(h),D=h.target.edges.indexOf(h);if(!(f>-1&&D>-1))throw"Source and/or target doesn't know this edge!";if(h.source.edges.splice(f,1),h.target!=h.source)h.target.edges.splice(D,1);var m=h.source.owner.getEdges().indexOf(h);if(m==-1)throw"Not in owner's edge list!";h.source.owner.getEdges().splice(m,1)}},C.prototype.updateLeftTop=function(){var{MAX_VALUE:E,MAX_VALUE:d}=i,I,h,Q,p=this.getNodes(),m=p.length;for(var f=0;f<m;f++){var D=p[f];if(I=D.getTop(),h=D.getLeft(),E>I)E=I;if(d>h)d=h}if(E==i.MAX_VALUE)return null;if(p[0].getParent().paddingLeft!=null)Q=p[0].getParent().paddingLeft;else Q=this.margin;return this.left=d-Q,this.top=E-Q,new l(this.left,this.top)},C.prototype.updateBounds=function(E){var d=i.MAX_VALUE,I=-i.MAX_VALUE,h=i.MAX_VALUE,Q=-i.MAX_VALUE,p,m,f,D,w,b=this.nodes,F=b.length;for(var v=0;v<F;v++){var S=b[v];if(E&&S.child!=null)S.updateBounds();if(p=S.getLeft(),m=S.getRight(),f=S.getTop(),D=S.getBottom(),d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var x=new s(d,h,I-d,Q-h);if(d==i.MAX_VALUE)this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom();if(b[0].getParent().paddingLeft!=null)w=b[0].getParent().paddingLeft;else w=this.margin;this.left=x.x-w,this.right=x.x+x.width+w,this.top=x.y-w,this.bottom=x.y+x.height+w},C.calculateBounds=function(E){var d=i.MAX_VALUE,I=-i.MAX_VALUE,h=i.MAX_VALUE,Q=-i.MAX_VALUE,p,m,f,D,w=E.length;for(var b=0;b<w;b++){var F=E[b];if(p=F.getLeft(),m=F.getRight(),f=F.getTop(),D=F.getBottom(),d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var v=new s(d,h,I-d,Q-h);return v},C.prototype.getInclusionTreeDepth=function(){if(this==this.graphManager.getRoot())return 1;else return this.parent.getInclusionTreeDepth()},C.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},C.prototype.calcEstimatedSize=function(){var E=0,d=this.nodes,I=d.length;for(var h=0;h<I;h++){var Q=d[h];E+=Q.calcEstimatedSize()}if(E==0)this.estimatedSize=u.EMPTY_COMPOUND_NODE_SIZE;else this.estimatedSize=E/Math.sqrt(this.nodes.length);return this.estimatedSize},C.prototype.updateConnected=function(){var E=this;if(this.nodes.length==0){this.isConnected=!0;return}var d=new g,I=new Set,h=this.nodes[0],Q,p,m=h.withChildren();m.forEach(function(v){d.push(v),I.add(v)});while(d.length!==0){h=d.shift(),Q=h.getEdges();var f=Q.length;for(var D=0;D<f;D++){var w=Q[D];if(p=w.getOtherEndInGraph(h,this),p!=null&&!I.has(p)){var b=p.withChildren();b.forEach(function(v){d.push(v),I.add(v)})}}}if(this.isConnected=!1,I.size>=this.nodes.length){var F=0;if(I.forEach(function(v){if(v.owner==E)F++}),F==this.nodes.length)this.isConnected=!0}},A.exports=C},function(A,e,t){var r,i=t(1);function u(a){r=t(5),this.layout=a,this.graphs=[],this.edges=[]}u.prototype.addRoot=function(){var a=this.layout.newGraph(),n=this.layout.newNode(null),o=this.add(a,n);return this.setRootGraph(o),this.rootGraph},u.prototype.add=function(a,n,o,s,l){if(o==null&&s==null&&l==null){if(a==null)throw"Graph is null!";if(n==null)throw"Parent node is null!";if(this.graphs.indexOf(a)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(a),a.parent!=null)throw"Already has a parent!";if(n.child!=null)throw"Already has a child!";return a.parent=n,n.child=a,a}else{l=o,s=n,o=a;var g=s.getOwner(),C=l.getOwner();if(!(g!=null&&g.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(C!=null&&C.getGraphManager()==this))throw"Target not in this graph mgr!";if(g==C)return o.isInterGraph=!1,g.add(o,s,l);else{if(o.isInterGraph=!0,o.source=s,o.target=l,this.edges.indexOf(o)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(o),!(o.source!=null&&o.target!=null))throw"Edge source and/or target is null!";if(!(o.source.edges.indexOf(o)==-1&&o.target.edges.indexOf(o)==-1))throw"Edge already in source and/or target incidency list!";return o.source.edges.push(o),o.target.edges.push(o),o}}},u.prototype.remove=function(a){if(a instanceof r){var n=a;if(n.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(n==this.rootGraph||n.parent!=null&&n.parent.graphManager==this))throw"Invalid parent node!";var o=[];o=o.concat(n.getEdges());var s,l=o.length;for(var g=0;g<l;g++)s=o[g],n.remove(s);var C=[];C=C.concat(n.getNodes());var B;l=C.length;for(var g=0;g<l;g++)B=C[g],n.remove(B);if(n==this.rootGraph)this.setRootGraph(null);var E=this.graphs.indexOf(n);this.graphs.splice(E,1),n.parent=null}else if(a instanceof i){if(s=a,s==null)throw"Edge is null!";if(!s.isInterGraph)throw"Not an inter-graph edge!";if(!(s.source!=null&&s.target!=null))throw"Source and/or target is null!";if(!(s.source.edges.indexOf(s)!=-1&&s.target.edges.indexOf(s)!=-1))throw"Source and/or target doesn't know this edge!";var E=s.source.edges.indexOf(s);if(s.source.edges.splice(E,1),E=s.target.edges.indexOf(s),s.target.edges.splice(E,1),!(s.source.owner!=null&&s.source.owner.getGraphManager()!=null))throw"Edge owner graph or owner graph manager is null!";if(s.source.owner.getGraphManager().edges.indexOf(s)==-1)throw"Not in owner graph manager's edge list!";var E=s.source.owner.getGraphManager().edges.indexOf(s);s.source.owner.getGraphManager().edges.splice(E,1)}},u.prototype.updateBounds=function(){this.rootGraph.updateBounds(!0)},u.prototype.getGraphs=function(){return this.graphs},u.prototype.getAllNodes=function(){if(this.allNodes==null){var a=[],n=this.getGraphs(),o=n.length;for(var s=0;s<o;s++)a=a.concat(n[s].getNodes());this.allNodes=a}return this.allNodes},u.prototype.resetAllNodes=function(){this.allNodes=null},u.prototype.resetAllEdges=function(){this.allEdges=null},u.prototype.resetAllNodesToApplyGravitation=function(){this.allNodesToApplyGravitation=null},u.prototype.getAllEdges=function(){if(this.allEdges==null){var a=[],n=this.getGraphs(),o=n.length;for(var s=0;s<n.length;s++)a=a.concat(n[s].getEdges());a=a.concat(this.edges),this.allEdges=a}return this.allEdges},u.prototype.getAllNodesToApplyGravitation=function(){return this.allNodesToApplyGravitation},u.prototype.setAllNodesToApplyGravitation=function(a){if(this.allNodesToApplyGravitation!=null)throw"assert failed";this.allNodesToApplyGravitation=a},u.prototype.getRoot=function(){return this.rootGraph},u.prototype.setRootGraph=function(a){if(a.getGraphManager()!=this)throw"Root not in this graph mgr!";if(this.rootGraph=a,a.parent==null)a.parent=this.layout.newNode("Root node")},u.prototype.getLayout=function(){return this.layout},u.prototype.isOneAncestorOfOther=function(a,n){if(!(a!=null&&n!=null))throw"assert failed";if(a==n)return!0;var o=a.getOwner(),s;do{if(s=o.getParent(),s==null)break;if(s==n)return!0;if(o=s.getOwner(),o==null)break}while(!0);o=n.getOwner();do{if(s=o.getParent(),s==null)break;if(s==a)return!0;if(o=s.getOwner(),o==null)break}while(!0);return!1},u.prototype.calcLowestCommonAncestors=function(){var a,n,o,s,l,g=this.getAllEdges(),C=g.length;for(var B=0;B<C;B++){if(a=g[B],n=a.source,o=a.target,a.lca=null,a.sourceInLca=n,a.targetInLca=o,n==o){a.lca=n.getOwner();continue}s=n.getOwner();while(a.lca==null){a.targetInLca=o,l=o.getOwner();while(a.lca==null){if(l==s){a.lca=l;break}if(l==this.rootGraph)break;if(a.lca!=null)throw"assert failed";a.targetInLca=l.getParent(),l=a.targetInLca.getOwner()}if(s==this.rootGraph)break;if(a.lca==null)a.sourceInLca=s.getParent(),s=a.sourceInLca.getOwner()}if(a.lca==null)throw"assert failed"}},u.prototype.calcLowestCommonAncestor=function(a,n){if(a==n)return a.getOwner();var o=a.getOwner();do{if(o==null)break;var s=n.getOwner();do{if(s==null)break;if(s==o)return s;s=s.getParent().getOwner()}while(!0);o=o.getParent().getOwner()}while(!0);return o},u.prototype.calcInclusionTreeDepths=function(a,n){if(a==null&&n==null)a=this.rootGraph,n=1;var o,s=a.getNodes(),l=s.length;for(var g=0;g<l;g++)if(o=s[g],o.inclusionTreeDepth=n,o.child!=null)this.calcInclusionTreeDepths(o.child,n+1)},u.prototype.includesInvalidEdge=function(){var a,n=this.edges.length;for(var o=0;o<n;o++)if(a=this.edges[o],this.isOneAncestorOfOther(a.source,a.target))return!0;return!1},A.exports=u},function(A,e,t){var r=t(0);function i(){}for(var u in r)i[u]=r[u];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=0.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=0.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=0.3,i.COOLING_ADAPTATION_FACTOR=0.33,i.ADAPTATION_LOWER_NODE_LIMIT=1000,i.ADAPTATION_UPPER_NODE_LIMIT=5000,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=0.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,A.exports=i},function(A,e,t){var r=t(12);function i(){}i.calcSeparationAmount=function(u,a,n,o){if(!u.intersects(a))throw"assert failed";var s=[,,];if(this.decideDirectionsForOverlappingNodes(u,a,s),n[0]=Math.min(u.getRight(),a.getRight())-Math.max(u.x,a.x),n[1]=Math.min(u.getBottom(),a.getBottom())-Math.max(u.y,a.y),u.getX()<=a.getX()&&u.getRight()>=a.getRight())n[0]+=Math.min(a.getX()-u.getX(),u.getRight()-a.getRight());else if(a.getX()<=u.getX()&&a.getRight()>=u.getRight())n[0]+=Math.min(u.getX()-a.getX(),a.getRight()-u.getRight());if(u.getY()<=a.getY()&&u.getBottom()>=a.getBottom())n[1]+=Math.min(a.getY()-u.getY(),u.getBottom()-a.getBottom());else if(a.getY()<=u.getY()&&a.getBottom()>=u.getBottom())n[1]+=Math.min(u.getY()-a.getY(),a.getBottom()-u.getBottom());var l=Math.abs((a.getCenterY()-u.getCenterY())/(a.getCenterX()-u.getCenterX()));if(a.getCenterY()===u.getCenterY()&&a.getCenterX()===u.getCenterX())l=1;var g=l*n[0],C=n[1]/l;if(n[0]<C)C=n[0];else g=n[1];n[0]=-1*s[0]*(C/2+o),n[1]=-1*s[1]*(g/2+o)},i.decideDirectionsForOverlappingNodes=function(u,a,n){if(u.getCenterX()<a.getCenterX())n[0]=-1;else n[0]=1;if(u.getCenterY()<a.getCenterY())n[1]=-1;else n[1]=1},i.getIntersection2=function(u,a,n){var o=u.getCenterX(),s=u.getCenterY(),l=a.getCenterX(),g=a.getCenterY();if(u.intersects(a))return n[0]=o,n[1]=s,n[2]=l,n[3]=g,!0;var C=u.getX(),B=u.getY(),E=u.getRight(),d=u.getX(),I=u.getBottom(),h=u.getRight(),Q=u.getWidthHalf(),p=u.getHeightHalf(),m=a.getX(),f=a.getY(),D=a.getRight(),w=a.getX(),b=a.getBottom(),F=a.getRight(),v=a.getWidthHalf(),S=a.getHeightHalf(),x=!1,k=!1;if(o===l){if(s>g)return n[0]=o,n[1]=B,n[2]=l,n[3]=b,!1;else if(s<g)return n[0]=o,n[1]=I,n[2]=l,n[3]=f,!1}else if(s===g){if(o>l)return n[0]=C,n[1]=s,n[2]=D,n[3]=g,!1;else if(o<l)return n[0]=E,n[1]=s,n[2]=m,n[3]=g,!1}else{var T=u.height/u.width,R=a.height/a.width,L=(g-s)/(l-o),M=void 0,U=void 0,Y=void 0,H=void 0,J=void 0,K=void 0;if(-T===L)if(o>l)n[0]=d,n[1]=I,x=!0;else n[0]=E,n[1]=B,x=!0;else if(T===L)if(o>l)n[0]=C,n[1]=B,x=!0;else n[0]=h,n[1]=I,x=!0;if(-R===L)if(l>o)n[2]=w,n[3]=b,k=!0;else n[2]=D,n[3]=f,k=!0;else if(R===L)if(l>o)n[2]=m,n[3]=f,k=!0;else n[2]=F,n[3]=b,k=!0;if(x&&k)return!1;if(o>l)if(s>g)M=this.getCardinalDirection(T,L,4),U=this.getCardinalDirection(R,L,2);else M=this.getCardinalDirection(-T,L,3),U=this.getCardinalDirection(-R,L,1);else if(s>g)M=this.getCardinalDirection(-T,L,1),U=this.getCardinalDirection(-R,L,3);else M=this.getCardinalDirection(T,L,2),U=this.getCardinalDirection(R,L,4);if(!x)switch(M){case 1:H=B,Y=o+-p/L,n[0]=Y,n[1]=H;break;case 2:Y=h,H=s+Q*L,n[0]=Y,n[1]=H;break;case 3:H=I,Y=o+p/L,n[0]=Y,n[1]=H;break;case 4:Y=d,H=s+-Q*L,n[0]=Y,n[1]=H;break}if(!k)switch(U){case 1:K=f,J=l+-S/L,n[2]=J,n[3]=K;break;case 2:J=F,K=g+v*L,n[2]=J,n[3]=K;break;case 3:K=b,J=l+S/L,n[2]=J,n[3]=K;break;case 4:J=w,K=g+-v*L,n[2]=J,n[3]=K;break}}return!1},i.getCardinalDirection=function(u,a,n){if(u>a)return n;else return 1+n%4},i.getIntersection=function(u,a,n,o){if(o==null)return this.getIntersection2(u,a,n);var{x:s,y:l}=u,{x:g,y:C}=a,{x:B,y:E}=n,{x:d,y:I}=o,h=void 0,Q=void 0,p=void 0,m=void 0,f=void 0,D=void 0,w=void 0,b=void 0,F=void 0;if(p=C-l,f=s-g,w=g*l-s*C,m=I-E,D=B-d,b=d*E-B*I,F=p*D-m*f,F===0)return null;return h=(f*b-D*w)/F,Q=(m*w-p*b)/F,new r(h,Q)},i.angleOfVector=function(u,a,n,o){var s=void 0;if(u!==n){if(s=Math.atan((o-a)/(n-u)),n<u)s+=Math.PI;else if(o<a)s+=this.TWO_PI}else if(o<a)s=this.ONE_AND_HALF_PI;else s=this.HALF_PI;return s},i.doIntersect=function(u,a,n,o){var{x:s,y:l}=u,{x:g,y:C}=a,{x:B,y:E}=n,{x:d,y:I}=o,h=(g-s)*(I-E)-(d-B)*(C-l);if(h===0)return!1;else{var Q=((I-E)*(d-s)+(B-d)*(I-l))/h,p=((l-C)*(d-s)+(g-s)*(I-l))/h;return 0<Q&&Q<1&&0<p&&p<1}},i.HALF_PI=0.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,A.exports=i},function(A,e,t){function r(){}r.sign=function(i){if(i>0)return 1;else if(i<0)return-1;else return 0},r.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},r.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},A.exports=r},function(A,e,t){function r(){}r.MAX_VALUE=2147483647,r.MIN_VALUE=-2147483648,A.exports=r},function(A,e,t){var r=function(){function s(l,g){for(var C=0;C<g.length;C++){var B=g[C];if(B.enumerable=B.enumerable||!1,B.configurable=!0,"value"in B)B.writable=!0;Object.defineProperty(l,B.key,B)}}return function(l,g,C){if(g)s(l.prototype,g);if(C)s(l,C);return l}}();function i(s,l){if(!(s instanceof l))throw TypeError("Cannot call a class as a function")}var u=function(l){return{value:l,next:null,prev:null}},a=function(l,g,C,B){if(l!==null)l.next=g;else B.head=g;if(C!==null)C.prev=g;else B.tail=g;return g.prev=l,g.next=C,B.length++,g},n=function(l,g){var{prev:C,next:B}=l;if(C!==null)C.next=B;else g.head=B;if(B!==null)B.prev=C;else g.tail=C;return l.prev=l.next=null,g.length--,l},o=function(){function s(l){var g=this;if(i(this,s),this.length=0,this.head=null,this.tail=null,l!=null)l.forEach(function(C){return g.push(C)})}return r(s,[{key:"size",value:function(){return this.length}},{key:"insertBefore",value:function(g,C){return a(C.prev,u(g),C,this)}},{key:"insertAfter",value:function(g,C){return a(C,u(g),C.next,this)}},{key:"insertNodeBefore",value:function(g,C){return a(C.prev,g,C,this)}},{key:"insertNodeAfter",value:function(g,C){return a(C,g,C.next,this)}},{key:"push",value:function(g){return a(this.tail,u(g),null,this)}},{key:"unshift",value:function(g){return a(null,u(g),this.head,this)}},{key:"remove",value:function(g){return n(g,this)}},{key:"pop",value:function(){return n(this.tail,this).value}},{key:"popNode",value:function(){return n(this.tail,this)}},{key:"shift",value:function(){return n(this.head,this).value}},{key:"shiftNode",value:function(){return n(this.head,this)}},{key:"get_object_at",value:function(g){if(g<=this.length()){var C=1,B=this.head;while(C<g)B=B.next,C++;return B.value}}},{key:"set_object_at",value:function(g,C){if(g<=this.length()){var B=1,E=this.head;while(B<g)E=E.next,B++;E.value=C}}}]),s}();A.exports=o},function(A,e,t){function r(i,u,a){if(this.x=null,this.y=null,i==null&&u==null&&a==null)this.x=0,this.y=0;else if(typeof i=="number"&&typeof u=="number"&&a==null)this.x=i,this.y=u;else if(i.constructor.name=="Point"&&u==null&&a==null)a=i,this.x=a.x,this.y=a.y}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.getLocation=function(){return new r(this.x,this.y)},r.prototype.setLocation=function(i,u,a){if(i.constructor.name=="Point"&&u==null&&a==null)a=i,this.setLocation(a.x,a.y);else if(typeof i=="number"&&typeof u=="number"&&a==null)if(parseInt(i)==i&&parseInt(u)==u)this.move(i,u);else this.x=Math.floor(i+0.5),this.y=Math.floor(u+0.5)},r.prototype.move=function(i,u){this.x=i,this.y=u},r.prototype.translate=function(i,u){this.x+=i,this.y+=u},r.prototype.equals=function(i){if(i.constructor.name=="Point"){var u=i;return this.x==u.x&&this.y==u.y}return this==i},r.prototype.toString=function(){return new r().constructor.name+"[x="+this.x+",y="+this.y+"]"},A.exports=r},function(A,e,t){function r(i,u,a,n){if(this.x=0,this.y=0,this.width=0,this.height=0,i!=null&&u!=null&&a!=null&&n!=null)this.x=i,this.y=u,this.width=a,this.height=n}r.prototype.getX=function(){return this.x},r.prototype.setX=function(i){this.x=i},r.prototype.getY=function(){return this.y},r.prototype.setY=function(i){this.y=i},r.prototype.getWidth=function(){return this.width},r.prototype.setWidth=function(i){this.width=i},r.prototype.getHeight=function(){return this.height},r.prototype.setHeight=function(i){this.height=i},r.prototype.getRight=function(){return this.x+this.width},r.prototype.getBottom=function(){return this.y+this.height},r.prototype.intersects=function(i){if(this.getRight()<i.x)return!1;if(this.getBottom()<i.y)return!1;if(i.getRight()<this.x)return!1;if(i.getBottom()<this.y)return!1;return!0},r.prototype.getCenterX=function(){return this.x+this.width/2},r.prototype.getMinX=function(){return this.getX()},r.prototype.getMaxX=function(){return this.getX()+this.width},r.prototype.getCenterY=function(){return this.y+this.height/2},r.prototype.getMinY=function(){return this.getY()},r.prototype.getMaxY=function(){return this.getY()+this.height},r.prototype.getWidthHalf=function(){return this.width/2},r.prototype.getHeightHalf=function(){return this.height/2},A.exports=r},function(A,e,t){var r=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(u){return typeof u}:function(u){return u&&typeof Symbol==="function"&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u};function i(){}i.lastID=0,i.createID=function(u){if(i.isPrimitive(u))return u;if(u.uniqueID!=null)return u.uniqueID;return u.uniqueID=i.getString(),i.lastID++,u.uniqueID},i.getString=function(u){if(u==null)u=i.lastID;return"Object#"+u},i.isPrimitive=function(u){var a=typeof u>"u"?"undefined":r(u);return u==null||a!="object"&&a!="function"},A.exports=i},function(A,e,t){function r(B){if(Array.isArray(B)){for(var E=0,d=Array(B.length);E<B.length;E++)d[E]=B[E];return d}else return Array.from(B)}var i=t(0),u=t(6),a=t(3),n=t(1),o=t(5),s=t(4),l=t(17),g=t(27);function C(B){if(g.call(this),this.layoutQuality=i.QUALITY,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.incremental=i.DEFAULT_INCREMENTAL,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES,this.edgeToDummyNodes=new Map,this.graphManager=new u(this),this.isLayoutFinished=!1,this.isSubLayout=!1,this.isRemoteUse=!1,B!=null)this.isRemoteUse=B}C.RANDOM_SEED=1,C.prototype=Object.create(g.prototype),C.prototype.getGraphManager=function(){return this.graphManager},C.prototype.getAllNodes=function(){return this.graphManager.getAllNodes()},C.prototype.getAllEdges=function(){return this.graphManager.getAllEdges()},C.prototype.getAllNodesToApplyGravitation=function(){return this.graphManager.getAllNodesToApplyGravitation()},C.prototype.newGraphManager=function(){var B=new u(this);return this.graphManager=B,B},C.prototype.newGraph=function(B){return new o(null,this.graphManager,B)},C.prototype.newNode=function(B){return new a(this.graphManager,B)},C.prototype.newEdge=function(B){return new n(null,null,B)},C.prototype.checkLayoutSuccess=function(){return this.graphManager.getRoot()==null||this.graphManager.getRoot().getNodes().length==0||this.graphManager.includesInvalidEdge()},C.prototype.runLayout=function(){if(this.isLayoutFinished=!1,this.tilingPreLayout)this.tilingPreLayout();this.initParameters();var B;if(this.checkLayoutSuccess())B=!1;else B=this.layout();if(i.ANIMATE==="during")return!1;if(B){if(!this.isSubLayout)this.doPostLayout()}if(this.tilingPostLayout)this.tilingPostLayout();return this.isLayoutFinished=!0,B},C.prototype.doPostLayout=function(){if(!this.incremental)this.transform();this.update()},C.prototype.update2=function(){if(this.createBendsAsNeeded)this.createBendpointsFromDummyNodes(),this.graphManager.resetAllEdges();if(!this.isRemoteUse){var B,E=this.graphManager.getAllEdges();for(var d=0;d<E.length;d++)B=E[d];var I,h=this.graphManager.getRoot().getNodes();for(var d=0;d<h.length;d++)I=h[d];this.update(this.graphManager.getRoot())}},C.prototype.update=function(B){if(B==null)this.update2();else if(B instanceof a){var E=B;if(E.getChild()!=null){var d=E.getChild().getNodes();for(var I=0;I<d.length;I++)update(d[I])}if(E.vGraphObject!=null){var h=E.vGraphObject;h.update(E)}}else if(B instanceof n){var Q=B;if(Q.vGraphObject!=null){var p=Q.vGraphObject;p.update(Q)}}else if(B instanceof o){var m=B;if(m.vGraphObject!=null){var f=m.vGraphObject;f.update(m)}}},C.prototype.initParameters=function(){if(!this.isSubLayout)this.layoutQuality=i.QUALITY,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.incremental=i.DEFAULT_INCREMENTAL,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES;if(this.animationDuringLayout)this.animationOnLayout=!1},C.prototype.transform=function(B){if(B==null)this.transform(new s(0,0));else{var E=new l,d=this.graphManager.getRoot().updateLeftTop();if(d!=null){E.setWorldOrgX(B.x),E.setWorldOrgY(B.y),E.setDeviceOrgX(d.x),E.setDeviceOrgY(d.y);var I=this.getAllNodes(),h;for(var Q=0;Q<I.length;Q++)h=I[Q],h.transform(E)}}},C.prototype.positionNodesRandomly=function(B){if(B==null)this.positionNodesRandomly(this.getGraphManager().getRoot()),this.getGraphManager().getRoot().updateBounds(!0);else{var E,d,I=B.getNodes();for(var h=0;h<I.length;h++)if(E=I[h],d=E.getChild(),d==null)E.scatter();else if(d.getNodes().length==0)E.scatter();else this.positionNodesRandomly(d),E.updateBounds()}},C.prototype.getFlatForest=function(){var B=[],E=!0,d=this.graphManager.getRoot().getNodes(),I=!0;for(var h=0;h<d.length;h++)if(d[h].getChild()!=null)I=!1;if(!I)return B;var Q=new Set,p=[],m=new Map,f=[];f=f.concat(d);while(f.length>0&&E){p.push(f[0]);while(p.length>0&&E){var D=p[0];p.splice(0,1),Q.add(D);var w=D.getEdges();for(var h=0;h<w.length;h++){var b=w[h].getOtherEnd(D);if(m.get(D)!=b)if(!Q.has(b))p.push(b),m.set(b,D);else{E=!1;break}}}if(!E)B=[];else{var F=[].concat(r(Q));B.push(F);for(var h=0;h<F.length;h++){var v=F[h],S=f.indexOf(v);if(S>-1)f.splice(S,1)}Q=new Set,m=new Map}}return B},C.prototype.createDummyNodesForBendpoints=function(B){var E=[],d=B.source,I=this.graphManager.calcLowestCommonAncestor(B.source,B.target);for(var h=0;h<B.bendpoints.length;h++){var Q=this.newNode(null);Q.setRect(new Point(0,0),new Dimension(1,1)),I.add(Q);var p=this.newEdge(null);this.graphManager.add(p,d,Q),E.add(Q),d=Q}var p=this.newEdge(null);if(this.graphManager.add(p,d,B.target),this.edgeToDummyNodes.set(B,E),B.isInterGraph())this.graphManager.remove(B);else I.remove(B);return E},C.prototype.createBendpointsFromDummyNodes=function(){var B=[];B=B.concat(this.graphManager.getAllEdges()),B=[].concat(r(this.edgeToDummyNodes.keys())).concat(B);for(var E=0;E<B.length;E++){var d=B[E];if(d.bendpoints.length>0){var I=this.edgeToDummyNodes.get(d);for(var h=0;h<I.length;h++){var Q=I[h],p=new s(Q.getCenterX(),Q.getCenterY()),m=d.bendpoints.get(h);m.x=p.x,m.y=p.y,Q.getOwner().remove(Q)}this.graphManager.add(d,d.source,d.target)}}},C.transform=function(B,E,d,I){if(d!=null&&I!=null){var h=E;if(B<=50){var Q=E/d;h-=(E-Q)/50*(50-B)}else{var p=E*I;h+=(p-E)/50*(B-50)}return h}else{var m,f;if(B<=50)m=9*E/500,f=E/10;else m=9*E/50,f=-8*E;return m*B+f}},C.findCenterOfTree=function(B){var E=[];E=E.concat(B);var d=[],I=new Map,h=!1,Q=null;if(E.length==1||E.length==2)h=!0,Q=E[0];for(var p=0;p<E.length;p++){var m=E[p],f=m.getNeighborsList().size;if(I.set(m,m.getNeighborsList().size),f==1)d.push(m)}var D=[];D=D.concat(d);while(!h){var w=[];w=w.concat(D),D=[];for(var p=0;p<E.length;p++){var m=E[p],b=E.indexOf(m);if(b>=0)E.splice(b,1);var F=m.getNeighborsList();F.forEach(function(x){if(d.indexOf(x)<0){var k=I.get(x),T=k-1;if(T==1)D.push(x);I.set(x,T)}})}if(d=d.concat(D),E.length==1||E.length==2)h=!0,Q=E[0]}return Q},C.prototype.setGraphManager=function(B){this.graphManager=B},A.exports=C},function(A,e,t){function r(){}r.seed=1,r.x=0,r.nextDouble=function(){return r.x=Math.sin(r.seed++)*1e4,r.x-Math.floor(r.x)},A.exports=r},function(A,e,t){var r=t(4);function i(u,a){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(u){this.lworldOrgX=u},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(u){this.lworldOrgY=u},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(u){this.lworldExtX=u},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(u){this.lworldExtY=u},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(u){this.ldeviceOrgX=u},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(u){this.ldeviceOrgY=u},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(u){this.ldeviceExtX=u},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(u){this.ldeviceExtY=u},i.prototype.transformX=function(u){var a=0,n=this.lworldExtX;if(n!=0)a=this.ldeviceOrgX+(u-this.lworldOrgX)*this.ldeviceExtX/n;return a},i.prototype.transformY=function(u){var a=0,n=this.lworldExtY;if(n!=0)a=this.ldeviceOrgY+(u-this.lworldOrgY)*this.ldeviceExtY/n;return a},i.prototype.inverseTransformX=function(u){var a=0,n=this.ldeviceExtX;if(n!=0)a=this.lworldOrgX+(u-this.ldeviceOrgX)*this.lworldExtX/n;return a},i.prototype.inverseTransformY=function(u){var a=0,n=this.ldeviceExtY;if(n!=0)a=this.lworldOrgY+(u-this.ldeviceOrgY)*this.lworldExtY/n;return a},i.prototype.inverseTransformPoint=function(u){var a=new r(this.inverseTransformX(u.x),this.inverseTransformY(u.y));return a},A.exports=i},function(A,e,t){function r(g){if(Array.isArray(g)){for(var C=0,B=Array(g.length);C<g.length;C++)B[C]=g[C];return B}else return Array.from(g)}var i=t(15),u=t(7),a=t(0),n=t(8),o=t(9);function s(){i.call(this),this.useSmartIdealEdgeLengthCalculation=u.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.idealEdgeLength=u.DEFAULT_EDGE_LENGTH,this.springConstant=u.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=u.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=u.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=u.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=u.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=u.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*u.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=u.MAX_ITERATIONS}s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.initParameters=function(){i.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=u.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},s.prototype.calcIdealEdgeLengths=function(){var g,C,B,E,d,I,h=this.getGraphManager().getAllEdges();for(var Q=0;Q<h.length;Q++)if(g=h[Q],g.idealLength=this.idealEdgeLength,g.isInterGraph){if(B=g.getSource(),E=g.getTarget(),d=g.getSourceInLca().getEstimatedSize(),I=g.getTargetInLca().getEstimatedSize(),this.useSmartIdealEdgeLengthCalculation)g.idealLength+=d+I-2*a.SIMPLE_NODE_SIZE;C=g.getLca().getInclusionTreeDepth(),g.idealLength+=u.DEFAULT_EDGE_LENGTH*u.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR*(B.getInclusionTreeDepth()+E.getInclusionTreeDepth()-2*C)}},s.prototype.initSpringEmbedder=function(){var g=this.getAllNodes().length;if(this.incremental){if(g>u.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(this.coolingFactor*u.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(g-u.ADAPTATION_LOWER_NODE_LIMIT)/(u.ADAPTATION_UPPER_NODE_LIMIT-u.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-u.COOLING_ADAPTATION_FACTOR));this.maxNodeDisplacement=u.MAX_NODE_DISPLACEMENT_INCREMENTAL}else{if(g>u.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(u.COOLING_ADAPTATION_FACTOR,1-(g-u.ADAPTATION_LOWER_NODE_LIMIT)/(u.ADAPTATION_UPPER_NODE_LIMIT-u.ADAPTATION_LOWER_NODE_LIMIT)*(1-u.COOLING_ADAPTATION_FACTOR));else this.coolingFactor=1;this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=u.MAX_NODE_DISPLACEMENT}this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},s.prototype.calcSpringForces=function(){var g=this.getAllEdges(),C;for(var B=0;B<g.length;B++)C=g[B],this.calcSpringForce(C,C.idealLength)},s.prototype.calcRepulsionForces=function(){var g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,B,E,d,I,h=this.getAllNodes(),Q;if(this.useFRGridVariant){if(this.totalIterations%u.GRID_CALCULATION_CHECK_PERIOD==1&&g)this.updateGrid();Q=new Set;for(B=0;B<h.length;B++)d=h[B],this.calculateRepulsionForceOfANode(d,Q,g,C),Q.add(d)}else for(B=0;B<h.length;B++){d=h[B];for(E=B+1;E<h.length;E++){if(I=h[E],d.getOwner()!=I.getOwner())continue;this.calcRepulsionForce(d,I)}}},s.prototype.calcGravitationalForces=function(){var g,C=this.getAllNodesToApplyGravitation();for(var B=0;B<C.length;B++)g=C[B],this.calcGravitationalForce(g)},s.prototype.moveNodes=function(){var g=this.getAllNodes(),C;for(var B=0;B<g.length;B++)C=g[B],C.move()},s.prototype.calcSpringForce=function(g,C){var B=g.getSource(),E=g.getTarget(),d,I,h,Q;if(this.uniformLeafNodeSizes&&B.getChild()==null&&E.getChild()==null)g.updateLengthSimple();else if(g.updateLength(),g.isOverlapingSourceAndTarget)return;if(d=g.getLength(),d==0)return;I=this.springConstant*(d-C),h=I*(g.lengthX/d),Q=I*(g.lengthY/d),B.springForceX+=h,B.springForceY+=Q,E.springForceX-=h,E.springForceY-=Q},s.prototype.calcRepulsionForce=function(g,C){var B=g.getRect(),E=C.getRect(),d=[,,],I=[,,,,],h,Q,p,m,f,D,w;if(B.intersects(E)){n.calcSeparationAmount(B,E,d,u.DEFAULT_EDGE_LENGTH/2),D=2*d[0],w=2*d[1];var b=g.noOfChildren*C.noOfChildren/(g.noOfChildren+C.noOfChildren);g.repulsionForceX-=b*D,g.repulsionForceY-=b*w,C.repulsionForceX+=b*D,C.repulsionForceY+=b*w}else{if(this.uniformLeafNodeSizes&&g.getChild()==null&&C.getChild()==null)h=E.getCenterX()-B.getCenterX(),Q=E.getCenterY()-B.getCenterY();else n.getIntersection(B,E,I),h=I[2]-I[0],Q=I[3]-I[1];if(Math.abs(h)<u.MIN_REPULSION_DIST)h=o.sign(h)*u.MIN_REPULSION_DIST;if(Math.abs(Q)<u.MIN_REPULSION_DIST)Q=o.sign(Q)*u.MIN_REPULSION_DIST;p=h*h+Q*Q,m=Math.sqrt(p),f=this.repulsionConstant*g.noOfChildren*C.noOfChildren/p,D=f*h/m,w=f*Q/m,g.repulsionForceX-=D,g.repulsionForceY-=w,C.repulsionForceX+=D,C.repulsionForceY+=w}},s.prototype.calcGravitationalForce=function(g){var C,B,E,d,I,h,Q,p;if(C=g.getOwner(),B=(C.getRight()+C.getLeft())/2,E=(C.getTop()+C.getBottom())/2,d=g.getCenterX()-B,I=g.getCenterY()-E,h=Math.abs(d)+g.getWidth()/2,Q=Math.abs(I)+g.getHeight()/2,g.getOwner()==this.graphManager.getRoot()){if(p=C.getEstimatedSize()*this.gravityRangeFactor,h>p||Q>p)g.gravitationForceX=-this.gravityConstant*d,g.gravitationForceY=-this.gravityConstant*I}else if(p=C.getEstimatedSize()*this.compoundGravityRangeFactor,h>p||Q>p)g.gravitationForceX=-this.gravityConstant*d*this.compoundGravityConstant,g.gravitationForceY=-this.gravityConstant*I*this.compoundGravityConstant},s.prototype.isConverged=function(){var g,C=!1;if(this.totalIterations>this.maxIterations/3)C=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2;return g=this.totalDisplacement<this.totalDisplacementThreshold,this.oldTotalDisplacement=this.totalDisplacement,g||C},s.prototype.animate=function(){if(this.animationDuringLayout&&!this.isSubLayout)if(this.notAnimatedIterations==this.animationPeriod)this.update(),this.notAnimatedIterations=0;else this.notAnimatedIterations++},s.prototype.calcNoOfChildrenForAllNodes=function(){var g,C=this.graphManager.getAllNodes();for(var B=0;B<C.length;B++)g=C[B],g.noOfChildren=g.getNoOfChildren()},s.prototype.calcGrid=function(g){var C=0,B=0;C=parseInt(Math.ceil((g.getRight()-g.getLeft())/this.repulsionRange)),B=parseInt(Math.ceil((g.getBottom()-g.getTop())/this.repulsionRange));var E=Array(C);for(var d=0;d<C;d++)E[d]=Array(B);for(var d=0;d<C;d++)for(var I=0;I<B;I++)E[d][I]=[];return E},s.prototype.addNodeToGrid=function(g,C,B){var E=0,d=0,I=0,h=0;E=parseInt(Math.floor((g.getRect().x-C)/this.repulsionRange)),d=parseInt(Math.floor((g.getRect().width+g.getRect().x-C)/this.repulsionRange)),I=parseInt(Math.floor((g.getRect().y-B)/this.repulsionRange)),h=parseInt(Math.floor((g.getRect().height+g.getRect().y-B)/this.repulsionRange));for(var Q=E;Q<=d;Q++)for(var p=I;p<=h;p++)this.grid[Q][p].push(g),g.setGridCoordinates(E,d,I,h)},s.prototype.updateGrid=function(){var g,C,B=this.getAllNodes();this.grid=this.calcGrid(this.graphManager.getRoot());for(g=0;g<B.length;g++)C=B[g],this.addNodeToGrid(C,this.graphManager.getRoot().getLeft(),this.graphManager.getRoot().getTop())},s.prototype.calculateRepulsionForceOfANode=function(g,C,B,E){if(this.totalIterations%u.GRID_CALCULATION_CHECK_PERIOD==1&&B||E){var d=new Set;g.surrounding=[];var I,h=this.grid;for(var Q=g.startX-1;Q<g.finishX+2;Q++)for(var p=g.startY-1;p<g.finishY+2;p++)if(!(Q<0||p<0||Q>=h.length||p>=h[0].length))for(var m=0;m<h[Q][p].length;m++){if(I=h[Q][p][m],g.getOwner()!=I.getOwner()||g==I)continue;if(!C.has(I)&&!d.has(I)){var f=Math.abs(g.getCenterX()-I.getCenterX())-(g.getWidth()/2+I.getWidth()/2),D=Math.abs(g.getCenterY()-I.getCenterY())-(g.getHeight()/2+I.getHeight()/2);if(f<=this.repulsionRange&&D<=this.repulsionRange)d.add(I)}}g.surrounding=[].concat(r(d))}for(Q=0;Q<g.surrounding.length;Q++)this.calcRepulsionForce(g,g.surrounding[Q])},s.prototype.calcRepulsionRange=function(){return 0},A.exports=s},function(A,e,t){var r=t(1),i=t(7);function u(n,o,s){r.call(this,n,o,s),this.idealLength=i.DEFAULT_EDGE_LENGTH}u.prototype=Object.create(r.prototype);for(var a in r)u[a]=r[a];A.exports=u},function(A,e,t){var r=t(3);function i(a,n,o,s){r.call(this,a,n,o,s),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0,this.startX=0,this.finishX=0,this.startY=0,this.finishY=0,this.surrounding=[]}i.prototype=Object.create(r.prototype);for(var u in r)i[u]=r[u];i.prototype.setGridCoordinates=function(a,n,o,s){this.startX=a,this.finishX=n,this.startY=o,this.finishY=s},A.exports=i},function(A,e,t){function r(i,u){if(this.width=0,this.height=0,i!==null&&u!==null)this.height=u,this.width=i}r.prototype.getWidth=function(){return this.width},r.prototype.setWidth=function(i){this.width=i},r.prototype.getHeight=function(){return this.height},r.prototype.setHeight=function(i){this.height=i},A.exports=r},function(A,e,t){var r=t(14);function i(){this.map={},this.keys=[]}i.prototype.put=function(u,a){var n=r.createID(u);if(!this.contains(n))this.map[n]=a,this.keys.push(u)},i.prototype.contains=function(u){var a=r.createID(u);return this.map[u]!=null},i.prototype.get=function(u){var a=r.createID(u);return this.map[a]},i.prototype.keySet=function(){return this.keys},A.exports=i},function(A,e,t){var r=t(14);function i(){this.set={}}i.prototype.add=function(u){var a=r.createID(u);if(!this.contains(a))this.set[a]=u},i.prototype.remove=function(u){delete this.set[r.createID(u)]},i.prototype.clear=function(){this.set={}},i.prototype.contains=function(u){return this.set[r.createID(u)]==u},i.prototype.isEmpty=function(){return this.size()===0},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAllTo=function(u){var a=Object.keys(this.set),n=a.length;for(var o=0;o<n;o++)u.push(this.set[a[o]])},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAll=function(u){var a=u.length;for(var n=0;n<a;n++){var o=u[n];this.add(o)}},A.exports=i},function(A,e,t){var r=function(){function n(o,s){for(var l=0;l<s.length;l++){var g=s[l];if(g.enumerable=g.enumerable||!1,g.configurable=!0,"value"in g)g.writable=!0;Object.defineProperty(o,g.key,g)}}return function(o,s,l){if(s)n(o.prototype,s);if(l)n(o,l);return o}}();function i(n,o){if(!(n instanceof o))throw TypeError("Cannot call a class as a function")}var u=t(11),a=function(){function n(o,s){if(i(this,n),s!==null||s!==void 0)this.compareFunction=this._defaultCompareFunction;var l=void 0;if(o instanceof u)l=o.size();else l=o.length;this._quicksort(o,0,l-1)}return r(n,[{key:"_quicksort",value:function(s,l,g){if(l<g){var C=this._partition(s,l,g);this._quicksort(s,l,C),this._quicksort(s,C+1,g)}}},{key:"_partition",value:function(s,l,g){var C=this._get(s,l),B=l,E=g;while(!0){while(this.compareFunction(C,this._get(s,E)))E--;while(this.compareFunction(this._get(s,B),C))B++;if(B<E)this._swap(s,B,E),B++,E--;else return E}}},{key:"_get",value:function(s,l){if(s instanceof u)return s.get_object_at(l);else return s[l]}},{key:"_set",value:function(s,l,g){if(s instanceof u)s.set_object_at(l,g);else s[l]=g}},{key:"_swap",value:function(s,l,g){var C=this._get(s,l);this._set(s,l,this._get(s,g)),this._set(s,g,C)}},{key:"_defaultCompareFunction",value:function(s,l){return l>s}}]),n}();A.exports=a},function(A,e,t){var r=function(){function a(n,o){for(var s=0;s<o.length;s++){var l=o[s];if(l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l)l.writable=!0;Object.defineProperty(n,l.key,l)}}return function(n,o,s){if(o)a(n.prototype,o);if(s)a(n,s);return n}}();function i(a,n){if(!(a instanceof n))throw TypeError("Cannot call a class as a function")}var u=function(){function a(n,o){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,g=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,a),this.sequence1=n,this.sequence2=o,this.match_score=s,this.mismatch_penalty=l,this.gap_penalty=g,this.iMax=n.length+1,this.jMax=o.length+1,this.grid=Array(this.iMax);for(var C=0;C<this.iMax;C++){this.grid[C]=Array(this.jMax);for(var B=0;B<this.jMax;B++)this.grid[C][B]=0}this.tracebackGrid=Array(this.iMax);for(var E=0;E<this.iMax;E++){this.tracebackGrid[E]=Array(this.jMax);for(var d=0;d<this.jMax;d++)this.tracebackGrid[E][d]=[null,null,null]}this.alignments=[],this.score=-1,this.computeGrids()}return r(a,[{key:"getScore",value:function(){return this.score}},{key:"getAlignments",value:function(){return this.alignments}},{key:"computeGrids",value:function(){for(var o=1;o<this.jMax;o++)this.grid[0][o]=this.grid[0][o-1]+this.gap_penalty,this.tracebackGrid[0][o]=[!1,!1,!0];for(var s=1;s<this.iMax;s++)this.grid[s][0]=this.grid[s-1][0]+this.gap_penalty,this.tracebackGrid[s][0]=[!1,!0,!1];for(var l=1;l<this.iMax;l++)for(var g=1;g<this.jMax;g++){var C=void 0;if(this.sequence1[l-1]===this.sequence2[g-1])C=this.grid[l-1][g-1]+this.match_score;else C=this.grid[l-1][g-1]+this.mismatch_penalty;var B=this.grid[l-1][g]+this.gap_penalty,E=this.grid[l][g-1]+this.gap_penalty,d=[C,B,E],I=this.arrayAllMaxIndexes(d);this.grid[l][g]=d[I[0]],this.tracebackGrid[l][g]=[I.includes(0),I.includes(1),I.includes(2)]}this.score=this.grid[this.iMax-1][this.jMax-1]}},{key:"alignmentTraceback",value:function(){var o=[];o.push({pos:[this.sequence1.length,this.sequence2.length],seq1:"",seq2:""});while(o[0]){var s=o[0],l=this.tracebackGrid[s.pos[0]][s.pos[1]];if(l[0])o.push({pos:[s.pos[0]-1,s.pos[1]-1],seq1:this.sequence1[s.pos[0]-1]+s.seq1,seq2:this.sequence2[s.pos[1]-1]+s.seq2});if(l[1])o.push({pos:[s.pos[0]-1,s.pos[1]],seq1:this.sequence1[s.pos[0]-1]+s.seq1,seq2:"-"+s.seq2});if(l[2])o.push({pos:[s.pos[0],s.pos[1]-1],seq1:"-"+s.seq1,seq2:this.sequence2[s.pos[1]-1]+s.seq2});if(s.pos[0]===0&&s.pos[1]===0)this.alignments.push({sequence1:s.seq1,sequence2:s.seq2});o.shift()}return this.alignments}},{key:"getAllIndexes",value:function(o,s){var l=[],g=-1;while((g=o.indexOf(s,g+1))!==-1)l.push(g);return l}},{key:"arrayAllMaxIndexes",value:function(o){return this.getAllIndexes(o,Math.max.apply(null,o))}}]),a}();A.exports=u},function(A,e,t){var r=function(){return};r.FDLayout=t(18),r.FDLayoutConstants=t(7),r.FDLayoutEdge=t(19),r.FDLayoutNode=t(20),r.DimensionD=t(21),r.HashMap=t(22),r.HashSet=t(23),r.IGeometry=t(8),r.IMath=t(9),r.Integer=t(10),r.Point=t(12),r.PointD=t(4),r.RandomSeed=t(16),r.RectangleD=t(13),r.Transform=t(17),r.UniqueIDGeneretor=t(14),r.Quicksort=t(24),r.LinkedList=t(11),r.LGraphObject=t(2),r.LGraph=t(5),r.LEdge=t(1),r.LGraphManager=t(6),r.LNode=t(3),r.Layout=t(15),r.LayoutConstants=t(0),r.NeedlemanWunsch=t(25),A.exports=r},function(A,e,t){function r(){this.listeners=[]}var i=r.prototype;i.addListener=function(u,a){this.listeners.push({event:u,callback:a})},i.removeListener=function(u,a){for(var n=this.listeners.length;n>=0;n--){var o=this.listeners[n];if(o.event===u&&o.callback===a)this.listeners.splice(n,1)}},i.emit=function(u,a){for(var n=0;n<this.listeners.length;n++){var o=this.listeners[n];if(u===o.event)o.callback(a)}},A.exports=r}])})});var cnA=wu(function(oF,gnA){(function(e,t){if(typeof oF==="object"&&typeof gnA==="object")gnA.exports=t(lnA());else if(typeof define==="function"&&define.amd)define(["layout-base"],t);else if(typeof oF==="object")oF.coseBase=t(lnA());else e.coseBase=t(e.layoutBase)})(oF,function(A){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var u=t[i]={i,l:!1,exports:{}};return e[i].call(u.exports,u,u.exports,r),u.l=!0,u.exports}return r.m=e,r.c=t,r.i=function(i){return i},r.d=function(i,u,a){if(!r.o(i,u))Object.defineProperty(i,u,{configurable:!1,enumerable:!0,get:a})},r.n=function(i){var u=i&&i.__esModule?function(){return i.default}:function(){return i};return r.d(u,"a",u),u},r.o=function(i,u){return Object.prototype.hasOwnProperty.call(i,u)},r.p="",r(r.s=7)}([function(e,t){e.exports=A},function(e,t,r){var i=r(0).FDLayoutConstants;function u(){}for(var a in i)u[a]=i[a];u.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,u.DEFAULT_RADIAL_SEPARATION=i.DEFAULT_EDGE_LENGTH,u.DEFAULT_COMPONENT_SEPERATION=60,u.TILE=!0,u.TILING_PADDING_VERTICAL=10,u.TILING_PADDING_HORIZONTAL=10,u.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=u},function(e,t,r){var i=r(0).FDLayoutEdge;function u(n,o,s){i.call(this,n,o,s)}u.prototype=Object.create(i.prototype);for(var a in i)u[a]=i[a];e.exports=u},function(e,t,r){var i=r(0).LGraph;function u(n,o,s){i.call(this,n,o,s)}u.prototype=Object.create(i.prototype);for(var a in i)u[a]=i[a];e.exports=u},function(e,t,r){var i=r(0).LGraphManager;function u(n){i.call(this,n)}u.prototype=Object.create(i.prototype);for(var a in i)u[a]=i[a];e.exports=u},function(e,t,r){var i=r(0).FDLayoutNode,u=r(0).IMath;function a(o,s,l,g){i.call(this,o,s,l,g)}a.prototype=Object.create(i.prototype);for(var n in i)a[n]=i[n];a.prototype.move=function(){var o=this.graphManager.getLayout();if(this.displacementX=o.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=o.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>o.coolingFactor*o.maxNodeDisplacement)this.displacementX=o.coolingFactor*o.maxNodeDisplacement*u.sign(this.displacementX);if(Math.abs(this.displacementY)>o.coolingFactor*o.maxNodeDisplacement)this.displacementY=o.coolingFactor*o.maxNodeDisplacement*u.sign(this.displacementY);if(this.child==null)this.moveBy(this.displacementX,this.displacementY);else if(this.child.getNodes().length==0)this.moveBy(this.displacementX,this.displacementY);else this.propogateDisplacementToChildren(this.displacementX,this.displacementY);o.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},a.prototype.propogateDisplacementToChildren=function(o,s){var l=this.getChild().getNodes(),g;for(var C=0;C<l.length;C++)if(g=l[C],g.getChild()==null)g.moveBy(o,s),g.displacementX+=o,g.displacementY+=s;else g.propogateDisplacementToChildren(o,s)},a.prototype.setPred1=function(o){this.pred1=o},a.prototype.getPred1=function(){return pred1},a.prototype.getPred2=function(){return pred2},a.prototype.setNext=function(o){this.next=o},a.prototype.getNext=function(){return next},a.prototype.setProcessed=function(o){this.processed=o},a.prototype.isProcessed=function(){return processed},e.exports=a},function(e,t,r){var i=r(0).FDLayout,u=r(4),a=r(3),n=r(5),o=r(2),s=r(1),l=r(0).FDLayoutConstants,g=r(0).LayoutConstants,C=r(0).Point,B=r(0).PointD,E=r(0).Layout,d=r(0).Integer,I=r(0).IGeometry,h=r(0).LGraph,Q=r(0).Transform;function p(){i.call(this),this.toBeTiled={}}p.prototype=Object.create(i.prototype);for(var m in i)p[m]=i[m];p.prototype.newGraphManager=function(){var f=new u(this);return this.graphManager=f,f},p.prototype.newGraph=function(f){return new a(null,this.graphManager,f)},p.prototype.newNode=function(f){return new n(this.graphManager,f)},p.prototype.newEdge=function(f){return new o(null,null,f)},p.prototype.initParameters=function(){if(i.prototype.initParameters.call(this,arguments),!this.isSubLayout){if(s.DEFAULT_EDGE_LENGTH<10)this.idealEdgeLength=10;else this.idealEdgeLength=s.DEFAULT_EDGE_LENGTH;this.useSmartIdealEdgeLengthCalculation=s.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.springConstant=l.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=l.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=l.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=l.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=l.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1,this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/l.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=l.CONVERGENCE_CHECK_PERIOD/this.maxIterations,this.coolingAdjuster=1}},p.prototype.layout=function(){var f=g.DEFAULT_CREATE_BENDS_AS_NEEDED;if(f)this.createBendpoints(),this.graphManager.resetAllEdges();return this.level=0,this.classicLayout()},p.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),!this.incremental){var f=this.getFlatForest();if(f.length>0)this.positionNodesRadially(f);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var D=new Set(this.getAllNodes()),w=this.nodesWithGravity.filter(function(b){return D.has(b)});this.graphManager.setAllNodesToApplyGravitation(w),this.positionNodesRandomly()}}else if(s.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var D=new Set(this.getAllNodes()),w=this.nodesWithGravity.filter(function(v){return D.has(v)});this.graphManager.setAllNodesToApplyGravitation(w)}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},p.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%l.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.coolingCycle++,this.layoutQuality==0)this.coolingAdjuster=this.coolingCycle;else if(this.layoutQuality==1)this.coolingAdjuster=this.coolingCycle/3;this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var f=new Set(this.getAllNodes()),D=this.nodesWithGravity.filter(function(F){return f.has(F)});this.graphManager.setAllNodesToApplyGravitation(D),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;if(this.afterGrowthIterations%10==0)this.graphManager.updateBounds(),this.updateGrid();this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var w=!this.isTreeGrowing&&!this.isGrowthFinished,b=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(w,b),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},p.prototype.getPositionsData=function(){var f=this.graphManager.getAllNodes(),D={};for(var w=0;w<f.length;w++){var b=f[w].rect,F=f[w].id;D[F]={id:F,x:b.getCenterX(),y:b.getCenterY(),w:b.width,h:b.height}}return D},p.prototype.runSpringEmbedder=function(){this.initialAnimationPeriod=25,this.animationPeriod=this.initialAnimationPeriod;var f=!1;if(l.ANIMATE==="during")this.emit("layoutstarted");else{while(!f)f=this.tick();this.graphManager.updateBounds()}},p.prototype.calculateNodesToApplyGravitationTo=function(){var f=[],D,w=this.graphManager.getGraphs(),b=w.length,F;for(F=0;F<b;F++)if(D=w[F],D.updateConnected(),!D.isConnected)f=f.concat(D.getNodes());return f},p.prototype.createBendpoints=function(){var f=[];f=f.concat(this.graphManager.getAllEdges());var D=new Set,w;for(w=0;w<f.length;w++){var b=f[w];if(!D.has(b)){var F=b.getSource(),v=b.getTarget();if(F==v)b.getBendpoints().push(new B),b.getBendpoints().push(new B),this.createDummyNodesForBendpoints(b),D.add(b);else{var S=[];if(S=S.concat(F.getEdgeListToNode(v)),S=S.concat(v.getEdgeListToNode(F)),!D.has(S[0])){if(S.length>1){var x;for(x=0;x<S.length;x++){var k=S[x];k.getBendpoints().push(new B),this.createDummyNodesForBendpoints(k)}}S.forEach(function(T){D.add(T)})}}}if(D.size==f.length)break}},p.prototype.positionNodesRadially=function(f){var D=new C(0,0),w=Math.ceil(Math.sqrt(f.length)),b=0,F=0,v=0,S=new B(0,0);for(var x=0;x<f.length;x++){if(x%w==0){if(v=0,F=b,x!=0)F+=s.DEFAULT_COMPONENT_SEPERATION;b=0}var k=f[x],T=E.findCenterOfTree(k);if(D.x=v,D.y=F,S=p.radialLayout(k,T,D),S.y>b)b=Math.floor(S.y);v=Math.floor(S.x+s.DEFAULT_COMPONENT_SEPERATION)}this.transform(new B(g.WORLD_CENTER_X-S.x/2,g.WORLD_CENTER_Y-S.y/2))},p.radialLayout=function(f,D,w){var b=Math.max(this.maxDiagonalInTree(f),s.DEFAULT_RADIAL_SEPARATION);p.branchRadialLayout(D,null,0,359,0,b);var F=h.calculateBounds(f),v=new Q;v.setDeviceOrgX(F.getMinX()),v.setDeviceOrgY(F.getMinY()),v.setWorldOrgX(w.x),v.setWorldOrgY(w.y);for(var S=0;S<f.length;S++){var x=f[S];x.transform(v)}var k=new B(F.getMaxX(),F.getMaxY());return v.inverseTransformPoint(k)},p.branchRadialLayout=function(f,D,w,b,F,v){var S=(b-w+1)/2;if(S<0)S+=180;var x=(S+w)%360,k=x*I.TWO_PI/360,T=Math.cos(k),R=F*Math.cos(k),L=F*Math.sin(k);f.setCenter(R,L);var M=[];M=M.concat(f.getEdges());var U=M.length;if(D!=null)U--;var Y=0,H=M.length,J,K=f.getEdgesBetween(D);while(K.length>1){var O=K[0];K.splice(0,1);var _=M.indexOf(O);if(_>=0)M.splice(_,1);H--,U--}if(D!=null)J=(M.indexOf(K[0])+1)%H;else J=0;var z=Math.abs(b-w)/U;for(var j=J;Y!=U;j=++j%H){var q=M[j].getOtherEnd(f);if(q==D)continue;var CA=(w+Y*z)%360,tA=(CA+z)%360;p.branchRadialLayout(q,f,CA,tA,F+v,v),Y++}},p.maxDiagonalInTree=function(f){var D=d.MIN_VALUE;for(var w=0;w<f.length;w++){var b=f[w],F=b.getDiagonal();if(F>D)D=F}return D},p.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},p.prototype.groupZeroDegreeMembers=function(){var f=this,D={};this.memberGroups={},this.idToDummyNode={};var w=[],b=this.graphManager.getAllNodes();for(var F=0;F<b.length;F++){var v=b[F],S=v.getParent();if(this.getNodeDegreeWithChildren(v)===0&&(S.id==null||!this.getToBeTiled(S)))w.push(v)}for(var F=0;F<w.length;F++){var v=w[F],x=v.getParent().id;if(typeof D[x]>"u")D[x]=[];D[x]=D[x].concat(v)}Object.keys(D).forEach(function(k){if(D[k].length>1){var T="DummyCompound_"+k;f.memberGroups[T]=D[k];var R=D[k][0].getParent(),L=new n(f.graphManager);L.id=T,L.paddingLeft=R.paddingLeft||0,L.paddingRight=R.paddingRight||0,L.paddingBottom=R.paddingBottom||0,L.paddingTop=R.paddingTop||0,f.idToDummyNode[T]=L;var M=f.getGraphManager().add(f.newGraph(),L),U=R.getChild();U.add(L);for(var Y=0;Y<D[k].length;Y++){var H=D[k][Y];U.remove(H),M.add(H)}}})},p.prototype.clearCompounds=function(){var f={},D={};this.performDFSOnCompounds();for(var w=0;w<this.compoundOrder.length;w++)D[this.compoundOrder[w].id]=this.compoundOrder[w],f[this.compoundOrder[w].id]=[].concat(this.compoundOrder[w].getChild().getNodes()),this.graphManager.remove(this.compoundOrder[w].getChild()),this.compoundOrder[w].child=null;this.graphManager.resetAllNodes(),this.tileCompoundMembers(f,D)},p.prototype.clearZeroDegreeMembers=function(){var f=this,D=this.tiledZeroDegreePack=[];Object.keys(this.memberGroups).forEach(function(w){var b=f.idToDummyNode[w];D[w]=f.tileNodes(f.memberGroups[w],b.paddingLeft+b.paddingRight),b.rect.width=D[w].width,b.rect.height=D[w].height})},p.prototype.repopulateCompounds=function(){for(var f=this.compoundOrder.length-1;f>=0;f--){var D=this.compoundOrder[f],{id:w,paddingLeft:b,paddingTop:F}=D;this.adjustLocations(this.tiledMemberPack[w],D.rect.x,D.rect.y,b,F)}},p.prototype.repopulateZeroDegreeMembers=function(){var f=this,D=this.tiledZeroDegreePack;Object.keys(D).forEach(function(w){var b=f.idToDummyNode[w],{paddingLeft:F,paddingTop:v}=b;f.adjustLocations(D[w],b.rect.x,b.rect.y,F,v)})},p.prototype.getToBeTiled=function(f){var D=f.id;if(this.toBeTiled[D]!=null)return this.toBeTiled[D];var w=f.getChild();if(w==null)return this.toBeTiled[D]=!1,!1;var b=w.getNodes();for(var F=0;F<b.length;F++){var v=b[F];if(this.getNodeDegree(v)>0)return this.toBeTiled[D]=!1,!1;if(v.getChild()==null){this.toBeTiled[v.id]=!1;continue}if(!this.getToBeTiled(v))return this.toBeTiled[D]=!1,!1}return this.toBeTiled[D]=!0,!0},p.prototype.getNodeDegree=function(f){var D=f.id,w=f.getEdges(),b=0;for(var F=0;F<w.length;F++){var v=w[F];if(v.getSource().id!==v.getTarget().id)b=b+1}return b},p.prototype.getNodeDegreeWithChildren=function(f){var D=this.getNodeDegree(f);if(f.getChild()==null)return D;var w=f.getChild().getNodes();for(var b=0;b<w.length;b++){var F=w[b];D+=this.getNodeDegreeWithChildren(F)}return D},p.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},p.prototype.fillCompexOrderByDFS=function(f){for(var D=0;D<f.length;D++){var w=f[D];if(w.getChild()!=null)this.fillCompexOrderByDFS(w.getChild().getNodes());if(this.getToBeTiled(w))this.compoundOrder.push(w)}},p.prototype.adjustLocations=function(f,D,w,b,F){D+=b,w+=F;var v=D;for(var S=0;S<f.rows.length;S++){var x=f.rows[S];D=v;var k=0;for(var T=0;T<x.length;T++){var R=x[T];if(R.rect.x=D,R.rect.y=w,D+=R.rect.width+f.horizontalPadding,R.rect.height>k)k=R.rect.height}w+=k+f.verticalPadding}},p.prototype.tileCompoundMembers=function(f,D){var w=this;this.tiledMemberPack=[],Object.keys(f).forEach(function(b){var F=D[b];w.tiledMemberPack[b]=w.tileNodes(f[b],F.paddingLeft+F.paddingRight),F.rect.width=w.tiledMemberPack[b].width,F.rect.height=w.tiledMemberPack[b].height})},p.prototype.tileNodes=function(f,D){var{TILING_PADDING_VERTICAL:w,TILING_PADDING_HORIZONTAL:b}=s,F={rows:[],rowWidth:[],rowHeight:[],width:0,height:D,verticalPadding:w,horizontalPadding:b};f.sort(function(x,k){if(x.rect.width*x.rect.height>k.rect.width*k.rect.height)return-1;if(x.rect.width*x.rect.height<k.rect.width*k.rect.height)return 1;return 0});for(var v=0;v<f.length;v++){var S=f[v];if(F.rows.length==0)this.insertNodeToRow(F,S,0,D);else if(this.canAddHorizontal(F,S.rect.width,S.rect.height))this.insertNodeToRow(F,S,this.getShortestRowIndex(F),D);else this.insertNodeToRow(F,S,F.rows.length,D);this.shiftToLastRow(F)}return F},p.prototype.insertNodeToRow=function(f,D,w,b){var F=b;if(w==f.rows.length){var v=[];f.rows.push(v),f.rowWidth.push(F),f.rowHeight.push(0)}var S=f.rowWidth[w]+D.rect.width;if(f.rows[w].length>0)S+=f.horizontalPadding;if(f.rowWidth[w]=S,f.width<S)f.width=S;var x=D.rect.height;if(w>0)x+=f.verticalPadding;var k=0;if(x>f.rowHeight[w])k=f.rowHeight[w],f.rowHeight[w]=x,k=f.rowHeight[w]-k;f.height+=k,f.rows[w].push(D)},p.prototype.getShortestRowIndex=function(f){var D=-1,w=Number.MAX_VALUE;for(var b=0;b<f.rows.length;b++)if(f.rowWidth[b]<w)D=b,w=f.rowWidth[b];return D},p.prototype.getLongestRowIndex=function(f){var D=-1,w=Number.MIN_VALUE;for(var b=0;b<f.rows.length;b++)if(f.rowWidth[b]>w)D=b,w=f.rowWidth[b];return D},p.prototype.canAddHorizontal=function(f,D,w){var b=this.getShortestRowIndex(f);if(b<0)return!0;var F=f.rowWidth[b];if(F+f.horizontalPadding+D<=f.width)return!0;var v=0;if(f.rowHeight[b]<w){if(b>0)v=w+f.verticalPadding-f.rowHeight[b]}var S;if(f.width-F>=D+f.horizontalPadding)S=(f.height+v)/(F+D+f.horizontalPadding);else S=(f.height+v)/f.width;v=w+f.verticalPadding;var x;if(f.width<D)x=(f.height+v)/D;else x=(f.height+v)/f.width;if(x<1)x=1/x;if(S<1)S=1/S;return S<x},p.prototype.shiftToLastRow=function(f){var D=this.getLongestRowIndex(f),w=f.rowWidth.length-1,b=f.rows[D],F=b[b.length-1],v=F.width+f.horizontalPadding;if(f.width-f.rowWidth[w]>v&&D!=w){b.splice(-1,1),f.rows[w].push(F),f.rowWidth[D]=f.rowWidth[D]-v,f.rowWidth[w]=f.rowWidth[w]+v,f.width=f.rowWidth[instance.getLongestRowIndex(f)];var S=Number.MIN_VALUE;for(var x=0;x<b.length;x++)if(b[x].height>S)S=b[x].height;if(D>0)S+=f.verticalPadding;var k=f.rowHeight[D]+f.rowHeight[w];if(f.rowHeight[D]=S,f.rowHeight[w]<F.height+f.verticalPadding)f.rowHeight[w]=F.height+f.verticalPadding;var T=f.rowHeight[D]+f.rowHeight[w];f.height+=T-k,this.shiftToLastRow(f)}},p.prototype.tilingPreLayout=function(){if(s.TILE)this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers()},p.prototype.tilingPostLayout=function(){if(s.TILE)this.repopulateZeroDegreeMembers(),this.repopulateCompounds()},p.prototype.reduceTrees=function(){var f=[],D=!0,w;while(D){var b=this.graphManager.getAllNodes(),F=[];D=!1;for(var v=0;v<b.length;v++)if(w=b[v],w.getEdges().length==1&&!w.getEdges()[0].isInterGraph&&w.getChild()==null)F.push([w,w.getEdges()[0],w.getOwner()]),D=!0;if(D==!0){var S=[];for(var x=0;x<F.length;x++)if(F[x][0].getEdges().length==1)S.push(F[x]),F[x][0].getOwner().remove(F[x][0]);f.push(S),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()}}this.prunedNodesAll=f},p.prototype.growTree=function(f){var D=f.length,w=f[D-1],b;for(var F=0;F<w.length;F++)b=w[F],this.findPlaceforPrunedNode(b),b[2].add(b[0]),b[2].add(b[1],b[1].source,b[1].target);f.splice(f.length-1,1),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()},p.prototype.findPlaceforPrunedNode=function(f){var D,w,b=f[0];if(b==f[1].source)w=f[1].target;else w=f[1].source;var F=w.startX,v=w.finishX,S=w.startY,x=w.finishY,k=0,T=0,R=0,L=0,M=[k,R,T,L];if(S>0)for(var U=F;U<=v;U++)M[0]+=this.grid[U][S-1].length+this.grid[U][S].length-1;if(v<this.grid.length-1)for(var U=S;U<=x;U++)M[1]+=this.grid[v+1][U].length+this.grid[v][U].length-1;if(x<this.grid[0].length-1)for(var U=F;U<=v;U++)M[2]+=this.grid[U][x+1].length+this.grid[U][x].length-1;if(F>0)for(var U=S;U<=x;U++)M[3]+=this.grid[F-1][U].length+this.grid[F][U].length-1;var Y=d.MAX_VALUE,H,J;for(var K=0;K<M.length;K++)if(M[K]<Y)Y=M[K],H=1,J=K;else if(M[K]==Y)H++;if(H==3&&Y==0){if(M[0]==0&&M[1]==0&&M[2]==0)D=1;else if(M[0]==0&&M[1]==0&&M[3]==0)D=0;else if(M[0]==0&&M[2]==0&&M[3]==0)D=3;else if(M[1]==0&&M[2]==0&&M[3]==0)D=2}else if(H==2&&Y==0){var O=Math.floor(Math.random()*2);if(M[0]==0&&M[1]==0)if(O==0)D=0;else D=1;else if(M[0]==0&&M[2]==0)if(O==0)D=0;else D=2;else if(M[0]==0&&M[3]==0)if(O==0)D=0;else D=3;else if(M[1]==0&&M[2]==0)if(O==0)D=1;else D=2;else if(M[1]==0&&M[3]==0)if(O==0)D=1;else D=3;else if(O==0)D=2;else D=3}else if(H==4&&Y==0){var O=Math.floor(Math.random()*4);D=O}else D=J;if(D==0)b.setCenter(w.getCenterX(),w.getCenterY()-w.getHeight()/2-l.DEFAULT_EDGE_LENGTH-b.getHeight()/2);else if(D==1)b.setCenter(w.getCenterX()+w.getWidth()/2+l.DEFAULT_EDGE_LENGTH+b.getWidth()/2,w.getCenterY());else if(D==2)b.setCenter(w.getCenterX(),w.getCenterY()+w.getHeight()/2+l.DEFAULT_EDGE_LENGTH+b.getHeight()/2);else b.setCenter(w.getCenterX()-w.getWidth()/2-l.DEFAULT_EDGE_LENGTH-b.getWidth()/2,w.getCenterY())},e.exports=p},function(e,t,r){var i={};i.layoutBase=r(0),i.CoSEConstants=r(1),i.CoSEEdge=r(2),i.CoSEGraph=r(3),i.CoSEGraphManager=r(4),i.CoSELayout=r(6),i.CoSENode=r(5),e.exports=i}])})});var ZJA=wu(function(sF,CnA){(function(e,t){if(typeof sF==="object"&&typeof CnA==="object")CnA.exports=t(cnA());else if(typeof define==="function"&&define.amd)define(["cose-base"],t);else if(typeof sF==="object")sF.cytoscapeCoseBilkent=t(cnA());else e.cytoscapeCoseBilkent=t(e.coseBase)})(sF,function(A){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var u=t[i]={i,l:!1,exports:{}};return e[i].call(u.exports,u,u.exports,r),u.l=!0,u.exports}return r.m=e,r.c=t,r.i=function(i){return i},r.d=function(i,u,a){if(!r.o(i,u))Object.defineProperty(i,u,{configurable:!1,enumerable:!0,get:a})},r.n=function(i){var u=i&&i.__esModule?function(){return i.default}:function(){return i};return r.d(u,"a",u),u},r.o=function(i,u){return Object.prototype.hasOwnProperty.call(i,u)},r.p="",r(r.s=1)}([function(e,t){e.exports=A},function(e,t,r){var i=r(0).layoutBase.LayoutConstants,u=r(0).layoutBase.FDLayoutConstants,a=r(0).CoSEConstants,n=r(0).CoSELayout,o=r(0).CoSENode,s=r(0).layoutBase.PointD,l=r(0).layoutBase.DimensionD,g={ready:function(){},stop:function(){},quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:0.45,nestingFactor:0.1,gravity:0.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:0.5};function C(I,h){var Q={};for(var p in I)Q[p]=I[p];for(var p in h)Q[p]=h[p];return Q}function B(I){this.options=C(g,I),E(this.options)}var E=function(h){if(h.nodeRepulsion!=null)a.DEFAULT_REPULSION_STRENGTH=u.DEFAULT_REPULSION_STRENGTH=h.nodeRepulsion;if(h.idealEdgeLength!=null)a.DEFAULT_EDGE_LENGTH=u.DEFAULT_EDGE_LENGTH=h.idealEdgeLength;if(h.edgeElasticity!=null)a.DEFAULT_SPRING_STRENGTH=u.DEFAULT_SPRING_STRENGTH=h.edgeElasticity;if(h.nestingFactor!=null)a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=u.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=h.nestingFactor;if(h.gravity!=null)a.DEFAULT_GRAVITY_STRENGTH=u.DEFAULT_GRAVITY_STRENGTH=h.gravity;if(h.numIter!=null)a.MAX_ITERATIONS=u.MAX_ITERATIONS=h.numIter;if(h.gravityRange!=null)a.DEFAULT_GRAVITY_RANGE_FACTOR=u.DEFAULT_GRAVITY_RANGE_FACTOR=h.gravityRange;if(h.gravityCompound!=null)a.DEFAULT_COMPOUND_GRAVITY_STRENGTH=u.DEFAULT_COMPOUND_GRAVITY_STRENGTH=h.gravityCompound;if(h.gravityRangeCompound!=null)a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=u.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=h.gravityRangeCompound;if(h.initialEnergyOnIncremental!=null)a.DEFAULT_COOLING_FACTOR_INCREMENTAL=u.DEFAULT_COOLING_FACTOR_INCREMENTAL=h.initialEnergyOnIncremental;if(h.quality=="draft")i.QUALITY=0;else if(h.quality=="proof")i.QUALITY=2;else i.QUALITY=1;a.NODE_DIMENSIONS_INCLUDE_LABELS=u.NODE_DIMENSIONS_INCLUDE_LABELS=i.NODE_DIMENSIONS_INCLUDE_LABELS=h.nodeDimensionsIncludeLabels,a.DEFAULT_INCREMENTAL=u.DEFAULT_INCREMENTAL=i.DEFAULT_INCREMENTAL=!h.randomize,a.ANIMATE=u.ANIMATE=i.ANIMATE=h.animate,a.TILE=h.tile,a.TILING_PADDING_VERTICAL=typeof h.tilingPaddingVertical==="function"?h.tilingPaddingVertical.call():h.tilingPaddingVertical,a.TILING_PADDING_HORIZONTAL=typeof h.tilingPaddingHorizontal==="function"?h.tilingPaddingHorizontal.call():h.tilingPaddingHorizontal};B.prototype.run=function(){var I,h,Q=this.options,p=this.idToLNode={},m=this.layout=new n,f=this;f.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var D=m.newGraphManager();this.gm=D;var w=this.options.eles.nodes(),b=this.options.eles.edges();this.root=D.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(w),m);for(var F=0;F<b.length;F++){var v=b[F],S=this.idToLNode[v.data("source")],x=this.idToLNode[v.data("target")];if(S!==x&&S.getEdgesBetween(x).length==0){var k=D.add(m.newEdge(),S,x);k.id=v.id()}}var T=function(M,U){if(typeof M==="number")M=U;var Y=M.data("id"),H=f.idToLNode[Y];return{x:H.getRect().getCenterX(),y:H.getRect().getCenterY()}},R=function L(){var M=function(){if(Q.fit)Q.cy.fit(Q.eles,Q.padding);if(!I)I=!0,f.cy.one("layoutready",Q.ready),f.cy.trigger({type:"layoutready",layout:f})},U=f.options.refresh,Y;for(var H=0;H<U&&!Y;H++)Y=f.stopped||f.layout.tick();if(Y){if(m.checkLayoutSuccess()&&!m.isSubLayout)m.doPostLayout();if(m.tilingPostLayout)m.tilingPostLayout();if(m.isLayoutFinished=!0,f.options.eles.nodes().positions(T),M(),f.cy.one("layoutstop",f.options.stop),f.cy.trigger({type:"layoutstop",layout:f}),h)cancelAnimationFrame(h);I=!1;return}var J=f.layout.getPositionsData();Q.eles.nodes().positions(function(K,O){if(typeof K==="number")K=O;if(!K.isParent()){var _=K.id(),z=J[_],j=K;while(z==null)if(z=J[j.data("parent")]||J["DummyCompound_"+j.data("parent")],J[_]=z,j=j.parent()[0],j==null)break;if(z!=null)return{x:z.x,y:z.y};else return{x:K.position("x"),y:K.position("y")}}}),M(),h=requestAnimationFrame(L)};if(m.addListener("layoutstarted",function(){if(f.options.animate==="during")h=requestAnimationFrame(R)}),m.runLayout(),this.options.animate!=="during")f.options.eles.nodes().not(":parent").layoutPositions(f,f.options,T),I=!1;return this},B.prototype.getTopMostNodes=function(I){var h={};for(var Q=0;Q<I.length;Q++)h[I[Q].id()]=!0;var p=I.filter(function(m,f){if(typeof m==="number")m=f;var D=m.parent()[0];while(D!=null){if(h[D.id()])return!1;D=D.parent()[0]}return!0});return p},B.prototype.processChildrenList=function(I,h,Q){var p=h.length;for(var m=0;m<p;m++){var f=h[m],D=f.children(),w,b=f.layoutDimensions({nodeDimensionsIncludeLabels:this.options.nodeDimensionsIncludeLabels});if(f.outerWidth()!=null&&f.outerHeight()!=null)w=I.add(new o(Q.graphManager,new s(f.position("x")-b.w/2,f.position("y")-b.h/2),new l(parseFloat(b.w),parseFloat(b.h))));else w=I.add(new o(this.graphManager));if(w.id=f.data("id"),w.paddingLeft=parseInt(f.css("padding")),w.paddingTop=parseInt(f.css("padding")),w.paddingRight=parseInt(f.css("padding")),w.paddingBottom=parseInt(f.css("padding")),this.options.nodeDimensionsIncludeLabels){if(f.isParent()){var F=f.boundingBox({includeLabels:!0,includeNodes:!1}).w,v=f.boundingBox({includeLabels:!0,includeNodes:!1}).h,S=f.css("text-halign");w.labelWidth=F,w.labelHeight=v,w.labelPos=S}}if(this.idToLNode[f.data("id")]=w,isNaN(w.rect.x))w.rect.x=0;if(isNaN(w.rect.y))w.rect.y=0;if(D!=null&&D.length>0){var x=Q.getGraphManager().add(Q.newGraph(),w);this.processChildrenList(x,D,Q)}}},B.prototype.stop=function(){return this.stopped=!0,this};var d=function(h){h("layout","cose-bilkent",B)};if(typeof cytoscape<"u")d(cytoscape);e.exports=d}])})});var iOA={};yt(iOA,{render:()=>umt});function jJA(A,e){A.forEach((t)=>{let r={id:t.id,labelText:t.label,height:t.height,width:t.width,padding:t.padding??0};Object.keys(t).forEach((i)=>{if(!["id","label","height","width","padding","x","y"].includes(i))r[i]=t[i]}),e.add({group:"nodes",data:r,position:{x:t.x??0,y:t.y??0}})})}function XJA(A,e){A.forEach((t)=>{let r={id:t.id,source:t.start,target:t.end};Object.keys(t).forEach((i)=>{if(!["id","start","end"].includes(i))r[i]=t[i]}),e.add({group:"edges",data:r})})}function $JA(A){return new Promise((e)=>{let t=Qe("body").append("div").attr("id","cy").attr("style","display:none"),r=gc({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});t.remove(),jJA(A.nodes,r),XJA(A.edges,r),r.nodes().forEach(function(u){u.layoutDimensions=()=>{let a=u.data();return{w:a.width,h:a.height}}});let i={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};r.layout(i).run(),r.ready((u)=>{sA.info("Cytoscape ready",u),e(r)})})}function AOA(A){return A.nodes().map((e)=>{let t=e.data(),r=e.position(),i={id:t.id,x:r.x,y:r.y};return Object.keys(t).forEach((u)=>{if(u!=="id")i[u]=t[u]}),i})}function eOA(A){return A.edges().map((e)=>{let t=e.data(),r=e._private.rscratch,i={id:t.id,source:t.source,target:t.target,startX:r.startX,startY:r.startY,midX:r.midX,midY:r.midY,endX:r.endX,endY:r.endY};return Object.keys(t).forEach((u)=>{if(!["id","source","target"].includes(u))i[u]=t[u]}),i})}async function tOA(A,e){sA.debug("Starting cose-bilkent layout algorithm");try{rOA(A);let t=await $JA(A),r=AOA(t),i=eOA(t);return sA.debug(`Layout completed: ${r.length} nodes, ${i.length} edges`),{nodes:r,edges:i}}catch(t){throw sA.error("Error in cose-bilkent layout algorithm:",t),t}}function rOA(A){if(!A)throw Error("Layout data is required");if(!A.config)throw Error("Configuration is required in layout data");if(!A.rootNode)throw Error("Root node is required");if(!A.nodes||!Array.isArray(A.nodes))throw Error("No nodes found in layout data");if(!Array.isArray(A.edges))throw Error("Edges array is required in layout data");return!0}var VJA,imt,umt;var uOA=P(()=>{ir();Nt();onA();Pr();VJA=yu(ZJA(),1);gc.use(VJA.default);y(jJA,"addNodes");y(XJA,"addEdges");y($JA,"createCytoscapeInstance");y(AOA,"extractPositionedNodes");y(eOA,"extractPositionedEdges");y(tOA,"executeCoseBilkentLayout");y(rOA,"validateLayoutData");imt=y(async(A,e,{insertCluster:t,insertEdge:r,insertEdgeLabel:i,insertMarkers:u,insertNode:a,log:n,positionEdgeLabel:o},{algorithm:s})=>{let l={},g={},C=e.select("g");u(C,A.markers,A.type,A.diagramId);let B=C.insert("g").attr("class","subgraphs"),E=C.insert("g").attr("class","edgePaths"),d=C.insert("g").attr("class","edgeLabels"),I=C.insert("g").attr("class","nodes");n.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(A.nodes.map(async(p)=>{if(p.isGroup){let m={...p};g[p.id]=m,l[p.id]=m,await t(B,p)}else{let m={...p};l[p.id]=m;let f=await a(I,p,{config:A.config,dir:A.direction||"TB"}),D=f.node().getBBox();m.width=D.width,m.height=D.height,m.domId=f,n.debug(`Node ${p.id} dimensions: ${D.width}x${D.height}`)}})),n.debug("Running cose-bilkent layout algorithm");let h={...A,nodes:A.nodes.map((p)=>{let m=l[p.id];return{...p,width:m.width,height:m.height}})},Q=await tOA(h,A.config);n.debug("Positioning nodes based on layout results"),Q.nodes.forEach((p)=>{let m=l[p.id];if(m?.domId)m.domId.attr("transform",`translate(${p.x}, ${p.y})`),m.x=p.x,m.y=p.y,n.debug(`Positioned node ${m.id} at center (${p.x}, ${p.y})`)}),Q.edges.forEach((p)=>{let m=A.edges.find((f)=>f.id===p.id);if(m)m.points=[{x:p.startX,y:p.startY},{x:p.midX,y:p.midY},{x:p.endX,y:p.endY}]}),n.debug("Inserting and positioning edges"),await Promise.all(A.edges.map(async(p)=>{let m=await i(d,p),f=l[p.start??""],D=l[p.end??""];if(f&&D){let w=Q.edges.find((b)=>b.id===p.id);if(w){n.debug("APA01 positionedEdge",w);let b={...p},F=r(E,b,g,A.type,f,D,A.diagramId);o(b,F)}else{let b={...p,points:[{x:f.x||0,y:f.y||0},{x:D.x||0,y:D.y||0}]},F=r(E,b,g,A.type,f,D,A.diagramId);o(b,F)}}})),n.debug("Cose-bilkent rendering completed")},"render"),umt=imt});var amt,lF,BnA,nmt,cc,ME;var hl=P(()=>{ol();u0();ai();rr();ir();Nt();amt={common:_e,getConfig:st,insertCluster:JQ,insertEdge:Iy,insertEdgeLabel:Sf,insertMarkers:hy,insertNode:wI,interpolateToCurve:$G,labelHelper:Ir,log:sA,positionEdgeLabel:xU},lF={},BnA=y((A)=>{for(let e of A)lF[e.name]=e},"registerLayoutLoaders"),nmt=y(()=>{BnA([{name:"dagre",loader:y(async()=>await Promise.resolve().then(() => (NUA(),RUA)),"loader")},{name:"swimlane",loader:y(async()=>await Promise.resolve().then(() => (bTA(),wTA)),"loader")},{name:"cose-bilkent",loader:y(async()=>await Promise.resolve().then(() => (uOA(),iOA)),"loader")}])},"registerDefaultLayoutLoaders");nmt();cc=y(async(A,e,t)=>{if(!(A.layoutAlgorithm in lF))throw Error(`Unknown layout algorithm: ${A.layoutAlgorithm}`);if(A.diagramId)for(let g of A.nodes){let C=g.domId||g.id;g.domId=`${A.diagramId}-${C}`}let r=lF[A.layoutAlgorithm],i=await r.loader(),{theme:u,themeVariables:a}=A.config,{useGradient:n,gradientStart:o,gradientStop:s}=a,l=e.attr("id");if(e.append("defs").append("filter").attr("id",`${l}-drop-shadow`).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${u?.includes("dark")?"#FFFFFF":"#000000"}`),e.append("defs").append("filter").attr("id",`${l}-drop-shadow-small`).attr("height","150%").attr("width","150%").append("feDropShadow").attr("dx","2").attr("dy","2").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${u?.includes("dark")?"#FFFFFF":"#000000"}`),n){let g=e.append("linearGradient").attr("id",e.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");g.append("svg:stop").attr("offset","0%").attr("stop-color",o).attr("stop-opacity",1),g.append("svg:stop").attr("offset","100%").attr("stop-color",s).attr("stop-opacity",1)}return i.render(A,e,amt,{algorithm:r.algorithm},t)},"render"),ME=y((A="",{fallback:e="dagre"}={})=>{if(A in lF)return A;if(e in lF)return sA.warn(`Layout algorithm ${A} is not registered. Using ${e} as fallback.`),e;throw Error(`Both layout algorithms ${A} and ${e} are not registered.`)},"getRegisteredLayoutAlgorithm")});var mw="comm",cY="rule",CY="decl",aOA="@media",nOA="@import",oOA="@supports",sOA="@namespace",gF="@keyframes",BY="@layer",lOA="@scope";function EY(A){return A.trim()}function cF(A,e,t){return A.replace(e,t)}function HI(A,e){return A.charCodeAt(e)|0}function KI(A,e,t){return A.slice(e,t)}function Ql(A){return A.length}function dY(A){return A.length}function Dw(A,e){return e.push(A),A}var gOA,s3;var yw=P(()=>{gOA=Math.abs,s3=String.fromCharCode});function hY(A,e,t,r,i,u,a,n){return{value:A,root:e,parent:t,type:r,props:i,children:u,line:IY,column:ww,length:a,return:"",siblings:n}}function COA(){return Yn}function BOA(){if(Yn=Cc>0?HI(vw,--Cc):0,ww--,Yn===10)ww=1,IY--;return Yn}function Bc(){if(Yn=Cc<cOA?HI(vw,Cc++):0,ww++,Yn===10)ww=1,IY++;return Yn}function JI(){return HI(vw,Cc)}function CF(){return Cc}function QY(A,e){return KI(vw,A,e)}function bw(A){switch(A){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function EOA(A){return IY=ww=1,cOA=Ql(vw=A),Cc=0,[]}function dOA(A){return vw="",A}function pY(A){return EY(QY(Cc-1,EnA(A===91?A+2:A===40?A+1:A)))}function IOA(A){while(Yn=JI())if(Yn<33)Bc();else break;return bw(A)>2||bw(Yn)>3?"":" "}function hOA(A,e){while(--e&&Bc())if(Yn<48||Yn>102||Yn>57&&Yn<65||Yn>70&&Yn<97)break;return QY(A,CF()+(e<6&&JI()==32&&Bc()==32))}function EnA(A){while(Bc())switch(Yn){case A:return Cc;case 34:case 39:if(A!==34&&A!==39)EnA(Yn);break;case 40:if(A===41)EnA(A);break;case 92:Bc();break}return Cc}function QOA(A,e){while(Bc())if(A+Yn===57)break;else if(A+Yn===84&&JI()===47)break;return"/*"+QY(e,Cc-1)+"*"+s3(A===47?A:Bc())}function pOA(A){while(!bw(JI()))Bc();return QY(A,Cc)}var IY=1,ww=1,cOA=0,Cc=0,Yn=0,vw="";var dnA=P(()=>{yw()});function DOA(A){return dOA(fY("",null,null,null,[""],A=EOA(A),0,[0],A))}function fY(A,e,t,r,i,u,a,n,o){var s=0,l=0,g=a,C=0,B=0,E=0,d=1,I=1,h=1,Q=0,p=0,m="",f=i,D=u,w=r,b=m;while(I)switch(E=p,p=Bc()){case 40:if(E!=108&&HI(b,g-1)==58)Q++,b+="(";else b+=pY(p);break;case 41:Q--,b+=")";break;case 34:case 39:case 91:b+=pY(p);break;case 9:case 10:case 13:case 32:if(Q>0){b+=s3(p);break}b+=IOA(E);break;case 92:b+=hOA(CF()-1,7);continue;case 47:switch(JI()){case 42:case 47:if(Dw(smt(QOA(Bc(),CF()),e,t,o),o),(bw(E||1)==5||bw(JI()||1)==5)&&Ql(b)&&KI(b,-1,void 0)!==" ")b+=" ";break;default:b+="/"}break;case 123*d:n[s++]=Ql(b)*h;case 125*d:case 59:case 0:if(Q>0&&p){b+=s3(p);break}switch(p){case 0:case 125:I=0;case 59+l:if(h==-1)b=cF(b,/\f/g,"");if(B>0&&(Ql(b)-g||d===0))Dw(B>32?mOA(b+";",r,t,g-1,o):mOA(cF(b," ","")+";",r,t,g-2,o),o);break;case 59:b+=";";default:if(Dw(w=fOA(b,e,t,s,l,i,n,m,f=[],D=[],g,u),u),p===123)if(l===0)fY(b,e,w,w,f,u,g,n,D);else{switch(C){case 99:if(HI(b,3)===110)break;case 108:if(HI(b,2)===97)break;default:l=0;case 100:case 109:case 115:}if(l)fY(A,w,w,r&&Dw(fOA(A,w,w,0,0,i,n,m,i,f=[],g,D),D),i,D,g,n,r?f:D);else fY(b,w,w,w,[""],D,0,n,D)}}s=l=B=0,d=h=1,m=b="",g=a;break;case 58:g=1+Ql(b),B=E;default:if(d<1){if(p==123)--d;else if(p==125&&d++==0&&BOA()==125)continue}switch(b+=s3(p),p*d){case 38:h=l>0?1:(b+="\f",-1);break;case 44:if(Q>0)break;n[s++]=(Ql(b)-1)*h,h=1;break;case 64:if(JI()===45)b+=pY(Bc());C=JI(),l=g=Ql(m=b+=pOA(CF())),p++;break;case 45:if(E===45&&Ql(b)==2)d=0}}return u}function fOA(A,e,t,r,i,u,a,n,o,s,l,g){var C=i-1,B=i===0?u:[""],E=dY(B);for(var d=0,I=0,h=0;d<r;++d)for(var Q=0,p=KI(A,C+1,C=gOA(I=a[d])),m=A;Q<E;++Q)if(m=EY(I>0?B[Q]+" "+p:cF(p,/&\f/g,B[Q])))o[h++]=m;return hY(A,e,t,i===0?cY:n,o,s,l,g)}function smt(A,e,t,r){return hY(A,e,t,mw,s3(COA()),KI(A,2,-2),0,r)}function mOA(A,e,t,r,i){return hY(A,e,t,CY,KI(A,0,r),KI(A,r+1,-1),r,i)}var yOA=P(()=>{yw();dnA()});var wOA=()=>{};function mY(A,e){var t="";for(var r=0;r<A.length;r++)t+=e(A[r],r,A,e)||"";return t}function bOA(A,e,t,r){switch(A.type){case BY:if(A.children.length)break;case nOA:case sOA:case CY:return A.return=A.return||A.value;case mw:return"";case gF:return A.return=A.value+"{"+mY(A.children,r)+"}";case cY:if(!Ql(A.value=A.props.join(",")))return""}return Ql(t=mY(A.children,r))?A.return=A.value+"{"+t+"}":""}var vOA=P(()=>{yw()});function kOA(A){var e=dY(A);return function(t,r,i,u){var a="";for(var n=0;n<e;n++)a+=A[n](t,r,i,u)||"";return a}}var FOA=P(()=>{yw()});var xOA=P(()=>{yw();yOA();wOA();dnA();vOA();FOA()});var InA,l3,DY,SOA,yY,wY,J0,bY,kw;var Bg=P(()=>{rr();Nt();Pr();InA=yu(ey(),1),l3=y((A,e)=>{let t=A.append("rect");if(t.attr("x",e.x),t.attr("y",e.y),t.attr("fill",e.fill),t.attr("stroke",e.stroke),t.attr("width",e.width),t.attr("height",e.height),e.name)t.attr("name",e.name);if(e.rx)t.attr("rx",e.rx);if(e.ry)t.attr("ry",e.ry);if(e.attrs!==void 0)for(let r in e.attrs)t.attr(r,e.attrs[r]);if(e.class)t.attr("class",e.class);return t},"drawRect"),DY=y((A,e)=>{let t={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};l3(A,t).lower()},"drawBackgroundRect"),SOA=y((A,e)=>{let t=e.text.replace(Af," "),r=A.append("text");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("class","legend"),r.style("text-anchor",e.anchor),e.class)r.attr("class",e.class);let i=r.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(t),r},"drawText"),yY=y((A,e,t,r)=>{let i=A.append("image");i.attr("x",e),i.attr("y",t);let u=InA.sanitizeUrl(r);i.attr("xlink:href",u)},"drawImage"),wY=y((A,e,t,r)=>{let i=A.append("use");i.attr("x",e),i.attr("y",t);let u=InA.sanitizeUrl(r);i.attr("xlink:href",`#${u}`)},"drawEmbeddedImage"),J0=y(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),bY=y(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),kw=y(()=>{let A=Qe(".mermaidTooltip");if(A.empty())A=Qe("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100");return A},"createTooltip")});function dc(A,e,t,r,i){if(!e[A].width)if(t)e[A].text=yf(e[A].text,i,r),e[A].textLines=e[A].text.split(_e.lineBreakRegex).length,e[A].width=i,e[A].height=Sv(e[A].text,r);else{let u=e[A].text.split(_e.lineBreakRegex);e[A].textLines=u.length;let a=0;e[A].height=0,e[A].width=0;for(let n of u)e[A].width=Math.max(t0(n,r),e[A].width),a=Sv(n,r),e[A].height=e[A].height+a}}function ynA(A,e,t,r,i){let u=new HOA(i);u.data.widthLimit=t.data.widthLimit/Math.min(QnA,r.length);for(let[a,n]of r.entries()){let o=0;if(n.image={width:0,height:0,Y:0},n.sprite)n.image.width=48,n.image.height=48,n.image.Y=o,o=n.image.Y+n.image.height;let s=n.wrap&&Zt.wrap,l=vY(Zt);if(l.fontSize=l.fontSize+2,l.fontWeight="bold",dc("label",n,s,l,u.data.widthLimit),n.label.Y=o+8,o=n.label.Y+n.label.height,n.type&&n.type.text!==""){n.type.text="["+n.type.text+"]";let E=vY(Zt);dc("type",n,s,E,u.data.widthLimit),n.type.Y=o+5,o=n.type.Y+n.type.height}if(n.descr&&n.descr.text!==""){let E=vY(Zt);E.fontSize=E.fontSize-2,dc("descr",n,s,E,u.data.widthLimit),n.descr.Y=o+20,o=n.descr.Y+n.descr.height}if(a==0||a%QnA===0){let E=t.data.startx+Zt.diagramMarginX,d=t.data.stopy+Zt.diagramMarginY+o;u.setData(E,E,d,d)}else{let E=u.data.stopx!==u.data.startx?u.data.stopx+Zt.diagramMarginX:u.data.startx,d=u.data.starty;u.setData(E,E,d,d)}u.name=n.alias;let g=i.db.getC4ShapeArray(n.alias),C=i.db.getC4ShapeKeys(n.alias);if(C.length>0)JOA(u,A,g,C);e=n.alias;let B=i.db.getBoundaries(e);if(B.length>0)ynA(A,e,u,B,i);if(n.alias!=="global")KOA(A,n,u);t.data.stopy=Math.max(u.data.stopy+Zt.c4ShapeMargin,t.data.stopy),t.data.stopx=Math.max(u.data.stopx+Zt.c4ShapeMargin,t.data.stopx),SY=Math.max(SY,t.data.stopx),LY=Math.max(LY,t.data.stopy)}}var MOA,kY,lmt,RC,U4,ys="global",LC="",YE,EF,fnA="",mnA=!1,FY=4,xY=2,NOA,gmt,cmt,Cmt,Bmt,Emt,dmt,Imt,hmt,Qmt,pmt,fmt,mmt,Dmt,ymt,wmt,bmt,vmt,GOA,kmt,Fmt,UOA,xmt,Smt,Lmt,Rmt,M4,Nmt,Gmt,Umt,Mmt,Tmt,hnA,DnA,TOA,Ymt,Hmt,Kmt,Jmt,Omt,Pmt,_mt,Wmt,qmt,zmt,Zmt,OI,TE,SY=0,LY=0,YOA=4,QnA=2,Zt,HOA,pnA,BF,vY,Vmt,KOA,JOA,Ec,LOA,jmt,Xmt,$mt,ROA,A2t,e2t,OOA;var POA=P(()=>{Bg();ai();rr();ir();Nt();Pr();MOA=yu(ey(),1),kY=function(){var A=y(function(eA,EA,mA,kA){for(mA=mA||{},kA=eA.length;kA--;mA[eA[kA]]=EA);return mA},"o"),e=[1,24],t=[1,25],r=[1,26],i=[1,27],u=[1,28],a=[1,63],n=[1,64],o=[1,65],s=[1,66],l=[1,67],g=[1,68],C=[1,69],B=[1,29],E=[1,30],d=[1,31],I=[1,32],h=[1,33],Q=[1,34],p=[1,35],m=[1,36],f=[1,37],D=[1,38],w=[1,39],b=[1,40],F=[1,41],v=[1,42],S=[1,43],x=[1,44],k=[1,45],T=[1,46],R=[1,47],L=[1,48],M=[1,50],U=[1,51],Y=[1,52],H=[1,53],J=[1,54],K=[1,55],O=[1,56],_=[1,57],z=[1,58],j=[1,59],q=[1,60],CA=[14,42],tA=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],lA=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],gA=[1,82],aA=[1,83],RA=[1,84],wA=[1,85],JA=[12,14,42],TA=[12,14,33,42],qA=[12,14,33,42,76,77,79,80],BA=[12,33],bA=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],FA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:y(function(EA,mA,kA,SA,YA,dA,W){var Z=dA.length-1;switch(YA){case 3:SA.setDirection("TB");break;case 4:SA.setDirection("BT");break;case 5:SA.setDirection("RL");break;case 6:SA.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:SA.setC4Type(dA[Z-3]);break;case 19:SA.setTitle(dA[Z].substring(6)),this.$=dA[Z].substring(6);break;case 20:SA.setAccDescription(dA[Z].substring(15)),this.$=dA[Z].substring(15);break;case 21:this.$=dA[Z].trim(),SA.setTitle(this.$);break;case 22:case 23:this.$=dA[Z].trim(),SA.setAccDescription(this.$);break;case 28:dA[Z].splice(2,0,"ENTERPRISE"),SA.addPersonOrSystemBoundary(...dA[Z]),this.$=dA[Z];break;case 29:dA[Z].splice(2,0,"SYSTEM"),SA.addPersonOrSystemBoundary(...dA[Z]),this.$=dA[Z];break;case 30:SA.addPersonOrSystemBoundary(...dA[Z]),this.$=dA[Z];break;case 31:dA[Z].splice(2,0,"CONTAINER"),SA.addContainerBoundary(...dA[Z]),this.$=dA[Z];break;case 32:SA.addDeploymentNode("node",...dA[Z]),this.$=dA[Z];break;case 33:SA.addDeploymentNode("nodeL",...dA[Z]),this.$=dA[Z];break;case 34:SA.addDeploymentNode("nodeR",...dA[Z]),this.$=dA[Z];break;case 35:SA.popBoundaryParseStack();break;case 39:SA.addPersonOrSystem("person",...dA[Z]),this.$=dA[Z];break;case 40:SA.addPersonOrSystem("external_person",...dA[Z]),this.$=dA[Z];break;case 41:SA.addPersonOrSystem("system",...dA[Z]),this.$=dA[Z];break;case 42:SA.addPersonOrSystem("system_db",...dA[Z]),this.$=dA[Z];break;case 43:SA.addPersonOrSystem("system_queue",...dA[Z]),this.$=dA[Z];break;case 44:SA.addPersonOrSystem("external_system",...dA[Z]),this.$=dA[Z];break;case 45:SA.addPersonOrSystem("external_system_db",...dA[Z]),this.$=dA[Z];break;case 46:SA.addPersonOrSystem("external_system_queue",...dA[Z]),this.$=dA[Z];break;case 47:SA.addContainer("container",...dA[Z]),this.$=dA[Z];break;case 48:SA.addContainer("container_db",...dA[Z]),this.$=dA[Z];break;case 49:SA.addContainer("container_queue",...dA[Z]),this.$=dA[Z];break;case 50:SA.addContainer("external_container",...dA[Z]),this.$=dA[Z];break;case 51:SA.addContainer("external_container_db",...dA[Z]),this.$=dA[Z];break;case 52:SA.addContainer("external_container_queue",...dA[Z]),this.$=dA[Z];break;case 53:SA.addComponent("component",...dA[Z]),this.$=dA[Z];break;case 54:SA.addComponent("component_db",...dA[Z]),this.$=dA[Z];break;case 55:SA.addComponent("component_queue",...dA[Z]),this.$=dA[Z];break;case 56:SA.addComponent("external_component",...dA[Z]),this.$=dA[Z];break;case 57:SA.addComponent("external_component_db",...dA[Z]),this.$=dA[Z];break;case 58:SA.addComponent("external_component_queue",...dA[Z]),this.$=dA[Z];break;case 60:SA.addRel("rel",...dA[Z]),this.$=dA[Z];break;case 61:SA.addRel("birel",...dA[Z]),this.$=dA[Z];break;case 62:SA.addRel("rel_u",...dA[Z]),this.$=dA[Z];break;case 63:SA.addRel("rel_d",...dA[Z]),this.$=dA[Z];break;case 64:SA.addRel("rel_l",...dA[Z]),this.$=dA[Z];break;case 65:SA.addRel("rel_r",...dA[Z]),this.$=dA[Z];break;case 66:SA.addRel("rel_b",...dA[Z]),this.$=dA[Z];break;case 67:dA[Z].splice(0,1),SA.addRel("rel",...dA[Z]),this.$=dA[Z];break;case 68:SA.updateElStyle("update_el_style",...dA[Z]),this.$=dA[Z];break;case 69:SA.updateRelStyle("update_rel_style",...dA[Z]),this.$=dA[Z];break;case 70:SA.updateLayoutConfig("update_layout_config",...dA[Z]),this.$=dA[Z];break;case 71:this.$=[dA[Z]];break;case 72:dA[Z].unshift(dA[Z-1]),this.$=dA[Z];break;case 73:case 75:this.$=dA[Z].trim();break;case 74:let pA={};pA[dA[Z-1].trim()]=dA[Z].trim(),this.$=pA;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:F,57:v,58:S,59:x,60:k,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:_,72:z,73:j,74:q},{13:70,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:F,57:v,58:S,59:x,60:k,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:_,72:z,73:j,74:q},{13:71,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:F,57:v,58:S,59:x,60:k,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:_,72:z,73:j,74:q},{13:72,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:F,57:v,58:S,59:x,60:k,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:_,72:z,73:j,74:q},{13:73,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:F,57:v,58:S,59:x,60:k,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:_,72:z,73:j,74:q},{14:[1,74]},A(CA,[2,13],{43:23,29:49,30:61,32:62,20:75,34:a,36:n,37:o,38:s,39:l,40:g,41:C,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:F,57:v,58:S,59:x,60:k,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:_,72:z,73:j,74:q}),A(CA,[2,14]),A(tA,[2,16],{12:[1,76]}),A(CA,[2,36],{12:[1,77]}),A(lA,[2,19]),A(lA,[2,20]),{25:[1,78]},{27:[1,79]},A(lA,[2,23]),{35:80,75:81,76:gA,77:aA,79:RA,80:wA},{35:86,75:81,76:gA,77:aA,79:RA,80:wA},{35:87,75:81,76:gA,77:aA,79:RA,80:wA},{35:88,75:81,76:gA,77:aA,79:RA,80:wA},{35:89,75:81,76:gA,77:aA,79:RA,80:wA},{35:90,75:81,76:gA,77:aA,79:RA,80:wA},{35:91,75:81,76:gA,77:aA,79:RA,80:wA},{35:92,75:81,76:gA,77:aA,79:RA,80:wA},{35:93,75:81,76:gA,77:aA,79:RA,80:wA},{35:94,75:81,76:gA,77:aA,79:RA,80:wA},{35:95,75:81,76:gA,77:aA,79:RA,80:wA},{35:96,75:81,76:gA,77:aA,79:RA,80:wA},{35:97,75:81,76:gA,77:aA,79:RA,80:wA},{35:98,75:81,76:gA,77:aA,79:RA,80:wA},{35:99,75:81,76:gA,77:aA,79:RA,80:wA},{35:100,75:81,76:gA,77:aA,79:RA,80:wA},{35:101,75:81,76:gA,77:aA,79:RA,80:wA},{35:102,75:81,76:gA,77:aA,79:RA,80:wA},{35:103,75:81,76:gA,77:aA,79:RA,80:wA},{35:104,75:81,76:gA,77:aA,79:RA,80:wA},A(JA,[2,59]),{35:105,75:81,76:gA,77:aA,79:RA,80:wA},{35:106,75:81,76:gA,77:aA,79:RA,80:wA},{35:107,75:81,76:gA,77:aA,79:RA,80:wA},{35:108,75:81,76:gA,77:aA,79:RA,80:wA},{35:109,75:81,76:gA,77:aA,79:RA,80:wA},{35:110,75:81,76:gA,77:aA,79:RA,80:wA},{35:111,75:81,76:gA,77:aA,79:RA,80:wA},{35:112,75:81,76:gA,77:aA,79:RA,80:wA},{35:113,75:81,76:gA,77:aA,79:RA,80:wA},{35:114,75:81,76:gA,77:aA,79:RA,80:wA},{35:115,75:81,76:gA,77:aA,79:RA,80:wA},{20:116,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:F,57:v,58:S,59:x,60:k,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:_,72:z,73:j,74:q},{12:[1,118],33:[1,117]},{35:119,75:81,76:gA,77:aA,79:RA,80:wA},{35:120,75:81,76:gA,77:aA,79:RA,80:wA},{35:121,75:81,76:gA,77:aA,79:RA,80:wA},{35:122,75:81,76:gA,77:aA,79:RA,80:wA},{35:123,75:81,76:gA,77:aA,79:RA,80:wA},{35:124,75:81,76:gA,77:aA,79:RA,80:wA},{35:125,75:81,76:gA,77:aA,79:RA,80:wA},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},A(CA,[2,15]),A(tA,[2,17],{21:22,19:130,22:e,23:t,24:r,26:i,28:u}),A(CA,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:t,24:r,26:i,28:u,34:a,36:n,37:o,38:s,39:l,40:g,41:C,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:F,57:v,58:S,59:x,60:k,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:_,72:z,73:j,74:q}),A(lA,[2,21]),A(lA,[2,22]),A(JA,[2,39]),A(TA,[2,71],{75:81,35:132,76:gA,77:aA,79:RA,80:wA}),A(qA,[2,73]),{78:[1,133]},A(qA,[2,75]),A(qA,[2,76]),A(JA,[2,40]),A(JA,[2,41]),A(JA,[2,42]),A(JA,[2,43]),A(JA,[2,44]),A(JA,[2,45]),A(JA,[2,46]),A(JA,[2,47]),A(JA,[2,48]),A(JA,[2,49]),A(JA,[2,50]),A(JA,[2,51]),A(JA,[2,52]),A(JA,[2,53]),A(JA,[2,54]),A(JA,[2,55]),A(JA,[2,56]),A(JA,[2,57]),A(JA,[2,58]),A(JA,[2,60]),A(JA,[2,61]),A(JA,[2,62]),A(JA,[2,63]),A(JA,[2,64]),A(JA,[2,65]),A(JA,[2,66]),A(JA,[2,67]),A(JA,[2,68]),A(JA,[2,69]),A(JA,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},A(BA,[2,28]),A(BA,[2,29]),A(BA,[2,30]),A(BA,[2,31]),A(BA,[2,32]),A(BA,[2,33]),A(BA,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},A(tA,[2,18]),A(CA,[2,38]),A(TA,[2,72]),A(qA,[2,74]),A(JA,[2,24]),A(JA,[2,35]),A(bA,[2,25]),A(bA,[2,26],{12:[1,138]}),A(bA,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:y(function(EA,mA){if(mA.recoverable)this.trace(EA);else{var kA=Error(EA);throw kA.hash=mA,kA}},"parseError"),parse:y(function(EA){var mA=this,kA=[0],SA=[],YA=[null],dA=[],W=this.table,Z="",pA=0,AA=0,DA=0,rA=2,KA=1,_A=dA.slice.call(arguments,1),zA=Object.create(this.lexer),WA={yy:{}};for(var te in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,te))WA.yy[te]=this.yy[te];if(zA.setInput(EA,WA.yy),WA.yy.lexer=zA,WA.yy.parser=this,typeof zA.yylloc>"u")zA.yylloc={};var ZA=zA.yylloc;dA.push(ZA);var ee=zA.options&&zA.options.ranges;if(typeof WA.yy.parseError==="function")this.parseError=WA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function $A(de){kA.length=kA.length-2*de,YA.length=YA.length-de,dA.length=dA.length-de}y($A,"popStack");function oe(){var de=SA.pop()||zA.lex()||KA;if(typeof de!=="number"){if(de instanceof Array)SA=de,de=SA.pop();de=mA.symbols_[de]||de}return de}y(oe,"lex");var vA,Pe,MA,ke,We,se,Te={},je,xe,yA,Ne;while(!0){if(MA=kA[kA.length-1],this.defaultActions[MA])ke=this.defaultActions[MA];else{if(vA===null||typeof vA>"u")vA=oe();ke=W[MA]&&W[MA][vA]}if(typeof ke>"u"||!ke.length||!ke[0]){var He="";Ne=[];for(je in W[MA])if(this.terminals_[je]&&je>rA)Ne.push("'"+this.terminals_[je]+"'");if(zA.showPosition)He="Parse error on line "+(pA+1)+`:
|
||
`+zA.showPosition()+`
|
||
Expecting `+Ne.join(", ")+", got '"+(this.terminals_[vA]||vA)+"'";else He="Parse error on line "+(pA+1)+": Unexpected "+(vA==KA?"end of input":"'"+(this.terminals_[vA]||vA)+"'");this.parseError(He,{text:zA.match,token:this.terminals_[vA]||vA,line:zA.yylineno,loc:ZA,expected:Ne})}if(ke[0]instanceof Array&&ke.length>1)throw Error("Parse Error: multiple actions possible at state: "+MA+", token: "+vA);switch(ke[0]){case 1:if(kA.push(vA),YA.push(zA.yytext),dA.push(zA.yylloc),kA.push(ke[1]),vA=null,!Pe){if(AA=zA.yyleng,Z=zA.yytext,pA=zA.yylineno,ZA=zA.yylloc,DA>0)DA--}else vA=Pe,Pe=null;break;case 2:if(xe=this.productions_[ke[1]][1],Te.$=YA[YA.length-xe],Te._$={first_line:dA[dA.length-(xe||1)].first_line,last_line:dA[dA.length-1].last_line,first_column:dA[dA.length-(xe||1)].first_column,last_column:dA[dA.length-1].last_column},ee)Te._$.range=[dA[dA.length-(xe||1)].range[0],dA[dA.length-1].range[1]];if(se=this.performAction.apply(Te,[Z,AA,pA,WA.yy,ke[1],YA,dA].concat(_A)),typeof se<"u")return se;if(xe)kA=kA.slice(0,-1*xe*2),YA=YA.slice(0,-1*xe),dA=dA.slice(0,-1*xe);kA.push(this.productions_[ke[1]][0]),YA.push(Te.$),dA.push(Te._$),yA=W[kA[kA.length-2]][kA[kA.length-1]],kA.push(yA);break;case 3:return!0}}return!0},"parse")},IA=function(){var eA={EOF:1,parseError:y(function(mA,kA){if(this.yy.parser)this.yy.parser.parseError(mA,kA);else throw Error(mA)},"parseError"),setInput:y(function(EA,mA){if(this.yy=mA||this.yy||{},this._input=EA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var EA=this._input[0];this.yytext+=EA,this.yyleng++,this.offset++,this.match+=EA,this.matched+=EA;var mA=EA.match(/(?:\r\n?|\n).*/g);if(mA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),EA},"input"),unput:y(function(EA){var mA=EA.length,kA=EA.split(/(?:\r\n?|\n)/g);this._input=EA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-mA),this.offset-=mA;var SA=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),kA.length-1)this.yylineno-=kA.length-1;var YA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:kA?(kA.length===SA.length?this.yylloc.first_column:0)+SA[SA.length-kA.length].length-kA[0].length:this.yylloc.first_column-mA},this.options.ranges)this.yylloc.range=[YA[0],YA[0]+this.yyleng-mA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(EA){this.unput(this.match.slice(EA))},"less"),pastInput:y(function(){var EA=this.matched.substr(0,this.matched.length-this.match.length);return(EA.length>20?"...":"")+EA.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var EA=this.match;if(EA.length<20)EA+=this._input.substr(0,20-EA.length);return(EA.substr(0,20)+(EA.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var EA=this.pastInput(),mA=Array(EA.length+1).join("-");return EA+this.upcomingInput()+`
|
||
`+mA+"^"},"showPosition"),test_match:y(function(EA,mA){var kA,SA,YA;if(this.options.backtrack_lexer){if(YA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)YA.yylloc.range=this.yylloc.range.slice(0)}if(SA=EA[0].match(/(?:\r\n?|\n).*/g),SA)this.yylineno+=SA.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:SA?SA[SA.length-1].length-SA[SA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+EA[0].length},this.yytext+=EA[0],this.match+=EA[0],this.matches=EA,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(EA[0].length),this.matched+=EA[0],kA=this.performAction.call(this,this.yy,this,mA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(kA)return kA;else if(this._backtrack){for(var dA in YA)this[dA]=YA[dA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var EA,mA,kA,SA;if(!this._more)this.yytext="",this.match="";var YA=this._currentRules();for(var dA=0;dA<YA.length;dA++)if(kA=this._input.match(this.rules[YA[dA]]),kA&&(!mA||kA[0].length>mA[0].length)){if(mA=kA,SA=dA,this.options.backtrack_lexer)if(EA=this.test_match(kA,YA[dA]),EA!==!1)return EA;else if(this._backtrack){mA=!1;continue}else return!1;else if(!this.options.flex)break}if(mA){if(EA=this.test_match(mA,YA[SA]),EA!==!1)return EA;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var mA=this.next();if(mA)return mA;else return this.lex()},"lex"),begin:y(function(mA){this.conditionStack.push(mA)},"begin"),popState:y(function(){var mA=this.conditionStack.length-1;if(mA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(mA){if(mA=this.conditionStack.length-1-Math.abs(mA||0),mA>=0)return this.conditionStack[mA];else return"INITIAL"},"topState"),pushState:y(function(mA){this.begin(mA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(mA,kA,SA,YA){var dA=YA;switch(SA){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";break;case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[65,66,67,68],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return eA}();FA.lexer=IA;function nA(){this.yy={}}return y(nA,"Parser"),nA.prototype=FA,FA.Parser=nA,new nA}();kY.parser=kY;lmt=kY,RC=[],U4=[""],YE=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],EF=[],gmt=y(function(){return NOA},"getC4Type"),cmt=y(function(A){NOA=or(A,OA())},"setC4Type"),Cmt=y(function(A,e,t,r,i,u,a,n,o){if(A===void 0||A===null||e===void 0||e===null||t===void 0||t===null||r===void 0||r===null)return;let s={},l=EF.find((g)=>g.from===e&&g.to===t);if(l)s=l;else EF.push(s);if(s.type=A,s.from=e,s.to=t,s.label={text:r},i===void 0||i===null)s.techn={text:""};else if(typeof i==="object"){let[g,C]=Object.entries(i)[0];s[g]={text:C}}else s.techn={text:i};if(u===void 0||u===null)s.descr={text:""};else if(typeof u==="object"){let[g,C]=Object.entries(u)[0];s[g]={text:C}}else s.descr={text:u};if(typeof a==="object"){let[g,C]=Object.entries(a)[0];s[g]=C}else s.sprite=a;if(typeof n==="object"){let[g,C]=Object.entries(n)[0];s[g]=C}else s.tags=n;if(typeof o==="object"){let[g,C]=Object.entries(o)[0];s[g]=C}else s.link=o;s.wrap=M4()},"addRel"),Bmt=y(function(A,e,t,r,i,u,a){if(e===null||t===null)return;let n={},o=RC.find((s)=>s.alias===e);if(o&&e===o.alias)n=o;else n.alias=e,RC.push(n);if(t===void 0||t===null)n.label={text:""};else n.label={text:t};if(r===void 0||r===null)n.descr={text:""};else if(typeof r==="object"){let[s,l]=Object.entries(r)[0];n[s]={text:l}}else n.descr={text:r};if(typeof i==="object"){let[s,l]=Object.entries(i)[0];n[s]=l}else n.sprite=i;if(typeof u==="object"){let[s,l]=Object.entries(u)[0];n[s]=l}else n.tags=u;if(typeof a==="object"){let[s,l]=Object.entries(a)[0];n[s]=l}else n.link=a;n.typeC4Shape={text:A},n.parentBoundary=ys,n.wrap=M4()},"addPersonOrSystem"),Emt=y(function(A,e,t,r,i,u,a,n){if(e===null||t===null)return;let o={},s=RC.find((l)=>l.alias===e);if(s&&e===s.alias)o=s;else o.alias=e,RC.push(o);if(t===void 0||t===null)o.label={text:""};else o.label={text:t};if(r===void 0||r===null)o.techn={text:""};else if(typeof r==="object"){let[l,g]=Object.entries(r)[0];o[l]={text:g}}else o.techn={text:r};if(i===void 0||i===null)o.descr={text:""};else if(typeof i==="object"){let[l,g]=Object.entries(i)[0];o[l]={text:g}}else o.descr={text:i};if(typeof u==="object"){let[l,g]=Object.entries(u)[0];o[l]=g}else o.sprite=u;if(typeof a==="object"){let[l,g]=Object.entries(a)[0];o[l]=g}else o.tags=a;if(typeof n==="object"){let[l,g]=Object.entries(n)[0];o[l]=g}else o.link=n;o.wrap=M4(),o.typeC4Shape={text:A},o.parentBoundary=ys},"addContainer"),dmt=y(function(A,e,t,r,i,u,a,n){if(e===null||t===null)return;let o={},s=RC.find((l)=>l.alias===e);if(s&&e===s.alias)o=s;else o.alias=e,RC.push(o);if(t===void 0||t===null)o.label={text:""};else o.label={text:t};if(r===void 0||r===null)o.techn={text:""};else if(typeof r==="object"){let[l,g]=Object.entries(r)[0];o[l]={text:g}}else o.techn={text:r};if(i===void 0||i===null)o.descr={text:""};else if(typeof i==="object"){let[l,g]=Object.entries(i)[0];o[l]={text:g}}else o.descr={text:i};if(typeof u==="object"){let[l,g]=Object.entries(u)[0];o[l]=g}else o.sprite=u;if(typeof a==="object"){let[l,g]=Object.entries(a)[0];o[l]=g}else o.tags=a;if(typeof n==="object"){let[l,g]=Object.entries(n)[0];o[l]=g}else o.link=n;o.wrap=M4(),o.typeC4Shape={text:A},o.parentBoundary=ys},"addComponent"),Imt=y(function(A,e,t,r,i){if(A===null||e===null)return;let u={},a=YE.find((n)=>n.alias===A);if(a&&A===a.alias)u=a;else u.alias=A,YE.push(u);if(e===void 0||e===null)u.label={text:""};else u.label={text:e};if(t===void 0||t===null)u.type={text:"system"};else if(typeof t==="object"){let[n,o]=Object.entries(t)[0];u[n]={text:o}}else u.type={text:t};if(typeof r==="object"){let[n,o]=Object.entries(r)[0];u[n]=o}else u.tags=r;if(typeof i==="object"){let[n,o]=Object.entries(i)[0];u[n]=o}else u.link=i;u.parentBoundary=ys,u.wrap=M4(),LC=ys,ys=A,U4.push(LC)},"addPersonOrSystemBoundary"),hmt=y(function(A,e,t,r,i){if(A===null||e===null)return;let u={},a=YE.find((n)=>n.alias===A);if(a&&A===a.alias)u=a;else u.alias=A,YE.push(u);if(e===void 0||e===null)u.label={text:""};else u.label={text:e};if(t===void 0||t===null)u.type={text:"container"};else if(typeof t==="object"){let[n,o]=Object.entries(t)[0];u[n]={text:o}}else u.type={text:t};if(typeof r==="object"){let[n,o]=Object.entries(r)[0];u[n]=o}else u.tags=r;if(typeof i==="object"){let[n,o]=Object.entries(i)[0];u[n]=o}else u.link=i;u.parentBoundary=ys,u.wrap=M4(),LC=ys,ys=A,U4.push(LC)},"addContainerBoundary"),Qmt=y(function(A,e,t,r,i,u,a,n){if(e===null||t===null)return;let o={},s=YE.find((l)=>l.alias===e);if(s&&e===s.alias)o=s;else o.alias=e,YE.push(o);if(t===void 0||t===null)o.label={text:""};else o.label={text:t};if(r===void 0||r===null)o.type={text:"node"};else if(typeof r==="object"){let[l,g]=Object.entries(r)[0];o[l]={text:g}}else o.type={text:r};if(i===void 0||i===null)o.descr={text:""};else if(typeof i==="object"){let[l,g]=Object.entries(i)[0];o[l]={text:g}}else o.descr={text:i};if(typeof a==="object"){let[l,g]=Object.entries(a)[0];o[l]=g}else o.tags=a;if(typeof n==="object"){let[l,g]=Object.entries(n)[0];o[l]=g}else o.link=n;o.nodeType=A,o.parentBoundary=ys,o.wrap=M4(),LC=ys,ys=e,U4.push(LC)},"addDeploymentNode"),pmt=y(function(){ys=LC,U4.pop(),LC=U4.pop(),U4.push(LC)},"popBoundaryParseStack"),fmt=y(function(A,e,t,r,i,u,a,n,o,s,l){let g=RC.find((C)=>C.alias===e);if(g===void 0){if(g=YE.find((C)=>C.alias===e),g===void 0)return}if(t!==void 0&&t!==null)if(typeof t==="object"){let[C,B]=Object.entries(t)[0];g[C]=B}else g.bgColor=t;if(r!==void 0&&r!==null)if(typeof r==="object"){let[C,B]=Object.entries(r)[0];g[C]=B}else g.fontColor=r;if(i!==void 0&&i!==null)if(typeof i==="object"){let[C,B]=Object.entries(i)[0];g[C]=B}else g.borderColor=i;if(u!==void 0&&u!==null)if(typeof u==="object"){let[C,B]=Object.entries(u)[0];g[C]=B}else g.shadowing=u;if(a!==void 0&&a!==null)if(typeof a==="object"){let[C,B]=Object.entries(a)[0];g[C]=B}else g.shape=a;if(n!==void 0&&n!==null)if(typeof n==="object"){let[C,B]=Object.entries(n)[0];g[C]=B}else g.sprite=n;if(o!==void 0&&o!==null)if(typeof o==="object"){let[C,B]=Object.entries(o)[0];g[C]=B}else g.techn=o;if(s!==void 0&&s!==null)if(typeof s==="object"){let[C,B]=Object.entries(s)[0];g[C]=B}else g.legendText=s;if(l!==void 0&&l!==null)if(typeof l==="object"){let[C,B]=Object.entries(l)[0];g[C]=B}else g.legendSprite=l},"updateElStyle"),mmt=y(function(A,e,t,r,i,u,a){let n=EF.find((o)=>o.from===e&&o.to===t);if(n===void 0)return;if(r!==void 0&&r!==null)if(typeof r==="object"){let[o,s]=Object.entries(r)[0];n[o]=s}else n.textColor=r;if(i!==void 0&&i!==null)if(typeof i==="object"){let[o,s]=Object.entries(i)[0];n[o]=s}else n.lineColor=i;if(u!==void 0&&u!==null)if(typeof u==="object"){let[o,s]=Object.entries(u)[0];n[o]=parseInt(s)}else n.offsetX=parseInt(u);if(a!==void 0&&a!==null)if(typeof a==="object"){let[o,s]=Object.entries(a)[0];n[o]=parseInt(s)}else n.offsetY=parseInt(a)},"updateRelStyle"),Dmt=y(function(A,e,t){let r=FY,i=xY;if(typeof e==="object"){let u=Object.values(e)[0];r=parseInt(u)}else r=parseInt(e);if(typeof t==="object"){let u=Object.values(t)[0];i=parseInt(u)}else i=parseInt(t);if(r>=1)FY=r;if(i>=1)xY=i},"updateLayoutConfig"),ymt=y(function(){return FY},"getC4ShapeInRow"),wmt=y(function(){return xY},"getC4BoundaryInRow"),bmt=y(function(){return ys},"getCurrentBoundaryParse"),vmt=y(function(){return LC},"getParentBoundaryParse"),GOA=y(function(A){if(A===void 0||A===null)return RC;else return RC.filter((e)=>e.parentBoundary===A)},"getC4ShapeArray"),kmt=y(function(A){return RC.find((e)=>e.alias===A)},"getC4Shape"),Fmt=y(function(A){return Object.keys(GOA(A))},"getC4ShapeKeys"),UOA=y(function(A){if(A===void 0||A===null)return YE;else return YE.filter((e)=>e.parentBoundary===A)},"getBoundaries"),xmt=UOA,Smt=y(function(){return EF},"getRels"),Lmt=y(function(){return fnA},"getTitle"),Rmt=y(function(A){mnA=A},"setWrap"),M4=y(function(){return mnA},"autoWrap"),Nmt=y(function(){RC=[],YE=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],LC="",ys="global",U4=[""],EF=[],U4=[""],fnA="",mnA=!1,FY=4,xY=2},"clear"),Gmt={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},Umt={FILLED:0,OPEN:1},Mmt={LEFTOF:0,RIGHTOF:1,OVER:2},Tmt=y(function(A){fnA=or(A,OA())},"setTitle"),hnA={addPersonOrSystem:Bmt,addPersonOrSystemBoundary:Imt,addContainer:Emt,addContainerBoundary:hmt,addComponent:dmt,addDeploymentNode:Qmt,popBoundaryParseStack:pmt,addRel:Cmt,updateElStyle:fmt,updateRelStyle:mmt,updateLayoutConfig:Dmt,autoWrap:M4,setWrap:Rmt,getC4ShapeArray:GOA,getC4Shape:kmt,getC4ShapeKeys:Fmt,getBoundaries:UOA,getBoundarys:xmt,getCurrentBoundaryParse:bmt,getParentBoundaryParse:vmt,getRels:Smt,getTitle:Lmt,getC4Type:gmt,getC4ShapeInRow:ymt,getC4BoundaryInRow:wmt,setAccTitle:Dr,getAccTitle:vr,getAccDescription:Fr,setAccDescription:kr,getConfig:y(()=>OA().c4,"getConfig"),clear:Nmt,LINETYPE:Gmt,ARROWTYPE:Umt,PLACEMENT:Mmt,setTitle:Tmt,setC4Type:cmt},DnA=y(function(A,e){return l3(A,e)},"drawRect"),TOA=y(function(A,e,t,r,i,u){let a=A.append("image");a.attr("width",e),a.attr("height",t),a.attr("x",r),a.attr("y",i);let n=u.startsWith("data:image/png;base64")?u:MOA.sanitizeUrl(u);a.attr("xlink:href",n)},"drawImage"),Ymt=y((A,e,t,r)=>{let i=A.append("g"),u=0;for(let a of e){let n=a.textColor?a.textColor:"#444444",o=a.lineColor?a.lineColor:"#444444",s=a.offsetX?parseInt(a.offsetX):0,l=a.offsetY?parseInt(a.offsetY):0,g="";if(u===0){let B=i.append("line");if(B.attr("x1",a.startPoint.x),B.attr("y1",a.startPoint.y),B.attr("x2",a.endPoint.x),B.attr("y2",a.endPoint.y),B.attr("stroke-width","1"),B.attr("stroke",o),B.style("fill","none"),a.type!=="rel_b")B.attr("marker-end","url("+g+"#"+r+"-arrowhead)");if(a.type==="birel"||a.type==="rel_b")B.attr("marker-start","url("+g+"#"+r+"-arrowend)");u=-1}else{let B=i.append("path");if(B.attr("fill","none").attr("stroke-width","1").attr("stroke",o).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b")B.attr("marker-end","url("+g+"#"+r+"-arrowhead)");if(a.type==="birel"||a.type==="rel_b")B.attr("marker-start","url("+g+"#"+r+"-arrowend)")}let C=t.messageFont();if(OI(t)(a.label.text,i,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+s,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+l,a.label.width,a.label.height,{fill:n},C),a.techn&&a.techn.text!=="")C=t.messageFont(),OI(t)("["+a.techn.text+"]",i,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+s,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+t.messageFontSize+5+l,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:n,"font-style":"italic"},C)}},"drawRels"),Hmt=y(function(A,e,t){let r=A.append("g"),i=e.bgColor?e.bgColor:"none",u=e.borderColor?e.borderColor:"#444444",a=e.fontColor?e.fontColor:"black",n={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};if(e.nodeType)n={"stroke-width":1};let o={x:e.x,y:e.y,fill:i,stroke:u,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:n};DnA(r,o);let s=t.boundaryFont();if(s.fontWeight="bold",s.fontSize=s.fontSize+2,s.fontColor=a,OI(t)(e.label.text,r,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},s),e.type&&e.type.text!=="")s=t.boundaryFont(),s.fontColor=a,OI(t)(e.type.text,r,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},s);if(e.descr&&e.descr.text!=="")s=t.boundaryFont(),s.fontSize=s.fontSize-2,s.fontColor=a,OI(t)(e.descr.text,r,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},s)},"drawBoundary"),Kmt=y(function(A,e,t){let r=e.bgColor?e.bgColor:t[e.typeC4Shape.text+"_bg_color"],i=e.borderColor?e.borderColor:t[e.typeC4Shape.text+"_border_color"],u=e.fontColor?e.fontColor:"#FFFFFF",a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let n=A.append("g");n.attr("class","person-man");let o=J0();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":o.x=e.x,o.y=e.y,o.fill=r,o.width=e.width,o.height=e.height,o.stroke=i,o.rx=2.5,o.ry=2.5,o.attrs={"stroke-width":0.5},DnA(n,o);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":n.append("path").attr("fill",r).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),n.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":n.append("path").attr("fill",r).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),n.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2));break}let s=Zmt(t,e.typeC4Shape.text);switch(n.append("text").attr("fill",u).attr("font-family",s.fontFamily).attr("font-size",s.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":TOA(n,48,48,e.x+e.width/2-24,e.y+e.image.Y,a);break}let l=t[e.typeC4Shape.text+"Font"]();if(l.fontWeight="bold",l.fontSize=l.fontSize+2,l.fontColor=u,OI(t)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:u},l),l=t[e.typeC4Shape.text+"Font"](),l.fontColor=u,e.techn&&e.techn?.text!=="")OI(t)(e.techn.text,n,e.x,e.y+e.techn.Y,e.width,e.height,{fill:u,"font-style":"italic"},l);else if(e.type&&e.type.text!=="")OI(t)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:u,"font-style":"italic"},l);if(e.descr&&e.descr.text!=="")l=t.personFont(),l.fontColor=u,OI(t)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:u},l);return e.height},"drawC4Shape"),Jmt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),Omt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),Pmt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),_mt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),Wmt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),qmt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),zmt=y(function(A,e){let r=A.append("defs").append("marker").attr("id",e+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);r.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),r.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),Zmt=y((A,e)=>({fontFamily:A[e+"FontFamily"],fontSize:A[e+"FontSize"],fontWeight:A[e+"FontWeight"]}),"getC4ShapeFont"),OI=function(){function A(i,u,a,n,o,s,l){let g=u.append("text").attr("x",a+o/2).attr("y",n+s/2+5).style("text-anchor","middle").text(i);r(g,l)}y(A,"byText");function e(i,u,a,n,o,s,l,g){let{fontSize:C,fontFamily:B,fontWeight:E}=g,d=i.split(_e.lineBreakRegex);for(let I=0;I<d.length;I++){let h=I*C-C*(d.length-1)/2,Q=u.append("text").attr("x",a+o/2).attr("y",n).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",C).style("font-weight",E).style("font-family",B);Q.append("tspan").attr("dy",h).text(d[I]).attr("alignment-baseline","mathematical"),r(Q,l)}}y(e,"byTspan");function t(i,u,a,n,o,s,l,g){let C=u.append("switch"),E=C.append("foreignObject").attr("x",a).attr("y",n).attr("width",o).attr("height",s).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");E.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,C,a,n,o,s,l,g),r(E,l)}y(t,"byFo");function r(i,u){for(let a in u)if(u.hasOwnProperty(a))i.attr(a,u[a])}return y(r,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?t:i.textPlacement==="old"?A:e}}(),TE={drawRect:DnA,drawBoundary:Hmt,drawC4Shape:Kmt,drawRels:Ymt,drawImage:TOA,insertArrowHead:_mt,insertArrowEnd:Wmt,insertArrowFilledHead:qmt,insertArrowCrossHead:zmt,insertDatabaseIcon:Jmt,insertComputerIcon:Omt,insertClockIcon:Pmt};kY.yy=hnA;Zt={},HOA=class{static{y(this,"Bounds")}constructor(A){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,pnA(A.db.getConfig())}setData(A,e,t,r){this.nextData.startx=this.data.startx=A,this.nextData.stopx=this.data.stopx=e,this.nextData.starty=this.data.starty=t,this.nextData.stopy=this.data.stopy=r}updateVal(A,e,t,r){if(A[e]===void 0)A[e]=t;else A[e]=r(t,A[e])}insert(A){this.nextData.cnt=this.nextData.cnt+1;let e=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+A.margin:this.nextData.stopx+A.margin*2,t=e+A.width,r=this.nextData.starty+A.margin*2,i=r+A.height;if(e>=this.data.widthLimit||t>=this.data.widthLimit||this.nextData.cnt>YOA)e=this.nextData.startx+A.margin+Zt.nextLinePaddingX,r=this.nextData.stopy+A.margin*2,this.nextData.stopx=t=e+A.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=i=r+A.height,this.nextData.cnt=1;A.x=e,A.y=r,this.updateVal(this.data,"startx",e,Math.min),this.updateVal(this.data,"starty",r,Math.min),this.updateVal(this.data,"stopx",t,Math.max),this.updateVal(this.data,"stopy",i,Math.max),this.updateVal(this.nextData,"startx",e,Math.min),this.updateVal(this.nextData,"starty",r,Math.min),this.updateVal(this.nextData,"stopx",t,Math.max),this.updateVal(this.nextData,"stopy",i,Math.max)}init(A){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},pnA(A.db.getConfig())}bumpLastMargin(A){this.data.stopx+=A,this.data.stopy+=A}},pnA=y(function(A){if(Ea(Zt,A),A.fontFamily)Zt.personFontFamily=Zt.systemFontFamily=Zt.messageFontFamily=A.fontFamily;if(A.fontSize)Zt.personFontSize=Zt.systemFontSize=Zt.messageFontSize=A.fontSize;if(A.fontWeight)Zt.personFontWeight=Zt.systemFontWeight=Zt.messageFontWeight=A.fontWeight},"setConf"),BF=y((A,e)=>({fontFamily:A[e+"FontFamily"],fontSize:A[e+"FontSize"],fontWeight:A[e+"FontWeight"]}),"c4ShapeFont"),vY=y((A)=>({fontFamily:A.boundaryFontFamily,fontSize:A.boundaryFontSize,fontWeight:A.boundaryFontWeight}),"boundaryFont"),Vmt=y((A)=>({fontFamily:A.messageFontFamily,fontSize:A.messageFontSize,fontWeight:A.messageFontWeight}),"messageFont");y(dc,"calcC4ShapeTextWH");KOA=y(function(A,e,t){e.x=t.data.startx,e.y=t.data.starty,e.width=t.data.stopx-t.data.startx,e.height=t.data.stopy-t.data.starty,e.label.y=Zt.c4ShapeMargin-35;let r=e.wrap&&Zt.wrap,i=vY(Zt);i.fontSize=i.fontSize+2,i.fontWeight="bold";let u=t0(e.label.text,i);dc("label",e,r,i,u),TE.drawBoundary(A,e,Zt)},"drawBoundary"),JOA=y(function(A,e,t,r){let i=0;for(let u of r){i=0;let a=t[u],n=BF(Zt,a.typeC4Shape.text);switch(n.fontSize=n.fontSize-2,a.typeC4Shape.width=t0("«"+a.typeC4Shape.text+"»",n),a.typeC4Shape.height=n.fontSize+2,a.typeC4Shape.Y=Zt.c4ShapePadding,i=a.typeC4Shape.Y+a.typeC4Shape.height-4,a.image={width:0,height:0,Y:0},a.typeC4Shape.text){case"person":case"external_person":a.image.width=48,a.image.height=48,a.image.Y=i,i=a.image.Y+a.image.height;break}if(a.sprite)a.image.width=48,a.image.height=48,a.image.Y=i,i=a.image.Y+a.image.height;let o=a.wrap&&Zt.wrap,s=Zt.width-Zt.c4ShapePadding*2,l=BF(Zt,a.typeC4Shape.text);if(l.fontSize=l.fontSize+2,l.fontWeight="bold",dc("label",a,o,l,s),a.label.Y=i+8,i=a.label.Y+a.label.height,a.type&&a.type.text!==""){a.type.text="["+a.type.text+"]";let B=BF(Zt,a.typeC4Shape.text);dc("type",a,o,B,s),a.type.Y=i+5,i=a.type.Y+a.type.height}else if(a.techn&&a.techn.text!==""){a.techn.text="["+a.techn.text+"]";let B=BF(Zt,a.techn.text);dc("techn",a,o,B,s),a.techn.Y=i+5,i=a.techn.Y+a.techn.height}let g=i,C=a.label.width;if(a.descr&&a.descr.text!==""){let B=BF(Zt,a.typeC4Shape.text);dc("descr",a,o,B,s),a.descr.Y=i+20,i=a.descr.Y+a.descr.height,C=Math.max(a.label.width,a.descr.width),g=i-a.descr.textLines*5}C=C+Zt.c4ShapePadding,a.width=Math.max(a.width||Zt.width,C,Zt.width),a.height=Math.max(a.height||Zt.height,g,Zt.height),a.margin=a.margin||Zt.c4ShapeMargin,A.insert(a),TE.drawC4Shape(e,a,Zt)}A.bumpLastMargin(Zt.c4ShapeMargin)},"drawC4ShapeArray"),Ec=class{static{y(this,"Point")}constructor(A,e){this.x=A,this.y=e}},LOA=y(function(A,e){let{x:t,y:r}=A,{x:i,y:u}=e,a=t+A.width/2,n=r+A.height/2,o=Math.abs(t-i),s=Math.abs(r-u),l=s/o,g=A.height/A.width,C=null;if(r==u&&t<i)C=new Ec(t+A.width,n);else if(r==u&&t>i)C=new Ec(t,n);else if(t==i&&r<u)C=new Ec(a,r+A.height);else if(t==i&&r>u)C=new Ec(a,r);if(t>i&&r<u)if(g>=l)C=new Ec(t,n+l*A.width/2);else C=new Ec(a-o/s*A.height/2,r+A.height);else if(t<i&&r<u)if(g>=l)C=new Ec(t+A.width,n+l*A.width/2);else C=new Ec(a+o/s*A.height/2,r+A.height);else if(t<i&&r>u)if(g>=l)C=new Ec(t+A.width,n-l*A.width/2);else C=new Ec(a+A.height/2*o/s,r);else if(t>i&&r>u)if(g>=l)C=new Ec(t,n-A.width/2*l);else C=new Ec(a-A.height/2*o/s,r);return C},"getIntersectPoint"),jmt=y(function(A,e){let t={x:0,y:0};t.x=e.x+e.width/2,t.y=e.y+e.height/2;let r=LOA(A,t);t.x=A.x+A.width/2,t.y=A.y+A.height/2;let i=LOA(e,t);return{startPoint:r,endPoint:i}},"getIntersectPoints"),Xmt=y(function(A,e,t,r,i){let u=0;for(let a of e){u=u+1;let n=a.wrap&&Zt.wrap,o=Vmt(Zt);if(r.db.getC4Type()==="C4Dynamic")a.label.text=u+": "+a.label.text;let l=t0(a.label.text,o);if(dc("label",a,n,o,l),a.techn&&a.techn.text!=="")l=t0(a.techn.text,o),dc("techn",a,n,o,l);if(a.descr&&a.descr.text!=="")l=t0(a.descr.text,o),dc("descr",a,n,o,l);let g=t(a.from),C=t(a.to),B=jmt(g,C);a.startPoint=B.startPoint,a.endPoint=B.endPoint}TE.drawRels(A,e,Zt,i)},"drawRels");y(ynA,"drawInsideBoundary");$mt=y(function(A,e,t,r){Zt=OA().c4;let i=OA().securityLevel,u;if(i==="sandbox")u=Qe("#i"+e);let a=i==="sandbox"?Qe(u.nodes()[0].contentDocument.body):Qe("body"),n=r.db;r.db.setWrap(Zt.wrap),YOA=n.getC4ShapeInRow(),QnA=n.getC4BoundaryInRow(),sA.debug(`C:${JSON.stringify(Zt,null,2)}`);let o=i==="sandbox"?a.select(`[id="${e}"]`):Qe(`[id="${e}"]`);TE.insertComputerIcon(o,e),TE.insertDatabaseIcon(o,e),TE.insertClockIcon(o,e);let s=new HOA(r);s.setData(Zt.diagramMarginX,Zt.diagramMarginX,Zt.diagramMarginY,Zt.diagramMarginY),s.data.widthLimit=screen.availWidth,SY=Zt.diagramMarginX,LY=Zt.diagramMarginY;let l=r.db.getTitle(),g=r.db.getBoundaries("");ynA(o,"",s,g,r),TE.insertArrowHead(o,e),TE.insertArrowEnd(o,e),TE.insertArrowCrossHead(o,e),TE.insertArrowFilledHead(o,e),Xmt(o,r.db.getRels(),r.db.getC4Shape,r,e),s.data.stopx=SY,s.data.stopy=LY;let C=s.data,E=C.stopy-C.starty+2*Zt.diagramMarginY,I=C.stopx-C.startx+2*Zt.diagramMarginX;if(l)o.append("text").text(l).attr("x",(C.stopx-C.startx)/2-4*Zt.diagramMarginX).attr("y",C.starty+Zt.diagramMarginY);jr(o,E,I,Zt.useMaxWidth);let h=l?60:0;o.attr("viewBox",C.startx-Zt.diagramMarginX+" -"+(Zt.diagramMarginY+h)+" "+I+" "+(E+h)),sA.debug("models:",C)},"draw"),ROA={drawPersonOrSystemArray:JOA,drawBoundary:KOA,setConf:pnA,draw:$mt},A2t=y((A)=>`.person {
|
||
stroke: ${A.personBorder};
|
||
fill: ${A.personBkg};
|
||
}
|
||
`,"getStyles"),e2t=A2t,OOA={parser:lmt,db:hnA,renderer:ROA,styles:e2t,init:y(({c4:A,wrap:e})=>{ROA.setConf(A),hnA.setWrap(e)},"init")}});var HE;var KE=P(()=>{Nt();HE=y(()=>`
|
||
/* Font Awesome icon styling - consolidated */
|
||
.label-icon {
|
||
display: inline-block;
|
||
height: 1em;
|
||
overflow: visible;
|
||
vertical-align: -0.125em;
|
||
}
|
||
|
||
.node .label-icon path {
|
||
fill: currentColor;
|
||
stroke: revert;
|
||
stroke-width: revert;
|
||
}
|
||
`,"getIconStyles")});var Ic;var Eg=P(()=>{Nt();Pr();Ic=y((A,e)=>{let t;if(e==="sandbox")t=Qe("#i"+A);return(e==="sandbox"?Qe(t.nodes()[0].contentDocument.body):Qe("body")).select(`[id="${A}"]`)},"getDiagramElement")});var pl,t2t,r2t;var fl=P(()=>{rr();ir();Nt();pl=y((A,e,t,r)=>{A.attr("class",t);let{width:i,height:u,x:a,y:n}=t2t(A,e);jr(A,u,i,r);let o=r2t(a,n,i,u,e);A.attr("viewBox",o),sA.debug(`viewBox configured: ${o} with padding: ${e}`)},"setupViewPortForSVG"),t2t=y((A,e)=>{let t=A.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:t.width+e*2,height:t.height+e*2,x:t.x,y:t.y}},"calculateDimensionsWithPadding"),r2t=y((A,e,t,r,i)=>`${A-i} ${e-i} ${t} ${r}`,"createViewBox")});var i2t="flowchart-",u2t,a2t,n2t,o2t,wnA,_OA,WOA,s2t,l2t,g2t,bnA,RY,g3;var vnA=P(()=>{KE();Eg();fl();ff();hl();Bg();u0();ai();rr();ir();Nt();Pr();cD();kn();u2t=class{constructor(){this.vertexCounter=0,this.config=OA(),this.diagramId="",this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=Dr,this.setAccDescription=kr,this.setDiagramTitle=Mr,this.getAccTitle=vr,this.getAccDescription=Fr,this.getDiagramTitle=xr,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{y(this,"FlowDB")}sanitizeText(A){return _e.sanitizeText(A,this.config)}sanitizeNodeLabelType(A){switch(A){case"markdown":case"string":case"text":return A;default:return"markdown"}}setDiagramId(A){this.diagramId=A}lookUpDomId(A){for(let e of this.vertices.values())if(e.id===A)return this.diagramId?`${this.diagramId}-${e.domId}`:e.domId;return this.diagramId?`${this.diagramId}-${A}`:A}addVertex(A,e,t,r,i,u,a={},n){if(!A||A.trim().length===0)return;let o;if(n!==void 0){let C;if(!n.includes(`
|
||
`))C=`{
|
||
`+n+`
|
||
}`;else C=n+`
|
||
`;o=UQ(C,{schema:GQ})}let s=this.edges.find((C)=>C.id===A);if(s){let C=o;if(C?.animate!==void 0)s.animate=C.animate;if(C?.animation!==void 0)s.animation=C.animation;if(C?.curve!==void 0)s.interpolate=C.curve;return}let l,g=this.vertices.get(A);if(g===void 0){if(e===void 0&&t===void 0&&r!==void 0&&r!==null)sA.warn(`Style applied to unknown node "${A}". This may indicate a typo. The node will be created automatically.`);g={id:A,labelType:"text",domId:i2t+A+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(A,g)}if(this.vertexCounter++,e!==void 0){if(this.config=OA(),l=this.sanitizeText(e.text.trim()),g.labelType=e.type,l.startsWith('"')&&l.endsWith('"'))l=l.substring(1,l.length-1);g.text=l}else if(g.text===void 0)g.text=A;if(t!==void 0)g.type=t;if(r!==void 0&&r!==null)r.forEach((C)=>{g.styles.push(C)});if(i!==void 0&&i!==null)i.forEach((C)=>{g.classes.push(C)});if(u!==void 0)g.dir=u;if(g.props===void 0)g.props=a;else if(a!==void 0)Object.assign(g.props,a);if(o!==void 0){if(o.shape){if(o.shape!==o.shape.toLowerCase()||o.shape.includes("_"))throw Error(`No such shape: ${o.shape}. Shape names should be lowercase.`);else if(!ttA(o.shape))throw Error(`No such shape: ${o.shape}.`);g.type=o?.shape}if(o?.label)g.text=o?.label,g.labelType=this.sanitizeNodeLabelType(o?.labelType);if(o?.icon){if(g.icon=o?.icon,!o.label?.trim()&&g.text===A)g.text=""}if(o?.form)g.form=o?.form;if(o?.pos)g.pos=o?.pos;if(o?.img){if(g.img=o?.img,!o.label?.trim()&&g.text===A)g.text=""}if(o?.constraint)g.constraint=o.constraint;if(o.w)g.assetWidth=Number(o.w);if(o.h)g.assetHeight=Number(o.h)}}addSingleLink(A,e,t,r){let a={start:A,end:e,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};sA.info("abc78 Got edge...",a);let n=t.text;if(n!==void 0){if(a.text=this.sanitizeText(n.text.trim()),a.text.startsWith('"')&&a.text.endsWith('"'))a.text=a.text.substring(1,a.text.length-1);a.labelType=this.sanitizeNodeLabelType(n.type)}if(t!==void 0)a.type=t.type,a.stroke=t.stroke,a.length=t.length>10?10:t.length;if(r&&!this.edges.some((o)=>o.id===r))a.id=r,a.isUserDefinedId=!0;else{let o=this.edges.filter((s)=>s.start===a.start&&s.end===a.end);if(o.length===0)a.id=CE(a.start,a.end,{counter:0,prefix:"L"});else a.id=CE(a.start,a.end,{counter:o.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))sA.info("Pushing edge..."),this.edges.push(a);else throw Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}.
|
||
|
||
Initialize mermaid with maxEdges set to a higher number to allow more edges.
|
||
You cannot set this config via configuration inside the diagram as it is a secure config.
|
||
You have to call mermaid.initialize.`)}isLinkData(A){return A!==null&&typeof A==="object"&&"id"in A&&typeof A.id==="string"}addLink(A,e,t){let r=this.isLinkData(t)?t.id.replace("@",""):void 0;sA.info("addLink",A,e,r);for(let i of A)for(let u of e){let a=i===A[A.length-1],n=u===e[0];if(a&&n)this.addSingleLink(i,u,t,r);else this.addSingleLink(i,u,t,void 0)}}updateLinkInterpolate(A,e){A.forEach((t)=>{if(t==="default")this.edges.defaultInterpolate=e;else this.edges[t].interpolate=e})}updateLink(A,e){A.forEach((t)=>{if(typeof t==="number"&&t>=this.edges.length)throw Error(`The index ${t} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);if(t==="default")this.edges.defaultStyle=e;else if(this.edges[t].style=e,(this.edges[t]?.style?.length??0)>0&&!this.edges[t]?.style?.some((r)=>r?.startsWith("fill")))this.edges[t]?.style?.push("fill:none")})}addClass(A,e){let t=e.join().replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");A.split(",").forEach((r)=>{let i=this.classes.get(r);if(i===void 0)i={id:r,styles:[],textStyles:[]},this.classes.set(r,i);if(t!==void 0&&t!==null)t.forEach((u)=>{if(/color/.exec(u)){let a=u.replace("fill","bgFill");i.textStyles.push(a)}i.styles.push(u)})})}setDirection(A){if(this.direction=A.trim(),/.*</.exec(this.direction))this.direction="RL";if(/.*\^/.exec(this.direction))this.direction="BT";if(/.*>/.exec(this.direction))this.direction="LR";if(/.*v/.exec(this.direction))this.direction="TB";if(this.direction==="TD")this.direction="TB"}setClass(A,e){for(let t of A.split(",")){let r=this.vertices.get(t);if(r)r.classes.push(e);let i=this.edges.find((a)=>a.id===t);if(i)i.classes.push(e);let u=this.subGraphLookup.get(t);if(u)u.classes.push(e)}}setTooltip(A,e){if(e===void 0)return;e=this.sanitizeText(e);for(let t of A.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(t):t,e)}setClickFun(A,e,t){if(OA().securityLevel!=="loose")return;if(e===void 0)return;let r=[];if(typeof t==="string"){r=t.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u<r.length;u++){let a=r[u].trim();if(a.startsWith('"')&&a.endsWith('"'))a=a.substr(1,a.length-2);r[u]=a}}if(r.length===0)r.push(A);let i=this.vertices.get(A);if(i)i.haveCallback=!0,this.funs.push(()=>{let u=this.lookUpDomId(A),a=document.querySelector(`[id="${u}"]`);if(a!==null)a.addEventListener("click",()=>{Jt.runFunc(e,...r)},!1)})}setLink(A,e,t){A.split(",").forEach((r)=>{let i=this.vertices.get(r);if(i!==void 0)i.link=Jt.formatUrl(e,this.config),i.linkTarget=t}),this.setClass(A,"clickable")}getTooltip(A){return this.tooltips.get(A)}setClickEvent(A,e,t){A.split(",").forEach((r)=>{this.setClickFun(r,e,t)}),this.setClass(A,"clickable")}bindFunctions(A){this.funs.forEach((e)=>{e(A)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(A){let e=kw();Qe(A).select("svg").selectAll("g.node").on("mouseover",(i)=>{let u=Qe(i.currentTarget),a=u.attr("title");if(a===null)return;let n=i.currentTarget?.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.text(u.attr("title")).style("left",window.scrollX+n.left+(n.right-n.left)/2+"px").style("top",window.scrollY+n.bottom+"px"),e.html(Al.sanitize(a)),u.classed("hover",!0)}).on("mouseout",(i)=>{e.transition().duration(500).style("opacity",0),Qe(i.currentTarget).classed("hover",!1)})}clear(A="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.diagramId="",this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=A,this.config=OA(),sr()}setGen(A){this.version=A||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(A,e,t){let r=A.text.trim(),i=t.text;if(A===t&&/\s/.exec(t.text))r=void 0;let a=y((B)=>{let E={boolean:{},number:{},string:{}},d=[],I;return{nodeList:B.filter(function(Q){let p=typeof Q;if(Q.stmt&&Q.stmt==="dir")return I=Q.value,!1;if(Q.trim()==="")return!1;if(p in E)return E[p].hasOwnProperty(Q)?!1:E[p][Q]=!0;else return d.includes(Q)?!1:d.push(Q)}),dir:I}},"uniq")(e.flat()),{nodeList:n,dir:o}=a,s=o!==void 0,l=OA().flowchart??{},g=o??(l.inheritDir?this.getDirection()??OA().direction??void 0:void 0);if(this.version==="gen-1")for(let B=0;B<n.length;B++)n[B]=this.lookUpDomId(n[B]);r=r??"subGraph"+this.subCount,i=i||"",i=this.sanitizeText(i),this.subCount=this.subCount+1;let C={id:r,nodes:n,title:i.trim(),classes:[],dir:g,hasExplicitDir:s,labelType:this.sanitizeNodeLabelType(t?.type)};return sA.info("Adding",C.id,C.nodes,C.dir),C.nodes=this.makeUniq(C,this.subGraphs).nodes,this.subGraphs.push(C),this.subGraphLookup.set(r,C),r}getPosForId(A){for(let[e,t]of this.subGraphs.entries())if(t.id===A)return e;return-1}indexNodes2(A,e){let t=this.subGraphs[e].nodes;if(this.secCount=this.secCount+1,this.secCount>2000)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=e,this.subGraphs[e].id===A)return{result:!0,count:0};let r=0,i=1;while(r<t.length){let u=this.getPosForId(t[r]);if(u>=0){let a=this.indexNodes2(A,u);if(a.result)return{result:!0,count:i+a.count};else i=i+a.count}r=r+1}return{result:!1,count:i}}getDepthFirstPos(A){return this.posCrossRef[A]}indexNodes(){if(this.secCount=-1,this.subGraphs.length>0)this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){if(this.firstGraphFlag)return this.firstGraphFlag=!1,!0;return!1}destructStartLink(A){let e=A.trim(),t="arrow_open";switch(e[0]){case"<":t="arrow_point",e=e.slice(1);break;case"x":t="arrow_cross",e=e.slice(1);break;case"o":t="arrow_circle",e=e.slice(1);break}let r="normal";if(e.includes("="))r="thick";if(e.includes("."))r="dotted";return{type:t,stroke:r}}countChar(A,e){let t=e.length,r=0;for(let i=0;i<t;++i)if(e[i]===A)++r;return r}destructEndLink(A){let e=A.trim(),t=e.slice(0,-1),r="arrow_open";switch(e.slice(-1)){case"x":if(r="arrow_cross",e.startsWith("x"))r="double_"+r,t=t.slice(1);break;case">":if(r="arrow_point",e.startsWith("<"))r="double_"+r,t=t.slice(1);break;case"o":if(r="arrow_circle",e.startsWith("o"))r="double_"+r,t=t.slice(1);break}let i="normal",u=t.length-1;if(t.startsWith("="))i="thick";if(t.startsWith("~"))i="invisible";let a=this.countChar(".",t);if(a)i="dotted",u=a;return{type:r,stroke:i,length:u}}destructLink(A,e){let t=this.destructEndLink(A),r;if(e){if(r=this.destructStartLink(e),r.stroke!==t.stroke)return{type:"INVALID",stroke:"INVALID"};if(r.type==="arrow_open")r.type=t.type;else{if(r.type!==t.type)return{type:"INVALID",stroke:"INVALID"};r.type="double_"+r.type}if(r.type==="double_arrow")r.type="double_arrow_point";return r.length=t.length,r}return t}exists(A,e){for(let t of A)if(t.nodes.includes(e))return!0;return!1}makeUniq(A,e){let t=[];return A.nodes.forEach((r,i)=>{if(!this.exists(e,r))t.push(A.nodes[i])}),{nodes:t}}getTypeFromVertex(A){if(A.img)return"imageSquare";if(A.icon){if(A.form==="circle")return"iconCircle";if(A.form==="square")return"iconSquare";if(A.form==="rounded")return"iconRounded";return"icon"}switch(A.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return A.type}}findNode(A,e){return A.find((t)=>t.id===e)}destructEdgeType(A){let e="none",t="arrow_point";switch(A){case"arrow_point":case"arrow_circle":case"arrow_cross":t=A;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":e=A.replace("double_",""),t=e;break}return{arrowTypeStart:e,arrowTypeEnd:t}}addNodeFromVertex(A,e,t,r,i,u){let a=t.get(A.id),n=r.get(A.id)??!1,o=this.findNode(e,A.id);if(o)o.cssStyles=A.styles,o.cssCompiledStyles=this.getCompiledStyles(A.classes),o.cssClasses=A.classes.join(" ");else{let s={id:A.id,label:A.text,labelType:A.labelType,labelStyle:"",parentId:a,padding:i.flowchart?.padding||8,cssStyles:A.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...A.classes]),cssClasses:"default "+A.classes.join(" "),dir:A.dir,domId:A.domId,look:u,link:A.link,linkTarget:A.linkTarget,tooltip:this.getTooltip(A.id),icon:A.icon,pos:A.pos,img:A.img,assetWidth:A.assetWidth,assetHeight:A.assetHeight,constraint:A.constraint};if(n)e.push({...s,isGroup:!0,shape:"rect"});else e.push({...s,isGroup:!1,shape:this.getTypeFromVertex(A)})}}getCompiledStyles(A){let e=[];for(let t of A){let r=this.classes.get(t);if(r?.styles)e=[...e,...r.styles??[]].map((i)=>i.trim());if(r?.textStyles)e=[...e,...r.textStyles??[]].map((i)=>i.trim())}return e}getData(){let A=OA(),e=[],t=[],r=this.getSubGraphs(),i=new Map,u=new Map;for(let o=r.length-1;o>=0;o--){let s=r[o];if(s.nodes.length>0)u.set(s.id,!0);for(let l of s.nodes)i.set(l,s.id)}for(let o=r.length-1;o>=0;o--){let s=r[o];e.push({id:s.id,label:s.title,labelStyle:"",labelType:s.labelType,parentId:i.get(s.id),padding:8,cssCompiledStyles:this.getCompiledStyles(s.classes),cssClasses:s.classes.join(" "),shape:"rect",dir:s.dir==="TD"?"TB":s.dir,explicitDir:s.hasExplicitDir,isGroup:!0,look:A.look})}this.getVertices().forEach((o)=>{this.addNodeFromVertex(o,e,i,u,A,A.look||"classic")});let n=this.getEdges();return n.forEach((o,s)=>{let{arrowTypeStart:l,arrowTypeEnd:g}=this.destructEdgeType(o.type),C=[...n.defaultStyle??[]];if(o.style)C.push(...o.style);let B={id:CE(o.start,o.end,{counter:s,prefix:"L"},o.id),isUserDefinedId:o.isUserDefinedId,start:o.start,end:o.end,type:o.type??"normal",label:o.text,labelType:o.labelType,labelpos:"c",thickness:o.stroke,minlen:o.length,classes:o?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:o?.stroke==="invisible"||o?.type==="arrow_open"?"none":l,arrowTypeEnd:o?.stroke==="invisible"||o?.type==="arrow_open"?"none":g,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(o.classes),labelStyle:C,style:C,pattern:o.stroke,look:A.look,animate:o.animate,animation:o.animation,curve:o.interpolate||this.edges.defaultInterpolate||A.flowchart?.curve};t.push(B)}),{nodes:e,edges:t,other:{},config:A}}defaultConfig(){return jR.flowchart}},a2t=y(function(A,e){return e.db.getClasses()},"getClasses"),n2t=y(async function(A,e,t,r,i){sA.info("REF0:"),sA.info("Drawing state diagram (v2)",e);let{securityLevel:u,flowchart:a,layout:n}=OA();r.db.setDiagramId(e),sA.debug("Before getData: ");let o=r.db.getData();sA.debug("Data: ",o);let s=Ic(e,u),l=r.db.getDirection();if(o.type=r.type,o.layoutAlgorithm=ME(n),o.layoutAlgorithm==="dagre"&&n==="elk")sA.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback.");o.direction=l,o.nodeSpacing=a?.nodeSpacing||50,o.rankSpacing=a?.rankSpacing||50,o.markers=["point","circle","cross"],o.diagramId=e,sA.debug("REF1:",o),await cc(o,s,i);let g=o.config.flowchart?.diagramPadding??8;Jt.insertTitle(s,"flowchartTitleText",a?.titleTopMargin||0,r.db.getDiagramTitle()),pl(s,g,"flowchart",a?.useMaxWidth||!1)},"draw"),o2t={getClasses:a2t,draw:n2t},wnA=function(){var A=y(function(At,Ye,Bt,nt){for(Bt=Bt||{},nt=At.length;nt--;Bt[At[nt]]=Ye);return Bt},"o"),e=[1,4],t=[1,3],r=[1,5],i=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],u=[2,2],a=[1,13],n=[1,14],o=[1,15],s=[1,16],l=[1,23],g=[1,25],C=[1,26],B=[1,27],E=[1,50],d=[1,49],I=[1,29],h=[1,30],Q=[1,31],p=[1,32],m=[1,33],f=[1,45],D=[1,47],w=[1,43],b=[1,48],F=[1,44],v=[1,51],S=[1,46],x=[1,52],k=[1,53],T=[1,34],R=[1,35],L=[1,36],M=[1,37],U=[1,38],Y=[1,58],H=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],J=[1,62],K=[1,61],O=[1,63],_=[8,9,11,75,77,78],z=[1,79],j=[1,92],q=[1,97],CA=[1,96],tA=[1,93],lA=[1,89],gA=[1,95],aA=[1,91],RA=[1,98],wA=[1,94],JA=[1,99],TA=[1,90],qA=[8,9,10,11,40,75,77,78],BA=[8,9,10,11,40,46,75,77,78],bA=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],FA=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],IA=[44,60,89,102,105,106,109,111,114,115,116],nA=[1,122],eA=[1,123],EA=[1,125],mA=[1,124],kA=[44,60,62,74,89,102,105,106,109,111,114,115,116],SA=[1,134],YA=[1,148],dA=[1,149],W=[1,150],Z=[1,151],pA=[1,136],AA=[1,138],DA=[1,142],rA=[1,143],KA=[1,144],_A=[1,145],zA=[1,146],WA=[1,147],te=[1,152],ZA=[1,153],ee=[1,132],$A=[1,133],oe=[1,140],vA=[1,135],Pe=[1,139],MA=[1,137],ke=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],We=[1,155],se=[1,157],Te=[8,9,11],je=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],xe=[1,177],yA=[1,173],Ne=[1,174],He=[1,178],de=[1,175],NA=[1,176],ce=[77,116,119],me=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],Le=[10,106],Lt=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],tt=[1,248],Ht=[1,246],lr=[1,250],It=[1,244],Ct=[1,245],Kt=[1,247],Ce=[1,249],De=[1,251],Ve=[1,269],Vt=[8,9,11,106],jt=[8,9,10,11,60,84,105,106,109,110,111,112],Or={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,direction_td:125,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr",125:"direction_td"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1],[33,1]],performAction:y(function(Ye,Bt,nt,Me,kt,LA,Gi){var HA=LA.length-1;switch(kt){case 2:this.$=[];break;case 3:if(!Array.isArray(LA[HA])||LA[HA].length>0)LA[HA-1].push(LA[HA]);this.$=LA[HA-1];break;case 4:case 183:this.$=LA[HA];break;case 11:Me.setDirection("TB"),this.$="TB";break;case 12:Me.setDirection(LA[HA-1]),this.$=LA[HA-1];break;case 27:this.$=LA[HA-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=Me.addSubGraph(LA[HA-6],LA[HA-1],LA[HA-4]);break;case 34:this.$=Me.addSubGraph(LA[HA-3],LA[HA-1],LA[HA-3]);break;case 35:this.$=Me.addSubGraph(void 0,LA[HA-1],void 0);break;case 37:this.$=LA[HA].trim(),Me.setAccTitle(this.$);break;case 38:case 39:this.$=LA[HA].trim(),Me.setAccDescription(this.$);break;case 43:this.$=LA[HA-1]+LA[HA];break;case 44:this.$=LA[HA];break;case 45:Me.addVertex(LA[HA-1][LA[HA-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,LA[HA]),Me.addLink(LA[HA-3].stmt,LA[HA-1],LA[HA-2]),this.$={stmt:LA[HA-1],nodes:LA[HA-1].concat(LA[HA-3].nodes)};break;case 46:Me.addLink(LA[HA-2].stmt,LA[HA],LA[HA-1]),this.$={stmt:LA[HA],nodes:LA[HA].concat(LA[HA-2].nodes)};break;case 47:Me.addLink(LA[HA-3].stmt,LA[HA-1],LA[HA-2]),this.$={stmt:LA[HA-1],nodes:LA[HA-1].concat(LA[HA-3].nodes)};break;case 48:this.$={stmt:LA[HA-1],nodes:LA[HA-1]};break;case 49:Me.addVertex(LA[HA-1][LA[HA-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,LA[HA]),this.$={stmt:LA[HA-1],nodes:LA[HA-1],shapeData:LA[HA]};break;case 50:this.$={stmt:LA[HA],nodes:LA[HA]};break;case 51:this.$=[LA[HA]];break;case 52:Me.addVertex(LA[HA-5][LA[HA-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,LA[HA-4]),this.$=LA[HA-5].concat(LA[HA]);break;case 53:this.$=LA[HA-4].concat(LA[HA]);break;case 54:this.$=LA[HA];break;case 55:this.$=LA[HA-2],Me.setClass(LA[HA-2],LA[HA]);break;case 56:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"square");break;case 57:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"doublecircle");break;case 58:this.$=LA[HA-5],Me.addVertex(LA[HA-5],LA[HA-2],"circle");break;case 59:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"ellipse");break;case 60:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"stadium");break;case 61:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"subroutine");break;case 62:this.$=LA[HA-7],Me.addVertex(LA[HA-7],LA[HA-1],"rect",void 0,void 0,void 0,Object.fromEntries([[LA[HA-5],LA[HA-3]]]));break;case 63:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"cylinder");break;case 64:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"round");break;case 65:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"diamond");break;case 66:this.$=LA[HA-5],Me.addVertex(LA[HA-5],LA[HA-2],"hexagon");break;case 67:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"odd");break;case 68:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"trapezoid");break;case 69:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"inv_trapezoid");break;case 70:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"lean_right");break;case 71:this.$=LA[HA-3],Me.addVertex(LA[HA-3],LA[HA-1],"lean_left");break;case 72:this.$=LA[HA],Me.addVertex(LA[HA]);break;case 73:LA[HA-1].text=LA[HA],this.$=LA[HA-1];break;case 74:case 75:LA[HA-2].text=LA[HA-1],this.$=LA[HA-2];break;case 76:this.$=LA[HA];break;case 77:var Er=Me.destructLink(LA[HA],LA[HA-2]);this.$={type:Er.type,stroke:Er.stroke,length:Er.length,text:LA[HA-1]};break;case 78:var Er=Me.destructLink(LA[HA],LA[HA-2]);this.$={type:Er.type,stroke:Er.stroke,length:Er.length,text:LA[HA-1],id:LA[HA-3]};break;case 79:this.$={text:LA[HA],type:"text"};break;case 80:this.$={text:LA[HA-1].text+""+LA[HA],type:LA[HA-1].type};break;case 81:this.$={text:LA[HA],type:"string"};break;case 82:this.$={text:LA[HA],type:"markdown"};break;case 83:var Er=Me.destructLink(LA[HA]);this.$={type:Er.type,stroke:Er.stroke,length:Er.length};break;case 84:var Er=Me.destructLink(LA[HA]);this.$={type:Er.type,stroke:Er.stroke,length:Er.length,id:LA[HA-1]};break;case 85:this.$=LA[HA-1];break;case 86:this.$={text:LA[HA],type:"text"};break;case 87:this.$={text:LA[HA-1].text+""+LA[HA],type:LA[HA-1].type};break;case 88:this.$={text:LA[HA],type:"string"};break;case 89:case 104:this.$={text:LA[HA],type:"markdown"};break;case 101:this.$={text:LA[HA],type:"text"};break;case 102:this.$={text:LA[HA-1].text+""+LA[HA],type:LA[HA-1].type};break;case 103:this.$={text:LA[HA],type:"text"};break;case 105:this.$=LA[HA-4],Me.addClass(LA[HA-2],LA[HA]);break;case 106:this.$=LA[HA-4],Me.setClass(LA[HA-2],LA[HA]);break;case 107:case 115:this.$=LA[HA-1],Me.setClickEvent(LA[HA-1],LA[HA]);break;case 108:case 116:this.$=LA[HA-3],Me.setClickEvent(LA[HA-3],LA[HA-2]),Me.setTooltip(LA[HA-3],LA[HA]);break;case 109:this.$=LA[HA-2],Me.setClickEvent(LA[HA-2],LA[HA-1],LA[HA]);break;case 110:this.$=LA[HA-4],Me.setClickEvent(LA[HA-4],LA[HA-3],LA[HA-2]),Me.setTooltip(LA[HA-4],LA[HA]);break;case 111:this.$=LA[HA-2],Me.setLink(LA[HA-2],LA[HA]);break;case 112:this.$=LA[HA-4],Me.setLink(LA[HA-4],LA[HA-2]),Me.setTooltip(LA[HA-4],LA[HA]);break;case 113:this.$=LA[HA-4],Me.setLink(LA[HA-4],LA[HA-2],LA[HA]);break;case 114:this.$=LA[HA-6],Me.setLink(LA[HA-6],LA[HA-4],LA[HA]),Me.setTooltip(LA[HA-6],LA[HA-2]);break;case 117:this.$=LA[HA-1],Me.setLink(LA[HA-1],LA[HA]);break;case 118:this.$=LA[HA-3],Me.setLink(LA[HA-3],LA[HA-2]),Me.setTooltip(LA[HA-3],LA[HA]);break;case 119:this.$=LA[HA-3],Me.setLink(LA[HA-3],LA[HA-2],LA[HA]);break;case 120:this.$=LA[HA-5],Me.setLink(LA[HA-5],LA[HA-4],LA[HA]),Me.setTooltip(LA[HA-5],LA[HA-2]);break;case 121:this.$=LA[HA-4],Me.addVertex(LA[HA-2],void 0,void 0,LA[HA]);break;case 122:this.$=LA[HA-4],Me.updateLink([LA[HA-2]],LA[HA]);break;case 123:this.$=LA[HA-4],Me.updateLink(LA[HA-2],LA[HA]);break;case 124:this.$=LA[HA-8],Me.updateLinkInterpolate([LA[HA-6]],LA[HA-2]),Me.updateLink([LA[HA-6]],LA[HA]);break;case 125:this.$=LA[HA-8],Me.updateLinkInterpolate(LA[HA-6],LA[HA-2]),Me.updateLink(LA[HA-6],LA[HA]);break;case 126:this.$=LA[HA-6],Me.updateLinkInterpolate([LA[HA-4]],LA[HA]);break;case 127:this.$=LA[HA-6],Me.updateLinkInterpolate(LA[HA-4],LA[HA]);break;case 128:case 130:this.$=[LA[HA]];break;case 129:case 131:LA[HA-2].push(LA[HA]),this.$=LA[HA-2];break;case 133:this.$=LA[HA-1]+LA[HA];break;case 181:this.$=LA[HA];break;case 182:this.$=LA[HA-1]+""+LA[HA];break;case 184:this.$=LA[HA-1]+""+LA[HA];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break;case 189:this.$={stmt:"dir",value:"TD"};break}},"anonymous"),table:[{3:1,4:2,9:e,10:t,12:r},{1:[3]},A(i,u,{5:6}),{4:7,9:e,10:t,12:r},{4:8,9:e,10:t,12:r},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:a,9:n,10:o,11:s,20:17,22:18,23:19,24:20,25:21,26:22,27:l,33:24,34:g,36:C,38:B,42:28,43:39,44:E,45:40,47:41,60:d,84:I,85:h,86:Q,87:p,88:m,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k,121:T,122:R,123:L,124:M,125:U},A(i,[2,9]),A(i,[2,10]),A(i,[2,11]),{8:[1,55],9:[1,56],10:Y,15:54,18:57},A(H,[2,3]),A(H,[2,4]),A(H,[2,5]),A(H,[2,6]),A(H,[2,7]),A(H,[2,8]),{8:J,9:K,11:O,21:59,41:60,72:64,75:[1,65],77:[1,67],78:[1,66]},{8:J,9:K,11:O,21:68},{8:J,9:K,11:O,21:69},{8:J,9:K,11:O,21:70},{8:J,9:K,11:O,21:71},{8:J,9:K,11:O,21:72},{8:J,9:K,10:[1,73],11:O,21:74},A(H,[2,36]),{35:[1,75]},{37:[1,76]},A(H,[2,39]),A(_,[2,50],{18:77,39:78,10:Y,40:z}),{10:[1,80]},{10:[1,81]},{10:[1,82]},{10:[1,83]},{14:j,44:q,60:CA,80:[1,87],89:tA,95:[1,84],97:[1,85],101:86,105:lA,106:gA,109:aA,111:RA,114:wA,115:JA,116:TA,120:88},A(H,[2,185]),A(H,[2,186]),A(H,[2,187]),A(H,[2,188]),A(H,[2,189]),A(qA,[2,51]),A(qA,[2,54],{46:[1,100]}),A(BA,[2,72],{113:113,29:[1,101],44:E,48:[1,102],50:[1,103],52:[1,104],54:[1,105],56:[1,106],58:[1,107],60:d,63:[1,108],65:[1,109],67:[1,110],68:[1,111],70:[1,112],89:f,102:D,105:w,106:b,109:F,111:v,114:S,115:x,116:k}),A(bA,[2,181]),A(bA,[2,142]),A(bA,[2,143]),A(bA,[2,144]),A(bA,[2,145]),A(bA,[2,146]),A(bA,[2,147]),A(bA,[2,148]),A(bA,[2,149]),A(bA,[2,150]),A(bA,[2,151]),A(bA,[2,152]),A(i,[2,12]),A(i,[2,18]),A(i,[2,19]),{9:[1,114]},A(FA,[2,26],{18:115,10:Y}),A(H,[2,27]),{42:116,43:39,44:E,45:40,47:41,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k},A(H,[2,40]),A(H,[2,41]),A(H,[2,42]),A(IA,[2,76],{73:117,62:[1,119],74:[1,118]}),{76:120,79:121,80:nA,81:eA,116:EA,119:mA},{75:[1,126],77:[1,127]},A(kA,[2,83]),A(H,[2,28]),A(H,[2,29]),A(H,[2,30]),A(H,[2,31]),A(H,[2,32]),{10:SA,12:YA,14:dA,27:W,28:128,32:Z,44:pA,60:AA,75:DA,80:[1,130],81:[1,131],83:141,84:rA,85:KA,86:_A,87:zA,88:WA,89:te,90:ZA,91:129,105:ee,109:$A,111:oe,114:vA,115:Pe,116:MA},A(ke,u,{5:154}),A(H,[2,37]),A(H,[2,38]),A(_,[2,48],{44:We}),A(_,[2,49],{18:156,10:Y,40:se}),A(qA,[2,44]),{44:E,47:158,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k},{102:[1,159],103:160,105:[1,161]},{44:E,47:162,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k},{44:E,47:163,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k},A(Te,[2,107],{10:[1,164],96:[1,165]}),{80:[1,166]},A(Te,[2,115],{120:168,10:[1,167],14:j,44:q,60:CA,89:tA,105:lA,106:gA,109:aA,111:RA,114:wA,115:JA,116:TA}),A(Te,[2,117],{10:[1,169]}),A(je,[2,183]),A(je,[2,170]),A(je,[2,171]),A(je,[2,172]),A(je,[2,173]),A(je,[2,174]),A(je,[2,175]),A(je,[2,176]),A(je,[2,177]),A(je,[2,178]),A(je,[2,179]),A(je,[2,180]),{44:E,47:170,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k},{30:171,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:179,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:181,50:[1,180],67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:182,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:183,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:184,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{109:[1,185]},{30:186,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:187,65:[1,188],67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:189,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:190,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{30:191,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},A(bA,[2,182]),A(i,[2,20]),A(FA,[2,25]),A(_,[2,46],{39:192,18:193,10:Y,40:z}),A(IA,[2,73],{10:[1,194]}),{10:[1,195]},{30:196,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{77:[1,197],79:198,116:EA,119:mA},A(ce,[2,79]),A(ce,[2,81]),A(ce,[2,82]),A(ce,[2,168]),A(ce,[2,169]),{76:199,79:121,80:nA,81:eA,116:EA,119:mA},A(kA,[2,84]),{8:J,9:K,10:SA,11:O,12:YA,14:dA,21:201,27:W,29:[1,200],32:Z,44:pA,60:AA,75:DA,83:141,84:rA,85:KA,86:_A,87:zA,88:WA,89:te,90:ZA,91:202,105:ee,109:$A,111:oe,114:vA,115:Pe,116:MA},A(me,[2,101]),A(me,[2,103]),A(me,[2,104]),A(me,[2,157]),A(me,[2,158]),A(me,[2,159]),A(me,[2,160]),A(me,[2,161]),A(me,[2,162]),A(me,[2,163]),A(me,[2,164]),A(me,[2,165]),A(me,[2,166]),A(me,[2,167]),A(me,[2,90]),A(me,[2,91]),A(me,[2,92]),A(me,[2,93]),A(me,[2,94]),A(me,[2,95]),A(me,[2,96]),A(me,[2,97]),A(me,[2,98]),A(me,[2,99]),A(me,[2,100]),{6:11,7:12,8:a,9:n,10:o,11:s,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,203],33:24,34:g,36:C,38:B,42:28,43:39,44:E,45:40,47:41,60:d,84:I,85:h,86:Q,87:p,88:m,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k,121:T,122:R,123:L,124:M,125:U},{10:Y,18:204},{44:[1,205]},A(qA,[2,43]),{10:[1,206],44:E,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:113,114:S,115:x,116:k},{10:[1,207]},{10:[1,208],106:[1,209]},A(Le,[2,128]),{10:[1,210],44:E,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:113,114:S,115:x,116:k},{10:[1,211],44:E,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:113,114:S,115:x,116:k},{80:[1,212]},A(Te,[2,109],{10:[1,213]}),A(Te,[2,111],{10:[1,214]}),{80:[1,215]},A(je,[2,184]),{80:[1,216],98:[1,217]},A(qA,[2,55],{113:113,44:E,60:d,89:f,102:D,105:w,106:b,109:F,111:v,114:S,115:x,116:k}),{31:[1,218],67:xe,82:219,116:He,117:de,118:NA},A(Lt,[2,86]),A(Lt,[2,88]),A(Lt,[2,89]),A(Lt,[2,153]),A(Lt,[2,154]),A(Lt,[2,155]),A(Lt,[2,156]),{49:[1,220],67:xe,82:219,116:He,117:de,118:NA},{30:221,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{51:[1,222],67:xe,82:219,116:He,117:de,118:NA},{53:[1,223],67:xe,82:219,116:He,117:de,118:NA},{55:[1,224],67:xe,82:219,116:He,117:de,118:NA},{57:[1,225],67:xe,82:219,116:He,117:de,118:NA},{60:[1,226]},{64:[1,227],67:xe,82:219,116:He,117:de,118:NA},{66:[1,228],67:xe,82:219,116:He,117:de,118:NA},{30:229,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},{31:[1,230],67:xe,82:219,116:He,117:de,118:NA},{67:xe,69:[1,231],71:[1,232],82:219,116:He,117:de,118:NA},{67:xe,69:[1,234],71:[1,233],82:219,116:He,117:de,118:NA},A(_,[2,45],{18:156,10:Y,40:se}),A(_,[2,47],{44:We}),A(IA,[2,75]),A(IA,[2,74]),{62:[1,235],67:xe,82:219,116:He,117:de,118:NA},A(IA,[2,77]),A(ce,[2,80]),{77:[1,236],79:198,116:EA,119:mA},{30:237,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},A(ke,u,{5:238}),A(me,[2,102]),A(H,[2,35]),{43:239,44:E,45:40,47:41,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k},{10:Y,18:240},{10:tt,60:Ht,84:lr,92:241,105:It,107:242,108:243,109:Ct,110:Kt,111:Ce,112:De},{10:tt,60:Ht,84:lr,92:252,104:[1,253],105:It,107:242,108:243,109:Ct,110:Kt,111:Ce,112:De},{10:tt,60:Ht,84:lr,92:254,104:[1,255],105:It,107:242,108:243,109:Ct,110:Kt,111:Ce,112:De},{105:[1,256]},{10:tt,60:Ht,84:lr,92:257,105:It,107:242,108:243,109:Ct,110:Kt,111:Ce,112:De},{44:E,47:258,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k},A(Te,[2,108]),{80:[1,259]},{80:[1,260],98:[1,261]},A(Te,[2,116]),A(Te,[2,118],{10:[1,262]}),A(Te,[2,119]),A(BA,[2,56]),A(Lt,[2,87]),A(BA,[2,57]),{51:[1,263],67:xe,82:219,116:He,117:de,118:NA},A(BA,[2,64]),A(BA,[2,59]),A(BA,[2,60]),A(BA,[2,61]),{109:[1,264]},A(BA,[2,63]),A(BA,[2,65]),{66:[1,265],67:xe,82:219,116:He,117:de,118:NA},A(BA,[2,67]),A(BA,[2,68]),A(BA,[2,70]),A(BA,[2,69]),A(BA,[2,71]),A([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),A(IA,[2,78]),{31:[1,266],67:xe,82:219,116:He,117:de,118:NA},{6:11,7:12,8:a,9:n,10:o,11:s,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,267],33:24,34:g,36:C,38:B,42:28,43:39,44:E,45:40,47:41,60:d,84:I,85:h,86:Q,87:p,88:m,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k,121:T,122:R,123:L,124:M,125:U},A(qA,[2,53]),{43:268,44:E,45:40,47:41,60:d,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k},A(Te,[2,121],{106:Ve}),A(Vt,[2,130],{108:270,10:tt,60:Ht,84:lr,105:It,109:Ct,110:Kt,111:Ce,112:De}),A(jt,[2,132]),A(jt,[2,134]),A(jt,[2,135]),A(jt,[2,136]),A(jt,[2,137]),A(jt,[2,138]),A(jt,[2,139]),A(jt,[2,140]),A(jt,[2,141]),A(Te,[2,122],{106:Ve}),{10:[1,271]},A(Te,[2,123],{106:Ve}),{10:[1,272]},A(Le,[2,129]),A(Te,[2,105],{106:Ve}),A(Te,[2,106],{113:113,44:E,60:d,89:f,102:D,105:w,106:b,109:F,111:v,114:S,115:x,116:k}),A(Te,[2,110]),A(Te,[2,112],{10:[1,273]}),A(Te,[2,113]),{98:[1,274]},{51:[1,275]},{62:[1,276]},{66:[1,277]},{8:J,9:K,11:O,21:278},A(H,[2,34]),A(qA,[2,52]),{10:tt,60:Ht,84:lr,105:It,107:279,108:243,109:Ct,110:Kt,111:Ce,112:De},A(jt,[2,133]),{14:j,44:q,60:CA,89:tA,101:280,105:lA,106:gA,109:aA,111:RA,114:wA,115:JA,116:TA,120:88},{14:j,44:q,60:CA,89:tA,101:281,105:lA,106:gA,109:aA,111:RA,114:wA,115:JA,116:TA,120:88},{98:[1,282]},A(Te,[2,120]),A(BA,[2,58]),{30:283,67:xe,80:yA,81:Ne,82:172,116:He,117:de,118:NA},A(BA,[2,66]),A(ke,u,{5:284}),A(Vt,[2,131],{108:270,10:tt,60:Ht,84:lr,105:It,109:Ct,110:Kt,111:Ce,112:De}),A(Te,[2,126],{120:168,10:[1,285],14:j,44:q,60:CA,89:tA,105:lA,106:gA,109:aA,111:RA,114:wA,115:JA,116:TA}),A(Te,[2,127],{120:168,10:[1,286],14:j,44:q,60:CA,89:tA,105:lA,106:gA,109:aA,111:RA,114:wA,115:JA,116:TA}),A(Te,[2,114]),{31:[1,287],67:xe,82:219,116:He,117:de,118:NA},{6:11,7:12,8:a,9:n,10:o,11:s,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,288],33:24,34:g,36:C,38:B,42:28,43:39,44:E,45:40,47:41,60:d,84:I,85:h,86:Q,87:p,88:m,89:f,102:D,105:w,106:b,109:F,111:v,113:42,114:S,115:x,116:k,121:T,122:R,123:L,124:M,125:U},{10:tt,60:Ht,84:lr,92:289,105:It,107:242,108:243,109:Ct,110:Kt,111:Ce,112:De},{10:tt,60:Ht,84:lr,92:290,105:It,107:242,108:243,109:Ct,110:Kt,111:Ce,112:De},A(BA,[2,62]),A(H,[2,33]),A(Te,[2,124],{106:Ve}),A(Te,[2,125],{106:Ve})],defaultActions:{},parseError:y(function(Ye,Bt){if(Bt.recoverable)this.trace(Ye);else{var nt=Error(Ye);throw nt.hash=Bt,nt}},"parseError"),parse:y(function(Ye){var Bt=this,nt=[0],Me=[],kt=[null],LA=[],Gi=this.table,HA="",Er=0,xa=0,ns=0,Og=2,os=1,ri=LA.slice.call(arguments,1),Ku=Object.create(this.lexer),yo={yy:{}};for(var v0 in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,v0))yo.yy[v0]=this.yy[v0];if(Ku.setInput(Ye,yo.yy),yo.yy.lexer=Ku,yo.yy.parser=this,typeof Ku.yylloc>"u")Ku.yylloc={};var Sa=Ku.yylloc;LA.push(Sa);var JB=Ku.options&&Ku.options.ranges;if(typeof yo.yy.parseError==="function")this.parseError=yo.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function bn(F0){nt.length=nt.length-2*F0,kt.length=kt.length-F0,LA.length=LA.length-F0}y(bn,"popStack");function AC(){var F0=Me.pop()||Ku.lex()||os;if(typeof F0!=="number"){if(F0 instanceof Array)Me=F0,F0=Me.pop();F0=Bt.symbols_[F0]||F0}return F0}y(AC,"lex");var Du,zl,Pa,k0,aQ,eC,tC={},Zl,ss,rC,Pg;while(!0){if(Pa=nt[nt.length-1],this.defaultActions[Pa])k0=this.defaultActions[Pa];else{if(Du===null||typeof Du>"u")Du=AC();k0=Gi[Pa]&&Gi[Pa][Du]}if(typeof k0>"u"||!k0.length||!k0[0]){var OB="";Pg=[];for(Zl in Gi[Pa])if(this.terminals_[Zl]&&Zl>Og)Pg.push("'"+this.terminals_[Zl]+"'");if(Ku.showPosition)OB="Parse error on line "+(Er+1)+`:
|
||
`+Ku.showPosition()+`
|
||
Expecting `+Pg.join(", ")+", got '"+(this.terminals_[Du]||Du)+"'";else OB="Parse error on line "+(Er+1)+": Unexpected "+(Du==os?"end of input":"'"+(this.terminals_[Du]||Du)+"'");this.parseError(OB,{text:Ku.match,token:this.terminals_[Du]||Du,line:Ku.yylineno,loc:Sa,expected:Pg})}if(k0[0]instanceof Array&&k0.length>1)throw Error("Parse Error: multiple actions possible at state: "+Pa+", token: "+Du);switch(k0[0]){case 1:if(nt.push(Du),kt.push(Ku.yytext),LA.push(Ku.yylloc),nt.push(k0[1]),Du=null,!zl){if(xa=Ku.yyleng,HA=Ku.yytext,Er=Ku.yylineno,Sa=Ku.yylloc,ns>0)ns--}else Du=zl,zl=null;break;case 2:if(ss=this.productions_[k0[1]][1],tC.$=kt[kt.length-ss],tC._$={first_line:LA[LA.length-(ss||1)].first_line,last_line:LA[LA.length-1].last_line,first_column:LA[LA.length-(ss||1)].first_column,last_column:LA[LA.length-1].last_column},JB)tC._$.range=[LA[LA.length-(ss||1)].range[0],LA[LA.length-1].range[1]];if(eC=this.performAction.apply(tC,[HA,xa,Er,yo.yy,k0[1],kt,LA].concat(ri)),typeof eC<"u")return eC;if(ss)nt=nt.slice(0,-1*ss*2),kt=kt.slice(0,-1*ss),LA=LA.slice(0,-1*ss);nt.push(this.productions_[k0[1]][0]),kt.push(tC.$),LA.push(tC._$),rC=Gi[nt[nt.length-2]][nt[nt.length-1]],nt.push(rC);break;case 3:return!0}}return!0},"parse")},bi=function(){var At={EOF:1,parseError:y(function(Bt,nt){if(this.yy.parser)this.yy.parser.parseError(Bt,nt);else throw Error(Bt)},"parseError"),setInput:y(function(Ye,Bt){if(this.yy=Bt||this.yy||{},this._input=Ye,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var Ye=this._input[0];this.yytext+=Ye,this.yyleng++,this.offset++,this.match+=Ye,this.matched+=Ye;var Bt=Ye.match(/(?:\r\n?|\n).*/g);if(Bt)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),Ye},"input"),unput:y(function(Ye){var Bt=Ye.length,nt=Ye.split(/(?:\r\n?|\n)/g);this._input=Ye+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Bt),this.offset-=Bt;var Me=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),nt.length-1)this.yylineno-=nt.length-1;var kt=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:nt?(nt.length===Me.length?this.yylloc.first_column:0)+Me[Me.length-nt.length].length-nt[0].length:this.yylloc.first_column-Bt},this.options.ranges)this.yylloc.range=[kt[0],kt[0]+this.yyleng-Bt];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(Ye){this.unput(this.match.slice(Ye))},"less"),pastInput:y(function(){var Ye=this.matched.substr(0,this.matched.length-this.match.length);return(Ye.length>20?"...":"")+Ye.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var Ye=this.match;if(Ye.length<20)Ye+=this._input.substr(0,20-Ye.length);return(Ye.substr(0,20)+(Ye.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var Ye=this.pastInput(),Bt=Array(Ye.length+1).join("-");return Ye+this.upcomingInput()+`
|
||
`+Bt+"^"},"showPosition"),test_match:y(function(Ye,Bt){var nt,Me,kt;if(this.options.backtrack_lexer){if(kt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)kt.yylloc.range=this.yylloc.range.slice(0)}if(Me=Ye[0].match(/(?:\r\n?|\n).*/g),Me)this.yylineno+=Me.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Me?Me[Me.length-1].length-Me[Me.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ye[0].length},this.yytext+=Ye[0],this.match+=Ye[0],this.matches=Ye,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ye[0].length),this.matched+=Ye[0],nt=this.performAction.call(this,this.yy,this,Bt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(nt)return nt;else if(this._backtrack){for(var LA in kt)this[LA]=kt[LA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var Ye,Bt,nt,Me;if(!this._more)this.yytext="",this.match="";var kt=this._currentRules();for(var LA=0;LA<kt.length;LA++)if(nt=this._input.match(this.rules[kt[LA]]),nt&&(!Bt||nt[0].length>Bt[0].length)){if(Bt=nt,Me=LA,this.options.backtrack_lexer)if(Ye=this.test_match(nt,kt[LA]),Ye!==!1)return Ye;else if(this._backtrack){Bt=!1;continue}else return!1;else if(!this.options.flex)break}if(Bt){if(Ye=this.test_match(Bt,kt[Me]),Ye!==!1)return Ye;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var Bt=this.next();if(Bt)return Bt;else return this.lex()},"lex"),begin:y(function(Bt){this.conditionStack.push(Bt)},"begin"),popState:y(function(){var Bt=this.conditionStack.length-1;if(Bt>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(Bt){if(Bt=this.conditionStack.length-1-Math.abs(Bt||0),Bt>=0)return this.conditionStack[Bt];else return"INITIAL"},"topState"),pushState:y(function(Bt){this.begin(Bt)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(Bt,nt,Me,kt){var LA=kt;switch(Me){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),nt.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let Gi=/\n\s*/g;return nt.yytext=nt.yytext.replace(Gi,"<br/>"),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:if(Bt.lex.firstGraph())this.begin("dir");return 12;case 36:if(Bt.lex.firstGraph())this.begin("dir");return 12;case 37:if(Bt.lex.firstGraph())this.begin("dir");return 12;case 38:if(Bt.lex.firstGraph())this.begin("dir");return 12;case 39:return 27;case 40:return 32;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return 98;case 45:return this.popState(),13;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return this.popState(),14;break;case 56:return 121;case 57:return 122;case 58:return 123;case 59:return 124;case 60:return 125;case 61:return 78;case 62:return 105;case 63:return 111;case 64:return 46;case 65:return 60;case 66:return 44;case 67:return 8;case 68:return 106;case 69:return 115;case 70:return this.popState(),77;break;case 71:return this.pushState("edgeText"),75;break;case 72:return 119;case 73:return this.popState(),77;break;case 74:return this.pushState("thickEdgeText"),75;break;case 75:return 119;case 76:return this.popState(),77;break;case 77:return this.pushState("dottedEdgeText"),75;break;case 78:return 119;case 79:return 77;case 80:return this.popState(),53;break;case 81:return"TEXT";case 82:return this.pushState("ellipseText"),52;break;case 83:return this.popState(),55;break;case 84:return this.pushState("text"),54;break;case 85:return this.popState(),57;break;case 86:return this.pushState("text"),56;break;case 87:return 58;case 88:return this.pushState("text"),67;break;case 89:return this.popState(),64;break;case 90:return this.pushState("text"),63;break;case 91:return this.popState(),49;break;case 92:return this.pushState("text"),48;break;case 93:return this.popState(),69;break;case 94:return this.popState(),71;break;case 95:return 117;case 96:return this.pushState("trapText"),68;break;case 97:return this.pushState("trapText"),70;break;case 98:return 118;case 99:return 67;case 100:return 90;case 101:return"SEP";case 102:return 89;case 103:return 115;case 104:return 111;case 105:return 44;case 106:return 109;case 107:return 114;case 108:return 116;case 109:return this.popState(),62;break;case 110:return this.pushState("text"),62;break;case 111:return this.popState(),51;break;case 112:return this.pushState("text"),50;break;case 113:return this.popState(),31;break;case 114:return this.pushState("text"),29;break;case 115:return this.popState(),66;break;case 116:return this.pushState("text"),65;break;case 117:return"TEXT";case 118:return"QUOTE";case 119:return 9;case 120:return 10;case 121:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:swimlane-beta\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:.*direction\s+TD[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},shapeData:{rules:[8,11,12,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},callbackargs:{rules:[17,18,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},callbackname:{rules:[14,15,16,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},href:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},click:{rules:[21,24,33,34,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},dottedEdgeText:{rules:[21,24,76,78,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},thickEdgeText:{rules:[21,24,73,75,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},edgeText:{rules:[21,24,70,72,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},trapText:{rules:[21,24,79,82,84,86,90,92,93,94,95,96,97,110,112,114,116],inclusive:!1},ellipseText:{rules:[21,24,79,80,81,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},text:{rules:[21,24,79,82,83,84,85,86,89,90,91,92,96,97,109,110,111,112,113,114,115,116,117],inclusive:!1},vertex:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},dir:{rules:[21,24,45,46,47,48,49,50,51,52,53,54,55,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_descr:{rules:[3,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_title:{rules:[1,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},md_string:{rules:[19,20,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},string:{rules:[21,22,23,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,44,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,73,74,76,77,79,82,84,86,87,88,90,92,96,97,98,99,100,101,102,103,104,105,106,107,108,110,112,114,116,118,119,120,121],inclusive:!0}}};return At}();Or.lexer=bi;function fr(){this.yy={}}return y(fr,"Parser"),fr.prototype=Or,Or.Parser=fr,new fr}();wnA.parser=wnA;_OA=wnA,WOA=Object.assign({},_OA);WOA.parse=(A)=>{let e=A.replace(/}\s*\n/g,`}
|
||
`);return _OA.parse(e)};s2t=WOA,l2t=y((A,e)=>{let t=_p,r=t(A,"r"),i=t(A,"g"),u=t(A,"b");return ln(r,i,u,e)},"fade"),g2t=y((A)=>`.label {
|
||
font-family: ${A.fontFamily};
|
||
color: ${A.nodeTextColor||A.textColor};
|
||
}
|
||
.cluster-label text {
|
||
fill: ${A.titleColor};
|
||
}
|
||
.cluster-label span {
|
||
color: ${A.titleColor};
|
||
}
|
||
.cluster-label span p {
|
||
background-color: transparent;
|
||
}
|
||
|
||
.label text,span {
|
||
fill: ${A.nodeTextColor||A.textColor};
|
||
color: ${A.nodeTextColor||A.textColor};
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: ${A.strokeWidth??1}px;
|
||
}
|
||
.rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label {
|
||
text-anchor: middle;
|
||
}
|
||
|
||
.node .katex path {
|
||
fill: #000;
|
||
stroke: #000;
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.rough-node .label,.node .label, .image-shape .label, .icon-shape .label {
|
||
text-align: center;
|
||
}
|
||
.node.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
|
||
.root .anchor path {
|
||
fill: ${A.lineColor} !important;
|
||
stroke-width: 0;
|
||
stroke: ${A.lineColor};
|
||
}
|
||
|
||
.arrowheadPath {
|
||
fill: ${A.arrowheadColor};
|
||
}
|
||
|
||
.edgePath .path {
|
||
stroke: ${A.lineColor};
|
||
stroke-width: ${A.strokeWidth??2}px;
|
||
}
|
||
|
||
.flowchart-link {
|
||
stroke: ${A.lineColor};
|
||
fill: none;
|
||
}
|
||
|
||
.edgeLabel {
|
||
background-color: ${A.edgeLabelBackground};
|
||
p {
|
||
background-color: ${A.edgeLabelBackground};
|
||
}
|
||
rect {
|
||
opacity: 0.5;
|
||
background-color: ${A.edgeLabelBackground};
|
||
fill: ${A.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
|
||
/* For html labels only */
|
||
.labelBkg {
|
||
background-color: ${l2t(A.edgeLabelBackground,0.5)};
|
||
// background-color:
|
||
}
|
||
|
||
.cluster rect {
|
||
fill: ${A.clusterBkg};
|
||
stroke: ${A.clusterBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.cluster text {
|
||
fill: ${A.titleColor};
|
||
}
|
||
|
||
.cluster span {
|
||
color: ${A.titleColor};
|
||
}
|
||
/* .cluster div {
|
||
color: ${A.titleColor};
|
||
} */
|
||
|
||
div.mermaidTooltip {
|
||
position: absolute;
|
||
text-align: center;
|
||
max-width: 200px;
|
||
padding: 2px;
|
||
font-family: ${A.fontFamily};
|
||
font-size: 12px;
|
||
background: ${A.tertiaryColor};
|
||
border: 1px solid ${A.border2};
|
||
border-radius: 2px;
|
||
pointer-events: none;
|
||
z-index: 100;
|
||
}
|
||
|
||
.flowchartTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${A.textColor};
|
||
}
|
||
|
||
rect.text {
|
||
fill: none;
|
||
stroke-width: 0;
|
||
}
|
||
|
||
.icon-shape, .image-shape {
|
||
background-color: ${A.edgeLabelBackground};
|
||
p {
|
||
background-color: ${A.edgeLabelBackground};
|
||
padding: 2px;
|
||
}
|
||
.label rect {
|
||
opacity: 0.5;
|
||
background-color: ${A.edgeLabelBackground};
|
||
fill: ${A.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
${HE()}
|
||
`,"getStyles"),bnA=g2t,RY=y(({defaultLayout:A,styles:e=bnA}={})=>({parser:s2t,get db(){return new u2t},renderer:o2t,styles:e,init:y((t)=>{if(!t.flowchart)t.flowchart={};let r=qR().layout??A??t.layout;if(r)kb({layout:r});t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,kb({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}})},"init")}),"createFlowDiagram"),g3=RY()});var NY=P(()=>{vnA();KE();Eg();fl();ff();hl();Bg();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt()});var c2t,C2t,qOA;var zOA=P(()=>{vnA();KE();Eg();fl();ff();hl();Bg();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();c2t=y((A)=>`${bnA(A)}
|
||
.swimlane.cluster rect {
|
||
stroke: ${A.clusterBorder} !important;
|
||
}
|
||
[data-look="neo"].cluster rect {
|
||
filter: none;
|
||
}
|
||
`,"getStyles"),C2t=c2t,qOA=RY({defaultLayout:"swimlane",styles:C2t})});var knA,B2t,E2t,VOA,d2t,ZOA,GY,I2t,h2t,Q2t,jOA;var XOA=P(()=>{Eg();fl();hl();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();Pr();kn();knA=function(){var A=y(function(JA,TA,qA,BA){for(qA=qA||{},BA=JA.length;BA--;qA[JA[BA]]=TA);return qA},"o"),e=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],t=[1,10],r=[1,11],i=[1,12],u=[1,13],a=[1,23],n=[1,24],o=[1,25],s=[1,26],l=[1,27],g=[1,19],C=[1,28],B=[1,29],E=[1,20],d=[1,18],I=[1,21],h=[1,22],Q=[1,36],p=[1,37],m=[1,38],f=[1,39],D=[1,40],w=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,66,67,68,69,70],b=[1,45],F=[1,46],v=[1,55],S=[40,48,50,51,52,71,72],x=[1,66],k=[1,64],T=[1,61],R=[1,65],L=[1,67],M=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,66,67,68,69,70],U=[66,67,68,69,70],Y=[1,85],H=[1,84],J=[1,82],K=[1,83],O=[6,10,42,47],_=[6,10,13,41,42,47,48,49],z=[1,93],j=[1,92],q=[1,91],CA=[19,58],tA=[1,102],lA=[1,101],gA=[19,58,61,63],aA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,"?":59,attributeKeyType:60,",":61,ATTRIBUTE_KEY:62,COMMENT:63,cardinality:64,relType:65,ZERO_OR_ONE:66,ZERO_OR_MORE:67,ONE_OR_MORE:68,ONLY_ONE:69,MD_PARENT:70,NON_IDENTIFYING:71,IDENTIFYING:72,WORD:73,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",51:"DECIMAL_NUM",52:"ENTITY_ONE",58:"ATTRIBUTE_WORD",59:"?",61:",",62:"ATTRIBUTE_KEY",63:"COMMENT",66:"ZERO_OR_ONE",67:"ZERO_OR_MORE",68:"ONE_OR_MORE",69:"ONLY_ONE",70:"MD_PARENT",71:"NON_IDENTIFYING",72:"IDENTIFYING",73:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[54,2],[55,1],[56,1],[56,3],[60,1],[57,1],[12,3],[64,1],[64,1],[64,1],[64,1],[64,1],[65,1],[65,1],[14,1],[14,1],[14,1]],performAction:y(function(TA,qA,BA,bA,FA,IA,nA){var eA=IA.length-1;switch(FA){case 1:break;case 2:this.$=[];break;case 3:IA[eA-1].push(IA[eA]),this.$=IA[eA-1];break;case 4:case 5:this.$=IA[eA];break;case 6:case 7:this.$=[];break;case 8:bA.addEntity(IA[eA-4]),bA.addEntity(IA[eA-2]),bA.addRelationship(IA[eA-4],IA[eA],IA[eA-2],IA[eA-3]);break;case 9:bA.addEntity(IA[eA-8]),bA.addEntity(IA[eA-4]),bA.addRelationship(IA[eA-8],IA[eA],IA[eA-4],IA[eA-5]),bA.setClass([IA[eA-8]],IA[eA-6]),bA.setClass([IA[eA-4]],IA[eA-2]);break;case 10:bA.addEntity(IA[eA-6]),bA.addEntity(IA[eA-2]),bA.addRelationship(IA[eA-6],IA[eA],IA[eA-2],IA[eA-3]),bA.setClass([IA[eA-6]],IA[eA-4]);break;case 11:bA.addEntity(IA[eA-6]),bA.addEntity(IA[eA-4]),bA.addRelationship(IA[eA-6],IA[eA],IA[eA-4],IA[eA-5]),bA.setClass([IA[eA-4]],IA[eA-2]);break;case 12:bA.addEntity(IA[eA-3]),bA.addAttributes(IA[eA-3],IA[eA-1]);break;case 13:bA.addEntity(IA[eA-5]),bA.addAttributes(IA[eA-5],IA[eA-1]),bA.setClass([IA[eA-5]],IA[eA-3]);break;case 14:bA.addEntity(IA[eA-2]);break;case 15:bA.addEntity(IA[eA-4]),bA.setClass([IA[eA-4]],IA[eA-2]);break;case 16:bA.addEntity(IA[eA]);break;case 17:bA.addEntity(IA[eA-2]),bA.setClass([IA[eA-2]],IA[eA]);break;case 18:bA.addEntity(IA[eA-6],IA[eA-4]),bA.addAttributes(IA[eA-6],IA[eA-1]);break;case 19:bA.addEntity(IA[eA-8],IA[eA-6]),bA.addAttributes(IA[eA-8],IA[eA-1]),bA.setClass([IA[eA-8]],IA[eA-3]);break;case 20:bA.addEntity(IA[eA-5],IA[eA-3]);break;case 21:bA.addEntity(IA[eA-7],IA[eA-5]),bA.setClass([IA[eA-7]],IA[eA-2]);break;case 22:bA.addEntity(IA[eA-3],IA[eA-1]);break;case 23:bA.addEntity(IA[eA-5],IA[eA-3]),bA.setClass([IA[eA-5]],IA[eA]);break;case 24:case 25:this.$=IA[eA].trim(),bA.setAccTitle(this.$);break;case 26:case 27:this.$=IA[eA].trim(),bA.setAccDescription(this.$);break;case 32:bA.setDirection("TB");break;case 33:bA.setDirection("BT");break;case 34:bA.setDirection("RL");break;case 35:bA.setDirection("LR");break;case 36:this.$=IA[eA-3],bA.addClass(IA[eA-2],IA[eA-1]);break;case 37:case 38:case 59:case 68:this.$=[IA[eA]];break;case 39:case 40:this.$=IA[eA-2].concat([IA[eA]]);break;case 41:this.$=IA[eA-2],bA.setClass(IA[eA-1],IA[eA]);break;case 42:this.$=IA[eA-3],bA.addCssStyles(IA[eA-2],IA[eA-1]);break;case 43:this.$=[IA[eA]];break;case 44:IA[eA-2].push(IA[eA]),this.$=IA[eA-2];break;case 46:this.$=IA[eA-1]+IA[eA];break;case 54:case 80:case 81:this.$=IA[eA].replace(/"/g,"");break;case 55:case 56:case 57:case 58:case 82:this.$=IA[eA];break;case 60:IA[eA].push(IA[eA-1]),this.$=IA[eA];break;case 61:this.$={type:IA[eA-1],name:IA[eA]};break;case 62:this.$={type:IA[eA-2],name:IA[eA-1],keys:IA[eA]};break;case 63:this.$={type:IA[eA-2],name:IA[eA-1],comment:IA[eA]};break;case 64:this.$={type:IA[eA-3],name:IA[eA-2],keys:IA[eA-1],comment:IA[eA]};break;case 65:case 67:case 70:this.$=IA[eA];break;case 66:this.$=IA[eA-1]+IA[eA];break;case 69:IA[eA-2].push(IA[eA]),this.$=IA[eA-2];break;case 71:this.$=IA[eA].replace(/"/g,"");break;case 72:this.$={cardA:IA[eA],relType:IA[eA-1],cardB:IA[eA-2]};break;case 73:this.$=bA.Cardinality.ZERO_OR_ONE;break;case 74:this.$=bA.Cardinality.ZERO_OR_MORE;break;case 75:this.$=bA.Cardinality.ONE_OR_MORE;break;case 76:this.$=bA.Cardinality.ONLY_ONE;break;case 77:this.$=bA.Cardinality.MD_PARENT;break;case 78:this.$=bA.Identification.NON_IDENTIFYING;break;case 79:this.$=bA.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},A(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:t,24:r,26:i,28:u,29:14,30:15,31:16,32:17,33:a,34:n,35:o,36:s,37:l,40:g,43:C,44:B,48:E,50:d,51:I,52:h},A(e,[2,7],{1:[2,1]}),A(e,[2,3]),{9:30,11:9,22:t,24:r,26:i,28:u,29:14,30:15,31:16,32:17,33:a,34:n,35:o,36:s,37:l,40:g,43:C,44:B,48:E,50:d,51:I,52:h},A(e,[2,5]),A(e,[2,6]),A(e,[2,16],{12:31,64:35,15:[1,32],17:[1,33],20:[1,34],66:Q,67:p,68:m,69:f,70:D}),{23:[1,41]},{25:[1,42]},{27:[1,43]},A(e,[2,27]),A(e,[2,28]),A(e,[2,29]),A(e,[2,30]),A(e,[2,31]),A(w,[2,54]),A(w,[2,55]),A(w,[2,56]),A(w,[2,57]),A(w,[2,58]),A(e,[2,32]),A(e,[2,33]),A(e,[2,34]),A(e,[2,35]),{16:44,40:b,41:F},{16:47,40:b,41:F},{16:48,40:b,41:F},A(e,[2,4]),{11:49,40:g,48:E,50:d,51:I,52:h},{16:50,40:b,41:F},{18:51,19:[1,52],53:53,54:54,58:v},{11:56,40:g,48:E,50:d,51:I,52:h},{65:57,71:[1,58],72:[1,59]},A(S,[2,73]),A(S,[2,74]),A(S,[2,75]),A(S,[2,76]),A(S,[2,77]),A(e,[2,24]),A(e,[2,25]),A(e,[2,26]),{13:x,38:60,41:k,42:T,45:62,46:63,48:R,49:L},A(M,[2,37]),A(M,[2,38]),{16:68,40:b,41:F,42:T},{13:x,38:69,41:k,42:T,45:62,46:63,48:R,49:L},{13:[1,70],15:[1,71]},A(e,[2,17],{64:35,12:72,17:[1,73],42:T,66:Q,67:p,68:m,69:f,70:D}),{19:[1,74]},A(e,[2,14]),{18:75,19:[2,59],53:53,54:54,58:v},{55:76,58:[1,77]},{58:[2,65],59:[1,78]},{21:[1,79]},{64:80,66:Q,67:p,68:m,69:f,70:D},A(U,[2,78]),A(U,[2,79]),{6:Y,10:H,39:81,42:J,47:K},{40:[1,86],41:[1,87]},A(O,[2,43],{46:88,13:x,41:k,48:R,49:L}),A(_,[2,45]),A(_,[2,50]),A(_,[2,51]),A(_,[2,52]),A(_,[2,53]),A(e,[2,41],{42:T}),{6:Y,10:H,39:89,42:J,47:K},{14:90,40:z,50:j,73:q},{16:94,40:b,41:F},{11:95,40:g,48:E,50:d,51:I,52:h},{18:96,19:[1,97],53:53,54:54,58:v},A(e,[2,12]),{19:[2,60]},A(CA,[2,61],{56:98,57:99,60:100,62:tA,63:lA}),A([19,58,62,63],[2,67]),{58:[2,66]},A(e,[2,22],{15:[1,104],17:[1,103]}),A([40,48,50,51,52],[2,72]),A(e,[2,36]),{13:x,41:k,45:105,46:63,48:R,49:L},A(e,[2,47]),A(e,[2,48]),A(e,[2,49]),A(M,[2,39]),A(M,[2,40]),A(_,[2,46]),A(e,[2,42]),A(e,[2,8]),A(e,[2,80]),A(e,[2,81]),A(e,[2,82]),{13:[1,106],42:T},{13:[1,108],15:[1,107]},{19:[1,109]},A(e,[2,15]),A(CA,[2,62],{57:110,61:[1,111],63:lA}),A(CA,[2,63]),A(gA,[2,68]),A(CA,[2,71]),A(gA,[2,70]),{18:112,19:[1,113],53:53,54:54,58:v},{16:114,40:b,41:F},A(O,[2,44],{46:88,13:x,41:k,48:R,49:L}),{14:115,40:z,50:j,73:q},{16:116,40:b,41:F},{14:117,40:z,50:j,73:q},A(e,[2,13]),A(CA,[2,64]),{60:118,62:tA},{19:[1,119]},A(e,[2,20]),A(e,[2,23],{17:[1,120],42:T}),A(e,[2,11]),{13:[1,121],42:T},A(e,[2,10]),A(gA,[2,69]),A(e,[2,18]),{18:122,19:[1,123],53:53,54:54,58:v},{14:124,40:z,50:j,73:q},{19:[1,125]},A(e,[2,21]),A(e,[2,9]),A(e,[2,19])],defaultActions:{75:[2,60],78:[2,66]},parseError:y(function(TA,qA){if(qA.recoverable)this.trace(TA);else{var BA=Error(TA);throw BA.hash=qA,BA}},"parseError"),parse:y(function(TA){var qA=this,BA=[0],bA=[],FA=[null],IA=[],nA=this.table,eA="",EA=0,mA=0,kA=0,SA=2,YA=1,dA=IA.slice.call(arguments,1),W=Object.create(this.lexer),Z={yy:{}};for(var pA in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,pA))Z.yy[pA]=this.yy[pA];if(W.setInput(TA,Z.yy),Z.yy.lexer=W,Z.yy.parser=this,typeof W.yylloc>"u")W.yylloc={};var AA=W.yylloc;IA.push(AA);var DA=W.options&&W.options.ranges;if(typeof Z.yy.parseError==="function")this.parseError=Z.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function rA(We){BA.length=BA.length-2*We,FA.length=FA.length-We,IA.length=IA.length-We}y(rA,"popStack");function KA(){var We=bA.pop()||W.lex()||YA;if(typeof We!=="number"){if(We instanceof Array)bA=We,We=bA.pop();We=qA.symbols_[We]||We}return We}y(KA,"lex");var _A,zA,WA,te,ZA,ee,$A={},oe,vA,Pe,MA;while(!0){if(WA=BA[BA.length-1],this.defaultActions[WA])te=this.defaultActions[WA];else{if(_A===null||typeof _A>"u")_A=KA();te=nA[WA]&&nA[WA][_A]}if(typeof te>"u"||!te.length||!te[0]){var ke="";MA=[];for(oe in nA[WA])if(this.terminals_[oe]&&oe>SA)MA.push("'"+this.terminals_[oe]+"'");if(W.showPosition)ke="Parse error on line "+(EA+1)+`:
|
||
`+W.showPosition()+`
|
||
Expecting `+MA.join(", ")+", got '"+(this.terminals_[_A]||_A)+"'";else ke="Parse error on line "+(EA+1)+": Unexpected "+(_A==YA?"end of input":"'"+(this.terminals_[_A]||_A)+"'");this.parseError(ke,{text:W.match,token:this.terminals_[_A]||_A,line:W.yylineno,loc:AA,expected:MA})}if(te[0]instanceof Array&&te.length>1)throw Error("Parse Error: multiple actions possible at state: "+WA+", token: "+_A);switch(te[0]){case 1:if(BA.push(_A),FA.push(W.yytext),IA.push(W.yylloc),BA.push(te[1]),_A=null,!zA){if(mA=W.yyleng,eA=W.yytext,EA=W.yylineno,AA=W.yylloc,kA>0)kA--}else _A=zA,zA=null;break;case 2:if(vA=this.productions_[te[1]][1],$A.$=FA[FA.length-vA],$A._$={first_line:IA[IA.length-(vA||1)].first_line,last_line:IA[IA.length-1].last_line,first_column:IA[IA.length-(vA||1)].first_column,last_column:IA[IA.length-1].last_column},DA)$A._$.range=[IA[IA.length-(vA||1)].range[0],IA[IA.length-1].range[1]];if(ee=this.performAction.apply($A,[eA,mA,EA,Z.yy,te[1],FA,IA].concat(dA)),typeof ee<"u")return ee;if(vA)BA=BA.slice(0,-1*vA*2),FA=FA.slice(0,-1*vA),IA=IA.slice(0,-1*vA);BA.push(this.productions_[te[1]][0]),FA.push($A.$),IA.push($A._$),Pe=nA[BA[BA.length-2]][BA[BA.length-1]],BA.push(Pe);break;case 3:return!0}}return!0},"parse")},RA=function(){var JA={EOF:1,parseError:y(function(qA,BA){if(this.yy.parser)this.yy.parser.parseError(qA,BA);else throw Error(qA)},"parseError"),setInput:y(function(TA,qA){if(this.yy=qA||this.yy||{},this._input=TA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var TA=this._input[0];this.yytext+=TA,this.yyleng++,this.offset++,this.match+=TA,this.matched+=TA;var qA=TA.match(/(?:\r\n?|\n).*/g);if(qA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),TA},"input"),unput:y(function(TA){var qA=TA.length,BA=TA.split(/(?:\r\n?|\n)/g);this._input=TA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-qA),this.offset-=qA;var bA=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),BA.length-1)this.yylineno-=BA.length-1;var FA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:BA?(BA.length===bA.length?this.yylloc.first_column:0)+bA[bA.length-BA.length].length-BA[0].length:this.yylloc.first_column-qA},this.options.ranges)this.yylloc.range=[FA[0],FA[0]+this.yyleng-qA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(TA){this.unput(this.match.slice(TA))},"less"),pastInput:y(function(){var TA=this.matched.substr(0,this.matched.length-this.match.length);return(TA.length>20?"...":"")+TA.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var TA=this.match;if(TA.length<20)TA+=this._input.substr(0,20-TA.length);return(TA.substr(0,20)+(TA.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var TA=this.pastInput(),qA=Array(TA.length+1).join("-");return TA+this.upcomingInput()+`
|
||
`+qA+"^"},"showPosition"),test_match:y(function(TA,qA){var BA,bA,FA;if(this.options.backtrack_lexer){if(FA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)FA.yylloc.range=this.yylloc.range.slice(0)}if(bA=TA[0].match(/(?:\r\n?|\n).*/g),bA)this.yylineno+=bA.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:bA?bA[bA.length-1].length-bA[bA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+TA[0].length},this.yytext+=TA[0],this.match+=TA[0],this.matches=TA,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(TA[0].length),this.matched+=TA[0],BA=this.performAction.call(this,this.yy,this,qA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(BA)return BA;else if(this._backtrack){for(var IA in FA)this[IA]=FA[IA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var TA,qA,BA,bA;if(!this._more)this.yytext="",this.match="";var FA=this._currentRules();for(var IA=0;IA<FA.length;IA++)if(BA=this._input.match(this.rules[FA[IA]]),BA&&(!qA||BA[0].length>qA[0].length)){if(qA=BA,bA=IA,this.options.backtrack_lexer)if(TA=this.test_match(BA,FA[IA]),TA!==!1)return TA;else if(this._backtrack){qA=!1;continue}else return!1;else if(!this.options.flex)break}if(qA){if(TA=this.test_match(qA,FA[bA]),TA!==!1)return TA;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var qA=this.next();if(qA)return qA;else return this.lex()},"lex"),begin:y(function(qA){this.conditionStack.push(qA)},"begin"),popState:y(function(){var qA=this.conditionStack.length-1;if(qA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(qA){if(qA=this.conditionStack.length-1-Math.abs(qA||0),qA>=0)return this.conditionStack[qA];else return"INITIAL"},"topState"),pushState:y(function(qA){this.begin(qA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(qA,BA,bA,FA){var IA=FA;switch(bA){case 0:return this.begin("acc_title"),24;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),26;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:break;case 13:return 8;case 14:return 50;case 15:return 73;case 16:return 4;case 17:return this.begin("block"),17;break;case 18:return 49;case 19:return 49;case 20:return 42;case 21:return 15;case 22:return 13;case 23:break;case 24:return 62;case 25:return 58;case 26:return 58;case 27:this.begin("block_bq");break;case 28:return 58;case 29:this.popState();break;case 30:return 63;case 31:break;case 32:return this.popState(),19;break;case 33:return BA.yytext[0];case 34:return 20;case 35:return 21;case 36:return this.begin("style"),44;break;case 37:return this.popState(),10;break;case 38:break;case 39:return 13;case 40:return 42;case 41:return 49;case 42:return this.begin("style"),37;break;case 43:return 43;case 44:return 66;case 45:return 68;case 46:return 68;case 47:return 68;case 48:return 66;case 49:return 66;case 50:return 67;case 51:return 67;case 52:return 67;case 53:return 67;case 54:return 67;case 55:return 68;case 56:return 67;case 57:return 68;case 58:return 69;case 59:return 69;case 60:return 51;case 61:return 69;case 62:return 69;case 63:return 69;case 64:return 52;case 65:return 48;case 66:return 69;case 67:return 66;case 68:return 67;case 69:return 68;case 70:return 70;case 71:return 71;case 72:return 72;case 73:return 72;case 74:return 71;case 75:return 71;case 76:return 71;case 77:return 41;case 78:return 47;case 79:return 40;case 80:return BA.yytext[0];case 81:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\.,\u00C0-\uFFFF\*]*))/i,/^(?:[`])/i,/^(?:[^`]+)/i,/^(?:[`])/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:[0-9]+\.[0-9]+)/i,/^(?:1(?=\s+[A-Za-z_"']))/i,/^(?:1(?=\s+[0-9]))/i,/^(?:1(?=(--|\.\.|\.-|-\.)))/i,/^(?:1\b)/i,/^(?:[0-9]+)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:u(?=[\.\-\|]))/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*|\.)+)/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[37,38,39,40,41,77,78],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block_bq:{rules:[28,29],inclusive:!1},block:{rules:[23,24,25,26,27,30,31,32,33],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,34,35,36,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,79,80,81],inclusive:!0}}};return JA}();aA.lexer=RA;function wA(){this.yy={}}return y(wA,"Parser"),wA.prototype=aA,aA.Parser=wA,new wA}();knA.parser=knA;B2t=knA,E2t=class{constructor(){this.entities=new Map,this.relationships=[],this.classes=new Map,this.direction="TB",this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},this.setAccTitle=Dr,this.getAccTitle=vr,this.setAccDescription=kr,this.getAccDescription=Fr,this.setDiagramTitle=Mr,this.getDiagramTitle=xr,this.getConfig=y(()=>OA().er,"getConfig"),this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{y(this,"ErDB")}addEntity(A,e=""){if(!this.entities.has(A))this.entities.set(A,{id:`entity-${A}-${this.entities.size}`,label:A,attributes:[],alias:e,shape:"erBox",look:OA().look??"default",cssClasses:"default",cssStyles:[],labelType:"markdown"}),sA.info("Added new entity :",A);else if(!this.entities.get(A)?.alias&&e)this.entities.get(A).alias=e,sA.info(`Add alias '${e}' to entity '${A}'`);return this.entities.get(A)}getEntity(A){return this.entities.get(A)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(A,e){let t=this.addEntity(A),r;for(r=e.length-1;r>=0;r--){if(!e[r].keys)e[r].keys=[];if(!e[r].comment)e[r].comment="";t.attributes.push(e[r]),sA.debug("Added attribute ",e[r].name)}}addRelationship(A,e,t,r){let i=this.entities.get(A),u=this.entities.get(t);if(!i||!u)return;let a={entityA:i.id,roleA:e,entityB:u.id,relSpec:r};this.relationships.push(a),sA.debug("Added new relationship :",a)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(A){this.direction=A}getCompiledStyles(A){let e=[];for(let t of A){let r=this.classes.get(t);if(r?.styles)e=[...e,...r.styles??[]].map((i)=>i.trim());if(r?.textStyles)e=[...e,...r.textStyles??[]].map((i)=>i.trim())}return e}addCssStyles(A,e){for(let t of A){let r=this.entities.get(t);if(!e||!r)return;for(let i of e)r.cssStyles.push(i)}}addClass(A,e){A.forEach((t)=>{let r=this.classes.get(t);if(r===void 0)r={id:t,styles:[],textStyles:[]},this.classes.set(t,r);if(e)e.forEach(function(i){if(/color/.exec(i)){let u=i.replace("fill","bgFill");r.textStyles.push(u)}r.styles.push(i)})})}setClass(A,e){for(let t of A){let r=this.entities.get(t);if(r)for(let i of e)r.cssClasses+=" "+i}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],sr()}getData(){let A=[],e=[],t=OA(),r=0;for(let u of this.entities.keys()){let a=this.entities.get(u);if(a)a.cssCompiledStyles=this.getCompiledStyles(a.cssClasses.split(" ")),a.colorIndex=r++,A.push(a)}let i=0;for(let u of this.relationships){let a={id:CE(u.entityA,u.entityB,{prefix:"id",counter:i++}),type:"normal",curve:"basis",start:u.entityA,end:u.entityB,label:u.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:u.relSpec.cardB.toLowerCase(),arrowTypeEnd:u.relSpec.cardA.toLowerCase(),pattern:u.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:t.look,labelType:"markdown"};e.push(a)}return{nodes:A,edges:e,other:{},config:t,direction:"TB"}}},VOA={};gQ(VOA,{draw:()=>d2t});d2t=y(async function(A,e,t,r){sA.info("REF0:"),sA.info("Drawing er diagram (unified)",e);let{securityLevel:i,er:u,layout:a}=OA(),n=r.db.getData(),o=Ic(e,i);n.type=r.type,n.layoutAlgorithm=ME(a),n.config.flowchart.nodeSpacing=u?.nodeSpacing||140,n.config.flowchart.rankSpacing=u?.rankSpacing||80,n.direction=r.db.getDirection();let{config:s}=n,{look:l}=s;if(l==="neo")n.markers=["only_one_neo","zero_or_one_neo","one_or_more_neo","zero_or_more_neo"];else n.markers=["only_one","zero_or_one","one_or_more","zero_or_more"];if(n.diagramId=e,await cc(n,o),n.layoutAlgorithm==="elk")o.select(".edges").lower();let g=o.selectAll('[id*="-background"]');if(Array.from(g).length>0)g.each(function(){let B=Qe(this),d=B.attr("id").replace("-background",""),I=o.select(`#${CSS.escape(d)}`);if(!I.empty()){let h=I.attr("transform");B.attr("transform",h)}});let C=8;Jt.insertTitle(o,"erDiagramTitleText",u?.titleTopMargin??25,r.db.getDiagramTitle()),pl(o,C,"erDiagram",u?.useMaxWidth??!0)},"draw"),ZOA=y((A,e)=>{let t=_p,r=t(A,"r"),i=t(A,"g"),u=t(A,"b");return ln(r,i,u,e)},"fade"),GY=new Set(["redux-color","redux-dark-color"]),I2t=y((A)=>{let{theme:e,look:t,bkgColorArray:r,borderColorArray:i}=A;if(!GY.has(e))return"";let u=r?.length>0,a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)a+=`
|
||
|
||
[data-look="${t}"][data-color-id="color-${n}"].node path {
|
||
stroke: ${i[n]};
|
||
${u?`fill: ${r[n]};`:""}
|
||
}
|
||
|
||
[data-look="${t}"][data-color-id="color-${n}"].node rect {
|
||
stroke: ${i[n]};
|
||
${u?`fill: ${r[n]};`:""}
|
||
}
|
||
`;return a},"genColor"),h2t=y((A)=>{let{look:e,theme:t,erEdgeLabelBackground:r,strokeWidth:i}=A;return`
|
||
${I2t(A)}
|
||
.entityBox {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.nodeBorder};
|
||
}
|
||
|
||
.relationshipLabelBox {
|
||
fill: ${A.tertiaryColor};
|
||
opacity: 0.7;
|
||
background-color: ${A.tertiaryColor};
|
||
rect {
|
||
opacity: 0.5;
|
||
}
|
||
}
|
||
|
||
.labelBkg {
|
||
background-color: ${GY.has(t)&&r?r:ZOA(A.tertiaryColor,0.5)};
|
||
}
|
||
|
||
.edgeLabel {
|
||
background-color: ${GY.has(t)&&r?r:A.edgeLabelBackground};
|
||
}
|
||
.edgeLabel .label rect {
|
||
fill: ${GY.has(t)&&r?r:A.edgeLabelBackground};
|
||
}
|
||
.edgeLabel .label text {
|
||
fill: ${A.textColor};
|
||
}
|
||
|
||
.edgeLabel .label {
|
||
fill: ${A.nodeBorder};
|
||
font-size: 14px;
|
||
}
|
||
|
||
.label {
|
||
font-family: ${A.fontFamily};
|
||
color: ${A.nodeTextColor||A.textColor};
|
||
}
|
||
|
||
.edge-pattern-dashed {
|
||
stroke-dasharray: 8,8;
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon
|
||
{
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: ${e==="neo"?i:"1px"};
|
||
}
|
||
|
||
.relationshipLine {
|
||
stroke: ${A.lineColor};
|
||
stroke-width: ${e==="neo"?i:"1px"};
|
||
fill: none;
|
||
}
|
||
|
||
.marker {
|
||
fill: none !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
[data-look=neo].labelBkg {
|
||
background-color: ${ZOA(A.tertiaryColor,0.5)};
|
||
}
|
||
`},"getStyles"),Q2t=h2t,jOA={parser:B2t,get db(){return new E2t},renderer:VOA,styles:Q2t}});var Fw;var UY=P(()=>{Nt();Fw=class{constructor(A){this.init=A,this.records=this.init()}static{y(this,"ImperativeState")}reset(){this.records=this.init()}}});function hu(A,e){if(A.accDescr)e.setAccDescription?.(A.accDescr);if(A.accTitle)e.setAccTitle?.(A.accTitle);if(A.title)e.setDiagramTitle?.(A.title)}var ws=P(()=>{Nt();y(hu,"populateCommonDb")});var O0={};yt(O0,{AbnfAlternation:()=>sK,AbnfConcatenation:()=>lK,AbnfElement:()=>XF,AbnfGroup:()=>gK,AbnfNumVal:()=>cK,AbnfOptionalGroup:()=>CK,AbnfPrimary:()=>P4,AbnfRule:()=>$F,AbnfRuleName:()=>BK,AbnfStringLiteral:()=>EK,AbstractMermaidTokenBuilder:()=>lu,AbstractMermaidValueConverter:()=>hn,Architecture:()=>hc,ArchitectureGrammarGeneratedModule:()=>XJ,Branch:()=>Vw,Commit:()=>z4,CommonTokenBuilder:()=>Yte,CommonValueConverter:()=>kl,Cynefin:()=>jI,CynefinGrammarGeneratedModule:()=>$J,DomainBlock:()=>jw,DomainItem:()=>Dx,EbnfChoice:()=>dK,EbnfExceptionPostfix:()=>IK,EbnfGroup:()=>hK,EbnfNonTerminal:()=>QK,EbnfOneOrMorePostfix:()=>pK,EbnfOptional:()=>fK,EbnfOptionalPostfix:()=>mK,EbnfPostfix:()=>L3,EbnfPrimary:()=>zI,EbnfRepetition:()=>DK,EbnfRule:()=>Ax,EbnfSequence:()=>yK,EbnfSpecial:()=>wK,EbnfTerm:()=>ex,EbnfTerminal:()=>bK,EbnfZeroOrMorePostfix:()=>vK,EmDataEntity:()=>_4,EmFrame:()=>ZI,EmptyFileSystem:()=>Ji,EventModel:()=>GC,EventModelingGeneratedModule:()=>AO,GitGraph:()=>XI,GitGraphGrammarGeneratedModule:()=>eO,Info:()=>Y3,InfoGrammarGeneratedModule:()=>tO,Merge:()=>Z4,MermaidGeneratedSharedModule:()=>$i,Packet:()=>V4,PacketBlock:()=>j4,PacketGrammarGeneratedModule:()=>rO,PegAny:()=>kK,PegGroup:()=>FK,PegIdentifier:()=>xK,PegLiteral:()=>SK,PegOrderedChoice:()=>LK,PegPrefix:()=>tx,PegPrimary:()=>R3,PegRule:()=>rx,PegSequence:()=>RK,PegSuffix:()=>ix,Pie:()=>$I,PieGrammarGeneratedModule:()=>iO,PieSection:()=>Xw,Radar:()=>VI,RadarGrammarGeneratedModule:()=>uO,Railroad:()=>X4,RailroadAbnf:()=>$4,RailroadAbnfGrammarGeneratedModule:()=>aO,RailroadChoiceExpr:()=>NK,RailroadEbnf:()=>A1,RailroadEbnfGrammarGeneratedModule:()=>nO,RailroadExpression:()=>UC,RailroadGrammarGeneratedModule:()=>oO,RailroadNonTerminalExpr:()=>GK,RailroadOneOrMoreExpr:()=>UK,RailroadOptionalExpr:()=>MK,RailroadPeg:()=>e1,RailroadPegGrammarGeneratedModule:()=>sO,RailroadRule:()=>ux,RailroadSequenceExpr:()=>TK,RailroadSpecialExpr:()=>YK,RailroadTerminalExpr:()=>HK,RailroadZeroOrMoreExpr:()=>KK,Statement:()=>W4,Transition:()=>H3,TreeNode:()=>q4,TreeView:()=>N3,TreeViewGrammarGeneratedModule:()=>gO,Treemap:()=>t1,TreemapGrammarGeneratedModule:()=>lO,Wardley:()=>ao,WardleyGrammarGeneratedModule:()=>cO,__name:()=>G,createDefaultCoreModule:()=>Fi,createDefaultSharedCoreModule:()=>xi,inject:()=>wr,isArchitecture:()=>NgA,isBranch:()=>GgA,isCommit:()=>UgA,isCynefin:()=>MgA,isDomainBlock:()=>TgA,isDomainItem:()=>YgA,isEmModelEntityType:()=>HgA,isEmResetFrame:()=>Wx,isGitGraph:()=>KgA,isInfo:()=>JgA,isMerge:()=>OgA,isPacket:()=>PgA,isPacketBlock:()=>_gA,isPie:()=>WgA,isPieSection:()=>qgA,isRailroad:()=>zgA,isRailroadAbnf:()=>ZgA,isRailroadEbnf:()=>VgA,isRailroadPeg:()=>jgA,isTransition:()=>XgA,isTreemap:()=>$gA,isWardley:()=>AcA,lib_exports:()=>To});function Hn(A){return typeof A==="object"&&A!==null&&typeof A.$type==="string"}function vs(A){return typeof A==="object"&&A!==null&&typeof A.$refText==="string"&&"ref"in A}function ZE(A){return typeof A==="object"&&A!==null&&typeof A.$refText==="string"&&"items"in A}function AsA(A){return typeof A==="object"&&A!==null&&typeof A.name==="string"&&typeof A.type==="string"&&typeof A.path==="string"}function p3(A){return typeof A==="object"&&A!==null&&typeof A.info==="object"&&typeof A.message==="string"}function eh(A){return typeof A==="object"&&A!==null&&Array.isArray(A.content)}function z3(A){return typeof A==="object"&&A!==null&&typeof A.tokenType==="object"}function _K(A){return eh(A)&&typeof A.fullText==="string"}function Z_A(A){if(typeof A==="string")return A;if(typeof A>"u")return"undefined";if(typeof A.toString==="function")return A.toString();return Object.prototype.toString.call(A)}function ax(A){return!!A&&typeof A[Symbol.iterator]==="function"}function Qu(...A){if(A.length===1){let e=A[0];if(e instanceof qE)return e;if(ax(e))return new qE(()=>e[Symbol.iterator](),(t)=>t.next());if(typeof e.length==="number")return new qE(()=>({index:0}),(t)=>{if(t.index<e.length)return{done:!1,value:e[t.index++]};else return bs})}if(A.length>1)return new qE(()=>({collIndex:0,arrIndex:0}),(e)=>{do{if(e.iterator){let t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<A.length){let t=A[e.collIndex++];if(ax(t))e.iterator=t[Symbol.iterator]();else if(t&&typeof t.length==="number")e.array=t}}while(e.iterator||e.array||e.collIndex<A.length);return bs});return $w}function e6(A,e={}){for(let[t,r]of Object.entries(A))if(!t.startsWith("$")){if(Array.isArray(r))r.forEach((i,u)=>{if(Hn(i)){if(i.$container=A,i.$containerProperty=t,i.$containerIndex=u,e.deep)e6(i,e)}});else if(Hn(r)){if(r.$container=A,r.$containerProperty=t,e.deep)e6(r,e)}}}function Z3(A,e){let t=A;while(t){if(e(t))return t;t=t.$container}return}function V_A(A,e){let t=A;while(t){if(e(t))return!0;t=t.$container}return!1}function YC(A){let t=Ww(A).$document;if(!t)throw Error("AST node has no document.");return t}function Ww(A){while(A.$container)A=A.$container;return A}function mH(A){if(vs(A))return A.ref?[A.ref]:[];else if(ZE(A))return A.items.map((e)=>e.ref);return[]}function vx(A,e){if(!A)throw Error("Node must be an AstNode.");let t=e?.range;return new qE(()=>({keys:Object.keys(A),keyIndex:0,arrayIndex:0}),(r)=>{while(r.keyIndex<r.keys.length){let i=r.keys[r.keyIndex];if(!i.startsWith("$")){let u=A[i];if(Hn(u)){if(r.keyIndex++,DH(u,t))return{done:!1,value:u}}else if(Array.isArray(u)){while(r.arrayIndex<u.length){let a=r.arrayIndex++,n=u[a];if(Hn(n)&&DH(n,t))return{done:!1,value:n}}r.arrayIndex=0}}r.keyIndex++}return bs})}function gh(A,e){if(!A)throw Error("Root node must be an AstNode.");return new A6(A,(t)=>vx(t,e))}function HC(A,e){if(!A)throw Error("Root node must be an AstNode.");else if(e?.range&&!DH(A,e.range))return new A6(A,()=>[]);return new A6(A,(t)=>vx(t,e),{includeRoot:!0})}function DH(A,e){if(!e)return!0;let t=A.$cstNode?.range;if(!t)return!1;return bsA(t,e)}function t6(A){return new qE(()=>({keys:Object.keys(A),keyIndex:0,arrayIndex:0}),(e)=>{while(e.keyIndex<e.keys.length){let t=e.keys[e.keyIndex];if(!t.startsWith("$")){let r=A[t];if(vs(r)||ZE(r))return e.keyIndex++,{done:!1,value:{reference:r,container:A,property:t}};else if(Array.isArray(r)){while(e.arrayIndex<r.length){let i=e.arrayIndex++,u=r[i];if(vs(u)||ZE(r))return{done:!1,value:{reference:u,container:A,property:t,index:i}}}e.arrayIndex=0}}e.keyIndex++}return bs})}function rsA(A,e){let t=A.getTypeMetaData(e.$type),r=e;for(let i of Object.values(t.properties))if(i.defaultValue!==void 0&&r[i.name]===void 0)r[i.name]=isA(i.defaultValue)}function isA(A){if(Array.isArray(A))return[...A.map(isA)];else return A}function yH(A,e,t){let r={$type:A.$type};if(t)t.set(A,r),t.set(r,A);for(let[i,u]of Object.entries(A))if(!i.startsWith("$"))if(Hn(u))r[i]=yH(u,e,t);else if(vs(u))r[i]=e(r,i,u.$refNode,u.$refText,u);else if(Array.isArray(u)){let a=[];for(let n of u)if(Hn(n))a.push(yH(n,e,t));else if(vs(n))a.push(e(r,i,n.$refNode,n.$refText,n));else a.push(n);r[i]=a}else r[i]=u;return e6(r,{deep:!0}),r}function WK(A){return Br.isInstance(A,ml.$type)}function V3(A){return Br.isInstance(A,MF.$type)}function X_A(A){return Br.isInstance(A,Tw.$type)}function $_A(A){return Br.isInstance(A,dg.$type)}function r1(A){return Br.isInstance(A,Y4.$type)}function qK(A){return Br.isInstance(A,TF.$type)}function AWA(A){return Br.isInstance(A,wH.$type)}function usA(A){return Br.isInstance(A,bH.$type)}function th(A){return Br.isInstance(A,H4.$type)}function asA(A){return Br.isInstance(A,vH.$type)}function nsA(A){return Br.isInstance(A,K4.$type)}function eWA(A){return Br.isInstance(A,J4.$type)}function osA(A){return Br.isInstance(A,YF.$type)}function j3(A){return Br.isInstance(A,O4.$type)}function ssA(A){return Br.isInstance(A,HF.$type)}function lsA(A){return Br.isInstance(A,kH.$type)}function tWA(A){return Br.isInstance(A,WI.$type)}function rWA(A){return Br.isInstance(A,FH.$type)}function X3(A){return Br.isInstance(A,f3.$type)}function kx(A){return Br.isInstance(A,xH.$type)}function r6(A){return Br.isInstance(A,PE.$type)}function iWA(A){return Br.isInstance(A,KF.$type)}function uWA(A){return Br.isInstance(A,SH.$type)}function gsA(A){return Br.isInstance(A,Yw.$type)}function rh(A){return Br.isInstance(A,Hw.$type)}function aWA(A){return Br.isInstance(A,Kw.$type)}function csA(A){return Br.isInstance(A,m3.$type)}function CsA(A){return Br.isInstance(A,LH.$type)}function nWA(A){return Br.isInstance(A,RH.$type)}function oWA(A){return Br.isInstance(A,Jw.$type)}function BsA(A){return Br.isInstance(A,NH.$type)}function xs(A){return Br.isInstance(A,NC.$type)}function EsA(A){return Br.isInstance(A,JF.$type)}function dsA(A){return Br.isInstance(A,D3.$type)}function IsA(A){return Br.isInstance(A,GH.$type)}function ih(A){return Br.isInstance(A,y3.$type)}function zK(A){return Br.isInstance(A,Ow.$type)}function sWA(A){return Br.isInstance(A,UH.$type)}function hsA(A){return Br.isInstance(A,w3.$type)}function lWA(A){return Br.isInstance(A,Dl.$type)}function QsA(A){return Br.isInstance(A,b3.$type)}function Dc(A){return Br.isInstance(A,qI.$type)}function ZK(A){return Br.isInstance(A,v3.$type)}function VK(A){return Br.isInstance(A,OF.$type)}function gWA(A){return Br.isInstance(A,k3.$type)}function cWA(A){return Br.isInstance(A,F3.$type)}function psA(A){return Br.isInstance(A,MH.$type)}function jK(A){return Br.isInstance(A,PF.$type)}function fsA(A){return Br.isInstance(A,x3.$type)}function CWA(A){return Br.isInstance(A,S3.$type)}function msA(A){return Br.isInstance(A,Pw.$type)}function BWA(A){let e=A,t=!1;while(e){let r=Z3(e.grammarSource,xs);if(r&&r.dataType)e=e.container,t=!0;else if(t)return e;else return}return}function i6(A){return new A6(A,(e)=>{if(eh(e))return e.content;else return[]},{includeRoot:!0})}function EWA(A){return i6(A).filter(z3)}function ysA(A,e){while(A.container)if(A=A.container,A===e)return!0;return!1}function ox(A){return{start:{character:A.startColumn-1,line:A.startLine-1},end:{character:A.endColumn,line:A.endLine-1}}}function u6(A){if(!A)return;let{offset:e,end:t,range:r}=A;return{range:r,offset:e,end:t,length:t-e}}function wsA(A,e){if(A.end.line<e.start.line||A.end.line===e.start.line&&A.end.character<=e.start.character)return WE.Before;else if(A.start.line>e.end.line||A.start.line===e.end.line&&A.start.character>=e.end.character)return WE.After;let t=A.start.line>e.start.line||A.start.line===e.start.line&&A.start.character>=e.start.character,r=A.end.line<e.end.line||A.end.line===e.end.line&&A.end.character<=e.end.character;if(t&&r)return WE.Inside;else if(t)return WE.OverlapBack;else if(r)return WE.OverlapFront;else return WE.Outside}function bsA(A,e){return wsA(A,e)>WE.After}function dWA(A,e,t=vsA){if(A){if(e>0){let r=e-A.offset,i=A.text.charAt(r);if(!t.test(i))e--}return XK(A,e)}return}function ksA(A,e){if(A){let t=SsA(A,!0);if(t&&TH(t,e))return t;if(_K(A)){let r=A.content.findIndex((i)=>!i.hidden);for(let i=r-1;i>=0;i--){let u=A.content[i];if(TH(u,e))return u}}}return}function TH(A,e){return z3(A)&&e.includes(A.tokenType.name)}function XK(A,e){if(z3(A))return A;else if(eh(A)){let t=xsA(A,e,!1);if(t)return XK(t,e)}return}function FsA(A,e){if(z3(A))return A;else if(eh(A)){let t=xsA(A,e,!0);if(t)return FsA(t,e)}return}function xsA(A,e,t){let r=0,i=A.content.length-1,u=void 0;while(r<=i){let a=Math.floor((r+i)/2),n=A.content[a];if(n.offset<=e&&n.end>e)return n;if(n.end<=e)u=t?n:void 0,r=a+1;else i=a-1}return u}function SsA(A,e=!0){while(A.container){let t=A.container,r=t.content.indexOf(A);while(r>0){r--;let i=t.content[r];if(e||!i.hidden)return i}A=t}return}function IWA(A,e=!0){while(A.container){let t=A.container,r=t.content.indexOf(A),i=t.content.length-1;while(r<i){r++;let u=t.content[r];if(e||!u.hidden)return u}A=t}return}function hWA(A){if(A.range.start.character===0)return A;let e=A.range.start.line,t=A,r;while(A.container){let i=A.container,u=r??i.content.indexOf(A);if(u===0)A=i,r=void 0;else r=u-1,A=i.content[r];if(A.range.start.line!==e)break;t=A}return t}function QWA(A,e){let t=pWA(A,e);if(!t)return[];return t.parent.content.slice(t.a+1,t.b)}function pWA(A,e){let t=XoA(A),r=XoA(e),i;for(let u=0;u<t.length&&u<r.length;u++){let a=t[u],n=r[u];if(a.parent===n.parent)i={parent:a.parent,a:a.index,b:n.index};else break}return i}function XoA(A){let e=[];while(A.container){let t=A.container,r=t.content.indexOf(A);e.push({parent:t,index:r}),A=t}return e.reverse()}function s1(A,e="Error: Got unexpected value."){throw Error(e)}function RsA(A,e="Error: Condition is violated."){if(!A)throw Error(e)}function Sr(A){return A.charCodeAt(0)}function oH(A,e){if(Array.isArray(A))A.forEach(function(t){e.push(t)});else e.push(A)}function Uw(A,e){if(A[e]===!0)throw"duplicate flag "+e;let t=A[e];A[e]=!0}function d3(A){if(A===void 0)throw Error("Internal Error - Should never get here!");return!0}function LF(){throw Error("Internal Error - Should never get here!")}function $oA(A){return A.type==="Character"}function yWA(A){try{if(typeof A!=="string")A=A.source;A=`/${A}/`;let e=DWA.pattern(A),t=[];for(let r of e.value.value)G3.reset(A),G3.visit(r),t.push({start:G3.startRegexp,end:G3.endRegex});return t}catch{return[]}}function GsA(A){try{if(typeof A==="string")A=new RegExp(A);return A=A.toString(),G3.reset(A),G3.visit(DWA.pattern(A)),G3.multiline}catch{return!1}}function eJ(A){let e=typeof A==="string"?new RegExp(A):A;return wWA.some((t)=>e.test(t))}function c6(A){return A.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function UsA(A,e){let t=MsA(A),r=e.match(t);return!!r&&r[0].length>0}function MsA(A){if(typeof A==="string")A=new RegExp(A);let e=A,t=A.source,r=0;function i(){let u="",a;function n(s){u+=t.substr(r,s),r+=s}G(n,"appendRaw");function o(s){u+="(?:"+t.substr(r,s)+"|$)",r+=s}G(o,"appendOptional");while(r<t.length)switch(t[r]){case"\\":switch(t[r+1]){case"c":o(3);break;case"x":o(4);break;case"u":if(e.unicode)if(t[r+2]==="{")o(t.indexOf("}",r)-r+1);else o(6);else o(2);break;case"p":case"P":if(e.unicode)o(t.indexOf("}",r)-r+1);else o(2);break;case"k":o(t.indexOf(">",r)-r+1);break;default:o(2);break}break;case"[":a=/\[(?:\\.|.)*?\]/g,a.lastIndex=r,a=a.exec(t)||[],o(a[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":n(1);break;case"{":if(a=/\{\d+,?\d*\}/g,a.lastIndex=r,a=a.exec(t),a)n(a[0].length);else o(1);break;case"(":if(t[r+1]==="?")switch(t[r+2]){case":":u+="(?:",r+=3,u+=i()+"|$)";break;case"=":u+="(?=",r+=3,u+=i()+")";break;case"!":a=r,r+=3,i(),u+=t.substr(a,r-a);break;case"<":switch(t[r+3]){case"=":case"!":a=r,r+=4,i(),u+=t.substr(a,r-a);break;default:n(t.indexOf(">",r)-r+1),u+=i()+"|$)";break}break}else n(1),u+=i()+"|$)";break;case")":return++r,u;default:o(1);break}return u}return G(i,"process"),new RegExp(i(),A.flags)}function TsA(A){return A.rules.find((e)=>xs(e)&&e.entry)}function YsA(A){return A.rules.filter((e)=>Dc(e)&&e.hidden)}function tJ(A,e){let t=new Set,r=TsA(A);if(!r)return new Set(A.rules);let i=[r].concat(YsA(A));for(let a of i)HsA(a,t,e);let u=new Set;for(let a of A.rules)if(t.has(a.name)||Dc(a)&&a.hidden)u.add(a);return u}function HsA(A,e,t){e.add(A.name),gh(A).forEach((r)=>{if(ih(r)||t&&ZK(r)){let i=r.rule.ref;if(i&&!e.has(i.name))HsA(i,e,t)}})}function bWA(A){let e=new Set;return gh(A).forEach((t)=>{if(j3(t)){if(xs(t.type.ref))e.add(t.type.ref);if(kx(t.type.ref)&&xs(t.type.ref.$container))e.add(t.type.ref.$container)}}),e}function KsA(A){if(A.terminal)return A.terminal;else if(A.type.ref)return aJ(A.type.ref)?.terminal;return}function JsA(A){return A.hidden&&!eJ(Sx(A))}function OsA(A,e){if(!A||!e)return[];return iJ(A,e,A.astNode,!0)}function rJ(A,e,t){if(!A||!e)return;let r=iJ(A,e,A.astNode,!0);if(r.length===0)return;if(t!==void 0)t=Math.max(0,Math.min(t,r.length-1));else t=0;return r[t]}function iJ(A,e,t,r){if(!r){let i=Z3(A.grammarSource,th);if(i&&i.feature===e)return[A]}if(eh(A)&&A.astNode===t)return A.content.flatMap((i)=>iJ(i,e,t,!1));return[]}function vWA(A,e){if(!A)return[];return uJ(A,e,A?.astNode)}function PsA(A,e,t){if(!A)return;let r=uJ(A,e,A?.astNode);if(r.length===0)return;if(t!==void 0)t=Math.max(0,Math.min(t,r.length-1));else t=0;return r[t]}function uJ(A,e,t){if(A.astNode!==t)return[];if(rh(A.grammarSource)&&A.grammarSource.value===e)return[A];let r=i6(A).iterator(),i,u=[];do if(i=r.next(),!i.done){let a=i.value;if(a.astNode===t){if(rh(a.grammarSource)&&a.grammarSource.value===e)u.push(a)}else r.prune()}while(!i.done);return u}function _sA(A){let e=A.astNode;while(e===A.container?.astNode){let t=Z3(A.grammarSource,th);if(t)return t;A=A.container}return}function aJ(A){let e=A;if(kx(e))if(r1(e.$container))e=e.$container.$container;else if(V3(e.$container))e=e.$container;else s1(e.$container);return WsA(A,e,new Map)}function WsA(A,e,t){function r(i,u){let a=void 0;if(!Z3(i,th))a=WsA(u,u,t);return t.set(A,a),a}if(G(r,"go"),t.has(A))return t.get(A);t.set(A,void 0);for(let i of gh(e))if(th(i)&&i.feature.toLowerCase()==="name")return t.set(A,i),i;else if(ih(i)&&xs(i.rule.ref))return r(i,i.rule.ref);else if(zK(i)&&i.typeRef?.ref)return r(i,i.typeRef.ref);return}function qsA(A){let e=A.$container;if(X3(e)){let t=e.elements,r=t.indexOf(A);for(let i=r-1;i>=0;i--){let u=t[i];if(r1(u))return u;else{let a=gh(t[i]).find(r1);if(a)return a}}}if(WK(e))return qsA(e);else return}function kWA(A,e){return A==="?"||A==="*"||X3(e)&&Boolean(e.guardCondition)}function FWA(A){return A==="*"||A==="+"}function xWA(A){return A==="+="}function Fx(A){return zsA(A,new Set)}function zsA(A,e){if(e.has(A))return!0;else e.add(A);for(let t of gh(A))if(ih(t)){if(!t.rule.ref)return!1;if(xs(t.rule.ref)&&!zsA(t.rule.ref,e))return!1;if(r6(t.rule.ref))return!1}else if(th(t))return!1;else if(r1(t))return!1;return Boolean(A.definition)}function SWA(A){return KH(A.type,new Set)}function KH(A,e){if(e.has(A))return!0;else e.add(A);if(usA(A))return!1;else if(EsA(A))return!1;else if(psA(A))return A.types.every((t)=>KH(t,e));else if(zK(A))if(A.primitiveType!==void 0)return!0;else if(A.stringType!==void 0)return!0;else if(A.typeRef!==void 0){let t=A.typeRef.ref;if(VK(t))return KH(t.type,e);else return!1}else return!1;else return!1}function xx(A){if(Dc(A))return;if(A.inferredType)return A.inferredType.name;else if(A.dataType)return A.dataType;else if(A.returnType){let e=A.returnType.ref;if(e)return e.name}return}function O3(A){if(V3(A))return xs(A)&&Fx(A)?A.name:xx(A)??A.name;else if(gsA(A)||VK(A)||IsA(A))return A.name;else if(r1(A)){let e=ZsA(A);if(e)return e}else if(kx(A))return A.name;throw Error("Cannot get name of Unknown Type")}function ZsA(A){if(A.inferredType)return A.inferredType.name;else if(A.type?.ref)return O3(A.type.ref);return}function LWA(A){if(Dc(A))return A.type?.name??"string";else return xs(A)&&Fx(A)?A.name:xx(A)??A.name}function VsA(A){if(Dc(A))return A.type?.name??"string";else return xx(A)??A.name}function Sx(A){let e={s:!1,i:!1,u:!1},t=$3(A.definition,e),r=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(t,r)}function $3(A,e){if(hsA(A))return RWA(A);else if(QsA(A))return NWA(A);else if(nsA(A))return MWA(A);else if(ZK(A)){let t=A.rule.ref;if(!t)throw Error("Missing rule reference.");return VE($3(t.definition),{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized})}else if(csA(A))return UWA(A);else if(fsA(A))return GWA(A);else if(dsA(A)){let t=A.regex.lastIndexOf("/"),r=A.regex.substring(1,t),i=A.regex.substring(t+1);if(e)e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u");return VE(r,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1})}else if(msA(A))return VE(jsA,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized});else throw Error(`Invalid terminal element: ${A?.$type}, ${A?.$cstNode?.text}`)}function RWA(A){return VE(A.elements.map((e)=>$3(e)).join("|"),{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1})}function NWA(A){return VE(A.elements.map((e)=>$3(e)).join(""),{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1})}function GWA(A){return VE(`${jsA}*?${$3(A.terminal)}`,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized})}function UWA(A){return VE(`(?!${$3(A.terminal)})${jsA}*?`,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized})}function MWA(A){if(A.right)return VE(`[${sH(A.left)}-${sH(A.right)}]`,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1});return VE(sH(A.left),{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1})}function sH(A){return c6(A.value)}function VE(A,e){if(e.parenthesized||e.lookahead||e.wrap!==!1)A=`(${e.lookahead??(e.parenthesized?"":"?:")}${A})`;if(e.cardinality)return`${A}${e.cardinality}`;return A}function XsA(A){let e=[],t=A.Grammar;for(let r of t.rules)if(Dc(r)&&JsA(r)&&GsA(Sx(r)))e.push(r.name);return{multilineCommentRules:e,nameRegexp:vsA}}function HWA(A){var e=gDt.call(A,IF),t=A[IF];try{A[IF]=void 0;var r=!0}catch(u){}var i=cDt.call(A);if(r)if(e)A[IF]=t;else delete A[IF];return i}function KWA(A){return EDt.call(A)}function JWA(A){if(A==null)return A===void 0?hDt:IDt;return tPA&&tPA in Object(A)?CDt(A):dDt(A)}function OWA(A){return A!=null&&typeof A=="object"}function PWA(A){return typeof A=="symbol"||OC(A)&&l1(A)==QDt}function _WA(A,e){var t=-1,r=A==null?0:A.length,i=Array(r);while(++t<r)i[t]=e(A[t],t,A);return i}function $sA(A){if(typeof A=="string")return A;if(Ki(A))return Lx(A,$sA)+"";if(nJ(A))return iPA?iPA.call(A):"";var e=A+"";return e=="0"&&1/A==-fDt?"-0":e}function WWA(A){var e=A.length;while(e--&&DDt.test(A.charAt(e)));return e}function qWA(A){return A?A.slice(0,yDt(A)+1).replace(wDt,""):A}function zWA(A){var e=typeof A;return A!=null&&(e=="object"||e=="function")}function ZWA(A){if(typeof A=="number")return A;if(nJ(A))return uPA;if(mc(A)){var e=typeof A.valueOf=="function"?A.valueOf():A;A=mc(e)?e+"":e}if(typeof A!="string")return A===0?A:+A;A=bDt(A);var t=kDt.test(A);return t||FDt.test(A)?xDt(A.slice(2),t?2:8):vDt.test(A)?uPA:+A}function VWA(A){if(!A)return A===0?A:0;if(A=SDt(A),A===aPA||A===-aPA){var e=A<0?-1:1;return e*LDt}return A===A?A:0}function jWA(A){var e=RDt(A),t=e%1;return e===e?t?e-t:e:0}function XWA(A){return A}function $WA(A){if(!mc(A))return!1;var e=l1(A);return e==GDt||e==UDt||e==NDt||e==MDt}function AqA(A){return!!nPA&&nPA in A}function eqA(A){if(A!=null){try{return KDt.call(A)}catch(e){}try{return A+""}catch(e){}}return""}function tqA(A){if(!mc(A)||YDt(A))return!1;var e=ch(A)?zDt:ODt;return e.test(Am(A))}function rqA(A,e){return A==null?void 0:A[e]}function iqA(A,e){var t=VDt(A,e);return ZDt(t)?t:void 0}function uqA(A,e,t){switch(t.length){case 0:return A.call(e);case 1:return A.call(e,t[0]);case 2:return A.call(e,t[0],t[1]);case 3:return A.call(e,t[0],t[1],t[2])}return A.apply(e,t)}function aqA(){}function nqA(A,e){var t=-1,r=A.length;e||(e=Array(r));while(++t<r)e[t]=A[t];return e}function oqA(A){var e=0,t=0;return function(){var r=iyt(),i=ryt-(r-t);if(t=r,i>0){if(++e>=tyt)return arguments[0]}else e=0;return A.apply(void 0,arguments)}}function sqA(A){return function(){return A}}function lqA(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A)===!1)break;return A}function cqA(A,e,t,r){var i=A.length,u=t+(r?1:-1);while(r?u--:++u<i)if(e(A[u],u,A))return u;return-1}function BqA(A){return A!==A}function EqA(A,e,t){var r=t-1,i=A.length;while(++r<i)if(A[r]===e)return r;return-1}function dqA(A,e,t){return e===e?Cyt(A,e,t):CqA(A,cyt,t)}function IqA(A,e){var t=A==null?0:A.length;return!!t&&AlA(A,e,0)>-1}function QqA(A,e){var t=typeof A;return e=e==null?Byt:e,!!e&&(t=="number"||t!="symbol"&&Eyt.test(A))&&(A>-1&&A%1==0&&A<e)}function pqA(A,e,t){if(e=="__proto__"&&JH)JH(A,e,{configurable:!0,enumerable:!0,value:t,writable:!0});else A[e]=t}function fqA(A,e){return A===e||A!==A&&e!==e}function mqA(A,e,t){var r=A[e];if(!(Iyt.call(A,e)&&Gx(r,t))||t===void 0&&!(e in A))elA(A,e,t)}function DqA(A,e,t,r){var i=!t;t||(t={});var u=-1,a=e.length;while(++u<a){var n=e[u],o=r?r(t[n],A[n],n,t,A):void 0;if(o===void 0)o=A[n];if(i)elA(t,n,o);else sJ(t,n,o)}return t}function yqA(A,e,t){return e=sPA(e===void 0?A.length-1:e,0),function(){var r=arguments,i=-1,u=sPA(r.length-e,0),a=Array(u);while(++i<u)a[i]=r[e+i];i=-1;var n=Array(e+1);while(++i<e)n[i]=r[i];return n[e]=t(a),Ayt(A,this,n)}}function wqA(A,e){return gyt(hyt(A,e,Nx),A+"")}function bqA(A){return typeof A=="number"&&A>-1&&A%1==0&&A<=Qyt}function vqA(A){return A!=null&&rlA(A.length)&&!ch(A)}function kqA(A,e,t){if(!mc(t))return!1;var r=typeof e;if(r=="number"?$E(t)&&oJ(e,t.length):r=="string"&&(e in t))return Gx(t[e],A);return!1}function FqA(A){return tlA(function(e,t){var r=-1,i=t.length,u=i>1?t[i-1]:void 0,a=i>2?t[2]:void 0;if(u=A.length>3&&typeof u=="function"?(i--,u):void 0,a&&lJ(t[0],t[1],a))u=i<3?void 0:u,i=1;e=Object(e);while(++r<i){var n=t[r];if(n)A(e,n,r,u)}return e})}function xqA(A){var e=A&&A.constructor,t=typeof e=="function"&&e.prototype||fyt;return A===t}function SqA(A,e){var t=-1,r=Array(A);while(++t<A)r[t]=e(t);return r}function LqA(A){return OC(A)&&l1(A)==Dyt}function NqA(){return!1}function UqA(A){return OC(A)&&rlA(A.length)&&!!ta[l1(A)]}function MqA(A){return function(e){return A(e)}}function YqA(A,e){var t=Ki(A),r=!t&&gJ(A),i=!t&&!r&&sx(A),u=!t&&!r&&!i&&ilA(A),a=t||r||i||u,n=a?myt(A.length,String):[],o=n.length;for(var s in A)if((e||awt.call(A,s))&&!(a&&(s=="length"||i&&(s=="offset"||s=="parent")||u&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||oJ(s,o))))n.push(s);return n}function KqA(A,e){return function(t){return A(e(t))}}function OqA(A){if(!Mx(A))return owt(A);var e=[];for(var t in Object(A))if(lwt.call(A,t)&&t!="constructor")e.push(t);return e}function _qA(A){return $E(A)?HqA(A):PqA(A)}function WqA(A){var e=[];if(A!=null)for(var t in Object(A))e.push(t);return e}function qqA(A){if(!mc(A))return Bwt(A);var e=Mx(A),t=[];for(var r in A)if(!(r=="constructor"&&(e||!dwt.call(A,r))))t.push(r);return t}function zqA(A){return $E(A)?HqA(A,!0):Iwt(A)}function ZqA(A,e){if(Ki(A))return!1;var t=typeof A;if(t=="number"||t=="symbol"||t=="boolean"||A==null||nJ(A))return!0;return Qwt.test(A)||!hwt.test(A)||e!=null&&A in Object(e)}function VqA(){this.__data__=lx?lx(null):{},this.size=0}function jqA(A){var e=this.has(A)&&delete this.__data__[A];return this.size-=e?1:0,e}function XqA(A){var e=this.__data__;if(lx){var t=e[A];return t===Dwt?void 0:t}return wwt.call(e,A)?e[A]:void 0}function $qA(A){var e=this.__data__;return lx?e[A]!==void 0:kwt.call(e,A)}function AzA(A,e){var t=this.__data__;return this.size+=this.has(A)?0:1,t[A]=lx&&e===void 0?xwt:e,this}function tm(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function ezA(){this.__data__=[],this.size=0}function tzA(A,e){var t=A.length;while(t--)if(Gx(A[t][0],e))return t;return-1}function rzA(A){var e=this.__data__,t=CJ(e,A);if(t<0)return!1;var r=e.length-1;if(t==r)e.pop();else Nwt.call(e,t,1);return--this.size,!0}function izA(A){var e=this.__data__,t=CJ(e,A);return t<0?void 0:e[t][1]}function uzA(A){return CJ(this.__data__,A)>-1}function azA(A,e){var t=this.__data__,r=CJ(t,A);if(r<0)++this.size,t.push([A,e]);else t[r][1]=e;return this}function rm(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function nzA(){this.size=0,this.__data__={hash:new BPA,map:new(gx||BJ),string:new BPA}}function ozA(A){var e=typeof A;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?A!=="__proto__":A===null}function szA(A,e){var t=A.__data__;return Kwt(e)?t[typeof e=="string"?"string":"hash"]:t.map}function lzA(A){var e=EJ(this,A).delete(A);return this.size-=e?1:0,e}function gzA(A){return EJ(this,A).get(A)}function czA(A){return EJ(this,A).has(A)}function CzA(A,e){var t=EJ(this,A),r=t.size;return t.set(A,e),this.size+=t.size==r?0:1,this}function im(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function IJ(A,e){if(typeof A!="function"||e!=null&&typeof e!="function")throw TypeError(Wwt);var t=G(function(){var r=arguments,i=e?e.apply(this,r):r[0],u=t.cache;if(u.has(i))return u.get(i);var a=A.apply(this,r);return t.cache=u.set(i,a)||u,a},"memoized");return t.cache=new(IJ.Cache||dJ),t}function BzA(A){var e=qwt(A,function(r){if(t.size===zwt)t.clear();return r}),t=e.cache;return e}function EzA(A){return A==null?"":mDt(A)}function dzA(A,e){if(Ki(A))return A;return ulA(A,e)?[A]:$wt(A6t(A))}function IzA(A){if(typeof A=="string"||nJ(A))return A;var e=A+"";return e=="0"&&1/A==-e6t?"-0":e}function hzA(A,e){e=hJ(e,A);var t=0,r=e.length;while(A!=null&&t<r)A=A[Yx(e[t++])];return t&&t==r?A:void 0}function QzA(A,e,t){var r=A==null?void 0:alA(A,e);return r===void 0?t:r}function pzA(A,e){var t=-1,r=e.length,i=A.length;while(++t<r)A[i+t]=e[t];return A}function fzA(A){return Ki(A)||gJ(A)||!!(EPA&&A&&A[EPA])}function olA(A,e,t,r,i){var u=-1,a=A.length;t||(t=r6t),i||(i=[]);while(++u<a){var n=A[u];if(e>0&&t(n))if(e>1)olA(n,e-1,t,r,i);else nlA(i,n);else if(!r)i[i.length]=n}return i}function mzA(A){var e=A==null?0:A.length;return e?slA(A,1):[]}function yzA(A,e,t){var r=-1,i=A.length;if(e<0)e=-e>i?0:i+e;if(t=t>i?i:t,t<0)t+=i;i=e>t?0:t-e>>>0,e>>>=0;var u=Array(i);while(++r<i)u[r]=A[r+e];return u}function bzA(A,e,t,r){var i=-1,u=A==null?0:A.length;if(r&&u)t=A[++i];while(++i<u)t=e(t,A[i],i,A);return t}function vzA(){this.__data__=new BJ,this.size=0}function kzA(A){var e=this.__data__,t=e.delete(A);return this.size=e.size,t}function FzA(A){return this.__data__.get(A)}function xzA(A){return this.__data__.has(A)}function SzA(A,e){var t=this.__data__;if(t instanceof BJ){var r=t.__data__;if(!gx||r.length<l6t-1)return r.push([A,e]),this.size=++t.size,this;t=this.__data__=new dJ(r)}return t.set(A,e),this.size=t.size,this}function um(A){var e=this.__data__=new BJ(A);this.size=e.size}function LzA(A,e){return A&&Ux(e,hg(e),A)}function RzA(A,e){return A&&Ux(e,cJ(e),A)}function GzA(A,e){if(e)return A.slice();var t=A.length,r=hPA?hPA(t):new A.constructor(t);return A.copy(r),r}function UzA(A,e){var t=-1,r=A==null?0:A.length,i=0,u=[];while(++t<r){var a=A[t];if(e(a,t,A))u[i++]=a}return u}function MzA(){return[]}function YzA(A,e){return Ux(A,glA(A),e)}function KzA(A,e){return Ux(A,HzA(A),e)}function JzA(A,e,t){var r=e(A);return Ki(A)?r:nlA(r,t(A))}function PzA(A){return OzA(A,hg,glA)}function _zA(A){return OzA(A,cJ,HzA)}function qzA(A){var e=A.length,t=new A.constructor(e);if(e&&typeof A[0]=="string"&&R6t.call(A,"index"))t.index=A.index,t.input=A.input;return t}function zzA(A){var e=new A.constructor(A.byteLength);return new OH(e).set(new OH(A)),e}function ZzA(A,e){var t=e?clA(A.buffer):A.buffer;return new A.constructor(t,A.byteOffset,A.byteLength)}function VzA(A){var e=new A.constructor(A.source,M6t.exec(A));return e.lastIndex=A.lastIndex,e}function jzA(A){return bPA?Object(bPA.call(A)):{}}function XzA(A,e){var t=e?clA(A.buffer):A.buffer;return new A.constructor(t,A.byteOffset,A.length)}function $zA(A,e,t){var r=A.constructor;switch(e){case Z6t:return clA(A);case K6t:case J6t:return new r(+A);case V6t:return U6t(A,t);case j6t:case X6t:case $6t:case A9t:case e9t:case t9t:case r9t:case i9t:case u9t:return H6t(A,t);case O6t:return new r;case P6t:case q6t:return new r(A);case _6t:return T6t(A);case W6t:return new r;case z6t:return Y6t(A)}}function AZA(A){return typeof A.constructor=="function"&&!Mx(A)?$Dt(DzA(A)):{}}function eZA(A){return OC(A)&&a6(A)==o9t}function tZA(A){return OC(A)&&a6(A)==c9t}function qF(A,e,t,r,i,u){var a,n=e&d9t,o=e&I9t,s=e&h9t;if(t)a=i?t(A,r,i,u):t(A);if(a!==void 0)return a;if(!mc(A))return A;var l=Ki(A);if(l){if(a=N6t(A),!n)return eyt(A,a)}else{var g=a6(A),C=g==iZA||g==D9t;if(sx(A))return E6t(A,n);if(g==uZA||g==rZA||C&&!i){if(a=o||C?{}:n9t(A),!n)return o?m6t(A,C6t(a,A)):Q6t(A,c6t(a,A))}else{if(!_u[g])return i?A:{};a=a9t(A,g,n)}}u||(u=new WF);var B=u.get(A);if(B)return B;if(u.set(A,a),E9t(A))A.forEach(function(I){a.add(qF(I,e,t,I,A,u))});else if(g9t(A))A.forEach(function(I,h){a.set(h,qF(I,e,t,h,A,u))});var E=s?o?WzA:e0A:o?cJ:hg,d=l?void 0:E(A);return gqA(d||A,function(I,h){if(d)h=I,I=A[h];sJ(a,h,qF(I,e,t,h,A,u))}),a}function aZA(A){return J9t(A,O9t)}function nZA(A){var e=-1,t=A==null?0:A.length,r=0,i=[];while(++e<t){var u=A[e];if(u)i[r++]=u}return i}function oZA(A){return this.__data__.set(A,P9t),this}function sZA(A){return this.__data__.has(A)}function cx(A){var e=-1,t=A==null?0:A.length;this.__data__=new dJ;while(++e<t)this.add(A[e])}function lZA(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A))return!0;return!1}function cZA(A,e){return A.has(e)}function CZA(A,e,t,r,i,u){var a=t&q9t,n=A.length,o=e.length;if(n!=o&&!(a&&o>n))return!1;var s=u.get(A),l=u.get(e);if(s&&l)return s==e&&l==A;var g=-1,C=!0,B=t&z9t?new ClA:void 0;u.set(A,e),u.set(e,A);while(++g<n){var E=A[g],d=e[g];if(r)var I=a?r(d,E,g,e,A,u):r(E,d,g,A,e,u);if(I!==void 0){if(I)continue;C=!1;break}if(B){if(!gZA(e,function(h,Q){if(!BlA(B,Q)&&(E===h||i(E,h,t,r,u)))return B.push(Q)})){C=!1;break}}else if(!(E===d||i(E,d,t,r,u))){C=!1;break}}return u.delete(A),u.delete(e),C}function EZA(A){var e=-1,t=Array(A.size);return A.forEach(function(r,i){t[++e]=[i,r]}),t}function dZA(A){var e=-1,t=Array(A.size);return A.forEach(function(r){t[++e]=r}),t}function IZA(A,e,t,r,i,u,a){switch(t){case o5t:if(A.byteLength!=e.byteLength||A.byteOffset!=e.byteOffset)return!1;A=A.buffer,e=e.buffer;case n5t:if(A.byteLength!=e.byteLength||!u(new OH(A),new OH(e)))return!1;return!0;case X9t:case $9t:case t5t:return Gx(+A,+e);case A5t:return A.name==e.name&&A.message==e.message;case r5t:case u5t:return A==e+"";case e5t:var n=Z9t;case i5t:var o=r&V9t;if(n||(n=ElA),A.size!=e.size&&!o)return!1;var s=a.get(A);if(s)return s==e;r|=j9t,a.set(A,e);var l=BZA(n(A),n(e),r,i,u,a);return a.delete(A),l;case a5t:if(LnA)return LnA.call(A)==LnA.call(e)}return!1}function hZA(A,e,t,r,i,u){var a=t&l5t,n=e0A(A),o=n.length,s=e0A(e),l=s.length;if(o!=l&&!a)return!1;var g=o;while(g--){var C=n[g];if(!(a?C in e:c5t.call(e,C)))return!1}var B=u.get(A),E=u.get(e);if(B&&E)return B==e&&E==A;var d=!0;u.set(A,e),u.set(e,A);var I=a;while(++g<o){C=n[g];var h=A[C],Q=e[C];if(r)var p=a?r(Q,h,C,e,A,u):r(h,Q,C,A,e,u);if(!(p===void 0?h===Q||i(h,Q,t,r,u):p)){d=!1;break}I||(I=C=="constructor")}if(d&&!I){var m=A.constructor,f=e.constructor;if(m!=f&&(("constructor"in A)&&("constructor"in e))&&!(typeof m=="function"&&m instanceof m&&typeof f=="function"&&f instanceof f))d=!1}return u.delete(A),u.delete(e),d}function QZA(A,e,t,r,i,u){var a=Ki(A),n=Ki(e),o=a?SPA:a6(A),s=n?SPA:a6(e);o=o==xPA?TY:o,s=s==xPA?TY:s;var l=o==TY,g=s==TY,C=o==s;if(C&&sx(A)){if(!sx(e))return!1;a=!0,l=!1}if(C&&!l)return u||(u=new WF),a||ilA(A)?BZA(A,e,t,r,i,u):s5t(A,e,o,t,r,i,u);if(!(t&B5t)){var B=l&&LPA.call(A,"__wrapped__"),E=g&&LPA.call(e,"__wrapped__");if(B||E){var d=B?A.value():A,I=E?e.value():e;return u||(u=new WF),i(d,I,t,r,u)}}if(!C)return!1;return u||(u=new WF),C5t(A,e,t,r,i,u)}function dlA(A,e,t,r,i){if(A===e)return!0;if(A==null||e==null||!OC(A)&&!OC(e))return A!==A&&e!==e;return d5t(A,e,t,r,dlA,i)}function fZA(A,e,t,r){var i=t.length,u=i,a=!r;if(A==null)return!u;A=Object(A);while(i--){var n=t[i];if(a&&n[2]?n[1]!==A[n[0]]:!(n[0]in A))return!1}while(++i<u){n=t[i];var o=n[0],s=A[o],l=n[1];if(a&&n[2]){if(s===void 0&&!(o in A))return!1}else{var g=new WF;if(r)var C=r(s,l,o,A,e,g);if(!(C===void 0?pZA(l,s,I5t|h5t,r,g):C))return!1}}return!0}function mZA(A){return A===A&&!mc(A)}function yZA(A){var e=hg(A),t=e.length;while(t--){var r=e[t],i=A[r];e[t]=[r,i,DZA(i)]}return e}function wZA(A,e){return function(t){if(t==null)return!1;return t[A]===e&&(e!==void 0||(A in Object(t)))}}function vZA(A){var e=p5t(A);if(e.length==1&&e[0][2])return bZA(e[0][0],e[0][1]);return function(t){return t===A||Q5t(t,A,e)}}function kZA(A,e){return A!=null&&e in Object(A)}function FZA(A,e,t){e=hJ(e,A);var r=-1,i=e.length,u=!1;while(++r<i){var a=Yx(e[r]);if(!(u=A!=null&&t(A,a)))break;A=A[a]}if(u||++r!=i)return u;return i=A==null?0:A.length,!!i&&rlA(i)&&oJ(a,i)&&(Ki(A)||gJ(A))}function SZA(A,e){return A!=null&&xZA(A,e,m5t)}function LZA(A,e){if(ulA(A)&&DZA(e))return bZA(Yx(A),e);return function(t){var r=t6t(t,A);return r===void 0&&r===e?D5t(t,A):pZA(e,r,y5t|w5t)}}function RZA(A){return function(e){return e==null?void 0:e[A]}}function NZA(A){return function(e){return alA(e,A)}}function GZA(A){return ulA(A)?v5t(Yx(A)):k5t(A)}function UZA(A){if(typeof A=="function")return A;if(A==null)return Nx;if(typeof A=="object")return Ki(A)?b5t(A[0],A[1]):f5t(A);return F5t(A)}function MZA(A,e,t,r){var i=-1,u=A==null?0:A.length;while(++i<u){var a=A[i];e(r,a,t(a),A)}return r}function TZA(A){return function(e,t,r){var i=-1,u=Object(e),a=r(e),n=a.length;while(n--){var o=a[A?n:++i];if(t(u[o],o,u)===!1)break}return e}}function YZA(A,e){return A&&R5t(A,e,hg)}function HZA(A,e){return function(t,r){if(t==null)return t;if(!$E(t))return A(t,r);var i=t.length,u=e?i:-1,a=Object(t);while(e?u--:++u<i)if(r(a[u],u,a)===!1)break;return t}}function KZA(A,e,t,r){return am(A,function(i,u,a){e(r,i,t(i),a)}),r}function JZA(A,e){return function(t,r){var i=Ki(t)?x5t:M5t,u=e?e():{};return i(t,A,Ad(r,2),u)}}function PZA(A){return OC(A)&&$E(A)}function _ZA(A,e,t){var r=-1,i=A==null?0:A.length;while(++r<i)if(t(e,A[r]))return!0;return!1}function qZA(A,e,t,r){var i=-1,u=hqA,a=!0,n=A.length,o=[],s=e.length;if(!n)return o;if(t)e=Lx(e,Tx(t));if(r)u=WZA,a=!1;else if(e.length>=K5t)u=BlA,a=!1,e=new ClA(e);A:while(++i<n){var l=A[i],g=t==null?l:t(l);if(l=r||l!==0?l:0,a&&g===g){var C=s;while(C--)if(e[C]===g)continue A;o.push(l)}else if(!u(e,g,r))o.push(l)}return o}function zZA(A){var e=A==null?0:A.length;return e?A[e-1]:void 0}function ZZA(A,e,t){var r=A==null?0:A.length;if(!r)return[];return e=t||e===void 0?1:Rx(e),wzA(A,e<0?0:e,r)}function VZA(A,e,t){var r=A==null?0:A.length;if(!r)return[];return e=t||e===void 0?1:Rx(e),e=r-e,wzA(A,0,e<0?0:e)}function jZA(A){return typeof A=="function"?A:Nx}function XZA(A,e){var t=Ki(A)?gqA:am;return t(A,P5t(e))}function $ZA(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(!e(A[t],t,A))return!1;return!0}function AVA(A,e){var t=!0;return am(A,function(r,i,u){return t=!!e(r,i,u),t}),t}function eVA(A,e,t){var r=Ki(A)?_5t:W5t;if(t&&lJ(A,e,t))e=void 0;return r(A,Ad(e,3))}function tVA(A,e){var t=[];return am(A,function(r,i,u){if(e(r,i,u))t.push(r)}),t}function iVA(A,e){var t=Ki(A)?llA:rVA;return t(A,Ad(e,3))}function uVA(A){return function(e,t,r){var i=Object(e);if(!$E(e)){var u=Ad(t,3);e=hg(e),t=G(function(n){return u(i[n],n,i)},"predicate")}var a=A(e,t,r);return a>-1?i[u?e[a]:a]:void 0}}function aVA(A,e,t){var r=A==null?0:A.length;if(!r)return-1;var i=t==null?0:Rx(t);if(i<0)i=z5t(r+i,0);return CqA(A,Ad(e,3),i)}function nVA(A){return A&&A.length?A[0]:void 0}function oVA(A,e){var t=-1,r=$E(A)?Array(A.length):[];return am(A,function(i,u,a){r[++t]=e(i,u,a)}),r}function sVA(A,e){var t=Ki(A)?Lx:j5t;return t(A,Ad(e,3))}function lVA(A,e){return slA(er(A,e),1)}function gVA(A,e){return A!=null&&rbt.call(A,e)}function cVA(A,e){return A!=null&&xZA(A,e,ibt)}function CVA(A){return typeof A=="string"||!Ki(A)&&OC(A)&&l1(A)==ubt}function BVA(A,e){return Lx(e,function(t){return A[t]})}function EVA(A){return A==null?[]:abt(A,hg(A))}function dVA(A,e,t,r){A=$E(A)?A:no(A),t=t&&!r?Rx(t):0;var i=A.length;if(t<0)t=nbt(i+t,0);return yl(A)?t<=i&&A.indexOf(e,t)>-1:!!i&&AlA(A,e,t)>-1}function IVA(A,e,t){var r=A==null?0:A.length;if(!r)return-1;var i=t==null?0:Rx(t);if(i<0)i=obt(r+i,0);return AlA(A,e,i)}function hVA(A){if(A==null)return!0;if($E(A)&&(Ki(A)||typeof A=="string"||typeof A.splice=="function"||sx(A)||ilA(A)||gJ(A)))return!A.length;var e=a6(A);if(e==sbt||e==lbt)return!A.size;if(Mx(A))return!PqA(A).length;for(var t in A)if(cbt.call(A,t))return!1;return!0}function QVA(A){return OC(A)&&l1(A)==Cbt}function pVA(A){return A===void 0}function fVA(A){if(typeof A!="function")throw TypeError(dbt);return function(){var e=arguments;switch(e.length){case 0:return!A.call(this);case 1:return!A.call(this,e[0]);case 2:return!A.call(this,e[0],e[1]);case 3:return!A.call(this,e[0],e[1],e[2])}return!A.apply(this,e)}}function mVA(A,e,t,r){if(!mc(A))return A;e=hJ(e,A);var i=-1,u=e.length,a=u-1,n=A;while(n!=null&&++i<u){var o=Yx(e[i]),s=t;if(o==="__proto__"||o==="constructor"||o==="prototype")return A;if(i!=a){var l=n[o];if(s=r?r(l,o,n):void 0,s===void 0)s=mc(l)?l:oJ(e[i+1])?[]:{}}sJ(n,o,s),n=n[o]}return A}function DVA(A,e,t){var r=-1,i=e.length,u={};while(++r<i){var a=e[r],n=alA(A,a);if(t(n,a))hbt(u,hJ(a,A),n)}return u}function yVA(A,e){if(A==null)return{};var t=Lx(WzA(A),function(r){return[r]});return e=Ad(e),Qbt(A,t,function(r,i){return e(r,i[0])})}function wVA(A,e,t,r,i){return i(A,function(u,a,n){t=r?(r=!1,u):e(t,u,a,n)}),t}function bVA(A,e,t){var r=Ki(A)?u6t:pbt,i=arguments.length<3;return r(A,Ad(e,4),t,i,am)}function vVA(A,e){var t=Ki(A)?llA:rVA;return t(A,Ibt(Ad(e,3)))}function kVA(A,e){var t;return am(A,function(r,i,u){return t=e(r,i,u),!t}),!!t}function FVA(A,e,t){var r=Ki(A)?gZA:fbt;if(t&&lJ(A,e,t))e=void 0;return r(A,Ad(e,3))}function SVA(A,e,t){var r=-1,i=hqA,u=A.length,a=!0,n=[],o=n;if(t)a=!1,i=WZA;else if(u>=wbt){var s=e?null:ybt(A);if(s)return ElA(s);a=!1,i=BlA,o=new ClA}else o=e?[]:n;A:while(++r<u){var l=A[r],g=e?e(l):l;if(l=t||l!==0?l:0,a&&g===g){var C=o.length;while(C--)if(o[C]===g)continue A;if(e)o.push(g);n.push(l)}else if(!i(o,g,t)){if(o!==n)o.push(g);n.push(l)}}return n}function LVA(A){return A&&A.length?bbt(A):[]}function PH(A){if(console&&console.error)console.error(`Error: ${A}`)}function QlA(A){if(console&&console.warn)console.warn(`Warning: ${A}`)}function plA(A){let e=new Date().getTime(),t=A();return{time:new Date().getTime()-e,value:t}}function flA(A){function e(){}G(e,"FakeConstructor"),e.prototype=A;let t=new e;function r(){return typeof t.bar}return G(r,"fakeAccess"),r(),r(),A;(0,eval)(A)}function RVA(A){if(NVA(A))return A.LABEL;else return A.name}function NVA(A){return yl(A.LABEL)&&A.LABEL!==""}function GVA(A){return er(A,zF)}function zF(A){function e(t){return er(t,zF)}if(G(e,"convertDefinition"),A instanceof Ss){let t={type:"NonTerminal",name:A.nonTerminalName,idx:A.idx};if(yl(A.label))t.label=A.label;return t}else if(A instanceof wl)return{type:"Alternative",definition:e(A.definition)};else if(A instanceof c0)return{type:"Option",idx:A.idx,definition:e(A.definition)};else if(A instanceof fg)return{type:"RepetitionMandatory",idx:A.idx,definition:e(A.definition)};else if(A instanceof mg)return{type:"RepetitionMandatoryWithSeparator",idx:A.idx,separator:zF(new ia({terminalType:A.separator})),definition:e(A.definition)};else if(A instanceof bl)return{type:"RepetitionWithSeparator",idx:A.idx,separator:zF(new ia({terminalType:A.separator})),definition:e(A.definition)};else if(A instanceof $a)return{type:"Repetition",idx:A.idx,definition:e(A.definition)};else if(A instanceof vl)return{type:"Alternation",idx:A.idx,definition:e(A.definition)};else if(A instanceof ia){let t={type:"Terminal",name:A.terminalType.name,label:RVA(A.terminalType),idx:A.idx};if(yl(A.label))t.terminalLabel=A.label;let r=A.terminalType.PATTERN;if(A.terminalType.PATTERN)t.pattern=uh(r)?r.source:r;return t}else if(A instanceof C6)return{type:"Rule",name:A.name,orgText:A.orgText,definition:e(A.definition)};else throw Error("non exhaustive match")}function UVA(A){return A instanceof wl||A instanceof c0||A instanceof $a||A instanceof fg||A instanceof mg||A instanceof bl||A instanceof ia||A instanceof C6}function Bx(A,e=[]){if(A instanceof c0||A instanceof $a||A instanceof bl)return!0;if(A instanceof vl)return xVA(A.definition,(r)=>Bx(r,e));else if(A instanceof Ss&&Ns(e,A))return!1;else if(A instanceof ed){if(A instanceof Ss)e.push(A);return JC(A.definition,(r)=>Bx(r,e))}else return!1}function MVA(A){return A instanceof vl}function MC(A){if(A instanceof Ss)return"SUBRULE";else if(A instanceof c0)return"OPTION";else if(A instanceof vl)return"OR";else if(A instanceof fg)return"AT_LEAST_ONE";else if(A instanceof mg)return"AT_LEAST_ONE_SEP";else if(A instanceof bl)return"MANY_SEP";else if(A instanceof $a)return"MANY";else if(A instanceof ia)return"CONSUME";else throw Error("non exhaustive match")}function i0A(A,e,t){return[new c0({definition:[new ia({terminalType:A.separator})].concat(A.definition)})].concat(e,t)}function E6(A){if(A instanceof Ss)return E6(A.referencedRule);else if(A instanceof ia)return HVA(A);else if(UVA(A))return TVA(A);else if(MVA(A))return YVA(A);else throw Error("non exhaustive match")}function TVA(A){let e=[],t=A.definition,r=0,i=t.length>r,u,a=!0;while(i&&a)u=t[r],a=Bx(u),e=e.concat(E6(u)),r=r+1,i=t.length>r;return hlA(e)}function YVA(A){let e=er(A.definition,(t)=>E6(t));return hlA(KC(e))}function HVA(A){return[A.terminalType]}function JVA(A){let e={};return Lr(A,(t)=>{let r=new vbt(t).startWalking();Qg(e,r)}),e}function OVA(A,e){return A.name+e+KVA}function Kx(A){let e=A.toString();if(lH.hasOwnProperty(e))return lH[e];else{let t=kbt.pattern(e);return lH[e]=t,t}}function PVA(){lH={}}function WVA(A,e=!1){try{let t=Kx(A);return WH(t.value,{},t.flags.ignoreCase)}catch(t){if(t.message===_VA){if(e)QlA(`${_H} Unable to optimize: < ${A.toString()} >
|
||
Complement Sets cannot be automatically optimized.
|
||
This will disable the lexer's first char optimizations.
|
||
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`)}else{let r="";if(e)r=`
|
||
This will disable the lexer's first char optimizations.
|
||
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`;PH(`${_H}
|
||
Failed parsing: < ${A.toString()} >
|
||
Using the @chevrotain/regexp-to-ast library
|
||
Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+r)}}return[]}function WH(A,e,t){switch(A.type){case"Disjunction":for(let i=0;i<A.value.length;i++)WH(A.value[i],e,t);break;case"Alternative":let r=A.value;for(let i=0;i<r.length;i++){let u=r[i];switch(u.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}let a=u;switch(a.type){case"Character":RF(a.value,e,t);break;case"Set":if(a.complement===!0)throw Error(_VA);Lr(a.value,(o)=>{if(typeof o==="number")RF(o,e,t);else{let s=o;if(t===!0)for(let l=s.from;l<=s.to;l++)RF(l,e,t);else{for(let l=s.from;l<=s.to&&l<GF;l++)RF(l,e,t);if(s.to>=GF){let l=s.from>=GF?s.from:GF,g=s.to,C=nh(l),B=nh(g);for(let E=C;E<=B;E++)e[E]=E}}}});break;case"Group":WH(a.value,e,t);break;default:throw Error("Non Exhaustive Match")}let n=a.quantifier!==void 0&&a.quantifier.atLeast===0;if(a.type==="Group"&&qH(a)===!1||a.type!=="Group"&&n===!1)break}break;default:throw Error("non exhaustive match!")}return no(e)}function RF(A,e,t){let r=nh(A);if(e[r]=r,t===!0)qVA(A,e)}function qVA(A,e){let t=String.fromCharCode(A),r=t.toUpperCase();if(r!==t){let i=nh(r.charCodeAt(0));e[i]=i}else{let i=t.toLowerCase();if(i!==t){let u=nh(i.charCodeAt(0));e[u]=u}}}function u0A(A,e){return n6(A.value,(t)=>{if(typeof t==="number")return Ns(e,t);else{let r=t;return n6(e,(i)=>r.from<=i&&i<=r.to)!==void 0}})}function qH(A){let e=A.quantifier;if(e&&e.atLeast===0)return!0;if(!A.value)return!1;return Ki(A.value)?JC(A.value,qH):qH(A.value)}function mJ(A,e){if(e instanceof RegExp){let t=Kx(e),r=new Fbt(A);return r.visit(t),r.found}else return n6(e,(t)=>Ns(A,t.charCodeAt(0)))!==void 0}function zVA(A,e){e=IlA(e,{debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
|
||
`],tracer:G((Q,p)=>p(),"tracer")});let t=e.tracer;t("initCharCodeToOptimizedIndexMap",()=>{EjA()});let r;t("Reject Lexer.NA",()=>{r=pJ(A,(Q)=>Q[_3]===Fs.NA)});let i=!1,u;t("Transform Patterns",()=>{i=!1,u=er(r,(Q)=>{let p=Q[_3];if(uh(p)){let m=p.source;if(m.length===1&&m!=="^"&&m!=="$"&&m!=="."&&!p.ignoreCase)return m;else if(m.length===2&&m[0]==="\\"&&!Ns(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],m[1]))return m[1];else return a0A(p)}else if(ch(p))return i=!0,{exec:p};else if(typeof p==="object")return i=!0,p;else if(typeof p==="string")if(p.length===1)return p;else{let m=p.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),f=new RegExp(m);return a0A(f)}else throw Error("non exhaustive match")})});let a,n,o,s,l;t("misc mapping",()=>{a=er(r,(Q)=>Q.tokenTypeIdx),n=er(r,(Q)=>{let p=Q.GROUP;if(p===Fs.SKIPPED)return;else if(yl(p))return p;else if(ah(p))return!1;else throw Error("non exhaustive match")}),o=er(r,(Q)=>{let p=Q.LONGER_ALT;if(p)return Ki(p)?er(p,(f)=>NPA(r,f)):[NPA(r,p)]}),s=er(r,(Q)=>Q.PUSH_MODE),l=er(r,(Q)=>hr(Q,"POP_MODE"))});let g;t("Line Terminator Handling",()=>{let Q=ylA(e.lineTerminatorCharacters);if(g=er(r,(p)=>!1),e.positionTracking!=="onlyOffset")g=er(r,(p)=>{if(hr(p,"LINE_BREAKS"))return!!p.LINE_BREAKS;else return DlA(p,Q)===!1&&mJ(Q,p.PATTERN)})});let C,B,E,d;t("Misc Mapping #2",()=>{C=er(r,mlA),B=er(u,CjA),E=pg(r,(Q,p)=>{let m=p.GROUP;if(yl(m)&&m!==Fs.SKIPPED)Q[m]=[];return Q},{}),d=er(u,(Q,p)=>({pattern:u[p],longerAlt:o[p],canLineTerminator:g[p],isCustom:C[p],short:B[p],group:n[p],push:s[p],pop:l[p],tokenTypeIdx:a[p],tokenType:r[p]}))});let I=!0,h=[];if(!e.safeMode)t("First Char Optimization",()=>{h=pg(r,(Q,p,m)=>{if(typeof p.PATTERN==="string"){let f=p.PATTERN.charCodeAt(0),D=nh(f);gH(Q,D,d[m])}else if(Ki(p.START_CHARS_HINT)){let f;Lr(p.START_CHARS_HINT,(D)=>{let w=typeof D==="string"?D.charCodeAt(0):D,b=nh(w);if(f!==b)f=b,gH(Q,b,d[m])})}else if(uh(p.PATTERN))if(p.PATTERN.unicode){if(I=!1,e.ensureOptimizations)PH(`${_H} Unable to analyze < ${p.PATTERN.toString()} > pattern.
|
||
The regexp unicode flag is not currently supported by the regexp-to-ast library.
|
||
This will disable the lexer's first char optimizations.
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`)}else{let f=WVA(p.PATTERN,e.ensureOptimizations);if(qu(f))I=!1;Lr(f,(D)=>{gH(Q,D,d[m])})}else{if(e.ensureOptimizations)PH(`${_H} TokenType: <${p.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
|
||
This will disable the lexer's first char optimizations.
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`);I=!1}return Q},[])});return{emptyGroups:E,patternIdxToConfig:d,charCodeToPatternIdxToConfig:h,hasCustom:i,canBeOptimized:I}}function ZVA(A,e){let t=[],r=jVA(A);t=t.concat(r.errors);let i=XVA(r.valid),u=i.valid;return t=t.concat(i.errors),t=t.concat(VVA(u)),t=t.concat(ijA(u)),t=t.concat(ujA(u,e)),t=t.concat(ajA(u)),t}function VVA(A){let e=[],t=yc(A,(r)=>uh(r[_3]));return e=e.concat($VA(t)),e=e.concat(ejA(t)),e=e.concat(tjA(t)),e=e.concat(rjA(t)),e=e.concat(AjA(t)),e}function jVA(A){let e=yc(A,(i)=>!hr(i,_3)),t=er(e,(i)=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:An.MISSING_PATTERN,tokenTypes:[i]})),r=QJ(A,e);return{errors:t,valid:r}}function XVA(A){let e=yc(A,(i)=>{let u=i[_3];return!uh(u)&&!ch(u)&&!hr(u,"exec")&&!yl(u)}),t=er(e,(i)=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:An.INVALID_PATTERN,tokenTypes:[i]})),r=QJ(A,e);return{errors:t,valid:r}}function $VA(A){class e extends AJ{static{G(this,"EndAnchorFinder")}constructor(){super(...arguments);this.found=!1}visitEndAnchor(i){this.found=!0}}let t=yc(A,(i)=>{let u=i.PATTERN;try{let a=Kx(u),n=new e;return n.visit(a),n.found}catch(a){return xbt.test(u.source)}});return er(t,(i)=>({message:`Unexpected RegExp Anchor Error:
|
||
Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
|
||
See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:An.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function AjA(A){let e=yc(A,(r)=>r.PATTERN.test(""));return er(e,(r)=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' must not match an empty string",type:An.EMPTY_MATCH_PATTERN,tokenTypes:[r]}))}function ejA(A){class e extends AJ{static{G(this,"StartAnchorFinder")}constructor(){super(...arguments);this.found=!1}visitStartAnchor(i){this.found=!0}}let t=yc(A,(i)=>{let u=i.PATTERN;try{let a=Kx(u),n=new e;return n.visit(a),n.found}catch(a){return Sbt.test(u.source)}});return er(t,(i)=>({message:`Unexpected RegExp Anchor Error:
|
||
Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
|
||
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:An.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function tjA(A){let e=yc(A,(r)=>{let i=r[_3];return i instanceof RegExp&&(i.multiline||i.global)});return er(e,(r)=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:An.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[r]}))}function rjA(A){let e=[],t=er(A,(u)=>pg(A,(a,n)=>{if(u.PATTERN.source===n.PATTERN.source&&!Ns(e,n)&&n.PATTERN!==Fs.NA)return e.push(n),a.push(n),a;return a},[]));t=Hx(t);let r=yc(t,(u)=>u.length>1);return er(r,(u)=>{let a=er(u,(o)=>o.name);return{message:`The same RegExp pattern ->${PC(u).PATTERN}<-has been used in all of the following Token Types: ${a.join(", ")} <-`,type:An.DUPLICATE_PATTERNS_FOUND,tokenTypes:u}})}function ijA(A){let e=yc(A,(r)=>{if(!hr(r,"GROUP"))return!1;let i=r.GROUP;return i!==Fs.SKIPPED&&i!==Fs.NA&&!yl(i)});return er(e,(r)=>({message:"Token Type: ->"+r.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:An.INVALID_GROUP_TYPE_FOUND,tokenTypes:[r]}))}function ujA(A,e){let t=yc(A,(i)=>i.PUSH_MODE!==void 0&&!Ns(e,i.PUSH_MODE));return er(t,(i)=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:An.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function ajA(A){let e=[],t=pg(A,(r,i,u)=>{let a=i.PATTERN;if(a===Fs.NA)return r;if(yl(a))r.push({str:a,idx:u,tokenType:i});else if(uh(a)&&ojA(a))r.push({str:a.source,idx:u,tokenType:i});return r},[]);return Lr(A,(r,i)=>{Lr(t,({str:u,idx:a,tokenType:n})=>{if(i<a&&njA(u,r.PATTERN)){let o=`Token: ->${n.name}<- can never be matched.
|
||
Because it appears AFTER the Token Type ->${r.name}<-in the lexer's definition.
|
||
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:o,type:An.UNREACHABLE_PATTERN,tokenTypes:[r,n]})}})}),e}function njA(A,e){if(uh(e)){if(sjA(e))return!1;let t=e.exec(A);return t!==null&&t.index===0}else if(ch(e))return e(A,0,[],{});else if(hr(e,"exec"))return e.exec(A,0,[],{});else if(typeof e==="string")return e===A;else throw Error("non exhaustive match")}function ojA(A){return n6([".","\\","[","]","|","^","$","(",")","?","*","+","{"],(t)=>A.source.indexOf(t)!==-1)===void 0}function sjA(A){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(A.source)}function a0A(A){let e=A.ignoreCase?"iy":"y";return new RegExp(`${A.source}`,e)}function ljA(A,e,t){let r=[];if(!hr(A,NF))r.push({message:"A MultiMode Lexer cannot be initialized without a <"+NF+`> property in its definition
|
||
`,type:An.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE});if(!hr(A,YY))r.push({message:"A MultiMode Lexer cannot be initialized without a <"+YY+`> property in its definition
|
||
`,type:An.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY});if(hr(A,YY)&&hr(A,NF)&&!hr(A.modes,A.defaultMode))r.push({message:`A MultiMode Lexer cannot be initialized with a ${NF}: <${A.defaultMode}>which does not exist
|
||
`,type:An.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST});if(hr(A,YY))Lr(A.modes,(i,u)=>{Lr(i,(a,n)=>{if(ah(a))r.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${u}> at index: <${n}>
|
||
`,type:An.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(hr(a,"LONGER_ALT")){let o=Ki(a.LONGER_ALT)?a.LONGER_ALT:[a.LONGER_ALT];Lr(o,(s)=>{if(!ah(s)&&!Ns(i,s))r.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${s.name}> on token <${a.name}> outside of mode <${u}>
|
||
`,type:An.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})});return r}function gjA(A,e,t){let r=[],i=!1,u=Hx(KC(no(A.modes))),a=pJ(u,(o)=>o[_3]===Fs.NA),n=ylA(t);if(e)Lr(a,(o)=>{let s=DlA(o,n);if(s!==!1){let g={message:BjA(o,s),type:s.issue,tokenType:o};r.push(g)}else if(hr(o,"LINE_BREAKS")){if(o.LINE_BREAKS===!0)i=!0}else if(mJ(n,o.PATTERN))i=!0});if(e&&!i)r.push({message:`Warning: No LINE_BREAKS Found.
|
||
This Lexer has been defined to track line and column information,
|
||
But none of the Token Types can be identified as matching a line terminator.
|
||
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS
|
||
for details.`,type:An.NO_LINE_BREAKS_FLAGS});return r}function cjA(A){let e={},t=hg(A);return Lr(t,(r)=>{let i=A[r];if(Ki(i))e[r]=[];else throw Error("non exhaustive match")}),e}function mlA(A){let e=A.PATTERN;if(uh(e))return!1;else if(ch(e))return!0;else if(hr(e,"exec"))return!0;else if(yl(e))return!1;else throw Error("non exhaustive match")}function CjA(A){if(yl(A)&&A.length===1)return A.charCodeAt(0);else return!1}function DlA(A,e){if(hr(A,"LINE_BREAKS"))return!1;else if(uh(A.PATTERN)){try{mJ(e,A.PATTERN)}catch(t){return{issue:An.IDENTIFY_TERMINATOR,errMsg:t.message}}return!1}else if(yl(A.PATTERN))return!1;else if(mlA(A))return{issue:An.CUSTOM_LINE_BREAK};else throw Error("non exhaustive match")}function BjA(A,e){if(e.issue===An.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
|
||
The problem is in the <${A.name}> Token Type
|
||
Root cause: ${e.errMsg}.
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;else if(e.issue===An.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
|
||
The problem is in the <${A.name}> Token Type
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;else throw Error("non exhaustive match")}function ylA(A){return er(A,(t)=>{if(yl(t))return t.charCodeAt(0);else return t})}function gH(A,e,t){if(A[e]===void 0)A[e]=[t];else A[e].push(t)}function nh(A){return A<GF?A:cH[A]}function EjA(){if(qu(cH)){cH=Array(65536);for(let A=0;A<65536;A++)cH[A]=A>255?255+~~(A/255):A}}function d6(A,e){let t=A.tokenTypeIdx;if(t===e.tokenTypeIdx)return!0;else return e.isParent===!0&&e.categoryMatchesMap[t]===!0}function Ex(A,e){return A.tokenTypeIdx===e.tokenTypeIdx}function I6(A){let e=IjA(A);hjA(e),pjA(e),QjA(e),Lr(e,(t)=>{t.isParent=t.categoryMatches.length>0})}function IjA(A){let e=C0(A),t=A,r=!0;while(r){t=Hx(KC(er(t,(u)=>u.CATEGORIES)));let i=QJ(t,e);if(e=e.concat(i),qu(i))r=!1;else t=i}return e}function hjA(A){Lr(A,(e)=>{if(!blA(e))djA[UPA]=e,e.tokenTypeIdx=UPA++;if(n0A(e)&&!Ki(e.CATEGORIES))e.CATEGORIES=[e.CATEGORIES];if(!n0A(e))e.CATEGORIES=[];if(!fjA(e))e.categoryMatches=[];if(!mjA(e))e.categoryMatchesMap={}})}function QjA(A){Lr(A,(e)=>{e.categoryMatches=[],Lr(e.categoryMatchesMap,(t,r)=>{e.categoryMatches.push(djA[r].tokenTypeIdx)})})}function pjA(A){Lr(A,(e)=>{wlA([],e)})}function wlA(A,e){Lr(A,(t)=>{e.categoryMatchesMap[t.tokenTypeIdx]=!0}),Lr(e.CATEGORIES,(t)=>{let r=A.concat(e);if(!Ns(r,t))wlA(r,t)})}function blA(A){return hr(A,"tokenTypeIdx")}function n0A(A){return hr(A,"CATEGORIES")}function fjA(A){return hr(A,"categoryMatches")}function mjA(A){return hr(A,"categoryMatchesMap")}function DjA(A){return hr(A,"tokenTypeIdx")}function K3(A){if(vlA(A))return A.LABEL;else return A.name}function vlA(A){return yl(A.LABEL)&&A.LABEL!==""}function zw(A){return yjA(A)}function yjA(A){let e=A.pattern,t={};if(t.name=A.name,!ah(e))t.PATTERN=e;if(hr(A,Rbt))throw`The parent property is no longer supported.
|
||
See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;if(hr(A,MPA))t.CATEGORIES=A[MPA];if(I6([t]),hr(A,TPA))t.LABEL=A[TPA];if(hr(A,YPA))t.GROUP=A[YPA];if(hr(A,KPA))t.POP_MODE=A[KPA];if(hr(A,HPA))t.PUSH_MODE=A[HPA];if(hr(A,JPA))t.LONGER_ALT=A[JPA];if(hr(A,OPA))t.LINE_BREAKS=A[OPA];if(hr(A,PPA))t.START_CHARS_HINT=A[PPA];return t}function Jx(A,e,t,r,i,u,a,n){return{image:e,startOffset:t,endOffset:r,startLine:i,endLine:u,startColumn:a,endColumn:n,tokenTypeIdx:A.tokenTypeIdx,tokenType:A}}function klA(A,e){return d6(A,e)}function wjA(A,e){let t=new Gbt(A,e);return t.resolveRefs(),t.errors}function zH(A,e,t=[]){t=C0(t);let r=[],i=0;function u(n){return n.concat(g0(A,i+1))}G(u,"remainingPathWith");function a(n){let o=zH(u(n),e,t);return r.concat(o)}G(a,"getAlternativesForProd");while(t.length<e&&i<A.length){let n=A[i];if(n instanceof wl)return a(n.definition);else if(n instanceof Ss)return a(n.definition);else if(n instanceof c0)r=a(n.definition);else if(n instanceof fg){let o=n.definition.concat([new $a({definition:n.definition})]);return a(o)}else if(n instanceof mg){let o=[new wl({definition:n.definition}),new $a({definition:[new ia({terminalType:n.separator})].concat(n.definition)})];return a(o)}else if(n instanceof bl){let o=n.definition.concat([new $a({definition:[new ia({terminalType:n.separator})].concat(n.definition)})]);r=a(o)}else if(n instanceof $a){let o=n.definition.concat([new $a({definition:n.definition})]);r=a(o)}else if(n instanceof vl)return Lr(n.definition,(o)=>{if(qu(o.definition)===!1)r=a(o.definition)}),r;else if(n instanceof ia)t.push(n.terminalType);else throw Error("non exhaustive match");i++}return r.push({partialPath:t,suffixDef:g0(A,i)}),r}function FlA(A,e,t,r){let u=["EXIT_NONE_TERMINAL"],a="EXIT_ALTERNATIVE",n=!1,o=e.length,s=o-r-1,l=[],g=[];g.push({idx:-1,def:A,ruleStack:[],occurrenceStack:[]});while(!qu(g)){let C=g.pop();if(C==="EXIT_ALTERNATIVE"){if(n&&P3(g).idx<=s)g.pop();continue}let{def:B,idx:E,ruleStack:d,occurrenceStack:I}=C;if(qu(B))continue;let h=B[0];if(h==="EXIT_NONE_TERMINAL"){let Q={idx:E,def:g0(B),ruleStack:Cx(d),occurrenceStack:Cx(I)};g.push(Q)}else if(h instanceof ia)if(E<o-1){let Q=E+1,p=e[Q];if(t(p,h.terminalType)){let m={idx:Q,def:g0(B),ruleStack:d,occurrenceStack:I};g.push(m)}}else if(E===o-1)l.push({nextTokenType:h.terminalType,nextTokenOccurrence:h.idx,ruleStack:d,occurrenceStack:I}),n=!0;else throw Error("non exhaustive match");else if(h instanceof Ss){let Q=C0(d);Q.push(h.nonTerminalName);let p=C0(I);p.push(h.idx);let m={idx:E,def:h.definition.concat(u,g0(B)),ruleStack:Q,occurrenceStack:p};g.push(m)}else if(h instanceof c0){let Q={idx:E,def:g0(B),ruleStack:d,occurrenceStack:I};g.push(Q),g.push("EXIT_ALTERNATIVE");let p={idx:E,def:h.definition.concat(g0(B)),ruleStack:d,occurrenceStack:I};g.push(p)}else if(h instanceof fg){let Q=new $a({definition:h.definition,idx:h.idx}),p=h.definition.concat([Q],g0(B)),m={idx:E,def:p,ruleStack:d,occurrenceStack:I};g.push(m)}else if(h instanceof mg){let Q=new ia({terminalType:h.separator}),p=new $a({definition:[Q].concat(h.definition),idx:h.idx}),m=h.definition.concat([p],g0(B)),f={idx:E,def:m,ruleStack:d,occurrenceStack:I};g.push(f)}else if(h instanceof bl){let Q={idx:E,def:g0(B),ruleStack:d,occurrenceStack:I};g.push(Q),g.push("EXIT_ALTERNATIVE");let p=new ia({terminalType:h.separator}),m=new $a({definition:[p].concat(h.definition),idx:h.idx}),f=h.definition.concat([m],g0(B)),D={idx:E,def:f,ruleStack:d,occurrenceStack:I};g.push(D)}else if(h instanceof $a){let Q={idx:E,def:g0(B),ruleStack:d,occurrenceStack:I};g.push(Q),g.push("EXIT_ALTERNATIVE");let p=new $a({definition:h.definition,idx:h.idx}),m=h.definition.concat([p],g0(B)),f={idx:E,def:m,ruleStack:d,occurrenceStack:I};g.push(f)}else if(h instanceof vl)for(let Q=h.definition.length-1;Q>=0;Q--){let p=h.definition[Q],m={idx:E,def:p.definition.concat(g0(B)),ruleStack:d,occurrenceStack:I};g.push(m),g.push("EXIT_ALTERNATIVE")}else if(h instanceof wl)g.push({idx:E,def:h.definition.concat(g0(B)),ruleStack:d,occurrenceStack:I});else if(h instanceof C6)g.push(bjA(h,E,d,I));else throw Error("non exhaustive match")}return l}function bjA(A,e,t,r){let i=C0(t);i.push(A.name);let u=C0(r);return u.push(1),{idx:e,def:A.definition,ruleStack:i,occurrenceStack:u}}function yJ(A){if(A instanceof c0||A==="Option")return Ga.OPTION;else if(A instanceof $a||A==="Repetition")return Ga.REPETITION;else if(A instanceof fg||A==="RepetitionMandatory")return Ga.REPETITION_MANDATORY;else if(A instanceof mg||A==="RepetitionMandatoryWithSeparator")return Ga.REPETITION_MANDATORY_WITH_SEPARATOR;else if(A instanceof bl||A==="RepetitionWithSeparator")return Ga.REPETITION_WITH_SEPARATOR;else if(A instanceof vl||A==="Alternation")return Ga.ALTERNATION;else throw Error("non exhaustive match")}function s0A(A){let{occurrence:e,rule:t,prodType:r,maxLookahead:i}=A,u=yJ(r);if(u===Ga.ALTERNATION)return Ox(e,t,i);else return Px(e,t,u,i)}function vjA(A,e,t,r,i,u){let a=Ox(A,e,t),n=SlA(a)?Ex:d6;return u(a,r,n,i)}function kjA(A,e,t,r,i,u){let a=Px(A,e,i,t),n=SlA(a)?Ex:d6;return u(a[0],n,r)}function FjA(A,e,t,r){let i=A.length,u=JC(A,(a)=>JC(a,(n)=>n.length===1));if(e)return function(a){let n=er(a,(o)=>o.GATE);for(let o=0;o<i;o++){let s=A[o],l=s.length,g=n[o];if(g!==void 0&&g.call(this)===!1)continue;A:for(let C=0;C<l;C++){let B=s[C],E=B.length;for(let d=0;d<E;d++){let I=this.LA(d+1);if(t(I,B[d])===!1)continue A}return o}}return};else if(u&&!r){let a=er(A,(o)=>KC(o)),n=pg(a,(o,s,l)=>(Lr(s,(g)=>{if(!hr(o,g.tokenTypeIdx))o[g.tokenTypeIdx]=l;Lr(g.categoryMatches,(C)=>{if(!hr(o,C))o[C]=l})}),o),{});return function(){let o=this.LA(1);return n[o.tokenTypeIdx]}}else return function(){for(let a=0;a<i;a++){let n=A[a],o=n.length;A:for(let s=0;s<o;s++){let l=n[s],g=l.length;for(let C=0;C<g;C++){let B=this.LA(C+1);if(t(B,l[C])===!1)continue A}return a}}return}}function xjA(A,e,t){let r=JC(A,(u)=>u.length===1),i=A.length;if(r&&!t){let u=KC(A);if(u.length===1&&qu(u[0].categoryMatches)){let n=u[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===n}}else{let a=pg(u,(n,o,s)=>(n[o.tokenTypeIdx]=!0,Lr(o.categoryMatches,(l)=>{n[l]=!0}),n),[]);return function(){let n=this.LA(1);return a[n.tokenTypeIdx]===!0}}}else return function(){A:for(let u=0;u<i;u++){let a=A[u],n=a.length;for(let o=0;o<n;o++){let s=this.LA(o+1);if(e(s,a[o])===!1)continue A}return!0}return!1}}function l0A(A){let e=Array(A);for(let t=0;t<A;t++)e[t]=[];return e}function CH(A){let e=[""];for(let t=0;t<A.length;t++){let r=A[t],i=[];for(let u=0;u<e.length;u++){let a=e[u];i.push(a+"_"+r.tokenTypeIdx);for(let n=0;n<r.categoryMatches.length;n++){let o="_"+r.categoryMatches[n];i.push(a+o)}}e=i}return e}function LjA(A,e,t){for(let r=0;r<A.length;r++){if(r===t)continue;let i=A[r];for(let u=0;u<e.length;u++){let a=e[u];if(i[a]===!0)return!1}}return!0}function xlA(A,e){let t=er(A,(a)=>zH([a],1)),r=l0A(t.length),i=er(t,(a)=>{let n={};return Lr(a,(o)=>{let s=CH(o.partialPath);Lr(s,(l)=>{n[l]=!0})}),n}),u=t;for(let a=1;a<=e;a++){let n=u;u=l0A(n.length);for(let o=0;o<n.length;o++){let s=n[o];for(let l=0;l<s.length;l++){let g=s[l].partialPath,C=s[l].suffixDef,B=CH(g);if(LjA(i,B,o)||qu(C)||g.length===e){let d=r[o];if(ZH(d,g)===!1){d.push(g);for(let I=0;I<B.length;I++){let h=B[I];i[o][h]=!0}}}else{let d=zH(C,a+1,g);u[o]=u[o].concat(d),Lr(d,(I)=>{let h=CH(I.partialPath);Lr(h,(Q)=>{i[o][Q]=!0})})}}}}return r}function Ox(A,e,t,r){let i=new SjA(A,Ga.ALTERNATION,r);return e.accept(i),xlA(i.result,t)}function Px(A,e,t,r){let i=new SjA(A,t);e.accept(i);let u=i.result,n=new Hbt(e,A,t).startWalking(),o=new wl({definition:u}),s=new wl({definition:n});return xlA([o,s],r)}function ZH(A,e){A:for(let t=0;t<A.length;t++){let r=A[t];if(r.length!==e.length)continue;for(let i=0;i<r.length;i++){let u=e[i],a=r[i];if((u===a||a.categoryMatchesMap[u.tokenTypeIdx]!==void 0)===!1)continue A}return!0}return!1}function RjA(A,e){return A.length<e.length&&JC(A,(t,r)=>{let i=e[r];return t===i||i.categoryMatchesMap[t.tokenTypeIdx]})}function SlA(A){return JC(A,(e)=>JC(e,(t)=>JC(t,(r)=>qu(r.categoryMatches))))}function NjA(A){let e=A.lookaheadStrategy.validate({rules:A.rules,tokenTypes:A.tokenTypes,grammarName:A.grammarName});return er(e,(t)=>Object.assign({type:Ls.CUSTOM_LOOKAHEAD_VALIDATION},t))}function GjA(A,e,t,r){let i=pc(A,(o)=>UjA(o,t)),u=WjA(A,e,t),a=pc(A,(o)=>JjA(o,t)),n=pc(A,(o)=>TjA(o,A,r,t));return i.concat(u,a,n)}function UjA(A,e){let t=new Kbt;A.accept(t);let r=t.allProductions,i=ebt(r,MjA),u=_C(i,(n)=>n.length>1);return er(no(u),(n)=>{let o=PC(n),s=e.buildDuplicateFoundError(A,n),l=MC(o),g={message:s,type:Ls.DUPLICATE_PRODUCTIONS,ruleName:A.name,dslName:l,occurrence:o.idx},C=LlA(o);if(C)g.parameter=C;return g})}function MjA(A){return`${MC(A)}_#_${A.idx}_#_${LlA(A)}`}function LlA(A){if(A instanceof ia)return A.terminalType.name;else if(A instanceof Ss)return A.nonTerminalName;else return""}function TjA(A,e,t,r){let i=[];if(pg(e,(a,n)=>{if(n.name===A.name)return a+1;return a},0)>1){let a=r.buildDuplicateRuleNameError({topLevelRule:A,grammarName:t});i.push({message:a,type:Ls.DUPLICATE_RULE_NAME,ruleName:A.name})}return i}function YjA(A,e,t){let r=[],i;if(!Ns(e,A))i=`Invalid rule override, rule: ->${A}<- cannot be overridden in the grammar: ->${t}<-as it is not defined in any of the super grammars `,r.push({message:i,type:Ls.INVALID_RULE_OVERRIDE,ruleName:A});return r}function RlA(A,e,t,r=[]){let i=[],u=ZF(e.definition);if(qu(u))return[];else{let a=A.name;if(Ns(u,A))i.push({message:t.buildLeftRecursionError({topLevelRule:A,leftRecursionPath:r}),type:Ls.LEFT_RECURSION,ruleName:a});let o=QJ(u,r.concat([A])),s=pc(o,(l)=>{let g=C0(r);return g.push(l),RlA(A,l,t,g)});return i.concat(s)}}function ZF(A){let e=[];if(qu(A))return e;let t=PC(A);if(t instanceof Ss)e.push(t.referencedRule);else if(t instanceof wl||t instanceof c0||t instanceof fg||t instanceof mg||t instanceof bl||t instanceof $a)e=e.concat(ZF(t.definition));else if(t instanceof vl)e=KC(er(t.definition,(u)=>ZF(u.definition)));else if(t instanceof ia);else throw Error("non exhaustive match");let r=Bx(t),i=A.length>1;if(r&&i){let u=g0(A);return e.concat(ZF(u))}else return e}function HjA(A,e){let t=new NlA;A.accept(t);let r=t.alternations;return pc(r,(u)=>{let a=Cx(u.definition);return pc(a,(n,o)=>{let s=FlA([n],[],d6,1);if(qu(s))return[{message:e.buildEmptyAlternationError({topLevelRule:A,alternation:u,emptyChoiceIdx:o}),type:Ls.NONE_LAST_EMPTY_ALT,ruleName:A.name,occurrence:u.idx,alternative:o+1}];else return[]})})}function KjA(A,e,t){let r=new NlA;A.accept(r);let i=r.alternations;return i=pJ(i,(a)=>a.ignoreAmbiguities===!0),pc(i,(a)=>{let n=a.idx,o=a.maxLookahead||e,s=Ox(n,A,o,a),l=PjA(s,a,A,t),g=_jA(s,a,A,t);return l.concat(g)})}function JjA(A,e){let t=new NlA;A.accept(t);let r=t.alternations;return pc(r,(u)=>{if(u.definition.length>255)return[{message:e.buildTooManyAlternativesError({topLevelRule:A,alternation:u}),type:Ls.TOO_MANY_ALTS,ruleName:A.name,occurrence:u.idx}];else return[]})}function OjA(A,e,t){let r=[];return Lr(A,(i)=>{let u=new Jbt;i.accept(u);let a=u.allProductions;Lr(a,(n)=>{let o=yJ(n),s=n.maxLookahead||e,l=n.idx,C=Px(l,i,o,s)[0];if(qu(KC(C))){let B=t.buildEmptyRepetitionError({topLevelRule:i,repetition:n});r.push({message:B,type:Ls.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),r}function PjA(A,e,t,r){let i=[],u=pg(A,(n,o,s)=>{if(e.definition[s].ignoreAmbiguities===!0)return n;return Lr(o,(l)=>{let g=[s];if(Lr(A,(C,B)=>{if(s!==B&&ZH(C,l)&&e.definition[B].ignoreAmbiguities!==!0)g.push(B)}),g.length>1&&!ZH(i,l))i.push(l),n.push({alts:g,path:l})}),n},[]);return er(u,(n)=>{let o=er(n.alts,(l)=>l+1);return{message:r.buildAlternationAmbiguityError({topLevelRule:t,alternation:e,ambiguityIndices:o,prefixPath:n.path}),type:Ls.AMBIGUOUS_ALTS,ruleName:t.name,occurrence:e.idx,alternatives:n.alts}})}function _jA(A,e,t,r){let i=pg(A,(a,n,o)=>{let s=er(n,(l)=>({idx:o,path:l}));return a.concat(s)},[]);return Hx(pc(i,(a)=>{if(e.definition[a.idx].ignoreAmbiguities===!0)return[];let{idx:o,path:s}=a,l=yc(i,(C)=>e.definition[C.idx].ignoreAmbiguities!==!0&&C.idx<o&&RjA(C.path,s));return er(l,(C)=>{let B=[C.idx+1,o+1],E=e.idx===0?"":e.idx;return{message:r.buildAlternationPrefixAmbiguityError({topLevelRule:t,alternation:e,ambiguityIndices:B,prefixPath:C.path}),type:Ls.AMBIGUOUS_PREFIX_ALTS,ruleName:t.name,occurrence:E,alternatives:B}})}))}function WjA(A,e,t){let r=[],i=er(e,(u)=>u.name);return Lr(A,(u)=>{let a=u.name;if(Ns(i,a)){let n=t.buildNamespaceConflictError(u);r.push({message:n,type:Ls.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:a})}}),r}function qjA(A){let e=IlA(A,{errMsgProvider:Nbt}),t={};return Lr(A.rules,(r)=>{t[r.name]=r}),wjA(t,e.errMsgProvider)}function zjA(A){return A=IlA(A,{errMsgProvider:U3}),GjA(A.rules,A.tokenTypes,A.errMsgProvider,A.grammarName)}function dx(A){return Ns($jA,A.name)}function tXA(A,e,t,r,i,u,a){let n=this.getKeyForAutomaticLookahead(r,i),o=this.firstAfterRepMap[n];if(o===void 0){let C=this.getCurrRuleFullName(),B=this.getGAstProductions()[C];o=new u(B,i).startWalking(),this.firstAfterRepMap[n]=o}let s=o.token,l=o.occurrence,g=o.isEndOfRule;if(this.RULE_STACK.length===1&&g&&s===void 0)s=u1,l=1;if(s===void 0||l===void 0)return;if(this.shouldInRepetitionRecoveryBeTried(s,l,a))this.tryInRepetitionRecovery(A,e,t,s)}function EH(A,e,t){return t|e|A}function uXA(A){HY.reset(),A.accept(HY);let e=HY.dslMethods;return HY.reset(),e}function B0A(A,e){if(isNaN(A.startOffset)===!0)A.startOffset=e.startOffset,A.endOffset=e.endOffset;else if(A.endOffset<e.endOffset===!0)A.endOffset=e.endOffset}function E0A(A,e){if(isNaN(A.startOffset)===!0)A.startOffset=e.startOffset,A.startColumn=e.startColumn,A.startLine=e.startLine,A.endOffset=e.endOffset,A.endColumn=e.endColumn,A.endLine=e.endLine;else if(A.endOffset<e.endOffset===!0)A.endOffset=e.endOffset,A.endColumn=e.endColumn,A.endLine=e.endLine}function aXA(A,e,t){if(A.children[t]===void 0)A.children[t]=[e];else A.children[t].push(e)}function nXA(A,e,t){if(A.children[e]===void 0)A.children[e]=[t];else A.children[e].push(t)}function UlA(A,e){Object.defineProperty(A,Xbt,{enumerable:!1,configurable:!0,writable:!1,value:e})}function oXA(A,e){let t=hg(A),r=t.length;for(let i=0;i<r;i++){let u=t[i],a=A[u],n=a.length;for(let o=0;o<n;o++){let s=a[o];if(s.tokenTypeIdx===void 0)this[s.name](s.children,e)}}}function sXA(A,e){let t=G(function(){},"derivedConstructor");UlA(t,A+"BaseSemantics");let r={visit:G(function(i,u){if(Ki(i))i=i[0];if(ah(i))return;return this[i.name](i.children,u)},"visit"),validateVisitor:G(function(){let i=gXA(this,e);if(!qu(i)){let u=er(i,(a)=>a.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
|
||
${u.join(`
|
||
|
||
`).replace(/\n/g,`
|
||
`)}`)}},"validateVisitor")};return t.prototype=r,t.prototype.constructor=t,t._RULE_NAMES=e,t}function lXA(A,e,t){let r=G(function(){},"derivedConstructor");UlA(r,A+"BaseSemanticsWithDefaults");let i=Object.create(t.prototype);return Lr(e,(u)=>{i[u]=oXA}),r.prototype=i,r.prototype.constructor=r,r}function gXA(A,e){return cXA(A,e)}function cXA(A,e){let t=yc(e,(i)=>ch(A[i])===!1),r=er(t,(i)=>({msg:`Missing visitor method: <${i}> on ${A.constructor.name} CST Visitor.`,type:d0A.MISSING_METHOD,methodName:i}));return Hx(r)}function Mw(A,e,t,r=!1){Ix(t);let i=P3(this.recordingProdStack),u=ch(e)?e:e.DEF,a=new A({definition:[],idx:t});if(r)a.separator=e.SEP;if(hr(e,"MAX_LOOKAHEAD"))a.maxLookahead=e.MAX_LOOKAHEAD;return this.recordingProdStack.push(a),u.call(this),i.definition.push(a),this.recordingProdStack.pop(),bJ}function EXA(A,e){Ix(e);let t=P3(this.recordingProdStack),r=Ki(A)===!1,i=r===!1?A:A.DEF,u=new vl({definition:[],idx:e,ignoreAmbiguities:r&&A.IGNORE_AMBIGUITIES===!0});if(hr(A,"MAX_LOOKAHEAD"))u.maxLookahead=A.MAX_LOOKAHEAD;let a=xVA(i,(n)=>ch(n.GATE));return u.hasPredicates=a,t.definition.push(u),Lr(i,(n)=>{let o=new wl({definition:[]});if(u.definition.push(o),hr(n,"IGNORE_AMBIGUITIES"))o.ignoreAmbiguities=n.IGNORE_AMBIGUITIES;else if(hr(n,"GATE"))o.ignoreAmbiguities=!0;this.recordingProdStack.push(o),n.ALT.call(this),this.recordingProdStack.pop()}),bJ}function I0A(A){return A===0?"":`${A}`}function Ix(A){if(A<0||A>zPA){let e=Error(`Invalid DSL Method idx value: <${A}>
|
||
Idx value must be a none negative value smaller than ${zPA+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}function dXA(A,e){e.forEach((t)=>{let r=t.prototype;Object.getOwnPropertyNames(r).forEach((i)=>{if(i==="constructor")return;let u=Object.getOwnPropertyDescriptor(r,i);if(u&&(u.get||u.set))Object.defineProperty(A.prototype,i,u);else A.prototype[i]=t.prototype[i]})})}function h0A(A=void 0){return function(){return A}}function IXA(A,e){var t=-1,r=A==null?0:A.length,i=Array(r);while(++t<r)i[t]=e(A[t],t,A);return i}function QXA(){this.__data__=[],this.size=0}function pXA(A,e){return A===e||A!==A&&e!==e}function mXA(A,e){var t=A.length;while(t--)if(fXA(A[t][0],e))return t;return-1}function DXA(A){var e=this.__data__,t=vJ(e,A);if(t<0)return!1;var r=e.length-1;if(t==r)e.pop();else gvt.call(e,t,1);return--this.size,!0}function yXA(A){var e=this.__data__,t=vJ(e,A);return t<0?void 0:e[t][1]}function wXA(A){return vJ(this.__data__,A)>-1}function bXA(A,e){var t=this.__data__,r=vJ(t,A);if(r<0)++this.size,t.push([A,e]);else t[r][1]=e;return this}function nm(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function vXA(){this.__data__=new kJ,this.size=0}function kXA(A){var e=this.__data__,t=e.delete(A);return this.size=e.size,t}function FXA(A){return this.__data__.get(A)}function xXA(A){return this.__data__.has(A)}function RXA(A){var e=yvt.call(A,hF),t=A[hF];try{A[hF]=void 0;var r=!0}catch(u){}var i=wvt.call(A);if(r)if(e)A[hF]=t;else delete A[hF];return i}function NXA(A){return kvt.call(A)}function GXA(A){if(A==null)return A===void 0?Svt:xvt;return ZPA&&ZPA in Object(A)?bvt(A):Fvt(A)}function UXA(A){var e=typeof A;return A!=null&&(e=="object"||e=="function")}function MXA(A){if(!TlA(A))return!1;var e=h6(A);return e==Rvt||e==Nvt||e==Lvt||e==Gvt}function YXA(A){return!!VPA&&VPA in A}function HXA(A){if(A!=null){try{return Yvt.call(A)}catch(e){}try{return A+""}catch(e){}}return""}function KXA(A){if(!TlA(A)||Mvt(A))return!1;var e=TXA(A)?Wvt:Kvt;return e.test(om(A))}function JXA(A,e){return A==null?void 0:A[e]}function OXA(A,e){var t=zvt(A,e);return qvt(t)?t:void 0}function PXA(){this.__data__=Qx?Qx(null):{},this.size=0}function _XA(A){var e=this.has(A)&&delete this.__data__[A];return this.size-=e?1:0,e}function WXA(A){var e=this.__data__;if(Qx){var t=e[A];return t===$vt?void 0:t}return ekt.call(e,A)?e[A]:void 0}function qXA(A){var e=this.__data__;return Qx?e[A]!==void 0:ikt.call(e,A)}function zXA(A,e){var t=this.__data__;return this.size+=this.has(A)?0:1,t[A]=Qx&&e===void 0?akt:e,this}function sm(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function ZXA(){this.size=0,this.__data__={hash:new jPA,map:new(hx||kJ),string:new jPA}}function VXA(A){var e=typeof A;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?A!=="__proto__":A===null}function jXA(A,e){var t=A.__data__;return skt(e)?t[typeof e=="string"?"string":"hash"]:t.map}function XXA(A){var e=FJ(this,A).delete(A);return this.size-=e?1:0,e}function $XA(A){return FJ(this,A).get(A)}function A$A(A){return FJ(this,A).has(A)}function e$A(A,e){var t=FJ(this,A),r=t.size;return t.set(A,e),this.size+=t.size==r?0:1,this}function lm(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function t$A(A,e){var t=this.__data__;if(t instanceof kJ){var r=t.__data__;if(!hx||r.length<Bkt-1)return r.push([A,e]),this.size=++t.size,this;t=this.__data__=new xJ(r)}return t.set(A,e),this.size=t.size,this}function gm(A){var e=this.__data__=new kJ(A);this.size=e.size}function r$A(A){return this.__data__.set(A,dkt),this}function i$A(A){return this.__data__.has(A)}function px(A){var e=-1,t=A==null?0:A.length;this.__data__=new xJ;while(++e<t)this.add(A[e])}function a$A(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A))return!0;return!1}function n$A(A,e){return A.has(e)}function s$A(A,e,t,r,i,u){var a=t&pkt,n=A.length,o=e.length;if(n!=o&&!(a&&o>n))return!1;var s=u.get(A),l=u.get(e);if(s&&l)return s==e&&l==A;var g=-1,C=!0,B=t&fkt?new u$A:void 0;u.set(A,e),u.set(e,A);while(++g<n){var E=A[g],d=e[g];if(r)var I=a?r(d,E,g,e,A,u):r(E,d,g,A,e,u);if(I!==void 0){if(I)continue;C=!1;break}if(B){if(!Qkt(e,function(h,Q){if(!o$A(B,Q)&&(E===h||i(E,h,t,r,u)))return B.push(Q)})){C=!1;break}}else if(!(E===d||i(E,d,t,r,u))){C=!1;break}}return u.delete(A),u.delete(e),C}function g$A(A){var e=-1,t=Array(A.size);return A.forEach(function(r,i){t[++e]=[i,r]}),t}function c$A(A){var e=-1,t=Array(A.size);return A.forEach(function(r){t[++e]=r}),t}function C$A(A,e,t,r,i,u,a){switch(t){case Ukt:if(A.byteLength!=e.byteLength||A.byteOffset!=e.byteOffset)return!1;A=A.buffer,e=e.buffer;case Gkt:if(A.byteLength!=e.byteLength||!u(new XPA(A),new XPA(e)))return!1;return!0;case bkt:case vkt:case xkt:return fXA(+A,+e);case kkt:return A.name==e.name&&A.message==e.message;case Skt:case Rkt:return A==e+"";case Fkt:var n=Dkt;case Lkt:var o=r&ykt;if(n||(n=YlA),A.size!=e.size&&!o)return!1;var s=a.get(A);if(s)return s==e;r|=wkt,a.set(A,e);var l=l$A(n(A),n(e),r,i,u,a);return a.delete(A),l;case Nkt:if(GnA)return GnA.call(A)==GnA.call(e)}return!1}function B$A(A,e){var t=-1,r=e.length,i=A.length;while(++t<r)A[i+t]=e[t];return A}function d$A(A,e,t){var r=e(A);return Rs(A)?r:E$A(r,t(A))}function I$A(A,e){var t=-1,r=A==null?0:A.length,i=0,u=[];while(++t<r){var a=A[t];if(e(a,t,A))u[i++]=a}return u}function Q$A(){return[]}function p$A(A,e){var t=-1,r=Array(A);while(++t<A)r[t]=e(t);return r}function f$A(A){return A!=null&&typeof A=="object"}function m$A(A){return o6(A)&&h6(A)==Wkt}function y$A(){return!1}function b$A(A,e){var t=typeof A;return e=e==null?AFt:e,!!e&&(t=="number"||t!="symbol"&&eFt.test(A))&&(A>-1&&A%1==0&&A<e)}function k$A(A){return typeof A=="number"&&A>-1&&A%1==0&&A<=tFt}function F$A(A){return o6(A)&&HlA(A.length)&&!!ra[h6(A)]}function x$A(A){return function(e){return A(e)}}function L$A(A,e){var t=Rs(A),r=!t&&SJ(A),i=!t&&!r&&XH(A),u=!t&&!r&&!i&&KlA(A),a=t||r||i||u,n=a?_kt(A.length,String):[],o=n.length;for(var s in A)if((e||RFt.call(A,s))&&!(a&&(s=="length"||i&&(s=="offset"||s=="parent")||u&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||v$A(s,o))))n.push(s);return n}function R$A(A){var e=A&&A.constructor,t=typeof e=="function"&&e.prototype||GFt;return A===t}function G$A(A,e){return function(t){return A(e(t))}}function U$A(A){if(!N$A(A))return TFt(A);var e=[];for(var t in Object(A))if(HFt.call(A,t)&&t!="constructor")e.push(t);return e}function T$A(A){return A!=null&&HlA(A.length)&&!TXA(A)}function Y$A(A){return LJ(A)?NFt(A):M$A(A)}function H$A(A){return Ykt(A,JlA,Pkt)}function K$A(A,e,t,r,i,u){var a=t&KFt,n=a_A(A),o=n.length,s=a_A(e),l=s.length;if(o!=l&&!a)return!1;var g=o;while(g--){var C=n[g];if(!(a?C in e:OFt.call(e,C)))return!1}var B=u.get(A),E=u.get(e);if(B&&E)return B==e&&E==A;var d=!0;u.set(A,e),u.set(e,A);var I=a;while(++g<o){C=n[g];var h=A[C],Q=e[C];if(r)var p=a?r(Q,h,C,e,A,u):r(h,Q,C,A,e,u);if(!(p===void 0?h===Q||i(h,Q,t,r,u):p)){d=!1;break}I||(I=C=="constructor")}if(d&&!I){var m=A.constructor,f=e.constructor;if(m!=f&&(("constructor"in A)&&("constructor"in e))&&!(typeof m=="function"&&m instanceof m&&typeof f=="function"&&f instanceof f))d=!1}return u.delete(A),u.delete(e),d}function J$A(A,e,t,r,i,u){var a=Rs(A),n=Rs(e),o=a?C_A:m0A(A),s=n?C_A:m0A(e);o=o==c_A?KY:o,s=s==c_A?KY:s;var l=o==KY,g=s==KY,C=o==s;if(C&&XH(A)){if(!XH(e))return!1;a=!0,l=!1}if(C&&!l)return u||(u=new dH),a||KlA(A)?l$A(A,e,t,r,i,u):Mkt(A,e,o,t,r,i,u);if(!(t&ext)){var B=l&&B_A.call(A,"__wrapped__"),E=g&&B_A.call(e,"__wrapped__");if(B||E){var d=B?A.value():A,I=E?e.value():e;return u||(u=new dH),i(d,I,t,r,u)}}if(!C)return!1;return u||(u=new dH),PFt(A,e,t,r,i,u)}function OlA(A,e,t,r,i){if(A===e)return!0;if(A==null||e==null||!o6(A)&&!o6(e))return A!==A&&e!==e;return rxt(A,e,t,r,OlA,i)}function P$A(A,e,t,r){var i=t.length,u=i,a=!r;if(A==null)return!u;A=Object(A);while(i--){var n=t[i];if(a&&n[2]?n[1]!==A[n[0]]:!(n[0]in A))return!1}while(++i<u){n=t[i];var o=n[0],s=A[o],l=n[1];if(a&&n[2]){if(s===void 0&&!(o in A))return!1}else{var g=new dH;if(r)var C=r(s,l,o,A,e,g);if(!(C===void 0?O$A(l,s,ixt|uxt,r,g):C))return!1}}return!0}function _$A(A){return A===A&&!TlA(A)}function q$A(A){var e=JlA(A),t=e.length;while(t--){var r=e[t],i=A[r];e[t]=[r,i,W$A(i)]}return e}function z$A(A,e){return function(t){if(t==null)return!1;return t[A]===e&&(e!==void 0||(A in Object(t)))}}function V$A(A){var e=nxt(A);if(e.length==1&&e[0][2])return Z$A(e[0][0],e[0][1]);return function(t){return t===A||axt(t,A,e)}}function j$A(A){return typeof A=="symbol"||o6(A)&&h6(A)==sxt}function X$A(A,e){if(Rs(A))return!1;var t=typeof A;if(t=="number"||t=="symbol"||t=="boolean"||A==null||RJ(A))return!0;return gxt.test(A)||!lxt.test(A)||e!=null&&A in Object(e)}function NJ(A,e){if(typeof A!="function"||e!=null&&typeof e!="function")throw TypeError(cxt);var t=G(function(){var r=arguments,i=e?e.apply(this,r):r[0],u=t.cache;if(u.has(i))return u.get(i);var a=A.apply(this,r);return t.cache=u.set(i,a)||u,a},"memoized");return t.cache=new(NJ.Cache||xJ),t}function $$A(A){var e=Cxt(A,function(r){if(t.size===Bxt)t.clear();return r}),t=e.cache;return e}function _lA(A){if(typeof A=="string")return A;if(Rs(A))return hXA(A,_lA)+"";if(RJ(A))return d_A?d_A.call(A):"";var e=A+"";return e=="0"&&1/A==-pxt?"-0":e}function AAe(A){return A==null?"":fxt(A)}function eAe(A,e){if(Rs(A))return A;return PlA(A,e)?[A]:Qxt(mxt(A))}function rAe(A){if(typeof A=="string"||RJ(A))return A;var e=A+"";return e=="0"&&1/A==-Dxt?"-0":e}function iAe(A,e){e=tAe(e,A);var t=0,r=e.length;while(A!=null&&t<r)A=A[GJ(e[t++])];return t&&t==r?A:void 0}function aAe(A,e,t){var r=A==null?void 0:uAe(A,e);return r===void 0?t:r}function nAe(A,e){return A!=null&&e in Object(A)}function oAe(A,e,t){e=tAe(e,A);var r=-1,i=e.length,u=!1;while(++r<i){var a=GJ(e[r]);if(!(u=A!=null&&t(A,a)))break;A=A[a]}if(u||++r!=i)return u;return i=A==null?0:A.length,!!i&&HlA(i)&&v$A(a,i)&&(Rs(A)||SJ(A))}function sAe(A,e){return A!=null&&bxt(A,e,wxt)}function lAe(A,e){if(PlA(A)&&W$A(e))return Z$A(GJ(A),e);return function(t){var r=yxt(t,A);return r===void 0&&r===e?vxt(t,A):O$A(e,r,kxt|Fxt)}}function gAe(A){return A}function cAe(A){return function(e){return e==null?void 0:e[A]}}function CAe(A){return function(e){return uAe(e,A)}}function BAe(A){return PlA(A)?Sxt(GJ(A)):Lxt(A)}function EAe(A){if(typeof A=="function")return A;if(A==null)return WlA;if(typeof A=="object")return Rs(A)?xxt(A[0],A[1]):oxt(A);return Rxt(A)}function dAe(A){return function(e,t,r){var i=-1,u=Object(e),a=r(e),n=a.length;while(n--){var o=a[A?n:++i];if(t(u[o],o,u)===!1)break}return e}}function IAe(A,e){return A&&Uxt(A,e,JlA)}function hAe(A,e){return function(t,r){if(t==null)return t;if(!LJ(t))return A(t,r);var i=t.length,u=e?i:-1,a=Object(t);while(e?u--:++u<i)if(r(a[u],u,a)===!1)break;return t}}function QAe(A,e){var t=-1,r=LJ(A)?Array(A.length):[];return MJ(A,function(i,u,a){r[++t]=e(i,u,a)}),r}function pAe(A,e){var t=Rs(A)?hXA:Hxt;return t(A,UJ(e,3))}function fAe(A,e){var t=[];return MJ(A,function(r,i,u){if(e(r,i,u))t.push(r)}),t}function mAe(A,e){var t=Rs(A)?h$A:Kxt;return t(A,UJ(e,3))}function W3(A,e,t){return`${A.name}_${e}_${t}`}function vAe(A){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};kAe(e,A);let t=A.length;for(let r=0;r<t;r++){let i=A[r],u=c1(e,i,i);if(u===void 0)continue;YAe(e,i,u)}return e}function kAe(A,e){let t=e.length;for(let r=0;r<t;r++){let i=e[r],u=oo(A,i,void 0,{type:Oxt}),a=oo(A,i,void 0,{type:_x});u.stop=a,A.ruleToStartState.set(i,u),A.ruleToStopState.set(i,a)}}function VlA(A,e,t){if(t instanceof ia)return TJ(A,e,t.terminalType,t);else if(t instanceof Ss)return TAe(A,e,t);else if(t instanceof vl)return RAe(A,e,t);else if(t instanceof c0)return NAe(A,e,t);else if(t instanceof $a)return FAe(A,e,t);else if(t instanceof bl)return xAe(A,e,t);else if(t instanceof fg)return SAe(A,e,t);else if(t instanceof mg)return LAe(A,e,t);else return c1(A,e,t)}function FAe(A,e,t){let r=oo(A,e,t,{type:yAe});Bh(A,r);let i=cm(A,e,r,t,c1(A,e,t));return XlA(A,e,t,i)}function xAe(A,e,t){let r=oo(A,e,t,{type:yAe});Bh(A,r);let i=cm(A,e,r,t,c1(A,e,t)),u=TJ(A,e,t.separator,t);return XlA(A,e,t,i,u)}function SAe(A,e,t){let r=oo(A,e,t,{type:DAe});Bh(A,r);let i=cm(A,e,r,t,c1(A,e,t));return jlA(A,e,t,i)}function LAe(A,e,t){let r=oo(A,e,t,{type:DAe});Bh(A,r);let i=cm(A,e,r,t,c1(A,e,t)),u=TJ(A,e,t.separator,t);return jlA(A,e,t,i,u)}function RAe(A,e,t){let r=oo(A,e,t,{type:a1});Bh(A,r);let i=Ah(t.definition,(a)=>VlA(A,e,a));return cm(A,e,r,t,...i)}function NAe(A,e,t){let r=oo(A,e,t,{type:a1});Bh(A,r);let i=cm(A,e,r,t,c1(A,e,t));return GAe(A,e,t,i)}function c1(A,e,t){let r=Jxt(Ah(t.definition,(i)=>VlA(A,e,i)),(i)=>i!==void 0);if(r.length===1)return r[0];else if(r.length===0)return;else return MAe(A,r)}function jlA(A,e,t,r,i){let{left:u,right:a}=r,n=oo(A,e,t,{type:qxt});Bh(A,n);let o=oo(A,e,t,{type:wAe});if(u.loopback=n,o.loopback=n,A.decisionMap[W3(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",t.idx)]=n,dn(a,n),i===void 0)dn(n,u),dn(n,o);else dn(n,o),dn(n,i.left),dn(i.right,u);return{left:u,right:o}}function XlA(A,e,t,r,i){let{left:u,right:a}=r,n=oo(A,e,t,{type:Wxt});Bh(A,n);let o=oo(A,e,t,{type:wAe}),s=oo(A,e,t,{type:_xt});if(n.loopback=s,o.loopback=s,dn(n,u),dn(n,o),dn(a,s),i!==void 0)dn(s,o),dn(s,i.left),dn(i.right,u);else dn(s,n);return A.decisionMap[W3(e,i?"RepetitionWithSeparator":"Repetition",t.idx)]=n,{left:n,right:o}}function GAe(A,e,t,r){let{left:i,right:u}=r;return dn(i,u),A.decisionMap[W3(e,"Option",t.idx)]=i,r}function Bh(A,e){return A.decisionStates.push(e),e.decision=A.decisionStates.length-1,e.decision}function cm(A,e,t,r,...i){let u=oo(A,e,r,{type:Pxt,start:t});t.end=u;for(let n of i)if(n!==void 0)dn(t,n.left),dn(n.right,u);else dn(t,u);let a={left:t,right:u};return A.decisionMap[W3(e,UAe(r),r.idx)]=t,a}function UAe(A){if(A instanceof vl)return"Alternation";else if(A instanceof c0)return"Option";else if(A instanceof $a)return"Repetition";else if(A instanceof bl)return"RepetitionWithSeparator";else if(A instanceof fg)return"RepetitionMandatory";else if(A instanceof mg)return"RepetitionMandatoryWithSeparator";else throw Error("Invalid production type encountered")}function MAe(A,e){let t=e.length;for(let u=0;u<t-1;u++){let a=e[u],n;if(a.left.transitions.length===1)n=a.left.transitions[0];let o=n instanceof ZlA,s=n,l=e[u+1].left;if(a.left.type===a1&&a.right.type===a1&&n!==void 0&&(o&&s.followState===a.right||n.target===a.right)){if(o)s.followState=l;else n.target=l;HAe(A,a.right)}else dn(a.right,l)}let r=e[0],i=e[t-1];return{left:r.left,right:i.right}}function TJ(A,e,t,r){let i=oo(A,e,r,{type:a1}),u=oo(A,e,r,{type:a1});return YJ(i,new zlA(u,t)),{left:i,right:u}}function TAe(A,e,t){let r=t.referencedRule,i=A.ruleToStartState.get(r),u=oo(A,e,t,{type:a1}),a=oo(A,e,t,{type:a1}),n=new ZlA(i,r,a);return YJ(u,n),{left:u,right:a}}function YAe(A,e,t){let r=A.ruleToStartState.get(e);dn(r,t.left);let i=A.ruleToStopState.get(e);return dn(t.right,i),{left:r,right:i}}function dn(A,e){let t=new bAe(e);YJ(A,t)}function oo(A,e,t,r){let i=Object.assign({atn:A,production:t,epsilonOnlyTransitions:!1,rule:e,transitions:[],nextTokenWithinRule:[],stateNumber:A.states.length},r);return A.states.push(i),i}function YJ(A,e){if(A.transitions.length===0)A.epsilonOnlyTransitions=e.isEpsilon();A.transitions.push(e)}function HAe(A,e){A.states.splice(A.states.indexOf(e),1)}function $lA(A,e=!0){return`${e?`a${A.alt}`:""}s${A.state.stateNumber}:${A.stack.map((t)=>t.stateNumber.toString()).join("_")}`}function KAe(A,e,t){var r=-1,i=A.length;while(++r<i){var u=A[r],a=e(u);if(a!=null&&(n===void 0?a===a&&!RJ(a):t(a,n)))var n=a,o=u}return o}function JAe(A,e){return A<e}function OAe(A){return A&&A.length?zxt(A,WlA,Zxt):void 0}function PAe(A){return Rs(A)||SJ(A)||!!(I_A&&A&&A[I_A])}function AgA(A,e,t,r,i){var u=-1,a=A.length;t||(t=jxt),i||(i=[]);while(++u<a){var n=A[u];if(e>0&&t(n))if(e>1)AgA(n,e-1,t,r,i);else E$A(i,n);else if(!r)i[i.length]=n}return i}function WAe(A,e){return _Ae(Ah(A,e),1)}function qAe(A,e,t,r){var i=A.length,u=t+(r?1:-1);while(r?u--:++u<i)if(e(A[u],u,A))return u;return-1}function zAe(A){return A!==A}function ZAe(A,e,t){var r=t-1,i=A.length;while(++r<i)if(A[r]===e)return r;return-1}function VAe(A,e,t){return e===e?e7t(A,e,t):$xt(A,A7t,t)}function jAe(A,e){var t=A==null?0:A.length;return!!t&&t7t(A,e,0)>-1}function XAe(A,e,t){var r=-1,i=A==null?0:A.length;while(++r<i)if(t(e,A[r]))return!0;return!1}function $Ae(){}function Aee(A,e,t){var r=-1,i=r7t,u=A.length,a=!0,n=[],o=n;if(t)a=!1,i=i7t;else if(u>=s7t){var s=e?null:o7t(A);if(s)return YlA(s);a=!1,i=o$A,o=new u$A}else o=e?[]:n;A:while(++r<u){var l=A[r],g=e?e(l):l;if(l=t||l!==0?l:0,a&&g===g){var C=o.length;while(C--)if(o[C]===g)continue A;if(e)o.push(g);n.push(l)}else if(!i(o,g,t)){if(o!==n)o.push(g);n.push(l)}}return n}function eee(A,e){return A&&A.length?l7t(A,UJ(e,2)):[]}function tee(A){var e=A==null?0:A.length;return e?_Ae(A,1):[]}function ree(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A)===!1)break;return A}function iee(A){return typeof A=="function"?A:WlA}function uee(A,e){var t=Rs(A)?C7t:MJ;return t(A,B7t(e))}function aee(A){if(A==null)return!0;if(LJ(A)&&(Rs(A)||typeof A=="string"||typeof A.splice=="function"||XH(A)||KlA(A)||SJ(A)))return!A.length;var e=m0A(A);if(e==E7t||e==d7t)return!A.size;if(N$A(A))return!M$A(A).length;for(var t in A)if(h7t.call(A,t))return!1;return!0}function nee(A,e,t,r){var i=-1,u=A==null?0:A.length;if(r&&u)t=A[++i];while(++i<u)t=e(t,A[i],i,A);return t}function oee(A,e,t,r,i){return i(A,function(u,a,n){t=r?(r=!1,u):e(t,u,a,n)}),t}function see(A,e,t){var r=Rs(A)?p7t:f7t,i=arguments.length<3;return r(A,UJ(e,4),t,i,MJ)}function lee(A,e){let t={};return(r)=>{let i=r.toString(),u=t[i];if(u!==void 0)return u;else return u={atnStartState:A,decision:e,states:{}},t[i]=u,u}}function y0A(A,e=!0){let t=new Set;for(let r of A){let i=new Set;for(let u of r){if(u===void 0)if(e)break;else return!1;let a=[u.tokenTypeIdx].concat(u.categoryMatches);for(let n of a)if(t.has(n)){if(!i.has(n))return!1}else t.add(n),i.add(n)}}return!0}function cee(A){let e=A.decisionStates.length,t=Array(e);for(let r=0;r<e;r++)t[r]=lee(A.decisionStates[r],r);return t}function IH(A,e,t,r){let i=A[e](t),u=i.start;if(u===void 0){let n=Dee(i.atnStartState);u=tgA(i,egA(n)),i.start=u}return Cee.apply(this,[i,u,t,r])}function Cee(A,e,t,r){let i=e,u=1,a=[],n=this.LA(u++);while(!0){let o=Qee(i,n);if(o===void 0)o=Bee.apply(this,[A,i,n,u,t,r]);if(o===$H)return hee(a,i,n);if(o.isAcceptState===!0)return o.prediction;i=o,a.push(n),n=this.LA(u++)}}function Bee(A,e,t,r,i,u){let a=pee(e.configs,t,i);if(a.size===0)return w0A(A,e,t,$H),$H;let n=egA(a),o=mee(a,i);if(o!==void 0)n.isAcceptState=!0,n.prediction=o,n.configs.uniqueAlt=o;else if(vee(a)){let s=Vxt(a.alts);n.isAcceptState=!0,n.prediction=s,n.configs.uniqueAlt=s,Eee.apply(this,[A,r,a.alts,u])}return n=w0A(A,e,t,n),n}function Eee(A,e,t,r){let i=[];for(let s=1;s<=e;s++)i.push(this.LA(s).tokenType);let u=A.atnStartState,{rule:a,production:n}=u,o=dee({topLevelRule:a,ambiguityIndices:t,production:n,prefixPath:i});r(o)}function dee(A){let e=Ah(A.prefixPath,(i)=>K3(i)).join(", "),t=A.production.idx===0?"":A.production.idx,r=`Ambiguous Alternatives Detected: <${A.ambiguityIndices.join(", ")}> in <${Iee(A.production)}${t}> inside <${A.topLevelRule.name}> Rule,
|
||
<${e}> may appears as a prefix path in all these alternatives.
|
||
`;return r=r+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
||
For Further details.`,r}function Iee(A){if(A instanceof Ss)return"SUBRULE";else if(A instanceof c0)return"OPTION";else if(A instanceof vl)return"OR";else if(A instanceof fg)return"AT_LEAST_ONE";else if(A instanceof mg)return"AT_LEAST_ONE_SEP";else if(A instanceof bl)return"MANY_SEP";else if(A instanceof $a)return"MANY";else if(A instanceof ia)return"CONSUME";else throw Error("non exhaustive match")}function hee(A,e,t){let r=Xxt(e.configs.elements,(u)=>u.state.transitions),i=g7t(r.filter((u)=>u instanceof zlA).map((u)=>u.tokenType),(u)=>u.tokenTypeIdx);return{actualToken:t,possibleTokenTypes:i,tokenPath:A}}function Qee(A,e){return A.edges[e.tokenTypeIdx]}function pee(A,e,t){let r=new D0A,i=[];for(let a of A.elements){if(t.is(a.alt)===!1)continue;if(a.state.type===_x){i.push(a);continue}let n=a.state.transitions.length;for(let o=0;o<n;o++){let s=a.state.transitions[o],l=fee(s,e);if(l!==void 0)r.add({state:l,alt:a.alt,stack:a.stack})}}let u;if(i.length===0&&r.size===1)u=r;if(u===void 0){u=new D0A;for(let a of r.elements)fx(a,u)}if(i.length>0&&!wee(u))for(let a of i)u.add(a);return u}function fee(A,e){if(A instanceof zlA&&klA(e,A.tokenType))return A.target;return}function mee(A,e){let t;for(let r of A.elements)if(e.is(r.alt)===!0){if(t===void 0)t=r.alt;else if(t!==r.alt)return}return t}function egA(A){return{configs:A,edges:{},isAcceptState:!1,prediction:-1}}function w0A(A,e,t,r){return r=tgA(A,r),e.edges[t.tokenTypeIdx]=r,r}function tgA(A,e){if(e===$H)return e;let t=e.configs.key,r=A.states[t];if(r!==void 0)return r;return e.configs.finalize(),A.states[t]=e,e}function Dee(A){let e=new D0A,t=A.transitions.length;for(let r=0;r<t;r++){let u={state:A.transitions[r].target,alt:r,stack:[]};fx(u,e)}return e}function fx(A,e){let t=A.state;if(t.type===_x){if(A.stack.length>0){let i=[...A.stack],a={state:i.pop(),alt:A.alt,stack:i};fx(a,e)}else e.add(A);return}if(!t.epsilonOnlyTransitions)e.add(A);let r=t.transitions.length;for(let i=0;i<r;i++){let u=t.transitions[i],a=yee(A,u);if(a!==void 0)fx(a,e)}}function yee(A,e){if(e instanceof bAe)return{state:e.target,alt:A.alt,stack:A.stack};else if(e instanceof ZlA){let t=[...A.stack,e.followState];return{state:e.target,alt:A.alt,stack:t}}return}function wee(A){for(let e of A.elements)if(e.state.type===_x)return!0;return!1}function bee(A){for(let e of A.elements)if(e.state.type!==_x)return!1;return!0}function vee(A){if(bee(A))return!0;let e=kee(A.elements);return Fee(e)&&!xee(e)}function kee(A){let e=new Map;for(let t of A){let r=$lA(t,!1),i=e.get(r);if(i===void 0)i={},e.set(r,i);i[t.alt]=!0}return e}function Fee(A){for(let e of Array.from(A.values()))if(Object.keys(e).length>1)return!0;return!1}function xee(A){for(let e of Array.from(A.values()))if(Object.keys(e).length===1)return!0;return!1}function hH(A){return A.$type===eK}function KJ(A,e,t){return Mee({parser:e,tokens:t,ruleNames:new Map},A),e}function Mee(A,e){let t=tJ(e,!1),r=Qu(e.rules).filter(xs).filter((u)=>t.has(u));for(let u of r){let a={...A,consume:1,optional:1,subrule:1,many:1,or:1};A.parser.rule(u,n1(a,u.definition))}let i=Qu(e.rules).filter(r6).filter((u)=>t.has(u));for(let u of i)A.parser.rule(u,Tee(A,u))}function Tee(A,e){let t=e.call.rule.ref;if(!t)throw Error("Could not resolve reference to infix operator rule: "+e.call.rule.$refText);if(Dc(t))throw Error("Cannot use terminal rule in infix expression");let r=e.operators.precedences.flatMap((B)=>B.operators),i={$type:"Group",elements:[]},u={$container:i,$type:"Assignment",feature:"parts",operator:"+=",terminal:e.call},a={$container:i,$type:"Group",elements:[],cardinality:"*"};i.elements.push(u,a);let o={$container:a,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:r}},s={...u,$container:a};a.elements.push(o,s);let g=r.map((B)=>A.tokens[B.value]).map((B,E)=>({ALT:G(()=>A.parser.consume(E,B,o),"ALT")})),C;return(B)=>{C??(C=JJ(A,t)),A.parser.subrule(0,C,!1,u,B),A.parser.many(0,{DEF:G(()=>{A.parser.alternatives(0,g),A.parser.subrule(1,C,!1,s,B)},"DEF")})}}function n1(A,e,t=!1){let r;if(rh(e))r=_ee(A,e);else if(r1(e))r=Yee(A,e);else if(th(e))r=n1(A,e.terminal);else if(j3(e))r=ngA(A,e);else if(ih(e))r=Hee(A,e);else if(qK(e))r=Jee(A,e);else if(jK(e))r=Oee(A,e);else if(X3(e))r=Pee(A,e);else if(lsA(e)){let i=A.consume++;r=G(()=>A.parser.consume(i,u1,e),"method")}else throw new $K(e.$cstNode,`Unexpected element type: ${e.$type}`);return ogA(A,t?void 0:mx(e),r,e.cardinality)}function Yee(A,e){let t=O3(e);return()=>A.parser.action(t,e)}function Hee(A,e){let t=e.rule.ref;if(V3(t)){let r=A.subrule++,i=xs(t)&&t.fragment,u=e.arguments.length>0?Kee(t,e.arguments):()=>({}),a;return(n)=>{a??(a=JJ(A,t)),A.parser.subrule(r,a,i,e,u(n))}}else if(Dc(t)){let r=A.consume++,i=tK(A,t.name);return()=>A.parser.consume(r,i,e)}else if(!t)throw new $K(e.$cstNode,`Undefined rule: ${e.rule.$refText}`);else s1(t)}function Kee(A,e){if(e.some((r)=>r.calledByName)){let r=e.map((i)=>({parameterName:i.parameter?.ref?.name,predicate:TC(i.value)}));return(i)=>{let u={};for(let{parameterName:a,predicate:n}of r)if(a)u[a]=n(i);return u}}else{let r=e.map((i)=>TC(i.value));return(i)=>{let u={};for(let a=0;a<r.length;a++)if(a<A.parameters.length){let n=A.parameters[a].name,o=r[a];u[n]=o(i)}return u}}}function TC(A){if(ssA(A)){let e=TC(A.left),t=TC(A.right);return(r)=>e(r)||t(r)}else if(osA(A)){let e=TC(A.left),t=TC(A.right);return(r)=>e(r)&&t(r)}else if(CsA(A)){let e=TC(A.value);return(t)=>!e(t)}else if(BsA(A)){let e=A.parameter.ref.name;return(t)=>t!==void 0&&t[e]===!0}else if(asA(A)){let e=Boolean(A.true);return()=>e}s1(A)}function Jee(A,e){if(e.elements.length===1)return n1(A,e.elements[0]);else{let t=[];for(let i of e.elements){let u={ALT:n1(A,i,!0)},a=mx(i);if(a)u.GATE=TC(a);t.push(u)}let r=A.or++;return(i)=>A.parser.alternatives(r,t.map((u)=>{let a={ALT:G(()=>u.ALT(i),"ALT")},n=u.GATE;if(n)a.GATE=()=>n(i);return a}))}}function Oee(A,e){if(e.elements.length===1)return n1(A,e.elements[0]);let t=[];for(let n of e.elements){let o={ALT:n1(A,n,!0)},s=mx(n);if(s)o.GATE=TC(s);t.push(o)}let r=A.or++,i=G((n,o)=>{let s=o.getRuleStack().join("-");return`uGroup_${n}_${s}`},"idFunc"),u=G((n)=>A.parser.alternatives(r,t.map((o,s)=>{let l={ALT:G(()=>!0,"ALT")},g=A.parser;l.ALT=()=>{if(o.ALT(n),!g.isRecording()){let B=i(r,g);if(!g.unorderedGroups.get(B))g.unorderedGroups.set(B,[]);let E=g.unorderedGroups.get(B);if(typeof E?.[s]>"u")E[s]=!0}};let C=o.GATE;if(C)l.GATE=()=>C(n);else l.GATE=()=>!g.unorderedGroups.get(i(r,g))?.[s];return l})),"alternatives"),a=ogA(A,mx(e),u,"*");return(n)=>{if(a(n),!A.parser.isRecording())A.parser.unorderedGroups.delete(i(r,A.parser))}}function Pee(A,e){let t=e.elements.map((r)=>n1(A,r));return(r)=>t.forEach((i)=>i(r))}function mx(A){if(X3(A))return A.guardCondition;return}function ngA(A,e,t=e.terminal){if(!t){if(!e.type.ref)throw Error("Could not resolve reference to type: "+e.type.$refText);let i=aJ(e.type.ref)?.terminal;if(!i)throw Error("Could not find name assignment for type: "+O3(e.type.ref));return ngA(A,e,i)}else if(ih(t)&&xs(t.rule.ref)){let r=t.rule.ref,i=A.subrule++,u;return(a)=>{u??(u=JJ(A,r)),A.parser.subrule(i,u,!1,e,a)}}else if(ih(t)&&Dc(t.rule.ref)){let r=A.consume++,i=tK(A,t.rule.ref.name);return()=>A.parser.consume(r,i,e)}else if(rh(t)){let r=A.consume++,i=tK(A,t.value);return()=>A.parser.consume(r,i,e)}else throw Error("Could not build cross reference parser")}function _ee(A,e){let t=A.consume++,r=A.tokens[e.value];if(!r)throw Error("Could not find token for keyword: "+e.value);return()=>A.parser.consume(t,r,e)}function ogA(A,e,t,r){let i=e&&TC(e);if(!r)if(i){let u=A.or++;return(a)=>A.parser.alternatives(u,[{ALT:G(()=>t(a),"ALT"),GATE:G(()=>i(a),"GATE")},{ALT:h0A(),GATE:G(()=>!i(a),"GATE")}])}else return t;if(r==="*"){let u=A.many++;return(a)=>A.parser.many(u,{DEF:G(()=>t(a),"DEF"),GATE:i?()=>i(a):void 0})}else if(r==="+"){let u=A.many++;if(i){let a=A.or++;return(n)=>A.parser.alternatives(a,[{ALT:G(()=>A.parser.atLeastOne(u,{DEF:G(()=>t(n),"DEF")}),"ALT"),GATE:G(()=>i(n),"GATE")},{ALT:h0A(),GATE:G(()=>!i(n),"GATE")}])}else return(a)=>A.parser.atLeastOne(u,{DEF:G(()=>t(a),"DEF")})}else if(r==="?"){let u=A.optional++;return(a)=>A.parser.optional(u,{DEF:G(()=>t(a),"DEF"),GATE:i?()=>i(a):void 0})}else s1(r)}function JJ(A,e){let t=Wee(A,e),r=A.parser.getRule(t);if(!r)throw Error(`Rule "${t}" not found."`);return r}function Wee(A,e){if(V3(e))return e.name;else if(A.ruleNames.has(e))return A.ruleNames.get(e);else{let t=e,r=t.$container,i=e.$type;while(!xs(r)){if(X3(r)||qK(r)||jK(r))i=r.elements.indexOf(t).toString()+":"+i;t=r,r=r.$container}return i=r.name+":"+i,A.ruleNames.set(e,i),i}}function tK(A,e){let t=A.tokens[e];if(!t)throw Error(`Token "${e}" not found."`);return t}function sgA(A){let e=A.Grammar,t=A.parser.Lexer,r=new Gee(A);return KJ(e,r,t.definition),r.finalize(),r}function lgA(A){let e=ggA(A);return e.finalize(),e}function ggA(A){let e=A.Grammar,t=A.parser.Lexer,r=new Ree(A);return KJ(e,r,t.definition)}function PJ(){return new Promise((A)=>{if(typeof setImmediate>"u")setTimeout(A,0);else setImmediate(A)})}function _J(){return QH=performance.now(),new Wu.CancellationTokenSource}function CgA(A){qee=A}function Cm(A){return A===zE}async function Mo(A){if(A===Wu.CancellationToken.None)return;let e=performance.now();if(e-QH>=qee)QH=e,await PJ(),QH=performance.now();if(A.isCancellationRequested)throw zE}function iK(A,e){if(A.length<=1)return A;let t=A.length/2|0,r=A.slice(0,t),i=A.slice(t);iK(r,e),iK(i,e);let u=0,a=0,n=0;while(u<r.length&&a<i.length)if(e(r[u],i[a])<=0)A[n++]=r[u++];else A[n++]=i[a++];while(u<r.length)A[n++]=r[u++];while(a<i.length)A[n++]=i[a++];return A}function b0A(A,e,t=0){let r=e?[t]:[];for(let i=0;i<A.length;i++){let u=A.charCodeAt(i);if(BgA(u)){if(u===13&&i+1<A.length&&A.charCodeAt(i+1)===10)i++;r.push(t+i+1)}}return r}function BgA(A){return A===13||A===10}function EgA(A){let{start:e,end:t}=A;if(e.line>t.line||e.line===t.line&&e.character>t.character)return{start:t,end:e};return A}function zee(A){let e=EgA(A.range);if(e!==A.range)return{newText:A.newText,range:e};return A}function IgA(A){return typeof A.name==="string"}function pgA(A){return typeof A.$comment==="string"}function k0A(A){return typeof A==="object"&&!!A&&(("$ref"in A)||("$error"in A))}function M3(A){return{code:A}}function fgA(A){if(A.range)return A.range;let e;if(typeof A.property==="string")e=rJ(A.node.$cstNode,A.property,A.index);else if(typeof A.keyword==="string")e=PsA(A.node.$cstNode,A.keyword,A.index);if(e??(e=A.node.$cstNode),!e)return{start:{line:0,character:0},end:{line:0,character:0}};return e.range}function jF(A){switch(A){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw Error("Invalid diagnostic severity: "+A)}}function mgA(A){switch(A){case"error":return M3(Qc.LexingError);case"warning":return M3(Qc.LexingWarning);case"info":return M3(Qc.LexingInfo);case"hint":return M3(Qc.LexingHint);default:throw Error("Invalid diagnostic severity: "+A)}}function ZJ(A){return Array.isArray(A)&&(A.length===0||("name"in A[0]))}function VJ(A){return A&&"modes"in A&&"defaultMode"in A}function nK(A){return!ZJ(A)&&!VJ(A)}function wgA(A,e,t){let r,i;if(typeof A==="string")i=e,r=t;else i=A.range.start,r=e;if(!i)i=su.create(0,0);let u=vgA(A),a=jJ(r),n=hte({lines:u,position:i,options:a});return fte({index:0,tokens:n,position:i})}function bgA(A,e){let t=jJ(e),r=vgA(A);if(r.length===0)return!1;let i=r[0],u=r[r.length-1],{start:a,end:n}=t;return Boolean(a?.exec(i))&&Boolean(n?.exec(u))}function vgA(A){let e="";if(typeof A==="string")e=A;else e=A.text;return e.split(mWA)}function hte(A){let e=[],t=A.position.line,r=A.position.character;for(let i=0;i<A.lines.length;i++){let u=i===0,a=i===A.lines.length-1,n=A.lines[i],o=0;if(u&&A.options.start){let l=A.options.start?.exec(n);if(l)o=l.index+l[0].length}else{let l=A.options.line?.exec(n);if(l)o=l.index+l[0].length}if(a){let l=A.options.end?.exec(n);if(l)n=n.substring(0,l.index)}if(n=n.substring(0,pte(n)),oK(n,o)>=n.length){if(e.length>0){let l=su.create(t,r);e.push({type:"break",content:"",range:fi.create(l,l)})}}else{m_A.lastIndex=o;let l=m_A.exec(n);if(l){let g=l[0],C=l[1],B=su.create(t,r+o),E=su.create(t,r+o+g.length);e.push({type:"tag",content:C,range:fi.create(B,E)}),o+=g.length,o=oK(n,o)}if(o<n.length){let g=n.substring(o),C=Array.from(g.matchAll(k7t));e.push(...Qte(C,g,t,r+o))}}t++,r=0}if(e.length>0&&e[e.length-1].type==="break")return e.slice(0,-1);return e}function Qte(A,e,t,r){let i=[];if(A.length===0){let u=su.create(t,r),a=su.create(t,r+e.length);i.push({type:"text",content:e,range:fi.create(u,a)})}else{let u=0;for(let n of A){let o=n.index,s=e.substring(u,o);if(s.length>0)i.push({type:"text",content:e.substring(u,o),range:fi.create(su.create(t,u+r),su.create(t,o+r))});let l=s.length+1,g=n[1];if(i.push({type:"inline-tag",content:g,range:fi.create(su.create(t,u+l+r),su.create(t,u+l+g.length+r))}),l+=g.length,n.length===4){l+=n[2].length;let C=n[3];i.push({type:"text",content:C,range:fi.create(su.create(t,u+l+r),su.create(t,u+l+C.length+r))})}else i.push({type:"text",content:"",range:fi.create(su.create(t,u+l+r),su.create(t,u+l+r))});u=o+n[0].length}let a=e.substring(u);if(a.length>0)i.push({type:"text",content:a,range:fi.create(su.create(t,u+r),su.create(t,u+r+a.length))})}return i}function oK(A,e){let t=A.substring(e).match(F7t);if(t)return e+t.index;else return A.length}function pte(A){let e=A.match(x7t);if(e&&typeof e.index==="number")return e.index;return}function fte(A){let e=su.create(A.position.line,A.position.character);if(A.tokens.length===0)return new D_A([],fi.create(e,e));let t=[];while(A.index<A.tokens.length){let u=mte(A,t[t.length-1]);if(u)t.push(u)}let r=t[0]?.range.start??e,i=t[t.length-1]?.range.end??e;return new D_A(t,fi.create(r,i))}function mte(A,e){let t=A.tokens[A.index];if(t.type==="tag")return FgA(A,!1);else if(t.type==="text"||t.type==="inline-tag")return kgA(A);else{Dte(t,e),A.index++;return}}function Dte(A,e){if(e){let t=new vte("",A.range);if("inlines"in e)e.inlines.push(t);else e.content.inlines.push(t)}}function kgA(A){let e=A.tokens[A.index],t=e,r=e,i=[];while(e&&e.type!=="break"&&e.type!=="tag")i.push(yte(A)),r=e,e=A.tokens[A.index];return new F0A(i,fi.create(t.range.start,r.range.end))}function yte(A){if(A.tokens[A.index].type==="inline-tag")return FgA(A,!0);else return xgA(A)}function FgA(A,e){let t=A.tokens[A.index++],r=t.content.substring(1);if(A.tokens[A.index]?.type==="text")if(e){let u=xgA(A);return new TnA(r,new F0A([u],u.range),e,fi.create(t.range.start,u.range.end))}else{let u=kgA(A);return new TnA(r,u,e,fi.create(t.range.start,u.range.end))}else{let u=t.range;return new TnA(r,new F0A([],u),e,u)}}function xgA(A){let e=A.tokens[A.index++];return new vte(e.content,e.range)}function jJ(A){if(!A)return jJ({start:"/**",end:"*/",line:"*"});let{start:e,end:t,line:r}=A;return{start:pH(e,!0),end:pH(t,!1),line:pH(r,!0)}}function pH(A,e){if(typeof A==="string"||typeof A==="object"){let t=typeof A==="string"?c6(A):A.source;if(e)return new RegExp(`^\\s*${t}`);else return new RegExp(`\\s*${t}\\s*$`)}else return A}function wte(A,e,t){if(A==="linkplain"||A==="linkcode"||A==="link"){let r=e.indexOf(" "),i=e;if(r>0){let a=oK(e,r);i=e.substring(a),e=e.substring(0,r)}if(A==="linkcode"||A==="link"&&t.link==="code")i=`\`${i}\``;return t.renderLink?.(e,i)??bte(e,i)}return}function bte(A,e){try{return Ig.parse(A,!0),`[${e}](${A})`}catch{return A}}function x0A(A){if(A.endsWith(`
|
||
`))return`
|
||
`;else return`
|
||
|
||
`}function Fi(A){return{documentation:{CommentProvider:G((e)=>new Fte(e),"CommentProvider"),DocumentationProvider:G((e)=>new kte(e),"DocumentationProvider")},parser:{AsyncParser:G((e)=>new xte(e),"AsyncParser"),GrammarConfig:G((e)=>XsA(e),"GrammarConfig"),LangiumParser:G((e)=>lgA(e),"LangiumParser"),CompletionParser:G((e)=>sgA(e),"CompletionParser"),ValueConverter:G(()=>new cgA,"ValueConverter"),TokenBuilder:G(()=>new OJ,"TokenBuilder"),Lexer:G((e)=>new ygA(e),"Lexer"),ParserErrorMessageProvider:G(()=>new agA,"ParserErrorMessageProvider"),LexerErrorMessageProvider:G(()=>new Ite,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:G(()=>new cte,"AstNodeLocator"),AstNodeDescriptionProvider:G((e)=>new lte(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:G((e)=>new gte(e),"ReferenceDescriptionProvider")},references:{Linker:G((e)=>new Xee(e),"Linker"),NameProvider:G(()=>new $ee,"NameProvider"),ScopeProvider:G((e)=>new ite(e),"ScopeProvider"),ScopeComputation:G((e)=>new ete(e),"ScopeComputation"),References:G((e)=>new Ate(e),"References")},serializer:{Hydrator:G((e)=>new Lte(e),"Hydrator"),JsonSerializer:G((e)=>new ute(e),"JsonSerializer")},validation:{DocumentValidator:G((e)=>new ste(e),"DocumentValidator"),ValidationRegistry:G((e)=>new nte(e),"ValidationRegistry")},shared:G(()=>A.shared,"shared")}}function xi(A){return{ServiceRegistry:G((e)=>new ate(e),"ServiceRegistry"),workspace:{LangiumDocuments:G((e)=>new jee(e),"LangiumDocuments"),LangiumDocumentFactory:G((e)=>new Vee(e),"LangiumDocumentFactory"),DocumentBuilder:G((e)=>new Bte(e),"DocumentBuilder"),IndexManager:G((e)=>new Ete(e),"IndexManager"),WorkspaceManager:G((e)=>new dte(e),"WorkspaceManager"),FileSystemProvider:G((e)=>A.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:G(()=>new Ste,"WorkspaceLock"),ConfigurationProvider:G((e)=>new Cte(e),"ConfigurationProvider")},profilers:{}}}function wr(A,e,t,r,i,u,a,n,o){let s=[A,e,t,r,i,u,a,n,o].reduce(s6,{});return LgA(s)}function SgA(A){if(A&&A[Rte])for(let e of Object.values(A))SgA(e);return A}function LgA(A,e){let t=new Proxy({},{deleteProperty:G(()=>!1,"deleteProperty"),set:G(()=>{throw Error("Cannot set property on injected service container")},"set"),get:G((r,i)=>{if(i===Rte)return!0;else return L0A(r,i,A,e||t)},"get"),getOwnPropertyDescriptor:G((r,i)=>(L0A(r,i,A,e||t),Object.getOwnPropertyDescriptor(r,i)),"getOwnPropertyDescriptor"),has:G((r,i)=>(i in A),"has"),ownKeys:G(()=>[...Object.getOwnPropertyNames(A)],"ownKeys")});return t}function L0A(A,e,t,r){if(e in A){if(A[e]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+A[e]);if(A[e]===y_A)throw Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return A[e]}else if(e in t){let i=t[e];A[e]=y_A;try{A[e]=typeof i==="function"?i(r):LgA(i,r)}catch(u){throw A[e]=u instanceof Error?u:void 0,u}return A[e]}else return}function s6(A,e){if(e){for(let[t,r]of Object.entries(e))if(r!==void 0&&r!==null)if(typeof r==="object"){let i=A[t];if(typeof i==="object"&&i!==null)A[t]=s6(i,r);else A[t]=s6({},r)}else A[t]=r}return A}function Ute(){let A=wr(xi(Ji),G7t),e=wr(Fi({shared:A}),N7t);return A.ServiceRegistry.register(e),e}function Yo(A){let e=Ute(),t=e.serializer.JsonSerializer.deserialize(A);return e.shared.workspace.LangiumDocumentFactory.fromModel(t,Ig.parse(`memory:/${t.name??"grammar"}.langium`)),t}function NgA(A){return In.isInstance(A,hc.$type)}function GgA(A){return In.isInstance(A,Vw.$type)}function UgA(A){return In.isInstance(A,z4.$type)}function MgA(A){return In.isInstance(A,jI.$type)}function TgA(A){return In.isInstance(A,jw.$type)}function YgA(A){return In.isInstance(A,Dx.$type)}function HgA(A){return A==="rmo"||A==="readmodel"||A==="ui"||A==="cmd"||A==="command"||A==="evt"||A==="event"||A==="pcr"||A==="processor"}function Wx(A){return In.isInstance(A,_I.$type)}function KgA(A){return In.isInstance(A,XI.$type)}function JgA(A){return In.isInstance(A,Y3.$type)}function OgA(A){return In.isInstance(A,Z4.$type)}function PgA(A){return In.isInstance(A,V4.$type)}function _gA(A){return In.isInstance(A,j4.$type)}function WgA(A){return In.isInstance(A,$I.$type)}function qgA(A){return In.isInstance(A,Xw.$type)}function zgA(A){return In.isInstance(A,X4.$type)}function ZgA(A){return In.isInstance(A,$4.$type)}function VgA(A){return In.isInstance(A,A1.$type)}function jgA(A){return In.isInstance(A,e1.$type)}function XgA(A){return In.isInstance(A,H3.$type)}function $gA(A){return In.isInstance(A,t1.$type)}function AcA(A){return In.isInstance(A,ao.$type)}var p2t,yx,f2t,Z0A,m2t,D2t,G=(A,e)=>yx(A,"name",{value:e,configurable:!0}),y2t=(A,e)=>function(){return A&&(e=(0,A[Z0A(A)[0]])(A=0)),e},Zr=(A,e)=>function(){return e||(0,A[Z0A(A)[0]])((e={exports:{}}).exports,e),e.exports},o1=(A,e)=>{for(var t in e)yx(A,t,{get:e[t],enumerable:!0})},fH=(A,e,t,r)=>{if(e&&typeof e==="object"||typeof e==="function"){for(let i of Z0A(e))if(!D2t.call(A,i)&&i!==t)yx(A,i,{get:()=>e[i],enumerable:!(r=f2t(e,i))||r.enumerable})}return A},JK=(A,e,t)=>(fH(A,e,"default"),t&&fH(t,e,"default")),V0A=(A,e,t)=>(t=A!=null?p2t(m2t(A)):{},fH(e||!A||!A.__esModule?yx(t,"default",{value:A,enumerable:!0}):t,A)),j0A=(A)=>fH(yx({},"__esModule",{value:!0}),A),OK,jnA,eH,XnA,wF,su,fi,bF,$nA,tH,AoA,eoA,toA,roA,rH,ioA,uoA,aoA,vF,B3,OE,E3,l0,PI,kF,Lw,Rw,Nw,iH,dF,FnA,P_A,noA,ooA,FF,soA,uH,Gw,loA,goA,coA,CoA,BoA,EoA,doA,IoA,xF,hoA,QoA,poA,foA,moA,DoA,yoA,woA,boA,voA,koA,SF,FoA,xoA,SoA,LoA,RoA,NoA,GoA,UoA,MoA,ToA,YoA,HoA,KoA,aH,nH,JoA,OoA,PoA,_oA,WoA,qoA,zoA,ZoA,__A,VoA,$OA,pe,wx,q3,bx,l6,PK,W_A,q_A,w2t,b2t,z_A,v2t,k2t,F2t,x2t,joA,S2t,g6,APA,Ua,X0A,L2t,R2t,N2t,G2t,U2t,M2t,T2t,Y2t,H2t,K2t,J2t,O2t,P2t,_2t,W2t,q2t,z2t,Z2t,V2t,j2t,X2t,$2t,ADt,eDt,tDt,To,$0A,esA,qE,$w,bs,A6,nx,tsA,j_A,rDt,ml,MF,Tw,dg,Y4,TF,wH,bH,H4,vH,K4,J4,YF,O4,HF,kH,WI,FH,f3,xH,PE,KF,SH,Yw,Hw,Kw,m3,LH,RH,Jw,NH,NC,JF,D3,GH,y3,Ow,UH,w3,Dl,b3,qI,v3,OF,k3,F3,MH,PF,x3,S3,Pw,DsA,Br,WE,vsA,LsA,$K,NsA,YH,HH,ePA,iDt,MY,uDt,fWA,AJ,mWA,DWA,aDt,G3,wWA,jsA,nDt,TWA,oDt,sDt,XE,lDt,fc,YWA,gDt,cDt,IF,CDt,BDt,EDt,dDt,IDt="[object Null]",hDt="[object Undefined]",tPA,l1,OC,QDt="[object Symbol]",nJ,Lx,pDt,Ki,fDt=1/0,rPA,iPA,mDt,DDt,yDt,wDt,bDt,mc,uPA=NaN,vDt,kDt,FDt,xDt,SDt,aPA=1/0,LDt=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,RDt,Rx,Nx,NDt="[object AsyncFunction]",GDt="[object Function]",UDt="[object GeneratorFunction]",MDt="[object Proxy]",ch,TDt,xnA,nPA,YDt,HDt,KDt,Am,JDt,ODt,PDt,_Dt,WDt,qDt,zDt,ZDt,VDt,em,jDt,A0A,oPA,XDt,$Dt,Ayt,Uo,eyt,tyt=800,ryt=16,iyt,uyt,ayt,nyt,JH,oyt,syt,lyt,gyt,gqA,CqA,cyt,Cyt,AlA,hqA,Byt=9007199254740991,Eyt,oJ,elA,Gx,dyt,Iyt,sJ,Ux,sPA,hyt,tlA,Qyt=9007199254740991,rlA,$E,lJ,pyt,fyt,Mx,myt,Dyt="[object Arguments]",lPA,RqA,yyt,wyt,byt,gJ,vyt,GqA,gPA,kyt,cPA,Fyt,xyt,sx,Syt="[object Arguments]",Lyt="[object Array]",Ryt="[object Boolean]",Nyt="[object Date]",Gyt="[object Error]",Uyt="[object Function]",Myt="[object Map]",Tyt="[object Number]",Yyt="[object Object]",Hyt="[object RegExp]",Kyt="[object Set]",Jyt="[object String]",Oyt="[object WeakMap]",Pyt="[object ArrayBuffer]",_yt="[object DataView]",Wyt="[object Float32Array]",qyt="[object Float64Array]",zyt="[object Int8Array]",Zyt="[object Int16Array]",Vyt="[object Int32Array]",jyt="[object Uint8Array]",Xyt="[object Uint8ClampedArray]",$yt="[object Uint16Array]",Awt="[object Uint32Array]",ta,ewt,Tx,TqA,_F,twt,SnA,rwt,i1,CPA,iwt,ilA,uwt,awt,HqA,JqA,nwt,owt,swt,lwt,PqA,hg,gwt,cwt,Cwt,Qg,Bwt,Ewt,dwt,Iwt,cJ,hwt,Qwt,ulA,pwt,lx,fwt,mwt,Dwt="__lodash_hash_undefined__",ywt,wwt,bwt,vwt,kwt,Fwt,xwt="__lodash_hash_undefined__",Swt,BPA,Lwt,CJ,Rwt,Nwt,Gwt,Uwt,Mwt,Twt,BJ,Ywt,gx,Hwt,Kwt,EJ,Jwt,Owt,Pwt,_wt,dJ,Wwt="Expected a function",qwt,zwt=500,Zwt,Vwt,jwt,Xwt,$wt,A6t,hJ,e6t=1/0,Yx,alA,t6t,nlA,EPA,r6t,slA,KC,i6t,DzA,wzA,u6t,a6t,n6t,o6t,s6t,l6t=200,g6t,WF,c6t,C6t,NzA,dPA,B6t,IPA,hPA,E6t,llA,TzA,d6t,I6t,QPA,h6t,glA,Q6t,p6t,f6t,HzA,m6t,OzA,e0A,WzA,D6t,t0A,y6t,r0A,w6t,qw,pPA="[object Map]",b6t="[object Object]",fPA="[object Promise]",mPA="[object Set]",DPA="[object WeakMap]",yPA="[object DataView]",v6t,k6t,F6t,x6t,S6t,I3,a6,L6t,R6t,N6t,G6t,OH,clA,U6t,M6t,T6t,wPA,bPA,Y6t,H6t,K6t="[object Boolean]",J6t="[object Date]",O6t="[object Map]",P6t="[object Number]",_6t="[object RegExp]",W6t="[object Set]",q6t="[object String]",z6t="[object Symbol]",Z6t="[object ArrayBuffer]",V6t="[object DataView]",j6t="[object Float32Array]",X6t="[object Float64Array]",$6t="[object Int8Array]",A9t="[object Int16Array]",e9t="[object Int32Array]",t9t="[object Uint8Array]",r9t="[object Uint8ClampedArray]",i9t="[object Uint16Array]",u9t="[object Uint32Array]",a9t,n9t,o9t="[object Map]",s9t,vPA,l9t,g9t,c9t="[object Set]",C9t,kPA,B9t,E9t,d9t=1,I9t=2,h9t=4,rZA="[object Arguments]",Q9t="[object Array]",p9t="[object Boolean]",f9t="[object Date]",m9t="[object Error]",iZA="[object Function]",D9t="[object GeneratorFunction]",y9t="[object Map]",w9t="[object Number]",uZA="[object Object]",b9t="[object RegExp]",v9t="[object Set]",k9t="[object String]",F9t="[object Symbol]",x9t="[object WeakMap]",S9t="[object ArrayBuffer]",L9t="[object DataView]",R9t="[object Float32Array]",N9t="[object Float64Array]",G9t="[object Int8Array]",U9t="[object Int16Array]",M9t="[object Int32Array]",T9t="[object Uint8Array]",Y9t="[object Uint8ClampedArray]",H9t="[object Uint16Array]",K9t="[object Uint32Array]",_u,J9t,O9t=4,C0,Hx,P9t="__lodash_hash_undefined__",_9t,W9t,ClA,gZA,BlA,q9t=1,z9t=2,BZA,Z9t,ElA,V9t=1,j9t=2,X9t="[object Boolean]",$9t="[object Date]",A5t="[object Error]",e5t="[object Map]",t5t="[object Number]",r5t="[object RegExp]",i5t="[object Set]",u5t="[object String]",a5t="[object Symbol]",n5t="[object ArrayBuffer]",o5t="[object DataView]",FPA,LnA,s5t,l5t=1,g5t,c5t,C5t,B5t=1,xPA="[object Arguments]",SPA="[object Array]",TY="[object Object]",E5t,LPA,d5t,pZA,I5t=1,h5t=2,Q5t,DZA,p5t,bZA,f5t,m5t,xZA,D5t,y5t=1,w5t=2,b5t,v5t,k5t,F5t,Ad,x5t,S5t,L5t,R5t,N5t,G5t,U5t,am,M5t,T5t,OZA,Y5t,H5t,IlA,RPA,WZA,K5t=200,J5t,O5t,QJ,P3,g0,Cx,P5t,Lr,_5t,W5t,JC,rVA,yc,q5t,z5t,Z5t,V5t,n6,PC,j5t,er,pc,X5t,$5t,Abt,ebt,tbt,rbt,ibt,hr,ubt="[object String]",yl,abt,no,nbt,Ns,obt,NPA,sbt="[object Map]",lbt="[object Set]",gbt,cbt,qu,Cbt="[object RegExp]",Bbt,GPA,Ebt,uh,ah,dbt="Expected a function",Ibt,hbt,Qbt,_C,pbt,pg,pJ,fbt,xVA,mbt=1/0,Dbt,ybt,wbt=200,bbt,hlA,ed,Ss,C6,wl,c0,fg,mg,$a,bl,vl,ia,B6,fJ,KVA="_~IN~_",vbt,lH,kbt,_VA="Complement Sets are not supported for first char optimization",_H=`Unable to use "first char" lexer optimizations:
|
||
`,Fbt,_3="PATTERN",NF="defaultMode",YY="modes",xbt,Sbt,Lbt,GF=256,cH,UPA=1,djA,o0A,An,UF,Fs,Rbt="parent",MPA="categories",TPA="label",YPA="group",HPA="push_mode",KPA="pop_mode",JPA="longer_alt",OPA="line_breaks",PPA="start_chars_hint",u1,_w,Nbt,U3,Gbt,Ubt,Mbt,DJ,Tbt,_PA,Ybt,WPA,Ga,Hbt,SjA,Kbt,NlA,Jbt,ZjA="MismatchedTokenException",VjA="NoViableAltException",jjA="EarlyExitException",XjA="NotAllInputParsedException",$jA,wJ,AXA,Obt,Pbt,_bt,RnA,eXA="InRuleRecoveryException",Wbt,qbt,zbt=4,g1=8,Zbt=8,rXA,iXA,g0A,c0A,C0A,BH,Cni,GlA,Vbt,jbt,HY,Xbt="name",d0A,$bt,Avt,evt,tvt,rvt,ivt,bJ,qPA=!0,zPA,CXA,BXA,uvt,avt,nvt,VH,oh,jH,Ls,MlA,ovt,hXA,svt,fXA,vJ,lvt,gvt,cvt,Cvt,Bvt,Evt,kJ,dvt,Ivt,hvt,Qvt,pvt,SXA,fvt,mvt,Ch,Dvt,jE,LXA,yvt,wvt,hF,bvt,vvt,kvt,Fvt,xvt="[object Null]",Svt="[object Undefined]",ZPA,h6,TlA,Lvt="[object AsyncFunction]",Rvt="[object Function]",Nvt="[object GeneratorFunction]",Gvt="[object Proxy]",TXA,Uvt,NnA,VPA,Mvt,Tvt,Yvt,om,Hvt,Kvt,Jvt,Ovt,Pvt,_vt,Wvt,qvt,zvt,Q6,Zvt,hx,Vvt,Qx,jvt,Xvt,$vt="__lodash_hash_undefined__",Akt,ekt,tkt,rkt,ikt,ukt,akt="__lodash_hash_undefined__",nkt,jPA,okt,skt,FJ,lkt,gkt,ckt,Ckt,xJ,Bkt=200,Ekt,dH,dkt="__lodash_hash_undefined__",Ikt,hkt,u$A,Qkt,o$A,pkt=1,fkt=2,l$A,mkt,XPA,Dkt,YlA,ykt=1,wkt=2,bkt="[object Boolean]",vkt="[object Date]",kkt="[object Error]",Fkt="[object Map]",xkt="[object Number]",Skt="[object RegExp]",Lkt="[object Set]",Rkt="[object String]",Nkt="[object Symbol]",Gkt="[object ArrayBuffer]",Ukt="[object DataView]",$PA,GnA,Mkt,E$A,Tkt,Rs,Ykt,h$A,Hkt,Kkt,Jkt,A_A,Okt,Pkt,_kt,o6,Wkt="[object Arguments]",e_A,D$A,qkt,zkt,Zkt,SJ,Vkt,w$A,t_A,jkt,r_A,Xkt,$kt,XH,AFt=9007199254740991,eFt,v$A,tFt=9007199254740991,HlA,rFt="[object Arguments]",iFt="[object Array]",uFt="[object Boolean]",aFt="[object Date]",nFt="[object Error]",oFt="[object Function]",sFt="[object Map]",lFt="[object Number]",gFt="[object Object]",cFt="[object RegExp]",CFt="[object Set]",BFt="[object String]",EFt="[object WeakMap]",dFt="[object ArrayBuffer]",IFt="[object DataView]",hFt="[object Float32Array]",QFt="[object Float64Array]",pFt="[object Int8Array]",fFt="[object Int16Array]",mFt="[object Int32Array]",DFt="[object Uint8Array]",yFt="[object Uint8ClampedArray]",wFt="[object Uint16Array]",bFt="[object Uint32Array]",ra,vFt,kFt,S$A,VF,FFt,UnA,xFt,i_A,u_A,SFt,KlA,LFt,RFt,NFt,GFt,N$A,UFt,MFt,TFt,YFt,HFt,M$A,LJ,JlA,a_A,KFt=1,JFt,OFt,PFt,_Ft,Q0A,WFt,p0A,qFt,Zw,zFt,f0A,n_A="[object Map]",ZFt="[object Object]",o_A="[object Promise]",s_A="[object Set]",l_A="[object WeakMap]",g_A="[object DataView]",VFt,jFt,XFt,$Ft,Axt,h3,m0A,ext=1,c_A="[object Arguments]",C_A="[object Array]",KY="[object Object]",txt,B_A,rxt,O$A,ixt=1,uxt=2,axt,W$A,nxt,Z$A,oxt,sxt="[object Symbol]",RJ,lxt,gxt,PlA,cxt="Expected a function",Cxt,Bxt=500,Ext,dxt,Ixt,hxt,Qxt,pxt=1/0,E_A,d_A,fxt,mxt,tAe,Dxt=1/0,GJ,uAe,yxt,wxt,bxt,vxt,kxt=1,Fxt=2,xxt,WlA,Sxt,Lxt,Rxt,UJ,Nxt,Gxt,Uxt,Mxt,Txt,Yxt,MJ,Hxt,Ah,Kxt,Jxt,a1=1,Oxt=2,DAe=4,yAe=5,_x=7,Pxt=8,_xt=9,Wxt=10,qxt=11,wAe=12,qlA,zlA,bAe,ZlA,$H,D0A,zxt,Zxt,Vxt,I_A,jxt,_Ae,Xxt,$xt,A7t,e7t,t7t,r7t,i7t,u7t,a7t=1/0,n7t,o7t,s7t=200,l7t,g7t,c7t,C7t,B7t,MnA,E7t="[object Map]",d7t="[object Set]",I7t,h7t,Q7t,p7t,f7t,h_A,gee,Q_A,m7t,See,rgA,AK,HJ,D7t,igA,eK,p_A="",Lee,ugA,Ree,Nee,agA,Gee,y7t,Uee,w7t,OJ,cgA,_E,Wu,QH=0,qee=10,zE,sh,f_A,rK,Zee,Ig,QF,ks,dgA,li,Vee,jee,Q3,Xee,$ee,Ate,lh,uK,ete,v0A,b7t,tte,v7t,WJ,hgA,qJ,rte,QgA,ite,ute,ate,aK,nte,ote,ste,Qc,lte,gte,cte,zJ,Cte,JY,J3,Bte,Ete,dte,Ite,DgA,ygA,m_A,k7t,F7t,x7t,D_A,TnA,F0A,vte,kte,Fte,xte,S7t,L7t,Ste,Lte,S0A,Rte,y_A,R0A,T3,Nte,R7t,RgA,Gte,Ji,N7t,G7t,U7t,Mte,N0A,G0A,U0A,M0A,T0A,Y0A,H0A,K0A,J0A,O0A,P0A,_0A,W0A,q0A,z0A,Bni,sK,lK,XF,gK,cK,CK,P4,$F,BK,EK,OY,YnA,PY,pF,HnA,hc,_Y,Vw,w_A,WY,KnA,z4,qY,c3,zY,jI,ZY,b_A,xw,jw,Dx,dK,IK,hK,QK,pK,fK,mK,L3,zI,DK,Ax,yK,wK,ex,bK,vK,JE,_4,ZI,fF,v_A,JnA,VY,_I,T4,OnA,GC,k_A,jY,PnA,XI,mF,Y3,DF,_nA,yF,XY,C3,Z4,$Y,WnA,V4,j4,kK,FK,xK,SK,LK,tx,R3,rx,RK,ix,$I,Xw,qnA,AH,VI,X4,$4,NK,A1,UC,GK,UK,MK,e1,ux,TK,YK,HK,KK,znA,Sw,ZnA,W4,H3,t1,VnA,q4,N3,ao,Tte,In,F_A,M7t,x_A,T7t,S_A,Y7t,L_A,H7t,R_A,K7t,N_A,J7t,G_A,O7t,U_A,P7t,M_A,_7t,T_A,W7t,Y_A,q7t,H_A,z7t,K_A,Z7t,J_A,V7t,O_A,j7t,X7t,$7t,A8t,e8t,t8t,r8t,i8t,u8t,a8t,n8t,o8t,s8t,l8t,g8t,c8t,$i,XJ,$J,AO,eO,tO,rO,iO,uO,aO,nO,oO,sO,lO,gO,cO,C8t,B8t,E8t,d8t,hn,kl,lu,Yte;var Au=P(()=>{p2t=Object.create,yx=Object.defineProperty,f2t=Object.getOwnPropertyDescriptor,Z0A=Object.getOwnPropertyNames,m2t=Object.getPrototypeOf,D2t=Object.prototype.hasOwnProperty,OK={};o1(OK,{AnnotatedTextEdit:()=>PI,ChangeAnnotation:()=>E3,ChangeAnnotationIdentifier:()=>l0,CodeAction:()=>xoA,CodeActionContext:()=>FoA,CodeActionKind:()=>koA,CodeActionTriggerKind:()=>SF,CodeDescription:()=>aoA,CodeLens:()=>SoA,Color:()=>tH,ColorInformation:()=>AoA,ColorPresentation:()=>eoA,Command:()=>B3,CompletionItem:()=>doA,CompletionItemKind:()=>loA,CompletionItemLabelDetails:()=>EoA,CompletionItemTag:()=>coA,CompletionList:()=>IoA,CreateFile:()=>Lw,DeleteFile:()=>Nw,Diagnostic:()=>vF,DiagnosticRelatedInformation:()=>rH,DiagnosticSeverity:()=>ioA,DiagnosticTag:()=>uoA,DocumentHighlight:()=>moA,DocumentHighlightKind:()=>foA,DocumentLink:()=>RoA,DocumentSymbol:()=>voA,DocumentUri:()=>jnA,EOL:()=>__A,FoldingRange:()=>roA,FoldingRangeKind:()=>toA,FormattingOptions:()=>LoA,Hover:()=>hoA,InlayHint:()=>JoA,InlayHintKind:()=>aH,InlayHintLabelPart:()=>nH,InlineCompletionContext:()=>zoA,InlineCompletionItem:()=>PoA,InlineCompletionList:()=>_oA,InlineCompletionTriggerKind:()=>WoA,InlineValueContext:()=>KoA,InlineValueEvaluatableExpression:()=>HoA,InlineValueText:()=>ToA,InlineValueVariableLookup:()=>YoA,InsertReplaceEdit:()=>CoA,InsertTextFormat:()=>goA,InsertTextMode:()=>BoA,Location:()=>bF,LocationLink:()=>$nA,MarkedString:()=>xF,MarkupContent:()=>Gw,MarkupKind:()=>uH,OptionalVersionedTextDocumentIdentifier:()=>FF,ParameterInformation:()=>QoA,Position:()=>su,Range:()=>fi,RenameFile:()=>Rw,SelectedCompletionInfo:()=>qoA,SelectionRange:()=>NoA,SemanticTokenModifiers:()=>UoA,SemanticTokenTypes:()=>GoA,SemanticTokens:()=>MoA,SignatureInformation:()=>poA,StringValue:()=>OoA,SymbolInformation:()=>woA,SymbolKind:()=>DoA,SymbolTag:()=>yoA,TextDocument:()=>VoA,TextDocumentEdit:()=>kF,TextDocumentIdentifier:()=>noA,TextDocumentItem:()=>soA,TextEdit:()=>OE,URI:()=>eH,VersionedTextDocumentIdentifier:()=>ooA,WorkspaceChange:()=>P_A,WorkspaceEdit:()=>iH,WorkspaceFolder:()=>ZoA,WorkspaceSymbol:()=>boA,integer:()=>XnA,uinteger:()=>wF});wx=y2t({"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){(function(A){function e(t){return typeof t==="string"}G(e,"is"),A.is=e})(jnA||(jnA={})),function(A){function e(t){return typeof t==="string"}G(e,"is"),A.is=e}(eH||(eH={})),function(A){A.MIN_VALUE=-2147483648,A.MAX_VALUE=2147483647;function e(t){return typeof t==="number"&&A.MIN_VALUE<=t&&t<=A.MAX_VALUE}G(e,"is"),A.is=e}(XnA||(XnA={})),function(A){A.MIN_VALUE=0,A.MAX_VALUE=2147483647;function e(t){return typeof t==="number"&&A.MIN_VALUE<=t&&t<=A.MAX_VALUE}G(e,"is"),A.is=e}(wF||(wF={})),function(A){function e(r,i){if(r===Number.MAX_VALUE)r=wF.MAX_VALUE;if(i===Number.MAX_VALUE)i=wF.MAX_VALUE;return{line:r,character:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.uinteger(i.line)&&pe.uinteger(i.character)}G(t,"is"),A.is=t}(su||(su={})),function(A){function e(r,i,u,a){if(pe.uinteger(r)&&pe.uinteger(i)&&pe.uinteger(u)&&pe.uinteger(a))return{start:su.create(r,i),end:su.create(u,a)};else if(su.is(r)&&su.is(i))return{start:r,end:i};else throw Error(`Range#create called with invalid arguments[${r}, ${i}, ${u}, ${a}]`)}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&su.is(i.start)&&su.is(i.end)}G(t,"is"),A.is=t}(fi||(fi={})),function(A){function e(r,i){return{uri:r,range:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&fi.is(i.range)&&(pe.string(i.uri)||pe.undefined(i.uri))}G(t,"is"),A.is=t}(bF||(bF={})),function(A){function e(r,i,u,a){return{targetUri:r,targetRange:i,targetSelectionRange:u,originSelectionRange:a}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&fi.is(i.targetRange)&&pe.string(i.targetUri)&&fi.is(i.targetSelectionRange)&&(fi.is(i.originSelectionRange)||pe.undefined(i.originSelectionRange))}G(t,"is"),A.is=t}($nA||($nA={})),function(A){function e(r,i,u,a){return{red:r,green:i,blue:u,alpha:a}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.numberRange(i.red,0,1)&&pe.numberRange(i.green,0,1)&&pe.numberRange(i.blue,0,1)&&pe.numberRange(i.alpha,0,1)}G(t,"is"),A.is=t}(tH||(tH={})),function(A){function e(r,i){return{range:r,color:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&fi.is(i.range)&&tH.is(i.color)}G(t,"is"),A.is=t}(AoA||(AoA={})),function(A){function e(r,i,u){return{label:r,textEdit:i,additionalTextEdits:u}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.string(i.label)&&(pe.undefined(i.textEdit)||OE.is(i))&&(pe.undefined(i.additionalTextEdits)||pe.typedArray(i.additionalTextEdits,OE.is))}G(t,"is"),A.is=t}(eoA||(eoA={})),function(A){A.Comment="comment",A.Imports="imports",A.Region="region"}(toA||(toA={})),function(A){function e(r,i,u,a,n,o){let s={startLine:r,endLine:i};if(pe.defined(u))s.startCharacter=u;if(pe.defined(a))s.endCharacter=a;if(pe.defined(n))s.kind=n;if(pe.defined(o))s.collapsedText=o;return s}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.uinteger(i.startLine)&&pe.uinteger(i.startLine)&&(pe.undefined(i.startCharacter)||pe.uinteger(i.startCharacter))&&(pe.undefined(i.endCharacter)||pe.uinteger(i.endCharacter))&&(pe.undefined(i.kind)||pe.string(i.kind))}G(t,"is"),A.is=t}(roA||(roA={})),function(A){function e(r,i){return{location:r,message:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&bF.is(i.location)&&pe.string(i.message)}G(t,"is"),A.is=t}(rH||(rH={})),function(A){A.Error=1,A.Warning=2,A.Information=3,A.Hint=4}(ioA||(ioA={})),function(A){A.Unnecessary=1,A.Deprecated=2}(uoA||(uoA={})),function(A){function e(t){let r=t;return pe.objectLiteral(r)&&pe.string(r.href)}G(e,"is"),A.is=e}(aoA||(aoA={})),function(A){function e(r,i,u,a,n,o){let s={range:r,message:i};if(pe.defined(u))s.severity=u;if(pe.defined(a))s.code=a;if(pe.defined(n))s.source=n;if(pe.defined(o))s.relatedInformation=o;return s}G(e,"create"),A.create=e;function t(r){var i;let u=r;return pe.defined(u)&&fi.is(u.range)&&pe.string(u.message)&&(pe.number(u.severity)||pe.undefined(u.severity))&&(pe.integer(u.code)||pe.string(u.code)||pe.undefined(u.code))&&(pe.undefined(u.codeDescription)||pe.string((i=u.codeDescription)===null||i===void 0?void 0:i.href))&&(pe.string(u.source)||pe.undefined(u.source))&&(pe.undefined(u.relatedInformation)||pe.typedArray(u.relatedInformation,rH.is))}G(t,"is"),A.is=t}(vF||(vF={})),function(A){function e(r,i,...u){let a={title:r,command:i};if(pe.defined(u)&&u.length>0)a.arguments=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.title)&&pe.string(i.command)}G(t,"is"),A.is=t}(B3||(B3={})),function(A){function e(u,a){return{range:u,newText:a}}G(e,"replace"),A.replace=e;function t(u,a){return{range:{start:u,end:u},newText:a}}G(t,"insert"),A.insert=t;function r(u){return{range:u,newText:""}}G(r,"del"),A.del=r;function i(u){let a=u;return pe.objectLiteral(a)&&pe.string(a.newText)&&fi.is(a.range)}G(i,"is"),A.is=i}(OE||(OE={})),function(A){function e(r,i,u){let a={label:r};if(i!==void 0)a.needsConfirmation=i;if(u!==void 0)a.description=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.string(i.label)&&(pe.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(pe.string(i.description)||i.description===void 0)}G(t,"is"),A.is=t}(E3||(E3={})),function(A){function e(t){let r=t;return pe.string(r)}G(e,"is"),A.is=e}(l0||(l0={})),function(A){function e(u,a,n){return{range:u,newText:a,annotationId:n}}G(e,"replace"),A.replace=e;function t(u,a,n){return{range:{start:u,end:u},newText:a,annotationId:n}}G(t,"insert"),A.insert=t;function r(u,a){return{range:u,newText:"",annotationId:a}}G(r,"del"),A.del=r;function i(u){let a=u;return OE.is(a)&&(E3.is(a.annotationId)||l0.is(a.annotationId))}G(i,"is"),A.is=i}(PI||(PI={})),function(A){function e(r,i){return{textDocument:r,edits:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&FF.is(i.textDocument)&&Array.isArray(i.edits)}G(t,"is"),A.is=t}(kF||(kF={})),function(A){function e(r,i,u){let a={kind:"create",uri:r};if(i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0))a.options=i;if(u!==void 0)a.annotationId=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return i&&i.kind==="create"&&pe.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||pe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||pe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||l0.is(i.annotationId))}G(t,"is"),A.is=t}(Lw||(Lw={})),function(A){function e(r,i,u,a){let n={kind:"rename",oldUri:r,newUri:i};if(u!==void 0&&(u.overwrite!==void 0||u.ignoreIfExists!==void 0))n.options=u;if(a!==void 0)n.annotationId=a;return n}G(e,"create"),A.create=e;function t(r){let i=r;return i&&i.kind==="rename"&&pe.string(i.oldUri)&&pe.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||pe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||pe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||l0.is(i.annotationId))}G(t,"is"),A.is=t}(Rw||(Rw={})),function(A){function e(r,i,u){let a={kind:"delete",uri:r};if(i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0))a.options=i;if(u!==void 0)a.annotationId=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return i&&i.kind==="delete"&&pe.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||pe.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||pe.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||l0.is(i.annotationId))}G(t,"is"),A.is=t}(Nw||(Nw={})),function(A){function e(t){let r=t;return r&&(r.changes!==void 0||r.documentChanges!==void 0)&&(r.documentChanges===void 0||r.documentChanges.every((i)=>{if(pe.string(i.kind))return Lw.is(i)||Rw.is(i)||Nw.is(i);else return kF.is(i)}))}G(e,"is"),A.is=e}(iH||(iH={})),dF=class{static{G(this,"TextEditChangeImpl")}constructor(A,e){this.edits=A,this.changeAnnotations=e}insert(A,e,t){let r,i;if(t===void 0)r=OE.insert(A,e);else if(l0.is(t))i=t,r=PI.insert(A,e,t);else this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(t),r=PI.insert(A,e,i);if(this.edits.push(r),i!==void 0)return i}replace(A,e,t){let r,i;if(t===void 0)r=OE.replace(A,e);else if(l0.is(t))i=t,r=PI.replace(A,e,t);else this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(t),r=PI.replace(A,e,i);if(this.edits.push(r),i!==void 0)return i}delete(A,e){let t,r;if(e===void 0)t=OE.del(A);else if(l0.is(e))r=e,t=PI.del(A,e);else this.assertChangeAnnotations(this.changeAnnotations),r=this.changeAnnotations.manage(e),t=PI.del(A,r);if(this.edits.push(t),r!==void 0)return r}add(A){this.edits.push(A)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(A){if(A===void 0)throw Error("Text edit change is not configured to manage change annotations.")}},FnA=class{static{G(this,"ChangeAnnotations")}constructor(A){this._annotations=A===void 0?Object.create(null):A,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(A,e){let t;if(l0.is(A))t=A;else t=this.nextId(),e=A;if(this._annotations[t]!==void 0)throw Error(`Id ${t} is already in use.`);if(e===void 0)throw Error(`No annotation provided for id ${t}`);return this._annotations[t]=e,this._size++,t}nextId(){return this._counter++,this._counter.toString()}},P_A=class{static{G(this,"WorkspaceChange")}constructor(A){if(this._textEditChanges=Object.create(null),A!==void 0){if(this._workspaceEdit=A,A.documentChanges)this._changeAnnotations=new FnA(A.changeAnnotations),A.changeAnnotations=this._changeAnnotations.all(),A.documentChanges.forEach((e)=>{if(kF.is(e)){let t=new dF(e.edits,this._changeAnnotations);this._textEditChanges[e.textDocument.uri]=t}});else if(A.changes)Object.keys(A.changes).forEach((e)=>{let t=new dF(A.changes[e]);this._textEditChanges[e]=t})}else this._workspaceEdit={}}get edit(){if(this.initDocumentChanges(),this._changeAnnotations!==void 0)if(this._changeAnnotations.size===0)this._workspaceEdit.changeAnnotations=void 0;else this._workspaceEdit.changeAnnotations=this._changeAnnotations.all();return this._workspaceEdit}getTextEditChange(A){if(FF.is(A)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let e={uri:A.uri,version:A.version},t=this._textEditChanges[e.uri];if(!t){let r=[],i={textDocument:e,edits:r};this._workspaceEdit.documentChanges.push(i),t=new dF(r,this._changeAnnotations),this._textEditChanges[e.uri]=t}return t}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw Error("Workspace edit is not configured for normal text edit changes.");let e=this._textEditChanges[A];if(!e){let t=[];this._workspaceEdit.changes[A]=t,e=new dF(t),this._textEditChanges[A]=e}return e}}initDocumentChanges(){if(this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0)this._changeAnnotations=new FnA,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()}initChanges(){if(this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0)this._workspaceEdit.changes=Object.create(null)}createFile(A,e,t){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let r;if(E3.is(e)||l0.is(e))r=e;else t=e;let i,u;if(r===void 0)i=Lw.create(A,t);else u=l0.is(r)?r:this._changeAnnotations.manage(r),i=Lw.create(A,t,u);if(this._workspaceEdit.documentChanges.push(i),u!==void 0)return u}renameFile(A,e,t,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let i;if(E3.is(t)||l0.is(t))i=t;else r=t;let u,a;if(i===void 0)u=Rw.create(A,e,r);else a=l0.is(i)?i:this._changeAnnotations.manage(i),u=Rw.create(A,e,r,a);if(this._workspaceEdit.documentChanges.push(u),a!==void 0)return a}deleteFile(A,e,t){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let r;if(E3.is(e)||l0.is(e))r=e;else t=e;let i,u;if(r===void 0)i=Nw.create(A,t);else u=l0.is(r)?r:this._changeAnnotations.manage(r),i=Nw.create(A,t,u);if(this._workspaceEdit.documentChanges.push(i),u!==void 0)return u}},function(A){function e(r){return{uri:r}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.uri)}G(t,"is"),A.is=t}(noA||(noA={})),function(A){function e(r,i){return{uri:r,version:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.uri)&&pe.integer(i.version)}G(t,"is"),A.is=t}(ooA||(ooA={})),function(A){function e(r,i){return{uri:r,version:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.uri)&&(i.version===null||pe.integer(i.version))}G(t,"is"),A.is=t}(FF||(FF={})),function(A){function e(r,i,u,a){return{uri:r,languageId:i,version:u,text:a}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.uri)&&pe.string(i.languageId)&&pe.integer(i.version)&&pe.string(i.text)}G(t,"is"),A.is=t}(soA||(soA={})),function(A){A.PlainText="plaintext",A.Markdown="markdown";function e(t){let r=t;return r===A.PlainText||r===A.Markdown}G(e,"is"),A.is=e}(uH||(uH={})),function(A){function e(t){let r=t;return pe.objectLiteral(t)&&uH.is(r.kind)&&pe.string(r.value)}G(e,"is"),A.is=e}(Gw||(Gw={})),function(A){A.Text=1,A.Method=2,A.Function=3,A.Constructor=4,A.Field=5,A.Variable=6,A.Class=7,A.Interface=8,A.Module=9,A.Property=10,A.Unit=11,A.Value=12,A.Enum=13,A.Keyword=14,A.Snippet=15,A.Color=16,A.File=17,A.Reference=18,A.Folder=19,A.EnumMember=20,A.Constant=21,A.Struct=22,A.Event=23,A.Operator=24,A.TypeParameter=25}(loA||(loA={})),function(A){A.PlainText=1,A.Snippet=2}(goA||(goA={})),function(A){A.Deprecated=1}(coA||(coA={})),function(A){function e(r,i,u){return{newText:r,insert:i,replace:u}}G(e,"create"),A.create=e;function t(r){let i=r;return i&&pe.string(i.newText)&&fi.is(i.insert)&&fi.is(i.replace)}G(t,"is"),A.is=t}(CoA||(CoA={})),function(A){A.asIs=1,A.adjustIndentation=2}(BoA||(BoA={})),function(A){function e(t){let r=t;return r&&(pe.string(r.detail)||r.detail===void 0)&&(pe.string(r.description)||r.description===void 0)}G(e,"is"),A.is=e}(EoA||(EoA={})),function(A){function e(t){return{label:t}}G(e,"create"),A.create=e}(doA||(doA={})),function(A){function e(t,r){return{items:t?t:[],isIncomplete:!!r}}G(e,"create"),A.create=e}(IoA||(IoA={})),function(A){function e(r){return r.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}G(e,"fromPlainText"),A.fromPlainText=e;function t(r){let i=r;return pe.string(i)||pe.objectLiteral(i)&&pe.string(i.language)&&pe.string(i.value)}G(t,"is"),A.is=t}(xF||(xF={})),function(A){function e(t){let r=t;return!!r&&pe.objectLiteral(r)&&(Gw.is(r.contents)||xF.is(r.contents)||pe.typedArray(r.contents,xF.is))&&(t.range===void 0||fi.is(t.range))}G(e,"is"),A.is=e}(hoA||(hoA={})),function(A){function e(t,r){return r?{label:t,documentation:r}:{label:t}}G(e,"create"),A.create=e}(QoA||(QoA={})),function(A){function e(t,r,...i){let u={label:t};if(pe.defined(r))u.documentation=r;if(pe.defined(i))u.parameters=i;else u.parameters=[];return u}G(e,"create"),A.create=e}(poA||(poA={})),function(A){A.Text=1,A.Read=2,A.Write=3}(foA||(foA={})),function(A){function e(t,r){let i={range:t};if(pe.number(r))i.kind=r;return i}G(e,"create"),A.create=e}(moA||(moA={})),function(A){A.File=1,A.Module=2,A.Namespace=3,A.Package=4,A.Class=5,A.Method=6,A.Property=7,A.Field=8,A.Constructor=9,A.Enum=10,A.Interface=11,A.Function=12,A.Variable=13,A.Constant=14,A.String=15,A.Number=16,A.Boolean=17,A.Array=18,A.Object=19,A.Key=20,A.Null=21,A.EnumMember=22,A.Struct=23,A.Event=24,A.Operator=25,A.TypeParameter=26}(DoA||(DoA={})),function(A){A.Deprecated=1}(yoA||(yoA={})),function(A){function e(t,r,i,u,a){let n={name:t,kind:r,location:{uri:u,range:i}};if(a)n.containerName=a;return n}G(e,"create"),A.create=e}(woA||(woA={})),function(A){function e(t,r,i,u){return u!==void 0?{name:t,kind:r,location:{uri:i,range:u}}:{name:t,kind:r,location:{uri:i}}}G(e,"create"),A.create=e}(boA||(boA={})),function(A){function e(r,i,u,a,n,o){let s={name:r,detail:i,kind:u,range:a,selectionRange:n};if(o!==void 0)s.children=o;return s}G(e,"create"),A.create=e;function t(r){let i=r;return i&&pe.string(i.name)&&pe.number(i.kind)&&fi.is(i.range)&&fi.is(i.selectionRange)&&(i.detail===void 0||pe.string(i.detail))&&(i.deprecated===void 0||pe.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}G(t,"is"),A.is=t}(voA||(voA={})),function(A){A.Empty="",A.QuickFix="quickfix",A.Refactor="refactor",A.RefactorExtract="refactor.extract",A.RefactorInline="refactor.inline",A.RefactorRewrite="refactor.rewrite",A.Source="source",A.SourceOrganizeImports="source.organizeImports",A.SourceFixAll="source.fixAll"}(koA||(koA={})),function(A){A.Invoked=1,A.Automatic=2}(SF||(SF={})),function(A){function e(r,i,u){let a={diagnostics:r};if(i!==void 0&&i!==null)a.only=i;if(u!==void 0&&u!==null)a.triggerKind=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.typedArray(i.diagnostics,vF.is)&&(i.only===void 0||pe.typedArray(i.only,pe.string))&&(i.triggerKind===void 0||i.triggerKind===SF.Invoked||i.triggerKind===SF.Automatic)}G(t,"is"),A.is=t}(FoA||(FoA={})),function(A){function e(r,i,u){let a={title:r},n=!0;if(typeof i==="string")n=!1,a.kind=i;else if(B3.is(i))a.command=i;else a.edit=i;if(n&&u!==void 0)a.kind=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return i&&pe.string(i.title)&&(i.diagnostics===void 0||pe.typedArray(i.diagnostics,vF.is))&&(i.kind===void 0||pe.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||B3.is(i.command))&&(i.isPreferred===void 0||pe.boolean(i.isPreferred))&&(i.edit===void 0||iH.is(i.edit))}G(t,"is"),A.is=t}(xoA||(xoA={})),function(A){function e(r,i){let u={range:r};if(pe.defined(i))u.data=i;return u}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&fi.is(i.range)&&(pe.undefined(i.command)||B3.is(i.command))}G(t,"is"),A.is=t}(SoA||(SoA={})),function(A){function e(r,i){return{tabSize:r,insertSpaces:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.uinteger(i.tabSize)&&pe.boolean(i.insertSpaces)}G(t,"is"),A.is=t}(LoA||(LoA={})),function(A){function e(r,i,u){return{range:r,target:i,data:u}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&fi.is(i.range)&&(pe.undefined(i.target)||pe.string(i.target))}G(t,"is"),A.is=t}(RoA||(RoA={})),function(A){function e(r,i){return{range:r,parent:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&fi.is(i.range)&&(i.parent===void 0||A.is(i.parent))}G(t,"is"),A.is=t}(NoA||(NoA={})),function(A){A.namespace="namespace",A.type="type",A.class="class",A.enum="enum",A.interface="interface",A.struct="struct",A.typeParameter="typeParameter",A.parameter="parameter",A.variable="variable",A.property="property",A.enumMember="enumMember",A.event="event",A.function="function",A.method="method",A.macro="macro",A.keyword="keyword",A.modifier="modifier",A.comment="comment",A.string="string",A.number="number",A.regexp="regexp",A.operator="operator",A.decorator="decorator"}(GoA||(GoA={})),function(A){A.declaration="declaration",A.definition="definition",A.readonly="readonly",A.static="static",A.deprecated="deprecated",A.abstract="abstract",A.async="async",A.modification="modification",A.documentation="documentation",A.defaultLibrary="defaultLibrary"}(UoA||(UoA={})),function(A){function e(t){let r=t;return pe.objectLiteral(r)&&(r.resultId===void 0||typeof r.resultId==="string")&&Array.isArray(r.data)&&(r.data.length===0||typeof r.data[0]==="number")}G(e,"is"),A.is=e}(MoA||(MoA={})),function(A){function e(r,i){return{range:r,text:i}}G(e,"create"),A.create=e;function t(r){let i=r;return i!==void 0&&i!==null&&fi.is(i.range)&&pe.string(i.text)}G(t,"is"),A.is=t}(ToA||(ToA={})),function(A){function e(r,i,u){return{range:r,variableName:i,caseSensitiveLookup:u}}G(e,"create"),A.create=e;function t(r){let i=r;return i!==void 0&&i!==null&&fi.is(i.range)&&pe.boolean(i.caseSensitiveLookup)&&(pe.string(i.variableName)||i.variableName===void 0)}G(t,"is"),A.is=t}(YoA||(YoA={})),function(A){function e(r,i){return{range:r,expression:i}}G(e,"create"),A.create=e;function t(r){let i=r;return i!==void 0&&i!==null&&fi.is(i.range)&&(pe.string(i.expression)||i.expression===void 0)}G(t,"is"),A.is=t}(HoA||(HoA={})),function(A){function e(r,i){return{frameId:r,stoppedLocation:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&fi.is(r.stoppedLocation)}G(t,"is"),A.is=t}(KoA||(KoA={})),function(A){A.Type=1,A.Parameter=2;function e(t){return t===1||t===2}G(e,"is"),A.is=e}(aH||(aH={})),function(A){function e(r){return{value:r}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&(i.tooltip===void 0||pe.string(i.tooltip)||Gw.is(i.tooltip))&&(i.location===void 0||bF.is(i.location))&&(i.command===void 0||B3.is(i.command))}G(t,"is"),A.is=t}(nH||(nH={})),function(A){function e(r,i,u){let a={position:r,label:i};if(u!==void 0)a.kind=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&su.is(i.position)&&(pe.string(i.label)||pe.typedArray(i.label,nH.is))&&(i.kind===void 0||aH.is(i.kind))&&i.textEdits===void 0||pe.typedArray(i.textEdits,OE.is)&&(i.tooltip===void 0||pe.string(i.tooltip)||Gw.is(i.tooltip))&&(i.paddingLeft===void 0||pe.boolean(i.paddingLeft))&&(i.paddingRight===void 0||pe.boolean(i.paddingRight))}G(t,"is"),A.is=t}(JoA||(JoA={})),function(A){function e(t){return{kind:"snippet",value:t}}G(e,"createSnippet"),A.createSnippet=e}(OoA||(OoA={})),function(A){function e(t,r,i,u){return{insertText:t,filterText:r,range:i,command:u}}G(e,"create"),A.create=e}(PoA||(PoA={})),function(A){function e(t){return{items:t}}G(e,"create"),A.create=e}(_oA||(_oA={})),function(A){A.Invoked=0,A.Automatic=1}(WoA||(WoA={})),function(A){function e(t,r){return{range:t,text:r}}G(e,"create"),A.create=e}(qoA||(qoA={})),function(A){function e(t,r){return{triggerKind:t,selectedCompletionInfo:r}}G(e,"create"),A.create=e}(zoA||(zoA={})),function(A){function e(t){let r=t;return pe.objectLiteral(r)&&eH.is(r.uri)&&pe.string(r.name)}G(e,"is"),A.is=e}(ZoA||(ZoA={})),__A=[`
|
||
`,`\r
|
||
`,"\r"],function(A){function e(u,a,n,o){return new $OA(u,a,n,o)}G(e,"create"),A.create=e;function t(u){let a=u;return pe.defined(a)&&pe.string(a.uri)&&(pe.undefined(a.languageId)||pe.string(a.languageId))&&pe.uinteger(a.lineCount)&&pe.func(a.getText)&&pe.func(a.positionAt)&&pe.func(a.offsetAt)?!0:!1}G(t,"is"),A.is=t;function r(u,a){let n=u.getText(),o=i(a,(l,g)=>{let C=l.range.start.line-g.range.start.line;if(C===0)return l.range.start.character-g.range.start.character;return C}),s=n.length;for(let l=o.length-1;l>=0;l--){let g=o[l],C=u.offsetAt(g.range.start),B=u.offsetAt(g.range.end);if(B<=s)n=n.substring(0,C)+g.newText+n.substring(B,n.length);else throw Error("Overlapping edit");s=C}return n}G(r,"applyEdits"),A.applyEdits=r;function i(u,a){if(u.length<=1)return u;let n=u.length/2|0,o=u.slice(0,n),s=u.slice(n);i(o,a),i(s,a);let l=0,g=0,C=0;while(l<o.length&&g<s.length)if(a(o[l],s[g])<=0)u[C++]=o[l++];else u[C++]=s[g++];while(l<o.length)u[C++]=o[l++];while(g<s.length)u[C++]=s[g++];return u}G(i,"mergeSort")}(VoA||(VoA={})),$OA=class{static{G(this,"FullTextDocument")}constructor(A,e,t,r){this._uri=A,this._languageId=e,this._version=t,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(A){if(A){let e=this.offsetAt(A.start),t=this.offsetAt(A.end);return this._content.substring(e,t)}return this._content}update(A,e){this._content=A.text,this._version=e,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let A=[],e=this._content,t=!0;for(let r=0;r<e.length;r++){if(t)A.push(r),t=!1;let i=e.charAt(r);if(t=i==="\r"||i===`
|
||
`,i==="\r"&&r+1<e.length&&e.charAt(r+1)===`
|
||
`)r++}if(t&&e.length>0)A.push(e.length);this._lineOffsets=A}return this._lineOffsets}positionAt(A){A=Math.max(Math.min(A,this._content.length),0);let e=this.getLineOffsets(),t=0,r=e.length;if(r===0)return su.create(0,A);while(t<r){let u=Math.floor((t+r)/2);if(e[u]>A)r=u;else t=u+1}let i=t-1;return su.create(i,A-e[i])}offsetAt(A){let e=this.getLineOffsets();if(A.line>=e.length)return this._content.length;else if(A.line<0)return 0;let t=e[A.line],r=A.line+1<e.length?e[A.line+1]:this._content.length;return Math.max(Math.min(t+A.character,r),t)}get lineCount(){return this.getLineOffsets().length}},function(A){let e=Object.prototype.toString;function t(B){return typeof B<"u"}G(t,"defined"),A.defined=t;function r(B){return typeof B>"u"}G(r,"undefined"),A.undefined=r;function i(B){return B===!0||B===!1}G(i,"boolean"),A.boolean=i;function u(B){return e.call(B)==="[object String]"}G(u,"string"),A.string=u;function a(B){return e.call(B)==="[object Number]"}G(a,"number"),A.number=a;function n(B,E,d){return e.call(B)==="[object Number]"&&E<=B&&B<=d}G(n,"numberRange"),A.numberRange=n;function o(B){return e.call(B)==="[object Number]"&&-2147483648<=B&&B<=2147483647}G(o,"integer"),A.integer=o;function s(B){return e.call(B)==="[object Number]"&&0<=B&&B<=2147483647}G(s,"uinteger"),A.uinteger=s;function l(B){return e.call(B)==="[object Function]"}G(l,"func"),A.func=l;function g(B){return B!==null&&typeof B==="object"}G(g,"objectLiteral"),A.objectLiteral=g;function C(B,E){return Array.isArray(B)&&B.every(E)}G(C,"typedArray"),A.typedArray=C}(pe||(pe={}))}}),q3=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/ral.js"(A){Object.defineProperty(A,"__esModule",{value:!0});var e;function t(){if(e===void 0)throw Error("No runtime abstraction layer installed");return e}G(t,"RAL"),function(r){function i(u){if(u===void 0)throw Error("No runtime abstraction layer provided");e=u}G(i,"install"),r.install=i}(t||(t={})),A.default=t}}),bx=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/is.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.stringArray=A.array=A.func=A.error=A.number=A.string=A.boolean=void 0;function e(o){return o===!0||o===!1}G(e,"boolean"),A.boolean=e;function t(o){return typeof o==="string"||o instanceof String}G(t,"string"),A.string=t;function r(o){return typeof o==="number"||o instanceof Number}G(r,"number"),A.number=r;function i(o){return o instanceof Error}G(i,"error"),A.error=i;function u(o){return typeof o==="function"}G(u,"func"),A.func=u;function a(o){return Array.isArray(o)}G(a,"array"),A.array=a;function n(o){return a(o)&&o.every((s)=>t(s))}G(n,"stringArray"),A.stringArray=n}}),l6=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.Emitter=A.Event=void 0;var e=q3(),t;(function(u){let a={dispose(){}};u.None=function(){return a}})(t||(A.Event=t={}));var r=class{static{G(this,"CallbackList")}add(u,a=null,n){if(!this._callbacks)this._callbacks=[],this._contexts=[];if(this._callbacks.push(u),this._contexts.push(a),Array.isArray(n))n.push({dispose:G(()=>this.remove(u,a),"dispose")})}remove(u,a=null){if(!this._callbacks)return;let n=!1;for(let o=0,s=this._callbacks.length;o<s;o++)if(this._callbacks[o]===u)if(this._contexts[o]===a){this._callbacks.splice(o,1),this._contexts.splice(o,1);return}else n=!0;if(n)throw Error("When adding a listener with a context, you should remove it with the same context")}invoke(...u){if(!this._callbacks)return[];let a=[],n=this._callbacks.slice(0),o=this._contexts.slice(0);for(let s=0,l=n.length;s<l;s++)try{a.push(n[s].apply(o[s],u))}catch(g){(0,e.default)().console.error(g)}return a}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},i=class u{static{G(this,"Emitter")}constructor(a){this._options=a}get event(){if(!this._event)this._event=(a,n,o)=>{if(!this._callbacks)this._callbacks=new r;if(this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty())this._options.onFirstListenerAdd(this);this._callbacks.add(a,n);let s={dispose:G(()=>{if(!this._callbacks)return;if(this._callbacks.remove(a,n),s.dispose=u._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty())this._options.onLastListenerRemove(this)},"dispose")};if(Array.isArray(o))o.push(s);return s};return this._event}fire(a){if(this._callbacks)this._callbacks.invoke.call(this._callbacks,a)}dispose(){if(this._callbacks)this._callbacks.dispose(),this._callbacks=void 0}};A.Emitter=i,i._noop=function(){}}}),PK=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.CancellationTokenSource=A.CancellationToken=void 0;var e=q3(),t=bx(),r=l6(),i;(function(o){o.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:r.Event.None}),o.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:r.Event.None});function s(l){let g=l;return g&&(g===o.None||g===o.Cancelled||t.boolean(g.isCancellationRequested)&&!!g.onCancellationRequested)}G(s,"is"),o.is=s})(i||(A.CancellationToken=i={}));var u=Object.freeze(function(o,s){let l=(0,e.default)().timer.setTimeout(o.bind(s),0);return{dispose(){l.dispose()}}}),a=class{static{G(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){if(!this._isCancelled){if(this._isCancelled=!0,this._emitter)this._emitter.fire(void 0),this.dispose()}}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){if(this._isCancelled)return u;if(!this._emitter)this._emitter=new r.Emitter;return this._emitter.event}dispose(){if(this._emitter)this._emitter.dispose(),this._emitter=void 0}},n=class{static{G(this,"CancellationTokenSource")}get token(){if(!this._token)this._token=new a;return this._token}cancel(){if(!this._token)this._token=i.Cancelled;else this._token.cancel()}dispose(){if(!this._token)this._token=i.None;else if(this._token instanceof a)this._token.dispose()}};A.CancellationTokenSource=n}}),W_A=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messages.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.Message=A.NotificationType9=A.NotificationType8=A.NotificationType7=A.NotificationType6=A.NotificationType5=A.NotificationType4=A.NotificationType3=A.NotificationType2=A.NotificationType1=A.NotificationType0=A.NotificationType=A.RequestType9=A.RequestType8=A.RequestType7=A.RequestType6=A.RequestType5=A.RequestType4=A.RequestType3=A.RequestType2=A.RequestType1=A.RequestType=A.RequestType0=A.AbstractMessageSignature=A.ParameterStructures=A.ResponseError=A.ErrorCodes=void 0;var e=bx(),t;(function(k){k.ParseError=-32700,k.InvalidRequest=-32600,k.MethodNotFound=-32601,k.InvalidParams=-32602,k.InternalError=-32603,k.jsonrpcReservedErrorRangeStart=-32099,k.serverErrorStart=-32099,k.MessageWriteError=-32099,k.MessageReadError=-32098,k.PendingResponseRejected=-32097,k.ConnectionInactive=-32096,k.ServerNotInitialized=-32002,k.UnknownErrorCode=-32001,k.jsonrpcReservedErrorRangeEnd=-32000,k.serverErrorEnd=-32000})(t||(A.ErrorCodes=t={}));var r=class k extends Error{static{G(this,"ResponseError")}constructor(T,R,L){super(R);this.code=e.number(T)?T:t.UnknownErrorCode,this.data=L,Object.setPrototypeOf(this,k.prototype)}toJson(){let T={code:this.code,message:this.message};if(this.data!==void 0)T.data=this.data;return T}};A.ResponseError=r;var i=class k{static{G(this,"ParameterStructures")}constructor(T){this.kind=T}static is(T){return T===k.auto||T===k.byName||T===k.byPosition}toString(){return this.kind}};A.ParameterStructures=i,i.auto=new i("auto"),i.byPosition=new i("byPosition"),i.byName=new i("byName");var u=class{static{G(this,"AbstractMessageSignature")}constructor(k,T){this.method=k,this.numberOfParams=T}get parameterStructures(){return i.auto}};A.AbstractMessageSignature=u;var a=class extends u{static{G(this,"RequestType0")}constructor(k){super(k,0)}};A.RequestType0=a;var n=class extends u{static{G(this,"RequestType")}constructor(k,T=i.auto){super(k,1);this._parameterStructures=T}get parameterStructures(){return this._parameterStructures}};A.RequestType=n;var o=class extends u{static{G(this,"RequestType1")}constructor(k,T=i.auto){super(k,1);this._parameterStructures=T}get parameterStructures(){return this._parameterStructures}};A.RequestType1=o;var s=class extends u{static{G(this,"RequestType2")}constructor(k){super(k,2)}};A.RequestType2=s;var l=class extends u{static{G(this,"RequestType3")}constructor(k){super(k,3)}};A.RequestType3=l;var g=class extends u{static{G(this,"RequestType4")}constructor(k){super(k,4)}};A.RequestType4=g;var C=class extends u{static{G(this,"RequestType5")}constructor(k){super(k,5)}};A.RequestType5=C;var B=class extends u{static{G(this,"RequestType6")}constructor(k){super(k,6)}};A.RequestType6=B;var E=class extends u{static{G(this,"RequestType7")}constructor(k){super(k,7)}};A.RequestType7=E;var d=class extends u{static{G(this,"RequestType8")}constructor(k){super(k,8)}};A.RequestType8=d;var I=class extends u{static{G(this,"RequestType9")}constructor(k){super(k,9)}};A.RequestType9=I;var h=class extends u{static{G(this,"NotificationType")}constructor(k,T=i.auto){super(k,1);this._parameterStructures=T}get parameterStructures(){return this._parameterStructures}};A.NotificationType=h;var Q=class extends u{static{G(this,"NotificationType0")}constructor(k){super(k,0)}};A.NotificationType0=Q;var p=class extends u{static{G(this,"NotificationType1")}constructor(k,T=i.auto){super(k,1);this._parameterStructures=T}get parameterStructures(){return this._parameterStructures}};A.NotificationType1=p;var m=class extends u{static{G(this,"NotificationType2")}constructor(k){super(k,2)}};A.NotificationType2=m;var f=class extends u{static{G(this,"NotificationType3")}constructor(k){super(k,3)}};A.NotificationType3=f;var D=class extends u{static{G(this,"NotificationType4")}constructor(k){super(k,4)}};A.NotificationType4=D;var w=class extends u{static{G(this,"NotificationType5")}constructor(k){super(k,5)}};A.NotificationType5=w;var b=class extends u{static{G(this,"NotificationType6")}constructor(k){super(k,6)}};A.NotificationType6=b;var F=class extends u{static{G(this,"NotificationType7")}constructor(k){super(k,7)}};A.NotificationType7=F;var v=class extends u{static{G(this,"NotificationType8")}constructor(k){super(k,8)}};A.NotificationType8=v;var S=class extends u{static{G(this,"NotificationType9")}constructor(k){super(k,9)}};A.NotificationType9=S;var x;(function(k){function T(M){let U=M;return U&&e.string(U.method)&&(e.string(U.id)||e.number(U.id))}G(T,"isRequest"),k.isRequest=T;function R(M){let U=M;return U&&e.string(U.method)&&M.id===void 0}G(R,"isNotification"),k.isNotification=R;function L(M){let U=M;return U&&(U.result!==void 0||!!U.error)&&(e.string(U.id)||e.number(U.id)||U.id===null)}G(L,"isResponse"),k.isResponse=L})(x||(A.Message=x={}))}}),q_A=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(A){var e;Object.defineProperty(A,"__esModule",{value:!0}),A.LRUCache=A.LinkedMap=A.Touch=void 0;var t;(function(u){u.None=0,u.First=1,u.AsOld=u.First,u.Last=2,u.AsNew=u.Last})(t||(A.Touch=t={}));var r=class{static{G(this,"LinkedMap")}constructor(){this[e]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(u){return this._map.has(u)}get(u,a=t.None){let n=this._map.get(u);if(!n)return;if(a!==t.None)this.touch(n,a);return n.value}set(u,a,n=t.None){let o=this._map.get(u);if(o){if(o.value=a,n!==t.None)this.touch(o,n)}else{switch(o={key:u,value:a,next:void 0,previous:void 0},n){case t.None:this.addItemLast(o);break;case t.First:this.addItemFirst(o);break;case t.Last:this.addItemLast(o);break;default:this.addItemLast(o);break}this._map.set(u,o),this._size++}return this}delete(u){return!!this.remove(u)}remove(u){let a=this._map.get(u);if(!a)return;return this._map.delete(u),this.removeItem(a),this._size--,a.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let u=this._head;return this._map.delete(u.key),this.removeItem(u),this._size--,u.value}forEach(u,a){let n=this._state,o=this._head;while(o){if(a)u.bind(a)(o.value,o.key,this);else u(o.value,o.key,this);if(this._state!==n)throw Error("LinkedMap got modified during iteration.");o=o.next}}keys(){let u=this._state,a=this._head,n={[Symbol.iterator]:()=>n,next:G(()=>{if(this._state!==u)throw Error("LinkedMap got modified during iteration.");if(a){let o={value:a.key,done:!1};return a=a.next,o}else return{value:void 0,done:!0}},"next")};return n}values(){let u=this._state,a=this._head,n={[Symbol.iterator]:()=>n,next:G(()=>{if(this._state!==u)throw Error("LinkedMap got modified during iteration.");if(a){let o={value:a.value,done:!1};return a=a.next,o}else return{value:void 0,done:!0}},"next")};return n}entries(){let u=this._state,a=this._head,n={[Symbol.iterator]:()=>n,next:G(()=>{if(this._state!==u)throw Error("LinkedMap got modified during iteration.");if(a){let o={value:[a.key,a.value],done:!1};return a=a.next,o}else return{value:void 0,done:!0}},"next")};return n}[(e=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(u){if(u>=this.size)return;if(u===0){this.clear();return}let a=this._head,n=this.size;while(a&&n>u)this._map.delete(a.key),a=a.next,n--;if(this._head=a,this._size=n,a)a.previous=void 0;this._state++}addItemFirst(u){if(!this._head&&!this._tail)this._tail=u;else if(!this._head)throw Error("Invalid list");else u.next=this._head,this._head.previous=u;this._head=u,this._state++}addItemLast(u){if(!this._head&&!this._tail)this._head=u;else if(!this._tail)throw Error("Invalid list");else u.previous=this._tail,this._tail.next=u;this._tail=u,this._state++}removeItem(u){if(u===this._head&&u===this._tail)this._head=void 0,this._tail=void 0;else if(u===this._head){if(!u.next)throw Error("Invalid list");u.next.previous=void 0,this._head=u.next}else if(u===this._tail){if(!u.previous)throw Error("Invalid list");u.previous.next=void 0,this._tail=u.previous}else{let{next:a,previous:n}=u;if(!a||!n)throw Error("Invalid list");a.previous=n,n.next=a}u.next=void 0,u.previous=void 0,this._state++}touch(u,a){if(!this._head||!this._tail)throw Error("Invalid list");if(a!==t.First&&a!==t.Last)return;if(a===t.First){if(u===this._head)return;let{next:n,previous:o}=u;if(u===this._tail)o.next=void 0,this._tail=o;else n.previous=o,o.next=n;u.previous=void 0,u.next=this._head,this._head.previous=u,this._head=u,this._state++}else if(a===t.Last){if(u===this._tail)return;let{next:n,previous:o}=u;if(u===this._head)n.previous=void 0,this._head=n;else n.previous=o,o.next=n;u.next=void 0,u.previous=this._tail,this._tail.next=u,this._tail=u,this._state++}}toJSON(){let u=[];return this.forEach((a,n)=>{u.push([n,a])}),u}fromJSON(u){this.clear();for(let[a,n]of u)this.set(a,n)}};A.LinkedMap=r;var i=class extends r{static{G(this,"LRUCache")}constructor(u,a=1){super();this._limit=u,this._ratio=Math.min(Math.max(0,a),1)}get limit(){return this._limit}set limit(u){this._limit=u,this.checkTrim()}get ratio(){return this._ratio}set ratio(u){this._ratio=Math.min(Math.max(0,u),1),this.checkTrim()}get(u,a=t.AsNew){return super.get(u,a)}peek(u){return super.get(u,t.None)}set(u,a){return super.set(u,a,t.Last),this.checkTrim(),this}checkTrim(){if(this.size>this._limit)this.trimOld(Math.round(this._limit*this._ratio))}};A.LRUCache=i}}),w2t=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/disposable.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.Disposable=void 0;var e;(function(t){function r(i){return{dispose:i}}G(r,"create"),t.create=r})(e||(A.Disposable=e={}))}}),b2t=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.SharedArrayReceiverStrategy=A.SharedArraySenderStrategy=void 0;var e=PK(),t;(function(n){n.Continue=0,n.Cancelled=1})(t||(t={}));var r=class{static{G(this,"SharedArraySenderStrategy")}constructor(){this.buffers=new Map}enableCancellation(n){if(n.id===null)return;let o=new SharedArrayBuffer(4),s=new Int32Array(o,0,1);s[0]=t.Continue,this.buffers.set(n.id,o),n.$cancellationData=o}async sendCancellation(n,o){let s=this.buffers.get(o);if(s===void 0)return;let l=new Int32Array(s,0,1);Atomics.store(l,0,t.Cancelled)}cleanup(n){this.buffers.delete(n)}dispose(){this.buffers.clear()}};A.SharedArraySenderStrategy=r;var i=class{static{G(this,"SharedArrayBufferCancellationToken")}constructor(n){this.data=new Int32Array(n,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===t.Cancelled}get onCancellationRequested(){throw Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},u=class{static{G(this,"SharedArrayBufferCancellationTokenSource")}constructor(n){this.token=new i(n)}cancel(){}dispose(){}},a=class{static{G(this,"SharedArrayReceiverStrategy")}constructor(){this.kind="request"}createCancellationTokenSource(n){let o=n.$cancellationData;if(o===void 0)return new e.CancellationTokenSource;return new u(o)}};A.SharedArrayReceiverStrategy=a}}),z_A=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.Semaphore=void 0;var e=q3(),t=class{static{G(this,"Semaphore")}constructor(r=1){if(r<=0)throw Error("Capacity must be greater than 0");this._capacity=r,this._active=0,this._waiting=[]}lock(r){return new Promise((i,u)=>{this._waiting.push({thunk:r,resolve:i,reject:u}),this.runNext()})}get active(){return this._active}runNext(){if(this._waiting.length===0||this._active===this._capacity)return;(0,e.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let r=this._waiting.shift();if(this._active++,this._active>this._capacity)throw Error("To many thunks active");try{let i=r.thunk();if(i instanceof Promise)i.then((u)=>{this._active--,r.resolve(u),this.runNext()},(u)=>{this._active--,r.reject(u),this.runNext()});else this._active--,r.resolve(i),this.runNext()}catch(i){this._active--,r.reject(i),this.runNext()}}};A.Semaphore=t}}),v2t=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ReadableStreamMessageReader=A.AbstractMessageReader=A.MessageReader=void 0;var e=q3(),t=bx(),r=l6(),i=z_A(),u;(function(s){function l(g){let C=g;return C&&t.func(C.listen)&&t.func(C.dispose)&&t.func(C.onError)&&t.func(C.onClose)&&t.func(C.onPartialMessage)}G(l,"is"),s.is=l})(u||(A.MessageReader=u={}));var a=class{static{G(this,"AbstractMessageReader")}constructor(){this.errorEmitter=new r.Emitter,this.closeEmitter=new r.Emitter,this.partialMessageEmitter=new r.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(s){this.errorEmitter.fire(this.asError(s))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(s){this.partialMessageEmitter.fire(s)}asError(s){if(s instanceof Error)return s;else return Error(`Reader received error. Reason: ${t.string(s.message)?s.message:"unknown"}`)}};A.AbstractMessageReader=a;var n;(function(s){function l(g){let C,B,E,d=new Map,I,h=new Map;if(g===void 0||typeof g==="string")C=g??"utf-8";else{if(C=g.charset??"utf-8",g.contentDecoder!==void 0)E=g.contentDecoder,d.set(E.name,E);if(g.contentDecoders!==void 0)for(let Q of g.contentDecoders)d.set(Q.name,Q);if(g.contentTypeDecoder!==void 0)I=g.contentTypeDecoder,h.set(I.name,I);if(g.contentTypeDecoders!==void 0)for(let Q of g.contentTypeDecoders)h.set(Q.name,Q)}if(I===void 0)I=(0,e.default)().applicationJson.decoder,h.set(I.name,I);return{charset:C,contentDecoder:E,contentDecoders:d,contentTypeDecoder:I,contentTypeDecoders:h}}G(l,"fromOptions"),s.fromOptions=l})(n||(n={}));var o=class extends a{static{G(this,"ReadableStreamMessageReader")}constructor(s,l){super();this.readable=s,this.options=n.fromOptions(l),this.buffer=(0,e.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new i.Semaphore(1)}set partialMessageTimeout(s){this._partialMessageTimeout=s}get partialMessageTimeout(){return this._partialMessageTimeout}listen(s){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=s;let l=this.readable.onData((g)=>{this.onData(g)});return this.readable.onError((g)=>this.fireError(g)),this.readable.onClose(()=>this.fireClose()),l}onData(s){try{this.buffer.append(s);while(!0){if(this.nextMessageLength===-1){let g=this.buffer.tryReadHeaders(!0);if(!g)return;let C=g.get("content-length");if(!C){this.fireError(Error(`Header must provide a Content-Length property.
|
||
${JSON.stringify(Object.fromEntries(g))}`));return}let B=parseInt(C);if(isNaN(B)){this.fireError(Error(`Content-Length value must be a number. Got ${C}`));return}this.nextMessageLength=B}let l=this.buffer.tryReadBody(this.nextMessageLength);if(l===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let g=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(l):l,C=await this.options.contentTypeDecoder.decode(g,this.options);this.callback(C)}).catch((g)=>{this.fireError(g)})}}catch(l){this.fireError(l)}}clearPartialMessageTimer(){if(this.partialMessageTimer)this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0}setPartialMessageTimer(){if(this.clearPartialMessageTimer(),this._partialMessageTimeout<=0)return;this.partialMessageTimer=(0,e.default)().timer.setTimeout((s,l)=>{if(this.partialMessageTimer=void 0,s===this.messageToken)this.firePartialMessage({messageToken:s,waitingTime:l}),this.setPartialMessageTimer()},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout)}};A.ReadableStreamMessageReader=o}}),k2t=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.WriteableStreamMessageWriter=A.AbstractMessageWriter=A.MessageWriter=void 0;var e=q3(),t=bx(),r=z_A(),i=l6(),u="Content-Length: ",a=`\r
|
||
`,n;(function(g){function C(B){let E=B;return E&&t.func(E.dispose)&&t.func(E.onClose)&&t.func(E.onError)&&t.func(E.write)}G(C,"is"),g.is=C})(n||(A.MessageWriter=n={}));var o=class{static{G(this,"AbstractMessageWriter")}constructor(){this.errorEmitter=new i.Emitter,this.closeEmitter=new i.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(g,C,B){this.errorEmitter.fire([this.asError(g),C,B])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(g){if(g instanceof Error)return g;else return Error(`Writer received error. Reason: ${t.string(g.message)?g.message:"unknown"}`)}};A.AbstractMessageWriter=o;var s;(function(g){function C(B){if(B===void 0||typeof B==="string")return{charset:B??"utf-8",contentTypeEncoder:(0,e.default)().applicationJson.encoder};else return{charset:B.charset??"utf-8",contentEncoder:B.contentEncoder,contentTypeEncoder:B.contentTypeEncoder??(0,e.default)().applicationJson.encoder}}G(C,"fromOptions"),g.fromOptions=C})(s||(s={}));var l=class extends o{static{G(this,"WriteableStreamMessageWriter")}constructor(g,C){super();this.writable=g,this.options=s.fromOptions(C),this.errorCount=0,this.writeSemaphore=new r.Semaphore(1),this.writable.onError((B)=>this.fireError(B)),this.writable.onClose(()=>this.fireClose())}async write(g){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(g,this.options).then((B)=>{if(this.options.contentEncoder!==void 0)return this.options.contentEncoder.encode(B);else return B}).then((B)=>{let E=[];return E.push(u,B.byteLength.toString(),a),E.push(a),this.doWrite(g,E,B)},(B)=>{throw this.fireError(B),B}))}async doWrite(g,C,B){try{return await this.writable.write(C.join(""),"ascii"),this.writable.write(B)}catch(E){return this.handleError(E,g),Promise.reject(E)}}handleError(g,C){this.errorCount++,this.fireError(g,C,this.errorCount)}end(){this.writable.end()}};A.WriteableStreamMessageWriter=l}}),F2t=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.AbstractMessageBuffer=void 0;var e=13,t=10,r=`\r
|
||
`,i=class{static{G(this,"AbstractMessageBuffer")}constructor(u="utf-8"){this._encoding=u,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(u){let a=typeof u==="string"?this.fromString(u,this._encoding):u;this._chunks.push(a),this._totalLength+=a.byteLength}tryReadHeaders(u=!1){if(this._chunks.length===0)return;let a=0,n=0,o=0,s=0;A:while(n<this._chunks.length){let B=this._chunks[n];o=0;e:while(o<B.length){switch(B[o]){case e:switch(a){case 0:a=1;break;case 2:a=3;break;default:a=0}break;case t:switch(a){case 1:a=2;break;case 3:a=4,o++;break A;default:a=0}break;default:a=0}o++}s+=B.byteLength,n++}if(a!==4)return;let l=this._read(s+o),g=new Map,C=this.toString(l,"ascii").split(r);if(C.length<2)return g;for(let B=0;B<C.length-2;B++){let E=C[B],d=E.indexOf(":");if(d===-1)throw Error(`Message header must separate key and value using ':'
|
||
${E}`);let I=E.substr(0,d),h=E.substr(d+1).trim();g.set(u?I.toLowerCase():I,h)}return g}tryReadBody(u){if(this._totalLength<u)return;return this._read(u)}get numberOfBytes(){return this._totalLength}_read(u){if(u===0)return this.emptyBuffer();if(u>this._totalLength)throw Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===u){let s=this._chunks[0];return this._chunks.shift(),this._totalLength-=u,this.asNative(s)}if(this._chunks[0].byteLength>u){let s=this._chunks[0],l=this.asNative(s,u);return this._chunks[0]=s.slice(u),this._totalLength-=u,l}let a=this.allocNative(u),n=0,o=0;while(u>0){let s=this._chunks[o];if(s.byteLength>u){let l=s.slice(0,u);a.set(l,n),n+=u,this._chunks[o]=s.slice(u),this._totalLength-=u,u-=u}else a.set(s,n),n+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,u-=s.byteLength}return a}};A.AbstractMessageBuffer=i}}),x2t=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/connection.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.createMessageConnection=A.ConnectionOptions=A.MessageStrategy=A.CancellationStrategy=A.CancellationSenderStrategy=A.CancellationReceiverStrategy=A.RequestCancellationReceiverStrategy=A.IdCancellationReceiverStrategy=A.ConnectionStrategy=A.ConnectionError=A.ConnectionErrors=A.LogTraceNotification=A.SetTraceNotification=A.TraceFormat=A.TraceValues=A.Trace=A.NullLogger=A.ProgressType=A.ProgressToken=void 0;var e=q3(),t=bx(),r=W_A(),i=q_A(),u=l6(),a=PK(),n;(function(k){k.type=new r.NotificationType("$/cancelRequest")})(n||(n={}));var o;(function(k){function T(R){return typeof R==="string"||typeof R==="number"}G(T,"is"),k.is=T})(o||(A.ProgressToken=o={}));var s;(function(k){k.type=new r.NotificationType("$/progress")})(s||(s={}));var l=class{static{G(this,"ProgressType")}constructor(){}};A.ProgressType=l;var g;(function(k){function T(R){return t.func(R)}G(T,"is"),k.is=T})(g||(g={})),A.NullLogger=Object.freeze({error:G(()=>{},"error"),warn:G(()=>{},"warn"),info:G(()=>{},"info"),log:G(()=>{},"log")});var C;(function(k){k[k.Off=0]="Off",k[k.Messages=1]="Messages",k[k.Compact=2]="Compact",k[k.Verbose=3]="Verbose"})(C||(A.Trace=C={}));var B;(function(k){k.Off="off",k.Messages="messages",k.Compact="compact",k.Verbose="verbose"})(B||(A.TraceValues=B={})),function(k){function T(L){if(!t.string(L))return k.Off;switch(L=L.toLowerCase(),L){case"off":return k.Off;case"messages":return k.Messages;case"compact":return k.Compact;case"verbose":return k.Verbose;default:return k.Off}}G(T,"fromString"),k.fromString=T;function R(L){switch(L){case k.Off:return"off";case k.Messages:return"messages";case k.Compact:return"compact";case k.Verbose:return"verbose";default:return"off"}}G(R,"toString"),k.toString=R}(C||(A.Trace=C={}));var E;(function(k){k.Text="text",k.JSON="json"})(E||(A.TraceFormat=E={})),function(k){function T(R){if(!t.string(R))return k.Text;if(R=R.toLowerCase(),R==="json")return k.JSON;else return k.Text}G(T,"fromString"),k.fromString=T}(E||(A.TraceFormat=E={}));var d;(function(k){k.type=new r.NotificationType("$/setTrace")})(d||(A.SetTraceNotification=d={}));var I;(function(k){k.type=new r.NotificationType("$/logTrace")})(I||(A.LogTraceNotification=I={}));var h;(function(k){k[k.Closed=1]="Closed",k[k.Disposed=2]="Disposed",k[k.AlreadyListening=3]="AlreadyListening"})(h||(A.ConnectionErrors=h={}));var Q=class k extends Error{static{G(this,"ConnectionError")}constructor(T,R){super(R);this.code=T,Object.setPrototypeOf(this,k.prototype)}};A.ConnectionError=Q;var p;(function(k){function T(R){let L=R;return L&&t.func(L.cancelUndispatched)}G(T,"is"),k.is=T})(p||(A.ConnectionStrategy=p={}));var m;(function(k){function T(R){let L=R;return L&&(L.kind===void 0||L.kind==="id")&&t.func(L.createCancellationTokenSource)&&(L.dispose===void 0||t.func(L.dispose))}G(T,"is"),k.is=T})(m||(A.IdCancellationReceiverStrategy=m={}));var f;(function(k){function T(R){let L=R;return L&&L.kind==="request"&&t.func(L.createCancellationTokenSource)&&(L.dispose===void 0||t.func(L.dispose))}G(T,"is"),k.is=T})(f||(A.RequestCancellationReceiverStrategy=f={}));var D;(function(k){k.Message=Object.freeze({createCancellationTokenSource(R){return new a.CancellationTokenSource}});function T(R){return m.is(R)||f.is(R)}G(T,"is"),k.is=T})(D||(A.CancellationReceiverStrategy=D={}));var w;(function(k){k.Message=Object.freeze({sendCancellation(R,L){return R.sendNotification(n.type,{id:L})},cleanup(R){}});function T(R){let L=R;return L&&t.func(L.sendCancellation)&&t.func(L.cleanup)}G(T,"is"),k.is=T})(w||(A.CancellationSenderStrategy=w={}));var b;(function(k){k.Message=Object.freeze({receiver:D.Message,sender:w.Message});function T(R){let L=R;return L&&D.is(L.receiver)&&w.is(L.sender)}G(T,"is"),k.is=T})(b||(A.CancellationStrategy=b={}));var F;(function(k){function T(R){let L=R;return L&&t.func(L.handleMessage)}G(T,"is"),k.is=T})(F||(A.MessageStrategy=F={}));var v;(function(k){function T(R){let L=R;return L&&(b.is(L.cancellationStrategy)||p.is(L.connectionStrategy)||F.is(L.messageStrategy))}G(T,"is"),k.is=T})(v||(A.ConnectionOptions=v={}));var S;(function(k){k[k.New=1]="New",k[k.Listening=2]="Listening",k[k.Closed=3]="Closed",k[k.Disposed=4]="Disposed"})(S||(S={}));function x(k,T,R,L){let M=R!==void 0?R:A.NullLogger,U=0,Y=0,H=0,J="2.0",K=void 0,O=new Map,_=void 0,z=new Map,j=new Map,q,CA=new i.LinkedMap,tA=new Map,lA=new Set,gA=new Map,aA=C.Off,RA=E.Text,wA,JA=S.New,TA=new u.Emitter,qA=new u.Emitter,BA=new u.Emitter,bA=new u.Emitter,FA=new u.Emitter,IA=L&&L.cancellationStrategy?L.cancellationStrategy:b.Message;function nA(NA){if(NA===null)throw Error("Can't send requests with id null since the response can't be correlated.");return"req-"+NA.toString()}G(nA,"createRequestQueueKey");function eA(NA){if(NA===null)return"res-unknown-"+(++H).toString();else return"res-"+NA.toString()}G(eA,"createResponseQueueKey");function EA(){return"not-"+(++Y).toString()}G(EA,"createNotificationQueueKey");function mA(NA,ce){if(r.Message.isRequest(ce))NA.set(nA(ce.id),ce);else if(r.Message.isResponse(ce))NA.set(eA(ce.id),ce);else NA.set(EA(),ce)}G(mA,"addMessageToQueue");function kA(NA){return}G(kA,"cancelUndispatched");function SA(){return JA===S.Listening}G(SA,"isListening");function YA(){return JA===S.Closed}G(YA,"isClosed");function dA(){return JA===S.Disposed}G(dA,"isDisposed");function W(){if(JA===S.New||JA===S.Listening)JA=S.Closed,qA.fire(void 0)}G(W,"closeHandler");function Z(NA){TA.fire([NA,void 0,void 0])}G(Z,"readErrorHandler");function pA(NA){TA.fire(NA)}G(pA,"writeErrorHandler"),k.onClose(W),k.onError(Z),T.onClose(W),T.onError(pA);function AA(){if(q||CA.size===0)return;q=(0,e.default)().timer.setImmediate(()=>{q=void 0,rA()})}G(AA,"triggerMessageQueue");function DA(NA){if(r.Message.isRequest(NA))_A(NA);else if(r.Message.isNotification(NA))WA(NA);else if(r.Message.isResponse(NA))zA(NA);else te(NA)}G(DA,"handleMessage");function rA(){if(CA.size===0)return;let NA=CA.shift();try{let ce=L?.messageStrategy;if(F.is(ce))ce.handleMessage(NA,DA);else DA(NA)}finally{AA()}}G(rA,"processMessageQueue");let KA=G((NA)=>{try{if(r.Message.isNotification(NA)&&NA.method===n.type.method){let ce=NA.params.id,me=nA(ce),Le=CA.get(me);if(r.Message.isRequest(Le)){let tt=L?.connectionStrategy,Ht=tt&&tt.cancelUndispatched?tt.cancelUndispatched(Le,kA):kA(Le);if(Ht&&(Ht.error!==void 0||Ht.result!==void 0)){CA.delete(me),gA.delete(ce),Ht.id=Le.id,oe(Ht,NA.method,Date.now()),T.write(Ht).catch(()=>M.error("Sending response for canceled message failed."));return}}let Lt=gA.get(ce);if(Lt!==void 0){Lt.cancel(),Pe(NA);return}else lA.add(ce)}mA(CA,NA)}finally{AA()}},"callback");function _A(NA){if(dA())return;function ce(It,Ct,Kt){let Ce={jsonrpc:J,id:NA.id};if(It instanceof r.ResponseError)Ce.error=It.toJson();else Ce.result=It===void 0?null:It;oe(Ce,Ct,Kt),T.write(Ce).catch(()=>M.error("Sending response failed."))}G(ce,"reply");function me(It,Ct,Kt){let Ce={jsonrpc:J,id:NA.id,error:It.toJson()};oe(Ce,Ct,Kt),T.write(Ce).catch(()=>M.error("Sending response failed."))}G(me,"replyError");function Le(It,Ct,Kt){if(It===void 0)It=null;let Ce={jsonrpc:J,id:NA.id,result:It};oe(Ce,Ct,Kt),T.write(Ce).catch(()=>M.error("Sending response failed."))}G(Le,"replySuccess"),vA(NA);let Lt=O.get(NA.method),tt,Ht;if(Lt)tt=Lt.type,Ht=Lt.handler;let lr=Date.now();if(Ht||K){let It=NA.id??String(Date.now()),Ct=m.is(IA.receiver)?IA.receiver.createCancellationTokenSource(It):IA.receiver.createCancellationTokenSource(NA);if(NA.id!==null&&lA.has(NA.id))Ct.cancel();if(NA.id!==null)gA.set(It,Ct);try{let Kt;if(Ht)if(NA.params===void 0){if(tt!==void 0&&tt.numberOfParams!==0){me(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${NA.method} defines ${tt.numberOfParams} params but received none.`),NA.method,lr);return}Kt=Ht(Ct.token)}else if(Array.isArray(NA.params)){if(tt!==void 0&&tt.parameterStructures===r.ParameterStructures.byName){me(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${NA.method} defines parameters by name but received parameters by position`),NA.method,lr);return}Kt=Ht(...NA.params,Ct.token)}else{if(tt!==void 0&&tt.parameterStructures===r.ParameterStructures.byPosition){me(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${NA.method} defines parameters by position but received parameters by name`),NA.method,lr);return}Kt=Ht(NA.params,Ct.token)}else if(K)Kt=K(NA.method,NA.params,Ct.token);let Ce=Kt;if(!Kt)gA.delete(It),Le(Kt,NA.method,lr);else if(Ce.then)Ce.then((De)=>{gA.delete(It),ce(De,NA.method,lr)},(De)=>{if(gA.delete(It),De instanceof r.ResponseError)me(De,NA.method,lr);else if(De&&t.string(De.message))me(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${NA.method} failed with message: ${De.message}`),NA.method,lr);else me(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${NA.method} failed unexpectedly without providing any details.`),NA.method,lr)});else gA.delete(It),ce(Kt,NA.method,lr)}catch(Kt){if(gA.delete(It),Kt instanceof r.ResponseError)ce(Kt,NA.method,lr);else if(Kt&&t.string(Kt.message))me(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${NA.method} failed with message: ${Kt.message}`),NA.method,lr);else me(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${NA.method} failed unexpectedly without providing any details.`),NA.method,lr)}}else me(new r.ResponseError(r.ErrorCodes.MethodNotFound,`Unhandled method ${NA.method}`),NA.method,lr)}G(_A,"handleRequest");function zA(NA){if(dA())return;if(NA.id===null)if(NA.error)M.error(`Received response message without id: Error is:
|
||
${JSON.stringify(NA.error,void 0,4)}`);else M.error("Received response message without id. No further error information provided.");else{let ce=NA.id,me=tA.get(ce);if(MA(NA,me),me!==void 0){tA.delete(ce);try{if(NA.error){let Le=NA.error;me.reject(new r.ResponseError(Le.code,Le.message,Le.data))}else if(NA.result!==void 0)me.resolve(NA.result);else throw Error("Should never happen.")}catch(Le){if(Le.message)M.error(`Response handler '${me.method}' failed with message: ${Le.message}`);else M.error(`Response handler '${me.method}' failed unexpectedly.`)}}}}G(zA,"handleResponse");function WA(NA){if(dA())return;let ce=void 0,me;if(NA.method===n.type.method){let Le=NA.params.id;lA.delete(Le),Pe(NA);return}else{let Le=z.get(NA.method);if(Le)me=Le.handler,ce=Le.type}if(me||_)try{if(Pe(NA),me)if(NA.params===void 0){if(ce!==void 0){if(ce.numberOfParams!==0&&ce.parameterStructures!==r.ParameterStructures.byName)M.error(`Notification ${NA.method} defines ${ce.numberOfParams} params but received none.`)}me()}else if(Array.isArray(NA.params)){let Le=NA.params;if(NA.method===s.type.method&&Le.length===2&&o.is(Le[0]))me({token:Le[0],value:Le[1]});else{if(ce!==void 0){if(ce.parameterStructures===r.ParameterStructures.byName)M.error(`Notification ${NA.method} defines parameters by name but received parameters by position`);if(ce.numberOfParams!==NA.params.length)M.error(`Notification ${NA.method} defines ${ce.numberOfParams} params but received ${Le.length} arguments`)}me(...Le)}}else{if(ce!==void 0&&ce.parameterStructures===r.ParameterStructures.byPosition)M.error(`Notification ${NA.method} defines parameters by position but received parameters by name`);me(NA.params)}else if(_)_(NA.method,NA.params)}catch(Le){if(Le.message)M.error(`Notification handler '${NA.method}' failed with message: ${Le.message}`);else M.error(`Notification handler '${NA.method}' failed unexpectedly.`)}else BA.fire(NA)}G(WA,"handleNotification");function te(NA){if(!NA){M.error("Received empty message.");return}M.error(`Received message which is neither a response nor a notification message:
|
||
${JSON.stringify(NA,null,4)}`);let ce=NA;if(t.string(ce.id)||t.number(ce.id)){let me=ce.id,Le=tA.get(me);if(Le)Le.reject(Error("The received response has neither a result nor an error property."))}}G(te,"handleInvalidMessage");function ZA(NA){if(NA===void 0||NA===null)return;switch(aA){case C.Verbose:return JSON.stringify(NA,null,4);case C.Compact:return JSON.stringify(NA);default:return}}G(ZA,"stringifyTrace");function ee(NA){if(aA===C.Off||!wA)return;if(RA===E.Text){let ce=void 0;if((aA===C.Verbose||aA===C.Compact)&&NA.params)ce=`Params: ${ZA(NA.params)}
|
||
|
||
`;wA.log(`Sending request '${NA.method} - (${NA.id})'.`,ce)}else ke("send-request",NA)}G(ee,"traceSendingRequest");function $A(NA){if(aA===C.Off||!wA)return;if(RA===E.Text){let ce=void 0;if(aA===C.Verbose||aA===C.Compact)if(NA.params)ce=`Params: ${ZA(NA.params)}
|
||
|
||
`;else ce=`No parameters provided.
|
||
|
||
`;wA.log(`Sending notification '${NA.method}'.`,ce)}else ke("send-notification",NA)}G($A,"traceSendingNotification");function oe(NA,ce,me){if(aA===C.Off||!wA)return;if(RA===E.Text){let Le=void 0;if(aA===C.Verbose||aA===C.Compact){if(NA.error&&NA.error.data)Le=`Error data: ${ZA(NA.error.data)}
|
||
|
||
`;else if(NA.result)Le=`Result: ${ZA(NA.result)}
|
||
|
||
`;else if(NA.error===void 0)Le=`No result returned.
|
||
|
||
`}wA.log(`Sending response '${ce} - (${NA.id})'. Processing request took ${Date.now()-me}ms`,Le)}else ke("send-response",NA)}G(oe,"traceSendingResponse");function vA(NA){if(aA===C.Off||!wA)return;if(RA===E.Text){let ce=void 0;if((aA===C.Verbose||aA===C.Compact)&&NA.params)ce=`Params: ${ZA(NA.params)}
|
||
|
||
`;wA.log(`Received request '${NA.method} - (${NA.id})'.`,ce)}else ke("receive-request",NA)}G(vA,"traceReceivedRequest");function Pe(NA){if(aA===C.Off||!wA||NA.method===I.type.method)return;if(RA===E.Text){let ce=void 0;if(aA===C.Verbose||aA===C.Compact)if(NA.params)ce=`Params: ${ZA(NA.params)}
|
||
|
||
`;else ce=`No parameters provided.
|
||
|
||
`;wA.log(`Received notification '${NA.method}'.`,ce)}else ke("receive-notification",NA)}G(Pe,"traceReceivedNotification");function MA(NA,ce){if(aA===C.Off||!wA)return;if(RA===E.Text){let me=void 0;if(aA===C.Verbose||aA===C.Compact){if(NA.error&&NA.error.data)me=`Error data: ${ZA(NA.error.data)}
|
||
|
||
`;else if(NA.result)me=`Result: ${ZA(NA.result)}
|
||
|
||
`;else if(NA.error===void 0)me=`No result returned.
|
||
|
||
`}if(ce){let Le=NA.error?` Request failed: ${NA.error.message} (${NA.error.code}).`:"";wA.log(`Received response '${ce.method} - (${NA.id})' in ${Date.now()-ce.timerStart}ms.${Le}`,me)}else wA.log(`Received response ${NA.id} without active response promise.`,me)}else ke("receive-response",NA)}G(MA,"traceReceivedResponse");function ke(NA,ce){if(!wA||aA===C.Off)return;let me={isLSPMessage:!0,type:NA,message:ce,timestamp:Date.now()};wA.log(me)}G(ke,"logLSPMessage");function We(){if(YA())throw new Q(h.Closed,"Connection is closed.");if(dA())throw new Q(h.Disposed,"Connection is disposed.")}G(We,"throwIfClosedOrDisposed");function se(){if(SA())throw new Q(h.AlreadyListening,"Connection is already listening")}G(se,"throwIfListening");function Te(){if(!SA())throw Error("Call listen() first.")}G(Te,"throwIfNotListening");function je(NA){if(NA===void 0)return null;else return NA}G(je,"undefinedToNull");function xe(NA){if(NA===null)return;else return NA}G(xe,"nullToUndefined");function yA(NA){return NA!==void 0&&NA!==null&&!Array.isArray(NA)&&typeof NA==="object"}G(yA,"isNamedParam");function Ne(NA,ce){switch(NA){case r.ParameterStructures.auto:if(yA(ce))return xe(ce);else return[je(ce)];case r.ParameterStructures.byName:if(!yA(ce))throw Error("Received parameters by name but param is not an object literal.");return xe(ce);case r.ParameterStructures.byPosition:return[je(ce)];default:throw Error(`Unknown parameter structure ${NA.toString()}`)}}G(Ne,"computeSingleParam");function He(NA,ce){let me,Le=NA.numberOfParams;switch(Le){case 0:me=void 0;break;case 1:me=Ne(NA.parameterStructures,ce[0]);break;default:me=[];for(let Lt=0;Lt<ce.length&&Lt<Le;Lt++)me.push(je(ce[Lt]));if(ce.length<Le)for(let Lt=ce.length;Lt<Le;Lt++)me.push(null);break}return me}G(He,"computeMessageParams");let de={sendNotification:G((NA,...ce)=>{We();let me,Le;if(t.string(NA)){me=NA;let tt=ce[0],Ht=0,lr=r.ParameterStructures.auto;if(r.ParameterStructures.is(tt))Ht=1,lr=tt;let It=ce.length,Ct=It-Ht;switch(Ct){case 0:Le=void 0;break;case 1:Le=Ne(lr,ce[Ht]);break;default:if(lr===r.ParameterStructures.byName)throw Error(`Received ${Ct} parameters for 'by Name' notification parameter structure.`);Le=ce.slice(Ht,It).map((Kt)=>je(Kt));break}}else{let tt=ce;me=NA.method,Le=He(NA,tt)}let Lt={jsonrpc:J,method:me,params:Le};return $A(Lt),T.write(Lt).catch((tt)=>{throw M.error("Sending notification failed."),tt})},"sendNotification"),onNotification:G((NA,ce)=>{We();let me;if(t.func(NA))_=NA;else if(ce)if(t.string(NA))me=NA,z.set(NA,{type:void 0,handler:ce});else me=NA.method,z.set(NA.method,{type:NA,handler:ce});return{dispose:G(()=>{if(me!==void 0)z.delete(me);else _=void 0},"dispose")}},"onNotification"),onProgress:G((NA,ce,me)=>{if(j.has(ce))throw Error(`Progress handler for token ${ce} already registered`);return j.set(ce,me),{dispose:G(()=>{j.delete(ce)},"dispose")}},"onProgress"),sendProgress:G((NA,ce,me)=>de.sendNotification(s.type,{token:ce,value:me}),"sendProgress"),onUnhandledProgress:bA.event,sendRequest:G((NA,...ce)=>{We(),Te();let me,Le,Lt=void 0;if(t.string(NA)){me=NA;let It=ce[0],Ct=ce[ce.length-1],Kt=0,Ce=r.ParameterStructures.auto;if(r.ParameterStructures.is(It))Kt=1,Ce=It;let De=ce.length;if(a.CancellationToken.is(Ct))De=De-1,Lt=Ct;let Ve=De-Kt;switch(Ve){case 0:Le=void 0;break;case 1:Le=Ne(Ce,ce[Kt]);break;default:if(Ce===r.ParameterStructures.byName)throw Error(`Received ${Ve} parameters for 'by Name' request parameter structure.`);Le=ce.slice(Kt,De).map((Vt)=>je(Vt));break}}else{let It=ce;me=NA.method,Le=He(NA,It);let Ct=NA.numberOfParams;Lt=a.CancellationToken.is(It[Ct])?It[Ct]:void 0}let tt=U++,Ht;if(Lt)Ht=Lt.onCancellationRequested(()=>{let It=IA.sender.sendCancellation(de,tt);if(It===void 0)return M.log(`Received no promise from cancellation strategy when cancelling id ${tt}`),Promise.resolve();else return It.catch(()=>{M.log(`Sending cancellation messages for id ${tt} failed`)})});let lr={jsonrpc:J,id:tt,method:me,params:Le};if(ee(lr),typeof IA.sender.enableCancellation==="function")IA.sender.enableCancellation(lr);return new Promise(async(It,Ct)=>{let Kt=G((Ve)=>{It(Ve),IA.sender.cleanup(tt),Ht?.dispose()},"resolveWithCleanup"),Ce=G((Ve)=>{Ct(Ve),IA.sender.cleanup(tt),Ht?.dispose()},"rejectWithCleanup"),De={method:me,timerStart:Date.now(),resolve:Kt,reject:Ce};try{await T.write(lr),tA.set(tt,De)}catch(Ve){throw M.error("Sending request failed."),De.reject(new r.ResponseError(r.ErrorCodes.MessageWriteError,Ve.message?Ve.message:"Unknown reason")),Ve}})},"sendRequest"),onRequest:G((NA,ce)=>{We();let me=null;if(g.is(NA))me=void 0,K=NA;else if(t.string(NA)){if(me=null,ce!==void 0)me=NA,O.set(NA,{handler:ce,type:void 0})}else if(ce!==void 0)me=NA.method,O.set(NA.method,{type:NA,handler:ce});return{dispose:G(()=>{if(me===null)return;if(me!==void 0)O.delete(me);else K=void 0},"dispose")}},"onRequest"),hasPendingResponse:G(()=>tA.size>0,"hasPendingResponse"),trace:G(async(NA,ce,me)=>{let Le=!1,Lt=E.Text;if(me!==void 0)if(t.boolean(me))Le=me;else Le=me.sendNotification||!1,Lt=me.traceFormat||E.Text;if(aA=NA,RA=Lt,aA===C.Off)wA=void 0;else wA=ce;if(Le&&!YA()&&!dA())await de.sendNotification(d.type,{value:C.toString(NA)})},"trace"),onError:TA.event,onClose:qA.event,onUnhandledNotification:BA.event,onDispose:FA.event,end:G(()=>{T.end()},"end"),dispose:G(()=>{if(dA())return;JA=S.Disposed,FA.fire(void 0);let NA=new r.ResponseError(r.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let ce of tA.values())ce.reject(NA);if(tA=new Map,gA=new Map,lA=new Set,CA=new i.LinkedMap,t.func(T.dispose))T.dispose();if(t.func(k.dispose))k.dispose()},"dispose"),listen:G(()=>{We(),se(),JA=S.Listening,k.listen(KA)},"listen"),inspect:G(()=>{(0,e.default)().console.log("inspect")},"inspect")};return de.onNotification(I.type,(NA)=>{if(aA===C.Off||!wA)return;let ce=aA===C.Verbose||aA===C.Compact;wA.log(NA.message,ce?NA.verbose:void 0)}),de.onNotification(s.type,(NA)=>{let ce=j.get(NA.token);if(ce)ce(NA.value);else bA.fire(NA)}),de}G(x,"createMessageConnection"),A.createMessageConnection=x}}),joA=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/api.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ProgressType=A.ProgressToken=A.createMessageConnection=A.NullLogger=A.ConnectionOptions=A.ConnectionStrategy=A.AbstractMessageBuffer=A.WriteableStreamMessageWriter=A.AbstractMessageWriter=A.MessageWriter=A.ReadableStreamMessageReader=A.AbstractMessageReader=A.MessageReader=A.SharedArrayReceiverStrategy=A.SharedArraySenderStrategy=A.CancellationToken=A.CancellationTokenSource=A.Emitter=A.Event=A.Disposable=A.LRUCache=A.Touch=A.LinkedMap=A.ParameterStructures=A.NotificationType9=A.NotificationType8=A.NotificationType7=A.NotificationType6=A.NotificationType5=A.NotificationType4=A.NotificationType3=A.NotificationType2=A.NotificationType1=A.NotificationType0=A.NotificationType=A.ErrorCodes=A.ResponseError=A.RequestType9=A.RequestType8=A.RequestType7=A.RequestType6=A.RequestType5=A.RequestType4=A.RequestType3=A.RequestType2=A.RequestType1=A.RequestType0=A.RequestType=A.Message=A.RAL=void 0,A.MessageStrategy=A.CancellationStrategy=A.CancellationSenderStrategy=A.CancellationReceiverStrategy=A.ConnectionError=A.ConnectionErrors=A.LogTraceNotification=A.SetTraceNotification=A.TraceFormat=A.TraceValues=A.Trace=void 0;var e=W_A();Object.defineProperty(A,"Message",{enumerable:!0,get:G(function(){return e.Message},"get")}),Object.defineProperty(A,"RequestType",{enumerable:!0,get:G(function(){return e.RequestType},"get")}),Object.defineProperty(A,"RequestType0",{enumerable:!0,get:G(function(){return e.RequestType0},"get")}),Object.defineProperty(A,"RequestType1",{enumerable:!0,get:G(function(){return e.RequestType1},"get")}),Object.defineProperty(A,"RequestType2",{enumerable:!0,get:G(function(){return e.RequestType2},"get")}),Object.defineProperty(A,"RequestType3",{enumerable:!0,get:G(function(){return e.RequestType3},"get")}),Object.defineProperty(A,"RequestType4",{enumerable:!0,get:G(function(){return e.RequestType4},"get")}),Object.defineProperty(A,"RequestType5",{enumerable:!0,get:G(function(){return e.RequestType5},"get")}),Object.defineProperty(A,"RequestType6",{enumerable:!0,get:G(function(){return e.RequestType6},"get")}),Object.defineProperty(A,"RequestType7",{enumerable:!0,get:G(function(){return e.RequestType7},"get")}),Object.defineProperty(A,"RequestType8",{enumerable:!0,get:G(function(){return e.RequestType8},"get")}),Object.defineProperty(A,"RequestType9",{enumerable:!0,get:G(function(){return e.RequestType9},"get")}),Object.defineProperty(A,"ResponseError",{enumerable:!0,get:G(function(){return e.ResponseError},"get")}),Object.defineProperty(A,"ErrorCodes",{enumerable:!0,get:G(function(){return e.ErrorCodes},"get")}),Object.defineProperty(A,"NotificationType",{enumerable:!0,get:G(function(){return e.NotificationType},"get")}),Object.defineProperty(A,"NotificationType0",{enumerable:!0,get:G(function(){return e.NotificationType0},"get")}),Object.defineProperty(A,"NotificationType1",{enumerable:!0,get:G(function(){return e.NotificationType1},"get")}),Object.defineProperty(A,"NotificationType2",{enumerable:!0,get:G(function(){return e.NotificationType2},"get")}),Object.defineProperty(A,"NotificationType3",{enumerable:!0,get:G(function(){return e.NotificationType3},"get")}),Object.defineProperty(A,"NotificationType4",{enumerable:!0,get:G(function(){return e.NotificationType4},"get")}),Object.defineProperty(A,"NotificationType5",{enumerable:!0,get:G(function(){return e.NotificationType5},"get")}),Object.defineProperty(A,"NotificationType6",{enumerable:!0,get:G(function(){return e.NotificationType6},"get")}),Object.defineProperty(A,"NotificationType7",{enumerable:!0,get:G(function(){return e.NotificationType7},"get")}),Object.defineProperty(A,"NotificationType8",{enumerable:!0,get:G(function(){return e.NotificationType8},"get")}),Object.defineProperty(A,"NotificationType9",{enumerable:!0,get:G(function(){return e.NotificationType9},"get")}),Object.defineProperty(A,"ParameterStructures",{enumerable:!0,get:G(function(){return e.ParameterStructures},"get")});var t=q_A();Object.defineProperty(A,"LinkedMap",{enumerable:!0,get:G(function(){return t.LinkedMap},"get")}),Object.defineProperty(A,"LRUCache",{enumerable:!0,get:G(function(){return t.LRUCache},"get")}),Object.defineProperty(A,"Touch",{enumerable:!0,get:G(function(){return t.Touch},"get")});var r=w2t();Object.defineProperty(A,"Disposable",{enumerable:!0,get:G(function(){return r.Disposable},"get")});var i=l6();Object.defineProperty(A,"Event",{enumerable:!0,get:G(function(){return i.Event},"get")}),Object.defineProperty(A,"Emitter",{enumerable:!0,get:G(function(){return i.Emitter},"get")});var u=PK();Object.defineProperty(A,"CancellationTokenSource",{enumerable:!0,get:G(function(){return u.CancellationTokenSource},"get")}),Object.defineProperty(A,"CancellationToken",{enumerable:!0,get:G(function(){return u.CancellationToken},"get")});var a=b2t();Object.defineProperty(A,"SharedArraySenderStrategy",{enumerable:!0,get:G(function(){return a.SharedArraySenderStrategy},"get")}),Object.defineProperty(A,"SharedArrayReceiverStrategy",{enumerable:!0,get:G(function(){return a.SharedArrayReceiverStrategy},"get")});var n=v2t();Object.defineProperty(A,"MessageReader",{enumerable:!0,get:G(function(){return n.MessageReader},"get")}),Object.defineProperty(A,"AbstractMessageReader",{enumerable:!0,get:G(function(){return n.AbstractMessageReader},"get")}),Object.defineProperty(A,"ReadableStreamMessageReader",{enumerable:!0,get:G(function(){return n.ReadableStreamMessageReader},"get")});var o=k2t();Object.defineProperty(A,"MessageWriter",{enumerable:!0,get:G(function(){return o.MessageWriter},"get")}),Object.defineProperty(A,"AbstractMessageWriter",{enumerable:!0,get:G(function(){return o.AbstractMessageWriter},"get")}),Object.defineProperty(A,"WriteableStreamMessageWriter",{enumerable:!0,get:G(function(){return o.WriteableStreamMessageWriter},"get")});var s=F2t();Object.defineProperty(A,"AbstractMessageBuffer",{enumerable:!0,get:G(function(){return s.AbstractMessageBuffer},"get")});var l=x2t();Object.defineProperty(A,"ConnectionStrategy",{enumerable:!0,get:G(function(){return l.ConnectionStrategy},"get")}),Object.defineProperty(A,"ConnectionOptions",{enumerable:!0,get:G(function(){return l.ConnectionOptions},"get")}),Object.defineProperty(A,"NullLogger",{enumerable:!0,get:G(function(){return l.NullLogger},"get")}),Object.defineProperty(A,"createMessageConnection",{enumerable:!0,get:G(function(){return l.createMessageConnection},"get")}),Object.defineProperty(A,"ProgressToken",{enumerable:!0,get:G(function(){return l.ProgressToken},"get")}),Object.defineProperty(A,"ProgressType",{enumerable:!0,get:G(function(){return l.ProgressType},"get")}),Object.defineProperty(A,"Trace",{enumerable:!0,get:G(function(){return l.Trace},"get")}),Object.defineProperty(A,"TraceValues",{enumerable:!0,get:G(function(){return l.TraceValues},"get")}),Object.defineProperty(A,"TraceFormat",{enumerable:!0,get:G(function(){return l.TraceFormat},"get")}),Object.defineProperty(A,"SetTraceNotification",{enumerable:!0,get:G(function(){return l.SetTraceNotification},"get")}),Object.defineProperty(A,"LogTraceNotification",{enumerable:!0,get:G(function(){return l.LogTraceNotification},"get")}),Object.defineProperty(A,"ConnectionErrors",{enumerable:!0,get:G(function(){return l.ConnectionErrors},"get")}),Object.defineProperty(A,"ConnectionError",{enumerable:!0,get:G(function(){return l.ConnectionError},"get")}),Object.defineProperty(A,"CancellationReceiverStrategy",{enumerable:!0,get:G(function(){return l.CancellationReceiverStrategy},"get")}),Object.defineProperty(A,"CancellationSenderStrategy",{enumerable:!0,get:G(function(){return l.CancellationSenderStrategy},"get")}),Object.defineProperty(A,"CancellationStrategy",{enumerable:!0,get:G(function(){return l.CancellationStrategy},"get")}),Object.defineProperty(A,"MessageStrategy",{enumerable:!0,get:G(function(){return l.MessageStrategy},"get")});var g=q3();A.RAL=g.default}}),S2t=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/ril.js"(A){Object.defineProperty(A,"__esModule",{value:!0});var e=joA(),t=class o extends e.AbstractMessageBuffer{static{G(this,"MessageBuffer")}constructor(s="utf-8"){super(s);this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return o.emptyBuffer}fromString(s,l){return new TextEncoder().encode(s)}toString(s,l){if(l==="ascii")return this.asciiDecoder.decode(s);else return new TextDecoder(l).decode(s)}asNative(s,l){if(l===void 0)return s;else return s.slice(0,l)}allocNative(s){return new Uint8Array(s)}};t.emptyBuffer=new Uint8Array(0);var r=class{static{G(this,"ReadableStreamWrapper")}constructor(o){this.socket=o,this._onData=new e.Emitter,this._messageListener=(s)=>{s.data.arrayBuffer().then((g)=>{this._onData.fire(new Uint8Array(g))},()=>{(0,e.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(o){return this.socket.addEventListener("close",o),e.Disposable.create(()=>this.socket.removeEventListener("close",o))}onError(o){return this.socket.addEventListener("error",o),e.Disposable.create(()=>this.socket.removeEventListener("error",o))}onEnd(o){return this.socket.addEventListener("end",o),e.Disposable.create(()=>this.socket.removeEventListener("end",o))}onData(o){return this._onData.event(o)}},i=class{static{G(this,"WritableStreamWrapper")}constructor(o){this.socket=o}onClose(o){return this.socket.addEventListener("close",o),e.Disposable.create(()=>this.socket.removeEventListener("close",o))}onError(o){return this.socket.addEventListener("error",o),e.Disposable.create(()=>this.socket.removeEventListener("error",o))}onEnd(o){return this.socket.addEventListener("end",o),e.Disposable.create(()=>this.socket.removeEventListener("end",o))}write(o,s){if(typeof o==="string"){if(s!==void 0&&s!=="utf-8")throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${s}`);this.socket.send(o)}else this.socket.send(o);return Promise.resolve()}end(){this.socket.close()}},u=new TextEncoder,a=Object.freeze({messageBuffer:Object.freeze({create:G((o)=>new t(o),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:G((o,s)=>{if(s.charset!=="utf-8")throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${s.charset}`);return Promise.resolve(u.encode(JSON.stringify(o,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:G((o,s)=>{if(!(o instanceof Uint8Array))throw Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(s.charset).decode(o)))},"decode")})}),stream:Object.freeze({asReadableStream:G((o)=>new r(o),"asReadableStream"),asWritableStream:G((o)=>new i(o),"asWritableStream")}),console,timer:Object.freeze({setTimeout(o,s,...l){let g=setTimeout(o,s,...l);return{dispose:G(()=>clearTimeout(g),"dispose")}},setImmediate(o,...s){let l=setTimeout(o,0,...s);return{dispose:G(()=>clearTimeout(l),"dispose")}},setInterval(o,s,...l){let g=setInterval(o,s,...l);return{dispose:G(()=>clearInterval(g),"dispose")}}})});function n(){return a}G(n,"RIL"),function(o){function s(){e.RAL.install(a)}G(s,"install"),o.install=s}(n||(n={})),A.default=n}}),g6=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/main.js"(A){var e=A&&A.__createBinding||(Object.create?function(o,s,l,g){if(g===void 0)g=l;var C=Object.getOwnPropertyDescriptor(s,l);if(!C||("get"in C?!s.__esModule:C.writable||C.configurable))C={enumerable:!0,get:G(function(){return s[l]},"get")};Object.defineProperty(o,g,C)}:function(o,s,l,g){if(g===void 0)g=l;o[g]=s[l]}),t=A&&A.__exportStar||function(o,s){for(var l in o)if(l!=="default"&&!Object.prototype.hasOwnProperty.call(s,l))e(s,o,l)};Object.defineProperty(A,"__esModule",{value:!0}),A.createMessageConnection=A.BrowserMessageWriter=A.BrowserMessageReader=void 0;var r=S2t();r.default.install();var i=joA();t(joA(),A);var u=class extends i.AbstractMessageReader{static{G(this,"BrowserMessageReader")}constructor(o){super();this._onData=new i.Emitter,this._messageListener=(s)=>{this._onData.fire(s.data)},o.addEventListener("error",(s)=>this.fireError(s)),o.onmessage=this._messageListener}listen(o){return this._onData.event(o)}};A.BrowserMessageReader=u;var a=class extends i.AbstractMessageWriter{static{G(this,"BrowserMessageWriter")}constructor(o){super();this.port=o,this.errorCount=0,o.addEventListener("error",(s)=>this.fireError(s))}write(o){try{return this.port.postMessage(o),Promise.resolve()}catch(s){return this.handleError(s,o),Promise.reject(s)}}handleError(o,s){this.errorCount++,this.fireError(o,s,this.errorCount)}end(){}};A.BrowserMessageWriter=a;function n(o,s,l,g){if(l===void 0)l=i.NullLogger;if(i.ConnectionStrategy.is(g))g={connectionStrategy:g};return(0,i.createMessageConnection)(o,s,l,g)}G(n,"createMessageConnection"),A.createMessageConnection=n}}),APA=Zr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/browser.js"(A,e){e.exports=g6()}}),Ua=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ProtocolNotificationType=A.ProtocolNotificationType0=A.ProtocolRequestType=A.ProtocolRequestType0=A.RegistrationType=A.MessageDirection=void 0;var e=g6(),t;(function(o){o.clientToServer="clientToServer",o.serverToClient="serverToClient",o.both="both"})(t||(A.MessageDirection=t={}));var r=class{static{G(this,"RegistrationType")}constructor(o){this.method=o}};A.RegistrationType=r;var i=class extends e.RequestType0{static{G(this,"ProtocolRequestType0")}constructor(o){super(o)}};A.ProtocolRequestType0=i;var u=class extends e.RequestType{static{G(this,"ProtocolRequestType")}constructor(o){super(o,e.ParameterStructures.byName)}};A.ProtocolRequestType=u;var a=class extends e.NotificationType0{static{G(this,"ProtocolNotificationType0")}constructor(o){super(o)}};A.ProtocolNotificationType0=a;var n=class extends e.NotificationType{static{G(this,"ProtocolNotificationType")}constructor(o){super(o,e.ParameterStructures.byName)}};A.ProtocolNotificationType=n}}),X0A=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.objectLiteral=A.typedArray=A.stringArray=A.array=A.func=A.error=A.number=A.string=A.boolean=void 0;function e(l){return l===!0||l===!1}G(e,"boolean"),A.boolean=e;function t(l){return typeof l==="string"||l instanceof String}G(t,"string"),A.string=t;function r(l){return typeof l==="number"||l instanceof Number}G(r,"number"),A.number=r;function i(l){return l instanceof Error}G(i,"error"),A.error=i;function u(l){return typeof l==="function"}G(u,"func"),A.func=u;function a(l){return Array.isArray(l)}G(a,"array"),A.array=a;function n(l){return a(l)&&l.every((g)=>t(g))}G(n,"stringArray"),A.stringArray=n;function o(l,g){return Array.isArray(l)&&l.every(g)}G(o,"typedArray"),A.typedArray=o;function s(l){return l!==null&&typeof l==="object"}G(s,"objectLiteral"),A.objectLiteral=s}}),L2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ImplementationRequest=void 0;var e=Ua(),t;(function(r){r.method="textDocument/implementation",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.ImplementationRequest=t={}))}}),R2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.TypeDefinitionRequest=void 0;var e=Ua(),t;(function(r){r.method="textDocument/typeDefinition",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.TypeDefinitionRequest=t={}))}}),N2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.DidChangeWorkspaceFoldersNotification=A.WorkspaceFoldersRequest=void 0;var e=Ua(),t;(function(i){i.method="workspace/workspaceFolders",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(t||(A.WorkspaceFoldersRequest=t={}));var r;(function(i){i.method="workspace/didChangeWorkspaceFolders",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolNotificationType(i.method)})(r||(A.DidChangeWorkspaceFoldersNotification=r={}))}}),G2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ConfigurationRequest=void 0;var e=Ua(),t;(function(r){r.method="workspace/configuration",r.messageDirection=e.MessageDirection.serverToClient,r.type=new e.ProtocolRequestType(r.method)})(t||(A.ConfigurationRequest=t={}))}}),U2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ColorPresentationRequest=A.DocumentColorRequest=void 0;var e=Ua(),t;(function(i){i.method="textDocument/documentColor",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(t||(A.DocumentColorRequest=t={}));var r;(function(i){i.method="textDocument/colorPresentation",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(r||(A.ColorPresentationRequest=r={}))}}),M2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.FoldingRangeRefreshRequest=A.FoldingRangeRequest=void 0;var e=Ua(),t;(function(i){i.method="textDocument/foldingRange",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(t||(A.FoldingRangeRequest=t={}));var r;(function(i){i.method="workspace/foldingRange/refresh",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(r||(A.FoldingRangeRefreshRequest=r={}))}}),T2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.DeclarationRequest=void 0;var e=Ua(),t;(function(r){r.method="textDocument/declaration",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.DeclarationRequest=t={}))}}),Y2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.SelectionRangeRequest=void 0;var e=Ua(),t;(function(r){r.method="textDocument/selectionRange",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.SelectionRangeRequest=t={}))}}),H2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.WorkDoneProgressCancelNotification=A.WorkDoneProgressCreateRequest=A.WorkDoneProgress=void 0;var e=g6(),t=Ua(),r;(function(a){a.type=new e.ProgressType;function n(o){return o===a.type}G(n,"is"),a.is=n})(r||(A.WorkDoneProgress=r={}));var i;(function(a){a.method="window/workDoneProgress/create",a.messageDirection=t.MessageDirection.serverToClient,a.type=new t.ProtocolRequestType(a.method)})(i||(A.WorkDoneProgressCreateRequest=i={}));var u;(function(a){a.method="window/workDoneProgress/cancel",a.messageDirection=t.MessageDirection.clientToServer,a.type=new t.ProtocolNotificationType(a.method)})(u||(A.WorkDoneProgressCancelNotification=u={}))}}),K2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.CallHierarchyOutgoingCallsRequest=A.CallHierarchyIncomingCallsRequest=A.CallHierarchyPrepareRequest=void 0;var e=Ua(),t;(function(u){u.method="textDocument/prepareCallHierarchy",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(t||(A.CallHierarchyPrepareRequest=t={}));var r;(function(u){u.method="callHierarchy/incomingCalls",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(r||(A.CallHierarchyIncomingCallsRequest=r={}));var i;(function(u){u.method="callHierarchy/outgoingCalls",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(i||(A.CallHierarchyOutgoingCallsRequest=i={}))}}),J2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.SemanticTokensRefreshRequest=A.SemanticTokensRangeRequest=A.SemanticTokensDeltaRequest=A.SemanticTokensRequest=A.SemanticTokensRegistrationType=A.TokenFormat=void 0;var e=Ua(),t;(function(o){o.Relative="relative"})(t||(A.TokenFormat=t={}));var r;(function(o){o.method="textDocument/semanticTokens",o.type=new e.RegistrationType(o.method)})(r||(A.SemanticTokensRegistrationType=r={}));var i;(function(o){o.method="textDocument/semanticTokens/full",o.messageDirection=e.MessageDirection.clientToServer,o.type=new e.ProtocolRequestType(o.method),o.registrationMethod=r.method})(i||(A.SemanticTokensRequest=i={}));var u;(function(o){o.method="textDocument/semanticTokens/full/delta",o.messageDirection=e.MessageDirection.clientToServer,o.type=new e.ProtocolRequestType(o.method),o.registrationMethod=r.method})(u||(A.SemanticTokensDeltaRequest=u={}));var a;(function(o){o.method="textDocument/semanticTokens/range",o.messageDirection=e.MessageDirection.clientToServer,o.type=new e.ProtocolRequestType(o.method),o.registrationMethod=r.method})(a||(A.SemanticTokensRangeRequest=a={}));var n;(function(o){o.method="workspace/semanticTokens/refresh",o.messageDirection=e.MessageDirection.serverToClient,o.type=new e.ProtocolRequestType0(o.method)})(n||(A.SemanticTokensRefreshRequest=n={}))}}),O2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ShowDocumentRequest=void 0;var e=Ua(),t;(function(r){r.method="window/showDocument",r.messageDirection=e.MessageDirection.serverToClient,r.type=new e.ProtocolRequestType(r.method)})(t||(A.ShowDocumentRequest=t={}))}}),P2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.LinkedEditingRangeRequest=void 0;var e=Ua(),t;(function(r){r.method="textDocument/linkedEditingRange",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.LinkedEditingRangeRequest=t={}))}}),_2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.WillDeleteFilesRequest=A.DidDeleteFilesNotification=A.DidRenameFilesNotification=A.WillRenameFilesRequest=A.DidCreateFilesNotification=A.WillCreateFilesRequest=A.FileOperationPatternKind=void 0;var e=Ua(),t;(function(s){s.file="file",s.folder="folder"})(t||(A.FileOperationPatternKind=t={}));var r;(function(s){s.method="workspace/willCreateFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolRequestType(s.method)})(r||(A.WillCreateFilesRequest=r={}));var i;(function(s){s.method="workspace/didCreateFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolNotificationType(s.method)})(i||(A.DidCreateFilesNotification=i={}));var u;(function(s){s.method="workspace/willRenameFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolRequestType(s.method)})(u||(A.WillRenameFilesRequest=u={}));var a;(function(s){s.method="workspace/didRenameFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolNotificationType(s.method)})(a||(A.DidRenameFilesNotification=a={}));var n;(function(s){s.method="workspace/didDeleteFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolNotificationType(s.method)})(n||(A.DidDeleteFilesNotification=n={}));var o;(function(s){s.method="workspace/willDeleteFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolRequestType(s.method)})(o||(A.WillDeleteFilesRequest=o={}))}}),W2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.MonikerRequest=A.MonikerKind=A.UniquenessLevel=void 0;var e=Ua(),t;(function(u){u.document="document",u.project="project",u.group="group",u.scheme="scheme",u.global="global"})(t||(A.UniquenessLevel=t={}));var r;(function(u){u.$import="import",u.$export="export",u.local="local"})(r||(A.MonikerKind=r={}));var i;(function(u){u.method="textDocument/moniker",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(i||(A.MonikerRequest=i={}))}}),q2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.TypeHierarchySubtypesRequest=A.TypeHierarchySupertypesRequest=A.TypeHierarchyPrepareRequest=void 0;var e=Ua(),t;(function(u){u.method="textDocument/prepareTypeHierarchy",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(t||(A.TypeHierarchyPrepareRequest=t={}));var r;(function(u){u.method="typeHierarchy/supertypes",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(r||(A.TypeHierarchySupertypesRequest=r={}));var i;(function(u){u.method="typeHierarchy/subtypes",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(i||(A.TypeHierarchySubtypesRequest=i={}))}}),z2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.InlineValueRefreshRequest=A.InlineValueRequest=void 0;var e=Ua(),t;(function(i){i.method="textDocument/inlineValue",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(t||(A.InlineValueRequest=t={}));var r;(function(i){i.method="workspace/inlineValue/refresh",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(r||(A.InlineValueRefreshRequest=r={}))}}),Z2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.InlayHintRefreshRequest=A.InlayHintResolveRequest=A.InlayHintRequest=void 0;var e=Ua(),t;(function(u){u.method="textDocument/inlayHint",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(t||(A.InlayHintRequest=t={}));var r;(function(u){u.method="inlayHint/resolve",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(r||(A.InlayHintResolveRequest=r={}));var i;(function(u){u.method="workspace/inlayHint/refresh",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolRequestType0(u.method)})(i||(A.InlayHintRefreshRequest=i={}))}}),V2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.DiagnosticRefreshRequest=A.WorkspaceDiagnosticRequest=A.DocumentDiagnosticRequest=A.DocumentDiagnosticReportKind=A.DiagnosticServerCancellationData=void 0;var e=g6(),t=X0A(),r=Ua(),i;(function(s){function l(g){let C=g;return C&&t.boolean(C.retriggerRequest)}G(l,"is"),s.is=l})(i||(A.DiagnosticServerCancellationData=i={}));var u;(function(s){s.Full="full",s.Unchanged="unchanged"})(u||(A.DocumentDiagnosticReportKind=u={}));var a;(function(s){s.method="textDocument/diagnostic",s.messageDirection=r.MessageDirection.clientToServer,s.type=new r.ProtocolRequestType(s.method),s.partialResult=new e.ProgressType})(a||(A.DocumentDiagnosticRequest=a={}));var n;(function(s){s.method="workspace/diagnostic",s.messageDirection=r.MessageDirection.clientToServer,s.type=new r.ProtocolRequestType(s.method),s.partialResult=new e.ProgressType})(n||(A.WorkspaceDiagnosticRequest=n={}));var o;(function(s){s.method="workspace/diagnostic/refresh",s.messageDirection=r.MessageDirection.serverToClient,s.type=new r.ProtocolRequestType0(s.method)})(o||(A.DiagnosticRefreshRequest=o={}))}}),j2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.DidCloseNotebookDocumentNotification=A.DidSaveNotebookDocumentNotification=A.DidChangeNotebookDocumentNotification=A.NotebookCellArrayChange=A.DidOpenNotebookDocumentNotification=A.NotebookDocumentSyncRegistrationType=A.NotebookDocument=A.NotebookCell=A.ExecutionSummary=A.NotebookCellKind=void 0;var e=(wx(),j0A(OK)),t=X0A(),r=Ua(),i;(function(E){E.Markup=1,E.Code=2;function d(I){return I===1||I===2}G(d,"is"),E.is=d})(i||(A.NotebookCellKind=i={}));var u;(function(E){function d(Q,p){let m={executionOrder:Q};if(p===!0||p===!1)m.success=p;return m}G(d,"create"),E.create=d;function I(Q){let p=Q;return t.objectLiteral(p)&&e.uinteger.is(p.executionOrder)&&(p.success===void 0||t.boolean(p.success))}G(I,"is"),E.is=I;function h(Q,p){if(Q===p)return!0;if(Q===null||Q===void 0||p===null||p===void 0)return!1;return Q.executionOrder===p.executionOrder&&Q.success===p.success}G(h,"equals"),E.equals=h})(u||(A.ExecutionSummary=u={}));var a;(function(E){function d(p,m){return{kind:p,document:m}}G(d,"create"),E.create=d;function I(p){let m=p;return t.objectLiteral(m)&&i.is(m.kind)&&e.DocumentUri.is(m.document)&&(m.metadata===void 0||t.objectLiteral(m.metadata))}G(I,"is"),E.is=I;function h(p,m){let f=new Set;if(p.document!==m.document)f.add("document");if(p.kind!==m.kind)f.add("kind");if(p.executionSummary!==m.executionSummary)f.add("executionSummary");if((p.metadata!==void 0||m.metadata!==void 0)&&!Q(p.metadata,m.metadata))f.add("metadata");if((p.executionSummary!==void 0||m.executionSummary!==void 0)&&!u.equals(p.executionSummary,m.executionSummary))f.add("executionSummary");return f}G(h,"diff"),E.diff=h;function Q(p,m){if(p===m)return!0;if(p===null||p===void 0||m===null||m===void 0)return!1;if(typeof p!==typeof m)return!1;if(typeof p!=="object")return!1;let f=Array.isArray(p),D=Array.isArray(m);if(f!==D)return!1;if(f&&D){if(p.length!==m.length)return!1;for(let w=0;w<p.length;w++)if(!Q(p[w],m[w]))return!1}if(t.objectLiteral(p)&&t.objectLiteral(m)){let w=Object.keys(p),b=Object.keys(m);if(w.length!==b.length)return!1;if(w.sort(),b.sort(),!Q(w,b))return!1;for(let F=0;F<w.length;F++){let v=w[F];if(!Q(p[v],m[v]))return!1}}return!0}G(Q,"equalsMetadata")})(a||(A.NotebookCell=a={}));var n;(function(E){function d(h,Q,p,m){return{uri:h,notebookType:Q,version:p,cells:m}}G(d,"create"),E.create=d;function I(h){let Q=h;return t.objectLiteral(Q)&&t.string(Q.uri)&&e.integer.is(Q.version)&&t.typedArray(Q.cells,a.is)}G(I,"is"),E.is=I})(n||(A.NotebookDocument=n={}));var o;(function(E){E.method="notebookDocument/sync",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.RegistrationType(E.method)})(o||(A.NotebookDocumentSyncRegistrationType=o={}));var s;(function(E){E.method="notebookDocument/didOpen",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.ProtocolNotificationType(E.method),E.registrationMethod=o.method})(s||(A.DidOpenNotebookDocumentNotification=s={}));var l;(function(E){function d(h){let Q=h;return t.objectLiteral(Q)&&e.uinteger.is(Q.start)&&e.uinteger.is(Q.deleteCount)&&(Q.cells===void 0||t.typedArray(Q.cells,a.is))}G(d,"is"),E.is=d;function I(h,Q,p){let m={start:h,deleteCount:Q};if(p!==void 0)m.cells=p;return m}G(I,"create"),E.create=I})(l||(A.NotebookCellArrayChange=l={}));var g;(function(E){E.method="notebookDocument/didChange",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.ProtocolNotificationType(E.method),E.registrationMethod=o.method})(g||(A.DidChangeNotebookDocumentNotification=g={}));var C;(function(E){E.method="notebookDocument/didSave",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.ProtocolNotificationType(E.method),E.registrationMethod=o.method})(C||(A.DidSaveNotebookDocumentNotification=C={}));var B;(function(E){E.method="notebookDocument/didClose",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.ProtocolNotificationType(E.method),E.registrationMethod=o.method})(B||(A.DidCloseNotebookDocumentNotification=B={}))}}),X2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.InlineCompletionRequest=void 0;var e=Ua(),t;(function(r){r.method="textDocument/inlineCompletion",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.InlineCompletionRequest=t={}))}}),$2t=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.WorkspaceSymbolRequest=A.CodeActionResolveRequest=A.CodeActionRequest=A.DocumentSymbolRequest=A.DocumentHighlightRequest=A.ReferencesRequest=A.DefinitionRequest=A.SignatureHelpRequest=A.SignatureHelpTriggerKind=A.HoverRequest=A.CompletionResolveRequest=A.CompletionRequest=A.CompletionTriggerKind=A.PublishDiagnosticsNotification=A.WatchKind=A.RelativePattern=A.FileChangeType=A.DidChangeWatchedFilesNotification=A.WillSaveTextDocumentWaitUntilRequest=A.WillSaveTextDocumentNotification=A.TextDocumentSaveReason=A.DidSaveTextDocumentNotification=A.DidCloseTextDocumentNotification=A.DidChangeTextDocumentNotification=A.TextDocumentContentChangeEvent=A.DidOpenTextDocumentNotification=A.TextDocumentSyncKind=A.TelemetryEventNotification=A.LogMessageNotification=A.ShowMessageRequest=A.ShowMessageNotification=A.MessageType=A.DidChangeConfigurationNotification=A.ExitNotification=A.ShutdownRequest=A.InitializedNotification=A.InitializeErrorCodes=A.InitializeRequest=A.WorkDoneProgressOptions=A.TextDocumentRegistrationOptions=A.StaticRegistrationOptions=A.PositionEncodingKind=A.FailureHandlingKind=A.ResourceOperationKind=A.UnregistrationRequest=A.RegistrationRequest=A.DocumentSelector=A.NotebookCellTextDocumentFilter=A.NotebookDocumentFilter=A.TextDocumentFilter=void 0,A.MonikerRequest=A.MonikerKind=A.UniquenessLevel=A.WillDeleteFilesRequest=A.DidDeleteFilesNotification=A.WillRenameFilesRequest=A.DidRenameFilesNotification=A.WillCreateFilesRequest=A.DidCreateFilesNotification=A.FileOperationPatternKind=A.LinkedEditingRangeRequest=A.ShowDocumentRequest=A.SemanticTokensRegistrationType=A.SemanticTokensRefreshRequest=A.SemanticTokensRangeRequest=A.SemanticTokensDeltaRequest=A.SemanticTokensRequest=A.TokenFormat=A.CallHierarchyPrepareRequest=A.CallHierarchyOutgoingCallsRequest=A.CallHierarchyIncomingCallsRequest=A.WorkDoneProgressCancelNotification=A.WorkDoneProgressCreateRequest=A.WorkDoneProgress=A.SelectionRangeRequest=A.DeclarationRequest=A.FoldingRangeRefreshRequest=A.FoldingRangeRequest=A.ColorPresentationRequest=A.DocumentColorRequest=A.ConfigurationRequest=A.DidChangeWorkspaceFoldersNotification=A.WorkspaceFoldersRequest=A.TypeDefinitionRequest=A.ImplementationRequest=A.ApplyWorkspaceEditRequest=A.ExecuteCommandRequest=A.PrepareRenameRequest=A.RenameRequest=A.PrepareSupportDefaultBehavior=A.DocumentOnTypeFormattingRequest=A.DocumentRangesFormattingRequest=A.DocumentRangeFormattingRequest=A.DocumentFormattingRequest=A.DocumentLinkResolveRequest=A.DocumentLinkRequest=A.CodeLensRefreshRequest=A.CodeLensResolveRequest=A.CodeLensRequest=A.WorkspaceSymbolResolveRequest=void 0,A.InlineCompletionRequest=A.DidCloseNotebookDocumentNotification=A.DidSaveNotebookDocumentNotification=A.DidChangeNotebookDocumentNotification=A.NotebookCellArrayChange=A.DidOpenNotebookDocumentNotification=A.NotebookDocumentSyncRegistrationType=A.NotebookDocument=A.NotebookCell=A.ExecutionSummary=A.NotebookCellKind=A.DiagnosticRefreshRequest=A.WorkspaceDiagnosticRequest=A.DocumentDiagnosticRequest=A.DocumentDiagnosticReportKind=A.DiagnosticServerCancellationData=A.InlayHintRefreshRequest=A.InlayHintResolveRequest=A.InlayHintRequest=A.InlineValueRefreshRequest=A.InlineValueRequest=A.TypeHierarchySupertypesRequest=A.TypeHierarchySubtypesRequest=A.TypeHierarchyPrepareRequest=void 0;var e=Ua(),t=(wx(),j0A(OK)),r=X0A(),i=L2t();Object.defineProperty(A,"ImplementationRequest",{enumerable:!0,get:G(function(){return i.ImplementationRequest},"get")});var u=R2t();Object.defineProperty(A,"TypeDefinitionRequest",{enumerable:!0,get:G(function(){return u.TypeDefinitionRequest},"get")});var a=N2t();Object.defineProperty(A,"WorkspaceFoldersRequest",{enumerable:!0,get:G(function(){return a.WorkspaceFoldersRequest},"get")}),Object.defineProperty(A,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:G(function(){return a.DidChangeWorkspaceFoldersNotification},"get")});var n=G2t();Object.defineProperty(A,"ConfigurationRequest",{enumerable:!0,get:G(function(){return n.ConfigurationRequest},"get")});var o=U2t();Object.defineProperty(A,"DocumentColorRequest",{enumerable:!0,get:G(function(){return o.DocumentColorRequest},"get")}),Object.defineProperty(A,"ColorPresentationRequest",{enumerable:!0,get:G(function(){return o.ColorPresentationRequest},"get")});var s=M2t();Object.defineProperty(A,"FoldingRangeRequest",{enumerable:!0,get:G(function(){return s.FoldingRangeRequest},"get")}),Object.defineProperty(A,"FoldingRangeRefreshRequest",{enumerable:!0,get:G(function(){return s.FoldingRangeRefreshRequest},"get")});var l=T2t();Object.defineProperty(A,"DeclarationRequest",{enumerable:!0,get:G(function(){return l.DeclarationRequest},"get")});var g=Y2t();Object.defineProperty(A,"SelectionRangeRequest",{enumerable:!0,get:G(function(){return g.SelectionRangeRequest},"get")});var C=H2t();Object.defineProperty(A,"WorkDoneProgress",{enumerable:!0,get:G(function(){return C.WorkDoneProgress},"get")}),Object.defineProperty(A,"WorkDoneProgressCreateRequest",{enumerable:!0,get:G(function(){return C.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(A,"WorkDoneProgressCancelNotification",{enumerable:!0,get:G(function(){return C.WorkDoneProgressCancelNotification},"get")});var B=K2t();Object.defineProperty(A,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:G(function(){return B.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(A,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:G(function(){return B.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(A,"CallHierarchyPrepareRequest",{enumerable:!0,get:G(function(){return B.CallHierarchyPrepareRequest},"get")});var E=J2t();Object.defineProperty(A,"TokenFormat",{enumerable:!0,get:G(function(){return E.TokenFormat},"get")}),Object.defineProperty(A,"SemanticTokensRequest",{enumerable:!0,get:G(function(){return E.SemanticTokensRequest},"get")}),Object.defineProperty(A,"SemanticTokensDeltaRequest",{enumerable:!0,get:G(function(){return E.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(A,"SemanticTokensRangeRequest",{enumerable:!0,get:G(function(){return E.SemanticTokensRangeRequest},"get")}),Object.defineProperty(A,"SemanticTokensRefreshRequest",{enumerable:!0,get:G(function(){return E.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(A,"SemanticTokensRegistrationType",{enumerable:!0,get:G(function(){return E.SemanticTokensRegistrationType},"get")});var d=O2t();Object.defineProperty(A,"ShowDocumentRequest",{enumerable:!0,get:G(function(){return d.ShowDocumentRequest},"get")});var I=P2t();Object.defineProperty(A,"LinkedEditingRangeRequest",{enumerable:!0,get:G(function(){return I.LinkedEditingRangeRequest},"get")});var h=_2t();Object.defineProperty(A,"FileOperationPatternKind",{enumerable:!0,get:G(function(){return h.FileOperationPatternKind},"get")}),Object.defineProperty(A,"DidCreateFilesNotification",{enumerable:!0,get:G(function(){return h.DidCreateFilesNotification},"get")}),Object.defineProperty(A,"WillCreateFilesRequest",{enumerable:!0,get:G(function(){return h.WillCreateFilesRequest},"get")}),Object.defineProperty(A,"DidRenameFilesNotification",{enumerable:!0,get:G(function(){return h.DidRenameFilesNotification},"get")}),Object.defineProperty(A,"WillRenameFilesRequest",{enumerable:!0,get:G(function(){return h.WillRenameFilesRequest},"get")}),Object.defineProperty(A,"DidDeleteFilesNotification",{enumerable:!0,get:G(function(){return h.DidDeleteFilesNotification},"get")}),Object.defineProperty(A,"WillDeleteFilesRequest",{enumerable:!0,get:G(function(){return h.WillDeleteFilesRequest},"get")});var Q=W2t();Object.defineProperty(A,"UniquenessLevel",{enumerable:!0,get:G(function(){return Q.UniquenessLevel},"get")}),Object.defineProperty(A,"MonikerKind",{enumerable:!0,get:G(function(){return Q.MonikerKind},"get")}),Object.defineProperty(A,"MonikerRequest",{enumerable:!0,get:G(function(){return Q.MonikerRequest},"get")});var p=q2t();Object.defineProperty(A,"TypeHierarchyPrepareRequest",{enumerable:!0,get:G(function(){return p.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(A,"TypeHierarchySubtypesRequest",{enumerable:!0,get:G(function(){return p.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(A,"TypeHierarchySupertypesRequest",{enumerable:!0,get:G(function(){return p.TypeHierarchySupertypesRequest},"get")});var m=z2t();Object.defineProperty(A,"InlineValueRequest",{enumerable:!0,get:G(function(){return m.InlineValueRequest},"get")}),Object.defineProperty(A,"InlineValueRefreshRequest",{enumerable:!0,get:G(function(){return m.InlineValueRefreshRequest},"get")});var f=Z2t();Object.defineProperty(A,"InlayHintRequest",{enumerable:!0,get:G(function(){return f.InlayHintRequest},"get")}),Object.defineProperty(A,"InlayHintResolveRequest",{enumerable:!0,get:G(function(){return f.InlayHintResolveRequest},"get")}),Object.defineProperty(A,"InlayHintRefreshRequest",{enumerable:!0,get:G(function(){return f.InlayHintRefreshRequest},"get")});var D=V2t();Object.defineProperty(A,"DiagnosticServerCancellationData",{enumerable:!0,get:G(function(){return D.DiagnosticServerCancellationData},"get")}),Object.defineProperty(A,"DocumentDiagnosticReportKind",{enumerable:!0,get:G(function(){return D.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(A,"DocumentDiagnosticRequest",{enumerable:!0,get:G(function(){return D.DocumentDiagnosticRequest},"get")}),Object.defineProperty(A,"WorkspaceDiagnosticRequest",{enumerable:!0,get:G(function(){return D.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(A,"DiagnosticRefreshRequest",{enumerable:!0,get:G(function(){return D.DiagnosticRefreshRequest},"get")});var w=j2t();Object.defineProperty(A,"NotebookCellKind",{enumerable:!0,get:G(function(){return w.NotebookCellKind},"get")}),Object.defineProperty(A,"ExecutionSummary",{enumerable:!0,get:G(function(){return w.ExecutionSummary},"get")}),Object.defineProperty(A,"NotebookCell",{enumerable:!0,get:G(function(){return w.NotebookCell},"get")}),Object.defineProperty(A,"NotebookDocument",{enumerable:!0,get:G(function(){return w.NotebookDocument},"get")}),Object.defineProperty(A,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:G(function(){return w.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(A,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:G(function(){return w.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(A,"NotebookCellArrayChange",{enumerable:!0,get:G(function(){return w.NotebookCellArrayChange},"get")}),Object.defineProperty(A,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:G(function(){return w.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(A,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:G(function(){return w.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(A,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:G(function(){return w.DidCloseNotebookDocumentNotification},"get")});var b=X2t();Object.defineProperty(A,"InlineCompletionRequest",{enumerable:!0,get:G(function(){return b.InlineCompletionRequest},"get")});var F;(function(yA){function Ne(He){let de=He;return r.string(de)||(r.string(de.language)||r.string(de.scheme)||r.string(de.pattern))}G(Ne,"is"),yA.is=Ne})(F||(A.TextDocumentFilter=F={}));var v;(function(yA){function Ne(He){let de=He;return r.objectLiteral(de)&&(r.string(de.notebookType)||r.string(de.scheme)||r.string(de.pattern))}G(Ne,"is"),yA.is=Ne})(v||(A.NotebookDocumentFilter=v={}));var S;(function(yA){function Ne(He){let de=He;return r.objectLiteral(de)&&(r.string(de.notebook)||v.is(de.notebook))&&(de.language===void 0||r.string(de.language))}G(Ne,"is"),yA.is=Ne})(S||(A.NotebookCellTextDocumentFilter=S={}));var x;(function(yA){function Ne(He){if(!Array.isArray(He))return!1;for(let de of He)if(!r.string(de)&&!F.is(de)&&!S.is(de))return!1;return!0}G(Ne,"is"),yA.is=Ne})(x||(A.DocumentSelector=x={}));var k;(function(yA){yA.method="client/registerCapability",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolRequestType(yA.method)})(k||(A.RegistrationRequest=k={}));var T;(function(yA){yA.method="client/unregisterCapability",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolRequestType(yA.method)})(T||(A.UnregistrationRequest=T={}));var R;(function(yA){yA.Create="create",yA.Rename="rename",yA.Delete="delete"})(R||(A.ResourceOperationKind=R={}));var L;(function(yA){yA.Abort="abort",yA.Transactional="transactional",yA.TextOnlyTransactional="textOnlyTransactional",yA.Undo="undo"})(L||(A.FailureHandlingKind=L={}));var M;(function(yA){yA.UTF8="utf-8",yA.UTF16="utf-16",yA.UTF32="utf-32"})(M||(A.PositionEncodingKind=M={}));var U;(function(yA){function Ne(He){let de=He;return de&&r.string(de.id)&&de.id.length>0}G(Ne,"hasId"),yA.hasId=Ne})(U||(A.StaticRegistrationOptions=U={}));var Y;(function(yA){function Ne(He){let de=He;return de&&(de.documentSelector===null||x.is(de.documentSelector))}G(Ne,"is"),yA.is=Ne})(Y||(A.TextDocumentRegistrationOptions=Y={}));var H;(function(yA){function Ne(de){let NA=de;return r.objectLiteral(NA)&&(NA.workDoneProgress===void 0||r.boolean(NA.workDoneProgress))}G(Ne,"is"),yA.is=Ne;function He(de){let NA=de;return NA&&r.boolean(NA.workDoneProgress)}G(He,"hasWorkDoneProgress"),yA.hasWorkDoneProgress=He})(H||(A.WorkDoneProgressOptions=H={}));var J;(function(yA){yA.method="initialize",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(J||(A.InitializeRequest=J={}));var K;(function(yA){yA.unknownProtocolVersion=1})(K||(A.InitializeErrorCodes=K={}));var O;(function(yA){yA.method="initialized",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType(yA.method)})(O||(A.InitializedNotification=O={}));var _;(function(yA){yA.method="shutdown",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType0(yA.method)})(_||(A.ShutdownRequest=_={}));var z;(function(yA){yA.method="exit",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType0(yA.method)})(z||(A.ExitNotification=z={}));var j;(function(yA){yA.method="workspace/didChangeConfiguration",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType(yA.method)})(j||(A.DidChangeConfigurationNotification=j={}));var q;(function(yA){yA.Error=1,yA.Warning=2,yA.Info=3,yA.Log=4,yA.Debug=5})(q||(A.MessageType=q={}));var CA;(function(yA){yA.method="window/showMessage",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolNotificationType(yA.method)})(CA||(A.ShowMessageNotification=CA={}));var tA;(function(yA){yA.method="window/showMessageRequest",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolRequestType(yA.method)})(tA||(A.ShowMessageRequest=tA={}));var lA;(function(yA){yA.method="window/logMessage",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolNotificationType(yA.method)})(lA||(A.LogMessageNotification=lA={}));var gA;(function(yA){yA.method="telemetry/event",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolNotificationType(yA.method)})(gA||(A.TelemetryEventNotification=gA={}));var aA;(function(yA){yA.None=0,yA.Full=1,yA.Incremental=2})(aA||(A.TextDocumentSyncKind=aA={}));var RA;(function(yA){yA.method="textDocument/didOpen",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType(yA.method)})(RA||(A.DidOpenTextDocumentNotification=RA={}));var wA;(function(yA){function Ne(de){let NA=de;return NA!==void 0&&NA!==null&&typeof NA.text==="string"&&NA.range!==void 0&&(NA.rangeLength===void 0||typeof NA.rangeLength==="number")}G(Ne,"isIncremental"),yA.isIncremental=Ne;function He(de){let NA=de;return NA!==void 0&&NA!==null&&typeof NA.text==="string"&&NA.range===void 0&&NA.rangeLength===void 0}G(He,"isFull"),yA.isFull=He})(wA||(A.TextDocumentContentChangeEvent=wA={}));var JA;(function(yA){yA.method="textDocument/didChange",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType(yA.method)})(JA||(A.DidChangeTextDocumentNotification=JA={}));var TA;(function(yA){yA.method="textDocument/didClose",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType(yA.method)})(TA||(A.DidCloseTextDocumentNotification=TA={}));var qA;(function(yA){yA.method="textDocument/didSave",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType(yA.method)})(qA||(A.DidSaveTextDocumentNotification=qA={}));var BA;(function(yA){yA.Manual=1,yA.AfterDelay=2,yA.FocusOut=3})(BA||(A.TextDocumentSaveReason=BA={}));var bA;(function(yA){yA.method="textDocument/willSave",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType(yA.method)})(bA||(A.WillSaveTextDocumentNotification=bA={}));var FA;(function(yA){yA.method="textDocument/willSaveWaitUntil",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(FA||(A.WillSaveTextDocumentWaitUntilRequest=FA={}));var IA;(function(yA){yA.method="workspace/didChangeWatchedFiles",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolNotificationType(yA.method)})(IA||(A.DidChangeWatchedFilesNotification=IA={}));var nA;(function(yA){yA.Created=1,yA.Changed=2,yA.Deleted=3})(nA||(A.FileChangeType=nA={}));var eA;(function(yA){function Ne(He){let de=He;return r.objectLiteral(de)&&(t.URI.is(de.baseUri)||t.WorkspaceFolder.is(de.baseUri))&&r.string(de.pattern)}G(Ne,"is"),yA.is=Ne})(eA||(A.RelativePattern=eA={}));var EA;(function(yA){yA.Create=1,yA.Change=2,yA.Delete=4})(EA||(A.WatchKind=EA={}));var mA;(function(yA){yA.method="textDocument/publishDiagnostics",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolNotificationType(yA.method)})(mA||(A.PublishDiagnosticsNotification=mA={}));var kA;(function(yA){yA.Invoked=1,yA.TriggerCharacter=2,yA.TriggerForIncompleteCompletions=3})(kA||(A.CompletionTriggerKind=kA={}));var SA;(function(yA){yA.method="textDocument/completion",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(SA||(A.CompletionRequest=SA={}));var YA;(function(yA){yA.method="completionItem/resolve",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(YA||(A.CompletionResolveRequest=YA={}));var dA;(function(yA){yA.method="textDocument/hover",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(dA||(A.HoverRequest=dA={}));var W;(function(yA){yA.Invoked=1,yA.TriggerCharacter=2,yA.ContentChange=3})(W||(A.SignatureHelpTriggerKind=W={}));var Z;(function(yA){yA.method="textDocument/signatureHelp",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(Z||(A.SignatureHelpRequest=Z={}));var pA;(function(yA){yA.method="textDocument/definition",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(pA||(A.DefinitionRequest=pA={}));var AA;(function(yA){yA.method="textDocument/references",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(AA||(A.ReferencesRequest=AA={}));var DA;(function(yA){yA.method="textDocument/documentHighlight",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(DA||(A.DocumentHighlightRequest=DA={}));var rA;(function(yA){yA.method="textDocument/documentSymbol",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(rA||(A.DocumentSymbolRequest=rA={}));var KA;(function(yA){yA.method="textDocument/codeAction",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(KA||(A.CodeActionRequest=KA={}));var _A;(function(yA){yA.method="codeAction/resolve",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(_A||(A.CodeActionResolveRequest=_A={}));var zA;(function(yA){yA.method="workspace/symbol",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(zA||(A.WorkspaceSymbolRequest=zA={}));var WA;(function(yA){yA.method="workspaceSymbol/resolve",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(WA||(A.WorkspaceSymbolResolveRequest=WA={}));var te;(function(yA){yA.method="textDocument/codeLens",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(te||(A.CodeLensRequest=te={}));var ZA;(function(yA){yA.method="codeLens/resolve",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(ZA||(A.CodeLensResolveRequest=ZA={}));var ee;(function(yA){yA.method="workspace/codeLens/refresh",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolRequestType0(yA.method)})(ee||(A.CodeLensRefreshRequest=ee={}));var $A;(function(yA){yA.method="textDocument/documentLink",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})($A||(A.DocumentLinkRequest=$A={}));var oe;(function(yA){yA.method="documentLink/resolve",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(oe||(A.DocumentLinkResolveRequest=oe={}));var vA;(function(yA){yA.method="textDocument/formatting",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(vA||(A.DocumentFormattingRequest=vA={}));var Pe;(function(yA){yA.method="textDocument/rangeFormatting",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(Pe||(A.DocumentRangeFormattingRequest=Pe={}));var MA;(function(yA){yA.method="textDocument/rangesFormatting",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(MA||(A.DocumentRangesFormattingRequest=MA={}));var ke;(function(yA){yA.method="textDocument/onTypeFormatting",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(ke||(A.DocumentOnTypeFormattingRequest=ke={}));var We;(function(yA){yA.Identifier=1})(We||(A.PrepareSupportDefaultBehavior=We={}));var se;(function(yA){yA.method="textDocument/rename",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(se||(A.RenameRequest=se={}));var Te;(function(yA){yA.method="textDocument/prepareRename",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(Te||(A.PrepareRenameRequest=Te={}));var je;(function(yA){yA.method="workspace/executeCommand",yA.messageDirection=e.MessageDirection.clientToServer,yA.type=new e.ProtocolRequestType(yA.method)})(je||(A.ExecuteCommandRequest=je={}));var xe;(function(yA){yA.method="workspace/applyEdit",yA.messageDirection=e.MessageDirection.serverToClient,yA.type=new e.ProtocolRequestType("workspace/applyEdit")})(xe||(A.ApplyWorkspaceEditRequest=xe={}))}}),ADt=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.createProtocolConnection=void 0;var e=g6();function t(r,i,u,a){if(e.ConnectionStrategy.is(a))a={connectionStrategy:a};return(0,e.createMessageConnection)(r,i,u,a)}G(t,"createProtocolConnection"),A.createProtocolConnection=t}}),eDt=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/api.js"(A){var e=A&&A.__createBinding||(Object.create?function(u,a,n,o){if(o===void 0)o=n;var s=Object.getOwnPropertyDescriptor(a,n);if(!s||("get"in s?!a.__esModule:s.writable||s.configurable))s={enumerable:!0,get:G(function(){return a[n]},"get")};Object.defineProperty(u,o,s)}:function(u,a,n,o){if(o===void 0)o=n;u[o]=a[n]}),t=A&&A.__exportStar||function(u,a){for(var n in u)if(n!=="default"&&!Object.prototype.hasOwnProperty.call(a,n))e(a,u,n)};Object.defineProperty(A,"__esModule",{value:!0}),A.LSPErrorCodes=A.createProtocolConnection=void 0,t(g6(),A),t((wx(),j0A(OK)),A),t(Ua(),A),t($2t(),A);var r=ADt();Object.defineProperty(A,"createProtocolConnection",{enumerable:!0,get:G(function(){return r.createProtocolConnection},"get")});var i;(function(u){u.lspReservedErrorRangeStart=-32899,u.RequestFailed=-32803,u.ServerCancelled=-32802,u.ContentModified=-32801,u.RequestCancelled=-32800,u.lspReservedErrorRangeEnd=-32800})(i||(A.LSPErrorCodes=i={}))}}),tDt=Zr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/browser/main.js"(A){var e=A&&A.__createBinding||(Object.create?function(u,a,n,o){if(o===void 0)o=n;var s=Object.getOwnPropertyDescriptor(a,n);if(!s||("get"in s?!a.__esModule:s.writable||s.configurable))s={enumerable:!0,get:G(function(){return a[n]},"get")};Object.defineProperty(u,o,s)}:function(u,a,n,o){if(o===void 0)o=n;u[o]=a[n]}),t=A&&A.__exportStar||function(u,a){for(var n in u)if(n!=="default"&&!Object.prototype.hasOwnProperty.call(a,n))e(a,u,n)};Object.defineProperty(A,"__esModule",{value:!0}),A.createProtocolConnection=void 0;var r=APA();t(APA(),A),t(eDt(),A);function i(u,a,n,o){return(0,r.createMessageConnection)(u,a,n,o)}G(i,"createProtocolConnection"),A.createProtocolConnection=i}}),To={};o1(To,{AbstractAstReflection:()=>esA,AbstractCstNode:()=>rgA,AbstractLangiumParser:()=>ugA,AbstractParserErrorMessageProvider:()=>Nee,AbstractThreadedAsyncParser:()=>S7t,AstUtils:()=>tsA,BiMap:()=>uK,Cancellation:()=>Wu,CompositeCstNodeImpl:()=>HJ,ContextCache:()=>qJ,CstNodeBuilder:()=>See,CstUtils:()=>$0A,DEFAULT_TOKENIZE_OPTIONS:()=>DgA,DONE_RESULT:()=>bs,DatatypeSymbol:()=>eK,DefaultAstNodeDescriptionProvider:()=>lte,DefaultAstNodeLocator:()=>cte,DefaultAsyncParser:()=>xte,DefaultCommentProvider:()=>Fte,DefaultConfigurationProvider:()=>Cte,DefaultDocumentBuilder:()=>Bte,DefaultDocumentValidator:()=>ste,DefaultHydrator:()=>Lte,DefaultIndexManager:()=>Ete,DefaultJsonSerializer:()=>ute,DefaultLangiumDocumentFactory:()=>Vee,DefaultLangiumDocuments:()=>jee,DefaultLangiumProfiler:()=>U7t,DefaultLexer:()=>ygA,DefaultLexerErrorMessageProvider:()=>Ite,DefaultLinker:()=>Xee,DefaultNameProvider:()=>$ee,DefaultReferenceDescriptionProvider:()=>gte,DefaultReferences:()=>Ate,DefaultScopeComputation:()=>ete,DefaultScopeProvider:()=>ite,DefaultServiceRegistry:()=>ate,DefaultTokenBuilder:()=>OJ,DefaultValueConverter:()=>cgA,DefaultWorkspaceLock:()=>Ste,DefaultWorkspaceManager:()=>dte,Deferred:()=>sh,Disposable:()=>J3,DisposableCache:()=>WJ,DocumentCache:()=>rte,DocumentState:()=>li,DocumentValidator:()=>Qc,EMPTY_SCOPE:()=>v7t,EMPTY_STREAM:()=>$w,EmptyFileSystem:()=>Ji,EmptyFileSystemProvider:()=>Gte,ErrorWithLocation:()=>$K,GrammarAST:()=>j_A,GrammarUtils:()=>LsA,IndentationAwareLexer:()=>R7t,IndentationAwareTokenBuilder:()=>Nte,JSDocDocumentationProvider:()=>kte,LangiumCompletionParser:()=>Gee,LangiumParser:()=>Ree,LangiumParserErrorMessageProvider:()=>agA,LeafCstNodeImpl:()=>AK,LexingMode:()=>T3,MapScope:()=>b7t,Module:()=>S0A,MultiMap:()=>lh,MultiMapScope:()=>tte,OperationCancelled:()=>zE,ParserWorker:()=>L7t,ProfilingTask:()=>Mte,Reduction:()=>nx,RefResolving:()=>Q3,RegExpUtils:()=>NsA,RootCstNodeImpl:()=>igA,SimpleCache:()=>hgA,StreamImpl:()=>qE,StreamScope:()=>v0A,TextDocument:()=>rK,TreeStreamImpl:()=>A6,URI:()=>Ig,UriTrie:()=>dgA,UriUtils:()=>ks,VALIDATE_EACH_NODE:()=>ote,ValidationCategory:()=>aK,ValidationRegistry:()=>nte,ValueConverter:()=>_E,WorkspaceCache:()=>QgA,assertCondition:()=>RsA,assertUnreachable:()=>s1,createCompletionParser:()=>sgA,createDefaultCoreModule:()=>Fi,createDefaultSharedCoreModule:()=>xi,createGrammarConfig:()=>XsA,createLangiumParser:()=>lgA,createParser:()=>KJ,delayNextTick:()=>PJ,diagnosticData:()=>M3,eagerLoad:()=>SgA,getDiagnosticRange:()=>fgA,indentationBuilderDefaultOptions:()=>R0A,inject:()=>wr,interruptAndCheck:()=>Mo,isAstNode:()=>Hn,isAstNodeDescription:()=>AsA,isAstNodeWithComment:()=>pgA,isCompositeCstNode:()=>eh,isIMultiModeLexerDefinition:()=>VJ,isJSDoc:()=>bgA,isLeafCstNode:()=>z3,isLinkingError:()=>p3,isMultiReference:()=>ZE,isNamed:()=>IgA,isOperationCancelled:()=>Cm,isReference:()=>vs,isRootCstNode:()=>_K,isTokenTypeArray:()=>ZJ,isTokenTypeDictionary:()=>nK,loadGrammarFromJson:()=>Yo,parseJSDoc:()=>wgA,prepareLangiumParser:()=>ggA,setInterruptionPeriod:()=>CgA,startCancelableOperation:()=>_J,stream:()=>Qu,toDiagnosticData:()=>mgA,toDiagnosticSeverity:()=>jF});$0A={};o1($0A,{DefaultNameRegexp:()=>vsA,RangeComparison:()=>WE,compareRange:()=>wsA,findCommentNode:()=>ksA,findDeclarationNodeAtOffset:()=>dWA,findLeafNodeAtOffset:()=>XK,findLeafNodeBeforeOffset:()=>FsA,flattenCst:()=>EWA,getDatatypeNode:()=>BWA,getInteriorNodes:()=>QWA,getNextNode:()=>IWA,getPreviousNode:()=>SsA,getStartlineNode:()=>hWA,inRange:()=>bsA,isChildNode:()=>ysA,isCommentNode:()=>TH,streamCst:()=>i6,toDocumentSegment:()=>u6,tokenToRange:()=>ox});G(Hn,"isAstNode");G(vs,"isReference");G(ZE,"isMultiReference");G(AsA,"isAstNodeDescription");G(p3,"isLinkingError");esA=class{static{G(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(A){let e=this.types[A.container.$type];if(!e)throw Error(`Type ${A.container.$type||"undefined"} not found.`);let t=e.properties[A.property]?.referenceType;if(!t)throw Error(`Property ${A.property||"undefined"} of type ${A.container.$type} is not a reference.`);return t}getTypeMetaData(A){let e=this.types[A];if(!e)return{name:A,properties:{},superTypes:[]};return e}isInstance(A,e){return Hn(A)&&this.isSubtype(A.$type,e)}isSubtype(A,e){if(A===e)return!0;let t=this.subtypes[A];if(!t)t=this.subtypes[A]={};let r=t[e];if(r!==void 0)return r;else{let i=this.types[A],u=i?i.superTypes.some((a)=>this.isSubtype(a,e)):!1;return t[e]=u,u}}getAllSubTypes(A){let e=this.allSubtypes[A];if(e)return e;else{let t=this.getAllTypes(),r=[];for(let i of t)if(this.isSubtype(i,A))r.push(i);return this.allSubtypes[A]=r,r}}};G(eh,"isCompositeCstNode");G(z3,"isLeafCstNode");G(_K,"isRootCstNode");qE=class A{static{G(this,"StreamImpl")}constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){let e={state:this.startFn(),next:G(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){let e=this.iterator();return Boolean(e.next().done)}count(){let e=this.iterator(),t=0,r=e.next();while(!r.done)t++,r=e.next();return t}toArray(){let e=[],t=this.iterator(),r;do if(r=t.next(),r.value!==void 0)e.push(r.value);while(!r.done);return e}toSet(){return new Set(this)}toMap(e,t){let r=this.map((i)=>[e?e(i):i,t?t(i):i]);return new Map(r)}toString(){return this.join()}concat(e){return new A(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),(t)=>{let r;if(!t.firstDone){do if(r=this.nextFn(t.first),!r.done)return r;while(!r.done);t.firstDone=!0}do if(r=t.iterator.next(),!r.done)return r;while(!r.done);return bs})}join(e=","){let t=this.iterator(),r="",i,u=!1;do{if(i=t.next(),!i.done){if(u)r+=e;r+=Z_A(i.value)}u=!0}while(!i.done);return r}indexOf(e,t=0){let r=this.iterator(),i=0,u=r.next();while(!u.done){if(i>=t&&u.value===e)return i;u=r.next(),i++}return-1}every(e){let t=this.iterator(),r=t.next();while(!r.done){if(!e(r.value))return!1;r=t.next()}return!0}some(e){let t=this.iterator(),r=t.next();while(!r.done){if(e(r.value))return!0;r=t.next()}return!1}forEach(e){let t=this.iterator(),r=0,i=t.next();while(!i.done)e(i.value,r),i=t.next(),r++}map(e){return new A(this.startFn,(t)=>{let{done:r,value:i}=this.nextFn(t);if(r)return bs;else return{done:!1,value:e(i)}})}filter(e){return new A(this.startFn,(t)=>{let r;do if(r=this.nextFn(t),!r.done&&e(r.value))return r;while(!r.done);return bs})}nonNullable(){return this.filter((e)=>e!==void 0&&e!==null)}reduce(e,t){let r=this.iterator(),i=t,u=r.next();while(!u.done){if(i===void 0)i=u.value;else i=e(i,u.value);u=r.next()}return i}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,r){let i=e.next();if(i.done)return r;let u=this.recursiveReduce(e,t,r);if(u===void 0)return i.value;return t(u,i.value)}find(e){let t=this.iterator(),r=t.next();while(!r.done){if(e(r.value))return r.value;r=t.next()}return}findIndex(e){let t=this.iterator(),r=0,i=t.next();while(!i.done){if(e(i.value))return r;i=t.next(),r++}return-1}includes(e){let t=this.iterator(),r=t.next();while(!r.done){if(r.value===e)return!0;r=t.next()}return!1}flatMap(e){return new A(()=>({this:this.startFn()}),(t)=>{do{if(t.iterator){let u=t.iterator.next();if(u.done)t.iterator=void 0;else return u}let{done:r,value:i}=this.nextFn(t.this);if(!r){let u=e(i);if(ax(u))t.iterator=u[Symbol.iterator]();else return{done:!1,value:u}}}while(t.iterator);return bs})}flat(e){if(e===void 0)e=1;if(e<=0)return this;let t=e>1?this.flat(e-1):this;return new A(()=>({this:t.startFn()}),(r)=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:i,value:u}=t.nextFn(r.this);if(!i)if(ax(u))r.iterator=u[Symbol.iterator]();else return{done:!1,value:u}}while(r.iterator);return bs})}head(){let t=this.iterator().next();if(t.done)return;return t.value}tail(e=1){return new A(()=>{let t=this.startFn();for(let r=0;r<e;r++)if(this.nextFn(t).done)return t;return t},this.nextFn)}limit(e){return new A(()=>({size:0,state:this.startFn()}),(t)=>{if(t.size++,t.size>e)return bs;return this.nextFn(t.state)})}distinct(e){return new A(()=>({set:new Set,internalState:this.startFn()}),(t)=>{let r;do if(r=this.nextFn(t.internalState),!r.done){let i=e?e(r.value):r.value;if(!t.set.has(i))return t.set.add(i),r}while(!r.done);return bs})}exclude(e,t){let r=new Set;for(let i of e){let u=t?t(i):i;r.add(u)}return this.filter((i)=>{let u=t?t(i):i;return!r.has(u)})}};G(Z_A,"toString");G(ax,"isIterable");$w=new qE(()=>{return},()=>bs),bs=Object.freeze({done:!0,value:void 0});G(Qu,"stream");A6=class extends qE{static{G(this,"TreeStreamImpl")}constructor(A,e,t){super(()=>({iterators:t?.includeRoot?[[A][Symbol.iterator]()]:[e(A)[Symbol.iterator]()],pruned:!1}),(r)=>{if(r.pruned)r.iterators.pop(),r.pruned=!1;while(r.iterators.length>0){let u=r.iterators[r.iterators.length-1].next();if(u.done)r.iterators.pop();else return r.iterators.push(e(u.value)[Symbol.iterator]()),u}return bs})}iterator(){let A={state:this.startFn(),next:G(()=>this.nextFn(A.state),"next"),prune:G(()=>{A.state.pruned=!0},"prune"),[Symbol.iterator]:()=>A};return A}};(function(A){function e(u){return u.reduce((a,n)=>a+n,0)}G(e,"sum"),A.sum=e;function t(u){return u.reduce((a,n)=>a*n,0)}G(t,"product"),A.product=t;function r(u){return u.reduce((a,n)=>Math.min(a,n))}G(r,"min"),A.min=r;function i(u){return u.reduce((a,n)=>Math.max(a,n))}G(i,"max"),A.max=i})(nx||(nx={}));tsA={};o1(tsA,{assignMandatoryProperties:()=>rsA,copyAstNode:()=>yH,findRootNode:()=>Ww,getContainerOfType:()=>Z3,getDocument:()=>YC,getReferenceNodes:()=>mH,hasContainerOfType:()=>V_A,linkContentToContainer:()=>e6,streamAllContents:()=>gh,streamAst:()=>HC,streamContents:()=>vx,streamReferences:()=>t6});G(e6,"linkContentToContainer");G(Z3,"getContainerOfType");G(V_A,"hasContainerOfType");G(YC,"getDocument");G(Ww,"findRootNode");G(mH,"getReferenceNodes");G(vx,"streamContents");G(gh,"streamAllContents");G(HC,"streamAst");G(DH,"isAstNodeInRange");G(t6,"streamReferences");G(rsA,"assignMandatoryProperties");G(isA,"copyDefaultValue");G(yH,"copyAstNode");j_A={};o1(j_A,{AbstractElement:()=>ml,AbstractParserRule:()=>MF,AbstractRule:()=>Tw,AbstractType:()=>dg,Action:()=>Y4,Alternatives:()=>TF,ArrayLiteral:()=>wH,ArrayType:()=>bH,Assignment:()=>H4,BooleanLiteral:()=>vH,CharacterRange:()=>K4,Condition:()=>J4,Conjunction:()=>YF,CrossReference:()=>O4,Disjunction:()=>HF,EndOfFile:()=>kH,Grammar:()=>WI,GrammarImport:()=>FH,Group:()=>f3,InferredType:()=>xH,InfixRule:()=>PE,InfixRuleOperatorList:()=>KF,InfixRuleOperators:()=>SH,Interface:()=>Yw,Keyword:()=>Hw,LangiumGrammarAstReflection:()=>DsA,LangiumGrammarTerminals:()=>rDt,NamedArgument:()=>Kw,NegatedToken:()=>m3,Negation:()=>LH,NumberLiteral:()=>RH,Parameter:()=>Jw,ParameterReference:()=>NH,ParserRule:()=>NC,ReferenceType:()=>JF,RegexToken:()=>D3,ReturnType:()=>GH,RuleCall:()=>y3,SimpleType:()=>Ow,StringLiteral:()=>UH,TerminalAlternatives:()=>w3,TerminalElement:()=>Dl,TerminalGroup:()=>b3,TerminalRule:()=>qI,TerminalRuleCall:()=>v3,Type:()=>OF,TypeAttribute:()=>k3,TypeDefinition:()=>F3,UnionType:()=>MH,UnorderedGroup:()=>PF,UntilToken:()=>x3,ValueLiteral:()=>S3,Wildcard:()=>Pw,isAbstractElement:()=>WK,isAbstractParserRule:()=>V3,isAbstractRule:()=>X_A,isAbstractType:()=>$_A,isAction:()=>r1,isAlternatives:()=>qK,isArrayLiteral:()=>AWA,isArrayType:()=>usA,isAssignment:()=>th,isBooleanLiteral:()=>asA,isCharacterRange:()=>nsA,isCondition:()=>eWA,isConjunction:()=>osA,isCrossReference:()=>j3,isDisjunction:()=>ssA,isEndOfFile:()=>lsA,isGrammar:()=>tWA,isGrammarImport:()=>rWA,isGroup:()=>X3,isInferredType:()=>kx,isInfixRule:()=>r6,isInfixRuleOperatorList:()=>iWA,isInfixRuleOperators:()=>uWA,isInterface:()=>gsA,isKeyword:()=>rh,isNamedArgument:()=>aWA,isNegatedToken:()=>csA,isNegation:()=>CsA,isNumberLiteral:()=>nWA,isParameter:()=>oWA,isParameterReference:()=>BsA,isParserRule:()=>xs,isReferenceType:()=>EsA,isRegexToken:()=>dsA,isReturnType:()=>IsA,isRuleCall:()=>ih,isSimpleType:()=>zK,isStringLiteral:()=>sWA,isTerminalAlternatives:()=>hsA,isTerminalElement:()=>lWA,isTerminalGroup:()=>QsA,isTerminalRule:()=>Dc,isTerminalRuleCall:()=>ZK,isType:()=>VK,isTypeAttribute:()=>gWA,isTypeDefinition:()=>cWA,isUnionType:()=>psA,isUnorderedGroup:()=>jK,isUntilToken:()=>fsA,isValueLiteral:()=>CWA,isWildcard:()=>msA,reflection:()=>Br});rDt={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},ml={$type:"AbstractElement",cardinality:"cardinality"};G(WK,"isAbstractElement");MF={$type:"AbstractParserRule"};G(V3,"isAbstractParserRule");Tw={$type:"AbstractRule"};G(X_A,"isAbstractRule");dg={$type:"AbstractType"};G($_A,"isAbstractType");Y4={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};G(r1,"isAction");TF={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};G(qK,"isAlternatives");wH={$type:"ArrayLiteral",elements:"elements"};G(AWA,"isArrayLiteral");bH={$type:"ArrayType",elementType:"elementType"};G(usA,"isArrayType");H4={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};G(th,"isAssignment");vH={$type:"BooleanLiteral",true:"true"};G(asA,"isBooleanLiteral");K4={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};G(nsA,"isCharacterRange");J4={$type:"Condition"};G(eWA,"isCondition");YF={$type:"Conjunction",left:"left",right:"right"};G(osA,"isConjunction");O4={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};G(j3,"isCrossReference");HF={$type:"Disjunction",left:"left",right:"right"};G(ssA,"isDisjunction");kH={$type:"EndOfFile",cardinality:"cardinality"};G(lsA,"isEndOfFile");WI={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};G(tWA,"isGrammar");FH={$type:"GrammarImport",path:"path"};G(rWA,"isGrammarImport");f3={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};G(X3,"isGroup");xH={$type:"InferredType",name:"name"};G(kx,"isInferredType");PE={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};G(r6,"isInfixRule");KF={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};G(iWA,"isInfixRuleOperatorList");SH={$type:"InfixRuleOperators",precedences:"precedences"};G(uWA,"isInfixRuleOperators");Yw={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};G(gsA,"isInterface");Hw={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};G(rh,"isKeyword");Kw={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};G(aWA,"isNamedArgument");m3={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};G(csA,"isNegatedToken");LH={$type:"Negation",value:"value"};G(CsA,"isNegation");RH={$type:"NumberLiteral",value:"value"};G(nWA,"isNumberLiteral");Jw={$type:"Parameter",name:"name"};G(oWA,"isParameter");NH={$type:"ParameterReference",parameter:"parameter"};G(BsA,"isParameterReference");NC={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};G(xs,"isParserRule");JF={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};G(EsA,"isReferenceType");D3={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};G(dsA,"isRegexToken");GH={$type:"ReturnType",name:"name"};G(IsA,"isReturnType");y3={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};G(ih,"isRuleCall");Ow={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};G(zK,"isSimpleType");UH={$type:"StringLiteral",value:"value"};G(sWA,"isStringLiteral");w3={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};G(hsA,"isTerminalAlternatives");Dl={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};G(lWA,"isTerminalElement");b3={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};G(QsA,"isTerminalGroup");qI={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};G(Dc,"isTerminalRule");v3={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};G(ZK,"isTerminalRuleCall");OF={$type:"Type",name:"name",type:"type"};G(VK,"isType");k3={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};G(gWA,"isTypeAttribute");F3={$type:"TypeDefinition"};G(cWA,"isTypeDefinition");MH={$type:"UnionType",types:"types"};G(psA,"isUnionType");PF={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};G(jK,"isUnorderedGroup");x3={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};G(fsA,"isUntilToken");S3={$type:"ValueLiteral"};G(CWA,"isValueLiteral");Pw={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};G(msA,"isWildcard");DsA=class extends esA{static{G(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments);this.types={AbstractElement:{name:ml.$type,properties:{cardinality:{name:ml.cardinality}},superTypes:[]},AbstractParserRule:{name:MF.$type,properties:{},superTypes:[Tw.$type,dg.$type]},AbstractRule:{name:Tw.$type,properties:{},superTypes:[]},AbstractType:{name:dg.$type,properties:{},superTypes:[]},Action:{name:Y4.$type,properties:{cardinality:{name:Y4.cardinality},feature:{name:Y4.feature},inferredType:{name:Y4.inferredType},operator:{name:Y4.operator},type:{name:Y4.type,referenceType:dg.$type}},superTypes:[ml.$type]},Alternatives:{name:TF.$type,properties:{cardinality:{name:TF.cardinality},elements:{name:TF.elements,defaultValue:[]}},superTypes:[ml.$type]},ArrayLiteral:{name:wH.$type,properties:{elements:{name:wH.elements,defaultValue:[]}},superTypes:[S3.$type]},ArrayType:{name:bH.$type,properties:{elementType:{name:bH.elementType}},superTypes:[F3.$type]},Assignment:{name:H4.$type,properties:{cardinality:{name:H4.cardinality},feature:{name:H4.feature},operator:{name:H4.operator},predicate:{name:H4.predicate},terminal:{name:H4.terminal}},superTypes:[ml.$type]},BooleanLiteral:{name:vH.$type,properties:{true:{name:vH.true,defaultValue:!1}},superTypes:[J4.$type,S3.$type]},CharacterRange:{name:K4.$type,properties:{cardinality:{name:K4.cardinality},left:{name:K4.left},lookahead:{name:K4.lookahead},parenthesized:{name:K4.parenthesized,defaultValue:!1},right:{name:K4.right}},superTypes:[Dl.$type]},Condition:{name:J4.$type,properties:{},superTypes:[]},Conjunction:{name:YF.$type,properties:{left:{name:YF.left},right:{name:YF.right}},superTypes:[J4.$type]},CrossReference:{name:O4.$type,properties:{cardinality:{name:O4.cardinality},deprecatedSyntax:{name:O4.deprecatedSyntax,defaultValue:!1},isMulti:{name:O4.isMulti,defaultValue:!1},terminal:{name:O4.terminal},type:{name:O4.type,referenceType:dg.$type}},superTypes:[ml.$type]},Disjunction:{name:HF.$type,properties:{left:{name:HF.left},right:{name:HF.right}},superTypes:[J4.$type]},EndOfFile:{name:kH.$type,properties:{cardinality:{name:kH.cardinality}},superTypes:[ml.$type]},Grammar:{name:WI.$type,properties:{imports:{name:WI.imports,defaultValue:[]},interfaces:{name:WI.interfaces,defaultValue:[]},isDeclared:{name:WI.isDeclared,defaultValue:!1},name:{name:WI.name},rules:{name:WI.rules,defaultValue:[]},types:{name:WI.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:FH.$type,properties:{path:{name:FH.path}},superTypes:[]},Group:{name:f3.$type,properties:{cardinality:{name:f3.cardinality},elements:{name:f3.elements,defaultValue:[]},guardCondition:{name:f3.guardCondition},predicate:{name:f3.predicate}},superTypes:[ml.$type]},InferredType:{name:xH.$type,properties:{name:{name:xH.name}},superTypes:[dg.$type]},InfixRule:{name:PE.$type,properties:{call:{name:PE.call},dataType:{name:PE.dataType},inferredType:{name:PE.inferredType},name:{name:PE.name},operators:{name:PE.operators},parameters:{name:PE.parameters,defaultValue:[]},returnType:{name:PE.returnType,referenceType:dg.$type}},superTypes:[MF.$type]},InfixRuleOperatorList:{name:KF.$type,properties:{associativity:{name:KF.associativity},operators:{name:KF.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:SH.$type,properties:{precedences:{name:SH.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:Yw.$type,properties:{attributes:{name:Yw.attributes,defaultValue:[]},name:{name:Yw.name},superTypes:{name:Yw.superTypes,defaultValue:[],referenceType:dg.$type}},superTypes:[dg.$type]},Keyword:{name:Hw.$type,properties:{cardinality:{name:Hw.cardinality},predicate:{name:Hw.predicate},value:{name:Hw.value}},superTypes:[ml.$type]},NamedArgument:{name:Kw.$type,properties:{calledByName:{name:Kw.calledByName,defaultValue:!1},parameter:{name:Kw.parameter,referenceType:Jw.$type},value:{name:Kw.value}},superTypes:[]},NegatedToken:{name:m3.$type,properties:{cardinality:{name:m3.cardinality},lookahead:{name:m3.lookahead},parenthesized:{name:m3.parenthesized,defaultValue:!1},terminal:{name:m3.terminal}},superTypes:[Dl.$type]},Negation:{name:LH.$type,properties:{value:{name:LH.value}},superTypes:[J4.$type]},NumberLiteral:{name:RH.$type,properties:{value:{name:RH.value}},superTypes:[S3.$type]},Parameter:{name:Jw.$type,properties:{name:{name:Jw.name}},superTypes:[]},ParameterReference:{name:NH.$type,properties:{parameter:{name:NH.parameter,referenceType:Jw.$type}},superTypes:[J4.$type]},ParserRule:{name:NC.$type,properties:{dataType:{name:NC.dataType},definition:{name:NC.definition},entry:{name:NC.entry,defaultValue:!1},fragment:{name:NC.fragment,defaultValue:!1},inferredType:{name:NC.inferredType},name:{name:NC.name},parameters:{name:NC.parameters,defaultValue:[]},returnType:{name:NC.returnType,referenceType:dg.$type}},superTypes:[MF.$type]},ReferenceType:{name:JF.$type,properties:{isMulti:{name:JF.isMulti,defaultValue:!1},referenceType:{name:JF.referenceType}},superTypes:[F3.$type]},RegexToken:{name:D3.$type,properties:{cardinality:{name:D3.cardinality},lookahead:{name:D3.lookahead},parenthesized:{name:D3.parenthesized,defaultValue:!1},regex:{name:D3.regex}},superTypes:[Dl.$type]},ReturnType:{name:GH.$type,properties:{name:{name:GH.name}},superTypes:[]},RuleCall:{name:y3.$type,properties:{arguments:{name:y3.arguments,defaultValue:[]},cardinality:{name:y3.cardinality},predicate:{name:y3.predicate},rule:{name:y3.rule,referenceType:Tw.$type}},superTypes:[ml.$type]},SimpleType:{name:Ow.$type,properties:{primitiveType:{name:Ow.primitiveType},stringType:{name:Ow.stringType},typeRef:{name:Ow.typeRef,referenceType:dg.$type}},superTypes:[F3.$type]},StringLiteral:{name:UH.$type,properties:{value:{name:UH.value}},superTypes:[S3.$type]},TerminalAlternatives:{name:w3.$type,properties:{cardinality:{name:w3.cardinality},elements:{name:w3.elements,defaultValue:[]},lookahead:{name:w3.lookahead},parenthesized:{name:w3.parenthesized,defaultValue:!1}},superTypes:[Dl.$type]},TerminalElement:{name:Dl.$type,properties:{cardinality:{name:Dl.cardinality},lookahead:{name:Dl.lookahead},parenthesized:{name:Dl.parenthesized,defaultValue:!1}},superTypes:[ml.$type]},TerminalGroup:{name:b3.$type,properties:{cardinality:{name:b3.cardinality},elements:{name:b3.elements,defaultValue:[]},lookahead:{name:b3.lookahead},parenthesized:{name:b3.parenthesized,defaultValue:!1}},superTypes:[Dl.$type]},TerminalRule:{name:qI.$type,properties:{definition:{name:qI.definition},fragment:{name:qI.fragment,defaultValue:!1},hidden:{name:qI.hidden,defaultValue:!1},name:{name:qI.name},type:{name:qI.type}},superTypes:[Tw.$type]},TerminalRuleCall:{name:v3.$type,properties:{cardinality:{name:v3.cardinality},lookahead:{name:v3.lookahead},parenthesized:{name:v3.parenthesized,defaultValue:!1},rule:{name:v3.rule,referenceType:qI.$type}},superTypes:[Dl.$type]},Type:{name:OF.$type,properties:{name:{name:OF.name},type:{name:OF.type}},superTypes:[dg.$type]},TypeAttribute:{name:k3.$type,properties:{defaultValue:{name:k3.defaultValue},isOptional:{name:k3.isOptional,defaultValue:!1},name:{name:k3.name},type:{name:k3.type}},superTypes:[]},TypeDefinition:{name:F3.$type,properties:{},superTypes:[]},UnionType:{name:MH.$type,properties:{types:{name:MH.types,defaultValue:[]}},superTypes:[F3.$type]},UnorderedGroup:{name:PF.$type,properties:{cardinality:{name:PF.cardinality},elements:{name:PF.elements,defaultValue:[]}},superTypes:[ml.$type]},UntilToken:{name:x3.$type,properties:{cardinality:{name:x3.cardinality},lookahead:{name:x3.lookahead},parenthesized:{name:x3.parenthesized,defaultValue:!1},terminal:{name:x3.terminal}},superTypes:[Dl.$type]},ValueLiteral:{name:S3.$type,properties:{},superTypes:[]},Wildcard:{name:Pw.$type,properties:{cardinality:{name:Pw.cardinality},lookahead:{name:Pw.lookahead},parenthesized:{name:Pw.parenthesized,defaultValue:!1}},superTypes:[Dl.$type]}}}},Br=new DsA;G(BWA,"getDatatypeNode");G(i6,"streamCst");G(EWA,"flattenCst");G(ysA,"isChildNode");G(ox,"tokenToRange");G(u6,"toDocumentSegment");(function(A){A[A.Before=0]="Before",A[A.After=1]="After",A[A.OverlapFront=2]="OverlapFront",A[A.OverlapBack=3]="OverlapBack",A[A.Inside=4]="Inside",A[A.Outside=5]="Outside"})(WE||(WE={}));G(wsA,"compareRange");G(bsA,"inRange");vsA=/^[\w\p{L}]$/u;G(dWA,"findDeclarationNodeAtOffset");G(ksA,"findCommentNode");G(TH,"isCommentNode");G(XK,"findLeafNodeAtOffset");G(FsA,"findLeafNodeBeforeOffset");G(xsA,"binarySearch");G(SsA,"getPreviousNode");G(IWA,"getNextNode");G(hWA,"getStartlineNode");G(QWA,"getInteriorNodes");G(pWA,"getCommonParent");G(XoA,"getParentChain");LsA={};o1(LsA,{findAssignment:()=>_sA,findNameAssignment:()=>aJ,findNodeForKeyword:()=>PsA,findNodeForProperty:()=>rJ,findNodesForKeyword:()=>vWA,findNodesForKeywordInternal:()=>uJ,findNodesForProperty:()=>OsA,getActionAtElement:()=>qsA,getActionType:()=>ZsA,getAllReachableRules:()=>tJ,getAllRulesUsedForCrossReferences:()=>bWA,getCrossReferenceTerminal:()=>KsA,getEntryRule:()=>TsA,getExplicitRuleType:()=>xx,getHiddenRules:()=>YsA,getRuleType:()=>VsA,getRuleTypeName:()=>LWA,getTypeName:()=>O3,isArrayCardinality:()=>FWA,isArrayOperator:()=>xWA,isCommentTerminal:()=>JsA,isDataType:()=>SWA,isDataTypeRule:()=>Fx,isOptionalCardinality:()=>kWA,terminalRegex:()=>Sx});$K=class extends Error{static{G(this,"ErrorWithLocation")}constructor(A,e){super(A?`${e} at ${A.range.start.line}:${A.range.start.character}`:e)}};G(s1,"assertUnreachable");G(RsA,"assertCondition");NsA={};o1(NsA,{NEWLINE_REGEXP:()=>mWA,escapeRegExp:()=>c6,getTerminalParts:()=>yWA,isMultilineComment:()=>GsA,isWhitespace:()=>eJ,partialMatches:()=>UsA,partialRegExp:()=>MsA,whitespaceCharacters:()=>wWA});G(Sr,"cc");G(oH,"insertToSet");G(Uw,"addFlag");G(d3,"ASSERT_EXISTS");G(LF,"ASSERT_NEVER_REACH_HERE");G($oA,"isCharacter");YH=[];for(let A=Sr("0");A<=Sr("9");A++)YH.push(A);HH=[Sr("_")].concat(YH);for(let A=Sr("a");A<=Sr("z");A++)HH.push(A);for(let A=Sr("A");A<=Sr("Z");A++)HH.push(A);ePA=[Sr(" "),Sr("\f"),Sr(`
|
||
`),Sr("\r"),Sr("\t"),Sr("\v"),Sr("\t"),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr(" "),Sr("\u2028"),Sr("\u2029"),Sr(" "),Sr(" "),Sr(" "),Sr("\uFEFF")],iDt=/[0-9a-fA-F]/,MY=/[0-9]/,uDt=/[1-9]/,fWA=class{static{G(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(A){this.idx=A.idx,this.input=A.input,this.groupIdx=A.groupIdx}pattern(A){this.idx=0,this.input=A,this.groupIdx=0,this.consumeChar("/");let e=this.disjunction();this.consumeChar("/");let t={type:"Flags",loc:{begin:this.idx,end:A.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};while(this.isRegExpFlag())switch(this.popChar()){case"g":Uw(t,"global");break;case"i":Uw(t,"ignoreCase");break;case"m":Uw(t,"multiLine");break;case"u":Uw(t,"unicode");break;case"y":Uw(t,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:t,value:e,loc:this.loc(0)}}disjunction(){let A=[],e=this.idx;A.push(this.alternative());while(this.peekChar()==="|")this.consumeChar("|"),A.push(this.alternative());return{type:"Disjunction",value:A,loc:this.loc(e)}}alternative(){let A=[],e=this.idx;while(this.isTerm())A.push(this.term());return{type:"Alternative",value:A,loc:this.loc(e)}}term(){if(this.isAssertion())return this.assertion();else return this.atom()}assertion(){let A=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(A)};case"$":return{type:"EndAnchor",loc:this.loc(A)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(A)};case"B":return{type:"NonWordBoundary",loc:this.loc(A)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let e;switch(this.popChar()){case"=":e="Lookahead";break;case"!":e="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":e="Lookbehind";break;case"!":e="NegativeLookbehind"}break}}d3(e);let t=this.disjunction();return this.consumeChar(")"),{type:e,value:t,loc:this.loc(A)}}return LF()}quantifier(A=!1){let e=void 0,t=this.idx;switch(this.popChar()){case"*":e={atLeast:0,atMost:1/0};break;case"+":e={atLeast:1,atMost:1/0};break;case"?":e={atLeast:0,atMost:1};break;case"{":let r=this.integerIncludingZero();switch(this.popChar()){case"}":e={atLeast:r,atMost:r};break;case",":let i;if(this.isDigit())i=this.integerIncludingZero(),e={atLeast:r,atMost:i};else e={atLeast:r,atMost:1/0};this.consumeChar("}");break}if(A===!0&&e===void 0)return;d3(e);break}if(A===!0&&e===void 0)return;if(d3(e)){if(this.peekChar(0)==="?")this.consumeChar("?"),e.greedy=!1;else e.greedy=!0;return e.type="Quantifier",e.loc=this.loc(t),e}}atom(){let A,e=this.idx;switch(this.peekChar()){case".":A=this.dotAll();break;case"\\":A=this.atomEscape();break;case"[":A=this.characterClass();break;case"(":A=this.group();break}if(A===void 0&&this.isPatternCharacter())A=this.patternCharacter();if(d3(A)){if(A.loc=this.loc(e),this.isQuantifier())A.quantifier=this.quantifier();return A}return LF()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[Sr(`
|
||
`),Sr("\r"),Sr("\u2028"),Sr("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let A,e=!1;switch(this.popChar()){case"d":A=YH;break;case"D":A=YH,e=!0;break;case"s":A=ePA;break;case"S":A=ePA,e=!0;break;case"w":A=HH;break;case"W":A=HH,e=!0;break}if(d3(A))return{type:"Set",value:A,complement:e};return LF()}controlEscapeAtom(){let A;switch(this.popChar()){case"f":A=Sr("\f");break;case"n":A=Sr(`
|
||
`);break;case"r":A=Sr("\r");break;case"t":A=Sr("\t");break;case"v":A=Sr("\v");break}if(d3(A))return{type:"Character",value:A};return LF()}controlLetterEscapeAtom(){this.consumeChar("c");let A=this.popChar();if(/[a-zA-Z]/.test(A)===!1)throw Error("Invalid ");return{type:"Character",value:A.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:Sr("\x00")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let A=this.popChar();return{type:"Character",value:Sr(A)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
|
||
`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let A=this.popChar();return{type:"Character",value:Sr(A)}}}characterClass(){let A=[],e=!1;if(this.consumeChar("["),this.peekChar(0)==="^")this.consumeChar("^"),e=!0;while(this.isClassAtom()){let t=this.classAtom(),r=t.type==="Character";if($oA(t)&&this.isRangeDash()){this.consumeChar("-");let i=this.classAtom(),u=i.type==="Character";if($oA(i)){if(i.value<t.value)throw Error("Range out of order in character class");A.push({from:t.value,to:i.value})}else oH(t.value,A),A.push(Sr("-")),oH(i.value,A)}else oH(t.value,A)}return this.consumeChar("]"),{type:"Set",complement:e,value:A}}classAtom(){switch(this.peekChar()){case"]":case`
|
||
`:case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:Sr("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let A=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),A=!1;break;default:this.groupIdx++;break}let e=this.disjunction();this.consumeChar(")");let t={type:"Group",capturing:A,value:e};if(A)t.idx=this.groupIdx;return t}positiveInteger(){let A=this.popChar();if(uDt.test(A)===!1)throw Error("Expecting a positive integer");while(MY.test(this.peekChar(0)))A+=this.popChar();return parseInt(A,10)}integerIncludingZero(){let A=this.popChar();if(MY.test(A)===!1)throw Error("Expecting an integer");while(MY.test(this.peekChar(0)))A+=this.popChar();return parseInt(A,10)}patternCharacter(){let A=this.popChar();switch(A){case`
|
||
`:case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:Sr(A)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return this.peekChar()==="-"&&this.isClassAtom(1)}isDigit(){return MY.test(this.peekChar(0))}isClassAtom(A=0){switch(this.peekChar(A)){case"]":case`
|
||
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return this.peekChar(1)==="?"&&(this.peekChar(2)==="="||this.peekChar(2)==="!"||this.peekChar(2)==="<"&&(this.peekChar(3)==="="||this.peekChar(3)==="!"));default:return!1}}isQuantifier(){let A=this.saveState();try{return this.quantifier(!0)!==void 0}catch(e){return!1}finally{this.restoreState(A)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case`
|
||
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(A){let e="";for(let r=0;r<A;r++){let i=this.popChar();if(iDt.test(i)===!1)throw Error("Expecting a HexDecimal digits");e+=i}return{type:"Character",value:parseInt(e,16)}}peekChar(A=0){return this.input[this.idx+A]}popChar(){let A=this.peekChar(0);return this.consumeChar(void 0),A}consumeChar(A){if(A!==void 0&&this.input[this.idx]!==A)throw Error("Expected: '"+A+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(A){return{begin:A,end:this.idx}}},AJ=class{static{G(this,"BaseRegExpVisitor")}visitChildren(A){for(let e in A){let t=A[e];if(A.hasOwnProperty(e)){if(t.type!==void 0)this.visit(t);else if(Array.isArray(t))t.forEach((r)=>{this.visit(r)},this)}}}visit(A){switch(A.type){case"Pattern":this.visitPattern(A);break;case"Flags":this.visitFlags(A);break;case"Disjunction":this.visitDisjunction(A);break;case"Alternative":this.visitAlternative(A);break;case"StartAnchor":this.visitStartAnchor(A);break;case"EndAnchor":this.visitEndAnchor(A);break;case"WordBoundary":this.visitWordBoundary(A);break;case"NonWordBoundary":this.visitNonWordBoundary(A);break;case"Lookahead":this.visitLookahead(A);break;case"NegativeLookahead":this.visitNegativeLookahead(A);break;case"Lookbehind":this.visitLookbehind(A);break;case"NegativeLookbehind":this.visitNegativeLookbehind(A);break;case"Character":this.visitCharacter(A);break;case"Set":this.visitSet(A);break;case"Group":this.visitGroup(A);break;case"GroupBackReference":this.visitGroupBackReference(A);break;case"Quantifier":this.visitQuantifier(A);break}this.visitChildren(A)}visitPattern(A){}visitFlags(A){}visitDisjunction(A){}visitAlternative(A){}visitStartAnchor(A){}visitEndAnchor(A){}visitWordBoundary(A){}visitNonWordBoundary(A){}visitLookahead(A){}visitNegativeLookahead(A){}visitLookbehind(A){}visitNegativeLookbehind(A){}visitCharacter(A){}visitSet(A){}visitGroup(A){}visitGroupBackReference(A){}visitQuantifier(A){}},mWA=/\r?\n/gm,DWA=new fWA,aDt=class extends AJ{static{G(this,"TerminalRegExpVisitor")}constructor(){super(...arguments);this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(A){this.multiline=!1,this.regex=A,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(A){if(A.quantifier)this.isStarting=!1,this.endRegexpStack=[]}visitCharacter(A){let e=String.fromCharCode(A.value);if(!this.multiline&&e===`
|
||
`)this.multiline=!0;if(A.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let t=c6(e);if(this.endRegexpStack.push(t),this.isStarting)this.startRegexp+=t}}visitSet(A){if(!this.multiline){let e=this.regex.substring(A.loc.begin,A.loc.end),t=new RegExp(e);this.multiline=Boolean(`
|
||
`.match(t))}if(A.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let e=this.regex.substring(A.loc.begin,A.loc.end);if(this.endRegexpStack.push(e),this.isStarting)this.startRegexp+=e}}visitChildren(A){if(A.type==="Group"){if(A.quantifier)return}super.visitChildren(A)}},G3=new aDt;G(yWA,"getTerminalParts");G(GsA,"isMultilineComment");wWA=`\f
|
||
\r \v \u2028\u2029 \uFEFF`.split("");G(eJ,"isWhitespace");G(c6,"escapeRegExp");G(UsA,"partialMatches");G(MsA,"partialRegExp");G(TsA,"getEntryRule");G(YsA,"getHiddenRules");G(tJ,"getAllReachableRules");G(HsA,"ruleDfs");G(bWA,"getAllRulesUsedForCrossReferences");G(KsA,"getCrossReferenceTerminal");G(JsA,"isCommentTerminal");G(OsA,"findNodesForProperty");G(rJ,"findNodeForProperty");G(iJ,"findNodesForPropertyInternal");G(vWA,"findNodesForKeyword");G(PsA,"findNodeForKeyword");G(uJ,"findNodesForKeywordInternal");G(_sA,"findAssignment");G(aJ,"findNameAssignment");G(WsA,"findNameAssignmentInternal");G(qsA,"getActionAtElement");G(kWA,"isOptionalCardinality");G(FWA,"isArrayCardinality");G(xWA,"isArrayOperator");G(Fx,"isDataTypeRule");G(zsA,"isDataTypeRuleInternal");G(SWA,"isDataType");G(KH,"isDataTypeInternal");G(xx,"getExplicitRuleType");G(O3,"getTypeName");G(ZsA,"getActionType");G(LWA,"getRuleTypeName");G(VsA,"getRuleType");G(Sx,"terminalRegex");jsA=/[\s\S]/.source;G($3,"abstractElementToRegex");G(RWA,"terminalAlternativesToRegex");G(NWA,"terminalGroupToRegex");G(GWA,"untilTokenToRegex");G(UWA,"negateTokenToRegex");G(MWA,"characterRangeToRegex");G(sH,"keywordToRegex");G(VE,"withCardinality");G(XsA,"createGrammarConfig");nDt=typeof global=="object"&&global&&global.Object===Object&&global,TWA=nDt,oDt=typeof self=="object"&&self&&self.Object===Object&&self,sDt=TWA||oDt||Function("return this")(),XE=sDt,lDt=XE.Symbol,fc=lDt,YWA=Object.prototype,gDt=YWA.hasOwnProperty,cDt=YWA.toString,IF=fc?fc.toStringTag:void 0;G(HWA,"getRawTag");CDt=HWA,BDt=Object.prototype,EDt=BDt.toString;G(KWA,"objectToString");dDt=KWA,tPA=fc?fc.toStringTag:void 0;G(JWA,"baseGetTag");l1=JWA;G(OWA,"isObjectLike");OC=OWA;G(PWA,"isSymbol");nJ=PWA;G(_WA,"arrayMap");Lx=_WA,pDt=Array.isArray,Ki=pDt,rPA=fc?fc.prototype:void 0,iPA=rPA?rPA.toString:void 0;G($sA,"baseToString");mDt=$sA,DDt=/\s/;G(WWA,"trimmedEndIndex");yDt=WWA,wDt=/^\s+/;G(qWA,"baseTrim");bDt=qWA;G(zWA,"isObject");mc=zWA,vDt=/^[-+]0x[0-9a-f]+$/i,kDt=/^0b[01]+$/i,FDt=/^0o[0-7]+$/i,xDt=parseInt;G(ZWA,"toNumber");SDt=ZWA;G(VWA,"toFinite");RDt=VWA;G(jWA,"toInteger");Rx=jWA;G(XWA,"identity");Nx=XWA;G($WA,"isFunction");ch=$WA,TDt=XE["__core-js_shared__"],xnA=TDt,nPA=function(){var A=/[^.]+$/.exec(xnA&&xnA.keys&&xnA.keys.IE_PROTO||"");return A?"Symbol(src)_1."+A:""}();G(AqA,"isMasked");YDt=AqA,HDt=Function.prototype,KDt=HDt.toString;G(eqA,"toSource");Am=eqA,JDt=/[\\^$.*+?()[\]{}|]/g,ODt=/^\[object .+?Constructor\]$/,PDt=Function.prototype,_Dt=Object.prototype,WDt=PDt.toString,qDt=_Dt.hasOwnProperty,zDt=RegExp("^"+WDt.call(qDt).replace(JDt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");G(tqA,"baseIsNative");ZDt=tqA;G(rqA,"getValue");VDt=rqA;G(iqA,"getNative");em=iqA,jDt=em(XE,"WeakMap"),A0A=jDt,oPA=Object.create,XDt=function(){function A(){}return G(A,"object"),function(e){if(!mc(e))return{};if(oPA)return oPA(e);A.prototype=e;var t=new A;return A.prototype=void 0,t}}(),$Dt=XDt;G(uqA,"apply");Ayt=uqA;G(aqA,"noop");Uo=aqA;G(nqA,"copyArray");eyt=nqA,iyt=Date.now;G(oqA,"shortOut");uyt=oqA;G(sqA,"constant");ayt=sqA,nyt=function(){try{var A=em(Object,"defineProperty");return A({},"",{}),A}catch(e){}}(),JH=nyt,oyt=!JH?Nx:function(A,e){return JH(A,"toString",{configurable:!0,enumerable:!1,value:ayt(e),writable:!0})},syt=oyt,lyt=uyt(syt),gyt=lyt;G(lqA,"arrayEach");gqA=lqA;G(cqA,"baseFindIndex");CqA=cqA;G(BqA,"baseIsNaN");cyt=BqA;G(EqA,"strictIndexOf");Cyt=EqA;G(dqA,"baseIndexOf");AlA=dqA;G(IqA,"arrayIncludes");hqA=IqA,Eyt=/^(?:0|[1-9]\d*)$/;G(QqA,"isIndex");oJ=QqA;G(pqA,"baseAssignValue");elA=pqA;G(fqA,"eq");Gx=fqA,dyt=Object.prototype,Iyt=dyt.hasOwnProperty;G(mqA,"assignValue");sJ=mqA;G(DqA,"copyObject");Ux=DqA,sPA=Math.max;G(yqA,"overRest");hyt=yqA;G(wqA,"baseRest");tlA=wqA;G(bqA,"isLength");rlA=bqA;G(vqA,"isArrayLike");$E=vqA;G(kqA,"isIterateeCall");lJ=kqA;G(FqA,"createAssigner");pyt=FqA,fyt=Object.prototype;G(xqA,"isPrototype");Mx=xqA;G(SqA,"baseTimes");myt=SqA;G(LqA,"baseIsArguments");lPA=LqA,RqA=Object.prototype,yyt=RqA.hasOwnProperty,wyt=RqA.propertyIsEnumerable,byt=lPA(function(){return arguments}())?lPA:function(A){return OC(A)&&yyt.call(A,"callee")&&!wyt.call(A,"callee")},gJ=byt;G(NqA,"stubFalse");vyt=NqA,GqA=typeof O0=="object"&&O0&&!O0.nodeType&&O0,gPA=GqA&&typeof Kn=="object"&&Kn&&!Kn.nodeType&&Kn,kyt=gPA&&gPA.exports===GqA,cPA=kyt?XE.Buffer:void 0,Fyt=cPA?cPA.isBuffer:void 0,xyt=Fyt||vyt,sx=xyt,ta={};ta[Wyt]=ta[qyt]=ta[zyt]=ta[Zyt]=ta[Vyt]=ta[jyt]=ta[Xyt]=ta[$yt]=ta[Awt]=!0;ta[Syt]=ta[Lyt]=ta[Pyt]=ta[Ryt]=ta[_yt]=ta[Nyt]=ta[Gyt]=ta[Uyt]=ta[Myt]=ta[Tyt]=ta[Yyt]=ta[Hyt]=ta[Kyt]=ta[Jyt]=ta[Oyt]=!1;G(UqA,"baseIsTypedArray");ewt=UqA;G(MqA,"baseUnary");Tx=MqA,TqA=typeof O0=="object"&&O0&&!O0.nodeType&&O0,_F=TqA&&typeof Kn=="object"&&Kn&&!Kn.nodeType&&Kn,twt=_F&&_F.exports===TqA,SnA=twt&&TWA.process,rwt=function(){try{var A=_F&&_F.require&&_F.require("util").types;if(A)return A;return SnA&&SnA.binding&&SnA.binding("util")}catch(e){}}(),i1=rwt,CPA=i1&&i1.isTypedArray,iwt=CPA?Tx(CPA):ewt,ilA=iwt,uwt=Object.prototype,awt=uwt.hasOwnProperty;G(YqA,"arrayLikeKeys");HqA=YqA;G(KqA,"overArg");JqA=KqA,nwt=JqA(Object.keys,Object),owt=nwt,swt=Object.prototype,lwt=swt.hasOwnProperty;G(OqA,"baseKeys");PqA=OqA;G(_qA,"keys");hg=_qA,gwt=Object.prototype,cwt=gwt.hasOwnProperty,Cwt=pyt(function(A,e){if(Mx(e)||$E(e)){Ux(e,hg(e),A);return}for(var t in e)if(cwt.call(e,t))sJ(A,t,e[t])}),Qg=Cwt;G(WqA,"nativeKeysIn");Bwt=WqA,Ewt=Object.prototype,dwt=Ewt.hasOwnProperty;G(qqA,"baseKeysIn");Iwt=qqA;G(zqA,"keysIn");cJ=zqA,hwt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Qwt=/^\w*$/;G(ZqA,"isKey");ulA=ZqA,pwt=em(Object,"create"),lx=pwt;G(VqA,"hashClear");fwt=VqA;G(jqA,"hashDelete");mwt=jqA,ywt=Object.prototype,wwt=ywt.hasOwnProperty;G(XqA,"hashGet");bwt=XqA,vwt=Object.prototype,kwt=vwt.hasOwnProperty;G($qA,"hashHas");Fwt=$qA;G(AzA,"hashSet");Swt=AzA;G(tm,"Hash");tm.prototype.clear=fwt;tm.prototype.delete=mwt;tm.prototype.get=bwt;tm.prototype.has=Fwt;tm.prototype.set=Swt;BPA=tm;G(ezA,"listCacheClear");Lwt=ezA;G(tzA,"assocIndexOf");CJ=tzA,Rwt=Array.prototype,Nwt=Rwt.splice;G(rzA,"listCacheDelete");Gwt=rzA;G(izA,"listCacheGet");Uwt=izA;G(uzA,"listCacheHas");Mwt=uzA;G(azA,"listCacheSet");Twt=azA;G(rm,"ListCache");rm.prototype.clear=Lwt;rm.prototype.delete=Gwt;rm.prototype.get=Uwt;rm.prototype.has=Mwt;rm.prototype.set=Twt;BJ=rm,Ywt=em(XE,"Map"),gx=Ywt;G(nzA,"mapCacheClear");Hwt=nzA;G(ozA,"isKeyable");Kwt=ozA;G(szA,"getMapData");EJ=szA;G(lzA,"mapCacheDelete");Jwt=lzA;G(gzA,"mapCacheGet");Owt=gzA;G(czA,"mapCacheHas");Pwt=czA;G(CzA,"mapCacheSet");_wt=CzA;G(im,"MapCache");im.prototype.clear=Hwt;im.prototype.delete=Jwt;im.prototype.get=Owt;im.prototype.has=Pwt;im.prototype.set=_wt;dJ=im;G(IJ,"memoize");IJ.Cache=dJ;qwt=IJ;G(BzA,"memoizeCapped");Zwt=BzA,Vwt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,jwt=/\\(\\)?/g,Xwt=Zwt(function(A){var e=[];if(A.charCodeAt(0)===46)e.push("");return A.replace(Vwt,function(t,r,i,u){e.push(i?u.replace(jwt,"$1"):r||t)}),e}),$wt=Xwt;G(EzA,"toString");A6t=EzA;G(dzA,"castPath");hJ=dzA;G(IzA,"toKey");Yx=IzA;G(hzA,"baseGet");alA=hzA;G(QzA,"get");t6t=QzA;G(pzA,"arrayPush");nlA=pzA,EPA=fc?fc.isConcatSpreadable:void 0;G(fzA,"isFlattenable");r6t=fzA;G(olA,"baseFlatten");slA=olA;G(mzA,"flatten");KC=mzA,i6t=JqA(Object.getPrototypeOf,Object),DzA=i6t;G(yzA,"baseSlice");wzA=yzA;G(bzA,"arrayReduce");u6t=bzA;G(vzA,"stackClear");a6t=vzA;G(kzA,"stackDelete");n6t=kzA;G(FzA,"stackGet");o6t=FzA;G(xzA,"stackHas");s6t=xzA;G(SzA,"stackSet");g6t=SzA;G(um,"Stack");um.prototype.clear=a6t;um.prototype.delete=n6t;um.prototype.get=o6t;um.prototype.has=s6t;um.prototype.set=g6t;WF=um;G(LzA,"baseAssign");c6t=LzA;G(RzA,"baseAssignIn");C6t=RzA,NzA=typeof O0=="object"&&O0&&!O0.nodeType&&O0,dPA=NzA&&typeof Kn=="object"&&Kn&&!Kn.nodeType&&Kn,B6t=dPA&&dPA.exports===NzA,IPA=B6t?XE.Buffer:void 0,hPA=IPA?IPA.allocUnsafe:void 0;G(GzA,"cloneBuffer");E6t=GzA;G(UzA,"arrayFilter");llA=UzA;G(MzA,"stubArray");TzA=MzA,d6t=Object.prototype,I6t=d6t.propertyIsEnumerable,QPA=Object.getOwnPropertySymbols,h6t=!QPA?TzA:function(A){if(A==null)return[];return A=Object(A),llA(QPA(A),function(e){return I6t.call(A,e)})},glA=h6t;G(YzA,"copySymbols");Q6t=YzA,p6t=Object.getOwnPropertySymbols,f6t=!p6t?TzA:function(A){var e=[];while(A)nlA(e,glA(A)),A=DzA(A);return e},HzA=f6t;G(KzA,"copySymbolsIn");m6t=KzA;G(JzA,"baseGetAllKeys");OzA=JzA;G(PzA,"getAllKeys");e0A=PzA;G(_zA,"getAllKeysIn");WzA=_zA,D6t=em(XE,"DataView"),t0A=D6t,y6t=em(XE,"Promise"),r0A=y6t,w6t=em(XE,"Set"),qw=w6t,v6t=Am(t0A),k6t=Am(gx),F6t=Am(r0A),x6t=Am(qw),S6t=Am(A0A),I3=l1;if(t0A&&I3(new t0A(new ArrayBuffer(1)))!=yPA||gx&&I3(new gx)!=pPA||r0A&&I3(r0A.resolve())!=fPA||qw&&I3(new qw)!=mPA||A0A&&I3(new A0A)!=DPA)I3=G(function(A){var e=l1(A),t=e==b6t?A.constructor:void 0,r=t?Am(t):"";if(r)switch(r){case v6t:return yPA;case k6t:return pPA;case F6t:return fPA;case x6t:return mPA;case S6t:return DPA}return e},"getTag");a6=I3,L6t=Object.prototype,R6t=L6t.hasOwnProperty;G(qzA,"initCloneArray");N6t=qzA,G6t=XE.Uint8Array,OH=G6t;G(zzA,"cloneArrayBuffer");clA=zzA;G(ZzA,"cloneDataView");U6t=ZzA,M6t=/\w*$/;G(VzA,"cloneRegExp");T6t=VzA,wPA=fc?fc.prototype:void 0,bPA=wPA?wPA.valueOf:void 0;G(jzA,"cloneSymbol");Y6t=jzA;G(XzA,"cloneTypedArray");H6t=XzA;G($zA,"initCloneByTag");a9t=$zA;G(AZA,"initCloneObject");n9t=AZA;G(eZA,"baseIsMap");s9t=eZA,vPA=i1&&i1.isMap,l9t=vPA?Tx(vPA):s9t,g9t=l9t;G(tZA,"baseIsSet");C9t=tZA,kPA=i1&&i1.isSet,B9t=kPA?Tx(kPA):C9t,E9t=B9t,_u={};_u[rZA]=_u[Q9t]=_u[S9t]=_u[L9t]=_u[p9t]=_u[f9t]=_u[R9t]=_u[N9t]=_u[G9t]=_u[U9t]=_u[M9t]=_u[y9t]=_u[w9t]=_u[uZA]=_u[b9t]=_u[v9t]=_u[k9t]=_u[F9t]=_u[T9t]=_u[Y9t]=_u[H9t]=_u[K9t]=!0;_u[m9t]=_u[iZA]=_u[x9t]=!1;G(qF,"baseClone");J9t=qF;G(aZA,"clone");C0=aZA;G(nZA,"compact");Hx=nZA;G(oZA,"setCacheAdd");_9t=oZA;G(sZA,"setCacheHas");W9t=sZA;G(cx,"SetCache");cx.prototype.add=cx.prototype.push=_9t;cx.prototype.has=W9t;ClA=cx;G(lZA,"arraySome");gZA=lZA;G(cZA,"cacheHas");BlA=cZA;G(CZA,"equalArrays");BZA=CZA;G(EZA,"mapToArray");Z9t=EZA;G(dZA,"setToArray");ElA=dZA,FPA=fc?fc.prototype:void 0,LnA=FPA?FPA.valueOf:void 0;G(IZA,"equalByTag");s5t=IZA,g5t=Object.prototype,c5t=g5t.hasOwnProperty;G(hZA,"equalObjects");C5t=hZA,E5t=Object.prototype,LPA=E5t.hasOwnProperty;G(QZA,"baseIsEqualDeep");d5t=QZA;G(dlA,"baseIsEqual");pZA=dlA;G(fZA,"baseIsMatch");Q5t=fZA;G(mZA,"isStrictComparable");DZA=mZA;G(yZA,"getMatchData");p5t=yZA;G(wZA,"matchesStrictComparable");bZA=wZA;G(vZA,"baseMatches");f5t=vZA;G(kZA,"baseHasIn");m5t=kZA;G(FZA,"hasPath");xZA=FZA;G(SZA,"hasIn");D5t=SZA;G(LZA,"baseMatchesProperty");b5t=LZA;G(RZA,"baseProperty");v5t=RZA;G(NZA,"basePropertyDeep");k5t=NZA;G(GZA,"property");F5t=GZA;G(UZA,"baseIteratee");Ad=UZA;G(MZA,"arrayAggregator");x5t=MZA;G(TZA,"createBaseFor");S5t=TZA,L5t=S5t(),R5t=L5t;G(YZA,"baseForOwn");N5t=YZA;G(HZA,"createBaseEach");G5t=HZA,U5t=G5t(N5t),am=U5t;G(KZA,"baseAggregator");M5t=KZA;G(JZA,"createAggregator");T5t=JZA,OZA=Object.prototype,Y5t=OZA.hasOwnProperty,H5t=tlA(function(A,e){A=Object(A);var t=-1,r=e.length,i=r>2?e[2]:void 0;if(i&&lJ(e[0],e[1],i))r=1;while(++t<r){var u=e[t],a=cJ(u),n=-1,o=a.length;while(++n<o){var s=a[n],l=A[s];if(l===void 0||Gx(l,OZA[s])&&!Y5t.call(A,s))A[s]=u[s]}}return A}),IlA=H5t;G(PZA,"isArrayLikeObject");RPA=PZA;G(_ZA,"arrayIncludesWith");WZA=_ZA;G(qZA,"baseDifference");J5t=qZA,O5t=tlA(function(A,e){return RPA(A)?J5t(A,slA(e,1,RPA,!0)):[]}),QJ=O5t;G(zZA,"last");P3=zZA;G(ZZA,"drop");g0=ZZA;G(VZA,"dropRight");Cx=VZA;G(jZA,"castFunction");P5t=jZA;G(XZA,"forEach");Lr=XZA;G($ZA,"arrayEvery");_5t=$ZA;G(AVA,"baseEvery");W5t=AVA;G(eVA,"every");JC=eVA;G(tVA,"baseFilter");rVA=tVA;G(iVA,"filter");yc=iVA;G(uVA,"createFind");q5t=uVA,z5t=Math.max;G(aVA,"findIndex");Z5t=aVA,V5t=q5t(Z5t),n6=V5t;G(nVA,"head");PC=nVA;G(oVA,"baseMap");j5t=oVA;G(sVA,"map");er=sVA;G(lVA,"flatMap");pc=lVA,X5t=Object.prototype,$5t=X5t.hasOwnProperty,Abt=T5t(function(A,e,t){if($5t.call(A,t))A[t].push(e);else elA(A,t,[e])}),ebt=Abt,tbt=Object.prototype,rbt=tbt.hasOwnProperty;G(gVA,"baseHas");ibt=gVA;G(cVA,"has");hr=cVA;G(CVA,"isString");yl=CVA;G(BVA,"baseValues");abt=BVA;G(EVA,"values");no=EVA,nbt=Math.max;G(dVA,"includes");Ns=dVA,obt=Math.max;G(IVA,"indexOf");NPA=IVA,gbt=Object.prototype,cbt=gbt.hasOwnProperty;G(hVA,"isEmpty");qu=hVA;G(QVA,"baseIsRegExp");Bbt=QVA,GPA=i1&&i1.isRegExp,Ebt=GPA?Tx(GPA):Bbt,uh=Ebt;G(pVA,"isUndefined");ah=pVA;G(fVA,"negate");Ibt=fVA;G(mVA,"baseSet");hbt=mVA;G(DVA,"basePickBy");Qbt=DVA;G(yVA,"pickBy");_C=yVA;G(wVA,"baseReduce");pbt=wVA;G(bVA,"reduce");pg=bVA;G(vVA,"reject");pJ=vVA;G(kVA,"baseSome");fbt=kVA;G(FVA,"some");xVA=FVA,Dbt=!(qw&&1/ElA(new qw([,-0]))[1]==mbt)?Uo:function(A){return new qw(A)},ybt=Dbt;G(SVA,"baseUniq");bbt=SVA;G(LVA,"uniq");hlA=LVA;G(PH,"PRINT_ERROR");G(QlA,"PRINT_WARNING");G(plA,"timer");G(flA,"toFastProperties");G(RVA,"tokenLabel");G(NVA,"hasTokenLabel");ed=class{static{G(this,"AbstractProduction")}get definition(){return this._definition}set definition(A){this._definition=A}constructor(A){this._definition=A}accept(A){A.visit(this),Lr(this.definition,(e)=>{e.accept(A)})}},Ss=class extends ed{static{G(this,"NonTerminal")}constructor(A){super([]);this.idx=1,Qg(this,_C(A,(e)=>e!==void 0))}set definition(A){}get definition(){if(this.referencedRule!==void 0)return this.referencedRule.definition;return[]}accept(A){A.visit(this)}},C6=class extends ed{static{G(this,"Rule")}constructor(A){super(A.definition);this.orgText="",Qg(this,_C(A,(e)=>e!==void 0))}},wl=class extends ed{static{G(this,"Alternative")}constructor(A){super(A.definition);this.ignoreAmbiguities=!1,Qg(this,_C(A,(e)=>e!==void 0))}},c0=class extends ed{static{G(this,"Option")}constructor(A){super(A.definition);this.idx=1,Qg(this,_C(A,(e)=>e!==void 0))}},fg=class extends ed{static{G(this,"RepetitionMandatory")}constructor(A){super(A.definition);this.idx=1,Qg(this,_C(A,(e)=>e!==void 0))}},mg=class extends ed{static{G(this,"RepetitionMandatoryWithSeparator")}constructor(A){super(A.definition);this.idx=1,Qg(this,_C(A,(e)=>e!==void 0))}},$a=class extends ed{static{G(this,"Repetition")}constructor(A){super(A.definition);this.idx=1,Qg(this,_C(A,(e)=>e!==void 0))}},bl=class extends ed{static{G(this,"RepetitionWithSeparator")}constructor(A){super(A.definition);this.idx=1,Qg(this,_C(A,(e)=>e!==void 0))}},vl=class extends ed{static{G(this,"Alternation")}get definition(){return this._definition}set definition(A){this._definition=A}constructor(A){super(A.definition);this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Qg(this,_C(A,(e)=>e!==void 0))}},ia=class{static{G(this,"Terminal")}constructor(A){this.idx=1,Qg(this,_C(A,(e)=>e!==void 0))}accept(A){A.visit(this)}};G(GVA,"serializeGrammar");G(zF,"serializeProduction");B6=class{static{G(this,"GAstVisitor")}visit(A){let e=A;switch(e.constructor){case Ss:return this.visitNonTerminal(e);case wl:return this.visitAlternative(e);case c0:return this.visitOption(e);case fg:return this.visitRepetitionMandatory(e);case mg:return this.visitRepetitionMandatoryWithSeparator(e);case bl:return this.visitRepetitionWithSeparator(e);case $a:return this.visitRepetition(e);case vl:return this.visitAlternation(e);case ia:return this.visitTerminal(e);case C6:return this.visitRule(e);default:throw Error("non exhaustive match")}}visitNonTerminal(A){}visitAlternative(A){}visitOption(A){}visitRepetition(A){}visitRepetitionMandatory(A){}visitRepetitionMandatoryWithSeparator(A){}visitRepetitionWithSeparator(A){}visitAlternation(A){}visitTerminal(A){}visitRule(A){}};G(UVA,"isSequenceProd");G(Bx,"isOptionalProd");G(MVA,"isBranchingProd");G(MC,"getProductionDslName");fJ=class{static{G(this,"RestWalker")}walk(A,e=[]){Lr(A.definition,(t,r)=>{let i=g0(A.definition,r+1);if(t instanceof Ss)this.walkProdRef(t,i,e);else if(t instanceof ia)this.walkTerminal(t,i,e);else if(t instanceof wl)this.walkFlat(t,i,e);else if(t instanceof c0)this.walkOption(t,i,e);else if(t instanceof fg)this.walkAtLeastOne(t,i,e);else if(t instanceof mg)this.walkAtLeastOneSep(t,i,e);else if(t instanceof bl)this.walkManySep(t,i,e);else if(t instanceof $a)this.walkMany(t,i,e);else if(t instanceof vl)this.walkOr(t,i,e);else throw Error("non exhaustive match")})}walkTerminal(A,e,t){}walkProdRef(A,e,t){}walkFlat(A,e,t){let r=e.concat(t);this.walk(A,r)}walkOption(A,e,t){let r=e.concat(t);this.walk(A,r)}walkAtLeastOne(A,e,t){let r=[new c0({definition:A.definition})].concat(e,t);this.walk(A,r)}walkAtLeastOneSep(A,e,t){let r=i0A(A,e,t);this.walk(A,r)}walkMany(A,e,t){let r=[new c0({definition:A.definition})].concat(e,t);this.walk(A,r)}walkManySep(A,e,t){let r=i0A(A,e,t);this.walk(A,r)}walkOr(A,e,t){let r=e.concat(t);Lr(A.definition,(i)=>{let u=new wl({definition:[i]});this.walk(u,r)})}};G(i0A,"restForRepetitionWithSeparator");G(E6,"first");G(TVA,"firstForSequence");G(YVA,"firstForBranching");G(HVA,"firstForTerminal");vbt=class extends fJ{static{G(this,"ResyncFollowsWalker")}constructor(A){super();this.topProd=A,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(A,e,t){}walkProdRef(A,e,t){let r=OVA(A.referencedRule,A.idx)+this.topProd.name,i=e.concat(t),u=new wl({definition:i}),a=E6(u);this.follows[r]=a}};G(JVA,"computeAllProdsFollows");G(OVA,"buildBetweenProdsFollowPrefix");lH={},kbt=new fWA;G(Kx,"getRegExpAst");G(PVA,"clearRegExpParserCache");G(WVA,"getOptimizedStartCodesIndices");G(WH,"firstCharOptimizedIndices");G(RF,"addOptimizedIdxToResult");G(qVA,"handleIgnoreCase");G(u0A,"findCode");G(qH,"isWholeOptional");Fbt=class extends AJ{static{G(this,"CharCodeFinder")}constructor(A){super();this.targetCharCodes=A,this.found=!1}visitChildren(A){if(this.found===!0)return;switch(A.type){case"Lookahead":this.visitLookahead(A);return;case"NegativeLookahead":this.visitNegativeLookahead(A);return;case"Lookbehind":this.visitLookbehind(A);return;case"NegativeLookbehind":this.visitNegativeLookbehind(A);return}super.visitChildren(A)}visitCharacter(A){if(Ns(this.targetCharCodes,A.value))this.found=!0}visitSet(A){if(A.complement){if(u0A(A,this.targetCharCodes)===void 0)this.found=!0}else if(u0A(A,this.targetCharCodes)!==void 0)this.found=!0}};G(mJ,"canMatchCharCode");G(zVA,"analyzeTokenTypes");G(ZVA,"validatePatterns");G(VVA,"validateRegExpPattern");G(jVA,"findMissingPatterns");G(XVA,"findInvalidPatterns");xbt=/[^\\][$]/;G($VA,"findEndOfInputAnchor");G(AjA,"findEmptyMatchRegExps");Sbt=/[^\\[][\^]|^\^/;G(ejA,"findStartOfInputAnchor");G(tjA,"findUnsupportedFlags");G(rjA,"findDuplicatePatterns");G(ijA,"findInvalidGroupType");G(ujA,"findModesThatDoNotExist");G(ajA,"findUnreachablePatterns");G(njA,"tryToMatchStrToPattern");G(ojA,"noMetaChar");G(sjA,"usesLookAheadOrBehind");G(a0A,"addStickyFlag");G(ljA,"performRuntimeChecks");G(gjA,"performWarningRuntimeChecks");G(cjA,"cloneEmptyGroups");G(mlA,"isCustomPattern");G(CjA,"isShortPattern");Lbt={test:G(function(A){let e=A.length;for(let t=this.lastIndex;t<e;t++){let r=A.charCodeAt(t);if(r===10)return this.lastIndex=t+1,!0;else if(r===13){if(A.charCodeAt(t+1)===10)this.lastIndex=t+2;else this.lastIndex=t+1;return!0}}return!1},"test"),lastIndex:0};G(DlA,"checkLineBreaksIssues");G(BjA,"buildLineBreakIssueMessage");G(ylA,"getCharCodes");G(gH,"addToMapOfArrays");cH=[];G(nh,"charCodeToOptimizedIndex");G(EjA,"initCharCodeToOptimizedIndexMap");G(d6,"tokenStructuredMatcher");G(Ex,"tokenStructuredMatcherNoCategories");djA={};G(I6,"augmentTokenTypes");G(IjA,"expandCategories");G(hjA,"assignTokenDefaultProps");G(QjA,"assignCategoriesTokensProp");G(pjA,"assignCategoriesMapProp");G(wlA,"singleAssignCategoriesToksMap");G(blA,"hasShortKeyProperty");G(n0A,"hasCategoriesProperty");G(fjA,"hasExtendingTokensTypesProperty");G(mjA,"hasExtendingTokensTypesMapProperty");G(DjA,"isTokenType");o0A={buildUnableToPopLexerModeMessage(A){return`Unable to pop Lexer Mode after encountering Token ->${A.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(A,e,t,r,i,u){return`unexpected character: ->${A.charAt(e)}<- at offset: ${e}, skipped ${t} characters.`}};(function(A){A[A.MISSING_PATTERN=0]="MISSING_PATTERN",A[A.INVALID_PATTERN=1]="INVALID_PATTERN",A[A.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",A[A.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",A[A.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",A[A.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",A[A.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",A[A.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",A[A.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",A[A.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",A[A.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",A[A.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",A[A.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",A[A.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",A[A.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",A[A.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",A[A.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",A[A.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(An||(An={}));UF={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
|
||
`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:o0A,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(UF);Fs=class{static{G(this,"Lexer")}constructor(A,e=UF){if(this.lexerDefinition=A,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(r,i)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let u=Array(this.traceInitIndent+1).join("\t");if(this.traceInitIndent<this.traceInitMaxIdent)console.log(`${u}--> <${r}>`);let{time:a,value:n}=plA(i),o=a>10?console.warn:console.log;if(this.traceInitIndent<this.traceInitMaxIdent)o(`${u}<-- <${r}> time: ${a}ms`);return this.traceInitIndent--,n}else return i()},typeof e==="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
|
||
a boolean 2nd argument is no longer supported`);this.config=Qg({},UF,e);let t=this.config.traceInitPerf;if(t===!0)this.traceInitMaxIdent=1/0,this.traceInitPerf=!0;else if(typeof t==="number")this.traceInitMaxIdent=t,this.traceInitPerf=!0;this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let r,i=!0;if(this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===UF.lineTerminatorsPattern)this.config.lineTerminatorsPattern=Lbt;else if(this.config.lineTerminatorCharacters===UF.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(e.safeMode&&e.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');if(this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Ki(A))r={modes:{defaultMode:C0(A)},defaultMode:NF};else i=!1,r=C0(A)}),this.config.skipValidations===!1)this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(ljA(r,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(gjA(r,this.trackStartLines,this.config.lineTerminatorCharacters))});r.modes=r.modes?r.modes:{},Lr(r.modes,(a,n)=>{r.modes[n]=pJ(a,(o)=>ah(o))});let u=hg(r.modes);if(Lr(r.modes,(a,n)=>{this.TRACE_INIT(`Mode: <${n}> processing`,()=>{if(this.modes.push(n),this.config.skipValidations===!1)this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(ZVA(a,u))});if(qu(this.lexerDefinitionErrors)){I6(a);let o;this.TRACE_INIT("analyzeTokenTypes",()=>{o=zVA(a,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:e.positionTracking,ensureOptimizations:e.ensureOptimizations,safeMode:e.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[n]=o.patternIdxToConfig,this.charCodeToPatternIdxToConfig[n]=o.charCodeToPatternIdxToConfig,this.emptyGroups=Qg({},this.emptyGroups,o.emptyGroups),this.hasCustom=o.hasCustom||this.hasCustom,this.canModeBeOptimized[n]=o.canBeOptimized}})}),this.defaultMode=r.defaultMode,!qu(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let n=er(this.lexerDefinitionErrors,(o)=>o.message).join(`-----------------------
|
||
`);throw Error(`Errors detected in definition of Lexer:
|
||
`+n)}Lr(this.lexerDefinitionWarning,(a)=>{QlA(a.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(i)this.handleModes=Uo;if(this.trackStartLines===!1)this.computeNewColumn=Nx;if(this.trackEndLines===!1)this.updateTokenEndLineColumnLocation=Uo;if(/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);if(this.hasCustom)this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom;else this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let a=pg(this.canModeBeOptimized,(n,o,s)=>{if(o===!1)n.push(s);return n},[]);if(e.ensureOptimizations&&!qu(a))throw Error(`Lexer Modes: < ${a.join(", ")} > cannot be optimized.
|
||
Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
|
||
Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{PVA()}),this.TRACE_INIT("toFastProperties",()=>{flA(this)})})}tokenize(A,e=this.defaultMode){if(!qu(this.lexerDefinitionErrors)){let r=er(this.lexerDefinitionErrors,(i)=>i.message).join(`-----------------------
|
||
`);throw Error(`Unable to Tokenize because Errors detected in definition of Lexer:
|
||
`+r)}return this.tokenizeInternal(A,e)}tokenizeInternal(A,e){let t,r,i,u,a,n,o,s,l,g,C,B,E,d,I,h=A,Q=h.length,p=0,m=0,f=this.hasCustom?0:Math.floor(A.length/10),D=Array(f),w=[],b=this.trackStartLines?1:void 0,F=this.trackStartLines?1:void 0,v=cjA(this.emptyGroups),S=this.trackStartLines,x=this.config.lineTerminatorsPattern,k=0,T=[],R=[],L=[],M=[];Object.freeze(M);let U=!1,Y=G((O)=>{if(L.length===1&&O.tokenType.PUSH_MODE===void 0){let _=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(O);w.push({offset:O.startOffset,line:O.startLine,column:O.startColumn,length:O.image.length,message:_})}else{L.pop();let _=P3(L);T=this.patternIdxToConfig[_],R=this.charCodeToPatternIdxToConfig[_],k=T.length;let z=this.canModeBeOptimized[_]&&this.config.safeMode===!1;if(R&&z)U=!0;else U=!1}},"pop_mode");function H(O){L.push(O),R=this.charCodeToPatternIdxToConfig[O],T=this.patternIdxToConfig[O],k=T.length,k=T.length;let _=this.canModeBeOptimized[O]&&this.config.safeMode===!1;if(R&&_)U=!0;else U=!1}G(H,"push_mode"),H.call(this,e);let J,K=this.config.recoveryEnabled;while(p<Q){n=null,l=-1;let O=h.charCodeAt(p),_;if(U){let j=nh(O),q=R[j];_=q!==void 0?q:M}else _=T;let z=_.length;for(t=0;t<z;t++){J=_[t];let j=J.pattern;o=null;let q=J.short;if(q!==!1){if(O===q)l=1,n=j}else if(J.isCustom===!0)if(I=j.exec(h,p,D,v),I!==null){if(n=I[0],l=n.length,I.payload!==void 0)o=I.payload}else n=null;else j.lastIndex=p,l=this.matchLength(j,A,p);if(l!==-1){if(a=J.longerAlt,a!==void 0){n=A.substring(p,p+l);let CA=a.length;for(i=0;i<CA;i++){let tA=T[a[i]],lA=tA.pattern;if(s=null,tA.isCustom===!0)if(I=lA.exec(h,p,D,v),I!==null){if(u=I[0],I.payload!==void 0)s=I.payload}else u=null;else lA.lastIndex=p,u=this.match(lA,A,p);if(u&&u.length>n.length){n=u,l=u.length,o=s,J=tA;break}}}break}}if(l!==-1){if(g=J.group,g!==void 0)if(n=n!==null?n:A.substring(p,p+l),C=J.tokenTypeIdx,B=this.createTokenInstance(n,p,C,J.tokenType,b,F,l),this.handlePayload(B,o),g===!1)m=this.addToken(D,m,B);else v[g].push(B);if(S===!0&&J.canLineTerminator===!0){let j=0,q,CA;x.lastIndex=0;do if(n=n!==null?n:A.substring(p,p+l),q=x.test(n),q===!0)CA=x.lastIndex-1,j++;while(q===!0);if(j!==0)b=b+j,F=l-CA,this.updateTokenEndLineColumnLocation(B,g,CA,j,b,F,l);else F=this.computeNewColumn(F,l)}else F=this.computeNewColumn(F,l);p=p+l,this.handleModes(J,Y,H,B)}else{let j=p,q=b,CA=F,tA=K===!1;while(tA===!1&&p<Q){p++;for(r=0;r<k;r++){let lA=T[r],{pattern:gA,short:aA}=lA;if(aA!==!1){if(h.charCodeAt(p)===aA)tA=!0}else if(lA.isCustom===!0)tA=gA.exec(h,p,D,v)!==null;else gA.lastIndex=p,tA=gA.exec(A)!==null;if(tA===!0)break}}if(E=p-j,F=this.computeNewColumn(F,E),d=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(h,j,E,q,CA,P3(L)),w.push({offset:j,line:q,column:CA,length:E,message:d}),K===!1)break}}if(!this.hasCustom)D.length=m;return{tokens:D,groups:v,errors:w}}handleModes(A,e,t,r){if(A.pop===!0){let i=A.push;if(e(r),i!==void 0)t.call(this,i)}else if(A.push!==void 0)t.call(this,A.push)}updateTokenEndLineColumnLocation(A,e,t,r,i,u,a){let n,o;if(e!==void 0){if(n=t===a-1,o=n?-1:0,!(r===1&&n===!0))A.endLine=i+o,A.endColumn=u-1+-o}}computeNewColumn(A,e){return A+e}createOffsetOnlyToken(A,e,t,r){return{image:A,startOffset:e,tokenTypeIdx:t,tokenType:r}}createStartOnlyToken(A,e,t,r,i,u){return{image:A,startOffset:e,startLine:i,startColumn:u,tokenTypeIdx:t,tokenType:r}}createFullToken(A,e,t,r,i,u,a){return{image:A,startOffset:e,endOffset:e+a-1,startLine:i,endLine:i,startColumn:u,endColumn:u+a-1,tokenTypeIdx:t,tokenType:r}}addTokenUsingPush(A,e,t){return A.push(t),e}addTokenUsingMemberAccess(A,e,t){return A[e]=t,e++,e}handlePayloadNoCustom(A,e){}handlePayloadWithCustom(A,e){if(e!==null)A.payload=e}match(A,e,t){if(A.test(e)===!0)return e.substring(t,A.lastIndex);return null}matchLength(A,e,t){if(A.test(e)===!0)return A.lastIndex-t;return-1}};Fs.SKIPPED="This marks a skipped Token pattern, this means each token identified by it will be consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.";Fs.NA=/NOT_APPLICABLE/;G(K3,"tokenLabel");G(vlA,"hasTokenLabel");G(zw,"createToken");G(yjA,"createTokenInternal");u1=zw({name:"EOF",pattern:Fs.NA});I6([u1]);G(Jx,"createTokenInstance");G(klA,"tokenMatcher");_w={buildMismatchTokenMessage({expected:A,actual:e,previous:t,ruleName:r}){return`Expecting ${vlA(A)?`--> ${K3(A)} <--`:`token of type --> ${A.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:A,ruleName:e}){return"Redundant input, expecting EOF but found: "+A.image},buildNoViableAltMessage({expectedPathsPerAlt:A,actual:e,previous:t,customUserDescription:r,ruleName:i}){let n=`
|
||
but found: '`+PC(e).image+"'";if(r)return"Expecting: "+r+n;else{let o=pg(A,(C,B)=>C.concat(B),[]),s=er(o,(C)=>`[${er(C,(B)=>K3(B)).join(", ")}]`);return`Expecting: one of these possible Token sequences:
|
||
${er(s,(C,B)=>` ${B+1}. ${C}`).join(`
|
||
`)}`+n}},buildEarlyExitMessage({expectedIterationPaths:A,actual:e,customUserDescription:t,ruleName:r}){let a=`
|
||
but found: '`+PC(e).image+"'";if(t)return"Expecting: "+t+a;else return`Expecting: expecting at least one iteration which starts with one of these possible Token sequences::
|
||
<${er(A,(s)=>`[${er(s,(l)=>K3(l)).join(",")}]`).join(" ,")}>`+a}};Object.freeze(_w);Nbt={buildRuleNotFoundError(A,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<-
|
||
inside top level rule: ->`+A.name+"<-"}},U3={buildDuplicateFoundError(A,e){function t(l){if(l instanceof ia)return l.terminalType.name;else if(l instanceof Ss)return l.nonTerminalName;else return""}G(t,"getExtraProductionArgument");let r=A.name,i=PC(e),u=i.idx,a=MC(i),n=t(i),o=u>0,s=`->${a}${o?u:""}<- ${n?`with argument: ->${n}<-`:""}
|
||
appears more than once (${e.length} times) in the top level rule: ->${r}<-.
|
||
For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
|
||
`;return s=s.replace(/[ \t]+/g," "),s=s.replace(/\s\s+/g,`
|
||
`),s},buildNamespaceConflictError(A){return`Namespace conflict found in grammar.
|
||
The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${A.name}>.
|
||
To resolve this make sure each Terminal and Non-Terminal names are unique
|
||
This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
|
||
and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(A){let e=er(A.prefixPath,(i)=>K3(i)).join(", "),t=A.alternation.idx===0?"":A.alternation.idx;return`Ambiguous alternatives: <${A.ambiguityIndices.join(" ,")}> due to common lookahead prefix
|
||
in <OR${t}> inside <${A.topLevelRule.name}> Rule,
|
||
<${e}> may appears as a prefix path in all these alternatives.
|
||
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
|
||
For Further details.`},buildAlternationAmbiguityError(A){let e=A.alternation.idx===0?"":A.alternation.idx,t=A.prefixPath.length===0,r=`Ambiguous Alternatives Detected: <${A.ambiguityIndices.join(" ,")}> in <OR${e}> inside <${A.topLevelRule.name}> Rule,
|
||
`;if(t)r+=`These alternatives are all empty (match no tokens), making them indistinguishable.
|
||
Only the last alternative may be empty.
|
||
`;else{let i=er(A.prefixPath,(u)=>K3(u)).join(", ");r+=`<${i}> may appears as a prefix path in all these alternatives.
|
||
`}return r+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
||
For Further details.`,r},buildEmptyRepetitionError(A){let e=MC(A.repetition);if(A.repetition.idx!==0)e+=A.repetition.idx;return`The repetition <${e}> within Rule <${A.topLevelRule.name}> can never consume any tokens.
|
||
This could lead to an infinite loop.`},buildTokenNameError(A){return"deprecated"},buildEmptyAlternationError(A){return`Ambiguous empty alternative: <${A.emptyChoiceIdx+1}> in <OR${A.alternation.idx}> inside <${A.topLevelRule.name}> Rule.
|
||
Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(A){return`An Alternation cannot have more than 256 alternatives:
|
||
<OR${A.alternation.idx}> inside <${A.topLevelRule.name}> Rule.
|
||
has ${A.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(A){let e=A.topLevelRule.name,t=er(A.leftRecursionPath,(u)=>u.name),r=`${e} --> ${t.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar.
|
||
rule: <${e}> can be invoked from itself (directly or indirectly)
|
||
without consuming any Tokens. The grammar path that causes this is:
|
||
${r}
|
||
To fix this refactor your grammar to remove the left recursion.
|
||
see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(A){return"deprecated"},buildDuplicateRuleNameError(A){let e;if(A.topLevelRule instanceof C6)e=A.topLevelRule.name;else e=A.topLevelRule;return`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${A.grammarName}<-`}};G(wjA,"resolveGrammar");Gbt=class extends B6{static{G(this,"GastRefResolverVisitor")}constructor(A,e){super();this.nameToTopRule=A,this.errMsgProvider=e,this.errors=[]}resolveRefs(){Lr(no(this.nameToTopRule),(A)=>{this.currTopLevel=A,A.accept(this)})}visitNonTerminal(A){let e=this.nameToTopRule[A.nonTerminalName];if(!e){let t=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,A);this.errors.push({message:t,type:Ls.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:A.nonTerminalName})}else A.referencedRule=e}},Ubt=class extends fJ{static{G(this,"AbstractNextPossibleTokensWalker")}constructor(A,e){super();this.topProd=A,this.path=e,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=C0(this.path.ruleStack).reverse(),this.occurrenceStack=C0(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(A,e=[]){if(!this.found)super.walk(A,e)}walkProdRef(A,e,t){if(A.referencedRule.name===this.nextProductionName&&A.idx===this.nextProductionOccurrence){let r=e.concat(t);this.updateExpectedNext(),this.walk(A.referencedRule,r)}}updateExpectedNext(){if(qu(this.ruleStack))this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0;else this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop()}},Mbt=class extends Ubt{static{G(this,"NextAfterTokenWalker")}constructor(A,e){super(A,e);this.path=e,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(A,e,t){if(this.isAtEndOfPath&&A.terminalType.name===this.nextTerminalName&&A.idx===this.nextTerminalOccurrence&&!this.found){let r=e.concat(t),i=new wl({definition:r});this.possibleTokTypes=E6(i),this.found=!0}}},DJ=class extends fJ{static{G(this,"AbstractNextTerminalAfterProductionWalker")}constructor(A,e){super();this.topRule=A,this.occurrence=e,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Tbt=class extends DJ{static{G(this,"NextTerminalAfterManyWalker")}walkMany(A,e,t){if(A.idx===this.occurrence){let r=PC(e.concat(t));if(this.result.isEndOfRule=r===void 0,r instanceof ia)this.result.token=r.terminalType,this.result.occurrence=r.idx}else super.walkMany(A,e,t)}},_PA=class extends DJ{static{G(this,"NextTerminalAfterManySepWalker")}walkManySep(A,e,t){if(A.idx===this.occurrence){let r=PC(e.concat(t));if(this.result.isEndOfRule=r===void 0,r instanceof ia)this.result.token=r.terminalType,this.result.occurrence=r.idx}else super.walkManySep(A,e,t)}},Ybt=class extends DJ{static{G(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(A,e,t){if(A.idx===this.occurrence){let r=PC(e.concat(t));if(this.result.isEndOfRule=r===void 0,r instanceof ia)this.result.token=r.terminalType,this.result.occurrence=r.idx}else super.walkAtLeastOne(A,e,t)}},WPA=class extends DJ{static{G(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(A,e,t){if(A.idx===this.occurrence){let r=PC(e.concat(t));if(this.result.isEndOfRule=r===void 0,r instanceof ia)this.result.token=r.terminalType,this.result.occurrence=r.idx}else super.walkAtLeastOneSep(A,e,t)}};G(zH,"possiblePathsFrom");G(FlA,"nextPossibleTokensAfter");G(bjA,"expandTopLevelRule");(function(A){A[A.OPTION=0]="OPTION",A[A.REPETITION=1]="REPETITION",A[A.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",A[A.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",A[A.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",A[A.ALTERNATION=5]="ALTERNATION"})(Ga||(Ga={}));G(yJ,"getProdType");G(s0A,"getLookaheadPaths");G(vjA,"buildLookaheadFuncForOr");G(kjA,"buildLookaheadFuncForOptionalProd");G(FjA,"buildAlternativesLookAheadFunc");G(xjA,"buildSingleAlternativeLookaheadFunction");Hbt=class extends fJ{static{G(this,"RestDefinitionFinderWalker")}constructor(A,e,t){super();this.topProd=A,this.targetOccurrence=e,this.targetProdType=t}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(A,e,t,r){if(A.idx===this.targetOccurrence&&this.targetProdType===e)return this.restDef=t.concat(r),!0;return!1}walkOption(A,e,t){if(!this.checkIsTarget(A,Ga.OPTION,e,t))super.walkOption(A,e,t)}walkAtLeastOne(A,e,t){if(!this.checkIsTarget(A,Ga.REPETITION_MANDATORY,e,t))super.walkOption(A,e,t)}walkAtLeastOneSep(A,e,t){if(!this.checkIsTarget(A,Ga.REPETITION_MANDATORY_WITH_SEPARATOR,e,t))super.walkOption(A,e,t)}walkMany(A,e,t){if(!this.checkIsTarget(A,Ga.REPETITION,e,t))super.walkOption(A,e,t)}walkManySep(A,e,t){if(!this.checkIsTarget(A,Ga.REPETITION_WITH_SEPARATOR,e,t))super.walkOption(A,e,t)}},SjA=class extends B6{static{G(this,"InsideDefinitionFinderVisitor")}constructor(A,e,t){super();this.targetOccurrence=A,this.targetProdType=e,this.targetRef=t,this.result=[]}checkIsTarget(A,e){if(A.idx===this.targetOccurrence&&this.targetProdType===e&&(this.targetRef===void 0||A===this.targetRef))this.result=A.definition}visitOption(A){this.checkIsTarget(A,Ga.OPTION)}visitRepetition(A){this.checkIsTarget(A,Ga.REPETITION)}visitRepetitionMandatory(A){this.checkIsTarget(A,Ga.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(A){this.checkIsTarget(A,Ga.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(A){this.checkIsTarget(A,Ga.REPETITION_WITH_SEPARATOR)}visitAlternation(A){this.checkIsTarget(A,Ga.ALTERNATION)}};G(l0A,"initializeArrayOfArrays");G(CH,"pathToHashKeys");G(LjA,"isUniquePrefixHash");G(xlA,"lookAheadSequenceFromAlternatives");G(Ox,"getLookaheadPathsForOr");G(Px,"getLookaheadPathsForOptionalProd");G(ZH,"containsPath");G(RjA,"isStrictPrefixOfPath");G(SlA,"areTokenCategoriesNotUsed");G(NjA,"validateLookahead");G(GjA,"validateGrammar");G(UjA,"validateDuplicateProductions");G(MjA,"identifyProductionForDuplicates");G(LlA,"getExtraProductionArgument");Kbt=class extends B6{static{G(this,"OccurrenceValidationCollector")}constructor(){super(...arguments);this.allProductions=[]}visitNonTerminal(A){this.allProductions.push(A)}visitOption(A){this.allProductions.push(A)}visitRepetitionWithSeparator(A){this.allProductions.push(A)}visitRepetitionMandatory(A){this.allProductions.push(A)}visitRepetitionMandatoryWithSeparator(A){this.allProductions.push(A)}visitRepetition(A){this.allProductions.push(A)}visitAlternation(A){this.allProductions.push(A)}visitTerminal(A){this.allProductions.push(A)}};G(TjA,"validateRuleDoesNotAlreadyExist");G(YjA,"validateRuleIsOverridden");G(RlA,"validateNoLeftRecursion");G(ZF,"getFirstNoneTerminal");NlA=class extends B6{static{G(this,"OrCollector")}constructor(){super(...arguments);this.alternations=[]}visitAlternation(A){this.alternations.push(A)}};G(HjA,"validateEmptyOrAlternative");G(KjA,"validateAmbiguousAlternationAlternatives");Jbt=class extends B6{static{G(this,"RepetitionCollector")}constructor(){super(...arguments);this.allProductions=[]}visitRepetitionWithSeparator(A){this.allProductions.push(A)}visitRepetitionMandatory(A){this.allProductions.push(A)}visitRepetitionMandatoryWithSeparator(A){this.allProductions.push(A)}visitRepetition(A){this.allProductions.push(A)}};G(JjA,"validateTooManyAlts");G(OjA,"validateSomeNonEmptyLookaheadPath");G(PjA,"checkAlternativesAmbiguities");G(_jA,"checkPrefixAlternativesAmbiguities");G(WjA,"checkTerminalAndNoneTerminalsNameSpace");G(qjA,"resolveGrammar");G(zjA,"validateGrammar");$jA=[ZjA,VjA,jjA,XjA];Object.freeze($jA);G(dx,"isRecognitionException");wJ=class extends Error{static{G(this,"RecognitionException")}constructor(A,e){super(A);if(this.token=e,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace)Error.captureStackTrace(this,this.constructor)}},AXA=class extends wJ{static{G(this,"MismatchedTokenException")}constructor(A,e,t){super(A,e);this.previousToken=t,this.name=ZjA}},Obt=class extends wJ{static{G(this,"NoViableAltException")}constructor(A,e,t){super(A,e);this.previousToken=t,this.name=VjA}},Pbt=class extends wJ{static{G(this,"NotAllInputParsedException")}constructor(A,e){super(A,e);this.name=XjA}},_bt=class extends wJ{static{G(this,"EarlyExitException")}constructor(A,e,t){super(A,e);this.previousToken=t,this.name=jjA}},RnA={},Wbt=class extends Error{static{G(this,"InRuleRecoveryException")}constructor(A){super(A);this.name=eXA}},qbt=class{static{G(this,"Recoverable")}initRecoverable(A){if(this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=hr(A,"recoveryEnabled")?A.recoveryEnabled:oh.recoveryEnabled,this.recoveryEnabled)this.attemptInRepetitionRecovery=tXA}getTokenToInsert(A){let e=Jx(A,"",NaN,NaN,NaN,NaN,NaN,NaN);return e.isInsertedInRecovery=!0,e}canTokenTypeBeInsertedInRecovery(A){return!0}canTokenTypeBeDeletedInRecovery(A){return!0}tryInRepetitionRecovery(A,e,t,r){let i=this.findReSyncTokenType(),u=this.exportLexerState(),a=[],n=!1,o=this.LA(1),s=this.LA(1),l=G(()=>{let g=this.LA(0),C=this.errorMessageProvider.buildMismatchTokenMessage({expected:r,actual:o,previous:g,ruleName:this.getCurrRuleFullName()}),B=new AXA(C,o,this.LA(0));B.resyncedTokens=Cx(a),this.SAVE_ERROR(B)},"generateErrorMessage");while(!n)if(this.tokenMatcher(s,r)){l();return}else if(t.call(this)){l(),A.apply(this,e);return}else if(this.tokenMatcher(s,i))n=!0;else s=this.SKIP_TOKEN(),this.addToResyncTokens(s,a);this.importLexerState(u)}shouldInRepetitionRecoveryBeTried(A,e,t){if(t===!1)return!1;if(this.tokenMatcher(this.LA(1),A))return!1;if(this.isBackTracking())return!1;if(this.canPerformInRuleRecovery(A,this.getFollowsForInRuleRecovery(A,e)))return!1;return!0}getFollowsForInRuleRecovery(A,e){let t=this.getCurrentGrammarPath(A,e);return this.getNextPossibleTokenTypes(t)}tryInRuleRecovery(A,e){if(this.canRecoverWithSingleTokenInsertion(A,e))return this.getTokenToInsert(A);if(this.canRecoverWithSingleTokenDeletion(A)){let t=this.SKIP_TOKEN();return this.consumeToken(),t}throw new Wbt("sad sad panda")}canPerformInRuleRecovery(A,e){return this.canRecoverWithSingleTokenInsertion(A,e)||this.canRecoverWithSingleTokenDeletion(A)}canRecoverWithSingleTokenInsertion(A,e){if(!this.canTokenTypeBeInsertedInRecovery(A))return!1;if(qu(e))return!1;let t=this.LA(1);return n6(e,(i)=>this.tokenMatcher(t,i))!==void 0}canRecoverWithSingleTokenDeletion(A){if(!this.canTokenTypeBeDeletedInRecovery(A))return!1;return this.tokenMatcher(this.LA(2),A)}isInCurrentRuleReSyncSet(A){let e=this.getCurrFollowKey(),t=this.getFollowSetFromFollowKey(e);return Ns(t,A)}findReSyncTokenType(){let A=this.flattenFollowSet(),e=this.LA(1),t=2;while(!0){let r=n6(A,(i)=>klA(e,i));if(r!==void 0)return r;e=this.LA(t),t++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return RnA;let A=this.getLastExplicitRuleShortName(),e=this.getLastExplicitRuleOccurrenceIndex(),t=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(A),idxInCallingRule:e,inRule:this.shortRuleNameToFullName(t)}}buildFullFollowKeyStack(){let A=this.RULE_STACK,e=this.RULE_OCCURRENCE_STACK;return er(A,(t,r)=>{if(r===0)return RnA;return{ruleName:this.shortRuleNameToFullName(t),idxInCallingRule:e[r],inRule:this.shortRuleNameToFullName(A[r-1])}})}flattenFollowSet(){let A=er(this.buildFullFollowKeyStack(),(e)=>this.getFollowSetFromFollowKey(e));return KC(A)}getFollowSetFromFollowKey(A){if(A===RnA)return[u1];let e=A.ruleName+A.idxInCallingRule+KVA+A.inRule;return this.resyncFollows[e]}addToResyncTokens(A,e){if(!this.tokenMatcher(A,u1))e.push(A);return e}reSyncTo(A){let e=[],t=this.LA(1);while(this.tokenMatcher(t,A)===!1)t=this.SKIP_TOKEN(),this.addToResyncTokens(t,e);return Cx(e)}attemptInRepetitionRecovery(A,e,t,r,i,u,a){}getCurrentGrammarPath(A,e){let t=this.getHumanReadableRuleStack(),r=C0(this.RULE_OCCURRENCE_STACK);return{ruleStack:t,occurrenceStack:r,lastTok:A,lastTokOccurrence:e}}getHumanReadableRuleStack(){return er(this.RULE_STACK,(A)=>this.shortRuleNameToFullName(A))}};G(tXA,"attemptInRepetitionRecovery");rXA=1<<g1,iXA=2<<g1,g0A=3<<g1,c0A=4<<g1,C0A=5<<g1,BH=6<<g1;G(EH,"getKeyForAutomaticLookahead");Cni=32-Zbt,GlA=class{static{G(this,"LLkLookaheadStrategy")}constructor(A){var e;this.maxLookahead=(e=A===null||A===void 0?void 0:A.maxLookahead)!==null&&e!==void 0?e:oh.maxLookahead}validate(A){let e=this.validateNoLeftRecursion(A.rules);if(qu(e)){let t=this.validateEmptyOrAlternatives(A.rules),r=this.validateAmbiguousAlternationAlternatives(A.rules,this.maxLookahead),i=this.validateSomeNonEmptyLookaheadPath(A.rules,this.maxLookahead);return[...e,...t,...r,...i]}return e}validateNoLeftRecursion(A){return pc(A,(e)=>RlA(e,e,U3))}validateEmptyOrAlternatives(A){return pc(A,(e)=>HjA(e,U3))}validateAmbiguousAlternationAlternatives(A,e){return pc(A,(t)=>KjA(t,e,U3))}validateSomeNonEmptyLookaheadPath(A,e){return OjA(A,e,U3)}buildLookaheadForAlternation(A){return vjA(A.prodOccurrence,A.rule,A.maxLookahead,A.hasPredicates,A.dynamicTokensEnabled,FjA)}buildLookaheadForOptional(A){return kjA(A.prodOccurrence,A.rule,A.maxLookahead,A.dynamicTokensEnabled,yJ(A.prodType),xjA)}},Vbt=class{static{G(this,"LooksAhead")}initLooksAhead(A){this.dynamicTokensEnabled=hr(A,"dynamicTokensEnabled")?A.dynamicTokensEnabled:oh.dynamicTokensEnabled,this.maxLookahead=hr(A,"maxLookahead")?A.maxLookahead:oh.maxLookahead,this.lookaheadStrategy=hr(A,"lookaheadStrategy")?A.lookaheadStrategy:new GlA({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(A){Lr(A,(e)=>{this.TRACE_INIT(`${e.name} Rule Lookahead`,()=>{let{alternation:t,repetition:r,option:i,repetitionMandatory:u,repetitionMandatoryWithSeparator:a,repetitionWithSeparator:n}=uXA(e);Lr(t,(o)=>{let s=o.idx===0?"":o.idx;this.TRACE_INIT(`${MC(o)}${s}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:o.idx,rule:e,maxLookahead:o.maxLookahead||this.maxLookahead,hasPredicates:o.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),g=EH(this.fullRuleNameToShort[e.name],rXA,o.idx);this.setLaFuncCache(g,l)})}),Lr(r,(o)=>{this.computeLookaheadFunc(e,o.idx,g0A,"Repetition",o.maxLookahead,MC(o))}),Lr(i,(o)=>{this.computeLookaheadFunc(e,o.idx,iXA,"Option",o.maxLookahead,MC(o))}),Lr(u,(o)=>{this.computeLookaheadFunc(e,o.idx,c0A,"RepetitionMandatory",o.maxLookahead,MC(o))}),Lr(a,(o)=>{this.computeLookaheadFunc(e,o.idx,BH,"RepetitionMandatoryWithSeparator",o.maxLookahead,MC(o))}),Lr(n,(o)=>{this.computeLookaheadFunc(e,o.idx,C0A,"RepetitionWithSeparator",o.maxLookahead,MC(o))})})})}computeLookaheadFunc(A,e,t,r,i,u){this.TRACE_INIT(`${u}${e===0?"":e}`,()=>{let a=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:e,rule:A,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:r}),n=EH(this.fullRuleNameToShort[A.name],t,e);this.setLaFuncCache(n,a)})}getKeyForAutomaticLookahead(A,e){let t=this.getLastExplicitRuleShortName();return EH(t,A,e)}getLaFuncFromCache(A){return this.lookAheadFuncsCache.get(A)}setLaFuncCache(A,e){this.lookAheadFuncsCache.set(A,e)}},jbt=class extends B6{static{G(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments);this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(A){this.dslMethods.option.push(A)}visitRepetitionWithSeparator(A){this.dslMethods.repetitionWithSeparator.push(A)}visitRepetitionMandatory(A){this.dslMethods.repetitionMandatory.push(A)}visitRepetitionMandatoryWithSeparator(A){this.dslMethods.repetitionMandatoryWithSeparator.push(A)}visitRepetition(A){this.dslMethods.repetition.push(A)}visitAlternation(A){this.dslMethods.alternation.push(A)}},HY=new jbt;G(uXA,"collectMethods");G(B0A,"setNodeLocationOnlyOffset");G(E0A,"setNodeLocationFull");G(aXA,"addTerminalToCst");G(nXA,"addNoneTerminalToCst");G(UlA,"defineNameProp");G(oXA,"defaultVisit");G(sXA,"createBaseSemanticVisitorConstructor");G(lXA,"createBaseVisitorConstructorWithDefaults");(function(A){A[A.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",A[A.MISSING_METHOD=1]="MISSING_METHOD"})(d0A||(d0A={}));G(gXA,"validateVisitor");G(cXA,"validateMissingCstMethods");$bt=class{static{G(this,"TreeBuilder")}initTreeBuilder(A){if(this.CST_STACK=[],this.outputCst=A.outputCst,this.nodeLocationTracking=hr(A,"nodeLocationTracking")?A.nodeLocationTracking:oh.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=Uo,this.cstFinallyStateUpdate=Uo,this.cstPostTerminal=Uo,this.cstPostNonTerminal=Uo,this.cstPostRule=Uo;else if(/full/i.test(this.nodeLocationTracking))if(this.recoveryEnabled)this.setNodeLocationFromToken=E0A,this.setNodeLocationFromNode=E0A,this.cstPostRule=Uo,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery;else this.setNodeLocationFromToken=Uo,this.setNodeLocationFromNode=Uo,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular;else if(/onlyOffset/i.test(this.nodeLocationTracking))if(this.recoveryEnabled)this.setNodeLocationFromToken=B0A,this.setNodeLocationFromNode=B0A,this.cstPostRule=Uo,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery;else this.setNodeLocationFromToken=Uo,this.setNodeLocationFromNode=Uo,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular;else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=Uo,this.setNodeLocationFromNode=Uo,this.cstPostRule=Uo,this.setInitialNodeLocation=Uo;else throw Error(`Invalid <nodeLocationTracking> config option: "${A.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(A){A.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(A){A.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(A){A.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(A){let e=this.LA(1);A.location={startOffset:e.startOffset,startLine:e.startLine,startColumn:e.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(A){let e={name:A,children:Object.create(null)};this.setInitialNodeLocation(e),this.CST_STACK.push(e)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(A){let e=this.LA(0),t=A.location;if(t.startOffset<=e.startOffset===!0)t.endOffset=e.endOffset,t.endLine=e.endLine,t.endColumn=e.endColumn;else t.startOffset=NaN,t.startLine=NaN,t.startColumn=NaN}cstPostRuleOnlyOffset(A){let e=this.LA(0),t=A.location;if(t.startOffset<=e.startOffset===!0)t.endOffset=e.endOffset;else t.startOffset=NaN}cstPostTerminal(A,e){let t=this.CST_STACK[this.CST_STACK.length-1];aXA(t,e,A),this.setNodeLocationFromToken(t.location,e)}cstPostNonTerminal(A,e){let t=this.CST_STACK[this.CST_STACK.length-1];nXA(t,e,A),this.setNodeLocationFromNode(t.location,A.location)}getBaseCstVisitorConstructor(){if(ah(this.baseCstVisitorConstructor)){let A=sXA(this.className,hg(this.gastProductionsCache));return this.baseCstVisitorConstructor=A,A}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(ah(this.baseCstVisitorWithDefaultsConstructor)){let A=lXA(this.className,hg(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=A,A}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let A=this.RULE_STACK;return A[A.length-1]}getPreviousExplicitRuleShortName(){let A=this.RULE_STACK;return A[A.length-2]}getLastExplicitRuleOccurrenceIndex(){let A=this.RULE_OCCURRENCE_STACK;return A[A.length-1]}},Avt=class{static{G(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(A){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=A,this.tokVectorLength=A.length}get input(){return this.tokVector}SKIP_TOKEN(){if(this.currIdx<=this.tokVector.length-2)return this.consumeToken(),this.LA(1);else return VH}LA(A){let e=this.currIdx+A;if(e<0||this.tokVectorLength<=e)return VH;else return this.tokVector[e]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(A){this.currIdx=A}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},evt=class{static{G(this,"RecognizerApi")}ACTION(A){return A.call(this)}consume(A,e,t){return this.consumeInternal(e,A,t)}subrule(A,e,t){return this.subruleInternal(e,A,t)}option(A,e){return this.optionInternal(e,A)}or(A,e){return this.orInternal(e,A)}many(A,e){return this.manyInternal(A,e)}atLeastOne(A,e){return this.atLeastOneInternal(A,e)}CONSUME(A,e){return this.consumeInternal(A,0,e)}CONSUME1(A,e){return this.consumeInternal(A,1,e)}CONSUME2(A,e){return this.consumeInternal(A,2,e)}CONSUME3(A,e){return this.consumeInternal(A,3,e)}CONSUME4(A,e){return this.consumeInternal(A,4,e)}CONSUME5(A,e){return this.consumeInternal(A,5,e)}CONSUME6(A,e){return this.consumeInternal(A,6,e)}CONSUME7(A,e){return this.consumeInternal(A,7,e)}CONSUME8(A,e){return this.consumeInternal(A,8,e)}CONSUME9(A,e){return this.consumeInternal(A,9,e)}SUBRULE(A,e){return this.subruleInternal(A,0,e)}SUBRULE1(A,e){return this.subruleInternal(A,1,e)}SUBRULE2(A,e){return this.subruleInternal(A,2,e)}SUBRULE3(A,e){return this.subruleInternal(A,3,e)}SUBRULE4(A,e){return this.subruleInternal(A,4,e)}SUBRULE5(A,e){return this.subruleInternal(A,5,e)}SUBRULE6(A,e){return this.subruleInternal(A,6,e)}SUBRULE7(A,e){return this.subruleInternal(A,7,e)}SUBRULE8(A,e){return this.subruleInternal(A,8,e)}SUBRULE9(A,e){return this.subruleInternal(A,9,e)}OPTION(A){return this.optionInternal(A,0)}OPTION1(A){return this.optionInternal(A,1)}OPTION2(A){return this.optionInternal(A,2)}OPTION3(A){return this.optionInternal(A,3)}OPTION4(A){return this.optionInternal(A,4)}OPTION5(A){return this.optionInternal(A,5)}OPTION6(A){return this.optionInternal(A,6)}OPTION7(A){return this.optionInternal(A,7)}OPTION8(A){return this.optionInternal(A,8)}OPTION9(A){return this.optionInternal(A,9)}OR(A){return this.orInternal(A,0)}OR1(A){return this.orInternal(A,1)}OR2(A){return this.orInternal(A,2)}OR3(A){return this.orInternal(A,3)}OR4(A){return this.orInternal(A,4)}OR5(A){return this.orInternal(A,5)}OR6(A){return this.orInternal(A,6)}OR7(A){return this.orInternal(A,7)}OR8(A){return this.orInternal(A,8)}OR9(A){return this.orInternal(A,9)}MANY(A){this.manyInternal(0,A)}MANY1(A){this.manyInternal(1,A)}MANY2(A){this.manyInternal(2,A)}MANY3(A){this.manyInternal(3,A)}MANY4(A){this.manyInternal(4,A)}MANY5(A){this.manyInternal(5,A)}MANY6(A){this.manyInternal(6,A)}MANY7(A){this.manyInternal(7,A)}MANY8(A){this.manyInternal(8,A)}MANY9(A){this.manyInternal(9,A)}MANY_SEP(A){this.manySepFirstInternal(0,A)}MANY_SEP1(A){this.manySepFirstInternal(1,A)}MANY_SEP2(A){this.manySepFirstInternal(2,A)}MANY_SEP3(A){this.manySepFirstInternal(3,A)}MANY_SEP4(A){this.manySepFirstInternal(4,A)}MANY_SEP5(A){this.manySepFirstInternal(5,A)}MANY_SEP6(A){this.manySepFirstInternal(6,A)}MANY_SEP7(A){this.manySepFirstInternal(7,A)}MANY_SEP8(A){this.manySepFirstInternal(8,A)}MANY_SEP9(A){this.manySepFirstInternal(9,A)}AT_LEAST_ONE(A){this.atLeastOneInternal(0,A)}AT_LEAST_ONE1(A){return this.atLeastOneInternal(1,A)}AT_LEAST_ONE2(A){this.atLeastOneInternal(2,A)}AT_LEAST_ONE3(A){this.atLeastOneInternal(3,A)}AT_LEAST_ONE4(A){this.atLeastOneInternal(4,A)}AT_LEAST_ONE5(A){this.atLeastOneInternal(5,A)}AT_LEAST_ONE6(A){this.atLeastOneInternal(6,A)}AT_LEAST_ONE7(A){this.atLeastOneInternal(7,A)}AT_LEAST_ONE8(A){this.atLeastOneInternal(8,A)}AT_LEAST_ONE9(A){this.atLeastOneInternal(9,A)}AT_LEAST_ONE_SEP(A){this.atLeastOneSepFirstInternal(0,A)}AT_LEAST_ONE_SEP1(A){this.atLeastOneSepFirstInternal(1,A)}AT_LEAST_ONE_SEP2(A){this.atLeastOneSepFirstInternal(2,A)}AT_LEAST_ONE_SEP3(A){this.atLeastOneSepFirstInternal(3,A)}AT_LEAST_ONE_SEP4(A){this.atLeastOneSepFirstInternal(4,A)}AT_LEAST_ONE_SEP5(A){this.atLeastOneSepFirstInternal(5,A)}AT_LEAST_ONE_SEP6(A){this.atLeastOneSepFirstInternal(6,A)}AT_LEAST_ONE_SEP7(A){this.atLeastOneSepFirstInternal(7,A)}AT_LEAST_ONE_SEP8(A){this.atLeastOneSepFirstInternal(8,A)}AT_LEAST_ONE_SEP9(A){this.atLeastOneSepFirstInternal(9,A)}RULE(A,e,t=jH){if(Ns(this.definedRulesNames,A)){let u={message:U3.buildDuplicateRuleNameError({topLevelRule:A,grammarName:this.className}),type:Ls.DUPLICATE_RULE_NAME,ruleName:A};this.definitionErrors.push(u)}this.definedRulesNames.push(A);let r=this.defineRule(A,e,t);return this[A]=r,r}OVERRIDE_RULE(A,e,t=jH){let r=YjA(A,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(r);let i=this.defineRule(A,e,t);return this[A]=i,i}BACKTRACK(A,e){return function(){this.isBackTrackingStack.push(1);let t=this.saveRecogState();try{return A.apply(this,e),!0}catch(r){if(dx(r))return!1;else throw r}finally{this.reloadRecogState(t),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return GVA(no(this.gastProductionsCache))}},tvt=class{static{G(this,"RecognizerEngine")}initRecognizerEngine(A,e){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=Ex,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},hr(e,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
|
||
See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
|
||
For Further details.`);if(Ki(A)){if(qu(A))throw Error(`A Token Vocabulary cannot be empty.
|
||
Note that the first argument for the parser constructor
|
||
is no longer a Token vector (since v4.0).`);if(typeof A[0].startOffset==="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument.
|
||
See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
|
||
For Further details.`)}if(Ki(A))this.tokensMap=pg(A,(i,u)=>(i[u.name]=u,i),{});else if(hr(A,"modes")&&JC(KC(no(A.modes)),DjA)){let i=KC(no(A.modes)),u=hlA(i);this.tokensMap=pg(u,(a,n)=>(a[n.name]=n,a),{})}else if(mc(A))this.tokensMap=C0(A);else throw Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=u1;let t=hr(A,"modes")?KC(no(A.modes)):no(A),r=JC(t,(i)=>qu(i.categoryMatches));this.tokenMatcher=r?Ex:d6,I6(no(this.tokensMap))}defineRule(A,e,t){if(this.selfAnalysisDone)throw Error(`Grammar rule <${A}> may not be defined after the 'performSelfAnalysis' method has been called'
|
||
Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let r=hr(t,"resyncEnabled")?t.resyncEnabled:jH.resyncEnabled,i=hr(t,"recoveryValueFunc")?t.recoveryValueFunc:jH.recoveryValueFunc,u=this.ruleShortNameIdx<<zbt+g1;this.ruleShortNameIdx++,this.shortRuleNameToFull[u]=A,this.fullRuleNameToShort[A]=u;let a;if(this.outputCst===!0)a=G(function(...s){try{this.ruleInvocationStateUpdate(u,A,this.subruleIdx),e.apply(this,s);let l=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(l),l}catch(l){return this.invokeRuleCatch(l,r,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry");else a=G(function(...s){try{return this.ruleInvocationStateUpdate(u,A,this.subruleIdx),e.apply(this,s)}catch(l){return this.invokeRuleCatch(l,r,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst");return Object.assign(a,{ruleName:A,originalGrammarAction:e})}invokeRuleCatch(A,e,t){let r=this.RULE_STACK.length===1,i=e&&!this.isBackTracking()&&this.recoveryEnabled;if(dx(A)){let u=A;if(i){let a=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(a))if(u.resyncedTokens=this.reSyncTo(a),this.outputCst){let n=this.CST_STACK[this.CST_STACK.length-1];return n.recoveredNode=!0,n}else return t(A);else{if(this.outputCst){let n=this.CST_STACK[this.CST_STACK.length-1];n.recoveredNode=!0,u.partialCstResult=n}throw u}}else if(r)return this.moveToTerminatedState(),t(A);else throw u}else throw A}optionInternal(A,e){let t=this.getKeyForAutomaticLookahead(iXA,e);return this.optionInternalLogic(A,e,t)}optionInternalLogic(A,e,t){let r=this.getLaFuncFromCache(t),i;if(typeof A!=="function"){i=A.DEF;let u=A.GATE;if(u!==void 0){let a=r;r=G(()=>u.call(this)&&a.call(this),"lookAheadFunc")}}else i=A;if(r.call(this)===!0)return i.call(this);return}atLeastOneInternal(A,e){let t=this.getKeyForAutomaticLookahead(c0A,A);return this.atLeastOneInternalLogic(A,e,t)}atLeastOneInternalLogic(A,e,t){let r=this.getLaFuncFromCache(t),i;if(typeof e!=="function"){i=e.DEF;let u=e.GATE;if(u!==void 0){let a=r;r=G(()=>u.call(this)&&a.call(this),"lookAheadFunc")}}else i=e;if(r.call(this)===!0){let u=this.doSingleRepetition(i);while(r.call(this)===!0&&u===!0)u=this.doSingleRepetition(i)}else throw this.raiseEarlyExitException(A,Ga.REPETITION_MANDATORY,e.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[A,e],r,c0A,A,Ybt)}atLeastOneSepFirstInternal(A,e){let t=this.getKeyForAutomaticLookahead(BH,A);this.atLeastOneSepFirstInternalLogic(A,e,t)}atLeastOneSepFirstInternalLogic(A,e,t){let{DEF:r,SEP:i}=e;if(this.getLaFuncFromCache(t).call(this)===!0){r.call(this);let a=G(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");while(this.tokenMatcher(this.LA(1),i)===!0)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[A,i,a,r,WPA],a,BH,A,WPA)}else throw this.raiseEarlyExitException(A,Ga.REPETITION_MANDATORY_WITH_SEPARATOR,e.ERR_MSG)}manyInternal(A,e){let t=this.getKeyForAutomaticLookahead(g0A,A);return this.manyInternalLogic(A,e,t)}manyInternalLogic(A,e,t){let r=this.getLaFuncFromCache(t),i;if(typeof e!=="function"){i=e.DEF;let a=e.GATE;if(a!==void 0){let n=r;r=G(()=>a.call(this)&&n.call(this),"lookaheadFunction")}}else i=e;let u=!0;while(r.call(this)===!0&&u===!0)u=this.doSingleRepetition(i);this.attemptInRepetitionRecovery(this.manyInternal,[A,e],r,g0A,A,Tbt,u)}manySepFirstInternal(A,e){let t=this.getKeyForAutomaticLookahead(C0A,A);this.manySepFirstInternalLogic(A,e,t)}manySepFirstInternalLogic(A,e,t){let{DEF:r,SEP:i}=e;if(this.getLaFuncFromCache(t).call(this)===!0){r.call(this);let a=G(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");while(this.tokenMatcher(this.LA(1),i)===!0)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[A,i,a,r,_PA],a,C0A,A,_PA)}}repetitionSepSecondInternal(A,e,t,r,i){while(t())this.CONSUME(e),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[A,e,t,r,i],t,BH,A,i)}doSingleRepetition(A){let e=this.getLexerPosition();return A.call(this),this.getLexerPosition()>e}orInternal(A,e){let t=this.getKeyForAutomaticLookahead(rXA,e),r=Ki(A)?A:A.DEF,u=this.getLaFuncFromCache(t).call(this,r);if(u!==void 0)return r[u].ALT.call(this);this.raiseNoAltException(e,A.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let A=this.LA(1),e=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:A,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new Pbt(e,A))}}subruleInternal(A,e,t){let r;try{let i=t!==void 0?t.ARGS:void 0;return this.subruleIdx=e,r=A.apply(this,i),this.cstPostNonTerminal(r,t!==void 0&&t.LABEL!==void 0?t.LABEL:A.ruleName),r}catch(i){throw this.subruleInternalError(i,t,A.ruleName)}}subruleInternalError(A,e,t){if(dx(A)&&A.partialCstResult!==void 0)this.cstPostNonTerminal(A.partialCstResult,e!==void 0&&e.LABEL!==void 0?e.LABEL:t),delete A.partialCstResult;throw A}consumeInternal(A,e,t){let r;try{let i=this.LA(1);if(this.tokenMatcher(i,A)===!0)this.consumeToken(),r=i;else this.consumeInternalError(A,i,t)}catch(i){r=this.consumeInternalRecovery(A,e,i)}return this.cstPostTerminal(t!==void 0&&t.LABEL!==void 0?t.LABEL:A.name,r),r}consumeInternalError(A,e,t){let r,i=this.LA(0);if(t!==void 0&&t.ERR_MSG)r=t.ERR_MSG;else r=this.errorMessageProvider.buildMismatchTokenMessage({expected:A,actual:e,previous:i,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new AXA(r,e,i))}consumeInternalRecovery(A,e,t){if(this.recoveryEnabled&&t.name==="MismatchedTokenException"&&!this.isBackTracking()){let r=this.getFollowsForInRuleRecovery(A,e);try{return this.tryInRuleRecovery(A,r)}catch(i){if(i.name===eXA)throw t;else throw i}}else throw t}saveRecogState(){let A=this.errors,e=C0(this.RULE_STACK);return{errors:A,lexerState:this.exportLexerState(),RULE_STACK:e,CST_STACK:this.CST_STACK}}reloadRecogState(A){this.errors=A.errors,this.importLexerState(A.lexerState),this.RULE_STACK=A.RULE_STACK}ruleInvocationStateUpdate(A,e,t){this.RULE_OCCURRENCE_STACK.push(t),this.RULE_STACK.push(A),this.cstInvocationStateUpdate(e)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let A=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[A]}shortRuleNameToFullName(A){return this.shortRuleNameToFull[A]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),u1)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},rvt=class{static{G(this,"ErrorHandler")}initErrorHandler(A){this._errors=[],this.errorMessageProvider=hr(A,"errorMessageProvider")?A.errorMessageProvider:oh.errorMessageProvider}SAVE_ERROR(A){if(dx(A))return A.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:C0(this.RULE_OCCURRENCE_STACK)},this._errors.push(A),A;else throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return C0(this._errors)}set errors(A){this._errors=A}raiseEarlyExitException(A,e,t){let r=this.getCurrRuleFullName(),i=this.getGAstProductions()[r],a=Px(A,i,e,this.maxLookahead)[0],n=[];for(let s=1;s<=this.maxLookahead;s++)n.push(this.LA(s));let o=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:a,actual:n,previous:this.LA(0),customUserDescription:t,ruleName:r});throw this.SAVE_ERROR(new _bt(o,this.LA(1),this.LA(0)))}raiseNoAltException(A,e){let t=this.getCurrRuleFullName(),r=this.getGAstProductions()[t],i=Ox(A,r,this.maxLookahead),u=[];for(let o=1;o<=this.maxLookahead;o++)u.push(this.LA(o));let a=this.LA(0),n=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:i,actual:u,previous:a,customUserDescription:e,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Obt(n,this.LA(1),a))}},ivt=class{static{G(this,"ContentAssist")}initContentAssist(){}computeContentAssist(A,e){let t=this.gastProductionsCache[A];if(ah(t))throw Error(`Rule ->${A}<- does not exist in this grammar.`);return FlA([t],e,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(A){let e=PC(A.ruleStack),r=this.getGAstProductions()[e];return new Mbt(r,A).startWalking()}},bJ={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(bJ);zPA=Math.pow(2,g1)-1,CXA=zw({name:"RECORDING_PHASE_TOKEN",pattern:Fs.NA});I6([CXA]);BXA=Jx(CXA,`This IToken indicates the Parser is in Recording Phase
|
||
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(BXA);uvt={name:`This CSTNode indicates the Parser is in Recording Phase
|
||
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},avt=class{static{G(this,"GastRecorder")}initGastRecorder(A){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let A=0;A<10;A++){let e=A>0?A:"";this[`CONSUME${e}`]=function(t,r){return this.consumeInternalRecord(t,A,r)},this[`SUBRULE${e}`]=function(t,r){return this.subruleInternalRecord(t,A,r)},this[`OPTION${e}`]=function(t){return this.optionInternalRecord(t,A)},this[`OR${e}`]=function(t){return this.orInternalRecord(t,A)},this[`MANY${e}`]=function(t){this.manyInternalRecord(A,t)},this[`MANY_SEP${e}`]=function(t){this.manySepFirstInternalRecord(A,t)},this[`AT_LEAST_ONE${e}`]=function(t){this.atLeastOneInternalRecord(A,t)},this[`AT_LEAST_ONE_SEP${e}`]=function(t){this.atLeastOneSepFirstInternalRecord(A,t)}}this.consume=function(A,e,t){return this.consumeInternalRecord(e,A,t)},this.subrule=function(A,e,t){return this.subruleInternalRecord(e,A,t)},this.option=function(A,e){return this.optionInternalRecord(e,A)},this.or=function(A,e){return this.orInternalRecord(e,A)},this.many=function(A,e){this.manyInternalRecord(A,e)},this.atLeastOne=function(A,e){this.atLeastOneInternalRecord(A,e)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let A=this;for(let e=0;e<10;e++){let t=e>0?e:"";delete A[`CONSUME${t}`],delete A[`SUBRULE${t}`],delete A[`OPTION${t}`],delete A[`OR${t}`],delete A[`MANY${t}`],delete A[`MANY_SEP${t}`],delete A[`AT_LEAST_ONE${t}`],delete A[`AT_LEAST_ONE_SEP${t}`]}delete A.consume,delete A.subrule,delete A.option,delete A.or,delete A.many,delete A.atLeastOne,delete A.ACTION,delete A.BACKTRACK,delete A.LA})}ACTION_RECORD(A){}BACKTRACK_RECORD(A,e){return()=>!0}LA_RECORD(A){return VH}topLevelRuleRecord(A,e){try{let t=new C6({definition:[],name:A});return t.name=A,this.recordingProdStack.push(t),e.call(this),this.recordingProdStack.pop(),t}catch(t){if(t.KNOWN_RECORDER_ERROR!==!0)try{t.message=t.message+`
|
||
This error was thrown during the "grammar recording phase" For more info see:
|
||
https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch(r){throw t}throw t}}optionInternalRecord(A,e){return Mw.call(this,c0,A,e)}atLeastOneInternalRecord(A,e){Mw.call(this,fg,e,A)}atLeastOneSepFirstInternalRecord(A,e){Mw.call(this,mg,e,A,qPA)}manyInternalRecord(A,e){Mw.call(this,$a,e,A)}manySepFirstInternalRecord(A,e){Mw.call(this,bl,e,A,qPA)}orInternalRecord(A,e){return EXA.call(this,A,e)}subruleInternalRecord(A,e,t){if(Ix(e),!A||hr(A,"ruleName")===!1){let a=Error(`<SUBRULE${I0A(e)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(A)}>
|
||
inside top level rule: <${this.recordingProdStack[0].name}>`);throw a.KNOWN_RECORDER_ERROR=!0,a}let r=P3(this.recordingProdStack),i=A.ruleName,u=new Ss({idx:e,nonTerminalName:i,label:t===null||t===void 0?void 0:t.LABEL,referencedRule:void 0});return r.definition.push(u),this.outputCst?uvt:bJ}consumeInternalRecord(A,e,t){if(Ix(e),!blA(A)){let u=Error(`<CONSUME${I0A(e)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(A)}>
|
||
inside top level rule: <${this.recordingProdStack[0].name}>`);throw u.KNOWN_RECORDER_ERROR=!0,u}let r=P3(this.recordingProdStack),i=new ia({idx:e,terminalType:A,label:t===null||t===void 0?void 0:t.LABEL});return r.definition.push(i),BXA}};G(Mw,"recordProd");G(EXA,"recordOrProd");G(I0A,"getIdxSuffix");G(Ix,"assertMethodIdxIsValid");nvt=class{static{G(this,"PerformanceTracer")}initPerformanceTracer(A){if(hr(A,"traceInitPerf")){let e=A.traceInitPerf,t=typeof e==="number";this.traceInitMaxIdent=t?e:1/0,this.traceInitPerf=t?e>0:e}else this.traceInitMaxIdent=0,this.traceInitPerf=oh.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(A,e){if(this.traceInitPerf===!0){this.traceInitIndent++;let t=Array(this.traceInitIndent+1).join("\t");if(this.traceInitIndent<this.traceInitMaxIdent)console.log(`${t}--> <${A}>`);let{time:r,value:i}=plA(e),u=r>10?console.warn:console.log;if(this.traceInitIndent<this.traceInitMaxIdent)u(`${t}<-- <${A}> time: ${r}ms`);return this.traceInitIndent--,i}else return e()}};G(dXA,"applyMixins");VH=Jx(u1,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(VH);oh=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:_w,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),jH=Object.freeze({recoveryValueFunc:G(()=>{return},"recoveryValueFunc"),resyncEnabled:!0});(function(A){A[A.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",A[A.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",A[A.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",A[A.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",A[A.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",A[A.LEFT_RECURSION=5]="LEFT_RECURSION",A[A.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",A[A.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",A[A.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",A[A.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",A[A.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",A[A.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",A[A.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",A[A.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(Ls||(Ls={}));G(h0A,"EMPTY_ALT");MlA=class A{static{G(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated.\t\nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let t=this.className;this.TRACE_INIT("toFastProps",()=>{flA(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Lr(this.definedRulesNames,(i)=>{let a=this[i].originalGrammarAction,n;this.TRACE_INIT(`${i} Rule`,()=>{n=this.topLevelRuleRecord(i,a)}),this.gastProductionsCache[i]=n})}finally{this.disableRecording()}});let r=[];if(this.TRACE_INIT("Grammar Resolving",()=>{r=qjA({rules:no(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(r)}),this.TRACE_INIT("Grammar Validations",()=>{if(qu(r)&&this.skipValidations===!1){let i=zjA({rules:no(this.gastProductionsCache),tokenTypes:no(this.tokensMap),errMsgProvider:U3,grammarName:t}),u=NjA({lookaheadStrategy:this.lookaheadStrategy,rules:no(this.gastProductionsCache),tokenTypes:no(this.tokensMap),grammarName:t});this.definitionErrors=this.definitionErrors.concat(i,u)}}),qu(this.definitionErrors)){if(this.recoveryEnabled)this.TRACE_INIT("computeAllProdsFollows",()=>{let i=JVA(no(this.gastProductionsCache));this.resyncFollows=i});this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,u;(u=(i=this.lookaheadStrategy).initialize)===null||u===void 0||u.call(i,{rules:no(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(no(this.gastProductionsCache))})}if(!A.DEFER_DEFINITION_ERRORS_HANDLING&&!qu(this.definitionErrors))throw e=er(this.definitionErrors,(i)=>i.message),Error(`Parser Definition Errors detected:
|
||
${e.join(`
|
||
-------------------------------
|
||
`)}`)})}constructor(e,t){this.definitionErrors=[],this.selfAnalysisDone=!1;let r=this;if(r.initErrorHandler(t),r.initLexerAdapter(),r.initLooksAhead(t),r.initRecognizerEngine(e,t),r.initRecoverable(t),r.initTreeBuilder(t),r.initContentAssist(),r.initGastRecorder(t),r.initPerformanceTracer(t),hr(t,"ignoredIssues"))throw Error(`The <ignoredIssues> IParserConfig property has been deprecated.
|
||
Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
|
||
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
|
||
For further details.`);this.skipValidations=hr(t,"skipValidations")?t.skipValidations:oh.skipValidations}};MlA.DEFER_DEFINITION_ERRORS_HANDLING=!1;dXA(MlA,[qbt,Vbt,$bt,Avt,tvt,evt,rvt,ivt,avt,nvt]);ovt=class extends MlA{static{G(this,"EmbeddedActionsParser")}constructor(A,e=oh){let t=C0(e);t.outputCst=!1;super(A,t)}};G(IXA,"arrayMap");hXA=IXA;G(QXA,"listCacheClear");svt=QXA;G(pXA,"eq");fXA=pXA;G(mXA,"assocIndexOf");vJ=mXA,lvt=Array.prototype,gvt=lvt.splice;G(DXA,"listCacheDelete");cvt=DXA;G(yXA,"listCacheGet");Cvt=yXA;G(wXA,"listCacheHas");Bvt=wXA;G(bXA,"listCacheSet");Evt=bXA;G(nm,"ListCache");nm.prototype.clear=svt;nm.prototype.delete=cvt;nm.prototype.get=Cvt;nm.prototype.has=Bvt;nm.prototype.set=Evt;kJ=nm;G(vXA,"stackClear");dvt=vXA;G(kXA,"stackDelete");Ivt=kXA;G(FXA,"stackGet");hvt=FXA;G(xXA,"stackHas");Qvt=xXA,pvt=typeof global=="object"&&global&&global.Object===Object&&global,SXA=pvt,fvt=typeof self=="object"&&self&&self.Object===Object&&self,mvt=SXA||fvt||Function("return this")(),Ch=mvt,Dvt=Ch.Symbol,jE=Dvt,LXA=Object.prototype,yvt=LXA.hasOwnProperty,wvt=LXA.toString,hF=jE?jE.toStringTag:void 0;G(RXA,"getRawTag");bvt=RXA,vvt=Object.prototype,kvt=vvt.toString;G(NXA,"objectToString");Fvt=NXA,ZPA=jE?jE.toStringTag:void 0;G(GXA,"baseGetTag");h6=GXA;G(UXA,"isObject");TlA=UXA;G(MXA,"isFunction");TXA=MXA,Uvt=Ch["__core-js_shared__"],NnA=Uvt,VPA=function(){var A=/[^.]+$/.exec(NnA&&NnA.keys&&NnA.keys.IE_PROTO||"");return A?"Symbol(src)_1."+A:""}();G(YXA,"isMasked");Mvt=YXA,Tvt=Function.prototype,Yvt=Tvt.toString;G(HXA,"toSource");om=HXA,Hvt=/[\\^$.*+?()[\]{}|]/g,Kvt=/^\[object .+?Constructor\]$/,Jvt=Function.prototype,Ovt=Object.prototype,Pvt=Jvt.toString,_vt=Ovt.hasOwnProperty,Wvt=RegExp("^"+Pvt.call(_vt).replace(Hvt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");G(KXA,"baseIsNative");qvt=KXA;G(JXA,"getValue");zvt=JXA;G(OXA,"getNative");Q6=OXA,Zvt=Q6(Ch,"Map"),hx=Zvt,Vvt=Q6(Object,"create"),Qx=Vvt;G(PXA,"hashClear");jvt=PXA;G(_XA,"hashDelete");Xvt=_XA,Akt=Object.prototype,ekt=Akt.hasOwnProperty;G(WXA,"hashGet");tkt=WXA,rkt=Object.prototype,ikt=rkt.hasOwnProperty;G(qXA,"hashHas");ukt=qXA;G(zXA,"hashSet");nkt=zXA;G(sm,"Hash");sm.prototype.clear=jvt;sm.prototype.delete=Xvt;sm.prototype.get=tkt;sm.prototype.has=ukt;sm.prototype.set=nkt;jPA=sm;G(ZXA,"mapCacheClear");okt=ZXA;G(VXA,"isKeyable");skt=VXA;G(jXA,"getMapData");FJ=jXA;G(XXA,"mapCacheDelete");lkt=XXA;G($XA,"mapCacheGet");gkt=$XA;G(A$A,"mapCacheHas");ckt=A$A;G(e$A,"mapCacheSet");Ckt=e$A;G(lm,"MapCache");lm.prototype.clear=okt;lm.prototype.delete=lkt;lm.prototype.get=gkt;lm.prototype.has=ckt;lm.prototype.set=Ckt;xJ=lm;G(t$A,"stackSet");Ekt=t$A;G(gm,"Stack");gm.prototype.clear=dvt;gm.prototype.delete=Ivt;gm.prototype.get=hvt;gm.prototype.has=Qvt;gm.prototype.set=Ekt;dH=gm;G(r$A,"setCacheAdd");Ikt=r$A;G(i$A,"setCacheHas");hkt=i$A;G(px,"SetCache");px.prototype.add=px.prototype.push=Ikt;px.prototype.has=hkt;u$A=px;G(a$A,"arraySome");Qkt=a$A;G(n$A,"cacheHas");o$A=n$A;G(s$A,"equalArrays");l$A=s$A,mkt=Ch.Uint8Array,XPA=mkt;G(g$A,"mapToArray");Dkt=g$A;G(c$A,"setToArray");YlA=c$A,$PA=jE?jE.prototype:void 0,GnA=$PA?$PA.valueOf:void 0;G(C$A,"equalByTag");Mkt=C$A;G(B$A,"arrayPush");E$A=B$A,Tkt=Array.isArray,Rs=Tkt;G(d$A,"baseGetAllKeys");Ykt=d$A;G(I$A,"arrayFilter");h$A=I$A;G(Q$A,"stubArray");Hkt=Q$A,Kkt=Object.prototype,Jkt=Kkt.propertyIsEnumerable,A_A=Object.getOwnPropertySymbols,Okt=!A_A?Hkt:function(A){if(A==null)return[];return A=Object(A),h$A(A_A(A),function(e){return Jkt.call(A,e)})},Pkt=Okt;G(p$A,"baseTimes");_kt=p$A;G(f$A,"isObjectLike");o6=f$A;G(m$A,"baseIsArguments");e_A=m$A,D$A=Object.prototype,qkt=D$A.hasOwnProperty,zkt=D$A.propertyIsEnumerable,Zkt=e_A(function(){return arguments}())?e_A:function(A){return o6(A)&&qkt.call(A,"callee")&&!zkt.call(A,"callee")},SJ=Zkt;G(y$A,"stubFalse");Vkt=y$A,w$A=typeof O0=="object"&&O0&&!O0.nodeType&&O0,t_A=w$A&&typeof Kn=="object"&&Kn&&!Kn.nodeType&&Kn,jkt=t_A&&t_A.exports===w$A,r_A=jkt?Ch.Buffer:void 0,Xkt=r_A?r_A.isBuffer:void 0,$kt=Xkt||Vkt,XH=$kt,eFt=/^(?:0|[1-9]\d*)$/;G(b$A,"isIndex");v$A=b$A;G(k$A,"isLength");HlA=k$A,ra={};ra[hFt]=ra[QFt]=ra[pFt]=ra[fFt]=ra[mFt]=ra[DFt]=ra[yFt]=ra[wFt]=ra[bFt]=!0;ra[rFt]=ra[iFt]=ra[dFt]=ra[uFt]=ra[IFt]=ra[aFt]=ra[nFt]=ra[oFt]=ra[sFt]=ra[lFt]=ra[gFt]=ra[cFt]=ra[CFt]=ra[BFt]=ra[EFt]=!1;G(F$A,"baseIsTypedArray");vFt=F$A;G(x$A,"baseUnary");kFt=x$A,S$A=typeof O0=="object"&&O0&&!O0.nodeType&&O0,VF=S$A&&typeof Kn=="object"&&Kn&&!Kn.nodeType&&Kn,FFt=VF&&VF.exports===S$A,UnA=FFt&&SXA.process,xFt=function(){try{var A=VF&&VF.require&&VF.require("util").types;if(A)return A;return UnA&&UnA.binding&&UnA.binding("util")}catch(e){}}(),i_A=xFt,u_A=i_A&&i_A.isTypedArray,SFt=u_A?kFt(u_A):vFt,KlA=SFt,LFt=Object.prototype,RFt=LFt.hasOwnProperty;G(L$A,"arrayLikeKeys");NFt=L$A,GFt=Object.prototype;G(R$A,"isPrototype");N$A=R$A;G(G$A,"overArg");UFt=G$A,MFt=UFt(Object.keys,Object),TFt=MFt,YFt=Object.prototype,HFt=YFt.hasOwnProperty;G(U$A,"baseKeys");M$A=U$A;G(T$A,"isArrayLike");LJ=T$A;G(Y$A,"keys");JlA=Y$A;G(H$A,"getAllKeys");a_A=H$A,JFt=Object.prototype,OFt=JFt.hasOwnProperty;G(K$A,"equalObjects");PFt=K$A,_Ft=Q6(Ch,"DataView"),Q0A=_Ft,WFt=Q6(Ch,"Promise"),p0A=WFt,qFt=Q6(Ch,"Set"),Zw=qFt,zFt=Q6(Ch,"WeakMap"),f0A=zFt,VFt=om(Q0A),jFt=om(hx),XFt=om(p0A),$Ft=om(Zw),Axt=om(f0A),h3=h6;if(Q0A&&h3(new Q0A(new ArrayBuffer(1)))!=g_A||hx&&h3(new hx)!=n_A||p0A&&h3(p0A.resolve())!=o_A||Zw&&h3(new Zw)!=s_A||f0A&&h3(new f0A)!=l_A)h3=G(function(A){var e=h6(A),t=e==ZFt?A.constructor:void 0,r=t?om(t):"";if(r)switch(r){case VFt:return g_A;case jFt:return n_A;case XFt:return o_A;case $Ft:return s_A;case Axt:return l_A}return e},"getTag");m0A=h3,txt=Object.prototype,B_A=txt.hasOwnProperty;G(J$A,"baseIsEqualDeep");rxt=J$A;G(OlA,"baseIsEqual");O$A=OlA;G(P$A,"baseIsMatch");axt=P$A;G(_$A,"isStrictComparable");W$A=_$A;G(q$A,"getMatchData");nxt=q$A;G(z$A,"matchesStrictComparable");Z$A=z$A;G(V$A,"baseMatches");oxt=V$A;G(j$A,"isSymbol");RJ=j$A,lxt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,gxt=/^\w*$/;G(X$A,"isKey");PlA=X$A;G(NJ,"memoize");NJ.Cache=xJ;Cxt=NJ;G($$A,"memoizeCapped");Ext=$$A,dxt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ixt=/\\(\\)?/g,hxt=Ext(function(A){var e=[];if(A.charCodeAt(0)===46)e.push("");return A.replace(dxt,function(t,r,i,u){e.push(i?u.replace(Ixt,"$1"):r||t)}),e}),Qxt=hxt,E_A=jE?jE.prototype:void 0,d_A=E_A?E_A.toString:void 0;G(_lA,"baseToString");fxt=_lA;G(AAe,"toString");mxt=AAe;G(eAe,"castPath");tAe=eAe;G(rAe,"toKey");GJ=rAe;G(iAe,"baseGet");uAe=iAe;G(aAe,"get");yxt=aAe;G(nAe,"baseHasIn");wxt=nAe;G(oAe,"hasPath");bxt=oAe;G(sAe,"hasIn");vxt=sAe;G(lAe,"baseMatchesProperty");xxt=lAe;G(gAe,"identity");WlA=gAe;G(cAe,"baseProperty");Sxt=cAe;G(CAe,"basePropertyDeep");Lxt=CAe;G(BAe,"property");Rxt=BAe;G(EAe,"baseIteratee");UJ=EAe;G(dAe,"createBaseFor");Nxt=dAe,Gxt=Nxt(),Uxt=Gxt;G(IAe,"baseForOwn");Mxt=IAe;G(hAe,"createBaseEach");Txt=hAe,Yxt=Txt(Mxt),MJ=Yxt;G(QAe,"baseMap");Hxt=QAe;G(pAe,"map");Ah=pAe;G(fAe,"baseFilter");Kxt=fAe;G(mAe,"filter");Jxt=mAe;G(W3,"buildATNKey");qlA=class{static{G(this,"AbstractTransition")}constructor(A){this.target=A}isEpsilon(){return!1}},zlA=class extends qlA{static{G(this,"AtomTransition")}constructor(A,e){super(A);this.tokenType=e}},bAe=class extends qlA{static{G(this,"EpsilonTransition")}constructor(A){super(A)}isEpsilon(){return!0}},ZlA=class extends qlA{static{G(this,"RuleTransition")}constructor(A,e,t){super(A);this.rule=e,this.followState=t}isEpsilon(){return!0}};G(vAe,"createATN");G(kAe,"createRuleStartAndStopATNStates");G(VlA,"atom");G(FAe,"repetition");G(xAe,"repetitionSep");G(SAe,"repetitionMandatory");G(LAe,"repetitionMandatorySep");G(RAe,"alternation");G(NAe,"option");G(c1,"block");G(jlA,"plus");G(XlA,"star");G(GAe,"optional");G(Bh,"defineDecisionState");G(cm,"makeAlts");G(UAe,"getProdType");G(MAe,"makeBlock");G(TJ,"tokenRef");G(TAe,"ruleRef");G(YAe,"buildRuleHandle");G(dn,"epsilon");G(oo,"newState");G(YJ,"addTransition");G(HAe,"removeState");$H={},D0A=class{static{G(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(A){let e=$lA(A);if(!(e in this.map))this.map[e]=this.configs.length,this.configs.push(A)}get elements(){return this.configs}get alts(){return Ah(this.configs,(A)=>A.alt)}get key(){let A="";for(let e in this.map)A+=e+":";return A}};G($lA,"getATNConfigKey");G(KAe,"baseExtremum");zxt=KAe;G(JAe,"baseLt");Zxt=JAe;G(OAe,"min");Vxt=OAe,I_A=jE?jE.isConcatSpreadable:void 0;G(PAe,"isFlattenable");jxt=PAe;G(AgA,"baseFlatten");_Ae=AgA;G(WAe,"flatMap");Xxt=WAe;G(qAe,"baseFindIndex");$xt=qAe;G(zAe,"baseIsNaN");A7t=zAe;G(ZAe,"strictIndexOf");e7t=ZAe;G(VAe,"baseIndexOf");t7t=VAe;G(jAe,"arrayIncludes");r7t=jAe;G(XAe,"arrayIncludesWith");i7t=XAe;G($Ae,"noop");u7t=$Ae,n7t=!(Zw&&1/YlA(new Zw([,-0]))[1]==a7t)?u7t:function(A){return new Zw(A)},o7t=n7t;G(Aee,"baseUniq");l7t=Aee;G(eee,"uniqBy");g7t=eee;G(tee,"flatten");c7t=tee;G(ree,"arrayEach");C7t=ree;G(iee,"castFunction");B7t=iee;G(uee,"forEach");MnA=uee,I7t=Object.prototype,h7t=I7t.hasOwnProperty;G(aee,"isEmpty");Q7t=aee;G(nee,"arrayReduce");p7t=nee;G(oee,"baseReduce");f7t=oee;G(see,"reduce");h_A=see;G(lee,"createDFACache");gee=class{static{G(this,"PredicateSet")}constructor(){this.predicates=[]}is(A){return A>=this.predicates.length||this.predicates[A]}set(A,e){this.predicates[A]=e}toString(){let A="",e=this.predicates.length;for(let t=0;t<e;t++)A+=this.predicates[t]===!0?"1":"0";return A}},Q_A=new gee,m7t=class extends GlA{static{G(this,"LLStarLookaheadStrategy")}constructor(A){var e;super();this.logging=(e=A===null||A===void 0?void 0:A.logging)!==null&&e!==void 0?e:(t)=>console.log(t)}initialize(A){this.atn=vAe(A.rules),this.dfas=cee(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(A){let{prodOccurrence:e,rule:t,hasPredicates:r,dynamicTokensEnabled:i}=A,u=this.dfas,a=this.logging,n=W3(t,"Alternation",e),s=this.atn.decisionMap[n].decision,l=Ah(s0A({maxLookahead:1,occurrence:e,prodType:"Alternation",rule:t}),(g)=>Ah(g,(C)=>C[0]));if(y0A(l,!1)&&!i){let g=h_A(l,(C,B,E)=>(MnA(B,(d)=>{if(d)C[d.tokenTypeIdx]=E,MnA(d.categoryMatches,(I)=>{C[I]=E})}),C),{});if(r)return function(C){var B;let E=this.LA(1),d=g[E.tokenTypeIdx];if(C!==void 0&&d!==void 0){let I=(B=C[d])===null||B===void 0?void 0:B.GATE;if(I!==void 0&&I.call(this)===!1)return}return d};else return function(){let C=this.LA(1);return g[C.tokenTypeIdx]}}else if(r)return function(g){let C=new gee,B=g===void 0?0:g.length;for(let d=0;d<B;d++){let I=g===null||g===void 0?void 0:g[d].GATE;C.set(d,I===void 0||I.call(this))}let E=IH.call(this,u,s,C,a);return typeof E==="number"?E:void 0};else return function(){let g=IH.call(this,u,s,Q_A,a);return typeof g==="number"?g:void 0}}buildLookaheadForOptional(A){let{prodOccurrence:e,rule:t,prodType:r,dynamicTokensEnabled:i}=A,u=this.dfas,a=this.logging,n=W3(t,r,e),s=this.atn.decisionMap[n].decision,l=Ah(s0A({maxLookahead:1,occurrence:e,prodType:r,rule:t}),(g)=>Ah(g,(C)=>C[0]));if(y0A(l)&&l[0][0]&&!i){let g=l[0],C=c7t(g);if(C.length===1&&Q7t(C[0].categoryMatches)){let E=C[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===E}}else{let B=h_A(C,(E,d)=>{if(d!==void 0)E[d.tokenTypeIdx]=!0,MnA(d.categoryMatches,(I)=>{E[I]=!0});return E},{});return function(){let E=this.LA(1);return B[E.tokenTypeIdx]===!0}}}return function(){let g=IH.call(this,u,s,Q_A,a);return typeof g==="object"?!1:g===0}}};G(y0A,"isLL1Sequence");G(cee,"initATNSimulator");G(IH,"adaptivePredict");G(Cee,"performLookahead");G(Bee,"computeLookaheadTarget");G(Eee,"reportLookaheadAmbiguity");G(dee,"buildAmbiguityError");G(Iee,"getProductionDslName");G(hee,"buildAdaptivePredictError");G(Qee,"getExistingTargetState");G(pee,"computeReachSet");G(fee,"getReachableTarget");G(mee,"getUniqueAlt");G(egA,"newDFAState");G(w0A,"addDFAEdge");G(tgA,"addDFAState");G(Dee,"computeStartState");G(fx,"closure");G(yee,"getEpsilonTarget");G(wee,"hasConfigInRuleStopState");G(bee,"allConfigsInRuleStopStates");G(vee,"hasConflictTerminatingPrediction");G(kee,"getConflictingAltSets");G(Fee,"hasConflictingAltSet");G(xee,"hasStateAssociatedWithOneAlt");wx();See=class{static{G(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(A){return this.rootNode=new igA(A),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(A){let e=new HJ;return e.grammarSource=A,e.root=this.rootNode,this.current.content.push(e),this.nodeStack.push(e),e}buildLeafNode(A,e){let t=new AK(A.startOffset,A.image.length,ox(A),A.tokenType,!e);return t.grammarSource=e,t.root=this.rootNode,this.current.content.push(t),t}removeNode(A){let e=A.container;if(e){let t=e.content.indexOf(A);if(t>=0)e.content.splice(t,1)}}addHiddenNodes(A){let e=[];for(let i of A){let u=new AK(i.startOffset,i.image.length,ox(i),i.tokenType,!0);u.root=this.rootNode,e.push(u)}let t=this.current,r=!1;if(t.content.length>0){t.content.push(...e);return}while(t.container){let i=t.container.content.indexOf(t);if(i>0){t.container.content.splice(i,0,...e),r=!0;break}t=t.container}if(!r)this.rootNode.content.unshift(...e)}construct(A){let e=this.current;if(typeof A.$type==="string"&&!A.$infixName)this.current.astNode=A;A.$cstNode=e;let t=this.nodeStack.pop();if(t?.content.length===0)this.removeNode(t)}},rgA=class{static{G(this,"AbstractCstNode")}get hidden(){return!1}get astNode(){let A=typeof this._astNode?.$type==="string"?this._astNode:this.container?.astNode;if(!A)throw Error("This node has no associated AST element");return A}set astNode(A){this._astNode=A}get text(){return this.root.fullText.substring(this.offset,this.end)}},AK=class extends rgA{static{G(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(A,e,t,r,i=!1){super();this._hidden=i,this._offset=A,this._tokenType=r,this._length=e,this._range=t}},HJ=class extends rgA{static{G(this,"CompositeCstNodeImpl")}constructor(){super(...arguments);this.content=new D7t(this)}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let A=this.firstNonHiddenNode,e=this.lastNonHiddenNode;if(A&&e){if(this._rangeCache===void 0){let{range:t}=A,{range:r}=e;this._rangeCache={start:t.start,end:r.end.line<t.start.line?t.start:r.end}}return this._rangeCache}else return{start:su.create(0,0),end:su.create(0,0)}}get firstNonHiddenNode(){for(let A of this.content)if(!A.hidden)return A;return this.content[0]}get lastNonHiddenNode(){for(let A=this.content.length-1;A>=0;A--){let e=this.content[A];if(!e.hidden)return e}return this.content[this.content.length-1]}},D7t=class A extends Array{static{G(this,"CstNodeContainer")}constructor(e){super();this.parent=e,Object.setPrototypeOf(this,A.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,t,...r){return this.addParents(r),super.splice(e,t,...r)}addParents(e){for(let t of e)t.container=this.parent}},igA=class extends HJ{static{G(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(A){super();this._text="",this._text=A??""}},eK=Symbol("Datatype");G(hH,"isDataTypeNode");Lee=G((A)=>A.endsWith(p_A)?A:A+p_A,"withRuleSuffix"),ugA=class{static{G(this,"AbstractLangiumParser")}constructor(A){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=A.parser.Lexer;let e=this.lexer.definition,t=A.LanguageMetaData.mode==="production";if(A.shared.profilers.LangiumProfiler?.isActive("parsing"))this.wrapper=new w7t(e,{...A.parser.ParserConfig,skipValidations:t,errorMessageProvider:A.parser.ParserErrorMessageProvider},A.shared.profilers.LangiumProfiler.createTask("parsing",A.LanguageMetaData.languageId));else this.wrapper=new Uee(e,{...A.parser.ParserConfig,skipValidations:t,errorMessageProvider:A.parser.ParserErrorMessageProvider})}alternatives(A,e){this.wrapper.wrapOr(A,e)}optional(A,e){this.wrapper.wrapOption(A,e)}many(A,e){this.wrapper.wrapMany(A,e)}atLeastOne(A,e){this.wrapper.wrapAtLeastOne(A,e)}getRule(A){return this.allRules.get(A)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Ree=class extends ugA{static{G(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(A){super(A);this.nodeBuilder=new See,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=A.references.Linker,this.converter=A.parser.ValueConverter,this.astReflection=A.shared.AstReflection}rule(A,e){let t=this.computeRuleType(A),r=void 0;if(r6(A))r=A.name,this.registerPrecedenceMap(A);let i=this.wrapper.DEFINE_RULE(Lee(A.name),this.startImplementation(t,r,e).bind(this));if(this.allRules.set(A.name,i),xs(A)&&A.entry)this.mainRule=i;return i}registerPrecedenceMap(A){let e=A.name,t=new Map;for(let r=0;r<A.operators.precedences.length;r++){let i=A.operators.precedences[r];for(let u of i.operators)t.set(u.value,{precedence:r,rightAssoc:i.associativity==="right"})}this.operatorPrecedence.set(e,t)}computeRuleType(A){if(r6(A))return O3(A);else if(A.fragment)return;else if(Fx(A))return eK;else return O3(A)}parse(A,e={}){this.nodeBuilder.buildRootNode(A);let t=this.lexerResult=this.lexer.tokenize(A);this.wrapper.input=t.tokens;let r=e.rule?this.allRules.get(e.rule):this.mainRule;if(!r)throw Error(e.rule?`No rule found with name '${e.rule}'`:"No main rule available.");let i=this.doParse(r);return this.nodeBuilder.addHiddenNodes(t.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,e6(i,{deep:!0}),{value:i,lexerErrors:t.errors,lexerReport:t.report,parserErrors:this.wrapper.errors}}doParse(A){let e=this.wrapper.rule(A);if(this.stack.length>0)e=this.construct();if(e===void 0)throw Error("No result from parser");else if(this.stack.length>0)throw Error("Parser stack is not empty after parsing");return e}startImplementation(A,e,t){return(r)=>{let i=!this.isRecording()&&A!==void 0;if(i){let u={$type:A};if(this.stack.push(u),A===eK)u.value="";else if(e!==void 0)u.$infixName=e}return t(r),i?this.construct():void 0}}extractHiddenTokens(A){let e=this.lexerResult.hidden;if(!e.length)return[];let t=A.startOffset;for(let r=0;r<e.length;r++)if(e[r].startOffset>t)return e.splice(0,r);return e.splice(0,e.length)}consume(A,e,t){let r=this.wrapper.wrapConsume(A,e);if(!this.isRecording()&&this.isValidToken(r)){let i=this.extractHiddenTokens(r);this.nodeBuilder.addHiddenNodes(i);let u=this.nodeBuilder.buildLeafNode(r,t),{assignment:a,crossRef:n}=this.getAssignment(t),o=this.current;if(a){let s=rh(t)?r.image:this.converter.convert(r.image,u);this.assign(a.operator,a.feature,s,u,n)}else if(hH(o)){let s=r.image;if(!rh(t))s=this.converter.convert(s,u).toString();o.value+=s}}}isValidToken(A){return!A.isInsertedInRecovery&&!isNaN(A.startOffset)&&typeof A.endOffset==="number"&&!isNaN(A.endOffset)}subrule(A,e,t,r,i){let u;if(!this.isRecording()&&!t)u=this.nodeBuilder.buildCompositeNode(r);let a;try{a=this.wrapper.wrapSubrule(A,e,i)}finally{if(!this.isRecording()){if(a===void 0&&!t)a=this.construct();if(a!==void 0&&u&&u.length>0)this.performSubruleAssignment(a,r,u)}}}performSubruleAssignment(A,e,t){let{assignment:r,crossRef:i}=this.getAssignment(e);if(r)this.assign(r.operator,r.feature,A,t,i);else if(!r){let u=this.current;if(hH(u))u.value+=A.toString();else if(typeof A==="object"&&A){let n=this.assignWithoutOverride(A,u);this.stack.pop(),this.stack.push(n)}}}action(A,e){if(!this.isRecording()){let t=this.current;if(e.feature&&e.operator){t=this.construct(),this.nodeBuilder.removeNode(t.$cstNode),this.nodeBuilder.buildCompositeNode(e).content.push(t.$cstNode);let i={$type:A};this.stack.push(i),this.assign(e.operator,e.feature,t,t.$cstNode)}else t.$type=A}}construct(){if(this.isRecording())return;let A=this.stack.pop();if(this.nodeBuilder.construct(A),"$infixName"in A)return this.constructInfix(A,this.operatorPrecedence.get(A.$infixName));else if(hH(A))return this.converter.convert(A.value,A.$cstNode);else rsA(this.astReflection,A);return A}constructInfix(A,e){let t=A.parts;if(!Array.isArray(t)||t.length===0)return;let r=A.operators;if(!Array.isArray(r)||t.length<2)return t[0];let i=0,u=-1;for(let E=0;E<r.length;E++){let d=r[E],I=e.get(d)??{precedence:1/0,rightAssoc:!1};if(I.precedence>u)u=I.precedence,i=E;else if(I.precedence===u){if(!I.rightAssoc)i=E}}let a=r.slice(0,i),n=r.slice(i+1),o=t.slice(0,i+1),s=t.slice(i+1),l={$infixName:A.$infixName,$type:A.$type,$cstNode:A.$cstNode,parts:o,operators:a},g={$infixName:A.$infixName,$type:A.$type,$cstNode:A.$cstNode,parts:s,operators:n},C=this.constructInfix(l,e),B=this.constructInfix(g,e);return{$type:A.$type,$cstNode:A.$cstNode,left:C,operator:r[i],right:B}}getAssignment(A){if(!this.assignmentMap.has(A)){let e=Z3(A,th);this.assignmentMap.set(A,{assignment:e,crossRef:e&&j3(e.terminal)?e.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(A)}assign(A,e,t,r,i){let u=this.current,a;if(i==="single"&&typeof t==="string")a=this.linker.buildReference(u,e,r,t);else if(i==="multi"&&typeof t==="string")a=this.linker.buildMultiReference(u,e,r,t);else a=t;switch(A){case"=":{u[e]=a;break}case"?=":{u[e]=!0;break}case"+=":{if(!Array.isArray(u[e]))u[e]=[];u[e].push(a)}}}assignWithoutOverride(A,e){for(let[r,i]of Object.entries(e)){let u=A[r];if(u===void 0)A[r]=i;else if(Array.isArray(u)&&Array.isArray(i))i.push(...u),A[r]=i}let t=A.$cstNode;if(t)t.astNode=void 0,A.$cstNode=void 0;return A}get definitionErrors(){return this.wrapper.definitionErrors}},Nee=class{static{G(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(A){return _w.buildMismatchTokenMessage(A)}buildNotAllInputParsedMessage(A){return _w.buildNotAllInputParsedMessage(A)}buildNoViableAltMessage(A){return _w.buildNoViableAltMessage(A)}buildEarlyExitMessage(A){return _w.buildEarlyExitMessage(A)}},agA=class extends Nee{static{G(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:A,actual:e}){return`Expecting ${A.LABEL?"`"+A.LABEL+"`":A.name.endsWith(":KW")?`keyword '${A.name.substring(0,A.name.length-3)}'`:`token of type '${A.name}'`} but found \`${e.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:A}){return`Expecting end of file but found \`${A.image}\`.`}},Gee=class extends ugA{static{G(this,"LangiumCompletionParser")}constructor(){super(...arguments);this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){return}parse(A){this.resetState();let e=this.lexer.tokenize(A,{mode:"partial"});return this.tokens=e.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(A,e){let t=this.wrapper.DEFINE_RULE(Lee(A.name),this.startImplementation(e).bind(this));if(this.allRules.set(A.name,t),A.entry)this.mainRule=t;return t}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(A){return(e)=>{let t=this.keepStackSize();try{A(e)}finally{this.resetStackSize(t)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let A=this.elementStack.length;return this.stackSize=A,A}resetStackSize(A){this.removeUnexpectedElements(),this.stackSize=A}consume(A,e,t){if(this.wrapper.wrapConsume(A,e),!this.isRecording())this.lastElementStack=[...this.elementStack,t],this.nextTokenIndex=this.currIdx+1}subrule(A,e,t,r,i){this.before(r),this.wrapper.wrapSubrule(A,e,i),this.after(r)}before(A){if(!this.isRecording())this.elementStack.push(A)}after(A){if(!this.isRecording()){let e=this.elementStack.lastIndexOf(A);if(e>=0)this.elementStack.splice(e)}}get currIdx(){return this.wrapper.currIdx}},y7t={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new agA},Uee=class extends ovt{static{G(this,"ChevrotainWrapper")}constructor(A,e){let t=e&&"maxLookahead"in e;super(A,{...y7t,lookaheadStrategy:t?new GlA({maxLookahead:e.maxLookahead}):new m7t({logging:e.skipValidations?()=>{}:void 0}),...e})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(A,e,t){return this.RULE(A,e,t)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(A,e){return this.consume(A,e,void 0)}wrapSubrule(A,e,t){return this.subrule(A,e,{ARGS:[t]})}wrapOr(A,e){this.or(A,e)}wrapOption(A,e){this.option(A,e)}wrapMany(A,e){this.many(A,e)}wrapAtLeastOne(A,e){this.atLeastOne(A,e)}rule(A){return A.call(this,{})}},w7t=class extends Uee{static{G(this,"ProfilerWrapper")}constructor(A,e,t){super(A,e);this.task=t}rule(A){this.task.start(),this.task.startSubTask(this.ruleName(A));try{return super.rule(A)}finally{this.task.stopSubTask(this.ruleName(A)),this.task.stop()}}ruleName(A){return A.ruleName}subrule(A,e,t){this.task.startSubTask(this.ruleName(e));try{return super.subrule(A,e,t)}finally{this.task.stopSubTask(this.ruleName(e))}}};G(KJ,"createParser");G(Mee,"buildRules");G(Tee,"buildInfixRule");G(n1,"buildElement");G(Yee,"buildAction");G(Hee,"buildRuleCall");G(Kee,"buildRuleCallPredicate");G(TC,"buildPredicate");G(Jee,"buildAlternatives");G(Oee,"buildUnorderedGroup");G(Pee,"buildGroup");G(mx,"getGuardCondition");G(ngA,"buildCrossReference");G(_ee,"buildKeyword");G(ogA,"wrap");G(JJ,"getRule");G(Wee,"getRuleName");G(tK,"getToken");G(sgA,"createCompletionParser");G(lgA,"createLangiumParser");G(ggA,"prepareLangiumParser");OJ=class{static{G(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(A,e){let t=Qu(tJ(A,!1)),r=this.buildTerminalTokens(t),i=this.buildKeywordTokens(t,r,e);return i.push(...r),i}flushLexingReport(A){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let A=[...this.diagnostics];return this.diagnostics=[],A}buildTerminalTokens(A){return A.filter(Dc).filter((e)=>!e.fragment).map((e)=>this.buildTerminalToken(e)).toArray()}buildTerminalToken(A){let e=Sx(A),t=this.requiresCustomPattern(e)?this.regexPatternFunction(e):e,r={name:A.name,PATTERN:t};if(typeof t==="function")r.LINE_BREAKS=!0;if(A.hidden)r.GROUP=eJ(e)?Fs.SKIPPED:"hidden";return r}requiresCustomPattern(A){if(A.flags.includes("u")||A.flags.includes("s"))return!0;else return!1}regexPatternFunction(A){let e=new RegExp(A,A.flags+"y");return(t,r)=>(e.lastIndex=r,e.exec(t))}buildKeywordTokens(A,e,t){return A.filter(V3).flatMap((r)=>gh(r).filter(rh)).distinct((r)=>r.value).toArray().sort((r,i)=>i.value.length-r.value.length).map((r)=>this.buildKeywordToken(r,e,Boolean(t?.caseInsensitive)))}buildKeywordToken(A,e,t){let r=this.buildKeywordPattern(A,t),i={name:A.value,PATTERN:r,LONGER_ALT:this.findLongerAlt(A,e)};if(typeof r==="function")i.LINE_BREAKS=!0;return i}buildKeywordPattern(A,e){return e?new RegExp(c6(A.value),"i"):A.value}findLongerAlt(A,e){return e.reduce((t,r)=>{let i=r?.PATTERN;if(i?.source&&UsA("^"+i.source+"$",A.value))t.push(r);return t},[])}},cgA=class{static{G(this,"DefaultValueConverter")}convert(A,e){let t=e.grammarSource;if(j3(t))t=KsA(t);if(ih(t)){let r=t.rule.ref;if(!r)throw Error("This cst node was not parsed by a rule.");return this.runConverter(r,A,e)}return A}runConverter(A,e,t){switch(A.name.toUpperCase()){case"INT":return _E.convertInt(e);case"STRING":return _E.convertString(e);case"ID":return _E.convertID(e)}switch(VsA(A)?.toLowerCase()){case"number":return _E.convertNumber(e);case"boolean":return _E.convertBoolean(e);case"bigint":return _E.convertBigint(e);case"date":return _E.convertDate(e);default:return e}}};(function(A){function e(s){let l="";for(let g=1;g<s.length-1;g++){let C=s.charAt(g);if(C==="\\"){let B=s.charAt(++g);l+=t(B)}else l+=C}return l}G(e,"convertString"),A.convertString=e;function t(s){switch(s){case"b":return"\b";case"f":return"\f";case"n":return`
|
||
`;case"r":return"\r";case"t":return"\t";case"v":return"\v";case"0":return"\x00";default:return s}}G(t,"convertEscapeCharacter");function r(s){if(s.charAt(0)==="^")return s.substring(1);else return s}G(r,"convertID"),A.convertID=r;function i(s){return parseInt(s)}G(i,"convertInt"),A.convertInt=i;function u(s){return BigInt(s)}G(u,"convertBigint"),A.convertBigint=u;function a(s){return new Date(s)}G(a,"convertDate"),A.convertDate=a;function n(s){return Number(s)}G(n,"convertNumber"),A.convertNumber=n;function o(s){return s.toLowerCase()==="true"}G(o,"convertBoolean"),A.convertBoolean=o})(_E||(_E={}));Wu={};JK(Wu,V0A(PK(),1));G(PJ,"delayNextTick");G(_J,"startCancelableOperation");G(CgA,"setInterruptionPeriod");zE=Symbol("OperationCancelled");G(Cm,"isOperationCancelled");G(Mo,"interruptAndCheck");sh=class{static{G(this,"Deferred")}constructor(){this.promise=new Promise((A,e)=>{this.resolve=(t)=>(A(t),this),this.reject=(t)=>(e(t),this)})}},f_A=class A{static{G(this,"FullTextDocument")}constructor(e,t,r,i){this._uri=e,this._languageId=t,this._version=r,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){for(let r of e)if(A.isIncremental(r)){let i=EgA(r.range),u=this.offsetAt(i.start),a=this.offsetAt(i.end);this._content=this._content.substring(0,u)+r.text+this._content.substring(a,this._content.length);let n=Math.max(i.start.line,0),o=Math.max(i.end.line,0),s=this._lineOffsets,l=b0A(r.text,!1,u);if(o-n===l.length)for(let C=0,B=l.length;C<B;C++)s[C+n+1]=l[C];else if(l.length<1e4)s.splice(n+1,o-n,...l);else this._lineOffsets=s=s.slice(0,n+1).concat(l,s.slice(o+1));let g=r.text.length-(a-u);if(g!==0)for(let C=n+1+l.length,B=s.length;C<B;C++)s[C]=s[C]+g}else if(A.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=t}getLineOffsets(){if(this._lineOffsets===void 0)this._lineOffsets=b0A(this._content,!0);return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,i=t.length;if(i===0)return{line:0,character:e};while(r<i){let a=Math.floor((r+i)/2);if(t[a]>e)i=a;else r=a+1}let u=r-1;return e=this.ensureBeforeEOL(e,t[u]),{line:u,character:e-t[u]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;else if(e.line<0)return 0;let r=t[e.line];if(e.character<=0)return r;let i=e.line+1<t.length?t[e.line+1]:this._content.length,u=Math.min(r+e.character,i);return this.ensureBeforeEOL(u,r)}ensureBeforeEOL(e,t){while(e>t&&BgA(this._content.charCodeAt(e-1)))e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let t=e;return t!==void 0&&t!==null&&typeof t.text==="string"&&t.range!==void 0&&(t.rangeLength===void 0||typeof t.rangeLength==="number")}static isFull(e){let t=e;return t!==void 0&&t!==null&&typeof t.text==="string"&&t.range===void 0&&t.rangeLength===void 0}};(function(A){function e(i,u,a,n){return new f_A(i,u,a,n)}G(e,"create"),A.create=e;function t(i,u,a){if(i instanceof f_A)return i.update(u,a),i;else throw Error("TextDocument.update: document must be created by TextDocument.create")}G(t,"update"),A.update=t;function r(i,u){let a=i.getText(),n=iK(u.map(zee),(l,g)=>{let C=l.range.start.line-g.range.start.line;if(C===0)return l.range.start.character-g.range.start.character;return C}),o=0,s=[];for(let l of n){let g=i.offsetAt(l.range.start);if(g<o)throw Error("Overlapping edit");else if(g>o)s.push(a.substring(o,g));if(l.newText.length)s.push(l.newText);o=i.offsetAt(l.range.end)}return s.push(a.substr(o)),s.join("")}G(r,"applyEdits"),A.applyEdits=r})(rK||(rK={}));G(iK,"mergeSort");G(b0A,"computeLineOffsets");G(BgA,"isEOL");G(EgA,"getWellformedRange");G(zee,"getWellformedEdit");(()=>{var A={975:(S)=>{function x(R){if(typeof R!="string")throw TypeError("Path must be a string. Received "+JSON.stringify(R))}G(x,"e");function k(R,L){for(var M,U="",Y=0,H=-1,J=0,K=0;K<=R.length;++K){if(K<R.length)M=R.charCodeAt(K);else{if(M===47)break;M=47}if(M===47){if(H===K-1||J===1);else if(H!==K-1&&J===2){if(U.length<2||Y!==2||U.charCodeAt(U.length-1)!==46||U.charCodeAt(U.length-2)!==46){if(U.length>2){var O=U.lastIndexOf("/");if(O!==U.length-1){O===-1?(U="",Y=0):Y=(U=U.slice(0,O)).length-1-U.lastIndexOf("/"),H=K,J=0;continue}}else if(U.length===2||U.length===1){U="",Y=0,H=K,J=0;continue}}L&&(U.length>0?U+="/..":U="..",Y=2)}else U.length>0?U+="/"+R.slice(H+1,K):U=R.slice(H+1,K),Y=K-H-1;H=K,J=0}else M===46&&J!==-1?++J:J=-1}return U}G(k,"r");var T={resolve:G(function(){for(var R,L="",M=!1,U=arguments.length-1;U>=-1&&!M;U--){var Y;U>=0?Y=arguments[U]:(R===void 0&&(R=process.cwd()),Y=R),x(Y),Y.length!==0&&(L=Y+"/"+L,M=Y.charCodeAt(0)===47)}return L=k(L,!M),M?L.length>0?"/"+L:"/":L.length>0?L:"."},"resolve"),normalize:G(function(R){if(x(R),R.length===0)return".";var L=R.charCodeAt(0)===47,M=R.charCodeAt(R.length-1)===47;return(R=k(R,!L)).length!==0||L||(R="."),R.length>0&&M&&(R+="/"),L?"/"+R:R},"normalize"),isAbsolute:G(function(R){return x(R),R.length>0&&R.charCodeAt(0)===47},"isAbsolute"),join:G(function(){if(arguments.length===0)return".";for(var R,L=0;L<arguments.length;++L){var M=arguments[L];x(M),M.length>0&&(R===void 0?R=M:R+="/"+M)}return R===void 0?".":T.normalize(R)},"join"),relative:G(function(R,L){if(x(R),x(L),R===L)return"";if((R=T.resolve(R))===(L=T.resolve(L)))return"";for(var M=1;M<R.length&&R.charCodeAt(M)===47;++M);for(var U=R.length,Y=U-M,H=1;H<L.length&&L.charCodeAt(H)===47;++H);for(var J=L.length-H,K=Y<J?Y:J,O=-1,_=0;_<=K;++_){if(_===K){if(J>K){if(L.charCodeAt(H+_)===47)return L.slice(H+_+1);if(_===0)return L.slice(H+_)}else Y>K&&(R.charCodeAt(M+_)===47?O=_:_===0&&(O=0));break}var z=R.charCodeAt(M+_);if(z!==L.charCodeAt(H+_))break;z===47&&(O=_)}var j="";for(_=M+O+1;_<=U;++_)_!==U&&R.charCodeAt(_)!==47||(j.length===0?j+="..":j+="/..");return j.length>0?j+L.slice(H+O):(H+=O,L.charCodeAt(H)===47&&++H,L.slice(H))},"relative"),_makeLong:G(function(R){return R},"_makeLong"),dirname:G(function(R){if(x(R),R.length===0)return".";for(var L=R.charCodeAt(0),M=L===47,U=-1,Y=!0,H=R.length-1;H>=1;--H)if((L=R.charCodeAt(H))===47){if(!Y){U=H;break}}else Y=!1;return U===-1?M?"/":".":M&&U===1?"//":R.slice(0,U)},"dirname"),basename:G(function(R,L){if(L!==void 0&&typeof L!="string")throw TypeError('"ext" argument must be a string');x(R);var M,U=0,Y=-1,H=!0;if(L!==void 0&&L.length>0&&L.length<=R.length){if(L.length===R.length&&L===R)return"";var J=L.length-1,K=-1;for(M=R.length-1;M>=0;--M){var O=R.charCodeAt(M);if(O===47){if(!H){U=M+1;break}}else K===-1&&(H=!1,K=M+1),J>=0&&(O===L.charCodeAt(J)?--J==-1&&(Y=M):(J=-1,Y=K))}return U===Y?Y=K:Y===-1&&(Y=R.length),R.slice(U,Y)}for(M=R.length-1;M>=0;--M)if(R.charCodeAt(M)===47){if(!H){U=M+1;break}}else Y===-1&&(H=!1,Y=M+1);return Y===-1?"":R.slice(U,Y)},"basename"),extname:G(function(R){x(R);for(var L=-1,M=0,U=-1,Y=!0,H=0,J=R.length-1;J>=0;--J){var K=R.charCodeAt(J);if(K!==47)U===-1&&(Y=!1,U=J+1),K===46?L===-1?L=J:H!==1&&(H=1):L!==-1&&(H=-1);else if(!Y){M=J+1;break}}return L===-1||U===-1||H===0||H===1&&L===U-1&&L===M+1?"":R.slice(L,U)},"extname"),format:G(function(R){if(R===null||typeof R!="object")throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof R);return function(L,M){var U=M.dir||M.root,Y=M.base||(M.name||"")+(M.ext||"");return U?U===M.root?U+Y:U+"/"+Y:Y}(0,R)},"format"),parse:G(function(R){x(R);var L={root:"",dir:"",base:"",ext:"",name:""};if(R.length===0)return L;var M,U=R.charCodeAt(0),Y=U===47;Y?(L.root="/",M=1):M=0;for(var H=-1,J=0,K=-1,O=!0,_=R.length-1,z=0;_>=M;--_)if((U=R.charCodeAt(_))!==47)K===-1&&(O=!1,K=_+1),U===46?H===-1?H=_:z!==1&&(z=1):H!==-1&&(z=-1);else if(!O){J=_+1;break}return H===-1||K===-1||z===0||z===1&&H===K-1&&H===J+1?K!==-1&&(L.base=L.name=J===0&&Y?R.slice(1,K):R.slice(J,K)):(J===0&&Y?(L.name=R.slice(1,H),L.base=R.slice(1,K)):(L.name=R.slice(J,H),L.base=R.slice(J,K)),L.ext=R.slice(H,K)),J>0?L.dir=R.slice(0,J-1):Y&&(L.dir="/"),L},"parse"),sep:"/",delimiter:":",win32:null,posix:null};T.posix=T,S.exports=T}},e={};function t(S){var x=e[S];if(x!==void 0)return x.exports;var k=e[S]={exports:{}};return A[S](k,k.exports,t),k.exports}G(t,"r"),t.d=(S,x)=>{for(var k in x)t.o(x,k)&&!t.o(S,k)&&Object.defineProperty(S,k,{enumerable:!0,get:x[k]})},t.o=(S,x)=>Object.prototype.hasOwnProperty.call(S,x),t.r=(S)=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(S,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(S,"__esModule",{value:!0})};var r={};let i;if(t.r(r),t.d(r,{URI:G(()=>C,"URI"),Utils:G(()=>v,"Utils")}),typeof process=="object")i=process.platform==="win32";else if(typeof navigator=="object")i=navigator.userAgent.indexOf("Windows")>=0;let u=/^\w[\w\d+.-]*$/,a=/^\//,n=/^\/\//;function o(S,x){if(!S.scheme&&x)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${S.authority}", path: "${S.path}", query: "${S.query}", fragment: "${S.fragment}"}`);if(S.scheme&&!u.test(S.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(S.path){if(S.authority){if(!a.test(S.path))throw Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(n.test(S.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}G(o,"a");let s="",l="/",g=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class C{static{G(this,"l")}static isUri(S){return S instanceof C||!!S&&typeof S.authority=="string"&&typeof S.fragment=="string"&&typeof S.path=="string"&&typeof S.query=="string"&&typeof S.scheme=="string"&&typeof S.fsPath=="string"&&typeof S.with=="function"&&typeof S.toString=="function"}scheme;authority;path;query;fragment;constructor(S,x,k,T,R,L=!1){typeof S=="object"?(this.scheme=S.scheme||s,this.authority=S.authority||s,this.path=S.path||s,this.query=S.query||s,this.fragment=S.fragment||s):(this.scheme=function(M,U){return M||U?M:"file"}(S,L),this.authority=x||s,this.path=function(M,U){switch(M){case"https":case"http":case"file":U?U[0]!==l&&(U=l+U):U=l}return U}(this.scheme,k||s),this.query=T||s,this.fragment=R||s,o(this,L))}get fsPath(){return Q(this,!1)}with(S){if(!S)return this;let{scheme:x,authority:k,path:T,query:R,fragment:L}=S;return x===void 0?x=this.scheme:x===null&&(x=s),k===void 0?k=this.authority:k===null&&(k=s),T===void 0?T=this.path:T===null&&(T=s),R===void 0?R=this.query:R===null&&(R=s),L===void 0?L=this.fragment:L===null&&(L=s),x===this.scheme&&k===this.authority&&T===this.path&&R===this.query&&L===this.fragment?this:new E(x,k,T,R,L)}static parse(S,x=!1){let k=g.exec(S);return k?new E(k[2]||s,D(k[4]||s),D(k[5]||s),D(k[7]||s),D(k[9]||s),x):new E(s,s,s,s,s)}static file(S){let x=s;if(i&&(S=S.replace(/\\/g,l)),S[0]===l&&S[1]===l){let k=S.indexOf(l,2);k===-1?(x=S.substring(2),S=l):(x=S.substring(2,k),S=S.substring(k)||l)}return new E("file",x,S,s,s)}static from(S){let x=new E(S.scheme,S.authority,S.path,S.query,S.fragment);return o(x,!0),x}toString(S=!1){return p(this,S)}toJSON(){return this}static revive(S){if(S){if(S instanceof C)return S;{let x=new E(S);return x._formatted=S.external,x._fsPath=S._sep===B?S.fsPath:null,x}}return S}}let B=i?1:void 0;class E extends C{static{G(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=Q(this,!1)),this._fsPath}toString(S=!1){return S?p(this,!0):(this._formatted||(this._formatted=p(this,!1)),this._formatted)}toJSON(){let S={$mid:1};return this._fsPath&&(S.fsPath=this._fsPath,S._sep=B),this._formatted&&(S.external=this._formatted),this.path&&(S.path=this.path),this.scheme&&(S.scheme=this.scheme),this.authority&&(S.authority=this.authority),this.query&&(S.query=this.query),this.fragment&&(S.fragment=this.fragment),S}}let d={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function I(S,x,k){let T,R=-1;for(let L=0;L<S.length;L++){let M=S.charCodeAt(L);if(M>=97&&M<=122||M>=65&&M<=90||M>=48&&M<=57||M===45||M===46||M===95||M===126||x&&M===47||k&&M===91||k&&M===93||k&&M===58)R!==-1&&(T+=encodeURIComponent(S.substring(R,L)),R=-1),T!==void 0&&(T+=S.charAt(L));else{T===void 0&&(T=S.substr(0,L));let U=d[M];U!==void 0?(R!==-1&&(T+=encodeURIComponent(S.substring(R,L)),R=-1),T+=U):R===-1&&(R=L)}}return R!==-1&&(T+=encodeURIComponent(S.substring(R))),T!==void 0?T:S}G(I,"m");function h(S){let x;for(let k=0;k<S.length;k++){let T=S.charCodeAt(k);T===35||T===63?(x===void 0&&(x=S.substr(0,k)),x+=d[T]):x!==void 0&&(x+=S[k])}return x!==void 0?x:S}G(h,"y");function Q(S,x){let k;return k=S.authority&&S.path.length>1&&S.scheme==="file"?`//${S.authority}${S.path}`:S.path.charCodeAt(0)===47&&(S.path.charCodeAt(1)>=65&&S.path.charCodeAt(1)<=90||S.path.charCodeAt(1)>=97&&S.path.charCodeAt(1)<=122)&&S.path.charCodeAt(2)===58?x?S.path.substr(1):S.path[1].toLowerCase()+S.path.substr(2):S.path,i&&(k=k.replace(/\//g,"\\")),k}G(Q,"v");function p(S,x){let k=x?h:I,T="",{scheme:R,authority:L,path:M,query:U,fragment:Y}=S;if(R&&(T+=R,T+=":"),(L||R==="file")&&(T+=l,T+=l),L){let H=L.indexOf("@");if(H!==-1){let J=L.substr(0,H);L=L.substr(H+1),H=J.lastIndexOf(":"),H===-1?T+=k(J,!1,!1):(T+=k(J.substr(0,H),!1,!1),T+=":",T+=k(J.substr(H+1),!1,!0)),T+="@"}L=L.toLowerCase(),H=L.lastIndexOf(":"),H===-1?T+=k(L,!1,!0):(T+=k(L.substr(0,H),!1,!0),T+=L.substr(H))}if(M){if(M.length>=3&&M.charCodeAt(0)===47&&M.charCodeAt(2)===58){let H=M.charCodeAt(1);H>=65&&H<=90&&(M=`/${String.fromCharCode(H+32)}:${M.substr(3)}`)}else if(M.length>=2&&M.charCodeAt(1)===58){let H=M.charCodeAt(0);H>=65&&H<=90&&(M=`${String.fromCharCode(H+32)}:${M.substr(2)}`)}T+=k(M,!0,!1)}return U&&(T+="?",T+=k(U,!1,!1)),Y&&(T+="#",T+=x?Y:I(Y,!1,!1)),T}G(p,"b");function m(S){try{return decodeURIComponent(S)}catch{return S.length>3?S.substr(0,3)+m(S.substr(3)):S}}G(m,"C");let f=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function D(S){return S.match(f)?S.replace(f,(x)=>m(x)):S}G(D,"w");var w=t(975);let b=w.posix||w,F="/";var v;(function(S){S.joinPath=function(x,...k){return x.with({path:b.join(x.path,...k)})},S.resolvePath=function(x,...k){let T=x.path,R=!1;T[0]!==F&&(T=F+T,R=!0);let L=b.resolve(T,...k);return R&&L[0]===F&&!x.authority&&(L=L.substring(1)),x.with({path:L})},S.dirname=function(x){if(x.path.length===0||x.path===F)return x;let k=b.dirname(x.path);return k.length===1&&k.charCodeAt(0)===46&&(k=""),x.with({path:k})},S.basename=function(x){return b.basename(x.path)},S.extname=function(x){return b.extname(x.path)}})(v||(v={})),Zee=r})();({URI:Ig,Utils:QF}=Zee);(function(A){A.basename=QF.basename,A.dirname=QF.dirname,A.extname=QF.extname,A.joinPath=QF.joinPath,A.resolvePath=QF.resolvePath;let e=typeof process==="object"&&process?.platform==="win32";function t(a,n){return a?.toString()===n?.toString()}G(t,"equals"),A.equals=t;function r(a,n){let o=typeof a==="string"?Ig.parse(a).path:a.path,s=typeof n==="string"?Ig.parse(n).path:n.path,l=o.split("/").filter((d)=>d.length>0),g=s.split("/").filter((d)=>d.length>0);if(e){let d=/^[A-Z]:$/;if(l[0]&&d.test(l[0]))l[0]=l[0].toLowerCase();if(g[0]&&d.test(g[0]))g[0]=g[0].toLowerCase();if(l[0]!==g[0])return s.substring(1)}let C=0;for(;C<l.length;C++)if(l[C]!==g[C])break;let B="../".repeat(l.length-C),E=g.slice(C).join("/");return B+E}G(r,"relative"),A.relative=r;function i(a){return Ig.parse(a.toString()).toString()}G(i,"normalize"),A.normalize=i;function u(a,n){let o=typeof a==="string"?a:a.path,s=typeof n==="string"?n:n.path;if(s.charAt(s.length-1)==="/")s=s.slice(0,-1);if(o.charAt(o.length-1)==="/")o=o.slice(0,-1);if(s===o)return!0;if(s.length<o.length)return!1;if(s.charAt(o.length)!=="/")return!1;return s.startsWith(o)}G(u,"contains"),A.contains=u})(ks||(ks={}));dgA=class{static{G(this,"UriTrie")}constructor(){this.root={name:"",children:new Map}}normalizeUri(A){return ks.normalize(A)}clear(){this.root.children.clear()}insert(A,e){let t=this.getNode(this.normalizeUri(A),!0);t.element=e}delete(A){let e=this.getNode(this.normalizeUri(A),!1);if(e?.parent)e.parent.children.delete(e.name)}has(A){return this.getNode(this.normalizeUri(A),!1)?.element!==void 0}hasNode(A){return this.getNode(this.normalizeUri(A),!1)!==void 0}find(A){return this.getNode(this.normalizeUri(A),!1)?.element}findNode(A){let e=this.normalizeUri(A),t=this.getNode(e,!1);if(!t)return;return{name:t.name,uri:ks.joinPath(Ig.parse(e),t.name).toString(),element:t.element}}findChildren(A){let e=this.normalizeUri(A),t=this.getNode(e,!1);if(!t)return[];return Array.from(t.children.values()).map((r)=>({name:r.name,uri:ks.joinPath(Ig.parse(e),r.name).toString(),element:r.element}))}all(){return this.collectValues(this.root)}findAll(A){let e=this.getNode(ks.normalize(A),!1);if(!e)return[];return this.collectValues(e)}getNode(A,e){let t=A.split("/");if(A.charAt(A.length-1)==="/")t.pop();let r=this.root;for(let i of t){let u=r.children.get(i);if(!u)if(e)u={name:i,children:new Map,parent:r},r.children.set(i,u);else return;r=u}return r}collectValues(A){let e=[];if(A.element)e.push(A.element);for(let t of A.children.values())e.push(...this.collectValues(t));return e}};(function(A){A[A.Changed=0]="Changed",A[A.Parsed=1]="Parsed",A[A.IndexedContent=2]="IndexedContent",A[A.ComputedScopes=3]="ComputedScopes",A[A.Linked=4]="Linked",A[A.IndexedReferences=5]="IndexedReferences",A[A.Validated=6]="Validated"})(li||(li={}));Vee=class{static{G(this,"DefaultLangiumDocumentFactory")}constructor(A){this.serviceRegistry=A.ServiceRegistry,this.textDocuments=A.workspace.TextDocuments,this.fileSystemProvider=A.workspace.FileSystemProvider}async fromUri(A,e=Wu.CancellationToken.None){let t=await this.fileSystemProvider.readFile(A);return this.createAsync(A,t,e)}fromTextDocument(A,e,t){if(e=e??Ig.parse(A.uri),Wu.CancellationToken.is(t))return this.createAsync(e,A,t);else return this.create(e,A,t)}fromString(A,e,t){if(Wu.CancellationToken.is(t))return this.createAsync(e,A,t);else return this.create(e,A,t)}fromModel(A,e){return this.create(e,{$model:A})}create(A,e,t){if(typeof e==="string"){let r=this.parse(A,e,t);return this.createLangiumDocument(r,A,void 0,e)}else if("$model"in e){let r={value:e.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(r,A)}else{let r=this.parse(A,e.getText(),t);return this.createLangiumDocument(r,A,e)}}async createAsync(A,e,t){if(typeof e==="string"){let r=await this.parseAsync(A,e,t);return this.createLangiumDocument(r,A,void 0,e)}else{let r=await this.parseAsync(A,e.getText(),t);return this.createLangiumDocument(r,A,e)}}createLangiumDocument(A,e,t,r){let i;if(t)i={parseResult:A,uri:e,state:li.Parsed,references:[],textDocument:t};else{let u=this.createTextDocumentGetter(e,r);i={parseResult:A,uri:e,state:li.Parsed,references:[],get textDocument(){return u()}}}return A.value.$document=i,i}async update(A,e){let t=A.parseResult.value.$cstNode?.root.fullText,r=this.textDocuments?.get(A.uri.toString()),i=r?r.getText():await this.fileSystemProvider.readFile(A.uri);if(r)Object.defineProperty(A,"textDocument",{value:r});else{let u=this.createTextDocumentGetter(A.uri,i);Object.defineProperty(A,"textDocument",{get:u})}if(t!==i)A.parseResult=await this.parseAsync(A.uri,i,e),A.parseResult.value.$document=A;return A.state=li.Parsed,A}parse(A,e,t){return this.serviceRegistry.getServices(A).parser.LangiumParser.parse(e,t)}parseAsync(A,e,t){return this.serviceRegistry.getServices(A).parser.AsyncParser.parse(e,t)}createTextDocumentGetter(A,e){let t=this.serviceRegistry,r=void 0;return()=>r??(r=rK.create(A.toString(),t.getServices(A).LanguageMetaData.languageId,0,e??""))}},jee=class{static{G(this,"DefaultLangiumDocuments")}constructor(A){this.documentTrie=new dgA,this.services=A,this.langiumDocumentFactory=A.workspace.LangiumDocumentFactory,this.documentBuilder=()=>A.workspace.DocumentBuilder}get all(){return Qu(this.documentTrie.all())}addDocument(A){let e=A.uri.toString();if(this.documentTrie.has(e))throw Error(`A document with the URI '${e}' is already present.`);this.documentTrie.insert(e,A)}getDocument(A){let e=A.toString();return this.documentTrie.find(e)}getDocuments(A){let e=A.toString();return this.documentTrie.findAll(e)}async getOrCreateDocument(A,e){let t=this.getDocument(A);if(t)return t;return t=await this.langiumDocumentFactory.fromUri(A,e),this.addDocument(t),t}createDocument(A,e,t){if(t)return this.langiumDocumentFactory.fromString(e,A,t).then((r)=>(this.addDocument(r),r));else{let r=this.langiumDocumentFactory.fromString(e,A);return this.addDocument(r),r}}hasDocument(A){return this.documentTrie.has(A.toString())}invalidateDocument(A){let e=A.toString(),t=this.documentTrie.find(e);if(t)this.documentBuilder().resetToState(t,li.Changed);return t}deleteDocument(A){let e=A.toString(),t=this.documentTrie.find(e);if(t)t.state=li.Changed,this.documentTrie.delete(e);return t}deleteDocuments(A){let e=A.toString(),t=this.documentTrie.findAll(e);for(let r of t)r.state=li.Changed;return this.documentTrie.delete(e),t}},Q3=Symbol("RefResolving"),Xee=class{static{G(this,"DefaultLinker")}constructor(A){this.reflection=A.shared.AstReflection,this.langiumDocuments=()=>A.shared.workspace.LangiumDocuments,this.scopeProvider=A.references.ScopeProvider,this.astNodeLocator=A.workspace.AstNodeLocator,this.profiler=A.shared.profilers.LangiumProfiler,this.languageId=A.LanguageMetaData.languageId}async link(A,e=Wu.CancellationToken.None){if(this.profiler?.isActive("linking")){let t=this.profiler.createTask("linking",this.languageId);t.start();try{for(let r of HC(A.parseResult.value))await Mo(e),t6(r).forEach((i)=>{let u=`${r.$type}:${i.property}`;t.startSubTask(u);try{this.doLink(i,A)}finally{t.stopSubTask(u)}})}finally{t.stop()}}else for(let t of HC(A.parseResult.value))await Mo(e),t6(t).forEach((r)=>this.doLink(r,A))}doLink(A,e){let t=A.reference;if("_ref"in t&&t._ref===void 0){t._ref=Q3;try{let r=this.getCandidate(A);if(p3(r))t._ref=r;else{t._nodeDescription=r;let i=this.loadAstNode(r);t._ref=i??this.createLinkingError(A,r)}}catch(r){console.error(`An error occurred while resolving reference to '${t.$refText}':`,r);let i=r.message??String(r);t._ref={info:A,message:`An error occurred while resolving reference to '${t.$refText}': ${i}`}}e.references.push(t)}else if("_items"in t&&t._items===void 0){t._items=Q3;try{let r=this.getCandidates(A),i=[];if(p3(r))t._linkingError=r;else for(let u of r){let a=this.loadAstNode(u);if(a)i.push({ref:a,$nodeDescription:u})}t._items=i}catch(r){t._linkingError={info:A,message:`An error occurred while resolving reference to '${t.$refText}': ${r}`},t._items=[]}e.references.push(t)}}unlink(A){for(let e of A.references)if("_ref"in e)e._ref=void 0,delete e._nodeDescription;else if("_items"in e)e._items=void 0,delete e._linkingError;A.references=[]}getCandidate(A){return this.scopeProvider.getScope(A).getElement(A.reference.$refText)??this.createLinkingError(A)}getCandidates(A){let t=this.scopeProvider.getScope(A).getElements(A.reference.$refText).distinct((r)=>`${r.documentUri}#${r.path}`).toArray();return t.length>0?t:this.createLinkingError(A)}buildReference(A,e,t,r){let i=this,u={$refNode:t,$refText:r,_ref:void 0,get ref(){if(Hn(this._ref))return this._ref;else if(AsA(this._nodeDescription)){let a=i.loadAstNode(this._nodeDescription);this._ref=a??i.createLinkingError({reference:u,container:A,property:e},this._nodeDescription)}else if(this._ref===void 0){this._ref=Q3;let a=Ww(A).$document,n=i.getLinkedNode({reference:u,container:A,property:e});if(n.error&&a&&a.state<li.ComputedScopes)return this._ref=void 0;this._ref=n.node??n.error,this._nodeDescription=n.descr,a?.references.push(this)}else if(this._ref===Q3)i.throwCyclicReferenceError(A,e,r);return Hn(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return p3(this._ref)?this._ref:void 0}};return u}buildMultiReference(A,e,t,r){let i=this,u={$refNode:t,$refText:r,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;else if(this._items===void 0){this._items=Q3;let a=Ww(A).$document,n=i.getCandidates({reference:u,container:A,property:e}),o=[];if(p3(n))this._linkingError=n;else for(let s of n){let l=i.loadAstNode(s);if(l)o.push({ref:l,$nodeDescription:s})}this._items=o,a?.references.push(this)}else if(this._items===Q3)i.throwCyclicReferenceError(A,e,r);return Array.isArray(this._items)?this._items:[]},get error(){if(this._linkingError)return this._linkingError;if(this.items.length>0)return;else return this._linkingError=i.createLinkingError({reference:u,container:A,property:e})}};return u}throwCyclicReferenceError(A,e,t){throw Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(A)}/${e} (symbol '${t}')`)}getLinkedNode(A){try{let e=this.getCandidate(A);if(p3(e))return{error:e};let t=this.loadAstNode(e);if(t)return{node:t,descr:e};else return{descr:e,error:this.createLinkingError(A,e)}}catch(e){console.error(`An error occurred while resolving reference to '${A.reference.$refText}':`,e);let t=e.message??String(e);return{error:{info:A,message:`An error occurred while resolving reference to '${A.reference.$refText}': ${t}`}}}}loadAstNode(A){if(A.node)return A.node;let e=this.langiumDocuments().getDocument(A.documentUri);if(!e)return;return this.astNodeLocator.getAstNode(e.parseResult.value,A.path)}createLinkingError(A,e){let t=Ww(A.container).$document;if(t&&t.state<li.ComputedScopes)console.warn(`Attempted reference resolution before document reached ComputedScopes state (${t.uri}).`);let r=this.reflection.getReferenceType(A);return{info:A,message:`Could not resolve reference to ${r} named '${A.reference.$refText}'.`,targetDescription:e}}};G(IgA,"isNamed");$ee=class{static{G(this,"DefaultNameProvider")}getName(A){if(IgA(A))return A.name;return}getNameNode(A){return rJ(A.$cstNode,"name")}},Ate=class{static{G(this,"DefaultReferences")}constructor(A){this.nameProvider=A.references.NameProvider,this.index=A.shared.workspace.IndexManager,this.nodeLocator=A.workspace.AstNodeLocator,this.documents=A.shared.workspace.LangiumDocuments,this.hasMultiReference=HC(A.Grammar).some((e)=>j3(e)&&e.isMulti)}findDeclarations(A){if(A){let e=_sA(A),t=A.astNode;if(e&&t){let r=t[e.feature];if(vs(r)||ZE(r))return mH(r);else if(Array.isArray(r)){for(let i of r)if((vs(i)||ZE(i))&&i.$refNode&&i.$refNode.offset<=A.offset&&i.$refNode.end>=A.end)return mH(i)}}if(t){let r=this.nameProvider.getNameNode(t);if(r&&(r===A||ysA(A,r)))return this.getSelfNodes(t)}}return[]}getSelfNodes(A){if(!this.hasMultiReference)return[A];else{let e=this.index.findAllReferences(A,this.nodeLocator.getAstNodePath(A)),t=this.getNodeFromReferenceDescription(e.head());if(t){for(let r of t6(t))if(ZE(r.reference)&&r.reference.items.some((i)=>i.ref===A))return r.reference.items.map((i)=>i.ref)}return[A]}}getNodeFromReferenceDescription(A){if(!A)return;let e=this.documents.getDocument(A.sourceUri);if(e)return this.nodeLocator.getAstNode(e.parseResult.value,A.sourcePath);return}findDeclarationNodes(A){let e=this.findDeclarations(A),t=[];for(let r of e){let i=this.nameProvider.getNameNode(r)??r.$cstNode;if(i)t.push(i)}return t}findReferences(A,e){let t=[];if(e.includeDeclaration)t.push(...this.getSelfReferences(A));let r=this.index.findAllReferences(A,this.nodeLocator.getAstNodePath(A));if(e.documentUri)r=r.filter((i)=>ks.equals(i.sourceUri,e.documentUri));return t.push(...r),Qu(t)}getSelfReferences(A){let e=this.getSelfNodes(A),t=[];for(let r of e){let i=this.nameProvider.getNameNode(r);if(i){let u=YC(r),a=this.nodeLocator.getAstNodePath(r);t.push({sourceUri:u.uri,sourcePath:a,targetUri:u.uri,targetPath:a,segment:u6(i),local:!0})}}return t}},lh=class{static{G(this,"MultiMap")}constructor(A){if(this.map=new Map,A)for(let[e,t]of A)this.add(e,t)}get size(){return nx.sum(Qu(this.map.values()).map((A)=>A.length))}clear(){this.map.clear()}delete(A,e){if(e===void 0)return this.map.delete(A);else{let t=this.map.get(A);if(t){let r=t.indexOf(e);if(r>=0){if(t.length===1)this.map.delete(A);else t.splice(r,1);return!0}}return!1}}get(A){return this.map.get(A)??[]}getStream(A){let e=this.map.get(A);return e?Qu(e):$w}has(A,e){if(e===void 0)return this.map.has(A);else{let t=this.map.get(A);if(t)return t.indexOf(e)>=0;return!1}}add(A,e){if(this.map.has(A))this.map.get(A).push(e);else this.map.set(A,[e]);return this}addAll(A,e){if(this.map.has(A))this.map.get(A).push(...e);else this.map.set(A,Array.from(e));return this}forEach(A){this.map.forEach((e,t)=>e.forEach((r)=>A(r,t,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return Qu(this.map.entries()).flatMap(([A,e])=>e.map((t)=>[A,t]))}keys(){return Qu(this.map.keys())}values(){return Qu(this.map.values()).flat()}entriesGroupedByKey(){return Qu(this.map.entries())}},uK=class{static{G(this,"BiMap")}get size(){return this.map.size}constructor(A){if(this.map=new Map,this.inverse=new Map,A)for(let[e,t]of A)this.set(e,t)}clear(){this.map.clear(),this.inverse.clear()}set(A,e){return this.map.set(A,e),this.inverse.set(e,A),this}get(A){return this.map.get(A)}getKey(A){return this.inverse.get(A)}delete(A){let e=this.map.get(A);if(e!==void 0)return this.map.delete(A),this.inverse.delete(e),!0;return!1}},ete=class{static{G(this,"DefaultScopeComputation")}constructor(A){this.nameProvider=A.references.NameProvider,this.descriptions=A.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(A,e=Wu.CancellationToken.None){return this.collectExportedSymbolsForNode(A.parseResult.value,A,void 0,e)}async collectExportedSymbolsForNode(A,e,t=vx,r=Wu.CancellationToken.None){let i=[];this.addExportedSymbol(A,i,e);for(let u of t(A))await Mo(r),this.addExportedSymbol(u,i,e);return i}addExportedSymbol(A,e,t){let r=this.nameProvider.getName(A);if(r)e.push(this.descriptions.createDescription(A,r,t))}async collectLocalSymbols(A,e=Wu.CancellationToken.None){let t=A.parseResult.value,r=new lh;for(let i of gh(t))await Mo(e),this.addLocalSymbol(i,A,r);return r}addLocalSymbol(A,e,t){let r=A.$container;if(r){let i=this.nameProvider.getName(A);if(i)t.add(r,this.descriptions.createDescription(A,i,e))}}},v0A=class{static{G(this,"StreamScope")}constructor(A,e,t){this.elements=A,this.outerScope=e,this.caseInsensitive=t?.caseInsensitive??!1,this.concatOuterScope=t?.concatOuterScope??!0}getAllElements(){if(this.outerScope)return this.elements.concat(this.outerScope.getAllElements());else return this.elements}getElement(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.caseInsensitive?this.elements.find((r)=>r.name.toLowerCase()===e):this.elements.find((r)=>r.name===A);if(t)return t;if(this.outerScope)return this.outerScope.getElement(A);return}getElements(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.caseInsensitive?this.elements.filter((r)=>r.name.toLowerCase()===e):this.elements.filter((r)=>r.name===A);if((this.concatOuterScope||t.isEmpty())&&this.outerScope)return t.concat(this.outerScope.getElements(A));else return t}},b7t=class{static{G(this,"MapScope")}constructor(A,e,t){this.elements=new Map,this.caseInsensitive=t?.caseInsensitive??!1,this.concatOuterScope=t?.concatOuterScope??!0;for(let r of A){let i=this.caseInsensitive?r.name.toLowerCase():r.name;this.elements.set(i,r)}this.outerScope=e}getElement(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.elements.get(e);if(t)return t;if(this.outerScope)return this.outerScope.getElement(A);return}getElements(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.elements.get(e),r=t?[t]:[];if((this.concatOuterScope||r.length>0)&&this.outerScope)return Qu(r).concat(this.outerScope.getElements(A));else return Qu(r)}getAllElements(){let A=Qu(this.elements.values());if(this.outerScope)A=A.concat(this.outerScope.getAllElements());return A}},tte=class{static{G(this,"MultiMapScope")}constructor(A,e,t){this.elements=new lh,this.caseInsensitive=t?.caseInsensitive??!1,this.concatOuterScope=t?.concatOuterScope??!0;for(let r of A){let i=this.caseInsensitive?r.name.toLowerCase():r.name;this.elements.add(i,r)}this.outerScope=e}getElement(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.elements.get(e)[0];if(t)return t;if(this.outerScope)return this.outerScope.getElement(A);return}getElements(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.elements.get(e);if((this.concatOuterScope||t.length===0)&&this.outerScope)return Qu(t).concat(this.outerScope.getElements(A));else return Qu(t)}getAllElements(){let A=Qu(this.elements.values());if(this.outerScope)A=A.concat(this.outerScope.getAllElements());return A}},v7t={getElement(){return},getElements(){return $w},getAllElements(){return $w}},WJ=class{static{G(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(A){this.toDispose.push(A)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach((A)=>A.dispose())}throwIfDisposed(){if(this.isDisposed)throw Error("This cache has already been disposed")}},hgA=class extends WJ{static{G(this,"SimpleCache")}constructor(){super(...arguments);this.cache=new Map}has(A){return this.throwIfDisposed(),this.cache.has(A)}set(A,e){this.throwIfDisposed(),this.cache.set(A,e)}get(A,e){if(this.throwIfDisposed(),this.cache.has(A))return this.cache.get(A);else if(e){let t=e();return this.cache.set(A,t),t}else return}delete(A){return this.throwIfDisposed(),this.cache.delete(A)}clear(){this.throwIfDisposed(),this.cache.clear()}},qJ=class extends WJ{static{G(this,"ContextCache")}constructor(A){super();this.cache=new Map,this.converter=A??((e)=>e)}has(A,e){return this.throwIfDisposed(),this.cacheForContext(A).has(e)}set(A,e,t){this.throwIfDisposed(),this.cacheForContext(A).set(e,t)}get(A,e,t){this.throwIfDisposed();let r=this.cacheForContext(A);if(r.has(e))return r.get(e);else if(t){let i=t();return r.set(e,i),i}else return}delete(A,e){return this.throwIfDisposed(),this.cacheForContext(A).delete(e)}clear(A){if(this.throwIfDisposed(),A){let e=this.converter(A);this.cache.delete(e)}else this.cache.clear()}cacheForContext(A){let e=this.converter(A),t=this.cache.get(e);if(!t)t=new Map,this.cache.set(e,t);return t}},rte=class extends qJ{static{G(this,"DocumentCache")}constructor(A,e){super((t)=>t.toString());if(e)this.toDispose.push(A.workspace.DocumentBuilder.onDocumentPhase(e,(t)=>{this.clear(t.uri.toString())})),this.toDispose.push(A.workspace.DocumentBuilder.onUpdate((t,r)=>{for(let i of r)this.clear(i)}));else this.toDispose.push(A.workspace.DocumentBuilder.onUpdate((t,r)=>{let i=t.concat(r);for(let u of i)this.clear(u)}))}},QgA=class extends hgA{static{G(this,"WorkspaceCache")}constructor(A,e){super();if(e)this.toDispose.push(A.workspace.DocumentBuilder.onBuildPhase(e,()=>{this.clear()})),this.toDispose.push(A.workspace.DocumentBuilder.onUpdate((t,r)=>{if(r.length>0)this.clear()}));else this.toDispose.push(A.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},ite=class{static{G(this,"DefaultScopeProvider")}constructor(A){this.reflection=A.shared.AstReflection,this.nameProvider=A.references.NameProvider,this.descriptions=A.workspace.AstNodeDescriptionProvider,this.indexManager=A.shared.workspace.IndexManager,this.globalScopeCache=new QgA(A.shared)}getScope(A){let e=[],t=this.reflection.getReferenceType(A),r=YC(A.container).localSymbols;if(r){let u=A.container;do{if(r.has(u))e.push(r.getStream(u).filter((a)=>this.reflection.isSubtype(a.type,t)));u=u.$container}while(u)}let i=this.getGlobalScope(t,A);for(let u=e.length-1;u>=0;u--)i=this.createScope(e[u],i);return i}createScope(A,e,t){return new v0A(Qu(A),e,t)}createScopeForNodes(A,e,t){let r=Qu(A).map((i)=>{let u=this.nameProvider.getName(i);if(u)return this.descriptions.createDescription(i,u);return}).nonNullable();return new v0A(r,e,t)}getGlobalScope(A,e){return this.globalScopeCache.get(A,()=>new tte(this.indexManager.allElements(A)))}};G(pgA,"isAstNodeWithComment");G(k0A,"isIntermediateReference");ute=class{static{G(this,"DefaultJsonSerializer")}constructor(A){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=A.shared.workspace.LangiumDocuments,this.astNodeLocator=A.workspace.AstNodeLocator,this.nameProvider=A.references.NameProvider,this.commentProvider=A.documentation.CommentProvider}serialize(A,e){let t=e??{},r=e?.replacer,i=G((a,n)=>this.replacer(a,n,t),"defaultReplacer"),u=r?(a,n)=>r(a,n,i):i;try{return this.currentDocument=YC(A),JSON.stringify(A,u,e?.space)}finally{this.currentDocument=void 0}}deserialize(A,e){let t=e??{},r=JSON.parse(A);return this.linkNode(r,r,t),r}replacer(A,e,{refText:t,sourceText:r,textRegions:i,comments:u,uriConverter:a}){if(this.ignoreProperties.has(A))return;else if(vs(e)){let n=e.ref,o=t?e.$refText:void 0;if(n){let s=YC(n),l="";if(this.currentDocument&&this.currentDocument!==s)if(a)l=a(s.uri,n);else l=s.uri.toString();let g=this.astNodeLocator.getAstNodePath(n);return{$ref:`${l}#${g}`,$refText:o}}else return{$error:e.error?.message??"Could not resolve reference",$refText:o}}else if(ZE(e)){let n=t?e.$refText:void 0,o=[];for(let s of e.items){let l=s.ref,g=YC(s.ref),C="";if(this.currentDocument&&this.currentDocument!==g)if(a)C=a(g.uri,l);else C=g.uri.toString();let B=this.astNodeLocator.getAstNodePath(l);o.push(`${C}#${B}`)}return{$refs:o,$refText:n}}else if(Hn(e)){let n=void 0;if(i){if(n=this.addAstNodeRegionWithAssignmentsTo({...e}),(!A||e.$document)&&n?.$textRegion)n.$textRegion.documentURI=this.currentDocument?.uri.toString()}if(r&&!A)n??(n={...e}),n.$sourceText=e.$cstNode?.text;if(u){n??(n={...e});let o=this.commentProvider.getComment(e);if(o)n.$comment=o.replace(/\r/g,"")}return n??e}else return e}addAstNodeRegionWithAssignmentsTo(A){let e=G((t)=>({offset:t.offset,end:t.end,length:t.length,range:t.range}),"createDocumentSegment");if(A.$cstNode){let t=A.$textRegion=e(A.$cstNode),r=t.assignments={};return Object.keys(A).filter((i)=>!i.startsWith("$")).forEach((i)=>{let u=OsA(A.$cstNode,i).map(e);if(u.length!==0)r[i]=u}),A}return}linkNode(A,e,t,r,i,u){for(let[n,o]of Object.entries(A))if(Array.isArray(o))for(let s=0;s<o.length;s++){let l=o[s];if(k0A(l))o[s]=this.reviveReference(A,n,e,l,t);else if(Hn(l))this.linkNode(l,e,t,A,n,s)}else if(k0A(o))A[n]=this.reviveReference(A,n,e,o,t);else if(Hn(o))this.linkNode(o,e,t,A,n);let a=A;a.$container=r,a.$containerProperty=i,a.$containerIndex=u}reviveReference(A,e,t,r,i){let{$refText:u,$error:a}=r,n;if(r.$ref){let o=this.getRefNode(t,r.$ref,i.uriConverter);if(Hn(o)){if(!u)u=this.nameProvider.getName(o);return{$refText:u??"",ref:o}}else a=o}else if(r.$refs){let o=[];for(let s of r.$refs){let l=this.getRefNode(t,s,i.uriConverter);if(Hn(l))o.push({ref:l})}if(o.length===0)n={$refText:u??"",items:o},a??(a="Could not resolve multi-reference");else return{$refText:u??"",items:o}}if(a)return n??(n={$refText:u??"",ref:void 0}),n.error={info:{container:A,property:e,reference:n},message:a},n;else return}getRefNode(A,e,t){try{let r=e.indexOf("#");if(r===0){let n=this.astNodeLocator.getAstNode(A,e.substring(1));if(!n)return"Could not resolve path: "+e;return n}if(r<0){let n=t?t(e):Ig.parse(e),o=this.langiumDocuments.getDocument(n);if(!o)return"Could not find document for URI: "+e;return o.parseResult.value}let i=t?t(e.substring(0,r)):Ig.parse(e.substring(0,r)),u=this.langiumDocuments.getDocument(i);if(!u)return"Could not find document for URI: "+e;if(r===e.length-1)return u.parseResult.value;let a=this.astNodeLocator.getAstNode(u.parseResult.value,e.substring(r+1));if(!a)return"Could not resolve URI: "+e;return a}catch(r){return String(r)}}},ate=class{static{G(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(A){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=A?.workspace.TextDocuments}register(A){let e=A.LanguageMetaData;for(let t of e.fileExtensions){if(this.fileExtensionMap.has(t))console.warn(`The file extension ${t} is used by multiple languages. It is now assigned to '${e.languageId}'.`);this.fileExtensionMap.set(t,A)}if(e.fileNames)for(let t of e.fileNames){if(this.fileNameMap.has(t))console.warn(`The file name ${t} is used by multiple languages. It is now assigned to '${e.languageId}'.`);this.fileNameMap.set(t,A)}this.languageIdMap.set(e.languageId,A)}getServices(A){if(this.languageIdMap.size===0)throw Error("The service registry is empty. Use `register` to register the services of a language.");let e=this.textDocuments?.get(A)?.languageId;if(e!==void 0){let u=this.languageIdMap.get(e);if(u)return u}let t=ks.extname(A),r=ks.basename(A),i=this.fileNameMap.get(r)??this.fileExtensionMap.get(t);if(!i)if(e)throw Error(`The service registry contains no services for the extension '${t}' for language '${e}'.`);else throw Error(`The service registry contains no services for the extension '${t}'.`);return i}hasServices(A){try{return this.getServices(A),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};G(M3,"diagnosticData");(function(A){A.defaults=["fast","slow","built-in"],A.all=A.defaults})(aK||(aK={}));nte=class{static{G(this,"ValidationRegistry")}constructor(A){this.entries=new lh,this.knownCategories=new Set(aK.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=A.shared.AstReflection}register(A,e=this,t="fast"){if(t==="built-in")throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");this.knownCategories.add(t);for(let[r,i]of Object.entries(A)){let u=i;if(Array.isArray(u))for(let a of u){let n={check:this.wrapValidationException(a,e),category:t};this.addEntry(r,n)}else if(typeof u==="function"){let a={check:this.wrapValidationException(u,e),category:t};this.addEntry(r,a)}else s1(u)}}wrapValidationException(A,e){return async(t,r,i)=>{await this.handleException(()=>A.call(e,t,r,i),"An error occurred during validation",r,t)}}async handleException(A,e,t,r){try{await A()}catch(i){if(Cm(i))throw i;if(console.error(`${e}:`,i),i instanceof Error&&i.stack)console.error(i.stack);let u=i instanceof Error?i.message:String(i);t("error",`${e}: ${u}`,{node:r})}}addEntry(A,e){if(A==="AstNode"){this.entries.add("AstNode",e);return}for(let t of this.reflection.getAllSubTypes(A))this.entries.add(t,e)}getChecks(A,e){let t=Qu(this.entries.get(A)).concat(this.entries.get("AstNode"));if(e)t=t.filter((r)=>e.includes(r.category));return t.map((r)=>r.check)}registerBeforeDocument(A,e=this){this.entriesBefore.push(this.wrapPreparationException(A,"An error occurred during set-up of the validation",e))}registerAfterDocument(A,e=this){this.entriesAfter.push(this.wrapPreparationException(A,"An error occurred during tear-down of the validation",e))}wrapPreparationException(A,e,t){return async(r,i,u,a)=>{await this.handleException(()=>A.call(t,r,i,u,a),e,i,r)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(A){return this.knownCategories}},ote=Object.freeze({validateNode:!0,validateChildren:!0}),ste=class{static{G(this,"DefaultDocumentValidator")}constructor(A){this.validationRegistry=A.validation.ValidationRegistry,this.metadata=A.LanguageMetaData,this.profiler=A.shared.profilers.LangiumProfiler,this.languageId=A.LanguageMetaData.languageId}async validateDocument(A,e={},t=Wu.CancellationToken.None){let r=A.parseResult,i=[];if(await Mo(t),!e.categories||e.categories.includes("built-in")){if(this.processLexingErrors(r,i,e),e.stopAfterLexingErrors&&i.some((u)=>u.data?.code===Qc.LexingError))return i;if(this.processParsingErrors(r,i,e),e.stopAfterParsingErrors&&i.some((u)=>u.data?.code===Qc.ParsingError))return i;if(this.processLinkingErrors(A,i,e),e.stopAfterLinkingErrors&&i.some((u)=>u.data?.code===Qc.LinkingError))return i}try{i.push(...await this.validateAst(r.value,e,t))}catch(u){if(Cm(u))throw u;console.error("An error occurred during validation:",u)}return await Mo(t),i}processLexingErrors(A,e,t){let r=[...A.lexerErrors,...A.lexerReport?.diagnostics??[]];for(let i of r){let u=i.severity??"error",a={severity:jF(u),range:{start:{line:i.line-1,character:i.column-1},end:{line:i.line-1,character:i.column+i.length-1}},message:i.message,data:mgA(u),source:this.getSource()};e.push(a)}}processParsingErrors(A,e,t){for(let r of A.parserErrors){let i=void 0;if(isNaN(r.token.startOffset)){if("previousToken"in r){let u=r.previousToken;if(!isNaN(u.startOffset)){let a={line:u.endLine-1,character:u.endColumn};i={start:a,end:a}}else{let a={line:0,character:0};i={start:a,end:a}}}}else i=ox(r.token);if(i){let u={severity:jF("error"),range:i,message:r.message,data:M3(Qc.ParsingError),source:this.getSource()};e.push(u)}}}processLinkingErrors(A,e,t){for(let r of A.references){let i=r.error;if(i){let u={node:i.info.container,range:r.$refNode?.range,property:i.info.property,index:i.info.index,data:{code:Qc.LinkingError,containerType:i.info.container.$type,property:i.info.property,refText:i.info.reference.$refText}};e.push(this.toDiagnostic("error",i.message,u))}}}async validateAst(A,e,t=Wu.CancellationToken.None){let r=[],i=G((u,a,n)=>{r.push(this.toDiagnostic(u,a,n))},"acceptor");return await this.validateAstBefore(A,e,i,t),await this.validateAstNodes(A,e,i,t),await this.validateAstAfter(A,e,i,t),r}async validateAstBefore(A,e,t,r=Wu.CancellationToken.None){let i=this.validationRegistry.checksBefore;for(let u of i)await Mo(r),await u(A,t,e.categories??[],r)}async validateAstNodes(A,e,t,r=Wu.CancellationToken.None){if(this.profiler?.isActive("validating")){let i=this.profiler.createTask("validating",this.languageId);i.start();try{let u=HC(A).iterator();for(let a of u){i.startSubTask(a.$type);let n=this.validateSingleNodeOptions(a,e);if(n.validateNode)try{let o=this.validationRegistry.getChecks(a.$type,e.categories);for(let s of o)await s(a,t,r)}finally{i.stopSubTask(a.$type)}if(!n.validateChildren)u.prune()}}finally{i.stop()}}else{let i=HC(A).iterator();for(let u of i){await Mo(r);let a=this.validateSingleNodeOptions(u,e);if(a.validateNode){let n=this.validationRegistry.getChecks(u.$type,e.categories);for(let o of n)await o(u,t,r)}if(!a.validateChildren)i.prune()}}}validateSingleNodeOptions(A,e){return ote}async validateAstAfter(A,e,t,r=Wu.CancellationToken.None){let i=this.validationRegistry.checksAfter;for(let u of i)await Mo(r),await u(A,t,e.categories??[],r)}toDiagnostic(A,e,t){return{message:e,range:fgA(t),severity:jF(A),code:t.code,codeDescription:t.codeDescription,tags:t.tags,relatedInformation:t.relatedInformation,data:t.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};G(fgA,"getDiagnosticRange");G(jF,"toDiagnosticSeverity");G(mgA,"toDiagnosticData");(function(A){A.LexingError="lexing-error",A.LexingWarning="lexing-warning",A.LexingInfo="lexing-info",A.LexingHint="lexing-hint",A.ParsingError="parsing-error",A.LinkingError="linking-error"})(Qc||(Qc={}));lte=class{static{G(this,"DefaultAstNodeDescriptionProvider")}constructor(A){this.astNodeLocator=A.workspace.AstNodeLocator,this.nameProvider=A.references.NameProvider}createDescription(A,e,t){let r=t??YC(A);e??(e=this.nameProvider.getName(A));let i=this.astNodeLocator.getAstNodePath(A);if(!e)throw Error(`Node at path ${i} has no name.`);let u,a=G(()=>u??(u=u6(this.nameProvider.getNameNode(A)??A.$cstNode)),"nameSegmentGetter");return{node:A,name:e,get nameSegment(){return a()},selectionSegment:u6(A.$cstNode),type:A.$type,documentUri:r.uri,path:i}}},gte=class{static{G(this,"DefaultReferenceDescriptionProvider")}constructor(A){this.nodeLocator=A.workspace.AstNodeLocator}async createDescriptions(A,e=Wu.CancellationToken.None){let t=[],r=A.parseResult.value;for(let i of HC(r))await Mo(e),t6(i).forEach((u)=>{if(!u.reference.error)t.push(...this.createInfoDescriptions(u))});return t}createInfoDescriptions(A){let e=A.reference;if(e.error||!e.$refNode)return[];let t=[];if(vs(e)&&e.$nodeDescription)t=[e.$nodeDescription];else if(ZE(e))t=e.items.map((n)=>n.$nodeDescription).filter((n)=>n!==void 0);let r=YC(A.container).uri,i=this.nodeLocator.getAstNodePath(A.container),u=[],a=u6(e.$refNode);for(let n of t)u.push({sourceUri:r,sourcePath:i,targetUri:n.documentUri,targetPath:n.path,segment:a,local:ks.equals(n.documentUri,r)});return u}},cte=class{static{G(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(A){if(A.$container){let e=this.getAstNodePath(A.$container),t=this.getPathSegment(A);return e+this.segmentSeparator+t}return""}getPathSegment({$containerProperty:A,$containerIndex:e}){if(!A)throw Error("Missing '$containerProperty' in AST node.");if(e!==void 0)return A+this.indexSeparator+e;return A}getAstNode(A,e){return e.split(this.segmentSeparator).reduce((r,i)=>{if(!r||i.length===0)return r;let u=i.indexOf(this.indexSeparator);if(u>0){let a=i.substring(0,u),n=parseInt(i.substring(u+1));return r[a]?.[n]}return r[i]},A)}},zJ={};JK(zJ,V0A(l6(),1));Cte=class{static{G(this,"DefaultConfigurationProvider")}constructor(A){this._ready=new sh,this.onConfigurationSectionUpdateEmitter=new zJ.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=A.ServiceRegistry}get ready(){return this._ready.promise}initialize(A){this.workspaceConfig=A.capabilities.workspace?.configuration??!1}async initialized(A){if(this.workspaceConfig){if(A.register){let e=this.serviceRegistry.all;A.register({section:e.map((t)=>this.toSectionName(t.LanguageMetaData.languageId))})}if(A.fetchConfiguration){let e=this.serviceRegistry.all.map((r)=>({section:this.toSectionName(r.LanguageMetaData.languageId)})),t=await A.fetchConfiguration(e);e.forEach((r,i)=>{this.updateSectionConfiguration(r.section,t[i])})}}this._ready.resolve()}updateConfiguration(A){if(typeof A.settings!=="object"||A.settings===null)return;Object.entries(A.settings).forEach(([e,t])=>{this.updateSectionConfiguration(e,t),this.onConfigurationSectionUpdateEmitter.fire({section:e,configuration:t})})}updateSectionConfiguration(A,e){this.settings[A]=e}async getConfiguration(A,e){await this.ready;let t=this.toSectionName(A);if(this.settings[t])return this.settings[t][e]}toSectionName(A){return`${A}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},JY=V0A(tDt(),1);(function(A){function e(t){return{dispose:G(async()=>await t(),"dispose")}}G(e,"create"),A.create=e})(J3||(J3={}));Bte=class{static{G(this,"DefaultDocumentBuilder")}constructor(A){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new lh,this.documentPhaseListeners=new lh,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=li.Changed,this.langiumDocuments=A.workspace.LangiumDocuments,this.langiumDocumentFactory=A.workspace.LangiumDocumentFactory,this.textDocuments=A.workspace.TextDocuments,this.indexManager=A.workspace.IndexManager,this.fileSystemProvider=A.workspace.FileSystemProvider,this.workspaceManager=()=>A.workspace.WorkspaceManager,this.serviceRegistry=A.ServiceRegistry}async build(A,e={},t=Wu.CancellationToken.None){for(let r of A){let i=r.uri.toString();if(r.state===li.Validated){if(typeof e.validation==="boolean"&&e.validation)this.resetToState(r,li.IndexedReferences);else if(typeof e.validation==="object"){let u=this.findMissingValidationCategories(r,e);if(u.length>0)this.buildState.set(i,{completed:!1,options:{validation:{categories:u}},result:this.buildState.get(i)?.result}),r.state=li.IndexedReferences}}else this.buildState.delete(i)}this.currentState=li.Changed,await this.emitUpdate(A.map((r)=>r.uri),[]),await this.buildDocuments(A,e,t)}async update(A,e,t=Wu.CancellationToken.None){this.currentState=li.Changed;let r=[];for(let n of e){let o=this.langiumDocuments.deleteDocuments(n);for(let s of o)r.push(s.uri),this.cleanUpDeleted(s)}let i=(await Promise.all(A.map((n)=>this.findChangedUris(n)))).flat();for(let n of i){let o=this.langiumDocuments.getDocument(n);if(o===void 0)o=this.langiumDocumentFactory.fromModel({$type:"INVALID"},n),o.state=li.Changed,this.langiumDocuments.addDocument(o);this.resetToState(o,li.Changed)}let u=Qu(i).concat(r).map((n)=>n.toString()).toSet();this.langiumDocuments.all.filter((n)=>!u.has(n.uri.toString())&&this.shouldRelink(n,u)).forEach((n)=>this.resetToState(n,li.ComputedScopes)),await this.emitUpdate(i,r),await Mo(t);let a=this.sortDocuments(this.langiumDocuments.all.filter((n)=>n.state<li.Validated||!this.buildState.get(n.uri.toString())?.completed||this.resultsAreIncomplete(n,this.updateBuildOptions)).toArray());await this.buildDocuments(a,this.updateBuildOptions,t)}resultsAreIncomplete(A,e){return this.findMissingValidationCategories(A,e).length>=1}findMissingValidationCategories(A,e){let t=this.buildState.get(A.uri.toString()),r=this.serviceRegistry.getServices(A.uri).validation.ValidationRegistry.getAllValidationCategories(A),i=t?.result?.validationChecks?new Set(t?.result?.validationChecks):t?.completed?r:new Set,u=e===void 0||e.validation===!0?r:typeof e.validation==="object"?e.validation.categories??r:[];return Qu(u).filter((a)=>!i.has(a)).toArray()}async findChangedUris(A){if(this.langiumDocuments.getDocument(A)??this.textDocuments?.get(A))return[A];try{let t=await this.fileSystemProvider.stat(A);if(t.isDirectory)return await this.workspaceManager().searchFolder(A);else if(this.workspaceManager().shouldIncludeEntry(t))return[A]}catch{}return[]}async emitUpdate(A,e){await Promise.all(this.updateListeners.map((t)=>t(A,e)))}sortDocuments(A){let e=0,t=A.length-1;while(e<t){while(e<A.length&&this.hasTextDocument(A[e]))e++;while(t>=0&&!this.hasTextDocument(A[t]))t--;if(e<t)[A[e],A[t]]=[A[t],A[e]]}return A}hasTextDocument(A){return Boolean(this.textDocuments?.get(A.uri))}shouldRelink(A,e){if(A.references.some((t)=>t.error!==void 0))return!0;return this.indexManager.isAffected(A,e)}onUpdate(A){return this.updateListeners.push(A),J3.create(()=>{let e=this.updateListeners.indexOf(A);if(e>=0)this.updateListeners.splice(e,1)})}resetToState(A,e){switch(e){case li.Changed:case li.Parsed:this.indexManager.removeContent(A.uri);case li.IndexedContent:A.localSymbols=void 0;case li.ComputedScopes:this.serviceRegistry.getServices(A.uri).references.Linker.unlink(A);case li.Linked:this.indexManager.removeReferences(A.uri);case li.IndexedReferences:A.diagnostics=void 0,this.buildState.delete(A.uri.toString());case li.Validated:}if(A.state>e)A.state=e}cleanUpDeleted(A){this.buildState.delete(A.uri.toString()),this.indexManager.remove(A.uri),A.state=li.Changed}async buildDocuments(A,e,t){this.prepareBuild(A,e),await this.runCancelable(A,li.Parsed,t,(u)=>this.langiumDocumentFactory.update(u,t)),await this.runCancelable(A,li.IndexedContent,t,(u)=>this.indexManager.updateContent(u,t)),await this.runCancelable(A,li.ComputedScopes,t,async(u)=>{let a=this.serviceRegistry.getServices(u.uri).references.ScopeComputation;u.localSymbols=await a.collectLocalSymbols(u,t)});let r=A.filter((u)=>this.shouldLink(u));await this.runCancelable(r,li.Linked,t,(u)=>this.serviceRegistry.getServices(u.uri).references.Linker.link(u,t)),await this.runCancelable(r,li.IndexedReferences,t,(u)=>this.indexManager.updateReferences(u,t));let i=A.filter((u)=>{if(this.shouldValidate(u))return!0;else return this.markAsCompleted(u),!1});await this.runCancelable(i,li.Validated,t,async(u)=>{await this.validate(u,t),this.markAsCompleted(u)})}markAsCompleted(A){let e=this.buildState.get(A.uri.toString());if(e)e.completed=!0}prepareBuild(A,e){for(let t of A){let r=t.uri.toString(),i=this.buildState.get(r);if(!i||i.completed)this.buildState.set(r,{completed:!1,options:e,result:i?.result})}}async runCancelable(A,e,t,r){for(let u of A)if(u.state<e)await Mo(t),await r(u),u.state=e,await this.notifyDocumentPhase(u,e,t);let i=A.filter((u)=>u.state===e);await this.notifyBuildPhase(i,e,t),this.currentState=e}onBuildPhase(A,e){return this.buildPhaseListeners.add(A,e),J3.create(()=>{this.buildPhaseListeners.delete(A,e)})}onDocumentPhase(A,e){return this.documentPhaseListeners.add(A,e),J3.create(()=>{this.documentPhaseListeners.delete(A,e)})}waitUntil(A,e,t){let r=void 0;if(e&&"path"in e)r=e;else t=e;if(t??(t=Wu.CancellationToken.None),r)return this.awaitDocumentState(A,r,t);else return this.awaitBuilderState(A,t)}awaitDocumentState(A,e,t){let r=this.langiumDocuments.getDocument(e);if(!r)return Promise.reject(new JY.ResponseError(JY.LSPErrorCodes.ServerCancelled,`No document found for URI: ${e.toString()}`));else if(r.state>=A)return Promise.resolve(e);else if(t.isCancellationRequested)return Promise.reject(zE);else if(this.currentState>=A&&A>r.state)return Promise.reject(new JY.ResponseError(JY.LSPErrorCodes.RequestFailed,`Document state of ${e.toString()} is ${li[r.state]}, requiring ${li[A]}, but workspace state is already ${li[this.currentState]}. Returning undefined.`));return new Promise((i,u)=>{let a=this.onDocumentPhase(A,(o)=>{if(ks.equals(o.uri,e))a.dispose(),n.dispose(),i(o.uri)}),n=t.onCancellationRequested(()=>{a.dispose(),n.dispose(),u(zE)})})}awaitBuilderState(A,e){if(this.currentState>=A)return Promise.resolve();else if(e.isCancellationRequested)return Promise.reject(zE);return new Promise((t,r)=>{let i=this.onBuildPhase(A,()=>{i.dispose(),u.dispose(),t()}),u=e.onCancellationRequested(()=>{i.dispose(),u.dispose(),r(zE)})})}async notifyDocumentPhase(A,e,t){let i=this.documentPhaseListeners.get(e).slice();for(let u of i)try{await Mo(t),await u(A,t)}catch(a){if(!Cm(a))throw a}}async notifyBuildPhase(A,e,t){if(A.length===0)return;let i=this.buildPhaseListeners.get(e).slice();for(let u of i)await Mo(t),await u(A,t)}shouldLink(A){return this.getBuildOptions(A).eagerLinking??!0}shouldValidate(A){return Boolean(this.getBuildOptions(A).validation)}async validate(A,e){let t=this.serviceRegistry.getServices(A.uri).validation.DocumentValidator,r=this.getBuildOptions(A),i=typeof r.validation==="object"?{...r.validation}:{};i.categories=this.findMissingValidationCategories(A,r);let u=await t.validateDocument(A,i,e);if(A.diagnostics)A.diagnostics.push(...u);else A.diagnostics=u;let a=this.buildState.get(A.uri.toString());if(a)if(a.result??(a.result={}),a.result.validationChecks)a.result.validationChecks=Qu(a.result.validationChecks).concat(i.categories).distinct().toArray();else a.result.validationChecks=[...i.categories]}getBuildOptions(A){return this.buildState.get(A.uri.toString())?.options??{}}},Ete=class{static{G(this,"DefaultIndexManager")}constructor(A){this.symbolIndex=new Map,this.symbolByTypeIndex=new qJ,this.referenceIndex=new Map,this.documents=A.workspace.LangiumDocuments,this.serviceRegistry=A.ServiceRegistry,this.astReflection=A.AstReflection}findAllReferences(A,e){let t=YC(A).uri,r=[];return this.referenceIndex.forEach((i)=>{i.forEach((u)=>{if(ks.equals(u.targetUri,t)&&u.targetPath===e)r.push(u)})}),Qu(r)}allElements(A,e){let t=Qu(this.symbolIndex.keys());if(e)t=t.filter((r)=>!e||e.has(r));return t.map((r)=>this.getFileDescriptions(r,A)).flat()}getFileDescriptions(A,e){if(!e)return this.symbolIndex.get(A)??[];return this.symbolByTypeIndex.get(A,e,()=>(this.symbolIndex.get(A)??[]).filter((i)=>this.astReflection.isSubtype(i.type,e)))}remove(A){this.removeContent(A),this.removeReferences(A)}removeContent(A){let e=A.toString();this.symbolIndex.delete(e),this.symbolByTypeIndex.clear(e)}removeReferences(A){let e=A.toString();this.referenceIndex.delete(e)}async updateContent(A,e=Wu.CancellationToken.None){let r=await this.serviceRegistry.getServices(A.uri).references.ScopeComputation.collectExportedSymbols(A,e),i=A.uri.toString();this.symbolIndex.set(i,r),this.symbolByTypeIndex.clear(i)}async updateReferences(A,e=Wu.CancellationToken.None){let r=await this.serviceRegistry.getServices(A.uri).workspace.ReferenceDescriptionProvider.createDescriptions(A,e);this.referenceIndex.set(A.uri.toString(),r)}isAffected(A,e){let t=this.referenceIndex.get(A.uri.toString());if(!t)return!1;return t.some((r)=>!r.local&&e.has(r.targetUri.toString()))}},dte=class{static{G(this,"DefaultWorkspaceManager")}constructor(A){this.initialBuildOptions={},this._ready=new sh,this.serviceRegistry=A.ServiceRegistry,this.langiumDocuments=A.workspace.LangiumDocuments,this.documentBuilder=A.workspace.DocumentBuilder,this.fileSystemProvider=A.workspace.FileSystemProvider,this.mutex=A.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(A){this.folders=A.workspaceFolders??void 0}initialized(A){return this.mutex.write((e)=>this.initializeWorkspace(this.folders??[],e))}async initializeWorkspace(A,e=Wu.CancellationToken.None){let t=await this.performStartup(A);await Mo(e),await this.documentBuilder.build(t,this.initialBuildOptions,e)}async performStartup(A){let e=[],t=G((u)=>{if(e.push(u),!this.langiumDocuments.hasDocument(u.uri))this.langiumDocuments.addDocument(u)},"collector");await this.loadAdditionalDocuments(A,t);let r=[];await Promise.all(A.map((u)=>this.getRootFolder(u)).map(async(u)=>this.traverseFolder(u,r)));let i=Qu(r).distinct((u)=>u.toString()).filter((u)=>!this.langiumDocuments.hasDocument(u));return await this.loadWorkspaceDocuments(i,t),this._ready.resolve(),e}async loadWorkspaceDocuments(A,e){await Promise.all(A.map(async(t)=>{let r=await this.langiumDocuments.getOrCreateDocument(t);e(r)}))}loadAdditionalDocuments(A,e){return Promise.resolve()}getRootFolder(A){return Ig.parse(A.uri)}async traverseFolder(A,e){try{let t=await this.fileSystemProvider.readDirectory(A);await Promise.all(t.map(async(r)=>{if(this.shouldIncludeEntry(r)){if(r.isDirectory)await this.traverseFolder(r.uri,e);else if(r.isFile)e.push(r.uri)}}))}catch(t){console.error("Failure to read directory content of "+A.toString(!0),t)}}async searchFolder(A){let e=[];return await this.traverseFolder(A,e),e}shouldIncludeEntry(A){let e=ks.basename(A.uri);if(e.startsWith("."))return!1;if(A.isDirectory)return e!=="node_modules"&&e!=="out";else if(A.isFile)return this.serviceRegistry.hasServices(A.uri);return!1}},Ite=class{static{G(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(A,e,t,r,i){return o0A.buildUnexpectedCharactersMessage(A,e,t,r,i)}buildUnableToPopLexerModeMessage(A){return o0A.buildUnableToPopLexerModeMessage(A)}},DgA={mode:"full"},ygA=class{static{G(this,"DefaultLexer")}constructor(A){this.errorMessageProvider=A.parser.LexerErrorMessageProvider,this.tokenBuilder=A.parser.TokenBuilder;let e=this.tokenBuilder.buildTokens(A.Grammar,{caseInsensitive:A.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(e);let t=nK(e)?Object.values(e):e,r=A.LanguageMetaData.mode==="production";this.chevrotainLexer=new Fs(t,{positionTracking:"full",skipValidations:r,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(A,e=DgA){let t=this.chevrotainLexer.tokenize(A);return{tokens:t.tokens,errors:t.errors,hidden:t.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(A)}}toTokenTypeDictionary(A){if(nK(A))return A;let e=VJ(A)?Object.values(A.modes).flat():A,t={};return e.forEach((r)=>t[r.name]=r),t}};G(ZJ,"isTokenTypeArray");G(VJ,"isIMultiModeLexerDefinition");G(nK,"isTokenTypeDictionary");wx();G(wgA,"parseJSDoc");G(bgA,"isJSDoc");G(vgA,"getLines");m_A=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,k7t=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;G(hte,"tokenize");G(Qte,"buildInlineTokens");F7t=/\S/,x7t=/\s*$/;G(oK,"skipWhitespace");G(pte,"lastCharacter");G(fte,"parseJSDocComment");G(mte,"parseJSDocElement");G(Dte,"appendEmptyLine");G(kgA,"parseJSDocText");G(yte,"parseJSDocInline");G(FgA,"parseJSDocTag");G(xgA,"parseJSDocLine");G(jJ,"normalizeOptions");G(pH,"normalizeOption");D_A=class{static{G(this,"JSDocCommentImpl")}constructor(A,e){this.elements=A,this.range=e}getTag(A){return this.getAllTags().find((e)=>e.name===A)}getTags(A){return this.getAllTags().filter((e)=>e.name===A)}getAllTags(){return this.elements.filter((A)=>("name"in A))}toString(){let A="";for(let e of this.elements)if(A.length===0)A=e.toString();else{let t=e.toString();A+=x0A(A)+t}return A.trim()}toMarkdown(A){let e="";for(let t of this.elements)if(e.length===0)e=t.toMarkdown(A);else{let r=t.toMarkdown(A);e+=x0A(e)+r}return e.trim()}},TnA=class{static{G(this,"JSDocTagImpl")}constructor(A,e,t,r){this.name=A,this.content=e,this.inline=t,this.range=r}toString(){let A=`@${this.name}`,e=this.content.toString();if(this.content.inlines.length===1)A=`${A} ${e}`;else if(this.content.inlines.length>1)A=`${A}
|
||
${e}`;if(this.inline)return`{${A}}`;else return A}toMarkdown(A){return A?.renderTag?.(this)??this.toMarkdownDefault(A)}toMarkdownDefault(A){let e=this.content.toMarkdown(A);if(this.inline){let i=wte(this.name,e,A??{});if(typeof i==="string")return i}let t="";if(A?.tag==="italic"||A?.tag===void 0)t="*";else if(A?.tag==="bold")t="**";else if(A?.tag==="bold-italic")t="***";let r=`${t}@${this.name}${t}`;if(this.content.inlines.length===1)r=`${r} — ${e}`;else if(this.content.inlines.length>1)r=`${r}
|
||
${e}`;if(this.inline)return`{${r}}`;else return r}};G(wte,"renderInlineTag");G(bte,"renderLinkDefault");F0A=class{static{G(this,"JSDocTextImpl")}constructor(A,e){this.inlines=A,this.range=e}toString(){let A="";for(let e=0;e<this.inlines.length;e++){let t=this.inlines[e],r=this.inlines[e+1];if(A+=t.toString(),r&&r.range.start.line>t.range.start.line)A+=`
|
||
`}return A}toMarkdown(A){let e="";for(let t=0;t<this.inlines.length;t++){let r=this.inlines[t],i=this.inlines[t+1];if(e+=r.toMarkdown(A),i&&i.range.start.line>r.range.start.line)e+=`
|
||
`}return e}},vte=class{static{G(this,"JSDocLineImpl")}constructor(A,e){this.text=A,this.range=e}toString(){return this.text}toMarkdown(){return this.text}};G(x0A,"fillNewlines");kte=class{static{G(this,"JSDocDocumentationProvider")}constructor(A){this.indexManager=A.shared.workspace.IndexManager,this.commentProvider=A.documentation.CommentProvider}getDocumentation(A){let e=this.commentProvider.getComment(A);if(e&&bgA(e))return wgA(e).toMarkdown({renderLink:G((r,i)=>this.documentationLinkRenderer(A,r,i),"renderLink"),renderTag:G((r)=>this.documentationTagRenderer(A,r),"renderTag")});return}documentationLinkRenderer(A,e,t){let r=this.findNameInLocalSymbols(A,e)??this.findNameInGlobalScope(A,e);if(r&&r.nameSegment){let i=r.nameSegment.range.start.line+1,u=r.nameSegment.range.start.character+1,a=r.documentUri.with({fragment:`L${i},${u}`});return`[${t}](${a.toString()})`}else return}documentationTagRenderer(A,e){return}findNameInLocalSymbols(A,e){let r=YC(A).localSymbols;if(!r)return;let i=A;do{let a=r.getStream(i).find((n)=>n.name===e);if(a)return a;i=i.$container}while(i);return}findNameInGlobalScope(A,e){return this.indexManager.allElements().find((r)=>r.name===e)}},Fte=class{static{G(this,"DefaultCommentProvider")}constructor(A){this.grammarConfig=()=>A.parser.GrammarConfig}getComment(A){if(pgA(A))return A.$comment;return ksA(A.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},xte=class{static{G(this,"DefaultAsyncParser")}constructor(A){this.syncParser=A.parser.LangiumParser}parse(A,e){return Promise.resolve(this.syncParser.parse(A))}},S7t=class{static{G(this,"AbstractThreadedAsyncParser")}constructor(A){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=A.serializer.Hydrator}initializeWorkers(){while(this.workerPool.length<this.threadCount){let A=this.createWorker();A.onReady(()=>{if(this.queue.length>0){let e=this.queue.shift();if(e)A.lock(),e.resolve(A)}}),this.workerPool.push(A)}}async parse(A,e){let t=await this.acquireParserWorker(e),r=new sh,i,u=e.onCancellationRequested(()=>{i=setTimeout(()=>{this.terminateWorker(t)},this.terminationDelay)});return t.parse(A).then((a)=>{let n=this.hydrator.hydrate(a);r.resolve(n)}).catch((a)=>{r.reject(a)}).finally(()=>{u.dispose(),clearTimeout(i)}),r.promise}terminateWorker(A){A.terminate();let e=this.workerPool.indexOf(A);if(e>=0)this.workerPool.splice(e,1)}async acquireParserWorker(A){this.initializeWorkers();for(let t of this.workerPool)if(t.ready)return t.lock(),t;let e=new sh;return A.onCancellationRequested(()=>{let t=this.queue.indexOf(e);if(t>=0)this.queue.splice(t,1);e.reject(zE)}),this.queue.push(e),e.promise}},L7t=class{static{G(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(A,e,t,r){this.onReadyEmitter=new zJ.Emitter,this.deferred=new sh,this._ready=!0,this._parsing=!1,this.sendMessage=A,this._terminate=r,e((i)=>{let u=i;this.deferred.resolve(u),this.unlock()}),t((i)=>{this.deferred.reject(i),this.unlock()})}terminate(){this.deferred.reject(zE),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(A){if(this._parsing)throw Error("Parser worker is busy");return this._parsing=!0,this.deferred=new sh,this.sendMessage(A),this.deferred.promise}},Ste=class{static{G(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new Wu.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(A){this.cancelWrite();let e=_J();return this.previousTokenSource=e,this.enqueue(this.writeQueue,A,e.token)}read(A){return this.enqueue(this.readQueue,A)}enqueue(A,e,t=Wu.CancellationToken.None){let r=new sh,i={action:e,deferred:r,cancellationToken:t};return A.push(i),this.performNextOperation(),r.promise}async performNextOperation(){if(!this.done)return;let A=[];if(this.writeQueue.length>0)A.push(this.writeQueue.shift());else if(this.readQueue.length>0)A.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(A.map(async({action:e,deferred:t,cancellationToken:r})=>{try{let i=await Promise.resolve().then(()=>e(r));t.resolve(i)}catch(i){if(Cm(i))t.resolve(void 0);else t.reject(i)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},Lte=class{static{G(this,"DefaultHydrator")}constructor(A){this.grammarElementIdMap=new uK,this.tokenTypeIdMap=new uK,this.grammar=A.Grammar,this.lexer=A.parser.Lexer,this.linker=A.references.Linker}dehydrate(A){return{lexerErrors:A.lexerErrors,lexerReport:A.lexerReport?this.dehydrateLexerReport(A.lexerReport):void 0,parserErrors:A.parserErrors.map((e)=>({...e,message:e.message})),value:this.dehydrateAstNode(A.value,this.createDehyrationContext(A.value))}}dehydrateLexerReport(A){return A}createDehyrationContext(A){let e=new Map,t=new Map;for(let r of HC(A))e.set(r,{});if(A.$cstNode)for(let r of i6(A.$cstNode))t.set(r,{});return{astNodes:e,cstNodes:t}}dehydrateAstNode(A,e){let t=e.astNodes.get(A);if(t.$type=A.$type,t.$containerIndex=A.$containerIndex,t.$containerProperty=A.$containerProperty,A.$cstNode!==void 0)t.$cstNode=this.dehydrateCstNode(A.$cstNode,e);for(let[r,i]of Object.entries(A)){if(r.startsWith("$"))continue;if(Array.isArray(i)){let u=[];t[r]=u;for(let a of i)if(Hn(a))u.push(this.dehydrateAstNode(a,e));else if(vs(a))u.push(this.dehydrateReference(a,e));else u.push(a)}else if(Hn(i))t[r]=this.dehydrateAstNode(i,e);else if(vs(i))t[r]=this.dehydrateReference(i,e);else if(i!==void 0)t[r]=i}return t}dehydrateReference(A,e){let t={};if(t.$refText=A.$refText,A.$refNode)t.$refNode=e.cstNodes.get(A.$refNode);return t}dehydrateCstNode(A,e){let t=e.cstNodes.get(A);if(_K(A))t.fullText=A.fullText;else t.grammarSource=this.getGrammarElementId(A.grammarSource);if(t.hidden=A.hidden,t.astNode=e.astNodes.get(A.astNode),eh(A))t.content=A.content.map((r)=>this.dehydrateCstNode(r,e));else if(z3(A))t.tokenType=A.tokenType.name,t.offset=A.offset,t.length=A.length,t.startLine=A.range.start.line,t.startColumn=A.range.start.character,t.endLine=A.range.end.line,t.endColumn=A.range.end.character;return t}hydrate(A){let e=A.value,t=this.createHydrationContext(e);if("$cstNode"in e)this.hydrateCstNode(e.$cstNode,t);return{lexerErrors:A.lexerErrors,lexerReport:A.lexerReport,parserErrors:A.parserErrors,value:this.hydrateAstNode(e,t)}}createHydrationContext(A){let e=new Map,t=new Map;for(let i of HC(A))e.set(i,{});let r;if(A.$cstNode)for(let i of i6(A.$cstNode)){let u;if("fullText"in i)u=new igA(i.fullText),r=u;else if("content"in i)u=new HJ;else if("tokenType"in i)u=this.hydrateCstLeafNode(i);if(u)t.set(i,u),u.root=r}return{astNodes:e,cstNodes:t}}hydrateAstNode(A,e){let t=e.astNodes.get(A);if(t.$type=A.$type,t.$containerIndex=A.$containerIndex,t.$containerProperty=A.$containerProperty,A.$cstNode)t.$cstNode=e.cstNodes.get(A.$cstNode);for(let[r,i]of Object.entries(A)){if(r.startsWith("$"))continue;if(Array.isArray(i)){let u=[];t[r]=u;for(let a of i)if(Hn(a))u.push(this.setParent(this.hydrateAstNode(a,e),t));else if(vs(a))u.push(this.hydrateReference(a,t,r,e));else u.push(a)}else if(Hn(i))t[r]=this.setParent(this.hydrateAstNode(i,e),t);else if(vs(i))t[r]=this.hydrateReference(i,t,r,e);else if(i!==void 0)t[r]=i}return t}setParent(A,e){return A.$container=e,A}hydrateReference(A,e,t,r){return this.linker.buildReference(e,t,r.cstNodes.get(A.$refNode),A.$refText)}hydrateCstNode(A,e,t=0){let r=e.cstNodes.get(A);if(typeof A.grammarSource==="number")r.grammarSource=this.getGrammarElement(A.grammarSource);if(r.astNode=e.astNodes.get(A.astNode),eh(r))for(let i of A.content){let u=this.hydrateCstNode(i,e,t++);r.content.push(u)}return r}hydrateCstLeafNode(A){let e=this.getTokenType(A.tokenType),{offset:t,length:r,startLine:i,startColumn:u,endLine:a,endColumn:n,hidden:o}=A;return new AK(t,r,{start:{line:i,character:u},end:{line:a,character:n}},e,o)}getTokenType(A){return this.lexer.definition[A]}getGrammarElementId(A){if(!A)return;if(this.grammarElementIdMap.size===0)this.createGrammarElementIdMap();return this.grammarElementIdMap.get(A)}getGrammarElement(A){if(this.grammarElementIdMap.size===0)this.createGrammarElementIdMap();return this.grammarElementIdMap.getKey(A)}createGrammarElementIdMap(){let A=0;for(let e of HC(this.grammar))if(WK(e))this.grammarElementIdMap.set(e,A++)}};G(Fi,"createDefaultCoreModule");G(xi,"createDefaultSharedCoreModule");(function(A){A.merge=(e,t)=>s6(s6({},e),t)})(S0A||(S0A={}));G(wr,"inject");Rte=Symbol("isProxy");G(SgA,"eagerLoad");G(LgA,"_inject");y_A=Symbol();G(L0A,"_resolve");G(s6,"_merge");R0A={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(function(A){A.REGULAR="indentation-sensitive",A.IGNORE_INDENTATION="ignore-indentation"})(T3||(T3={}));Nte=class extends OJ{static{G(this,"IndentationAwareTokenBuilder")}constructor(A=R0A){super();this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...R0A,...A},this.indentTokenType=zw({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=zw({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(A,e){let t=super.buildTokens(A,e);if(!ZJ(t))throw Error("Invalid tokens built by default builder");let{indentTokenName:r,dedentTokenName:i,whitespaceTokenName:u,ignoreIndentationDelimiters:a}=this.options,n,o,s,l=[];for(let g of t){for(let[C,B]of a)if(g.name===C)g.PUSH_MODE=T3.IGNORE_INDENTATION;else if(g.name===B)g.POP_MODE=!0;if(g.name===i)n=g;else if(g.name===r)o=g;else if(g.name===u)s=g;else l.push(g)}if(!n||!o||!s)throw Error("Some indentation/whitespace tokens not found!");if(a.length>0)return{modes:{[T3.REGULAR]:[n,o,...l,s],[T3.IGNORE_INDENTATION]:[...l,s]},defaultMode:T3.REGULAR};else return[n,o,s,...l]}flushLexingReport(A){return{...super.flushLexingReport(A),remainingDedents:this.flushRemainingDedents(A)}}isStartOfLine(A,e){return e===0||`\r
|
||
`.includes(A[e-1])}matchWhitespace(A,e,t,r){this.whitespaceRegExp.lastIndex=e;let i=this.whitespaceRegExp.exec(A);return{currIndentLevel:i?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:i}}createIndentationTokenInstance(A,e,t,r){let i=this.getLineNumber(e,r);return Jx(A,t,r,r+t.length,i,i,1,t.length)}getLineNumber(A,e){return A.substring(0,e).split(/\r\n|\r|\n/).length}indentMatcher(A,e,t,r){if(!this.isStartOfLine(A,e))return null;let{currIndentLevel:i,prevIndentLevel:u,match:a}=this.matchWhitespace(A,e,t,r);if(i<=u)return null;return this.indentationStack.push(i),a}dedentMatcher(A,e,t,r){if(!this.isStartOfLine(A,e))return null;let{currIndentLevel:i,prevIndentLevel:u,match:a}=this.matchWhitespace(A,e,t,r);if(i>=u)return null;let n=this.indentationStack.lastIndexOf(i);if(n===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${i} at offset: ${e}. Current indentation stack: ${this.indentationStack}`,offset:e,length:a?.[0]?.length??0,line:this.getLineNumber(A,e),column:1}),null;let o=this.indentationStack.length-n-1,s=A.substring(0,e).match(/[\r\n]+$/)?.[0].length??1;for(let l=0;l<o;l++){let g=this.createIndentationTokenInstance(this.dedentTokenType,A,"",e-(s-1));t.push(g),this.indentationStack.pop()}return null}buildTerminalToken(A){let e=super.buildTerminalToken(A),{indentTokenName:t,dedentTokenName:r,whitespaceTokenName:i}=this.options;if(e.name===t)return this.indentTokenType;else if(e.name===r)return this.dedentTokenType;else if(e.name===i)return zw({name:i,pattern:this.whitespaceRegExp,group:Fs.SKIPPED});return e}flushRemainingDedents(A){let e=[];while(this.indentationStack.length>1)e.push(this.createIndentationTokenInstance(this.dedentTokenType,A,"",A.length)),this.indentationStack.pop();return this.indentationStack=[0],e}},R7t=class extends ygA{static{G(this,"IndentationAwareLexer")}constructor(A){super(A);if(A.parser.TokenBuilder instanceof Nte)this.indentationTokenBuilder=A.parser.TokenBuilder;else throw Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(A,e=DgA){let t=super.tokenize(A),r=t.report;if(e?.mode==="full")t.tokens.push(...r.remainingDedents);r.remainingDedents=[];let{indentTokenType:i,dedentTokenType:u}=this.indentationTokenBuilder,a=i.tokenTypeIdx,n=u.tokenTypeIdx,o=[],s=t.tokens.length-1;for(let l=0;l<s;l++){let g=t.tokens[l],C=t.tokens[l+1];if(g.tokenTypeIdx===a&&C.tokenTypeIdx===n){l++;continue}o.push(g)}if(s>=0)o.push(t.tokens[s]);return t.tokens=o,t}},RgA={};o1(RgA,{AstUtils:()=>tsA,BiMap:()=>uK,Cancellation:()=>Wu,ContextCache:()=>qJ,CstUtils:()=>$0A,DONE_RESULT:()=>bs,Deferred:()=>sh,Disposable:()=>J3,DisposableCache:()=>WJ,DocumentCache:()=>rte,EMPTY_STREAM:()=>$w,ErrorWithLocation:()=>$K,GrammarUtils:()=>LsA,MultiMap:()=>lh,OperationCancelled:()=>zE,Reduction:()=>nx,RegExpUtils:()=>NsA,SimpleCache:()=>hgA,StreamImpl:()=>qE,TreeStreamImpl:()=>A6,URI:()=>Ig,UriTrie:()=>dgA,UriUtils:()=>ks,WorkspaceCache:()=>QgA,assertCondition:()=>RsA,assertUnreachable:()=>s1,delayNextTick:()=>PJ,interruptAndCheck:()=>Mo,isOperationCancelled:()=>Cm,loadGrammarFromJson:()=>Yo,setInterruptionPeriod:()=>CgA,startCancelableOperation:()=>_J,stream:()=>Qu});JK(RgA,zJ);Gte=class{static{G(this,"EmptyFileSystemProvider")}stat(A){throw Error("No file system is available.")}statSync(A){throw Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw Error("No file system is available.")}readBinarySync(){throw Error("No file system is available.")}readFile(){throw Error("No file system is available.")}readFileSync(){throw Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}},Ji={fileSystemProvider:G(()=>new Gte,"fileSystemProvider")},N7t={Grammar:G(()=>{return},"Grammar"),LanguageMetaData:G(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},G7t={AstReflection:G(()=>new DsA,"AstReflection")};G(Ute,"createMinimalGrammarServices");G(Yo,"loadGrammarFromJson");JK(To,RgA);U7t=class{static{G(this,"DefaultLangiumProfiler")}constructor(A){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=A??new Set(this.allCategories),this.records=new lh}isActive(A){return this.activeCategories.has(A)}start(...A){if(!A)this.activeCategories=new Set(this.allCategories);else A.forEach((e)=>this.activeCategories.add(e))}stop(...A){if(!A)this.activeCategories.clear();else A.forEach((e)=>this.activeCategories.delete(e))}createTask(A,e){if(!this.isActive(A))throw Error(`Category "${A}" is not active.`);return console.log(`Creating profiling task for '${A}.${e}'.`),new Mte((t)=>this.records.add(A,this.dumpRecord(A,t)),e)}dumpRecord(A,e){console.info(`Task ${A}.${e.identifier} executed in ${e.duration.toFixed(2)}ms and ended at ${e.date.toISOString()}`);let t=[];for(let u of e.entries.keys()){let a=e.entries.get(u),n=a.reduce((o,s)=>o+s);t.push({name:`${e.identifier}.${u}`,count:a.length,duration:n})}let r=e.duration-t.map((u)=>u.duration).reduce((u,a)=>u+a,0);t.push({name:e.identifier,count:1,duration:r}),t.sort((u,a)=>a.duration-u.duration);function i(u){return Math.round(100*u)/100}return G(i,"Round"),console.table(t.map((u)=>({Element:u.name,Count:u.count,"Self %":i(100*u.duration/e.duration),"Time (ms)":i(u.duration)}))),e}getRecords(...A){if(A.length===0)return this.records.values();else return this.records.entries().filter((e)=>A.some((t)=>t===e[0])).flatMap((e)=>e[1])}},Mte=class{static{G(this,"ProfilingTask")}constructor(A,e){this.stack=[],this.entries=new lh,this.addRecord=A,this.identifier=e}start(){if(this.startTime!==void 0)throw Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(this.startTime===void 0)throw Error(`Task "${this.identifier}" was not started.`);if(this.stack.length!==0)throw Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map((e)=>e.id).join(", ")}.`);let A={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(A),this.startTime=void 0,this.entries.clear()}startSubTask(A){this.stack.push({id:A,start:performance.now(),content:0})}stopSubTask(A){let e=this.stack.pop();if(!e)throw Error(`Task "${this.identifier}.${A}" was not started.`);if(e.id!==A)throw Error(`Sub-Task "${e.id}" is not already stopped.`);let t=performance.now()-e.start;if(this.stack.at(-1)!==void 0)this.stack[this.stack.length-1].content+=t;let r=t-e.content;this.entries.add(A,r)}};((A)=>{A.Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[^\[\]\r\n]+)\]/}})(N0A||(N0A={}));((A)=>{A.Terminals={DOMAIN_NAME:/complex|complicated|clear|chaotic|confusion/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(G0A||(G0A={}));((A)=>{A.Terminals={EM_ID:/[_a-zA-Z][\w_]*/,EM_FID:/\d{1,3}/,EM_DATA_INLINE:/\{(.*)\}|"(.*)"|'(.*)'/,EM_DATA_BLOCK:/\{[\t ]*\r?\n(?:[\S\s]*?\r?\n)?\}(?:\r?\n|(?!\S))/,EM_ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EM_ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,EM_TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,EM_WS:/\s+/,EM_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EM_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EM_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EM_ML_COMMENT:/\/\*[\s\S]*?\*\//,EM_SL_COMMENT:/\/\/[^\n\r]*/}})(U0A||(U0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/}})(M0A||(M0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(T0A||(T0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Y0A||(Y0A={}));((A)=>{A.Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(H0A||(H0A={}));((A)=>{A.Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(K0A||(K0A={}));((A)=>{A.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ABNF_RULENAME:/[A-Za-z][A-Za-z0-9-]*/,ABNF_STRING:/"[^"]*"/,ABNF_NUMVAL:/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\.[0-9A-Fa-f]+)*/,ABNF_REPEAT:/[0-9]*\*[0-9]*/,ABNF_EXACT_REPEAT:/[0-9]+/,ABNF_WHITESPACE:/[\t \r\n]+/,ABNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,ABNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,ABNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ABNF_COMMENT:/;[^\n\r]*/}})(J0A||(J0A={}));((A)=>{A.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EBNF_ID:/[A-Z_a-z][\w-]*/,EBNF_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,EBNF_SPECIAL_SEQUENCE:/\?(?=[^?;]*[^?\s;][^?;]*\?)[^?;]*\?/,EBNF_WHITESPACE:/[\t \r\n]+/,EBNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EBNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EBNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EBNF_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//,EBNF_ISO_COMMENT:/\(\*[\s\S]*?\*\)/}})(O0A||(O0A={}));((A)=>{A.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,RR_ID:/[A-Z_a-z][\w-]*/,RR_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,RR_WHITESPACE:/[\t \r\n]+/,RR_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,RR_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,RR_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,RR_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//}})(P0A||(P0A={}));((A)=>{A.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,PEG_ID:/[A-Z_a-z][\w-]*/,PEG_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,PEG_WHITESPACE:/[\t \r\n]+/,PEG_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,PEG_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,PEG_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,PEG_LINE_COMMENT:/#[^\n\r]*/}})(_0A||(_0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/}})(W0A||(W0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,CLASS_ANNOTATION:/[ \t]+:::[ \t]*[A-Za-z_][\w-]*/,ICON_ANNOTATION:/[ \t]+icon\([\w-]*(?::[\w-]+)?\)/,DESC_ANNOTATION:/[ \t]+##[^\n\r]*/,INDENTATION:/[ \t]{1,}/,QUOTED_NAME:/"[^"]*"|'[^']*'/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,BARE_NAME:/(?!:::|icon\(|##)[^ \t\n\r"'](?:(?![ \t]+:::[ \t]*[A-Za-z_]|[ \t]+icon\(|[ \t]+##)[^\n\r])*/}})(q0A||(q0A={}));((A)=>{A.Terminals={WARDLEY_NUMBER:/[0-9]+\.[0-9]+/,ARROW:/->/,LINK_PORT:/\+<>|\+>|\+</,LINK_ARROW:/-->|-\.->|>|\+'[^']*'<>|\+'[^']*'<|\+'[^']*'>/,LINK_LABEL:/;[^\n\r]+/,STRATEGY:/build|buy|outsource|market/,KW_WARDLEY:/wardley-beta/,KW_SIZE:/size/,KW_EVOLUTION:/evolution/,KW_ANCHOR:/anchor/,KW_COMPONENT:/component/,KW_LABEL:/label/,KW_INERTIA:/inertia/,KW_EVOLVE:/evolve/,KW_PIPELINE:/pipeline/,KW_NOTE:/note/,KW_ANNOTATIONS:/annotations/,KW_ANNOTATION:/annotation/,KW_ACCELERATOR:/accelerator/,KW_DEACCELERATOR:/deaccelerator/,NAME_WITH_SPACES:/(?!title\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/,WS:/[ \t]+/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(z0A||(z0A={}));Bni={...N0A.Terminals,...G0A.Terminals,...U0A.Terminals,...M0A.Terminals,...T0A.Terminals,...Y0A.Terminals,...H0A.Terminals,...K0A.Terminals,...J0A.Terminals,...O0A.Terminals,...P0A.Terminals,..._0A.Terminals,...q0A.Terminals,...W0A.Terminals,...z0A.Terminals},sK={$type:"AbnfAlternation",alternatives:"alternatives"},lK={$type:"AbnfConcatenation",elements:"elements"},XF={$type:"AbnfElement",primary:"primary",repeat:"repeat"},gK={$type:"AbnfGroup",element:"element"},cK={$type:"AbnfNumVal",value:"value"},CK={$type:"AbnfOptionalGroup",element:"element"},P4={$type:"AbnfPrimary"},$F={$type:"AbnfRule",definition:"definition",name:"name"},BK={$type:"AbnfRuleName",name:"name"},EK={$type:"AbnfStringLiteral",value:"value"},OY={$type:"Accelerator",name:"name",x:"x",y:"y"},YnA={$type:"Alignment",direction:"direction",members:"members"},PY={$type:"Anchor",evolution:"evolution",name:"name",visibility:"visibility"},pF={$type:"Annotation",number:"number",text:"text",x:"x",y:"y"},HnA={$type:"Annotations",x:"x",y:"y"},hc={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",alignments:"alignments",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};G(NgA,"isArchitecture");_Y={$type:"Axis",label:"label",name:"name"},Vw={$type:"Branch",name:"name",order:"order"};G(GgA,"isBranch");w_A={$type:"Checkout",branch:"branch"},WY={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},KnA={$type:"ClassDefStatement",className:"className",styleText:"styleText"},z4={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};G(UgA,"isCommit");qY={$type:"Common",accDescr:"accDescr",accTitle:"accTitle",title:"title"},c3={$type:"Component",decorator:"decorator",evolution:"evolution",inertia:"inertia",label:"label",name:"name",visibility:"visibility"},zY={$type:"Curve",entries:"entries",label:"label",name:"name"},jI={$type:"Cynefin",accDescr:"accDescr",accTitle:"accTitle",domains:"domains",title:"title",transitions:"transitions"};G(MgA,"isCynefin");ZY={$type:"Deaccelerator",name:"name",x:"x",y:"y"},b_A={$type:"Decorator",strategy:"strategy"},xw={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},jw={$type:"DomainBlock",domain:"domain",items:"items"};G(TgA,"isDomainBlock");Dx={$type:"DomainItem",label:"label"};G(YgA,"isDomainItem");dK={$type:"EbnfChoice",alternatives:"alternatives"},IK={$type:"EbnfExceptionPostfix",except:"except"},hK={$type:"EbnfGroup",element:"element"},QK={$type:"EbnfNonTerminal",name:"name"},pK={$type:"EbnfOneOrMorePostfix",operator:"operator"},fK={$type:"EbnfOptional",element:"element"},mK={$type:"EbnfOptionalPostfix",operator:"operator"},L3={$type:"EbnfPostfix"},zI={$type:"EbnfPrimary"},DK={$type:"EbnfRepetition",element:"element"},Ax={$type:"EbnfRule",definition:"definition",name:"name"},yK={$type:"EbnfSequence",elements:"elements"},wK={$type:"EbnfSpecial",text:"text"},ex={$type:"EbnfTerm",base:"base",postfixes:"postfixes"},bK={$type:"EbnfTerminal",value:"value"},vK={$type:"EbnfZeroOrMorePostfix",operator:"operator"},JE={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},_4={$type:"EmDataEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",name:"name"},ZI={$type:"EmFrame"},fF={$type:"EmGwt",givenStatements:"givenStatements",sourceFrame:"sourceFrame",thenStatements:"thenStatements",whenStatements:"whenStatements"},v_A={$type:"EmGwtStatement",entityIdentifier:"entityIdentifier"},JnA={$type:"EmModelEntity",name:"name"};G(HgA,"isEmModelEntityType");VY={$type:"EmNoteEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",sourceFrame:"sourceFrame"},_I={$type:"EmResetFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"};G(Wx,"isEmResetFrame");T4={$type:"EmTimeFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"},OnA={$type:"Entry",axis:"axis",value:"value"},GC={$type:"EventModel",accDescr:"accDescr",accTitle:"accTitle",dataEntities:"dataEntities",frames:"frames",gwtEntities:"gwtEntities",modelEntities:"modelEntities",noteEntities:"noteEntities",title:"title"},k_A={$type:"Evolution",stages:"stages"},jY={$type:"EvolutionStage",boundary:"boundary",name:"name",secondName:"secondName"},PnA={$type:"Evolve",component:"component",target:"target"},XI={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};G(KgA,"isGitGraph");mF={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},Y3={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};G(JgA,"isInfo");DF={$type:"Item",classSelector:"classSelector",name:"name"},_nA={$type:"Junction",id:"id",in:"in"},yF={$type:"Label",negX:"negX",negY:"negY",offsetX:"offsetX",offsetY:"offsetY"},XY={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},C3={$type:"Link",arrow:"arrow",from:"from",fromPort:"fromPort",linkLabel:"linkLabel",to:"to",toPort:"toPort"},Z4={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};G(OgA,"isMerge");$Y={$type:"Note",evolution:"evolution",text:"text",visibility:"visibility"},WnA={$type:"Option",name:"name",value:"value"},V4={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};G(PgA,"isPacket");j4={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};G(_gA,"isPacketBlock");kK={$type:"PegAny",dot:"dot"},FK={$type:"PegGroup",element:"element"},xK={$type:"PegIdentifier",name:"name"},SK={$type:"PegLiteral",value:"value"},LK={$type:"PegOrderedChoice",alternatives:"alternatives"},tx={$type:"PegPrefix",operator:"operator",suffix:"suffix"},R3={$type:"PegPrimary"},rx={$type:"PegRule",definition:"definition",name:"name"},RK={$type:"PegSequence",elements:"elements"},ix={$type:"PegSuffix",operator:"operator",primary:"primary"},$I={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};G(WgA,"isPie");Xw={$type:"PieSection",label:"label",value:"value"};G(qgA,"isPieSection");qnA={$type:"Pipeline",components:"components",parent:"parent"},AH={$type:"PipelineComponent",evolution:"evolution",label:"label",name:"name"},VI={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},X4={$type:"Railroad",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};G(zgA,"isRailroad");$4={$type:"RailroadAbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};G(ZgA,"isRailroadAbnf");NK={$type:"RailroadChoiceExpr",alternatives:"alternatives"},A1={$type:"RailroadEbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};G(VgA,"isRailroadEbnf");UC={$type:"RailroadExpression"},GK={$type:"RailroadNonTerminalExpr",name:"name"},UK={$type:"RailroadOneOrMoreExpr",element:"element"},MK={$type:"RailroadOptionalExpr",element:"element"},e1={$type:"RailroadPeg",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};G(jgA,"isRailroadPeg");ux={$type:"RailroadRule",definition:"definition",name:"name"},TK={$type:"RailroadSequenceExpr",elements:"elements"},YK={$type:"RailroadSpecialExpr",text:"text"},HK={$type:"RailroadTerminalExpr",value:"value"},KK={$type:"RailroadZeroOrMoreExpr",element:"element"},znA={$type:"Section",classSelector:"classSelector",name:"name"},Sw={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},ZnA={$type:"Size",height:"height",width:"width"},W4={$type:"Statement"},H3={$type:"Transition",from:"from",label:"label",to:"to"};G(XgA,"isTransition");t1={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};G($gA,"isTreemap");VnA={$type:"TreemapRow",indent:"indent",item:"item"},q4={$type:"TreeNode",classAnnotation:"classAnnotation",descAnnotation:"descAnnotation",iconAnnotation:"iconAnnotation",indent:"indent",name:"name"},N3={$type:"TreeView",accDescr:"accDescr",accTitle:"accTitle",nodes:"nodes",title:"title"},ao={$type:"Wardley",accDescr:"accDescr",accelerators:"accelerators",accTitle:"accTitle",anchors:"anchors",annotation:"annotation",annotations:"annotations",components:"components",deaccelerators:"deaccelerators",evolution:"evolution",evolves:"evolves",links:"links",notes:"notes",pipelines:"pipelines",size:"size",title:"title"};G(AcA,"isWardley");Tte=class extends esA{constructor(){super(...arguments);this.types={AbnfAlternation:{name:sK.$type,properties:{alternatives:{name:sK.alternatives,defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:lK.$type,properties:{elements:{name:lK.elements,defaultValue:[]}},superTypes:[]},AbnfElement:{name:XF.$type,properties:{primary:{name:XF.primary},repeat:{name:XF.repeat}},superTypes:[]},AbnfGroup:{name:gK.$type,properties:{element:{name:gK.element}},superTypes:[P4.$type]},AbnfNumVal:{name:cK.$type,properties:{value:{name:cK.value}},superTypes:[P4.$type]},AbnfOptionalGroup:{name:CK.$type,properties:{element:{name:CK.element}},superTypes:[P4.$type]},AbnfPrimary:{name:P4.$type,properties:{},superTypes:[]},AbnfRule:{name:$F.$type,properties:{definition:{name:$F.definition},name:{name:$F.name}},superTypes:[]},AbnfRuleName:{name:BK.$type,properties:{name:{name:BK.name}},superTypes:[P4.$type]},AbnfStringLiteral:{name:EK.$type,properties:{value:{name:EK.value}},superTypes:[P4.$type]},Accelerator:{name:OY.$type,properties:{name:{name:OY.name},x:{name:OY.x},y:{name:OY.y}},superTypes:[]},Alignment:{name:YnA.$type,properties:{direction:{name:YnA.direction},members:{name:YnA.members,defaultValue:[]}},superTypes:[]},Anchor:{name:PY.$type,properties:{evolution:{name:PY.evolution},name:{name:PY.name},visibility:{name:PY.visibility}},superTypes:[]},Annotation:{name:pF.$type,properties:{number:{name:pF.number},text:{name:pF.text},x:{name:pF.x},y:{name:pF.y}},superTypes:[]},Annotations:{name:HnA.$type,properties:{x:{name:HnA.x},y:{name:HnA.y}},superTypes:[]},Architecture:{name:hc.$type,properties:{accDescr:{name:hc.accDescr},accTitle:{name:hc.accTitle},alignments:{name:hc.alignments,defaultValue:[]},edges:{name:hc.edges,defaultValue:[]},groups:{name:hc.groups,defaultValue:[]},junctions:{name:hc.junctions,defaultValue:[]},services:{name:hc.services,defaultValue:[]},title:{name:hc.title}},superTypes:[]},Axis:{name:_Y.$type,properties:{label:{name:_Y.label},name:{name:_Y.name}},superTypes:[]},Branch:{name:Vw.$type,properties:{name:{name:Vw.name},order:{name:Vw.order}},superTypes:[W4.$type]},Checkout:{name:w_A.$type,properties:{branch:{name:w_A.branch}},superTypes:[W4.$type]},CherryPicking:{name:WY.$type,properties:{id:{name:WY.id},parent:{name:WY.parent},tags:{name:WY.tags,defaultValue:[]}},superTypes:[W4.$type]},ClassDefStatement:{name:KnA.$type,properties:{className:{name:KnA.className},styleText:{name:KnA.styleText}},superTypes:[]},Commit:{name:z4.$type,properties:{id:{name:z4.id},message:{name:z4.message},tags:{name:z4.tags,defaultValue:[]},type:{name:z4.type}},superTypes:[W4.$type]},Common:{name:qY.$type,properties:{accDescr:{name:qY.accDescr},accTitle:{name:qY.accTitle},title:{name:qY.title}},superTypes:[]},Component:{name:c3.$type,properties:{decorator:{name:c3.decorator},evolution:{name:c3.evolution},inertia:{name:c3.inertia,defaultValue:!1},label:{name:c3.label},name:{name:c3.name},visibility:{name:c3.visibility}},superTypes:[]},Curve:{name:zY.$type,properties:{entries:{name:zY.entries,defaultValue:[]},label:{name:zY.label},name:{name:zY.name}},superTypes:[]},Cynefin:{name:jI.$type,properties:{accDescr:{name:jI.accDescr},accTitle:{name:jI.accTitle},domains:{name:jI.domains,defaultValue:[]},title:{name:jI.title},transitions:{name:jI.transitions,defaultValue:[]}},superTypes:[]},Deaccelerator:{name:ZY.$type,properties:{name:{name:ZY.name},x:{name:ZY.x},y:{name:ZY.y}},superTypes:[]},Decorator:{name:b_A.$type,properties:{strategy:{name:b_A.strategy}},superTypes:[]},Direction:{name:xw.$type,properties:{accDescr:{name:xw.accDescr},accTitle:{name:xw.accTitle},dir:{name:xw.dir},statements:{name:xw.statements,defaultValue:[]},title:{name:xw.title}},superTypes:[XI.$type]},DomainBlock:{name:jw.$type,properties:{domain:{name:jw.domain},items:{name:jw.items,defaultValue:[]}},superTypes:[]},DomainItem:{name:Dx.$type,properties:{label:{name:Dx.label}},superTypes:[]},EbnfChoice:{name:dK.$type,properties:{alternatives:{name:dK.alternatives,defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:IK.$type,properties:{except:{name:IK.except}},superTypes:[L3.$type]},EbnfGroup:{name:hK.$type,properties:{element:{name:hK.element}},superTypes:[zI.$type]},EbnfNonTerminal:{name:QK.$type,properties:{name:{name:QK.name}},superTypes:[zI.$type]},EbnfOneOrMorePostfix:{name:pK.$type,properties:{operator:{name:pK.operator}},superTypes:[L3.$type]},EbnfOptional:{name:fK.$type,properties:{element:{name:fK.element}},superTypes:[zI.$type]},EbnfOptionalPostfix:{name:mK.$type,properties:{operator:{name:mK.operator}},superTypes:[L3.$type]},EbnfPostfix:{name:L3.$type,properties:{},superTypes:[]},EbnfPrimary:{name:zI.$type,properties:{},superTypes:[]},EbnfRepetition:{name:DK.$type,properties:{element:{name:DK.element}},superTypes:[zI.$type]},EbnfRule:{name:Ax.$type,properties:{definition:{name:Ax.definition},name:{name:Ax.name}},superTypes:[]},EbnfSequence:{name:yK.$type,properties:{elements:{name:yK.elements,defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:wK.$type,properties:{text:{name:wK.text}},superTypes:[zI.$type]},EbnfTerm:{name:ex.$type,properties:{base:{name:ex.base},postfixes:{name:ex.postfixes,defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:bK.$type,properties:{value:{name:bK.value}},superTypes:[zI.$type]},EbnfZeroOrMorePostfix:{name:vK.$type,properties:{operator:{name:vK.operator}},superTypes:[L3.$type]},Edge:{name:JE.$type,properties:{lhsDir:{name:JE.lhsDir},lhsGroup:{name:JE.lhsGroup,defaultValue:!1},lhsId:{name:JE.lhsId},lhsInto:{name:JE.lhsInto,defaultValue:!1},rhsDir:{name:JE.rhsDir},rhsGroup:{name:JE.rhsGroup,defaultValue:!1},rhsId:{name:JE.rhsId},rhsInto:{name:JE.rhsInto,defaultValue:!1},title:{name:JE.title}},superTypes:[]},EmDataEntity:{name:_4.$type,properties:{dataBlockValue:{name:_4.dataBlockValue},dataType:{name:_4.dataType},name:{name:_4.name}},superTypes:[]},EmFrame:{name:ZI.$type,properties:{},superTypes:[]},EmGwt:{name:fF.$type,properties:{givenStatements:{name:fF.givenStatements,defaultValue:[]},sourceFrame:{name:fF.sourceFrame,referenceType:ZI.$type},thenStatements:{name:fF.thenStatements,defaultValue:[]},whenStatements:{name:fF.whenStatements,defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:v_A.$type,properties:{entityIdentifier:{name:v_A.entityIdentifier,referenceType:JnA.$type}},superTypes:[]},EmModelEntity:{name:JnA.$type,properties:{name:{name:JnA.name}},superTypes:[]},EmNoteEntity:{name:VY.$type,properties:{dataBlockValue:{name:VY.dataBlockValue},dataType:{name:VY.dataType},sourceFrame:{name:VY.sourceFrame,referenceType:ZI.$type}},superTypes:[]},EmResetFrame:{name:_I.$type,properties:{dataInlineValue:{name:_I.dataInlineValue},dataReference:{name:_I.dataReference,referenceType:_4.$type},dataType:{name:_I.dataType},entityIdentifier:{name:_I.entityIdentifier},modelEntityType:{name:_I.modelEntityType},name:{name:_I.name},sourceFrames:{name:_I.sourceFrames,defaultValue:[],referenceType:ZI.$type}},superTypes:[ZI.$type]},EmTimeFrame:{name:T4.$type,properties:{dataInlineValue:{name:T4.dataInlineValue},dataReference:{name:T4.dataReference,referenceType:_4.$type},dataType:{name:T4.dataType},entityIdentifier:{name:T4.entityIdentifier},modelEntityType:{name:T4.modelEntityType},name:{name:T4.name},sourceFrames:{name:T4.sourceFrames,defaultValue:[],referenceType:ZI.$type}},superTypes:[ZI.$type]},Entry:{name:OnA.$type,properties:{axis:{name:OnA.axis,referenceType:_Y.$type},value:{name:OnA.value}},superTypes:[]},EventModel:{name:GC.$type,properties:{accDescr:{name:GC.accDescr},accTitle:{name:GC.accTitle},dataEntities:{name:GC.dataEntities,defaultValue:[]},frames:{name:GC.frames,defaultValue:[]},gwtEntities:{name:GC.gwtEntities,defaultValue:[]},modelEntities:{name:GC.modelEntities,defaultValue:[]},noteEntities:{name:GC.noteEntities,defaultValue:[]},title:{name:GC.title}},superTypes:[]},Evolution:{name:k_A.$type,properties:{stages:{name:k_A.stages,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:jY.$type,properties:{boundary:{name:jY.boundary},name:{name:jY.name},secondName:{name:jY.secondName}},superTypes:[]},Evolve:{name:PnA.$type,properties:{component:{name:PnA.component},target:{name:PnA.target}},superTypes:[]},GitGraph:{name:XI.$type,properties:{accDescr:{name:XI.accDescr},accTitle:{name:XI.accTitle},statements:{name:XI.statements,defaultValue:[]},title:{name:XI.title}},superTypes:[]},Group:{name:mF.$type,properties:{icon:{name:mF.icon},id:{name:mF.id},in:{name:mF.in},title:{name:mF.title}},superTypes:[]},Info:{name:Y3.$type,properties:{accDescr:{name:Y3.accDescr},accTitle:{name:Y3.accTitle},title:{name:Y3.title}},superTypes:[]},Item:{name:DF.$type,properties:{classSelector:{name:DF.classSelector},name:{name:DF.name}},superTypes:[]},Junction:{name:_nA.$type,properties:{id:{name:_nA.id},in:{name:_nA.in}},superTypes:[]},Label:{name:yF.$type,properties:{negX:{name:yF.negX,defaultValue:!1},negY:{name:yF.negY,defaultValue:!1},offsetX:{name:yF.offsetX},offsetY:{name:yF.offsetY}},superTypes:[]},Leaf:{name:XY.$type,properties:{classSelector:{name:XY.classSelector},name:{name:XY.name},value:{name:XY.value}},superTypes:[DF.$type]},Link:{name:C3.$type,properties:{arrow:{name:C3.arrow},from:{name:C3.from},fromPort:{name:C3.fromPort},linkLabel:{name:C3.linkLabel},to:{name:C3.to},toPort:{name:C3.toPort}},superTypes:[]},Merge:{name:Z4.$type,properties:{branch:{name:Z4.branch},id:{name:Z4.id},tags:{name:Z4.tags,defaultValue:[]},type:{name:Z4.type}},superTypes:[W4.$type]},Note:{name:$Y.$type,properties:{evolution:{name:$Y.evolution},text:{name:$Y.text},visibility:{name:$Y.visibility}},superTypes:[]},Option:{name:WnA.$type,properties:{name:{name:WnA.name},value:{name:WnA.value,defaultValue:!1}},superTypes:[]},Packet:{name:V4.$type,properties:{accDescr:{name:V4.accDescr},accTitle:{name:V4.accTitle},blocks:{name:V4.blocks,defaultValue:[]},title:{name:V4.title}},superTypes:[]},PacketBlock:{name:j4.$type,properties:{bits:{name:j4.bits},end:{name:j4.end},label:{name:j4.label},start:{name:j4.start}},superTypes:[]},PegAny:{name:kK.$type,properties:{dot:{name:kK.dot}},superTypes:[R3.$type]},PegGroup:{name:FK.$type,properties:{element:{name:FK.element}},superTypes:[R3.$type]},PegIdentifier:{name:xK.$type,properties:{name:{name:xK.name}},superTypes:[R3.$type]},PegLiteral:{name:SK.$type,properties:{value:{name:SK.value}},superTypes:[R3.$type]},PegOrderedChoice:{name:LK.$type,properties:{alternatives:{name:LK.alternatives,defaultValue:[]}},superTypes:[]},PegPrefix:{name:tx.$type,properties:{operator:{name:tx.operator},suffix:{name:tx.suffix}},superTypes:[]},PegPrimary:{name:R3.$type,properties:{},superTypes:[]},PegRule:{name:rx.$type,properties:{definition:{name:rx.definition},name:{name:rx.name}},superTypes:[]},PegSequence:{name:RK.$type,properties:{elements:{name:RK.elements,defaultValue:[]}},superTypes:[]},PegSuffix:{name:ix.$type,properties:{operator:{name:ix.operator},primary:{name:ix.primary}},superTypes:[]},Pie:{name:$I.$type,properties:{accDescr:{name:$I.accDescr},accTitle:{name:$I.accTitle},sections:{name:$I.sections,defaultValue:[]},showData:{name:$I.showData,defaultValue:!1},title:{name:$I.title}},superTypes:[]},PieSection:{name:Xw.$type,properties:{label:{name:Xw.label},value:{name:Xw.value}},superTypes:[]},Pipeline:{name:qnA.$type,properties:{components:{name:qnA.components,defaultValue:[]},parent:{name:qnA.parent}},superTypes:[]},PipelineComponent:{name:AH.$type,properties:{evolution:{name:AH.evolution},label:{name:AH.label},name:{name:AH.name}},superTypes:[]},Radar:{name:VI.$type,properties:{accDescr:{name:VI.accDescr},accTitle:{name:VI.accTitle},axes:{name:VI.axes,defaultValue:[]},curves:{name:VI.curves,defaultValue:[]},options:{name:VI.options,defaultValue:[]},title:{name:VI.title}},superTypes:[]},Railroad:{name:X4.$type,properties:{accDescr:{name:X4.accDescr},accTitle:{name:X4.accTitle},rules:{name:X4.rules,defaultValue:[]},title:{name:X4.title}},superTypes:[]},RailroadAbnf:{name:$4.$type,properties:{accDescr:{name:$4.accDescr},accTitle:{name:$4.accTitle},rules:{name:$4.rules,defaultValue:[]},title:{name:$4.title}},superTypes:[]},RailroadChoiceExpr:{name:NK.$type,properties:{alternatives:{name:NK.alternatives,defaultValue:[]}},superTypes:[UC.$type]},RailroadEbnf:{name:A1.$type,properties:{accDescr:{name:A1.accDescr},accTitle:{name:A1.accTitle},rules:{name:A1.rules,defaultValue:[]},title:{name:A1.title}},superTypes:[]},RailroadExpression:{name:UC.$type,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:GK.$type,properties:{name:{name:GK.name}},superTypes:[UC.$type]},RailroadOneOrMoreExpr:{name:UK.$type,properties:{element:{name:UK.element}},superTypes:[UC.$type]},RailroadOptionalExpr:{name:MK.$type,properties:{element:{name:MK.element}},superTypes:[UC.$type]},RailroadPeg:{name:e1.$type,properties:{accDescr:{name:e1.accDescr},accTitle:{name:e1.accTitle},rules:{name:e1.rules,defaultValue:[]},title:{name:e1.title}},superTypes:[]},RailroadRule:{name:ux.$type,properties:{definition:{name:ux.definition},name:{name:ux.name}},superTypes:[]},RailroadSequenceExpr:{name:TK.$type,properties:{elements:{name:TK.elements,defaultValue:[]}},superTypes:[UC.$type]},RailroadSpecialExpr:{name:YK.$type,properties:{text:{name:YK.text}},superTypes:[UC.$type]},RailroadTerminalExpr:{name:HK.$type,properties:{value:{name:HK.value}},superTypes:[UC.$type]},RailroadZeroOrMoreExpr:{name:KK.$type,properties:{element:{name:KK.element}},superTypes:[UC.$type]},Section:{name:znA.$type,properties:{classSelector:{name:znA.classSelector},name:{name:znA.name}},superTypes:[DF.$type]},Service:{name:Sw.$type,properties:{icon:{name:Sw.icon},iconText:{name:Sw.iconText},id:{name:Sw.id},in:{name:Sw.in},title:{name:Sw.title}},superTypes:[]},Size:{name:ZnA.$type,properties:{height:{name:ZnA.height},width:{name:ZnA.width}},superTypes:[]},Statement:{name:W4.$type,properties:{},superTypes:[]},Transition:{name:H3.$type,properties:{from:{name:H3.from},label:{name:H3.label},to:{name:H3.to}},superTypes:[]},TreeNode:{name:q4.$type,properties:{classAnnotation:{name:q4.classAnnotation},descAnnotation:{name:q4.descAnnotation},iconAnnotation:{name:q4.iconAnnotation},indent:{name:q4.indent},name:{name:q4.name}},superTypes:[]},TreeView:{name:N3.$type,properties:{accDescr:{name:N3.accDescr},accTitle:{name:N3.accTitle},nodes:{name:N3.nodes,defaultValue:[]},title:{name:N3.title}},superTypes:[]},Treemap:{name:t1.$type,properties:{accDescr:{name:t1.accDescr},accTitle:{name:t1.accTitle},title:{name:t1.title},TreemapRows:{name:t1.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:VnA.$type,properties:{indent:{name:VnA.indent},item:{name:VnA.item}},superTypes:[]},Wardley:{name:ao.$type,properties:{accDescr:{name:ao.accDescr},accelerators:{name:ao.accelerators,defaultValue:[]},accTitle:{name:ao.accTitle},anchors:{name:ao.anchors,defaultValue:[]},annotation:{name:ao.annotation,defaultValue:[]},annotations:{name:ao.annotations,defaultValue:[]},components:{name:ao.components,defaultValue:[]},deaccelerators:{name:ao.deaccelerators,defaultValue:[]},evolution:{name:ao.evolution},evolves:{name:ao.evolves,defaultValue:[]},links:{name:ao.links,defaultValue:[]},notes:{name:ao.notes,defaultValue:[]},pipelines:{name:ao.pipelines,defaultValue:[]},size:{name:ao.size},title:{name:ao.title}},superTypes:[]}}}static{G(this,"MermaidAstReflection")}},In=new Tte,M7t=G(()=>F_A??(F_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"alignments","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Alignment","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"align"},{"$type":"Assignment","feature":"direction","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"row"},{"$type":"Keyword","value":"column"}]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@20"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'|[^\\\\[\\\\]\\\\r\\\\n]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"ArchitectureGrammarGrammar"),T7t=G(()=>x_A??(x_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"CynefinGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Cynefin","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"cynefin-beta"},{"$type":"Keyword","value":"cynefin-beta:"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"domains","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"transitions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"domain","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Assignment","feature":"items","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainItem","definition":{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Transition","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":"-->"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"DOMAIN_NAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complex"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complicated"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"clear"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"chaotic"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"confusion"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"CynefinGrammarGrammar"),Y7t=G(()=>S_A??(S_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"EventModeling","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","entry":true,"name":"EventModel","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"eventmodeling"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"frames","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"dataEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"noteEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"gwtEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntityType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rmo"},{"$type":"Keyword","value":"readmodel"},{"$type":"Keyword","value":"ui"},{"$type":"Keyword","value":"cmd"},{"$type":"Keyword","value":"command"},{"$type":"Keyword","value":"evt"},{"$type":"Keyword","value":"event"},{"$type":"Keyword","value":"pcr"},{"$type":"Keyword","value":"processor"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"json"},{"$type":"Keyword","value":"jsobj"},{"$type":"Keyword","value":"figma"},{"$type":"Keyword","value":"salt"},{"$type":"Keyword","value":"uri"},{"$type":"Keyword","value":"md"},{"$type":"Keyword","value":"html"},{"$type":"Keyword","value":"text"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataInline","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataInlineValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataBlock","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataBlockValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"QualifiedName","dataType":"string","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"."},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmTimeFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"tf"},{"$type":"Keyword","value":"timeframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmResetFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rf"},{"$type":"Keyword","value":"resetframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmFrame","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"entity"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"data"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmNoteEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"note"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwt","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"gwt"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"given"},{"$type":"Assignment","feature":"givenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"},{"$type":"Group","elements":[{"$type":"Keyword","value":"when"},{"$type":"Assignment","feature":"whenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}],"cardinality":"?"},{"$type":"Keyword","value":"then"},{"$type":"Assignment","feature":"thenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwtStatement","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@9"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_EID","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_FI","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"EM_ID","definition":{"$type":"RegexToken","regex":"/[_a-zA-Z][\\\\w_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_FID","definition":{"$type":"RegexToken","regex":"/\\\\d{1,3}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_INLINE","definition":{"$type":"RegexToken","regex":"/\\\\{(.*)\\\\}|\\"(.*)\\"|\'(.*)\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_BLOCK","definition":{"$type":"RegexToken","regex":"/\\\\{[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?\\\\}(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EM_WS","definition":{"$type":"RegexToken","regex":"/\\\\s+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SL_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\/[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"imports":[],"types":[]}')),"EventModelingGrammar"),H7t=G(()=>L_A??(L_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"GitGraphGrammarGrammar"),K7t=G(()=>R_A??(R_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"InfoGrammarGrammar"),J7t=G(()=>N_A??(N_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PacketGrammarGrammar"),O7t=G(()=>G_A??(G_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PieGrammarGrammar"),P7t=G(()=>U_A??(U_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}')),"RadarGrammarGrammar"),_7t=G(()=>M_A??(M_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"RailroadAbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_RULENAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Za-z][A-Za-z0-9-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_NUMVAL","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\\\\.[0-9A-Fa-f]+)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]*\\\\*[0-9]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_EXACT_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_COMMENT","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadAbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-abnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfAlternation","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfConcatenation","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfElement","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfStringLiteral","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfNumVal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRuleName","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfOptionalGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadAbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfAlternation","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfConcatenation","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfElement","attributes":[{"$type":"TypeAttribute","name":"repeat","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"AbnfStringLiteral","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfNumVal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfRuleName","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"AbnfOptionalGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadAbnfGrammarGrammar"),W7t=G(()=>T_A??(T_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"RailroadEbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_SPECIAL_SEQUENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\?(?=[^?;]*[^?\\\\s;][^?;]*\\\\?)[^?;]*\\\\?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_ISO_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\(\\\\*[\\\\s\\\\S]*?\\\\*\\\\)/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadEbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-ebnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"="},{"$type":"Keyword","value":"::="}]},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"|"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":",","cardinality":"?"},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerm","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"base","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"postfixes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerminal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfNonTerminal","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSpecial","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptional","returnType":{"$ref":"#/interfaces@11"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRepetition","returnType":{"$ref":"#/interfaces@12"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"{"},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPostfix","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptionalPostfix","returnType":{"$ref":"#/interfaces@13"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfZeroOrMorePostfix","returnType":{"$ref":"#/interfaces@14"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOneOrMorePostfix","returnType":{"$ref":"#/interfaces@15"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfExceptionPostfix","returnType":{"$ref":"#/interfaces@16"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"except","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadEbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfTerm","attributes":[{"$type":"TypeAttribute","name":"base","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false},{"$type":"TypeAttribute","name":"postfixes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfPostfix","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfNonTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfSpecial","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptional","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfRepetition","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptionalPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfZeroOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfOneOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfExceptionPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"except","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadEbnfGrammarGrammar"),q7t=G(()=>Y_A??(Y_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"RailroadGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"RR_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"Railroad","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadExpression","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSequenceExpr","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"sequence"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadChoiceExpr","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"choice"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOptionalExpr","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"optional"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOneOrMoreExpr","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"oneOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadZeroOrMoreExpr","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"zeroOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadTerminalExpr","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"terminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadNonTerminalExpr","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"nonterminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSpecialExpr","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"special"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"Railroad","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadExpression","attributes":[],"superTypes":[]},{"$type":"Interface","name":"RailroadSequenceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadChoiceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOptionalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOneOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadZeroOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadNonTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadSpecialExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadGrammarGrammar"),z7t=G(()=>H_A??(H_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"RailroadPegGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/#[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadPeg","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-peg-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"<-"},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegOrderedChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrefix","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"&"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"!"}}],"cardinality":"?"},{"$type":"Assignment","feature":"suffix","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSuffix","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrimary","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegLiteral","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegIdentifier","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegAny","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Assignment","feature":"dot","operator":"=","terminal":{"$type":"Keyword","value":"."}},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadPeg","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegOrderedChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegPrefix","attributes":[{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"suffix","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSuffix","attributes":[{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}},"isOptional":false},{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"PegPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"PegLiteral","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegIdentifier","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegGroup","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"PegAny","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"dot","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadPegGrammarGrammar"),Z7t=G(()=>K_A??(K_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@15"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}')),"TreemapGrammarGrammar"),V7t=G(()=>J_A??(J_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"CLASS_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+:::[ \\\\t]*[A-Za-z_][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ICON_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+icon\\\\([\\\\w-]*(?::[\\\\w-]+)?\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"DESC_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+##[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"QUOTED_NAME","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"BARE_NAME","definition":{"$type":"RegexToken","regex":"/(?!:::|icon\\\\(|##)[^ \\\\t\\\\n\\\\r\\"\'](?:(?![ \\\\t]+:::[ \\\\t]*[A-Za-z_]|[ \\\\t]+icon\\\\(|[ \\\\t]+##)[^\\\\n\\\\r])*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"classAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"iconAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"descAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n *\\n * Supports both quoted labels (\\"my file\\") and bare labels (index.js).\\n * Annotations (:::class, icon(), ## description) are parsed directly into\\n * AST fields by the grammar. Value conversion for stripping quotes, extracting\\n * class names, icon names, and description text happens in valueConverter.ts.\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treeView keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}')),"TreeViewGrammarGrammar"),j7t=G(()=>O_A??(O_A=Yo('{"$type":"Grammar","isDeclared":true,"name":"WardleyGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Wardley","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@42"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"size","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"anchors","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"links","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"evolves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"pipelines","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"notes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"annotations","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Assignment","feature":"annotation","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"deaccelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Size","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"width","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"height","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolution","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EvolutionStage","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"@"},{"$type":"Assignment","feature":"boundary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}],"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"secondName","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Anchor","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Component","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"decorator","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Keyword","value":")"}]}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Label","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"negX","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetX","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"negY","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetY","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Decorator","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"strategy","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Link","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"fromPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"arrow","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"cardinality":"?"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"toPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"linkLabel","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolve","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@32"},"arguments":[]},{"$type":"Assignment","feature":"component","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"target","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Pipeline","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@33"},"arguments":[]},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"+"},{"$type":"Keyword","value":"}"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PipelineComponent","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Note","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@34"},"arguments":[]},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotations","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@35"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotation","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@36"},"arguments":[]},{"$type":"Assignment","feature":"number","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CoordinateValue","dataType":"number","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Accelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@37"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Deaccelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@38"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"WARDLEY_NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"->"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_PORT","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<>"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+>"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_ARROW","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-->"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-.->"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":">"},"parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'<>/","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'</","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'>/","parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_LABEL","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRATEGY","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"build"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"buy"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"outsource"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"market"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_WARDLEY","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"wardley-beta"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_SIZE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"size"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLUTION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolution"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANCHOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"anchor"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_COMPONENT","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"component"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_LABEL","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"label"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_INERTIA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"inertia"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLVE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolve"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_PIPELINE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"pipeline"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_NOTE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"note"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATIONS","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotations"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotation"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"accelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_DEACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"deaccelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NAME_WITH_SPACES","definition":{"$type":"RegexToken","regex":"/(?!title\\\\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \\\\t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@44"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@45"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@46"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@47"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@48"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"WardleyGrammarGrammar"),X7t={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$7t={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},A8t={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},e8t={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},t8t={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},r8t={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},i8t={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},u8t={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},a8t={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},n8t={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},o8t={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},s8t={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},l8t={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},g8t={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},c8t={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$i={AstReflection:G(()=>new Tte,"AstReflection")},XJ={Grammar:G(()=>M7t(),"Grammar"),LanguageMetaData:G(()=>X7t,"LanguageMetaData"),parser:{}},$J={Grammar:G(()=>T7t(),"Grammar"),LanguageMetaData:G(()=>$7t,"LanguageMetaData"),parser:{}},AO={Grammar:G(()=>Y7t(),"Grammar"),LanguageMetaData:G(()=>A8t,"LanguageMetaData"),parser:{}},eO={Grammar:G(()=>H7t(),"Grammar"),LanguageMetaData:G(()=>e8t,"LanguageMetaData"),parser:{}},tO={Grammar:G(()=>K7t(),"Grammar"),LanguageMetaData:G(()=>t8t,"LanguageMetaData"),parser:{}},rO={Grammar:G(()=>J7t(),"Grammar"),LanguageMetaData:G(()=>r8t,"LanguageMetaData"),parser:{}},iO={Grammar:G(()=>O7t(),"Grammar"),LanguageMetaData:G(()=>i8t,"LanguageMetaData"),parser:{}},uO={Grammar:G(()=>P7t(),"Grammar"),LanguageMetaData:G(()=>u8t,"LanguageMetaData"),parser:{}},aO={Grammar:G(()=>_7t(),"Grammar"),LanguageMetaData:G(()=>a8t,"LanguageMetaData"),parser:{}},nO={Grammar:G(()=>W7t(),"Grammar"),LanguageMetaData:G(()=>n8t,"LanguageMetaData"),parser:{}},oO={Grammar:G(()=>q7t(),"Grammar"),LanguageMetaData:G(()=>o8t,"LanguageMetaData"),parser:{}},sO={Grammar:G(()=>z7t(),"Grammar"),LanguageMetaData:G(()=>s8t,"LanguageMetaData"),parser:{}},lO={Grammar:G(()=>Z7t(),"Grammar"),LanguageMetaData:G(()=>l8t,"LanguageMetaData"),parser:{}},gO={Grammar:G(()=>V7t(),"Grammar"),LanguageMetaData:G(()=>g8t,"LanguageMetaData"),parser:{}},cO={Grammar:G(()=>j7t(),"Grammar"),LanguageMetaData:G(()=>c8t,"LanguageMetaData"),parser:{}},C8t=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,B8t=/accTitle[\t ]*:([^\n\r]*)/,E8t=/title([\t ][^\n\r]*|)/,d8t={ACC_DESCR:C8t,ACC_TITLE:B8t,TITLE:E8t},hn=class extends cgA{static{G(this,"AbstractMermaidValueConverter")}runConverter(A,e,t){let r=this.runCommonConverter(A,e,t);if(r===void 0)r=this.runCustomConverter(A,e,t);if(r===void 0)return super.runConverter(A,e,t);return r}runCommonConverter(A,e,t){let r=d8t[A.name];if(r===void 0)return;let i=r.exec(e);if(i===null)return;if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
|
||
`);return}},kl=class extends hn{static{G(this,"CommonValueConverter")}runCustomConverter(A,e,t){return}},lu=class extends OJ{static{G(this,"AbstractMermaidTokenBuilder")}constructor(A){super();this.keywords=new Set(A)}buildKeywordTokens(A,e,t){let r=super.buildKeywordTokens(A,e,t);return r.forEach((i)=>{if(this.keywords.has(i.name)&&i.PATTERN!==void 0)i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))")}),r}},Yte=class extends lu{static{G(this,"CommonTokenBuilder")}};/*! Bundled license information:
|
||
|
||
lodash-es/lodash.js:
|
||
(**
|
||
* @license
|
||
* Lodash (Custom Build) <https://lodash.com/>
|
||
* Build: `lodash modularize exports="es" -o ./`
|
||
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
||
* Released under MIT license <https://lodash.com/license>
|
||
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
||
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
||
*)
|
||
*/});function qx(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),uO,ecA);return e.ServiceRegistry.register(t),{shared:e,Radar:t}}var I8t,ecA;var tcA=P(()=>{Au();I8t=class extends lu{static{G(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},ecA={parser:{TokenBuilder:G(()=>new I8t,"TokenBuilder"),ValueConverter:G(()=>new kl,"ValueConverter")}};G(qx,"createRadarServices")});function Bm(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),oO,rcA);return e.ServiceRegistry.register(t),{shared:e,Railroad:t}}var h8t,Hte,Q8t,rcA;var icA=P(()=>{Au();h8t=class extends lu{static{G(this,"RailroadTokenBuilder")}constructor(){super(["railroad-beta"])}},Hte=G((A)=>{let e=A.slice(1,-1),t="";for(let r=0;r<e.length;r++){let i=e[r];if(i==="\\"&&r+1<e.length){r++;let u=e[r];switch(u){case"n":t+=`
|
||
`;break;case"r":t+="\r";break;case"t":t+="\t";break;default:t+=u}continue}t+=i}return t},"decodeEscapedString"),Q8t=class extends hn{static{G(this,"RailroadValueConverter")}runConverter(A,e,t){let r=super.runConverter(A,e,t);if(A.name==="TITLE"&&typeof r==="string"){let i=r.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return Hte(i)}return r}runCustomConverter(A,e,t){if(A.name==="RR_STRING")return Hte(e);return}},rcA={parser:{TokenBuilder:G(()=>new h8t,"TokenBuilder"),ValueConverter:G(()=>new Q8t,"ValueConverter")}};G(Bm,"createRailroadServices")});function Em(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),nO,ucA);return e.ServiceRegistry.register(t),{shared:e,RailroadEbnf:t}}var p8t,Kte,f8t,ucA;var acA=P(()=>{Au();p8t=class extends lu{static{G(this,"RailroadEbnfTokenBuilder")}constructor(){super(["railroad-ebnf-beta"])}},Kte=G((A)=>{let e=A.slice(1,-1),t="";for(let r=0;r<e.length;r++){let i=e[r];if(i==="\\"&&r+1<e.length){r++;let u=e[r];switch(u){case"n":t+=`
|
||
`;break;case"r":t+="\r";break;case"t":t+="\t";break;default:t+=u}continue}t+=i}return t},"decodeEscapedString"),f8t=class extends hn{static{G(this,"RailroadEbnfValueConverter")}runConverter(A,e,t){let r=super.runConverter(A,e,t);if(A.name==="TITLE"&&typeof r==="string"){let i=r.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return Kte(i)}return r}runCustomConverter(A,e,t){if(A.name==="EBNF_STRING")return Kte(e);if(A.name==="EBNF_SPECIAL_SEQUENCE")return e.slice(1,-1).trim();return}},ucA={parser:{TokenBuilder:G(()=>new p8t,"TokenBuilder"),ValueConverter:G(()=>new f8t,"ValueConverter")}};G(Em,"createRailroadEbnfServices")});function dm(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),aO,ncA);return e.ServiceRegistry.register(t),{shared:e,RailroadAbnf:t}}var m8t,D8t,ncA;var ocA=P(()=>{Au();m8t=class extends lu{static{G(this,"RailroadAbnfTokenBuilder")}constructor(){super(["railroad-abnf-beta"])}},D8t=class extends hn{static{G(this,"RailroadAbnfValueConverter")}runConverter(A,e,t){let r=super.runConverter(A,e,t);if(A.name==="TITLE"&&typeof r==="string"){let i=r.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return i.slice(1,-1)}return r}runCustomConverter(A,e,t){if(A.name==="ABNF_STRING")return e.slice(1,-1);return}},ncA={parser:{TokenBuilder:G(()=>new m8t,"TokenBuilder"),ValueConverter:G(()=>new D8t,"ValueConverter")}};G(dm,"createRailroadAbnfServices")});function Im(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),sO,scA);return e.ServiceRegistry.register(t),{shared:e,RailroadPeg:t}}var y8t,Jte,w8t,scA;var lcA=P(()=>{Au();y8t=class extends lu{static{G(this,"RailroadPegTokenBuilder")}constructor(){super(["railroad-peg-beta"])}},Jte=G((A)=>{let e=A.slice(1,-1),t="";for(let r=0;r<e.length;r++){let i=e[r];if(i==="\\"&&r+1<e.length){r++;let u=e[r];switch(u){case"n":t+=`
|
||
`;break;case"r":t+="\r";break;case"t":t+="\t";break;default:t+=u}continue}t+=i}return t},"decodeEscapedString"),w8t=class extends hn{static{G(this,"RailroadPegValueConverter")}runConverter(A,e,t){let r=super.runConverter(A,e,t);if(A.name==="TITLE"&&typeof r==="string"){let i=r.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return Jte(i)}return r}runCustomConverter(A,e,t){if(A.name==="PEG_STRING")return Jte(e);return}},scA={parser:{TokenBuilder:G(()=>new y8t,"TokenBuilder"),ValueConverter:G(()=>new w8t,"ValueConverter")}};G(Im,"createRailroadPegServices")});function Ote(A){let e=A.validation.TreemapValidator,t=A.validation.ValidationRegistry;if(t){let r={Treemap:e.checkSingleRoot.bind(e)};t.register(r,e)}}function zx(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),lO,gcA);return e.ServiceRegistry.register(t),Ote(t),{shared:e,Treemap:t}}var b8t,v8t,k8t,F8t,gcA;var ccA=P(()=>{Au();b8t=class extends lu{static{G(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},v8t=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,k8t=class extends hn{static{G(this,"TreemapValueConverter")}runCustomConverter(A,e,t){if(A.name==="NUMBER2")return parseFloat(e.replace(/,/g,""));else if(A.name==="SEPARATOR")return e.substring(1,e.length-1);else if(A.name==="STRING2")return e.substring(1,e.length-1);else if(A.name==="INDENTATION")return e.length;else if(A.name==="ClassDef"){if(typeof e!=="string")return e;let r=v8t.exec(e);if(r)return{$type:"ClassDefStatement",className:r[1],styleText:r[2]||void 0}}return}};G(Ote,"registerValidationChecks");F8t=class{static{G(this,"TreemapValidator")}checkSingleRoot(A,e){let t;for(let r of A.TreemapRows){if(!r.item)continue;if(t===void 0&&r.indent===void 0)t=0;else if(r.indent===void 0)e("error","Multiple root nodes are not allowed in a treemap.",{node:r,property:"item"});else if(t!==void 0&&t>=parseInt(r.indent,10))e("error","Multiple root nodes are not allowed in a treemap.",{node:r,property:"item"})}}},gcA={parser:{TokenBuilder:G(()=>new b8t,"TokenBuilder"),ValueConverter:G(()=>new k8t,"ValueConverter")},validation:{TreemapValidator:G(()=>new F8t,"TreemapValidator")}};G(zx,"createTreemapServices")});function Zx(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),cO,CcA);return e.ServiceRegistry.register(t),{shared:e,Wardley:t}}var x8t,CcA;var BcA=P(()=>{Au();x8t=class extends hn{static{G(this,"WardleyValueConverter")}runCustomConverter(A,e,t){switch(A.name.toUpperCase()){case"LINK_LABEL":return e.substring(1).trim();default:return}}},CcA={parser:{ValueConverter:G(()=>new x8t,"ValueConverter")}};G(Zx,"createWardleyServices")});function Vx(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),$J,EcA);return e.ServiceRegistry.register(t),{shared:e,Cynefin:t}}var S8t,EcA;var dcA=P(()=>{Au();S8t=class extends lu{static{G(this,"CynefinTokenBuilder")}constructor(){super(["cynefin-beta"])}},EcA={parser:{TokenBuilder:G(()=>new S8t,"TokenBuilder"),ValueConverter:G(()=>new kl,"ValueConverter")}};G(Vx,"createCynefinServices")});function jx(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),eO,IcA);return e.ServiceRegistry.register(t),{shared:e,GitGraph:t}}var L8t,IcA;var hcA=P(()=>{Au();L8t=class extends lu{static{G(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},IcA={parser:{TokenBuilder:G(()=>new L8t,"TokenBuilder"),ValueConverter:G(()=>new kl,"ValueConverter")}};G(jx,"createGitGraphServices")});function Xx(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),tO,QcA);return e.ServiceRegistry.register(t),{shared:e,Info:t}}var R8t,QcA;var pcA=P(()=>{Au();R8t=class extends lu{static{G(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},QcA={parser:{TokenBuilder:G(()=>new R8t,"TokenBuilder"),ValueConverter:G(()=>new kl,"ValueConverter")}};G(Xx,"createInfoServices")});function $x(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),rO,fcA);return e.ServiceRegistry.register(t),{shared:e,Packet:t}}var N8t,fcA;var mcA=P(()=>{Au();N8t=class extends lu{static{G(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},fcA={parser:{TokenBuilder:G(()=>new N8t,"TokenBuilder"),ValueConverter:G(()=>new kl,"ValueConverter")}};G($x,"createPacketServices")});function A7(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),iO,DcA);return e.ServiceRegistry.register(t),{shared:e,Pie:t}}var G8t,U8t,DcA;var ycA=P(()=>{Au();G8t=class extends lu{static{G(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},U8t=class extends hn{static{G(this,"PieValueConverter")}runCustomConverter(A,e,t){if(A.name!=="PIE_SECTION_LABEL")return;return e.replace(/"/g,"").trim()}},DcA={parser:{TokenBuilder:G(()=>new G8t,"TokenBuilder"),ValueConverter:G(()=>new U8t,"ValueConverter")}};G(A7,"createPieServices")});function e7(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),gO,wcA);return e.ServiceRegistry.register(t),{shared:e,TreeView:t}}var M8t,T8t,wcA;var bcA=P(()=>{Au();M8t=class extends hn{static{G(this,"TreeViewValueConverter")}runCustomConverter(A,e,t){if(A.name==="INDENTATION")return e?.length||0;if(A.name==="QUOTED_NAME")return e.substring(1,e.length-1);if(A.name==="BARE_NAME")return e.replace(/[\t ]+$/,"");if(A.name==="CLASS_ANNOTATION")return e.trim().substring(3).trim();if(A.name==="ICON_ANNOTATION"){let r=e.trim();return r.substring(5,r.length-1)}if(A.name==="DESC_ANNOTATION")return e.trim().substring(2).trim();return}},T8t=class extends lu{static{G(this,"TreeViewTokenBuilder")}constructor(){super(["treeView-beta"])}},wcA={parser:{TokenBuilder:G(()=>new T8t,"TokenBuilder"),ValueConverter:G(()=>new M8t,"ValueConverter")}};G(e7,"createTreeViewServices")});function t7(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),XJ,vcA);return e.ServiceRegistry.register(t),{shared:e,Architecture:t}}var Y8t,H8t,vcA;var kcA=P(()=>{Au();Y8t=class extends lu{static{G(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},H8t=class extends hn{static{G(this,"ArchitectureValueConverter")}runCustomConverter(A,e,t){if(A.name==="ARCH_ICON")return e.replace(/[()]/g,"").trim();else if(A.name==="ARCH_TEXT_ICON")return e.replace(/["()]/g,"");else if(A.name==="ARCH_TITLE"){let r=e.replace(/^\[|]$/g,"").trim();if(r.startsWith('"')&&r.endsWith('"')||r.startsWith("'")&&r.endsWith("'"))r=r.slice(1,-1),r=r.replace(/\\"/g,'"').replace(/\\'/g,"'");return r.trim()}return}},vcA={parser:{TokenBuilder:G(()=>new Y8t,"TokenBuilder"),ValueConverter:G(()=>new H8t,"ValueConverter")}};G(t7,"createArchitectureServices")});function zte(A){let e=A.validation.EventModelingValidator,t=A.validation.ValidationRegistry;if(t){let r={EmTimeFrame:e.checkSourceFrameTypes.bind(e),EmResetFrame:e.checkSourceFrameTypes.bind(e)};t.register(r,e)}}function r7(A=Ji){let e=wr(xi(A),$i),t=wr(Fi({shared:e}),AO,xcA);return e.ServiceRegistry.register(t),zte(t),{shared:e,EventModel:t}}var K8t,Pte,_te,FcA,Wte,qte,J8t,xcA;var ScA=P(()=>{Au();K8t=class extends lu{static{G(this,"EventModelingTokenBuilder")}constructor(){super(["eventmodeling"])}},Pte=new Set(["cmd","command"]),_te=new Set(["evt","event"]),FcA=new Set(["rmo","readmodel"]),Wte=new Set(["pcr","processor"]),qte=new Set(["ui"]);G(zte,"registerValidationChecks");J8t=class{static{G(this,"EventModelingValidator")}checkSourceFrameTypes(A,e){if(A.sourceFrames.length===0)return;if(Pte.has(A.modelEntityType))this.validateSources(A,new Set([...qte,...Wte]),"command","ui or processor",e);else if(_te.has(A.modelEntityType))this.validateSources(A,Pte,"event","command",e);else if(FcA.has(A.modelEntityType))this.validateSources(A,_te,"read model","event",e);else if(Wte.has(A.modelEntityType))this.validateSources(A,FcA,"processor","read model",e);else if(qte.has(A.modelEntityType))this.validateSources(A,FcA,"ui","read model",e)}validateSources(A,e,t,r,i){for(let u of A.sourceFrames){let a=u.ref;if(a!==void 0&&!e.has(a.modelEntityType))i("error",`A ${t} can only receive input from a ${r}, not from '${a.modelEntityType}'.`,{node:A,property:"sourceFrames"})}}},xcA={parser:{TokenBuilder:G(()=>new K8t,"TokenBuilder"),ValueConverter:G(()=>new kl,"ValueConverter")},validation:{EventModelingValidator:G(()=>new J8t,"EventModelingValidator")}};G(r7,"createEventModelingServices")});var Zte=P(()=>{pcA();Au()});var Vte=P(()=>{mcA();Au()});var jte=P(()=>{ycA();Au()});var Xte=P(()=>{bcA();Au()});var $te=P(()=>{kcA();Au()});var Are=P(()=>{hcA();Au()});var ere=P(()=>{ScA();Au()});var tre=P(()=>{tcA();Au()});var rre=P(()=>{icA();Au()});var ire=P(()=>{acA();Au()});var ure=P(()=>{ocA();Au()});var are=P(()=>{lcA();Au()});var nre=P(()=>{ccA();Au()});var ore=P(()=>{BcA();Au()});var sre=P(()=>{dcA();Au()});async function Ma(A,e){let t=O8t[A];if(!t)throw Error(`Unknown diagram type: ${A}`);if(!B0[A])await t();let i=B0[A].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new Eh(i);return i.value}var B0,O8t,Eh;var E0=P(()=>{tcA();icA();acA();ocA();lcA();ccA();BcA();dcA();hcA();pcA();mcA();ycA();bcA();kcA();ScA();Au();B0={},O8t={info:G(async()=>{await Promise.resolve().then(() => Zte());let e=Xx().Info.parser.LangiumParser;B0.info=e},"info"),packet:G(async()=>{await Promise.resolve().then(() => Vte());let e=$x().Packet.parser.LangiumParser;B0.packet=e},"packet"),pie:G(async()=>{await Promise.resolve().then(() => jte());let e=A7().Pie.parser.LangiumParser;B0.pie=e},"pie"),treeView:G(async()=>{await Promise.resolve().then(() => Xte());let e=e7().TreeView.parser.LangiumParser;B0.treeView=e},"treeView"),architecture:G(async()=>{await Promise.resolve().then(() => $te());let e=t7().Architecture.parser.LangiumParser;B0.architecture=e},"architecture"),gitGraph:G(async()=>{await Promise.resolve().then(() => Are());let e=jx().GitGraph.parser.LangiumParser;B0.gitGraph=e},"gitGraph"),eventmodeling:G(async()=>{await Promise.resolve().then(() => ere());let e=r7().EventModel.parser.LangiumParser;B0.eventmodeling=e},"eventmodeling"),radar:G(async()=>{await Promise.resolve().then(() => tre());let e=qx().Radar.parser.LangiumParser;B0.radar=e},"radar"),railroad:G(async()=>{await Promise.resolve().then(() => rre());let e=Bm().Railroad.parser.LangiumParser;B0.railroad=e},"railroad"),railroadEbnf:G(async()=>{await Promise.resolve().then(() => ire());let e=Em().RailroadEbnf.parser.LangiumParser;B0.railroadEbnf=e},"railroadEbnf"),railroadAbnf:G(async()=>{await Promise.resolve().then(() => ure());let e=dm().RailroadAbnf.parser.LangiumParser;B0.railroadAbnf=e},"railroadAbnf"),railroadPeg:G(async()=>{await Promise.resolve().then(() => are());let e=Im().RailroadPeg.parser.LangiumParser;B0.railroadPeg=e},"railroadPeg"),treemap:G(async()=>{await Promise.resolve().then(() => nre());let e=zx().Treemap.parser.LangiumParser;B0.treemap=e},"treemap"),wardley:G(async()=>{await Promise.resolve().then(() => ore());let e=Zx().Wardley.parser.LangiumParser;B0.wardley=e},"wardley"),cynefin:G(async()=>{await Promise.resolve().then(() => sre());let e=Vx().Cynefin.parser.LangiumParser;B0.cynefin=e},"cynefin")};G(Ma,"parse");Eh=class extends Error{constructor(A){let e=A.lexerErrors.map((r)=>{let i=r.line!==void 0&&!isNaN(r.line)?r.line:"?",u=r.column!==void 0&&!isNaN(r.column)?r.column:"?";return`Lexer error on line ${i}, column ${u}: ${r.message}`}).join(`
|
||
`),t=A.parserErrors.map((r)=>{let i=r.token.startLine!==void 0&&!isNaN(r.token.startLine)?r.token.startLine:"?",u=r.token.startColumn!==void 0&&!isNaN(r.token.startColumn)?r.token.startColumn:"?";return`Parse error on line ${i}, column ${u}: ${r.message}`}).join(`
|
||
`);super(`Parsing failed: ${e} ${t}`);this.result=A}static{G(this,"MermaidParseError")}}});function dO(){return BeA({length:7})}function gre(A,e){let t=Object.create(null);return A.reduce((r,i)=>{let u=e(i);if(!t[u])t[u]=!0,r.push(i);return r},[])}function LcA(A,e,t){let r=A.indexOf(e);if(r===-1)A.push(t);else A.splice(r,1,t)}function NcA(A){let e=A.reduce((i,u)=>{if(i.seq>u.seq)return i;return u},A[0]),t="";A.forEach(function(i){if(i===e)t+="\t*";else t+="\t|"});let r=[t,e.id,e.seq];for(let i in pt.records.branches)if(pt.records.branches.get(i)===e.id)r.push(i);if(sA.debug(r.join(" ")),e.parents&&e.parents.length==2&&e.parents[0]&&e.parents[1]){let i=pt.records.commits.get(e.parents[0]);if(LcA(A,e,i),e.parents[1])A.push(pt.records.commits.get(e.parents[1]))}else if(e.parents.length==0)return;else if(e.parents[0]){let i=pt.records.commits.get(e.parents[0]);LcA(A,e,i)}A=gre(A,(i)=>i.id),NcA(A)}var ku,P8t,pm,pt,_8t,W8t,q8t,z8t,Z8t,V8t,j8t,cre,X8t,$8t,ASt,eSt,tSt,Cre,rSt,iSt,uSt,Bre,aSt,nSt,oSt,sSt,lSt,gSt,cSt,CSt,C1=10,B1=40,td=4,dh=2,hm=8,IO,RcA=12,GcA,BSt,Qm,Fl,xl,BO=30,i7,EO,Ih=0,Ci="LR",ESt,Ere,dre,dSt,ISt,hSt,QSt,pSt,fSt,mSt,DSt,ySt,wSt,bSt,vSt,lre,kSt,u7,FSt,xSt,SSt,LSt,RSt,NSt,Ire=8,hre,GSt,USt,MSt,TSt,YSt,HSt,KSt,JSt,OSt,Qre;var pre=P(()=>{UY();ws();ai();rr();ir();Nt();E0();Pr();ku={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},P8t=ur.gitGraph,pm=y(()=>si({...P8t,...st().gitGraph}),"getConfig"),pt=new Fw(()=>{let A=pm(),{mainBranchName:e,mainBranchOrder:t}=A;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:t}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});y(dO,"getID");y(gre,"uniqBy");_8t=y(function(A){pt.records.direction=A},"setDirection"),W8t=y(function(A){sA.debug("options str",A),A=A?.trim(),A=A||"{}";try{pt.records.options=JSON.parse(A)}catch(e){sA.error("error while parsing gitGraph options",e.message)}},"setOptions"),q8t=y(function(){return pt.records.options},"getOptions"),z8t=y(function(A){let{msg:e,id:t,type:r,tags:i}=A;sA.info("commit",e,t,r,i),sA.debug("Entering commit:",e,t,r,i);let u=pm();t=_e.sanitizeText(t,u),e=_e.sanitizeText(e,u),i=i?.map((n)=>_e.sanitizeText(n,u));let a={id:t?t:pt.records.seq+"-"+dO(),message:e,seq:pt.records.seq++,type:r??ku.NORMAL,tags:i??[],parents:pt.records.head==null?[]:[pt.records.head.id],branch:pt.records.currBranch};if(pt.records.head=a,sA.info("main branch",u.mainBranchName),pt.records.commits.has(a.id))sA.warn(`Commit ID ${a.id} already exists`);pt.records.commits.set(a.id,a),pt.records.branches.set(pt.records.currBranch,a.id),sA.debug("in pushCommit "+a.id)},"commit"),Z8t=y(function(A){let{name:e,order:t}=A;if(e=_e.sanitizeText(e,pm()),pt.records.branches.has(e))throw Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${e}")`);pt.records.branches.set(e,pt.records.head!=null?pt.records.head.id:null),pt.records.branchConfig.set(e,{name:e,order:t}),cre(e),sA.debug("in createBranch")},"branch"),V8t=y((A)=>{let{branch:e,id:t,type:r,tags:i}=A,u=pm();if(e=_e.sanitizeText(e,u),t)t=_e.sanitizeText(t,u);let a=pt.records.branches.get(pt.records.currBranch),n=pt.records.branches.get(e),o=a?pt.records.commits.get(a):void 0,s=n?pt.records.commits.get(n):void 0;if(o&&s&&o.branch===e)throw Error(`Cannot merge branch '${e}' into itself.`);if(pt.records.currBranch===e){let C=Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},C}if(o===void 0||!o){let C=Error(`Incorrect usage of "merge". Current branch (${pt.records.currBranch})has no commits`);throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},C}if(!pt.records.branches.has(e)){let C=Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},C}if(s===void 0||!s){let C=Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},C}if(o===s){let C=Error('Incorrect usage of "merge". Both branches have same head');throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},C}if(t&&pt.records.commits.has(t)){let C=Error('Incorrect usage of "merge". Commit with id:'+t+" already exists, use different custom id");throw C.hash={text:`merge ${e} ${t} ${r} ${i?.join(" ")}`,token:`merge ${e} ${t} ${r} ${i?.join(" ")}`,expected:[`merge ${e} ${t}_UNIQUE ${r} ${i?.join(" ")}`]},C}let l=n?n:"",g={id:t||`${pt.records.seq}-${dO()}`,message:`merged branch ${e} into ${pt.records.currBranch}`,seq:pt.records.seq++,parents:pt.records.head==null?[]:[pt.records.head.id,l],branch:pt.records.currBranch,type:ku.MERGE,customType:r,customId:t?!0:!1,tags:i??[]};pt.records.head=g,pt.records.commits.set(g.id,g),pt.records.branches.set(pt.records.currBranch,g.id),sA.debug(pt.records.branches),sA.debug("in mergeBranch")},"merge"),j8t=y(function(A){let{id:e,targetId:t,tags:r,parent:i}=A;sA.debug("Entering cherryPick:",e,t,r);let u=pm();if(e=_e.sanitizeText(e,u),t=_e.sanitizeText(t,u),r=r?.map((o)=>_e.sanitizeText(o,u)),i=_e.sanitizeText(i,u),!e||!pt.records.commits.has(e)){let o=Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw o.hash={text:`cherryPick ${e} ${t}`,token:`cherryPick ${e} ${t}`,expected:["cherry-pick abc"]},o}let a=pt.records.commits.get(e);if(a===void 0||!a)throw Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(i&&!(Array.isArray(a.parents)&&a.parents.includes(i)))throw Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let n=a.branch;if(a.type===ku.MERGE&&!i)throw Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!t||!pt.records.commits.has(t)){if(n===pt.records.currBranch){let g=Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw g.hash={text:`cherryPick ${e} ${t}`,token:`cherryPick ${e} ${t}`,expected:["cherry-pick abc"]},g}let o=pt.records.branches.get(pt.records.currBranch);if(o===void 0||!o){let g=Error(`Incorrect usage of "cherry-pick". Current branch (${pt.records.currBranch})has no commits`);throw g.hash={text:`cherryPick ${e} ${t}`,token:`cherryPick ${e} ${t}`,expected:["cherry-pick abc"]},g}let s=pt.records.commits.get(o);if(s===void 0||!s){let g=Error(`Incorrect usage of "cherry-pick". Current branch (${pt.records.currBranch})has no commits`);throw g.hash={text:`cherryPick ${e} ${t}`,token:`cherryPick ${e} ${t}`,expected:["cherry-pick abc"]},g}let l={id:pt.records.seq+"-"+dO(),message:`cherry-picked ${a?.message} into ${pt.records.currBranch}`,seq:pt.records.seq++,parents:pt.records.head==null?[]:[pt.records.head.id,a.id],branch:pt.records.currBranch,type:ku.CHERRY_PICK,tags:r?r.filter(Boolean):[`cherry-pick:${a.id}${a.type===ku.MERGE?`|parent:${i}`:""}`]};pt.records.head=l,pt.records.commits.set(l.id,l),pt.records.branches.set(pt.records.currBranch,l.id),sA.debug(pt.records.branches),sA.debug("in cherryPick")}},"cherryPick"),cre=y(function(A){if(A=_e.sanitizeText(A,pm()),!pt.records.branches.has(A)){let e=Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${A}")`);throw e.hash={text:`checkout ${A}`,token:`checkout ${A}`,expected:[`branch ${A}`]},e}else{pt.records.currBranch=A;let e=pt.records.branches.get(pt.records.currBranch);if(e===void 0||!e)pt.records.head=null;else pt.records.head=pt.records.commits.get(e)??null}},"checkout");y(LcA,"upsert");y(NcA,"prettyPrintCommitHistory");X8t=y(function(){sA.debug(pt.records.commits);let A=Cre()[0];NcA([A])},"prettyPrint"),$8t=y(function(){pt.reset(),sr()},"clear"),ASt=y(function(){return[...pt.records.branchConfig.values()].map((e,t)=>{if(e.order!==null&&e.order!==void 0)return e;return{...e,order:parseFloat(`0.${t}`)}}).sort((e,t)=>(e.order??0)-(t.order??0)).map(({name:e})=>({name:e}))},"getBranchesAsObjArray"),eSt=y(function(){return pt.records.branches},"getBranches"),tSt=y(function(){return pt.records.commits},"getCommits"),Cre=y(function(){let A=[...pt.records.commits.values()];return A.forEach(function(e){sA.debug(e.id)}),A.sort((e,t)=>e.seq-t.seq),A},"getCommitsArray"),rSt=y(function(){return pt.records.currBranch},"getCurrentBranch"),iSt=y(function(){return pt.records.direction},"getDirection"),uSt=y(function(){return pt.records.head},"getHead"),Bre={commitType:ku,getConfig:pm,setDirection:_8t,setOptions:W8t,getOptions:q8t,commit:z8t,branch:Z8t,merge:V8t,cherryPick:j8t,checkout:cre,prettyPrint:X8t,clear:$8t,getBranchesAsObjArray:ASt,getBranches:eSt,getCommits:tSt,getCommitsArray:Cre,getCurrentBranch:rSt,getDirection:iSt,getHead:uSt,setAccTitle:Dr,getAccTitle:vr,getAccDescription:Fr,setAccDescription:kr,setDiagramTitle:Mr,getDiagramTitle:xr},aSt=y((A,e)=>{if(hu(A,e),A.dir)e.setDirection(A.dir);for(let t of A.statements)nSt(t,e)},"populate"),nSt=y((A,e)=>{let r={Commit:y((i)=>e.commit(oSt(i)),"Commit"),Branch:y((i)=>e.branch(sSt(i)),"Branch"),Merge:y((i)=>e.merge(lSt(i)),"Merge"),Checkout:y((i)=>e.checkout(gSt(i)),"Checkout"),CherryPicking:y((i)=>e.cherryPick(cSt(i)),"CherryPicking")}[A.$type];if(r)r(A);else sA.error(`Unknown statement type: ${A.$type}`)},"parseStatement"),oSt=y((A)=>({id:A.id,msg:A.message??"",type:A.type!==void 0?ku[A.type]:ku.NORMAL,tags:A.tags??void 0}),"parseCommit"),sSt=y((A)=>({name:A.name,order:A.order??0}),"parseBranch"),lSt=y((A)=>({branch:A.branch,id:A.id??"",type:A.type!==void 0?ku[A.type]:void 0,tags:A.tags??void 0}),"parseMerge"),gSt=y((A)=>A.branch,"parseCheckout"),cSt=y((A)=>({id:A.id,targetId:"",tags:A.tags?.length===0?void 0:A.tags,parent:A.parent}),"parseCherryPicking"),CSt={parse:y(async(A)=>{let e=await Ma("gitGraph",A);sA.debug(e),aSt(e,Bre)},"parse")},IO=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),GcA=new Set(["redux-color","redux-dark-color"]),BSt=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),Qm=y((A,e,t=!1)=>{if(t&&A>0)return(A-1)%(e-1)+1;return A%e},"calcColorIndex"),Fl=new Map,xl=new Map,i7=new Map,EO=[],ESt=y(()=>{Fl.clear(),xl.clear(),i7.clear(),Ih=0,EO=[],Ci="LR"},"clear"),Ere=y((A)=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof A==="string"?A.split(/\\n|\n|<br\s*\/?>/gi):A).forEach((r)=>{let i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),i.setAttribute("class","row"),i.textContent=r.trim(),e.appendChild(i)}),e},"drawText"),dre=y((A)=>{let e,t,r;if(Ci==="BT")t=y((i,u)=>i<=u,"comparisonFunc"),r=1/0;else t=y((i,u)=>i>=u,"comparisonFunc"),r=0;return A.forEach((i)=>{let u=Ci==="TB"||Ci=="BT"?xl.get(i)?.y:xl.get(i)?.x;if(u!==void 0&&t(u,r))e=i,r=u}),e},"findClosestParent"),dSt=y((A)=>{let e="",t=1/0;return A.forEach((r)=>{let i=xl.get(r).y;if(i<=t)e=r,t=i}),e||void 0},"findClosestParentBT"),ISt=y((A,e,t)=>{let r=t,i=t,u=[];A.forEach((a)=>{let n=e.get(a);if(!n)throw Error(`Commit not found for key ${a}`);if(n.parents.length)r=QSt(n),i=Math.max(r,i);else u.push(n);pSt(n,r)}),r=i,u.forEach((a)=>{fSt(a,r,t)}),A.forEach((a)=>{let n=e.get(a);if(n?.parents.length){let o=dSt(n.parents);if(r=xl.get(o).y-B1,r<=i)i=r;let s=Fl.get(n.branch).pos,l=r-C1;xl.set(n.id,{x:s,y:l})}})},"setParallelBTPos"),hSt=y((A)=>{let e=dre(A.parents.filter((r)=>r!==null));if(!e)throw Error(`Closest parent not found for commit ${A.id}`);let t=xl.get(e)?.y;if(t===void 0)throw Error(`Closest parent position not found for commit ${A.id}`);return t},"findClosestParentPos"),QSt=y((A)=>hSt(A)+B1,"calculateCommitPosition"),pSt=y((A,e)=>{let t=Fl.get(A.branch);if(!t)throw Error(`Branch not found for commit ${A.id}`);let r=t.pos,i=e+C1;return xl.set(A.id,{x:r,y:i}),{x:r,y:i}},"setCommitPosition"),fSt=y((A,e,t)=>{let r=Fl.get(A.branch);if(!r)throw Error(`Branch not found for commit ${A.id}`);let i=e+t,u=r.pos;xl.set(A.id,{x:u,y:i})},"setRootPosition"),mSt=y((A,e,t,r,i,u)=>{let{theme:a}=OA(),n=IO.has(a??""),o=GcA.has(a??""),s=BSt.has(a??"");if(u===ku.HIGHLIGHT)A.append("rect").attr("x",t.x-10+(n?3:0)).attr("y",t.y-10+(n?3:0)).attr("width",n?14:20).attr("height",n?14:20).attr("class",`commit ${e.id} commit-highlight${Qm(i,hm,o)} ${r}-outer`),A.append("rect").attr("x",t.x-6+(n?2:0)).attr("y",t.y-6+(n?2:0)).attr("width",n?8:12).attr("height",n?8:12).attr("class",`commit ${e.id} commit${Qm(i,hm,o)} ${r}-inner`);else if(u===ku.CHERRY_PICK)A.append("circle").attr("cx",t.x).attr("cy",t.y).attr("r",n?7:10).attr("class",`commit ${e.id} ${r}`),A.append("circle").attr("cx",t.x-3).attr("cy",t.y+2).attr("r",n?2.5:2.75).attr("fill",s?"#000000":"#fff").attr("class",`commit ${e.id} ${r}`),A.append("circle").attr("cx",t.x+3).attr("cy",t.y+2).attr("r",n?2.5:2.75).attr("fill",s?"#000000":"#fff").attr("class",`commit ${e.id} ${r}`),A.append("line").attr("x1",t.x+3).attr("y1",t.y+1).attr("x2",t.x).attr("y2",t.y-5).attr("stroke",s?"#000000":"#fff").attr("class",`commit ${e.id} ${r}`),A.append("line").attr("x1",t.x-3).attr("y1",t.y+1).attr("x2",t.x).attr("y2",t.y-5).attr("stroke",s?"#000000":"#fff").attr("class",`commit ${e.id} ${r}`);else{let l=A.append("circle");if(l.attr("cx",t.x),l.attr("cy",t.y),l.attr("r",n?7:10),l.attr("class",`commit ${e.id} commit${Qm(i,hm,o)}`),u===ku.MERGE){let g=A.append("circle");g.attr("cx",t.x),g.attr("cy",t.y),g.attr("r",n?5:6),g.attr("class",`commit ${r} ${e.id} commit${Qm(i,hm,o)}`)}if(u===ku.REVERSE){let g=A.append("path"),C=n?4:5;g.attr("d",`M ${t.x-C},${t.y-C}L${t.x+C},${t.y+C}M${t.x-C},${t.y+C}L${t.x+C},${t.y-C}`).attr("class",`commit ${r} ${e.id} commit${Qm(i,hm,o)}`)}}},"drawCommitBullet"),DSt=y((A,e,t,r,i)=>{if(e.type!==ku.CHERRY_PICK&&(e.customId&&e.type===ku.MERGE||e.type!==ku.MERGE)&&i.showCommitLabel){let u=A.append("g"),a=u.insert("rect").attr("class","commit-label-bkg"),n=u.append("text").attr("x",r).attr("y",t.y+25).attr("class","commit-label").text(e.id),o=n.node()?.getBBox();if(o){if(a.attr("x",t.posWithOffset-o.width/2-dh).attr("y",t.y+13.5).attr("width",o.width+2*dh).attr("height",o.height+2*dh),Ci==="TB"||Ci==="BT")a.attr("x",t.x-(o.width+4*td+5)).attr("y",t.y-12),n.attr("x",t.x-(o.width+4*td)).attr("y",t.y+o.height-12);else n.attr("x",t.posWithOffset-o.width/2);if(i.rotateCommitLabel)if(Ci==="TB"||Ci==="BT")n.attr("transform","rotate(-45, "+t.x+", "+t.y+")"),a.attr("transform","rotate(-45, "+t.x+", "+t.y+")");else{let s=-7.5-(o.width+10)/25*9.5,l=10+o.width/25*8.5;u.attr("transform","translate("+s+", "+l+") rotate(-45, "+r+", "+t.y+")")}}}},"drawCommitLabel"),ySt=y((A,e,t,r)=>{if(e.tags.length>0){let i=0,u=0,a=0,n=[];for(let o of e.tags.reverse()){let s=A.insert("polygon"),l=A.append("circle"),g=A.append("text").attr("y",t.y-16-i).attr("class","tag-label").text(o),C=g.node()?.getBBox();if(!C)throw Error("Tag bbox not found");u=Math.max(u,C.width),a=Math.max(a,C.height),g.attr("x",t.posWithOffset-C.width/2),n.push({tag:g,hole:l,rect:s,yOffset:i}),i+=20}for(let{tag:o,hole:s,rect:l,yOffset:g}of n){let C=a/2,B=t.y-19.2-g;if(l.attr("class","tag-label-bkg").attr("points",`
|
||
${r-u/2-td/2},${B+dh}
|
||
${r-u/2-td/2},${B-dh}
|
||
${t.posWithOffset-u/2-td},${B-C-dh}
|
||
${t.posWithOffset+u/2+td},${B-C-dh}
|
||
${t.posWithOffset+u/2+td},${B+C+dh}
|
||
${t.posWithOffset-u/2-td},${B+C+dh}`),s.attr("cy",B).attr("cx",r-u/2+td/2).attr("r",1.5).attr("class","tag-hole"),Ci==="TB"||Ci==="BT"){let E=r+g;l.attr("class","tag-label-bkg").attr("points",`
|
||
${t.x},${E+2}
|
||
${t.x},${E-2}
|
||
${t.x+C1},${E-C-2}
|
||
${t.x+C1+u+4},${E-C-2}
|
||
${t.x+C1+u+4},${E+C+2}
|
||
${t.x+C1},${E+C+2}`).attr("transform","translate(12,12) rotate(45, "+t.x+","+r+")"),s.attr("cx",t.x+td/2).attr("cy",E).attr("transform","translate(12,12) rotate(45, "+t.x+","+r+")"),o.attr("x",t.x+5).attr("y",E+3).attr("transform","translate(14,14) rotate(45, "+t.x+","+r+")")}}}},"drawCommitTags"),wSt=y((A)=>{switch(A.customType??A.type){case ku.NORMAL:return"commit-normal";case ku.REVERSE:return"commit-reverse";case ku.HIGHLIGHT:return"commit-highlight";case ku.MERGE:return"commit-merge";case ku.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),bSt=y((A,e,t,r)=>{let i={x:0,y:0};if(A.parents.length>0){let u=dre(A.parents);if(u){let a=r.get(u)??i;if(e==="TB")return a.y+B1;else if(e==="BT")return(r.get(A.id)??i).y-B1;else return a.x+B1}}else if(e==="TB")return BO;else if(e==="BT")return(r.get(A.id)??i).y-B1;else return 0;return 0},"calculatePosition"),vSt=y((A,e,t)=>{let r=Ci==="BT"&&t?e:e+C1,i=Fl.get(A.branch)?.pos,u=Ci==="TB"||Ci==="BT"?Fl.get(A.branch)?.pos:r;if(u===void 0||i===void 0)throw Error(`Position were undefined for commit ${A.id}`);let a=IO.has(OA().theme??""),n=Ci==="TB"||Ci==="BT"?r:i+(a?RcA/2+1:-2);return{x:u,y:n,posWithOffset:r}},"getCommitPosition"),lre=y((A,e,t,r)=>{let i=A.append("g").attr("class","commit-bullets"),u=A.append("g").attr("class","commit-labels"),a=Ci==="TB"||Ci==="BT"?BO:0,n=[...e.keys()],o=r.parallelCommits??!1,s=y((g,C)=>{let B=e.get(g)?.seq,E=e.get(C)?.seq;return B!==void 0&&E!==void 0?B-E:0},"sortKeys"),l=n.sort(s);if(Ci==="BT"){if(o)ISt(l,e,a);l=l.reverse()}l.forEach((g)=>{let C=e.get(g);if(!C)throw Error(`Commit not found for key ${g}`);if(o)a=bSt(C,Ci,a,xl);let B=vSt(C,a,o);if(t){let E=wSt(C),d=C.customType??C.type,I=Fl.get(C.branch)?.index??0;mSt(i,C,B,E,I,d),DSt(u,C,B,a,r),ySt(u,C,B,a)}if(Ci==="TB"||Ci==="BT")xl.set(C.id,{x:B.x,y:B.posWithOffset});else xl.set(C.id,{x:B.posWithOffset,y:B.y});if(a=Ci==="BT"&&o?a+B1:a+B1+C1,a>Ih)Ih=a})},"drawCommits"),kSt=y((A,e,t,r,i)=>{let a=(Ci==="TB"||Ci==="BT"?t.x<r.x:t.y<r.y)?e.branch:A.branch,n=y((s)=>s.branch===a,"isOnBranchToGetCurve"),o=y((s)=>s.seq>A.seq&&s.seq<e.seq,"isBetweenCommits");return[...i.values()].some((s)=>o(s)&&n(s))},"shouldRerouteArrow"),u7=y((A,e,t=0)=>{let r=A+Math.abs(A-e)/2;if(t>5)return r;if(EO.every((a)=>Math.abs(a-r)>=10))return EO.push(r),r;let u=Math.abs(A-e);return u7(A,e-u/5,t+1)},"findLane"),FSt=y((A,e,t,r)=>{let{theme:i}=OA(),u=GcA.has(i??""),a=xl.get(e.id),n=xl.get(t.id);if(a===void 0||n===void 0)throw Error(`Commit positions not found for commits ${e.id} and ${t.id}`);let o=kSt(e,t,a,n,r),s="",l="",g=0,C=0,B=Fl.get(t.branch)?.index;if(t.type===ku.MERGE&&e.id!==t.parents[0])B=Fl.get(e.branch)?.index;let E;if(o){s="A 10 10, 0, 0, 0,",l="A 10 10, 0, 0, 1,",g=10,C=10;let d=a.y<n.y?u7(a.y,n.y):u7(n.y,a.y),I=a.x<n.x?u7(a.x,n.x):u7(n.x,a.x);if(Ci==="TB")if(a.x<n.x)E=`M ${a.x} ${a.y} L ${I-g} ${a.y} ${l} ${I} ${a.y+C} L ${I} ${n.y-g} ${s} ${I+C} ${n.y} L ${n.x} ${n.y}`;else B=Fl.get(e.branch)?.index,E=`M ${a.x} ${a.y} L ${I+g} ${a.y} ${s} ${I} ${a.y+C} L ${I} ${n.y-g} ${l} ${I-C} ${n.y} L ${n.x} ${n.y}`;else if(Ci==="BT")if(a.x<n.x)E=`M ${a.x} ${a.y} L ${I-g} ${a.y} ${s} ${I} ${a.y-C} L ${I} ${n.y+g} ${l} ${I+C} ${n.y} L ${n.x} ${n.y}`;else B=Fl.get(e.branch)?.index,E=`M ${a.x} ${a.y} L ${I+g} ${a.y} ${l} ${I} ${a.y-C} L ${I} ${n.y+g} ${s} ${I-C} ${n.y} L ${n.x} ${n.y}`;else if(a.y<n.y)E=`M ${a.x} ${a.y} L ${a.x} ${d-g} ${s} ${a.x+C} ${d} L ${n.x-g} ${d} ${l} ${n.x} ${d+C} L ${n.x} ${n.y}`;else B=Fl.get(e.branch)?.index,E=`M ${a.x} ${a.y} L ${a.x} ${d+g} ${l} ${a.x+C} ${d} L ${n.x-g} ${d} ${s} ${n.x} ${d-C} L ${n.x} ${n.y}`}else if(s="A 20 20, 0, 0, 0,",l="A 20 20, 0, 0, 1,",g=20,C=20,Ci==="TB"){if(a.x<n.x)if(t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${a.x} ${n.y-g} ${s} ${a.x+C} ${n.y} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${n.x-g} ${a.y} ${l} ${n.x} ${a.y+C} L ${n.x} ${n.y}`;if(a.x>n.x)if(s="A 20 20, 0, 0, 0,",l="A 20 20, 0, 0, 1,",g=20,C=20,t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${a.x} ${n.y-g} ${l} ${a.x-C} ${n.y} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${n.x+g} ${a.y} ${s} ${n.x} ${a.y+C} L ${n.x} ${n.y}`;if(a.x===n.x)E=`M ${a.x} ${a.y} L ${n.x} ${n.y}`}else if(Ci==="BT"){if(a.x<n.x)if(t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${a.x} ${n.y+g} ${l} ${a.x+C} ${n.y} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${n.x-g} ${a.y} ${s} ${n.x} ${a.y-C} L ${n.x} ${n.y}`;if(a.x>n.x)if(s="A 20 20, 0, 0, 0,",l="A 20 20, 0, 0, 1,",g=20,C=20,t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${a.x} ${n.y+g} ${s} ${a.x-C} ${n.y} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${n.x+g} ${a.y} ${l} ${n.x} ${a.y-C} L ${n.x} ${n.y}`;if(a.x===n.x)E=`M ${a.x} ${a.y} L ${n.x} ${n.y}`}else{if(a.y<n.y)if(t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${n.x-g} ${a.y} ${l} ${n.x} ${a.y+C} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${a.x} ${n.y-g} ${s} ${a.x+C} ${n.y} L ${n.x} ${n.y}`;if(a.y>n.y)if(t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${n.x-g} ${a.y} ${s} ${n.x} ${a.y-C} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${a.x} ${n.y+g} ${l} ${a.x+C} ${n.y} L ${n.x} ${n.y}`;if(a.y===n.y)E=`M ${a.x} ${a.y} L ${n.x} ${n.y}`}if(E===void 0)throw Error("Line definition not found");A.append("path").attr("d",E).attr("class","arrow arrow"+Qm(B,hm,u))},"drawArrow"),xSt=y((A,e)=>{let t=A.append("g").attr("class","commit-arrows");[...e.keys()].forEach((r)=>{let i=e.get(r);if(i.parents&&i.parents.length>0)i.parents.forEach((u)=>{FSt(t,e.get(u),i,e)})})},"drawArrows"),SSt=y((A,e,t,r)=>{let{look:i,theme:u,themeVariables:a}=OA(),{dropShadow:n,THEME_COLOR_LIMIT:o}=a,s=IO.has(u??""),l=GcA.has(u??""),g=A.append("g");e.forEach((C,B)=>{let E=Qm(B,s?o:hm,l),d=Fl.get(C.name)?.pos;if(d===void 0)throw Error(`Position not found for branch ${C.name}`);let I=Ci==="TB"||Ci==="BT"?d:s?d+RcA/2+1:d-2,h=g.append("line");if(h.attr("x1",0),h.attr("y1",I),h.attr("x2",Ih),h.attr("y2",I),h.attr("class","branch branch"+E),Ci==="TB")h.attr("y1",BO),h.attr("x1",d),h.attr("y2",Ih),h.attr("x2",d);else if(Ci==="BT")h.attr("y1",Ih),h.attr("x1",d),h.attr("y2",BO),h.attr("x2",d);EO.push(I);let Q=C.name,p=Ere(Q),m=g.insert("rect"),D=g.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+E);D.node().appendChild(p);let w=p.getBBox(),b=s?0:4,F=s?16:0,v=s?RcA:0;if(i==="neo")m.attr("data-look","neo");if(m.attr("class","branchLabelBkg label"+E).attr("style",i==="neo"?`filter:${s?`url(#${r}-drop-shadow)`:n}`:"").attr("rx",b).attr("ry",b).attr("x",-w.width-4-(t.rotateCommitLabel===!0?30:0)).attr("y",-w.height/2+10).attr("width",w.width+18+F).attr("height",w.height+4+v),D.attr("transform","translate("+(-w.width-14-(t.rotateCommitLabel===!0?30:0)+F/2)+", "+(I-w.height/2-2)+")"),Ci==="TB"){if(m.attr("x",d-w.width/2-10).attr("y",0),D.attr("transform","translate("+(d-w.width/2-5)+", 0)"),s)m.attr("transform",`translate(${-F/2-3}, ${-v-10})`),D.attr("transform","translate("+(d-w.width/2-5)+", "+(-v*2+7)+")")}else if(Ci==="BT"){if(m.attr("x",d-w.width/2-10).attr("y",Ih),D.attr("transform","translate("+(d-w.width/2-5)+", "+Ih+")"),s)m.attr("transform",`translate(${-F/2-3}, ${v+10})`),D.attr("transform","translate("+(d-w.width/2-5)+", "+(Ih+v*2+4)+")")}else m.attr("transform","translate(-19, "+(I-12-v/2)+")")})},"drawBranches"),LSt=y(function(A,e,t,r,i){return Fl.set(A,{pos:e,index:t}),e+=50+(i?40:0)+(Ci==="TB"||Ci==="BT"?r.width/2:0),e},"setBranchPosition"),RSt=y(function(A,e,t,r){ESt(),sA.debug("in gitgraph renderer",A+`
|
||
`,"id:",e,t);let i=r.db;if(!i.getConfig){sA.error("getConfig method is not available on db");return}let u=i.getConfig(),a=u.rotateCommitLabel??!1;i7=i.getCommits();let n=i.getBranchesAsObjArray();Ci=i.getDirection();let o=Qe(`[id="${e}"]`),{look:s,theme:l,themeVariables:g}=OA(),{useGradient:C,gradientStart:B,gradientStop:E,filterColor:d}=g;if(C){let h=o.append("defs").append("linearGradient").attr("id",e+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");h.append("stop").attr("offset","0%").attr("stop-color",B).attr("stop-opacity",1),h.append("stop").attr("offset","100%").attr("stop-color",E).attr("stop-opacity",1)}if(s==="neo"&&IO.has(l??""))o.append("defs").append("filter").attr("id",e+"-drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",d);let I=0;if(n.forEach((h,Q)=>{let p=Ere(h.name),m=o.append("g"),f=m.insert("g").attr("class","branchLabel"),D=f.insert("g").attr("class","label branch-label");D.node()?.appendChild(p);let w=p.getBBox();I=LSt(h.name,I,Q,w,a),D.remove(),f.remove(),m.remove()}),lre(o,i7,!1,u),u.showBranches)SSt(o,n,u,e);xSt(o,i7),lre(o,i7,!0,u),Jt.insertTitle(o,"gitTitleText",u.titleTopMargin??0,i.getDiagramTitle()),Fb(void 0,o,u.diagramPadding,u.useMaxWidth)},"draw"),NSt={draw:RSt},hre=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),GSt=new Set(["redux-color","redux-dark-color"]),USt=new Set(["neo","neo-dark"]),MSt=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),TSt=new Set(["redux","redux-dark","redux-color","redux-dark-color","neo","neo-dark"]),YSt=y((A)=>{let{svgId:e}=A,t="";if(A.useGradient&&e)for(let r=0;r<A.THEME_COLOR_LIMIT;r++)t+=`
|
||
.label${r} { fill: ${A.mainBkg}; stroke: url(${e}-gradient); stroke-width: ${A.strokeWidth};}
|
||
`;return t},"genGitGraphGradient"),HSt=y((A)=>{let e=st(),{theme:t,themeVariables:r}=e,{borderColorArray:i}=r,u=hre.has(t);if(USt.has(t)){let a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)if(n===0)a+=`
|
||
.branch-label${n} { fill: ${A.nodeBorder};}
|
||
.commit${n} { stroke: ${A.nodeBorder}; }
|
||
.commit-highlight${n} { stroke: ${A.nodeBorder}; fill: ${A.nodeBorder}; }
|
||
.arrow${n} { stroke: ${A.nodeBorder}; }
|
||
.commit-bullets { fill: ${A.nodeBorder}; }
|
||
.commit-cherry-pick${n} { stroke: ${A.nodeBorder}; }
|
||
${YSt(A)}`;else{let o=n%Ire;a+=`
|
||
.branch-label${n} { fill: ${A["gitBranchLabel"+o]}; }
|
||
.commit${n} { stroke: ${A["git"+o]}; fill: ${A["git"+o]}; }
|
||
.commit-highlight${n} { stroke: ${A["gitInv"+o]}; fill: ${A["gitInv"+o]}; }
|
||
.arrow${n} { stroke: ${A["git"+o]}; }
|
||
`}return a}else if(!GSt.has(t)){let a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)a+=`
|
||
.branch-label${n} { fill: ${A.nodeBorder}; ${u?`font-weight:${A.noteFontWeight}`:""} }
|
||
.commit${n} { stroke: ${A.nodeBorder}; }
|
||
.commit-highlight${n} { stroke: ${A.nodeBorder}; fill: ${A.nodeBorder}; }
|
||
.label${n} { fill: ${A.mainBkg}; stroke: ${A.nodeBorder}; stroke-width: ${A.strokeWidth}; ${u?`font-weight:${A.noteFontWeight}`:""}}
|
||
.arrow${n} { stroke: ${A.nodeBorder}; }
|
||
.commit-bullets { fill: ${A.nodeBorder}; }
|
||
.commit-cherry-pick${n} { stroke: ${A.nodeBorder}; }
|
||
`;return a}else{let a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)if(n===0)a+=`
|
||
.branch-label${n} { fill: ${A.nodeBorder}; ${u?`font-weight:${A.noteFontWeight}`:""} }
|
||
.commit${n} { stroke: ${A.nodeBorder}; }
|
||
.commit-highlight${n} { stroke: ${A.nodeBorder}; fill: ${A.mainBkg}; }
|
||
.label${n} { fill: ${A.mainBkg}; stroke: ${A.nodeBorder}; stroke-width: ${A.strokeWidth}; ${u?`font-weight:${A.noteFontWeight}`:""} }
|
||
.arrow${n} { stroke: ${A.nodeBorder}; }
|
||
.commit-bullets { fill: ${A.nodeBorder}; }
|
||
`;else{let o=n%i.length;a+=`
|
||
.branch-label${n} { fill: ${A.nodeBorder}; ${u?`font-weight:${A.noteFontWeight}`:""} }
|
||
.commit${n} { stroke: ${i[o]}; fill: ${i[o]}; }
|
||
.commit-highlight${n} { stroke: ${i[o]}; fill: ${i[o]}; }
|
||
.label${n} { fill: ${MSt.has(t)?A.mainBkg:i[o]}; stroke: ${i[o]}; stroke-width: ${A.strokeWidth}; }
|
||
.arrow${n} { stroke: ${i[o]}; }
|
||
`}return a}},"genColor"),KSt=y((A)=>`${Array.from({length:A.THEME_COLOR_LIMIT},(e,t)=>t).map((e)=>{let t=e%Ire;return`
|
||
.branch-label${e} { fill: ${A["gitBranchLabel"+t]}; }
|
||
.commit${e} { stroke: ${A["git"+t]}; fill: ${A["git"+t]}; }
|
||
.commit-highlight${e} { stroke: ${A["gitInv"+t]}; fill: ${A["gitInv"+t]}; }
|
||
.label${e} { fill: ${A["git"+t]}; }
|
||
.arrow${e} { stroke: ${A["git"+t]}; }
|
||
`}).join(`
|
||
`)}`,"normalTheme"),JSt=y((A)=>{let e=st(),{theme:t}=e,r=TSt.has(t);return`
|
||
.commit-id,
|
||
.commit-msg,
|
||
.branch-label {
|
||
fill: lightgrey;
|
||
color: lightgrey;
|
||
font-family: 'trebuchet ms', verdana, arial, sans-serif;
|
||
font-family: var(--mermaid-font-family);
|
||
}
|
||
|
||
${r?HSt(A):KSt(A)}
|
||
|
||
.branch {
|
||
stroke-width: ${A.strokeWidth};
|
||
stroke: ${A.commitLineColor??A.lineColor};
|
||
stroke-dasharray: ${r?"4 2":"2"};
|
||
}
|
||
.commit-label { font-size: ${A.commitLabelFontSize}; fill: ${r?A.nodeBorder:A.commitLabelColor}; ${r?`font-weight:${A.noteFontWeight};`:""}}
|
||
.commit-label-bkg { font-size: ${A.commitLabelFontSize}; fill: ${r?"transparent":A.commitLabelBackground}; opacity: ${r?"":0.5}; }
|
||
.tag-label { font-size: ${A.tagLabelFontSize}; fill: ${A.tagLabelColor};}
|
||
.tag-label-bkg { fill: ${r?A.mainBkg:A.tagLabelBackground}; stroke: ${r?A.nodeBorder:A.tagLabelBorder}; ${r?`filter:${A.dropShadow}`:""} }
|
||
.tag-hole { fill: ${A.textColor}; }
|
||
|
||
.commit-merge {
|
||
stroke: ${r?A.mainBkg:A.primaryColor};
|
||
fill: ${r?A.mainBkg:A.primaryColor};
|
||
}
|
||
.commit-reverse {
|
||
stroke: ${r?A.mainBkg:A.primaryColor};
|
||
fill: ${r?A.mainBkg:A.primaryColor};
|
||
stroke-width: ${r?A.strokeWidth:3};
|
||
}
|
||
.commit-highlight-outer {
|
||
}
|
||
.commit-highlight-inner {
|
||
stroke: ${r?A.mainBkg:A.primaryColor};
|
||
fill: ${r?A.mainBkg:A.primaryColor};
|
||
}
|
||
|
||
.arrow {
|
||
/* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */
|
||
stroke-width: ${hre.has(t)?A.strokeWidth:8};
|
||
stroke-linecap: round;
|
||
fill: none
|
||
}
|
||
.gitTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${A.textColor};
|
||
}
|
||
`},"getStyles"),OSt=JSt,Qre={parser:CSt,db:Bre,renderer:NSt,styles:OSt}});var fre=wu(function(UcA,McA){(function(A,e){typeof UcA=="object"&&typeof McA<"u"?McA.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs_plugin_isoWeek=e()})(UcA,function(){var A="day";return function(e,t,r){var i=function(n){return n.add(4-n.isoWeekday(),A)},u=t.prototype;u.isoWeekYear=function(){return i(this).year()},u.isoWeek=function(n){if(!this.$utils().u(n))return this.add(7*(n-this.isoWeek()),A);var o,s,l,g,C=i(this),B=(o=this.isoWeekYear(),s=this.$u,l=(s?r.utc:r)().year(o).startOf("year"),g=4-l.isoWeekday(),l.isoWeekday()>4&&(g+=7),l.add(g,A));return C.diff(B,"week")+1},u.isoWeekday=function(n){return this.$utils().u(n)?this.day()||7:this.day(this.day()%7?n:n-7)};var a=u.startOf;u.startOf=function(n,o){var s=this.$utils(),l=!!s.u(o)||o;return s.p(n)==="isoweek"?l?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):a.bind(this)(n,o)}}})});var mre=wu(function(TcA,YcA){(function(A,e){typeof TcA=="object"&&typeof YcA<"u"?YcA.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs_plugin_customParseFormat=e()})(TcA,function(){var A={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,t=/\d/,r=/\d\d/,i=/\d\d?/,u=/\d*[^-_:/,()\s\d]+/,a={},n=function(E){return(E=+E)+(E>68?1900:2000)},o=function(E){return function(d){this[E]=+d}},s=[/[+-]\d\d:?(\d\d)?|Z/,function(E){(this.zone||(this.zone={})).offset=function(d){if(!d)return 0;if(d==="Z")return 0;var I=d.match(/([+-]|\d\d)/g),h=60*I[1]+(+I[2]||0);return h===0?0:I[0]==="+"?-h:h}(E)}],l=function(E){var d=a[E];return d&&(d.indexOf?d:d.s.concat(d.f))},g=function(E,d){var I,h=a.meridiem;if(h){for(var Q=1;Q<=24;Q+=1)if(E.indexOf(h(Q,0,d))>-1){I=Q>12;break}}else I=E===(d?"pm":"PM");return I},C={A:[u,function(E){this.afternoon=g(E,!1)}],a:[u,function(E){this.afternoon=g(E,!0)}],Q:[t,function(E){this.month=3*(E-1)+1}],S:[t,function(E){this.milliseconds=100*+E}],SS:[r,function(E){this.milliseconds=10*+E}],SSS:[/\d{3}/,function(E){this.milliseconds=+E}],s:[i,o("seconds")],ss:[i,o("seconds")],m:[i,o("minutes")],mm:[i,o("minutes")],H:[i,o("hours")],h:[i,o("hours")],HH:[i,o("hours")],hh:[i,o("hours")],D:[i,o("day")],DD:[r,o("day")],Do:[u,function(E){var d=a.ordinal,I=E.match(/\d+/);if(this.day=I[0],d)for(var h=1;h<=31;h+=1)d(h).replace(/\[|\]/g,"")===E&&(this.day=h)}],w:[i,o("week")],ww:[r,o("week")],M:[i,o("month")],MM:[r,o("month")],MMM:[u,function(E){var d=l("months"),I=(l("monthsShort")||d.map(function(h){return h.slice(0,3)})).indexOf(E)+1;if(I<1)throw Error();this.month=I%12||I}],MMMM:[u,function(E){var d=l("months").indexOf(E)+1;if(d<1)throw Error();this.month=d%12||d}],Y:[/[+-]?\d+/,o("year")],YY:[r,function(E){this.year=n(E)}],YYYY:[/\d{4}/,o("year")],Z:s,ZZ:s};function B(E){var d,I;d=E,I=a&&a.formats;for(var h=(E=d.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(b,F,v){var S=v&&v.toUpperCase();return F||I[v]||A[v]||I[S].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(x,k,T){return k||T.slice(1)})})).match(e),Q=h.length,p=0;p<Q;p+=1){var m=h[p],f=C[m],D=f&&f[0],w=f&&f[1];h[p]=w?{regex:D,parser:w}:m.replace(/^\[|\]$/g,"")}return function(b){for(var F={},v=0,S=0;v<Q;v+=1){var x=h[v];if(typeof x=="string")S+=x.length;else{var{regex:k,parser:T}=x,R=b.slice(S),L=k.exec(R)[0];T.call(F,L),b=b.replace(L,"")}}return function(M){var U=M.afternoon;if(U!==void 0){var Y=M.hours;U?Y<12&&(M.hours+=12):Y===12&&(M.hours=0),delete M.afternoon}}(F),F}}return function(E,d,I){I.p.customParseFormat=!0,E&&E.parseTwoDigitYear&&(n=E.parseTwoDigitYear);var h=d.prototype,Q=h.parse;h.parse=function(p){var{date:m,utc:f,args:D}=p;this.$u=f;var w=D[1];if(typeof w=="string"){var b=D[2]===!0,F=D[3]===!0,v=b||F,S=D[2];F&&(S=D[2]),a=this.$locale(),!b&&S&&(a=I.Ls[S]),this.$d=function(R,L,M,U){try{if(["x","X"].indexOf(L)>-1)return new Date((L==="X"?1000:1)*R);var Y=B(L)(R),{year:H,month:J,day:K,hours:O,minutes:_,seconds:z,milliseconds:j,zone:q,week:CA}=Y,tA=new Date,lA=K||(H||J?1:tA.getDate()),gA=H||tA.getFullYear(),aA=0;H&&!J||(aA=J>0?J-1:tA.getMonth());var RA,wA=O||0,JA=_||0,TA=z||0,qA=j||0;return q?new Date(Date.UTC(gA,aA,lA,wA,JA,TA,qA+60*q.offset*1000)):M?new Date(Date.UTC(gA,aA,lA,wA,JA,TA,qA)):(RA=new Date(gA,aA,lA,wA,JA,TA,qA),CA&&(RA=U(RA).week(CA).toDate()),RA)}catch(BA){return new Date("")}}(m,w,f,I),this.init(),S&&S!==!0&&(this.$L=this.locale(S).$L),v&&m!=this.format(w)&&(this.$d=new Date("")),a={}}else if(w instanceof Array)for(var x=w.length,k=1;k<=x;k+=1){D[1]=w[k-1];var T=I.apply(this,D);if(T.isValid()){this.$d=T.$d,this.$L=T.$L,this.init();break}k===x&&(this.$d=new Date(""))}else Q.call(this,p)}}})});var Dre=wu(function(HcA,KcA){(function(A,e){typeof HcA=="object"&&typeof KcA<"u"?KcA.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs_plugin_advancedFormat=e()})(HcA,function(){return function(A,e){var t=e.prototype,r=t.format;t.format=function(i){var u=this,a=this.$locale();if(!this.isValid())return r.bind(this)(i);var n=this.$utils(),o=(i||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(s){switch(s){case"Q":return Math.ceil((u.$M+1)/3);case"Do":return a.ordinal(u.$D);case"gggg":return u.weekYear();case"GGGG":return u.isoWeekYear();case"wo":return a.ordinal(u.week(),"W");case"w":case"ww":return n.s(u.week(),s==="w"?1:2,"0");case"W":case"WW":return n.s(u.isoWeek(),s==="W"?1:2,"0");case"k":case"kk":return n.s(String(u.$H===0?24:u.$H),s==="k"?1:2,"0");case"X":return Math.floor(u.$d.getTime()/1000);case"x":return u.$d.getTime();case"z":return"["+u.offsetName()+"]";case"zzz":return"["+u.offsetName("long")+"]";default:return s}});return r.bind(this)(o)}}})});var yre=wu(function(JcA,OcA){(function(A,e){typeof JcA=="object"&&typeof OcA<"u"?OcA.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs_plugin_duration=e()})(JcA,function(){var A,e,t=1000,r=60000,i=3600000,u=86400000,a=31536000000,n=2628000000,o=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,s=/\[([^\]]+)]|YYYY|YY|Y|M{1,2}|D{1,2}|H{1,2}|m{1,2}|s{1,2}|SSS/g,l={years:a,months:n,days:u,hours:i,minutes:r,seconds:t,milliseconds:1,weeks:604800000},g=function(m){return m instanceof Q},C=function(m,f,D){return new Q(m,D,f.$l)},B=function(m){return e.p(m)+"s"},E=function(m){return m<0},d=function(m){return E(m)?Math.ceil(m):Math.floor(m)},I=function(m){return Math.abs(m)},h=function(m,f){return m?E(m)?{negative:!0,format:""+I(m)+f}:{negative:!1,format:""+m+f}:{negative:!1,format:""}},Q=function(){function m(D,w,b){var F=this;if(this.$d={},this.$l=b,D===void 0&&(this.$ms=0,this.parseFromMilliseconds()),w)return C(D*l[B(w)],this);if(typeof D=="number")return this.$ms=D,this.parseFromMilliseconds(),this;if(typeof D=="object")return Object.keys(D).forEach(function(x){F.$d[B(x)]=D[x]}),this.calMilliseconds(),this;if(typeof D=="string"){var v=D.match(o);if(v){var S=v.slice(2).map(function(x){return x!=null?Number(x):0});return this.$d.years=S[0],this.$d.months=S[1],this.$d.weeks=S[2],this.$d.days=S[3],this.$d.hours=S[4],this.$d.minutes=S[5],this.$d.seconds=S[6],this.calMilliseconds(),this}}return this}var f=m.prototype;return f.calMilliseconds=function(){var D=this;this.$ms=Object.keys(this.$d).reduce(function(w,b){return w+(D.$d[b]||0)*l[b]},0)},f.parseFromMilliseconds=function(){var D=this.$ms;this.$d.years=d(D/a),D%=a,this.$d.months=d(D/n),D%=n,this.$d.days=d(D/u),D%=u,this.$d.hours=d(D/i),D%=i,this.$d.minutes=d(D/r),D%=r,this.$d.seconds=d(D/t),D%=t,this.$d.milliseconds=D},f.toISOString=function(){var D=h(this.$d.years,"Y"),w=h(this.$d.months,"M"),b=+this.$d.days||0;this.$d.weeks&&(b+=7*this.$d.weeks);var F=h(b,"D"),v=h(this.$d.hours,"H"),S=h(this.$d.minutes,"M"),x=this.$d.seconds||0;this.$d.milliseconds&&(x+=this.$d.milliseconds/1000,x=Math.round(1000*x)/1000);var k=h(x,"S"),T=D.negative||w.negative||F.negative||v.negative||S.negative||k.negative,R=v.format||S.format||k.format?"T":"",L=(T?"-":"")+"P"+D.format+w.format+F.format+R+v.format+S.format+k.format;return L==="P"||L==="-P"?"P0D":L},f.toJSON=function(){return this.toISOString()},f.format=function(D){var w=D||"YYYY-MM-DDTHH:mm:ss",b={Y:this.$d.years,YY:e.s(this.$d.years,2,"0"),YYYY:e.s(this.$d.years,4,"0"),M:this.$d.months,MM:e.s(this.$d.months,2,"0"),D:this.$d.days,DD:e.s(this.$d.days,2,"0"),H:this.$d.hours,HH:e.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:e.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:e.s(this.$d.seconds,2,"0"),SSS:e.s(this.$d.milliseconds,3,"0")};return w.replace(s,function(F,v){return v||String(b[F])})},f.as=function(D){return this.$ms/l[B(D)]},f.get=function(D){var w=this.$ms,b=B(D);return b==="milliseconds"?w%=1000:w=b==="weeks"?d(w/l[b]):this.$d[b],w||0},f.add=function(D,w,b){var F;return F=w?D*l[B(w)]:g(D)?D.$ms:C(D,this).$ms,C(this.$ms+F*(b?-1:1),this)},f.subtract=function(D,w){return this.add(D,w,!0)},f.locale=function(D){var w=this.clone();return w.$l=D,w},f.clone=function(){return C(this.$ms,this)},f.humanize=function(D){return A().add(this.$ms,"ms").locale(this.$l).fromNow(!D)},f.valueOf=function(){return this.asMilliseconds()},f.milliseconds=function(){return this.get("milliseconds")},f.asMilliseconds=function(){return this.as("milliseconds")},f.seconds=function(){return this.get("seconds")},f.asSeconds=function(){return this.as("seconds")},f.minutes=function(){return this.get("minutes")},f.asMinutes=function(){return this.as("minutes")},f.hours=function(){return this.get("hours")},f.asHours=function(){return this.as("hours")},f.days=function(){return this.get("days")},f.asDays=function(){return this.as("days")},f.weeks=function(){return this.get("weeks")},f.asWeeks=function(){return this.as("weeks")},f.months=function(){return this.get("months")},f.asMonths=function(){return this.as("months")},f.years=function(){return this.get("years")},f.asYears=function(){return this.as("years")},m}(),p=function(m,f,D){return m.add(f.years()*D,"y").add(f.months()*D,"M").add(f.days()*D,"d").add(f.hours()*D,"h").add(f.minutes()*D,"m").add(f.seconds()*D,"s").add(f.milliseconds()*D,"ms")};return function(m,f,D){A=D,e=D().$utils(),D.duration=function(F,v){var S=D.locale();return C(F,{$l:S},v)},D.isDuration=g;var w=f.prototype.add,b=f.prototype.subtract;f.prototype.add=function(F,v){return g(F)?p(this,F,1):w.bind(this)(F,v)},f.prototype.subtract=function(F,v){return g(F)?p(this,F,-1):b.bind(this)(F,v)}}})});function iCA(A,e,t){let r=!0;while(r)r=!1,t.forEach(function(i){let u="^\\s*"+i+"\\s*$",a=new RegExp(u);if(A[0].match(a))e[i]=!0,A.shift(1),r=!0})}var kre,Dg,Fre,xre,Sre,f6,Kre,_cA,PSt,wre,rd="",ZcA="",VcA=void 0,jcA="",D6,y6,XcA,$cA,pO,w6="",ACA="",Lre,eCA,p6="",a7=!1,tCA=!1,rCA="sunday",fO="saturday",WcA=0,_St,WSt,qSt,zSt,ZSt,VSt,jSt,XSt,$St,ALt,eLt,tLt,rLt,iLt,uLt,aLt,Rre,nLt,oLt,sLt,lLt,gLt,cLt,CLt,BLt,Nre,ELt,dLt,ILt,Gre,hLt,qcA,Ure,Mre,hO=0,m6,QLt,pLt,zcA,QO,so,Tre,fLt,fm,mLt,bre,DLt,Yre,yLt,Hre,wLt,bLt,vLt,kLt,vre,FLt,hh,PcA=1e4,xLt,SLt,LLt,RLt,Jre;var Ore=P(()=>{ai();rr();ir();Nt();Pr();kre=yu(ey(),1),Dg=yu(uR(),1),Fre=yu(fre(),1),xre=yu(mre(),1),Sre=yu(Dre(),1),f6=yu(uR(),1),Kre=yu(yre(),1),_cA=function(){var A=y(function(k,T,R,L){for(R=R||{},L=k.length;L--;R[k[L]]=T);return R},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],t=[1,26],r=[1,27],i=[1,28],u=[1,29],a=[1,30],n=[1,31],o=[1,32],s=[1,33],l=[1,34],g=[1,9],C=[1,10],B=[1,11],E=[1,12],d=[1,13],I=[1,14],h=[1,15],Q=[1,16],p=[1,19],m=[1,20],f=[1,21],D=[1,22],w=[1,23],b=[1,25],F=[1,35],v={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:y(function(T,R,L,M,U,Y,H){var J=Y.length-1;switch(U){case 1:return Y[J-1];case 2:this.$=[];break;case 3:Y[J-1].push(Y[J]),this.$=Y[J-1];break;case 4:case 5:this.$=Y[J];break;case 6:case 7:this.$=[];break;case 8:M.setWeekday("monday");break;case 9:M.setWeekday("tuesday");break;case 10:M.setWeekday("wednesday");break;case 11:M.setWeekday("thursday");break;case 12:M.setWeekday("friday");break;case 13:M.setWeekday("saturday");break;case 14:M.setWeekday("sunday");break;case 15:M.setWeekend("friday");break;case 16:M.setWeekend("saturday");break;case 17:M.setDateFormat(Y[J].substr(11)),this.$=Y[J].substr(11);break;case 18:M.enableInclusiveEndDates(),this.$=Y[J].substr(18);break;case 19:M.TopAxis(),this.$=Y[J].substr(8);break;case 20:M.setAxisFormat(Y[J].substr(11)),this.$=Y[J].substr(11);break;case 21:M.setTickInterval(Y[J].substr(13)),this.$=Y[J].substr(13);break;case 22:M.setExcludes(Y[J].substr(9)),this.$=Y[J].substr(9);break;case 23:M.setIncludes(Y[J].substr(9)),this.$=Y[J].substr(9);break;case 24:M.setTodayMarker(Y[J].substr(12)),this.$=Y[J].substr(12);break;case 27:M.setDiagramTitle(Y[J].substr(6)),this.$=Y[J].substr(6);break;case 28:this.$=Y[J].trim(),M.setAccTitle(this.$);break;case 29:case 30:this.$=Y[J].trim(),M.setAccDescription(this.$);break;case 31:M.addSection(Y[J].substr(8)),this.$=Y[J].substr(8);break;case 33:M.addTask(Y[J-1],Y[J]),this.$="task";break;case 34:this.$=Y[J-1],M.setClickEvent(Y[J-1],Y[J],null);break;case 35:this.$=Y[J-2],M.setClickEvent(Y[J-2],Y[J-1],Y[J]);break;case 36:this.$=Y[J-2],M.setClickEvent(Y[J-2],Y[J-1],null),M.setLink(Y[J-2],Y[J]);break;case 37:this.$=Y[J-3],M.setClickEvent(Y[J-3],Y[J-2],Y[J-1]),M.setLink(Y[J-3],Y[J]);break;case 38:this.$=Y[J-2],M.setClickEvent(Y[J-2],Y[J],null),M.setLink(Y[J-2],Y[J-1]);break;case 39:this.$=Y[J-3],M.setClickEvent(Y[J-3],Y[J-1],Y[J]),M.setLink(Y[J-3],Y[J-2]);break;case 40:this.$=Y[J-1],M.setLink(Y[J-1],Y[J]);break;case 41:case 47:this.$=Y[J-1]+" "+Y[J];break;case 42:case 43:case 45:this.$=Y[J-2]+" "+Y[J-1]+" "+Y[J];break;case 44:case 46:this.$=Y[J-3]+" "+Y[J-2]+" "+Y[J-1]+" "+Y[J];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},A(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:t,13:r,14:i,15:u,16:a,17:n,18:o,19:18,20:s,21:l,22:g,23:C,24:B,25:E,26:d,27:I,28:h,29:Q,30:p,31:m,33:f,35:D,36:w,37:24,38:b,40:F},A(e,[2,7],{1:[2,1]}),A(e,[2,3]),{9:36,11:17,12:t,13:r,14:i,15:u,16:a,17:n,18:o,19:18,20:s,21:l,22:g,23:C,24:B,25:E,26:d,27:I,28:h,29:Q,30:p,31:m,33:f,35:D,36:w,37:24,38:b,40:F},A(e,[2,5]),A(e,[2,6]),A(e,[2,17]),A(e,[2,18]),A(e,[2,19]),A(e,[2,20]),A(e,[2,21]),A(e,[2,22]),A(e,[2,23]),A(e,[2,24]),A(e,[2,25]),A(e,[2,26]),A(e,[2,27]),{32:[1,37]},{34:[1,38]},A(e,[2,30]),A(e,[2,31]),A(e,[2,32]),{39:[1,39]},A(e,[2,8]),A(e,[2,9]),A(e,[2,10]),A(e,[2,11]),A(e,[2,12]),A(e,[2,13]),A(e,[2,14]),A(e,[2,15]),A(e,[2,16]),{41:[1,40],43:[1,41]},A(e,[2,4]),A(e,[2,28]),A(e,[2,29]),A(e,[2,33]),A(e,[2,34],{42:[1,42],43:[1,43]}),A(e,[2,40],{41:[1,44]}),A(e,[2,35],{43:[1,45]}),A(e,[2,36]),A(e,[2,38],{42:[1,46]}),A(e,[2,37]),A(e,[2,39])],defaultActions:{},parseError:y(function(T,R){if(R.recoverable)this.trace(T);else{var L=Error(T);throw L.hash=R,L}},"parseError"),parse:y(function(T){var R=this,L=[0],M=[],U=[null],Y=[],H=this.table,J="",K=0,O=0,_=0,z=2,j=1,q=Y.slice.call(arguments,1),CA=Object.create(this.lexer),tA={yy:{}};for(var lA in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,lA))tA.yy[lA]=this.yy[lA];if(CA.setInput(T,tA.yy),tA.yy.lexer=CA,tA.yy.parser=this,typeof CA.yylloc>"u")CA.yylloc={};var gA=CA.yylloc;Y.push(gA);var aA=CA.options&&CA.options.ranges;if(typeof tA.yy.parseError==="function")this.parseError=tA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function RA(SA){L.length=L.length-2*SA,U.length=U.length-SA,Y.length=Y.length-SA}y(RA,"popStack");function wA(){var SA=M.pop()||CA.lex()||j;if(typeof SA!=="number"){if(SA instanceof Array)M=SA,SA=M.pop();SA=R.symbols_[SA]||SA}return SA}y(wA,"lex");var JA,TA,qA,BA,bA,FA,IA={},nA,eA,EA,mA;while(!0){if(qA=L[L.length-1],this.defaultActions[qA])BA=this.defaultActions[qA];else{if(JA===null||typeof JA>"u")JA=wA();BA=H[qA]&&H[qA][JA]}if(typeof BA>"u"||!BA.length||!BA[0]){var kA="";mA=[];for(nA in H[qA])if(this.terminals_[nA]&&nA>z)mA.push("'"+this.terminals_[nA]+"'");if(CA.showPosition)kA="Parse error on line "+(K+1)+`:
|
||
`+CA.showPosition()+`
|
||
Expecting `+mA.join(", ")+", got '"+(this.terminals_[JA]||JA)+"'";else kA="Parse error on line "+(K+1)+": Unexpected "+(JA==j?"end of input":"'"+(this.terminals_[JA]||JA)+"'");this.parseError(kA,{text:CA.match,token:this.terminals_[JA]||JA,line:CA.yylineno,loc:gA,expected:mA})}if(BA[0]instanceof Array&&BA.length>1)throw Error("Parse Error: multiple actions possible at state: "+qA+", token: "+JA);switch(BA[0]){case 1:if(L.push(JA),U.push(CA.yytext),Y.push(CA.yylloc),L.push(BA[1]),JA=null,!TA){if(O=CA.yyleng,J=CA.yytext,K=CA.yylineno,gA=CA.yylloc,_>0)_--}else JA=TA,TA=null;break;case 2:if(eA=this.productions_[BA[1]][1],IA.$=U[U.length-eA],IA._$={first_line:Y[Y.length-(eA||1)].first_line,last_line:Y[Y.length-1].last_line,first_column:Y[Y.length-(eA||1)].first_column,last_column:Y[Y.length-1].last_column},aA)IA._$.range=[Y[Y.length-(eA||1)].range[0],Y[Y.length-1].range[1]];if(FA=this.performAction.apply(IA,[J,O,K,tA.yy,BA[1],U,Y].concat(q)),typeof FA<"u")return FA;if(eA)L=L.slice(0,-1*eA*2),U=U.slice(0,-1*eA),Y=Y.slice(0,-1*eA);L.push(this.productions_[BA[1]][0]),U.push(IA.$),Y.push(IA._$),EA=H[L[L.length-2]][L[L.length-1]],L.push(EA);break;case 3:return!0}}return!0},"parse")},S=function(){var k={EOF:1,parseError:y(function(R,L){if(this.yy.parser)this.yy.parser.parseError(R,L);else throw Error(R)},"parseError"),setInput:y(function(T,R){if(this.yy=R||this.yy||{},this._input=T,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var T=this._input[0];this.yytext+=T,this.yyleng++,this.offset++,this.match+=T,this.matched+=T;var R=T.match(/(?:\r\n?|\n).*/g);if(R)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),T},"input"),unput:y(function(T){var R=T.length,L=T.split(/(?:\r\n?|\n)/g);this._input=T+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-R),this.offset-=R;var M=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),L.length-1)this.yylineno-=L.length-1;var U=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:L?(L.length===M.length?this.yylloc.first_column:0)+M[M.length-L.length].length-L[0].length:this.yylloc.first_column-R},this.options.ranges)this.yylloc.range=[U[0],U[0]+this.yyleng-R];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(T){this.unput(this.match.slice(T))},"less"),pastInput:y(function(){var T=this.matched.substr(0,this.matched.length-this.match.length);return(T.length>20?"...":"")+T.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var T=this.match;if(T.length<20)T+=this._input.substr(0,20-T.length);return(T.substr(0,20)+(T.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var T=this.pastInput(),R=Array(T.length+1).join("-");return T+this.upcomingInput()+`
|
||
`+R+"^"},"showPosition"),test_match:y(function(T,R){var L,M,U;if(this.options.backtrack_lexer){if(U={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)U.yylloc.range=this.yylloc.range.slice(0)}if(M=T[0].match(/(?:\r\n?|\n).*/g),M)this.yylineno+=M.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:M?M[M.length-1].length-M[M.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+T[0].length},this.yytext+=T[0],this.match+=T[0],this.matches=T,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(T[0].length),this.matched+=T[0],L=this.performAction.call(this,this.yy,this,R,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(L)return L;else if(this._backtrack){for(var Y in U)this[Y]=U[Y];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var T,R,L,M;if(!this._more)this.yytext="",this.match="";var U=this._currentRules();for(var Y=0;Y<U.length;Y++)if(L=this._input.match(this.rules[U[Y]]),L&&(!R||L[0].length>R[0].length)){if(R=L,M=Y,this.options.backtrack_lexer)if(T=this.test_match(L,U[Y]),T!==!1)return T;else if(this._backtrack){R=!1;continue}else return!1;else if(!this.options.flex)break}if(R){if(T=this.test_match(R,U[M]),T!==!1)return T;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var R=this.next();if(R)return R;else return this.lex()},"lex"),begin:y(function(R){this.conditionStack.push(R)},"begin"),popState:y(function(){var R=this.conditionStack.length-1;if(R>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(R){if(R=this.conditionStack.length-1-Math.abs(R||0),R>=0)return this.conditionStack[R];else return"INITIAL"},"topState"),pushState:y(function(R){this.begin(R)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(R,L,M,U){var Y=U;switch(M){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return k}();v.lexer=S;function x(){this.yy={}}return y(x,"Parser"),x.prototype=v,v.Parser=x,new x}();_cA.parser=_cA;PSt=_cA;Dg.default.extend(Fre.default);Dg.default.extend(xre.default);Dg.default.extend(Sre.default);wre={friday:5,saturday:6},D6=[],y6=[],XcA=new Map,$cA=[],pO=[],Lre=["active","done","crit","milestone","vert"],eCA=[],_St=y(function(){$cA=[],pO=[],w6="",eCA=[],hO=0,zcA=void 0,QO=void 0,so=[],rd="",ZcA="",ACA="",VcA=void 0,jcA="",D6=[],y6=[],a7=!1,tCA=!1,WcA=0,XcA=new Map,p6="",sr(),rCA="sunday",fO="saturday"},"clear"),WSt=y(function(A){p6=A},"setDiagramId"),qSt=y(function(A){ZcA=A},"setAxisFormat"),zSt=y(function(){return ZcA},"getAxisFormat"),ZSt=y(function(A){VcA=A},"setTickInterval"),VSt=y(function(){return VcA},"getTickInterval"),jSt=y(function(A){jcA=A},"setTodayMarker"),XSt=y(function(){return jcA},"getTodayMarker"),$St=y(function(A){rd=A},"setDateFormat"),ALt=y(function(){a7=!0},"enableInclusiveEndDates"),eLt=y(function(){return a7},"endDatesAreInclusive"),tLt=y(function(){tCA=!0},"enableTopAxis"),rLt=y(function(){return tCA},"topAxisEnabled"),iLt=y(function(A){ACA=A},"setDisplayMode"),uLt=y(function(){return ACA},"getDisplayMode"),aLt=y(function(){return rd},"getDateFormat"),Rre=y((A,e)=>{let t=e.toLowerCase().split(/[\s,]+/).filter((r)=>r!=="");return[...new Set([...A,...t])]},"mergeTokens"),nLt=y(function(A){D6=Rre(D6,A)},"setIncludes"),oLt=y(function(){return D6},"getIncludes"),sLt=y(function(A){y6=Rre(y6,A)},"setExcludes"),lLt=y(function(){return y6},"getExcludes"),gLt=y(function(){return XcA},"getLinks"),cLt=y(function(A){w6=A,$cA.push(A)},"addSection"),CLt=y(function(){return $cA},"getSections"),BLt=y(function(){let A=bre(),e=10,t=0;while(!A&&t<e)A=bre(),t++;return pO=so,pO},"getTasks"),Nre=y(function(A,e,t,r){let i=A.format(e.trim()),u=A.format("YYYY-MM-DD");if(r.includes(i)||r.includes(u))return!1;if(t.includes("weekends")&&(A.isoWeekday()===wre[fO]||A.isoWeekday()===wre[fO]+1))return!0;if(t.includes(A.format("dddd").toLowerCase()))return!0;return t.includes(i)||t.includes(u)},"isInvalidDate"),ELt=y(function(A){rCA=A},"setWeekday"),dLt=y(function(){return rCA},"getWeekday"),ILt=y(function(A){fO=A},"setWeekend"),Gre=y(function(A,e,t,r){if(!t.length||A.manualEndTime)return;let i;if(A.startTime instanceof Date)i=Dg.default(A.startTime);else i=Dg.default(A.startTime,e,!0);i=i.add(1,"d");let u;if(A.endTime instanceof Date)u=Dg.default(A.endTime);else u=Dg.default(A.endTime,e,!0);let[a,n]=hLt(i,u,e,t,r);A.endTime=a.toDate(),A.renderEndTime=n},"checkTaskDates"),hLt=y(function(A,e,t,r,i){let u=!1,a=null,n=e.add(1e4,"d");while(A<=e){if(!u)a=e.toDate();if(u=Nre(A,t,r,i),u){if(e=e.add(1,"d"),e>n)throw Error("Failed to find a valid date that was not excluded by `excludes` after 10,000 iterations.")}A=A.add(1,"d")}return[e,a]},"fixTaskDates"),qcA=y(function(A,e,t){if(t=t.trim(),y((n)=>{let o=n.trim();return o==="x"||o==="X"},"isTimestampFormat")(e)&&/^\d+$/.test(t))return new Date(Number(t));let u=/^after\s+(?<ids>[\d\w- ]+)/.exec(t);if(u!==null){let n=null;for(let s of u.groups.ids.split(" ")){let l=fm(s);if(l!==void 0&&(!n||l.endTime>n.endTime))n=l}if(n)return n.endTime;let o=new Date;return o.setHours(0,0,0,0),o}let a=Dg.default(t,e.trim(),!0);if(a.isValid())return a.toDate();else{sA.debug("Invalid date:"+t),sA.debug("With date format:"+e.trim());let n=new Date(t);if(n===void 0||isNaN(n.getTime())||n.getFullYear()<-1e4||n.getFullYear()>1e4)throw Error("Invalid date:"+t);return n}},"getStartDate"),Ure=y(function(A){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(A.trim());if(e!==null)return[Number.parseFloat(e[1]),e[2]];return[NaN,"ms"]},"parseDuration"),Mre=y(function(A,e,t,r=!1){t=t.trim();let u=/^until\s+(?<ids>[\d\w- ]+)/.exec(t);if(u!==null){let l=null;for(let C of u.groups.ids.split(" ")){let B=fm(C);if(B!==void 0&&(!l||B.startTime<l.startTime))l=B}if(l)return l.startTime;let g=new Date;return g.setHours(0,0,0,0),g}let a=Dg.default(t,e.trim(),!0);if(a.isValid()){if(r)a=a.add(1,"d");return a.toDate()}let n=Dg.default(A),[o,s]=Ure(t);if(!Number.isNaN(o)){let l=n.add(o,s);if(l.isValid())n=l}return n.toDate()},"getEndDate"),m6=y(function(A){if(A===void 0)return hO=hO+1,"task"+hO;return A},"parseId"),QLt=y(function(A,e){let t;if(e.substr(0,1)===":")t=e.substr(1,e.length);else t=e;let r=t.split(","),i={};iCA(r,i,Lre);for(let a=0;a<r.length;a++)r[a]=r[a].trim();let u="";switch(r.length){case 1:i.id=m6(),i.startTime=A.endTime,u=r[0];break;case 2:i.id=m6(),i.startTime=qcA(void 0,rd,r[0]),u=r[1];break;case 3:i.id=m6(r[0]),i.startTime=qcA(void 0,rd,r[1]),u=r[2];break;default:}if(u)i.endTime=Mre(i.startTime,rd,u,a7),i.manualEndTime=Dg.default(u,"YYYY-MM-DD",!0).isValid(),Gre(i,rd,y6,D6);return i},"compileData"),pLt=y(function(A,e){let t;if(e.substr(0,1)===":")t=e.substr(1,e.length);else t=e;let r=t.split(","),i={};iCA(r,i,Lre);for(let u=0;u<r.length;u++)r[u]=r[u].trim();switch(r.length){case 1:i.id=m6(),i.startTime={type:"prevTaskEnd",id:A},i.endTime={data:r[0]};break;case 2:i.id=m6(),i.startTime={type:"getStartDate",startData:r[0]},i.endTime={data:r[1]};break;case 3:i.id=m6(r[0]),i.startTime={type:"getStartDate",startData:r[1]},i.endTime={data:r[2]};break;default:}return i},"parseData"),so=[],Tre={},fLt=y(function(A,e){let t={section:w6,type:w6,processed:!1,manualEndTime:!1,renderEndTime:null,raw:{data:e},task:A,classes:[]},r=pLt(QO,e);if(t.raw.startTime=r.startTime,t.raw.endTime=r.endTime,t.id=r.id,t.prevTaskId=QO,t.active=r.active,t.done=r.done,t.crit=r.crit,t.milestone=r.milestone,t.vert=r.vert,t.vert)t.order=-1;else t.order=WcA,WcA++;let i=so.push(t);QO=t.id,Tre[t.id]=i-1},"addTask"),fm=y(function(A){let e=Tre[A];return so[e]},"findTaskById"),mLt=y(function(A,e){let t={section:w6,type:w6,description:A,task:A,classes:[]},r=QLt(zcA,e);t.startTime=r.startTime,t.endTime=r.endTime,t.id=r.id,t.active=r.active,t.done=r.done,t.crit=r.crit,t.milestone=r.milestone,t.vert=r.vert,zcA=t,pO.push(t)},"addTaskOrg"),bre=y(function(){let A=y(function(t){let r=so[t],i="";switch(so[t].raw.startTime.type){case"prevTaskEnd":{let u=fm(r.prevTaskId);r.startTime=u.endTime;break}case"getStartDate":if(i=qcA(void 0,rd,so[t].raw.startTime.startData),i)so[t].startTime=i;break}if(so[t].startTime){if(so[t].endTime=Mre(so[t].startTime,rd,so[t].raw.endTime.data,a7),so[t].endTime)so[t].processed=!0,so[t].manualEndTime=Dg.default(so[t].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),Gre(so[t],rd,y6,D6)}return so[t].processed},"compileTask"),e=!0;for(let[t,r]of so.entries())A(t),e=e&&r.processed;return e},"compileTasks"),DLt=y(function(A,e){let t=e;if(OA().securityLevel!=="loose")t=kre.sanitizeUrl(e);A.split(",").forEach(function(r){if(fm(r)!==void 0)Hre(r,()=>{window.open(t,"_self")}),XcA.set(r,t)}),Yre(A,"clickable")},"setLink"),Yre=y(function(A,e){A.split(",").forEach(function(t){let r=fm(t);if(r!==void 0)r.classes.push(e)})},"setClass"),yLt=y(function(A,e,t){if(OA().securityLevel!=="loose")return;if(e===void 0)return;let r=[];if(typeof t==="string"){r=t.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u<r.length;u++){let a=r[u].trim();if(a.startsWith('"')&&a.endsWith('"'))a=a.substr(1,a.length-2);r[u]=a}}if(r.length===0)r.push(A);if(fm(A)!==void 0)Hre(A,()=>{Jt.runFunc(e,...r)})},"setClickFun"),Hre=y(function(A,e){eCA.push(function(){let t=p6?`${p6}-${A}`:A,r=document.querySelector(`[id="${t}"]`);if(r!==null)r.addEventListener("click",function(){e()})},function(){let t=p6?`${p6}-${A}`:A,r=document.querySelector(`[id="${t}-text"]`);if(r!==null)r.addEventListener("click",function(){e()})})},"pushFun"),wLt=y(function(A,e,t){A.split(",").forEach(function(r){yLt(r,e,t)}),Yre(A,"clickable")},"setClickEvent"),bLt=y(function(A){eCA.forEach(function(e){e(A)})},"bindFunctions"),vLt={getConfig:y(()=>OA().gantt,"getConfig"),clear:_St,setDateFormat:$St,getDateFormat:aLt,enableInclusiveEndDates:ALt,endDatesAreInclusive:eLt,enableTopAxis:tLt,topAxisEnabled:rLt,setAxisFormat:qSt,getAxisFormat:zSt,setTickInterval:ZSt,getTickInterval:VSt,setTodayMarker:jSt,getTodayMarker:XSt,setAccTitle:Dr,getAccTitle:vr,setDiagramTitle:Mr,getDiagramTitle:xr,setDiagramId:WSt,setDisplayMode:iLt,getDisplayMode:uLt,setAccDescription:kr,getAccDescription:Fr,addSection:cLt,getSections:CLt,getTasks:BLt,addTask:fLt,findTaskById:fm,addTaskOrg:mLt,setIncludes:nLt,getIncludes:oLt,setExcludes:sLt,getExcludes:lLt,setClickEvent:wLt,setLink:DLt,getLinks:gLt,bindFunctions:bLt,parseDuration:Ure,isInvalidDate:Nre,setWeekday:ELt,getWeekday:dLt,setWeekend:ILt};y(iCA,"getTaskTags");f6.default.extend(Kre.default);kLt=y(function(){sA.debug("Something is calling, setConf, remove the call")},"setConf"),vre={monday:FQ,tuesday:WN,wednesday:qN,thursday:lE,friday:zN,saturday:ZN,sunday:BC},FLt=y((A,e)=>{let t=[...A].map(()=>-1/0),r=[...A].sort((u,a)=>u.startTime-a.startTime||u.order-a.order),i=0;for(let u of r)for(let a=0;a<t.length;a++)if(u.startTime>=t[a]){if(t[a]=u.endTime,u.order=a+e,a>i)i=a;break}return i},"getMaxIntersections"),xLt=y(function(A,e,t,r){let i=OA().gantt;r.db.setDiagramId(e);let u=OA().securityLevel,a;if(u==="sandbox")a=Qe("#i"+e);let n=u==="sandbox"?Qe(a.nodes()[0].contentDocument.body):Qe("body"),o=u==="sandbox"?a.nodes()[0].contentDocument:document,s=o.getElementById(e);if(hh=s.parentElement.offsetWidth,hh===void 0)hh=1200;if(i.useWidth!==void 0)hh=i.useWidth;let l=r.db.getTasks(),g=l.filter((v)=>!v.vert),C=[];for(let v of g)C.push(v.type);C=F(C);let B={},E=2*i.topPadding;if(r.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let v={};for(let x of g)if(v[x.section]===void 0)v[x.section]=[x];else v[x.section].push(x);let S=0;for(let x of Object.keys(v)){let k=FLt(v[x],S)+1;S+=k,E+=k*(i.barHeight+i.barGap),B[x]=k}}else{E+=g.length*(i.barHeight+i.barGap);for(let v of C)B[v]=g.filter((S)=>S.type===v).length}s.setAttribute("viewBox","0 0 "+hh+" "+E);let d=n.select(`[id="${e}"]`),I=XN().domain([rN(l,function(v){return v.startTime}),tN(l,function(v){return v.endTime})]).rangeRound([0,hh-i.leftPadding-i.rightPadding]);function h(v,S){let x=v.startTime,k=S.startTime,T=0;if(x>k)T=1;else if(x<k)T=-1;return T}y(h,"taskCompare"),l.sort(h),Q(l,hh,E),jr(d,E,hh,i.useMaxWidth),d.append("text").text(r.db.getDiagramTitle()).attr("x",hh/2).attr("y",i.titleTopMargin).attr("class","titleText");function Q(v,S,x){let k=i.barHeight,T=k+i.barGap,{topPadding:R,leftPadding:L}=i,M=CC().domain([0,C.length]).range(["#00B9FA","#F95002"]).interpolate(NX);m(T,R,L,S,x,v,r.db.getExcludes(),r.db.getIncludes()),D(L,R,S,x),p(v,T,R,L,k,M,S,x),w(T,R,L,k,M),b(L,R,S,x)}y(Q,"makeGantt");function p(v,S,x,k,T,R,L){v.sort((O,_)=>O.vert===_.vert?0:O.vert?1:-1);let M=v.filter((O)=>!O.vert),Y=[...new Set(M.map((O)=>O.order))].map((O)=>M.find((_)=>_.order===O));d.append("g").selectAll("rect").data(Y).enter().append("rect").attr("x",0).attr("y",function(O,_){return _=O.order,_*S+x-2}).attr("width",function(){return L-i.rightPadding/2}).attr("height",S).attr("class",function(O){for(let[_,z]of C.entries())if(O.type===z)return"section section"+_%i.numberSectionStyles;return"section section0"}).enter();let H=d.append("g").selectAll("rect").data(v).enter(),J=r.db.getLinks();if(H.append("rect").attr("id",function(O){return e+"-"+O.id}).attr("rx",3).attr("ry",3).attr("x",function(O){if(O.milestone)return I(O.startTime)+k+0.5*(I(O.endTime)-I(O.startTime))-0.5*T;return I(O.startTime)+k}).attr("y",function(O,_){if(_=O.order,O.vert)return i.gridLineStartPadding;return _*S+x}).attr("width",function(O){if(O.milestone)return T;if(O.vert)return 0.08*T;return I(O.renderEndTime||O.endTime)-I(O.startTime)}).attr("height",function(O){if(O.vert)return M.length*(i.barHeight+i.barGap)+i.barHeight*2;return T}).attr("transform-origin",function(O,_){return _=O.order,(I(O.startTime)+k+0.5*(I(O.endTime)-I(O.startTime))).toString()+"px "+(_*S+x+0.5*T).toString()+"px"}).attr("class",function(O){let z="";if(O.classes.length>0)z=O.classes.join(" ");let j=0;for(let[CA,tA]of C.entries())if(O.type===tA)j=CA%i.numberSectionStyles;let q="";if(O.active)if(O.crit)q+=" activeCrit";else q=" active";else if(O.done)if(O.crit)q=" doneCrit";else q=" done";else if(O.crit)q+=" crit";if(q.length===0)q=" task";if(O.milestone)q=" milestone "+q;if(O.vert)q=" vert "+q;return q+=j,q+=" "+z,"task"+q}),H.append("text").attr("id",function(O){return e+"-"+O.id+"-text"}).text(function(O){return O.task}).attr("font-size",i.fontSize).attr("x",function(O){let _=I(O.startTime),z=I(O.renderEndTime||O.endTime);if(O.milestone)_+=0.5*(I(O.endTime)-I(O.startTime))-0.5*T,z=_+T;if(O.vert)return I(O.startTime)+k;let j=this.getBBox().width;if(j>z-_)if(z+j+1.5*i.leftPadding>L)return _+k-5;else return z+k+5;else return(z-_)/2+_+k}).attr("y",function(O,_){if(O.vert)return i.gridLineStartPadding+M.length*(i.barHeight+i.barGap)+60;return _=O.order,_*S+i.barHeight/2+(i.fontSize/2-2)+x}).attr("text-height",T).attr("class",function(O){let _=I(O.startTime),z=I(O.endTime);if(O.milestone)z=_+T;let j=this.getBBox().width,q="";if(O.classes.length>0)q=O.classes.join(" ");let CA=0;for(let[lA,gA]of C.entries())if(O.type===gA)CA=lA%i.numberSectionStyles;let tA="";if(O.active)if(O.crit)tA="activeCritText"+CA;else tA="activeText"+CA;if(O.done)if(O.crit)tA=tA+" doneCritText"+CA;else tA=tA+" doneText"+CA;else if(O.crit)tA=tA+" critText"+CA;if(O.milestone)tA+=" milestoneText";if(O.vert)tA+=" vertText";if(j>z-_)if(z+j+1.5*i.leftPadding>L)return q+" taskTextOutsideLeft taskTextOutside"+CA+" "+tA;else return q+" taskTextOutsideRight taskTextOutside"+CA+" "+tA+" width-"+j;else return q+" taskText taskText"+CA+" "+tA+" width-"+j}),OA().securityLevel==="sandbox"){let O;O=Qe("#i"+e);let _=O.nodes()[0].contentDocument;H.filter(function(z){return J.has(z.id)}).each(function(z){var j=_.querySelector("#"+CSS.escape(e+"-"+z.id)),q=_.querySelector("#"+CSS.escape(e+"-"+z.id+"-text"));let CA=j.parentNode;var tA=_.createElement("a");tA.setAttribute("xlink:href",J.get(z.id)),tA.setAttribute("target","_top"),CA.appendChild(tA),tA.appendChild(j),tA.appendChild(q)})}}y(p,"drawRects");function m(v,S,x,k,T,R,L,M){if(L.length===0&&M.length===0)return;let U,Y;for(let{startTime:z,endTime:j}of R){if(U===void 0||z<U)U=z;if(Y===void 0||j>Y)Y=j}if(!U||!Y)return;if(f6.default(Y).diff(f6.default(U),"year")>5){sA.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let H=r.db.getDateFormat(),J=[],K=null,O=f6.default(U);while(O.valueOf()<=Y){if(r.db.isInvalidDate(O,H,L,M))if(!K)K={start:O,end:O};else K.end=O;else if(K)J.push(K),K=null;O=O.add(1,"d")}d.append("g").selectAll("rect").data(J).enter().append("rect").attr("id",(z)=>e+"-exclude-"+z.start.format("YYYY-MM-DD")).attr("x",(z)=>I(z.start.startOf("day"))+x).attr("y",i.gridLineStartPadding).attr("width",(z)=>I(z.end.endOf("day"))-I(z.start.startOf("day"))).attr("height",T-S-i.gridLineStartPadding).attr("transform-origin",function(z,j){return(I(z.start)+x+0.5*(I(z.end)-I(z.start))).toString()+"px "+(j*v+0.5*T).toString()+"px"}).attr("class","exclude-range")}y(m,"drawExcludeDays");function f(v,S,x,k){if(x<=0||v>S)return 1/0;let T=S-v,R=f6.default.duration({[k??"day"]:x}).asMilliseconds();if(R<=0)return 1/0;return Math.ceil(T/R)}y(f,"getEstimatedTickCount");function D(v,S,x,k){let T=r.db.getDateFormat(),R=r.db.getAxisFormat(),L;if(R)L=R;else if(T==="D")L="%d";else L=i.axisFormat??"%Y-%m-%d";let M=fj(I).tickSize(-k+S+i.gridLineStartPadding).tickFormat(Ef(L)),Y=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(r.db.getTickInterval()||i.tickInterval);if(Y!==null){let H=parseInt(Y[1],10);if(isNaN(H)||H<=0)sA.warn(`Invalid tick interval value: "${Y[1]}". Skipping custom tick interval.`);else{let J=Y[2],K=r.db.getWeekday()||i.weekday,O=I.domain(),_=O[0],z=O[1],j=f(_,z,H,J);if(j>PcA)sA.warn(`The tick interval "${H}${J}" would generate ${j} ticks, which exceeds the maximum allowed (${PcA}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(J){case"millisecond":M.ticks(oE.every(H));break;case"second":M.ticks(tg.every(H));break;case"minute":M.ticks(dI.every(H));break;case"hour":M.ticks(II.every(H));break;case"day":M.ticks(jg.every(H));break;case"week":M.ticks(vre[K].every(H));break;case"month":M.ticks(hI.every(H));break}}}if(d.append("g").attr("class","grid").attr("transform","translate("+v+", "+(k-50)+")").call(M).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),r.db.topAxisEnabled()||i.topAxis){let H=pj(I).tickSize(-k+S+i.gridLineStartPadding).tickFormat(Ef(L));if(Y!==null){let J=parseInt(Y[1],10);if(isNaN(J)||J<=0)sA.warn(`Invalid tick interval value: "${Y[1]}". Skipping custom tick interval.`);else{let K=Y[2],O=r.db.getWeekday()||i.weekday,_=I.domain(),z=_[0],j=_[1];if(f(z,j,J,K)<=PcA)switch(K){case"millisecond":H.ticks(oE.every(J));break;case"second":H.ticks(tg.every(J));break;case"minute":H.ticks(dI.every(J));break;case"hour":H.ticks(II.every(J));break;case"day":H.ticks(jg.every(J));break;case"week":H.ticks(vre[O].every(J));break;case"month":H.ticks(hI.every(J));break}}}d.append("g").attr("class","grid").attr("transform","translate("+v+", "+S+")").call(H).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}y(D,"makeGrid");function w(v,S){let x=0,k=Object.keys(B).map((T)=>[T,B[T]]);d.append("g").selectAll("text").data(k).enter().append(function(T){let R=T[0].split(_e.lineBreakRegex),L=-(R.length-1)/2,M=o.createElementNS("http://www.w3.org/2000/svg","text");M.setAttribute("dy",L+"em");for(let[U,Y]of R.entries()){let H=o.createElementNS("http://www.w3.org/2000/svg","tspan");if(H.setAttribute("alignment-baseline","central"),H.setAttribute("x","10"),U>0)H.setAttribute("dy","1em");H.textContent=Y,M.appendChild(H)}return M}).attr("x",10).attr("y",function(T,R){if(R>0)for(let L=0;L<R;L++)return x+=k[R-1][1],T[1]*v/2+x*v+S;else return T[1]*v/2+S}).attr("font-size",i.sectionFontSize).attr("class",function(T){for(let[R,L]of C.entries())if(T[0]===L)return"sectionTitle sectionTitle"+R%i.numberSectionStyles;return"sectionTitle"})}y(w,"vertLabels");function b(v,S,x,k){let T=r.db.getTodayMarker();if(T==="off")return;let R=d.append("g").attr("class","today"),L=new Date,M=R.append("line");if(M.attr("x1",I(L)+v).attr("x2",I(L)+v).attr("y1",i.titleTopMargin).attr("y2",k-i.titleTopMargin).attr("class","today"),T!=="")M.attr("style",T.replace(/,/g,";"))}y(b,"drawToday");function F(v){let S={},x=[];for(let k=0,T=v.length;k<T;++k)if(!Object.prototype.hasOwnProperty.call(S,v[k]))S[v[k]]=!0,x.push(v[k]);return x}y(F,"checkUnique")},"draw"),SLt={setConf:kLt,draw:xLt},LLt=y((A)=>`
|
||
.mermaid-main-font {
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
.exclude-range {
|
||
fill: ${A.excludeBkgColor};
|
||
}
|
||
|
||
.section {
|
||
stroke: none;
|
||
opacity: 0.2;
|
||
}
|
||
|
||
.section0 {
|
||
fill: ${A.sectionBkgColor};
|
||
}
|
||
|
||
.section2 {
|
||
fill: ${A.sectionBkgColor2};
|
||
}
|
||
|
||
.section1,
|
||
.section3 {
|
||
fill: ${A.altSectionBkgColor};
|
||
opacity: 0.2;
|
||
}
|
||
|
||
.sectionTitle0 {
|
||
fill: ${A.titleColor};
|
||
}
|
||
|
||
.sectionTitle1 {
|
||
fill: ${A.titleColor};
|
||
}
|
||
|
||
.sectionTitle2 {
|
||
fill: ${A.titleColor};
|
||
}
|
||
|
||
.sectionTitle3 {
|
||
fill: ${A.titleColor};
|
||
}
|
||
|
||
.sectionTitle {
|
||
text-anchor: start;
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
|
||
/* Grid and axis */
|
||
|
||
.grid .tick {
|
||
stroke: ${A.gridColor};
|
||
opacity: 0.8;
|
||
shape-rendering: crispEdges;
|
||
}
|
||
|
||
.grid .tick text {
|
||
font-family: ${A.fontFamily};
|
||
fill: ${A.textColor};
|
||
}
|
||
|
||
.grid path {
|
||
stroke-width: 0;
|
||
}
|
||
|
||
|
||
/* Today line */
|
||
|
||
.today {
|
||
fill: none;
|
||
stroke: ${A.todayLineColor};
|
||
stroke-width: 2px;
|
||
}
|
||
|
||
|
||
/* Task styling */
|
||
|
||
/* Default task */
|
||
|
||
.task {
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.taskText {
|
||
text-anchor: middle;
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
.taskTextOutsideRight {
|
||
fill: ${A.taskTextDarkColor};
|
||
text-anchor: start;
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
.taskTextOutsideLeft {
|
||
fill: ${A.taskTextDarkColor};
|
||
text-anchor: end;
|
||
}
|
||
|
||
|
||
/* Special case clickable */
|
||
|
||
.task.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
.taskText.clickable {
|
||
cursor: pointer;
|
||
fill: ${A.taskTextClickableColor} !important;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.taskTextOutsideLeft.clickable {
|
||
cursor: pointer;
|
||
fill: ${A.taskTextClickableColor} !important;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.taskTextOutsideRight.clickable {
|
||
cursor: pointer;
|
||
fill: ${A.taskTextClickableColor} !important;
|
||
font-weight: bold;
|
||
}
|
||
|
||
|
||
/* Specific task settings for the sections*/
|
||
|
||
.taskText0,
|
||
.taskText1,
|
||
.taskText2,
|
||
.taskText3 {
|
||
fill: ${A.taskTextColor};
|
||
}
|
||
|
||
.task0,
|
||
.task1,
|
||
.task2,
|
||
.task3 {
|
||
fill: ${A.taskBkgColor};
|
||
stroke: ${A.taskBorderColor};
|
||
}
|
||
|
||
.taskTextOutside0,
|
||
.taskTextOutside2
|
||
{
|
||
fill: ${A.taskTextOutsideColor};
|
||
}
|
||
|
||
.taskTextOutside1,
|
||
.taskTextOutside3 {
|
||
fill: ${A.taskTextOutsideColor};
|
||
}
|
||
|
||
|
||
/* Active task */
|
||
|
||
.active0,
|
||
.active1,
|
||
.active2,
|
||
.active3 {
|
||
fill: ${A.activeTaskBkgColor};
|
||
stroke: ${A.activeTaskBorderColor};
|
||
}
|
||
|
||
.activeText0,
|
||
.activeText1,
|
||
.activeText2,
|
||
.activeText3 {
|
||
fill: ${A.taskTextDarkColor} !important;
|
||
}
|
||
|
||
|
||
/* Completed task */
|
||
|
||
.done0,
|
||
.done1,
|
||
.done2,
|
||
.done3 {
|
||
stroke: ${A.doneTaskBorderColor};
|
||
fill: ${A.doneTaskBkgColor};
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.doneText0,
|
||
.doneText1,
|
||
.doneText2,
|
||
.doneText3 {
|
||
fill: ${A.taskTextDarkColor} !important;
|
||
}
|
||
|
||
/* Done task text displayed outside the bar sits against the diagram background,
|
||
not against the done-task bar, so it must use the outside/contrast color. */
|
||
.doneText0.taskTextOutsideLeft,
|
||
.doneText0.taskTextOutsideRight,
|
||
.doneText1.taskTextOutsideLeft,
|
||
.doneText1.taskTextOutsideRight,
|
||
.doneText2.taskTextOutsideLeft,
|
||
.doneText2.taskTextOutsideRight,
|
||
.doneText3.taskTextOutsideLeft,
|
||
.doneText3.taskTextOutsideRight {
|
||
fill: ${A.taskTextOutsideColor} !important;
|
||
}
|
||
|
||
|
||
/* Tasks on the critical line */
|
||
|
||
.crit0,
|
||
.crit1,
|
||
.crit2,
|
||
.crit3 {
|
||
stroke: ${A.critBorderColor};
|
||
fill: ${A.critBkgColor};
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.activeCrit0,
|
||
.activeCrit1,
|
||
.activeCrit2,
|
||
.activeCrit3 {
|
||
stroke: ${A.critBorderColor};
|
||
fill: ${A.activeTaskBkgColor};
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.doneCrit0,
|
||
.doneCrit1,
|
||
.doneCrit2,
|
||
.doneCrit3 {
|
||
stroke: ${A.critBorderColor};
|
||
fill: ${A.doneTaskBkgColor};
|
||
stroke-width: 2;
|
||
cursor: pointer;
|
||
shape-rendering: crispEdges;
|
||
}
|
||
|
||
.milestone {
|
||
transform: rotate(45deg) scale(0.8,0.8);
|
||
}
|
||
|
||
.milestoneText {
|
||
font-style: italic;
|
||
}
|
||
.doneCritText0,
|
||
.doneCritText1,
|
||
.doneCritText2,
|
||
.doneCritText3 {
|
||
fill: ${A.taskTextDarkColor} !important;
|
||
}
|
||
|
||
/* Done-crit task text outside the bar — same reasoning as doneText above. */
|
||
.doneCritText0.taskTextOutsideLeft,
|
||
.doneCritText0.taskTextOutsideRight,
|
||
.doneCritText1.taskTextOutsideLeft,
|
||
.doneCritText1.taskTextOutsideRight,
|
||
.doneCritText2.taskTextOutsideLeft,
|
||
.doneCritText2.taskTextOutsideRight,
|
||
.doneCritText3.taskTextOutsideLeft,
|
||
.doneCritText3.taskTextOutsideRight {
|
||
fill: ${A.taskTextOutsideColor} !important;
|
||
}
|
||
|
||
.vert {
|
||
stroke: ${A.vertLineColor};
|
||
}
|
||
|
||
.vertText {
|
||
font-size: 15px;
|
||
text-anchor: middle;
|
||
fill: ${A.vertLineColor} !important;
|
||
}
|
||
|
||
.activeCritText0,
|
||
.activeCritText1,
|
||
.activeCritText2,
|
||
.activeCritText3 {
|
||
fill: ${A.taskTextDarkColor} !important;
|
||
}
|
||
|
||
.titleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${A.titleColor||A.textColor};
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
`,"getStyles"),RLt=LLt,Jre={parser:PSt,db:vLt,renderer:SLt,styles:RLt}});var NLt,GLt,ULt,MLt,TLt,YLt,Pre;var _re=P(()=>{cn();rr();ir();Nt();E0();NLt={parse:y(async(A)=>{let e=await Ma("info",A);sA.debug(e)},"parse")},GLt={version:"11.16.1"},ULt=y(()=>GLt.version,"getVersion"),MLt={getVersion:ULt},TLt=y((A,e,t)=>{sA.debug(`rendering info diagram
|
||
`+A);let r=zi(e);jr(r,100,400,!0),r.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${t}`)},"draw"),YLt={draw:TLt},Pre={parser:NLt,db:MLt,renderer:YLt}});var Wre,uCA,mO,aCA,HLt,KLt,JLt,OLt,PLt,_Lt,WLt,qre,qLt,zLt,ZLt,VLt,jLt,XLt,$Lt,zre;var Zre=P(()=>{ws();cn();ai();rr();ir();Nt();E0();Pr();Wre=ur.pie,uCA={sections:new Map,showData:!1,config:Wre},mO=uCA.sections,aCA=uCA.showData,HLt=structuredClone(Wre),KLt=y(()=>structuredClone(HLt),"getConfig"),JLt=y(()=>{mO=new Map,aCA=uCA.showData,sr()},"clear"),OLt=y(({label:A,value:e})=>{if(e<0)throw Error(`"${A}" has invalid value: ${e}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);if(!mO.has(A))mO.set(A,e),sA.debug(`added new section: ${A}, with value: ${e}`)},"addSection"),PLt=y(()=>mO,"getSections"),_Lt=y((A)=>{aCA=A},"setShowData"),WLt=y(()=>aCA,"getShowData"),qre={getConfig:KLt,clear:JLt,setDiagramTitle:Mr,getDiagramTitle:xr,setAccTitle:Dr,getAccTitle:vr,setAccDescription:kr,getAccDescription:Fr,addSection:OLt,getSections:PLt,setShowData:_Lt,getShowData:WLt},qLt=y((A,e)=>{hu(A,e),e.setShowData(A.showData),A.sections.map(e.addSection)},"populateDb"),zLt={parse:y(async(A)=>{let e=await Ma("pie",A);sA.debug(e),qLt(e,qre)},"parse")},ZLt=y((A)=>`
|
||
.pieCircle{
|
||
stroke: ${A.pieStrokeColor};
|
||
stroke-width : ${A.pieStrokeWidth};
|
||
opacity : ${A.pieOpacity};
|
||
}
|
||
.pieCircle.highlighted{
|
||
scale: 1.05;
|
||
opacity: 1;
|
||
}
|
||
.pieCircle.highlightedOnHover:hover{
|
||
transition-duration: 250ms;
|
||
scale: 1.05;
|
||
opacity: 1;
|
||
}
|
||
.pieOuterCircle{
|
||
stroke: ${A.pieOuterStrokeColor};
|
||
stroke-width: ${A.pieOuterStrokeWidth};
|
||
fill: none;
|
||
}
|
||
.pieTitleText {
|
||
text-anchor: middle;
|
||
font-size: ${A.pieTitleTextSize};
|
||
fill: ${A.pieTitleTextColor};
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
.slice {
|
||
font-family: ${A.fontFamily};
|
||
fill: ${A.pieSectionTextColor};
|
||
font-size:${A.pieSectionTextSize};
|
||
// fill: white;
|
||
}
|
||
.legend text {
|
||
fill: ${A.pieLegendTextColor};
|
||
font-family: ${A.fontFamily};
|
||
font-size: ${A.pieLegendTextSize};
|
||
}
|
||
`,"getStyles"),VLt=ZLt,jLt=y((A)=>{let e=[...A.values()].reduce((i,u)=>i+u,0),t=[...A.entries()].map(([i,u])=>({label:i,value:u})).filter((i)=>i.value/e*100>=1);return rG().value((i)=>i.value).sort(null)(t)},"createPieArcs"),XLt=y((A,e,t,r)=>{sA.debug(`rendering pie chart
|
||
`+A);let i=r.db,u=OA(),a=si(i.getConfig(),u.pie),n=40,o=18,s=4,l=450,g=l,C=zi(e),B=C.append("g");B.attr("transform","translate("+g/2+","+l/2+")");let{themeVariables:E}=u,[d]=al(E.pieOuterStrokeWidth);d??=2;let{legendPosition:I,textPosition:h}=a,Q=a.donutHole>0&&a.donutHole<=0.9?a.donutHole:0,p=Math.min(g,l)/2-n,m=IC().innerRadius(Q*p).outerRadius(p),f=IC().innerRadius(p*h).outerRadius(p*h),D=B.append("g");D.append("circle").attr("cx",0).attr("cy",0).attr("r",p+d/2).attr("class","pieOuterCircle");let w=i.getSections(),b=jLt(w),F=[E.pie1,E.pie2,E.pie3,E.pie4,E.pie5,E.pie6,E.pie7,E.pie8,E.pie9,E.pie10,E.pie11,E.pie12],v=0;w.forEach((q)=>{v+=q});let S=b.filter((q)=>(q.data.value/v*100).toFixed(0)!=="0"),x=eg(F).domain([...w.keys()]);D.selectAll("mySlices").data(S).enter().append("path").attr("d",m).attr("fill",(q)=>x(q.data.label)).attr("class",(q)=>{let CA="pieCircle";if(a.highlightSlice==="hover")CA+=" highlightedOnHover";else if(a.highlightSlice===q.data.label)CA+=" highlighted";return CA}),D.selectAll("mySlices").data(S).enter().append("text").text((q)=>(q.data.value/v*100).toFixed(0)+"%").attr("transform",(q)=>"translate("+f.centroid(q)+")").style("text-anchor","middle").attr("class","slice");let k=B.append("text").text(i.getDiagramTitle()).attr("x",0).attr("y",-(l-50)/2).attr("class","pieTitleText"),T=[...w.entries()].map(([q,CA])=>({label:q,value:CA})),R=B.selectAll(".legend").data(T).enter().append("g").attr("class","legend");R.append("rect").attr("width",o).attr("height",o).style("fill",(q)=>x(q.label)).style("stroke",(q)=>x(q.label)),R.append("text").attr("x",o+s).attr("y",o-s).text((q)=>{if(i.getShowData())return`${q.label} [${q.value}]`;return q.label});let L=Math.max(...R.selectAll("text").nodes().map((q)=>q?.getBoundingClientRect().width??0)),M=l,U=g+n,Y=o+s,H=T.length*Y;switch(I){case"center":R.attr("transform",(q,CA)=>{let tA=Y*T.length/2,lA=-L/2-(o+s),gA=CA*Y-tA;return"translate("+lA+","+gA+")"});break;case"top":M+=H,R.attr("transform",(q,CA)=>{let tA=p,lA=-L/2-(o+s),gA=CA*Y-tA;return`translate(${lA}, ${gA})`}),D.attr("transform",()=>`translate(0, ${H+Y})`);break;case"bottom":M+=H,R.attr("transform",(q,CA)=>{let tA=-p-Y,lA=-L/2-(o+s),gA=CA*Y-tA;return"translate("+lA+","+gA+")"});break;case"left":U+=o+s+L,R.attr("transform",(q,CA)=>{let tA=Y*T.length/2,lA=-p-(o+s),gA=CA*Y-tA;return"translate("+lA+","+gA+")"}),D.attr("transform",()=>`translate(${L+o+s}, 0)`);break;case"right":default:U+=o+s+L,R.attr("transform",(q,CA)=>{let tA=Y*T.length/2,lA=12*o,gA=CA*Y-tA;return"translate("+lA+","+gA+")"});break}let J=k.node()?.getBoundingClientRect().width??0,K=g/2-J/2,O=g/2+J/2,_=Math.min(0,K),j=Math.max(U,O)-_;C.attr("viewBox",`${_} 0 ${j} ${M}`),jr(C,M,j,a.useMaxWidth)},"draw"),$Lt={draw:XLt},zre={parser:zLt,db:qre,renderer:$Lt,styles:VLt}});function oCA(A){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(A)}function Vre(A){return!/^\d+$/.test(A)}function jre(A){return!/^\d+px$/.test(A)}function id(A){return or(A.trim(),OA())}function Xre(A){d0.setData({quadrant1Text:id(A.text)})}function $re(A){d0.setData({quadrant2Text:id(A.text)})}function Aie(A){d0.setData({quadrant3Text:id(A.text)})}function eie(A){d0.setData({quadrant4Text:id(A.text)})}function tie(A){d0.setData({xAxisLeftText:id(A.text)})}function rie(A){d0.setData({xAxisRightText:id(A.text)})}function iie(A){d0.setData({yAxisTopText:id(A.text)})}function uie(A){d0.setData({yAxisBottomText:id(A.text)})}function yO(A){let e={};for(let t of A){let[r,i]=t.trim().split(/\s*:\s*/);if(r==="radius"){if(Vre(i))throw new DO(r,i,"number");e.radius=parseInt(i)}else if(r==="color"){if(oCA(i))throw new DO(r,i,"hex code");e.color=i}else if(r==="stroke-color"){if(oCA(i))throw new DO(r,i,"hex code");e.strokeColor=i}else if(r==="stroke-width"){if(jre(i))throw new DO(r,i,"number of pixels (eg. 10px)");e.strokeWidth=i}else throw Error(`style named ${r} is not supported.`)}return e}function aie(A,e,t,r,i){let u=yO(i);d0.addPoints([{x:t,y:r,text:id(A.text),className:e,...u}])}function nie(A,e){d0.addClass(A,yO(e))}function oie(A){d0.setConfig({chartWidth:A})}function sie(A){d0.setConfig({chartHeight:A})}function lie(){let A=OA(),{themeVariables:e,quadrantChart:t}=A;if(t)d0.setConfig(t);return d0.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),d0.setData({titleText:xr()}),d0.build()}var nCA,ARt,Gs,eRt,DO,d0,tRt,rRt,iRt,uRt,gie;var cie=P(()=>{rr();ir();Nt();Pr();Pr();nCA=function(){var A=y(function(AA,DA,rA,KA){for(rA=rA||{},KA=AA.length;KA--;rA[AA[KA]]=DA);return rA},"o"),e=[1,3],t=[1,4],r=[1,5],i=[1,6],u=[1,7],a=[1,4,5,10,12,13,14,15,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],n=[1,4,5,10,12,13,14,15,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],o=[55,56,57],s=[2,36],l=[1,37],g=[1,36],C=[1,38],B=[1,35],E=[1,43],d=[1,41],I=[1,45],h=[1,14],Q=[1,23],p=[1,18],m=[1,19],f=[1,20],D=[1,21],w=[1,22],b=[1,24],F=[1,25],v=[1,26],S=[1,27],x=[1,28],k=[1,29],T=[1,32],R=[1,33],L=[1,34],M=[1,39],U=[1,40],Y=[1,42],H=[1,44],J=[1,63],K=[1,62],O=[4,5,8,10,12,13,14,15,18,44,47,49,55,56,57,63,64,65,66,67],_=[1,66],z=[1,67],j=[1,68],q=[1,69],CA=[1,70],tA=[1,71],lA=[1,72],gA=[1,73],aA=[1,74],RA=[1,75],wA=[1,76],JA=[1,77],TA=[4,5,6,7,8,9,10,11,12,13,14,15,18],qA=[1,91],BA=[1,92],bA=[1,93],FA=[1,100],IA=[1,94],nA=[1,97],eA=[1,95],EA=[1,96],mA=[1,98],kA=[1,99],SA=[1,103],YA=[10,55,56,57],dA=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],W={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:y(function(DA,rA,KA,_A,zA,WA,te){var ZA=WA.length-1;switch(zA){case 23:this.$=WA[ZA];break;case 24:this.$=WA[ZA-1]+""+WA[ZA];break;case 26:this.$=WA[ZA-1]+WA[ZA];break;case 27:this.$=[WA[ZA].trim()];break;case 28:WA[ZA-2].push(WA[ZA].trim()),this.$=WA[ZA-2];break;case 29:this.$=WA[ZA-4],_A.addClass(WA[ZA-2],WA[ZA]);break;case 37:this.$=[];break;case 42:this.$=WA[ZA].trim(),_A.setDiagramTitle(this.$);break;case 43:this.$=WA[ZA].trim(),_A.setAccTitle(this.$);break;case 44:case 45:this.$=WA[ZA].trim(),_A.setAccDescription(this.$);break;case 46:_A.addSection(WA[ZA].substr(8)),this.$=WA[ZA].substr(8);break;case 47:_A.addPoint(WA[ZA-3],"",WA[ZA-1],WA[ZA],[]);break;case 48:_A.addPoint(WA[ZA-4],WA[ZA-3],WA[ZA-1],WA[ZA],[]);break;case 49:_A.addPoint(WA[ZA-4],"",WA[ZA-2],WA[ZA-1],WA[ZA]);break;case 50:_A.addPoint(WA[ZA-5],WA[ZA-4],WA[ZA-2],WA[ZA-1],WA[ZA]);break;case 51:_A.setXAxisLeftText(WA[ZA-2]),_A.setXAxisRightText(WA[ZA]);break;case 52:WA[ZA-1].text+=" ⟶ ",_A.setXAxisLeftText(WA[ZA-1]);break;case 53:_A.setXAxisLeftText(WA[ZA]);break;case 54:_A.setYAxisBottomText(WA[ZA-2]),_A.setYAxisTopText(WA[ZA]);break;case 55:WA[ZA-1].text+=" ⟶ ",_A.setYAxisBottomText(WA[ZA-1]);break;case 56:_A.setYAxisBottomText(WA[ZA]);break;case 57:_A.setQuadrant1Text(WA[ZA]);break;case 58:_A.setQuadrant2Text(WA[ZA]);break;case 59:_A.setQuadrant3Text(WA[ZA]);break;case 60:_A.setQuadrant4Text(WA[ZA]);break;case 64:this.$={text:WA[ZA],type:"text"};break;case 65:this.$={text:WA[ZA-1].text+""+WA[ZA],type:WA[ZA-1].type};break;case 66:this.$={text:WA[ZA],type:"text"};break;case 67:this.$={text:WA[ZA],type:"markdown"};break;case 68:this.$=WA[ZA];break;case 69:this.$=WA[ZA-1]+""+WA[ZA];break}},"anonymous"),table:[{18:e,26:1,27:2,28:t,55:r,56:i,57:u},{1:[3]},{18:e,26:8,27:2,28:t,55:r,56:i,57:u},{18:e,26:9,27:2,28:t,55:r,56:i,57:u},A(a,[2,33],{29:10}),A(n,[2,61]),A(n,[2,62]),A(n,[2,63]),{1:[2,30]},{1:[2,31]},A(o,s,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:l,5:g,10:C,12:B,13:E,14:d,15:I,18:h,25:Q,35:p,37:m,39:f,41:D,42:w,48:b,50:F,51:v,52:S,53:x,54:k,60:T,61:R,63:L,64:M,65:U,66:Y,67:H}),A(a,[2,34]),{27:46,55:r,56:i,57:u},A(o,[2,37]),A(o,s,{24:13,32:15,33:16,34:17,43:30,58:31,31:47,4:l,5:g,10:C,12:B,13:E,14:d,15:I,18:h,25:Q,35:p,37:m,39:f,41:D,42:w,48:b,50:F,51:v,52:S,53:x,54:k,60:T,61:R,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,39]),A(o,[2,40]),A(o,[2,41]),{36:[1,48]},{38:[1,49]},{40:[1,50]},A(o,[2,45]),A(o,[2,46]),{18:[1,51]},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:52,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:53,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:54,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:55,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:56,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:57,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,44:[1,58],47:[1,59],58:61,59:60,63:L,64:M,65:U,66:Y,67:H},A(O,[2,64]),A(O,[2,66]),A(O,[2,67]),A(O,[2,70]),A(O,[2,71]),A(O,[2,72]),A(O,[2,73]),A(O,[2,74]),A(O,[2,75]),A(O,[2,76]),A(O,[2,77]),A(O,[2,78]),A(O,[2,79]),A(O,[2,80]),A(O,[2,81]),A(a,[2,35]),A(o,[2,38]),A(o,[2,42]),A(o,[2,43]),A(o,[2,44]),{3:65,4:_,5:z,6:j,7:q,8:CA,9:tA,10:lA,11:gA,12:aA,13:RA,14:wA,15:JA,21:64},A(o,[2,53],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,49:[1,78],63:L,64:M,65:U,66:Y,67:H}),A(o,[2,56],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,49:[1,79],63:L,64:M,65:U,66:Y,67:H}),A(o,[2,57],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,58],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,59],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,60],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),{45:[1,80]},{44:[1,81]},A(O,[2,65]),A(O,[2,82]),A(O,[2,83]),A(O,[2,84]),{3:83,4:_,5:z,6:j,7:q,8:CA,9:tA,10:lA,11:gA,12:aA,13:RA,14:wA,15:JA,18:[1,82]},A(TA,[2,23]),A(TA,[2,1]),A(TA,[2,2]),A(TA,[2,3]),A(TA,[2,4]),A(TA,[2,5]),A(TA,[2,6]),A(TA,[2,7]),A(TA,[2,8]),A(TA,[2,9]),A(TA,[2,10]),A(TA,[2,11]),A(TA,[2,12]),A(o,[2,52],{58:31,43:84,4:l,5:g,10:C,12:B,13:E,14:d,15:I,60:T,61:R,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,55],{58:31,43:85,4:l,5:g,10:C,12:B,13:E,14:d,15:I,60:T,61:R,63:L,64:M,65:U,66:Y,67:H}),{46:[1,86]},{45:[1,87]},{4:qA,5:BA,6:bA,8:FA,11:IA,13:nA,16:90,17:eA,18:EA,19:mA,20:kA,22:89,23:88},A(TA,[2,24]),A(o,[2,51],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,54],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,47],{22:89,16:90,23:101,4:qA,5:BA,6:bA,8:FA,11:IA,13:nA,17:eA,18:EA,19:mA,20:kA}),{46:[1,102]},A(o,[2,29],{10:SA}),A(YA,[2,27],{16:104,4:qA,5:BA,6:bA,8:FA,11:IA,13:nA,17:eA,18:EA,19:mA,20:kA}),A(dA,[2,25]),A(dA,[2,13]),A(dA,[2,14]),A(dA,[2,15]),A(dA,[2,16]),A(dA,[2,17]),A(dA,[2,18]),A(dA,[2,19]),A(dA,[2,20]),A(dA,[2,21]),A(dA,[2,22]),A(o,[2,49],{10:SA}),A(o,[2,48],{22:89,16:90,23:105,4:qA,5:BA,6:bA,8:FA,11:IA,13:nA,17:eA,18:EA,19:mA,20:kA}),{4:qA,5:BA,6:bA,8:FA,11:IA,13:nA,16:90,17:eA,18:EA,19:mA,20:kA,22:106},A(dA,[2,26]),A(o,[2,50],{10:SA}),A(YA,[2,28],{16:104,4:qA,5:BA,6:bA,8:FA,11:IA,13:nA,17:eA,18:EA,19:mA,20:kA})],defaultActions:{8:[2,30],9:[2,31]},parseError:y(function(DA,rA){if(rA.recoverable)this.trace(DA);else{var KA=Error(DA);throw KA.hash=rA,KA}},"parseError"),parse:y(function(DA){var rA=this,KA=[0],_A=[],zA=[null],WA=[],te=this.table,ZA="",ee=0,$A=0,oe=0,vA=2,Pe=1,MA=WA.slice.call(arguments,1),ke=Object.create(this.lexer),We={yy:{}};for(var se in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,se))We.yy[se]=this.yy[se];if(ke.setInput(DA,We.yy),We.yy.lexer=ke,We.yy.parser=this,typeof ke.yylloc>"u")ke.yylloc={};var Te=ke.yylloc;WA.push(Te);var je=ke.options&&ke.options.ranges;if(typeof We.yy.parseError==="function")this.parseError=We.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function xe(Ct){KA.length=KA.length-2*Ct,zA.length=zA.length-Ct,WA.length=WA.length-Ct}y(xe,"popStack");function yA(){var Ct=_A.pop()||ke.lex()||Pe;if(typeof Ct!=="number"){if(Ct instanceof Array)_A=Ct,Ct=_A.pop();Ct=rA.symbols_[Ct]||Ct}return Ct}y(yA,"lex");var Ne,He,de,NA,ce,me,Le={},Lt,tt,Ht,lr;while(!0){if(de=KA[KA.length-1],this.defaultActions[de])NA=this.defaultActions[de];else{if(Ne===null||typeof Ne>"u")Ne=yA();NA=te[de]&&te[de][Ne]}if(typeof NA>"u"||!NA.length||!NA[0]){var It="";lr=[];for(Lt in te[de])if(this.terminals_[Lt]&&Lt>vA)lr.push("'"+this.terminals_[Lt]+"'");if(ke.showPosition)It="Parse error on line "+(ee+1)+`:
|
||
`+ke.showPosition()+`
|
||
Expecting `+lr.join(", ")+", got '"+(this.terminals_[Ne]||Ne)+"'";else It="Parse error on line "+(ee+1)+": Unexpected "+(Ne==Pe?"end of input":"'"+(this.terminals_[Ne]||Ne)+"'");this.parseError(It,{text:ke.match,token:this.terminals_[Ne]||Ne,line:ke.yylineno,loc:Te,expected:lr})}if(NA[0]instanceof Array&&NA.length>1)throw Error("Parse Error: multiple actions possible at state: "+de+", token: "+Ne);switch(NA[0]){case 1:if(KA.push(Ne),zA.push(ke.yytext),WA.push(ke.yylloc),KA.push(NA[1]),Ne=null,!He){if($A=ke.yyleng,ZA=ke.yytext,ee=ke.yylineno,Te=ke.yylloc,oe>0)oe--}else Ne=He,He=null;break;case 2:if(tt=this.productions_[NA[1]][1],Le.$=zA[zA.length-tt],Le._$={first_line:WA[WA.length-(tt||1)].first_line,last_line:WA[WA.length-1].last_line,first_column:WA[WA.length-(tt||1)].first_column,last_column:WA[WA.length-1].last_column},je)Le._$.range=[WA[WA.length-(tt||1)].range[0],WA[WA.length-1].range[1]];if(me=this.performAction.apply(Le,[ZA,$A,ee,We.yy,NA[1],zA,WA].concat(MA)),typeof me<"u")return me;if(tt)KA=KA.slice(0,-1*tt*2),zA=zA.slice(0,-1*tt),WA=WA.slice(0,-1*tt);KA.push(this.productions_[NA[1]][0]),zA.push(Le.$),WA.push(Le._$),Ht=te[KA[KA.length-2]][KA[KA.length-1]],KA.push(Ht);break;case 3:return!0}}return!0},"parse")},Z=function(){var AA={EOF:1,parseError:y(function(rA,KA){if(this.yy.parser)this.yy.parser.parseError(rA,KA);else throw Error(rA)},"parseError"),setInput:y(function(DA,rA){if(this.yy=rA||this.yy||{},this._input=DA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var DA=this._input[0];this.yytext+=DA,this.yyleng++,this.offset++,this.match+=DA,this.matched+=DA;var rA=DA.match(/(?:\r\n?|\n).*/g);if(rA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),DA},"input"),unput:y(function(DA){var rA=DA.length,KA=DA.split(/(?:\r\n?|\n)/g);this._input=DA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-rA),this.offset-=rA;var _A=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),KA.length-1)this.yylineno-=KA.length-1;var zA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:KA?(KA.length===_A.length?this.yylloc.first_column:0)+_A[_A.length-KA.length].length-KA[0].length:this.yylloc.first_column-rA},this.options.ranges)this.yylloc.range=[zA[0],zA[0]+this.yyleng-rA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(DA){this.unput(this.match.slice(DA))},"less"),pastInput:y(function(){var DA=this.matched.substr(0,this.matched.length-this.match.length);return(DA.length>20?"...":"")+DA.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var DA=this.match;if(DA.length<20)DA+=this._input.substr(0,20-DA.length);return(DA.substr(0,20)+(DA.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var DA=this.pastInput(),rA=Array(DA.length+1).join("-");return DA+this.upcomingInput()+`
|
||
`+rA+"^"},"showPosition"),test_match:y(function(DA,rA){var KA,_A,zA;if(this.options.backtrack_lexer){if(zA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)zA.yylloc.range=this.yylloc.range.slice(0)}if(_A=DA[0].match(/(?:\r\n?|\n).*/g),_A)this.yylineno+=_A.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:_A?_A[_A.length-1].length-_A[_A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+DA[0].length},this.yytext+=DA[0],this.match+=DA[0],this.matches=DA,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(DA[0].length),this.matched+=DA[0],KA=this.performAction.call(this,this.yy,this,rA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(KA)return KA;else if(this._backtrack){for(var WA in zA)this[WA]=zA[WA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var DA,rA,KA,_A;if(!this._more)this.yytext="",this.match="";var zA=this._currentRules();for(var WA=0;WA<zA.length;WA++)if(KA=this._input.match(this.rules[zA[WA]]),KA&&(!rA||KA[0].length>rA[0].length)){if(rA=KA,_A=WA,this.options.backtrack_lexer)if(DA=this.test_match(KA,zA[WA]),DA!==!1)return DA;else if(this._backtrack){rA=!1;continue}else return!1;else if(!this.options.flex)break}if(rA){if(DA=this.test_match(rA,zA[_A]),DA!==!1)return DA;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var rA=this.next();if(rA)return rA;else return this.lex()},"lex"),begin:y(function(rA){this.conditionStack.push(rA)},"begin"),popState:y(function(){var rA=this.conditionStack.length-1;if(rA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(rA){if(rA=this.conditionStack.length-1-Math.abs(rA||0),rA>=0)return this.conditionStack[rA];else return"INITIAL"},"topState"),pushState:y(function(rA){this.begin(rA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(rA,KA,_A,zA){var WA=zA;switch(_A){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 15;case 37:return 11;case 38:return 64;case 39:return 10;case 40:return 65;case 41:return 65;case 42:return 14;case 43:return 13;case 44:return 67;case 45:return 66;case 46:return 12;case 47:return 8;case 48:return 5;case 49:return 18;case 50:return 56;case 51:return 63;case 52:return 57}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?:[^\x00-\x7F]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return AA}();W.lexer=Z;function pA(){this.yy={}}return y(pA,"Parser"),pA.prototype=W,W.Parser=pA,new pA}();nCA.parser=nCA;ARt=nCA,Gs=R0(),eRt=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{y(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:ur.quadrantChart?.chartWidth||500,chartWidth:ur.quadrantChart?.chartHeight||500,titlePadding:ur.quadrantChart?.titlePadding||10,titleFontSize:ur.quadrantChart?.titleFontSize||20,quadrantPadding:ur.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:ur.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:ur.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:ur.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:ur.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:ur.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:ur.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:ur.quadrantChart?.pointTextPadding||5,pointLabelFontSize:ur.quadrantChart?.pointLabelFontSize||12,pointRadius:ur.quadrantChart?.pointRadius||5,xAxisPosition:ur.quadrantChart?.xAxisPosition||"top",yAxisPosition:ur.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:ur.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:ur.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:Gs.quadrant1Fill,quadrant2Fill:Gs.quadrant2Fill,quadrant3Fill:Gs.quadrant3Fill,quadrant4Fill:Gs.quadrant4Fill,quadrant1TextFill:Gs.quadrant1TextFill,quadrant2TextFill:Gs.quadrant2TextFill,quadrant3TextFill:Gs.quadrant3TextFill,quadrant4TextFill:Gs.quadrant4TextFill,quadrantPointFill:Gs.quadrantPointFill,quadrantPointTextFill:Gs.quadrantPointTextFill,quadrantXAxisTextFill:Gs.quadrantXAxisTextFill,quadrantYAxisTextFill:Gs.quadrantYAxisTextFill,quadrantTitleFill:Gs.quadrantTitleFill,quadrantInternalBorderStrokeFill:Gs.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:Gs.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,sA.info("clear called")}setData(A){this.data={...this.data,...A}}addPoints(A){this.data.points=[...A,...this.data.points]}addClass(A,e){this.classes.set(A,e)}setConfig(A){sA.trace("setConfig called with: ",A),this.config={...this.config,...A}}setThemeConfig(A){sA.trace("setThemeConfig called with: ",A),this.themeConfig={...this.themeConfig,...A}}calculateSpace(A,e,t,r){let i=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,u={top:A==="top"&&e?i:0,bottom:A==="bottom"&&e?i:0},a=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,n={left:this.config.yAxisPosition==="left"&&t?a:0,right:this.config.yAxisPosition==="right"&&t?a:0},o=this.config.titleFontSize+this.config.titlePadding*2,s={top:r?o:0},l=this.config.quadrantPadding+n.left,g=this.config.quadrantPadding+u.top+s.top,C=this.config.chartWidth-this.config.quadrantPadding*2-n.left-n.right,B=this.config.chartHeight-this.config.quadrantPadding*2-u.top-u.bottom-s.top,E=C/2,d=B/2;return{xAxisSpace:u,yAxisSpace:n,titleSpace:s,quadrantSpace:{quadrantLeft:l,quadrantTop:g,quadrantWidth:C,quadrantHalfWidth:E,quadrantHeight:B,quadrantHalfHeight:d}}}getAxisLabels(A,e,t,r){let{quadrantSpace:i,titleSpace:u}=r,{quadrantHalfHeight:a,quadrantHeight:n,quadrantLeft:o,quadrantHalfWidth:s,quadrantTop:l,quadrantWidth:g}=i,C=Boolean(this.data.xAxisRightText),B=Boolean(this.data.yAxisTopText),E=[];if(this.data.xAxisLeftText&&e)E.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:o+(C?s/2:0),y:A==="top"?this.config.xAxisLabelPadding+u.top:this.config.xAxisLabelPadding+l+n+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:C?"center":"left",horizontalPos:"top",rotation:0});if(this.data.xAxisRightText&&e)E.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:o+s+(C?s/2:0),y:A==="top"?this.config.xAxisLabelPadding+u.top:this.config.xAxisLabelPadding+l+n+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:C?"center":"left",horizontalPos:"top",rotation:0});if(this.data.yAxisBottomText&&t)E.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+o+g+this.config.quadrantPadding,y:l+n-(B?a/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:B?"center":"left",horizontalPos:"top",rotation:-90});if(this.data.yAxisTopText&&t)E.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+o+g+this.config.quadrantPadding,y:l+a-(B?a/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:B?"center":"left",horizontalPos:"top",rotation:-90});return E}getQuadrants(A){let{quadrantSpace:e}=A,{quadrantHalfHeight:t,quadrantLeft:r,quadrantHalfWidth:i,quadrantTop:u}=e,a=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:r+i,y:u,width:i,height:t,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:r,y:u,width:i,height:t,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:r,y:u+t,width:i,height:t,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:r+i,y:u+t,width:i,height:t,fill:this.themeConfig.quadrant4Fill}];for(let n of a)if(n.text.x=n.x+n.width/2,this.data.points.length===0)n.text.y=n.y+n.height/2,n.text.horizontalPos="middle";else n.text.y=n.y+this.config.quadrantTextTopPadding,n.text.horizontalPos="top";return a}getQuadrantPoints(A){let{quadrantSpace:e}=A,{quadrantHeight:t,quadrantLeft:r,quadrantTop:i,quadrantWidth:u}=e,a=CC().domain([0,1]).range([r,u+r]),n=CC().domain([0,1]).range([t+i,i]);return this.data.points.map((s)=>{let l=this.classes.get(s.className);if(l)s={...l,...s};return{x:a(s.x),y:n(s.y),fill:s.color??this.themeConfig.quadrantPointFill,radius:s.radius??this.config.pointRadius,text:{text:s.text,fill:this.themeConfig.quadrantPointTextFill,x:a(s.x),y:n(s.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:s.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:s.strokeWidth??"0px"}})}getBorders(A){let e=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:t}=A,{quadrantHalfHeight:r,quadrantHeight:i,quadrantLeft:u,quadrantHalfWidth:a,quadrantTop:n,quadrantWidth:o}=t;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:u-e,y1:n,x2:u+o+e,y2:n},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:u+o,y1:n+e,x2:u+o,y2:n+i-e},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:u-e,y1:n+i,x2:u+o+e,y2:n+i},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:u,y1:n+e,x2:u,y2:n+i-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:u+a,y1:n+e,x2:u+a,y2:n+i-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:u+e,y1:n+r,x2:u+o-e,y2:n+r}]}getTitle(A){if(A)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2};return}build(){let A=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),e=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),t=this.config.showTitle&&!!this.data.titleText,r=this.data.points.length>0?"bottom":this.config.xAxisPosition,i=this.calculateSpace(r,A,e,t);return{points:this.getQuadrantPoints(i),quadrants:this.getQuadrants(i),axisLabels:this.getAxisLabels(r,A,e,i),borderLines:this.getBorders(i),title:this.getTitle(t)}}},DO=class extends Error{static{y(this,"InvalidStyleError")}constructor(A,e,t){super(`value for ${A} ${e} is invalid, please use a valid ${t}`);this.name="InvalidStyleError"}};y(oCA,"validateHexCode");y(Vre,"validateNumber");y(jre,"validateSizeInPixels");y(id,"textSanitizer");d0=new eRt;y(Xre,"setQuadrant1Text");y($re,"setQuadrant2Text");y(Aie,"setQuadrant3Text");y(eie,"setQuadrant4Text");y(tie,"setXAxisLeftText");y(rie,"setXAxisRightText");y(iie,"setYAxisTopText");y(uie,"setYAxisBottomText");y(yO,"parseStyles");y(aie,"addPoint");y(nie,"addClass");y(oie,"setWidth");y(sie,"setHeight");y(lie,"getQuadrantData");tRt=y(function(){d0.clear(),sr()},"clear"),rRt={setWidth:oie,setHeight:sie,setQuadrant1Text:Xre,setQuadrant2Text:$re,setQuadrant3Text:Aie,setQuadrant4Text:eie,setXAxisLeftText:tie,setXAxisRightText:rie,setYAxisTopText:iie,setYAxisBottomText:uie,parseStyles:yO,addPoint:aie,addClass:nie,getQuadrantData:lie,clear:tRt,setAccTitle:Dr,getAccTitle:vr,setDiagramTitle:Mr,getDiagramTitle:xr,getAccDescription:Fr,setAccDescription:kr},iRt=y((A,e,t,r)=>{function i(b){return b==="top"?"hanging":"middle"}y(i,"getDominantBaseLine");function u(b){return b==="left"?"start":"middle"}y(u,"getTextAnchor");function a(b){return`translate(${b.x}, ${b.y}) rotate(${b.rotation||0})`}y(a,"getTransformation");let n=OA();sA.debug(`Rendering quadrant chart
|
||
`+A);let o=n.securityLevel,s;if(o==="sandbox")s=Qe("#i"+e);let g=(o==="sandbox"?Qe(s.nodes()[0].contentDocument.body):Qe("body")).select(`[id="${e}"]`),C=g.append("g").attr("class","main"),B=n.quadrantChart?.chartWidth??500,E=n.quadrantChart?.chartHeight??500;jr(g,E,B,n.quadrantChart?.useMaxWidth??!0),g.attr("viewBox","0 0 "+B+" "+E),r.db.setHeight(E),r.db.setWidth(B);let d=r.db.getQuadrantData(),I=C.append("g").attr("class","quadrants"),h=C.append("g").attr("class","border"),Q=C.append("g").attr("class","data-points"),p=C.append("g").attr("class","labels"),m=C.append("g").attr("class","title");if(d.title)m.append("text").attr("x",0).attr("y",0).attr("fill",d.title.fill).attr("font-size",d.title.fontSize).attr("dominant-baseline",i(d.title.horizontalPos)).attr("text-anchor",u(d.title.verticalPos)).attr("transform",a(d.title)).text(d.title.text);if(d.borderLines)h.selectAll("line").data(d.borderLines).enter().append("line").attr("x1",(b)=>b.x1).attr("y1",(b)=>b.y1).attr("x2",(b)=>b.x2).attr("y2",(b)=>b.y2).style("stroke",(b)=>b.strokeFill).style("stroke-width",(b)=>b.strokeWidth);let f=I.selectAll("g.quadrant").data(d.quadrants).enter().append("g").attr("class","quadrant");f.append("rect").attr("x",(b)=>b.x).attr("y",(b)=>b.y).attr("width",(b)=>b.width).attr("height",(b)=>b.height).attr("fill",(b)=>b.fill),f.append("text").attr("x",0).attr("y",0).attr("fill",(b)=>b.text.fill).attr("font-size",(b)=>b.text.fontSize).attr("dominant-baseline",(b)=>i(b.text.horizontalPos)).attr("text-anchor",(b)=>u(b.text.verticalPos)).attr("transform",(b)=>a(b.text)).text((b)=>b.text.text),p.selectAll("g.label").data(d.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text((b)=>b.text).attr("fill",(b)=>b.fill).attr("font-size",(b)=>b.fontSize).attr("dominant-baseline",(b)=>i(b.horizontalPos)).attr("text-anchor",(b)=>u(b.verticalPos)).attr("transform",(b)=>a(b));let w=Q.selectAll("g.data-point").data(d.points).enter().append("g").attr("class","data-point");w.append("circle").attr("cx",(b)=>b.x).attr("cy",(b)=>b.y).attr("r",(b)=>b.radius).attr("fill",(b)=>b.fill).attr("stroke",(b)=>b.strokeColor).attr("stroke-width",(b)=>b.strokeWidth),w.append("text").attr("x",0).attr("y",0).text((b)=>b.text.text).attr("fill",(b)=>b.text.fill).attr("font-size",(b)=>b.text.fontSize).attr("dominant-baseline",(b)=>i(b.text.horizontalPos)).attr("text-anchor",(b)=>u(b.text.verticalPos)).attr("transform",(b)=>a(b.text))},"draw"),uRt={draw:iRt},gie={parser:ARt,db:rRt,renderer:uRt,styles:y(()=>"","styles")}});function lCA(A){return A.type==="bar"}function wO(A){return A.type==="band"}function b6(A){return A.type==="linear"}function gCA(A,e,t,r){let i=new Eie(r);if(wO(A))return new nRt(e,t,A.categories,A.title,i);return new oRt(e,t,[A.min,A.max],A.title,i)}function Iie(A,e,t,r){let i=new Eie(r);return new sRt(i,A,e,t)}function hie(A,e,t){return new cRt(A,e,t)}function BCA(){let A=R0(),e=st();return si(A.xyChart,e.themeVariables.xyChart)}function ECA(){let A=st();return si(ur.xyChart,A.xyChart)}function dCA(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function l7(A){let e=st();return or(A.trim(),e)}function pie(A){Qie=A}function fie(A){if(A==="horizontal")o7.chartOrientation="horizontal";else o7.chartOrientation="vertical"}function mie(A){Oi.xAxis.title=l7(A.text)}function ICA(A,e){Oi.xAxis={type:"linear",title:Oi.xAxis.title,min:A,max:e},bO=!0}function Die(A){Oi.xAxis={type:"band",title:Oi.xAxis.title,categories:A.map((e)=>l7(e.text))},bO=!0}function yie(A){Oi.yAxis.title=l7(A.text)}function wie(A,e){Oi.yAxis={type:"linear",title:Oi.yAxis.title,min:A,max:e},CCA=!0}function bie(A){let e=Math.min(...A),t=Math.max(...A),r=b6(Oi.yAxis)?Oi.yAxis.min:1/0,i=b6(Oi.yAxis)?Oi.yAxis.max:-1/0;Oi.yAxis={type:"linear",title:Oi.yAxis.title,min:Math.min(r,e),max:Math.max(i,t)}}function hCA(A){let e=[];if(A.length===0)return e;if(!bO){let t=b6(Oi.xAxis)?Oi.xAxis.min:1/0,r=b6(Oi.xAxis)?Oi.xAxis.max:-1/0;ICA(Math.min(t,1),Math.max(r,A.length))}if(wO(Oi.xAxis)&&A.length>Oi.xAxis.categories.length)A=A.slice(0,Oi.xAxis.categories.length);if(!CCA)bie(A);if(wO(Oi.xAxis))e=Oi.xAxis.categories.map((t,r)=>[t,A[r]]);if(b6(Oi.xAxis)){let t=Oi.xAxis.min,r=Oi.xAxis.max;if(A.length===1)e=[[`${t}`,A[0]]];else{let i=(r-t)/(A.length-1);e=A.map((u,a)=>[`${t+a*i}`,u])}}return e}function QCA(A){return cCA[A===0?0:A%cCA.length]}function vie(A,e){let t=e.map((a)=>a.value),r=e.map((a)=>a.label?l7(a.label):""),i=hCA(t),u=r.some((a)=>a!=="");Oi.plots.push({type:"line",strokeFill:QCA(n7),strokeWidth:2,data:i,...u?{pointLabels:r}:{}}),n7++}function kie(A,e){let t=e.map((i)=>i.value),r=hCA(t);Oi.plots.push({type:"bar",fill:QCA(n7),data:r}),n7++}function Fie(){if(Oi.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return Oi.title=xr(),BRt.build(o7,Oi,s7,Qie)}function xie(){return s7}function Sie(){return o7}function Lie(){return Oi}var sCA,aRt,Eie,Cie=0.7,Bie=0.2,die,nRt,oRt,sRt,lRt,gRt,cRt,CRt,BRt,n7=0,Qie,o7,s7,Oi,cCA,bO=!1,CCA=!1,ERt,dRt,IRt,hRt,Rie;var Nie=P(()=>{cn();eo();Rn();ai();rr();ir();Nt();Pr();Pr();Pr();sCA=function(){var A=y(function(L,M,U,Y){for(U=U||{},Y=L.length;Y--;U[L[Y]]=M);return U},"o"),e=[1,10,12,14,16,18,19,21,23],t=[2,6],r=[1,3],i=[1,5],u=[1,6],a=[1,7],n=[1,5,10,12,14,16,18,19,21,23,36,37,38],o=[1,25],s=[1,26],l=[1,28],g=[1,29],C=[1,30],B=[1,31],E=[1,32],d=[1,33],I=[1,34],h=[1,35],Q=[1,36],p=[1,37],m=[1,43],f=[1,42],D=[1,47],w=[1,50],b=[1,10,12,14,16,18,19,21,23,36,37,38],F=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38],v=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38,42,43,44,45,46,47,48,49,50,51],S=[1,65],x=[26,28],k={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,dataPoints:25,SQUARE_BRACES_END:26,dataPoint:27,COMMA:28,NUMBER_WITH_DECIMAL:29,STR:30,xAxisData:31,bandData:32,ARROW_DELIMITER:33,commaSeparatedTexts:34,yAxisData:35,NEWLINE:36,SEMI:37,EOF:38,alphaNum:39,MD_STR:40,alphaNumToken:41,AMP:42,NUM:43,ALPHA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,MINUS:50,UNDERSCORE:51,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",28:"COMMA",29:"NUMBER_WITH_DECIMAL",30:"STR",33:"ARROW_DELIMITER",36:"NEWLINE",37:"SEMI",38:"EOF",40:"MD_STR",42:"AMP",43:"NUM",44:"ALPHA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"MINUS",51:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[27,2],[27,1],[13,1],[13,2],[13,1],[31,1],[31,3],[32,3],[34,3],[34,1],[15,1],[15,2],[15,1],[35,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[39,1],[39,2],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1]],performAction:y(function(M,U,Y,H,J,K,O){var _=K.length-1;switch(J){case 5:H.setOrientation(K[_]);break;case 9:H.setDiagramTitle(K[_].text.trim());break;case 12:H.setLineData({text:"",type:"text"},K[_]);break;case 13:H.setLineData(K[_-1],K[_]);break;case 14:H.setBarData({text:"",type:"text"},K[_]);break;case 15:H.setBarData(K[_-1],K[_]);break;case 16:this.$=K[_].trim(),H.setAccTitle(this.$);break;case 17:case 18:this.$=K[_].trim(),H.setAccDescription(this.$);break;case 19:this.$=K[_-1];break;case 20:case 30:this.$=[K[_-2],...K[_]];break;case 21:case 31:this.$=[K[_]];break;case 22:this.$={value:Number(K[_-1]),label:K[_]};break;case 23:this.$={value:Number(K[_]),label:""};break;case 24:H.setXAxisTitle(K[_]);break;case 25:H.setXAxisTitle(K[_-1]);break;case 26:H.setXAxisTitle({type:"text",text:""});break;case 27:H.setXAxisBand(K[_]);break;case 28:H.setXAxisRangeData(Number(K[_-2]),Number(K[_]));break;case 29:this.$=K[_-1];break;case 32:H.setYAxisTitle(K[_]);break;case 33:H.setYAxisTitle(K[_-1]);break;case 34:H.setYAxisTitle({type:"text",text:""});break;case 35:H.setYAxisRangeData(Number(K[_-2]),Number(K[_]));break;case 39:this.$={text:K[_],type:"text"};break;case 40:this.$={text:K[_],type:"text"};break;case 41:this.$={text:K[_],type:"markdown"};break;case 42:this.$=K[_];break;case 43:this.$=K[_-1]+""+K[_];break}},"anonymous"),table:[A(e,t,{3:1,4:2,7:4,5:r,36:i,37:u,38:a}),{1:[3]},A(e,t,{4:2,7:4,3:8,5:r,36:i,37:u,38:a}),A(e,t,{4:2,7:4,6:9,3:10,5:r,8:[1,11],36:i,37:u,38:a}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},A(n,[2,36]),A(n,[2,37]),A(n,[2,38]),{1:[2,1]},A(e,t,{4:2,7:4,3:21,5:r,36:i,37:u,38:a}),{1:[2,3]},A(n,[2,5]),A(e,[2,7],{4:22,36:i,37:u,38:a}),{11:23,30:o,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{11:39,13:38,24:m,29:f,30:o,31:40,32:41,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{11:45,15:44,29:D,30:o,35:46,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{11:49,17:48,24:w,30:o,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{11:52,17:51,24:w,30:o,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{20:[1,53]},{22:[1,54]},A(b,[2,18]),{1:[2,2]},A(b,[2,8]),A(b,[2,9]),A(F,[2,39],{41:55,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p}),A(F,[2,40]),A(F,[2,41]),A(v,[2,42]),A(v,[2,44]),A(v,[2,45]),A(v,[2,46]),A(v,[2,47]),A(v,[2,48]),A(v,[2,49]),A(v,[2,50]),A(v,[2,51]),A(v,[2,52]),A(v,[2,53]),A(b,[2,10]),A(b,[2,24],{32:41,31:56,24:m,29:f}),A(b,[2,26]),A(b,[2,27]),{33:[1,57]},{11:59,30:o,34:58,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},A(b,[2,11]),A(b,[2,32],{35:60,29:D}),A(b,[2,34]),{33:[1,61]},A(b,[2,12]),{17:62,24:w},{25:63,27:64,29:S},A(b,[2,14]),{17:66,24:w},A(b,[2,16]),A(b,[2,17]),A(v,[2,43]),A(b,[2,25]),{29:[1,67]},{26:[1,68]},{26:[2,31],28:[1,69]},A(b,[2,33]),{29:[1,70]},A(b,[2,13]),{26:[1,71]},{26:[2,21],28:[1,72]},A(x,[2,23],{30:[1,73]}),A(b,[2,15]),A(b,[2,28]),A(b,[2,29]),{11:59,30:o,34:74,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},A(b,[2,35]),A(b,[2,19]),{25:75,27:64,29:S},A(x,[2,22]),{26:[2,30]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],74:[2,30],75:[2,20]},parseError:y(function(M,U){if(U.recoverable)this.trace(M);else{var Y=Error(M);throw Y.hash=U,Y}},"parseError"),parse:y(function(M){var U=this,Y=[0],H=[],J=[null],K=[],O=this.table,_="",z=0,j=0,q=0,CA=2,tA=1,lA=K.slice.call(arguments,1),gA=Object.create(this.lexer),aA={yy:{}};for(var RA in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,RA))aA.yy[RA]=this.yy[RA];if(gA.setInput(M,aA.yy),aA.yy.lexer=gA,aA.yy.parser=this,typeof gA.yylloc>"u")gA.yylloc={};var wA=gA.yylloc;K.push(wA);var JA=gA.options&&gA.options.ranges;if(typeof aA.yy.parseError==="function")this.parseError=aA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function TA(W){Y.length=Y.length-2*W,J.length=J.length-W,K.length=K.length-W}y(TA,"popStack");function qA(){var W=H.pop()||gA.lex()||tA;if(typeof W!=="number"){if(W instanceof Array)H=W,W=H.pop();W=U.symbols_[W]||W}return W}y(qA,"lex");var BA,bA,FA,IA,nA,eA,EA={},mA,kA,SA,YA;while(!0){if(FA=Y[Y.length-1],this.defaultActions[FA])IA=this.defaultActions[FA];else{if(BA===null||typeof BA>"u")BA=qA();IA=O[FA]&&O[FA][BA]}if(typeof IA>"u"||!IA.length||!IA[0]){var dA="";YA=[];for(mA in O[FA])if(this.terminals_[mA]&&mA>CA)YA.push("'"+this.terminals_[mA]+"'");if(gA.showPosition)dA="Parse error on line "+(z+1)+`:
|
||
`+gA.showPosition()+`
|
||
Expecting `+YA.join(", ")+", got '"+(this.terminals_[BA]||BA)+"'";else dA="Parse error on line "+(z+1)+": Unexpected "+(BA==tA?"end of input":"'"+(this.terminals_[BA]||BA)+"'");this.parseError(dA,{text:gA.match,token:this.terminals_[BA]||BA,line:gA.yylineno,loc:wA,expected:YA})}if(IA[0]instanceof Array&&IA.length>1)throw Error("Parse Error: multiple actions possible at state: "+FA+", token: "+BA);switch(IA[0]){case 1:if(Y.push(BA),J.push(gA.yytext),K.push(gA.yylloc),Y.push(IA[1]),BA=null,!bA){if(j=gA.yyleng,_=gA.yytext,z=gA.yylineno,wA=gA.yylloc,q>0)q--}else BA=bA,bA=null;break;case 2:if(kA=this.productions_[IA[1]][1],EA.$=J[J.length-kA],EA._$={first_line:K[K.length-(kA||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(kA||1)].first_column,last_column:K[K.length-1].last_column},JA)EA._$.range=[K[K.length-(kA||1)].range[0],K[K.length-1].range[1]];if(eA=this.performAction.apply(EA,[_,j,z,aA.yy,IA[1],J,K].concat(lA)),typeof eA<"u")return eA;if(kA)Y=Y.slice(0,-1*kA*2),J=J.slice(0,-1*kA),K=K.slice(0,-1*kA);Y.push(this.productions_[IA[1]][0]),J.push(EA.$),K.push(EA._$),SA=O[Y[Y.length-2]][Y[Y.length-1]],Y.push(SA);break;case 3:return!0}}return!0},"parse")},T=function(){var L={EOF:1,parseError:y(function(U,Y){if(this.yy.parser)this.yy.parser.parseError(U,Y);else throw Error(U)},"parseError"),setInput:y(function(M,U){if(this.yy=U||this.yy||{},this._input=M,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var M=this._input[0];this.yytext+=M,this.yyleng++,this.offset++,this.match+=M,this.matched+=M;var U=M.match(/(?:\r\n?|\n).*/g);if(U)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),M},"input"),unput:y(function(M){var U=M.length,Y=M.split(/(?:\r\n?|\n)/g);this._input=M+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-U),this.offset-=U;var H=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Y.length-1)this.yylineno-=Y.length-1;var J=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Y?(Y.length===H.length?this.yylloc.first_column:0)+H[H.length-Y.length].length-Y[0].length:this.yylloc.first_column-U},this.options.ranges)this.yylloc.range=[J[0],J[0]+this.yyleng-U];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(M){this.unput(this.match.slice(M))},"less"),pastInput:y(function(){var M=this.matched.substr(0,this.matched.length-this.match.length);return(M.length>20?"...":"")+M.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var M=this.match;if(M.length<20)M+=this._input.substr(0,20-M.length);return(M.substr(0,20)+(M.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var M=this.pastInput(),U=Array(M.length+1).join("-");return M+this.upcomingInput()+`
|
||
`+U+"^"},"showPosition"),test_match:y(function(M,U){var Y,H,J;if(this.options.backtrack_lexer){if(J={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)J.yylloc.range=this.yylloc.range.slice(0)}if(H=M[0].match(/(?:\r\n?|\n).*/g),H)this.yylineno+=H.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:H?H[H.length-1].length-H[H.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+M[0].length},this.yytext+=M[0],this.match+=M[0],this.matches=M,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(M[0].length),this.matched+=M[0],Y=this.performAction.call(this,this.yy,this,U,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(Y)return Y;else if(this._backtrack){for(var K in J)this[K]=J[K];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var M,U,Y,H;if(!this._more)this.yytext="",this.match="";var J=this._currentRules();for(var K=0;K<J.length;K++)if(Y=this._input.match(this.rules[J[K]]),Y&&(!U||Y[0].length>U[0].length)){if(U=Y,H=K,this.options.backtrack_lexer)if(M=this.test_match(Y,J[K]),M!==!1)return M;else if(this._backtrack){U=!1;continue}else return!1;else if(!this.options.flex)break}if(U){if(M=this.test_match(U,J[H]),M!==!1)return M;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var U=this.next();if(U)return U;else return this.lex()},"lex"),begin:y(function(U){this.conditionStack.push(U)},"begin"),popState:y(function(){var U=this.conditionStack.length-1;if(U>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(U){if(U=this.conditionStack.length-1-Math.abs(U||0),U>=0)return this.conditionStack[U];else return"INITIAL"},"topState"),pushState:y(function(U){this.begin(U)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(U,Y,H,J){var K=J;switch(H){case 0:break;case 1:break;case 2:return this.popState(),36;break;case 3:return this.popState(),36;break;case 4:return 36;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState("axis_data"),"X_AXIS";break;case 18:return this.pushState("axis_data"),"Y_AXIS";break;case 19:return this.pushState("axis_band_data"),24;break;case 20:return 33;case 21:return this.pushState("data"),16;break;case 22:return this.pushState("data"),18;break;case 23:return this.pushState("data_inner"),24;break;case 24:return 29;case 25:return this.popState(),26;break;case 26:this.popState();break;case 27:this.pushState("string");break;case 28:this.popState();break;case 29:return"STR";case 30:return 24;case 31:return 26;case 32:return 44;case 33:return"COLON";case 34:return 45;case 35:return 28;case 36:return 46;case 37:return 47;case 38:return 49;case 39:return 51;case 40:return 48;case 41:return 42;case 42:return 50;case 43:return 43;case 44:break;case 45:return 37;case 46:return 38}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\})/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n<md_string>\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n<md_string>\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}};return L}();k.lexer=T;function R(){this.yy={}}return y(R,"Parser"),R.prototype=k,k.Parser=R,new R}();sCA.parser=sCA;aRt=sCA;y(lCA,"isBarPlot");y(wO,"isBandAxisData");y(b6,"isLinearAxisData");Eie=class{constructor(A){this.parentGroup=A}static{y(this,"TextDimensionCalculatorWithFont")}getMaxDimension(A,e){if(!this.parentGroup)return{width:A.reduce((i,u)=>Math.max(u.length,i),0)*e,height:e};let t={width:0,height:0},r=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",e);for(let i of A){let u=YeA(r,1,i),a=u?u.width:i.length*e,n=u?u.height:e;t.width=Math.max(t.width,a),t.height=Math.max(t.height,n)}return r.remove(),t}},die=class{constructor(A,e,t,r){this.axisConfig=A,this.title=e,this.textDimensionCalculator=t,this.axisThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.normalizedLabelRotationInRad=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.normalizedLabelRotationInRad=this.axisConfig.labelRotation>=-90&&this.axisConfig.labelRotation<=90?this.axisConfig.labelRotation*Math.PI/180:0}static{y(this,"BaseAxis")}setRange(A){if(this.range=A,this.axisPosition==="left"||this.axisPosition==="right")this.boundingRect.height=A[1]-A[0];else this.boundingRect.width=A[1]-A[0];this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(A){this.axisPosition=A,this.setRange(this.range)}getTickDistance(){let A=this.getRange();return Math.abs(A[0]-A[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map((A)=>A.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){if(Cie*this.getTickDistance()>this.outerPadding*2)this.outerPadding=Math.floor(Cie*this.getTickDistance()/2);this.recalculateScale()}calculateSpaceIfDrawnHorizontally(A){let e=A.height;if(this.axisConfig.showAxisLine&&e>this.axisConfig.axisLineWidth)e-=this.axisConfig.axisLineWidth,this.showAxisLine=!0;if(this.axisConfig.showLabel){let t=this.getLabelDimension(),r=Bie*A.width;this.outerPadding=Math.min(t.width/2,r);let i=t.height;if(this.axisPosition==="bottom"&&this.normalizedLabelRotationInRad!==0)i=Math.max(i,Math.abs(Math.sin(this.normalizedLabelRotationInRad)*t.width)+Math.abs(Math.cos(this.normalizedLabelRotationInRad)*t.height));if(i+=this.axisConfig.labelPadding*2,this.labelTextHeight=t.height,i<=e)e-=i,this.showLabel=!0}if(this.axisConfig.showTick&&e>=this.axisConfig.tickLength)this.showTick=!0,e-=this.axisConfig.tickLength;if(this.axisConfig.showTitle&&this.title){let t=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),r=t.height+this.axisConfig.titlePadding*2;if(this.titleTextHeight=t.height,r<=e)e-=r,this.showTitle=!0}this.boundingRect.width=A.width,this.boundingRect.height=A.height-e}calculateSpaceIfDrawnVertical(A){let e=A.width;if(this.axisConfig.showAxisLine&&e>this.axisConfig.axisLineWidth)e-=this.axisConfig.axisLineWidth,this.showAxisLine=!0;if(this.axisConfig.showLabel){let t=this.getLabelDimension(),r=Bie*A.height;this.outerPadding=Math.min(t.height/2,r);let i=t.width+this.axisConfig.labelPadding*2;if(i<=e)e-=i,this.showLabel=!0}if(this.axisConfig.showTick&&e>=this.axisConfig.tickLength)this.showTick=!0,e-=this.axisConfig.tickLength;if(this.axisConfig.showTitle&&this.title){let t=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),r=t.height+this.axisConfig.titlePadding*2;if(this.titleTextHeight=t.height,r<=e)e-=r,this.showTitle=!0}this.boundingRect.width=A.width-e,this.boundingRect.height=A.height}calculateSpace(A){if(this.axisPosition==="left"||this.axisPosition==="right")this.calculateSpaceIfDrawnVertical(A);else this.calculateSpaceIfDrawnHorizontally(A);return this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(A){this.boundingRect.x=A.x,this.boundingRect.y=A.y}calculateOffsetByRotation(A){let e=this.normalizedLabelRotationInRad;if(e===0)return 0;return Math.sin(e)*this.getLabelDimension()[A]/2}getDrawableElementsForLeftAxis(){let A=[];if(this.showAxisLine){let e=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;A.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${e},${this.boundingRect.y} L ${e},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)A.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map((e)=>({text:e.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(e),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))});if(this.showTick){let e=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);A.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map((t)=>({path:`M ${e},${this.getScaleValue(t)} L ${e-this.axisConfig.tickLength},${this.getScaleValue(t)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)A.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]});return A}getDrawableElementsForBottomAxis(){let A=[];if(this.showAxisLine){let e=this.boundingRect.y+this.axisConfig.axisLineWidth/2;A.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${e} L ${this.boundingRect.x+this.boundingRect.width},${e}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)A.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map((e)=>({text:e.toString(),x:this.getScaleValue(e)+this.calculateOffsetByRotation("height"),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0)+Math.abs(this.calculateOffsetByRotation("width")),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:this.normalizedLabelRotationInRad*180/Math.PI,verticalPos:"top",horizontalPos:"center"}))});if(this.showTick){let e=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);A.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map((t)=>({path:`M ${this.getScaleValue(t)},${e} L ${this.getScaleValue(t)},${e+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)A.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]});return A}getDrawableElementsForTopAxis(){let A=[];if(this.showAxisLine){let e=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;A.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${e} L ${this.boundingRect.x+this.boundingRect.width},${e}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)A.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map((e)=>({text:e.toString(),x:this.getScaleValue(e),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))});if(this.showTick){let e=this.boundingRect.y;A.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map((t)=>({path:`M ${this.getScaleValue(t)},${e+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(t)},${e+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)A.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]});return A}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");if(this.axisPosition==="bottom")return this.getDrawableElementsForBottomAxis();if(this.axisPosition==="top")return this.getDrawableElementsForTopAxis();return[]}},nRt=class extends die{static{y(this,"BandAxis")}constructor(A,e,t,r,i){super(A,r,i,e);this.categories=t,this.scale=KD().domain(this.categories).range(this.getRange())}setRange(A){super.setRange(A)}recalculateScale(){this.scale=KD().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(0.5),sA.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(A){return this.scale(A)??this.getRange()[0]}},oRt=class extends die{static{y(this,"LinearAxis")}constructor(A,e,t,r,i){super(A,r,i,e);this.domain=t,this.scale=CC().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let A=[...this.domain];if(this.axisPosition==="left")A.reverse();this.scale=CC().domain(A).range(this.getRange())}getScaleValue(A){return this.scale(A)}};y(gCA,"getAxis");sRt=class{constructor(A,e,t,r){this.textDimensionCalculator=A,this.chartConfig=e,this.chartData=t,this.chartThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{y(this,"ChartTitle")}setBoundingBoxXY(A){this.boundingRect.x=A.x,this.boundingRect.y=A.y}calculateSpace(A){let e=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),t=Math.max(e.width,A.width),r=e.height+2*this.chartConfig.titlePadding;if(e.width<=t&&e.height<=r&&this.chartConfig.showTitle&&this.chartData.title)this.boundingRect.width=t,this.boundingRect.height=r,this.showChartTitle=!0;return{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let A=[];if(this.showChartTitle)A.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]});return A}};y(Iie,"getChartTitleComponent");lRt=class{constructor(A,e,t,r,i){this.plotData=A,this.xAxis=e,this.yAxis=t,this.orientation=r,this.plotIndex=i}static{y(this,"LinePlot")}getDrawableElement(){let A=this.plotData.data.map((r)=>[this.xAxis.getScaleValue(r[0]),this.yAxis.getScaleValue(r[1])]),e;if(this.orientation==="horizontal")e=hC().y((r)=>r[0]).x((r)=>r[1])(A);else e=hC().x((r)=>r[0]).y((r)=>r[1])(A);if(!e)return[];let t=[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:e,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}];if(this.plotData.pointLabels&&this.plotData.pointLabels.length>0){let u=[];for(let[a,[n,o]]of A.entries()){let s=this.plotData.pointLabels[a];if(!s)continue;if(this.orientation==="horizontal")u.push({x:o+10,y:n,text:s,fill:this.plotData.strokeFill,verticalPos:"middle",horizontalPos:"left",fontSize:12,rotation:0});else u.push({x:n,y:o-10,text:s,fill:this.plotData.strokeFill,verticalPos:"middle",horizontalPos:"center",fontSize:12,rotation:0})}if(u.length>0)t.push({groupTexts:["plot",`line-plot-${this.plotIndex}`,"labels"],type:"text",data:u})}return t}},gRt=class{constructor(A,e,t,r,i,u){this.barData=A,this.boundingRect=e,this.xAxis=t,this.yAxis=r,this.orientation=i,this.plotIndex=u}static{y(this,"BarPlot")}getDrawableElement(){let A=this.barData.data.map((i)=>[this.xAxis.getScaleValue(i[0]),this.yAxis.getScaleValue(i[1])]),e=0.05,t=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*0.95,r=t/2;if(this.orientation==="horizontal")return[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:A.map((i)=>({x:this.boundingRect.x,y:i[0]-r,height:t,width:i[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}];return[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:A.map((i)=>({x:i[0]-r,y:i[1],width:t,height:this.boundingRect.y+this.boundingRect.height-i[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}},cRt=class{constructor(A,e,t){this.chartConfig=A,this.chartData=e,this.chartThemeConfig=t,this.boundingRect={x:0,y:0,width:0,height:0}}static{y(this,"BasePlot")}setAxes(A,e){this.xAxis=A,this.yAxis=e}setBoundingBoxXY(A){this.boundingRect.x=A.x,this.boundingRect.y=A.y}calculateSpace(A){return this.boundingRect.width=A.width,this.boundingRect.height=A.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let A=[];for(let[e,t]of this.chartData.plots.entries())switch(t.type){case"line":{let r=new lRt(t,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,e);A.push(...r.getDrawableElement())}break;case"bar":{let r=new gRt(t,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,e);A.push(...r.getDrawableElement())}break}return A}};y(hie,"getPlotComponent");CRt=class{constructor(A,e,t,r){this.chartConfig=A,this.chartData=e,this.componentStore={title:Iie(A,e,t,r),plot:hie(A,e,t),xAxis:gCA(e.xAxis,A.xAxis,{titleColor:t.xAxisTitleColor,labelColor:t.xAxisLabelColor,tickColor:t.xAxisTickColor,axisLineColor:t.xAxisLineColor},r),yAxis:gCA(e.yAxis,A.yAxis,{titleColor:t.yAxisTitleColor,labelColor:t.yAxisLabelColor,tickColor:t.yAxisTickColor,axisLineColor:t.yAxisLineColor},r)}}static{y(this,"Orchestrator")}calculateVerticalSpace(){let A=this.chartConfig.width,e=this.chartConfig.height,t=0,r=0,i=Math.floor(A*this.chartConfig.plotReservedSpacePercent/100),u=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),a=this.componentStore.plot.calculateSpace({width:i,height:u});if(A-=a.width,e-=a.height,a=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:e}),r=a.height,e-=a.height,this.componentStore.xAxis.setAxisPosition("bottom"),a=this.componentStore.xAxis.calculateSpace({width:A,height:e}),e-=a.height,this.componentStore.yAxis.setAxisPosition("left"),a=this.componentStore.yAxis.calculateSpace({width:A,height:e}),t=a.width,A-=a.width,A>0)i+=A,A=0;if(e>0)u+=e,e=0;if(this.componentStore.plot.calculateSpace({width:i,height:u}),this.componentStore.plot.setBoundingBoxXY({x:t,y:r}),this.componentStore.xAxis.setRange([t,t+i]),this.componentStore.xAxis.setBoundingBoxXY({x:t,y:r+u}),this.componentStore.yAxis.setRange([r,r+u]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:r}),this.chartData.plots.some((n)=>lCA(n)))this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let A=this.chartConfig.width,e=this.chartConfig.height,t=0,r=0,i=0,u=Math.floor(A*this.chartConfig.plotReservedSpacePercent/100),a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),n=this.componentStore.plot.calculateSpace({width:u,height:a});if(A-=n.width,e-=n.height,n=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:e}),t=n.height,e-=n.height,this.componentStore.xAxis.setAxisPosition("left"),n=this.componentStore.xAxis.calculateSpace({width:A,height:e}),A-=n.width,r=n.width,this.componentStore.yAxis.setAxisPosition("top"),n=this.componentStore.yAxis.calculateSpace({width:A,height:e}),e-=n.height,i=t+n.height,A>0)u+=A,A=0;if(e>0)a+=e,e=0;if(this.componentStore.plot.calculateSpace({width:u,height:a}),this.componentStore.plot.setBoundingBoxXY({x:r,y:i}),this.componentStore.yAxis.setRange([r,r+u]),this.componentStore.yAxis.setBoundingBoxXY({x:r,y:t}),this.componentStore.xAxis.setRange([i,i+a]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some((o)=>lCA(o)))this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){if(this.chartConfig.chartOrientation==="horizontal")this.calculateHorizontalSpace();else this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let A=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let e of Object.values(this.componentStore))A.push(...e.getDrawableElements());return A}},BRt=class{static{y(this,"XYChartBuilder")}static build(A,e,t,r){return new CRt(A,e,t,r).getDrawableElement()}},o7=ECA(),s7=BCA(),Oi=dCA(),cCA=s7.plotColorPalette.split(",").map((A)=>A.trim());y(BCA,"getChartDefaultThemeConfig");y(ECA,"getChartDefaultConfig");y(dCA,"getChartDefaultData");y(l7,"textSanitizer");y(pie,"setTmpSVGG");y(fie,"setOrientation");y(mie,"setXAxisTitle");y(ICA,"setXAxisRangeData");y(Die,"setXAxisBand");y(yie,"setYAxisTitle");y(wie,"setYAxisRangeData");y(bie,"setYAxisRangeFromPlotData");y(hCA,"transformDataWithoutCategory");y(QCA,"getPlotColorFromPalette");y(vie,"setLineData");y(kie,"setBarData");y(Fie,"getDrawableElem");y(xie,"getChartThemeConfig");y(Sie,"getChartConfig");y(Lie,"getXYChartData");ERt=y(function(){sr(),n7=0,o7=ECA(),Oi=dCA(),s7=BCA(),cCA=s7.plotColorPalette.split(",").map((A)=>A.trim()),bO=!1,CCA=!1},"clear"),dRt={getDrawableElem:Fie,clear:ERt,setAccTitle:Dr,getAccTitle:vr,setDiagramTitle:Mr,getDiagramTitle:xr,getAccDescription:Fr,setAccDescription:kr,setOrientation:fie,setXAxisTitle:mie,setXAxisRangeData:ICA,setXAxisBand:Die,setYAxisTitle:yie,setYAxisRangeData:wie,setLineData:vie,setBarData:kie,setTmpSVGG:pie,getChartThemeConfig:xie,getChartConfig:Sie,getXYChartData:Lie},IRt=y((A,e,t,r)=>{let i=r.db,u=i.getChartThemeConfig(),a=i.getChartConfig(),n=i.getXYChartData().plots[0].data.map((p)=>p[1]);function o(p){return p==="top"?"text-before-edge":"middle"}y(o,"getDominantBaseLine");function s(p){return p==="left"?"start":p==="right"?"end":"middle"}y(s,"getTextAnchor");function l(p){return`translate(${p.x}, ${p.y}) rotate(${p.rotation||0})`}y(l,"getTextTransformation"),sA.debug(`Rendering xychart chart
|
||
`+A);let g=zi(e),C=g.append("g").attr("class","main"),B=C.append("rect").attr("width",a.width).attr("height",a.height).attr("class","background");jr(g,a.height,a.width,!0),g.attr("viewBox",`0 0 ${a.width} ${a.height}`),B.attr("fill",u.backgroundColor),i.setTmpSVGG(g.append("g").attr("class","mermaid-tmp-group"));let E=i.getDrawableElem(),d={};function I(p){let m=C,f="";for(let[D]of p.entries()){let w=C;if(D>0&&d[f])w=d[f];if(f+=p[D],m=d[f],!m)m=d[f]=w.append("g").attr("class",p[D])}return m}y(I,"getGroup");for(let p of E){if(p.data.length===0)continue;let m=I(p.groupTexts);switch(p.type){case"rect":if(m.selectAll("rect").data(p.data).enter().append("rect").attr("x",(f)=>f.x).attr("y",(f)=>f.y).attr("width",(f)=>f.width).attr("height",(f)=>f.height).attr("fill",(f)=>f.fill).attr("stroke",(f)=>f.strokeFill).attr("stroke-width",(f)=>f.strokeWidth),a.showDataLabel){let f=a.showDataLabelOutsideBar;if(a.chartOrientation==="horizontal"){let D=function(k,T){let{data:R,label:L}=k;return T*L.length*w<=R.width-b};var h=D;y(D,"fitsHorizontally");let w=0.7,b=10,F=p.data.map((k,T)=>({data:k,label:n[T].toString()})).filter((k)=>k.data.width>0&&k.data.height>0),v=F.map((k)=>{let{data:T}=k,R=T.height*0.7;while(!D(k,R)&&R>0)R-=1;return R}),S=Math.floor(Math.min(...v)),x=y((k)=>{if(f)return k.data.x+k.data.width+b;else return k.data.x+k.data.width-b},"determineLabelXPosition");m.selectAll("text").data(F).enter().append("text").attr("x",x).attr("y",(k)=>k.data.y+k.data.height/2).attr("text-anchor",f?"start":"end").attr("dominant-baseline","middle").attr("fill",u.dataLabelColor).attr("font-size",`${S}px`).text((k)=>k.label)}else{let D=function(x,k,T){let{data:R,label:L}=x,M=0.7,U=k*L.length*0.7,Y=R.x+R.width/2,H=Y-U/2,J=Y+U/2,K=H>=R.x&&J<=R.x+R.width,O=R.y+T+k<=R.y+R.height;return K&&O};var Q=D;y(D,"fitsInBar");let w=10,b=p.data.map((x,k)=>({data:x,label:n[k].toString()})).filter((x)=>x.data.width>0&&x.data.height>0),F=b.map((x)=>{let{data:k,label:T}=x,R=k.width/(T.length*0.7);while(!D(x,R,w)&&R>0)R-=1;return R}),v=Math.floor(Math.min(...F)),S=y((x)=>{if(f)return x.data.y-w;else return x.data.y+w},"determineLabelYPosition");m.selectAll("text").data(b).enter().append("text").attr("x",(x)=>x.data.x+x.data.width/2).attr("y",S).attr("text-anchor","middle").attr("dominant-baseline",f?"auto":"hanging").attr("fill",u.dataLabelColor).attr("font-size",`${v}px`).text((x)=>x.label)}}break;case"text":m.selectAll("text").data(p.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",(f)=>f.fill).attr("font-size",(f)=>f.fontSize).attr("dominant-baseline",(f)=>o(f.verticalPos)).attr("text-anchor",(f)=>s(f.horizontalPos)).attr("transform",(f)=>l(f)).text((f)=>f.text);break;case"path":m.selectAll("path").data(p.data).enter().append("path").attr("d",(f)=>f.path).attr("fill",(f)=>f.fill?f.fill:"none").attr("stroke",(f)=>f.strokeFill).attr("stroke-width",(f)=>f.strokeWidth);break}}},"draw"),hRt={draw:IRt},Rie={parser:aRt,db:dRt,renderer:hRt}});var pCA,QRt,pRt,fRt,mRt,DRt,Gie,yRt,Uie;var Mie=P(()=>{Eg();fl();hl();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();pCA=function(){var A=y(function(dA,W,Z,pA){for(Z=Z||{},pA=dA.length;pA--;Z[dA[pA]]=W);return Z},"o"),e=[1,3],t=[1,4],r=[1,5],i=[1,6],u=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],a=[1,22],n=[2,7],o=[1,26],s=[1,27],l=[1,28],g=[1,29],C=[1,33],B=[1,34],E=[1,35],d=[1,36],I=[1,37],h=[1,38],Q=[1,24],p=[1,31],m=[1,32],f=[1,30],D=[1,39],w=[1,40],b=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],F=[1,61],v=[89,90],S=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],x=[27,29],k=[1,70],T=[1,71],R=[1,72],L=[1,73],M=[1,74],U=[1,75],Y=[1,76],H=[1,83],J=[1,80],K=[1,84],O=[1,85],_=[1,86],z=[1,87],j=[1,88],q=[1,89],CA=[1,90],tA=[1,91],lA=[1,92],gA=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],aA=[63,64],RA=[1,101],wA=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],JA=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],TA=[1,110],qA=[1,106],BA=[1,107],bA=[1,108],FA=[1,109],IA=[1,111],nA=[1,116],eA=[1,117],EA=[1,114],mA=[1,115],kA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:y(function(W,Z,pA,AA,DA,rA,KA){var _A=rA.length-1;switch(DA){case 4:this.$=rA[_A].trim(),AA.setAccTitle(this.$);break;case 5:case 6:this.$=rA[_A].trim(),AA.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:AA.setDirection("TB");break;case 18:AA.setDirection("BT");break;case 19:AA.setDirection("RL");break;case 20:AA.setDirection("LR");break;case 21:AA.addRequirement(rA[_A-3],rA[_A-4]);break;case 22:AA.addRequirement(rA[_A-5],rA[_A-6]),AA.setClass([rA[_A-5]],rA[_A-3]);break;case 23:AA.setNewReqId(rA[_A-2]);break;case 24:AA.setNewReqText(rA[_A-2]);break;case 25:AA.setNewReqRisk(rA[_A-2]);break;case 26:AA.setNewReqVerifyMethod(rA[_A-2]);break;case 29:this.$=AA.RequirementType.REQUIREMENT;break;case 30:this.$=AA.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=AA.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=AA.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=AA.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=AA.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=AA.RiskLevel.LOW_RISK;break;case 36:this.$=AA.RiskLevel.MED_RISK;break;case 37:this.$=AA.RiskLevel.HIGH_RISK;break;case 38:this.$=AA.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=AA.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=AA.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=AA.VerifyType.VERIFY_TEST;break;case 42:AA.addElement(rA[_A-3]);break;case 43:AA.addElement(rA[_A-5]),AA.setClass([rA[_A-5]],rA[_A-3]);break;case 44:AA.setNewElementType(rA[_A-2]);break;case 45:AA.setNewElementDocRef(rA[_A-2]);break;case 48:AA.addRelationship(rA[_A-2],rA[_A],rA[_A-4]);break;case 49:AA.addRelationship(rA[_A-2],rA[_A-4],rA[_A]);break;case 50:this.$=AA.Relationships.CONTAINS;break;case 51:this.$=AA.Relationships.COPIES;break;case 52:this.$=AA.Relationships.DERIVES;break;case 53:this.$=AA.Relationships.SATISFIES;break;case 54:this.$=AA.Relationships.VERIFIES;break;case 55:this.$=AA.Relationships.REFINES;break;case 56:this.$=AA.Relationships.TRACES;break;case 57:this.$=rA[_A-2],AA.defineClass(rA[_A-1],rA[_A]);break;case 58:AA.setClass(rA[_A-1],rA[_A]);break;case 59:AA.setClass([rA[_A-2]],rA[_A]);break;case 60:case 62:this.$=[rA[_A]];break;case 61:case 63:this.$=rA[_A-2].concat([rA[_A]]);break;case 64:this.$=rA[_A-2],AA.setCssStyle(rA[_A-1],rA[_A]);break;case 65:this.$=[rA[_A]];break;case 66:rA[_A-2].push(rA[_A]),this.$=rA[_A-2];break;case 68:this.$=rA[_A-1]+rA[_A];break}},"anonymous"),table:[{3:1,4:2,6:e,9:t,11:r,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:e,9:t,11:r,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},A(u,[2,6]),{3:12,4:2,6:e,9:t,11:r,13:i},{1:[2,2]},{4:17,5:a,7:13,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},A(u,[2,4]),A(u,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:a,7:42,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:43,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:44,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:45,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:46,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:47,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:48,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:49,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:50,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},A(b,[2,17]),A(b,[2,18]),A(b,[2,19]),A(b,[2,20]),{30:60,33:62,75:F,89:D,90:w},{30:63,33:62,75:F,89:D,90:w},{30:64,33:62,75:F,89:D,90:w},A(v,[2,29]),A(v,[2,30]),A(v,[2,31]),A(v,[2,32]),A(v,[2,33]),A(v,[2,34]),A(S,[2,81]),A(S,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},A(x,[2,79]),A(x,[2,80]),{27:[1,67],29:[1,68]},A(x,[2,85]),A(x,[2,86]),{62:69,65:k,66:T,67:R,68:L,69:M,70:U,71:Y},{62:77,65:k,66:T,67:R,68:L,69:M,70:U,71:Y},{30:78,33:62,75:F,89:D,90:w},{73:79,75:H,76:J,78:81,79:82,80:K,81:O,82:_,83:z,84:j,85:q,86:CA,87:tA,88:lA},A(gA,[2,60]),A(gA,[2,62]),{73:93,75:H,76:J,78:81,79:82,80:K,81:O,82:_,83:z,84:j,85:q,86:CA,87:tA,88:lA},{30:94,33:62,75:F,76:J,89:D,90:w},{5:[1,95]},{30:96,33:62,75:F,89:D,90:w},{5:[1,97]},{30:98,33:62,75:F,89:D,90:w},{63:[1,99]},A(aA,[2,50]),A(aA,[2,51]),A(aA,[2,52]),A(aA,[2,53]),A(aA,[2,54]),A(aA,[2,55]),A(aA,[2,56]),{64:[1,100]},A(b,[2,59],{76:J}),A(b,[2,64],{76:RA}),{33:103,75:[1,102],89:D,90:w},A(wA,[2,65],{79:104,75:H,80:K,81:O,82:_,83:z,84:j,85:q,86:CA,87:tA,88:lA}),A(JA,[2,67]),A(JA,[2,69]),A(JA,[2,70]),A(JA,[2,71]),A(JA,[2,72]),A(JA,[2,73]),A(JA,[2,74]),A(JA,[2,75]),A(JA,[2,76]),A(JA,[2,77]),A(JA,[2,78]),A(b,[2,57],{76:RA}),A(b,[2,58],{76:J}),{5:TA,28:105,31:qA,34:BA,36:bA,38:FA,40:IA},{27:[1,112],76:J},{5:nA,40:eA,56:113,57:EA,59:mA},{27:[1,118],76:J},{33:119,89:D,90:w},{33:120,89:D,90:w},{75:H,78:121,79:82,80:K,81:O,82:_,83:z,84:j,85:q,86:CA,87:tA,88:lA},A(gA,[2,61]),A(gA,[2,63]),A(JA,[2,68]),A(b,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:TA,28:126,31:qA,34:BA,36:bA,38:FA,40:IA},A(b,[2,28]),{5:[1,127]},A(b,[2,42]),{32:[1,128]},{32:[1,129]},{5:nA,40:eA,56:130,57:EA,59:mA},A(b,[2,47]),{5:[1,131]},A(b,[2,48]),A(b,[2,49]),A(wA,[2,66],{79:104,75:H,80:K,81:O,82:_,83:z,84:j,85:q,86:CA,87:tA,88:lA}),{33:132,89:D,90:w},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},A(b,[2,27]),{5:TA,28:145,31:qA,34:BA,36:bA,38:FA,40:IA},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},A(b,[2,46]),{5:nA,40:eA,56:152,57:EA,59:mA},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},A(b,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},A(b,[2,43]),{5:TA,28:159,31:qA,34:BA,36:bA,38:FA,40:IA},{5:TA,28:160,31:qA,34:BA,36:bA,38:FA,40:IA},{5:TA,28:161,31:qA,34:BA,36:bA,38:FA,40:IA},{5:TA,28:162,31:qA,34:BA,36:bA,38:FA,40:IA},{5:nA,40:eA,56:163,57:EA,59:mA},{5:nA,40:eA,56:164,57:EA,59:mA},A(b,[2,23]),A(b,[2,24]),A(b,[2,25]),A(b,[2,26]),A(b,[2,44]),A(b,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:y(function(W,Z){if(Z.recoverable)this.trace(W);else{var pA=Error(W);throw pA.hash=Z,pA}},"parseError"),parse:y(function(W){var Z=this,pA=[0],AA=[],DA=[null],rA=[],KA=this.table,_A="",zA=0,WA=0,te=0,ZA=2,ee=1,$A=rA.slice.call(arguments,1),oe=Object.create(this.lexer),vA={yy:{}};for(var Pe in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Pe))vA.yy[Pe]=this.yy[Pe];if(oe.setInput(W,vA.yy),vA.yy.lexer=oe,vA.yy.parser=this,typeof oe.yylloc>"u")oe.yylloc={};var MA=oe.yylloc;rA.push(MA);var ke=oe.options&&oe.options.ranges;if(typeof vA.yy.parseError==="function")this.parseError=vA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function We(tt){pA.length=pA.length-2*tt,DA.length=DA.length-tt,rA.length=rA.length-tt}y(We,"popStack");function se(){var tt=AA.pop()||oe.lex()||ee;if(typeof tt!=="number"){if(tt instanceof Array)AA=tt,tt=AA.pop();tt=Z.symbols_[tt]||tt}return tt}y(se,"lex");var Te,je,xe,yA,Ne,He,de={},NA,ce,me,Le;while(!0){if(xe=pA[pA.length-1],this.defaultActions[xe])yA=this.defaultActions[xe];else{if(Te===null||typeof Te>"u")Te=se();yA=KA[xe]&&KA[xe][Te]}if(typeof yA>"u"||!yA.length||!yA[0]){var Lt="";Le=[];for(NA in KA[xe])if(this.terminals_[NA]&&NA>ZA)Le.push("'"+this.terminals_[NA]+"'");if(oe.showPosition)Lt="Parse error on line "+(zA+1)+`:
|
||
`+oe.showPosition()+`
|
||
Expecting `+Le.join(", ")+", got '"+(this.terminals_[Te]||Te)+"'";else Lt="Parse error on line "+(zA+1)+": Unexpected "+(Te==ee?"end of input":"'"+(this.terminals_[Te]||Te)+"'");this.parseError(Lt,{text:oe.match,token:this.terminals_[Te]||Te,line:oe.yylineno,loc:MA,expected:Le})}if(yA[0]instanceof Array&&yA.length>1)throw Error("Parse Error: multiple actions possible at state: "+xe+", token: "+Te);switch(yA[0]){case 1:if(pA.push(Te),DA.push(oe.yytext),rA.push(oe.yylloc),pA.push(yA[1]),Te=null,!je){if(WA=oe.yyleng,_A=oe.yytext,zA=oe.yylineno,MA=oe.yylloc,te>0)te--}else Te=je,je=null;break;case 2:if(ce=this.productions_[yA[1]][1],de.$=DA[DA.length-ce],de._$={first_line:rA[rA.length-(ce||1)].first_line,last_line:rA[rA.length-1].last_line,first_column:rA[rA.length-(ce||1)].first_column,last_column:rA[rA.length-1].last_column},ke)de._$.range=[rA[rA.length-(ce||1)].range[0],rA[rA.length-1].range[1]];if(He=this.performAction.apply(de,[_A,WA,zA,vA.yy,yA[1],DA,rA].concat($A)),typeof He<"u")return He;if(ce)pA=pA.slice(0,-1*ce*2),DA=DA.slice(0,-1*ce),rA=rA.slice(0,-1*ce);pA.push(this.productions_[yA[1]][0]),DA.push(de.$),rA.push(de._$),me=KA[pA[pA.length-2]][pA[pA.length-1]],pA.push(me);break;case 3:return!0}}return!0},"parse")},SA=function(){var dA={EOF:1,parseError:y(function(Z,pA){if(this.yy.parser)this.yy.parser.parseError(Z,pA);else throw Error(Z)},"parseError"),setInput:y(function(W,Z){if(this.yy=Z||this.yy||{},this._input=W,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var W=this._input[0];this.yytext+=W,this.yyleng++,this.offset++,this.match+=W,this.matched+=W;var Z=W.match(/(?:\r\n?|\n).*/g);if(Z)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),W},"input"),unput:y(function(W){var Z=W.length,pA=W.split(/(?:\r\n?|\n)/g);this._input=W+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Z),this.offset-=Z;var AA=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),pA.length-1)this.yylineno-=pA.length-1;var DA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:pA?(pA.length===AA.length?this.yylloc.first_column:0)+AA[AA.length-pA.length].length-pA[0].length:this.yylloc.first_column-Z},this.options.ranges)this.yylloc.range=[DA[0],DA[0]+this.yyleng-Z];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(W){this.unput(this.match.slice(W))},"less"),pastInput:y(function(){var W=this.matched.substr(0,this.matched.length-this.match.length);return(W.length>20?"...":"")+W.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var W=this.match;if(W.length<20)W+=this._input.substr(0,20-W.length);return(W.substr(0,20)+(W.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var W=this.pastInput(),Z=Array(W.length+1).join("-");return W+this.upcomingInput()+`
|
||
`+Z+"^"},"showPosition"),test_match:y(function(W,Z){var pA,AA,DA;if(this.options.backtrack_lexer){if(DA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)DA.yylloc.range=this.yylloc.range.slice(0)}if(AA=W[0].match(/(?:\r\n?|\n).*/g),AA)this.yylineno+=AA.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:AA?AA[AA.length-1].length-AA[AA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+W[0].length},this.yytext+=W[0],this.match+=W[0],this.matches=W,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(W[0].length),this.matched+=W[0],pA=this.performAction.call(this,this.yy,this,Z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(pA)return pA;else if(this._backtrack){for(var rA in DA)this[rA]=DA[rA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var W,Z,pA,AA;if(!this._more)this.yytext="",this.match="";var DA=this._currentRules();for(var rA=0;rA<DA.length;rA++)if(pA=this._input.match(this.rules[DA[rA]]),pA&&(!Z||pA[0].length>Z[0].length)){if(Z=pA,AA=rA,this.options.backtrack_lexer)if(W=this.test_match(pA,DA[rA]),W!==!1)return W;else if(this._backtrack){Z=!1;continue}else return!1;else if(!this.options.flex)break}if(Z){if(W=this.test_match(Z,DA[AA]),W!==!1)return W;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var Z=this.next();if(Z)return Z;else return this.lex()},"lex"),begin:y(function(Z){this.conditionStack.push(Z)},"begin"),popState:y(function(){var Z=this.conditionStack.length-1;if(Z>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(Z){if(Z=this.conditionStack.length-1-Math.abs(Z||0),Z>=0)return this.conditionStack[Z];else return"INITIAL"},"topState"),pushState:y(function(Z){this.begin(Z)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(Z,pA,AA,DA){var rA=DA;switch(AA){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;break;case 50:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 56:break;case 57:this.begin("string");break;case 58:this.popState();break;case 59:return this.begin("style"),72;break;case 60:return this.begin("style"),74;break;case 61:return 61;case 62:return 64;case 63:return 63;case 64:this.begin("string");break;case 65:this.popState();break;case 66:return"qString";case 67:return pA.yytext=pA.yytext.trim(),89;break;case 68:return 75;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}};return dA}();kA.lexer=SA;function YA(){this.yy={}}return y(YA,"Parser"),YA.prototype=kA,kA.Parser=YA,new YA}();pCA.parser=pCA;QRt=pCA,pRt=class{constructor(){this.relations=[],this.latestRequirement=this.getInitialRequirement(),this.requirements=new Map,this.latestElement=this.getInitialElement(),this.elements=new Map,this.classes=new Map,this.direction="TB",this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},this.setAccTitle=Dr,this.getAccTitle=vr,this.setAccDescription=kr,this.getAccDescription=Fr,this.setDiagramTitle=Mr,this.getDiagramTitle=xr,this.getConfig=y(()=>OA().requirement,"getConfig"),this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{y(this,"RequirementDB")}getDirection(){return this.direction}setDirection(A){this.direction=A}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(A,e){if(!this.requirements.has(A))this.requirements.set(A,{name:A,type:e,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]});return this.resetLatestRequirement(),this.requirements.get(A)}getRequirements(){return this.requirements}setNewReqId(A){if(this.latestRequirement!==void 0)this.latestRequirement.requirementId=A}setNewReqText(A){if(this.latestRequirement!==void 0)this.latestRequirement.text=A}setNewReqRisk(A){if(this.latestRequirement!==void 0)this.latestRequirement.risk=A}setNewReqVerifyMethod(A){if(this.latestRequirement!==void 0)this.latestRequirement.verifyMethod=A}addElement(A){if(!this.elements.has(A))this.elements.set(A,{name:A,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),sA.info("Added new element: ",A);return this.resetLatestElement(),this.elements.get(A)}getElements(){return this.elements}setNewElementType(A){if(this.latestElement!==void 0)this.latestElement.type=A}setNewElementDocRef(A){if(this.latestElement!==void 0)this.latestElement.docRef=A}addRelationship(A,e,t){this.relations.push({type:A,src:e,dst:t})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,sr()}setCssStyle(A,e){for(let t of A){let r=this.requirements.get(t)??this.elements.get(t);if(!e||!r)return;for(let i of e)if(i.includes(","))r.cssStyles.push(...i.split(","));else r.cssStyles.push(i)}}setClass(A,e){for(let t of A){let r=this.requirements.get(t)??this.elements.get(t);if(r)for(let i of e){r.classes.push(i);let u=this.classes.get(i)?.styles;if(u)r.cssStyles.push(...u)}}}defineClass(A,e){for(let t of A){let r=this.classes.get(t);if(r===void 0)r={id:t,styles:[],textStyles:[]},this.classes.set(t,r);if(e)e.forEach(function(i){if(/color/.exec(i)){let u=i.replace("fill","bgFill");r.textStyles.push(u)}r.styles.push(i)});this.requirements.forEach((i)=>{if(i.classes.includes(t))i.cssStyles.push(...e.flatMap((u)=>u.split(",")))}),this.elements.forEach((i)=>{if(i.classes.includes(t))i.cssStyles.push(...e.flatMap((u)=>u.split(",")))})}}getClasses(){return this.classes}getData(){let A=OA(),e=[],t=[];for(let r of this.requirements.values()){let i=r;i.id=r.name,i.cssStyles=r.cssStyles,i.cssClasses=r.classes.join(" "),i.shape="requirementBox",i.look=A.look,i.colorIndex=e.length,e.push(i)}for(let r of this.elements.values()){let i=r;i.shape="requirementBox",i.look=A.look,i.id=r.name,i.cssStyles=r.cssStyles,i.cssClasses=r.classes.join(" "),i.colorIndex=e.length,e.push(i)}for(let r of this.relations){let i=0,u=r.type===this.Relationships.CONTAINS,a={id:`${r.src}-${r.dst}-${i}`,start:this.requirements.get(r.src)?.name??this.elements.get(r.src)?.name,end:this.requirements.get(r.dst)?.name??this.elements.get(r.dst)?.name,label:`<<${r.type}>>`,classes:"relationshipLine",style:["fill:none",u?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:u?"normal":"dashed",arrowTypeStart:u?"requirement_contains":"",arrowTypeEnd:u?"":"requirement_arrow",look:A.look,labelType:"markdown"};t.push(a),i++}return{nodes:e,edges:t,other:{},config:A,direction:this.getDirection()}}},fRt=y((A)=>{let e=st(),{themeVariables:t,look:r}=e,{bkgColorArray:i,borderColorArray:u}=t;if(!u?.length)return"";let a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)a+=`
|
||
|
||
[data-look="${r}"][data-color-id="color-${n}"].node path {
|
||
stroke: ${u[n]};
|
||
fill: ${i?.length?i[n]:""};
|
||
}
|
||
|
||
[data-look="${r}"][data-color-id="color-${n}"].node rect {
|
||
stroke: ${u[n]};
|
||
fill: ${i?.length?i[n]:""};
|
||
}
|
||
`;return a},"genColor"),mRt=y((A)=>{let e=st(),{look:t,themeVariables:r}=e,{requirementEdgeLabelBackground:i}=r;return`
|
||
${fRt(A)}
|
||
marker {
|
||
fill: ${A.relationColor};
|
||
stroke: ${A.relationColor};
|
||
}
|
||
|
||
marker.cross {
|
||
stroke: ${A.lineColor};
|
||
}
|
||
|
||
svg {
|
||
font-family: ${A.fontFamily};
|
||
font-size: ${A.fontSize};
|
||
}
|
||
|
||
.reqBox {
|
||
fill: ${A.requirementBackground};
|
||
fill-opacity: 1.0;
|
||
stroke: ${A.requirementBorderColor};
|
||
stroke-width: ${A.requirementBorderSize};
|
||
}
|
||
|
||
.reqTitle, .reqLabel{
|
||
fill: ${A.requirementTextColor};
|
||
}
|
||
.reqLabelBox {
|
||
fill: ${A.relationLabelBackground};
|
||
fill-opacity: 1.0;
|
||
}
|
||
|
||
.req-title-line {
|
||
stroke: ${A.requirementBorderColor};
|
||
stroke-width: ${A.requirementBorderSize};
|
||
}
|
||
.relationshipLine {
|
||
stroke: ${A.relationColor};
|
||
stroke-width: ${t==="neo"?A.strokeWidth:"1px"};
|
||
}
|
||
.relationshipLabel {
|
||
fill: ${A.relationLabelColor};
|
||
}
|
||
.edgeLabel {
|
||
background-color: ${A.edgeLabelBackground};
|
||
}
|
||
.edgeLabel .label rect {
|
||
fill: ${A.edgeLabelBackground};
|
||
}
|
||
.edgeLabel .label text {
|
||
fill: ${A.relationLabelColor};
|
||
}
|
||
.divider {
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: 1;
|
||
}
|
||
.label {
|
||
font-family: ${A.fontFamily};
|
||
color: ${A.nodeTextColor||A.textColor};
|
||
}
|
||
.label text,span {
|
||
fill: ${A.nodeTextColor||A.textColor};
|
||
color: ${A.nodeTextColor||A.textColor};
|
||
}
|
||
.labelBkg {
|
||
background-color: ${i??A.edgeLabelBackground};
|
||
}
|
||
|
||
`},"getStyles"),DRt=mRt,Gie={};gQ(Gie,{draw:()=>yRt});yRt=y(async function(A,e,t,r){sA.info("REF0:"),sA.info("Drawing requirement diagram (unified)",e);let{securityLevel:i,state:u,layout:a,look:n}=OA(),o=r.db.getData(),s=Ic(e,i);o.type=r.type,o.layoutAlgorithm=ME(a),o.nodeSpacing=u?.nodeSpacing??50,o.rankSpacing=u?.rankSpacing??50,o.markers=n==="neo"?["requirement_contains_neo","requirement_arrow_neo"]:["requirement_contains","requirement_arrow"],o.diagramId=e,await cc(o,s);let l=8;Jt.insertTitle(s,"requirementDiagramTitleText",u?.titleTopMargin??25,r.db.getDiagramTitle()),pl(s,l,"requirementDiagram",u?.useMaxWidth??!0)},"draw"),Uie={parser:QRt,get db(){return new pRt},renderer:Gie,styles:DRt}});async function Pie(A,e){Ze.bumpVerticalPos(10);let{startx:t,stopx:r,message:i}=e,u=_e.splitBreaks(i).length,a=da(i),n=a?await DD(i,OA()):Jt.calculateTextDimensions(i,ym(ne));if(!a){let g=n.height/u;e.height+=g,Ze.bumpVerticalPos(g)}let o,s=n.height-10,l=n.width;if(t===r){if(o=Ze.getVerticalPos()+s,!ne.rightAngles)s+=ne.boxMargin,o=Ze.getVerticalPos()+s;s+=30;let g=_e.getMax(l/2,ne.width/2);Ze.insert(t-g,Ze.getVerticalPos()-10+s,r+g,Ze.getVerticalPos()+30+s)}else s+=ne.boxMargin,o=Ze.getVerticalPos()+s,Ze.insert(t,o-10,r,o);return Ze.bumpVerticalPos(s),e.height+=s,e.stopy=e.starty+e.height,Ze.insert(e.fromBounds,e.starty,e.toBounds,e.stopy),o}function WC(A,e,t,r,i){Ze.bumpVerticalPos(t);let u=r;if(e.id&&e.message&&A[e.id]){let a=A[e.id].width,n=ym(ne);e.message=Jt.wrapLabel(`[${e.message}]`,a-2*ne.wrapPadding,n),e.width=a,e.wrap=!0;let o=Jt.calculateTextDimensions(e.message,n),s=_e.getMax(o.height,ne.labelBoxHeight);u=r+s,sA.debug(`${s} - ${e.message}`)}i(e),Ze.bumpVerticalPos(u)}function qie(A,e,t,r,i,u,a){function n(l,g){if(l.x<i.get(A.from).x)Ze.insert(e.stopx-g,e.starty,e.startx,e.stopy+l.height/2+ne.noteMargin),e.stopx=e.stopx+g;else Ze.insert(e.startx,e.starty,e.stopx+g,e.stopy+l.height/2+ne.noteMargin),e.stopx=e.stopx-g}y(n,"receiverAdjustment");function o(l,g){if(l.x<i.get(A.to).x)Ze.insert(e.startx-g,e.starty,e.stopx,e.stopy+l.height/2+ne.noteMargin),e.startx=e.startx+g;else Ze.insert(e.stopx,e.starty,e.startx+g,e.stopy+l.height/2+ne.noteMargin),e.startx=e.startx-g}y(o,"senderAdjustment");let s=[vO.ACTOR,vO.CONTROL,vO.ENTITY,vO.DATABASE];if(u.get(A.to)==r){let l=i.get(A.to),g=s.includes(l.type)?mm/2+3:l.width/2+3;n(l,g),l.starty=t-l.height/2,Ze.bumpVerticalPos(l.height/2)}else if(a.get(A.from)==r){let l=i.get(A.from);if(ne.mirrorActors){let g=s.includes(l.type)?mm/2:l.width/2;o(l,g)}l.stopy=t-l.height/2,Ze.bumpVerticalPos(l.height/2)}else if(a.get(A.to)==r){let l=i.get(A.to);if(ne.mirrorActors){let g=s.includes(l.type)?mm/2+3:l.width/2+3;n(l,g)}l.stopy=t-l.height/2,Ze.bumpVerticalPos(l.height/2)}}async function zie(A,e,t){let r={};for(let i of e)if(A.get(i.to)&&A.get(i.from)){let u=A.get(i.to);if(i.placement===t.db.PLACEMENT.LEFTOF&&!u.prevActor)continue;if(i.placement===t.db.PLACEMENT.RIGHTOF&&!u.nextActor)continue;let a=i.placement!==void 0,n=!a,o=a?v6(ne):ym(ne),s=i.wrap?Jt.wrapLabel(i.message,ne.width-2*ne.wrapPadding,o):i.message,g=(da(s)?await DD(i.message,OA()):Jt.calculateTextDimensions(s,o)).width+2*ne.wrapPadding;if(n&&i.from===u.nextActor)r[i.to]=_e.getMax(r[i.to]||0,g);else if(n&&i.from===u.prevActor)r[i.from]=_e.getMax(r[i.from]||0,g);else if(n&&i.from===i.to)r[i.from]=_e.getMax(r[i.from]||0,g/2),r[i.to]=_e.getMax(r[i.to]||0,g/2);else if(i.placement===t.db.PLACEMENT.RIGHTOF)r[i.from]=_e.getMax(r[i.from]||0,g);else if(i.placement===t.db.PLACEMENT.LEFTOF)r[u.prevActor]=_e.getMax(r[u.prevActor]||0,g);else if(i.placement===t.db.PLACEMENT.OVER){if(u.prevActor)r[u.prevActor]=_e.getMax(r[u.prevActor]||0,g/2);if(u.nextActor)r[i.from]=_e.getMax(r[i.from]||0,g/2)}}return sA.debug("maxMessageWidthPerActor:",r),r}async function Zie(A,e,t){let r=0;for(let u of A.keys()){let a=A.get(u);if(a.wrap)a.description=Jt.wrapLabel(a.description,ne.width-2*ne.wrapPadding,DCA(ne));let n=da(a.description)?await DD(a.description,OA()):Jt.calculateTextDimensions(a.description,DCA(ne));a.width=a.wrap?ne.width:_e.getMax(ne.width,n.width+2*ne.wrapPadding),a.height=a.wrap?_e.getMax(n.height,ne.height):ne.height,r=_e.getMax(r,a.height)}for(let u in e){let a=A.get(u);if(!a)continue;let n=A.get(a.nextActor);if(!n){let g=e[u]+ne.actorMargin-a.width/2;a.margin=_e.getMax(g,ne.actorMargin);continue}let s=e[u]+ne.actorMargin-a.width/2-n.width/2;a.margin=_e.getMax(s,ne.actorMargin)}let i=0;return t.forEach((u)=>{let a=ym(ne),n=u.actorKeys.reduce((g,C)=>g+=A.get(C).width+(A.get(C).margin||0),0),o=ne.boxMargin*8;if(n+=o,n-=2*ne.boxTextMargin,u.wrap)u.name=Jt.wrapLabel(u.name,n-2*ne.wrapPadding,a);let s=Jt.calculateTextDimensions(u.name,a);i=_e.getMax(s.height,i);let l=_e.getMax(n,s.width+2*ne.wrapPadding);if(u.margin=ne.boxTextMargin,n<l){let g=(l-n)/2;u.margin+=g}}),t.forEach((u)=>u.textMaxHeight=i),_e.getMax(r,ne.height)}var wCA,mCA,wRt,bRt,vRt,kRt,vO,FRt,xRt,SRt,mm=36,E1="actor-top",d1="actor-bottom",FO="actor-box",Dm="actor-man",Qh,g7,LRt,xO,kO,k6,Hie,Ei=-1,Kie,RRt,NRt,GRt,URt,MRt,TRt,YRt,HRt,KRt,JRt,ORt,PRt,_Rt,Jie,WRt,qRt,zRt,ZRt,VRt,jRt,XRt,$Rt,Oie,ANt,ph,eNt,tNt,rNt,iNt,uNt,zu,ne,Ze,aNt,Tie,ym,v6,DCA,nNt,oNt,yCA,_ie,Wie,SO,Yie,sNt,lNt,gNt,cNt=4,CNt=6,fCA,BNt,Vie,ENt,dNt,INt,hNt,jie;var Xie=P(()=>{UY();ff();Bg();ai();rr();ir();Nt();Pr();wCA=yu(ey(),1),mCA=function(){var A=y(function(WA,te,ZA,ee){for(ZA=ZA||{},ee=WA.length;ee--;ZA[WA[ee]]=te);return ZA},"o"),e=[1,2],t=[1,3],r=[1,4],i=[2,4],u=[1,9],a=[1,11],n=[1,12],o=[1,14],s=[1,15],l=[1,17],g=[1,18],C=[1,19],B=[1,25],E=[1,26],d=[1,27],I=[1,28],h=[1,29],Q=[1,30],p=[1,31],m=[1,32],f=[1,33],D=[1,34],w=[1,35],b=[1,36],F=[1,37],v=[1,38],S=[1,39],x=[1,40],k=[1,42],T=[1,43],R=[1,44],L=[1,45],M=[1,46],U=[1,47],Y=[1,4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,48,49,50,51,53,54,56,61,62,63,64,73],H=[1,74],J=[1,80],K=[1,81],O=[1,82],_=[1,83],z=[1,84],j=[1,85],q=[1,86],CA=[1,87],tA=[1,88],lA=[1,89],gA=[1,90],aA=[1,91],RA=[1,92],wA=[1,93],JA=[1,94],TA=[1,95],qA=[1,96],BA=[1,97],bA=[1,98],FA=[1,99],IA=[1,100],nA=[1,101],eA=[1,102],EA=[1,103],mA=[1,104],kA=[1,105],SA=[2,78],YA=[4,5,17,51,53,54],dA=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,51,53,54,56,61,62,63,64,73],W=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,50,51,53,54,56,61,62,63,64,73],Z=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,49,51,53,54,56,61,62,63,64,73],pA=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,48,51,53,54,56,61,62,63,64,73],AA=[5,52],DA=[70,71,72,73],rA=[1,151],KA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,INVALID:10,box_section:11,box_line:12,participant_statement:13,create:14,box:15,restOfLine:16,end:17,signal:18,autonumber:19,NUM:20,off:21,activate:22,actor:23,deactivate:24,note_statement:25,links_statement:26,link_statement:27,properties_statement:28,details_statement:29,title:30,legacy_title:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,loop:37,rect:38,opt:39,alt:40,else_sections:41,par:42,par_sections:43,par_over:44,critical:45,option_sections:46,break:47,option:48,and:49,else:50,participant:51,AS:52,participant_actor:53,destroy:54,actor_with_config:55,note:56,placement:57,text2:58,over:59,actor_pair:60,links:61,link:62,properties:63,details:64,spaceList:65,",":66,left_of:67,right_of:68,signaltype:69,"+":70,"-":71,"()":72,ACTOR:73,config_object:74,CONFIG_START:75,CONFIG_CONTENT:76,CONFIG_END:77,SOLID_OPEN_ARROW:78,DOTTED_OPEN_ARROW:79,SOLID_ARROW:80,SOLID_ARROW_TOP:81,SOLID_ARROW_BOTTOM:82,STICK_ARROW_TOP:83,STICK_ARROW_BOTTOM:84,SOLID_ARROW_TOP_DOTTED:85,SOLID_ARROW_BOTTOM_DOTTED:86,STICK_ARROW_TOP_DOTTED:87,STICK_ARROW_BOTTOM_DOTTED:88,SOLID_ARROW_TOP_REVERSE:89,SOLID_ARROW_BOTTOM_REVERSE:90,STICK_ARROW_TOP_REVERSE:91,STICK_ARROW_BOTTOM_REVERSE:92,SOLID_ARROW_TOP_REVERSE_DOTTED:93,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:94,STICK_ARROW_TOP_REVERSE_DOTTED:95,STICK_ARROW_BOTTOM_REVERSE_DOTTED:96,BIDIRECTIONAL_SOLID_ARROW:97,DOTTED_ARROW:98,BIDIRECTIONAL_DOTTED_ARROW:99,SOLID_CROSS:100,DOTTED_CROSS:101,SOLID_POINT:102,DOTTED_POINT:103,TXT:104,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",10:"INVALID",14:"create",15:"box",16:"restOfLine",17:"end",19:"autonumber",20:"NUM",21:"off",22:"activate",24:"deactivate",30:"title",31:"legacy_title",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"loop",38:"rect",39:"opt",40:"alt",42:"par",44:"par_over",45:"critical",47:"break",48:"option",49:"and",50:"else",51:"participant",52:"AS",53:"participant_actor",54:"destroy",56:"note",59:"over",61:"links",62:"link",63:"properties",64:"details",66:",",67:"left_of",68:"right_of",70:"+",71:"-",72:"()",73:"ACTOR",75:"CONFIG_START",76:"CONFIG_CONTENT",77:"CONFIG_END",78:"SOLID_OPEN_ARROW",79:"DOTTED_OPEN_ARROW",80:"SOLID_ARROW",81:"SOLID_ARROW_TOP",82:"SOLID_ARROW_BOTTOM",83:"STICK_ARROW_TOP",84:"STICK_ARROW_BOTTOM",85:"SOLID_ARROW_TOP_DOTTED",86:"SOLID_ARROW_BOTTOM_DOTTED",87:"STICK_ARROW_TOP_DOTTED",88:"STICK_ARROW_BOTTOM_DOTTED",89:"SOLID_ARROW_TOP_REVERSE",90:"SOLID_ARROW_BOTTOM_REVERSE",91:"STICK_ARROW_TOP_REVERSE",92:"STICK_ARROW_BOTTOM_REVERSE",93:"SOLID_ARROW_TOP_REVERSE_DOTTED",94:"SOLID_ARROW_BOTTOM_REVERSE_DOTTED",95:"STICK_ARROW_TOP_REVERSE_DOTTED",96:"STICK_ARROW_BOTTOM_REVERSE_DOTTED",97:"BIDIRECTIONAL_SOLID_ARROW",98:"DOTTED_ARROW",99:"BIDIRECTIONAL_DOTTED_ARROW",100:"SOLID_CROSS",101:"DOTTED_CROSS",102:"SOLID_POINT",103:"DOTTED_POINT",104:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[8,1],[11,0],[11,2],[12,2],[12,1],[12,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[46,1],[46,4],[43,1],[43,4],[41,1],[41,4],[13,5],[13,3],[13,5],[13,3],[13,3],[13,5],[13,3],[13,5],[13,3],[25,4],[25,4],[26,3],[27,3],[28,3],[29,3],[65,2],[65,1],[60,3],[60,1],[57,1],[57,1],[18,5],[18,5],[18,5],[18,5],[18,6],[18,4],[55,2],[74,3],[23,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[58,1]],performAction:y(function(te,ZA,ee,$A,oe,vA,Pe){var MA=vA.length-1;switch(oe){case 3:return $A.apply(vA[MA]),vA[MA];break;case 4:case 10:this.$=[];break;case 5:case 11:vA[MA-1].push(vA[MA]),this.$=vA[MA-1];break;case 6:case 7:case 12:case 13:this.$=vA[MA];break;case 8:case 9:case 14:this.$=[];break;case 16:vA[MA].type="createParticipant",this.$=vA[MA];break;case 17:vA[MA-1].unshift({type:"boxStart",boxData:$A.parseBoxData(vA[MA-2])}),vA[MA-1].push({type:"boxEnd",boxText:vA[MA-2]}),this.$=vA[MA-1];break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(vA[MA-2]),sequenceIndexStep:Number(vA[MA-1]),sequenceVisible:!0,signalType:$A.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceIndex:Number(vA[MA-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:$A.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:$A.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:$A.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"activeStart",signalType:$A.LINETYPE.ACTIVE_START,actor:vA[MA-1].actor};break;case 24:this.$={type:"activeEnd",signalType:$A.LINETYPE.ACTIVE_END,actor:vA[MA-1].actor};break;case 30:$A.setDiagramTitle(vA[MA].substring(6)),this.$=vA[MA].substring(6);break;case 31:$A.setDiagramTitle(vA[MA].substring(7)),this.$=vA[MA].substring(7);break;case 32:this.$=vA[MA].trim(),$A.setAccTitle(this.$);break;case 33:case 34:this.$=vA[MA].trim(),$A.setAccDescription(this.$);break;case 35:vA[MA-1].unshift({type:"loopStart",loopText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.LOOP_START}),vA[MA-1].push({type:"loopEnd",loopText:vA[MA-2],signalType:$A.LINETYPE.LOOP_END}),this.$=vA[MA-1];break;case 36:vA[MA-1].unshift({type:"rectStart",color:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.RECT_START}),vA[MA-1].push({type:"rectEnd",color:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.RECT_END}),this.$=vA[MA-1];break;case 37:vA[MA-1].unshift({type:"optStart",optText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.OPT_START}),vA[MA-1].push({type:"optEnd",optText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.OPT_END}),this.$=vA[MA-1];break;case 38:vA[MA-1].unshift({type:"altStart",altText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.ALT_START}),vA[MA-1].push({type:"altEnd",signalType:$A.LINETYPE.ALT_END}),this.$=vA[MA-1];break;case 39:vA[MA-1].unshift({type:"parStart",parText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.PAR_START}),vA[MA-1].push({type:"parEnd",signalType:$A.LINETYPE.PAR_END}),this.$=vA[MA-1];break;case 40:vA[MA-1].unshift({type:"parStart",parText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.PAR_OVER_START}),vA[MA-1].push({type:"parEnd",signalType:$A.LINETYPE.PAR_END}),this.$=vA[MA-1];break;case 41:vA[MA-1].unshift({type:"criticalStart",criticalText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.CRITICAL_START}),vA[MA-1].push({type:"criticalEnd",signalType:$A.LINETYPE.CRITICAL_END}),this.$=vA[MA-1];break;case 42:vA[MA-1].unshift({type:"breakStart",breakText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.BREAK_START}),vA[MA-1].push({type:"breakEnd",optText:$A.parseMessage(vA[MA-2]),signalType:$A.LINETYPE.BREAK_END}),this.$=vA[MA-1];break;case 44:this.$=vA[MA-3].concat([{type:"option",optionText:$A.parseMessage(vA[MA-1]),signalType:$A.LINETYPE.CRITICAL_OPTION},vA[MA]]);break;case 46:this.$=vA[MA-3].concat([{type:"and",parText:$A.parseMessage(vA[MA-1]),signalType:$A.LINETYPE.PAR_AND},vA[MA]]);break;case 48:this.$=vA[MA-3].concat([{type:"else",altText:$A.parseMessage(vA[MA-1]),signalType:$A.LINETYPE.ALT_ELSE},vA[MA]]);break;case 49:vA[MA-3].draw="participant",vA[MA-3].type="addParticipant",vA[MA-3].description=$A.parseMessage(vA[MA-1]),this.$=vA[MA-3];break;case 50:vA[MA-1].draw="participant",vA[MA-1].type="addParticipant",this.$=vA[MA-1];break;case 51:vA[MA-3].draw="actor",vA[MA-3].type="addParticipant",vA[MA-3].description=$A.parseMessage(vA[MA-1]),this.$=vA[MA-3];break;case 52:case 57:vA[MA-1].draw="actor",vA[MA-1].type="addParticipant",this.$=vA[MA-1];break;case 53:vA[MA-1].type="destroyParticipant",this.$=vA[MA-1];break;case 54:vA[MA-3].draw="participant",vA[MA-3].type="addParticipant",vA[MA-3].description=$A.parseMessage(vA[MA-1]),this.$=vA[MA-3];break;case 55:vA[MA-1].draw="participant",vA[MA-1].type="addParticipant",this.$=vA[MA-1];break;case 56:vA[MA-3].draw="actor",vA[MA-3].type="addParticipant",vA[MA-3].description=$A.parseMessage(vA[MA-1]),this.$=vA[MA-3];break;case 58:this.$=[vA[MA-1],{type:"addNote",placement:vA[MA-2],actor:vA[MA-1].actor,text:vA[MA]}];break;case 59:vA[MA-2]=[].concat(vA[MA-1],vA[MA-1]).slice(0,2),vA[MA-2][0]=vA[MA-2][0].actor,vA[MA-2][1]=vA[MA-2][1].actor,this.$=[vA[MA-1],{type:"addNote",placement:$A.PLACEMENT.OVER,actor:vA[MA-2].slice(0,2),text:vA[MA]}];break;case 60:this.$=[vA[MA-1],{type:"addLinks",actor:vA[MA-1].actor,text:vA[MA]}];break;case 61:this.$=[vA[MA-1],{type:"addALink",actor:vA[MA-1].actor,text:vA[MA]}];break;case 62:this.$=[vA[MA-1],{type:"addProperties",actor:vA[MA-1].actor,text:vA[MA]}];break;case 63:this.$=[vA[MA-1],{type:"addDetails",actor:vA[MA-1].actor,text:vA[MA]}];break;case 66:this.$=[vA[MA-2],vA[MA]];break;case 67:this.$=vA[MA];break;case 68:this.$=$A.PLACEMENT.LEFTOF;break;case 69:this.$=$A.PLACEMENT.RIGHTOF;break;case 70:this.$=[vA[MA-4],vA[MA-1],{type:"addMessage",from:vA[MA-4].actor,to:vA[MA-1].actor,signalType:vA[MA-3],msg:vA[MA],activate:!0},{type:"activeStart",signalType:$A.LINETYPE.ACTIVE_START,actor:vA[MA-1].actor}];break;case 71:this.$=[vA[MA-4],vA[MA-1],{type:"addMessage",from:vA[MA-4].actor,to:vA[MA-1].actor,signalType:vA[MA-3],msg:vA[MA]},{type:"activeEnd",signalType:$A.LINETYPE.ACTIVE_END,actor:vA[MA-4].actor}];break;case 72:this.$=[vA[MA-4],vA[MA-1],{type:"addMessage",from:vA[MA-4].actor,to:vA[MA-1].actor,signalType:vA[MA-3],msg:vA[MA],activate:!0,centralConnection:$A.LINETYPE.CENTRAL_CONNECTION},{type:"centralConnection",signalType:$A.LINETYPE.CENTRAL_CONNECTION,actor:vA[MA-1].actor}];break;case 73:this.$=[vA[MA-4],vA[MA-1],{type:"addMessage",from:vA[MA-4].actor,to:vA[MA-1].actor,signalType:vA[MA-2],msg:vA[MA],activate:!1,centralConnection:$A.LINETYPE.CENTRAL_CONNECTION_REVERSE},{type:"centralConnectionReverse",signalType:$A.LINETYPE.CENTRAL_CONNECTION_REVERSE,actor:vA[MA-4].actor}];break;case 74:this.$=[vA[MA-5],vA[MA-1],{type:"addMessage",from:vA[MA-5].actor,to:vA[MA-1].actor,signalType:vA[MA-3],msg:vA[MA],activate:!0,centralConnection:$A.LINETYPE.CENTRAL_CONNECTION_DUAL},{type:"centralConnection",signalType:$A.LINETYPE.CENTRAL_CONNECTION,actor:vA[MA-1].actor},{type:"centralConnectionReverse",signalType:$A.LINETYPE.CENTRAL_CONNECTION_REVERSE,actor:vA[MA-5].actor}];break;case 75:this.$=[vA[MA-3],vA[MA-1],{type:"addMessage",from:vA[MA-3].actor,to:vA[MA-1].actor,signalType:vA[MA-2],msg:vA[MA]}];break;case 76:this.$={type:"addParticipant",actor:vA[MA-1],config:vA[MA]};break;case 77:this.$=vA[MA-1].trim();break;case 78:this.$={type:"addParticipant",actor:vA[MA]};break;case 79:this.$=$A.LINETYPE.SOLID_OPEN;break;case 80:this.$=$A.LINETYPE.DOTTED_OPEN;break;case 81:this.$=$A.LINETYPE.SOLID;break;case 82:this.$=$A.LINETYPE.SOLID_TOP;break;case 83:this.$=$A.LINETYPE.SOLID_BOTTOM;break;case 84:this.$=$A.LINETYPE.STICK_TOP;break;case 85:this.$=$A.LINETYPE.STICK_BOTTOM;break;case 86:this.$=$A.LINETYPE.SOLID_TOP_DOTTED;break;case 87:this.$=$A.LINETYPE.SOLID_BOTTOM_DOTTED;break;case 88:this.$=$A.LINETYPE.STICK_TOP_DOTTED;break;case 89:this.$=$A.LINETYPE.STICK_BOTTOM_DOTTED;break;case 90:this.$=$A.LINETYPE.SOLID_ARROW_TOP_REVERSE;break;case 91:this.$=$A.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE;break;case 92:this.$=$A.LINETYPE.STICK_ARROW_TOP_REVERSE;break;case 93:this.$=$A.LINETYPE.STICK_ARROW_BOTTOM_REVERSE;break;case 94:this.$=$A.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED;break;case 95:this.$=$A.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED;break;case 96:this.$=$A.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED;break;case 97:this.$=$A.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED;break;case 98:this.$=$A.LINETYPE.BIDIRECTIONAL_SOLID;break;case 99:this.$=$A.LINETYPE.DOTTED;break;case 100:this.$=$A.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 101:this.$=$A.LINETYPE.SOLID_CROSS;break;case 102:this.$=$A.LINETYPE.DOTTED_CROSS;break;case 103:this.$=$A.LINETYPE.SOLID_POINT;break;case 104:this.$=$A.LINETYPE.DOTTED_POINT;break;case 105:this.$=$A.parseMessage(vA[MA].trim().substring(1));break}},"anonymous"),table:[{3:1,4:e,5:t,6:r},{1:[3]},{3:5,4:e,5:t,6:r},{3:6,4:e,5:t,6:r},A([1,4,5,10,14,15,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,51,53,54,56,61,62,63,64,73],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},A(Y,[2,5]),{9:48,13:13,14:o,15:s,18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},A(Y,[2,7]),A(Y,[2,8]),A(Y,[2,9]),A(Y,[2,15]),{13:49,51:v,53:S,54:x},{16:[1,50]},{5:[1,51]},{5:[1,54],20:[1,52],21:[1,53]},{23:55,73:U},{23:56,73:U},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},{5:[1,61]},A(Y,[2,30]),A(Y,[2,31]),{33:[1,62]},{35:[1,63]},A(Y,[2,34]),{16:[1,64]},{16:[1,65]},{16:[1,66]},{16:[1,67]},{16:[1,68]},{16:[1,69]},{16:[1,70]},{16:[1,71]},{23:72,55:73,73:H},{23:75,55:76,73:H},{23:77,73:U},{69:78,72:[1,79],78:J,79:K,80:O,81:_,82:z,83:j,84:q,85:CA,86:tA,87:lA,88:gA,89:aA,90:RA,91:wA,92:JA,93:TA,94:qA,95:BA,96:bA,97:FA,98:IA,99:nA,100:eA,101:EA,102:mA,103:kA},{57:106,59:[1,107],67:[1,108],68:[1,109]},{23:110,73:U},{23:111,73:U},{23:112,73:U},{23:113,73:U},A([5,66,72,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104],SA),A(Y,[2,6]),A(Y,[2,16]),A(YA,[2,10],{11:114}),A(Y,[2,18]),{5:[1,116],20:[1,115]},{5:[1,117]},A(Y,[2,22]),{5:[1,118]},{5:[1,119]},A(Y,[2,25]),A(Y,[2,26]),A(Y,[2,27]),A(Y,[2,28]),A(Y,[2,29]),A(Y,[2,32]),A(Y,[2,33]),A(dA,i,{7:120}),A(dA,i,{7:121}),A(dA,i,{7:122}),A(W,i,{41:123,7:124}),A(Z,i,{43:125,7:126}),A(Z,i,{7:126,43:127}),A(pA,i,{46:128,7:129}),A(dA,i,{7:130}),{5:[1,132],52:[1,131]},{5:[1,134],52:[1,133]},A(AA,SA,{74:135,75:[1,136]}),{5:[1,138],52:[1,137]},{5:[1,140],52:[1,139]},{5:[1,141]},{23:145,70:[1,142],71:[1,143],72:[1,144],73:U},{69:146,78:J,79:K,80:O,81:_,82:z,83:j,84:q,85:CA,86:tA,87:lA,88:gA,89:aA,90:RA,91:wA,92:JA,93:TA,94:qA,95:BA,96:bA,97:FA,98:IA,99:nA,100:eA,101:EA,102:mA,103:kA},A(DA,[2,79]),A(DA,[2,80]),A(DA,[2,81]),A(DA,[2,82]),A(DA,[2,83]),A(DA,[2,84]),A(DA,[2,85]),A(DA,[2,86]),A(DA,[2,87]),A(DA,[2,88]),A(DA,[2,89]),A(DA,[2,90]),A(DA,[2,91]),A(DA,[2,92]),A(DA,[2,93]),A(DA,[2,94]),A(DA,[2,95]),A(DA,[2,96]),A(DA,[2,97]),A(DA,[2,98]),A(DA,[2,99]),A(DA,[2,100]),A(DA,[2,101]),A(DA,[2,102]),A(DA,[2,103]),A(DA,[2,104]),{23:147,73:U},{23:149,60:148,73:U},{73:[2,68]},{73:[2,69]},{58:150,104:rA},{58:152,104:rA},{58:153,104:rA},{58:154,104:rA},{4:[1,157],5:[1,159],12:156,13:158,17:[1,155],51:v,53:S,54:x},{5:[1,160]},A(Y,[2,20]),A(Y,[2,21]),A(Y,[2,23]),A(Y,[2,24]),{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[1,161],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[1,162],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[1,163],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},{17:[1,164]},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[2,47],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,50:[1,165],51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},{17:[1,166]},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[2,45],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,49:[1,167],51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},{17:[1,168]},{17:[1,169]},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[2,43],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,48:[1,170],51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[1,171],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:F,51:v,53:S,54:x,56:k,61:T,62:R,63:L,64:M,73:U},{16:[1,172]},A(Y,[2,50]),{16:[1,173]},A(Y,[2,55]),A(AA,[2,76]),{76:[1,174]},{16:[1,175]},A(Y,[2,52]),{16:[1,176]},A(Y,[2,57]),A(Y,[2,53]),{23:177,73:U},{23:178,73:U},{23:179,73:U},{58:180,104:rA},{23:181,72:[1,182],73:U},{58:183,104:rA},{58:184,104:rA},{66:[1,185],104:[2,67]},{5:[2,60]},{5:[2,105]},{5:[2,61]},{5:[2,62]},{5:[2,63]},A(Y,[2,17]),A(YA,[2,11]),{13:186,51:v,53:S,54:x},A(YA,[2,13]),A(YA,[2,14]),A(Y,[2,19]),A(Y,[2,35]),A(Y,[2,36]),A(Y,[2,37]),A(Y,[2,38]),{16:[1,187]},A(Y,[2,39]),{16:[1,188]},A(Y,[2,40]),A(Y,[2,41]),{16:[1,189]},A(Y,[2,42]),{5:[1,190]},{5:[1,191]},{77:[1,192]},{5:[1,193]},{5:[1,194]},{58:195,104:rA},{58:196,104:rA},{58:197,104:rA},{5:[2,75]},{58:198,104:rA},{23:199,73:U},{5:[2,58]},{5:[2,59]},{23:200,73:U},A(YA,[2,12]),A(W,i,{7:124,41:201}),A(Z,i,{7:126,43:202}),A(pA,i,{7:129,46:203}),A(Y,[2,49]),A(Y,[2,54]),A(AA,[2,77]),A(Y,[2,51]),A(Y,[2,56]),{5:[2,70]},{5:[2,71]},{5:[2,72]},{5:[2,73]},{58:204,104:rA},{104:[2,66]},{17:[2,48]},{17:[2,46]},{17:[2,44]},{5:[2,74]}],defaultActions:{5:[2,1],6:[2,2],108:[2,68],109:[2,69],150:[2,60],151:[2,105],152:[2,61],153:[2,62],154:[2,63],180:[2,75],183:[2,58],184:[2,59],195:[2,70],196:[2,71],197:[2,72],198:[2,73],200:[2,66],201:[2,48],202:[2,46],203:[2,44],204:[2,74]},parseError:y(function(te,ZA){if(ZA.recoverable)this.trace(te);else{var ee=Error(te);throw ee.hash=ZA,ee}},"parseError"),parse:y(function(te){var ZA=this,ee=[0],$A=[],oe=[null],vA=[],Pe=this.table,MA="",ke=0,We=0,se=0,Te=2,je=1,xe=vA.slice.call(arguments,1),yA=Object.create(this.lexer),Ne={yy:{}};for(var He in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,He))Ne.yy[He]=this.yy[He];if(yA.setInput(te,Ne.yy),Ne.yy.lexer=yA,Ne.yy.parser=this,typeof yA.yylloc>"u")yA.yylloc={};var de=yA.yylloc;vA.push(de);var NA=yA.options&&yA.options.ranges;if(typeof Ne.yy.parseError==="function")this.parseError=Ne.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function ce(jt){ee.length=ee.length-2*jt,oe.length=oe.length-jt,vA.length=vA.length-jt}y(ce,"popStack");function me(){var jt=$A.pop()||yA.lex()||je;if(typeof jt!=="number"){if(jt instanceof Array)$A=jt,jt=$A.pop();jt=ZA.symbols_[jt]||jt}return jt}y(me,"lex");var Le,Lt,tt,Ht,lr,It,Ct={},Kt,Ce,De,Ve;while(!0){if(tt=ee[ee.length-1],this.defaultActions[tt])Ht=this.defaultActions[tt];else{if(Le===null||typeof Le>"u")Le=me();Ht=Pe[tt]&&Pe[tt][Le]}if(typeof Ht>"u"||!Ht.length||!Ht[0]){var Vt="";Ve=[];for(Kt in Pe[tt])if(this.terminals_[Kt]&&Kt>Te)Ve.push("'"+this.terminals_[Kt]+"'");if(yA.showPosition)Vt="Parse error on line "+(ke+1)+`:
|
||
`+yA.showPosition()+`
|
||
Expecting `+Ve.join(", ")+", got '"+(this.terminals_[Le]||Le)+"'";else Vt="Parse error on line "+(ke+1)+": Unexpected "+(Le==je?"end of input":"'"+(this.terminals_[Le]||Le)+"'");this.parseError(Vt,{text:yA.match,token:this.terminals_[Le]||Le,line:yA.yylineno,loc:de,expected:Ve})}if(Ht[0]instanceof Array&&Ht.length>1)throw Error("Parse Error: multiple actions possible at state: "+tt+", token: "+Le);switch(Ht[0]){case 1:if(ee.push(Le),oe.push(yA.yytext),vA.push(yA.yylloc),ee.push(Ht[1]),Le=null,!Lt){if(We=yA.yyleng,MA=yA.yytext,ke=yA.yylineno,de=yA.yylloc,se>0)se--}else Le=Lt,Lt=null;break;case 2:if(Ce=this.productions_[Ht[1]][1],Ct.$=oe[oe.length-Ce],Ct._$={first_line:vA[vA.length-(Ce||1)].first_line,last_line:vA[vA.length-1].last_line,first_column:vA[vA.length-(Ce||1)].first_column,last_column:vA[vA.length-1].last_column},NA)Ct._$.range=[vA[vA.length-(Ce||1)].range[0],vA[vA.length-1].range[1]];if(It=this.performAction.apply(Ct,[MA,We,ke,Ne.yy,Ht[1],oe,vA].concat(xe)),typeof It<"u")return It;if(Ce)ee=ee.slice(0,-1*Ce*2),oe=oe.slice(0,-1*Ce),vA=vA.slice(0,-1*Ce);ee.push(this.productions_[Ht[1]][0]),oe.push(Ct.$),vA.push(Ct._$),De=Pe[ee[ee.length-2]][ee[ee.length-1]],ee.push(De);break;case 3:return!0}}return!0},"parse")},_A=function(){var WA={EOF:1,parseError:y(function(ZA,ee){if(this.yy.parser)this.yy.parser.parseError(ZA,ee);else throw Error(ZA)},"parseError"),setInput:y(function(te,ZA){if(this.yy=ZA||this.yy||{},this._input=te,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var te=this._input[0];this.yytext+=te,this.yyleng++,this.offset++,this.match+=te,this.matched+=te;var ZA=te.match(/(?:\r\n?|\n).*/g);if(ZA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),te},"input"),unput:y(function(te){var ZA=te.length,ee=te.split(/(?:\r\n?|\n)/g);this._input=te+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ZA),this.offset-=ZA;var $A=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ee.length-1)this.yylineno-=ee.length-1;var oe=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ee?(ee.length===$A.length?this.yylloc.first_column:0)+$A[$A.length-ee.length].length-ee[0].length:this.yylloc.first_column-ZA},this.options.ranges)this.yylloc.range=[oe[0],oe[0]+this.yyleng-ZA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(te){this.unput(this.match.slice(te))},"less"),pastInput:y(function(){var te=this.matched.substr(0,this.matched.length-this.match.length);return(te.length>20?"...":"")+te.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var te=this.match;if(te.length<20)te+=this._input.substr(0,20-te.length);return(te.substr(0,20)+(te.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var te=this.pastInput(),ZA=Array(te.length+1).join("-");return te+this.upcomingInput()+`
|
||
`+ZA+"^"},"showPosition"),test_match:y(function(te,ZA){var ee,$A,oe;if(this.options.backtrack_lexer){if(oe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)oe.yylloc.range=this.yylloc.range.slice(0)}if($A=te[0].match(/(?:\r\n?|\n).*/g),$A)this.yylineno+=$A.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:$A?$A[$A.length-1].length-$A[$A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+te[0].length},this.yytext+=te[0],this.match+=te[0],this.matches=te,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(te[0].length),this.matched+=te[0],ee=this.performAction.call(this,this.yy,this,ZA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(ee)return ee;else if(this._backtrack){for(var vA in oe)this[vA]=oe[vA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var te,ZA,ee,$A;if(!this._more)this.yytext="",this.match="";var oe=this._currentRules();for(var vA=0;vA<oe.length;vA++)if(ee=this._input.match(this.rules[oe[vA]]),ee&&(!ZA||ee[0].length>ZA[0].length)){if(ZA=ee,$A=vA,this.options.backtrack_lexer)if(te=this.test_match(ee,oe[vA]),te!==!1)return te;else if(this._backtrack){ZA=!1;continue}else return!1;else if(!this.options.flex)break}if(ZA){if(te=this.test_match(ZA,oe[$A]),te!==!1)return te;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var ZA=this.next();if(ZA)return ZA;else return this.lex()},"lex"),begin:y(function(ZA){this.conditionStack.push(ZA)},"begin"),popState:y(function(){var ZA=this.conditionStack.length-1;if(ZA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(ZA){if(ZA=this.conditionStack.length-1-Math.abs(ZA||0),ZA>=0)return this.conditionStack[ZA];else return"INITIAL"},"topState"),pushState:y(function(ZA){this.begin(ZA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(ZA,ee,$A,oe){var vA=oe;switch($A){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 20;case 7:return this.begin("CONFIG"),75;break;case 8:return 76;case 9:return this.popState(),this.begin("ALIAS"),77;break;case 10:return this.popState(),this.popState(),77;break;case 11:return ee.yytext=ee.yytext.trim(),73;break;case 12:return ee.yytext=ee.yytext.trim(),this.begin("ALIAS"),73;break;case 13:return ee.yytext=ee.yytext.trim(),this.popState(),73;break;case 14:return this.popState(),10;break;case 15:return ee.yytext=ee.yytext.trim(),this.popState(),10;break;case 16:return this.begin("LINE"),15;break;case 17:return this.begin("ID"),51;break;case 18:return this.begin("ID"),53;break;case 19:return 14;case 20:return this.begin("ID"),54;break;case 21:return this.popState(),this.popState(),this.begin("LINE"),52;break;case 22:return this.popState(),this.popState(),5;break;case 23:return this.begin("LINE"),37;break;case 24:return this.begin("LINE"),38;break;case 25:return this.begin("LINE"),39;break;case 26:return this.begin("LINE"),40;break;case 27:return this.begin("LINE"),50;break;case 28:return this.begin("LINE"),42;break;case 29:return this.begin("LINE"),44;break;case 30:return this.begin("LINE"),49;break;case 31:return this.begin("LINE"),45;break;case 32:return this.begin("LINE"),48;break;case 33:return this.begin("LINE"),47;break;case 34:return this.popState(),16;break;case 35:return 17;case 36:return 67;case 37:return 68;case 38:return 61;case 39:return 62;case 40:return 63;case 41:return 64;case 42:return 59;case 43:return 56;case 44:return this.begin("ID"),22;break;case 45:return this.begin("ID"),24;break;case 46:return 30;case 47:return 31;case 48:return this.begin("acc_title"),32;break;case 49:return this.popState(),"acc_title_value";break;case 50:return this.begin("acc_descr"),34;break;case 51:return this.popState(),"acc_descr_value";break;case 52:this.begin("acc_descr_multiline");break;case 53:this.popState();break;case 54:return"acc_descr_multiline_value";case 55:return 6;case 56:return 19;case 57:return 21;case 58:return 66;case 59:return 5;case 60:return ee.yytext=ee.yytext.trim(),73;break;case 61:return 80;case 62:return 97;case 63:return 98;case 64:return 99;case 65:return 78;case 66:return 79;case 67:return 100;case 68:return 101;case 69:return 102;case 70:return 103;case 71:return 85;case 72:return 86;case 73:return 87;case 74:return 88;case 75:return 93;case 76:return 94;case 77:return 95;case 78:return 96;case 79:return 81;case 80:return 82;case 81:return 83;case 82:return 84;case 83:return 89;case 84:return 90;case 85:return 91;case 86:return 92;case 87:return 104;case 88:return 104;case 89:return 70;case 90:return 71;case 91:return 72;case 92:return 5;case 93:return 10}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:([0-9]+(\.[0-9]{1,2})?|\.[0-9]{1,2})(?=[ \n]+))/i,/^(?:@\{)/i,/^(?:[^\}]+)/i,/^(?:\}(?=\s+as\s))/i,/^(?:\})/i,/^(?:[^\<->\->:\n,;@\s]+(?=@\{))/i,/^(?:[^<>:\n,;@\s]+(?=\s+as\s))/i,/^(?:[^<>:\n,;@]+(?=\s*[\n;#]|$))/i,/^(?:[^<>:\n,;@]*<[^\n]*)/i,/^(?:[^\n]+)/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\/\\\+\()\+<\->\->:\n,;]+((?!(-x|--x|-\)|--\)|-\|\\|-\\|-\/|-\/\/|-\|\/|\/\|-|\\\|-|\/\/-|\\\\-|\/\|-|--\|\\|--|\(\)))[\-]*[^\+<\->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?:--\|\\)/i,/^(?:--\|\/)/i,/^(?:--\\\\)/i,/^(?:--\/\/)/i,/^(?:\/\|--)/i,/^(?:\\\|--)/i,/^(?:\/\/--)/i,/^(?:\\\\--)/i,/^(?:-\|\\)/i,/^(?:-\|\/)/i,/^(?:-\\\\)/i,/^(?:-\/\/)/i,/^(?:\/\|-)/i,/^(?:\\\|-)/i,/^(?:\/\/-)/i,/^(?:\\\\-)/i,/^(?::(?:(?:no)?wrap)?[^#\n;]*)/i,/^(?::)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\(\))/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[53,54],inclusive:!1},acc_descr:{rules:[51],inclusive:!1},acc_title:{rules:[49],inclusive:!1},ID:{rules:[2,3,7,11,12,13,14,15],inclusive:!1},ALIAS:{rules:[2,3,21,22],inclusive:!1},LINE:{rules:[2,3,34],inclusive:!1},CONFIG:{rules:[8,9,10],inclusive:!1},CONFIG_DATA:{rules:[],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,16,17,18,19,20,23,24,25,26,27,28,29,30,31,32,33,35,36,37,38,39,40,41,42,43,44,45,46,47,48,50,52,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93],inclusive:!0}}};return WA}();KA.lexer=_A;function zA(){this.yy={}}return y(zA,"Parser"),zA.prototype=KA,KA.Parser=zA,new zA}();mCA.parser=mCA;wRt=mCA,bRt={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34,SOLID_TOP:41,SOLID_BOTTOM:42,STICK_TOP:43,STICK_BOTTOM:44,SOLID_ARROW_TOP_REVERSE:45,SOLID_ARROW_BOTTOM_REVERSE:46,STICK_ARROW_TOP_REVERSE:47,STICK_ARROW_BOTTOM_REVERSE:48,SOLID_TOP_DOTTED:51,SOLID_BOTTOM_DOTTED:52,STICK_TOP_DOTTED:53,STICK_BOTTOM_DOTTED:54,SOLID_ARROW_TOP_REVERSE_DOTTED:55,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:56,STICK_ARROW_TOP_REVERSE_DOTTED:57,STICK_ARROW_BOTTOM_REVERSE_DOTTED:58,CENTRAL_CONNECTION:59,CENTRAL_CONNECTION_REVERSE:60,CENTRAL_CONNECTION_DUAL:61},vRt={FILLED:0,OPEN:1},kRt={LEFTOF:0,RIGHTOF:1,OVER:2},vO={ACTOR:"actor",BOUNDARY:"boundary",COLLECTIONS:"collections",CONTROL:"control",DATABASE:"database",ENTITY:"entity",PARTICIPANT:"participant",QUEUE:"queue"},FRt=class{constructor(){this.state=new Fw(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),this.setAccTitle=Dr,this.setAccDescription=kr,this.setDiagramTitle=Mr,this.getAccTitle=vr,this.getAccDescription=Fr,this.getDiagramTitle=xr,this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(OA().wrap),this.LINETYPE=bRt,this.ARROWTYPE=vRt,this.PLACEMENT=kRt}static{y(this,"SequenceDB")}addBox(A){this.state.records.boxes.push({name:A.text,wrap:A.wrap??this.autoWrap(),fill:A.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(A,e,t,r,i){let u=this.state.records.currentBox,a;if(i!==void 0){let o;if(!i.includes(`
|
||
`))o=`{
|
||
`+i+`
|
||
}`;else o=i+`
|
||
`;a=UQ(o,{schema:GQ})}if(r=a?.type??r,a?.alias&&(!t||t.text===e))t={text:a.alias,wrap:t?.wrap,type:r};let n=this.state.records.actors.get(A);if(n){if(this.state.records.currentBox&&n.box&&this.state.records.currentBox!==n.box)throw Error(`A same participant should only be defined in one Box: ${n.name} can't be in '${n.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(u=n.box?n.box:this.state.records.currentBox,n.box=u,n&&e===n.name&&t==null)return}if(t?.text==null)t={text:e,type:r};if(r==null||t.text==null)t={text:e,type:r};if(this.state.records.actors.set(A,{box:u,name:e,description:t.text,wrap:t.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:r??"participant"}),this.state.records.prevActor){let o=this.state.records.actors.get(this.state.records.prevActor);if(o)o.nextActor=A}if(this.state.records.currentBox)this.state.records.currentBox.actorKeys.push(A);this.state.records.prevActor=A}activationCount(A){let e,t=0;if(!A)return 0;for(e=0;e<this.state.records.messages.length;e++){if(this.state.records.messages[e].type===this.LINETYPE.ACTIVE_START&&this.state.records.messages[e].from===A)t++;if(this.state.records.messages[e].type===this.LINETYPE.ACTIVE_END&&this.state.records.messages[e].from===A)t--}return t}addMessage(A,e,t,r){this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:A,to:e,message:t.text,wrap:t.wrap??this.autoWrap(),answer:r})}addSignal(A,e,t,r,i=!1,u){if(r===this.LINETYPE.ACTIVE_END){if(this.activationCount(A??"")<1){let n=Error("Trying to inactivate an inactive participant ("+A+")");throw n.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},n}}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:A,to:e,message:t?.text??"",wrap:t?.wrap??this.autoWrap(),type:r,activate:i,centralConnection:u??0}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some((A)=>A.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(A){return this.state.records.actors.get(A)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(A){this.state.records.wrapEnabled=A}extractWrap(A){if(A===void 0)return{};A=A.trim();let e=/^:?wrap:/.exec(A)!==null?!0:/^:?nowrap:/.exec(A)!==null?!1:void 0;return{cleanedText:(e===void 0?A:A.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:e}}autoWrap(){if(this.state.records.wrapEnabled!==void 0)return this.state.records.wrapEnabled;return OA().sequence?.wrap??!1}clear(){this.state.reset(),sr()}parseMessage(A){let e=A.trim(),{wrap:t,cleanedText:r}=this.extractWrap(e),i={text:r,wrap:t};return sA.debug(`parseMessage: ${JSON.stringify(i)}`),i}parseBoxData(A){let e=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(A),t=e?.[1]?e[1].trim():"transparent",r=e?.[2]?e[2].trim():void 0;if(window?.CSS){if(!window.CSS.supports("color",t))t="transparent",r=A.trim()}else{let a=new Option().style;if(a.color=t,a.color!==t)t="transparent",r=A.trim()}let{wrap:i,cleanedText:u}=this.extractWrap(r);return{text:u?or(u,OA()):void 0,color:t,wrap:i}}addNote(A,e,t){let r={actor:A,placement:e,message:t.text,wrap:t.wrap??this.autoWrap()},i=[].concat(A,A);this.state.records.notes.push(r),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:i[0],to:i[1],message:t.text,wrap:t.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:e})}addLinks(A,e){let t=this.getActor(A);try{let r=or(e.text,OA());r=r.replace(/=/g,"="),r=r.replace(/&/g,"&");let i=JSON.parse(r);this.insertLinks(t,i)}catch(r){sA.error("error while parsing actor link text",r)}}addALink(A,e){let t=this.getActor(A);try{let r={},i=or(e.text,OA()),u=i.indexOf("@");i=i.replace(/=/g,"="),i=i.replace(/&/g,"&");let a=i.slice(0,u-1).trim(),n=i.slice(u+1).trim();r[a]=n,this.insertLinks(t,r)}catch(r){sA.error("error while parsing actor link text",r)}}insertLinks(A,e){if(A.links==null)A.links=e;else for(let t in e)A.links[t]=e[t]}addProperties(A,e){let t=this.getActor(A);try{let r=or(e.text,OA()),i=JSON.parse(r);this.insertProperties(t,i)}catch(r){sA.error("error while parsing actor properties text",r)}}insertProperties(A,e){if(A.properties==null)A.properties=e;else for(let t in e)A.properties[t]=e[t]}boxEnd(){this.state.records.currentBox=void 0}addDetails(A,e){let t=this.getActor(A),r=document.getElementById(e.text);try{let i=r.innerHTML,u=JSON.parse(i);if(u.properties)this.insertProperties(t,u.properties);if(u.links)this.insertLinks(t,u.links)}catch(i){sA.error("error while parsing actor details text",i)}}getActorProperty(A,e){if(A?.properties!==void 0)return A.properties[e];return}apply(A){if(Array.isArray(A))A.forEach((e)=>{this.apply(e)});else switch(A.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:A.sequenceIndex,step:A.sequenceIndexStep,visible:A.sequenceVisible},wrap:!1,type:A.signalType});break;case"addParticipant":this.addActor(A.actor,A.actor,A.description,A.draw,A.config);break;case"createParticipant":if(this.state.records.actors.has(A.actor))throw Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");this.state.records.lastCreated=A.actor,this.addActor(A.actor,A.actor,A.description,A.draw,A.config),this.state.records.createdActors.set(A.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=A.actor,this.state.records.destroyedActors.set(A.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(A.actor,void 0,void 0,A.signalType);break;case"centralConnection":this.addSignal(A.actor,void 0,void 0,A.signalType);break;case"centralConnectionReverse":this.addSignal(A.actor,void 0,void 0,A.signalType);break;case"activeEnd":this.addSignal(A.actor,void 0,void 0,A.signalType);break;case"addNote":this.addNote(A.actor,A.placement,A.text);break;case"addLinks":this.addLinks(A.actor,A.text);break;case"addALink":this.addALink(A.actor,A.text);break;case"addProperties":this.addProperties(A.actor,A.text);break;case"addDetails":this.addDetails(A.actor,A.text);break;case"addMessage":if(this.state.records.lastCreated)if(A.to!==this.state.records.lastCreated)throw Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");else this.state.records.lastCreated=void 0;else if(this.state.records.lastDestroyed)if(A.to!==this.state.records.lastDestroyed&&A.from!==this.state.records.lastDestroyed)throw Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");else this.state.records.lastDestroyed=void 0;this.addSignal(A.from,A.to,A.msg,A.signalType,A.activate,A.centralConnection);break;case"boxStart":this.addBox(A.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,A.loopText,A.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"rectStart":this.addSignal(void 0,void 0,A.color,A.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"optStart":this.addSignal(void 0,void 0,A.optText,A.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"altStart":this.addSignal(void 0,void 0,A.altText,A.signalType);break;case"else":this.addSignal(void 0,void 0,A.altText,A.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"setAccTitle":Dr(A.text);break;case"parStart":this.addSignal(void 0,void 0,A.parText,A.signalType);break;case"and":this.addSignal(void 0,void 0,A.parText,A.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,A.criticalText,A.signalType);break;case"option":this.addSignal(void 0,void 0,A.optionText,A.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"breakStart":this.addSignal(void 0,void 0,A.breakText,A.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break}}getConfig(){return OA().sequence}},xRt=y((A)=>{let e=A.dropShadow??"none",{look:t}=OA();return`.actor {
|
||
stroke: ${A.actorBorder};
|
||
fill: ${A.actorBkg};
|
||
stroke-width: ${A.strokeWidth??1};
|
||
}
|
||
|
||
rect.actor.outer-path[data-look="neo"] {
|
||
filter: ${e};
|
||
}
|
||
|
||
rect.note[data-look="neo"] {
|
||
stroke:${A.noteBorderColor};
|
||
fill:${A.noteBkgColor};
|
||
filter: ${e};
|
||
}
|
||
|
||
text.actor > tspan {
|
||
fill: ${A.actorTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.actor-line {
|
||
stroke: ${A.actorLineColor};
|
||
}
|
||
|
||
.innerArc {
|
||
stroke-width: 1.5;
|
||
stroke-dasharray: none;
|
||
}
|
||
|
||
.messageLine0 {
|
||
stroke-width: 1.5;
|
||
stroke-dasharray: none;
|
||
stroke: ${A.signalColor};
|
||
}
|
||
|
||
.messageLine1 {
|
||
stroke-width: 1.5;
|
||
stroke-dasharray: 2, 2;
|
||
stroke: ${A.signalColor};
|
||
}
|
||
|
||
[id$="-arrowhead"] path {
|
||
fill: ${A.signalColor};
|
||
stroke: ${A.signalColor};
|
||
}
|
||
|
||
.sequenceNumber {
|
||
fill: ${A.sequenceNumberColor};
|
||
}
|
||
|
||
[id$="-sequencenumber"] {
|
||
fill: ${A.signalColor};
|
||
}
|
||
|
||
[id$="-crosshead"] path {
|
||
fill: ${A.signalColor};
|
||
stroke: ${A.signalColor};
|
||
}
|
||
|
||
.messageText {
|
||
fill: ${A.signalTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.labelBox {
|
||
stroke: ${A.labelBoxBorderColor};
|
||
fill: ${A.labelBoxBkgColor};
|
||
filter: ${t==="neo"?e:"none"};
|
||
}
|
||
|
||
.labelText, .labelText > tspan {
|
||
fill: ${A.labelTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.loopText, .loopText > tspan {
|
||
fill: ${A.loopTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.sectionTitle, .sectionTitle > tspan {
|
||
fill: ${A.loopTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.loopLine {
|
||
stroke-width: 2px;
|
||
stroke-dasharray: 2, 2;
|
||
stroke: ${A.labelBoxBorderColor};
|
||
fill: ${A.labelBoxBorderColor};
|
||
}
|
||
|
||
.note {
|
||
//stroke: #decc93;
|
||
stroke: ${A.noteBorderColor};
|
||
fill: ${A.noteBkgColor};
|
||
}
|
||
|
||
.noteText, .noteText > tspan {
|
||
fill: ${A.noteTextColor};
|
||
stroke: none;
|
||
${A.noteFontWeight?`font-weight: ${A.noteFontWeight};`:""}
|
||
}
|
||
|
||
.activation0 {
|
||
fill: ${A.activationBkgColor};
|
||
stroke: ${A.activationBorderColor};
|
||
}
|
||
|
||
.activation1 {
|
||
fill: ${A.activationBkgColor};
|
||
stroke: ${A.activationBorderColor};
|
||
}
|
||
|
||
.activation2 {
|
||
fill: ${A.activationBkgColor};
|
||
stroke: ${A.activationBorderColor};
|
||
}
|
||
|
||
.actorPopupMenu {
|
||
position: absolute;
|
||
}
|
||
|
||
.actorPopupMenuPanel {
|
||
position: absolute;
|
||
fill: ${A.actorBkg};
|
||
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
|
||
filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
|
||
}
|
||
.actor-man circle, line {
|
||
fill: ${A.actorBkg};
|
||
stroke-width: 2px;
|
||
}
|
||
|
||
g rect.rect {
|
||
filter: ${e};
|
||
stroke: ${A.nodeBorder};
|
||
}
|
||
`},"getStyles"),SRt=xRt,Qh=new Set(["redux-color","redux-dark-color"]),g7=y(function(A,e){let t=l3(A,e);if(st().look==="neo")t.attr("data-look","neo");return t},"drawRect"),LRt=y(function(A,e,t,r,i){if(e.links===void 0||e.links===null||Object.keys(e.links).length===0)return{height:0,width:0};let{links:u,actorCnt:a,rectData:n}=e;var o="none";if(i)o="block !important";let s=A.append("g");s.attr("id","actor"+a+"_popup"),s.attr("class","actorPopupMenu"),s.attr("display",o);var l="";if(n.class!==void 0)l=" "+n.class;let g=n.width>t?n.width:t,C=s.append("rect");if(C.attr("class","actorPopupMenuPanel"+l),C.attr("x",n.x),C.attr("y",n.height),C.attr("fill",n.fill),C.attr("stroke",n.stroke),C.attr("width",g),C.attr("height",n.height),C.attr("rx",n.rx),C.attr("ry",n.ry),u!=null){var B=20;for(let I in u){var E=s.append("a"),d=wCA.sanitizeUrl(u[I]);E.attr("xlink:href",d),E.attr("target","_blank"),eNt(r)(I,E,n.x+10,n.height+B,g,20,{class:"actor"},r),B+=30}}return C.attr("height",B),{height:n.height+B,width:g}},"drawPopup"),xO=y(function(A){return"var pu = document.getElementById('"+A+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),kO=y(async function(A,e,t=null){let r=A.append("foreignObject"),i=await yD(e.text,st()),a=r.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(r.attr("height",Math.round(a.height)).attr("width",Math.round(a.width)),e.class==="noteText"){let n=A.node().firstChild;n.setAttribute("height",a.height+2*e.textMargin);let o=n.getBBox();r.attr("x",Math.round(o.x+o.width/2-a.width/2)).attr("y",Math.round(o.y+o.height/2-a.height/2))}else if(t){let{startx:n,stopx:o,starty:s}=t;if(n>o){let l=n;n=o,o=l}if(r.attr("x",Math.round(n+Math.abs(n-o)/2-a.width/2)),e.class==="loopText")r.attr("y",Math.round(s));else r.attr("y",Math.round(s-a.height))}return[r]},"drawKatex"),k6=y(function(A,e){let t=0,r=0,i=e.text.split(_e.lineBreakRegex),[u,a]=al(e.fontSize),n=[],o=0,s=y(()=>e.y,"yfunc");if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)switch(e.valign){case"top":case"start":s=y(()=>Math.round(e.y+e.textMargin),"yfunc");break;case"middle":case"center":s=y(()=>Math.round(e.y+(t+r+e.textMargin)/2),"yfunc");break;case"bottom":case"end":s=y(()=>Math.round(e.y+(t+r+2*e.textMargin)-e.textMargin),"yfunc");break}if(e.anchor!==void 0&&e.textMargin!==void 0&&e.width!==void 0)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle";break}for(let[l,g]of i.entries()){if(e.textMargin!==void 0&&e.textMargin===0&&u!==void 0)o=l*u;let C=A.append("text");if(C.attr("x",e.x),C.attr("y",s()),e.anchor!==void 0)C.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline);if(e.fontFamily!==void 0)C.style("font-family",e.fontFamily);if(a!==void 0)C.style("font-size",a);if(e.fontWeight!==void 0)C.style("font-weight",e.fontWeight);if(e.fill!==void 0)C.attr("fill",e.fill);if(e.class!==void 0)C.attr("class",e.class);if(e.dy!==void 0)C.attr("dy",e.dy);else if(o!==0)C.attr("dy",o);let B=g||leA;if(e.tspan){let E=C.append("tspan");if(E.attr("x",e.x),e.fill!==void 0)E.attr("fill",e.fill);E.text(B)}else C.text(B);if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)r+=(C._groups||C)[0][0].getBBox().height,t=r;n.push(C)}return n},"drawText"),Hie=y(function(A,e){function t(i,u,a,n,o){return i+","+u+" "+(i+a)+","+u+" "+(i+a)+","+(u+n-o)+" "+(i+a-o*1.2)+","+(u+n)+" "+i+","+(u+n)}y(t,"genPoints");let r=A.append("polygon");return r.attr("points",t(e.x,e.y,e.width,e.height,7)),r.attr("class","labelBox"),e.y=e.y+e.height/2,k6(A,e),r},"drawLabel"),Kie=y((A,e,t,r)=>{if(!A.select)return;t.forEach((i)=>{let u=e.get(i),a=A.select("#actor"+u.actorCnt);if(!r.mirrorActors&&u.stopy)a.attr("y2",u.stopy+u.height/2);else if(r.mirrorActors)a.attr("y2",u.stopy)})},"fixLifeLineHeights"),RRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+e.height,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C}=l,B=A.append("g").lower();var E=B;if(!r){if(Ei++,Object.keys(e.links||{}).length&&!t.forceMenus)E.attr("onclick",xO(`actor${Ei}_popup`)).attr("cursor","pointer");if(E.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),E=B.append("g"),e.actorCnt=Ei,e.links!=null)E.attr("id","root-"+Ei);if(o==="neo")E.attr("data-look","neo")}let d=J0();var I="actor";if(e.properties?.class)I=e.properties.class;else d.fill="#eaeaea";if(r)I+=` ${d1}`;else I+=` ${E1}`;if(d.x=e.x,d.y=u,d.width=e.width,d.height=e.height,d.class=I,d.rx=3,d.ry=3,d.name=e.name,o==="neo")d.rx=6,d.ry=6;let h=g7(E,d),Q=i.get(e.name)??0;if(Qh.has(s))h.style("stroke",C[Q%C.length]),h.style("fill",g[Q%C.length]);if(o==="neo")h.attr("filter","url(#drop-shadow)");if(e.rectData=d,e.properties?.icon){let m=e.properties.icon.trim();if(m.charAt(0)==="@")wY(E,d.x+d.width-20,d.y+10,m.substr(1));else yY(E,d.x+d.width-20,d.y+10,m)}if(!r)E.attr("data-et","participant"),E.attr("data-type","participant"),E.attr("data-id",e.name);ph(t,da(e.description))(e.description,E,d.x,d.y,d.width,d.height,{class:`actor ${FO}`},t);let p=e.height;if(h.node){let m=h.node().getBBox();e.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),NRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+e.height,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C}=l,B=A.append("g").lower();var E=B;if(!r){if(Ei++,Object.keys(e.links||{}).length&&!t.forceMenus)E.attr("onclick",xO(`actor${Ei}_popup`)).attr("cursor","pointer");if(E.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),E=B.append("g"),e.actorCnt=Ei,e.links!=null)E.attr("id","root-"+Ei);if(o==="neo")E.attr("data-look","neo")}let d=J0();var I="actor";if(e.properties?.class)I=e.properties.class;else d.fill="#eaeaea";if(r)I+=` ${d1}`;else I+=` ${E1}`;d.x=e.x,d.y=u,d.width=e.width,d.height=e.height,d.class=I,d.name=e.name;let h=6,Q={...d,x:d.x+(r?-h:-h),y:d.y+(r?+h:+h),class:"actor"},p=g7(E,d),m=g7(E,Q);if(e.rectData=d,o==="neo")E.attr("filter","url(#drop-shadow)");let f=i.get(e.name)??0;if(Qh.has(s))p.style("stroke",C[f%C.length]),p.style("fill",g[f%C.length]),m.style("stroke",C[f%C.length]),m.style("fill",g[f%C.length]);if(e.properties?.icon){let w=e.properties.icon.trim();if(w.charAt(0)==="@")wY(E,d.x+d.width-20,d.y+10,w.substr(1));else yY(E,d.x+d.width-20,d.y+10,w)}ph(t,da(e.description))(e.description,E,d.x-h,d.y+h,d.width,d.height,{class:`actor ${FO}`},t);let D=e.height;if(p.node){let w=p.node().getBBox();e.height=w.height,D=w.height}if(!r)E.attr("data-et","participant"),E.attr("data-type","collections"),E.attr("data-id",e.name);return D},"drawActorTypeCollections"),GRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+e.height,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C}=l,B=A.append("g").lower(),E=B;if(!r){if(Ei++,Object.keys(e.links||{}).length&&!t.forceMenus)E.attr("onclick",xO(`actor${Ei}_popup`)).attr("cursor","pointer");if(E.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),E=B.append("g"),e.actorCnt=Ei,e.links!=null)E.attr("id","root-"+Ei);if(o==="neo")E.attr("data-look","neo")}let d=J0(),I="actor";if(e.properties?.class)I=e.properties.class;else d.fill="#eaeaea";if(r)I+=` ${d1}`;else I+=` ${E1}`;E.attr("class",I),d.x=e.x,d.y=u,d.width=e.width,d.height=e.height,d.name=e.name;let h=d.height/2,Q=h/(2.5+d.height/50),p=E.append("g"),m=E.append("g"),f=`M ${d.x},${d.y+h}
|
||
a ${Q},${h} 0 0 0 0,${d.height}
|
||
h ${d.width-2*Q}
|
||
a ${Q},${h} 0 0 0 0,-${d.height}
|
||
Z
|
||
`;if(p.append("path").attr("d",f),m.append("path").attr("d",`M ${d.x},${d.y+h}
|
||
a ${Q},${h} 0 0 0 0,${d.height}`),p.attr("transform",`translate(${Q}, ${-(d.height/2)})`),m.attr("transform",`translate(${d.width-Q}, ${-d.height/2})`),e.rectData=d,o==="neo")p.attr("filter","url(#drop-shadow)");let D=i.get(e.name)??0;if(Qh.has(s))p.style("stroke",C[D%C.length]),p.style("fill",g[D%C.length]),m.style("stroke",C[D%C.length]),m.style("fill",g[D%C.length]);if(e.properties?.icon){let F=e.properties.icon.trim(),v=d.x+d.width-20,S=d.y+10;if(F.charAt(0)==="@")wY(E,v,S,F.substr(1));else yY(E,v,S,F)}ph(t,da(e.description))(e.description,E,d.x,d.y,d.width,d.height,{class:`actor ${FO}`},t);let w=e.height,b=p.select("path:last-child");if(b.node()){let F=b.node().getBBox();e.height=F.height,w=F.height}if(!r)E.attr("data-et","participant"),E.attr("data-type","queue"),E.attr("data-id",e.name);return w},"drawActorTypeQueue"),URt=y(function(A,e,t,r,i,u){let a=r?e.stopy:e.starty,n=e.x+e.width/2,o=a+75,{look:s,theme:l,themeVariables:g}=t,{bkgColorArray:C,borderColorArray:B,actorBorder:E,actorBkg:d}=g,I=A.append("g").lower();if(!r)Ei++,I.append("line").attr("id","actor"+Ei).attr("x1",n).attr("y1",o).attr("x2",n).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),e.actorCnt=Ei;let h=A.append("g"),Q=Dm;if(r)Q+=` ${d1}`;else Q+=` ${E1}`;h.attr("class",Q),h.attr("name",e.name);let p=J0();p.x=e.x,p.y=a,p.fill="#eaeaea",p.width=e.width,p.height=e.height,p.class="actor";let m=e.x+e.width/2,f=a+32,D=22;h.append("defs").append("marker").attr("id",i+"-filled-head-control").attr("refX",11).attr("refY",5.8).attr("markerWidth",20).attr("markerHeight",28).attr("orient","172.5").attr("stroke-width",1.2).append("path").attr("d","M 14.4 5.6 L 7.2 10.4 L 8.8 5.6 L 7.2 0.8 Z"),h.append("circle").attr("cx",m).attr("cy",f).attr("r",D).attr("filter",`${s==="neo"?"url(#drop-shadow)":""}`),h.append("line").attr("marker-end","url(#"+i+"-filled-head-control)").attr("transform",`translate(${m}, ${f-D})`);let w=u.get(e.name)??0;if(Qh.has(l))h.style("stroke",B[w%B.length]),h.style("fill",C[w%B.length]);else h.style("stroke",E),h.style("fill",d);let b=h.node().getBBox();if(e.height=b.height+2*(t?.sequence?.labelBoxHeight??0),ph(t,da(e.description))(e.description,h,p.x,p.y+D+(!r?12:5),p.width,p.height,{class:`actor ${Dm}`},t),!r)h.attr("data-et","participant"),h.attr("data-type","control"),h.attr("data-id",e.name);return e.height},"drawActorTypeControl"),MRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+75,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C}=l,B=A.append("g").lower(),E=A.append("g"),d="actor";if(r)d+=` ${d1}`;else d+=` ${E1}`;E.attr("class",d),E.attr("name",e.name);let I=J0();I.x=e.x,I.y=u,I.fill="#eaeaea",I.width=e.width,I.height=e.height,I.class="actor";let h=e.x+e.width/2,Q=u+(!r?25:10),p=22;if(E.append("circle").attr("cx",h).attr("cy",Q).attr("r",p).attr("width",e.width).attr("height",e.height),E.append("line").attr("x1",h-p).attr("x2",h+p).attr("y1",Q+p).attr("y2",Q+p).attr("stroke-width",2),o==="neo")E.attr("filter","url(#drop-shadow)");let m=i.get(e.name)??0;if(Qh.has(s))E.style("stroke",C[m%C.length]),E.style("fill",g[m%C.length]);let f=E.node().getBBox();if(e.height=f.height+(t?.sequence?.labelBoxHeight??0),!r)Ei++,B.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),e.actorCnt=Ei;if(ph(t,da(e.description))(e.description,E,I.x,I.y+(!r?30:15),I.width,I.height,{class:`actor ${Dm}`},t),!r)E.attr("transform",`translate(0, ${p/2-5})`),E.attr("data-et","participant"),E.attr("data-type","entity"),E.attr("data-id",e.name);else E.attr("transform",`translate(0, ${p})`);return e.height},"drawActorTypeEntity"),TRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+e.height+2*t.boxTextMargin,{theme:o,themeVariables:s,look:l}=t,{bkgColorArray:g,borderColorArray:C,actorBorder:B}=s,E=A.append("g").lower(),d=E;if(!r){if(Ei++,Object.keys(e.links||{}).length&&!t.forceMenus)d.attr("onclick",xO(`actor${Ei}_popup`)).attr("cursor","pointer");if(d.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),d=E.append("g"),e.actorCnt=Ei,e.links!=null)d.attr("id","root-"+Ei);if(l==="neo")d.attr("data-look","neo")}let I=J0(),h="actor";if(e.properties?.class)h=e.properties.class;else I.fill="#eaeaea";if(r)h+=` ${d1}`;else h+=` ${E1}`;I.x=e.x,I.y=u,I.width=e.width,I.height=e.height,I.class=h,I.name=e.name,I.x=e.x,I.y=u;let Q=I.width/3,p=I.width/3,m=Q/2,f=m/(2.5+Q/50),D=d.append("g");D.attr("class",h);let w=`
|
||
M ${I.x},${I.y+f}
|
||
a ${m},${f} 0 0 0 ${Q},0
|
||
a ${m},${f} 0 0 0 -${Q},0
|
||
l 0,${p-2*f}
|
||
a ${m},${f} 0 0 0 ${Q},0
|
||
l 0,-${p-2*f}
|
||
`;if(D.append("path").attr("d",w),l==="neo")D.attr("filter","url(#drop-shadow)");let b=i.get(e.name)??0;if(Qh.has(o))D.style("stroke",C[b%C.length]),D.style("fill",g[b%C.length]);else D.style("stroke",B);D.attr("transform",`translate(${Q}, ${f})`),e.rectData=I,ph(t,da(e.description))(e.description,d,I.x,I.y+35,I.width,I.height,{class:`actor ${FO}`},t);let F=D.select("path:last-child");if(F.node()){let v=F.node().getBBox();e.height=v.height+(t.sequence.labelBoxHeight??0)}if(!r)d.attr("data-et","participant"),d.attr("data-type","database"),d.attr("data-id",e.name);return e.height},"drawActorTypeDatabase"),YRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+80,o=22,s=A.append("g").lower(),{look:l,theme:g,themeVariables:C}=t,{bkgColorArray:B,borderColorArray:E,actorBorder:d}=C;if(!r)Ei++,s.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),e.actorCnt=Ei;let I=A.append("g"),h=Dm;if(r)h+=` ${d1}`;else h+=` ${E1}`;I.attr("class",h),I.attr("name",e.name);let Q=J0();if(Q.x=e.x,Q.y=u,Q.fill="#eaeaea",Q.width=e.width,Q.height=e.height,Q.class="actor",I.append("line").attr("id","actor-man-torso"+Ei).attr("x1",e.x+e.width/2-55).attr("y1",u+12).attr("x2",e.x+e.width/2-15).attr("y2",u+12),I.append("line").attr("id","actor-man-arms"+Ei).attr("x1",e.x+e.width/2-55).attr("y1",u+2).attr("x2",e.x+e.width/2-55).attr("y2",u+22),I.append("circle").attr("cx",e.x+e.width/2).attr("cy",u+12).attr("r",22),l==="neo")I.attr("filter","url(#drop-shadow)");let p=i.get(e.name)??0;if(Qh.has(g))I.style("stroke",E[p%E.length]),I.style("fill",B[p%E.length]);else I.style("stroke",d);let m=I.node().getBBox();if(e.height=m.height+(t.sequence.labelBoxHeight??0),ph(t,da(e.description))(e.description,I,Q.x,Q.y+15,Q.width,Q.height,{class:`actor ${Dm}`},t),I.attr("transform","translate(0,21)"),!r)I.attr("data-et","participant"),I.attr("data-type","boundary"),I.attr("data-id",e.name);return e.height},"drawActorTypeBoundary"),HRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+80,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C,actorBorder:B}=l,E=A.append("g").lower();if(!r)Ei++,E.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),e.actorCnt=Ei;let d=A.append("g"),I=Dm;if(r)I+=` ${d1}`;else I+=` ${E1}`;if(d.attr("class",I),d.attr("name",e.name),!r)d.attr("data-et","participant").attr("data-type","actor").attr("data-id",e.name);let h=o==="neo"?0.5:1,Q=o==="neo"?u+(1-h)*30:u;d.append("line").attr("id","actor-man-torso"+Ei).attr("x1",a).attr("y1",Q+25*h).attr("x2",a).attr("y2",Q+45*h),d.append("line").attr("id","actor-man-arms"+Ei).attr("x1",a-mm/2*h).attr("y1",Q+33*h).attr("x2",a+mm/2*h).attr("y2",Q+33*h),d.append("line").attr("x1",a-mm/2*h).attr("y1",Q+60*h).attr("x2",a).attr("y2",Q+45*h),d.append("line").attr("x1",a).attr("y1",Q+45*h).attr("x2",a+(mm/2-2)*h).attr("y2",Q+60*h);let p=d.append("circle");p.attr("cx",e.x+e.width/2),p.attr("cy",Q+10*h),p.attr("r",15*h),p.attr("width",e.width*h),p.attr("height",e.height*h);let m=d.node().getBBox();e.height=m.height;let f=J0();f.x=e.x,f.y=Q,f.fill="#eaeaea",f.width=e.width,f.height=e.height/h,f.class="actor",f.rx=3,f.ry=3;let D=i.get(e.name)??0;if(Qh.has(s))d.style("stroke",C[D%C.length]),d.style("fill",g[D%C.length]);else d.style("stroke",B);return ph(t,da(e.description))(e.description,d,f.x,Q+35*h-(o==="neo"?10:0),f.width,f.height,{class:`actor ${Dm}`},t),e.height},"drawActorTypeActor"),KRt=y(async function(A,e,t,r,i,u,a){let n=a??new Map([...u.db.getActors().values()].map((o,s)=>[o.name,s]));switch(e.type){case"actor":return await HRt(A,e,t,r,n);case"participant":return await RRt(A,e,t,r,n);case"boundary":return await YRt(A,e,t,r,n);case"control":return await URt(A,e,t,r,i,n);case"entity":return await MRt(A,e,t,r,n);case"database":return await TRt(A,e,t,r,n);case"collections":return await NRt(A,e,t,r,n);case"queue":return await GRt(A,e,t,r,n)}},"drawActor"),JRt=y(function(A,e,t){let i=A.append("g");if(Jie(i,e),e.name)ph(t)(e.name,i,e.x,e.y+t.boxTextMargin+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},t);i.lower()},"drawBox"),ORt=y(function(A){return A.append("g")},"anchorElement"),PRt=y(function(A,e,t,r,i,u,a){let{theme:n,themeVariables:o}=r,{bkgColorArray:s,borderColorArray:l,mainBkg:g}=o,C=J0(),{anchored:B,actor:E}=e;C.x=e.startx,C.y=e.starty,C.class="activation"+i%3,C.width=e.stopx-e.startx,C.height=t-e.starty;let d=g7(B,C),h=(a??new Map([...u.db.getActors().values()].map((Q,p)=>[Q.name,p]))).get(E)??0;if(Qh.has(n))d.style("stroke",l[h%l.length]),d.style("fill",s[h%l.length]??g)},"drawActivation"),_Rt=y(async function(A,e,t,r,i){let{boxMargin:u,boxTextMargin:a,labelBoxHeight:n,labelBoxWidth:o,messageFontFamily:s,messageFontSize:l,messageFontWeight:g}=r,C=A.append("g").attr("data-et","control-structure").attr("data-id","i"+i.id),B=y(function(I,h,Q,p){return C.append("line").attr("x1",I).attr("y1",h).attr("x2",Q).attr("y2",p).attr("class","loopLine")},"drawLoopLine");if(B(e.startx,e.starty,e.stopx,e.starty),B(e.stopx,e.starty,e.stopx,e.stopy),B(e.startx,e.stopy,e.stopx,e.stopy),B(e.startx,e.starty,e.startx,e.stopy),e.sections!==void 0)e.sections.forEach(function(I){B(e.startx,I.y,e.stopx,I.y).style("stroke-dasharray","3, 3")});let E=bY();E.text=t,E.x=e.startx,E.y=e.starty,E.fontFamily=s,E.fontSize=l,E.fontWeight=g,E.anchor="middle",E.valign="middle",E.tspan=!1,E.width=Math.max(o??0,50),E.height=n+(r.look==="neo"?15:0)||20,E.textMargin=a,E.class="labelText",Hie(C,E),E=Oie(),E.text=e.title,E.x=e.startx+o/2+(e.stopx-e.startx)/2,E.y=e.starty+u+a,E.anchor="middle",E.valign="middle",E.textMargin=a,E.class="loopText",E.fontFamily=s,E.fontSize=l,E.fontWeight=g,E.wrap=!0;let d=da(E.text)?await kO(C,E,e):k6(C,E);if(e.sectionTitles!==void 0){for(let[I,h]of Object.entries(e.sectionTitles))if(h.message){if(E.text=h.message,E.x=e.startx+(e.stopx-e.startx)/2,E.y=e.sections[I].y+u+a,E.class="sectionTitle",E.anchor="middle",E.valign="middle",E.tspan=!1,E.fontFamily=s,E.fontSize=l,E.fontWeight=g,E.wrap=e.wrap,da(E.text))e.starty=e.sections[I].y,await kO(C,E,e);else k6(C,E);let Q=Math.round(d.map((p)=>(p._groups||p)[0][0].getBBox().height).reduce((p,m)=>p+m));e.sections[I].height+=Q-(u+a)}}return e.height=Math.round(e.stopy-e.starty),C},"drawLoop"),Jie=y(function(A,e){DY(A,e)},"drawBackgroundRect"),WRt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),qRt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),zRt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),ZRt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")},"insertArrowHead"),VRt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),jRt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertSequenceNumber"),XRt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},"insertArrowCrossHead"),$Rt=y(function(A,e){let{theme:t}=e;A.append("defs").append("filter").attr("id","drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${t==="redux"||t==="redux-color"?"#000000":"#FFFFFF"}`)},"insertDropShadow"),Oie=y(function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},"getTextObj"),ANt=y(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),ph=function(){function A(u,a,n,o,s,l,g){let C=a.append("text").attr("x",n+s/2).attr("y",o+l/2+5).style("text-anchor","middle").text(u);i(C,g)}y(A,"byText");function e(u,a,n,o,s,l,g,C){let{actorFontSize:B,actorFontFamily:E,actorFontWeight:d}=C,[I,h]=al(B),Q=u.split(_e.lineBreakRegex);for(let p=0;p<Q.length;p++){let m=p*I-I*(Q.length-1)/2,f=a.append("text").attr("x",n+s/2).attr("y",o).style("text-anchor","middle").style("font-size",h).style("font-weight",d).style("font-family",E);f.append("tspan").attr("x",n+s/2).attr("dy",m).text(Q[p]),f.attr("y",o+l/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),i(f,g)}}y(e,"byTspan");function t(u,a,n,o,s,l,g,C){let B=a.append("switch"),d=B.append("foreignObject").attr("x",n).attr("y",o).attr("width",s).attr("height",l).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");d.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(u),e(u,B,n,o,s,l,g,C),i(d,g)}y(t,"byFo");async function r(u,a,n,o,s,l,g,C){let B=await DD(u,st()),E=a.append("switch"),I=E.append("foreignObject").attr("x",n+s/2-B.width/2).attr("y",o+l/2-B.height/2).attr("width",B.width).attr("height",B.height).append("xhtml:div").style("height","100%").style("width","100%");I.append("div").style("text-align","center").style("vertical-align","middle").html(await yD(u,st())),e(u,E,n,o,s,l,g,C),i(I,g)}y(r,"byKatex");function i(u,a){for(let n in a)if(a.hasOwnProperty(n))u.attr(n,a[n])}return y(i,"_setTextAttrs"),function(u,a=!1){if(a)return r;return u.textPlacement==="fo"?t:u.textPlacement==="old"?A:e}}(),eNt=function(){function A(i,u,a,n,o,s,l){let g=u.append("text").attr("x",a).attr("y",n).style("text-anchor","start").text(i);r(g,l)}y(A,"byText");function e(i,u,a,n,o,s,l,g){let{actorFontSize:C,actorFontFamily:B,actorFontWeight:E}=g,d=i.split(_e.lineBreakRegex);for(let I=0;I<d.length;I++){let h=I*C-C*(d.length-1)/2,Q=u.append("text").attr("x",a).attr("y",n).style("text-anchor","start").style("font-size",C).style("font-weight",E).style("font-family",B);Q.append("tspan").attr("x",a).attr("dy",h).text(d[I]),Q.attr("y",n+s/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(Q,l)}}y(e,"byTspan");function t(i,u,a,n,o,s,l,g){let C=u.append("switch"),E=C.append("foreignObject").attr("x",a).attr("y",n).attr("width",o).attr("height",s).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");E.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,C,a,n,o,s,l,g),r(E,l)}y(t,"byFo");function r(i,u){for(let a in u)if(u.hasOwnProperty(a))i.attr(a,u[a])}return y(r,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?t:i.textPlacement==="old"?A:e}}(),tNt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-solidTopArrowHead").attr("refX",7.9).attr("refY",7.25).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 8 L 0 8 z")},"insertSolidTopArrowHead"),rNt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-solidBottomArrowHead").attr("refX",7.9).attr("refY",0.75).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 0 L 0 8 z")},"insertSolidBottomArrowHead"),iNt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-stickTopArrowHead").attr("refX",7.5).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 7 7").attr("stroke","black").attr("stroke-width",1.5).attr("fill","none")},"insertStickTopArrowHead"),uNt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-stickBottomArrowHead").attr("refX",7.5).attr("refY",0).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M 0 7 L 7 0").attr("stroke","black").attr("stroke-width",1.5).attr("fill","none")},"insertStickBottomArrowHead"),zu={drawRect:g7,drawText:k6,drawLabel:Hie,drawActor:KRt,drawBox:JRt,drawPopup:LRt,anchorElement:ORt,drawActivation:PRt,drawLoop:_Rt,drawBackgroundRect:Jie,insertArrowHead:ZRt,insertArrowFilledHead:VRt,insertSequenceNumber:jRt,insertArrowCrossHead:XRt,insertDatabaseIcon:WRt,insertComputerIcon:qRt,insertClockIcon:zRt,getTextObj:Oie,getNoteRect:ANt,fixLifeLineHeights:Kie,sanitizeUrl:wCA.sanitizeUrl,insertDropShadow:$Rt,insertSolidTopArrowHead:tNt,insertSolidBottomArrowHead:rNt,insertStickTopArrowHead:iNt,insertStickBottomArrowHead:uNt},ne={},Ze={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:y(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map((A)=>A.height||0))+(this.loops.length===0?0:this.loops.map((A)=>A.height||0).reduce((A,e)=>A+e))+(this.messages.length===0?0:this.messages.map((A)=>A.height||0).reduce((A,e)=>A+e))+(this.notes.length===0?0:this.notes.map((A)=>A.height||0).reduce((A,e)=>A+e))},"getHeight"),clear:y(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:y(function(A){this.boxes.push(A)},"addBox"),addActor:y(function(A){this.actors.push(A)},"addActor"),addLoop:y(function(A){this.loops.push(A)},"addLoop"),addMessage:y(function(A){this.messages.push(A)},"addMessage"),addNote:y(function(A){this.notes.push(A)},"addNote"),lastActor:y(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:y(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:y(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:y(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:y(function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,Wie(OA())},"init"),updateVal:y(function(A,e,t,r){if(A[e]===void 0)A[e]=t;else A[e]=r(t,A[e])},"updateVal"),updateBounds:y(function(A,e,t,r){let i=this,u=0;function a(n){return y(function(s){u++;let l=i.sequenceItems.length-u+1;if(i.updateVal(s,"starty",e-l*ne.boxMargin,Math.min),i.updateVal(s,"stopy",r+l*ne.boxMargin,Math.max),i.updateVal(Ze.data,"startx",A-l*ne.boxMargin,Math.min),i.updateVal(Ze.data,"stopx",t+l*ne.boxMargin,Math.max),n!=="activation")i.updateVal(s,"startx",A-l*ne.boxMargin,Math.min),i.updateVal(s,"stopx",t+l*ne.boxMargin,Math.max),i.updateVal(Ze.data,"starty",e-l*ne.boxMargin,Math.min),i.updateVal(Ze.data,"stopy",r+l*ne.boxMargin,Math.max)},"updateItemBounds")}y(a,"updateFn"),this.sequenceItems.forEach(a()),this.activations.forEach(a("activation"))},"updateBounds"),insert:y(function(A,e,t,r){let i=_e.getMin(A,t),u=_e.getMax(A,t),a=_e.getMin(e,r),n=_e.getMax(e,r);this.updateVal(Ze.data,"startx",i,Math.min),this.updateVal(Ze.data,"starty",a,Math.min),this.updateVal(Ze.data,"stopx",u,Math.max),this.updateVal(Ze.data,"stopy",n,Math.max),this.updateBounds(i,a,u,n)},"insert"),newActivation:y(function(A,e,t){let r=t.get(A.from),i=SO(A.from).length||0,u=r.x+r.width/2+(i-1)*ne.activationWidth/2;this.activations.push({startx:u,starty:this.verticalPos+2,stopx:u+ne.activationWidth,stopy:void 0,actor:A.from,anchored:zu.anchorElement(e)})},"newActivation"),endActivation:y(function(A){let e=this.activations.map(function(t){return t.actor}).lastIndexOf(A.from);return this.activations.splice(e,1)[0]},"endActivation"),createLoop:y(function(A={message:void 0,wrap:!1,width:void 0},e){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:A.message,wrap:A.wrap,width:A.width,height:0,fill:e}},"createLoop"),newLoop:y(function(A={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(A,e))},"newLoop"),endLoop:y(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:y(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:y(function(A){let e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:Ze.getVerticalPos(),height:0}),e.sectionTitles.push(A),this.sequenceItems.push(e)},"addSectionToLoop"),saveVerticalPos:y(function(){if(this.isLoopOverlap())this.savedVerticalPos=this.verticalPos},"saveVerticalPos"),resetVerticalPos:y(function(){if(this.isLoopOverlap())this.verticalPos=this.savedVerticalPos},"resetVerticalPos"),bumpVerticalPos:y(function(A){this.verticalPos=this.verticalPos+A,this.data.stopy=_e.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:y(function(){return this.verticalPos},"getVerticalPos"),getBounds:y(function(){return{bounds:this.data,models:this.models}},"getBounds")},aNt=y(async function(A,e,t){Ze.bumpVerticalPos(ne.boxMargin),e.height=ne.boxMargin,e.starty=Ze.getVerticalPos();let r=J0();r.x=e.startx,r.y=e.starty,r.width=e.width||ne.width,r.class="note";let i=A.append("g");i.attr("data-et","note"),i.attr("data-id","i"+t);let u=zu.drawRect(i,r),a=bY();a.x=e.startx,a.y=e.starty,a.width=r.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=ne.noteFontFamily,a.fontSize=ne.noteFontSize,a.fontWeight=ne.noteFontWeight,a.anchor=ne.noteAlign,a.textMargin=ne.noteMargin,a.valign="center";let n=da(a.text)?await kO(i,a):k6(i,a),o=Math.round(n.map((s)=>(s._groups||s)[0][0].getBBox().height).reduce((s,l)=>s+l));u.attr("height",o+2*ne.noteMargin),e.height+=o+2*ne.noteMargin,Ze.bumpVerticalPos(o+2*ne.noteMargin),e.stopy=e.starty+o+2*ne.noteMargin,e.stopx=e.startx+r.width,Ze.insert(e.startx,e.starty,e.stopx,e.stopy),Ze.models.addNote(e)},"drawNote"),Tie=y(function(A,e,t,r,i,u,a){let n=r.db.getActors(),o=n.get(e.from),s=n.get(e.to),l=t.sequenceVisible,g=o.x+o.width/2,C=s.x+s.width/2,B=g<=C,E=Vie(e,r),d=A.append("g"),I=16.5,h=y((D,w)=>{let b=D?I:-I;return w?-b:b},"getCircleOffset"),Q=y((D)=>{d.append("circle").attr("cx",D).attr("cy",a).attr("r",5).attr("width",10).attr("height",10)},"drawCircle"),{CENTRAL_CONNECTION:p,CENTRAL_CONNECTION_REVERSE:m,CENTRAL_CONNECTION_DUAL:f}=r.db.LINETYPE;if(l)switch(e.centralConnection){case p:if(E)C+=h(B,!0);break;case m:if(!E)g+=h(B,!1);break;case f:if(E)C+=h(B,!0);else g+=h(B,!1);break}switch(e.centralConnection){case p:Q(C);break;case m:Q(g);break;case f:Q(g),Q(C);break}},"drawCentralConnection"),ym=y((A)=>({fontFamily:A.messageFontFamily,fontSize:A.messageFontSize,fontWeight:A.messageFontWeight}),"messageFont"),v6=y((A)=>({fontFamily:A.noteFontFamily,fontSize:A.noteFontSize,fontWeight:A.noteFontWeight}),"noteFont"),DCA=y((A)=>({fontFamily:A.actorFontFamily,fontSize:A.actorFontSize,fontWeight:A.actorFontWeight}),"actorFont");y(Pie,"boundMessage");nNt=y(async function(A,e,t,r,i,u){let{startx:a,stopx:n,starty:o,message:s,type:l,sequenceIndex:g,sequenceVisible:C}=e,B=Jt.calculateTextDimensions(s,ym(ne)),E=bY();if(E.x=Math.min(a,n),E.y=o+10,E.width=Math.abs(n-a),E.class="messageText",E.dy="1em",E.text=s,E.fontFamily=ne.messageFontFamily,E.fontSize=ne.messageFontSize,E.fontWeight=ne.messageFontWeight,E.anchor=ne.messageAlign,E.valign="center",E.textMargin=ne.wrapPadding,E.tspan=!1,da(E.text))await kO(A,E,{startx:a,stopx:n,starty:t});else k6(A,E);let d=B.width,I;if(a===n){let Q=C||ne.showSequenceNumbers,p=Vie(i,r),m=ENt(i,r),f=a+(Q&&(p||m)?10:0);if(ne.rightAngles)I=A.append("path").attr("d",`M ${f},${t} H ${a+_e.getMax(ne.width/2,d/2)} V ${t+25} H ${a}`);else I=A.append("path").attr("d","M "+f+","+t+" C "+(f+60)+","+(t-10)+" "+(a+60)+","+(t+30)+" "+a+","+(t+20));if(fCA(i,r))Tie(A,i,e,r,a,n,t)}else if(I=A.append("line"),I.attr("x1",a),I.attr("y1",t),I.attr("x2",n),I.attr("y2",t),fCA(i,r))Tie(A,i,e,r,a,n,t);if(l===r.db.LINETYPE.DOTTED||l===r.db.LINETYPE.DOTTED_CROSS||l===r.db.LINETYPE.DOTTED_POINT||l===r.db.LINETYPE.DOTTED_OPEN||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED||l===r.db.LINETYPE.SOLID_TOP_DOTTED||l===r.db.LINETYPE.SOLID_BOTTOM_DOTTED||l===r.db.LINETYPE.STICK_TOP_DOTTED||l===r.db.LINETYPE.STICK_BOTTOM_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED)I.style("stroke-dasharray","3, 3"),I.attr("class","messageLine1");else I.attr("class","messageLine0");I.attr("data-et","message"),I.attr("data-id","i"+e.id),I.attr("data-from",e.from),I.attr("data-to",e.to);let h="";if(ne.arrowMarkerAbsolute)h=ef(!0);if(I.attr("stroke-width",2),I.attr("stroke","none"),I.style("fill","none"),l===r.db.LINETYPE.SOLID_TOP||l===r.db.LINETYPE.SOLID_TOP_DOTTED)I.attr("marker-end","url("+h+"#"+u+"-solidTopArrowHead)");if(l===r.db.LINETYPE.SOLID_BOTTOM||l===r.db.LINETYPE.SOLID_BOTTOM_DOTTED)I.attr("marker-end","url("+h+"#"+u+"-solidBottomArrowHead)");if(l===r.db.LINETYPE.STICK_TOP||l===r.db.LINETYPE.STICK_TOP_DOTTED)I.attr("marker-end","url("+h+"#"+u+"-stickTopArrowHead)");if(l===r.db.LINETYPE.STICK_BOTTOM||l===r.db.LINETYPE.STICK_BOTTOM_DOTTED)I.attr("marker-end","url("+h+"#"+u+"-stickBottomArrowHead)");if(l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-solidBottomArrowHead)");if(l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-solidTopArrowHead)");if(l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-stickBottomArrowHead)");if(l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-stickTopArrowHead)");if(l===r.db.LINETYPE.SOLID||l===r.db.LINETYPE.DOTTED)I.attr("marker-end","url("+h+"#"+u+"-arrowhead)");if(l===r.db.LINETYPE.BIDIRECTIONAL_SOLID||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-arrowhead)"),I.attr("marker-end","url("+h+"#"+u+"-arrowhead)");if(l===r.db.LINETYPE.SOLID_POINT||l===r.db.LINETYPE.DOTTED_POINT)I.attr("marker-end","url("+h+"#"+u+"-filled-head)");if(l===r.db.LINETYPE.SOLID_CROSS||l===r.db.LINETYPE.DOTTED_CROSS)I.attr("marker-end","url("+h+"#"+u+"-crosshead)");if(C||ne.showSequenceNumbers){let Q=l===r.db.LINETYPE.BIDIRECTIONAL_SOLID||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED,p=l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,m=6,f=fCA(i,r),D=a,w=n;if(Q){if(a<n)D=a+12;else D=a-6+(f?-5:0),D+=i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_DUAL||i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE?-7.5:0;I.attr("x1",D)}else if(p){if(n>a)w=n-12;else w=n-6,D+=i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_DUAL||i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE?-7.5:0;w+=f?15:0,I.attr("x2",w),I.attr("x1",D)}else I.attr("x1",a+6);let b=0,F=a===n,v=a<=n;if(F)b=e.fromBounds+1;else if(p)b=v?e.toBounds-1:e.fromBounds+1;else b=v?e.fromBounds+1:e.toBounds-1;let S="12px",x=g.toString().length;if(x>5)S="7px";else if(x>3)S="9px";A.append("line").attr("x1",b).attr("y1",t).attr("x2",b).attr("y2",t).attr("stroke-width",0).attr("marker-start","url("+h+"#"+u+"-sequencenumber)"),A.append("text").attr("x",b).attr("y",t+4).attr("font-family","sans-serif").attr("font-size",S).attr("text-anchor","middle").attr("class","sequenceNumber").text(g)}},"drawMessage"),oNt=y(function(A,e,t,r,i,u,a){let n=0,o=0,s=void 0,l=0;for(let g of r){let C=e.get(g),B=C.box;if(s&&s!=B){if(!a)Ze.models.addBox(s);o+=ne.boxMargin+s.margin}if(B&&B!=s){if(!a)B.x=n+o,B.y=i;o+=B.margin}if(C.width=_e.getMax(C.width||ne.width,ne.width),C.height=_e.getMax(C.height||ne.height,ne.height),C.margin=C.margin||ne.actorMargin,l=_e.getMax(l,C.height),t.get(C.name))o+=C.width/2;if(C.x=n+o,C.starty=Ze.getVerticalPos(),Ze.insert(C.x,i,C.x+C.width,C.height),n+=C.width+o,C.box)C.box.width=n+B.margin-C.box.x;o=C.margin,s=C.box,Ze.models.addActor(C)}if(s&&!a)Ze.models.addBox(s);Ze.bumpVerticalPos(l)},"addActorRenderingData"),yCA=y(async function(A,e,t,r,i,u,a){if(!r)for(let n of t){let o=e.get(n);await zu.drawActor(A,o,ne,!1,i,u,a)}else{let n=0;Ze.bumpVerticalPos(ne.boxMargin*2);for(let o of t){let s=e.get(o);if(!s.stopy)s.stopy=Ze.getVerticalPos();let l=await zu.drawActor(A,s,ne,!0,i,u,a);n=_e.getMax(n,l)}Ze.bumpVerticalPos(n+ne.boxMargin)}},"drawActors"),_ie=y(function(A,e,t,r){let i=0,u=0;for(let a of t){let n=e.get(a),o=lNt(n),s=zu.drawPopup(A,n,o,ne,ne.forceMenus,r);if(s.height>i)i=s.height;if(s.width+n.x>u)u=s.width+n.x}return{maxHeight:i,maxWidth:u}},"drawActorsPopup"),Wie=y(function(A){if(Ea(ne,A),A.fontFamily)ne.actorFontFamily=ne.noteFontFamily=ne.messageFontFamily=A.fontFamily;if(A.fontSize)ne.actorFontSize=ne.noteFontSize=ne.messageFontSize=A.fontSize;if(A.fontWeight)ne.actorFontWeight=ne.noteFontWeight=ne.messageFontWeight=A.fontWeight},"setConf"),SO=y(function(A){return Ze.activations.filter(function(e){return e.actor===A})},"actorActivations"),Yie=y(function(A,e){let t=e.get(A),r=SO(A),i=r.reduce(function(a,n){return _e.getMin(a,n.startx)},t.x+t.width/2-1),u=r.reduce(function(a,n){return _e.getMax(a,n.stopx)},t.x+t.width/2+1);return[i,u]},"activationBounds");y(WC,"adjustLoopHeightForWrap");y(qie,"adjustCreatedDestroyedData");sNt=y(async function(A,e,t,r){let{securityLevel:i,sequence:u,look:a,themeVariables:n}=OA();ne=u;let o;if(i==="sandbox")o=Qe("#i"+e);let s=i==="sandbox"?Qe(o.nodes()[0].contentDocument.body):Qe("body"),l=i==="sandbox"?o.nodes()[0].contentDocument:document;Ze.init(),sA.debug(r.db);let g=i==="sandbox"?s.select(`[id="${e}"]`):Qe(`[id="${e}"]`),C=r.db.getActors(),B=r.db.getCreatedActors(),E=r.db.getDestroyedActors(),d=r.db.getBoxes(),I=r.db.getActorKeys(),h=r.db.getMessages(),Q=r.db.getDiagramTitle(),p=r.db.hasAtLeastOneBox(),m=r.db.hasAtLeastOneBoxWithTitle(),f=await zie(C,h,r);if(ne.height=await Zie(C,f,d),zu.insertComputerIcon(g,e),zu.insertDatabaseIcon(g,e),zu.insertClockIcon(g,e),p){if(Ze.bumpVerticalPos(ne.boxMargin),m)Ze.bumpVerticalPos(d[0].textMaxHeight)}if(ne.hideUnusedParticipants===!0){let K=new Set;h.forEach((O)=>{K.add(O.from),K.add(O.to)}),I=I.filter((O)=>K.has(O))}let D=new Map(I.map((K,O)=>[C.get(K)?.name??K,O]));oNt(g,C,B,I,0,h,!1);let w=await INt(h,C,f,r);if(zu.insertArrowHead(g,e),zu.insertArrowCrossHead(g,e),zu.insertArrowFilledHead(g,e),zu.insertSequenceNumber(g,e),zu.insertSolidTopArrowHead(g,e),zu.insertSolidBottomArrowHead(g,e),zu.insertStickTopArrowHead(g,e),zu.insertStickBottomArrowHead(g,e),a==="neo")zu.insertDropShadow(g,ne);function b(K,O){let _=Ze.endActivation(K);if(_.starty+18>O)_.starty=O-6,O+=12;zu.drawActivation(g,_,O,ne,SO(K.from).length,r,D),Ze.insert(_.startx,O-10,_.stopx,O)}y(b,"activeEnd");let F=1,v=1,S=[],x=[],k=0;for(let K of h){let O,_,z;switch(K.type){case r.db.LINETYPE.NOTE:Ze.resetVerticalPos(),_=K.noteModel,await aNt(g,_,K.id);break;case r.db.LINETYPE.ACTIVE_START:Ze.newActivation(K,g,C);break;case r.db.LINETYPE.CENTRAL_CONNECTION:Ze.newActivation(K,g,C);break;case r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE:Ze.newActivation(K,g,C);break;case r.db.LINETYPE.ACTIVE_END:b(K,Ze.getVerticalPos());break;case r.db.LINETYPE.LOOP_START:WC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(j)=>Ze.newLoop(j));break;case r.db.LINETYPE.LOOP_END:O=Ze.endLoop(),await zu.drawLoop(g,O,"loop",ne,K),Ze.bumpVerticalPos(O.stopy-Ze.getVerticalPos()),Ze.models.addLoop(O);break;case r.db.LINETYPE.RECT_START:WC(w,K,ne.boxMargin,ne.boxMargin,(j)=>{let q=j.message;if(!q)q=n?.rectBkgColor||n?.actorBkg||"rgba(128, 128, 128, 0.5)";Ze.newLoop(void 0,q)});break;case r.db.LINETYPE.RECT_END:O=Ze.endLoop(),x.push(O),Ze.models.addLoop(O),Ze.bumpVerticalPos(O.stopy-Ze.getVerticalPos());break;case r.db.LINETYPE.OPT_START:WC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(j)=>Ze.newLoop(j));break;case r.db.LINETYPE.OPT_END:O=Ze.endLoop(),await zu.drawLoop(g,O,"opt",ne,K),Ze.bumpVerticalPos(O.stopy-Ze.getVerticalPos()),Ze.models.addLoop(O);break;case r.db.LINETYPE.ALT_START:WC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(j)=>Ze.newLoop(j));break;case r.db.LINETYPE.ALT_ELSE:WC(w,K,ne.boxMargin+ne.boxTextMargin,ne.boxMargin,(j)=>Ze.addSectionToLoop(j));break;case r.db.LINETYPE.ALT_END:O=Ze.endLoop(),await zu.drawLoop(g,O,"alt",ne,K),Ze.bumpVerticalPos(O.stopy-Ze.getVerticalPos()),Ze.models.addLoop(O);break;case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:WC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(j)=>Ze.newLoop(j)),Ze.saveVerticalPos();break;case r.db.LINETYPE.PAR_AND:WC(w,K,ne.boxMargin+ne.boxTextMargin,ne.boxMargin,(j)=>Ze.addSectionToLoop(j));break;case r.db.LINETYPE.PAR_END:O=Ze.endLoop(),await zu.drawLoop(g,O,"par",ne,K),Ze.bumpVerticalPos(O.stopy-Ze.getVerticalPos()),Ze.models.addLoop(O);break;case r.db.LINETYPE.AUTONUMBER:if(F=K.message.start||F,v=K.message.step||v,K.message.visible)r.db.enableSequenceNumbers();else r.db.disableSequenceNumbers();break;case r.db.LINETYPE.CRITICAL_START:WC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(j)=>Ze.newLoop(j));break;case r.db.LINETYPE.CRITICAL_OPTION:WC(w,K,ne.boxMargin+ne.boxTextMargin,ne.boxMargin,(j)=>Ze.addSectionToLoop(j));break;case r.db.LINETYPE.CRITICAL_END:O=Ze.endLoop(),await zu.drawLoop(g,O,"critical",ne,K),Ze.bumpVerticalPos(O.stopy-Ze.getVerticalPos()),Ze.models.addLoop(O);break;case r.db.LINETYPE.BREAK_START:WC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(j)=>Ze.newLoop(j));break;case r.db.LINETYPE.BREAK_END:O=Ze.endLoop(),await zu.drawLoop(g,O,"break",ne,K),Ze.bumpVerticalPos(O.stopy-Ze.getVerticalPos()),Ze.models.addLoop(O);break;default:try{z=K.msgModel,z.starty=Ze.getVerticalPos(),z.sequenceIndex=F,z.sequenceVisible=r.db.showSequenceNumbers(),z.id=K.id,z.from=K.from,z.to=K.to;let j=await Pie(g,z);qie(K,z,j,k,C,B,E),S.push({messageModel:z,lineStartY:j,msg:K}),Ze.models.addMessage(z)}catch(j){sA.error("error while drawing message",j)}}if([r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN,r.db.LINETYPE.SOLID,r.db.LINETYPE.SOLID_TOP,r.db.LINETYPE.SOLID_BOTTOM,r.db.LINETYPE.STICK_TOP,r.db.LINETYPE.STICK_BOTTOM,r.db.LINETYPE.SOLID_TOP_DOTTED,r.db.LINETYPE.SOLID_BOTTOM_DOTTED,r.db.LINETYPE.STICK_TOP_DOTTED,r.db.LINETYPE.STICK_BOTTOM_DOTTED,r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE,r.db.LINETYPE.STICK_ARROW_TOP_REVERSE,r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,r.db.LINETYPE.DOTTED,r.db.LINETYPE.SOLID_CROSS,r.db.LINETYPE.DOTTED_CROSS,r.db.LINETYPE.SOLID_POINT,r.db.LINETYPE.DOTTED_POINT,r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(K.type))F=Math.round((F+v)*100)/100;k++}sA.debug("createdActors",B),sA.debug("destroyedActors",E),await yCA(g,C,I,!1,e,r,D);for(let K of S)await nNt(g,K.messageModel,K.lineStartY,r,K.msg,e);if(ne.mirrorActors)await yCA(g,C,I,!0,e,r,D);x.forEach((K)=>zu.drawBackgroundRect(g,K)),Kie(g,C,I,ne);for(let K of Ze.models.boxes){K.height=Ze.getVerticalPos()-K.y,Ze.insert(K.x,K.y,K.x+K.width,K.height);let O=ne.boxMargin*2;K.startx=K.x-O,K.starty=K.y-O*0.25,K.stopx=K.startx+K.width+2*O,K.stopy=K.starty+K.height+O*0.75,K.stroke="rgb(0,0,0, 0.5)",zu.drawBox(g,K,ne)}if(p)Ze.bumpVerticalPos(ne.boxMargin);let T=_ie(g,C,I,l),{bounds:R}=Ze.getBounds();if(R.startx===void 0)R.startx=0;if(R.starty===void 0)R.starty=0;if(R.stopx===void 0)R.stopx=0;if(R.stopy===void 0)R.stopy=0;let L=R.stopy-R.starty;if(L<T.maxHeight)L=T.maxHeight;let M=L+2*ne.diagramMarginY;if(ne.mirrorActors)M=M-ne.boxMargin+ne.bottomMarginAdj;let U=R.stopx-R.startx;if(U<T.maxWidth)U=T.maxWidth;let Y=U+2*ne.diagramMarginX;if(Q)g.append("text").text(Q).attr("x",(R.stopx-R.startx)/2-2*ne.diagramMarginX).attr("y",-25);jr(g,M,Y,ne.useMaxWidth);let H=Q?40:0,J=C.size&&a==="neo"?30:0;g.attr("viewBox",R.startx-ne.diagramMarginX+" -"+(ne.diagramMarginY+H)+" "+Y+" "+(M+H+J)),sA.debug("models:",Ze.models)},"draw");y(zie,"getMaxMessageWidthPerActor");lNt=y(function(A){let e=0,t=DCA(ne);for(let r in A.links){let u=Jt.calculateTextDimensions(r,t).width+2*ne.wrapPadding+2*ne.boxMargin;if(e<u)e=u}return e},"getRequiredPopupWidth");y(Zie,"calculateActorMargins");gNt=y(async function(A,e,t){let r=e.get(A.from),i=e.get(A.to),u=r.x,a=i.x,n=A.wrap&&A.message,o=da(A.message)?await DD(A.message,OA()):Jt.calculateTextDimensions(n?Jt.wrapLabel(A.message,ne.width,v6(ne)):A.message,v6(ne)),s={width:n?ne.width:_e.getMax(ne.width,o.width+2*ne.noteMargin),height:0,startx:r.x,stopx:0,starty:0,stopy:0,message:A.message};if(A.placement===t.db.PLACEMENT.RIGHTOF)s.width=n?_e.getMax(ne.width,o.width):_e.getMax(r.width/2+i.width/2,o.width+2*ne.noteMargin),s.startx=u+(r.width+ne.actorMargin)/2;else if(A.placement===t.db.PLACEMENT.LEFTOF)s.width=n?_e.getMax(ne.width,o.width+2*ne.noteMargin):_e.getMax(r.width/2+i.width/2,o.width+2*ne.noteMargin),s.startx=u-s.width+(r.width-ne.actorMargin)/2;else if(A.to===A.from)o=Jt.calculateTextDimensions(n?Jt.wrapLabel(A.message,_e.getMax(ne.width,r.width),v6(ne)):A.message,v6(ne)),s.width=n?_e.getMax(ne.width,r.width):_e.getMax(r.width,ne.width,o.width+2*ne.noteMargin),s.startx=u+(r.width-s.width)/2;else s.width=Math.abs(u+r.width/2-(a+i.width/2))+ne.actorMargin,s.startx=u<a?u+r.width/2-ne.actorMargin/2:a+i.width/2-ne.actorMargin/2;if(n)s.message=Jt.wrapLabel(A.message,s.width-2*ne.wrapPadding,v6(ne));return sA.debug(`NM:[${s.startx},${s.stopx},${s.starty},${s.stopy}:${s.width},${s.height}=${A.message}]`),s},"buildNoteModel"),fCA=y(function(A,e){let{CENTRAL_CONNECTION:t,CENTRAL_CONNECTION_REVERSE:r,CENTRAL_CONNECTION_DUAL:i}=e.db.LINETYPE;return[t,r,i].includes(A.centralConnection)},"hasCentralConnection"),BNt=y(function(A,e,t){let{CENTRAL_CONNECTION_REVERSE:r,CENTRAL_CONNECTION_DUAL:i,BIDIRECTIONAL_SOLID:u,BIDIRECTIONAL_DOTTED:a}=e.db.LINETYPE,n=0;if(A.centralConnection===r||A.centralConnection===i)n+=cNt;if((A.centralConnection===r||A.centralConnection===i)&&(A.type===u||A.type===a))n+=t?0:-CNt;return n},"calculateCentralConnectionOffset"),Vie=y(function(A,e){let{SOLID_ARROW_TOP_REVERSE:t,SOLID_ARROW_TOP_REVERSE_DOTTED:r,SOLID_ARROW_BOTTOM_REVERSE:i,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:u,STICK_ARROW_TOP_REVERSE:a,STICK_ARROW_TOP_REVERSE_DOTTED:n,STICK_ARROW_BOTTOM_REVERSE:o,STICK_ARROW_BOTTOM_REVERSE_DOTTED:s}=e.db.LINETYPE;return[t,r,i,u,a,n,o,s].includes(A.type)},"isReverseArrowType"),ENt=y(function(A,e){let{BIDIRECTIONAL_SOLID:t,BIDIRECTIONAL_DOTTED:r}=e.db.LINETYPE;return[t,r].includes(A.type)},"isBidirectionalArrowType"),dNt=y(function(A,e,t){let{look:r}=OA();if(![t.db.LINETYPE.SOLID_OPEN,t.db.LINETYPE.DOTTED_OPEN,t.db.LINETYPE.SOLID,t.db.LINETYPE.SOLID_TOP,t.db.LINETYPE.SOLID_BOTTOM,t.db.LINETYPE.STICK_TOP,t.db.LINETYPE.STICK_BOTTOM,t.db.LINETYPE.SOLID_TOP_DOTTED,t.db.LINETYPE.SOLID_BOTTOM_DOTTED,t.db.LINETYPE.STICK_TOP_DOTTED,t.db.LINETYPE.STICK_BOTTOM_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE,t.db.LINETYPE.STICK_ARROW_TOP_REVERSE,t.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.DOTTED,t.db.LINETYPE.SOLID_CROSS,t.db.LINETYPE.DOTTED_CROSS,t.db.LINETYPE.SOLID_POINT,t.db.LINETYPE.DOTTED_POINT,t.db.LINETYPE.BIDIRECTIONAL_SOLID,t.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(A.type))return{};let[i,u]=Yie(A.from,e),[a,n]=Yie(A.to,e),o=i<=a,s=o?u:i,l=o?a:n;if(r==="neo"){if(A.type!==t.db.LINETYPE.SOLID_OPEN)l+=o?-3:3;if(A.type===t.db.LINETYPE.BIDIRECTIONAL_SOLID||A.type===t.db.LINETYPE.BIDIRECTIONAL_DOTTED)s+=o?3:-3}s+=BNt(A,t,o);let g=Math.abs(a-n)>2,C=y((I)=>o?-I:I,"adjustValue");if(A.from===A.to)l=s;else{if(A.activate&&!g)l+=C(ne.activationWidth/2-1);if(![t.db.LINETYPE.SOLID_OPEN,t.db.LINETYPE.DOTTED_OPEN,t.db.LINETYPE.STICK_TOP,t.db.LINETYPE.STICK_BOTTOM,t.db.LINETYPE.STICK_TOP_DOTTED,t.db.LINETYPE.STICK_BOTTOM_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.STICK_ARROW_TOP_REVERSE,t.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,t.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(A.type))l+=C(3);if([t.db.LINETYPE.BIDIRECTIONAL_SOLID,t.db.LINETYPE.BIDIRECTIONAL_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(A.type))s-=C(3)}let B=[i,u,a,n],E=Math.abs(s-l);if(A.wrap&&A.message)A.message=Jt.wrapLabel(A.message,_e.getMax(E+2*ne.wrapPadding,ne.width),ym(ne));let d=Jt.calculateTextDimensions(A.message,ym(ne));return{width:_e.getMax(A.wrap?0:d.width+2*ne.wrapPadding,E+2*ne.wrapPadding,ne.width),height:0,startx:s,stopx:l,starty:0,stopy:0,message:A.message,type:A.type,wrap:A.wrap,fromBounds:Math.min.apply(null,B),toBounds:Math.max.apply(null,B)}},"buildMessageModel"),INt=y(async function(A,e,t,r){let i={},u=[],a,n,o;for(let s of A){switch(s.type){case r.db.LINETYPE.LOOP_START:case r.db.LINETYPE.ALT_START:case r.db.LINETYPE.OPT_START:case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:case r.db.LINETYPE.CRITICAL_START:case r.db.LINETYPE.BREAK_START:u.push({id:s.id,msg:s.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case r.db.LINETYPE.ALT_ELSE:case r.db.LINETYPE.PAR_AND:case r.db.LINETYPE.CRITICAL_OPTION:if(s.message)a=u.pop(),i[a.id]=a,i[s.id]=a,u.push(a);break;case r.db.LINETYPE.LOOP_END:case r.db.LINETYPE.ALT_END:case r.db.LINETYPE.OPT_END:case r.db.LINETYPE.PAR_END:case r.db.LINETYPE.CRITICAL_END:case r.db.LINETYPE.BREAK_END:a=u.pop(),i[a.id]=a;break;case r.db.LINETYPE.ACTIVE_START:{let g=e.get(s.from?s.from:s.to.actor),C=SO(s.from?s.from:s.to.actor).length,B=g.x+g.width/2+(C-1)*ne.activationWidth/2,E={startx:B,stopx:B+ne.activationWidth,actor:s.from,enabled:!0};Ze.activations.push(E)}break;case r.db.LINETYPE.ACTIVE_END:{let g=Ze.activations.map((C)=>C.actor).lastIndexOf(s.from);Ze.activations.splice(g,1).splice(0,1)}break}if(s.placement!==void 0)n=await gNt(s,e,r),s.noteModel=n,u.forEach((g)=>{a=g,a.from=_e.getMin(a.from,n.startx),a.to=_e.getMax(a.to,n.startx+n.width),a.width=_e.getMax(a.width,Math.abs(a.from-a.to))-ne.labelBoxWidth});else if(o=dNt(s,e,r),s.msgModel=o,o.startx&&o.stopx&&u.length>0)u.forEach((g)=>{if(a=g,o.startx===o.stopx){let C=e.get(s.from),B=e.get(s.to);a.from=_e.getMin(C.x-o.width/2,C.x-C.width/2,a.from),a.to=_e.getMax(B.x+o.width/2,B.x+C.width/2,a.to),a.width=_e.getMax(a.width,Math.abs(a.to-a.from))-ne.labelBoxWidth}else a.from=_e.getMin(o.startx,a.from),a.to=_e.getMax(o.stopx,a.to),a.width=_e.getMax(a.width,o.width)-ne.labelBoxWidth})}return Ze.activations=[],sA.debug("Loop type widths:",i),i},"calculateLoopBounds"),hNt={bounds:Ze,drawActors:yCA,drawActorsPopup:_ie,setConf:Wie,draw:sNt},jie={parser:wRt,get db(){return new FRt},renderer:hNt,styles:SRt,init:y((A)=>{if(!A.sequence)A.sequence={};if(A.wrap)A.sequence.wrap=A.wrap,kb({sequence:{wrap:A.wrap}})},"init")}});var bCA,RO,$ie,Aue,LO="classId-",eue=0,wm,NO,QNt,GO,pNt,fNt,mNt,UO;var vCA=P(()=>{KE();Eg();fl();hl();Bg();ai();rr();ir();Nt();Pr();cD();bCA=function(){var A=y(function(SA,YA,dA,W){for(dA=dA||{},W=SA.length;W--;dA[SA[W]]=YA);return dA},"o"),e=[1,18],t=[1,19],r=[1,20],i=[1,41],u=[1,26],a=[1,42],n=[1,24],o=[1,25],s=[1,32],l=[1,33],g=[1,34],C=[1,45],B=[1,35],E=[1,36],d=[1,37],I=[1,38],h=[1,27],Q=[1,28],p=[1,29],m=[1,30],f=[1,31],D=[1,44],w=[1,46],b=[1,43],F=[1,47],v=[1,9],S=[1,8,9],x=[1,58],k=[1,59],T=[1,60],R=[1,61],L=[1,62],M=[1,63],U=[1,64],Y=[1,8,9,41],H=[1,77],J=[1,8,9,12,13,22,39,41,44,46,68,69,70,71,72,73,74,79,81],K=[1,8,9,12,13,18,20,22,39,41,44,46,47,60,68,69,70,71,72,73,74,79,81,86,100,102,103],O=[13,60,86,100,102,103],_=[13,60,73,74,86,100,102,103],z=[13,60,68,69,70,71,72,86,100,102,103],j=[1,103],q=[1,121],CA=[1,117],tA=[1,113],lA=[1,119],gA=[1,114],aA=[1,115],RA=[1,116],wA=[1,118],JA=[1,120],TA=[22,50,60,61,82,86,87,88,89,90],qA=[1,128],BA=[12,39],bA=[1,8,9,39,41,44,46],FA=[1,8,9,22],IA=[1,153],nA=[1,8,9,61],eA=[1,8,9,22,50,60,61,82,86,87,88,89,90],EA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,ANNOTATION_START:46,ANNOTATION_END:47,CLASS:48,emptyBody:49,SPACE:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"CLASS",50:"SPACE",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[38,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[24,4],[24,7],[24,6],[43,2],[43,3],[49,0],[49,2],[49,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:y(function(YA,dA,W,Z,pA,AA,DA){var rA=AA.length-1;switch(pA){case 8:this.$=AA[rA-1];break;case 9:case 10:case 13:case 15:this.$=AA[rA];break;case 11:case 14:this.$=AA[rA-2]+"."+AA[rA];break;case 12:case 16:this.$=AA[rA-1]+AA[rA];break;case 17:case 18:this.$=AA[rA-1]+"~"+AA[rA]+"~";break;case 19:Z.addRelation(AA[rA]);break;case 20:AA[rA-1].title=Z.cleanupLabel(AA[rA]),Z.addRelation(AA[rA-1]);break;case 31:this.$=AA[rA].trim(),Z.setAccTitle(this.$);break;case 32:case 33:this.$=AA[rA].trim(),Z.setAccDescription(this.$);break;case 34:Z.addClassesToNamespace(AA[rA-3],AA[rA-1][0],AA[rA-1][1]),Z.popNamespace();break;case 35:Z.addClassesToNamespace(AA[rA-4],AA[rA-1][0],AA[rA-1][1]),Z.popNamespace();break;case 36:this.$=Z.addNamespace(AA[rA]);break;case 37:this.$=Z.addNamespace(AA[rA-1],AA[rA]);break;case 38:this.$=[[AA[rA]],[]];break;case 39:this.$=[[AA[rA-1]],[]];break;case 40:AA[rA][0].unshift(AA[rA-2]),this.$=AA[rA];break;case 41:this.$=[[],[AA[rA]]];break;case 42:this.$=[[],[AA[rA-1]]];break;case 43:AA[rA][1].unshift(AA[rA-2]),this.$=AA[rA];break;case 44:case 45:this.$=[[],[]];break;case 46:this.$=AA[rA];break;case 48:Z.setCssClass(AA[rA-2],AA[rA]);break;case 49:Z.addMembers(AA[rA-3],AA[rA-1]);break;case 51:Z.setCssClass(AA[rA-5],AA[rA-3]),Z.addMembers(AA[rA-5],AA[rA-1]);break;case 52:Z.addAnnotation(AA[rA-3],AA[rA-1]);break;case 53:Z.addAnnotation(AA[rA-6],AA[rA-4]),Z.addMembers(AA[rA-6],AA[rA-1]);break;case 54:Z.addAnnotation(AA[rA-5],AA[rA-3]);break;case 55:this.$=AA[rA],Z.addClass(AA[rA]);break;case 56:this.$=AA[rA-1],Z.addClass(AA[rA-1]),Z.setClassLabel(AA[rA-1],AA[rA]);break;case 60:Z.addAnnotation(AA[rA],AA[rA-2]);break;case 61:case 74:this.$=[AA[rA]];break;case 62:AA[rA].push(AA[rA-1]),this.$=AA[rA];break;case 63:break;case 64:Z.addMember(AA[rA-1],Z.cleanupLabel(AA[rA]));break;case 65:break;case 66:break;case 67:this.$={id1:AA[rA-2],id2:AA[rA],relation:AA[rA-1],relationTitle1:"none",relationTitle2:"none"};break;case 68:this.$={id1:AA[rA-3],id2:AA[rA],relation:AA[rA-1],relationTitle1:AA[rA-2],relationTitle2:"none"};break;case 69:this.$={id1:AA[rA-3],id2:AA[rA],relation:AA[rA-2],relationTitle1:"none",relationTitle2:AA[rA-1]};break;case 70:this.$={id1:AA[rA-4],id2:AA[rA],relation:AA[rA-2],relationTitle1:AA[rA-3],relationTitle2:AA[rA-1]};break;case 71:this.$=Z.addNote(AA[rA],AA[rA-1]);break;case 72:this.$=Z.addNote(AA[rA]);break;case 73:this.$=AA[rA-2],Z.defineClass(AA[rA-1],AA[rA]);break;case 75:this.$=AA[rA-2].concat([AA[rA]]);break;case 76:Z.setDirection("TB");break;case 77:Z.setDirection("BT");break;case 78:Z.setDirection("RL");break;case 79:Z.setDirection("LR");break;case 80:this.$={type1:AA[rA-2],type2:AA[rA],lineType:AA[rA-1]};break;case 81:this.$={type1:"none",type2:AA[rA],lineType:AA[rA-1]};break;case 82:this.$={type1:AA[rA-1],type2:"none",lineType:AA[rA]};break;case 83:this.$={type1:"none",type2:"none",lineType:AA[rA]};break;case 84:this.$=Z.relationType.AGGREGATION;break;case 85:this.$=Z.relationType.EXTENSION;break;case 86:this.$=Z.relationType.COMPOSITION;break;case 87:this.$=Z.relationType.DEPENDENCY;break;case 88:this.$=Z.relationType.LOLLIPOP;break;case 89:this.$=Z.lineType.LINE;break;case 90:this.$=Z.lineType.DOTTED_LINE;break;case 91:case 97:this.$=AA[rA-2],Z.setClickEvent(AA[rA-1],AA[rA]);break;case 92:case 98:this.$=AA[rA-3],Z.setClickEvent(AA[rA-2],AA[rA-1]),Z.setTooltip(AA[rA-2],AA[rA]);break;case 93:this.$=AA[rA-2],Z.setLink(AA[rA-1],AA[rA]);break;case 94:this.$=AA[rA-3],Z.setLink(AA[rA-2],AA[rA-1],AA[rA]);break;case 95:this.$=AA[rA-3],Z.setLink(AA[rA-2],AA[rA-1]),Z.setTooltip(AA[rA-2],AA[rA]);break;case 96:this.$=AA[rA-4],Z.setLink(AA[rA-3],AA[rA-2],AA[rA]),Z.setTooltip(AA[rA-3],AA[rA-1]);break;case 99:this.$=AA[rA-3],Z.setClickEvent(AA[rA-2],AA[rA-1],AA[rA]);break;case 100:this.$=AA[rA-4],Z.setClickEvent(AA[rA-3],AA[rA-2],AA[rA-1]),Z.setTooltip(AA[rA-3],AA[rA]);break;case 101:this.$=AA[rA-3],Z.setLink(AA[rA-2],AA[rA]);break;case 102:this.$=AA[rA-4],Z.setLink(AA[rA-3],AA[rA-1],AA[rA]);break;case 103:this.$=AA[rA-4],Z.setLink(AA[rA-3],AA[rA-1]),Z.setTooltip(AA[rA-3],AA[rA]);break;case 104:this.$=AA[rA-5],Z.setLink(AA[rA-4],AA[rA-2],AA[rA]),Z.setTooltip(AA[rA-4],AA[rA-1]);break;case 105:this.$=AA[rA-2],Z.setCssStyle(AA[rA-1],AA[rA]);break;case 106:Z.setCssClass(AA[rA-1],AA[rA]);break;case 107:this.$=[AA[rA]];break;case 108:AA[rA-2].push(AA[rA]),this.$=AA[rA-2];break;case 110:this.$=AA[rA-1]+AA[rA];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:t,37:r,38:22,42:i,43:23,46:u,48:a,51:n,52:o,54:s,56:l,57:g,60:C,62:B,63:E,64:d,65:I,75:h,76:Q,78:p,82:m,83:f,86:D,100:w,102:b,103:F},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},A(v,[2,5],{8:[1,48]}),{8:[1,49]},A(S,[2,19],{22:[1,50]}),A(S,[2,21]),A(S,[2,22]),A(S,[2,23]),A(S,[2,24]),A(S,[2,25]),A(S,[2,26]),A(S,[2,27]),A(S,[2,28]),A(S,[2,29]),A(S,[2,30]),{34:[1,51]},{36:[1,52]},A(S,[2,33]),A(S,[2,63],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:x,69:k,70:T,71:R,72:L,73:M,74:U}),{39:[1,65]},A(Y,[2,47],{39:[1,67],44:[1,66],46:[1,68]}),A(S,[2,65]),A(S,[2,66]),{16:69,60:C,86:D,100:w,102:b},{16:39,17:40,19:70,60:C,86:D,100:w,102:b,103:F},{16:39,17:40,19:71,60:C,86:D,100:w,102:b,103:F},{16:39,17:40,19:72,60:C,86:D,100:w,102:b,103:F},{60:[1,73]},{13:[1,74]},{16:39,17:40,19:75,60:C,86:D,100:w,102:b,103:F},{13:H,55:76},{58:78,60:[1,79]},A(S,[2,76]),A(S,[2,77]),A(S,[2,78]),A(S,[2,79]),A(J,[2,13],{16:39,17:40,19:81,18:[1,80],20:[1,82],60:C,86:D,100:w,102:b,103:F}),A(J,[2,15],{20:[1,83]}),{15:84,16:85,17:86,60:C,86:D,100:w,102:b,103:F},{16:39,17:40,19:87,60:C,86:D,100:w,102:b,103:F},A(K,[2,133]),A(K,[2,134]),A(K,[2,135]),A(K,[2,136]),A([1,8,9,12,13,20,22,39,41,44,46,68,69,70,71,72,73,74,79,81],[2,137]),A(v,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:88,33:e,35:t,37:r,42:i,46:u,48:a,51:n,52:o,54:s,56:l,57:g,60:C,62:B,63:E,64:d,65:I,75:h,76:Q,78:p,82:m,83:f,86:D,100:w,102:b,103:F}),{5:89,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:t,37:r,38:22,42:i,43:23,46:u,48:a,51:n,52:o,54:s,56:l,57:g,60:C,62:B,63:E,64:d,65:I,75:h,76:Q,78:p,82:m,83:f,86:D,100:w,102:b,103:F},A(S,[2,20]),A(S,[2,31]),A(S,[2,32]),{13:[1,91],16:39,17:40,19:90,60:C,86:D,100:w,102:b,103:F},{53:92,66:56,67:57,68:x,69:k,70:T,71:R,72:L,73:M,74:U},A(S,[2,64]),{67:93,73:M,74:U},A(O,[2,83],{66:94,68:x,69:k,70:T,71:R,72:L}),A(_,[2,84]),A(_,[2,85]),A(_,[2,86]),A(_,[2,87]),A(_,[2,88]),A(z,[2,89]),A(z,[2,90]),{8:[1,96],23:99,24:97,30:98,38:22,40:95,42:i,43:23,48:a,54:s,56:l},{16:100,60:C,86:D,100:w,102:b},{41:[1,102],45:101,51:j},{16:104,60:C,86:D,100:w,102:b},{47:[1,105]},{13:[1,106]},{13:[1,107]},{79:[1,108],81:[1,109]},{22:q,50:CA,59:110,60:tA,82:lA,84:111,85:112,86:gA,87:aA,88:RA,89:wA,90:JA},{60:[1,122]},{13:H,55:123},A(Y,[2,72]),A(Y,[2,138]),{22:q,50:CA,59:124,60:tA,61:[1,125],82:lA,84:111,85:112,86:gA,87:aA,88:RA,89:wA,90:JA},A(TA,[2,74]),{16:39,17:40,19:126,60:C,86:D,100:w,102:b,103:F},A(J,[2,16]),A(J,[2,17]),A(J,[2,18]),{11:127,12:qA,39:[2,36]},A(BA,[2,9],{16:85,17:86,15:130,18:[1,129],60:C,86:D,100:w,102:b,103:F}),A(BA,[2,10]),A(bA,[2,55],{11:131,12:qA}),A(v,[2,7]),{9:[1,132]},A(FA,[2,67]),{16:39,17:40,19:133,60:C,86:D,100:w,102:b,103:F},{13:[1,135],16:39,17:40,19:134,60:C,86:D,100:w,102:b,103:F},A(O,[2,82],{66:136,68:x,69:k,70:T,71:R,72:L}),A(O,[2,81]),{41:[1,137]},{23:99,24:97,30:98,38:22,40:138,42:i,43:23,48:a,54:s,56:l},{8:[1,139],41:[2,38]},{8:[1,140],41:[2,41]},{8:[1,141],41:[2,44]},A(Y,[2,48],{39:[1,142]}),{41:[1,143]},A(Y,[2,50]),{41:[2,61],45:144,51:j},{47:[1,145]},{16:39,17:40,19:146,60:C,86:D,100:w,102:b,103:F},A(S,[2,91],{13:[1,147]}),A(S,[2,93],{13:[1,149],77:[1,148]}),A(S,[2,97],{13:[1,150],80:[1,151]}),{13:[1,152]},A(S,[2,105],{61:IA}),A(nA,[2,107],{85:154,22:q,50:CA,60:tA,82:lA,86:gA,87:aA,88:RA,89:wA,90:JA}),A(eA,[2,109]),A(eA,[2,111]),A(eA,[2,112]),A(eA,[2,113]),A(eA,[2,114]),A(eA,[2,115]),A(eA,[2,116]),A(eA,[2,117]),A(eA,[2,118]),A(eA,[2,119]),A(S,[2,106]),A(Y,[2,71]),A(S,[2,73],{61:IA}),{60:[1,155]},A(J,[2,14]),{39:[2,37]},{13:[1,156]},{15:157,16:85,17:86,60:C,86:D,100:w,102:b,103:F},A(BA,[2,12]),A(bA,[2,56]),{1:[2,4]},A(FA,[2,69]),A(FA,[2,68]),{16:39,17:40,19:158,60:C,86:D,100:w,102:b,103:F},A(O,[2,80]),A(Y,[2,34]),{41:[1,159]},{23:99,24:97,30:98,38:22,40:160,41:[2,39],42:i,43:23,48:a,54:s,56:l},{23:99,24:97,30:98,38:22,40:161,41:[2,42],42:i,43:23,48:a,54:s,56:l},{23:99,24:97,30:98,38:22,40:162,41:[2,45],42:i,43:23,48:a,54:s,56:l},{45:163,51:j},A(Y,[2,49]),{41:[2,62]},A(Y,[2,52],{39:[1,164]}),A(S,[2,60]),A(S,[2,92]),A(S,[2,94]),A(S,[2,95],{77:[1,165]}),A(S,[2,98]),A(S,[2,99],{13:[1,166]}),A(S,[2,101],{13:[1,168],77:[1,167]}),{22:q,50:CA,60:tA,82:lA,84:169,85:112,86:gA,87:aA,88:RA,89:wA,90:JA},A(eA,[2,110]),A(TA,[2,75]),{14:[1,170]},A(BA,[2,11]),A(FA,[2,70]),A(Y,[2,35]),{41:[2,40]},{41:[2,43]},{41:[2,46]},{41:[1,171]},{41:[1,173],45:172,51:j},A(S,[2,96]),A(S,[2,100]),A(S,[2,102]),A(S,[2,103],{77:[1,174]}),A(nA,[2,108],{85:154,22:q,50:CA,60:tA,82:lA,86:gA,87:aA,88:RA,89:wA,90:JA}),A(bA,[2,8]),A(Y,[2,51]),{41:[1,175]},A(Y,[2,54]),A(S,[2,104]),A(Y,[2,53])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],127:[2,37],132:[2,4],144:[2,62],160:[2,40],161:[2,43],162:[2,46]},parseError:y(function(YA,dA){if(dA.recoverable)this.trace(YA);else{var W=Error(YA);throw W.hash=dA,W}},"parseError"),parse:y(function(YA){var dA=this,W=[0],Z=[],pA=[null],AA=[],DA=this.table,rA="",KA=0,_A=0,zA=0,WA=2,te=1,ZA=AA.slice.call(arguments,1),ee=Object.create(this.lexer),$A={yy:{}};for(var oe in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,oe))$A.yy[oe]=this.yy[oe];if(ee.setInput(YA,$A.yy),$A.yy.lexer=ee,$A.yy.parser=this,typeof ee.yylloc>"u")ee.yylloc={};var vA=ee.yylloc;AA.push(vA);var Pe=ee.options&&ee.options.ranges;if(typeof $A.yy.parseError==="function")this.parseError=$A.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function MA(Le){W.length=W.length-2*Le,pA.length=pA.length-Le,AA.length=AA.length-Le}y(MA,"popStack");function ke(){var Le=Z.pop()||ee.lex()||te;if(typeof Le!=="number"){if(Le instanceof Array)Z=Le,Le=Z.pop();Le=dA.symbols_[Le]||Le}return Le}y(ke,"lex");var We,se,Te,je,xe,yA,Ne={},He,de,NA,ce;while(!0){if(Te=W[W.length-1],this.defaultActions[Te])je=this.defaultActions[Te];else{if(We===null||typeof We>"u")We=ke();je=DA[Te]&&DA[Te][We]}if(typeof je>"u"||!je.length||!je[0]){var me="";ce=[];for(He in DA[Te])if(this.terminals_[He]&&He>WA)ce.push("'"+this.terminals_[He]+"'");if(ee.showPosition)me="Parse error on line "+(KA+1)+`:
|
||
`+ee.showPosition()+`
|
||
Expecting `+ce.join(", ")+", got '"+(this.terminals_[We]||We)+"'";else me="Parse error on line "+(KA+1)+": Unexpected "+(We==te?"end of input":"'"+(this.terminals_[We]||We)+"'");this.parseError(me,{text:ee.match,token:this.terminals_[We]||We,line:ee.yylineno,loc:vA,expected:ce})}if(je[0]instanceof Array&&je.length>1)throw Error("Parse Error: multiple actions possible at state: "+Te+", token: "+We);switch(je[0]){case 1:if(W.push(We),pA.push(ee.yytext),AA.push(ee.yylloc),W.push(je[1]),We=null,!se){if(_A=ee.yyleng,rA=ee.yytext,KA=ee.yylineno,vA=ee.yylloc,zA>0)zA--}else We=se,se=null;break;case 2:if(de=this.productions_[je[1]][1],Ne.$=pA[pA.length-de],Ne._$={first_line:AA[AA.length-(de||1)].first_line,last_line:AA[AA.length-1].last_line,first_column:AA[AA.length-(de||1)].first_column,last_column:AA[AA.length-1].last_column},Pe)Ne._$.range=[AA[AA.length-(de||1)].range[0],AA[AA.length-1].range[1]];if(yA=this.performAction.apply(Ne,[rA,_A,KA,$A.yy,je[1],pA,AA].concat(ZA)),typeof yA<"u")return yA;if(de)W=W.slice(0,-1*de*2),pA=pA.slice(0,-1*de),AA=AA.slice(0,-1*de);W.push(this.productions_[je[1]][0]),pA.push(Ne.$),AA.push(Ne._$),NA=DA[W[W.length-2]][W[W.length-1]],W.push(NA);break;case 3:return!0}}return!0},"parse")},mA=function(){var SA={EOF:1,parseError:y(function(dA,W){if(this.yy.parser)this.yy.parser.parseError(dA,W);else throw Error(dA)},"parseError"),setInput:y(function(YA,dA){if(this.yy=dA||this.yy||{},this._input=YA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var YA=this._input[0];this.yytext+=YA,this.yyleng++,this.offset++,this.match+=YA,this.matched+=YA;var dA=YA.match(/(?:\r\n?|\n).*/g);if(dA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),YA},"input"),unput:y(function(YA){var dA=YA.length,W=YA.split(/(?:\r\n?|\n)/g);this._input=YA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-dA),this.offset-=dA;var Z=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),W.length-1)this.yylineno-=W.length-1;var pA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:W?(W.length===Z.length?this.yylloc.first_column:0)+Z[Z.length-W.length].length-W[0].length:this.yylloc.first_column-dA},this.options.ranges)this.yylloc.range=[pA[0],pA[0]+this.yyleng-dA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(YA){this.unput(this.match.slice(YA))},"less"),pastInput:y(function(){var YA=this.matched.substr(0,this.matched.length-this.match.length);return(YA.length>20?"...":"")+YA.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var YA=this.match;if(YA.length<20)YA+=this._input.substr(0,20-YA.length);return(YA.substr(0,20)+(YA.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var YA=this.pastInput(),dA=Array(YA.length+1).join("-");return YA+this.upcomingInput()+`
|
||
`+dA+"^"},"showPosition"),test_match:y(function(YA,dA){var W,Z,pA;if(this.options.backtrack_lexer){if(pA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)pA.yylloc.range=this.yylloc.range.slice(0)}if(Z=YA[0].match(/(?:\r\n?|\n).*/g),Z)this.yylineno+=Z.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Z?Z[Z.length-1].length-Z[Z.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+YA[0].length},this.yytext+=YA[0],this.match+=YA[0],this.matches=YA,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(YA[0].length),this.matched+=YA[0],W=this.performAction.call(this,this.yy,this,dA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(W)return W;else if(this._backtrack){for(var AA in pA)this[AA]=pA[AA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var YA,dA,W,Z;if(!this._more)this.yytext="",this.match="";var pA=this._currentRules();for(var AA=0;AA<pA.length;AA++)if(W=this._input.match(this.rules[pA[AA]]),W&&(!dA||W[0].length>dA[0].length)){if(dA=W,Z=AA,this.options.backtrack_lexer)if(YA=this.test_match(W,pA[AA]),YA!==!1)return YA;else if(this._backtrack){dA=!1;continue}else return!1;else if(!this.options.flex)break}if(dA){if(YA=this.test_match(dA,pA[Z]),YA!==!1)return YA;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var dA=this.next();if(dA)return dA;else return this.lex()},"lex"),begin:y(function(dA){this.conditionStack.push(dA)},"begin"),popState:y(function(){var dA=this.conditionStack.length-1;if(dA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(dA){if(dA=this.conditionStack.length-1-Math.abs(dA||0),dA>=0)return this.conditionStack[dA];else return"INITIAL"},"topState"),pushState:y(function(dA){this.begin(dA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(dA,W,Z,pA){var AA=pA;switch(Z){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:this.popState(),this.less(0);break;case 34:return this.popState(),41;break;case 35:return"EOF_IN_STRUCT";case 36:return 8;case 37:break;case 38:return"EDGE_STATE";case 39:return this.begin("class"),48;break;case 40:return this.popState(),8;break;case 41:break;case 42:return this.popState(),this.popState(),41;break;case 43:return this.begin("class-body"),39;break;case 44:return this.popState(),41;break;case 45:return"EOF_IN_STRUCT";case 46:return"EDGE_STATE";case 47:return"OPEN_IN_STRUCT";case 48:break;case 49:return"MEMBER";case 50:return 83;case 51:return 75;case 52:return 76;case 53:return 78;case 54:return 54;case 55:return 56;case 56:return 46;case 57:return 47;case 58:return 81;case 59:this.popState();break;case 60:return"GENERICTYPE";case 61:this.begin("generic");break;case 62:this.popState();break;case 63:return"BQUOTE_STR";case 64:this.begin("bqstring");break;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 77;case 69:return 69;case 70:return 69;case 71:return 71;case 72:return 71;case 73:return 70;case 74:return 68;case 75:return 72;case 76:return 73;case 77:return 74;case 78:return 22;case 79:return 44;case 80:return 100;case 81:return 18;case 82:return"PLUS";case 83:return 87;case 84:return 61;case 85:return 89;case 86:return 89;case 87:return 90;case 88:return"EQUALS";case 89:return"EQUALS";case 90:return 60;case 91:return 12;case 92:return 14;case 93:return"PUNCTUATION";case 94:return 86;case 95:return 102;case 96:return 50;case 97:return 50;case 98:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,29,34,35,36,37,38,39,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},namespace:{rules:[26,29,30,31,32,33,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},"class-body":{rules:[26,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},class:{rules:[26,40,41,42,43,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_descr:{rules:[9,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_title:{rules:[7,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},callback_args:{rules:[22,23,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},callback_name:{rules:[19,20,21,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},href:{rules:[26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},struct:{rules:[26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},generic:{rules:[26,50,51,52,53,54,55,56,57,58,59,60,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},bqstring:{rules:[26,50,51,52,53,54,55,56,57,58,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},string:{rules:[24,25,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,39,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98],inclusive:!0}}};return SA}();EA.lexer=mA;function kA(){this.yy={}}return y(kA,"Parser"),kA.prototype=EA,EA.Parser=kA,new kA}();bCA.parser=bCA;RO=bCA,$ie=["#","+","~","-",""],Aue=class{static{y(this,"ClassMember")}constructor(A,e){this.memberType=e,this.visibility="",this.classifier="",this.text="";let t=or(A,OA());this.parseMember(t)}getDisplayDetails(){let A=this.visibility+tE(this.id);if(this.memberType==="method"){if(A+=`(${tE(this.parameters.trim())})`,this.returnType)A+=" : "+tE(this.returnType)}A=A.trim();let e=this.parseClassifier();return{displayText:A,cssStyle:e}}parseMember(A){let e="";if(this.memberType==="method"){let i=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(A);if(i){let u=i[1]?i[1].trim():"";if($ie.includes(u))this.visibility=u;if(this.id=i[2],this.parameters=i[3]?i[3].trim():"",e=i[4]?i[4].trim():"",this.returnType=i[5]?i[5].trim():"",e===""){let a=this.returnType.substring(this.returnType.length-1);if(/[$*]/.exec(a))e=a,this.returnType=this.returnType.substring(0,this.returnType.length-1)}}}else{let r=A.length,i=A.substring(0,1),u=A.substring(r-1);if($ie.includes(i))this.visibility=i;if(/[$*]/.exec(u))e=u;this.id=A.substring(this.visibility===""?0:1,e===""?r:r-1)}this.classifier=e,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let t=`${this.visibility?"\\"+this.visibility:""}${tE(this.id)}${this.memberType==="method"?`(${tE(this.parameters)})${this.returnType?" : "+tE(this.returnType):""}`:""}`;if(this.text=t.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<"))this.text=this.text.replace("\\<","~")}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},wm=y((A)=>_e.sanitizeText(A,OA()),"sanitizeText"),NO=class A{constructor(){this.relations=[],this.classes=new Map,this.styleClasses=new Map,this.notes=new Map,this.interfaces=[],this.namespaces=new Map,this.namespaceCounter=0,this.namespaceStack=[],this.diagramId="",this.functions=[],this.lineType={LINE:0,DOTTED_LINE:1},this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},this.setupToolTips=y((e)=>{let t=kw();Qe(e).select("svg").selectAll("g").filter(function(){return Qe(this).attr("title")!==null}).on("mouseover",(u)=>{let a=Qe(u.currentTarget),n=a.attr("title");if(!n)return;let o=u.currentTarget.getBoundingClientRect();t.transition().duration(200).style("opacity",".9"),t.html(Al.sanitize(n)).style("left",`${window.scrollX+o.left+o.width/2}px`).style("top",`${window.scrollY+o.bottom+4}px`),a.classed("hover",!0)}).on("mouseout",(u)=>{t.transition().duration(500).style("opacity",0),Qe(u.currentTarget).classed("hover",!1)})},"setupToolTips"),this.direction="TB",this.setAccTitle=Dr,this.getAccTitle=vr,this.setAccDescription=kr,this.getAccDescription=Fr,this.setDiagramTitle=Mr,this.getDiagramTitle=xr,this.getConfig=y(()=>OA().class,"getConfig"),this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.popNamespace=this.popNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{y(this,"ClassDB")}splitClassNameAndType(e){let t=_e.sanitizeText(e,OA()),r="",i=t;if(t.indexOf("~")>0){let u=t.split("~");i=wm(u[0]),r=wm(u[1])}return{className:i,type:r}}setClassLabel(e,t){let r=_e.sanitizeText(e,OA());if(t)t=wm(t);let{className:i}=this.splitClassNameAndType(r);this.classes.get(i).label=t,this.classes.get(i).text=`${t}${this.classes.get(i).type?`<${this.classes.get(i).type}>`:""}`}addClass(e){let t=_e.sanitizeText(e,OA()),{className:r,type:i}=this.splitClassNameAndType(t);if(this.classes.has(r))return;let u=_e.sanitizeText(r,OA());this.classes.set(u,{id:u,type:i,label:u,text:`${u}${i?`<${i}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:LO+u+"-"+eue}),eue++}addInterface(e,t){let r={id:`interface${this.interfaces.length}`,label:e,classId:t};this.interfaces.push(r)}setDiagramId(e){this.diagramId=e}lookUpDomId(e){let t=_e.sanitizeText(e,OA());if(this.classes.has(t)){let r=this.classes.get(t).domId;return this.diagramId?`${this.diagramId}-${r}`:r}throw Error("Class not found: "+t)}clear(){this.relations=[],this.classes=new Map,this.notes=new Map,this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.namespaceStack=[],this.diagramId="",this.direction="TB",sr()}getClass(e){return this.classes.get(e)}getClasses(){return this.classes}getRelations(){return this.relations}getNote(e){let t=typeof e==="number"?`note${e}`:e;return this.notes.get(t)}getNotes(){return this.notes}addRelation(e){sA.debug("Adding relation: "+JSON.stringify(e));let t=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];if(e.relation.type1===this.relationType.LOLLIPOP&&!t.includes(e.relation.type2))this.addClass(e.id2),this.addInterface(e.id1,e.id2),e.id1=`interface${this.interfaces.length-1}`;else if(e.relation.type2===this.relationType.LOLLIPOP&&!t.includes(e.relation.type1))this.addClass(e.id1),this.addInterface(e.id2,e.id1),e.id2=`interface${this.interfaces.length-1}`;else this.addClass(e.id1),this.addClass(e.id2);e.id1=this.splitClassNameAndType(e.id1).className,e.id2=this.splitClassNameAndType(e.id2).className,e.relationTitle1=_e.sanitizeText(e.relationTitle1.trim(),OA()),e.relationTitle2=_e.sanitizeText(e.relationTitle2.trim(),OA()),this.relations.push(e)}addAnnotation(e,t){let r=this.splitClassNameAndType(e).className;this.classes.get(r).annotations.push(t)}addMember(e,t){this.addClass(e);let r=this.splitClassNameAndType(e).className,i=this.classes.get(r);if(typeof t==="string"){let u=t.trim();if(u.startsWith("<<")&&u.endsWith(">>"))i.annotations.push(wm(u.substring(2,u.length-2)));else if(u.indexOf(")")>0)i.methods.push(new Aue(u,"method"));else if(u)i.members.push(new Aue(u,"attribute"))}}addMembers(e,t){if(Array.isArray(t))t.reverse(),t.forEach((r)=>this.addMember(e,r))}addNote(e,t){let r=this.notes.size,i={id:`note${r}`,class:t,text:e,index:r};return this.notes.set(i.id,i),i.id}cleanupLabel(e){if(e.startsWith(":"))e=e.substring(1);return wm(e.trim())}setCssClass(e,t){e.split(",").forEach((r)=>{let i=r;if(/\d/.exec(r[0]))i=LO+i;i=this.splitClassNameAndType(i).className;let u=this.classes.get(i);if(u)u.cssClasses+=" "+t})}defineClass(e,t){for(let r of e){let i=this.styleClasses.get(r);if(i===void 0)i={id:r,styles:[],textStyles:[]},this.styleClasses.set(r,i);if(t)t.forEach((u)=>{if(/color/.exec(u)){let a=u.replace("fill","bgFill");i.textStyles.push(a)}i.styles.push(u)});this.classes.forEach((u)=>{if(u.cssClasses.includes(r))u.styles.push(...t.flatMap((a)=>a.split(",")))})}}setTooltip(e,t){e.split(",").forEach((r)=>{if(t!==void 0){let i=this.splitClassNameAndType(r).className,u=this.classes.get(i);if(u)u.tooltip=wm(t)}})}getTooltip(e,t){if(t&&this.namespaces.has(t))return this.namespaces.get(t).classes.get(e).tooltip;return this.classes.get(e).tooltip}setLink(e,t,r){let i=OA();e.split(",").forEach((u)=>{let a=u;if(/\d/.exec(u[0]))a=LO+a;a=this.splitClassNameAndType(a).className;let n=this.classes.get(a);if(n)if(n.link=Jt.formatUrl(t,i),i.securityLevel==="sandbox")n.linkTarget="_top";else if(typeof r==="string")n.linkTarget=wm(r);else n.linkTarget="_blank"}),this.setCssClass(e,"clickable")}setClickEvent(e,t,r){e.split(",").forEach((i)=>{this.setClickFunc(i,t,r);let u=this.splitClassNameAndType(i).className,a=this.classes.get(u);if(a)a.haveCallback=!0}),this.setCssClass(e,"clickable")}setClickFunc(e,t,r){let i=_e.sanitizeText(e,OA());if(OA().securityLevel!=="loose")return;if(t===void 0)return;let a=this.splitClassNameAndType(i).className;if(this.classes.has(a)){let n=[];if(typeof r==="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let o=0;o<n.length;o++){let s=n[o].trim();if(s.startsWith('"')&&s.endsWith('"'))s=s.substr(1,s.length-2);n[o]=s}}if(n.length===0)n.push(a);this.functions.push(()=>{let o=this.lookUpDomId(a),s=document.querySelector(`[id="${o}"]`);if(s!==null)s.addEventListener("click",()=>{Jt.runFunc(t,...n)},!1)})}}bindFunctions(e){this.functions.forEach((t)=>{t(e)})}escapeHtml(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}getDirection(){return this.direction}setDirection(e){this.direction=e}static resolveQualifiedId(e,t){let r=t.at(-1);return r?`${r}.${e}`:e}static getAncestorIds(e){let t=e.split("."),r=Array(t.length);r[0]=t[0];for(let i=1;i<t.length;i++)r[i]=`${r[i-1]}.${t[i]}`;return r}createNamespaceNode(e,t,r,i=!1){return{id:e,label:t,classes:new Map,notes:new Map,children:new Map,domId:LO+e+"-"+this.namespaceCounter++,parent:r,explicit:i}}linkParentChild(e,t){let r=this.namespaces.get(e),i=this.namespaces.get(t);if(!r||!i)return;if(!r.children.has(t))r.children.set(t,i);i.parent??=e}addNamespace(e,t){let r=A.resolveQualifiedId(e,this.namespaceStack);if(this.namespaceStack.push(r),this.namespaces.has(r)){let a=this.namespaces.get(r);if(a.explicit=!0,t)a.label=t;return r}let i=r.split("."),u=A.getAncestorIds(r);for(let a=0;a<u.length;a++){let n=u[a],o=a>0?u[a-1]:void 0,s=a===u.length-1,l=s&&t?t:i[a];if(!this.namespaces.has(n))this.namespaces.set(n,this.createNamespaceNode(n,l,o,s));else if(s)this.namespaces.get(n).explicit=!0;if(o)this.linkParentChild(o,n)}return r}popNamespace(){this.namespaceStack.pop()}getNamespace(e){return this.namespaces.get(e)}getNamespaces(){return this.namespaces}addClassesToNamespace(e,t,r){if(!this.namespaces.has(e))return;for(let i of t){let{className:u}=this.splitClassNameAndType(i),a=this.getClass(u);a.parent=e,this.namespaces.get(e).classes.set(u,a)}for(let i of r){let u=this.getNote(i);u.parent=e,this.namespaces.get(e).notes.set(i,u)}}setCssStyle(e,t){let r=this.classes.get(e);if(!t||!r)return;for(let i of t)if(i.includes(","))r.styles.push(...i.split(","));else r.styles.push(i)}getArrowMarker(e){let t;switch(e){case 0:t="aggregation";break;case 1:t="extension";break;case 2:t="composition";break;case 3:t="dependency";break;case 4:t="lollipop";break;default:t="none"}return t}resolveExplicitAncestor(e){let t=e;while(t){let r=this.namespaces.get(t);if(!r)return;if(r.explicit)return t;t=r.parent}return}getData(){let e=[],t=[],r=OA(),i=r.class?.hierarchicalNamespaces??!0;for(let a of this.namespaces.values()){if(!i&&!a.explicit)continue;let n={id:a.id,label:i?a.label:a.id,isGroup:!0,padding:r.class.padding??16,shape:"rect",cssStyles:[],look:r.look,parentId:i?a.parent:void 0};e.push(n)}for(let a of this.classes.values()){let n=i?a.parent:this.resolveExplicitAncestor(a.parent),o={...a,type:void 0,isGroup:!1,parentId:n,look:r.look};e.push(o)}for(let a of this.notes.values()){let n=i?a.parent:this.resolveExplicitAncestor(a.parent),o={id:a.id,label:a.text,isGroup:!1,shape:"note",padding:r.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${r.themeVariables.noteBkgColor}`,`stroke: ${r.themeVariables.noteBorderColor}`],look:r.look,parentId:n,labelType:"markdown"};e.push(o);let s=this.classes.get(a.class)?.id;if(s){let l={id:`edgeNote${a.index}`,start:a.id,end:s,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:r.look};t.push(l)}}for(let a of this.interfaces){let n={id:a.id,label:a.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:r.look};e.push(n)}let u=0;for(let a of this.relations){u++;let n={id:CE(a.id1,a.id2,{prefix:"id",counter:u}),start:a.id1,end:a.id2,type:"normal",label:a.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(a.relation.type1),arrowTypeEnd:this.getArrowMarker(a.relation.type2),startLabelRight:a.relationTitle1==="none"?"":a.relationTitle1,endLabelLeft:a.relationTitle2==="none"?"":a.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:a.style||"",pattern:a.relation.lineType==1?"dashed":"solid",look:r.look,labelType:"markdown"};t.push(n)}return{nodes:e,edges:t,other:{},config:r,direction:this.getDirection()}}},QNt=y((A)=>`g.classGroup text {
|
||
fill: ${A.nodeBorder||A.classText};
|
||
stroke: none;
|
||
font-family: ${A.fontFamily};
|
||
font-size: 10px;
|
||
|
||
.title {
|
||
font-weight: bolder;
|
||
}
|
||
|
||
}
|
||
|
||
.cluster-label text {
|
||
fill: ${A.titleColor};
|
||
}
|
||
.cluster-label span {
|
||
color: ${A.titleColor};
|
||
}
|
||
.cluster-label span p {
|
||
background-color: transparent;
|
||
}
|
||
|
||
.cluster rect {
|
||
fill: ${A.clusterBkg};
|
||
stroke: ${A.clusterBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.cluster text {
|
||
fill: ${A.titleColor};
|
||
}
|
||
|
||
.cluster span {
|
||
color: ${A.titleColor};
|
||
}
|
||
|
||
.nodeLabel, .edgeLabel {
|
||
color: ${A.classText};
|
||
}
|
||
|
||
.noteLabel .nodeLabel, .noteLabel .edgeLabel {
|
||
color: ${A.noteTextColor};
|
||
}
|
||
.edgeLabel .label rect {
|
||
fill: ${A.mainBkg};
|
||
}
|
||
.label text {
|
||
fill: ${A.classText};
|
||
}
|
||
|
||
.labelBkg {
|
||
background: ${A.mainBkg};
|
||
}
|
||
.edgeLabel .label span {
|
||
background: ${A.mainBkg};
|
||
}
|
||
|
||
.classTitle {
|
||
font-weight: bolder;
|
||
}
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: ${A.strokeWidth};
|
||
}
|
||
|
||
|
||
.divider {
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: 1;
|
||
}
|
||
|
||
g.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
g.classGroup rect {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.nodeBorder};
|
||
}
|
||
|
||
g.classGroup line {
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: 1;
|
||
}
|
||
|
||
.classLabel .box {
|
||
stroke: none;
|
||
stroke-width: 0;
|
||
fill: ${A.mainBkg};
|
||
opacity: 0.5;
|
||
}
|
||
|
||
.classLabel .label {
|
||
fill: ${A.nodeBorder};
|
||
font-size: 10px;
|
||
}
|
||
|
||
.relation {
|
||
stroke: ${A.lineColor};
|
||
stroke-width: ${A.strokeWidth};
|
||
fill: none;
|
||
}
|
||
|
||
.dashed-line{
|
||
stroke-dasharray: 3;
|
||
}
|
||
|
||
.dotted-line{
|
||
stroke-dasharray: 1 2;
|
||
}
|
||
|
||
[id$="-compositionStart"], .composition {
|
||
fill: ${A.lineColor} !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-compositionEnd"], .composition {
|
||
fill: ${A.lineColor} !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-dependencyStart"], .dependency {
|
||
fill: ${A.lineColor} !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-dependencyEnd"], .dependency {
|
||
fill: ${A.lineColor} !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-extensionStart"], .extension {
|
||
fill: transparent !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-extensionEnd"], .extension {
|
||
fill: transparent !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-aggregationStart"], .aggregation {
|
||
fill: transparent !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-aggregationEnd"], .aggregation {
|
||
fill: transparent !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-lollipopStart"], .lollipop {
|
||
fill: ${A.mainBkg} !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
[id$="-lollipopEnd"], .lollipop {
|
||
fill: ${A.mainBkg} !important;
|
||
stroke: ${A.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
.edgeTerminals {
|
||
font-size: 11px;
|
||
line-height: initial;
|
||
}
|
||
|
||
.classTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${A.textColor};
|
||
}
|
||
|
||
.edgeLabel[data-look="neo"] {
|
||
background-color: ${A.edgeLabelBackground};
|
||
p {
|
||
background-color: ${A.edgeLabelBackground};
|
||
}
|
||
rect {
|
||
opacity: 0.5;
|
||
background-color: ${A.edgeLabelBackground};
|
||
fill: ${A.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
${HE()}
|
||
`,"getStyles"),GO=QNt,pNt=y((A,e="TB")=>{if(!A.doc)return e;let t=e;for(let r of A.doc)if(r.stmt==="dir")t=r.value;return t},"getDir"),fNt=y(function(A,e){return e.db.getClasses()},"getClasses"),mNt=y(async function(A,e,t,r){sA.info("REF0:"),sA.info("Drawing class diagram (v3)",e);let{securityLevel:i,state:u,layout:a}=OA();r.db.setDiagramId(e);let n=r.db.getData(),o=Ic(e,i);n.type=r.type,n.layoutAlgorithm=ME(a),n.nodeSpacing=u?.nodeSpacing||50,n.rankSpacing=u?.rankSpacing||50,n.markers=["aggregation","extension","composition","dependency","lollipop"],n.diagramId=e,await cc(n,o);let s=8;Jt.insertTitle(o,"classDiagramTitleText",u?.titleTopMargin??25,r.db.getDiagramTitle()),pl(o,s,"classDiagram",u?.useMaxWidth??!0)},"draw"),UO={getClasses:fNt,draw:mNt,getDir:pNt}});var tue;var rue=P(()=>{vCA();KE();Eg();fl();hl();Bg();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();tue={parser:RO,get db(){return new NO},renderer:UO,styles:GO,init:y((A)=>{if(!A.class)A.class={};A.class.arrowMarkerAbsolute=A.arrowMarkerAbsolute},"init")}});var iue;var uue=P(()=>{vCA();KE();Eg();fl();hl();Bg();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();iue={parser:RO,get db(){return new NO},renderer:UO,styles:GO,init:y((A)=>{if(!A.class)A.class={};A.class.arrowMarkerAbsolute=A.arrowMarkerAbsolute},"init")}});function YO(A="",e=0,t="",r=LCA){let i=t!==null&&t.length>0?`${r}${t}`:"";return`${KNt}-${A}${i}-${e}`}function c7(A,e,t){if(!e.id||e.id==="</join></fork>"||e.id==="</choice>")return;if(e.cssClasses){if(!Array.isArray(e.cssCompiledStyles))e.cssCompiledStyles=[];e.cssClasses.split(" ").forEach((i)=>{let u=t.get(i);if(u)e.cssCompiledStyles=[...e.cssCompiledStyles??[],...u.styles]})}let r=A.find((i)=>i.id===e.id);if(r)Object.assign(r,e);else A.push(e)}function wue(A){return A?.classes?.join(" ")??""}function bue(A){return A?.styles??[]}var xCA,HO,DNt="TB",Cue="TB",aue="dir",x6="state",F6="root",SCA="relation",yNt="classDef",wNt="style",bNt="applyClass",B7="default",Bue="divider",Eue="fill:none",due="fill: #333",Iue="c",hue="markdown",Que="normal",kCA="rect",FCA="rectWithTitle",vNt="stateStart",kNt="stateEnd",nue="divider",oue="roundedWithTitle",FNt="note",xNt="noteGroup",E7="statediagram",SNt="state",LNt,pue="transition",RNt="note",NNt="note-edge",GNt,UNt,MNt="cluster",TNt,YNt="cluster-alt",HNt,fue="parent",mue="note",KNt="state",LCA="----",JNt,sue,Due,ONt,PNt,yue,TO,I1=0,_Nt,lue,C7,WNt,Us,gue,cue,MO,fh,qNt,KO;var RCA=P(()=>{Eg();fl();hl();Bg();ai();rr();ir();Nt();Pr();cD();xCA=function(){var A=y(function(Y,H,J,K){for(J=J||{},K=Y.length;K--;J[Y[K]]=H);return J},"o"),e=[1,2],t=[1,3],r=[1,4],i=[2,4],u=[1,9],a=[1,11],n=[1,16],o=[1,17],s=[1,18],l=[1,19],g=[1,33],C=[1,20],B=[1,21],E=[1,22],d=[1,23],I=[1,24],h=[1,26],Q=[1,27],p=[1,28],m=[1,29],f=[1,30],D=[1,31],w=[1,32],b=[1,35],F=[1,36],v=[1,37],S=[1,38],x=[1,34],k=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],T=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],R=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],L={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:y(function(H,J,K,O,_,z,j){var q=z.length-1;switch(_){case 3:return O.setRootDoc(z[q]),z[q];break;case 4:this.$=[];break;case 5:if(z[q]!="nl")z[q-1].push(z[q]),this.$=z[q-1];break;case 6:case 7:this.$=z[q];break;case 8:this.$="nl";break;case 12:this.$=z[q];break;case 13:let gA=z[q-1];gA.description=O.trimColon(z[q]),this.$=gA;break;case 14:this.$={stmt:"relation",state1:z[q-2],state2:z[q]};break;case 15:let aA=O.trimColon(z[q]);this.$={stmt:"relation",state1:z[q-3],state2:z[q-1],description:aA};break;case 19:this.$={stmt:"state",id:z[q-3],type:"default",description:"",doc:z[q-1]};break;case 20:var CA=z[q],tA=z[q-2].trim();if(z[q].match(":")){var lA=z[q].split(":");CA=lA[0],tA=[tA,lA[1]]}this.$={stmt:"state",id:CA,type:"default",description:tA};break;case 21:this.$={stmt:"state",id:z[q-3],type:"default",description:z[q-5],doc:z[q-1]};break;case 22:this.$={stmt:"state",id:z[q],type:"fork"};break;case 23:this.$={stmt:"state",id:z[q],type:"join"};break;case 24:this.$={stmt:"state",id:z[q],type:"choice"};break;case 25:this.$={stmt:"state",id:O.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:z[q-1].trim(),note:{position:z[q-2].trim(),text:z[q].trim()}};break;case 29:this.$=z[q].trim(),O.setAccTitle(this.$);break;case 30:case 31:this.$=z[q].trim(),O.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:z[q-3],url:z[q-2],tooltip:z[q-1]};break;case 33:this.$={stmt:"click",id:z[q-3],url:z[q-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:z[q-1].trim(),classes:z[q].trim()};break;case 36:this.$={stmt:"style",id:z[q-1].trim(),styleClass:z[q].trim()};break;case 37:this.$={stmt:"applyClass",id:z[q-1].trim(),styleClass:z[q].trim()};break;case 38:O.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:O.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:O.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:O.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:z[q].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:z[q-2].trim(),classes:[z[q].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:z[q-2].trim(),classes:[z[q].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:t,6:r},{1:[3]},{3:5,4:e,5:t,6:r},{3:6,4:e,5:t,6:r},A([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:u,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:n,17:o,19:s,22:l,24:g,25:C,26:B,27:E,28:d,29:I,32:25,33:h,35:Q,37:p,38:m,41:f,45:D,48:w,51:b,52:F,53:v,54:S,57:x},A(k,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:n,17:o,19:s,22:l,24:g,25:C,26:B,27:E,28:d,29:I,32:25,33:h,35:Q,37:p,38:m,41:f,45:D,48:w,51:b,52:F,53:v,54:S,57:x},A(k,[2,7]),A(k,[2,8]),A(k,[2,9]),A(k,[2,10]),A(k,[2,11]),A(k,[2,12],{14:[1,40],15:[1,41]}),A(k,[2,16]),{18:[1,42]},A(k,[2,18],{20:[1,43]}),{23:[1,44]},A(k,[2,22]),A(k,[2,23]),A(k,[2,24]),A(k,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},A(k,[2,28]),{34:[1,49]},{36:[1,50]},A(k,[2,31]),{13:51,24:g,57:x},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},A(T,[2,44],{58:[1,56]}),A(T,[2,45],{58:[1,57]}),A(k,[2,38]),A(k,[2,39]),A(k,[2,40]),A(k,[2,41]),A(k,[2,6]),A(k,[2,13]),{13:58,24:g,57:x},A(k,[2,17]),A(R,i,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},A(k,[2,29]),A(k,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},A(k,[2,14],{14:[1,71]}),{4:u,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:n,17:o,19:s,21:[1,72],22:l,24:g,25:C,26:B,27:E,28:d,29:I,32:25,33:h,35:Q,37:p,38:m,41:f,45:D,48:w,51:b,52:F,53:v,54:S,57:x},A(k,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},A(k,[2,34]),A(k,[2,35]),A(k,[2,36]),A(k,[2,37]),A(T,[2,46]),A(T,[2,47]),A(k,[2,15]),A(k,[2,19]),A(R,i,{7:78}),A(k,[2,26]),A(k,[2,27]),{5:[1,79]},{5:[1,80]},{4:u,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:n,17:o,19:s,21:[1,81],22:l,24:g,25:C,26:B,27:E,28:d,29:I,32:25,33:h,35:Q,37:p,38:m,41:f,45:D,48:w,51:b,52:F,53:v,54:S,57:x},A(k,[2,32]),A(k,[2,33]),A(k,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:y(function(H,J){if(J.recoverable)this.trace(H);else{var K=Error(H);throw K.hash=J,K}},"parseError"),parse:y(function(H){var J=this,K=[0],O=[],_=[null],z=[],j=this.table,q="",CA=0,tA=0,lA=0,gA=2,aA=1,RA=z.slice.call(arguments,1),wA=Object.create(this.lexer),JA={yy:{}};for(var TA in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,TA))JA.yy[TA]=this.yy[TA];if(wA.setInput(H,JA.yy),JA.yy.lexer=wA,JA.yy.parser=this,typeof wA.yylloc>"u")wA.yylloc={};var qA=wA.yylloc;z.push(qA);var BA=wA.options&&wA.options.ranges;if(typeof JA.yy.parseError==="function")this.parseError=JA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function bA(AA){K.length=K.length-2*AA,_.length=_.length-AA,z.length=z.length-AA}y(bA,"popStack");function FA(){var AA=O.pop()||wA.lex()||aA;if(typeof AA!=="number"){if(AA instanceof Array)O=AA,AA=O.pop();AA=J.symbols_[AA]||AA}return AA}y(FA,"lex");var IA,nA,eA,EA,mA,kA,SA={},YA,dA,W,Z;while(!0){if(eA=K[K.length-1],this.defaultActions[eA])EA=this.defaultActions[eA];else{if(IA===null||typeof IA>"u")IA=FA();EA=j[eA]&&j[eA][IA]}if(typeof EA>"u"||!EA.length||!EA[0]){var pA="";Z=[];for(YA in j[eA])if(this.terminals_[YA]&&YA>gA)Z.push("'"+this.terminals_[YA]+"'");if(wA.showPosition)pA="Parse error on line "+(CA+1)+`:
|
||
`+wA.showPosition()+`
|
||
Expecting `+Z.join(", ")+", got '"+(this.terminals_[IA]||IA)+"'";else pA="Parse error on line "+(CA+1)+": Unexpected "+(IA==aA?"end of input":"'"+(this.terminals_[IA]||IA)+"'");this.parseError(pA,{text:wA.match,token:this.terminals_[IA]||IA,line:wA.yylineno,loc:qA,expected:Z})}if(EA[0]instanceof Array&&EA.length>1)throw Error("Parse Error: multiple actions possible at state: "+eA+", token: "+IA);switch(EA[0]){case 1:if(K.push(IA),_.push(wA.yytext),z.push(wA.yylloc),K.push(EA[1]),IA=null,!nA){if(tA=wA.yyleng,q=wA.yytext,CA=wA.yylineno,qA=wA.yylloc,lA>0)lA--}else IA=nA,nA=null;break;case 2:if(dA=this.productions_[EA[1]][1],SA.$=_[_.length-dA],SA._$={first_line:z[z.length-(dA||1)].first_line,last_line:z[z.length-1].last_line,first_column:z[z.length-(dA||1)].first_column,last_column:z[z.length-1].last_column},BA)SA._$.range=[z[z.length-(dA||1)].range[0],z[z.length-1].range[1]];if(kA=this.performAction.apply(SA,[q,tA,CA,JA.yy,EA[1],_,z].concat(RA)),typeof kA<"u")return kA;if(dA)K=K.slice(0,-1*dA*2),_=_.slice(0,-1*dA),z=z.slice(0,-1*dA);K.push(this.productions_[EA[1]][0]),_.push(SA.$),z.push(SA._$),W=j[K[K.length-2]][K[K.length-1]],K.push(W);break;case 3:return!0}}return!0},"parse")},M=function(){var Y={EOF:1,parseError:y(function(J,K){if(this.yy.parser)this.yy.parser.parseError(J,K);else throw Error(J)},"parseError"),setInput:y(function(H,J){if(this.yy=J||this.yy||{},this._input=H,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var H=this._input[0];this.yytext+=H,this.yyleng++,this.offset++,this.match+=H,this.matched+=H;var J=H.match(/(?:\r\n?|\n).*/g);if(J)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),H},"input"),unput:y(function(H){var J=H.length,K=H.split(/(?:\r\n?|\n)/g);this._input=H+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;var O=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),K.length-1)this.yylineno-=K.length-1;var _=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:K?(K.length===O.length?this.yylloc.first_column:0)+O[O.length-K.length].length-K[0].length:this.yylloc.first_column-J},this.options.ranges)this.yylloc.range=[_[0],_[0]+this.yyleng-J];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(H){this.unput(this.match.slice(H))},"less"),pastInput:y(function(){var H=this.matched.substr(0,this.matched.length-this.match.length);return(H.length>20?"...":"")+H.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var H=this.match;if(H.length<20)H+=this._input.substr(0,20-H.length);return(H.substr(0,20)+(H.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var H=this.pastInput(),J=Array(H.length+1).join("-");return H+this.upcomingInput()+`
|
||
`+J+"^"},"showPosition"),test_match:y(function(H,J){var K,O,_;if(this.options.backtrack_lexer){if(_={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)_.yylloc.range=this.yylloc.range.slice(0)}if(O=H[0].match(/(?:\r\n?|\n).*/g),O)this.yylineno+=O.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:O?O[O.length-1].length-O[O.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+H[0].length},this.yytext+=H[0],this.match+=H[0],this.matches=H,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(H[0].length),this.matched+=H[0],K=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(K)return K;else if(this._backtrack){for(var z in _)this[z]=_[z];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var H,J,K,O;if(!this._more)this.yytext="",this.match="";var _=this._currentRules();for(var z=0;z<_.length;z++)if(K=this._input.match(this.rules[_[z]]),K&&(!J||K[0].length>J[0].length)){if(J=K,O=z,this.options.backtrack_lexer)if(H=this.test_match(K,_[z]),H!==!1)return H;else if(this._backtrack){J=!1;continue}else return!1;else if(!this.options.flex)break}if(J){if(H=this.test_match(J,_[O]),H!==!1)return H;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var J=this.next();if(J)return J;else return this.lex()},"lex"),begin:y(function(J){this.conditionStack.push(J)},"begin"),popState:y(function(){var J=this.conditionStack.length-1;if(J>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(J){if(J=this.conditionStack.length-1-Math.abs(J||0),J>=0)return this.conditionStack[J];else return"INITIAL"},"topState"),pushState:y(function(J){this.begin(J)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(J,K,O,_){function z(){let q=K.yytext.indexOf("%%");if(q===0)return!1;if(q>0){let CA=K.yytext.slice(0,q),tA=K.yytext.slice(q);if(tA)J.lexer.unput(tA);K.yytext=CA}return!0}y(z,"processId");var j=_;switch(O){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:return 5;case 9:break;case 10:break;case 11:break;case 12:break;case 13:return this.pushState("SCALE"),17;break;case 14:return 18;case 15:this.popState();break;case 16:return this.begin("acc_title"),33;break;case 17:return this.popState(),"acc_title_value";break;case 18:return this.begin("acc_descr"),35;break;case 19:return this.popState(),"acc_descr_value";break;case 20:this.begin("acc_descr_multiline");break;case 21:this.popState();break;case 22:return"acc_descr_multiline_value";case 23:return this.pushState("CLASSDEF"),41;break;case 24:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 25:return this.popState(),this.pushState("CLASSDEFID"),42;break;case 26:return this.popState(),43;break;case 27:return this.pushState("CLASS"),48;break;case 28:return this.popState(),this.pushState("CLASS_STYLE"),49;break;case 29:return this.popState(),50;break;case 30:return this.pushState("STYLE"),45;break;case 31:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;break;case 32:return this.popState(),47;break;case 33:return this.pushState("SCALE"),17;break;case 34:return 18;case 35:this.popState();break;case 36:this.pushState("STATE");break;case 37:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),25;break;case 38:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),26;break;case 39:return this.popState(),K.yytext=K.yytext.slice(0,-10).trim(),27;break;case 40:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),25;break;case 41:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),26;break;case 42:return this.popState(),K.yytext=K.yytext.slice(0,-10).trim(),27;break;case 43:return 51;case 44:return 52;case 45:return 53;case 46:return 54;case 47:this.pushState("STATE_STRING");break;case 48:return this.pushState("STATE_ID"),"AS";break;case 49:if(!z())return;return this.popState(),"ID";break;case 50:this.popState();break;case 51:return"STATE_DESCR";case 52:throw Error('Error: State name must be a single word. Found: "'+K.yytext.trim()+'"');case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState("struct"),20;break;case 56:return this.popState(),21;break;case 57:break;case 58:return this.begin("NOTE"),29;break;case 59:return this.popState(),this.pushState("NOTE_ID"),59;break;case 60:return this.popState(),this.pushState("NOTE_ID"),60;break;case 61:this.popState(),this.pushState("FLOATING_NOTE");break;case 62:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 63:break;case 64:return"NOTE_TEXT";case 65:if(!z())return;return this.popState(),"ID";break;case 66:if(!z())return;return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 67:return this.popState(),K.yytext=K.yytext.substr(2).trim(),31;break;case 68:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),31;break;case 69:return 6;case 70:return 6;case 71:return 16;case 72:return 57;case 73:if(!z())return;return 24;case 74:return K.yytext=K.yytext.trim(),14;break;case 75:return 15;case 76:return 28;case 77:return 58;case 78:return 5;case 79:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<<fork>>)/i,/^(?:.*<<join>>)/i,/^(?:.*<<choice>>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\w+\s+\w+.*?\{)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?\n\s*end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[10,11,12],inclusive:!1},struct:{rules:[10,11,12,23,27,30,36,43,44,45,46,56,57,58,72,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[65],inclusive:!1},FLOATING_NOTE:{rules:[62,63,64],inclusive:!1},NOTE_TEXT:{rules:[67,68],inclusive:!1},NOTE_ID:{rules:[66],inclusive:!1},NOTE:{rules:[59,60,61],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[32],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[31],inclusive:!1},CLASS_STYLE:{rules:[29],inclusive:!1},CLASS:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[26],inclusive:!1},CLASSDEF:{rules:[24,25],inclusive:!1},acc_descr_multiline:{rules:[21,22],inclusive:!1},acc_descr:{rules:[19],inclusive:!1},acc_title:{rules:[17],inclusive:!1},SCALE:{rules:[14,15,34,35],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[49],inclusive:!1},STATE_STRING:{rules:[50,51],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[10,11,12,37,38,39,40,41,42,47,48,52,53,54,55],inclusive:!1},ID:{rules:[10,11,12],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18,20,23,27,30,33,36,55,58,69,70,71,72,73,74,75,77,78,79],inclusive:!0}}};return Y}();L.lexer=M;function U(){this.yy={}}return y(U,"Parser"),U.prototype=L,L.Parser=U,new U}();xCA.parser=xCA;HO=xCA,LNt=`${E7}-${SNt}`,GNt=`${pue} ${NNt}`,UNt=`${E7}-${RNt}`,TNt=`${E7}-${MNt}`,HNt=`${E7}-${YNt}`,JNt=`${LCA}${mue}`,sue=`${LCA}${fue}`,Due=y((A,e=Cue)=>{if(!A.doc)return e;let t=e;for(let r of A.doc)if(r.stmt==="dir")t=r.value;return t},"getDir"),ONt=y(function(A,e){return e.db.getClasses()},"getClasses"),PNt=y(async function(A,e,t,r){sA.info("REF0:"),sA.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:u,layout:a}=OA();r.db.extract(r.db.getRootDocV2());let n=r.db.getData(),o=Ic(e,i);if(n.type=r.type,n.layoutAlgorithm=a,n.nodeSpacing=u?.nodeSpacing||50,n.rankSpacing=u?.rankSpacing||50,OA().look==="neo")n.markers=["barbNeo"];else n.markers=["barb"];n.diagramId=e,await cc(n,o);let l=8;try{(typeof r.db.getLinks==="function"?r.db.getLinks():new Map).forEach((C,B)=>{let E=typeof B==="string"?B:typeof B?.id==="string"?B.id:"",d=n.nodes.find((f)=>f.id===E);if(!E){sA.warn("⚠️ Invalid or missing stateId from key:",JSON.stringify(B));return}let I=o.node()?.querySelectorAll("g.node, g.rough-node"),h;if(I?.forEach((f)=>{let D=f.textContent?.trim();if(f.id===d?.domId||D===E)h=f}),!h){sA.warn("⚠️ Could not find node matching text:",E);return}let Q=h.parentNode;if(!Q){sA.warn("⚠️ Node has no parent, cannot wrap:",E);return}let p=document.createElementNS("http://www.w3.org/2000/svg","a"),m=C.url.replace(/^"+|"+$/g,"");if(p.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",m),p.setAttribute("target","_blank"),C.tooltip){let f=C.tooltip.replace(/^"+|"+$/g,"");p.setAttribute("title",f),h.setAttribute("title",f)}Q.replaceChild(p,h),p.appendChild(h),sA.info("\uD83D\uDD17 Wrapped node in <a> tag for:",E,C.url)})}catch(g){sA.error("❌ Error injecting clickable links:",g)}Jt.insertTitle(o,"statediagramTitleText",u?.titleTopMargin??25,r.db.getDiagramTitle()),pl(o,l,E7,u?.useMaxWidth??!0)},"draw"),yue={getClasses:ONt,draw:PNt,getDir:Due},TO=new Map;y(YO,"stateDomId");_Nt=y((A,e,t,r,i,u,a,n)=>{sA.trace("items",e),e.forEach((o)=>{switch(o.stmt){case x6:C7(A,o,t,r,i,u,a,n);break;case B7:C7(A,o,t,r,i,u,a,n);break;case SCA:{C7(A,o.state1,t,r,i,u,a,n),C7(A,o.state2,t,r,i,u,a,n);let s=a==="neo",l={id:"edge"+I1,start:o.state1.id,end:o.state2.id,arrowhead:"normal",arrowTypeEnd:s?"arrow_barb_neo":"arrow_barb",style:Eue,labelStyle:"",label:_e.sanitizeText(o.description??"",OA()),arrowheadStyle:due,labelpos:Iue,labelType:hue,thickness:Que,classes:pue,look:a};i.push(l),I1++}break}})},"setupDoc"),lue=y((A,e=Cue)=>{let t=e;if(A.doc){for(let r of A.doc)if(r.stmt==="dir")t=r.value}return t},"getDir");y(c7,"insertOrUpdateNode");y(wue,"getClassesFromDbInfo");y(bue,"getStylesFromDbInfo");C7=y((A,e,t,r,i,u,a,n)=>{let o=e.id,s=t.get(o),l=wue(s),g=bue(s),C=OA();if(sA.info("dataFetcher parsedItem",e,s,g),o!=="root"){let B=kCA;if(e.start===!0)B=vNt;else if(e.start===!1)B=kNt;if(e.type!==B7)B=e.type;if(!TO.get(o))TO.set(o,{id:o,shape:B,description:_e.sanitizeText(o,C),cssClasses:`${l} ${LNt}`,cssStyles:g});let E=TO.get(o);if(e.description){if(Array.isArray(E.description))E.shape=FCA,E.description.push(e.description);else if(E.description?.length&&E.description.length>0)if(E.shape=FCA,E.description===o)E.description=[e.description];else E.description=[E.description,e.description];else E.shape=kCA,E.description=e.description;E.description=_e.sanitizeTextOrArray(E.description,C)}if(E.description?.length===1&&E.shape===FCA)if(E.type==="group")E.shape=oue;else E.shape=kCA;if(!E.type&&e.doc)sA.info("Setting cluster for XCX",o,lue(e)),E.type="group",E.isGroup=!0,E.dir=lue(e),E.explicitDir=e.doc.some((I)=>I.stmt==="dir"),E.shape=e.type===Bue?nue:oue,E.cssClasses=`${E.cssClasses} ${TNt} ${u?HNt:""}`;let d={labelStyle:"",shape:E.shape,label:E.description,cssClasses:E.cssClasses,cssCompiledStyles:[],cssStyles:E.cssStyles,id:o,dir:E.dir,domId:YO(o,I1),type:E.type,isGroup:E.type==="group",padding:8,rx:10,ry:10,look:a,labelType:"markdown"};if(d.shape===nue)d.label="";if(A&&A.id!=="root")sA.trace("Setting node ",o," to be child of its parent ",A.id),d.parentId=A.id;if(d.centerLabel=!0,e.note){let I={labelStyle:"",shape:FNt,label:e.note.text,labelType:"markdown",cssClasses:UNt,cssStyles:[],cssCompiledStyles:[],id:o+JNt+"-"+I1,domId:YO(o,I1,mue),type:E.type,isGroup:E.type==="group",padding:C.flowchart?.padding,look:a,position:e.note.position},h=o+sue,Q={labelStyle:"",shape:xNt,label:e.note.text,cssClasses:E.cssClasses,cssStyles:[],id:o+sue,domId:YO(o,I1,fue),type:"group",isGroup:!0,padding:16,look:a,position:e.note.position};I1++,Q.id=h,I.parentId=h,c7(r,Q,n),c7(r,I,n),c7(r,d,n);let p=o,m=I.id;if(e.note.position==="left of")p=I.id,m=o;i.push({id:p+"-"+m,start:p,end:m,arrowhead:"none",arrowTypeEnd:"",style:Eue,labelStyle:"",classes:GNt,arrowheadStyle:due,labelpos:Iue,labelType:hue,thickness:Que,look:a})}else c7(r,d,n)}if(e.doc)sA.trace("Adding nodes children "),_Nt(e,e.doc,t,r,i,!u,a,n)},"dataFetcher"),WNt=y(()=>{TO.clear(),I1=0},"reset"),Us={START_NODE:"[*]",START_TYPE:"start",END_NODE:"[*]",END_TYPE:"end",COLOR_KEYWORD:"color",FILL_KEYWORD:"fill",BG_FILL:"bgFill",STYLECLASS_SEP:","},gue=y(()=>new Map,"newClassesList"),cue=y(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),MO=y((A)=>JSON.parse(JSON.stringify(A)),"clone"),fh=class{constructor(A){this.version=A,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=gue(),this.documents={root:cue()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.funs=[],this.getAccTitle=vr,this.setAccTitle=Dr,this.getAccDescription=Fr,this.setAccDescription=kr,this.setDiagramTitle=Mr,this.getDiagramTitle=xr,this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this),this.bindFunctions=this.bindFunctions.bind(this)}static{y(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(A){this.clear(!0);for(let r of Array.isArray(A)?A:A.doc)switch(r.stmt){case x6:this.addState(r.id.trim(),r.type,r.doc,r.description,r.note);break;case SCA:this.addRelation(r.state1,r.state2,r.description);break;case yNt:this.addStyleClass(r.id.trim(),r.classes);break;case wNt:this.handleStyleDef(r);break;case bNt:this.setCssClass(r.id.trim(),r.styleClass);break;case"click":this.addLink(r.id,r.url,r.tooltip);break}let e=this.getStates(),t=OA();WNt(),C7(void 0,this.getRootDocV2(),e,this.nodes,this.edges,!0,t.look,this.classes);for(let r of this.nodes){if(!Array.isArray(r.label))continue;if(r.description=r.label.slice(1),r.isGroup&&r.description.length>0)throw Error(`Group nodes can only have label. Remove the additional description for node [${r.id}]`);r.label=r.label[0]}}handleStyleDef(A){let e=A.id.trim().split(","),t=A.styleClass.split(",");for(let r of e){let i=this.getState(r);if(!i){let u=r.trim();this.addState(u),i=this.getState(u)}if(i)i.styles=t.map((u)=>u.replace(/;/g,"")?.trim())}}setRootDoc(A){if(sA.info("Setting root doc",A),this.rootDoc=A,this.version===1)this.extract(A);else this.extract(this.getRootDocV2())}docTranslator(A,e,t){if(e.stmt===SCA){this.docTranslator(A,e.state1,!0),this.docTranslator(A,e.state2,!1);return}if(e.stmt===x6)if(e.id===Us.START_NODE)e.id=A.id+(t?"_start":"_end"),e.start=t;else e.id=e.id.trim();if(e.stmt!==F6&&e.stmt!==x6||!e.doc)return;let r=[],i=[];for(let u of e.doc)if(u.type===Bue){let a=MO(u);a.doc=MO(i),r.push(a),i=[]}else i.push(u);if(r.length>0&&i.length>0){let u={stmt:x6,id:CeA(),type:"divider",doc:MO(i)};r.push(MO(u)),e.doc=r}e.doc.forEach((u)=>this.docTranslator(e,u,!0))}getRootDocV2(){return this.docTranslator({id:F6,stmt:F6},{id:F6,stmt:F6,doc:this.rootDoc},!0),{id:F6,doc:this.rootDoc}}addState(A,e=B7,t=void 0,r=void 0,i=void 0,u=void 0,a=void 0,n=void 0){let o=A?.trim();if(!this.currentDocument.states.has(o))sA.info("Adding state ",o,r),this.currentDocument.states.set(o,{stmt:x6,id:o,descriptions:[],type:e,doc:t,note:i,classes:[],styles:[],textStyles:[]});else{let s=this.currentDocument.states.get(o);if(!s)throw Error(`State not found: ${o}`);if(!s.doc)s.doc=t;if(!s.type)s.type=e}if(r)sA.info("Setting state description",o,r),(Array.isArray(r)?r:[r]).forEach((l)=>this.addDescription(o,l.trim()));if(i){let s=this.currentDocument.states.get(o);if(!s)throw Error(`State not found: ${o}`);s.note=i,s.note.text=_e.sanitizeText(s.note.text,OA())}if(u)sA.info("Setting state classes",o,u),(Array.isArray(u)?u:[u]).forEach((l)=>this.setCssClass(o,l.trim()));if(a)sA.info("Setting state styles",o,a),(Array.isArray(a)?a:[a]).forEach((l)=>this.setStyle(o,l.trim()));if(n)sA.info("Setting state styles",o,a),(Array.isArray(n)?n:[n]).forEach((l)=>this.setTextStyle(o,l.trim()))}clear(A){if(this.nodes=[],this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.documents={root:cue()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=gue(),!A)this.links=new Map,sr()}getState(A){return this.currentDocument.states.get(A)}getStates(){return this.currentDocument.states}logDocuments(){sA.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(A,e,t){this.links.set(A,{url:e,tooltip:t}),sA.warn("Adding link",A,e,t)}getLinks(){return this.links}startIdIfNeeded(A=""){if(A===Us.START_NODE)return this.startEndCount++,`${Us.START_TYPE}${this.startEndCount}`;return A}startTypeIfNeeded(A="",e=B7){return A===Us.START_NODE?Us.START_TYPE:e}endIdIfNeeded(A=""){if(A===Us.END_NODE)return this.startEndCount++,`${Us.END_TYPE}${this.startEndCount}`;return A}endTypeIfNeeded(A="",e=B7){return A===Us.END_NODE?Us.END_TYPE:e}addRelationObjs(A,e,t=""){let r=this.startIdIfNeeded(A.id.trim()),i=this.startTypeIfNeeded(A.id.trim(),A.type),u=this.startIdIfNeeded(e.id.trim()),a=this.startTypeIfNeeded(e.id.trim(),e.type);this.addState(r,i,A.doc,A.description,A.note,A.classes,A.styles,A.textStyles),this.addState(u,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.currentDocument.relations.push({id1:r,id2:u,relationTitle:_e.sanitizeText(t,OA())})}addRelation(A,e,t){if(typeof A==="object"&&typeof e==="object")this.addRelationObjs(A,e,t);else if(typeof A==="string"&&typeof e==="string"){let r=this.startIdIfNeeded(A.trim()),i=this.startTypeIfNeeded(A),u=this.endIdIfNeeded(e.trim()),a=this.endTypeIfNeeded(e);this.addState(r,i),this.addState(u,a),this.currentDocument.relations.push({id1:r,id2:u,relationTitle:t?_e.sanitizeText(t,OA()):void 0})}}addDescription(A,e){let t=this.currentDocument.states.get(A),r=e.startsWith(":")?e.replace(":","").trim():e;t?.descriptions?.push(_e.sanitizeText(r,OA()))}cleanupLabel(A){return A.startsWith(":")?A.slice(2).trim():A.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(A,e=""){if(!this.classes.has(A))this.classes.set(A,{id:A,styles:[],textStyles:[]});let t=this.classes.get(A);if(e&&t)e.split(Us.STYLECLASS_SEP).forEach((r)=>{let i=r.replace(/([^;]*);/,"$1").trim();if(RegExp(Us.COLOR_KEYWORD).exec(r)){let a=i.replace(Us.FILL_KEYWORD,Us.BG_FILL).replace(Us.COLOR_KEYWORD,Us.FILL_KEYWORD);t.textStyles.push(a)}t.styles.push(i)})}getClasses(){return this.classes}setupToolTips(A){let e=kw();Qe(A).select("svg").selectAll("g.node, g.rough-node").on("mouseover",(i)=>{let u=Qe(i.currentTarget),a=u.attr("title");if(a===null)return;let n=i.currentTarget?.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.style("left",window.scrollX+n.left+(n.right-n.left)/2+"px").style("top",window.scrollY+n.bottom+"px"),e.html(Al.sanitize(a)),u.classed("hover",!0)}).on("mouseout",(i)=>{e.transition().duration(500).style("opacity",0),Qe(i.currentTarget).classed("hover",!1)})}setCssClass(A,e){A.split(",").forEach((t)=>{let r=this.getState(t);if(!r){let i=t.trim();this.addState(i),r=this.getState(i)}r?.classes?.push(e)})}setStyle(A,e){this.getState(A)?.styles?.push(e)}setTextStyle(A,e){this.getState(A)?.textStyles?.push(e)}bindFunctions(A){this.funs.forEach((e)=>{e(A)})}getDirectionStatement(){return this.rootDoc.find((A)=>A.stmt===aue)}getDirection(){return this.getDirectionStatement()?.value??DNt}setDirection(A){let e=this.getDirectionStatement();if(e)e.value=A;else this.rootDoc.unshift({stmt:aue,value:A})}trimColon(A){return A.startsWith(":")?A.slice(1).trim():A.trim()}getData(){let A=OA();return{nodes:this.nodes,edges:this.edges,other:{},config:A,direction:Due(this.getRootDocV2())}}getConfig(){return OA().state}},qNt=y((A)=>`
|
||
defs [id$="-barbEnd"] {
|
||
fill: ${A.transitionColor};
|
||
stroke: ${A.transitionColor};
|
||
}
|
||
g.stateGroup text {
|
||
fill: ${A.nodeBorder};
|
||
stroke: none;
|
||
font-size: 10px;
|
||
}
|
||
g.stateGroup text {
|
||
fill: ${A.textColor};
|
||
stroke: none;
|
||
font-size: 10px;
|
||
|
||
}
|
||
g.stateGroup .state-title {
|
||
font-weight: bolder;
|
||
fill: ${A.stateLabelColor};
|
||
}
|
||
|
||
g.stateGroup rect {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.nodeBorder};
|
||
}
|
||
|
||
g.stateGroup line {
|
||
stroke: ${A.lineColor};
|
||
stroke-width: ${A.strokeWidth||1};
|
||
}
|
||
|
||
.transition {
|
||
stroke: ${A.transitionColor};
|
||
stroke-width: ${A.strokeWidth||1};
|
||
fill: none;
|
||
}
|
||
|
||
.stateGroup .composit {
|
||
fill: ${A.background};
|
||
border-bottom: 1px
|
||
}
|
||
|
||
.stateGroup .alt-composit {
|
||
fill: #e0e0e0;
|
||
border-bottom: 1px
|
||
}
|
||
|
||
.state-note {
|
||
stroke: ${A.noteBorderColor};
|
||
fill: ${A.noteBkgColor};
|
||
|
||
text {
|
||
fill: ${A.noteTextColor};
|
||
stroke: none;
|
||
font-size: 10px;
|
||
}
|
||
}
|
||
|
||
.stateLabel .box {
|
||
stroke: none;
|
||
stroke-width: 0;
|
||
fill: ${A.mainBkg};
|
||
opacity: 0.5;
|
||
}
|
||
|
||
.edgeLabel .label rect {
|
||
fill: ${A.labelBackgroundColor};
|
||
opacity: 0.5;
|
||
}
|
||
.edgeLabel {
|
||
background-color: ${A.edgeLabelBackground};
|
||
p {
|
||
background-color: ${A.edgeLabelBackground};
|
||
}
|
||
rect {
|
||
opacity: 0.5;
|
||
background-color: ${A.edgeLabelBackground};
|
||
fill: ${A.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
.edgeLabel .label text {
|
||
fill: ${A.transitionLabelColor||A.tertiaryTextColor};
|
||
}
|
||
.label div .edgeLabel {
|
||
color: ${A.transitionLabelColor||A.tertiaryTextColor};
|
||
}
|
||
|
||
.stateLabel text {
|
||
fill: ${A.stateLabelColor};
|
||
font-size: 10px;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.node circle.state-start {
|
||
fill: ${A.specialStateColor};
|
||
stroke: ${A.specialStateColor};
|
||
}
|
||
|
||
.node .fork-join {
|
||
fill: ${A.specialStateColor};
|
||
stroke: ${A.specialStateColor};
|
||
}
|
||
|
||
.node circle.state-end {
|
||
fill: ${A.innerEndBackground};
|
||
stroke: ${A.background};
|
||
stroke-width: 1.5
|
||
}
|
||
.end-state-inner {
|
||
fill: ${A.compositeBackground||A.background};
|
||
// stroke: ${A.background};
|
||
stroke-width: 1.5
|
||
}
|
||
|
||
.node rect {
|
||
fill: ${A.stateBkg||A.mainBkg};
|
||
stroke: ${A.stateBorder||A.nodeBorder};
|
||
stroke-width: ${A.strokeWidth||1}px;
|
||
}
|
||
.node polygon {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.stateBorder||A.nodeBorder};;
|
||
stroke-width: ${A.strokeWidth||1}px;
|
||
}
|
||
[id$="-barbEnd"] {
|
||
fill: ${A.lineColor};
|
||
}
|
||
|
||
.statediagram-cluster rect {
|
||
fill: ${A.compositeTitleBackground};
|
||
stroke: ${A.stateBorder||A.nodeBorder};
|
||
stroke-width: ${A.strokeWidth||1}px;
|
||
}
|
||
|
||
.cluster-label, .nodeLabel {
|
||
color: ${A.stateLabelColor};
|
||
// line-height: 1;
|
||
}
|
||
|
||
.statediagram-cluster rect.outer {
|
||
rx: 5px;
|
||
ry: 5px;
|
||
}
|
||
.statediagram-state .divider {
|
||
stroke: ${A.stateBorder||A.nodeBorder};
|
||
}
|
||
|
||
.statediagram-state .title-state {
|
||
rx: 5px;
|
||
ry: 5px;
|
||
}
|
||
.statediagram-cluster.statediagram-cluster .inner {
|
||
fill: ${A.compositeBackground||A.background};
|
||
}
|
||
.statediagram-cluster.statediagram-cluster-alt .inner {
|
||
fill: ${A.altBackground?A.altBackground:"#efefef"};
|
||
}
|
||
|
||
.statediagram-cluster .inner {
|
||
rx:0;
|
||
ry:0;
|
||
}
|
||
|
||
.statediagram-state rect.basic {
|
||
rx: 5px;
|
||
ry: 5px;
|
||
}
|
||
.statediagram-state rect.divider {
|
||
stroke-dasharray: 10,10;
|
||
fill: ${A.altBackground?A.altBackground:"#efefef"};
|
||
}
|
||
|
||
.note-edge {
|
||
stroke-dasharray: 5;
|
||
}
|
||
|
||
.statediagram-note rect {
|
||
fill: ${A.noteBkgColor};
|
||
stroke: ${A.noteBorderColor};
|
||
stroke-width: 1px;
|
||
rx: 0;
|
||
ry: 0;
|
||
}
|
||
.statediagram-note rect {
|
||
fill: ${A.noteBkgColor};
|
||
stroke: ${A.noteBorderColor};
|
||
stroke-width: 1px;
|
||
rx: 0;
|
||
ry: 0;
|
||
}
|
||
|
||
.statediagram-note text {
|
||
fill: ${A.noteTextColor};
|
||
}
|
||
|
||
.statediagram-note .nodeLabel {
|
||
color: ${A.noteTextColor};
|
||
}
|
||
.statediagram .edgeLabel {
|
||
color: red; // ${A.noteTextColor};
|
||
}
|
||
|
||
[id$="-dependencyStart"], [id$="-dependencyEnd"] {
|
||
fill: ${A.lineColor};
|
||
stroke: ${A.lineColor};
|
||
stroke-width: ${A.strokeWidth||1};
|
||
}
|
||
|
||
.statediagramTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${A.textColor};
|
||
}
|
||
|
||
[data-look="neo"].statediagram-cluster rect {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.useGradient?"url("+A.svgId+"-gradient)":A.stateBorder||A.nodeBorder};
|
||
stroke-width: ${A.strokeWidth??1};
|
||
}
|
||
[data-look="neo"].statediagram-cluster rect.outer {
|
||
rx: ${A.radius}px;
|
||
ry: ${A.radius}px;
|
||
filter: ${A.dropShadow?A.dropShadow.replace("url(#drop-shadow)",`url(${A.svgId}-drop-shadow)`):"none"}
|
||
}
|
||
`,"getStyles"),KO=qNt});var zNt,ZNt,VNt,jNt,XNt,$Nt,AGt,eGt,tGt,vue,kue=0,rGt,yg,NCA,iGt,uGt,aGt,nGt,Fue,oGt,xue;var Sue=P(()=>{RCA();Eg();fl();hl();Bg();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();Pr();GrA();gg();Pr();zNt=y((A)=>A.append("circle").attr("class","start-state").attr("r",OA().state.sizeUnit).attr("cx",OA().state.padding+OA().state.sizeUnit).attr("cy",OA().state.padding+OA().state.sizeUnit),"drawStartState"),ZNt=y((A)=>A.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",OA().state.textHeight).attr("class","divider").attr("x2",OA().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),VNt=y((A,e)=>{let t=A.append("text").attr("x",2*OA().state.padding).attr("y",OA().state.textHeight+2*OA().state.padding).attr("font-size",OA().state.fontSize).attr("class","state-title").text(e.id),r=t.node().getBBox();return A.insert("rect",":first-child").attr("x",OA().state.padding).attr("y",OA().state.padding).attr("width",r.width+2*OA().state.padding).attr("height",r.height+2*OA().state.padding).attr("rx",OA().state.radius),t},"drawSimpleState"),jNt=y((A,e)=>{let t=y(function(C,B,E){let d=C.append("tspan").attr("x",2*OA().state.padding).text(B);if(!E)d.attr("dy",OA().state.textHeight)},"addTspan"),i=A.append("text").attr("x",2*OA().state.padding).attr("y",OA().state.textHeight+1.3*OA().state.padding).attr("font-size",OA().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),u=i.height,a=A.append("text").attr("x",OA().state.padding).attr("y",u+OA().state.padding*0.4+OA().state.dividerMargin+OA().state.textHeight).attr("class","state-description"),n=!0,o=!0;e.descriptions.forEach(function(C){if(!n)t(a,C,o),o=!1;n=!1});let s=A.append("line").attr("x1",OA().state.padding).attr("y1",OA().state.padding+u+OA().state.dividerMargin/2).attr("y2",OA().state.padding+u+OA().state.dividerMargin/2).attr("class","descr-divider"),l=a.node().getBBox(),g=Math.max(l.width,i.width);return s.attr("x2",g+3*OA().state.padding),A.insert("rect",":first-child").attr("x",OA().state.padding).attr("y",OA().state.padding).attr("width",g+2*OA().state.padding).attr("height",l.height+u+2*OA().state.padding).attr("rx",OA().state.radius),A},"drawDescrState"),XNt=y((A,e,t)=>{let r=OA().state.padding,i=2*OA().state.padding,u=A.node().getBBox(),{width:a,x:n}=u,o=A.append("text").attr("x",0).attr("y",OA().state.titleShift).attr("font-size",OA().state.fontSize).attr("class","state-title").text(e.id),l=o.node().getBBox().width+i,g=Math.max(l,a);if(g===a)g=g+i;let C,B=A.node().getBBox();if(e.doc);if(C=n-r,l>a)C=(a-g)/2+r;if(Math.abs(n-B.x)<r&&l>a)C=n-(l-a)/2;let E=1-OA().state.textHeight;if(A.insert("rect",":first-child").attr("x",C).attr("y",E).attr("class",t?"alt-composit":"composit").attr("width",g).attr("height",B.height+OA().state.textHeight+OA().state.titleShift+1).attr("rx","0"),o.attr("x",C+r),l<=a)o.attr("x",n+(g-i)/2-l/2+r);return A.insert("rect",":first-child").attr("x",C).attr("y",OA().state.titleShift-OA().state.textHeight-OA().state.padding).attr("width",g).attr("height",OA().state.textHeight*3).attr("rx",OA().state.radius),A.insert("rect",":first-child").attr("x",C).attr("y",OA().state.titleShift-OA().state.textHeight-OA().state.padding).attr("width",g).attr("height",B.height+3+2*OA().state.textHeight).attr("rx",OA().state.radius),A},"addTitleAndBox"),$Nt=y((A)=>(A.append("circle").attr("class","end-state-outer").attr("r",OA().state.sizeUnit+OA().state.miniPadding).attr("cx",OA().state.padding+OA().state.sizeUnit+OA().state.miniPadding).attr("cy",OA().state.padding+OA().state.sizeUnit+OA().state.miniPadding),A.append("circle").attr("class","end-state-inner").attr("r",OA().state.sizeUnit).attr("cx",OA().state.padding+OA().state.sizeUnit+2).attr("cy",OA().state.padding+OA().state.sizeUnit+2)),"drawEndState"),AGt=y((A,e)=>{let t=OA().state.forkWidth,r=OA().state.forkHeight;if(e.parentId){let i=t;t=r,r=i}return A.append("rect").style("stroke","black").style("fill","black").attr("width",t).attr("height",r).attr("x",OA().state.padding).attr("y",OA().state.padding)},"drawForkJoinState"),eGt=y((A,e,t,r)=>{let i=0,u=r.append("text");u.style("text-anchor","start"),u.attr("class","noteText");let a=A.replace(/\r\n/g,"<br/>");a=a.replace(/\n/g,"<br/>");let n=a.split(_e.lineBreakRegex),o=1.25*OA().state.noteMargin;for(let s of n){let l=s.trim();if(l.length>0){let g=u.append("tspan");if(g.text(l),o===0){let C=g.node().getBBox();o+=C.height}i+=o,g.attr("x",e+OA().state.noteMargin),g.attr("y",t+i+1.25*OA().state.noteMargin)}}return{textWidth:u.node().getBBox().width,textHeight:i}},"_drawLongText"),tGt=y((A,e)=>{e.attr("class","state-note");let t=e.append("rect").attr("x",0).attr("y",OA().state.padding),r=e.append("g"),{textWidth:i,textHeight:u}=eGt(A,0,0,r);return t.attr("height",u+2*OA().state.noteMargin),t.attr("width",i+OA().state.noteMargin*2),t},"drawNote"),vue=y(function(A,e){let t=e.id,r={id:t,label:e.id,width:0,height:0},i=A.append("g").attr("id",t).attr("class","stateGroup");if(e.type==="start")zNt(i);if(e.type==="end")$Nt(i);if(e.type==="fork"||e.type==="join")AGt(i,e);if(e.type==="note")tGt(e.note.text,i);if(e.type==="divider")ZNt(i);if(e.type==="default"&&e.descriptions.length===0)VNt(i,e);if(e.type==="default"&&e.descriptions.length>0)jNt(i,e);let u=i.node().getBBox();return r.width=u.width+2*OA().state.padding,r.height=u.height+2*OA().state.padding,r},"drawState"),rGt=y(function(A,e,t){let r=y(function(o){switch(o){case fh.relationType.AGGREGATION:return"aggregation";case fh.relationType.EXTENSION:return"extension";case fh.relationType.COMPOSITION:return"composition";case fh.relationType.DEPENDENCY:return"dependency"}},"getRelationType");e.points=e.points.filter((o)=>!Number.isNaN(o.y));let i=e.points,u=hC().x(function(o){return o.x}).y(function(o){return o.y}).curve(QC),a=A.append("path").attr("d",u(i)).attr("id","edge"+kue).attr("class","transition"),n="";if(OA().state.arrowMarkerAbsolute)n=ef(!0);if(a.attr("marker-end","url("+n+"#"+r(fh.relationType.DEPENDENCY)+"End)"),t.title!==void 0){let o=A.append("g").attr("class","stateLabel"),{x:s,y:l}=Jt.calcLabelPosition(e.points),g=_e.getRows(t.title),C=0,B=[],E=0,d=0;for(let Q=0;Q<=g.length;Q++){let p=o.append("text").attr("text-anchor","middle").text(g[Q]).attr("x",s).attr("y",l+C),m=p.node().getBBox();if(E=Math.max(E,m.width),d=Math.min(d,m.x),sA.info(m.x,s,l+C),C===0)C=p.node().getBBox().height,sA.info("Title height",C,l);B.push(p)}let I=C*g.length;if(g.length>1){let Q=(g.length-1)*C*0.5;B.forEach((p,m)=>p.attr("y",l+m*C-Q)),I=C*g.length}let h=o.node().getBBox();o.insert("rect",":first-child").attr("class","box").attr("x",s-E/2-OA().state.padding/2).attr("y",l-I/2-OA().state.padding/2-3.5).attr("width",E+OA().state.padding).attr("height",I+OA().state.padding),sA.info(h)}kue++},"drawEdge"),NCA={},iGt=y(function(){},"setConf"),uGt=y(function(A){A.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),aGt=y(function(A,e,t,r){yg=OA().state;let i=OA().securityLevel,u;if(i==="sandbox")u=Qe("#i"+e);let a=i==="sandbox"?Qe(u.nodes()[0].contentDocument.body):Qe("body"),n=i==="sandbox"?u.nodes()[0].contentDocument:document;sA.debug("Rendering diagram "+A);let o=a.select(`[id='${e}']`);uGt(o);let s=r.db.getRootDoc(),l=o.append("g").attr("id",e+"-root");Fue(s,l,void 0,!1,a,n,r);let g=yg.padding,C=o.node().getBBox(),B=C.width+g*2,E=C.height+g*2,d=B*1.75;jr(o,E,d,yg.useMaxWidth),o.attr("viewBox",`${C.x-yg.padding} ${C.y-yg.padding} `+B+" "+E)},"draw"),nGt=y((A)=>A?A.length*yg.fontSizeFactor:1,"getLabelWidth"),Fue=y((A,e,t,r,i,u,a)=>{let n=new ji({compound:!0,multigraph:!0}),o,s=!0;for(o=0;o<A.length;o++)if(A[o].stmt==="relation"){s=!1;break}if(t)n.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:s?1:yg.edgeLengthFactor,nodeSep:s?1:50,isMultiGraph:!0});else n.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:s?1:yg.edgeLengthFactor,nodeSep:s?1:50,ranker:"tight-tree",isMultiGraph:!0});n.setDefaultEdgeLabel(function(){return{}});let l=a.db.getStates(),g=a.db.getRelations(),C=Object.keys(l),B=!0;for(let Q of C){let p=l[Q];if(t)p.parentId=t;let m;if(p.doc){let f=e.append("g").attr("id",p.id).attr("class","stateGroup");if(m=Fue(p.doc,f,p.id,!r,i,u,a),B){f=XNt(f,p,r);let D=f.node().getBBox();m.width=D.width,m.height=D.height+yg.padding/2,NCA[p.id]={y:yg.compositTitleSize}}else{let D=f.node().getBBox();m.width=D.width,m.height=D.height}}else m=vue(e,p,n);if(p.note){let f={descriptions:[],id:p.id+"-note",note:p.note,type:"note"},D=vue(e,f,n);if(p.note.position==="left of")n.setNode(m.id+"-note",D),n.setNode(m.id,m);else n.setNode(m.id,m),n.setNode(m.id+"-note",D);n.setParent(m.id,m.id+"-group"),n.setParent(m.id+"-note",m.id+"-group")}else n.setNode(m.id,m)}sA.debug("Count=",n.nodeCount(),n);let E=0;g.forEach(function(Q){E++,sA.debug("Setting edge",Q),n.setEdge(Q.id1,Q.id2,{relation:Q,width:nGt(Q.title),height:yg.labelHeight*_e.getRows(Q.title).length,labelpos:"c"},"id"+E)}),Dk(n),sA.debug("Graph after layout",n.nodes());let d=e.node();n.nodes().forEach(function(Q){if(Q!==void 0&&n.node(Q)!==void 0)sA.warn("Node "+Q+": "+JSON.stringify(n.node(Q))),i.select("#"+d.id+" #"+Q).attr("transform","translate("+(n.node(Q).x-n.node(Q).width/2)+","+(n.node(Q).y+(NCA[Q]?NCA[Q].y:0)-n.node(Q).height/2)+" )"),i.select("#"+d.id+" #"+Q).attr("data-x-shift",n.node(Q).x-n.node(Q).width/2),u.querySelectorAll("#"+d.id+" #"+Q+" .divider").forEach((m)=>{let f=m.parentElement,D=0,w=0;if(f){if(f.parentElement)D=f.parentElement.getBBox().width;if(w=parseInt(f.getAttribute("data-x-shift"),10),Number.isNaN(w))w=0}m.setAttribute("x1",0-w+8),m.setAttribute("x2",D-w-8)});else sA.debug("No Node "+Q+": "+JSON.stringify(n.node(Q)))});let I=d.getBBox();n.edges().forEach(function(Q){if(Q!==void 0&&n.edge(Q)!==void 0)sA.debug("Edge "+Q.v+" -> "+Q.w+": "+JSON.stringify(n.edge(Q))),rGt(e,n.edge(Q),n.edge(Q).relation)}),I=d.getBBox();let h={id:t?t:"root",label:t?t:"root",width:0,height:0};return h.width=I.width+2*yg.padding,h.height=I.height+2*yg.padding,sA.debug("Doc rendered",h,n),h},"renderDoc"),oGt={setConf:iGt,draw:aGt},xue={parser:HO,get db(){return new fh(1)},renderer:oGt,styles:KO,init:y((A)=>{if(!A.state)A.state={};A.state.arrowMarkerAbsolute=A.arrowMarkerAbsolute},"init")}});var Lue;var Rue=P(()=>{RCA();Eg();fl();hl();Bg();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();Lue={parser:HO,get db(){return new fh(2)},renderer:yue,styles:KO,init:y((A)=>{if(!A.state)A.state={};A.state.arrowMarkerAbsolute=A.arrowMarkerAbsolute},"init")}});function Kue(A){let e=OA().journey,t=e.maxLabelWidth;JO=0;let r=60;Object.keys(mh).forEach((i)=>{let u=mh[i].color,a={cx:20,cy:r,r:7,fill:u,stroke:"#000",pos:mh[i].position};h7.drawCircle(A,a);let n=A.append("text").attr("visibility","hidden").text(i),o=n.node().getBoundingClientRect().width;n.remove();let s=[];if(o<=t)s=[i];else{let l=i.split(" "),g="";if(n=A.append("text").attr("visibility","hidden"),l.forEach((C)=>{let B=g?`${g} ${C}`:C;if(n.text(B),n.node().getBoundingClientRect().width>t){if(g)s.push(g);if(g=C,n.text(C),n.node().getBoundingClientRect().width>t){let d="";for(let I of C)if(d+=I,n.text(d+"-"),n.node().getBoundingClientRect().width>t)s.push(d.slice(0,-1)+"-"),d=I;g=d}}else g=B}),g)s.push(g);n.remove()}s.forEach((l,g)=>{let C={x:40,y:r+7+g*20,fill:"#666",text:l,textMargin:e.boxTextMargin??5},E=h7.drawText(A,C).node().getBoundingClientRect().width;if(E>JO&&E>e.leftMargin-E)JO=E}),r+=Math.max(20,s.length*20)})}var UCA,sGt,S6="",TCA,d7,I7,lGt,gGt,cGt,CGt,BGt,EGt,dGt,Nue,IGt,Gue,hGt,QGt,YCA,pGt,Tue,Yue,fGt,mGt,MCA=-1,DGt,yGt,Hue,wGt,h7,bGt,mh,JO=0,qC,h1=0,vGt,wc,GCA,Uue,kGt,Mue,Jue;var Oue=P(()=>{KE();Bg();rr();ir();Nt();Pr();Pr();UCA=function(){var A=y(function(g,C,B,E){for(B=B||{},E=g.length;E--;B[g[E]]=C);return B},"o"),e=[6,8,10,11,12,14,16,17,18],t=[1,9],r=[1,10],i=[1,11],u=[1,12],a=[1,13],n=[1,14],o={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:y(function(C,B,E,d,I,h,Q){var p=h.length-1;switch(I){case 1:return h[p-1];case 2:this.$=[];break;case 3:h[p-1].push(h[p]),this.$=h[p-1];break;case 4:case 5:this.$=h[p];break;case 6:case 7:this.$=[];break;case 8:d.setDiagramTitle(h[p].substr(6)),this.$=h[p].substr(6);break;case 9:this.$=h[p].trim(),d.setAccTitle(this.$);break;case 10:case 11:this.$=h[p].trim(),d.setAccDescription(this.$);break;case 12:d.addSection(h[p].substr(8)),this.$=h[p].substr(8);break;case 13:d.addTask(h[p-1],h[p]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},A(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:t,12:r,14:i,16:u,17:a,18:n},A(e,[2,7],{1:[2,1]}),A(e,[2,3]),{9:15,11:t,12:r,14:i,16:u,17:a,18:n},A(e,[2,5]),A(e,[2,6]),A(e,[2,8]),{13:[1,16]},{15:[1,17]},A(e,[2,11]),A(e,[2,12]),{19:[1,18]},A(e,[2,4]),A(e,[2,9]),A(e,[2,10]),A(e,[2,13])],defaultActions:{},parseError:y(function(C,B){if(B.recoverable)this.trace(C);else{var E=Error(C);throw E.hash=B,E}},"parseError"),parse:y(function(C){var B=this,E=[0],d=[],I=[null],h=[],Q=this.table,p="",m=0,f=0,D=0,w=2,b=1,F=h.slice.call(arguments,1),v=Object.create(this.lexer),S={yy:{}};for(var x in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,x))S.yy[x]=this.yy[x];if(v.setInput(C,S.yy),S.yy.lexer=v,S.yy.parser=this,typeof v.yylloc>"u")v.yylloc={};var k=v.yylloc;h.push(k);var T=v.options&&v.options.ranges;if(typeof S.yy.parseError==="function")this.parseError=S.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function R(tA){E.length=E.length-2*tA,I.length=I.length-tA,h.length=h.length-tA}y(R,"popStack");function L(){var tA=d.pop()||v.lex()||b;if(typeof tA!=="number"){if(tA instanceof Array)d=tA,tA=d.pop();tA=B.symbols_[tA]||tA}return tA}y(L,"lex");var M,U,Y,H,J,K,O={},_,z,j,q;while(!0){if(Y=E[E.length-1],this.defaultActions[Y])H=this.defaultActions[Y];else{if(M===null||typeof M>"u")M=L();H=Q[Y]&&Q[Y][M]}if(typeof H>"u"||!H.length||!H[0]){var CA="";q=[];for(_ in Q[Y])if(this.terminals_[_]&&_>w)q.push("'"+this.terminals_[_]+"'");if(v.showPosition)CA="Parse error on line "+(m+1)+`:
|
||
`+v.showPosition()+`
|
||
Expecting `+q.join(", ")+", got '"+(this.terminals_[M]||M)+"'";else CA="Parse error on line "+(m+1)+": Unexpected "+(M==b?"end of input":"'"+(this.terminals_[M]||M)+"'");this.parseError(CA,{text:v.match,token:this.terminals_[M]||M,line:v.yylineno,loc:k,expected:q})}if(H[0]instanceof Array&&H.length>1)throw Error("Parse Error: multiple actions possible at state: "+Y+", token: "+M);switch(H[0]){case 1:if(E.push(M),I.push(v.yytext),h.push(v.yylloc),E.push(H[1]),M=null,!U){if(f=v.yyleng,p=v.yytext,m=v.yylineno,k=v.yylloc,D>0)D--}else M=U,U=null;break;case 2:if(z=this.productions_[H[1]][1],O.$=I[I.length-z],O._$={first_line:h[h.length-(z||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(z||1)].first_column,last_column:h[h.length-1].last_column},T)O._$.range=[h[h.length-(z||1)].range[0],h[h.length-1].range[1]];if(K=this.performAction.apply(O,[p,f,m,S.yy,H[1],I,h].concat(F)),typeof K<"u")return K;if(z)E=E.slice(0,-1*z*2),I=I.slice(0,-1*z),h=h.slice(0,-1*z);E.push(this.productions_[H[1]][0]),I.push(O.$),h.push(O._$),j=Q[E[E.length-2]][E[E.length-1]],E.push(j);break;case 3:return!0}}return!0},"parse")},s=function(){var g={EOF:1,parseError:y(function(B,E){if(this.yy.parser)this.yy.parser.parseError(B,E);else throw Error(B)},"parseError"),setInput:y(function(C,B){if(this.yy=B||this.yy||{},this._input=C,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var B=C.match(/(?:\r\n?|\n).*/g);if(B)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),C},"input"),unput:y(function(C){var B=C.length,E=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-B),this.offset-=B;var d=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),E.length-1)this.yylineno-=E.length-1;var I=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:E?(E.length===d.length?this.yylloc.first_column:0)+d[d.length-E.length].length-E[0].length:this.yylloc.first_column-B},this.options.ranges)this.yylloc.range=[I[0],I[0]+this.yyleng-B];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(C){this.unput(this.match.slice(C))},"less"),pastInput:y(function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var C=this.match;if(C.length<20)C+=this._input.substr(0,20-C.length);return(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var C=this.pastInput(),B=Array(C.length+1).join("-");return C+this.upcomingInput()+`
|
||
`+B+"^"},"showPosition"),test_match:y(function(C,B){var E,d,I;if(this.options.backtrack_lexer){if(I={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)I.yylloc.range=this.yylloc.range.slice(0)}if(d=C[0].match(/(?:\r\n?|\n).*/g),d)this.yylineno+=d.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(C[0].length),this.matched+=C[0],E=this.performAction.call(this,this.yy,this,B,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(E)return E;else if(this._backtrack){for(var h in I)this[h]=I[h];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var C,B,E,d;if(!this._more)this.yytext="",this.match="";var I=this._currentRules();for(var h=0;h<I.length;h++)if(E=this._input.match(this.rules[I[h]]),E&&(!B||E[0].length>B[0].length)){if(B=E,d=h,this.options.backtrack_lexer)if(C=this.test_match(E,I[h]),C!==!1)return C;else if(this._backtrack){B=!1;continue}else return!1;else if(!this.options.flex)break}if(B){if(C=this.test_match(B,I[d]),C!==!1)return C;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var B=this.next();if(B)return B;else return this.lex()},"lex"),begin:y(function(B){this.conditionStack.push(B)},"begin"),popState:y(function(){var B=this.conditionStack.length-1;if(B>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(B){if(B=this.conditionStack.length-1-Math.abs(B||0),B>=0)return this.conditionStack[B];else return"INITIAL"},"topState"),pushState:y(function(B){this.begin(B)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(B,E,d,I){var h=I;switch(d){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return g}();o.lexer=s;function l(){this.yy={}}return y(l,"Parser"),l.prototype=o,o.Parser=l,new l}();UCA.parser=UCA;sGt=UCA,TCA=[],d7=[],I7=[],lGt=y(function(){TCA.length=0,d7.length=0,S6="",I7.length=0,sr()},"clear"),gGt=y(function(A){S6=A,TCA.push(A)},"addSection"),cGt=y(function(){return TCA},"getSections"),CGt=y(function(){let A=Nue(),e=100,t=0;while(!A&&t<e)A=Nue(),t++;return d7.push(...I7),d7},"getTasks"),BGt=y(function(){let A=[];return d7.forEach((t)=>{if(t.people)A.push(...t.people)}),[...new Set(A)].sort()},"updateActors"),EGt=y(function(A,e){let t=e.substr(1).split(":"),r=0,i=[];if(t.length===1)r=Number(t[0]),i=[];else r=Number(t[0]),i=t[1].split(",");let u=i.map((n)=>n.trim()),a={section:S6,type:S6,people:u,task:A,score:r};I7.push(a)},"addTask"),dGt=y(function(A){let e={section:S6,type:S6,description:A,task:A,classes:[]};d7.push(e)},"addTaskOrg"),Nue=y(function(){let A=y(function(t){return I7[t].processed},"compileTask"),e=!0;for(let[t,r]of I7.entries())A(t),e=e&&r.processed;return e},"compileTasks"),IGt=y(function(){return BGt()},"getActors"),Gue={getConfig:y(()=>OA().journey,"getConfig"),clear:lGt,setDiagramTitle:Mr,getDiagramTitle:xr,setAccTitle:Dr,getAccTitle:vr,setAccDescription:kr,getAccDescription:Fr,addSection:gGt,getSections:cGt,getTasks:CGt,addTask:EGt,addTaskOrg:dGt,getActors:IGt},hGt=y((A)=>`.label {
|
||
font-family: ${A.fontFamily};
|
||
color: ${A.textColor};
|
||
}
|
||
.mouth {
|
||
stroke: #666;
|
||
}
|
||
|
||
line {
|
||
stroke: ${A.textColor}
|
||
}
|
||
|
||
.legend {
|
||
fill: ${A.textColor};
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
.label text {
|
||
fill: #333;
|
||
}
|
||
.label {
|
||
color: ${A.textColor}
|
||
}
|
||
|
||
.face {
|
||
${A.faceColor?`fill: ${A.faceColor}`:"fill: #FFF8DC"};
|
||
stroke: #999;
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.node .label {
|
||
text-align: center;
|
||
}
|
||
.node.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
.arrowheadPath {
|
||
fill: ${A.arrowheadColor};
|
||
}
|
||
|
||
.edgePath .path {
|
||
stroke: ${A.lineColor};
|
||
stroke-width: 1.5px;
|
||
}
|
||
|
||
.flowchart-link {
|
||
stroke: ${A.lineColor};
|
||
fill: none;
|
||
}
|
||
|
||
.edgeLabel {
|
||
background-color: ${A.edgeLabelBackground};
|
||
rect {
|
||
opacity: 0.5;
|
||
}
|
||
text-align: center;
|
||
}
|
||
|
||
.cluster rect {
|
||
}
|
||
|
||
.cluster text {
|
||
fill: ${A.titleColor};
|
||
}
|
||
|
||
div.mermaidTooltip {
|
||
position: absolute;
|
||
text-align: center;
|
||
max-width: 200px;
|
||
padding: 2px;
|
||
font-family: ${A.fontFamily};
|
||
font-size: 12px;
|
||
background: ${A.tertiaryColor};
|
||
border: 1px solid ${A.border2};
|
||
border-radius: 2px;
|
||
pointer-events: none;
|
||
z-index: 100;
|
||
}
|
||
|
||
.task-type-0, .section-type-0 {
|
||
${A.fillType0?`fill: ${A.fillType0}`:""};
|
||
}
|
||
.task-type-1, .section-type-1 {
|
||
${A.fillType0?`fill: ${A.fillType1}`:""};
|
||
}
|
||
.task-type-2, .section-type-2 {
|
||
${A.fillType0?`fill: ${A.fillType2}`:""};
|
||
}
|
||
.task-type-3, .section-type-3 {
|
||
${A.fillType0?`fill: ${A.fillType3}`:""};
|
||
}
|
||
.task-type-4, .section-type-4 {
|
||
${A.fillType0?`fill: ${A.fillType4}`:""};
|
||
}
|
||
.task-type-5, .section-type-5 {
|
||
${A.fillType0?`fill: ${A.fillType5}`:""};
|
||
}
|
||
.task-type-6, .section-type-6 {
|
||
${A.fillType0?`fill: ${A.fillType6}`:""};
|
||
}
|
||
.task-type-7, .section-type-7 {
|
||
${A.fillType0?`fill: ${A.fillType7}`:""};
|
||
}
|
||
|
||
.actor-0 {
|
||
${A.actor0?`fill: ${A.actor0}`:""};
|
||
}
|
||
.actor-1 {
|
||
${A.actor1?`fill: ${A.actor1}`:""};
|
||
}
|
||
.actor-2 {
|
||
${A.actor2?`fill: ${A.actor2}`:""};
|
||
}
|
||
.actor-3 {
|
||
${A.actor3?`fill: ${A.actor3}`:""};
|
||
}
|
||
.actor-4 {
|
||
${A.actor4?`fill: ${A.actor4}`:""};
|
||
}
|
||
.actor-5 {
|
||
${A.actor5?`fill: ${A.actor5}`:""};
|
||
}
|
||
${HE()}
|
||
`,"getStyles"),QGt=hGt,YCA=y(function(A,e){return l3(A,e)},"drawRect"),pGt=y(function(A,e){let r=A.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=A.append("g");i.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function u(o){let s=IC().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);o.append("path").attr("class","mouth").attr("d",s).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}y(u,"smile");function a(o){let s=IC().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);o.append("path").attr("class","mouth").attr("d",s).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}y(a,"sad");function n(o){o.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}if(y(n,"ambivalent"),e.score>3)u(i);else if(e.score<3)a(i);else n(i);return r},"drawFace"),Tue=y(function(A,e){let t=A.append("circle");if(t.attr("cx",e.cx),t.attr("cy",e.cy),t.attr("class","actor-"+e.pos),t.attr("fill",e.fill),t.attr("stroke",e.stroke),t.attr("r",e.r),t.class!==void 0)t.attr("class",t.class);if(e.title!==void 0)t.append("title").text(e.title);return t},"drawCircle"),Yue=y(function(A,e){return SOA(A,e)},"drawText"),fGt=y(function(A,e){function t(i,u,a,n,o){return i+","+u+" "+(i+a)+","+u+" "+(i+a)+","+(u+n-o)+" "+(i+a-o*1.2)+","+(u+n)+" "+i+","+(u+n)}y(t,"genPoints");let r=A.append("polygon");r.attr("points",t(e.x,e.y,50,20,7)),r.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+0.5*e.labelMargin,Yue(A,e)},"drawLabel"),mGt=y(function(A,e,t){let r=A.append("g"),i=J0();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=t.width*e.taskCount+t.diagramMarginX*(e.taskCount-1),i.height=t.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,YCA(r,i),Hue(t)(e.text,r,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},t,e.colour)},"drawSection"),DGt=y(function(A,e,t,r){let i=e.x+t.width/2,u=A.append("g");MCA++;let a=450;u.append("line").attr("id",r+"-task"+MCA).attr("x1",i).attr("y1",e.y).attr("x2",i).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),pGt(u,{cx:i,cy:300+(5-e.score)*30,score:e.score});let n=J0();n.x=e.x,n.y=e.y,n.fill=e.fill,n.width=t.width,n.height=t.height,n.class="task task-type-"+e.num,n.rx=3,n.ry=3,YCA(u,n);let o=e.x+14;e.people.forEach((s)=>{let l=e.actors[s].color,g={cx:o,cy:e.y,r:7,fill:l,stroke:"#000",title:s,pos:e.actors[s].position};Tue(u,g),o+=10}),Hue(t)(e.task,u,n.x,n.y,n.width,n.height,{class:"task"},t,e.colour)},"drawTask"),yGt=y(function(A,e){DY(A,e)},"drawBackgroundRect"),Hue=function(){function A(i,u,a,n,o,s,l,g){let C=u.append("text").attr("x",a+o/2).attr("y",n+s/2+5).style("font-color",g).style("text-anchor","middle").text(i);r(C,l)}y(A,"byText");function e(i,u,a,n,o,s,l,g,C){let{taskFontSize:B,taskFontFamily:E}=g,d=i.split(/<br\s*\/?>/gi);for(let I=0;I<d.length;I++){let h=I*B-B*(d.length-1)/2,Q=u.append("text").attr("x",a+o/2).attr("y",n).attr("fill",C).style("text-anchor","middle").style("font-size",B).style("font-family",E);Q.append("tspan").attr("x",a+o/2).attr("dy",h).text(d[I]),Q.attr("y",n+s/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(Q,l)}}y(e,"byTspan");function t(i,u,a,n,o,s,l,g){let C=u.append("switch"),E=C.append("foreignObject").attr("x",a).attr("y",n).attr("width",o).attr("height",s).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");E.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,C,a,n,o,s,l,g),r(E,l)}y(t,"byFo");function r(i,u){for(let a in u)if(a in u)i.attr(a,u[a])}return y(r,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?t:i.textPlacement==="old"?A:e}}(),wGt=y(function(A,e){MCA=-1,A.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics"),h7={drawRect:YCA,drawCircle:Tue,drawSection:mGt,drawText:Yue,drawLabel:fGt,drawTask:DGt,drawBackgroundRect:yGt,initGraphics:wGt},bGt=y(function(A){Object.keys(A).forEach(function(t){qC[t]=A[t]})},"setConf"),mh={};y(Kue,"drawActorLegend");qC=OA().journey,vGt=y(function(A,e,t,r){let i=OA(),u=i.journey.titleColor,a=i.journey.titleFontSize,n=i.journey.titleFontFamily,o=i.securityLevel,s;if(o==="sandbox")s=Qe("#i"+e);let l=o==="sandbox"?Qe(s.nodes()[0].contentDocument.body):Qe("body");wc.init();let g=l.select("#"+e);h7.initGraphics(g,e);let C=r.db.getTasks(),B=r.db.getDiagramTitle(),E=r.db.getActors();for(let m in mh)delete mh[m];let d=0;E.forEach((m)=>{mh[m]={color:qC.actorColours[d%qC.actorColours.length],position:d},d++}),Kue(g),h1=qC.leftMargin+JO,wc.insert(0,0,h1,Object.keys(mh).length*50),kGt(g,C,0,e);let I=wc.getBounds();if(B)g.append("text").text(B).attr("x",h1).attr("font-size",a).attr("font-weight","bold").attr("y",25).attr("fill",u).attr("font-family",n);let h=I.stopy-I.starty+2*qC.diagramMarginY,Q=h1+I.stopx+2*qC.diagramMarginX;jr(g,h,Q,qC.useMaxWidth),g.append("line").attr("x1",h1).attr("y1",qC.height*4).attr("x2",Q-h1-4).attr("y2",qC.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#"+e+"-arrowhead)");let p=B?70:0;g.attr("viewBox",`${I.startx} -25 ${Q} ${h+p}`),g.attr("preserveAspectRatio","xMinYMin meet"),g.attr("height",h+p+25)},"draw"),wc={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:y(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:y(function(A,e,t,r){if(A[e]===void 0)A[e]=t;else A[e]=r(t,A[e])},"updateVal"),updateBounds:y(function(A,e,t,r){let i=OA().journey,u=this,a=0;function n(o){return y(function(l){a++;let g=u.sequenceItems.length-a+1;if(u.updateVal(l,"starty",e-g*i.boxMargin,Math.min),u.updateVal(l,"stopy",r+g*i.boxMargin,Math.max),u.updateVal(wc.data,"startx",A-g*i.boxMargin,Math.min),u.updateVal(wc.data,"stopx",t+g*i.boxMargin,Math.max),o!=="activation")u.updateVal(l,"startx",A-g*i.boxMargin,Math.min),u.updateVal(l,"stopx",t+g*i.boxMargin,Math.max),u.updateVal(wc.data,"starty",e-g*i.boxMargin,Math.min),u.updateVal(wc.data,"stopy",r+g*i.boxMargin,Math.max)},"updateItemBounds")}y(n,"updateFn"),this.sequenceItems.forEach(n())},"updateBounds"),insert:y(function(A,e,t,r){let i=Math.min(A,t),u=Math.max(A,t),a=Math.min(e,r),n=Math.max(e,r);this.updateVal(wc.data,"startx",i,Math.min),this.updateVal(wc.data,"starty",a,Math.min),this.updateVal(wc.data,"stopx",u,Math.max),this.updateVal(wc.data,"stopy",n,Math.max),this.updateBounds(i,a,u,n)},"insert"),bumpVerticalPos:y(function(A){this.verticalPos=this.verticalPos+A,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:y(function(){return this.verticalPos},"getVerticalPos"),getBounds:y(function(){return this.data},"getBounds")},GCA=qC.sectionFills,Uue=qC.sectionColours,kGt=y(function(A,e,t,r){let i=OA().journey,u="",a=i.height*2+i.diagramMarginY,n=t+a,o=0,s="#CCC",l="black",g=0;for(let[C,B]of e.entries()){if(u!==B.section){s=GCA[o%GCA.length],g=o%GCA.length,l=Uue[o%Uue.length];let d=0,I=B.section;for(let Q=C;Q<e.length;Q++)if(e[Q].section==I)d=d+1;else break;let h={x:C*i.taskMargin+C*i.width+h1,y:50,text:B.section,fill:s,num:g,colour:l,taskCount:d};h7.drawSection(A,h,i),u=B.section,o++}let E=B.people.reduce((d,I)=>{if(mh[I])d[I]=mh[I];return d},{});B.x=C*i.taskMargin+C*i.width+h1,B.y=n,B.width=i.diagramMarginX,B.height=i.diagramMarginY,B.colour=l,B.fill=s,B.num=g,B.actors=E,h7.drawTask(A,B,i,r),wc.insert(B.x,B.y,B.x+B.width+i.taskMargin,450)}},"drawTasks"),Mue={setConf:bGt,draw:vGt},Jue={parser:sGt,db:Gue,renderer:Mue,styles:QGt,init:y((A)=>{Mue.setConf(A.journey),Gue.clear()},"init")}});function _CA(A,e){A.each(function(){var t=Qe(this),r=t.text().split(/(\s+|<br>)/).reverse(),i,u=[],a=1.1,n=t.attr("y"),o=parseFloat(t.attr("dy")),s=t.text(null).append("tspan").attr("x",0).attr("y",n).attr("dy",o+"em");for(let l=0;l<r.length;l++)if(i=r[r.length-1-l],u.push(i),s.text(u.join(" ").trim()),s.node().getComputedTextLength()>e||i==="<br>"){if(u.pop(),s.text(u.join(" ").trim()),i==="<br>")u=[""];else u=[i];s=t.append("tspan").attr("x",0).attr("y",n).attr("dy",a+"em").text(i)}})}var HCA,FGt,Zue,L6="",Vue=0,JCA="LR",OCA,OO,R6,jue,Xue,$ue,Aae,eae,tae,rae,iae,uae,aae,Pue,xGt,nae=0,PO,SGt,LGt,oae,RGt,NGt,KCA=-1,GGt,UGt,MGt,PCA,sae,TGt,YGt,HGt,KGt,Sl,JGt,_ue,OGt,PGt,_O=200,Dh=5,_Gt,WCA,WGt,lae=10,qGt=0,Wue=20,gae=20,que=30,cae=50,zGt,zue,ZGt,VGt,jGt,XGt,$Gt,AUt,eUt,Cae;var Bae=P(()=>{cn();ai();rr();ir();Nt();Pr();Pr();kn();HCA=function(){var A=y(function(C,B,E,d){for(E=E||{},d=C.length;d--;E[C[d]]=B);return E},"o"),e=[6,11,13,14,15,17,19,20,23,24],t=[1,12],r=[1,13],i=[1,14],u=[1,15],a=[1,16],n=[1,19],o=[1,20],s={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline_header:4,document:5,EOF:6,timeline:7,timeline_lr:8,timeline_td:9,line:10,SPACE:11,statement:12,NEWLINE:13,title:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,period_statement:21,event_statement:22,period:23,event:24,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",7:"timeline",8:"timeline_lr",9:"timeline_td",11:"SPACE",13:"NEWLINE",14:"title",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",23:"period",24:"event"},productions_:[0,[3,3],[4,1],[4,1],[4,1],[5,0],[5,2],[10,2],[10,1],[10,1],[10,1],[12,1],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[21,1],[22,1]],performAction:y(function(B,E,d,I,h,Q,p){var m=Q.length-1;switch(h){case 1:return Q[m-1];case 3:I.setDirection("LR");break;case 4:I.setDirection("TD");break;case 5:this.$=[];break;case 6:Q[m-1].push(Q[m]),this.$=Q[m-1];break;case 7:case 8:this.$=Q[m];break;case 9:case 10:this.$=[];break;case 11:I.getCommonDb().setDiagramTitle(Q[m].substr(6)),this.$=Q[m].substr(6);break;case 12:this.$=Q[m].trim(),I.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=Q[m].trim(),I.getCommonDb().setAccDescription(this.$);break;case 15:I.addSection(Q[m].substr(8)),this.$=Q[m].substr(8);break;case 18:I.addTask(Q[m],0,""),this.$=Q[m];break;case 19:I.addEvent(Q[m].substr(2)),this.$=Q[m];break}},"anonymous"),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},A(e,[2,5],{5:6}),A(e,[2,2]),A(e,[2,3]),A(e,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:t,15:r,17:i,19:u,20:a,21:17,22:18,23:n,24:o},A(e,[2,10],{1:[2,1]}),A(e,[2,6]),{12:21,14:t,15:r,17:i,19:u,20:a,21:17,22:18,23:n,24:o},A(e,[2,8]),A(e,[2,9]),A(e,[2,11]),{16:[1,22]},{18:[1,23]},A(e,[2,14]),A(e,[2,15]),A(e,[2,16]),A(e,[2,17]),A(e,[2,18]),A(e,[2,19]),A(e,[2,7]),A(e,[2,12]),A(e,[2,13])],defaultActions:{},parseError:y(function(B,E){if(E.recoverable)this.trace(B);else{var d=Error(B);throw d.hash=E,d}},"parseError"),parse:y(function(B){var E=this,d=[0],I=[],h=[null],Q=[],p=this.table,m="",f=0,D=0,w=0,b=2,F=1,v=Q.slice.call(arguments,1),S=Object.create(this.lexer),x={yy:{}};for(var k in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,k))x.yy[k]=this.yy[k];if(S.setInput(B,x.yy),x.yy.lexer=S,x.yy.parser=this,typeof S.yylloc>"u")S.yylloc={};var T=S.yylloc;Q.push(T);var R=S.options&&S.options.ranges;if(typeof x.yy.parseError==="function")this.parseError=x.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function L(lA){d.length=d.length-2*lA,h.length=h.length-lA,Q.length=Q.length-lA}y(L,"popStack");function M(){var lA=I.pop()||S.lex()||F;if(typeof lA!=="number"){if(lA instanceof Array)I=lA,lA=I.pop();lA=E.symbols_[lA]||lA}return lA}y(M,"lex");var U,Y,H,J,K,O,_={},z,j,q,CA;while(!0){if(H=d[d.length-1],this.defaultActions[H])J=this.defaultActions[H];else{if(U===null||typeof U>"u")U=M();J=p[H]&&p[H][U]}if(typeof J>"u"||!J.length||!J[0]){var tA="";CA=[];for(z in p[H])if(this.terminals_[z]&&z>b)CA.push("'"+this.terminals_[z]+"'");if(S.showPosition)tA="Parse error on line "+(f+1)+`:
|
||
`+S.showPosition()+`
|
||
Expecting `+CA.join(", ")+", got '"+(this.terminals_[U]||U)+"'";else tA="Parse error on line "+(f+1)+": Unexpected "+(U==F?"end of input":"'"+(this.terminals_[U]||U)+"'");this.parseError(tA,{text:S.match,token:this.terminals_[U]||U,line:S.yylineno,loc:T,expected:CA})}if(J[0]instanceof Array&&J.length>1)throw Error("Parse Error: multiple actions possible at state: "+H+", token: "+U);switch(J[0]){case 1:if(d.push(U),h.push(S.yytext),Q.push(S.yylloc),d.push(J[1]),U=null,!Y){if(D=S.yyleng,m=S.yytext,f=S.yylineno,T=S.yylloc,w>0)w--}else U=Y,Y=null;break;case 2:if(j=this.productions_[J[1]][1],_.$=h[h.length-j],_._$={first_line:Q[Q.length-(j||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(j||1)].first_column,last_column:Q[Q.length-1].last_column},R)_._$.range=[Q[Q.length-(j||1)].range[0],Q[Q.length-1].range[1]];if(O=this.performAction.apply(_,[m,D,f,x.yy,J[1],h,Q].concat(v)),typeof O<"u")return O;if(j)d=d.slice(0,-1*j*2),h=h.slice(0,-1*j),Q=Q.slice(0,-1*j);d.push(this.productions_[J[1]][0]),h.push(_.$),Q.push(_._$),q=p[d[d.length-2]][d[d.length-1]],d.push(q);break;case 3:return!0}}return!0},"parse")},l=function(){var C={EOF:1,parseError:y(function(E,d){if(this.yy.parser)this.yy.parser.parseError(E,d);else throw Error(E)},"parseError"),setInput:y(function(B,E){if(this.yy=E||this.yy||{},this._input=B,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var B=this._input[0];this.yytext+=B,this.yyleng++,this.offset++,this.match+=B,this.matched+=B;var E=B.match(/(?:\r\n?|\n).*/g);if(E)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),B},"input"),unput:y(function(B){var E=B.length,d=B.split(/(?:\r\n?|\n)/g);this._input=B+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var I=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),d.length-1)this.yylineno-=d.length-1;var h=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:d?(d.length===I.length?this.yylloc.first_column:0)+I[I.length-d.length].length-d[0].length:this.yylloc.first_column-E},this.options.ranges)this.yylloc.range=[h[0],h[0]+this.yyleng-E];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(B){this.unput(this.match.slice(B))},"less"),pastInput:y(function(){var B=this.matched.substr(0,this.matched.length-this.match.length);return(B.length>20?"...":"")+B.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var B=this.match;if(B.length<20)B+=this._input.substr(0,20-B.length);return(B.substr(0,20)+(B.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var B=this.pastInput(),E=Array(B.length+1).join("-");return B+this.upcomingInput()+`
|
||
`+E+"^"},"showPosition"),test_match:y(function(B,E){var d,I,h;if(this.options.backtrack_lexer){if(h={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)h.yylloc.range=this.yylloc.range.slice(0)}if(I=B[0].match(/(?:\r\n?|\n).*/g),I)this.yylineno+=I.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:I?I[I.length-1].length-I[I.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+B[0].length},this.yytext+=B[0],this.match+=B[0],this.matches=B,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(B[0].length),this.matched+=B[0],d=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(d)return d;else if(this._backtrack){for(var Q in h)this[Q]=h[Q];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var B,E,d,I;if(!this._more)this.yytext="",this.match="";var h=this._currentRules();for(var Q=0;Q<h.length;Q++)if(d=this._input.match(this.rules[h[Q]]),d&&(!E||d[0].length>E[0].length)){if(E=d,I=Q,this.options.backtrack_lexer)if(B=this.test_match(d,h[Q]),B!==!1)return B;else if(this._backtrack){E=!1;continue}else return!1;else if(!this.options.flex)break}if(E){if(B=this.test_match(E,h[I]),B!==!1)return B;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var E=this.next();if(E)return E;else return this.lex()},"lex"),begin:y(function(E){this.conditionStack.push(E)},"begin"),popState:y(function(){var E=this.conditionStack.length-1;if(E>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(E){if(E=this.conditionStack.length-1-Math.abs(E||0),E>=0)return this.conditionStack[E];else return"INITIAL"},"topState"),pushState:y(function(E){this.begin(E)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(E,d,I,h){var Q=h;switch(I){case 0:break;case 1:break;case 2:return 13;case 3:break;case 4:break;case 5:return 8;case 6:return 9;case 7:return 7;case 8:return 14;case 9:return this.begin("acc_title"),15;break;case 10:return this.popState(),"acc_title_value";break;case 11:return this.begin("acc_descr"),17;break;case 12:return this.popState(),"acc_descr_value";break;case 13:this.begin("acc_descr_multiline");break;case 14:this.popState();break;case 15:return"acc_descr_multiline_value";case 16:return 20;case 17:return 24;case 18:return 23;case 19:return 6;case 20:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline[ \t]+LR\b)/i,/^(?:timeline[ \t]+TD\b)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[14,15],inclusive:!1},acc_descr:{rules:[12],inclusive:!1},acc_title:{rules:[10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,13,16,17,18,19,20],inclusive:!0}}};return C}();s.lexer=l;function g(){this.yy={}}return y(g,"Parser"),g.prototype=s,s.Parser=g,new g}();HCA.parser=HCA;FGt=HCA,Zue={};gQ(Zue,{addEvent:()=>uae,addSection:()=>eae,addTask:()=>iae,addTaskOrg:()=>aae,clear:()=>Xue,default:()=>xGt,getCommonDb:()=>jue,getDirection:()=>Aae,getSections:()=>tae,getTasks:()=>rae,setDirection:()=>$ue});OCA=[],OO=[],R6=[],jue=y(()=>VR,"getCommonDb"),Xue=y(function(){OCA.length=0,OO.length=0,L6="",R6.length=0,JCA="LR",sr()},"clear"),$ue=y(function(A){JCA=A},"setDirection"),Aae=y(function(){return JCA},"getDirection"),eae=y(function(A){L6=A,OCA.push(A)},"addSection"),tae=y(function(){return OCA},"getSections"),rae=y(function(){let A=Pue(),e=100,t=0;while(!A&&t<e)A=Pue(),t++;return OO.push(...R6),OO},"getTasks"),iae=y(function(A,e,t){let r={id:Vue++,section:L6,type:L6,task:A,score:e?e:0,events:t?[t]:[]};R6.push(r)},"addTask"),uae=y(function(A){R6.find((t)=>t.id===Vue-1).events.push(A)},"addEvent"),aae=y(function(A){let e={section:L6,type:L6,description:A,task:A,classes:[]};OO.push(e)},"addTaskOrg"),Pue=y(function(){let A=y(function(t){return R6[t].processed},"compileTask"),e=!0;for(let[t,r]of R6.entries())A(t),e=e&&r.processed;return e},"compileTasks"),xGt={clear:Xue,getCommonDb:jue,getDirection:Aae,setDirection:$ue,addSection:eae,getSections:tae,getTasks:rae,addTask:iae,addTaskOrg:aae,addEvent:uae},PO=y(function(A,e){let t=A.append("rect");if(t.attr("x",e.x),t.attr("y",e.y),t.attr("fill",e.fill),t.attr("stroke",e.stroke),t.attr("width",e.width),t.attr("height",e.height),t.attr("rx",e.rx),t.attr("ry",e.ry),e.class!==void 0)t.attr("class",e.class);return t},"drawRect"),SGt=y(function(A,e){let r=A.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=A.append("g");i.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function u(o){let s=IC().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);o.append("path").attr("class","mouth").attr("d",s).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}y(u,"smile");function a(o){let s=IC().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);o.append("path").attr("class","mouth").attr("d",s).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}y(a,"sad");function n(o){o.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}if(y(n,"ambivalent"),e.score>3)u(i);else if(e.score<3)a(i);else n(i);return r},"drawFace"),LGt=y(function(A,e){let t=A.append("circle");if(t.attr("cx",e.cx),t.attr("cy",e.cy),t.attr("class","actor-"+e.pos),t.attr("fill",e.fill),t.attr("stroke",e.stroke),t.attr("r",e.r),t.class!==void 0)t.attr("class",t.class);if(e.title!==void 0)t.append("title").text(e.title);return t},"drawCircle"),oae=y(function(A,e){let t=e.text.replace(/<br\s*\/?>/gi," "),r=A.append("text");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("class","legend"),r.style("text-anchor",e.anchor),e.class!==void 0)r.attr("class",e.class);let i=r.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(t),r},"drawText"),RGt=y(function(A,e){function t(i,u,a,n,o){return i+","+u+" "+(i+a)+","+u+" "+(i+a)+","+(u+n-o)+" "+(i+a-o*1.2)+","+(u+n)+" "+i+","+(u+n)}y(t,"genPoints");let r=A.append("polygon");r.attr("points",t(e.x,e.y,50,20,7)),r.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+0.5*e.labelMargin,oae(A,e)},"drawLabel"),NGt=y(function(A,e,t){let r=A.append("g"),i=PCA();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=t.width,i.height=t.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,PO(r,i),sae(t)(e.text,r,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},t,e.colour)},"drawSection"),GGt=y(function(A,e,t,r){let i=e.x+t.width/2,u=A.append("g");KCA++;let a=450;u.append("line").attr("id",r+"-task"+KCA).attr("x1",i).attr("y1",e.y).attr("x2",i).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),SGt(u,{cx:i,cy:300+(5-e.score)*30,score:e.score});let n=PCA();n.x=e.x,n.y=e.y,n.fill=e.fill,n.width=t.width,n.height=t.height,n.class="task task-type-"+e.num,n.rx=3,n.ry=3,PO(u,n),sae(t)(e.task,u,n.x,n.y,n.width,n.height,{class:"task"},t,e.colour)},"drawTask"),UGt=y(function(A,e){PO(A,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),MGt=y(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),PCA=y(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),sae=function(){function A(i,u,a,n,o,s,l,g){let C=u.append("text").attr("x",a+o/2).attr("y",n+s/2+5).style("font-color",g).style("text-anchor","middle").text(i);r(C,l)}y(A,"byText");function e(i,u,a,n,o,s,l,g,C){let{taskFontSize:B,taskFontFamily:E}=g,d=i.split(/<br\s*\/?>/gi);for(let I=0;I<d.length;I++){let h=I*B-B*(d.length-1)/2,Q=u.append("text").attr("x",a+o/2).attr("y",n).attr("fill",C).style("text-anchor","middle").style("font-size",B).style("font-family",E);Q.append("tspan").attr("x",a+o/2).attr("dy",h).text(d[I]),Q.attr("y",n+s/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(Q,l)}}y(e,"byTspan");function t(i,u,a,n,o,s,l,g){let C=u.append("switch"),E=C.append("foreignObject").attr("x",a).attr("y",n).attr("width",o).attr("height",s).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");E.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,C,a,n,o,s,l,g),r(E,l)}y(t,"byFo");function r(i,u){for(let a in u)if(a in u)i.attr(a,u[a])}return y(r,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?t:i.textPlacement==="old"?A:e}}(),TGt=y(function(A,e){nae=0,KCA=-1,A.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics");y(_CA,"wrap");YGt=y(function(A,e,t,r,i,u=!1){let{theme:a,look:n}=r,o=a?.includes("redux"),s=r?.themeVariables?.THEME_COLOR_LIMIT??12,l=t%s-1,g=A.append("g");e.section=l,g.attr("class",(e.class?e.class+" ":"")+"timeline-node "+("section-"+l));let C=g.append("g"),B=g.append("g"),d=B.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(_CA,e.width).node().getBBox(),I=r.fontSize?.replace?r.fontSize.replace("px",""):r.fontSize;if(e.height=d.height+I*1.1*0.5+e.padding,e.height=Math.max(e.height,e.maxHeight),e.width=e.width+2*e.padding,B.attr("transform","translate("+e.width/2+", "+e.padding/2+")"),o)B.attr("transform",`translate(${e.width/2}, ${u?e.padding/2+3:e.padding})`);if(KGt(C,e,l,i,r),n==="neo"){if(g.attr("data-look","neo"),o){let h=a.includes("dark"),Q=A.node()?.ownerSVGElement??A.node(),p=Qe(Q),m=p.attr("id")??"",f=m?`${m}-drop-shadow`:"drop-shadow";if(p.select(`#${f}`).empty()){let D=p.select("defs");(D.empty()?p.append("defs"):D).append("filter").attr("id",f).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity",h?"0.2":"0.06").attr("flood-color",h?"#FFFFFF":"#000000")}}}return e},"drawNode"),HGt=y(function(A,e,t){let r=A.append("g"),u=r.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(_CA,e.width).node().getBBox(),a=t.fontSize?.replace?t.fontSize.replace("px",""):t.fontSize;return r.remove(),u.height+a*1.1*0.5+e.padding},"getVirtualNodeHeight"),KGt=y(function(A,e,t,r,i){let{theme:u}=i,a=u?.includes("redux")?0:5,n=5,o=a>0?`M0 ${e.height-5} v${-e.height+10} q0,-${a},${a},-${a} h${e.width-10} q${a},0,${a},${a} v${e.height-5} H0 Z`:`M0 ${e.height-5} v${-(e.height-5)} h${e.width} v${e.height} H0 Z`;if(A.append("path").attr("id",r+"-node-"+nae++).attr("class","node-bkg node-"+e.type).attr("d",o),!u?.includes("redux"))A.append("line").attr("class","node-line-"+t).attr("x1",0).attr("y1",e.height).attr("x2",e.width).attr("y2",e.height)},"defaultBkg"),Sl={drawRect:PO,drawCircle:LGt,drawSection:NGt,drawText:oae,drawLabel:RGt,drawTask:GGt,drawBackgroundRect:UGt,getTextObj:MGt,getNoteRect:PCA,initGraphics:TGt,drawNode:YGt,getVirtualNodeHeight:HGt},JGt=y(function(A,e,t,r){let i=OA(),{look:u,theme:a,themeVariables:n}=i,{useGradient:o,gradientStart:s,gradientStop:l}=n,g=i.timeline?.leftMargin??50;sA.debug("timeline",r.db);let C=i.securityLevel,B;if(C==="sandbox")B=Qe("#i"+e);let d=(C==="sandbox"?Qe(B.nodes()[0].contentDocument.body):Qe("body")).select("#"+e);d.append("g");let I=r.db.getTasks(),h=r.db.getCommonDb().getDiagramTitle();sA.debug("task",I),Sl.initGraphics(d,e);let Q=r.db.getSections();sA.debug("sections",Q);let p=0,m=0,f=0,D=0,w=50+g,b=50;D=50;let F=0,v=!0;Q.forEach(function(R){let L={number:F,descr:R,section:F,width:150,padding:20,maxHeight:p},M=Sl.getVirtualNodeHeight(d,L,i);sA.debug("sectionHeight before draw",M),p=Math.max(p,M+20)});let S=0,x=0;sA.debug("tasks.length",I.length);for(let[R,L]of I.entries()){let M={number:R,descr:L,section:L.section,width:150,padding:20,maxHeight:m},U=Sl.getVirtualNodeHeight(d,M,i);sA.debug("taskHeight before draw",U),m=Math.max(m,U+20),S=Math.max(S,L.events.length);let Y=0;for(let H of L.events){let J={descr:H,section:L.section,number:L.section,width:150,padding:20,maxHeight:50};Y+=Sl.getVirtualNodeHeight(d,J,i)}if(L.events.length>0)Y+=(L.events.length-1)*10;x=Math.max(x,Y)}if(sA.debug("maxSectionHeight before draw",p),sA.debug("maxTaskHeight before draw",m),Q&&Q.length>0)Q.forEach((R)=>{let L=I.filter((H)=>H.section===R),M={number:F,descr:R,section:F,width:200*Math.max(L.length,1)-50,padding:20,maxHeight:p};sA.debug("sectionNode",M);let U=d.append("g"),Y=Sl.drawNode(U,M,F,i,e);if(sA.debug("sectionNode output",Y),U.attr("transform",`translate(${w}, ${D})`),b+=p+50,L.length>0)_ue(d,L,F,w,b,m,i,S,x,p,!1,e);w+=200*Math.max(L.length,1),b=D,F++});else v=!1,_ue(d,I,F,w,b,m,i,S,x,p,!0,e);let k=d.node().getBBox();if(sA.debug("bounds",k),h)d.append("text").text(h).attr("x",u==="neo"?k.x*2+g:k.width/2-g).attr("font-size","4ex").attr("font-weight","bold").attr("y",20);if(f=v?p+m+150:m+100,d.append("g").attr("class","lineWrapper").append("line").attr("x1",g).attr("y1",f).attr("x2",k.width+3*g).attr("y2",f).attr("stroke-width",4).attr("stroke","black").attr("marker-end",`url(#${e}-arrowhead)`),u==="neo"&&o&&a!=="neutral"){let R=d.select("defs"),M=(R.empty()?d.append("defs"):R).append("linearGradient").attr("id",d.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");M.append("stop").attr("offset","0%").attr("stop-color",s).attr("stop-opacity",1),M.append("stop").attr("offset","100%").attr("stop-color",l).attr("stop-opacity",1)}rE(void 0,d,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),_ue=y(function(A,e,t,r,i,u,a,n,o,s,l,g){for(let C of e){let B={descr:C.task,section:t,number:t,width:150,padding:20,maxHeight:u};sA.debug("taskNode",B);let E=A.append("g").attr("class","taskWrapper"),I=Sl.drawNode(E,B,t,a,g).height;if(sA.debug("taskHeight after draw",I),E.attr("transform",`translate(${r}, ${i})`),u=Math.max(u,I),C.events){let h=A.append("g").attr("class","lineWrapper"),Q=u;i+=100,Q=Q+OGt(A,C.events,t,r,i,a,g),i-=100,h.append("line").attr("x1",r+95).attr("y1",i+u).attr("x2",r+95).attr("y2",i+u+100+o+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end",`url(#${g}-arrowhead)`).attr("stroke-dasharray","5,5")}if(r=r+200,l&&!a.timeline?.disableMulticolor)t++}i=i-10},"drawTasks"),OGt=y(function(A,e,t,r,i,u,a){let n=0,o=i;i=i+100;for(let s of e){let l={descr:s,section:t,number:t,width:150,padding:20,maxHeight:50};sA.debug("eventNode",l);let g=A.append("g").attr("class","eventWrapper"),B=Sl.drawNode(g,l,t,u,a,!0).height;n=n+B,g.attr("transform",`translate(${r}, ${i})`),i=i+10+B}return i=o,n},"drawEvents"),PGt={setConf:y(()=>{},"setConf"),draw:JGt},_Gt=_O+Dh*2,WCA=_O+100,WGt=WCA+Dh*2,zGt=y(function(A,e,t,r){let i=OA(),u=i.timeline?.leftMargin??50;sA.debug("timeline",r.db);let a=zi(e);a.append("g");let n=r.db.getTasks(),o=r.db.getCommonDb().getDiagramTitle();sA.debug("task",n),Sl.initGraphics(a);let s=r.db.getSections();sA.debug("sections",s);let l=0,g=0,C=50+u,B=50,E=B,d=C,I=_Gt+gae,h=WGt+cae,Q=d+I,p=0,m=s&&s.length>0,f=m?Q:C+I,D=Math.max(50,I+h-Dh*2);s.forEach(function(R){let L={number:p,descr:R,section:p,width:D,padding:Dh,maxHeight:l},M=Sl.getVirtualNodeHeight(a,L,i);sA.debug("sectionHeight before draw",M),l=Math.max(l,M)});let w=0;sA.debug("tasks.length",n.length);for(let[R,L]of n.entries()){let M={number:R,descr:L,section:L.section,width:_O,padding:Dh,maxHeight:g},U=Sl.getVirtualNodeHeight(a,M,i);sA.debug("taskHeight before draw",U),g=Math.max(g,U);let Y=0;for(let H of L.events){let J={descr:H,section:L.section,number:L.section,width:WCA,padding:Dh,maxHeight:50};Y+=Sl.getVirtualNodeHeight(a,J,i)}if(L.events.length>0)Y+=(L.events.length-1)*lae;w=Math.max(w,Y)+qGt}sA.debug("maxSectionHeight before draw",l),sA.debug("maxTaskHeight before draw",g);let F=Math.max(g,w)+que;if(m)s.forEach((R)=>{let L=n.filter((_)=>_.section===R),M={number:p,descr:R,section:p,width:D,padding:Dh,maxHeight:l};sA.debug("sectionNode",M);let U=a.append("g"),Y=Sl.drawNode(U,M,p,i);sA.debug("sectionNode output",Y);let H=f-I;U.attr("transform",`translate(${H}, ${B})`);let J=B+Y.height+Wue;if(L.length>0)zue(a,L,p,f,J,g,i,F,!1);let K=L.length,O=Y.height+Wue+F*Math.max(K,1)-(K>0?que*2:0);B+=O,p++});else zue(a,n,p,f,B,g,i,F,!0);let v=a.node()?.getBBox();if(!v)throw Error("bbox not found");if(sA.debug("bounds",v),o){if(a.append("text").text(o).attr("x",v.width/2-u).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),v=a.node()?.getBBox(),!v)throw Error("bbox not found");sA.debug("bounds after title",v)}let[S]=al(i.fontSize),x=(S??16)*2,k=(S??16)*0.5+20,T=a.append("g").attr("class","lineWrapper");T.append("line").attr("x1",f).attr("y1",E-x).attr("x2",f).attr("y2",v.y+v.height+k).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),T.lower(),rE(void 0,a,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),zue=y(function(A,e,t,r,i,u,a,n,o){for(let s of e){let l={descr:s.task,section:t,number:t,width:_O,padding:Dh,maxHeight:u};sA.debug("taskNode",l);let g=A.append("g").attr("class","taskWrapper"),C=Sl.drawNode(g,l,t,a),B=C.height;sA.debug("taskHeight after draw",B);let E=r-gae-C.width;if(g.attr("transform",`translate(${E}, ${i})`),u=Math.max(u,B),s.events&&s.events.length>0){let d=i,I=r+cae;ZGt(A,s.events,t,r,I,d,a)}if(i=i+n,o&&!a.timeline?.disableMulticolor)t++}},"drawTasks"),ZGt=y(function(A,e,t,r,i,u,a){let n=u;for(let o of e){let s={descr:o,section:t,number:t,width:WCA,padding:Dh,maxHeight:0};sA.debug("eventNode",s);let l=A.append("g").attr("class","eventWrapper"),C=Sl.drawNode(l,s,t,a).height;l.attr("transform",`translate(${i}, ${n})`);let B=A.append("g").attr("class","lineWrapper"),E=n+C/2;B.append("line").attr("x1",r).attr("y1",E).attr("x2",i).attr("y2",E).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5"),n=n+C+lae}return n-u},"drawEvents"),VGt={setConf:y(()=>{},"setConf"),draw:zGt},jGt=y((A)=>{let{theme:e}=st(),t=e?.includes("dark"),r=e?.includes("color"),i=A.svgId?.replace(/^#/,"")??"",u=i?`url(#${i}-drop-shadow)`:A.dropShadow??"none",a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++){let o=`${17-3*n}`,s=r?A.borderColorArray[n]:A.mainBkg,l=r?A.borderColorArray[n]:A.nodeBorder;a+=`
|
||
.section-${n-1} rect,
|
||
.section-${n-1} path,
|
||
.section-${n-1} circle {
|
||
fill: ${t&&r?A.mainBkg:s};
|
||
stroke: ${l};
|
||
stroke-width: ${A.strokeWidth};
|
||
filter: ${u};
|
||
}
|
||
|
||
.section-${n-1} text {
|
||
fill: ${A.nodeBorder};
|
||
font-weight: ${A.fontWeight}
|
||
}
|
||
|
||
.node-icon-${n-1} {
|
||
font-size: 40px;
|
||
color: ${A["cScaleLabel"+n]};
|
||
}
|
||
|
||
.section-edge-${n-1} {
|
||
stroke: ${A["cScale"+n]};
|
||
}
|
||
|
||
.edge-depth-${n-1} {
|
||
stroke-width: ${o};
|
||
}
|
||
|
||
.section-${n-1} line {
|
||
stroke: ${A["cScaleInv"+n]};
|
||
stroke-width: 3;
|
||
}
|
||
|
||
.lineWrapper line {
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width:${A.strokeWidth}
|
||
}
|
||
|
||
.disabled,
|
||
.disabled circle,
|
||
.disabled text {
|
||
fill: ${A.tertiaryColor??"lightgray"};
|
||
}
|
||
|
||
.disabled text {
|
||
fill: ${A.clusterBorder??"#efefef"};
|
||
}
|
||
`}return a},"genReduxSections"),XGt=y((A)=>{let e="";for(let t=0;t<A.THEME_COLOR_LIMIT;t++)if(A["lineColor"+t]=A["lineColor"+t]||A["cScaleInv"+t],uu(A["lineColor"+t]))A["lineColor"+t]=Ie(A["lineColor"+t],20);else A["lineColor"+t]=he(A["lineColor"+t],20);for(let t=0;t<A.THEME_COLOR_LIMIT;t++){let r=""+(17-3*t);e+=`
|
||
.section-${t-1} rect, .section-${t-1} path, .section-${t-1} circle, .section-${t-1} path {
|
||
fill: ${A["cScale"+t]};
|
||
}
|
||
.section-${t-1} text {
|
||
fill: ${A["cScaleLabel"+t]};
|
||
}
|
||
.node-icon-${t-1} {
|
||
font-size: 40px;
|
||
color: ${A["cScaleLabel"+t]};
|
||
}
|
||
.section-edge-${t-1}{
|
||
stroke: ${A["cScale"+t]};
|
||
}
|
||
.edge-depth-${t-1}{
|
||
stroke-width: ${r};
|
||
}
|
||
.section-${t-1} line {
|
||
stroke: ${A["cScaleInv"+t]} ;
|
||
stroke-width: 3;
|
||
}
|
||
|
||
.lineWrapper line{
|
||
stroke: ${A["cScaleLabel"+t]} ;
|
||
}
|
||
|
||
.disabled, .disabled circle, .disabled text {
|
||
fill: ${A.tertiaryColor??"lightgray"};
|
||
}
|
||
.disabled text {
|
||
fill: ${A.clusterBorder??"#efefef"};
|
||
}
|
||
`}return e},"genSections"),$Gt=y((A)=>{let{theme:e}=st(),t=e?.includes("redux"),r=e==="neutral",i=A.svgId?.replace(/^#/,"")??"",u="";if(A.useGradient&&i&&A.THEME_COLOR_LIMIT&&!r)for(let a=0;a<A.THEME_COLOR_LIMIT;a++)u+=`
|
||
.section-${a-1}[data-look="neo"] rect,
|
||
.section-${a-1}[data-look="neo"] path,
|
||
.section-${a-1}[data-look="neo"] circle {
|
||
fill: ${A.mainBkg};
|
||
stroke: url(#${i}-gradient);
|
||
stroke-width: 2;
|
||
}
|
||
.section-${a-1}[data-look="neo"] line {
|
||
stroke: url(#${i}-gradient);
|
||
stroke-width: 2;
|
||
}`;return`
|
||
.edge {
|
||
stroke-width: 3;
|
||
}
|
||
${t?jGt(A):XGt(A)}
|
||
${u}
|
||
.section-root rect, .section-root path, .section-root circle {
|
||
fill: ${A.git0};
|
||
}
|
||
.section-root text {
|
||
fill: ${A.gitBranchLabel0};
|
||
}
|
||
.icon-container {
|
||
height:100%;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
}
|
||
.edge {
|
||
fill: none;
|
||
}
|
||
.eventWrapper {
|
||
filter: brightness(120%);
|
||
}
|
||
`},"getStyles"),AUt=$Gt,eUt={setConf:y(()=>{},"setConf"),draw:y((A,e,t,r)=>{if((r?.db?.getDirection?.()??"LR")==="TD")return VGt.draw(A,e,t,r);return PGt.draw(A,e,t,r)},"draw")},Cae={db:Zue,renderer:eUt,parser:FGt,styles:AUt}});function qCA(){return crypto.getRandomValues(tUt)}var tUt;var Eae=P(()=>{tUt=new Uint8Array(16)});function dae(A,e=0){return(I0[A[e+0]]+I0[A[e+1]]+I0[A[e+2]]+I0[A[e+3]]+"-"+I0[A[e+4]]+I0[A[e+5]]+"-"+I0[A[e+6]]+I0[A[e+7]]+"-"+I0[A[e+8]]+I0[A[e+9]]+"-"+I0[A[e+10]]+I0[A[e+11]]+I0[A[e+12]]+I0[A[e+13]]+I0[A[e+14]]+I0[A[e+15]]).toLowerCase()}var I0;var Iae=P(()=>{I0=[];for(let A=0;A<256;++A)I0.push((A+256).toString(16).slice(1))});function rUt(A,e,t){if(!e&&!A&&crypto.randomUUID)return crypto.randomUUID();return iUt(A,e,t)}function iUt(A,e,t){A=A||{};let r=A.random??A.rng?.()??qCA();if(r.length<16)throw Error("Random bytes length must be >= 16");if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){if(t=t||0,t<0||t+16>e.length)throw RangeError(`UUID byte range ${t}:${t+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[t+i]=r[i];return e}return dae(r)}var zCA;var hae=P(()=>{Eae();Iae();zCA=rUt});var Qae=P(()=>{hae()});var ZCA,uUt,aUt=12,yh,nUt,oUt,sUt,lUt,gUt,cUt,CUt,pae;var fae=P(()=>{Eg();fl();hl();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();Qae();kn();ZCA=function(){var A=y(function(m,f,D,w){for(D=D||{},w=m.length;w--;D[m[w]]=f);return D},"o"),e=[1,4],t=[1,13],r=[1,12],i=[1,15],u=[1,16],a=[1,20],n=[1,19],o=[6,7,8],s=[1,26],l=[1,24],g=[1,25],C=[6,7,11],B=[1,6,13,15,16,19,22],E=[1,33],d=[1,34],I=[1,6,7,11,13,15,16,19,22],h={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:y(function(f,D,w,b,F,v,S){var x=v.length-1;switch(F){case 6:case 7:return b;case 8:b.getLogger().trace("Stop NL ");break;case 9:b.getLogger().trace("Stop EOF ");break;case 11:b.getLogger().trace("Stop NL2 ");break;case 12:b.getLogger().trace("Stop EOF2 ");break;case 15:b.getLogger().info("Node: ",v[x].id),b.addNode(v[x-1].length,v[x].id,v[x].descr,v[x].type);break;case 16:b.getLogger().trace("Icon: ",v[x]),b.decorateNode({icon:v[x]});break;case 17:case 21:b.decorateNode({class:v[x]});break;case 18:b.getLogger().trace("SPACELIST");break;case 19:b.getLogger().trace("Node: ",v[x].id),b.addNode(0,v[x].id,v[x].descr,v[x].type);break;case 20:b.decorateNode({icon:v[x]});break;case 25:b.getLogger().trace("node found ..",v[x-2]),this.$={id:v[x-1],descr:v[x-1],type:b.getType(v[x-2],v[x])};break;case 26:this.$={id:v[x],descr:v[x],type:b.nodeType.DEFAULT};break;case 27:b.getLogger().trace("node found ..",v[x-3]),this.$={id:v[x-3],descr:v[x-1],type:b.getType(v[x-2],v[x])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:t,7:[1,10],9:9,12:11,13:r,14:14,15:i,16:u,17:17,18:18,19:a,22:n},A(o,[2,3]),{1:[2,2]},A(o,[2,4]),A(o,[2,5]),{1:[2,6],6:t,12:21,13:r,14:14,15:i,16:u,17:17,18:18,19:a,22:n},{6:t,9:22,12:11,13:r,14:14,15:i,16:u,17:17,18:18,19:a,22:n},{6:s,7:l,10:23,11:g},A(C,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:a,22:n}),A(C,[2,18]),A(C,[2,19]),A(C,[2,20]),A(C,[2,21]),A(C,[2,23]),A(C,[2,24]),A(C,[2,26],{19:[1,30]}),{20:[1,31]},{6:s,7:l,10:32,11:g},{1:[2,7],6:t,12:21,13:r,14:14,15:i,16:u,17:17,18:18,19:a,22:n},A(B,[2,14],{7:E,11:d}),A(I,[2,8]),A(I,[2,9]),A(I,[2,10]),A(C,[2,15]),A(C,[2,16]),A(C,[2,17]),{20:[1,35]},{21:[1,36]},A(B,[2,13],{7:E,11:d}),A(I,[2,11]),A(I,[2,12]),{21:[1,37]},A(C,[2,25]),A(C,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:y(function(f,D){if(D.recoverable)this.trace(f);else{var w=Error(f);throw w.hash=D,w}},"parseError"),parse:y(function(f){var D=this,w=[0],b=[],F=[null],v=[],S=this.table,x="",k=0,T=0,R=0,L=2,M=1,U=v.slice.call(arguments,1),Y=Object.create(this.lexer),H={yy:{}};for(var J in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,J))H.yy[J]=this.yy[J];if(Y.setInput(f,H.yy),H.yy.lexer=Y,H.yy.parser=this,typeof Y.yylloc>"u")Y.yylloc={};var K=Y.yylloc;v.push(K);var O=Y.options&&Y.options.ranges;if(typeof H.yy.parseError==="function")this.parseError=H.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function _(BA){w.length=w.length-2*BA,F.length=F.length-BA,v.length=v.length-BA}y(_,"popStack");function z(){var BA=b.pop()||Y.lex()||M;if(typeof BA!=="number"){if(BA instanceof Array)b=BA,BA=b.pop();BA=D.symbols_[BA]||BA}return BA}y(z,"lex");var j,q,CA,tA,lA,gA,aA={},RA,wA,JA,TA;while(!0){if(CA=w[w.length-1],this.defaultActions[CA])tA=this.defaultActions[CA];else{if(j===null||typeof j>"u")j=z();tA=S[CA]&&S[CA][j]}if(typeof tA>"u"||!tA.length||!tA[0]){var qA="";TA=[];for(RA in S[CA])if(this.terminals_[RA]&&RA>L)TA.push("'"+this.terminals_[RA]+"'");if(Y.showPosition)qA="Parse error on line "+(k+1)+`:
|
||
`+Y.showPosition()+`
|
||
Expecting `+TA.join(", ")+", got '"+(this.terminals_[j]||j)+"'";else qA="Parse error on line "+(k+1)+": Unexpected "+(j==M?"end of input":"'"+(this.terminals_[j]||j)+"'");this.parseError(qA,{text:Y.match,token:this.terminals_[j]||j,line:Y.yylineno,loc:K,expected:TA})}if(tA[0]instanceof Array&&tA.length>1)throw Error("Parse Error: multiple actions possible at state: "+CA+", token: "+j);switch(tA[0]){case 1:if(w.push(j),F.push(Y.yytext),v.push(Y.yylloc),w.push(tA[1]),j=null,!q){if(T=Y.yyleng,x=Y.yytext,k=Y.yylineno,K=Y.yylloc,R>0)R--}else j=q,q=null;break;case 2:if(wA=this.productions_[tA[1]][1],aA.$=F[F.length-wA],aA._$={first_line:v[v.length-(wA||1)].first_line,last_line:v[v.length-1].last_line,first_column:v[v.length-(wA||1)].first_column,last_column:v[v.length-1].last_column},O)aA._$.range=[v[v.length-(wA||1)].range[0],v[v.length-1].range[1]];if(gA=this.performAction.apply(aA,[x,T,k,H.yy,tA[1],F,v].concat(U)),typeof gA<"u")return gA;if(wA)w=w.slice(0,-1*wA*2),F=F.slice(0,-1*wA),v=v.slice(0,-1*wA);w.push(this.productions_[tA[1]][0]),F.push(aA.$),v.push(aA._$),JA=S[w[w.length-2]][w[w.length-1]],w.push(JA);break;case 3:return!0}}return!0},"parse")},Q=function(){var m={EOF:1,parseError:y(function(D,w){if(this.yy.parser)this.yy.parser.parseError(D,w);else throw Error(D)},"parseError"),setInput:y(function(f,D){if(this.yy=D||this.yy||{},this._input=f,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var f=this._input[0];this.yytext+=f,this.yyleng++,this.offset++,this.match+=f,this.matched+=f;var D=f.match(/(?:\r\n?|\n).*/g);if(D)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),f},"input"),unput:y(function(f){var D=f.length,w=f.split(/(?:\r\n?|\n)/g);this._input=f+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-D),this.offset-=D;var b=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),w.length-1)this.yylineno-=w.length-1;var F=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:w?(w.length===b.length?this.yylloc.first_column:0)+b[b.length-w.length].length-w[0].length:this.yylloc.first_column-D},this.options.ranges)this.yylloc.range=[F[0],F[0]+this.yyleng-D];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(f){this.unput(this.match.slice(f))},"less"),pastInput:y(function(){var f=this.matched.substr(0,this.matched.length-this.match.length);return(f.length>20?"...":"")+f.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var f=this.match;if(f.length<20)f+=this._input.substr(0,20-f.length);return(f.substr(0,20)+(f.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var f=this.pastInput(),D=Array(f.length+1).join("-");return f+this.upcomingInput()+`
|
||
`+D+"^"},"showPosition"),test_match:y(function(f,D){var w,b,F;if(this.options.backtrack_lexer){if(F={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)F.yylloc.range=this.yylloc.range.slice(0)}if(b=f[0].match(/(?:\r\n?|\n).*/g),b)this.yylineno+=b.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:b?b[b.length-1].length-b[b.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+f[0].length},this.yytext+=f[0],this.match+=f[0],this.matches=f,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(f[0].length),this.matched+=f[0],w=this.performAction.call(this,this.yy,this,D,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(w)return w;else if(this._backtrack){for(var v in F)this[v]=F[v];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var f,D,w,b;if(!this._more)this.yytext="",this.match="";var F=this._currentRules();for(var v=0;v<F.length;v++)if(w=this._input.match(this.rules[F[v]]),w&&(!D||w[0].length>D[0].length)){if(D=w,b=v,this.options.backtrack_lexer)if(f=this.test_match(w,F[v]),f!==!1)return f;else if(this._backtrack){D=!1;continue}else return!1;else if(!this.options.flex)break}if(D){if(f=this.test_match(D,F[b]),f!==!1)return f;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var D=this.next();if(D)return D;else return this.lex()},"lex"),begin:y(function(D){this.conditionStack.push(D)},"begin"),popState:y(function(){var D=this.conditionStack.length-1;if(D>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(D){if(D=this.conditionStack.length-1-Math.abs(D||0),D>=0)return this.conditionStack[D];else return"INITIAL"},"topState"),pushState:y(function(D){this.begin(D)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(D,w,b,F){var v=F;switch(b){case 0:return D.getLogger().trace("Found comment",w.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:D.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return D.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:D.getLogger().trace("end icon"),this.popState();break;case 10:return D.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return D.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return D.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return D.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:D.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return D.getLogger().trace("description:",w.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),D.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),D.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),D.getLogger().trace("node end ...",w.yytext),"NODE_DEND";break;case 30:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),D.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),D.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return D.getLogger().trace("Long description:",w.yytext),20;break;case 36:return D.getLogger().trace("Long description:",w.yytext),20;break}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return m}();h.lexer=Q;function p(){this.yy={}}return y(p,"Parser"),p.prototype=h,h.Parser=p,new p}();ZCA.parser=ZCA;uUt=ZCA,yh={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},nUt=class{constructor(){this.nodes=[],this.count=0,this.elements={},this.getLogger=this.getLogger.bind(this),this.nodeType=yh,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{y(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(A){for(let e=this.nodes.length-1;e>=0;e--)if(this.nodes[e].level<A)return this.nodes[e];return null}getMindmap(){return this.nodes.length>0?this.nodes[0]:null}addNode(A,e,t,r){sA.info("addNode",A,e,t,r);let i=!1;if(this.nodes.length===0)this.baseLevel=A,A=0,i=!0;else if(this.baseLevel!==void 0)A=A-this.baseLevel,i=!1;let u=OA(),a=u.mindmap?.padding??ur.mindmap.padding;switch(r){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:a*=2;break}let n={id:this.count++,nodeId:or(e,u),level:A,descr:or(t,u),type:r,children:[],width:u.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:a,isRoot:i},o=this.getParent(A);if(o)o.children.push(n),this.nodes.push(n);else if(i)this.nodes.push(n);else throw Error(`There can be only one root. No parent could be found for ("${n.descr}")`)}getType(A,e){switch(sA.debug("In get type",A,e),A){case"[":return this.nodeType.RECT;case"(":return e===")"?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(A,e){this.elements[A]=e}getElementById(A){return this.elements[A]}decorateNode(A){if(!A)return;let e=OA(),t=this.nodes[this.nodes.length-1];if(A.icon)t.icon=or(A.icon,e);if(A.class)t.class=or(A.class,e)}type2Str(A){switch(A){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(A,e){if(A.level===0)A.section=void 0;else A.section=e;if(A.children)for(let[t,r]of A.children.entries()){let i=A.level===0?t%(aUt-1):e;this.assignSections(r,i)}}flattenNodes(A,e){let t=OA(),r=["mindmap-node"];if(A.isRoot===!0)r.push("section-root","section--1");else if(A.section!==void 0)r.push(`section-${A.section}`);if(A.class)r.push(A.class);let i=r.join(" "),u=y((n)=>{let s=(t.theme?.toLowerCase()??"").includes("redux");switch(n){case yh.CIRCLE:return"mindmapCircle";case yh.RECT:return"rect";case yh.ROUNDED_RECT:return"rounded";case yh.CLOUD:return"cloud";case yh.BANG:return"bang";case yh.HEXAGON:return"hexagon";case yh.DEFAULT:return s?"rounded":"defaultMindmapNode";case yh.NO_BORDER:default:return"rect"}},"getShapeFromType"),a={id:A.id.toString(),domId:"node_"+A.id.toString(),label:A.descr,labelType:"markdown",isGroup:!1,shape:u(A.type),width:A.width,height:A.height??0,padding:A.padding,cssClasses:i,cssStyles:[],look:t.look,icon:A.icon,x:A.x,y:A.y,level:A.level,nodeId:A.nodeId,type:A.type,section:A.section};if(e.push(a),A.children)for(let n of A.children)this.flattenNodes(n,e)}generateEdges(A,e){if(!A.children)return;let t=OA();for(let r of A.children){let i="edge";if(r.section!==void 0)i+=` section-edge-${r.section}`;let u=A.level+1;i+=` edge-depth-${u}`;let a={id:`edge_${A.id}_${r.id}`,start:A.id.toString(),end:r.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:t.look,classes:i,depth:A.level,section:r.section};e.push(a),this.generateEdges(r,e)}}getData(){let A=this.getMindmap(),e=OA(),r=qR().layout!==void 0,i=e;if(!r)i.layout="cose-bilkent";if(!A)return{nodes:[],edges:[],config:i};sA.debug("getData: mindmapRoot",A,e),this.assignSections(A);let u=[],a=[];this.flattenNodes(A,u),this.generateEdges(A,a),sA.debug(`getData: processed ${u.length} nodes and ${a.length} edges`);let n=new Map;for(let o of u)n.set(o.id,{shape:o.shape,width:o.width,height:o.height,padding:o.padding});return{nodes:u,edges:a,config:i,rootNode:A,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(n),type:"mindmap",diagramId:"mindmap-"+zCA()}}getLogger(){return sA}},oUt=y(async(A,e,t,r)=>{sA.debug(`Rendering mindmap diagram
|
||
`+A);let i=r.db,u=i.getData(),a=Ic(e,u.config.securityLevel);if(u.type=r.type,u.layoutAlgorithm=ME(u.config.layout,{fallback:"cose-bilkent"}),u.diagramId=e,!i.getMindmap())return;u.nodes.forEach((C)=>{if(C.shape==="rounded")C.radius=15,C.taper=15,C.stroke="none",C.width=0,C.padding=15;else if(C.shape==="circle")C.padding=10;else if(C.shape==="rect")C.width=0,C.padding=10;else if(C.shape==="hexagon")C.width=0,C.height=0}),await cc(u,a);let{themeVariables:o}=st(),{useGradient:s,gradientStart:l,gradientStop:g}=o;if(s&&l&&g){let C=a.attr("id"),B=a.append("defs").append("linearGradient").attr("id",`${C}-gradient`).attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");B.append("stop").attr("offset","0%").attr("stop-color",l).attr("stop-opacity",1),B.append("stop").attr("offset","100%").attr("stop-color",g).attr("stop-opacity",1)}pl(a,u.config.mindmap?.padding??ur.mindmap.padding,"mindmapDiagram",u.config.mindmap?.useMaxWidth??ur.mindmap.useMaxWidth)},"draw"),sUt={draw:oUt},lUt=y((A)=>{let{theme:e,look:t}=A,r="";for(let i=0;i<A.THEME_COLOR_LIMIT;i++)if(A["lineColor"+i]=A["lineColor"+i]||A["cScaleInv"+i],uu(A["lineColor"+i]))A["lineColor"+i]=Ie(A["lineColor"+i],20);else A["lineColor"+i]=he(A["lineColor"+i],20);for(let i=0;i<A.THEME_COLOR_LIMIT;i++){let u=""+(t==="neo"?Math.max(10-(i-1)*2,2):17-3*i);r+=`
|
||
.section-${i-1} rect, .section-${i-1} path, .section-${i-1} circle, .section-${i-1} polygon, .section-${i-1} path {
|
||
fill: ${A["cScale"+i]};
|
||
}
|
||
.section-${i-1} text {
|
||
fill: ${A["cScaleLabel"+i]};
|
||
}
|
||
.section-${i-1} span {
|
||
color: ${A["cScaleLabel"+i]};
|
||
}
|
||
.node-icon-${i-1} {
|
||
font-size: 40px;
|
||
color: ${A["cScaleLabel"+i]};
|
||
}
|
||
.section-edge-${i-1}{
|
||
stroke: ${A["cScale"+i]};
|
||
}
|
||
.edge-depth-${i-1}{
|
||
stroke-width: ${u};
|
||
}
|
||
.section-${i-1} line {
|
||
stroke: ${A["cScaleInv"+i]} ;
|
||
stroke-width: 3;
|
||
}
|
||
|
||
.disabled, .disabled circle, .disabled text {
|
||
fill: lightgray;
|
||
}
|
||
.disabled text {
|
||
fill: #efefef;
|
||
}
|
||
[data-look="neo"].mindmap-node.section-${i-1} rect, [data-look="neo"].mindmap-node.section-${i-1} path, [data-look="neo"].mindmap-node.section-${i-1} circle, [data-look="neo"].mindmap-node.section-${i-1} polygon {
|
||
fill: ${e==="redux"||e==="redux-dark"||e==="neutral"?A.mainBkg:A["cScale"+i]};
|
||
stroke: ${e==="redux"||e==="redux-dark"?A.nodeBorder:A["cScale"+i]};
|
||
stroke-width: ${A.strokeWidth??2}px;
|
||
}
|
||
[data-look="neo"].section-edge-${i-1}{
|
||
stroke: ${e?.includes("redux")||e==="neo-dark"?A.nodeBorder:A["cScale"+i]};
|
||
}
|
||
[data-look="neo"].mindmap-node.section-${i-1} text {
|
||
fill: ${e==="redux"||e==="redux-dark"?A.nodeBorder:A["cScaleLabel"+(e==="neutral"?1:i)]};
|
||
}
|
||
`}return r},"genSections"),gUt=y((A,e,t)=>{let r="";for(let i=0;i<A;i++)r+=`
|
||
[data-look="neo"].mindmap-node.section-${i-1} rect, [data-look="neo"].mindmap-node.section-${i-1} path, [data-look="neo"].mindmap-node.section-${i-1} circle, [data-look="neo"].mindmap-node.section-${i-1} polygon {
|
||
stroke: url(${e}-gradient);
|
||
fill: ${t};
|
||
}
|
||
.section-${i-1} line {
|
||
stroke-width: 0;
|
||
}`;return r},"genGradient"),cUt=y((A)=>{let{theme:e}=A,t=A.svgId,r=A.dropShadow?A.dropShadow.replace("url(#drop-shadow)",`url(${t}-drop-shadow)`):"none";return`
|
||
.edge {
|
||
stroke-width: 3;
|
||
}
|
||
${lUt(A)}
|
||
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
|
||
fill: ${A.git0};
|
||
}
|
||
.section-root text {
|
||
fill: ${A.gitBranchLabel0};
|
||
}
|
||
.section-root span {
|
||
color: ${e?.includes("redux")?A.nodeBorder:A.gitBranchLabel0};
|
||
}
|
||
.icon-container {
|
||
height:100%;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
}
|
||
.edge {
|
||
fill: none;
|
||
}
|
||
.mindmap-node-label {
|
||
dy: 1em;
|
||
alignment-baseline: middle;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
text-align: center;
|
||
}
|
||
[data-look="neo"].mindmap-node {
|
||
filter: ${r};
|
||
}
|
||
[data-look="neo"].mindmap-node.section-root rect, [data-look="neo"].mindmap-node.section-root path, [data-look="neo"].mindmap-node.section-root circle, [data-look="neo"].mindmap-node.section-root polygon {
|
||
fill: ${e?.includes("redux")?A.mainBkg:A.git0};
|
||
}
|
||
[data-look="neo"].mindmap-node.section-root .text-inner-tspan {
|
||
fill: ${e?.includes("redux")?A.nodeBorder:A["cScaleLabel"+(e==="neutral"?1:0)]};
|
||
}
|
||
${A.useGradient&&t&&A.mainBkg?gUt(A.THEME_COLOR_LIMIT,t,A.mainBkg):""}
|
||
`},"getStyles"),CUt=cUt,pae={get db(){return new nUt},renderer:sUt,parser:uUt,styles:CUt}});var VCA,BUt,bc,XCA,jCA=0,$CA,EUt,dUt,mae,IUt,hUt,lo,QUt,pUt,fUt,mUt,DUt,yUt,wUt,bUt,vUt,kUt,FUt,xUt,SUt,Dae;var yae=P(()=>{cn();KE();ff();u0();e0();r0();eo();Rn();ai();rr();ir();Nt();kn();VCA=function(){var A=y(function(w,b,F,v){for(F=F||{},v=w.length;v--;F[w[v]]=b);return F},"o"),e=[1,4],t=[1,13],r=[1,12],i=[1,15],u=[1,16],a=[1,20],n=[1,19],o=[6,7,8],s=[1,26],l=[1,24],g=[1,25],C=[6,7,11],B=[1,31],E=[6,7,11,24],d=[1,6,13,16,17,20,23],I=[1,35],h=[1,36],Q=[1,6,7,11,13,16,17,20,23],p=[1,38],m={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:y(function(b,F,v,S,x,k,T){var R=k.length-1;switch(x){case 6:case 7:return S;case 8:S.getLogger().trace("Stop NL ");break;case 9:S.getLogger().trace("Stop EOF ");break;case 11:S.getLogger().trace("Stop NL2 ");break;case 12:S.getLogger().trace("Stop EOF2 ");break;case 15:S.getLogger().info("Node: ",k[R-1].id),S.addNode(k[R-2].length,k[R-1].id,k[R-1].descr,k[R-1].type,k[R]);break;case 16:S.getLogger().info("Node: ",k[R].id),S.addNode(k[R-1].length,k[R].id,k[R].descr,k[R].type);break;case 17:S.getLogger().trace("Icon: ",k[R]),S.decorateNode({icon:k[R]});break;case 18:case 23:S.decorateNode({class:k[R]});break;case 19:S.getLogger().trace("SPACELIST");break;case 20:S.getLogger().trace("Node: ",k[R-1].id),S.addNode(0,k[R-1].id,k[R-1].descr,k[R-1].type,k[R]);break;case 21:S.getLogger().trace("Node: ",k[R].id),S.addNode(0,k[R].id,k[R].descr,k[R].type);break;case 22:S.decorateNode({icon:k[R]});break;case 27:S.getLogger().trace("node found ..",k[R-2]),this.$={id:k[R-1],descr:k[R-1],type:S.getType(k[R-2],k[R])};break;case 28:this.$={id:k[R],descr:k[R],type:0};break;case 29:S.getLogger().trace("node found ..",k[R-3]),this.$={id:k[R-3],descr:k[R-1],type:S.getType(k[R-2],k[R])};break;case 30:this.$=k[R-1]+k[R];break;case 31:this.$=k[R];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:t,7:[1,10],9:9,12:11,13:r,14:14,16:i,17:u,18:17,19:18,20:a,23:n},A(o,[2,3]),{1:[2,2]},A(o,[2,4]),A(o,[2,5]),{1:[2,6],6:t,12:21,13:r,14:14,16:i,17:u,18:17,19:18,20:a,23:n},{6:t,9:22,12:11,13:r,14:14,16:i,17:u,18:17,19:18,20:a,23:n},{6:s,7:l,10:23,11:g},A(C,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:a,23:n}),A(C,[2,19]),A(C,[2,21],{15:30,24:B}),A(C,[2,22]),A(C,[2,23]),A(E,[2,25]),A(E,[2,26]),A(E,[2,28],{20:[1,32]}),{21:[1,33]},{6:s,7:l,10:34,11:g},{1:[2,7],6:t,12:21,13:r,14:14,16:i,17:u,18:17,19:18,20:a,23:n},A(d,[2,14],{7:I,11:h}),A(Q,[2,8]),A(Q,[2,9]),A(Q,[2,10]),A(C,[2,16],{15:37,24:B}),A(C,[2,17]),A(C,[2,18]),A(C,[2,20],{24:p}),A(E,[2,31]),{21:[1,39]},{22:[1,40]},A(d,[2,13],{7:I,11:h}),A(Q,[2,11]),A(Q,[2,12]),A(C,[2,15],{24:p}),A(E,[2,30]),{22:[1,41]},A(E,[2,27]),A(E,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:y(function(b,F){if(F.recoverable)this.trace(b);else{var v=Error(b);throw v.hash=F,v}},"parseError"),parse:y(function(b){var F=this,v=[0],S=[],x=[null],k=[],T=this.table,R="",L=0,M=0,U=0,Y=2,H=1,J=k.slice.call(arguments,1),K=Object.create(this.lexer),O={yy:{}};for(var _ in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,_))O.yy[_]=this.yy[_];if(K.setInput(b,O.yy),O.yy.lexer=K,O.yy.parser=this,typeof K.yylloc>"u")K.yylloc={};var z=K.yylloc;k.push(z);var j=K.options&&K.options.ranges;if(typeof O.yy.parseError==="function")this.parseError=O.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function q(IA){v.length=v.length-2*IA,x.length=x.length-IA,k.length=k.length-IA}y(q,"popStack");function CA(){var IA=S.pop()||K.lex()||H;if(typeof IA!=="number"){if(IA instanceof Array)S=IA,IA=S.pop();IA=F.symbols_[IA]||IA}return IA}y(CA,"lex");var tA,lA,gA,aA,RA,wA,JA={},TA,qA,BA,bA;while(!0){if(gA=v[v.length-1],this.defaultActions[gA])aA=this.defaultActions[gA];else{if(tA===null||typeof tA>"u")tA=CA();aA=T[gA]&&T[gA][tA]}if(typeof aA>"u"||!aA.length||!aA[0]){var FA="";bA=[];for(TA in T[gA])if(this.terminals_[TA]&&TA>Y)bA.push("'"+this.terminals_[TA]+"'");if(K.showPosition)FA="Parse error on line "+(L+1)+`:
|
||
`+K.showPosition()+`
|
||
Expecting `+bA.join(", ")+", got '"+(this.terminals_[tA]||tA)+"'";else FA="Parse error on line "+(L+1)+": Unexpected "+(tA==H?"end of input":"'"+(this.terminals_[tA]||tA)+"'");this.parseError(FA,{text:K.match,token:this.terminals_[tA]||tA,line:K.yylineno,loc:z,expected:bA})}if(aA[0]instanceof Array&&aA.length>1)throw Error("Parse Error: multiple actions possible at state: "+gA+", token: "+tA);switch(aA[0]){case 1:if(v.push(tA),x.push(K.yytext),k.push(K.yylloc),v.push(aA[1]),tA=null,!lA){if(M=K.yyleng,R=K.yytext,L=K.yylineno,z=K.yylloc,U>0)U--}else tA=lA,lA=null;break;case 2:if(qA=this.productions_[aA[1]][1],JA.$=x[x.length-qA],JA._$={first_line:k[k.length-(qA||1)].first_line,last_line:k[k.length-1].last_line,first_column:k[k.length-(qA||1)].first_column,last_column:k[k.length-1].last_column},j)JA._$.range=[k[k.length-(qA||1)].range[0],k[k.length-1].range[1]];if(wA=this.performAction.apply(JA,[R,M,L,O.yy,aA[1],x,k].concat(J)),typeof wA<"u")return wA;if(qA)v=v.slice(0,-1*qA*2),x=x.slice(0,-1*qA),k=k.slice(0,-1*qA);v.push(this.productions_[aA[1]][0]),x.push(JA.$),k.push(JA._$),BA=T[v[v.length-2]][v[v.length-1]],v.push(BA);break;case 3:return!0}}return!0},"parse")},f=function(){var w={EOF:1,parseError:y(function(F,v){if(this.yy.parser)this.yy.parser.parseError(F,v);else throw Error(F)},"parseError"),setInput:y(function(b,F){if(this.yy=F||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var F=b.match(/(?:\r\n?|\n).*/g);if(F)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),b},"input"),unput:y(function(b){var F=b.length,v=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-F),this.offset-=F;var S=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),v.length-1)this.yylineno-=v.length-1;var x=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:v?(v.length===S.length?this.yylloc.first_column:0)+S[S.length-v.length].length-v[0].length:this.yylloc.first_column-F},this.options.ranges)this.yylloc.range=[x[0],x[0]+this.yyleng-F];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(b){this.unput(this.match.slice(b))},"less"),pastInput:y(function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var b=this.match;if(b.length<20)b+=this._input.substr(0,20-b.length);return(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var b=this.pastInput(),F=Array(b.length+1).join("-");return b+this.upcomingInput()+`
|
||
`+F+"^"},"showPosition"),test_match:y(function(b,F){var v,S,x;if(this.options.backtrack_lexer){if(x={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)x.yylloc.range=this.yylloc.range.slice(0)}if(S=b[0].match(/(?:\r\n?|\n).*/g),S)this.yylineno+=S.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:S?S[S.length-1].length-S[S.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],v=this.performAction.call(this,this.yy,this,F,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(v)return v;else if(this._backtrack){for(var k in x)this[k]=x[k];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var b,F,v,S;if(!this._more)this.yytext="",this.match="";var x=this._currentRules();for(var k=0;k<x.length;k++)if(v=this._input.match(this.rules[x[k]]),v&&(!F||v[0].length>F[0].length)){if(F=v,S=k,this.options.backtrack_lexer)if(b=this.test_match(v,x[k]),b!==!1)return b;else if(this._backtrack){F=!1;continue}else return!1;else if(!this.options.flex)break}if(F){if(b=this.test_match(F,x[S]),b!==!1)return b;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var F=this.next();if(F)return F;else return this.lex()},"lex"),begin:y(function(F){this.conditionStack.push(F)},"begin"),popState:y(function(){var F=this.conditionStack.length-1;if(F>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(F){if(F=this.conditionStack.length-1-Math.abs(F||0),F>=0)return this.conditionStack[F];else return"INITIAL"},"topState"),pushState:y(function(F){this.begin(F)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(F,v,S,x){var k=x;switch(S){case 0:return this.pushState("shapeData"),v.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let T=/\n\s*/g;return v.yytext=v.yytext.replace(T,"<br/>"),24;break;case 4:return 24;case 5:this.popState();break;case 6:return F.getLogger().trace("Found comment",v.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:F.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return F.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:F.getLogger().trace("end icon"),this.popState();break;case 16:return F.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return F.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return F.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return F.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:F.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return F.getLogger().trace("description:",v.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),F.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),F.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),F.getLogger().trace("node end ...",v.yytext),"NODE_DEND";break;case 36:return this.popState(),F.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),F.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),F.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),F.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),F.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return F.getLogger().trace("Long description:",v.yytext),21;break;case 42:return F.getLogger().trace("Long description:",v.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return w}();m.lexer=f;function D(){this.yy={}}return y(D,"Parser"),D.prototype=m,m.Parser=D,new D}();VCA.parser=VCA;BUt=VCA,bc=[],XCA=[],$CA={},EUt=y(()=>{bc=[],XCA=[],jCA=0,$CA={}},"clear"),dUt=y((A)=>{if(bc.length===0)return null;let e=bc[0].level,t=null;for(let r=bc.length-1;r>=0;r--){if(bc[r].level===e&&!t)t=bc[r];if(bc[r].level<e)throw Error('Items without section detected, found section ("'+bc[r].label+'")')}if(A===t?.level)return null;return t},"getSection"),mae=y(function(){return XCA},"getSections"),IUt=y(function(){let A=[],e=[],t=mae(),r=OA();for(let i of t){let u={id:i.id,label:or(i.label??"",r),labelType:"markdown",isGroup:!0,ticket:i.ticket,shape:"kanbanSection",level:i.level,look:r.look};e.push(u);let a=bc.filter((n)=>n.parentId===i.id);for(let n of a){let o={id:n.id,parentId:i.id,label:or(n.label??"",r),labelType:"markdown",isGroup:!1,ticket:n?.ticket,priority:n?.priority,assigned:n?.assigned,icon:n?.icon,shape:"kanbanItem",level:n.level,rx:5,ry:5,cssStyles:["text-align: left"]};e.push(o)}}return{nodes:e,edges:A,other:{},config:OA()}},"getData"),hUt=y((A,e,t,r,i)=>{let u=OA(),a=u.mindmap?.padding??ur.mindmap.padding;switch(r){case lo.ROUNDED_RECT:case lo.RECT:case lo.HEXAGON:a*=2}let n={id:or(e,u)||"kbn"+jCA++,level:A,label:or(t,u),width:u.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:a,isGroup:!1};if(i!==void 0){let s;if(!i.includes(`
|
||
`))s=`{
|
||
`+i+`
|
||
}`;else s=i+`
|
||
`;let l=UQ(s,{schema:GQ});if(l.shape&&(l.shape!==l.shape.toLowerCase()||l.shape.includes("_")))throw Error(`No such shape: ${l.shape}. Shape names should be lowercase.`);if(l?.shape&&l.shape==="kanbanItem")n.shape=l?.shape;if(l?.label)n.label=l?.label;if(l?.icon)n.icon=l?.icon.toString();if(l?.assigned)n.assigned=l?.assigned.toString();if(l?.ticket)n.ticket=l?.ticket.toString();if(l?.priority)n.priority=l?.priority}let o=dUt(A);if(o)n.parentId=o.id||"kbn"+jCA++;else XCA.push(n);bc.push(n)},"addNode"),lo={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},QUt=y((A,e)=>{switch(sA.debug("In get type",A,e),A){case"[":return lo.RECT;case"(":return e===")"?lo.ROUNDED_RECT:lo.CLOUD;case"((":return lo.CIRCLE;case")":return lo.CLOUD;case"))":return lo.BANG;case"{{":return lo.HEXAGON;default:return lo.DEFAULT}},"getType"),pUt=y((A,e)=>{$CA[A]=e},"setElementForId"),fUt=y((A)=>{if(!A)return;let e=OA(),t=bc[bc.length-1];if(A.icon)t.icon=or(A.icon,e);if(A.class)t.cssClasses=or(A.class,e)},"decorateNode"),mUt=y((A)=>{switch(A){case lo.DEFAULT:return"no-border";case lo.RECT:return"rect";case lo.ROUNDED_RECT:return"rounded-rect";case lo.CIRCLE:return"circle";case lo.CLOUD:return"cloud";case lo.BANG:return"bang";case lo.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),DUt=y(()=>sA,"getLogger"),yUt=y((A)=>$CA[A],"getElementById"),wUt={clear:EUt,addNode:hUt,getSections:mae,getData:IUt,nodeType:lo,getType:QUt,setElementForId:pUt,decorateNode:fUt,type2Str:mUt,getLogger:DUt,getElementById:yUt},bUt=wUt,vUt=y(async(A,e,t,r)=>{sA.debug(`Rendering kanban diagram
|
||
`+A);let u=r.db.getData(),a=OA();a.htmlLabels=!1;let n=zi(e);for(let I of u.nodes)I.domId=`${e}-${I.id}`;let o=n.append("g");o.attr("class","sections");let s=n.append("g");s.attr("class","items");let l=u.nodes.filter((I)=>I.isGroup),g=0,C=10,B=[],E=25;for(let I of l){let h=a?.kanban?.sectionWidth||200;g=g+1,I.x=h*g+(g-1)*C/2,I.width=h,I.y=0,I.height=h*3,I.rx=5,I.ry=5,I.cssClasses=I.cssClasses+" section-"+g;let Q=await JQ(o,I);E=Math.max(E,Q?.labelBBox?.height),B.push(Q)}let d=0;for(let I of l){let h=B[d];d=d+1;let Q=a?.kanban?.sectionWidth||200,p=-Q*3/2+E,m=p,f=u.nodes.filter((b)=>b.parentId===I.id);for(let b of f){if(b.isGroup)throw Error("Groups within groups are not allowed in Kanban diagrams");b.x=I.x,b.width=Q-1.5*C;let v=(await wI(s,b,{config:a})).node().getBBox();b.y=m+v.height/2,await xf(b),m=b.y+v.height/2+C/2}let D=h.cluster.select("rect"),w=Math.max(m-p+3*C,50)+(E-25);D.attr("height",w)}rE(void 0,n,a.mindmap?.padding??ur.kanban.padding,a.mindmap?.useMaxWidth??ur.kanban.useMaxWidth)},"draw"),kUt={draw:vUt},FUt=y((A)=>{let e="";for(let r=0;r<A.THEME_COLOR_LIMIT;r++)if(A["lineColor"+r]=A["lineColor"+r]||A["cScaleInv"+r],uu(A["lineColor"+r]))A["lineColor"+r]=Ie(A["lineColor"+r],20);else A["lineColor"+r]=he(A["lineColor"+r],20);let t=y((r,i)=>A.darkMode?he(r,i):Ie(r,i),"adjuster");for(let r=0;r<A.THEME_COLOR_LIMIT;r++){let i=""+(17-3*r);e+=`
|
||
.section-${r-1} rect, .section-${r-1} path, .section-${r-1} circle, .section-${r-1} polygon, .section-${r-1} path {
|
||
fill: ${t(A["cScale"+r],10)};
|
||
stroke: ${t(A["cScale"+r],10)};
|
||
|
||
}
|
||
.section-${r-1} text {
|
||
fill: ${A["cScaleLabel"+r]};
|
||
}
|
||
.node-icon-${r-1} {
|
||
font-size: 40px;
|
||
color: ${A["cScaleLabel"+r]};
|
||
}
|
||
.section-edge-${r-1}{
|
||
stroke: ${A["cScale"+r]};
|
||
}
|
||
.edge-depth-${r-1}{
|
||
stroke-width: ${i};
|
||
}
|
||
.section-${r-1} line {
|
||
stroke: ${A["cScaleInv"+r]} ;
|
||
stroke-width: 3;
|
||
}
|
||
|
||
.disabled, .disabled circle, .disabled text {
|
||
fill: lightgray;
|
||
}
|
||
.disabled text {
|
||
fill: #efefef;
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${A.background};
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.kanban-ticket-link {
|
||
fill: ${A.background};
|
||
stroke: ${A.nodeBorder};
|
||
text-decoration: underline;
|
||
}
|
||
`}return e},"genSections"),xUt=y((A)=>`
|
||
.edge {
|
||
stroke-width: 3;
|
||
}
|
||
${FUt(A)}
|
||
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
|
||
fill: ${A.git0};
|
||
}
|
||
.section-root text {
|
||
fill: ${A.gitBranchLabel0};
|
||
}
|
||
.icon-container {
|
||
height:100%;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
}
|
||
.edge {
|
||
fill: none;
|
||
}
|
||
.cluster-label, .label {
|
||
color: ${A.textColor};
|
||
fill: ${A.textColor};
|
||
}
|
||
.kanban-label {
|
||
dy: 1em;
|
||
alignment-baseline: middle;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
text-align: center;
|
||
}
|
||
${HE()}
|
||
`,"getStyles"),SUt=xUt,Dae={db:bUt,renderer:kUt,parser:BUt,styles:SUt}});function Q7(A,e){let t;if(e===void 0){for(let r of A)if(r!=null&&(t<r||t===void 0&&r>=r))t=r}else{let r=-1;for(let i of A)if((i=e(i,++r,A))!=null&&(t<i||t===void 0&&i>=i))t=i}return t}function N6(A,e){let t;if(e===void 0){for(let r of A)if(r!=null&&(t>r||t===void 0&&r>=r))t=r}else{let r=-1;for(let i of A)if((i=e(i,++r,A))!=null&&(t>i||t===void 0&&i>=i))t=i}return t}function G6(A,e){let t=0;if(e===void 0){for(let r of A)if(r=+r)t+=r}else{let r=-1;for(let i of A)if(i=+e(i,++r,A))t+=i}return t}var ABA=()=>{};function LUt(A){return A.target.depth}function eBA(A){return A.depth}function tBA(A,e){return e-1-A.height}function p7(A,e){return A.sourceLinks.length?A.depth:e-1}function rBA(A){return A.targetLinks.length?A.depth:A.sourceLinks.length?N6(A.sourceLinks,LUt)-1:0}var iBA=P(()=>{ABA()});function U6(A){return function(){return A}}function wae(A,e){return WO(A.source,e.source)||A.index-e.index}function bae(A,e){return WO(A.target,e.target)||A.index-e.index}function WO(A,e){return A.y0-e.y0}function uBA(A){return A.value}function RUt(A){return A.index}function NUt(A){return A.nodes}function GUt(A){return A.links}function vae(A,e){let t=A.get(e);if(!t)throw Error("missing: "+e);return t}function kae({nodes:A}){for(let e of A){let t=e.y0,r=t;for(let i of e.sourceLinks)i.y0=t+i.width/2,t+=i.width;for(let i of e.targetLinks)i.y1=r+i.width/2,r+=i.width}}function qO(){let A=0,e=0,t=1,r=1,i=24,u=8,a,n=RUt,o=p7,s,l,g=NUt,C=GUt,B=6;function E(){let R={nodes:g.apply(null,arguments),links:C.apply(null,arguments)};return d(R),I(R),h(R),Q(R),f(R),kae(R),R}E.update=function(R){return kae(R),R},E.nodeId=function(R){return arguments.length?(n=typeof R==="function"?R:U6(R),E):n},E.nodeAlign=function(R){return arguments.length?(o=typeof R==="function"?R:U6(R),E):o},E.nodeSort=function(R){return arguments.length?(s=R,E):s},E.nodeWidth=function(R){return arguments.length?(i=+R,E):i},E.nodePadding=function(R){return arguments.length?(u=a=+R,E):u},E.nodes=function(R){return arguments.length?(g=typeof R==="function"?R:U6(R),E):g},E.links=function(R){return arguments.length?(C=typeof R==="function"?R:U6(R),E):C},E.linkSort=function(R){return arguments.length?(l=R,E):l},E.size=function(R){return arguments.length?(A=e=0,t=+R[0],r=+R[1],E):[t-A,r-e]},E.extent=function(R){return arguments.length?(A=+R[0][0],t=+R[1][0],e=+R[0][1],r=+R[1][1],E):[[A,e],[t,r]]},E.iterations=function(R){return arguments.length?(B=+R,E):B};function d({nodes:R,links:L}){for(let[U,Y]of R.entries())Y.index=U,Y.sourceLinks=[],Y.targetLinks=[];let M=new Map(R.map((U,Y)=>[n(U,Y,R),U]));for(let[U,Y]of L.entries()){Y.index=U;let{source:H,target:J}=Y;if(typeof H!=="object")H=Y.source=vae(M,H);if(typeof J!=="object")J=Y.target=vae(M,J);H.sourceLinks.push(Y),J.targetLinks.push(Y)}if(l!=null)for(let{sourceLinks:U,targetLinks:Y}of R)U.sort(l),Y.sort(l)}function I({nodes:R}){for(let L of R)L.value=L.fixedValue===void 0?Math.max(G6(L.sourceLinks,uBA),G6(L.targetLinks,uBA)):L.fixedValue}function h({nodes:R}){let L=R.length,M=new Set(R),U=new Set,Y=0;while(M.size){for(let H of M){H.depth=Y;for(let{target:J}of H.sourceLinks)U.add(J)}if(++Y>L)throw Error("circular link");M=U,U=new Set}}function Q({nodes:R}){let L=R.length,M=new Set(R),U=new Set,Y=0;while(M.size){for(let H of M){H.height=Y;for(let{source:J}of H.targetLinks)U.add(J)}if(++Y>L)throw Error("circular link");M=U,U=new Set}}function p({nodes:R}){let L=Q7(R,(Y)=>Y.depth)+1,M=(t-A-i)/(L-1),U=Array(L);for(let Y of R){let H=Math.max(0,Math.min(L-1,Math.floor(o.call(null,Y,L))));if(Y.layer=H,Y.x0=A+H*M,Y.x1=Y.x0+i,U[H])U[H].push(Y);else U[H]=[Y]}if(s)for(let Y of U)Y.sort(s);return U}function m(R){let L=N6(R,(M)=>(r-e-(M.length-1)*a)/G6(M,uBA));for(let M of R){let U=e;for(let Y of M){Y.y0=U,Y.y1=U+Y.value*L,U=Y.y1+a;for(let H of Y.sourceLinks)H.width=H.value*L}U=(r-U+a)/(M.length+1);for(let Y=0;Y<M.length;++Y){let H=M[Y];H.y0+=U*(Y+1),H.y1+=U*(Y+1)}x(M)}}function f(R){let L=p(R);a=Math.min(u,(r-e)/(Q7(L,(M)=>M.length)-1)),m(L);for(let M=0;M<B;++M){let U=Math.pow(0.99,M),Y=Math.max(1-U,(M+1)/B);w(L,U,Y),D(L,U,Y)}}function D(R,L,M){for(let U=1,Y=R.length;U<Y;++U){let H=R[U];for(let J of H){let K=0,O=0;for(let{source:z,value:j}of J.targetLinks){let q=j*(J.layer-z.layer);K+=k(z,J)*q,O+=q}if(!(O>0))continue;let _=(K/O-J.y0)*L;J.y0+=_,J.y1+=_,S(J)}if(s===void 0)H.sort(WO);b(H,M)}}function w(R,L,M){for(let U=R.length,Y=U-2;Y>=0;--Y){let H=R[Y];for(let J of H){let K=0,O=0;for(let{target:z,value:j}of J.sourceLinks){let q=j*(z.layer-J.layer);K+=T(J,z)*q,O+=q}if(!(O>0))continue;let _=(K/O-J.y0)*L;J.y0+=_,J.y1+=_,S(J)}if(s===void 0)H.sort(WO);b(H,M)}}function b(R,L){let M=R.length>>1,U=R[M];v(R,U.y0-a,M-1,L),F(R,U.y1+a,M+1,L),v(R,r,R.length-1,L),F(R,e,0,L)}function F(R,L,M,U){for(;M<R.length;++M){let Y=R[M],H=(L-Y.y0)*U;if(H>0.000001)Y.y0+=H,Y.y1+=H;L=Y.y1+a}}function v(R,L,M,U){for(;M>=0;--M){let Y=R[M],H=(Y.y1-L)*U;if(H>0.000001)Y.y0-=H,Y.y1-=H;L=Y.y0-a}}function S({sourceLinks:R,targetLinks:L}){if(l===void 0){for(let{source:{sourceLinks:M}}of L)M.sort(bae);for(let{target:{targetLinks:M}}of R)M.sort(wae)}}function x(R){if(l===void 0)for(let{sourceLinks:L,targetLinks:M}of R)L.sort(bae),M.sort(wae)}function k(R,L){let M=R.y0-(R.sourceLinks.length-1)*a/2;for(let{target:U,width:Y}of R.sourceLinks){if(U===L)break;M+=Y+a}for(let{source:U,width:Y}of L.targetLinks){if(U===R)break;M-=Y}return M}function T(R,L){let M=L.y0-(L.targetLinks.length-1)*a/2;for(let{source:U,width:Y}of L.targetLinks){if(U===R)break;M+=Y+a}for(let{target:U,width:Y}of R.sourceLinks){if(U===L)break;M-=Y}return M}return E}var Fae=P(()=>{ABA();iBA()});function oBA(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function xae(){return new oBA}var aBA,nBA,bm=0.000001,UUt,sBA;var Sae=P(()=>{aBA=Math.PI,nBA=2*aBA,UUt=nBA-bm;oBA.prototype=xae.prototype={constructor:oBA,moveTo:function(A,e){this._+="M"+(this._x0=this._x1=+A)+","+(this._y0=this._y1=+e)},closePath:function(){if(this._x1!==null)this._x1=this._x0,this._y1=this._y0,this._+="Z"},lineTo:function(A,e){this._+="L"+(this._x1=+A)+","+(this._y1=+e)},quadraticCurveTo:function(A,e,t,r){this._+="Q"+ +A+","+ +e+","+(this._x1=+t)+","+(this._y1=+r)},bezierCurveTo:function(A,e,t,r,i,u){this._+="C"+ +A+","+ +e+","+ +t+","+ +r+","+(this._x1=+i)+","+(this._y1=+u)},arcTo:function(A,e,t,r,i){A=+A,e=+e,t=+t,r=+r,i=+i;var u=this._x1,a=this._y1,n=t-A,o=r-e,s=u-A,l=a-e,g=s*s+l*l;if(i<0)throw Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=A)+","+(this._y1=e);else if(!(g>bm));else if(!(Math.abs(l*n-o*s)>bm)||!i)this._+="L"+(this._x1=A)+","+(this._y1=e);else{var C=t-u,B=r-a,E=n*n+o*o,d=C*C+B*B,I=Math.sqrt(E),h=Math.sqrt(g),Q=i*Math.tan((aBA-Math.acos((E+g-d)/(2*I*h)))/2),p=Q/h,m=Q/I;if(Math.abs(p-1)>bm)this._+="L"+(A+p*s)+","+(e+p*l);this._+="A"+i+","+i+",0,0,"+ +(l*C>s*B)+","+(this._x1=A+m*n)+","+(this._y1=e+m*o)}},arc:function(A,e,t,r,i,u){A=+A,e=+e,t=+t,u=!!u;var a=t*Math.cos(r),n=t*Math.sin(r),o=A+a,s=e+n,l=1^u,g=u?r-i:i-r;if(t<0)throw Error("negative radius: "+t);if(this._x1===null)this._+="M"+o+","+s;else if(Math.abs(this._x1-o)>bm||Math.abs(this._y1-s)>bm)this._+="L"+o+","+s;if(!t)return;if(g<0)g=g%nBA+nBA;if(g>UUt)this._+="A"+t+","+t+",0,1,"+l+","+(A-a)+","+(e-n)+"A"+t+","+t+",0,1,"+l+","+(this._x1=o)+","+(this._y1=s);else if(g>bm)this._+="A"+t+","+t+",0,"+ +(g>=aBA)+","+l+","+(this._x1=A+t*Math.cos(i))+","+(this._y1=e+t*Math.sin(i))},rect:function(A,e,t,r){this._+="M"+(this._x0=this._x1=+A)+","+(this._y0=this._y1=+e)+"h"+ +t+"v"+ +r+"h"+-t+"Z"},toString:function(){return this._}};sBA=xae});var Lae=P(()=>{Sae()});var Rae;var Nae=P(()=>{Rae=Array.prototype.slice});function zO(A){return function(){return A}}function Gae(A){return A[0]}function Uae(A){return A[1]}function MUt(A){return A.source}function TUt(A){return A.target}function YUt(A){var e=MUt,t=TUt,r=Gae,i=Uae,u=null;function a(){var n,o=Rae.call(arguments),s=e.apply(this,o),l=t.apply(this,o);if(!u)u=n=sBA();if(A(u,+r.apply(this,(o[0]=s,o)),+i.apply(this,o),+r.apply(this,(o[0]=l,o)),+i.apply(this,o)),n)return u=null,n+""||null}return a.source=function(n){return arguments.length?(e=n,a):e},a.target=function(n){return arguments.length?(t=n,a):t},a.x=function(n){return arguments.length?(r=typeof n==="function"?n:zO(+n),a):r},a.y=function(n){return arguments.length?(i=typeof n==="function"?n:zO(+n),a):i},a.context=function(n){return arguments.length?(u=n==null?null:n,a):u},a}function HUt(A,e,t,r,i){A.moveTo(e,t),A.bezierCurveTo(e=(e+r)/2,t,e,i,r,i)}function lBA(){return YUt(HUt)}var Mae=P(()=>{Lae();Nae()});var Tae=P(()=>{Mae()});function KUt(A){return[A.source.x1,A.y0]}function JUt(A){return[A.target.x0,A.y1]}function ZO(){return lBA().source(KUt).target(JUt)}var Yae=P(()=>{Tae()});var Hae=P(()=>{Fae();iBA();Yae()});var gBA,VO,XO,$O,jO,OUt,PUt,_Ut,WUt,qUt,zUt,ZUt,VUt,jUt,Kae,XUt,$Ut,AMt,eMt,tMt,rMt,iMt,uMt,Jae;var Oae=P(()=>{rr();ir();Nt();Pr();Hae();gBA=function(){var A=y(function(n,o,s,l){for(s=s||{},l=n.length;l--;s[n[l]]=o);return s},"o"),e=[1,9],t=[1,10],r=[1,5,10,12],i={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:y(function(o,s,l,g,C,B,E){var d=B.length-1;switch(C){case 7:let I=g.findOrCreateNode(B[d-4].trim().replaceAll('""','"')),h=g.findOrCreateNode(B[d-2].trim().replaceAll('""','"')),Q=parseFloat(B[d].trim());g.addLink(I,h,Q);break;case 8:case 9:case 11:this.$=B[d];break;case 10:this.$=B[d-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:t},{1:[2,6],7:11,10:[1,12]},A(t,[2,4],{9:13,5:[1,14]}),{12:[1,15]},A(r,[2,8]),A(r,[2,9]),{19:[1,16]},A(r,[2,11]),{1:[2,1]},{1:[2,5]},A(t,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:t},{15:18,16:7,17:8,18:e,20:t},{18:[1,19]},A(t,[2,3]),{12:[1,20]},A(r,[2,10]),{15:21,16:7,17:8,18:e,20:t},A([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:y(function(o,s){if(s.recoverable)this.trace(o);else{var l=Error(o);throw l.hash=s,l}},"parseError"),parse:y(function(o){var s=this,l=[0],g=[],C=[null],B=[],E=this.table,d="",I=0,h=0,Q=0,p=2,m=1,f=B.slice.call(arguments,1),D=Object.create(this.lexer),w={yy:{}};for(var b in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,b))w.yy[b]=this.yy[b];if(D.setInput(o,w.yy),w.yy.lexer=D,w.yy.parser=this,typeof D.yylloc>"u")D.yylloc={};var F=D.yylloc;B.push(F);var v=D.options&&D.options.ranges;if(typeof w.yy.parseError==="function")this.parseError=w.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function S(z){l.length=l.length-2*z,C.length=C.length-z,B.length=B.length-z}y(S,"popStack");function x(){var z=g.pop()||D.lex()||m;if(typeof z!=="number"){if(z instanceof Array)g=z,z=g.pop();z=s.symbols_[z]||z}return z}y(x,"lex");var k,T,R,L,M,U,Y={},H,J,K,O;while(!0){if(R=l[l.length-1],this.defaultActions[R])L=this.defaultActions[R];else{if(k===null||typeof k>"u")k=x();L=E[R]&&E[R][k]}if(typeof L>"u"||!L.length||!L[0]){var _="";O=[];for(H in E[R])if(this.terminals_[H]&&H>p)O.push("'"+this.terminals_[H]+"'");if(D.showPosition)_="Parse error on line "+(I+1)+`:
|
||
`+D.showPosition()+`
|
||
Expecting `+O.join(", ")+", got '"+(this.terminals_[k]||k)+"'";else _="Parse error on line "+(I+1)+": Unexpected "+(k==m?"end of input":"'"+(this.terminals_[k]||k)+"'");this.parseError(_,{text:D.match,token:this.terminals_[k]||k,line:D.yylineno,loc:F,expected:O})}if(L[0]instanceof Array&&L.length>1)throw Error("Parse Error: multiple actions possible at state: "+R+", token: "+k);switch(L[0]){case 1:if(l.push(k),C.push(D.yytext),B.push(D.yylloc),l.push(L[1]),k=null,!T){if(h=D.yyleng,d=D.yytext,I=D.yylineno,F=D.yylloc,Q>0)Q--}else k=T,T=null;break;case 2:if(J=this.productions_[L[1]][1],Y.$=C[C.length-J],Y._$={first_line:B[B.length-(J||1)].first_line,last_line:B[B.length-1].last_line,first_column:B[B.length-(J||1)].first_column,last_column:B[B.length-1].last_column},v)Y._$.range=[B[B.length-(J||1)].range[0],B[B.length-1].range[1]];if(U=this.performAction.apply(Y,[d,h,I,w.yy,L[1],C,B].concat(f)),typeof U<"u")return U;if(J)l=l.slice(0,-1*J*2),C=C.slice(0,-1*J),B=B.slice(0,-1*J);l.push(this.productions_[L[1]][0]),C.push(Y.$),B.push(Y._$),K=E[l[l.length-2]][l[l.length-1]],l.push(K);break;case 3:return!0}}return!0},"parse")},u=function(){var n={EOF:1,parseError:y(function(s,l){if(this.yy.parser)this.yy.parser.parseError(s,l);else throw Error(s)},"parseError"),setInput:y(function(o,s){if(this.yy=s||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var s=o.match(/(?:\r\n?|\n).*/g);if(s)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),o},"input"),unput:y(function(o){var s=o.length,l=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-s),this.offset-=s;var g=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1)this.yylineno-=l.length-1;var C=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===g.length?this.yylloc.first_column:0)+g[g.length-l.length].length-l[0].length:this.yylloc.first_column-s},this.options.ranges)this.yylloc.range=[C[0],C[0]+this.yyleng-s];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(o){this.unput(this.match.slice(o))},"less"),pastInput:y(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var o=this.match;if(o.length<20)o+=this._input.substr(0,20-o.length);return(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var o=this.pastInput(),s=Array(o.length+1).join("-");return o+this.upcomingInput()+`
|
||
`+s+"^"},"showPosition"),test_match:y(function(o,s){var l,g,C;if(this.options.backtrack_lexer){if(C={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)C.yylloc.range=this.yylloc.range.slice(0)}if(g=o[0].match(/(?:\r\n?|\n).*/g),g)this.yylineno+=g.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:g?g[g.length-1].length-g[g.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],l=this.performAction.call(this,this.yy,this,s,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(l)return l;else if(this._backtrack){for(var B in C)this[B]=C[B];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var o,s,l,g;if(!this._more)this.yytext="",this.match="";var C=this._currentRules();for(var B=0;B<C.length;B++)if(l=this._input.match(this.rules[C[B]]),l&&(!s||l[0].length>s[0].length)){if(s=l,g=B,this.options.backtrack_lexer)if(o=this.test_match(l,C[B]),o!==!1)return o;else if(this._backtrack){s=!1;continue}else return!1;else if(!this.options.flex)break}if(s){if(o=this.test_match(s,C[g]),o!==!1)return o;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var s=this.next();if(s)return s;else return this.lex()},"lex"),begin:y(function(s){this.conditionStack.push(s)},"begin"),popState:y(function(){var s=this.conditionStack.length-1;if(s>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(s){if(s=this.conditionStack.length-1-Math.abs(s||0),s>=0)return this.conditionStack[s];else return"INITIAL"},"topState"),pushState:y(function(s){this.begin(s)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(s,l,g,C){var B=C;switch(g){case 0:return this.pushState("csv"),4;break;case 1:return this.pushState("csv"),4;break;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;break;case 6:return 20;case 7:return this.popState("escaped_text"),18;break;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}};return n}();i.lexer=u;function a(){this.yy={}}return y(a,"Parser"),a.prototype=i,i.Parser=a,new a}();gBA.parser=gBA;VO=gBA,XO=[],$O=[],jO=new Map,OUt=y(()=>{XO=[],$O=[],jO=new Map,sr()},"clear"),PUt=class{constructor(A,e,t=0){this.source=A,this.target=e,this.value=t}static{y(this,"SankeyLink")}},_Ut=y((A,e,t)=>{XO.push(new PUt(A,e,t))},"addLink"),WUt=class{constructor(A){this.ID=A}static{y(this,"SankeyNode")}},qUt=y((A)=>{A=_e.sanitizeText(A,OA());let e=jO.get(A);if(e===void 0)e=new WUt(A),jO.set(A,e),$O.push(e);return e},"findOrCreateNode"),zUt=y(()=>$O,"getNodes"),ZUt=y(()=>XO,"getLinks"),VUt=y(()=>({nodes:$O.map((A)=>({id:A.ID})),links:XO.map((A)=>({source:A.source.ID,target:A.target.ID,value:A.value}))}),"getGraph"),jUt={nodesMap:jO,getConfig:y(()=>OA().sankey,"getConfig"),getNodes:zUt,getLinks:ZUt,getGraph:VUt,addLink:_Ut,findOrCreateNode:qUt,getAccTitle:vr,setAccTitle:Dr,getAccDescription:Fr,setAccDescription:kr,getDiagramTitle:xr,setDiagramTitle:Mr,clear:OUt},Kae=class A{static{y(this,"Uid")}static{this.count=0}static next(e){return new A(e+ ++A.count)}constructor(e){this.id=e,this.href=`#${e}`}toString(){return"url("+this.href+")"}},XUt={left:eBA,right:tBA,center:rBA,justify:p7},$Ut=y((A)=>{let e=0,t=0;for(let r of A){let i=r.value??0;if(i>e)e=i,t=r.layer??0}return t},"findCentralNodeLayer"),AMt=y(function(A,e,t,r){let{securityLevel:i,sankey:u}=OA(),a=jR.sankey,n;if(i==="sandbox")n=Qe("#i"+e);let o=i==="sandbox"?Qe(n.nodes()[0].contentDocument.body):Qe("body"),s=i==="sandbox"?o.select(`[id="${e}"]`):Qe(`[id="${e}"]`),l=u?.width??a.width,g=u?.height??a.width,C=u?.useMaxWidth??a.useMaxWidth,B=u?.nodeAlignment??a.nodeAlignment,E=u?.prefix??a.prefix,d=u?.suffix??a.suffix,I=u?.showValues??a.showValues,h=u?.nodeWidth??a.nodeWidth??10,Q=u?.nodePadding??a.nodePadding??12,p=u?.labelStyle??a.labelStyle??"legacy",m=u?.nodeColors??{},f=r.db.getGraph(),D=XUt[B];qO().nodeId((U)=>U.id).nodeWidth(h).nodePadding(Q+(I?15:0)).nodeAlign(D).extent([[0,0],[l,g]])(f);let b=$Ut(f.nodes),F=eg(gAA),v=y((U)=>m[U]??F(U),"getNodeColor");s.append("g").attr("class","nodes").selectAll(".node").data(f.nodes).join("g").attr("class","node").attr("id",(U)=>(U.uid=Kae.next("node-")).id).attr("transform",function(U){return"translate("+U.x0+","+U.y0+")"}).attr("x",(U)=>U.x0).attr("y",(U)=>U.y0).append("rect").attr("height",(U)=>U.y1-U.y0).attr("width",(U)=>U.x1-U.x0).attr("fill",(U)=>v(U.id));let S=y(({id:U,value:Y})=>{if(!I)return U;return`${U}
|
||
${E}${Math.round(Y*100)/100}${d}`},"getText"),x=y((U)=>{if(p==="outlined"){if((U.layer??0)<b)return{x:U.x0-6,anchor:"end"};return{x:U.x1+6,anchor:"start"}}if(U.x0<l/2)return{x:U.x1+6,anchor:"start"};return{x:U.x0-6,anchor:"end"}},"getLabelPosition"),k=s.append("g").attr("class","node-labels").attr("font-size",14),T=y((U)=>k.selectAll(U?`.${U}`:"text").data(f.nodes).join("text").attr("class",U??null).attr("x",(Y)=>x(Y).x).attr("y",(Y)=>(Y.y1+Y.y0)/2).attr("dy",`${I?"0":"0.35"}em`).attr("text-anchor",(Y)=>x(Y).anchor).text(S),"appendLabel");if(p==="outlined")T("sankey-label-bg"),T("sankey-label-fg");else T();let R=s.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",0.5).selectAll(".link").data(f.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),L=u?.linkColor??"gradient";if(L==="gradient"){let U=R.append("linearGradient").attr("id",(Y)=>(Y.uid=Kae.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",(Y)=>Y.source.x1).attr("x2",(Y)=>Y.target.x0);U.append("stop").attr("offset","0%").attr("stop-color",(Y)=>v(Y.source.id)),U.append("stop").attr("offset","100%").attr("stop-color",(Y)=>v(Y.target.id))}let M;switch(L){case"gradient":M=y((U)=>U.uid,"coloring");break;case"source":M=y((U)=>v(U.source.id),"coloring");break;case"target":M=y((U)=>v(U.target.id),"coloring");break;default:M=L}R.append("path").attr("d",ZO()).attr("stroke",M).attr("stroke-width",(U)=>Math.max(1,U.width)),rE(void 0,s,0,C)},"draw"),eMt={draw:AMt},tMt=y((A)=>A.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,`
|
||
`).trim(),"prepareTextForParsing"),rMt=y((A)=>`.label {
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
.node-labels {
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
/* Outlined label style - background stroke for better readability */
|
||
.sankey-label-bg {
|
||
stroke: ${A.mainBkg||A.background||"#fff"};
|
||
stroke-width: 4px;
|
||
stroke-linejoin: round;
|
||
paint-order: stroke;
|
||
}
|
||
|
||
/* Foreground label text */
|
||
.sankey-label-fg {
|
||
fill: ${A.textColor};
|
||
}
|
||
|
||
/* Node styling */
|
||
.node rect {
|
||
shape-rendering: crispEdges;
|
||
}
|
||
|
||
/* Link styling */
|
||
.link {
|
||
fill: none;
|
||
stroke-opacity: 0.5;
|
||
mix-blend-mode: multiply;
|
||
}
|
||
`,"getStyles"),iMt=rMt,uMt=VO.parse.bind(VO);VO.parse=(A)=>uMt(tMt(A));Jae={styles:iMt,parser:VO,db:jUt,renderer:eMt}});var aMt,Pae,nMt=1e4,oMt,sMt,_ae,lMt,gMt,cMt,CMt,BMt,Wae;var qae=P(()=>{ws();cn();ai();rr();ir();Nt();E0();aMt=ur.packet,Pae=class{constructor(){this.packet=[],this.setAccTitle=Dr,this.getAccTitle=vr,this.setDiagramTitle=Mr,this.getDiagramTitle=xr,this.getAccDescription=Fr,this.setAccDescription=kr}static{y(this,"PacketDB")}getConfig(){let A=si({...aMt,...st().packet});if(A.showBits)A.paddingY+=10;return A}getPacket(){return this.packet}pushWord(A){if(A.length>0)this.packet.push(A)}clear(){sr(),this.packet=[]}},oMt=y((A,e)=>{hu(A,e);let t=-1,r=[],i=1,{bitsPerRow:u}=e.getConfig();for(let{start:a,end:n,bits:o,label:s}of A.blocks){if(a!==void 0&&n!==void 0&&n<a)throw Error(`Packet block ${a} - ${n} is invalid. End must be greater than start.`);if(a??=t+1,a!==t+1)throw Error(`Packet block ${a} - ${n??a} is not contiguous. It should start from ${t+1}.`);if(o===0)throw Error(`Packet block ${a} is invalid. Cannot have a zero bit field.`);n??=a+(o??1)-1,o??=n-a+1,t=n,sA.debug(`Packet block ${a} - ${t} with label ${s}`);while(r.length<=u+1&&e.getPacket().length<nMt){let[l,g]=sMt({start:a,end:n,bits:o,label:s},i,u);if(r.push(l),l.end+1===i*u)e.pushWord(r),r=[],i++;if(!g)break;({start:a,end:n,bits:o,label:s}=g)}}e.pushWord(r)},"populate"),sMt=y((A,e,t)=>{if(A.start===void 0)throw Error("start should have been set during first phase");if(A.end===void 0)throw Error("end should have been set during first phase");if(A.start>A.end)throw Error(`Block start ${A.start} is greater than block end ${A.end}.`);if(A.end+1<=e*t)return[A,void 0];let r=e*t-1,i=e*t;return[{start:A.start,end:r,label:A.label,bits:r-A.start},{start:i,end:A.end,label:A.label,bits:A.end-i}]},"getNextFittingBlock"),_ae={parser:{yy:void 0},parse:y(async(A)=>{let e=await Ma("packet",A),t=_ae.parser?.yy;if(!(t instanceof Pae))throw Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");sA.debug(e),oMt(e,t)},"parse")},lMt=y((A,e,t,r)=>{let i=r.db,u=i.getConfig(),{rowHeight:a,paddingY:n,bitWidth:o,bitsPerRow:s}=u,l=i.getPacket(),g=i.getDiagramTitle(),C=a+n,B=C*(l.length+1)-(g?0:a),E=o*s+2,d=zi(e);d.attr("viewBox",`0 0 ${E} ${B}`),jr(d,B,E,u.useMaxWidth);for(let[I,h]of l.entries())gMt(d,h,I,u);d.append("text").text(g).attr("x",E/2).attr("y",B-C/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),gMt=y((A,e,t,{rowHeight:r,paddingX:i,paddingY:u,bitWidth:a,bitsPerRow:n,showBits:o})=>{let s=A.append("g"),l=t*(r+u)+u;for(let g of e){let C=g.start%n*a+1,B=(g.end-g.start+1)*a-i;if(s.append("rect").attr("x",C).attr("y",l).attr("width",B).attr("height",r).attr("class","packetBlock"),s.append("text").attr("x",C+B/2).attr("y",l+r/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(g.label),!o)continue;let E=g.end===g.start,d=l-2;if(s.append("text").attr("x",C+(E?B/2:0)).attr("y",d).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",E?"middle":"start").text(g.start),!E)s.append("text").attr("x",C+B).attr("y",d).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(g.end)}},"drawWord"),cMt={draw:lMt},CMt={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},BMt=y(({packet:A}={})=>{let e=si(CMt,A);return`
|
||
.packetByte {
|
||
font-size: ${e.byteFontSize};
|
||
}
|
||
.packetByte.start {
|
||
fill: ${e.startByteColor};
|
||
}
|
||
.packetByte.end {
|
||
fill: ${e.endByteColor};
|
||
}
|
||
.packetLabel {
|
||
fill: ${e.labelColor};
|
||
font-size: ${e.labelFontSize};
|
||
}
|
||
.packetTitle {
|
||
fill: ${e.titleColor};
|
||
font-size: ${e.titleFontSize};
|
||
}
|
||
.packetBlock {
|
||
stroke: ${e.blockStrokeColor};
|
||
stroke-width: ${e.blockStrokeWidth};
|
||
fill: ${e.blockFillColor};
|
||
}
|
||
`},"styles"),Wae={parser:_ae,get db(){return new Pae},renderer:cMt,styles:BMt}});function Vae(A,e,t,r,i,u,a){let n=e.length,o=Math.min(a.width,a.height)/2;t.forEach((s,l)=>{if(s.entries.length!==n)return;let g=s.entries.map((C,B)=>{let E=2*Math.PI*B/n-Math.PI/2,d=jae(C,r,i,o),I=d*Math.cos(E),h=d*Math.sin(E);return{x:I,y:h}});if(u==="circle")A.append("path").attr("d",Xae(g,a.curveTension)).attr("class",`radarCurve-${l}`);else if(u==="polygon")A.append("polygon").attr("points",g.map((C)=>`${C.x},${C.y}`).join(" ")).attr("class",`radarCurve-${l}`)})}function jae(A,e,t,r){let i=Math.min(Math.max(A,e),t);return r*(i-e)/(t-e)}function Xae(A,e){let t=A.length,r=`M${A[0].x},${A[0].y}`;for(let i=0;i<t;i++){let u=A[(i-1+t)%t],a=A[i],n=A[(i+1)%t],o=A[(i+2)%t],s={x:a.x+(n.x-u.x)*e,y:a.y+(n.y-u.y)*e},l={x:n.x-(o.x-a.x)*e,y:n.y-(o.y-a.y)*e};r+=` C${s.x},${s.y} ${l.x},${l.y} ${n.x},${n.y}`}return`${r} Z`}function $ae(A,e,t,r){if(!t)return;let i=(r.width/2+r.marginRight)*3/4,u=-(r.height/2+r.marginTop)*3/4,a=20;e.forEach((n,o)=>{let s=A.append("g").attr("transform",`translate(${i}, ${u+o*a})`);s.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${o}`),s.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}var M6,AP=32,zae,ud,EMt,dMt,Zae,IMt,hMt,QMt,pMt,fMt,mMt,DMt,f7,yMt,wMt,bMt,vMt,kMt,FMt,xMt,SMt,LMt,RMt,Ane;var ene=P(()=>{ws();cn();ai();rr();ir();Nt();E0();M6={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},zae={axes:[],curves:[],options:M6},ud=structuredClone(zae),EMt=ur.radar,dMt=y(()=>si({...EMt,...st().radar}),"getConfig"),Zae=y(()=>ud.axes,"getAxes"),IMt=y(()=>ud.curves,"getCurves"),hMt=y(()=>ud.options,"getOptions"),QMt=y((A)=>{ud.axes=A.map((e)=>({name:e.name,label:e.label??e.name}))},"setAxes"),pMt=y((A)=>{ud.curves=A.map((e)=>({name:e.name,label:e.label??e.name,entries:fMt(e.entries)}))},"setCurves"),fMt=y((A)=>{if(A[0].axis==null)return A.map((t)=>t.value);let e=Zae();if(e.length===0)throw Error("Axes must be populated before curves for reference entries");return e.map((t)=>{let r=A.find((i)=>i.axis?.$refText===t.name);if(r===void 0)throw Error("Missing entry for axis "+t.label);return r.value})},"computeCurveEntries"),mMt=y((A)=>{let e=A.reduce((t,r)=>(t[r.name]=r,t),{});if(ud.options={showLegend:e.showLegend?.value??M6.showLegend,ticks:e.ticks?.value??M6.ticks,max:e.max?.value??M6.max,min:e.min?.value??M6.min,graticule:e.graticule?.value??M6.graticule},ud.options.ticks>AP)sA.warn(`Radar diagram ticks (${ud.options.ticks}) exceeds maximum allowed (${AP}). Using ${AP} instead.`),ud.options.ticks=AP},"setOptions"),DMt=y(()=>{sr(),ud=structuredClone(zae)},"clear"),f7={getAxes:Zae,getCurves:IMt,getOptions:hMt,setAxes:QMt,setCurves:pMt,setOptions:mMt,getConfig:dMt,clear:DMt,setAccTitle:Dr,getAccTitle:vr,setDiagramTitle:Mr,getDiagramTitle:xr,getAccDescription:Fr,setAccDescription:kr},yMt=y((A)=>{hu(A,f7);let{axes:e,curves:t,options:r}=A;f7.setAxes(e),f7.setCurves(t),f7.setOptions(r)},"populate"),wMt={parse:y(async(A)=>{let e=await Ma("radar",A);sA.debug(e),yMt(e)},"parse")},bMt=y((A,e,t,r)=>{let i=r.db,u=i.getAxes(),a=i.getCurves(),n=i.getOptions(),o=i.getConfig(),s=i.getDiagramTitle(),l=zi(e),g=vMt(l,o),C=n.max??Math.max(...a.map((d)=>Math.max(...d.entries))),B=n.min,E=Math.min(o.width,o.height)/2;kMt(g,u,E,n.ticks,n.graticule),FMt(g,u,E,o),Vae(g,u,a,B,C,n.graticule,o),$ae(g,a,n.showLegend,o),g.append("text").attr("class","radarTitle").text(s).attr("x",0).attr("y",-o.height/2-o.marginTop)},"draw"),vMt=y((A,e)=>{let t=e.width+e.marginLeft+e.marginRight,r=e.height+e.marginTop+e.marginBottom,i={x:e.marginLeft+e.width/2,y:e.marginTop+e.height/2};return jr(A,r,t,e.useMaxWidth??!0),A.attr("viewBox",`0 0 ${t} ${r}`).attr("overflow","visible"),A.append("g").attr("transform",`translate(${i.x}, ${i.y})`)},"drawFrame"),kMt=y((A,e,t,r,i)=>{if(i==="circle")for(let u=0;u<r;u++){let a=t*(u+1)/r;A.append("circle").attr("r",a).attr("class","radarGraticule")}else if(i==="polygon"){let u=e.length;for(let a=0;a<r;a++){let n=t*(a+1)/r,o=e.map((s,l)=>{let g=2*l*Math.PI/u-Math.PI/2,C=n*Math.cos(g),B=n*Math.sin(g);return`${C},${B}`}).join(" ");A.append("polygon").attr("points",o).attr("class","radarGraticule")}}},"drawGraticule"),FMt=y((A,e,t,r)=>{let i=e.length;for(let u=0;u<i;u++){let a=e[u].label,n=2*u*Math.PI/i-Math.PI/2,o=Math.cos(n),s=Math.sin(n);A.append("line").attr("x1",0).attr("y1",0).attr("x2",t*r.axisScaleFactor*o).attr("y2",t*r.axisScaleFactor*s).attr("class","radarAxisLine");let l=o>0.01?"start":o<-0.01?"end":"middle",g=s>0.01?"hanging":s<-0.01?"auto":"central",C=4;A.append("text").text(a).attr("x",t*r.axisLabelFactor*o+C*o).attr("y",t*r.axisLabelFactor*s+C*s).attr("text-anchor",l).attr("dominant-baseline",g).attr("class","radarAxisLabel")}},"drawAxes");y(Vae,"drawCurves");y(jae,"relativeRadius");y(Xae,"closedRoundCurve");y($ae,"drawLegend");xMt={draw:bMt},SMt=y((A,e)=>{let t="";for(let r=0;r<A.THEME_COLOR_LIMIT;r++){let i=A[`cScale${r}`];t+=`
|
||
.radarCurve-${r} {
|
||
color: ${i};
|
||
fill: ${i};
|
||
fill-opacity: ${e.curveOpacity};
|
||
stroke: ${i};
|
||
stroke-width: ${e.curveStrokeWidth};
|
||
}
|
||
.radarLegendBox-${r} {
|
||
fill: ${i};
|
||
fill-opacity: ${e.curveOpacity};
|
||
stroke: ${i};
|
||
}
|
||
`}return t},"genIndexStyles"),LMt=y((A)=>{let e=R0(),t=st(),r=si(e,t.themeVariables),i=si(r.radar,A);return{themeVariables:r,radarOptions:i}},"buildRadarStyleOptions"),RMt=y(({radar:A}={})=>{let{themeVariables:e,radarOptions:t}=LMt(A);return`
|
||
.radarTitle {
|
||
font-size: ${e.fontSize};
|
||
color: ${e.titleColor};
|
||
dominant-baseline: hanging;
|
||
text-anchor: middle;
|
||
}
|
||
.radarAxisLine {
|
||
stroke: ${t.axisColor};
|
||
stroke-width: ${t.axisStrokeWidth};
|
||
}
|
||
.radarAxisLabel {
|
||
font-size: ${t.axisLabelFontSize}px;
|
||
color: ${t.axisColor};
|
||
}
|
||
.radarGraticule {
|
||
fill: ${t.graticuleColor};
|
||
fill-opacity: ${t.graticuleOpacity};
|
||
stroke: ${t.graticuleColor};
|
||
stroke-width: ${t.graticuleStrokeWidth};
|
||
}
|
||
.radarLegendText {
|
||
text-anchor: start;
|
||
font-size: ${t.legendFontSize}px;
|
||
dominant-baseline: hanging;
|
||
}
|
||
${SMt(e,t)}
|
||
`},"styles"),Ane={parser:wMt,db:f7,renderer:xMt,styles:RMt}});function Cne(A){switch(sA.debug("typeStr2Type",A),A){case"[]":return"square";case"()":return sA.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function Bne(A){switch(sA.debug("typeStr2Type",A),A){case"==":return"thick";default:return"normal"}}function Ene(A){switch(A.trim().slice(-1)){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}function dne(A){switch(A.trim().charAt(0)){case"x":return"arrow_cross";case"o":return"arrow_circle";case"<":return"arrow_point";default:return"arrow_open"}}function Ine(A){return A.includes("==")?"thick":"normal"}function hne(A){if(A.includes(".-"))return"dotted";return"solid"}function EBA(A,e){if(A===0||!Number.isInteger(A))throw Error("Columns must be an integer !== 0.");if(e<0||!Number.isInteger(e))throw Error("Position must be a non-negative integer."+e);if(A<0)return{px:e,py:0};if(A===1)return{px:0,py:e};let t=e%A,r=Math.floor(e/A);return{px:t,py:r}}function rP(A,e,t=0,r=0,i=8){if(sA.debug("setBlockSizes abc95 (start)",A.id,A?.size?.x,"block width =",A?.size,"siblingWidth",t),!A?.size?.width)A.size={width:t,height:r,x:0,y:0};let u=0,a=0;if(A.children?.length>0){for(let E of A.children)rP(E,e,0,0,i);let n=ETt(A);u=n.width,a=n.height,sA.debug("setBlockSizes abc95 maxWidth of",A.id,":s children is ",u,a);for(let E of A.children)if(E.size)sA.debug(`abc95 Setting size of children of ${A.id} id=${E.id} ${u} ${a} ${JSON.stringify(E.size)}`),E.size.width=u*(E.widthInColumns??1)+i*((E.widthInColumns??1)-1),E.size.height=a,E.size.x=0,E.size.y=0,sA.debug(`abc95 updating size of ${A.id} children child:${E.id} maxWidth:${u} maxHeight:${a}`);for(let E of A.children)rP(E,e,u,a,i);let o=A.columns??-1,s=0;for(let E of A.children)s+=E.widthInColumns??1;let l=A.children.length;if(o>0&&o<s)l=o;let g=Math.ceil(s/l),C=l*(u+i)+i,B=g*(a+i)+i;if(C<t){sA.debug(`Detected to small sibling: abc95 ${A.id} siblingWidth ${t} siblingHeight ${r} width ${C}`),C=t,B=r;let E=(t-l*i-i)/l,d=(r-g*i-i)/g;sA.debug("Size indata abc88",A.id,"childWidth",E,"maxWidth",u),sA.debug("Size indata abc88",A.id,"childHeight",d,"maxHeight",a),sA.debug("Size indata abc88 xSize",l,"padding",i);for(let I of A.children)if(I.size)I.size.width=E,I.size.height=d,I.size.x=0,I.size.y=0}if(sA.debug(`abc95 (finale calc) ${A.id} xSize ${l} ySize ${g} columns ${o}${A.children.length} width=${Math.max(C,A.size?.width||0)}`),C<(A?.size?.width||0)){C=A?.size?.width||0;let E=o>0?Math.min(A.children.length,o):A.children.length;if(E>0){let d=(C-E*i-i)/E;sA.debug("abc95 (growing to fit) width",A.id,C,A.size?.width,d);for(let I of A.children)if(I.size)I.size.width=d}}A.size={width:C,height:B,x:0,y:0}}sA.debug("setBlockSizes abc94 (done)",A.id,A?.size?.x,A?.size?.width,A?.size?.y,A?.size?.height)}function fBA(A,e,t=8){sA.debug(`abc85 layout blocks (=>layoutBlocks) ${A.id} x: ${A?.size?.x} y: ${A?.size?.y} width: ${A?.size?.width}`);let r=A.columns??-1;if(sA.debug("layoutBlocks columns abc95",A.id,"=>",r,A),A.children&&A.children.length>0){let i=A?.children[0]?.size?.width??0,u=A.children.length*i+(A.children.length-1)*t;sA.debug("widthOfChildren 88",u,"posX");let a=new Map;{let g=0;for(let C of A.children){if(!C.size)continue;let{py:B}=EBA(r,g),E=a.get(B)??0;if(C.size.height>E)a.set(B,C.size.height);let d=C?.widthInColumns??1;if(r>0)d=Math.min(d,r-g%r);g+=d}}let n=new Map;{let g=0,C=[...a.keys()].sort((B,E)=>B-E);for(let B of C)n.set(B,g),g+=(a.get(B)??0)+t}let o=0;sA.debug("abc91 block?.size?.x",A.id,A?.size?.x);let s=A?.size?.x?A?.size?.x+(-A?.size?.width/2||0):-t,l=0;for(let g of A.children){let C=A;if(!g.size)continue;let{width:B,height:E}=g.size,{px:d,py:I}=EBA(r,o);if(I!=l)l=I,s=A?.size?.x?A?.size?.x+(-A?.size?.width/2||0):-t,sA.debug("New row in layout for block",A.id," and child ",g.id,l);if(sA.debug(`abc89 layout blocks (child) id: ${g.id} Pos: ${o} (px, py) ${d},${I} (${C?.size?.x},${C?.size?.y}) parent: ${C.id} width: ${B}${t}`),C.size){let Q=B/2;g.size.x=s+t+Q,sA.debug(`abc91 layout blocks (calc) px, pyid:${g.id} startingPos=X${s} new startingPosX${g.size.x} ${Q} padding=${t} width=${B} halfWidth=${Q} => x:${g.size.x} y:${g.size.y} ${g.widthInColumns} (width * (child?.w || 1)) / 2 ${B*(g?.widthInColumns??1)/2}`),s=g.size.x+Q;let p=n.get(I)??0,m=a.get(I)??E;g.size.y=C.size.y-C.size.height/2+p+m/2+t,sA.debug(`abc88 layout blocks (calc) px, pyid:${g.id}startingPosX${s}${t}${Q}=>x:${g.size.x}y:${g.size.y}${g.widthInColumns}(width * (child?.w || 1)) / 2${B*(g?.widthInColumns??1)/2}`)}if(g.children)fBA(g,e,t);let h=g?.widthInColumns??1;if(r>0)h=Math.min(h,r-o%r);o+=h,sA.debug("abc88 columnsPos",g,o)}}sA.debug(`layout blocks (<==layoutBlocks) ${A.id} x: ${A?.size?.x} y: ${A?.size?.y} width: ${A?.size?.width}`)}function mBA(A,{minX:e,minY:t,maxX:r,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(A.size&&A.id!=="root"){let{x:u,y:a,width:n,height:o}=A.size;if(u-n/2<e)e=u-n/2;if(a-o/2<t)t=a-o/2;if(u+n/2>r)r=u+n/2;if(a+o/2>i)i=a+o/2}if(A.children)for(let u of A.children)({minX:e,minY:t,maxX:r,maxY:i}=mBA(u,{minX:e,minY:t,maxX:r,maxY:i}));return{minX:e,minY:t,maxX:r,maxY:i}}function Qne(A){let e=A.getBlock("root");if(!e)return;let t=OA()?.block?.padding??8;rP(e,A,0,0,t),fBA(e,A,t),sA.debug("getBlocks",JSON.stringify(e,null,2));let{minX:r,minY:i,maxX:u,maxY:a}=mBA(e),n=a-i,o=u-r;return{x:r,y:i,width:o,height:n}}function m7(A,e){if(ki(OA())&&A)A.style.width=e.length*9+"px",A.style.height="12px"}function pne(A,e){return A.intersect(e)}function fne(A,e,t,r){var{x:i,y:u}=A,a=i-r.x,n=u-r.y,o=Math.sqrt(e*e*n*n+t*t*a*a),s=Math.abs(e*t*a/o);if(r.x<i)s=-s;var l=Math.abs(e*t*n/o);if(r.y<u)l=-l;return{x:i+s,y:u+l}}function Dne(A,e,t){return mne(A,e,e,t)}function yne(A,e,t,r){var i,u,a,n,o,s,l,g,C,B,E,d,I,h,Q;if(i=e.y-A.y,a=A.x-e.x,o=e.x*A.y-A.x*e.y,C=i*t.x+a*t.y+o,B=i*r.x+a*r.y+o,C!==0&&B!==0&&IBA(C,B))return;if(u=r.y-t.y,n=t.x-r.x,s=r.x*t.y-t.x*r.y,l=u*A.x+n*A.y+s,g=u*e.x+n*e.y+s,l!==0&&g!==0&&IBA(l,g))return;if(E=i*n-u*a,E===0)return;return d=Math.abs(E/2),I=a*s-n*o,h=I<0?(I-d)/E:(I+d)/E,I=u*o-i*s,Q=I<0?(I-d)/E:(I+d)/E,{x:h,y:Q}}function IBA(A,e){return A*e>0}function wne(A,e,t){var{x:r,y:i}=A,u=[],{POSITIVE_INFINITY:a,POSITIVE_INFINITY:n}=Number;if(typeof e.forEach==="function")e.forEach(function(E){a=Math.min(a,E.x),n=Math.min(n,E.y)});else a=Math.min(a,e.x),n=Math.min(n,e.y);var o=r-A.width/2-a,s=i-A.height/2-n;for(var l=0;l<e.length;l++){var g=e[l],C=e[l<e.length-1?l+1:0],B=kTt(A,t,{x:o+g.x,y:s+g.y},{x:o+C.x,y:s+C.y});if(B)u.push(B)}if(!u.length)return A;if(u.length>1)u.sort(function(E,d){var I=E.x-t.x,h=E.y-t.y,Q=Math.sqrt(I*I+h*h),p=d.x-t.x,m=d.y-t.y,f=Math.sqrt(p*p+m*m);return Q<f?-1:Q===f?0:1});return u[0]}function VC(A,e,t,r){return A.insert("polygon",":first-child").attr("points",r.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+t/2+")")}function iP(A,e,t,r){let i=[],u=y((n)=>{i.push(n,0)},"addBorder"),a=y((n)=>{i.push(0,n)},"skipBorder");if(e.includes("t"))sA.debug("add top border"),u(t);else a(t);if(e.includes("r"))sA.debug("add right border"),u(r);else a(r);if(e.includes("b"))sA.debug("add bottom border"),u(t);else a(t);if(e.includes("l"))sA.debug("add left border"),u(r);else a(r);A.attr("stroke-dasharray",i.join(" "))}function DBA(A,e,t=!1){let r=A,i="default";if((r?.classes?.length||0)>0)i=(r?.classes??[]).join(" ");i=i+" flowchart-label";let u=0,a="",n;switch(r.type){case"round":u=5,a="rect";break;case"composite":u=0,a="composite",n=0;break;case"square":a="rect";break;case"diamond":a="question";break;case"hexagon":a="hexagon";break;case"block_arrow":a="block_arrow";break;case"odd":a="rect_left_inv_arrow";break;case"lean_right":a="lean_right";break;case"lean_left":a="lean_left";break;case"trapezoid":a="trapezoid";break;case"inv_trapezoid":a="inv_trapezoid";break;case"rect_left_inv_arrow":a="rect_left_inv_arrow";break;case"circle":a="circle";break;case"ellipse":a="ellipse";break;case"stadium":a="stadium";break;case"subroutine":a="subroutine";break;case"cylinder":a="cylinder";break;case"group":a="rect";break;case"doublecircle":a="doublecircle";break;default:a="rect"}let o=AU(r?.styles??[]),s=r.label,l=r.size??{width:0,height:0,x:0,y:0},g=e.getDiagramId();return{labelStyle:o.labelStyle,shape:a,labelText:s,rx:u,ry:u,class:i,style:o.style,id:r.id,domId:g?`${g}-${r.id}`:r.id,directions:r.directions,width:l.width,height:l.height,x:l.x,y:l.y,positioned:t,intersect:void 0,type:r.type,padding:n??st()?.block?.padding??0,widthInColumns:r.widthInColumns??1}}async function vne(A,e,t){let r=DBA(e,t,!1);if(r.type==="group")return;let i=st(),u=await bne(A,r,{config:i}),a=u.node().getBBox(),n=t.getBlock(r.id);n.size={width:a.width,height:a.height,x:0,y:0,node:u},t.setBlock(n),u.remove()}async function kne(A,e,t){let r=DBA(e,t,!0);if(t.getBlock(r.id).type!=="space"){let u=st();await bne(A,r,{config:u}),e.intersect=r?.intersect,eYt(r)}}async function uP(A,e,t,r){for(let i of e)if(await r(A,i,t),i.children)await uP(A,i.children,t,r)}async function Fne(A,e,t){await uP(A,e,t,vne)}async function xne(A,e,t){await uP(A,e,t,kne)}async function Sne(A,e,t,r,i){let u=new ji({multigraph:!0,compound:!0});u.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let a of t)if(a.size)u.setNode(a.id,{width:a.size.width,height:a.size.height,intersect:a.intersect});for(let a of e)if(a.start&&a.end){let n=r.getBlock(a.start),o=r.getBlock(a.end);if(n?.size&&o?.size){let s=n.size,l=o.size,g=[{x:s.x,y:s.y},{x:s.x+(l.x-s.x)/2,y:s.y+(l.y-s.y)/2},{x:l.x,y:l.y}],C=i?`${i}-${a.id}`:a.id,B=a.thickness==="thick"?"edge-thickness-thick":"edge-thickness-normal",E=a.pattern==="dotted"?"edge-pattern-dotted":"edge-pattern-solid",d=`${B} ${E} flowchart-link LS-a1 LE-b1`;if(DTt(A,{v:a.start,w:a.end,name:C},{...a,id:C,arrowTypeEnd:a.arrowTypeEnd,arrowTypeStart:a.arrowTypeStart,points:g,classes:d},void 0,"block",u,i),a.label)await QTt(A,{...a,label:a.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:a.arrowTypeEnd,arrowTypeStart:a.arrowTypeStart,points:g,classes:d}),pTt({...a,x:g[1].x,y:g[1].y},{originalPath:g})}}}var CBA,NMt,ZC,hBA,BBA,tne="color",rne="fill",GMt="bgFill",gne=",",tP,QBA="",UMt,MMt,TMt,YMt,cne,pBA,D7,HMt,ine=0,KMt,JMt,OMt,PMt,_Mt,WMt,qMt,zMt,ZMt,VMt,jMt,XMt,$Mt,ATt,cBA,eTt,tTt,rTt,iTt,uTt,aTt,nTt,oTt,sTt,lTt,gTt,cTt,CTt,BTt,ETt,dTt,zC,ITt,hTt,une,dBA,P0,QTt,pTt,fTt,mTt,ane,DTt,yTt,wTt,bTt,mne,vTt,kTt,FTt,xTt,STt,pa,Ho,en,LTt,RTt,nne,wg,one,NTt,GTt,UTt,MTt,TTt,YTt,HTt,KTt,JTt,OTt,PTt,_Tt,WTt,qTt,zTt,ZTt,VTt,jTt,XTt,sne,$Tt,AYt,lne,eP,bne,eYt,tYt,rYt,iYt,Lne;var Rne=P(()=>{KE();ds();r0();eo();Rn();ai();rr();ir();Nt();jG();kn();Pr();gg();Pr();Pr();Pr();CBA=function(){var A=y(function(p,m,f,D){for(f=f||{},D=p.length;D--;f[p[D]]=m);return f},"o"),e=[1,15],t=[1,7],r=[1,13],i=[1,14],u=[1,19],a=[1,16],n=[1,17],o=[1,18],s=[8,30],l=[8,10,21,28,29,30,31,39,43,46],g=[1,23],C=[1,24],B=[8,10,15,16,21,28,29,30,31,39,43,46],E=[8,10,15,16,21,27,28,29,30,31,39,43,46],d=[1,49],I={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:y(function(m,f,D,w,b,F,v){var S=F.length-1;switch(b){case 4:w.getLogger().debug("Rule: separator (NL) ");break;case 5:w.getLogger().debug("Rule: separator (Space) ");break;case 6:w.getLogger().debug("Rule: separator (EOF) ");break;case 7:w.getLogger().debug("Rule: hierarchy: ",F[S-1]),w.setHierarchy(F[S-1]);break;case 8:w.getLogger().debug("Stop NL ");break;case 9:w.getLogger().debug("Stop EOF ");break;case 10:w.getLogger().debug("Stop NL2 ");break;case 11:w.getLogger().debug("Stop EOF2 ");break;case 12:w.getLogger().debug("Rule: statement: ",F[S]),typeof F[S].length==="number"?this.$=F[S]:this.$=[F[S]];break;case 13:w.getLogger().debug("Rule: statement #2: ",F[S-1]),this.$=[F[S-1]].concat(F[S]);break;case 14:w.getLogger().debug("Rule: link: ",F[S],m),this.$={edgeTypeStr:F[S],label:""};break;case 15:w.getLogger().debug("Rule: LABEL link: ",F[S-3],F[S-1],F[S]),this.$={edgeTypeStr:F[S],label:F[S-1]};break;case 18:let x=parseInt(F[S]),k=w.generateId();this.$={id:k,type:"space",label:"",width:x,children:[]};break;case 23:w.getLogger().debug("Rule: (nodeStatement link node) ",F[S-2],F[S-1],F[S]," typestr: ",F[S-1].edgeTypeStr);let T=w.edgeStrToEdgeData(F[S-1].edgeTypeStr),R=w.edgeStrToEdgeStartData(F[S-1].edgeTypeStr),L=w.edgeStrToThickness(F[S-1].edgeTypeStr),M=w.edgeStrToPattern(F[S-1].edgeTypeStr);this.$=[{id:F[S-2].id,label:F[S-2].label,type:F[S-2].type,directions:F[S-2].directions},{id:F[S-2].id+"-"+F[S].id,start:F[S-2].id,end:F[S].id,label:F[S-1].label,type:"edge",thickness:L,pattern:M,directions:F[S].directions,arrowTypeEnd:T,arrowTypeStart:R},{id:F[S].id,label:F[S].label,type:w.typeStr2Type(F[S].typeStr),directions:F[S].directions}];break;case 24:w.getLogger().debug("Rule: nodeStatement (abc88 node size) ",F[S-1],F[S]),this.$={id:F[S-1].id,label:F[S-1].label,type:w.typeStr2Type(F[S-1].typeStr),directions:F[S-1].directions,widthInColumns:parseInt(F[S],10)};break;case 25:w.getLogger().debug("Rule: nodeStatement (node) ",F[S]),this.$={id:F[S].id,label:F[S].label,type:w.typeStr2Type(F[S].typeStr),directions:F[S].directions,widthInColumns:1};break;case 26:w.getLogger().debug("APA123",this?this:"na"),w.getLogger().debug("COLUMNS: ",F[S]),this.$={type:"column-setting",columns:F[S]==="auto"?-1:parseInt(F[S])};break;case 27:w.getLogger().debug("Rule: id-block statement : ",F[S-2],F[S-1]);let U=w.generateId();this.$={...F[S-2],type:"composite",children:F[S-1]};break;case 28:w.getLogger().debug("Rule: blockStatement : ",F[S-2],F[S-1],F[S]);let Y=w.generateId();this.$={id:Y,type:"composite",label:"",children:F[S-1]};break;case 29:w.getLogger().debug("Rule: node (NODE_ID separator): ",F[S]),this.$={id:F[S]};break;case 30:w.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",F[S-1],F[S]),this.$={id:F[S-1],label:F[S].label,typeStr:F[S].typeStr,directions:F[S].directions};break;case 31:w.getLogger().debug("Rule: dirList: ",F[S]),this.$=[F[S]];break;case 32:w.getLogger().debug("Rule: dirList: ",F[S-1],F[S]),this.$=[F[S-1]].concat(F[S]);break;case 33:w.getLogger().debug("Rule: nodeShapeNLabel: ",F[S-2],F[S-1],F[S]),this.$={typeStr:F[S-2]+F[S],label:F[S-1]};break;case 34:w.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",F[S-3],F[S-2]," #3:",F[S-1],F[S]),this.$={typeStr:F[S-3]+F[S],label:F[S-2],directions:F[S-1]};break;case 35:case 36:this.$={type:"classDef",id:F[S-1].trim(),css:F[S].trim()};break;case 37:this.$={type:"applyClass",id:F[S-1].trim(),styleClass:F[S].trim()};break;case 38:this.$={type:"applyStyles",id:F[S-1].trim(),stylesStr:F[S].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:e,11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:i,31:u,39:a,43:n,46:o},{8:[1,20]},A(s,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:e,21:t,28:r,29:i,31:u,39:a,43:n,46:o}),A(l,[2,16],{14:22,15:g,16:C}),A(l,[2,17]),A(l,[2,18]),A(l,[2,19]),A(l,[2,20]),A(l,[2,21]),A(l,[2,22]),A(B,[2,25],{27:[1,25]}),A(l,[2,26]),{19:26,26:12,31:u},{10:e,11:27,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:i,31:u,39:a,43:n,46:o},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},A(E,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},A(s,[2,13]),{26:35,31:u},{31:[2,14]},{17:[1,36]},A(B,[2,24]),{10:e,11:37,13:4,14:22,15:g,16:C,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:i,31:u,39:a,43:n,46:o},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},A(E,[2,30]),{18:[1,43]},{18:[1,44]},A(B,[2,23]),{18:[1,45]},{30:[1,46]},A(l,[2,28]),A(l,[2,35]),A(l,[2,36]),A(l,[2,37]),A(l,[2,38]),{36:[1,47]},{33:48,34:d},{15:[1,50]},A(l,[2,27]),A(E,[2,33]),{38:[1,51]},{33:52,34:d,38:[2,31]},{31:[2,15]},A(E,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:y(function(m,f){if(f.recoverable)this.trace(m);else{var D=Error(m);throw D.hash=f,D}},"parseError"),parse:y(function(m){var f=this,D=[0],w=[],b=[null],F=[],v=this.table,S="",x=0,k=0,T=0,R=2,L=1,M=F.slice.call(arguments,1),U=Object.create(this.lexer),Y={yy:{}};for(var H in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,H))Y.yy[H]=this.yy[H];if(U.setInput(m,Y.yy),Y.yy.lexer=U,Y.yy.parser=this,typeof U.yylloc>"u")U.yylloc={};var J=U.yylloc;F.push(J);var K=U.options&&U.options.ranges;if(typeof Y.yy.parseError==="function")this.parseError=Y.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function O(qA){D.length=D.length-2*qA,b.length=b.length-qA,F.length=F.length-qA}y(O,"popStack");function _(){var qA=w.pop()||U.lex()||L;if(typeof qA!=="number"){if(qA instanceof Array)w=qA,qA=w.pop();qA=f.symbols_[qA]||qA}return qA}y(_,"lex");var z,j,q,CA,tA,lA,gA={},aA,RA,wA,JA;while(!0){if(q=D[D.length-1],this.defaultActions[q])CA=this.defaultActions[q];else{if(z===null||typeof z>"u")z=_();CA=v[q]&&v[q][z]}if(typeof CA>"u"||!CA.length||!CA[0]){var TA="";JA=[];for(aA in v[q])if(this.terminals_[aA]&&aA>R)JA.push("'"+this.terminals_[aA]+"'");if(U.showPosition)TA="Parse error on line "+(x+1)+`:
|
||
`+U.showPosition()+`
|
||
Expecting `+JA.join(", ")+", got '"+(this.terminals_[z]||z)+"'";else TA="Parse error on line "+(x+1)+": Unexpected "+(z==L?"end of input":"'"+(this.terminals_[z]||z)+"'");this.parseError(TA,{text:U.match,token:this.terminals_[z]||z,line:U.yylineno,loc:J,expected:JA})}if(CA[0]instanceof Array&&CA.length>1)throw Error("Parse Error: multiple actions possible at state: "+q+", token: "+z);switch(CA[0]){case 1:if(D.push(z),b.push(U.yytext),F.push(U.yylloc),D.push(CA[1]),z=null,!j){if(k=U.yyleng,S=U.yytext,x=U.yylineno,J=U.yylloc,T>0)T--}else z=j,j=null;break;case 2:if(RA=this.productions_[CA[1]][1],gA.$=b[b.length-RA],gA._$={first_line:F[F.length-(RA||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(RA||1)].first_column,last_column:F[F.length-1].last_column},K)gA._$.range=[F[F.length-(RA||1)].range[0],F[F.length-1].range[1]];if(lA=this.performAction.apply(gA,[S,k,x,Y.yy,CA[1],b,F].concat(M)),typeof lA<"u")return lA;if(RA)D=D.slice(0,-1*RA*2),b=b.slice(0,-1*RA),F=F.slice(0,-1*RA);D.push(this.productions_[CA[1]][0]),b.push(gA.$),F.push(gA._$),wA=v[D[D.length-2]][D[D.length-1]],D.push(wA);break;case 3:return!0}}return!0},"parse")},h=function(){var p={EOF:1,parseError:y(function(f,D){if(this.yy.parser)this.yy.parser.parseError(f,D);else throw Error(f)},"parseError"),setInput:y(function(m,f){if(this.yy=f||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var f=m.match(/(?:\r\n?|\n).*/g);if(f)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),m},"input"),unput:y(function(m){var f=m.length,D=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-f),this.offset-=f;var w=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),D.length-1)this.yylineno-=D.length-1;var b=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:D?(D.length===w.length?this.yylloc.first_column:0)+w[w.length-D.length].length-D[0].length:this.yylloc.first_column-f},this.options.ranges)this.yylloc.range=[b[0],b[0]+this.yyleng-f];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(m){this.unput(this.match.slice(m))},"less"),pastInput:y(function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var m=this.match;if(m.length<20)m+=this._input.substr(0,20-m.length);return(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var m=this.pastInput(),f=Array(m.length+1).join("-");return m+this.upcomingInput()+`
|
||
`+f+"^"},"showPosition"),test_match:y(function(m,f){var D,w,b;if(this.options.backtrack_lexer){if(b={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)b.yylloc.range=this.yylloc.range.slice(0)}if(w=m[0].match(/(?:\r\n?|\n).*/g),w)this.yylineno+=w.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:w?w[w.length-1].length-w[w.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+m[0].length},this.yytext+=m[0],this.match+=m[0],this.matches=m,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(m[0].length),this.matched+=m[0],D=this.performAction.call(this,this.yy,this,f,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(D)return D;else if(this._backtrack){for(var F in b)this[F]=b[F];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var m,f,D,w;if(!this._more)this.yytext="",this.match="";var b=this._currentRules();for(var F=0;F<b.length;F++)if(D=this._input.match(this.rules[b[F]]),D&&(!f||D[0].length>f[0].length)){if(f=D,w=F,this.options.backtrack_lexer)if(m=this.test_match(D,b[F]),m!==!1)return m;else if(this._backtrack){f=!1;continue}else return!1;else if(!this.options.flex)break}if(f){if(m=this.test_match(f,b[w]),m!==!1)return m;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var f=this.next();if(f)return f;else return this.lex()},"lex"),begin:y(function(f){this.conditionStack.push(f)},"begin"),popState:y(function(){var f=this.conditionStack.length-1;if(f>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(f){if(f=this.conditionStack.length-1-Math.abs(f||0),f>=0)return this.conditionStack[f];else return"INITIAL"},"topState"),pushState:y(function(f){this.begin(f)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(f,D,w,b){var F=b;switch(w){case 0:return f.getLogger().debug("Found block-beta"),10;break;case 1:return f.getLogger().debug("Found id-block"),29;break;case 2:return f.getLogger().debug("Found block"),10;break;case 3:f.getLogger().debug(".",D.yytext);break;case 4:f.getLogger().debug("_",D.yytext);break;case 5:return 5;case 6:return D.yytext=-1,28;break;case 7:return D.yytext=D.yytext.replace(/columns\s+/,""),f.getLogger().debug("COLUMNS (LEX)",D.yytext),28;break;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:f.getLogger().debug("LEX: POPPING STR:",D.yytext),this.popState();break;case 13:return f.getLogger().debug("LEX: STR end:",D.yytext),"STR";break;case 14:return D.yytext=D.yytext.replace(/space\:/,""),f.getLogger().debug("SPACE NUM (LEX)",D.yytext),21;break;case 15:return D.yytext="1",f.getLogger().debug("COLUMNS (LEX)",D.yytext),21;break;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;break;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 21:return this.popState(),this.pushState("CLASSDEFID"),40;break;case 22:return this.popState(),41;break;case 23:return this.pushState("CLASS"),43;break;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;break;case 25:return this.popState(),45;break;case 26:return this.pushState("STYLE_STMNT"),46;break;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;break;case 28:return this.popState(),48;break;case 29:return this.pushState("acc_title"),"acc_title";break;case 30:return this.popState(),"acc_title_value";break;case 31:return this.pushState("acc_descr"),"acc_descr";break;case 32:return this.popState(),"acc_descr_value";break;case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),f.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),f.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),f.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),f.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),f.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),f.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),f.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),f.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),f.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),f.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),f.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),f.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return f.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return f.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return f.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return f.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return f.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return f.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 65:return this.pushState("NODE"),35;break;case 66:return this.pushState("NODE"),35;break;case 67:return this.pushState("NODE"),35;break;case 68:return this.pushState("NODE"),35;break;case 69:return this.pushState("NODE"),35;break;case 70:return this.pushState("NODE"),35;break;case 71:return this.pushState("NODE"),35;break;case 72:return f.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),f.getLogger().debug("LEX ARR START"),37;break;case 74:return f.getLogger().debug("Lex: NODE_ID",D.yytext),31;break;case 75:return f.getLogger().debug("Lex: EOF",D.yytext),8;break;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:f.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:f.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return f.getLogger().debug("LEX: NODE_DESCR:",D.yytext),"NODE_DESCR";break;case 83:f.getLogger().debug("LEX POPPING"),this.popState();break;case 84:f.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (right): dir:",D.yytext),"DIR";break;case 86:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (left):",D.yytext),"DIR";break;case 87:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (x):",D.yytext),"DIR";break;case 88:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (y):",D.yytext),"DIR";break;case 89:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (up):",D.yytext),"DIR";break;case 90:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (down):",D.yytext),"DIR";break;case 91:return D.yytext="]>",f.getLogger().debug("Lex (ARROW_DIR end):",D.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return f.getLogger().debug("Lex: LINK","#"+D.yytext+"#"),15;break;case 93:return f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 94:return f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 95:return f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 96:return f.getLogger().debug("Lex: START_LINK",D.yytext),this.pushState("LLABEL"),16;break;case 97:return f.getLogger().debug("Lex: START_LINK",D.yytext),this.pushState("LLABEL"),16;break;case 98:return f.getLogger().debug("Lex: START_LINK",D.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return f.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),f.getLogger().debug("Lex: LINK","#"+D.yytext+"#"),15;break;case 102:return this.popState(),f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 103:return this.popState(),f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 104:return f.getLogger().debug("Lex: COLON",D.yytext),D.yytext=D.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:=]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return p}();I.lexer=h;function Q(){this.yy={}}return y(Q,"Parser"),Q.prototype=I,I.Parser=Q,new Q}();CBA.parser=CBA;NMt=CBA,ZC=new Map,hBA=[],BBA=new Map,tP=new Map,UMt=y((A)=>_e.sanitizeText(A,OA()),"sanitizeText"),MMt=y(function(A,e=""){let t=tP.get(A);if(!t)t={id:A,styles:[],textStyles:[]},tP.set(A,t);if(e!==void 0&&e!==null)e.split(gne).forEach((r)=>{let i=r.replace(/([^;]*);/,"$1").trim();if(RegExp(tne).exec(r)){let a=i.replace(rne,GMt).replace(tne,rne);t.textStyles.push(a)}t.styles.push(i)})},"addStyleClass"),TMt=y(function(A,e=""){let t=ZC.get(A);if(e!==void 0&&e!==null)t.styles=e.split(gne)},"addStyle2Node"),YMt=y(function(A,e){A.split(",").forEach(function(t){let r=ZC.get(t);if(r===void 0){let i=t.trim();r={id:i,type:"na",children:[]},ZC.set(i,r)}if(!r.classes)r.classes=[];r.classes.push(e)})},"setCssClass"),cne=y((A,e)=>{let t=A.flat(),r=[],u=t.find((a)=>a?.type==="column-setting")?.columns??-1;for(let a of t){if(typeof u==="number"&&u>0&&a.type!=="column-setting"&&typeof a.widthInColumns==="number"&&a.widthInColumns>u)sA.warn(`Block ${a.id} width ${a.widthInColumns} exceeds configured column width ${u}`);if(a.label)a.label=UMt(a.label);if(a.type==="classDef"){MMt(a.id,a.css);continue}if(a.type==="applyClass"){YMt(a.id,a?.styleClass??"");continue}if(a.type==="applyStyles"){if(a?.stylesStr)TMt(a.id,a?.stylesStr);continue}if(a.type==="column-setting")e.columns=a.columns??-1;else if(a.type==="edge"){let n=(BBA.get(a.id)??0)+1;BBA.set(a.id,n),a.id=n+"-"+a.id,hBA.push(a)}else{if(!a.label)if(a.type==="composite")a.label="";else a.label=a.id;let n=ZC.get(a.id);if(n===void 0)ZC.set(a.id,a);else{if(a.type!=="na")n.type=a.type;if(a.label!==a.id)n.label=a.label}if(a.children)cne(a.children,a);if(a.type==="space"){let o=a.width??1;for(let s=0;s<o;s++){let l=teA(a);l.id=l.id+"-"+s,ZC.set(l.id,l),r.push(l)}}else if(n===void 0)r.push(a)}}e.children=r},"populateBlockDatabase"),pBA=[],D7={id:"root",type:"composite",children:[],columns:-1},HMt=y(()=>{sA.debug("Clear called"),sr(),D7={id:"root",type:"composite",children:[],columns:-1},ZC=new Map([["root",D7]]),pBA=[],tP=new Map,hBA=[],BBA=new Map,QBA=""},"clear");y(Cne,"typeStr2Type");y(Bne,"edgeTypeStr2Type");y(Ene,"edgeStrToEdgeData");y(dne,"edgeStrToEdgeStartData");y(Ine,"edgeStrToThickness");y(hne,"edgeStrToPattern");KMt=y(()=>(ine++,"id-"+Math.random().toString(36).substr(2,12)+"-"+ine),"generateId"),JMt=y((A)=>{D7.children=A,cne(A,D7),pBA=D7.children},"setHierarchy"),OMt=y((A)=>{let e=ZC.get(A);if(!e)return-1;if(e.columns)return e.columns;if(!e.children)return-1;return e.children.length},"getColumns"),PMt=y(()=>[...ZC.values()],"getBlocksFlat"),_Mt=y(()=>pBA||[],"getBlocks"),WMt=y(()=>hBA,"getEdges"),qMt=y((A)=>ZC.get(A),"getBlock"),zMt=y((A)=>{ZC.set(A.id,A)},"setBlock"),ZMt=y((A)=>{QBA=A},"setDiagramId"),VMt=y(()=>QBA,"getDiagramId"),jMt=y(()=>sA,"getLogger"),XMt=y(function(){return tP},"getClasses"),$Mt={getConfig:y(()=>st().block,"getConfig"),typeStr2Type:Cne,edgeTypeStr2Type:Bne,edgeStrToEdgeData:Ene,edgeStrToEdgeStartData:dne,edgeStrToThickness:Ine,edgeStrToPattern:hne,getLogger:jMt,getBlocksFlat:PMt,getBlocks:_Mt,getEdges:WMt,setHierarchy:JMt,getBlock:qMt,setBlock:zMt,getColumns:OMt,getClasses:XMt,clear:HMt,generateId:KMt,setDiagramId:ZMt,getDiagramId:VMt},ATt=$Mt,cBA=y((A,e)=>{let t=_p,r=t(A,"r"),i=t(A,"g"),u=t(A,"b");return ln(r,i,u,e)},"fade"),eTt=y((A)=>`.label {
|
||
font-family: ${A.fontFamily};
|
||
color: ${A.nodeTextColor||A.textColor};
|
||
}
|
||
.cluster-label text {
|
||
fill: ${A.titleColor};
|
||
}
|
||
.cluster-label span,p {
|
||
color: ${A.titleColor};
|
||
}
|
||
|
||
|
||
|
||
.label text,span,p {
|
||
fill: ${A.nodeTextColor||A.textColor};
|
||
color: ${A.nodeTextColor||A.textColor};
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
.flowchart-label text {
|
||
text-anchor: middle;
|
||
}
|
||
// .flowchart-label .text-outer-tspan {
|
||
// text-anchor: middle;
|
||
// }
|
||
// .flowchart-label .text-inner-tspan {
|
||
// text-anchor: start;
|
||
// }
|
||
|
||
.node .label {
|
||
text-align: center;
|
||
}
|
||
.node.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
.arrowheadPath {
|
||
fill: ${A.arrowheadColor};
|
||
}
|
||
|
||
.edgePath .path {
|
||
stroke: ${A.lineColor};
|
||
stroke-width: 2.0px;
|
||
}
|
||
|
||
.flowchart-link {
|
||
stroke: ${A.lineColor};
|
||
fill: none;
|
||
}
|
||
|
||
.edgeLabel {
|
||
background-color: ${A.edgeLabelBackground};
|
||
/*
|
||
* This is for backward compatibility with existing code that didn't
|
||
* add a \`<p>\` around edge labels.
|
||
*
|
||
* TODO: We should probably remove this in a future release.
|
||
*/
|
||
p {
|
||
margin: 0;
|
||
padding: 0;
|
||
display: inline;
|
||
}
|
||
rect {
|
||
opacity: 0.5;
|
||
background-color: ${A.edgeLabelBackground};
|
||
fill: ${A.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
|
||
/* For html labels only */
|
||
.labelBkg {
|
||
background-color: ${A.edgeLabelBackground};
|
||
}
|
||
|
||
.node .cluster {
|
||
// fill: ${cBA(A.mainBkg,0.5)};
|
||
fill: ${cBA(A.clusterBkg,0.5)};
|
||
stroke: ${cBA(A.clusterBorder,0.2)};
|
||
box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.cluster text {
|
||
fill: ${A.titleColor};
|
||
}
|
||
|
||
.cluster span,p {
|
||
color: ${A.titleColor};
|
||
}
|
||
/* .cluster div {
|
||
color: ${A.titleColor};
|
||
} */
|
||
|
||
div.mermaidTooltip {
|
||
position: absolute;
|
||
text-align: center;
|
||
max-width: 200px;
|
||
padding: 2px;
|
||
font-family: ${A.fontFamily};
|
||
font-size: 12px;
|
||
background: ${A.tertiaryColor};
|
||
border: 1px solid ${A.border2};
|
||
border-radius: 2px;
|
||
pointer-events: none;
|
||
z-index: 100;
|
||
}
|
||
|
||
.flowchartTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${A.textColor};
|
||
}
|
||
${HE()}
|
||
`,"getStyles"),tTt=eTt,rTt=y((A,e,t,r)=>{e.forEach((i)=>{CTt[i](A,t,r)})},"insertMarkers"),iTt=y((A,e,t)=>{sA.trace("Making markers for ",t),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),uTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),aTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),nTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),oTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),sTt=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),lTt=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),gTt=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),cTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),CTt={extension:iTt,composition:uTt,aggregation:aTt,dependency:nTt,lollipop:oTt,point:sTt,circle:lTt,cross:gTt,barb:cTt},BTt=rTt;y(EBA,"calculateBlockPosition");ETt=y((A)=>{let e=0,t=0;for(let r of A.children){let{width:i,height:u,x:a,y:n}=r.size??{width:0,height:0,x:0,y:0};if(sA.debug("getMaxChildSize abc95 child:",r.id,"width:",i,"height:",u,"x:",a,"y:",n,r.type),r.type==="space")continue;let o=i/(r.widthInColumns??1);if(o>e)e=o;if(u>t)t=u}return{width:e,height:t}},"getMaxChildSize");y(rP,"setBlockSizes");y(fBA,"layoutBlocks");y(mBA,"findBounds");y(Qne,"layout");dTt=y(async(A,e,t,r=!1,i=!1)=>{let u=e||"";if(typeof u==="object")u=u[0];let a=OA(),n=ki(a);return await Nn(A,u,{style:t,isTitle:r,useHtmlLabels:n,markdown:!1,isNode:i,width:Number.POSITIVE_INFINITY},a)},"createLabel"),zC=dTt,ITt=y((A,e,t,r,i)=>{if(e.arrowTypeStart)une(A,"start",e.arrowTypeStart,t,r,i);if(e.arrowTypeEnd)une(A,"end",e.arrowTypeEnd,t,r,i)},"addEdgeMarkers"),hTt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},une=y((A,e,t,r,i,u)=>{let a=hTt[t];if(!a){sA.warn(`Unknown arrow type: ${t}`);return}let n=e==="start"?"Start":"End";A.attr(`marker-${e}`,`url(${r}#${i}_${u}-${a}${n})`)},"addEdgeMarker"),dBA={},P0={},QTt=y(async(A,e)=>{let t=OA(),r=ki(t),i=A.insert("g").attr("class","edgeLabel"),u=i.insert("g").attr("class","label"),a=e.labelType==="markdown",n=await Nn(A,e.label,{style:e.labelStyle,useHtmlLabels:r,addSvgBackground:a,isNode:!1,markdown:a,width:a?void 0:Number.POSITIVE_INFINITY},t);u.node().appendChild(n);let o=n.getBBox(),s=o;if(r){let g=n.children[0],C=Qe(n);o=g.getBoundingClientRect(),s=o,C.attr("width",o.width),C.attr("height",o.height)}else{let g=Qe(n).select("text").node();if(g&&typeof g.getBBox==="function")s=g.getBBox()}u.attr("transform",$g(s,r)),dBA[e.id]=i,e.width=o.width,e.height=o.height;let l;if(e.startLabelLeft){let g=A.insert("g").attr("class","edgeTerminals"),C=g.insert("g").attr("class","inner"),B=await zC(C,e.startLabelLeft,e.labelStyle);l=B;let E=B.getBBox();if(r){let d=B.children[0],I=Qe(B);E=d.getBoundingClientRect(),I.attr("width",E.width),I.attr("height",E.height)}if(C.attr("transform",$g(E,r)),!P0[e.id])P0[e.id]={};P0[e.id].startLeft=g,m7(l,e.startLabelLeft)}if(e.startLabelRight){let g=A.insert("g").attr("class","edgeTerminals"),C=g.insert("g").attr("class","inner"),B=await zC(C,e.startLabelRight,e.labelStyle);l=B;let E=B.getBBox();if(r){let d=B.children[0],I=Qe(B);E=d.getBoundingClientRect(),I.attr("width",E.width),I.attr("height",E.height)}if(C.attr("transform",$g(E,r)),!P0[e.id])P0[e.id]={};P0[e.id].startRight=g,m7(l,e.startLabelRight)}if(e.endLabelLeft){let g=A.insert("g").attr("class","edgeTerminals"),C=g.insert("g").attr("class","inner"),B=await zC(g,e.endLabelLeft,e.labelStyle);l=B;let E=B.getBBox();if(r){let d=B.children[0],I=Qe(B);E=d.getBoundingClientRect(),I.attr("width",E.width),I.attr("height",E.height)}if(C.attr("transform",$g(E,r)),!P0[e.id])P0[e.id]={};P0[e.id].endLeft=g,m7(l,e.endLabelLeft)}if(e.endLabelRight){let g=A.insert("g").attr("class","edgeTerminals"),C=g.insert("g").attr("class","inner"),B=await zC(g,e.endLabelRight,e.labelStyle);l=B;let E=B.getBBox();if(r){let d=B.children[0],I=Qe(B);E=d.getBoundingClientRect(),I.attr("width",E.width),I.attr("height",E.height)}if(C.attr("transform",$g(E,r)),!P0[e.id])P0[e.id]={};P0[e.id].endRight=g,m7(l,e.endLabelRight)}return n},"insertEdgeLabel");y(m7,"setTerminalWidth");pTt=y((A,e)=>{sA.debug("Moving label abc88 ",A.id,A.label,dBA[A.id],e);let t=e.updatedPath?e.updatedPath:e.originalPath,r=OA(),{subGraphTitleTotalMargin:i}=fC(r);if(A.label){let u=dBA[A.id],{x:a,y:n}=A;if(t){let o=Jt.calcLabelPosition(t);if(sA.debug("Moving label "+A.label+" from (",a,",",n,") to (",o.x,",",o.y,") abc88"),e.updatedPath)a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n+i/2})`)}if(A.startLabelLeft){let u=P0[A.id].startLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.startLabelRight){let u=P0[A.id].startRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelLeft){let u=P0[A.id].endLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelRight){let u=P0[A.id].endRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}},"positionEdgeLabel"),fTt=y((A,e)=>{let{x:t,y:r}=A,i=Math.abs(e.x-t),u=Math.abs(e.y-r),a=A.width/2,n=A.height/2;if(i>=a||u>=n)return!0;return!1},"outsideNode"),mTt=y((A,e,t)=>{sA.debug(`intersection calc abc89:
|
||
outsidePoint: ${JSON.stringify(e)}
|
||
insidePoint : ${JSON.stringify(t)}
|
||
node : x:${A.x} y:${A.y} w:${A.width} h:${A.height}`);let{x:r,y:i}=A,u=Math.abs(r-t.x),a=A.width/2,n=t.x<e.x?a-u:a+u,o=A.height/2,s=Math.abs(e.y-t.y),l=Math.abs(e.x-t.x);if(Math.abs(i-e.y)*a>Math.abs(r-e.x)*o){let g=t.y<e.y?e.y-o-i:i-o-e.y;n=l*g/s;let C={x:t.x<e.x?t.x+n:t.x-l+n,y:t.y<e.y?t.y+s-g:t.y-s+g};if(n===0)C.x=e.x,C.y=e.y;if(l===0)C.x=e.x;if(s===0)C.y=e.y;return sA.debug(`abc89 topp/bott calc, Q ${s}, q ${g}, R ${l}, r ${n}`,C),C}else{if(t.x<e.x)n=e.x-a-r;else n=r-a-e.x;let g=s*n/l,C=t.x<e.x?t.x+l-n:t.x-l+n,B=t.y<e.y?t.y+g:t.y-g;if(sA.debug(`sides calc abc89, Q ${s}, q ${g}, R ${l}, r ${n}`,{_x:C,_y:B}),n===0)C=e.x,B=e.y;if(l===0)C=e.x;if(s===0)B=e.y;return{x:C,y:B}}},"intersection"),ane=y((A,e)=>{sA.debug("abc88 cutPathAtIntersect",A,e);let t=[],r=A[0],i=!1;return A.forEach((u)=>{if(!fTt(e,u)&&!i){let a=mTt(e,r,u),n=!1;if(t.forEach((o)=>{n=n||o.x===a.x&&o.y===a.y}),!t.some((o)=>o.x===a.x&&o.y===a.y))t.push(a);i=!0}else if(r=u,!i)t.push(u)}),t},"cutPathAtIntersect"),DTt=y(function(A,e,t,r,i,u,a){let n=t.points;sA.debug("abc88 InsertEdge: edge=",t,"e=",e);let o=!1,s=u.node(e.v);var l=u.node(e.w);if(l?.intersect&&s?.intersect)n=n.slice(1,t.points.length-1),n.unshift(s.intersect(n[0])),n.push(l.intersect(n[n.length-1]));if(t.toCluster)sA.debug("to cluster abc88",r[t.toCluster]),n=ane(t.points,r[t.toCluster].node),o=!0;if(t.fromCluster)sA.debug("from cluster abc88",r[t.fromCluster]),n=ane(n.reverse(),r[t.fromCluster].node).reverse(),o=!0;let g=n.filter((m)=>!Number.isNaN(m.y)),C=QC;if(t.curve&&(i==="graph"||i==="flowchart"))C=t.curve;let{x:B,y:E}=kU(t),d=hC().x(B).y(E).curve(C),I;switch(t.thickness){case"normal":I="edge-thickness-normal";break;case"thick":I="edge-thickness-thick";break;case"invisible":I="edge-thickness-thick";break;default:I=""}switch(t.pattern){case"solid":I+=" edge-pattern-solid";break;case"dotted":I+=" edge-pattern-dotted";break;case"dashed":I+=" edge-pattern-dashed";break}let h=A.append("path").attr("d",d(g)).attr("id",t.id).attr("class"," "+I+(t.classes?" "+t.classes:"")).attr("style",t.style),Q="";if(OA().flowchart.arrowMarkerAbsolute||OA().state.arrowMarkerAbsolute)Q=ef(!0);ITt(h,t,Q,a,i);let p={};if(o)p.updatedPath=n;return p.originalPath=t.points,p},"insertEdge"),yTt=y((A)=>{let e=new Set;for(let t of A)switch(t){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(t);break}return e},"expandAndDeduplicateDirections"),wTt=y((A,e,t,r)=>{let i=yTt(A),u=2,a=e.height+2*t.padding,n=a/2,o=r??e.width+2*n+t.padding,s=t.padding/2;if(i.has("right")&&i.has("left")&&i.has("up")&&i.has("down"))return[{x:0,y:0},{x:n,y:0},{x:o/2,y:2*s},{x:o-n,y:0},{x:o,y:0},{x:o,y:-a/3},{x:o+2*s,y:-a/2},{x:o,y:-2*a/3},{x:o,y:-a},{x:o-n,y:-a},{x:o/2,y:-a-2*s},{x:n,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*s,y:-a/2},{x:0,y:-a/3}];if(i.has("right")&&i.has("left")&&i.has("up"))return[{x:n,y:0},{x:o-n,y:0},{x:o,y:-a/2},{x:o-n,y:-a},{x:n,y:-a},{x:0,y:-a/2}];if(i.has("right")&&i.has("left")&&i.has("down"))return[{x:0,y:0},{x:n,y:-a},{x:o-n,y:-a},{x:o,y:0}];if(i.has("right")&&i.has("up")&&i.has("down"))return[{x:0,y:0},{x:o,y:-n},{x:o,y:-a+n},{x:0,y:-a}];if(i.has("left")&&i.has("up")&&i.has("down"))return[{x:o,y:0},{x:0,y:-n},{x:0,y:-a+n},{x:o,y:-a}];if(i.has("right")&&i.has("left"))return[{x:n,y:0},{x:n,y:-s},{x:o-n,y:-s},{x:o-n,y:0},{x:o,y:-a/2},{x:o-n,y:-a},{x:o-n,y:-a+s},{x:n,y:-a+s},{x:n,y:-a},{x:0,y:-a/2}];if(i.has("up")&&i.has("down"))return[{x:o/2,y:0},{x:0,y:-s},{x:n,y:-s},{x:n,y:-a+s},{x:0,y:-a+s},{x:o/2,y:-a},{x:o,y:-a+s},{x:o-n,y:-a+s},{x:o-n,y:-s},{x:o,y:-s}];if(i.has("right")&&i.has("up"))return[{x:0,y:0},{x:o,y:-n},{x:0,y:-a}];if(i.has("right")&&i.has("down"))return[{x:0,y:0},{x:o,y:0},{x:0,y:-a}];if(i.has("left")&&i.has("up"))return[{x:o,y:0},{x:0,y:-n},{x:o,y:-a}];if(i.has("left")&&i.has("down"))return[{x:o,y:0},{x:0,y:0},{x:o,y:-a}];if(i.has("right"))return[{x:n,y:-s},{x:n,y:-s},{x:o-n,y:-s},{x:o-n,y:0},{x:o,y:-a/2},{x:o-n,y:-a},{x:o-n,y:-a+s},{x:n,y:-a+s},{x:n,y:-a+s}];if(i.has("left"))return[{x:n,y:0},{x:n,y:-s},{x:o-n,y:-s},{x:o-n,y:-a+s},{x:n,y:-a+s},{x:n,y:-a},{x:0,y:-a/2}];if(i.has("up"))return[{x:n,y:-s},{x:n,y:-a+s},{x:0,y:-a+s},{x:o/2,y:-a},{x:o,y:-a+s},{x:o-n,y:-a+s},{x:o-n,y:-s}];if(i.has("down"))return[{x:o/2,y:0},{x:0,y:-s},{x:n,y:-s},{x:n,y:-a+s},{x:o-n,y:-a+s},{x:o-n,y:-s},{x:o,y:-s}];return[{x:0,y:0}]},"getArrowPoints");y(pne,"intersectNode");bTt=pne;y(fne,"intersectEllipse");mne=fne;y(Dne,"intersectCircle");vTt=Dne;y(yne,"intersectLine");y(IBA,"sameSign");kTt=yne,FTt=wne;y(wne,"intersectPolygon");xTt=y((A,e)=>{var{x:t,y:r}=A,i=e.x-t,u=e.y-r,a=A.width/2,n=A.height/2,o,s;if(Math.abs(u)*a>Math.abs(i)*n){if(u<0)n=-n;o=u===0?0:n*i/u,s=n}else{if(i<0)a=-a;o=a,s=i===0?0:a*u/i}return{x:t+o,y:r+s}},"intersectRect"),STt=xTt,pa={node:bTt,circle:vTt,ellipse:mne,polygon:FTt,rect:STt},Ho=y(async(A,e,t,r)=>{let i=OA(),u,a=e.useHtmlLabels||ki(i);if(!t)u="node default";else u=t;let n=A.insert("g").attr("class",u).attr("id",e.domId||e.id),o=n.insert("g").attr("class","label").attr("style",e.labelStyle),s;if(e.labelText===void 0)s="";else s=typeof e.labelText==="string"?e.labelText:e.labelText[0];let l;if(e.labelType==="markdown")l=Nn(o,or(ug(s),i),{useHtmlLabels:a,width:e.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i);else l=await zC(o,or(ug(s),i),e.labelStyle,!1,r);let g=l.getBBox(),C=e.padding/2;if(ki(i)){let B=l.children[0],E=Qe(l);await Rv(B,s),g=B.getBoundingClientRect(),E.attr("width",g.width),E.attr("height",g.height)}if(a)o.attr("transform","translate("+-g.width/2+", "+-g.height/2+")");else o.attr("transform","translate(0, "+-g.height/2+")");if(e.centerLabel)o.attr("transform","translate("+-g.width/2+", "+-g.height/2+")");return o.insert("rect",":first-child"),{shapeSvg:n,bbox:g,halfPadding:C,label:o}},"labelHelper"),en=y((A,e)=>{let t=e.node().getBBox();A.width=t.width,A.height=t.height},"updateNodeBounds");y(VC,"insertPolygonShape");LTt=y(async(A,e)=>{if(!(e.useHtmlLabels||ki(OA())))e.centerLabel=!0;let{shapeSvg:r,bbox:i,halfPadding:u}=await Ho(A,e,"node "+e.classes,!0);sA.info("Classes = ",e.classes);let a=r.insert("rect",":first-child");return a.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-u).attr("y",-i.height/2-u).attr("width",i.width+e.padding).attr("height",i.height+e.padding),en(e,a),e.intersect=function(n){return pa.rect(e,n)},r},"note"),RTt=LTt,nne=y((A)=>{if(A)return" "+A;return""},"formatClass"),wg=y((A,e)=>`${e?e:"node default"}${nne(A.classes)} ${nne(A.class)}`,"getClassesFromNode"),one=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=i+u,n=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}];sA.info("Question main (Circle)");let o=VC(t,a,a,n);return o.attr("style",e.style),en(e,o),e.intersect=function(s){return sA.warn("Intersect called"),pa.polygon(e,n,s)},t},"question"),NTt=y((A,e)=>{let t=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=28,i=[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}];return t.insert("polygon",":first-child").attr("points",i.map(function(a){return a.x+","+a.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(a){return pa.circle(e,14,a)},t},"choice"),GTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=4,u=e.positioned?e.height:r.height+e.padding,a=u/4,n=e.positioned?e.width:r.width+2*a+e.padding,o=[{x:a,y:0},{x:n-a,y:0},{x:n,y:-u/2},{x:n-a,y:-u},{x:a,y:-u},{x:0,y:-u/2}],s=VC(t,n,u,o);return s.attr("style",e.style),en(e,s),e.intersect=function(l){return pa.polygon(e,o,l)},t},"hexagon"),UTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,void 0,!0),i=2,u=r.height+2*e.padding,a=u/2,n=r.width+2*a+e.padding,s=e.positioned&&(e.widthInColumns??1)>1&&e.width>n?e.width:n,l=wTt(e.directions,r,e,s),g=VC(t,s,u,l);return g.attr("style",e.style),en(e,g),e.intersect=function(C){return pa.polygon(e,l,C)},t},"block_arrow"),MTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:-u/2,y:0},{x:i,y:0},{x:i,y:-u},{x:-u/2,y:-u},{x:0,y:-u/2}];return VC(t,i,u,a).attr("style",e.style),e.width=i+u,e.height=u,e.intersect=function(o){return pa.polygon(e,a,o)},t},"rect_left_inv_arrow"),TTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:-2*u/6,y:0},{x:i-u/6,y:0},{x:i+2*u/6,y:-u},{x:u/6,y:-u}],n=VC(t,i,u,a);return n.attr("style",e.style),en(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"lean_right"),YTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:2*u/6,y:0},{x:i+u/6,y:0},{x:i-2*u/6,y:-u},{x:-u/6,y:-u}],n=VC(t,i,u,a);return n.attr("style",e.style),en(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"lean_left"),HTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:-2*u/6,y:0},{x:i+2*u/6,y:0},{x:i-u/6,y:-u},{x:u/6,y:-u}],n=VC(t,i,u,a);return n.attr("style",e.style),en(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"trapezoid"),KTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:u/6,y:0},{x:i-u/6,y:0},{x:i+2*u/6,y:-u},{x:-2*u/6,y:-u}],n=VC(t,i,u,a);return n.attr("style",e.style),en(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"inv_trapezoid"),JTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:0,y:0},{x:i+u/2,y:0},{x:i,y:-u/2},{x:i+u/2,y:-u},{x:0,y:-u}],n=VC(t,i,u,a);return n.attr("style",e.style),en(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"rect_right_inv_arrow"),OTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.width+e.padding,u=i/2,a=u/(2.5+i/50),n=r.height+a+e.padding,o="M 0,"+a+" a "+u+","+a+" 0,0,0 "+i+" 0 a "+u+","+a+" 0,0,0 "+-i+" 0 l 0,"+n+" a "+u+","+a+" 0,0,0 "+i+" 0 l 0,"+-n,s=t.attr("label-offset-y",a).insert("path",":first-child").attr("style",e.style).attr("d",o).attr("transform","translate("+-i/2+","+-(n/2+a)+")");return en(e,s),e.intersect=function(l){let g=pa.rect(e,l),C=g.x-e.x;if(u!=0&&(Math.abs(C)<e.width/2||Math.abs(C)==e.width/2&&Math.abs(g.y-e.y)>e.height/2-a)){let B=a*a*(1-C*C/(u*u));if(B!=0)B=Math.sqrt(B);if(B=a-B,l.y-e.y>0)B=-B;g.y+=B}return g},t},"cylinder"),PTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r,halfPadding:i}=await Ho(A,e,"node "+e.classes+" "+e.class,!0),u=t.insert("rect",":first-child"),a=e.positioned?e.width:r.width+e.padding,n=e.positioned?e.height:r.height+e.padding,o=e.positioned?-a/2:-r.width/2-i,s=e.positioned?-n/2:-r.height/2-i;if(u.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",o).attr("y",s).attr("width",a).attr("height",n),e.props){let l=new Set(Object.keys(e.props));if(e.props.borders)iP(u,e.props.borders,a,n),l.delete("borders");l.forEach((g)=>{sA.warn(`Unknown node property ${g}`)})}return en(e,u),e.intersect=function(l){return pa.rect(e,l)},t},"rect"),_Tt=y(async(A,e)=>{let{shapeSvg:t,bbox:r,halfPadding:i}=await Ho(A,e,"node "+e.classes,!0),u=t.insert("rect",":first-child"),a=e.positioned?e.width:r.width+e.padding,n=e.positioned?e.height:r.height+e.padding,o=e.positioned?-a/2:-r.width/2-i,s=e.positioned?-n/2:-r.height/2-i;if(u.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",o).attr("y",s).attr("width",a).attr("height",n),e.props){let l=new Set(Object.keys(e.props));if(e.props.borders)iP(u,e.props.borders,a,n),l.delete("borders");l.forEach((g)=>{sA.warn(`Unknown node property ${g}`)})}return en(e,u),e.intersect=function(l){return pa.rect(e,l)},t},"composite"),WTt=y(async(A,e)=>{let{shapeSvg:t}=await Ho(A,e,"label",!0);sA.trace("Classes = ",e.class);let r=t.insert("rect",":first-child"),i=0,u=0;if(r.attr("width",i).attr("height",u),t.attr("class","label edgeLabel"),e.props){let a=new Set(Object.keys(e.props));if(e.props.borders)iP(r,e.props.borders,i,u),a.delete("borders");a.forEach((n)=>{sA.warn(`Unknown node property ${n}`)})}return en(e,r),e.intersect=function(a){return pa.rect(e,a)},t},"labelRect");y(iP,"applyNodePropertyBorders");qTt=y(async(A,e)=>{let t;if(!e.classes)t="node default";else t="node "+e.classes;let r=A.insert("g").attr("class",t).attr("id",e.domId||e.id),i=r.insert("rect",":first-child"),u=r.insert("line"),a=r.insert("g").attr("class","label"),n=e.labelText.flat?e.labelText.flat():e.labelText,o="";if(typeof n==="object")o=n[0];else o=n;sA.info("Label text abc79",o,n,typeof n==="object");let s=await zC(a,o,e.labelStyle,!0,!0),l={width:0,height:0};if(ki(OA())){let d=s.children[0],I=Qe(s);l=d.getBoundingClientRect(),I.attr("width",l.width),I.attr("height",l.height)}sA.info("Text 2",n);let g=n.slice(1,n.length),C=s.getBBox(),B=await zC(a,g.join?g.join("<br/>"):g,e.labelStyle,!0,!0);if(ki(OA())){let d=B.children[0],I=Qe(B);l=d.getBoundingClientRect(),I.attr("width",l.width),I.attr("height",l.height)}let E=e.padding/2;return Qe(B).attr("transform","translate( "+(l.width>C.width?0:(C.width-l.width)/2)+", "+(C.height+E+5)+")"),Qe(s).attr("transform","translate( "+(l.width<C.width?0:-(C.width-l.width)/2)+", 0)"),l=a.node().getBBox(),a.attr("transform","translate("+-l.width/2+", "+(-l.height/2-E+3)+")"),i.attr("class","outer title-state").attr("x",-l.width/2-E).attr("y",-l.height/2-E).attr("width",l.width+e.padding).attr("height",l.height+e.padding),u.attr("class","divider").attr("x1",-l.width/2-E).attr("x2",l.width/2+E).attr("y1",-l.height/2-E+C.height+E).attr("y2",-l.height/2-E+C.height+E),en(e,i),e.intersect=function(d){return pa.rect(e,d)},r},"rectWithTitle"),zTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.height+e.padding,u=r.width+i/4+e.padding,a=t.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-u/2).attr("y",-i/2).attr("width",u).attr("height",i);return en(e,a),e.intersect=function(n){return pa.rect(e,n)},t},"stadium"),ZTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r,halfPadding:i}=await Ho(A,e,wg(e,void 0),!0),u=t.insert("circle",":first-child");return u.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i).attr("width",r.width+e.padding).attr("height",r.height+e.padding),sA.info("Circle main"),en(e,u),e.intersect=function(a){return sA.info("Circle intersect",e,r.width/2+i,a),pa.circle(e,r.width/2+i,a)},t},"circle"),VTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r,halfPadding:i}=await Ho(A,e,wg(e,void 0),!0),u=5,a=t.insert("g",":first-child"),n=a.insert("circle"),o=a.insert("circle");return a.attr("class",e.class),n.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i+5).attr("width",r.width+e.padding+10).attr("height",r.height+e.padding+10),o.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i).attr("width",r.width+e.padding).attr("height",r.height+e.padding),sA.info("DoubleCircle main"),en(e,n),e.intersect=function(s){return sA.info("DoubleCircle intersect",e,r.width/2+i+5,s),pa.circle(e,r.width/2+i+5,s)},t},"doublecircle"),jTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Ho(A,e,wg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:0,y:0},{x:i,y:0},{x:i,y:-u},{x:0,y:-u},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-u},{x:-8,y:-u},{x:-8,y:0}],n=VC(t,i,u,a);return n.attr("style",e.style),en(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"subroutine"),XTt=y((A,e)=>{let t=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=t.insert("circle",":first-child");return r.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),en(e,r),e.intersect=function(i){return pa.circle(e,7,i)},t},"start"),sne=y((A,e,t)=>{let r=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,u=10;if(t==="LR")i=10,u=70;let a=r.append("rect").attr("x",-1*i/2).attr("y",-1*u/2).attr("width",i).attr("height",u).attr("class","fork-join");return en(e,a),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(n){return pa.rect(e,n)},r},"forkJoin"),$Tt=y((A,e)=>{let t=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=t.insert("circle",":first-child"),i=t.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),r.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),en(e,i),e.intersect=function(u){return pa.circle(e,7,u)},t},"end"),AYt=y(async(A,e)=>{let t=e.padding/2,r=4,i=8,u;if(!e.classes)u="node default";else u="node "+e.classes;let a=A.insert("g").attr("class",u).attr("id",e.domId||e.id),n=a.insert("rect",":first-child"),o=a.insert("line"),s=a.insert("line"),l=0,g=4,C=a.insert("g").attr("class","label"),B=0,E=e.classData.annotations?.[0],d=e.classData.annotations[0]?"«"+e.classData.annotations[0]+"»":"",I=await zC(C,d,e.labelStyle,!0,!0),h=I.getBBox();if(ki(OA())){let b=I.children[0],F=Qe(I);h=b.getBoundingClientRect(),F.attr("width",h.width),F.attr("height",h.height)}if(e.classData.annotations[0])g+=h.height+4,l+=h.width;let Q=e.classData.label;if(e.classData.type!==void 0&&e.classData.type!=="")if(ki(OA()))Q+="<"+e.classData.type+">";else Q+="<"+e.classData.type+">";let p=await zC(C,Q,e.labelStyle,!0,!0);Qe(p).attr("class","classTitle");let m=p.getBBox();if(ki(OA())){let b=p.children[0],F=Qe(p);m=b.getBoundingClientRect(),F.attr("width",m.width),F.attr("height",m.height)}if(g+=m.height+4,m.width>l)l=m.width;let f=[];e.classData.members.forEach(async(b)=>{let F=b.getDisplayDetails(),v=F.displayText;if(ki(OA()))v=v.replace(/</g,"<").replace(/>/g,">");let S=await zC(C,v,F.cssStyle?F.cssStyle:e.labelStyle,!0,!0),x=S.getBBox();if(ki(OA())){let k=S.children[0],T=Qe(S);x=k.getBoundingClientRect(),T.attr("width",x.width),T.attr("height",x.height)}if(x.width>l)l=x.width;g+=x.height+4,f.push(S)}),g+=8;let D=[];if(e.classData.methods.forEach(async(b)=>{let F=b.getDisplayDetails(),v=F.displayText;if(ki(OA()))v=v.replace(/</g,"<").replace(/>/g,">");let S=await zC(C,v,F.cssStyle?F.cssStyle:e.labelStyle,!0,!0),x=S.getBBox();if(ki(OA())){let k=S.children[0],T=Qe(S);x=k.getBoundingClientRect(),T.attr("width",x.width),T.attr("height",x.height)}if(x.width>l)l=x.width;g+=x.height+4,D.push(S)}),g+=8,E){let b=(l-h.width)/2;Qe(I).attr("transform","translate( "+(-1*l/2+b)+", "+-1*g/2+")"),B=h.height+4}let w=(l-m.width)/2;return Qe(p).attr("transform","translate( "+(-1*l/2+w)+", "+(-1*g/2+B)+")"),B+=m.height+4,o.attr("class","divider").attr("x1",-l/2-t).attr("x2",l/2+t).attr("y1",-g/2-t+8+B).attr("y2",-g/2-t+8+B),B+=8,f.forEach((b)=>{Qe(b).attr("transform","translate( "+-l/2+", "+(-1*g/2+B+4)+")");let F=b?.getBBox();B+=(F?.height??0)+4}),B+=8,s.attr("class","divider").attr("x1",-l/2-t).attr("x2",l/2+t).attr("y1",-g/2-t+8+B).attr("y2",-g/2-t+8+B),B+=8,D.forEach((b)=>{Qe(b).attr("transform","translate( "+-l/2+", "+(-1*g/2+B)+")");let F=b?.getBBox();B+=(F?.height??0)+4}),n.attr("style",e.style).attr("class","outer title-state").attr("x",-l/2-t).attr("y",-(g/2)-t).attr("width",l+e.padding).attr("height",g+e.padding),en(e,n),e.intersect=function(b){return pa.rect(e,b)},a},"class_box"),lne={rhombus:one,composite:_Tt,question:one,rect:PTt,labelRect:WTt,rectWithTitle:qTt,choice:NTt,circle:ZTt,doublecircle:VTt,stadium:zTt,hexagon:GTt,block_arrow:UTt,rect_left_inv_arrow:MTt,lean_right:TTt,lean_left:YTt,trapezoid:HTt,inv_trapezoid:KTt,rect_right_inv_arrow:JTt,cylinder:OTt,start:XTt,end:$Tt,note:RTt,subroutine:jTt,fork:sne,join:sne,class_box:AYt},eP={},bne=y(async(A,e,t)=>{let r,i;if(e.link){let u;if(OA().securityLevel==="sandbox")u="_top";else if(e.linkTarget)u=e.linkTarget||"_blank";r=A.insert("svg:a").attr("xlink:href",e.link).attr("target",u),i=await lne[e.shape](r,e,t)}else i=await lne[e.shape](A,e,t),r=i;if(e.tooltip)i.attr("title",e.tooltip);if(e.class)i.attr("class","node default "+e.class);if(eP[e.id]=r,e.haveCallback)eP[e.id].attr("class",eP[e.id].attr("class")+" clickable");return r},"insertNode"),eYt=y((A)=>{let e=eP[A.id];sA.trace("Transforming node",A.diff,A,"translate("+(A.x-A.width/2-5)+", "+A.width/2+")");let t=8,r=A.diff||0;if(A.clusterNode)e.attr("transform","translate("+(A.x+r-A.width/2)+", "+(A.y-A.height/2-t)+")");else e.attr("transform","translate("+A.x+", "+A.y+")");return r},"positionNode");y(DBA,"getNodeFromBlock");y(vne,"calculateBlockSize");y(kne,"insertBlockPositioned");y(uP,"performOperations");y(Fne,"calculateBlockSizes");y(xne,"insertBlocks");y(Sne,"insertEdges");tYt=y(function(A,e){return e.db.getClasses()},"getClasses"),rYt=y(async function(A,e,t,r){let{securityLevel:i,block:u}=st(),a=r.db;a.setDiagramId(e);let n;if(i==="sandbox")n=Qe("#i"+e);let o=i==="sandbox"?Qe(n.nodes()[0].contentDocument.body):Qe("body"),s=i==="sandbox"?o.select(`[id="${e}"]`):Qe(`[id="${e}"]`);BTt(s,["point","circle","cross"],r.type,e);let g=a.getBlocks(),C=a.getBlocksFlat(),B=a.getEdges(),E=s.insert("g").attr("class","block");await Fne(E,g,a);let d=Qne(a);if(await xne(E,g,a),await Sne(E,B,C,a,e),d){let I=d,h=Math.max(1,Math.round(0.125*(I.width/I.height))),Q=I.height+h+10,p=I.width+10,{useMaxWidth:m}=u;jr(s,Q,p,!!m),sA.debug("Here Bounds",d,I),s.attr("viewBox",`${I.x-5} ${I.y-5} ${I.width+10} ${I.height+10}`)}},"draw"),iYt={draw:rYt,getClasses:tYt},Lne={parser:NMt,db:ATt,renderer:iYt,styles:tTt}});function Hne(A){return A.some((e)=>Tne.test(e))}function Kne(A){for(let e of A){let t=Yne.exec(e);if(t?.index&&t.index>0)return t.index}return 4}function Jne(A,e){return A.replace(/\bline\s+(\d+)\b/gi,(t,r)=>{let i=parseInt(r,10),u=e.get(i);return u?`line ${u}`:t})}function One(A){let e=A.split(`
|
||
`),t=new Map,r=-1;for(let[o,s]of e.entries())if(s.trim()==="treeView-beta"){r=o;break}if(r===-1)return{text:A,lineMap:t};let i=[];for(let o=r+1;o<e.length;o++){let s=e[o];if(s.trim()===""||Une.test(s)||Gne.test(s))continue;if(Nne.test(s))continue;i.push(s.replace(/\t/g," "))}if(!Hne(i))return{text:A,lineMap:t};let u=Kne(i),a=[],n=0;for(let o=0;o<=r;o++)a.push(e[o]),n++,t.set(n,o+1);for(let o=r+1;o<e.length;o++){let s=e[o],l=s.trim(),g=o+1;if(l===""){a.push(s),n++,t.set(n,g);continue}if(Une.test(s)){a.push(s),n++,t.set(n,g);continue}if(Gne.test(s)){a.push(s),n++,t.set(n,g);continue}if(Nne.test(s))continue;let C=s.replace(/\t/g," "),B=Yne.exec(C);if(B?.index!==void 0){let E=B.index,d=Math.round(E/u)+1,I=E+1;while(I<C.length&&uYt.test(C[I]))I++;while(I<C.length&&C[I]===" ")I++;let h=C.slice(I).trimEnd();if(!h)throw Error(`Line ${g}: Empty node — expected a filename or directory name after the box-drawing prefix`);let Q=aYt.repeat(d);a.push(Q+h),n++,t.set(n,g)}else if(/^[\s─━│┃└┗├┣]+$/.test(C))continue;else if(Tne.test(C))a.push(s),n++,t.set(n,g);else if(/^\s+/.test(C))throw Error(`Line ${g}: Unexpected indentation without box-drawing characters. In box-drawing format, use ├── or └── prefixes for indented nodes.`);else a.push(s),n++,t.set(n,g)}return{text:a.join(`
|
||
`),lineMap:t}}function Pne(A,e){let t=e?.filenameIcons?.[A];if(t)return t;let r=A.lastIndexOf(".");if(r>0){let i=A.substring(r).toLowerCase(),u=e?.extensionIcons;return u?.[i]??u?.[i.slice(1)]}return}function wBA(A,e){if(A.includes(":"))return A;if(A in y7.icons||!e)return`${y7.prefix}:${A}`;return`${e}:${A}`}function vBA(A,e){if(A.icon==="none")return;if(A.icon)return wBA(A.icon,e.defaultIconPack);if(!e.showIcons)return;if(A.nodeType==="file"){let t=Pne(A.name,e);if(t==="none")return;if(t)return wBA(t,e.defaultIconPack)}return`${y7.prefix}:${A.nodeType==="directory"?"folder":"file"}`}var Tne,Yne,uYt,Nne,Gne,Une,aYt=" ",ad,nYt,oYt,sYt,lYt,gYt,cYt,CYt,yBA,BYt,EYt,y7,bBA=14,dYt=4,IYt=16,_ne,hYt,QYt,Mne,pYt,fYt,mYt,DYt,yYt,wYt,bYt,Wne;var qne=P(()=>{UY();ws();cn();Rn();ai();rr();ir();Nt();E0();Tne=/[─━│┃└┗├┣]/,Yne=/[└┗├┣]/,uYt=/[─━]/,Nne=/^[\s│┃]+$/,Gne=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,Une=/^\s*%%/;y(Hne,"isBoxDrawingFormat");y(Kne,"inferSegmentWidth");y(Jne,"remapErrorLines");y(One,"preprocessBoxDrawing");ad=new Fw(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),nYt=y(()=>{ad.reset(),sr()},"clear"),oYt=y(()=>ad.records.stack[0],"getRoot"),sYt=y(()=>ad.records.cnt,"getCount"),lYt=ur.treeView,gYt=y(()=>si(lYt,st().treeView),"getConfig"),cYt=y((A,e,t,r,i,u)=>{while(A<=ad.records.stack[ad.records.stack.length-1].level)ad.records.stack.pop();let a={id:ad.records.cnt++,level:A,name:e,nodeType:t,icon:i,cssClass:r,description:u,children:[]};ad.records.stack[ad.records.stack.length-1].children.push(a),ad.records.stack.push(a)},"addNode"),CYt={clear:nYt,addNode:cYt,getRoot:oYt,getCount:sYt,getConfig:gYt,getAccTitle:vr,getAccDescription:Fr,getDiagramTitle:xr,setAccDescription:kr,setAccTitle:Dr,setDiagramTitle:Mr},yBA=CYt,BYt=y((A)=>{hu(A,yBA);for(let e of A.nodes){let t=typeof e.indent==="number"?e.indent:0,r=e.name,i=r.endsWith("/");if(i)r=r.slice(0,-1);let u=i?"directory":"file",a=e.classAnnotation||void 0,n=e.iconAnnotation,o=n!==void 0?n||"none":void 0,s=e.descAnnotation||void 0,l=s?or(s,st()):void 0;yBA.addNode(t,r,u,a,o,l)}},"populate"),EYt={parse:y(async(A)=>{let{text:e,lineMap:t}=One(A);try{let r=await Ma("treeView",e);sA.debug(r),BYt(r)}catch(r){if(t.size>0&&r instanceof Error)r.message=Jne(r.message,t);throw r}},"parse")},y7={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};y(Pne,"detectIcon");y(wBA,"qualifyIcon");y(vBA,"getNodeIcon");ly([{name:y7.prefix,icons:y7}]);_ne=y((A,e)=>`tv-icon-${A}-${e.replace(/[^\w-]/g,"-")}`,"iconSymbolId"),hYt=y(async(A,e,t,r)=>{let i=new Set,u=y((o)=>{let s=vBA(o,t);if(s)i.add(s);o.children.forEach(u)},"collect");if(u(e),i.size===0)return;let a=await Promise.all([...i].map(async(o)=>({icon:o,svg:await ag(o,{height:bBA,width:bBA})}))),n=A.append("defs");for(let{icon:o,svg:s}of a)n.append("g").attr("id",_ne(r,o)).html(s)},"injectIconDefs"),QYt=y((A,e,t,r,i,u)=>{let a=r.append("g"),n="treeView-node-label";if(t.nodeType==="directory")n+=" treeView-node-dir";if(t.cssClass)n+=` ${t.cssClass}`;let o=bBA+dYt,s=vBA(t,i),l=s!==void 0;if(s)a.append("use").attr("xlink:href",`#${_ne(u,s)}`).attr("x",A+i.paddingX).attr("y",e+i.paddingY).attr("class","treeView-node-icon");let g=a.append("text").text(t.name).attr("dominant-baseline","middle").attr("class",n),{height:C,width:B}=g.node().getBBox(),E=C+i.paddingY*2,d=A+i.paddingX+(l?o:0);g.attr("x",d),g.attr("y",e+E/2);let I=d+B,h=B+i.paddingX*2+(l?o:0);if(t.BBox={x:A,y:e,width:h,height:E},t.cssClass?.split(/\s+/).includes("highlight"))a.insert("rect",":first-child").attr("x",A).attr("y",e+1).attr("width",0).attr("height",E-2).attr("rx",3).attr("class","treeView-highlight-bg");return{node:t,nodeGroup:a,labelRightEdge:I,centerY:e+E/2}},"positionLabel"),Mne=y((A,e,t,r,i,u)=>A.append("line").attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",i).attr("stroke-width",u).attr("class","treeView-node-line"),"positionLine"),pYt=y((A,e,t,r)=>{let i=0,u=0,a=[],n=y((l,g,C,B)=>{let E=B*(C.rowIndent+C.paddingX),d=QYt(E,i,g,l,C,r);a.push(d);let{height:I,width:h}=g.BBox;Mne(l,E-C.rowIndent,i+I/2,E,i+I/2,C.lineThickness),u=Math.max(u,E+h),i+=I},"drawNode"),o=y((l,g=0)=>{n(A,l,t,g),l.children.forEach((d)=>{o(d,g+1)});let{x:C,y:B,height:E}=l.BBox;if(l.children.length){let{y:d,height:I}=l.children[l.children.length-1].BBox;Mne(A,C+t.paddingX,B+E,C+t.paddingX,d+I/2+t.lineThickness/2,t.lineThickness)}},"processNode");o(e);let s=a.filter((l)=>l.node.description);if(s.length>0){let g=Math.max(...a.map((C)=>C.labelRightEdge))+IYt;for(let C of s){let E=C.nodeGroup.append("text").text(C.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",g).attr("y",C.centerY).node().getBBox();u=Math.max(u,g+E.width+t.paddingX)}}for(let l of a)if(l.node.cssClass?.split(/\s+/).includes("highlight")){let g=l.nodeGroup.select(".treeView-highlight-bg");if(!g.empty()){let C=u-l.node.BBox.x+8;g.attr("width",C),u=Math.max(u,l.node.BBox.x+C+2)}}return{totalHeight:i,totalWidth:u}},"drawTree"),fYt=y(async(A,e,t,r)=>{sA.debug(`Rendering treeView diagram
|
||
`+A);let i=r.db,u=i.getRoot(),a=i.getConfig(),n=zi(e);await hYt(n,u,a,e);let o=n.append("g");o.attr("class","tree-view");let{totalHeight:s,totalWidth:l}=pYt(o,u,a,e);n.attr("viewBox",`-${a.lineThickness/2} 0 ${l} ${s}`),jr(n,s,l,a.useMaxWidth)},"draw"),mYt={draw:fYt},DYt=mYt,yYt={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},wYt=y(({treeView:A})=>{let{labelFontSize:e,labelColor:t,lineColor:r,iconColor:i,descriptionColor:u,highlightBg:a,highlightStroke:n}=si(yYt,A);return`
|
||
.treeView-node-label {
|
||
font-size: ${e};
|
||
fill: ${t};
|
||
white-space: pre;
|
||
}
|
||
.treeView-node-dir {
|
||
font-weight: bold;
|
||
}
|
||
.treeView-node-line {
|
||
stroke: ${r};
|
||
}
|
||
.treeView-node-icon {
|
||
color: ${i};
|
||
}
|
||
.treeView-node-description {
|
||
font-size: ${e};
|
||
fill: ${u};
|
||
font-style: italic;
|
||
white-space: pre;
|
||
}
|
||
.treeView-highlight-bg {
|
||
fill: ${a};
|
||
stroke: ${n};
|
||
stroke-width: 1;
|
||
}
|
||
`},"styles"),bYt=wYt,Wne={db:yBA,renderer:DYt,parser:EYt,styles:bYt}});var FBA=wu(function(w7,kBA){(function(e,t){if(typeof w7==="object"&&typeof kBA==="object")kBA.exports=t();else if(typeof define==="function"&&define.amd)define([],t);else if(typeof w7==="object")w7.layoutBase=t();else e.layoutBase=t()})(w7,function(){return function(A){var e={};function t(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return A[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}return t.m=A,t.c=e,t.i=function(r){return r},t.d=function(r,i,u){if(!t.o(r,i))Object.defineProperty(r,i,{configurable:!1,enumerable:!0,get:u})},t.n=function(r){var i=r&&r.__esModule?function(){return r.default}:function(){return r};return t.d(i,"a",i),i},t.o=function(r,i){return Object.prototype.hasOwnProperty.call(r,i)},t.p="",t(t.s=28)}([function(A,e,t){function r(){}r.QUALITY=1,r.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,r.DEFAULT_INCREMENTAL=!1,r.DEFAULT_ANIMATION_ON_LAYOUT=!0,r.DEFAULT_ANIMATION_DURING_LAYOUT=!1,r.DEFAULT_ANIMATION_PERIOD=50,r.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,r.DEFAULT_GRAPH_MARGIN=15,r.NODE_DIMENSIONS_INCLUDE_LABELS=!1,r.SIMPLE_NODE_SIZE=40,r.SIMPLE_NODE_HALF_SIZE=r.SIMPLE_NODE_SIZE/2,r.EMPTY_COMPOUND_NODE_SIZE=40,r.MIN_EDGE_LENGTH=1,r.WORLD_BOUNDARY=1e6,r.INITIAL_WORLD_BOUNDARY=r.WORLD_BOUNDARY/1000,r.WORLD_CENTER_X=1200,r.WORLD_CENTER_Y=900,A.exports=r},function(A,e,t){var r=t(2),i=t(8),u=t(9);function a(o,s,l){r.call(this,l),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=l,this.bendpoints=[],this.source=o,this.target=s}a.prototype=Object.create(r.prototype);for(var n in r)a[n]=r[n];a.prototype.getSource=function(){return this.source},a.prototype.getTarget=function(){return this.target},a.prototype.isInterGraph=function(){return this.isInterGraph},a.prototype.getLength=function(){return this.length},a.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},a.prototype.getBendpoints=function(){return this.bendpoints},a.prototype.getLca=function(){return this.lca},a.prototype.getSourceInLca=function(){return this.sourceInLca},a.prototype.getTargetInLca=function(){return this.targetInLca},a.prototype.getOtherEnd=function(o){if(this.source===o)return this.target;else if(this.target===o)return this.source;else throw"Node is not incident with this edge"},a.prototype.getOtherEndInGraph=function(o,s){var l=this.getOtherEnd(o),g=s.getGraphManager().getRoot();while(!0){if(l.getOwner()==s)return l;if(l.getOwner()==g)break;l=l.getOwner().getParent()}return null},a.prototype.updateLength=function(){var o=[,,,,];if(this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),o),!this.isOverlapingSourceAndTarget){if(this.lengthX=o[0]-o[2],this.lengthY=o[1]-o[3],Math.abs(this.lengthX)<1)this.lengthX=u.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=u.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)}},a.prototype.updateLengthSimple=function(){if(this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1)this.lengthX=u.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=u.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},A.exports=a},function(A,e,t){function r(i){this.vGraphObject=i}A.exports=r},function(A,e,t){var r=t(2),i=t(10),u=t(13),a=t(0),n=t(16),o=t(5);function s(g,C,B,E){if(B==null&&E==null)E=C;if(r.call(this,E),g.graphManager!=null)g=g.graphManager;if(this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=E,this.edges=[],this.graphManager=g,B!=null&&C!=null)this.rect=new u(C.x,C.y,B.width,B.height);else this.rect=new u}s.prototype=Object.create(r.prototype);for(var l in r)s[l]=r[l];s.prototype.getEdges=function(){return this.edges},s.prototype.getChild=function(){return this.child},s.prototype.getOwner=function(){return this.owner},s.prototype.getWidth=function(){return this.rect.width},s.prototype.setWidth=function(g){this.rect.width=g},s.prototype.getHeight=function(){return this.rect.height},s.prototype.setHeight=function(g){this.rect.height=g},s.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},s.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},s.prototype.getCenter=function(){return new o(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},s.prototype.getLocation=function(){return new o(this.rect.x,this.rect.y)},s.prototype.getRect=function(){return this.rect},s.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},s.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},s.prototype.setRect=function(g,C){this.rect.x=g.x,this.rect.y=g.y,this.rect.width=C.width,this.rect.height=C.height},s.prototype.setCenter=function(g,C){this.rect.x=g-this.rect.width/2,this.rect.y=C-this.rect.height/2},s.prototype.setLocation=function(g,C){this.rect.x=g,this.rect.y=C},s.prototype.moveBy=function(g,C){this.rect.x+=g,this.rect.y+=C},s.prototype.getEdgeListToNode=function(g){var C=[],B,E=this;return E.edges.forEach(function(d){if(d.target==g){if(d.source!=E)throw"Incorrect edge source!";C.push(d)}}),C},s.prototype.getEdgesBetween=function(g){var C=[],B,E=this;return E.edges.forEach(function(d){if(!(d.source==E||d.target==E))throw"Incorrect edge source and/or target";if(d.target==g||d.source==g)C.push(d)}),C},s.prototype.getNeighborsList=function(){var g=new Set,C=this;return C.edges.forEach(function(B){if(B.source==C)g.add(B.target);else{if(B.target!=C)throw"Incorrect incidency!";g.add(B.source)}}),g},s.prototype.withChildren=function(){var g=new Set,C,B;if(g.add(this),this.child!=null){var E=this.child.getNodes();for(var d=0;d<E.length;d++)C=E[d],B=C.withChildren(),B.forEach(function(I){g.add(I)})}return g},s.prototype.getNoOfChildren=function(){var g=0,C;if(this.child==null)g=1;else{var B=this.child.getNodes();for(var E=0;E<B.length;E++)C=B[E],g+=C.getNoOfChildren()}if(g==0)g=1;return g},s.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},s.prototype.calcEstimatedSize=function(){if(this.child==null)return this.estimatedSize=(this.rect.width+this.rect.height)/2;else return this.estimatedSize=this.child.calcEstimatedSize(),this.rect.width=this.estimatedSize,this.rect.height=this.estimatedSize,this.estimatedSize},s.prototype.scatter=function(){var g,C,B=-a.INITIAL_WORLD_BOUNDARY,E=a.INITIAL_WORLD_BOUNDARY;g=a.WORLD_CENTER_X+n.nextDouble()*(E-B)+B;var d=-a.INITIAL_WORLD_BOUNDARY,I=a.INITIAL_WORLD_BOUNDARY;C=a.WORLD_CENTER_Y+n.nextDouble()*(I-d)+d,this.rect.x=g,this.rect.y=C},s.prototype.updateBounds=function(){if(this.getChild()==null)throw"assert failed";if(this.getChild().getNodes().length!=0){var g=this.getChild();if(g.updateBounds(!0),this.rect.x=g.getLeft(),this.rect.y=g.getTop(),this.setWidth(g.getRight()-g.getLeft()),this.setHeight(g.getBottom()-g.getTop()),a.NODE_DIMENSIONS_INCLUDE_LABELS){var C=g.getRight()-g.getLeft(),B=g.getBottom()-g.getTop();if(this.labelWidth){if(this.labelPosHorizontal=="left")this.rect.x-=this.labelWidth,this.setWidth(C+this.labelWidth);else if(this.labelPosHorizontal=="center"&&this.labelWidth>C)this.rect.x-=(this.labelWidth-C)/2,this.setWidth(this.labelWidth);else if(this.labelPosHorizontal=="right")this.setWidth(C+this.labelWidth)}if(this.labelHeight){if(this.labelPosVertical=="top")this.rect.y-=this.labelHeight,this.setHeight(B+this.labelHeight);else if(this.labelPosVertical=="center"&&this.labelHeight>B)this.rect.y-=(this.labelHeight-B)/2,this.setHeight(this.labelHeight);else if(this.labelPosVertical=="bottom")this.setHeight(B+this.labelHeight)}}}},s.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},s.prototype.transform=function(g){var C=this.rect.x;if(C>a.WORLD_BOUNDARY)C=a.WORLD_BOUNDARY;else if(C<-a.WORLD_BOUNDARY)C=-a.WORLD_BOUNDARY;var B=this.rect.y;if(B>a.WORLD_BOUNDARY)B=a.WORLD_BOUNDARY;else if(B<-a.WORLD_BOUNDARY)B=-a.WORLD_BOUNDARY;var E=new o(C,B),d=g.inverseTransformPoint(E);this.setLocation(d.x,d.y)},s.prototype.getLeft=function(){return this.rect.x},s.prototype.getRight=function(){return this.rect.x+this.rect.width},s.prototype.getTop=function(){return this.rect.y},s.prototype.getBottom=function(){return this.rect.y+this.rect.height},s.prototype.getParent=function(){if(this.owner==null)return null;return this.owner.getParent()},A.exports=s},function(A,e,t){var r=t(0);function i(){}for(var u in r)i[u]=r[u];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=0.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=0.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=0.3,i.COOLING_ADAPTATION_FACTOR=0.33,i.ADAPTATION_LOWER_NODE_LIMIT=1000,i.ADAPTATION_UPPER_NODE_LIMIT=5000,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=0.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,A.exports=i},function(A,e,t){function r(i,u){if(i==null&&u==null)this.x=0,this.y=0;else this.x=i,this.y=u}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.setX=function(i){this.x=i},r.prototype.setY=function(i){this.y=i},r.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},r.prototype.getCopy=function(){return new r(this.x,this.y)},r.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},A.exports=r},function(A,e,t){var r=t(2),i=t(10),u=t(0),a=t(7),n=t(3),o=t(1),s=t(13),l=t(12),g=t(11);function C(E,d,I){if(r.call(this,I),this.estimatedSize=i.MIN_VALUE,this.margin=u.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=E,d!=null&&d instanceof a)this.graphManager=d;else if(d!=null&&d instanceof Layout)this.graphManager=d.graphManager}C.prototype=Object.create(r.prototype);for(var B in r)C[B]=r[B];C.prototype.getNodes=function(){return this.nodes},C.prototype.getEdges=function(){return this.edges},C.prototype.getGraphManager=function(){return this.graphManager},C.prototype.getParent=function(){return this.parent},C.prototype.getLeft=function(){return this.left},C.prototype.getRight=function(){return this.right},C.prototype.getTop=function(){return this.top},C.prototype.getBottom=function(){return this.bottom},C.prototype.isConnected=function(){return this.isConnected},C.prototype.add=function(E,d,I){if(d==null&&I==null){var h=E;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(h)>-1)throw"Node already in graph!";return h.owner=this,this.getNodes().push(h),h}else{var Q=E;if(!(this.getNodes().indexOf(d)>-1&&this.getNodes().indexOf(I)>-1))throw"Source or target not in graph!";if(!(d.owner==I.owner&&d.owner==this))throw"Both owners must be this graph!";if(d.owner!=I.owner)return null;if(Q.source=d,Q.target=I,Q.isInterGraph=!1,this.getEdges().push(Q),d.edges.push(Q),I!=d)I.edges.push(Q);return Q}},C.prototype.remove=function(E){var d=E;if(E instanceof n){if(d==null)throw"Node is null!";if(!(d.owner!=null&&d.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";var I=d.edges.slice(),h,Q=I.length;for(var p=0;p<Q;p++)if(h=I[p],h.isInterGraph)this.graphManager.remove(h);else h.source.owner.remove(h);var m=this.nodes.indexOf(d);if(m==-1)throw"Node not in owner node list!";this.nodes.splice(m,1)}else if(E instanceof o){var h=E;if(h==null)throw"Edge is null!";if(!(h.source!=null&&h.target!=null))throw"Source and/or target is null!";if(!(h.source.owner!=null&&h.target.owner!=null&&h.source.owner==this&&h.target.owner==this))throw"Source and/or target owner is invalid!";var f=h.source.edges.indexOf(h),D=h.target.edges.indexOf(h);if(!(f>-1&&D>-1))throw"Source and/or target doesn't know this edge!";if(h.source.edges.splice(f,1),h.target!=h.source)h.target.edges.splice(D,1);var m=h.source.owner.getEdges().indexOf(h);if(m==-1)throw"Not in owner's edge list!";h.source.owner.getEdges().splice(m,1)}},C.prototype.updateLeftTop=function(){var{MAX_VALUE:E,MAX_VALUE:d}=i,I,h,Q,p=this.getNodes(),m=p.length;for(var f=0;f<m;f++){var D=p[f];if(I=D.getTop(),h=D.getLeft(),E>I)E=I;if(d>h)d=h}if(E==i.MAX_VALUE)return null;if(p[0].getParent().paddingLeft!=null)Q=p[0].getParent().paddingLeft;else Q=this.margin;return this.left=d-Q,this.top=E-Q,new l(this.left,this.top)},C.prototype.updateBounds=function(E){var d=i.MAX_VALUE,I=-i.MAX_VALUE,h=i.MAX_VALUE,Q=-i.MAX_VALUE,p,m,f,D,w,b=this.nodes,F=b.length;for(var v=0;v<F;v++){var S=b[v];if(E&&S.child!=null)S.updateBounds();if(p=S.getLeft(),m=S.getRight(),f=S.getTop(),D=S.getBottom(),d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var x=new s(d,h,I-d,Q-h);if(d==i.MAX_VALUE)this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom();if(b[0].getParent().paddingLeft!=null)w=b[0].getParent().paddingLeft;else w=this.margin;this.left=x.x-w,this.right=x.x+x.width+w,this.top=x.y-w,this.bottom=x.y+x.height+w},C.calculateBounds=function(E){var d=i.MAX_VALUE,I=-i.MAX_VALUE,h=i.MAX_VALUE,Q=-i.MAX_VALUE,p,m,f,D,w=E.length;for(var b=0;b<w;b++){var F=E[b];if(p=F.getLeft(),m=F.getRight(),f=F.getTop(),D=F.getBottom(),d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var v=new s(d,h,I-d,Q-h);return v},C.prototype.getInclusionTreeDepth=function(){if(this==this.graphManager.getRoot())return 1;else return this.parent.getInclusionTreeDepth()},C.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},C.prototype.calcEstimatedSize=function(){var E=0,d=this.nodes,I=d.length;for(var h=0;h<I;h++){var Q=d[h];E+=Q.calcEstimatedSize()}if(E==0)this.estimatedSize=u.EMPTY_COMPOUND_NODE_SIZE;else this.estimatedSize=E/Math.sqrt(this.nodes.length);return this.estimatedSize},C.prototype.updateConnected=function(){var E=this;if(this.nodes.length==0){this.isConnected=!0;return}var d=new g,I=new Set,h=this.nodes[0],Q,p,m=h.withChildren();m.forEach(function(v){d.push(v),I.add(v)});while(d.length!==0){h=d.shift(),Q=h.getEdges();var f=Q.length;for(var D=0;D<f;D++){var w=Q[D];if(p=w.getOtherEndInGraph(h,this),p!=null&&!I.has(p)){var b=p.withChildren();b.forEach(function(v){d.push(v),I.add(v)})}}}if(this.isConnected=!1,I.size>=this.nodes.length){var F=0;if(I.forEach(function(v){if(v.owner==E)F++}),F==this.nodes.length)this.isConnected=!0}},A.exports=C},function(A,e,t){var r,i=t(1);function u(a){r=t(6),this.layout=a,this.graphs=[],this.edges=[]}u.prototype.addRoot=function(){var a=this.layout.newGraph(),n=this.layout.newNode(null),o=this.add(a,n);return this.setRootGraph(o),this.rootGraph},u.prototype.add=function(a,n,o,s,l){if(o==null&&s==null&&l==null){if(a==null)throw"Graph is null!";if(n==null)throw"Parent node is null!";if(this.graphs.indexOf(a)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(a),a.parent!=null)throw"Already has a parent!";if(n.child!=null)throw"Already has a child!";return a.parent=n,n.child=a,a}else{l=o,s=n,o=a;var g=s.getOwner(),C=l.getOwner();if(!(g!=null&&g.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(C!=null&&C.getGraphManager()==this))throw"Target not in this graph mgr!";if(g==C)return o.isInterGraph=!1,g.add(o,s,l);else{if(o.isInterGraph=!0,o.source=s,o.target=l,this.edges.indexOf(o)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(o),!(o.source!=null&&o.target!=null))throw"Edge source and/or target is null!";if(!(o.source.edges.indexOf(o)==-1&&o.target.edges.indexOf(o)==-1))throw"Edge already in source and/or target incidency list!";return o.source.edges.push(o),o.target.edges.push(o),o}}},u.prototype.remove=function(a){if(a instanceof r){var n=a;if(n.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(n==this.rootGraph||n.parent!=null&&n.parent.graphManager==this))throw"Invalid parent node!";var o=[];o=o.concat(n.getEdges());var s,l=o.length;for(var g=0;g<l;g++)s=o[g],n.remove(s);var C=[];C=C.concat(n.getNodes());var B;l=C.length;for(var g=0;g<l;g++)B=C[g],n.remove(B);if(n==this.rootGraph)this.setRootGraph(null);var E=this.graphs.indexOf(n);this.graphs.splice(E,1),n.parent=null}else if(a instanceof i){if(s=a,s==null)throw"Edge is null!";if(!s.isInterGraph)throw"Not an inter-graph edge!";if(!(s.source!=null&&s.target!=null))throw"Source and/or target is null!";if(!(s.source.edges.indexOf(s)!=-1&&s.target.edges.indexOf(s)!=-1))throw"Source and/or target doesn't know this edge!";var E=s.source.edges.indexOf(s);if(s.source.edges.splice(E,1),E=s.target.edges.indexOf(s),s.target.edges.splice(E,1),!(s.source.owner!=null&&s.source.owner.getGraphManager()!=null))throw"Edge owner graph or owner graph manager is null!";if(s.source.owner.getGraphManager().edges.indexOf(s)==-1)throw"Not in owner graph manager's edge list!";var E=s.source.owner.getGraphManager().edges.indexOf(s);s.source.owner.getGraphManager().edges.splice(E,1)}},u.prototype.updateBounds=function(){this.rootGraph.updateBounds(!0)},u.prototype.getGraphs=function(){return this.graphs},u.prototype.getAllNodes=function(){if(this.allNodes==null){var a=[],n=this.getGraphs(),o=n.length;for(var s=0;s<o;s++)a=a.concat(n[s].getNodes());this.allNodes=a}return this.allNodes},u.prototype.resetAllNodes=function(){this.allNodes=null},u.prototype.resetAllEdges=function(){this.allEdges=null},u.prototype.resetAllNodesToApplyGravitation=function(){this.allNodesToApplyGravitation=null},u.prototype.getAllEdges=function(){if(this.allEdges==null){var a=[],n=this.getGraphs(),o=n.length;for(var s=0;s<n.length;s++)a=a.concat(n[s].getEdges());a=a.concat(this.edges),this.allEdges=a}return this.allEdges},u.prototype.getAllNodesToApplyGravitation=function(){return this.allNodesToApplyGravitation},u.prototype.setAllNodesToApplyGravitation=function(a){if(this.allNodesToApplyGravitation!=null)throw"assert failed";this.allNodesToApplyGravitation=a},u.prototype.getRoot=function(){return this.rootGraph},u.prototype.setRootGraph=function(a){if(a.getGraphManager()!=this)throw"Root not in this graph mgr!";if(this.rootGraph=a,a.parent==null)a.parent=this.layout.newNode("Root node")},u.prototype.getLayout=function(){return this.layout},u.prototype.isOneAncestorOfOther=function(a,n){if(!(a!=null&&n!=null))throw"assert failed";if(a==n)return!0;var o=a.getOwner(),s;do{if(s=o.getParent(),s==null)break;if(s==n)return!0;if(o=s.getOwner(),o==null)break}while(!0);o=n.getOwner();do{if(s=o.getParent(),s==null)break;if(s==a)return!0;if(o=s.getOwner(),o==null)break}while(!0);return!1},u.prototype.calcLowestCommonAncestors=function(){var a,n,o,s,l,g=this.getAllEdges(),C=g.length;for(var B=0;B<C;B++){if(a=g[B],n=a.source,o=a.target,a.lca=null,a.sourceInLca=n,a.targetInLca=o,n==o){a.lca=n.getOwner();continue}s=n.getOwner();while(a.lca==null){a.targetInLca=o,l=o.getOwner();while(a.lca==null){if(l==s){a.lca=l;break}if(l==this.rootGraph)break;if(a.lca!=null)throw"assert failed";a.targetInLca=l.getParent(),l=a.targetInLca.getOwner()}if(s==this.rootGraph)break;if(a.lca==null)a.sourceInLca=s.getParent(),s=a.sourceInLca.getOwner()}if(a.lca==null)throw"assert failed"}},u.prototype.calcLowestCommonAncestor=function(a,n){if(a==n)return a.getOwner();var o=a.getOwner();do{if(o==null)break;var s=n.getOwner();do{if(s==null)break;if(s==o)return s;s=s.getParent().getOwner()}while(!0);o=o.getParent().getOwner()}while(!0);return o},u.prototype.calcInclusionTreeDepths=function(a,n){if(a==null&&n==null)a=this.rootGraph,n=1;var o,s=a.getNodes(),l=s.length;for(var g=0;g<l;g++)if(o=s[g],o.inclusionTreeDepth=n,o.child!=null)this.calcInclusionTreeDepths(o.child,n+1)},u.prototype.includesInvalidEdge=function(){var a,n=[],o=this.edges.length;for(var s=0;s<o;s++)if(a=this.edges[s],this.isOneAncestorOfOther(a.source,a.target))n.push(a);for(var s=0;s<n.length;s++)this.remove(n[s]);return!1},A.exports=u},function(A,e,t){var r=t(12);function i(){}i.calcSeparationAmount=function(u,a,n,o){if(!u.intersects(a))throw"assert failed";var s=[,,];if(this.decideDirectionsForOverlappingNodes(u,a,s),n[0]=Math.min(u.getRight(),a.getRight())-Math.max(u.x,a.x),n[1]=Math.min(u.getBottom(),a.getBottom())-Math.max(u.y,a.y),u.getX()<=a.getX()&&u.getRight()>=a.getRight())n[0]+=Math.min(a.getX()-u.getX(),u.getRight()-a.getRight());else if(a.getX()<=u.getX()&&a.getRight()>=u.getRight())n[0]+=Math.min(u.getX()-a.getX(),a.getRight()-u.getRight());if(u.getY()<=a.getY()&&u.getBottom()>=a.getBottom())n[1]+=Math.min(a.getY()-u.getY(),u.getBottom()-a.getBottom());else if(a.getY()<=u.getY()&&a.getBottom()>=u.getBottom())n[1]+=Math.min(u.getY()-a.getY(),a.getBottom()-u.getBottom());var l=Math.abs((a.getCenterY()-u.getCenterY())/(a.getCenterX()-u.getCenterX()));if(a.getCenterY()===u.getCenterY()&&a.getCenterX()===u.getCenterX())l=1;var g=l*n[0],C=n[1]/l;if(n[0]<C)C=n[0];else g=n[1];n[0]=-1*s[0]*(C/2+o),n[1]=-1*s[1]*(g/2+o)},i.decideDirectionsForOverlappingNodes=function(u,a,n){if(u.getCenterX()<a.getCenterX())n[0]=-1;else n[0]=1;if(u.getCenterY()<a.getCenterY())n[1]=-1;else n[1]=1},i.getIntersection2=function(u,a,n){var o=u.getCenterX(),s=u.getCenterY(),l=a.getCenterX(),g=a.getCenterY();if(u.intersects(a))return n[0]=o,n[1]=s,n[2]=l,n[3]=g,!0;var C=u.getX(),B=u.getY(),E=u.getRight(),d=u.getX(),I=u.getBottom(),h=u.getRight(),Q=u.getWidthHalf(),p=u.getHeightHalf(),m=a.getX(),f=a.getY(),D=a.getRight(),w=a.getX(),b=a.getBottom(),F=a.getRight(),v=a.getWidthHalf(),S=a.getHeightHalf(),x=!1,k=!1;if(o===l){if(s>g)return n[0]=o,n[1]=B,n[2]=l,n[3]=b,!1;else if(s<g)return n[0]=o,n[1]=I,n[2]=l,n[3]=f,!1}else if(s===g){if(o>l)return n[0]=C,n[1]=s,n[2]=D,n[3]=g,!1;else if(o<l)return n[0]=E,n[1]=s,n[2]=m,n[3]=g,!1}else{var T=u.height/u.width,R=a.height/a.width,L=(g-s)/(l-o),M=void 0,U=void 0,Y=void 0,H=void 0,J=void 0,K=void 0;if(-T===L)if(o>l)n[0]=d,n[1]=I,x=!0;else n[0]=E,n[1]=B,x=!0;else if(T===L)if(o>l)n[0]=C,n[1]=B,x=!0;else n[0]=h,n[1]=I,x=!0;if(-R===L)if(l>o)n[2]=w,n[3]=b,k=!0;else n[2]=D,n[3]=f,k=!0;else if(R===L)if(l>o)n[2]=m,n[3]=f,k=!0;else n[2]=F,n[3]=b,k=!0;if(x&&k)return!1;if(o>l)if(s>g)M=this.getCardinalDirection(T,L,4),U=this.getCardinalDirection(R,L,2);else M=this.getCardinalDirection(-T,L,3),U=this.getCardinalDirection(-R,L,1);else if(s>g)M=this.getCardinalDirection(-T,L,1),U=this.getCardinalDirection(-R,L,3);else M=this.getCardinalDirection(T,L,2),U=this.getCardinalDirection(R,L,4);if(!x)switch(M){case 1:H=B,Y=o+-p/L,n[0]=Y,n[1]=H;break;case 2:Y=h,H=s+Q*L,n[0]=Y,n[1]=H;break;case 3:H=I,Y=o+p/L,n[0]=Y,n[1]=H;break;case 4:Y=d,H=s+-Q*L,n[0]=Y,n[1]=H;break}if(!k)switch(U){case 1:K=f,J=l+-S/L,n[2]=J,n[3]=K;break;case 2:J=F,K=g+v*L,n[2]=J,n[3]=K;break;case 3:K=b,J=l+S/L,n[2]=J,n[3]=K;break;case 4:J=w,K=g+-v*L,n[2]=J,n[3]=K;break}}return!1},i.getCardinalDirection=function(u,a,n){if(u>a)return n;else return 1+n%4},i.getIntersection=function(u,a,n,o){if(o==null)return this.getIntersection2(u,a,n);var{x:s,y:l}=u,{x:g,y:C}=a,{x:B,y:E}=n,{x:d,y:I}=o,h=void 0,Q=void 0,p=void 0,m=void 0,f=void 0,D=void 0,w=void 0,b=void 0,F=void 0;if(p=C-l,f=s-g,w=g*l-s*C,m=I-E,D=B-d,b=d*E-B*I,F=p*D-m*f,F===0)return null;return h=(f*b-D*w)/F,Q=(m*w-p*b)/F,new r(h,Q)},i.angleOfVector=function(u,a,n,o){var s=void 0;if(u!==n){if(s=Math.atan((o-a)/(n-u)),n<u)s+=Math.PI;else if(o<a)s+=this.TWO_PI}else if(o<a)s=this.ONE_AND_HALF_PI;else s=this.HALF_PI;return s},i.doIntersect=function(u,a,n,o){var{x:s,y:l}=u,{x:g,y:C}=a,{x:B,y:E}=n,{x:d,y:I}=o,h=(g-s)*(I-E)-(d-B)*(C-l);if(h===0)return!1;else{var Q=((I-E)*(d-s)+(B-d)*(I-l))/h,p=((l-C)*(d-s)+(g-s)*(I-l))/h;return 0<Q&&Q<1&&0<p&&p<1}},i.findCircleLineIntersections=function(u,a,n,o,s,l,g){var C=(n-u)*(n-u)+(o-a)*(o-a),B=2*((u-s)*(n-u)+(a-l)*(o-a)),E=(u-s)*(u-s)+(a-l)*(a-l)-g*g,d=B*B-4*C*E;if(d>=0){var I=(-B+Math.sqrt(B*B-4*C*E))/(2*C),h=(-B-Math.sqrt(B*B-4*C*E))/(2*C),Q=null;if(I>=0&&I<=1)return[I];if(h>=0&&h<=1)return[h];return Q}else return null},i.HALF_PI=0.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,A.exports=i},function(A,e,t){function r(){}r.sign=function(i){if(i>0)return 1;else if(i<0)return-1;else return 0},r.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},r.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},A.exports=r},function(A,e,t){function r(){}r.MAX_VALUE=2147483647,r.MIN_VALUE=-2147483648,A.exports=r},function(A,e,t){var r=function(){function s(l,g){for(var C=0;C<g.length;C++){var B=g[C];if(B.enumerable=B.enumerable||!1,B.configurable=!0,"value"in B)B.writable=!0;Object.defineProperty(l,B.key,B)}}return function(l,g,C){if(g)s(l.prototype,g);if(C)s(l,C);return l}}();function i(s,l){if(!(s instanceof l))throw TypeError("Cannot call a class as a function")}var u=function(l){return{value:l,next:null,prev:null}},a=function(l,g,C,B){if(l!==null)l.next=g;else B.head=g;if(C!==null)C.prev=g;else B.tail=g;return g.prev=l,g.next=C,B.length++,g},n=function(l,g){var{prev:C,next:B}=l;if(C!==null)C.next=B;else g.head=B;if(B!==null)B.prev=C;else g.tail=C;return l.prev=l.next=null,g.length--,l},o=function(){function s(l){var g=this;if(i(this,s),this.length=0,this.head=null,this.tail=null,l!=null)l.forEach(function(C){return g.push(C)})}return r(s,[{key:"size",value:function(){return this.length}},{key:"insertBefore",value:function(g,C){return a(C.prev,u(g),C,this)}},{key:"insertAfter",value:function(g,C){return a(C,u(g),C.next,this)}},{key:"insertNodeBefore",value:function(g,C){return a(C.prev,g,C,this)}},{key:"insertNodeAfter",value:function(g,C){return a(C,g,C.next,this)}},{key:"push",value:function(g){return a(this.tail,u(g),null,this)}},{key:"unshift",value:function(g){return a(null,u(g),this.head,this)}},{key:"remove",value:function(g){return n(g,this)}},{key:"pop",value:function(){return n(this.tail,this).value}},{key:"popNode",value:function(){return n(this.tail,this)}},{key:"shift",value:function(){return n(this.head,this).value}},{key:"shiftNode",value:function(){return n(this.head,this)}},{key:"get_object_at",value:function(g){if(g<=this.length()){var C=1,B=this.head;while(C<g)B=B.next,C++;return B.value}}},{key:"set_object_at",value:function(g,C){if(g<=this.length()){var B=1,E=this.head;while(B<g)E=E.next,B++;E.value=C}}}]),s}();A.exports=o},function(A,e,t){function r(i,u,a){if(this.x=null,this.y=null,i==null&&u==null&&a==null)this.x=0,this.y=0;else if(typeof i=="number"&&typeof u=="number"&&a==null)this.x=i,this.y=u;else if(i.constructor.name=="Point"&&u==null&&a==null)a=i,this.x=a.x,this.y=a.y}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.getLocation=function(){return new r(this.x,this.y)},r.prototype.setLocation=function(i,u,a){if(i.constructor.name=="Point"&&u==null&&a==null)a=i,this.setLocation(a.x,a.y);else if(typeof i=="number"&&typeof u=="number"&&a==null)if(parseInt(i)==i&&parseInt(u)==u)this.move(i,u);else this.x=Math.floor(i+0.5),this.y=Math.floor(u+0.5)},r.prototype.move=function(i,u){this.x=i,this.y=u},r.prototype.translate=function(i,u){this.x+=i,this.y+=u},r.prototype.equals=function(i){if(i.constructor.name=="Point"){var u=i;return this.x==u.x&&this.y==u.y}return this==i},r.prototype.toString=function(){return new r().constructor.name+"[x="+this.x+",y="+this.y+"]"},A.exports=r},function(A,e,t){function r(i,u,a,n){if(this.x=0,this.y=0,this.width=0,this.height=0,i!=null&&u!=null&&a!=null&&n!=null)this.x=i,this.y=u,this.width=a,this.height=n}r.prototype.getX=function(){return this.x},r.prototype.setX=function(i){this.x=i},r.prototype.getY=function(){return this.y},r.prototype.setY=function(i){this.y=i},r.prototype.getWidth=function(){return this.width},r.prototype.setWidth=function(i){this.width=i},r.prototype.getHeight=function(){return this.height},r.prototype.setHeight=function(i){this.height=i},r.prototype.getRight=function(){return this.x+this.width},r.prototype.getBottom=function(){return this.y+this.height},r.prototype.intersects=function(i){if(this.getRight()<i.x)return!1;if(this.getBottom()<i.y)return!1;if(i.getRight()<this.x)return!1;if(i.getBottom()<this.y)return!1;return!0},r.prototype.getCenterX=function(){return this.x+this.width/2},r.prototype.getMinX=function(){return this.getX()},r.prototype.getMaxX=function(){return this.getX()+this.width},r.prototype.getCenterY=function(){return this.y+this.height/2},r.prototype.getMinY=function(){return this.getY()},r.prototype.getMaxY=function(){return this.getY()+this.height},r.prototype.getWidthHalf=function(){return this.width/2},r.prototype.getHeightHalf=function(){return this.height/2},A.exports=r},function(A,e,t){var r=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(u){return typeof u}:function(u){return u&&typeof Symbol==="function"&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u};function i(){}i.lastID=0,i.createID=function(u){if(i.isPrimitive(u))return u;if(u.uniqueID!=null)return u.uniqueID;return u.uniqueID=i.getString(),i.lastID++,u.uniqueID},i.getString=function(u){if(u==null)u=i.lastID;return"Object#"+u},i.isPrimitive=function(u){var a=typeof u>"u"?"undefined":r(u);return u==null||a!="object"&&a!="function"},A.exports=i},function(A,e,t){function r(B){if(Array.isArray(B)){for(var E=0,d=Array(B.length);E<B.length;E++)d[E]=B[E];return d}else return Array.from(B)}var i=t(0),u=t(7),a=t(3),n=t(1),o=t(6),s=t(5),l=t(17),g=t(29);function C(B){if(g.call(this),this.layoutQuality=i.QUALITY,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.incremental=i.DEFAULT_INCREMENTAL,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES,this.edgeToDummyNodes=new Map,this.graphManager=new u(this),this.isLayoutFinished=!1,this.isSubLayout=!1,this.isRemoteUse=!1,B!=null)this.isRemoteUse=B}C.RANDOM_SEED=1,C.prototype=Object.create(g.prototype),C.prototype.getGraphManager=function(){return this.graphManager},C.prototype.getAllNodes=function(){return this.graphManager.getAllNodes()},C.prototype.getAllEdges=function(){return this.graphManager.getAllEdges()},C.prototype.getAllNodesToApplyGravitation=function(){return this.graphManager.getAllNodesToApplyGravitation()},C.prototype.newGraphManager=function(){var B=new u(this);return this.graphManager=B,B},C.prototype.newGraph=function(B){return new o(null,this.graphManager,B)},C.prototype.newNode=function(B){return new a(this.graphManager,B)},C.prototype.newEdge=function(B){return new n(null,null,B)},C.prototype.checkLayoutSuccess=function(){return this.graphManager.getRoot()==null||this.graphManager.getRoot().getNodes().length==0||this.graphManager.includesInvalidEdge()},C.prototype.runLayout=function(){if(this.isLayoutFinished=!1,this.tilingPreLayout)this.tilingPreLayout();this.initParameters();var B;if(this.checkLayoutSuccess())B=!1;else B=this.layout();if(i.ANIMATE==="during")return!1;if(B){if(!this.isSubLayout)this.doPostLayout()}if(this.tilingPostLayout)this.tilingPostLayout();return this.isLayoutFinished=!0,B},C.prototype.doPostLayout=function(){if(!this.incremental)this.transform();this.update()},C.prototype.update2=function(){if(this.createBendsAsNeeded)this.createBendpointsFromDummyNodes(),this.graphManager.resetAllEdges();if(!this.isRemoteUse){var B,E=this.graphManager.getAllEdges();for(var d=0;d<E.length;d++)B=E[d];var I,h=this.graphManager.getRoot().getNodes();for(var d=0;d<h.length;d++)I=h[d];this.update(this.graphManager.getRoot())}},C.prototype.update=function(B){if(B==null)this.update2();else if(B instanceof a){var E=B;if(E.getChild()!=null){var d=E.getChild().getNodes();for(var I=0;I<d.length;I++)update(d[I])}if(E.vGraphObject!=null){var h=E.vGraphObject;h.update(E)}}else if(B instanceof n){var Q=B;if(Q.vGraphObject!=null){var p=Q.vGraphObject;p.update(Q)}}else if(B instanceof o){var m=B;if(m.vGraphObject!=null){var f=m.vGraphObject;f.update(m)}}},C.prototype.initParameters=function(){if(!this.isSubLayout)this.layoutQuality=i.QUALITY,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.incremental=i.DEFAULT_INCREMENTAL,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES;if(this.animationDuringLayout)this.animationOnLayout=!1},C.prototype.transform=function(B){if(B==null)this.transform(new s(0,0));else{var E=new l,d=this.graphManager.getRoot().updateLeftTop();if(d!=null){E.setWorldOrgX(B.x),E.setWorldOrgY(B.y),E.setDeviceOrgX(d.x),E.setDeviceOrgY(d.y);var I=this.getAllNodes(),h;for(var Q=0;Q<I.length;Q++)h=I[Q],h.transform(E)}}},C.prototype.positionNodesRandomly=function(B){if(B==null)this.positionNodesRandomly(this.getGraphManager().getRoot()),this.getGraphManager().getRoot().updateBounds(!0);else{var E,d,I=B.getNodes();for(var h=0;h<I.length;h++)if(E=I[h],d=E.getChild(),d==null)E.scatter();else if(d.getNodes().length==0)E.scatter();else this.positionNodesRandomly(d),E.updateBounds()}},C.prototype.getFlatForest=function(){var B=[],E=!0,d=this.graphManager.getRoot().getNodes(),I=!0;for(var h=0;h<d.length;h++)if(d[h].getChild()!=null)I=!1;if(!I)return B;var Q=new Set,p=[],m=new Map,f=[];f=f.concat(d);while(f.length>0&&E){p.push(f[0]);while(p.length>0&&E){var D=p[0];p.splice(0,1),Q.add(D);var w=D.getEdges();for(var h=0;h<w.length;h++){var b=w[h].getOtherEnd(D);if(m.get(D)!=b)if(!Q.has(b))p.push(b),m.set(b,D);else{E=!1;break}}}if(!E)B=[];else{var F=[].concat(r(Q));B.push(F);for(var h=0;h<F.length;h++){var v=F[h],S=f.indexOf(v);if(S>-1)f.splice(S,1)}Q=new Set,m=new Map}}return B},C.prototype.createDummyNodesForBendpoints=function(B){var E=[],d=B.source,I=this.graphManager.calcLowestCommonAncestor(B.source,B.target);for(var h=0;h<B.bendpoints.length;h++){var Q=this.newNode(null);Q.setRect(new Point(0,0),new Dimension(1,1)),I.add(Q);var p=this.newEdge(null);this.graphManager.add(p,d,Q),E.add(Q),d=Q}var p=this.newEdge(null);if(this.graphManager.add(p,d,B.target),this.edgeToDummyNodes.set(B,E),B.isInterGraph())this.graphManager.remove(B);else I.remove(B);return E},C.prototype.createBendpointsFromDummyNodes=function(){var B=[];B=B.concat(this.graphManager.getAllEdges()),B=[].concat(r(this.edgeToDummyNodes.keys())).concat(B);for(var E=0;E<B.length;E++){var d=B[E];if(d.bendpoints.length>0){var I=this.edgeToDummyNodes.get(d);for(var h=0;h<I.length;h++){var Q=I[h],p=new s(Q.getCenterX(),Q.getCenterY()),m=d.bendpoints.get(h);m.x=p.x,m.y=p.y,Q.getOwner().remove(Q)}this.graphManager.add(d,d.source,d.target)}}},C.transform=function(B,E,d,I){if(d!=null&&I!=null){var h=E;if(B<=50){var Q=E/d;h-=(E-Q)/50*(50-B)}else{var p=E*I;h+=(p-E)/50*(B-50)}return h}else{var m,f;if(B<=50)m=9*E/500,f=E/10;else m=9*E/50,f=-8*E;return m*B+f}},C.findCenterOfTree=function(B){var E=[];E=E.concat(B);var d=[],I=new Map,h=!1,Q=null;if(E.length==1||E.length==2)h=!0,Q=E[0];for(var p=0;p<E.length;p++){var m=E[p],f=m.getNeighborsList().size;if(I.set(m,m.getNeighborsList().size),f==1)d.push(m)}var D=[];D=D.concat(d);while(!h){var w=[];w=w.concat(D),D=[];for(var p=0;p<E.length;p++){var m=E[p],b=E.indexOf(m);if(b>=0)E.splice(b,1);var F=m.getNeighborsList();F.forEach(function(x){if(d.indexOf(x)<0){var k=I.get(x),T=k-1;if(T==1)D.push(x);I.set(x,T)}})}if(d=d.concat(D),E.length==1||E.length==2)h=!0,Q=E[0]}return Q},C.prototype.setGraphManager=function(B){this.graphManager=B},A.exports=C},function(A,e,t){function r(){}r.seed=1,r.x=0,r.nextDouble=function(){return r.x=Math.sin(r.seed++)*1e4,r.x-Math.floor(r.x)},A.exports=r},function(A,e,t){var r=t(5);function i(u,a){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(u){this.lworldOrgX=u},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(u){this.lworldOrgY=u},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(u){this.lworldExtX=u},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(u){this.lworldExtY=u},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(u){this.ldeviceOrgX=u},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(u){this.ldeviceOrgY=u},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(u){this.ldeviceExtX=u},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(u){this.ldeviceExtY=u},i.prototype.transformX=function(u){var a=0,n=this.lworldExtX;if(n!=0)a=this.ldeviceOrgX+(u-this.lworldOrgX)*this.ldeviceExtX/n;return a},i.prototype.transformY=function(u){var a=0,n=this.lworldExtY;if(n!=0)a=this.ldeviceOrgY+(u-this.lworldOrgY)*this.ldeviceExtY/n;return a},i.prototype.inverseTransformX=function(u){var a=0,n=this.ldeviceExtX;if(n!=0)a=this.lworldOrgX+(u-this.ldeviceOrgX)*this.lworldExtX/n;return a},i.prototype.inverseTransformY=function(u){var a=0,n=this.ldeviceExtY;if(n!=0)a=this.lworldOrgY+(u-this.ldeviceOrgY)*this.lworldExtY/n;return a},i.prototype.inverseTransformPoint=function(u){var a=new r(this.inverseTransformX(u.x),this.inverseTransformY(u.y));return a},A.exports=i},function(A,e,t){function r(g){if(Array.isArray(g)){for(var C=0,B=Array(g.length);C<g.length;C++)B[C]=g[C];return B}else return Array.from(g)}var i=t(15),u=t(4),a=t(0),n=t(8),o=t(9);function s(){i.call(this),this.useSmartIdealEdgeLengthCalculation=u.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=u.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=u.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=u.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=u.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*u.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=u.MAX_ITERATIONS}s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.initParameters=function(){i.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=u.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},s.prototype.calcIdealEdgeLengths=function(){var g,C,B,E,d,I,h,Q=this.getGraphManager().getAllEdges();for(var p=0;p<Q.length;p++)if(g=Q[p],C=g.idealLength,g.isInterGraph){if(E=g.getSource(),d=g.getTarget(),I=g.getSourceInLca().getEstimatedSize(),h=g.getTargetInLca().getEstimatedSize(),this.useSmartIdealEdgeLengthCalculation)g.idealLength+=I+h-2*a.SIMPLE_NODE_SIZE;B=g.getLca().getInclusionTreeDepth(),g.idealLength+=C*u.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR*(E.getInclusionTreeDepth()+d.getInclusionTreeDepth()-2*B)}},s.prototype.initSpringEmbedder=function(){var g=this.getAllNodes().length;if(this.incremental){if(g>u.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(this.coolingFactor*u.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(g-u.ADAPTATION_LOWER_NODE_LIMIT)/(u.ADAPTATION_UPPER_NODE_LIMIT-u.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-u.COOLING_ADAPTATION_FACTOR));this.maxNodeDisplacement=u.MAX_NODE_DISPLACEMENT_INCREMENTAL}else{if(g>u.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(u.COOLING_ADAPTATION_FACTOR,1-(g-u.ADAPTATION_LOWER_NODE_LIMIT)/(u.ADAPTATION_UPPER_NODE_LIMIT-u.ADAPTATION_LOWER_NODE_LIMIT)*(1-u.COOLING_ADAPTATION_FACTOR));else this.coolingFactor=1;this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=u.MAX_NODE_DISPLACEMENT}this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*u.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},s.prototype.calcSpringForces=function(){var g=this.getAllEdges(),C;for(var B=0;B<g.length;B++)C=g[B],this.calcSpringForce(C,C.idealLength)},s.prototype.calcRepulsionForces=function(){var g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,B,E,d,I,h=this.getAllNodes(),Q;if(this.useFRGridVariant){if(this.totalIterations%u.GRID_CALCULATION_CHECK_PERIOD==1&&g)this.updateGrid();Q=new Set;for(B=0;B<h.length;B++)d=h[B],this.calculateRepulsionForceOfANode(d,Q,g,C),Q.add(d)}else for(B=0;B<h.length;B++){d=h[B];for(E=B+1;E<h.length;E++){if(I=h[E],d.getOwner()!=I.getOwner())continue;this.calcRepulsionForce(d,I)}}},s.prototype.calcGravitationalForces=function(){var g,C=this.getAllNodesToApplyGravitation();for(var B=0;B<C.length;B++)g=C[B],this.calcGravitationalForce(g)},s.prototype.moveNodes=function(){var g=this.getAllNodes(),C;for(var B=0;B<g.length;B++)C=g[B],C.move()},s.prototype.calcSpringForce=function(g,C){var B=g.getSource(),E=g.getTarget(),d,I,h,Q;if(this.uniformLeafNodeSizes&&B.getChild()==null&&E.getChild()==null)g.updateLengthSimple();else if(g.updateLength(),g.isOverlapingSourceAndTarget)return;if(d=g.getLength(),d==0)return;I=g.edgeElasticity*(d-C),h=I*(g.lengthX/d),Q=I*(g.lengthY/d),B.springForceX+=h,B.springForceY+=Q,E.springForceX-=h,E.springForceY-=Q},s.prototype.calcRepulsionForce=function(g,C){var B=g.getRect(),E=C.getRect(),d=[,,],I=[,,,,],h,Q,p,m,f,D,w;if(B.intersects(E)){n.calcSeparationAmount(B,E,d,u.DEFAULT_EDGE_LENGTH/2),D=2*d[0],w=2*d[1];var b=g.noOfChildren*C.noOfChildren/(g.noOfChildren+C.noOfChildren);g.repulsionForceX-=b*D,g.repulsionForceY-=b*w,C.repulsionForceX+=b*D,C.repulsionForceY+=b*w}else{if(this.uniformLeafNodeSizes&&g.getChild()==null&&C.getChild()==null)h=E.getCenterX()-B.getCenterX(),Q=E.getCenterY()-B.getCenterY();else n.getIntersection(B,E,I),h=I[2]-I[0],Q=I[3]-I[1];if(Math.abs(h)<u.MIN_REPULSION_DIST)h=o.sign(h)*u.MIN_REPULSION_DIST;if(Math.abs(Q)<u.MIN_REPULSION_DIST)Q=o.sign(Q)*u.MIN_REPULSION_DIST;p=h*h+Q*Q,m=Math.sqrt(p),f=(g.nodeRepulsion/2+C.nodeRepulsion/2)*g.noOfChildren*C.noOfChildren/p,D=f*h/m,w=f*Q/m,g.repulsionForceX-=D,g.repulsionForceY-=w,C.repulsionForceX+=D,C.repulsionForceY+=w}},s.prototype.calcGravitationalForce=function(g){var C,B,E,d,I,h,Q,p;if(C=g.getOwner(),B=(C.getRight()+C.getLeft())/2,E=(C.getTop()+C.getBottom())/2,d=g.getCenterX()-B,I=g.getCenterY()-E,h=Math.abs(d)+g.getWidth()/2,Q=Math.abs(I)+g.getHeight()/2,g.getOwner()==this.graphManager.getRoot()){if(p=C.getEstimatedSize()*this.gravityRangeFactor,h>p||Q>p)g.gravitationForceX=-this.gravityConstant*d,g.gravitationForceY=-this.gravityConstant*I}else if(p=C.getEstimatedSize()*this.compoundGravityRangeFactor,h>p||Q>p)g.gravitationForceX=-this.gravityConstant*d*this.compoundGravityConstant,g.gravitationForceY=-this.gravityConstant*I*this.compoundGravityConstant},s.prototype.isConverged=function(){var g,C=!1;if(this.totalIterations>this.maxIterations/3)C=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2;return g=this.totalDisplacement<this.totalDisplacementThreshold,this.oldTotalDisplacement=this.totalDisplacement,g||C},s.prototype.animate=function(){if(this.animationDuringLayout&&!this.isSubLayout)if(this.notAnimatedIterations==this.animationPeriod)this.update(),this.notAnimatedIterations=0;else this.notAnimatedIterations++},s.prototype.calcNoOfChildrenForAllNodes=function(){var g,C=this.graphManager.getAllNodes();for(var B=0;B<C.length;B++)g=C[B],g.noOfChildren=g.getNoOfChildren()},s.prototype.calcGrid=function(g){var C=0,B=0;C=parseInt(Math.ceil((g.getRight()-g.getLeft())/this.repulsionRange)),B=parseInt(Math.ceil((g.getBottom()-g.getTop())/this.repulsionRange));var E=Array(C);for(var d=0;d<C;d++)E[d]=Array(B);for(var d=0;d<C;d++)for(var I=0;I<B;I++)E[d][I]=[];return E},s.prototype.addNodeToGrid=function(g,C,B){var E=0,d=0,I=0,h=0;E=parseInt(Math.floor((g.getRect().x-C)/this.repulsionRange)),d=parseInt(Math.floor((g.getRect().width+g.getRect().x-C)/this.repulsionRange)),I=parseInt(Math.floor((g.getRect().y-B)/this.repulsionRange)),h=parseInt(Math.floor((g.getRect().height+g.getRect().y-B)/this.repulsionRange));for(var Q=E;Q<=d;Q++)for(var p=I;p<=h;p++)this.grid[Q][p].push(g),g.setGridCoordinates(E,d,I,h)},s.prototype.updateGrid=function(){var g,C,B=this.getAllNodes();this.grid=this.calcGrid(this.graphManager.getRoot());for(g=0;g<B.length;g++)C=B[g],this.addNodeToGrid(C,this.graphManager.getRoot().getLeft(),this.graphManager.getRoot().getTop())},s.prototype.calculateRepulsionForceOfANode=function(g,C,B,E){if(this.totalIterations%u.GRID_CALCULATION_CHECK_PERIOD==1&&B||E){var d=new Set;g.surrounding=[];var I,h=this.grid;for(var Q=g.startX-1;Q<g.finishX+2;Q++)for(var p=g.startY-1;p<g.finishY+2;p++)if(!(Q<0||p<0||Q>=h.length||p>=h[0].length))for(var m=0;m<h[Q][p].length;m++){if(I=h[Q][p][m],g.getOwner()!=I.getOwner()||g==I)continue;if(!C.has(I)&&!d.has(I)){var f=Math.abs(g.getCenterX()-I.getCenterX())-(g.getWidth()/2+I.getWidth()/2),D=Math.abs(g.getCenterY()-I.getCenterY())-(g.getHeight()/2+I.getHeight()/2);if(f<=this.repulsionRange&&D<=this.repulsionRange)d.add(I)}}g.surrounding=[].concat(r(d))}for(Q=0;Q<g.surrounding.length;Q++)this.calcRepulsionForce(g,g.surrounding[Q])},s.prototype.calcRepulsionRange=function(){return 0},A.exports=s},function(A,e,t){var r=t(1),i=t(4);function u(n,o,s){r.call(this,n,o,s),this.idealLength=i.DEFAULT_EDGE_LENGTH,this.edgeElasticity=i.DEFAULT_SPRING_STRENGTH}u.prototype=Object.create(r.prototype);for(var a in r)u[a]=r[a];A.exports=u},function(A,e,t){var r=t(3),i=t(4);function u(n,o,s,l){r.call(this,n,o,s,l),this.nodeRepulsion=i.DEFAULT_REPULSION_STRENGTH,this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0,this.startX=0,this.finishX=0,this.startY=0,this.finishY=0,this.surrounding=[]}u.prototype=Object.create(r.prototype);for(var a in r)u[a]=r[a];u.prototype.setGridCoordinates=function(n,o,s,l){this.startX=n,this.finishX=o,this.startY=s,this.finishY=l},A.exports=u},function(A,e,t){function r(i,u){if(this.width=0,this.height=0,i!==null&&u!==null)this.height=u,this.width=i}r.prototype.getWidth=function(){return this.width},r.prototype.setWidth=function(i){this.width=i},r.prototype.getHeight=function(){return this.height},r.prototype.setHeight=function(i){this.height=i},A.exports=r},function(A,e,t){var r=t(14);function i(){this.map={},this.keys=[]}i.prototype.put=function(u,a){var n=r.createID(u);if(!this.contains(n))this.map[n]=a,this.keys.push(u)},i.prototype.contains=function(u){var a=r.createID(u);return this.map[u]!=null},i.prototype.get=function(u){var a=r.createID(u);return this.map[a]},i.prototype.keySet=function(){return this.keys},A.exports=i},function(A,e,t){var r=t(14);function i(){this.set={}}i.prototype.add=function(u){var a=r.createID(u);if(!this.contains(a))this.set[a]=u},i.prototype.remove=function(u){delete this.set[r.createID(u)]},i.prototype.clear=function(){this.set={}},i.prototype.contains=function(u){return this.set[r.createID(u)]==u},i.prototype.isEmpty=function(){return this.size()===0},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAllTo=function(u){var a=Object.keys(this.set),n=a.length;for(var o=0;o<n;o++)u.push(this.set[a[o]])},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAll=function(u){var a=u.length;for(var n=0;n<a;n++){var o=u[n];this.add(o)}},A.exports=i},function(A,e,t){function r(){}r.multMat=function(i,u){var a=[];for(var n=0;n<i.length;n++){a[n]=[];for(var o=0;o<u[0].length;o++){a[n][o]=0;for(var s=0;s<i[0].length;s++)a[n][o]+=i[n][s]*u[s][o]}}return a},r.transpose=function(i){var u=[];for(var a=0;a<i[0].length;a++){u[a]=[];for(var n=0;n<i.length;n++)u[a][n]=i[n][a]}return u},r.multCons=function(i,u){var a=[];for(var n=0;n<i.length;n++)a[n]=i[n]*u;return a},r.minusOp=function(i,u){var a=[];for(var n=0;n<i.length;n++)a[n]=i[n]-u[n];return a},r.dotProduct=function(i,u){var a=0;for(var n=0;n<i.length;n++)a+=i[n]*u[n];return a},r.mag=function(i){return Math.sqrt(this.dotProduct(i,i))},r.normalize=function(i){var u=[],a=this.mag(i);for(var n=0;n<i.length;n++)u[n]=i[n]/a;return u},r.multGamma=function(i){var u=[],a=0;for(var n=0;n<i.length;n++)a+=i[n];a*=-1/i.length;for(var o=0;o<i.length;o++)u[o]=a+i[o];return u},r.multL=function(i,u,a){var n=[],o=[],s=[];for(var l=0;l<u[0].length;l++){var g=0;for(var C=0;C<u.length;C++)g+=-0.5*u[C][l]*i[C];o[l]=g}for(var B=0;B<a.length;B++){var E=0;for(var d=0;d<a.length;d++)E+=a[B][d]*o[d];s[B]=E}for(var I=0;I<u.length;I++){var h=0;for(var Q=0;Q<u[0].length;Q++)h+=u[I][Q]*s[Q];n[I]=h}return n},A.exports=r},function(A,e,t){var r=function(){function n(o,s){for(var l=0;l<s.length;l++){var g=s[l];if(g.enumerable=g.enumerable||!1,g.configurable=!0,"value"in g)g.writable=!0;Object.defineProperty(o,g.key,g)}}return function(o,s,l){if(s)n(o.prototype,s);if(l)n(o,l);return o}}();function i(n,o){if(!(n instanceof o))throw TypeError("Cannot call a class as a function")}var u=t(11),a=function(){function n(o,s){if(i(this,n),s!==null||s!==void 0)this.compareFunction=this._defaultCompareFunction;var l=void 0;if(o instanceof u)l=o.size();else l=o.length;this._quicksort(o,0,l-1)}return r(n,[{key:"_quicksort",value:function(s,l,g){if(l<g){var C=this._partition(s,l,g);this._quicksort(s,l,C),this._quicksort(s,C+1,g)}}},{key:"_partition",value:function(s,l,g){var C=this._get(s,l),B=l,E=g;while(!0){while(this.compareFunction(C,this._get(s,E)))E--;while(this.compareFunction(this._get(s,B),C))B++;if(B<E)this._swap(s,B,E),B++,E--;else return E}}},{key:"_get",value:function(s,l){if(s instanceof u)return s.get_object_at(l);else return s[l]}},{key:"_set",value:function(s,l,g){if(s instanceof u)s.set_object_at(l,g);else s[l]=g}},{key:"_swap",value:function(s,l,g){var C=this._get(s,l);this._set(s,l,this._get(s,g)),this._set(s,g,C)}},{key:"_defaultCompareFunction",value:function(s,l){return l>s}}]),n}();A.exports=a},function(A,e,t){function r(){}r.svd=function(i){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=i.length,this.n=i[0].length;var u=Math.min(this.m,this.n);this.s=function(je){var xe=[];while(je-- >0)xe.push(0);return xe}(Math.min(this.m+1,this.n)),this.U=function(je){var xe=function yA(Ne){if(Ne.length==0)return 0;else{var He=[];for(var de=0;de<Ne[0];de++)He.push(yA(Ne.slice(1)));return He}};return xe(je)}([this.m,u]),this.V=function(je){var xe=function yA(Ne){if(Ne.length==0)return 0;else{var He=[];for(var de=0;de<Ne[0];de++)He.push(yA(Ne.slice(1)));return He}};return xe(je)}([this.n,this.n]);var a=function(je){var xe=[];while(je-- >0)xe.push(0);return xe}(this.n),n=function(je){var xe=[];while(je-- >0)xe.push(0);return xe}(this.m),o=!0,s=!0,l=Math.min(this.m-1,this.n),g=Math.max(0,Math.min(this.n-2,this.m));for(var C=0;C<Math.max(l,g);C++){if(C<l){this.s[C]=0;for(var B=C;B<this.m;B++)this.s[C]=r.hypot(this.s[C],i[B][C]);if(this.s[C]!==0){if(i[C][C]<0)this.s[C]=-this.s[C];for(var E=C;E<this.m;E++)i[E][C]/=this.s[C];i[C][C]+=1}this.s[C]=-this.s[C]}for(var d=C+1;d<this.n;d++){if(function(je,xe){return je&&xe}(C<l,this.s[C]!==0)){var I=0;for(var h=C;h<this.m;h++)I+=i[h][C]*i[h][d];I=-I/i[C][C];for(var Q=C;Q<this.m;Q++)i[Q][d]+=I*i[Q][C]}a[d]=i[C][d]}if(function(je,xe){return je&&xe}(o,C<l))for(var p=C;p<this.m;p++)this.U[p][C]=i[p][C];if(C<g){a[C]=0;for(var m=C+1;m<this.n;m++)a[C]=r.hypot(a[C],a[m]);if(a[C]!==0){if(a[C+1]<0)a[C]=-a[C];for(var f=C+1;f<this.n;f++)a[f]/=a[C];a[C+1]+=1}if(a[C]=-a[C],function(je,xe){return je&&xe}(C+1<this.m,a[C]!==0)){for(var D=C+1;D<this.m;D++)n[D]=0;for(var w=C+1;w<this.n;w++)for(var b=C+1;b<this.m;b++)n[b]+=a[w]*i[b][w];for(var F=C+1;F<this.n;F++){var v=-a[F]/a[C+1];for(var S=C+1;S<this.m;S++)i[S][F]+=v*n[S]}}if(s)for(var x=C+1;x<this.n;x++)this.V[x][C]=a[x]}}var k=Math.min(this.n,this.m+1);if(l<this.n)this.s[l]=i[l][l];if(this.m<k)this.s[k-1]=0;if(g+1<k)a[g]=i[g][k-1];if(a[k-1]=0,o){for(var T=l;T<u;T++){for(var R=0;R<this.m;R++)this.U[R][T]=0;this.U[T][T]=1}for(var L=l-1;L>=0;L--)if(this.s[L]!==0){for(var M=L+1;M<u;M++){var U=0;for(var Y=L;Y<this.m;Y++)U+=this.U[Y][L]*this.U[Y][M];U=-U/this.U[L][L];for(var H=L;H<this.m;H++)this.U[H][M]+=U*this.U[H][L]}for(var J=L;J<this.m;J++)this.U[J][L]=-this.U[J][L];this.U[L][L]=1+this.U[L][L];for(var K=0;K<L-1;K++)this.U[K][L]=0}else{for(var O=0;O<this.m;O++)this.U[O][L]=0;this.U[L][L]=1}}if(s)for(var _=this.n-1;_>=0;_--){if(function(je,xe){return je&&xe}(_<g,a[_]!==0))for(var z=_+1;z<u;z++){var j=0;for(var q=_+1;q<this.n;q++)j+=this.V[q][_]*this.V[q][z];j=-j/this.V[_+1][_];for(var CA=_+1;CA<this.n;CA++)this.V[CA][z]+=j*this.V[CA][_]}for(var tA=0;tA<this.n;tA++)this.V[tA][_]=0;this.V[_][_]=1}var lA=k-1,gA=0,aA=Math.pow(2,-52),RA=Math.pow(2,-966);while(k>0){var wA=void 0,JA=void 0;for(wA=k-2;wA>=-1;wA--){if(wA===-1)break;if(Math.abs(a[wA])<=RA+aA*(Math.abs(this.s[wA])+Math.abs(this.s[wA+1]))){a[wA]=0;break}}if(wA===k-2)JA=4;else{var TA=void 0;for(TA=k-1;TA>=wA;TA--){if(TA===wA)break;var qA=(TA!==k?Math.abs(a[TA]):0)+(TA!==wA+1?Math.abs(a[TA-1]):0);if(Math.abs(this.s[TA])<=RA+aA*qA){this.s[TA]=0;break}}if(TA===wA)JA=3;else if(TA===k-1)JA=1;else JA=2,wA=TA}switch(wA++,JA){case 1:{var BA=a[k-2];a[k-2]=0;for(var bA=k-2;bA>=wA;bA--){var FA=r.hypot(this.s[bA],BA),IA=this.s[bA]/FA,nA=BA/FA;if(this.s[bA]=FA,bA!==wA)BA=-nA*a[bA-1],a[bA-1]=IA*a[bA-1];if(s)for(var eA=0;eA<this.n;eA++)FA=IA*this.V[eA][bA]+nA*this.V[eA][k-1],this.V[eA][k-1]=-nA*this.V[eA][bA]+IA*this.V[eA][k-1],this.V[eA][bA]=FA}}break;case 2:{var EA=a[wA-1];a[wA-1]=0;for(var mA=wA;mA<k;mA++){var kA=r.hypot(this.s[mA],EA),SA=this.s[mA]/kA,YA=EA/kA;if(this.s[mA]=kA,EA=-YA*a[mA],a[mA]=SA*a[mA],o)for(var dA=0;dA<this.m;dA++)kA=SA*this.U[dA][mA]+YA*this.U[dA][wA-1],this.U[dA][wA-1]=-YA*this.U[dA][mA]+SA*this.U[dA][wA-1],this.U[dA][mA]=kA}}break;case 3:{var W=Math.max(Math.max(Math.max(Math.max(Math.abs(this.s[k-1]),Math.abs(this.s[k-2])),Math.abs(a[k-2])),Math.abs(this.s[wA])),Math.abs(a[wA])),Z=this.s[k-1]/W,pA=this.s[k-2]/W,AA=a[k-2]/W,DA=this.s[wA]/W,rA=a[wA]/W,KA=((pA+Z)*(pA-Z)+AA*AA)/2,_A=Z*AA*(Z*AA),zA=0;if(function(je,xe){return je||xe}(KA!==0,_A!==0)){if(zA=Math.sqrt(KA*KA+_A),KA<0)zA=-zA;zA=_A/(KA+zA)}var WA=(DA+Z)*(DA-Z)+zA,te=DA*rA;for(var ZA=wA;ZA<k-1;ZA++){var ee=r.hypot(WA,te),$A=WA/ee,oe=te/ee;if(ZA!==wA)a[ZA-1]=ee;if(WA=$A*this.s[ZA]+oe*a[ZA],a[ZA]=$A*a[ZA]-oe*this.s[ZA],te=oe*this.s[ZA+1],this.s[ZA+1]=$A*this.s[ZA+1],s)for(var vA=0;vA<this.n;vA++)ee=$A*this.V[vA][ZA]+oe*this.V[vA][ZA+1],this.V[vA][ZA+1]=-oe*this.V[vA][ZA]+$A*this.V[vA][ZA+1],this.V[vA][ZA]=ee;if(ee=r.hypot(WA,te),$A=WA/ee,oe=te/ee,this.s[ZA]=ee,WA=$A*a[ZA]+oe*this.s[ZA+1],this.s[ZA+1]=-oe*a[ZA]+$A*this.s[ZA+1],te=oe*a[ZA+1],a[ZA+1]=$A*a[ZA+1],o&&ZA<this.m-1)for(var Pe=0;Pe<this.m;Pe++)ee=$A*this.U[Pe][ZA]+oe*this.U[Pe][ZA+1],this.U[Pe][ZA+1]=-oe*this.U[Pe][ZA]+$A*this.U[Pe][ZA+1],this.U[Pe][ZA]=ee}a[k-2]=WA,gA=gA+1}break;case 4:{if(this.s[wA]<=0){if(this.s[wA]=this.s[wA]<0?-this.s[wA]:0,s)for(var MA=0;MA<=lA;MA++)this.V[MA][wA]=-this.V[MA][wA]}while(wA<lA){if(this.s[wA]>=this.s[wA+1])break;var ke=this.s[wA];if(this.s[wA]=this.s[wA+1],this.s[wA+1]=ke,s&&wA<this.n-1)for(var We=0;We<this.n;We++)ke=this.V[We][wA+1],this.V[We][wA+1]=this.V[We][wA],this.V[We][wA]=ke;if(o&&wA<this.m-1)for(var se=0;se<this.m;se++)ke=this.U[se][wA+1],this.U[se][wA+1]=this.U[se][wA],this.U[se][wA]=ke;wA++}gA=0,k--}break}}var Te={U:this.U,V:this.V,S:this.s};return Te},r.hypot=function(i,u){var a=void 0;if(Math.abs(i)>Math.abs(u))a=u/i,a=Math.abs(i)*Math.sqrt(1+a*a);else if(u!=0)a=i/u,a=Math.abs(u)*Math.sqrt(1+a*a);else a=0;return a},A.exports=r},function(A,e,t){var r=function(){function a(n,o){for(var s=0;s<o.length;s++){var l=o[s];if(l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l)l.writable=!0;Object.defineProperty(n,l.key,l)}}return function(n,o,s){if(o)a(n.prototype,o);if(s)a(n,s);return n}}();function i(a,n){if(!(a instanceof n))throw TypeError("Cannot call a class as a function")}var u=function(){function a(n,o){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,g=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,a),this.sequence1=n,this.sequence2=o,this.match_score=s,this.mismatch_penalty=l,this.gap_penalty=g,this.iMax=n.length+1,this.jMax=o.length+1,this.grid=Array(this.iMax);for(var C=0;C<this.iMax;C++){this.grid[C]=Array(this.jMax);for(var B=0;B<this.jMax;B++)this.grid[C][B]=0}this.tracebackGrid=Array(this.iMax);for(var E=0;E<this.iMax;E++){this.tracebackGrid[E]=Array(this.jMax);for(var d=0;d<this.jMax;d++)this.tracebackGrid[E][d]=[null,null,null]}this.alignments=[],this.score=-1,this.computeGrids()}return r(a,[{key:"getScore",value:function(){return this.score}},{key:"getAlignments",value:function(){return this.alignments}},{key:"computeGrids",value:function(){for(var o=1;o<this.jMax;o++)this.grid[0][o]=this.grid[0][o-1]+this.gap_penalty,this.tracebackGrid[0][o]=[!1,!1,!0];for(var s=1;s<this.iMax;s++)this.grid[s][0]=this.grid[s-1][0]+this.gap_penalty,this.tracebackGrid[s][0]=[!1,!0,!1];for(var l=1;l<this.iMax;l++)for(var g=1;g<this.jMax;g++){var C=void 0;if(this.sequence1[l-1]===this.sequence2[g-1])C=this.grid[l-1][g-1]+this.match_score;else C=this.grid[l-1][g-1]+this.mismatch_penalty;var B=this.grid[l-1][g]+this.gap_penalty,E=this.grid[l][g-1]+this.gap_penalty,d=[C,B,E],I=this.arrayAllMaxIndexes(d);this.grid[l][g]=d[I[0]],this.tracebackGrid[l][g]=[I.includes(0),I.includes(1),I.includes(2)]}this.score=this.grid[this.iMax-1][this.jMax-1]}},{key:"alignmentTraceback",value:function(){var o=[];o.push({pos:[this.sequence1.length,this.sequence2.length],seq1:"",seq2:""});while(o[0]){var s=o[0],l=this.tracebackGrid[s.pos[0]][s.pos[1]];if(l[0])o.push({pos:[s.pos[0]-1,s.pos[1]-1],seq1:this.sequence1[s.pos[0]-1]+s.seq1,seq2:this.sequence2[s.pos[1]-1]+s.seq2});if(l[1])o.push({pos:[s.pos[0]-1,s.pos[1]],seq1:this.sequence1[s.pos[0]-1]+s.seq1,seq2:"-"+s.seq2});if(l[2])o.push({pos:[s.pos[0],s.pos[1]-1],seq1:"-"+s.seq1,seq2:this.sequence2[s.pos[1]-1]+s.seq2});if(s.pos[0]===0&&s.pos[1]===0)this.alignments.push({sequence1:s.seq1,sequence2:s.seq2});o.shift()}return this.alignments}},{key:"getAllIndexes",value:function(o,s){var l=[],g=-1;while((g=o.indexOf(s,g+1))!==-1)l.push(g);return l}},{key:"arrayAllMaxIndexes",value:function(o){return this.getAllIndexes(o,Math.max.apply(null,o))}}]),a}();A.exports=u},function(A,e,t){var r=function(){return};r.FDLayout=t(18),r.FDLayoutConstants=t(4),r.FDLayoutEdge=t(19),r.FDLayoutNode=t(20),r.DimensionD=t(21),r.HashMap=t(22),r.HashSet=t(23),r.IGeometry=t(8),r.IMath=t(9),r.Integer=t(10),r.Point=t(12),r.PointD=t(5),r.RandomSeed=t(16),r.RectangleD=t(13),r.Transform=t(17),r.UniqueIDGeneretor=t(14),r.Quicksort=t(25),r.LinkedList=t(11),r.LGraphObject=t(2),r.LGraph=t(6),r.LEdge=t(1),r.LGraphManager=t(7),r.LNode=t(3),r.Layout=t(15),r.LayoutConstants=t(0),r.NeedlemanWunsch=t(27),r.Matrix=t(24),r.SVD=t(26),A.exports=r},function(A,e,t){function r(){this.listeners=[]}var i=r.prototype;i.addListener=function(u,a){this.listeners.push({event:u,callback:a})},i.removeListener=function(u,a){for(var n=this.listeners.length;n>=0;n--){var o=this.listeners[n];if(o.event===u&&o.callback===a)this.listeners.splice(n,1)}},i.emit=function(u,a){for(var n=0;n<this.listeners.length;n++){var o=this.listeners[n];if(u===o.event)o.callback(a)}},A.exports=r}])})});var SBA=wu(function(b7,xBA){(function(e,t){if(typeof b7==="object"&&typeof xBA==="object")xBA.exports=t(FBA());else if(typeof define==="function"&&define.amd)define(["layout-base"],t);else if(typeof b7==="object")b7.coseBase=t(FBA());else e.coseBase=t(e.layoutBase)})(b7,function(A){return(()=>{var e={45:(u,a,n)=>{var o={};o.layoutBase=n(551),o.CoSEConstants=n(806),o.CoSEEdge=n(767),o.CoSEGraph=n(880),o.CoSEGraphManager=n(578),o.CoSELayout=n(765),o.CoSENode=n(991),o.ConstraintHandler=n(902),u.exports=o},806:(u,a,n)=>{var o=n(551).FDLayoutConstants;function s(){}for(var l in o)s[l]=o[l];s.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,s.DEFAULT_RADIAL_SEPARATION=o.DEFAULT_EDGE_LENGTH,s.DEFAULT_COMPONENT_SEPERATION=60,s.TILE=!0,s.TILING_PADDING_VERTICAL=10,s.TILING_PADDING_HORIZONTAL=10,s.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,s.ENFORCE_CONSTRAINTS=!0,s.APPLY_LAYOUT=!0,s.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,s.TREE_REDUCTION_ON_INCREMENTAL=!0,s.PURE_INCREMENTAL=s.DEFAULT_INCREMENTAL,u.exports=s},767:(u,a,n)=>{var o=n(551).FDLayoutEdge;function s(g,C,B){o.call(this,g,C,B)}s.prototype=Object.create(o.prototype);for(var l in o)s[l]=o[l];u.exports=s},880:(u,a,n)=>{var o=n(551).LGraph;function s(g,C,B){o.call(this,g,C,B)}s.prototype=Object.create(o.prototype);for(var l in o)s[l]=o[l];u.exports=s},578:(u,a,n)=>{var o=n(551).LGraphManager;function s(g){o.call(this,g)}s.prototype=Object.create(o.prototype);for(var l in o)s[l]=o[l];u.exports=s},765:(u,a,n)=>{var o=n(551).FDLayout,s=n(578),l=n(880),g=n(991),C=n(767),B=n(806),E=n(902),d=n(551).FDLayoutConstants,I=n(551).LayoutConstants,h=n(551).Point,Q=n(551).PointD,p=n(551).DimensionD,m=n(551).Layout,f=n(551).Integer,D=n(551).IGeometry,w=n(551).LGraph,b=n(551).Transform,F=n(551).LinkedList;function v(){o.call(this),this.toBeTiled={},this.constraints={}}v.prototype=Object.create(o.prototype);for(var S in o)v[S]=o[S];v.prototype.newGraphManager=function(){var x=new s(this);return this.graphManager=x,x},v.prototype.newGraph=function(x){return new l(null,this.graphManager,x)},v.prototype.newNode=function(x){return new g(this.graphManager,x)},v.prototype.newEdge=function(x){return new C(null,null,x)},v.prototype.initParameters=function(){if(o.prototype.initParameters.call(this,arguments),!this.isSubLayout){if(B.DEFAULT_EDGE_LENGTH<10)this.idealEdgeLength=10;else this.idealEdgeLength=B.DEFAULT_EDGE_LENGTH;this.useSmartIdealEdgeLengthCalculation=B.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=d.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=d.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=d.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=d.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1}},v.prototype.initSpringEmbedder=function(){o.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/d.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=0.04,this.coolingAdjuster=1},v.prototype.layout=function(){var x=I.DEFAULT_CREATE_BENDS_AS_NEEDED;if(x)this.createBendpoints(),this.graphManager.resetAllEdges();return this.level=0,this.classicLayout()},v.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),!this.incremental){var x=this.getFlatForest();if(x.length>0)this.positionNodesRadially(x);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var k=new Set(this.getAllNodes()),T=this.nodesWithGravity.filter(function(R){return k.has(R)});this.graphManager.setAllNodesToApplyGravitation(T),this.positionNodesRandomly()}}else if(B.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var k=new Set(this.getAllNodes()),T=this.nodesWithGravity.filter(function(M){return k.has(M)});this.graphManager.setAllNodesToApplyGravitation(T)}if(Object.keys(this.constraints).length>0)E.handleConstraints(this),this.initConstraintVariables();if(this.initSpringEmbedder(),B.APPLY_LAYOUT)this.runSpringEmbedder();return!0},v.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%d.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.coolingCycle++,this.layoutQuality==0)this.coolingAdjuster=this.coolingCycle;else if(this.layoutQuality==1)this.coolingAdjuster=this.coolingCycle/3;this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var x=new Set(this.getAllNodes()),k=this.nodesWithGravity.filter(function(L){return x.has(L)});if(this.graphManager.setAllNodesToApplyGravitation(k),this.graphManager.updateBounds(),this.updateGrid(),B.PURE_INCREMENTAL)this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL/2;else this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;if(this.afterGrowthIterations%10==0)this.graphManager.updateBounds(),this.updateGrid();if(B.PURE_INCREMENTAL)this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100);else this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100);this.afterGrowthIterations++}var T=!this.isTreeGrowing&&!this.isGrowthFinished,R=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(T,R),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},v.prototype.getPositionsData=function(){var x=this.graphManager.getAllNodes(),k={};for(var T=0;T<x.length;T++){var R=x[T].rect,L=x[T].id;k[L]={id:L,x:R.getCenterX(),y:R.getCenterY(),w:R.width,h:R.height}}return k},v.prototype.runSpringEmbedder=function(){this.initialAnimationPeriod=25,this.animationPeriod=this.initialAnimationPeriod;var x=!1;if(d.ANIMATE==="during")this.emit("layoutstarted");else{while(!x)x=this.tick();this.graphManager.updateBounds()}},v.prototype.moveNodes=function(){var x=this.getAllNodes(),k;for(var T=0;T<x.length;T++)k=x[T],k.calculateDisplacement();if(Object.keys(this.constraints).length>0)this.updateDisplacements();for(var T=0;T<x.length;T++)k=x[T],k.move()},v.prototype.initConstraintVariables=function(){var x=this;this.idToNodeMap=new Map,this.fixedNodeSet=new Set;var k=this.graphManager.getAllNodes();for(var T=0;T<k.length;T++){var R=k[T];this.idToNodeMap.set(R.id,R)}var L=function q(CA){var tA=CA.getChild().getNodes(),lA,gA=0;for(var aA=0;aA<tA.length;aA++)if(lA=tA[aA],lA.getChild()==null){if(x.fixedNodeSet.has(lA.id))gA+=100}else gA+=q(lA);return gA};if(this.constraints.fixedNodeConstraint){this.constraints.fixedNodeConstraint.forEach(function(tA){x.fixedNodeSet.add(tA.nodeId)});var k=this.graphManager.getAllNodes(),R;for(var T=0;T<k.length;T++)if(R=k[T],R.getChild()!=null){var M=L(R);if(M>0)R.fixedNodeWeight=M}}if(this.constraints.relativePlacementConstraint){var U=new Map,Y=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(q){x.fixedNodesOnHorizontal.add(q),x.fixedNodesOnVertical.add(q)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical){var H=this.constraints.alignmentConstraint.vertical;for(var T=0;T<H.length;T++)this.dummyToNodeForVerticalAlignment.set("dummy"+T,[]),H[T].forEach(function(CA){if(U.set(CA,"dummy"+T),x.dummyToNodeForVerticalAlignment.get("dummy"+T).push(CA),x.fixedNodeSet.has(CA))x.fixedNodesOnHorizontal.add("dummy"+T)})}if(this.constraints.alignmentConstraint.horizontal){var J=this.constraints.alignmentConstraint.horizontal;for(var T=0;T<J.length;T++)this.dummyToNodeForHorizontalAlignment.set("dummy"+T,[]),J[T].forEach(function(CA){if(Y.set(CA,"dummy"+T),x.dummyToNodeForHorizontalAlignment.get("dummy"+T).push(CA),x.fixedNodeSet.has(CA))x.fixedNodesOnVertical.add("dummy"+T)})}}if(B.RELAX_MOVEMENT_ON_CONSTRAINTS)this.shuffle=function(q){var CA,tA,lA;for(lA=q.length-1;lA>=2*q.length/3;lA--)CA=Math.floor(Math.random()*(lA+1)),tA=q[lA],q[lA]=q[CA],q[CA]=tA;return q},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(q){if(q.left){var CA=U.has(q.left)?U.get(q.left):q.left,tA=U.has(q.right)?U.get(q.right):q.right;if(!x.nodesInRelativeHorizontal.includes(CA))if(x.nodesInRelativeHorizontal.push(CA),x.nodeToRelativeConstraintMapHorizontal.set(CA,[]),x.dummyToNodeForVerticalAlignment.has(CA))x.nodeToTempPositionMapHorizontal.set(CA,x.idToNodeMap.get(x.dummyToNodeForVerticalAlignment.get(CA)[0]).getCenterX());else x.nodeToTempPositionMapHorizontal.set(CA,x.idToNodeMap.get(CA).getCenterX());if(!x.nodesInRelativeHorizontal.includes(tA))if(x.nodesInRelativeHorizontal.push(tA),x.nodeToRelativeConstraintMapHorizontal.set(tA,[]),x.dummyToNodeForVerticalAlignment.has(tA))x.nodeToTempPositionMapHorizontal.set(tA,x.idToNodeMap.get(x.dummyToNodeForVerticalAlignment.get(tA)[0]).getCenterX());else x.nodeToTempPositionMapHorizontal.set(tA,x.idToNodeMap.get(tA).getCenterX());x.nodeToRelativeConstraintMapHorizontal.get(CA).push({right:tA,gap:q.gap}),x.nodeToRelativeConstraintMapHorizontal.get(tA).push({left:CA,gap:q.gap})}else{var lA=Y.has(q.top)?Y.get(q.top):q.top,gA=Y.has(q.bottom)?Y.get(q.bottom):q.bottom;if(!x.nodesInRelativeVertical.includes(lA))if(x.nodesInRelativeVertical.push(lA),x.nodeToRelativeConstraintMapVertical.set(lA,[]),x.dummyToNodeForHorizontalAlignment.has(lA))x.nodeToTempPositionMapVertical.set(lA,x.idToNodeMap.get(x.dummyToNodeForHorizontalAlignment.get(lA)[0]).getCenterY());else x.nodeToTempPositionMapVertical.set(lA,x.idToNodeMap.get(lA).getCenterY());if(!x.nodesInRelativeVertical.includes(gA))if(x.nodesInRelativeVertical.push(gA),x.nodeToRelativeConstraintMapVertical.set(gA,[]),x.dummyToNodeForHorizontalAlignment.has(gA))x.nodeToTempPositionMapVertical.set(gA,x.idToNodeMap.get(x.dummyToNodeForHorizontalAlignment.get(gA)[0]).getCenterY());else x.nodeToTempPositionMapVertical.set(gA,x.idToNodeMap.get(gA).getCenterY());x.nodeToRelativeConstraintMapVertical.get(lA).push({bottom:gA,gap:q.gap}),x.nodeToRelativeConstraintMapVertical.get(gA).push({top:lA,gap:q.gap})}});else{var K=new Map,O=new Map;this.constraints.relativePlacementConstraint.forEach(function(q){if(q.left){var CA=U.has(q.left)?U.get(q.left):q.left,tA=U.has(q.right)?U.get(q.right):q.right;if(K.has(CA))K.get(CA).push(tA);else K.set(CA,[tA]);if(K.has(tA))K.get(tA).push(CA);else K.set(tA,[CA])}else{var lA=Y.has(q.top)?Y.get(q.top):q.top,gA=Y.has(q.bottom)?Y.get(q.bottom):q.bottom;if(O.has(lA))O.get(lA).push(gA);else O.set(lA,[gA]);if(O.has(gA))O.get(gA).push(lA);else O.set(gA,[lA])}});var _=function(CA,tA){var lA=[],gA=[],aA=new F,RA=new Set,wA=0;return CA.forEach(function(JA,TA){if(!RA.has(TA)){lA[wA]=[],gA[wA]=!1;var qA=TA;aA.push(qA),RA.add(qA),lA[wA].push(qA);while(aA.length!=0){if(qA=aA.shift(),tA.has(qA))gA[wA]=!0;var BA=CA.get(qA);BA.forEach(function(bA){if(!RA.has(bA))aA.push(bA),RA.add(bA),lA[wA].push(bA)})}wA++}}),{components:lA,isFixed:gA}},z=_(K,x.fixedNodesOnHorizontal);this.componentsOnHorizontal=z.components,this.fixedComponentsOnHorizontal=z.isFixed;var j=_(O,x.fixedNodesOnVertical);this.componentsOnVertical=j.components,this.fixedComponentsOnVertical=j.isFixed}}},v.prototype.updateDisplacements=function(){var x=this;if(this.constraints.fixedNodeConstraint)this.constraints.fixedNodeConstraint.forEach(function(j){var q=x.idToNodeMap.get(j.nodeId);q.displacementX=0,q.displacementY=0});if(this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical){var k=this.constraints.alignmentConstraint.vertical;for(var T=0;T<k.length;T++){var R=0;for(var L=0;L<k[T].length;L++){if(this.fixedNodeSet.has(k[T][L])){R=0;break}R+=this.idToNodeMap.get(k[T][L]).displacementX}var M=R/k[T].length;for(var L=0;L<k[T].length;L++)this.idToNodeMap.get(k[T][L]).displacementX=M}}if(this.constraints.alignmentConstraint.horizontal){var U=this.constraints.alignmentConstraint.horizontal;for(var T=0;T<U.length;T++){var Y=0;for(var L=0;L<U[T].length;L++){if(this.fixedNodeSet.has(U[T][L])){Y=0;break}Y+=this.idToNodeMap.get(U[T][L]).displacementY}var H=Y/U[T].length;for(var L=0;L<U[T].length;L++)this.idToNodeMap.get(U[T][L]).displacementY=H}}}if(this.constraints.relativePlacementConstraint)if(B.RELAX_MOVEMENT_ON_CONSTRAINTS){if(this.totalIterations%10==0)this.shuffle(this.nodesInRelativeHorizontal),this.shuffle(this.nodesInRelativeVertical);this.nodesInRelativeHorizontal.forEach(function(j){if(!x.fixedNodesOnHorizontal.has(j)){var q=0;if(x.dummyToNodeForVerticalAlignment.has(j))q=x.idToNodeMap.get(x.dummyToNodeForVerticalAlignment.get(j)[0]).displacementX;else q=x.idToNodeMap.get(j).displacementX;if(x.nodeToRelativeConstraintMapHorizontal.get(j).forEach(function(CA){if(CA.right){var tA=x.nodeToTempPositionMapHorizontal.get(CA.right)-x.nodeToTempPositionMapHorizontal.get(j)-q;if(tA<CA.gap)q-=CA.gap-tA}else{var tA=x.nodeToTempPositionMapHorizontal.get(j)-x.nodeToTempPositionMapHorizontal.get(CA.left)+q;if(tA<CA.gap)q+=CA.gap-tA}}),x.nodeToTempPositionMapHorizontal.set(j,x.nodeToTempPositionMapHorizontal.get(j)+q),x.dummyToNodeForVerticalAlignment.has(j))x.dummyToNodeForVerticalAlignment.get(j).forEach(function(CA){x.idToNodeMap.get(CA).displacementX=q});else x.idToNodeMap.get(j).displacementX=q}}),this.nodesInRelativeVertical.forEach(function(j){if(!x.fixedNodesOnHorizontal.has(j)){var q=0;if(x.dummyToNodeForHorizontalAlignment.has(j))q=x.idToNodeMap.get(x.dummyToNodeForHorizontalAlignment.get(j)[0]).displacementY;else q=x.idToNodeMap.get(j).displacementY;if(x.nodeToRelativeConstraintMapVertical.get(j).forEach(function(CA){if(CA.bottom){var tA=x.nodeToTempPositionMapVertical.get(CA.bottom)-x.nodeToTempPositionMapVertical.get(j)-q;if(tA<CA.gap)q-=CA.gap-tA}else{var tA=x.nodeToTempPositionMapVertical.get(j)-x.nodeToTempPositionMapVertical.get(CA.top)+q;if(tA<CA.gap)q+=CA.gap-tA}}),x.nodeToTempPositionMapVertical.set(j,x.nodeToTempPositionMapVertical.get(j)+q),x.dummyToNodeForHorizontalAlignment.has(j))x.dummyToNodeForHorizontalAlignment.get(j).forEach(function(CA){x.idToNodeMap.get(CA).displacementY=q});else x.idToNodeMap.get(j).displacementY=q}})}else{for(var T=0;T<this.componentsOnHorizontal.length;T++){var J=this.componentsOnHorizontal[T];if(this.fixedComponentsOnHorizontal[T])for(var L=0;L<J.length;L++)if(this.dummyToNodeForVerticalAlignment.has(J[L]))this.dummyToNodeForVerticalAlignment.get(J[L]).forEach(function(CA){x.idToNodeMap.get(CA).displacementX=0});else this.idToNodeMap.get(J[L]).displacementX=0;else{var K=0,O=0;for(var L=0;L<J.length;L++)if(this.dummyToNodeForVerticalAlignment.has(J[L])){var _=this.dummyToNodeForVerticalAlignment.get(J[L]);K+=_.length*this.idToNodeMap.get(_[0]).displacementX,O+=_.length}else K+=this.idToNodeMap.get(J[L]).displacementX,O++;var z=K/O;for(var L=0;L<J.length;L++)if(this.dummyToNodeForVerticalAlignment.has(J[L]))this.dummyToNodeForVerticalAlignment.get(J[L]).forEach(function(CA){x.idToNodeMap.get(CA).displacementX=z});else this.idToNodeMap.get(J[L]).displacementX=z}}for(var T=0;T<this.componentsOnVertical.length;T++){var J=this.componentsOnVertical[T];if(this.fixedComponentsOnVertical[T])for(var L=0;L<J.length;L++)if(this.dummyToNodeForHorizontalAlignment.has(J[L]))this.dummyToNodeForHorizontalAlignment.get(J[L]).forEach(function(tA){x.idToNodeMap.get(tA).displacementY=0});else this.idToNodeMap.get(J[L]).displacementY=0;else{var K=0,O=0;for(var L=0;L<J.length;L++)if(this.dummyToNodeForHorizontalAlignment.has(J[L])){var _=this.dummyToNodeForHorizontalAlignment.get(J[L]);K+=_.length*this.idToNodeMap.get(_[0]).displacementY,O+=_.length}else K+=this.idToNodeMap.get(J[L]).displacementY,O++;var z=K/O;for(var L=0;L<J.length;L++)if(this.dummyToNodeForHorizontalAlignment.has(J[L]))this.dummyToNodeForHorizontalAlignment.get(J[L]).forEach(function(aA){x.idToNodeMap.get(aA).displacementY=z});else this.idToNodeMap.get(J[L]).displacementY=z}}}},v.prototype.calculateNodesToApplyGravitationTo=function(){var x=[],k,T=this.graphManager.getGraphs(),R=T.length,L;for(L=0;L<R;L++)if(k=T[L],k.updateConnected(),!k.isConnected)x=x.concat(k.getNodes());return x},v.prototype.createBendpoints=function(){var x=[];x=x.concat(this.graphManager.getAllEdges());var k=new Set,T;for(T=0;T<x.length;T++){var R=x[T];if(!k.has(R)){var L=R.getSource(),M=R.getTarget();if(L==M)R.getBendpoints().push(new Q),R.getBendpoints().push(new Q),this.createDummyNodesForBendpoints(R),k.add(R);else{var U=[];if(U=U.concat(L.getEdgeListToNode(M)),U=U.concat(M.getEdgeListToNode(L)),!k.has(U[0])){if(U.length>1){var Y;for(Y=0;Y<U.length;Y++){var H=U[Y];H.getBendpoints().push(new Q),this.createDummyNodesForBendpoints(H)}}U.forEach(function(J){k.add(J)})}}}if(k.size==x.length)break}},v.prototype.positionNodesRadially=function(x){var k=new h(0,0),T=Math.ceil(Math.sqrt(x.length)),R=0,L=0,M=0,U=new Q(0,0);for(var Y=0;Y<x.length;Y++){if(Y%T==0){if(M=0,L=R,Y!=0)L+=B.DEFAULT_COMPONENT_SEPERATION;R=0}var H=x[Y],J=m.findCenterOfTree(H);if(k.x=M,k.y=L,U=v.radialLayout(H,J,k),U.y>R)R=Math.floor(U.y);M=Math.floor(U.x+B.DEFAULT_COMPONENT_SEPERATION)}this.transform(new Q(I.WORLD_CENTER_X-U.x/2,I.WORLD_CENTER_Y-U.y/2))},v.radialLayout=function(x,k,T){var R=Math.max(this.maxDiagonalInTree(x),B.DEFAULT_RADIAL_SEPARATION);v.branchRadialLayout(k,null,0,359,0,R);var L=w.calculateBounds(x),M=new b;M.setDeviceOrgX(L.getMinX()),M.setDeviceOrgY(L.getMinY()),M.setWorldOrgX(T.x),M.setWorldOrgY(T.y);for(var U=0;U<x.length;U++){var Y=x[U];Y.transform(M)}var H=new Q(L.getMaxX(),L.getMaxY());return M.inverseTransformPoint(H)},v.branchRadialLayout=function(x,k,T,R,L,M){var U=(R-T+1)/2;if(U<0)U+=180;var Y=(U+T)%360,H=Y*D.TWO_PI/360,J=Math.cos(H),K=L*Math.cos(H),O=L*Math.sin(H);x.setCenter(K,O);var _=[];_=_.concat(x.getEdges());var z=_.length;if(k!=null)z--;var j=0,q=_.length,CA,tA=x.getEdgesBetween(k);while(tA.length>1){var lA=tA[0];tA.splice(0,1);var gA=_.indexOf(lA);if(gA>=0)_.splice(gA,1);q--,z--}if(k!=null)CA=(_.indexOf(tA[0])+1)%q;else CA=0;var aA=Math.abs(R-T)/z;for(var RA=CA;j!=z;RA=++RA%q){var wA=_[RA].getOtherEnd(x);if(wA==k)continue;var JA=(T+j*aA)%360,TA=(JA+aA)%360;v.branchRadialLayout(wA,x,JA,TA,L+M,M),j++}},v.maxDiagonalInTree=function(x){var k=f.MIN_VALUE;for(var T=0;T<x.length;T++){var R=x[T],L=R.getDiagonal();if(L>k)k=L}return k},v.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},v.prototype.groupZeroDegreeMembers=function(){var x=this,k={};this.memberGroups={},this.idToDummyNode={};var T=[],R=this.graphManager.getAllNodes();for(var L=0;L<R.length;L++){var M=R[L],U=M.getParent();if(this.getNodeDegreeWithChildren(M)===0&&(U.id==null||!this.getToBeTiled(U)))T.push(M)}for(var L=0;L<T.length;L++){var M=T[L],Y=M.getParent().id;if(typeof k[Y]>"u")k[Y]=[];k[Y]=k[Y].concat(M)}Object.keys(k).forEach(function(H){if(k[H].length>1){var J="DummyCompound_"+H;x.memberGroups[J]=k[H];var K=k[H][0].getParent(),O=new g(x.graphManager);O.id=J,O.paddingLeft=K.paddingLeft||0,O.paddingRight=K.paddingRight||0,O.paddingBottom=K.paddingBottom||0,O.paddingTop=K.paddingTop||0,x.idToDummyNode[J]=O;var _=x.getGraphManager().add(x.newGraph(),O),z=K.getChild();z.add(O);for(var j=0;j<k[H].length;j++){var q=k[H][j];z.remove(q),_.add(q)}}})},v.prototype.clearCompounds=function(){var x={},k={};this.performDFSOnCompounds();for(var T=0;T<this.compoundOrder.length;T++)k[this.compoundOrder[T].id]=this.compoundOrder[T],x[this.compoundOrder[T].id]=[].concat(this.compoundOrder[T].getChild().getNodes()),this.graphManager.remove(this.compoundOrder[T].getChild()),this.compoundOrder[T].child=null;this.graphManager.resetAllNodes(),this.tileCompoundMembers(x,k)},v.prototype.clearZeroDegreeMembers=function(){var x=this,k=this.tiledZeroDegreePack=[];Object.keys(this.memberGroups).forEach(function(T){var R=x.idToDummyNode[T];if(k[T]=x.tileNodes(x.memberGroups[T],R.paddingLeft+R.paddingRight),R.rect.width=k[T].width,R.rect.height=k[T].height,R.setCenter(k[T].centerX,k[T].centerY),R.labelMarginLeft=0,R.labelMarginTop=0,B.NODE_DIMENSIONS_INCLUDE_LABELS){var L=R.rect.width,M=R.rect.height;if(R.labelWidth){if(R.labelPosHorizontal=="left")R.rect.x-=R.labelWidth,R.setWidth(L+R.labelWidth),R.labelMarginLeft=R.labelWidth;else if(R.labelPosHorizontal=="center"&&R.labelWidth>L)R.rect.x-=(R.labelWidth-L)/2,R.setWidth(R.labelWidth),R.labelMarginLeft=(R.labelWidth-L)/2;else if(R.labelPosHorizontal=="right")R.setWidth(L+R.labelWidth)}if(R.labelHeight){if(R.labelPosVertical=="top")R.rect.y-=R.labelHeight,R.setHeight(M+R.labelHeight),R.labelMarginTop=R.labelHeight;else if(R.labelPosVertical=="center"&&R.labelHeight>M)R.rect.y-=(R.labelHeight-M)/2,R.setHeight(R.labelHeight),R.labelMarginTop=(R.labelHeight-M)/2;else if(R.labelPosVertical=="bottom")R.setHeight(M+R.labelHeight)}}})},v.prototype.repopulateCompounds=function(){for(var x=this.compoundOrder.length-1;x>=0;x--){var k=this.compoundOrder[x],{id:T,paddingLeft:R,paddingTop:L,labelMarginLeft:M,labelMarginTop:U}=k;this.adjustLocations(this.tiledMemberPack[T],k.rect.x,k.rect.y,R,L,M,U)}},v.prototype.repopulateZeroDegreeMembers=function(){var x=this,k=this.tiledZeroDegreePack;Object.keys(k).forEach(function(T){var R=x.idToDummyNode[T],{paddingLeft:L,paddingTop:M,labelMarginLeft:U,labelMarginTop:Y}=R;x.adjustLocations(k[T],R.rect.x,R.rect.y,L,M,U,Y)})},v.prototype.getToBeTiled=function(x){var k=x.id;if(this.toBeTiled[k]!=null)return this.toBeTiled[k];var T=x.getChild();if(T==null)return this.toBeTiled[k]=!1,!1;var R=T.getNodes();for(var L=0;L<R.length;L++){var M=R[L];if(this.getNodeDegree(M)>0)return this.toBeTiled[k]=!1,!1;if(M.getChild()==null){this.toBeTiled[M.id]=!1;continue}if(!this.getToBeTiled(M))return this.toBeTiled[k]=!1,!1}return this.toBeTiled[k]=!0,!0},v.prototype.getNodeDegree=function(x){var k=x.id,T=x.getEdges(),R=0;for(var L=0;L<T.length;L++){var M=T[L];if(M.getSource().id!==M.getTarget().id)R=R+1}return R},v.prototype.getNodeDegreeWithChildren=function(x){var k=this.getNodeDegree(x);if(x.getChild()==null)return k;var T=x.getChild().getNodes();for(var R=0;R<T.length;R++){var L=T[R];k+=this.getNodeDegreeWithChildren(L)}return k},v.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},v.prototype.fillCompexOrderByDFS=function(x){for(var k=0;k<x.length;k++){var T=x[k];if(T.getChild()!=null)this.fillCompexOrderByDFS(T.getChild().getNodes());if(this.getToBeTiled(T))this.compoundOrder.push(T)}},v.prototype.adjustLocations=function(x,k,T,R,L,M,U){k+=R+M,T+=L+U;var Y=k;for(var H=0;H<x.rows.length;H++){var J=x.rows[H];k=Y;var K=0;for(var O=0;O<J.length;O++){var _=J[O];if(_.rect.x=k,_.rect.y=T,k+=_.rect.width+x.horizontalPadding,_.rect.height>K)K=_.rect.height}T+=K+x.verticalPadding}},v.prototype.tileCompoundMembers=function(x,k){var T=this;this.tiledMemberPack=[],Object.keys(x).forEach(function(R){var L=k[R];if(T.tiledMemberPack[R]=T.tileNodes(x[R],L.paddingLeft+L.paddingRight),L.rect.width=T.tiledMemberPack[R].width,L.rect.height=T.tiledMemberPack[R].height,L.setCenter(T.tiledMemberPack[R].centerX,T.tiledMemberPack[R].centerY),L.labelMarginLeft=0,L.labelMarginTop=0,B.NODE_DIMENSIONS_INCLUDE_LABELS){var M=L.rect.width,U=L.rect.height;if(L.labelWidth){if(L.labelPosHorizontal=="left")L.rect.x-=L.labelWidth,L.setWidth(M+L.labelWidth),L.labelMarginLeft=L.labelWidth;else if(L.labelPosHorizontal=="center"&&L.labelWidth>M)L.rect.x-=(L.labelWidth-M)/2,L.setWidth(L.labelWidth),L.labelMarginLeft=(L.labelWidth-M)/2;else if(L.labelPosHorizontal=="right")L.setWidth(M+L.labelWidth)}if(L.labelHeight){if(L.labelPosVertical=="top")L.rect.y-=L.labelHeight,L.setHeight(U+L.labelHeight),L.labelMarginTop=L.labelHeight;else if(L.labelPosVertical=="center"&&L.labelHeight>U)L.rect.y-=(L.labelHeight-U)/2,L.setHeight(L.labelHeight),L.labelMarginTop=(L.labelHeight-U)/2;else if(L.labelPosVertical=="bottom")L.setHeight(U+L.labelHeight)}}})},v.prototype.tileNodes=function(x,k){var T=this.tileNodesByFavoringDim(x,k,!0),R=this.tileNodesByFavoringDim(x,k,!1),L=this.getOrgRatio(T),M=this.getOrgRatio(R),U;if(M<L)U=R;else U=T;return U},v.prototype.getOrgRatio=function(x){var{width:k,height:T}=x,R=k/T;if(R<1)R=1/R;return R},v.prototype.calcIdealRowWidth=function(x,k){var{TILING_PADDING_VERTICAL:T,TILING_PADDING_HORIZONTAL:R}=B,L=x.length,M=0,U=0,Y=0;x.forEach(function(j){if(M+=j.getWidth(),U+=j.getHeight(),j.getWidth()>Y)Y=j.getWidth()});var H=M/L,J=U/L,K=Math.pow(T-R,2)+4*(H+R)*(J+T)*L,O=(R-T+Math.sqrt(K))/(2*(H+R)),_;if(k){if(_=Math.ceil(O),_==O)_++}else _=Math.floor(O);var z=_*(H+R)-R;if(Y>z)z=Y;return z+=R*2,z},v.prototype.tileNodesByFavoringDim=function(x,k,T){var{TILING_PADDING_VERTICAL:R,TILING_PADDING_HORIZONTAL:L,TILING_COMPARE_BY:M}=B,U={rows:[],rowWidth:[],rowHeight:[],width:0,height:k,verticalPadding:R,horizontalPadding:L,centerX:0,centerY:0};if(M)U.idealRowWidth=this.calcIdealRowWidth(x,T);var Y=function(q){return q.rect.width*q.rect.height},H=function(q,CA){return Y(CA)-Y(q)};x.sort(function(j,q){var CA=H;if(U.idealRowWidth)return CA=M,CA(j.id,q.id);return CA(j,q)});var J=0,K=0;for(var O=0;O<x.length;O++){var _=x[O];J+=_.getCenterX(),K+=_.getCenterY()}U.centerX=J/x.length,U.centerY=K/x.length;for(var O=0;O<x.length;O++){var _=x[O];if(U.rows.length==0)this.insertNodeToRow(U,_,0,k);else if(this.canAddHorizontal(U,_.rect.width,_.rect.height)){var z=U.rows.length-1;if(!U.idealRowWidth)z=this.getShortestRowIndex(U);this.insertNodeToRow(U,_,z,k)}else this.insertNodeToRow(U,_,U.rows.length,k);this.shiftToLastRow(U)}return U},v.prototype.insertNodeToRow=function(x,k,T,R){var L=R;if(T==x.rows.length){var M=[];x.rows.push(M),x.rowWidth.push(L),x.rowHeight.push(0)}var U=x.rowWidth[T]+k.rect.width;if(x.rows[T].length>0)U+=x.horizontalPadding;if(x.rowWidth[T]=U,x.width<U)x.width=U;var Y=k.rect.height;if(T>0)Y+=x.verticalPadding;var H=0;if(Y>x.rowHeight[T])H=x.rowHeight[T],x.rowHeight[T]=Y,H=x.rowHeight[T]-H;x.height+=H,x.rows[T].push(k)},v.prototype.getShortestRowIndex=function(x){var k=-1,T=Number.MAX_VALUE;for(var R=0;R<x.rows.length;R++)if(x.rowWidth[R]<T)k=R,T=x.rowWidth[R];return k},v.prototype.getLongestRowIndex=function(x){var k=-1,T=Number.MIN_VALUE;for(var R=0;R<x.rows.length;R++)if(x.rowWidth[R]>T)k=R,T=x.rowWidth[R];return k},v.prototype.canAddHorizontal=function(x,k,T){if(x.idealRowWidth){var R=x.rows.length-1,L=x.rowWidth[R];return L+k+x.horizontalPadding<=x.idealRowWidth}var M=this.getShortestRowIndex(x);if(M<0)return!0;var U=x.rowWidth[M];if(U+x.horizontalPadding+k<=x.width)return!0;var Y=0;if(x.rowHeight[M]<T){if(M>0)Y=T+x.verticalPadding-x.rowHeight[M]}var H;if(x.width-U>=k+x.horizontalPadding)H=(x.height+Y)/(U+k+x.horizontalPadding);else H=(x.height+Y)/x.width;Y=T+x.verticalPadding;var J;if(x.width<k)J=(x.height+Y)/k;else J=(x.height+Y)/x.width;if(J<1)J=1/J;if(H<1)H=1/H;return H<J},v.prototype.shiftToLastRow=function(x){var k=this.getLongestRowIndex(x),T=x.rowWidth.length-1,R=x.rows[k],L=R[R.length-1],M=L.width+x.horizontalPadding;if(x.width-x.rowWidth[T]>M&&k!=T){R.splice(-1,1),x.rows[T].push(L),x.rowWidth[k]=x.rowWidth[k]-M,x.rowWidth[T]=x.rowWidth[T]+M,x.width=x.rowWidth[instance.getLongestRowIndex(x)];var U=Number.MIN_VALUE;for(var Y=0;Y<R.length;Y++)if(R[Y].height>U)U=R[Y].height;if(k>0)U+=x.verticalPadding;var H=x.rowHeight[k]+x.rowHeight[T];if(x.rowHeight[k]=U,x.rowHeight[T]<L.height+x.verticalPadding)x.rowHeight[T]=L.height+x.verticalPadding;var J=x.rowHeight[k]+x.rowHeight[T];x.height+=J-H,this.shiftToLastRow(x)}},v.prototype.tilingPreLayout=function(){if(B.TILE)this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers()},v.prototype.tilingPostLayout=function(){if(B.TILE)this.repopulateZeroDegreeMembers(),this.repopulateCompounds()},v.prototype.reduceTrees=function(){var x=[],k=!0,T;while(k){var R=this.graphManager.getAllNodes(),L=[];k=!1;for(var M=0;M<R.length;M++)if(T=R[M],T.getEdges().length==1&&!T.getEdges()[0].isInterGraph&&T.getChild()==null){if(B.PURE_INCREMENTAL){var U=T.getEdges()[0].getOtherEnd(T),Y=new p(T.getCenterX()-U.getCenterX(),T.getCenterY()-U.getCenterY());L.push([T,T.getEdges()[0],T.getOwner(),Y])}else L.push([T,T.getEdges()[0],T.getOwner()]);k=!0}if(k==!0){var H=[];for(var J=0;J<L.length;J++)if(L[J][0].getEdges().length==1)H.push(L[J]),L[J][0].getOwner().remove(L[J][0]);x.push(H),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()}}this.prunedNodesAll=x},v.prototype.growTree=function(x){var k=x.length,T=x[k-1],R;for(var L=0;L<T.length;L++)R=T[L],this.findPlaceforPrunedNode(R),R[2].add(R[0]),R[2].add(R[1],R[1].source,R[1].target);x.splice(x.length-1,1),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()},v.prototype.findPlaceforPrunedNode=function(x){var k,T,R=x[0];if(R==x[1].source)T=x[1].target;else T=x[1].source;if(B.PURE_INCREMENTAL)R.setCenter(T.getCenterX()+x[3].getWidth(),T.getCenterY()+x[3].getHeight());else{var L=T.startX,M=T.finishX,U=T.startY,Y=T.finishY,H=0,J=0,K=0,O=0,_=[H,K,J,O];if(U>0)for(var z=L;z<=M;z++)_[0]+=this.grid[z][U-1].length+this.grid[z][U].length-1;if(M<this.grid.length-1)for(var z=U;z<=Y;z++)_[1]+=this.grid[M+1][z].length+this.grid[M][z].length-1;if(Y<this.grid[0].length-1)for(var z=L;z<=M;z++)_[2]+=this.grid[z][Y+1].length+this.grid[z][Y].length-1;if(L>0)for(var z=U;z<=Y;z++)_[3]+=this.grid[L-1][z].length+this.grid[L][z].length-1;var j=f.MAX_VALUE,q,CA;for(var tA=0;tA<_.length;tA++)if(_[tA]<j)j=_[tA],q=1,CA=tA;else if(_[tA]==j)q++;if(q==3&&j==0){if(_[0]==0&&_[1]==0&&_[2]==0)k=1;else if(_[0]==0&&_[1]==0&&_[3]==0)k=0;else if(_[0]==0&&_[2]==0&&_[3]==0)k=3;else if(_[1]==0&&_[2]==0&&_[3]==0)k=2}else if(q==2&&j==0){var lA=Math.floor(Math.random()*2);if(_[0]==0&&_[1]==0)if(lA==0)k=0;else k=1;else if(_[0]==0&&_[2]==0)if(lA==0)k=0;else k=2;else if(_[0]==0&&_[3]==0)if(lA==0)k=0;else k=3;else if(_[1]==0&&_[2]==0)if(lA==0)k=1;else k=2;else if(_[1]==0&&_[3]==0)if(lA==0)k=1;else k=3;else if(lA==0)k=2;else k=3}else if(q==4&&j==0){var lA=Math.floor(Math.random()*4);k=lA}else k=CA;if(k==0)R.setCenter(T.getCenterX(),T.getCenterY()-T.getHeight()/2-d.DEFAULT_EDGE_LENGTH-R.getHeight()/2);else if(k==1)R.setCenter(T.getCenterX()+T.getWidth()/2+d.DEFAULT_EDGE_LENGTH+R.getWidth()/2,T.getCenterY());else if(k==2)R.setCenter(T.getCenterX(),T.getCenterY()+T.getHeight()/2+d.DEFAULT_EDGE_LENGTH+R.getHeight()/2);else R.setCenter(T.getCenterX()-T.getWidth()/2-d.DEFAULT_EDGE_LENGTH-R.getWidth()/2,T.getCenterY())}},u.exports=v},991:(u,a,n)=>{var o=n(551).FDLayoutNode,s=n(551).IMath;function l(C,B,E,d){o.call(this,C,B,E,d)}l.prototype=Object.create(o.prototype);for(var g in o)l[g]=o[g];l.prototype.calculateDisplacement=function(){var C=this.graphManager.getLayout();if(this.getChild()!=null&&this.fixedNodeWeight)this.displacementX+=C.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=C.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight;else this.displacementX+=C.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=C.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren;if(Math.abs(this.displacementX)>C.coolingFactor*C.maxNodeDisplacement)this.displacementX=C.coolingFactor*C.maxNodeDisplacement*s.sign(this.displacementX);if(Math.abs(this.displacementY)>C.coolingFactor*C.maxNodeDisplacement)this.displacementY=C.coolingFactor*C.maxNodeDisplacement*s.sign(this.displacementY);if(this.child&&this.child.getNodes().length>0)this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},l.prototype.propogateDisplacementToChildren=function(C,B){var E=this.getChild().getNodes(),d;for(var I=0;I<E.length;I++)if(d=E[I],d.getChild()==null)d.displacementX+=C,d.displacementY+=B;else d.propogateDisplacementToChildren(C,B)},l.prototype.move=function(){var C=this.graphManager.getLayout();if(this.child==null||this.child.getNodes().length==0)this.moveBy(this.displacementX,this.displacementY),C.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY);this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},l.prototype.setPred1=function(C){this.pred1=C},l.prototype.getPred1=function(){return pred1},l.prototype.getPred2=function(){return pred2},l.prototype.setNext=function(C){this.next=C},l.prototype.getNext=function(){return next},l.prototype.setProcessed=function(C){this.processed=C},l.prototype.isProcessed=function(){return processed},u.exports=l},902:(u,a,n)=>{function o(E){if(Array.isArray(E)){for(var d=0,I=Array(E.length);d<E.length;d++)I[d]=E[d];return I}else return Array.from(E)}var s=n(806),l=n(551).LinkedList,g=n(551).Matrix,C=n(551).SVD;function B(){}B.handleConstraints=function(E){var d={};d.fixedNodeConstraint=E.constraints.fixedNodeConstraint,d.alignmentConstraint=E.constraints.alignmentConstraint,d.relativePlacementConstraint=E.constraints.relativePlacementConstraint;var I=new Map,h=new Map,Q=[],p=[],m=E.getAllNodes(),f=0;for(var D=0;D<m.length;D++){var w=m[D];if(w.getChild()==null)h.set(w.id,f++),Q.push(w.getCenterX()),p.push(w.getCenterY()),I.set(w.id,w)}if(d.relativePlacementConstraint)d.relativePlacementConstraint.forEach(function(W){if(!W.gap&&W.gap!=0)if(W.left)W.gap=s.DEFAULT_EDGE_LENGTH+I.get(W.left).getWidth()/2+I.get(W.right).getWidth()/2;else W.gap=s.DEFAULT_EDGE_LENGTH+I.get(W.top).getHeight()/2+I.get(W.bottom).getHeight()/2});var b=function(Z,pA){return{x:Z.x-pA.x,y:Z.y-pA.y}},F=function(Z){var pA=0,AA=0;return Z.forEach(function(DA){pA+=Q[h.get(DA)],AA+=p[h.get(DA)]}),{x:pA/Z.size,y:AA/Z.size}},v=function(Z,pA,AA,DA,rA){function KA(oe,vA){var Pe=new Set(oe),MA=!0,ke=!1,We=void 0;try{for(var se=vA[Symbol.iterator](),Te;!(MA=(Te=se.next()).done);MA=!0){var je=Te.value;Pe.add(je)}}catch(xe){ke=!0,We=xe}finally{try{if(!MA&&se.return)se.return()}finally{if(ke)throw We}}return Pe}var _A=new Map;Z.forEach(function(oe,vA){_A.set(vA,0)}),Z.forEach(function(oe,vA){oe.forEach(function(Pe){_A.set(Pe.id,_A.get(Pe.id)+1)})});var zA=new Map,WA=new Map,te=new l;if(_A.forEach(function(oe,vA){if(oe==0){if(te.push(vA),!AA)if(pA=="horizontal")zA.set(vA,h.has(vA)?Q[h.get(vA)]:DA.get(vA));else zA.set(vA,h.has(vA)?p[h.get(vA)]:DA.get(vA))}else zA.set(vA,Number.NEGATIVE_INFINITY);if(AA)WA.set(vA,new Set([vA]))}),AA)rA.forEach(function(oe){var vA=[];if(oe.forEach(function(ke){if(AA.has(ke))vA.push(ke)}),vA.length>0){var Pe=0;vA.forEach(function(ke){if(pA=="horizontal")zA.set(ke,h.has(ke)?Q[h.get(ke)]:DA.get(ke)),Pe+=zA.get(ke);else zA.set(ke,h.has(ke)?p[h.get(ke)]:DA.get(ke)),Pe+=zA.get(ke)}),Pe=Pe/vA.length,oe.forEach(function(ke){if(!AA.has(ke))zA.set(ke,Pe)})}else{var MA=0;oe.forEach(function(ke){if(pA=="horizontal")MA+=h.has(ke)?Q[h.get(ke)]:DA.get(ke);else MA+=h.has(ke)?p[h.get(ke)]:DA.get(ke)}),MA=MA/oe.length,oe.forEach(function(ke){zA.set(ke,MA)})}});var ZA=function(){var vA=te.shift(),Pe=Z.get(vA);Pe.forEach(function(MA){if(zA.get(MA.id)<zA.get(vA)+MA.gap)if(AA&&AA.has(MA.id)){var ke=void 0;if(pA=="horizontal")ke=h.has(MA.id)?Q[h.get(MA.id)]:DA.get(MA.id);else ke=h.has(MA.id)?p[h.get(MA.id)]:DA.get(MA.id);if(zA.set(MA.id,ke),ke<zA.get(vA)+MA.gap){var We=zA.get(vA)+MA.gap-ke;WA.get(vA).forEach(function(se){zA.set(se,zA.get(se)-We)})}}else zA.set(MA.id,zA.get(vA)+MA.gap);if(_A.set(MA.id,_A.get(MA.id)-1),_A.get(MA.id)==0)te.push(MA.id);if(AA)WA.set(MA.id,KA(WA.get(vA),WA.get(MA.id)))})};while(te.length!=0)ZA();if(AA){var ee=new Set;Z.forEach(function(oe,vA){if(oe.length==0)ee.add(vA)});var $A=[];WA.forEach(function(oe,vA){if(ee.has(vA)){var Pe=!1,MA=!0,ke=!1,We=void 0;try{for(var se=oe[Symbol.iterator](),Te;!(MA=(Te=se.next()).done);MA=!0){var je=Te.value;if(AA.has(je))Pe=!0}}catch(Ne){ke=!0,We=Ne}finally{try{if(!MA&&se.return)se.return()}finally{if(ke)throw We}}if(!Pe){var xe=!1,yA=void 0;if($A.forEach(function(Ne,He){if(Ne.has([].concat(o(oe))[0]))xe=!0,yA=He}),!xe)$A.push(new Set(oe));else oe.forEach(function(Ne){$A[yA].add(Ne)})}}}),$A.forEach(function(oe,vA){var{POSITIVE_INFINITY:Pe,POSITIVE_INFINITY:MA,NEGATIVE_INFINITY:ke,NEGATIVE_INFINITY:We}=Number,se=!0,Te=!1,je=void 0;try{for(var xe=oe[Symbol.iterator](),yA;!(se=(yA=xe.next()).done);se=!0){var Ne=yA.value,He=void 0;if(pA=="horizontal")He=h.has(Ne)?Q[h.get(Ne)]:DA.get(Ne);else He=h.has(Ne)?p[h.get(Ne)]:DA.get(Ne);var de=zA.get(Ne);if(He<Pe)Pe=He;if(He>ke)ke=He;if(de<MA)MA=de;if(de>We)We=de}}catch(lr){Te=!0,je=lr}finally{try{if(!se&&xe.return)xe.return()}finally{if(Te)throw je}}var NA=(Pe+ke)/2-(MA+We)/2,ce=!0,me=!1,Le=void 0;try{for(var Lt=oe[Symbol.iterator](),tt;!(ce=(tt=Lt.next()).done);ce=!0){var Ht=tt.value;zA.set(Ht,zA.get(Ht)+NA)}}catch(lr){me=!0,Le=lr}finally{try{if(!ce&&Lt.return)Lt.return()}finally{if(me)throw Le}}})}return zA},S=function(Z){var pA=0,AA=0,DA=0,rA=0;if(Z.forEach(function(WA){if(WA.left)Q[h.get(WA.left)]-Q[h.get(WA.right)]>=0?pA++:AA++;else p[h.get(WA.top)]-p[h.get(WA.bottom)]>=0?DA++:rA++}),pA>AA&&DA>rA)for(var KA=0;KA<h.size;KA++)Q[KA]=-1*Q[KA],p[KA]=-1*p[KA];else if(pA>AA)for(var _A=0;_A<h.size;_A++)Q[_A]=-1*Q[_A];else if(DA>rA)for(var zA=0;zA<h.size;zA++)p[zA]=-1*p[zA]},x=function(Z){var pA=[],AA=new l,DA=new Set,rA=0;return Z.forEach(function(KA,_A){if(!DA.has(_A)){pA[rA]=[];var zA=_A;AA.push(zA),DA.add(zA),pA[rA].push(zA);while(AA.length!=0){zA=AA.shift();var WA=Z.get(zA);WA.forEach(function(te){if(!DA.has(te.id))AA.push(te.id),DA.add(te.id),pA[rA].push(te.id)})}rA++}}),pA},k=function(Z){var pA=new Map;return Z.forEach(function(AA,DA){pA.set(DA,[])}),Z.forEach(function(AA,DA){AA.forEach(function(rA){pA.get(DA).push(rA),pA.get(rA.id).push({id:DA,gap:rA.gap,direction:rA.direction})})}),pA},T=function(Z){var pA=new Map;return Z.forEach(function(AA,DA){pA.set(DA,[])}),Z.forEach(function(AA,DA){AA.forEach(function(rA){pA.get(rA.id).push({id:DA,gap:rA.gap,direction:rA.direction})})}),pA},R=[],L=[],M=!1,U=!1,Y=new Set,H=new Map,J=new Map,K=[];if(d.fixedNodeConstraint)d.fixedNodeConstraint.forEach(function(W){Y.add(W.nodeId)});if(d.relativePlacementConstraint)d.relativePlacementConstraint.forEach(function(W){if(W.left){if(H.has(W.left))H.get(W.left).push({id:W.right,gap:W.gap,direction:"horizontal"});else H.set(W.left,[{id:W.right,gap:W.gap,direction:"horizontal"}]);if(!H.has(W.right))H.set(W.right,[])}else{if(H.has(W.top))H.get(W.top).push({id:W.bottom,gap:W.gap,direction:"vertical"});else H.set(W.top,[{id:W.bottom,gap:W.gap,direction:"vertical"}]);if(!H.has(W.bottom))H.set(W.bottom,[])}}),J=k(H),K=x(J);if(s.TRANSFORM_ON_CONSTRAINT_HANDLING){if(d.fixedNodeConstraint&&d.fixedNodeConstraint.length>1)d.fixedNodeConstraint.forEach(function(W,Z){R[Z]=[W.position.x,W.position.y],L[Z]=[Q[h.get(W.nodeId)],p[h.get(W.nodeId)]]}),M=!0;else if(d.alignmentConstraint)(function(){var W=0;if(d.alignmentConstraint.vertical){var Z=d.alignmentConstraint.vertical,pA=function(zA){var WA=new Set;Z[zA].forEach(function(ee){WA.add(ee)});var te=new Set([].concat(o(WA)).filter(function(ee){return Y.has(ee)})),ZA=void 0;if(te.size>0)ZA=Q[h.get(te.values().next().value)];else ZA=F(WA).x;Z[zA].forEach(function(ee){R[W]=[ZA,p[h.get(ee)]],L[W]=[Q[h.get(ee)],p[h.get(ee)]],W++})};for(var AA=0;AA<Z.length;AA++)pA(AA);M=!0}if(d.alignmentConstraint.horizontal){var DA=d.alignmentConstraint.horizontal,rA=function(zA){var WA=new Set;DA[zA].forEach(function(ee){WA.add(ee)});var te=new Set([].concat(o(WA)).filter(function(ee){return Y.has(ee)})),ZA=void 0;if(te.size>0)ZA=Q[h.get(te.values().next().value)];else ZA=F(WA).y;DA[zA].forEach(function(ee){R[W]=[Q[h.get(ee)],ZA],L[W]=[Q[h.get(ee)],p[h.get(ee)]],W++})};for(var KA=0;KA<DA.length;KA++)rA(KA);M=!0}if(d.relativePlacementConstraint)U=!0})();else if(d.relativePlacementConstraint){var O=0,_=0;for(var z=0;z<K.length;z++)if(K[z].length>O)O=K[z].length,_=z;if(O<J.size/2)S(d.relativePlacementConstraint),M=!1,U=!1;else{var j=new Map,q=new Map,CA=[];K[_].forEach(function(W){H.get(W).forEach(function(Z){if(Z.direction=="horizontal"){if(j.has(W))j.get(W).push(Z);else j.set(W,[Z]);if(!j.has(Z.id))j.set(Z.id,[]);CA.push({left:W,right:Z.id})}else{if(q.has(W))q.get(W).push(Z);else q.set(W,[Z]);if(!q.has(Z.id))q.set(Z.id,[]);CA.push({top:W,bottom:Z.id})}})}),S(CA),U=!1;var tA=v(j,"horizontal"),lA=v(q,"vertical");K[_].forEach(function(W,Z){if(L[Z]=[Q[h.get(W)],p[h.get(W)]],R[Z]=[],tA.has(W))R[Z][0]=tA.get(W);else R[Z][0]=Q[h.get(W)];if(lA.has(W))R[Z][1]=lA.get(W);else R[Z][1]=p[h.get(W)]}),M=!0}}if(M){var gA=void 0,aA=g.transpose(R),RA=g.transpose(L);for(var wA=0;wA<aA.length;wA++)aA[wA]=g.multGamma(aA[wA]),RA[wA]=g.multGamma(RA[wA]);var JA=g.multMat(aA,g.transpose(RA)),TA=C.svd(JA);gA=g.multMat(TA.V,g.transpose(TA.U));for(var qA=0;qA<h.size;qA++){var BA=[Q[qA],p[qA]],bA=[gA[0][0],gA[1][0]],FA=[gA[0][1],gA[1][1]];Q[qA]=g.dotProduct(BA,bA),p[qA]=g.dotProduct(BA,FA)}if(U)S(d.relativePlacementConstraint)}}if(s.ENFORCE_CONSTRAINTS){if(d.fixedNodeConstraint&&d.fixedNodeConstraint.length>0){var IA={x:0,y:0};d.fixedNodeConstraint.forEach(function(W,Z){var pA={x:Q[h.get(W.nodeId)],y:p[h.get(W.nodeId)]},AA=W.position,DA=b(AA,pA);IA.x+=DA.x,IA.y+=DA.y}),IA.x/=d.fixedNodeConstraint.length,IA.y/=d.fixedNodeConstraint.length,Q.forEach(function(W,Z){Q[Z]+=IA.x}),p.forEach(function(W,Z){p[Z]+=IA.y}),d.fixedNodeConstraint.forEach(function(W){Q[h.get(W.nodeId)]=W.position.x,p[h.get(W.nodeId)]=W.position.y})}if(d.alignmentConstraint){if(d.alignmentConstraint.vertical){var nA=d.alignmentConstraint.vertical,eA=function(Z){var pA=new Set;nA[Z].forEach(function(rA){pA.add(rA)});var AA=new Set([].concat(o(pA)).filter(function(rA){return Y.has(rA)})),DA=void 0;if(AA.size>0)DA=Q[h.get(AA.values().next().value)];else DA=F(pA).x;pA.forEach(function(rA){if(!Y.has(rA))Q[h.get(rA)]=DA})};for(var EA=0;EA<nA.length;EA++)eA(EA)}if(d.alignmentConstraint.horizontal){var mA=d.alignmentConstraint.horizontal,kA=function(Z){var pA=new Set;mA[Z].forEach(function(rA){pA.add(rA)});var AA=new Set([].concat(o(pA)).filter(function(rA){return Y.has(rA)})),DA=void 0;if(AA.size>0)DA=p[h.get(AA.values().next().value)];else DA=F(pA).y;pA.forEach(function(rA){if(!Y.has(rA))p[h.get(rA)]=DA})};for(var SA=0;SA<mA.length;SA++)kA(SA)}}if(d.relativePlacementConstraint)(function(){var W=new Map,Z=new Map,pA=new Map,AA=new Map,DA=new Map,rA=new Map,KA=new Set,_A=new Set;if(Y.forEach(function(fr){KA.add(fr),_A.add(fr)}),d.alignmentConstraint){if(d.alignmentConstraint.vertical){var zA=d.alignmentConstraint.vertical,WA=function(At){pA.set("dummy"+At,[]),zA[At].forEach(function(Ye){if(W.set(Ye,"dummy"+At),pA.get("dummy"+At).push(Ye),Y.has(Ye))KA.add("dummy"+At)}),DA.set("dummy"+At,Q[h.get(zA[At][0])])};for(var te=0;te<zA.length;te++)WA(te)}if(d.alignmentConstraint.horizontal){var ZA=d.alignmentConstraint.horizontal,ee=function(At){AA.set("dummy"+At,[]),ZA[At].forEach(function(Ye){if(Z.set(Ye,"dummy"+At),AA.get("dummy"+At).push(Ye),Y.has(Ye))_A.add("dummy"+At)}),rA.set("dummy"+At,p[h.get(ZA[At][0])])};for(var $A=0;$A<ZA.length;$A++)ee($A)}}var oe=new Map,vA=new Map,Pe=function(At){H.get(At).forEach(function(Ye){var Bt=void 0,nt=void 0;if(Ye.direction=="horizontal"){if(Bt=W.get(At)?W.get(At):At,W.get(Ye.id))nt={id:W.get(Ye.id),gap:Ye.gap,direction:Ye.direction};else nt=Ye;if(oe.has(Bt))oe.get(Bt).push(nt);else oe.set(Bt,[nt]);if(!oe.has(nt.id))oe.set(nt.id,[])}else{if(Bt=Z.get(At)?Z.get(At):At,Z.get(Ye.id))nt={id:Z.get(Ye.id),gap:Ye.gap,direction:Ye.direction};else nt=Ye;if(vA.has(Bt))vA.get(Bt).push(nt);else vA.set(Bt,[nt]);if(!vA.has(nt.id))vA.set(nt.id,[])}})},MA=!0,ke=!1,We=void 0;try{for(var se=H.keys()[Symbol.iterator](),Te;!(MA=(Te=se.next()).done);MA=!0){var je=Te.value;Pe(je)}}catch(fr){ke=!0,We=fr}finally{try{if(!MA&&se.return)se.return()}finally{if(ke)throw We}}var xe=k(oe),yA=k(vA),Ne=x(xe),He=x(yA),de=T(oe),NA=T(vA),ce=[],me=[];Ne.forEach(function(fr,At){ce[At]=[],fr.forEach(function(Ye){if(de.get(Ye).length==0)ce[At].push(Ye)})}),He.forEach(function(fr,At){me[At]=[],fr.forEach(function(Ye){if(NA.get(Ye).length==0)me[At].push(Ye)})});var Le=v(oe,"horizontal",KA,DA,ce),Lt=v(vA,"vertical",_A,rA,me),tt=function(At){if(pA.get(At))pA.get(At).forEach(function(Ye){Q[h.get(Ye)]=Le.get(At)});else Q[h.get(At)]=Le.get(At)},Ht=!0,lr=!1,It=void 0;try{for(var Ct=Le.keys()[Symbol.iterator](),Kt;!(Ht=(Kt=Ct.next()).done);Ht=!0){var Ce=Kt.value;tt(Ce)}}catch(fr){lr=!0,It=fr}finally{try{if(!Ht&&Ct.return)Ct.return()}finally{if(lr)throw It}}var De=function(At){if(AA.get(At))AA.get(At).forEach(function(Ye){p[h.get(Ye)]=Lt.get(At)});else p[h.get(At)]=Lt.get(At)},Ve=!0,Vt=!1,jt=void 0;try{for(var Or=Lt.keys()[Symbol.iterator](),bi;!(Ve=(bi=Or.next()).done);Ve=!0){var Ce=bi.value;De(Ce)}}catch(fr){Vt=!0,jt=fr}finally{try{if(!Ve&&Or.return)Or.return()}finally{if(Vt)throw jt}}})()}for(var YA=0;YA<m.length;YA++){var dA=m[YA];if(dA.getChild()==null)dA.setCenter(Q[h.get(dA.id)],p[h.get(dA.id)])}},u.exports=B},551:(u)=>{u.exports=A}},t={};function r(u){var a=t[u];if(a!==void 0)return a.exports;var n=t[u]={exports:{}};return e[u](n,n.exports,r),n.exports}var i=r(45);return i})()})});var zne=wu(function(v7,LBA){(function(e,t){if(typeof v7==="object"&&typeof LBA==="object")LBA.exports=t(SBA());else if(typeof define==="function"&&define.amd)define(["cose-base"],t);else if(typeof v7==="object")v7.cytoscapeFcose=t(SBA());else e.cytoscapeFcose=t(e.coseBase)})(v7,function(A){return(()=>{var e={658:(u)=>{u.exports=Object.assign!=null?Object.assign.bind(Object):function(a){for(var n=arguments.length,o=Array(n>1?n-1:0),s=1;s<n;s++)o[s-1]=arguments[s];return o.forEach(function(l){Object.keys(l).forEach(function(g){return a[g]=l[g]})}),a}},548:(u,a,n)=>{var o=function(){function g(C,B){var E=[],d=!0,I=!1,h=void 0;try{for(var Q=C[Symbol.iterator](),p;!(d=(p=Q.next()).done);d=!0)if(E.push(p.value),B&&E.length===B)break}catch(m){I=!0,h=m}finally{try{if(!d&&Q.return)Q.return()}finally{if(I)throw h}}return E}return function(C,B){if(Array.isArray(C))return C;else if(Symbol.iterator in Object(C))return g(C,B);else throw TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=n(140).layoutBase.LinkedList,l={};l.getTopMostNodes=function(g){var C={};for(var B=0;B<g.length;B++)C[g[B].id()]=!0;var E=g.filter(function(d,I){if(typeof d==="number")d=I;var h=d.parent()[0];while(h!=null){if(C[h.id()])return!1;h=h.parent()[0]}return!0});return E},l.connectComponents=function(g,C,B,E){var d=new s,I=new Set,h=[],Q=void 0,p=void 0,m=void 0,f=!1,D=1,w=[],b=[],F=function(){var S=g.collection();b.push(S);var x=B[0],k=g.collection();k.merge(x).merge(x.descendants().intersection(C)),h.push(x),k.forEach(function(L){d.push(L),I.add(L),S.merge(L)});var T=function(){x=d.shift();var M=g.collection();x.neighborhood().nodes().forEach(function(J){if(C.intersection(x.edgesWith(J)).length>0)M.merge(J)});for(var U=0;U<M.length;U++){var Y=M[U];if(Q=B.intersection(Y.union(Y.ancestors())),Q!=null&&!I.has(Q[0])){var H=Q.union(Q.descendants());H.forEach(function(J){if(d.push(J),I.add(J),S.merge(J),B.has(J))h.push(J)})}}};while(d.length!=0)T();if(S.forEach(function(L){C.intersection(L.connectedEdges()).forEach(function(M){if(S.has(M.source())&&S.has(M.target()))S.merge(M)})}),h.length==B.length)f=!0;if(!f||f&&D>1){p=h[0],m=p.connectedEdges().length,h.forEach(function(L){if(L.connectedEdges().length<m)m=L.connectedEdges().length,p=L}),w.push(p.id());var R=g.collection();R.merge(h[0]),h.forEach(function(L){R.merge(L)}),h=[],B=B.difference(R),D++}};do F();while(!f);if(E){if(w.length>0)E.set("dummy"+(E.size+1),w)}return b},l.relocateComponent=function(g,C,B){if(!B.fixedNodeConstraint){var{POSITIVE_INFINITY:E,NEGATIVE_INFINITY:d,POSITIVE_INFINITY:I,NEGATIVE_INFINITY:h}=Number;if(B.quality=="draft"){var Q=!0,p=!1,m=void 0;try{for(var f=C.nodeIndexes[Symbol.iterator](),D;!(Q=(D=f.next()).done);Q=!0){var w=D.value,b=o(w,2),F=b[0],v=b[1],S=B.cy.getElementById(F);if(S){var x=S.boundingBox(),k=C.xCoords[v]-x.w/2,T=C.xCoords[v]+x.w/2,R=C.yCoords[v]-x.h/2,L=C.yCoords[v]+x.h/2;if(k<E)E=k;if(T>d)d=T;if(R<I)I=R;if(L>h)h=L}}}catch(J){p=!0,m=J}finally{try{if(!Q&&f.return)f.return()}finally{if(p)throw m}}var M=g.x-(d+E)/2,U=g.y-(h+I)/2;C.xCoords=C.xCoords.map(function(J){return J+M}),C.yCoords=C.yCoords.map(function(J){return J+U})}else{Object.keys(C).forEach(function(J){var K=C[J],O=K.getRect().x,_=K.getRect().x+K.getRect().width,z=K.getRect().y,j=K.getRect().y+K.getRect().height;if(O<E)E=O;if(_>d)d=_;if(z<I)I=z;if(j>h)h=j});var Y=g.x-(d+E)/2,H=g.y-(h+I)/2;Object.keys(C).forEach(function(J){var K=C[J];K.setCenter(K.getCenterX()+Y,K.getCenterY()+H)})}}},l.calcBoundingBox=function(g,C,B,E){var{MAX_SAFE_INTEGER:d,MIN_SAFE_INTEGER:I,MAX_SAFE_INTEGER:h,MIN_SAFE_INTEGER:Q}=Number,p=void 0,m=void 0,f=void 0,D=void 0,w=g.descendants().not(":parent"),b=w.length;for(var F=0;F<b;F++){var v=w[F];if(p=C[E.get(v.id())]-v.width()/2,m=C[E.get(v.id())]+v.width()/2,f=B[E.get(v.id())]-v.height()/2,D=B[E.get(v.id())]+v.height()/2,d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var S={};return S.topLeftX=d,S.topLeftY=h,S.width=I-d,S.height=Q-h,S},l.calcParentsWithoutChildren=function(g,C){var B=g.collection();return C.nodes(":parent").forEach(function(E){var d=!1;if(E.children().forEach(function(I){if(I.css("display")!="none")d=!0}),!d)B.merge(E)}),B},u.exports=l},816:(u,a,n)=>{var o=n(548),s=n(140).CoSELayout,l=n(140).CoSENode,g=n(140).layoutBase.PointD,C=n(140).layoutBase.DimensionD,B=n(140).layoutBase.LayoutConstants,E=n(140).layoutBase.FDLayoutConstants,d=n(140).CoSEConstants,I=function(Q,p){var{cy:m,eles:f}=Q,D=f.nodes(),w=f.edges(),b=void 0,F=void 0,v=void 0,S={};if(Q.randomize)b=p.nodeIndexes,F=p.xCoords,v=p.yCoords;var x=function(J){return typeof J==="function"},k=function(J,K){if(x(J))return J(K);else return J},T=o.calcParentsWithoutChildren(m,f),R=function H(J,K,O,_){var z=K.length;for(var j=0;j<z;j++){var q=K[j],CA=null;if(q.intersection(T).length==0)CA=q.children();var tA=void 0,lA=q.layoutDimensions({nodeDimensionsIncludeLabels:_.nodeDimensionsIncludeLabels});if(q.outerWidth()!=null&&q.outerHeight()!=null)if(_.randomize)if(!q.isParent())tA=J.add(new l(O.graphManager,new g(F[b.get(q.id())]-lA.w/2,v[b.get(q.id())]-lA.h/2),new C(parseFloat(lA.w),parseFloat(lA.h))));else{var gA=o.calcBoundingBox(q,F,v,b);if(q.intersection(T).length==0)tA=J.add(new l(O.graphManager,new g(gA.topLeftX,gA.topLeftY),new C(gA.width,gA.height)));else tA=J.add(new l(O.graphManager,new g(gA.topLeftX,gA.topLeftY),new C(parseFloat(lA.w),parseFloat(lA.h))))}else tA=J.add(new l(O.graphManager,new g(q.position("x")-lA.w/2,q.position("y")-lA.h/2),new C(parseFloat(lA.w),parseFloat(lA.h))));else tA=J.add(new l(this.graphManager));if(tA.id=q.data("id"),tA.nodeRepulsion=k(_.nodeRepulsion,q),tA.paddingLeft=parseInt(q.css("padding")),tA.paddingTop=parseInt(q.css("padding")),tA.paddingRight=parseInt(q.css("padding")),tA.paddingBottom=parseInt(q.css("padding")),_.nodeDimensionsIncludeLabels)tA.labelWidth=q.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).w,tA.labelHeight=q.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).h,tA.labelPosVertical=q.css("text-valign"),tA.labelPosHorizontal=q.css("text-halign");if(S[q.data("id")]=tA,isNaN(tA.rect.x))tA.rect.x=0;if(isNaN(tA.rect.y))tA.rect.y=0;if(CA!=null&&CA.length>0){var aA=void 0;aA=O.getGraphManager().add(O.newGraph(),tA),H(aA,CA,O,_)}}},L=function(J,K,O){var _=0,z=0;for(var j=0;j<O.length;j++){var q=O[j],CA=S[q.data("source")],tA=S[q.data("target")];if(CA&&tA&&CA!==tA&&CA.getEdgesBetween(tA).length==0){var lA=K.add(J.newEdge(),CA,tA);lA.id=q.id(),lA.idealLength=k(Q.idealEdgeLength,q),lA.edgeElasticity=k(Q.edgeElasticity,q),_+=lA.idealLength,z++}}if(Q.idealEdgeLength!=null){if(z>0)d.DEFAULT_EDGE_LENGTH=E.DEFAULT_EDGE_LENGTH=_/z;else if(!x(Q.idealEdgeLength))d.DEFAULT_EDGE_LENGTH=E.DEFAULT_EDGE_LENGTH=Q.idealEdgeLength;else d.DEFAULT_EDGE_LENGTH=E.DEFAULT_EDGE_LENGTH=50;d.MIN_REPULSION_DIST=E.MIN_REPULSION_DIST=E.DEFAULT_EDGE_LENGTH/10,d.DEFAULT_RADIAL_SEPARATION=E.DEFAULT_EDGE_LENGTH}},M=function(J,K){if(K.fixedNodeConstraint)J.constraints.fixedNodeConstraint=K.fixedNodeConstraint;if(K.alignmentConstraint)J.constraints.alignmentConstraint=K.alignmentConstraint;if(K.relativePlacementConstraint)J.constraints.relativePlacementConstraint=K.relativePlacementConstraint};if(Q.nestingFactor!=null)d.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=E.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=Q.nestingFactor;if(Q.gravity!=null)d.DEFAULT_GRAVITY_STRENGTH=E.DEFAULT_GRAVITY_STRENGTH=Q.gravity;if(Q.numIter!=null)d.MAX_ITERATIONS=E.MAX_ITERATIONS=Q.numIter;if(Q.gravityRange!=null)d.DEFAULT_GRAVITY_RANGE_FACTOR=E.DEFAULT_GRAVITY_RANGE_FACTOR=Q.gravityRange;if(Q.gravityCompound!=null)d.DEFAULT_COMPOUND_GRAVITY_STRENGTH=E.DEFAULT_COMPOUND_GRAVITY_STRENGTH=Q.gravityCompound;if(Q.gravityRangeCompound!=null)d.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=E.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=Q.gravityRangeCompound;if(Q.initialEnergyOnIncremental!=null)d.DEFAULT_COOLING_FACTOR_INCREMENTAL=E.DEFAULT_COOLING_FACTOR_INCREMENTAL=Q.initialEnergyOnIncremental;if(Q.tilingCompareBy!=null)d.TILING_COMPARE_BY=Q.tilingCompareBy;if(Q.quality=="proof")B.QUALITY=2;else B.QUALITY=0;if(d.NODE_DIMENSIONS_INCLUDE_LABELS=E.NODE_DIMENSIONS_INCLUDE_LABELS=B.NODE_DIMENSIONS_INCLUDE_LABELS=Q.nodeDimensionsIncludeLabels,d.DEFAULT_INCREMENTAL=E.DEFAULT_INCREMENTAL=B.DEFAULT_INCREMENTAL=!Q.randomize,d.ANIMATE=E.ANIMATE=B.ANIMATE=Q.animate,d.TILE=Q.tile,d.TILING_PADDING_VERTICAL=typeof Q.tilingPaddingVertical==="function"?Q.tilingPaddingVertical.call():Q.tilingPaddingVertical,d.TILING_PADDING_HORIZONTAL=typeof Q.tilingPaddingHorizontal==="function"?Q.tilingPaddingHorizontal.call():Q.tilingPaddingHorizontal,d.DEFAULT_INCREMENTAL=E.DEFAULT_INCREMENTAL=B.DEFAULT_INCREMENTAL=!0,d.PURE_INCREMENTAL=!Q.randomize,B.DEFAULT_UNIFORM_LEAF_NODE_SIZES=Q.uniformNodeDimensions,Q.step=="transformed")d.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,d.ENFORCE_CONSTRAINTS=!1,d.APPLY_LAYOUT=!1;if(Q.step=="enforced")d.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,d.ENFORCE_CONSTRAINTS=!0,d.APPLY_LAYOUT=!1;if(Q.step=="cose")d.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,d.ENFORCE_CONSTRAINTS=!1,d.APPLY_LAYOUT=!0;if(Q.step=="all"){if(Q.randomize)d.TRANSFORM_ON_CONSTRAINT_HANDLING=!0;else d.TRANSFORM_ON_CONSTRAINT_HANDLING=!1;d.ENFORCE_CONSTRAINTS=!0,d.APPLY_LAYOUT=!0}if(Q.fixedNodeConstraint||Q.alignmentConstraint||Q.relativePlacementConstraint)d.TREE_REDUCTION_ON_INCREMENTAL=!1;else d.TREE_REDUCTION_ON_INCREMENTAL=!0;var U=new s,Y=U.newGraphManager();return R(Y.addRoot(),o.getTopMostNodes(D),U,Q),L(U,Y,w),M(U,Q),U.runLayout(),S};u.exports={coseLayout:I}},212:(u,a,n)=>{var o=function(){function Q(p,m){for(var f=0;f<m.length;f++){var D=m[f];if(D.enumerable=D.enumerable||!1,D.configurable=!0,"value"in D)D.writable=!0;Object.defineProperty(p,D.key,D)}}return function(p,m,f){if(m)Q(p.prototype,m);if(f)Q(p,f);return p}}();function s(Q,p){if(!(Q instanceof p))throw TypeError("Cannot call a class as a function")}var l=n(658),g=n(548),C=n(657),B=C.spectralLayout,E=n(816),d=E.coseLayout,I=Object.freeze({quality:"default",randomize:!0,animate:!0,animationDuration:1000,animationEasing:void 0,fit:!0,padding:30,nodeDimensionsIncludeLabels:!1,uniformNodeDimensions:!1,packComponents:!0,step:"all",samplingType:!0,sampleSize:25,nodeSeparation:75,piTol:0.0000001,nodeRepulsion:function(p){return 4500},idealEdgeLength:function(p){return 50},edgeElasticity:function(p){return 0.45},nestingFactor:0.1,gravity:0.25,numIter:2500,tile:!0,tilingCompareBy:void 0,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:0.3,fixedNodeConstraint:void 0,alignmentConstraint:void 0,relativePlacementConstraint:void 0,ready:function(){},stop:function(){}}),h=function(){function Q(p){s(this,Q),this.options=l({},I,p)}return o(Q,[{key:"run",value:function(){var m=this,f=this.options,{cy:D,eles:w}=f,b=[],F=void 0,v=void 0,S=[],x=void 0,k=[];if(f.fixedNodeConstraint&&(!Array.isArray(f.fixedNodeConstraint)||f.fixedNodeConstraint.length==0))f.fixedNodeConstraint=void 0;if(f.alignmentConstraint){if(f.alignmentConstraint.vertical&&(!Array.isArray(f.alignmentConstraint.vertical)||f.alignmentConstraint.vertical.length==0))f.alignmentConstraint.vertical=void 0;if(f.alignmentConstraint.horizontal&&(!Array.isArray(f.alignmentConstraint.horizontal)||f.alignmentConstraint.horizontal.length==0))f.alignmentConstraint.horizontal=void 0}if(f.relativePlacementConstraint&&(!Array.isArray(f.relativePlacementConstraint)||f.relativePlacementConstraint.length==0))f.relativePlacementConstraint=void 0;var T=f.fixedNodeConstraint||f.alignmentConstraint||f.relativePlacementConstraint;if(T)f.tile=!1,f.packComponents=!1;var R=void 0,L=!1;if(D.layoutUtilities&&f.packComponents){if(R=D.layoutUtilities("get"),!R)R=D.layoutUtilities();L=!0}if(w.nodes().length>0)if(!L){var M=f.eles.boundingBox();if(k.push({x:M.x1+M.w/2,y:M.y1+M.h/2}),f.randomize){var U=B(f);b.push(U)}if(f.quality=="default"||f.quality=="proof")S.push(d(f,b[0])),g.relocateComponent(k[0],S[0],f);else g.relocateComponent(k[0],b[0],f)}else{var Y=g.getTopMostNodes(f.eles.nodes());if(x=g.connectComponents(D,f.eles,Y),x.forEach(function(qA){var BA=qA.boundingBox();k.push({x:BA.x1+BA.w/2,y:BA.y1+BA.h/2})}),f.randomize)x.forEach(function(qA){f.eles=qA,b.push(B(f))});if(f.quality=="default"||f.quality=="proof"){var H=D.collection();if(f.tile){var J=new Map,K=[],O=[],_=0,z={nodeIndexes:J,xCoords:K,yCoords:O},j=[];if(x.forEach(function(qA,BA){if(qA.edges().length==0)qA.nodes().forEach(function(bA,FA){if(H.merge(qA.nodes()[FA]),!bA.isParent())z.nodeIndexes.set(qA.nodes()[FA].id(),_++),z.xCoords.push(qA.nodes()[0].position().x),z.yCoords.push(qA.nodes()[0].position().y)}),j.push(BA)}),H.length>1){var q=H.boundingBox();k.push({x:q.x1+q.w/2,y:q.y1+q.h/2}),x.push(H),b.push(z);for(var CA=j.length-1;CA>=0;CA--)x.splice(j[CA],1),b.splice(j[CA],1),k.splice(j[CA],1)}}x.forEach(function(qA,BA){f.eles=qA,S.push(d(f,b[BA])),g.relocateComponent(k[BA],S[BA],f)})}else x.forEach(function(qA,BA){g.relocateComponent(k[BA],b[BA],f)});var tA=new Set;if(x.length>1){var lA=[],gA=w.filter(function(qA){return qA.css("display")=="none"});x.forEach(function(qA,BA){var bA=void 0;if(f.quality=="draft")bA=b[BA].nodeIndexes;if(qA.nodes().not(gA).length>0){var FA={};FA.edges=[],FA.nodes=[];var IA=void 0;if(qA.nodes().not(gA).forEach(function(nA){if(f.quality=="draft")if(!nA.isParent())IA=bA.get(nA.id()),FA.nodes.push({x:b[BA].xCoords[IA]-nA.boundingbox().w/2,y:b[BA].yCoords[IA]-nA.boundingbox().h/2,width:nA.boundingbox().w,height:nA.boundingbox().h});else{var eA=g.calcBoundingBox(nA,b[BA].xCoords,b[BA].yCoords,bA);FA.nodes.push({x:eA.topLeftX,y:eA.topLeftY,width:eA.width,height:eA.height})}else if(S[BA][nA.id()])FA.nodes.push({x:S[BA][nA.id()].getLeft(),y:S[BA][nA.id()].getTop(),width:S[BA][nA.id()].getWidth(),height:S[BA][nA.id()].getHeight()})}),qA.edges().forEach(function(nA){var eA=nA.source(),EA=nA.target();if(eA.css("display")!="none"&&EA.css("display")!="none"){if(f.quality=="draft"){var mA=bA.get(eA.id()),kA=bA.get(EA.id()),SA=[],YA=[];if(eA.isParent()){var dA=g.calcBoundingBox(eA,b[BA].xCoords,b[BA].yCoords,bA);SA.push(dA.topLeftX+dA.width/2),SA.push(dA.topLeftY+dA.height/2)}else SA.push(b[BA].xCoords[mA]),SA.push(b[BA].yCoords[mA]);if(EA.isParent()){var W=g.calcBoundingBox(EA,b[BA].xCoords,b[BA].yCoords,bA);YA.push(W.topLeftX+W.width/2),YA.push(W.topLeftY+W.height/2)}else YA.push(b[BA].xCoords[kA]),YA.push(b[BA].yCoords[kA]);FA.edges.push({startX:SA[0],startY:SA[1],endX:YA[0],endY:YA[1]})}else if(S[BA][eA.id()]&&S[BA][EA.id()])FA.edges.push({startX:S[BA][eA.id()].getCenterX(),startY:S[BA][eA.id()].getCenterY(),endX:S[BA][EA.id()].getCenterX(),endY:S[BA][EA.id()].getCenterY()})}}),FA.nodes.length>0)lA.push(FA),tA.add(BA)}});var aA=R.packComponents(lA,f.randomize).shifts;if(f.quality=="draft")b.forEach(function(qA,BA){var bA=qA.xCoords.map(function(IA){return IA+aA[BA].dx}),FA=qA.yCoords.map(function(IA){return IA+aA[BA].dy});qA.xCoords=bA,qA.yCoords=FA});else{var RA=0;tA.forEach(function(qA){Object.keys(S[qA]).forEach(function(BA){var bA=S[qA][BA];bA.setCenter(bA.getCenterX()+aA[RA].dx,bA.getCenterY()+aA[RA].dy)}),RA++})}}}var wA=function(BA,bA){if(f.quality=="default"||f.quality=="proof"){if(typeof BA==="number")BA=bA;var FA=void 0,IA=void 0,nA=BA.data("id");if(S.forEach(function(EA){if(nA in EA)FA={x:EA[nA].getRect().getCenterX(),y:EA[nA].getRect().getCenterY()},IA=EA[nA]}),f.nodeDimensionsIncludeLabels){if(IA.labelWidth){if(IA.labelPosHorizontal=="left")FA.x+=IA.labelWidth/2;else if(IA.labelPosHorizontal=="right")FA.x-=IA.labelWidth/2}if(IA.labelHeight){if(IA.labelPosVertical=="top")FA.y+=IA.labelHeight/2;else if(IA.labelPosVertical=="bottom")FA.y-=IA.labelHeight/2}}if(FA==null)FA={x:BA.position("x"),y:BA.position("y")};return{x:FA.x,y:FA.y}}else{var eA=void 0;if(b.forEach(function(EA){var mA=EA.nodeIndexes.get(BA.id());if(mA!=null)eA={x:EA.xCoords[mA],y:EA.yCoords[mA]}}),eA==null)eA={x:BA.position("x"),y:BA.position("y")};return{x:eA.x,y:eA.y}}};if(f.quality=="default"||f.quality=="proof"||f.randomize){var JA=g.calcParentsWithoutChildren(D,w),TA=w.filter(function(qA){return qA.css("display")=="none"});if(f.eles=w.not(TA),w.nodes().not(":parent").not(TA).layoutPositions(m,f,wA),JA.length>0)JA.forEach(function(qA){qA.position(wA(qA))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")}}]),Q}();u.exports=h},657:(u,a,n)=>{var o=n(548),s=n(140).layoutBase.Matrix,l=n(140).layoutBase.SVD,g=function(B){var{cy:E,eles:d}=B,I=d.nodes(),h=d.nodes(":parent"),Q=new Map,p=new Map,m=new Map,f=[],D=[],w=[],b=[],F=[],v=[],S=[],x=[],k=void 0,T=void 0,R=1e8,L=0.000000001,{piTol:M,samplingType:U,nodeSeparation:Y}=B,H=void 0,J=function(){var pA=0,AA=0,DA=!1;while(AA<H){pA=Math.floor(Math.random()*T),DA=!1;for(var rA=0;rA<AA;rA++)if(b[rA]==pA){DA=!0;break}if(!DA)b[AA]=pA,AA++;else continue}},K=function(pA,AA,DA){var rA=[],KA=0,_A=0,zA=0,WA=void 0,te=[],ZA=0,ee=1;for(var $A=0;$A<T;$A++)te[$A]=R;rA[_A]=pA,te[pA]=0;while(_A>=KA){zA=rA[KA++];var oe=f[zA];for(var vA=0;vA<oe.length;vA++)if(WA=p.get(oe[vA]),te[WA]==R)te[WA]=te[zA]+1,rA[++_A]=WA;v[zA][AA]=te[zA]*Y}if(DA){for(var Pe=0;Pe<T;Pe++)if(v[Pe][AA]<F[Pe])F[Pe]=v[Pe][AA];for(var MA=0;MA<T;MA++)if(F[MA]>ZA)ZA=F[MA],ee=MA}return ee},O=function(pA){var AA=void 0;if(!pA){J();for(var DA=0;DA<H;DA++)K(b[DA],DA,pA,!1)}else{AA=Math.floor(Math.random()*T),k=AA;for(var rA=0;rA<T;rA++)F[rA]=R;for(var KA=0;KA<H;KA++)b[KA]=AA,AA=K(AA,KA,pA)}for(var _A=0;_A<T;_A++)for(var zA=0;zA<H;zA++)v[_A][zA]*=v[_A][zA];for(var WA=0;WA<H;WA++)S[WA]=[];for(var te=0;te<H;te++)for(var ZA=0;ZA<H;ZA++)S[te][ZA]=v[b[ZA]][te]},_=function(){var pA=l.svd(S),{S:AA,U:DA,V:rA}=pA,KA=AA[0]*AA[0]*AA[0],_A=[];for(var zA=0;zA<H;zA++){_A[zA]=[];for(var WA=0;WA<H;WA++)if(_A[zA][WA]=0,zA==WA)_A[zA][WA]=AA[zA]/(AA[zA]*AA[zA]+KA/(AA[zA]*AA[zA]))}x=s.multMat(s.multMat(rA,_A),s.transpose(DA))},z=function(){var pA=void 0,AA=void 0,DA=[],rA=[],KA=[],_A=[];for(var zA=0;zA<T;zA++)DA[zA]=Math.random(),rA[zA]=Math.random();DA=s.normalize(DA),rA=s.normalize(rA);var WA=0,te=L,ZA=L,ee=void 0;while(!0){WA++;for(var $A=0;$A<T;$A++)KA[$A]=DA[$A];if(DA=s.multGamma(s.multL(s.multGamma(KA),v,x)),pA=s.dotProduct(KA,DA),DA=s.normalize(DA),te=s.dotProduct(KA,DA),ee=Math.abs(te/ZA),ee<=1+M&&ee>=1)break;ZA=te}for(var oe=0;oe<T;oe++)KA[oe]=DA[oe];WA=0,ZA=L;while(!0){WA++;for(var vA=0;vA<T;vA++)_A[vA]=rA[vA];if(_A=s.minusOp(_A,s.multCons(KA,s.dotProduct(KA,_A))),rA=s.multGamma(s.multL(s.multGamma(_A),v,x)),AA=s.dotProduct(_A,rA),rA=s.normalize(rA),te=s.dotProduct(_A,rA),ee=Math.abs(te/ZA),ee<=1+M&&ee>=1)break;ZA=te}for(var Pe=0;Pe<T;Pe++)_A[Pe]=rA[Pe];D=s.multCons(KA,Math.sqrt(Math.abs(pA))),w=s.multCons(_A,Math.sqrt(Math.abs(AA)))};o.connectComponents(E,d,o.getTopMostNodes(I),Q),h.forEach(function(Z){o.connectComponents(E,d,o.getTopMostNodes(Z.descendants().intersection(d)),Q)});var j=0;for(var q=0;q<I.length;q++)if(!I[q].isParent())p.set(I[q].id(),j++);var CA=!0,tA=!1,lA=void 0;try{for(var gA=Q.keys()[Symbol.iterator](),aA;!(CA=(aA=gA.next()).done);CA=!0){var RA=aA.value;p.set(RA,j++)}}catch(Z){tA=!0,lA=Z}finally{try{if(!CA&&gA.return)gA.return()}finally{if(tA)throw lA}}for(var wA=0;wA<p.size;wA++)f[wA]=[];h.forEach(function(Z){var pA=Z.children().intersection(d);while(pA.nodes(":childless").length==0)pA=pA.nodes()[0].children().intersection(d);var AA=0,DA=pA.nodes(":childless")[0].connectedEdges().length;pA.nodes(":childless").forEach(function(rA,KA){if(rA.connectedEdges().length<DA)DA=rA.connectedEdges().length,AA=KA}),m.set(Z.id(),pA.nodes(":childless")[AA].id())}),I.forEach(function(Z){var pA=void 0;if(Z.isParent())pA=p.get(m.get(Z.id()));else pA=p.get(Z.id());Z.neighborhood().nodes().forEach(function(AA){if(d.intersection(Z.edgesWith(AA)).length>0)if(AA.isParent())f[pA].push(m.get(AA.id()));else f[pA].push(AA.id())})});var JA=function(pA){var AA=p.get(pA),DA=void 0;Q.get(pA).forEach(function(rA){if(E.getElementById(rA).isParent())DA=m.get(rA);else DA=rA;f[AA].push(DA),f[p.get(DA)].push(pA)})},TA=!0,qA=!1,BA=void 0;try{for(var bA=Q.keys()[Symbol.iterator](),FA;!(TA=(FA=bA.next()).done);TA=!0){var IA=FA.value;JA(IA)}}catch(Z){qA=!0,BA=Z}finally{try{if(!TA&&bA.return)bA.return()}finally{if(qA)throw BA}}T=p.size;var nA=void 0;if(T>2){H=T<B.sampleSize?T:B.sampleSize;for(var eA=0;eA<T;eA++)v[eA]=[];for(var EA=0;EA<H;EA++)x[EA]=[];if(B.quality=="draft"||B.step=="all")O(U),_(),z(),nA={nodeIndexes:p,xCoords:D,yCoords:w};else p.forEach(function(Z,pA){D.push(E.getElementById(pA).position("x")),w.push(E.getElementById(pA).position("y"))}),nA={nodeIndexes:p,xCoords:D,yCoords:w};return nA}else{var mA=p.keys(),kA=E.getElementById(mA.next().value),SA=kA.position(),YA=kA.outerWidth();if(D.push(SA.x),w.push(SA.y),T==2){var dA=E.getElementById(mA.next().value),W=dA.outerWidth();D.push(SA.x+YA/2+W/2+B.idealEdgeLength),w.push(SA.y)}return nA={nodeIndexes:p,xCoords:D,yCoords:w},nA}};u.exports={spectralLayout:g}},579:(u,a,n)=>{var o=n(212),s=function(g){if(!g)return;g("layout","fcose",o)};if(typeof cytoscape<"u")s(cytoscape);u.exports=s},140:(u)=>{u.exports=A}},t={};function r(u){var a=t[u];if(a!==void 0)return a.exports;var n=t[u]={exports:{}};return e[u](n,n.exports,r),n.exports}var i=r(579);return i})()})});function NBA(A,e){if(A===0)return e();let t=Math.random,r=A>>>0;Math.random=function(){r=r+1831565813>>>0;let i=r;return i=Math.imul(i^i>>>15,i|1),i^=i+Math.imul(i^i>>>7,i|61),((i^i>>>14)>>>0)/4294967296};try{return e()}finally{Math.random=t}}function roe(A,e,t){A.forEach((r)=>{e.add({group:"nodes",data:{type:"service",id:r.id,icon:r.icon,label:r.title,parent:r.in,width:t.getConfigField("iconSize"),height:t.getConfigField("iconSize")},classes:"node-service"})})}function ioe(A,e,t){A.forEach((r)=>{e.add({group:"nodes",data:{type:"junction",id:r.id,parent:r.in,width:t.getConfigField("iconSize"),height:t.getConfigField("iconSize")},classes:"node-junction"})})}function uoe(A,e){e.nodes().map((t)=>{let r=Y6(t);if(r.type==="group")return;r.x=t.position().x,r.y=t.position().y,A.getElementById(r.id).attr("transform","translate("+(r.x||0)+","+(r.y||0)+")")})}function aoe(A,e){A.forEach((t)=>{e.add({group:"nodes",data:{type:"group",id:t.id,icon:t.icon,label:t.title,parent:t.in},classes:"node-group"})})}function noe(A,e){A.forEach((t)=>{let{lhsId:r,rhsId:i,lhsInto:u,lhsGroup:a,rhsInto:n,lhsDir:o,rhsDir:s,rhsGroup:l,title:g}=t,C=GBA(t.lhsDir,t.rhsDir)?"segments":"straight",B={id:`${r}-${i}`,label:g,source:r,sourceDir:o,sourceArrow:u,sourceGroup:a,sourceEndpoint:o==="L"?"0 50%":o==="R"?"100% 50%":o==="T"?"50% 0":"50% 100%",target:i,targetDir:s,targetArrow:n,targetGroup:l,targetEndpoint:s==="L"?"0 50%":s==="R"?"100% 50%":s==="T"?"50% 0":"50% 100%"};e.add({group:"edges",data:B,classes:C})})}function ooe(A,e,t,r=[]){let i=y((C,B)=>{let E=new Map;for(let[d,I]of C.entries()){let h=`${d}`,Q=0,p=[...I.entries()];if(p.length===1){E.set(h,p[0][1]);continue}for(let m=0;m<p.length-1;m++)for(let f=m+1;f<p.length;f++){let[D,w]=p[m],[b,F]=p[f];if(t.get(Xne(D,b))===B)E.set(h,[...E.get(h)??[],...w,...F]);else if(D==="default"||b==="default")E.set(h,[...E.get(h)??[],...w,...F]);else{let S=`${h}-${Q++}`;E.set(S,w);let x=`${h}-${Q++}`;E.set(x,F)}}}return E},"flattenAlignments"),u=e.map((C)=>{let B=new Map,E=new Map;return C.forEach(([d,I],h)=>{let Q=A.getNode(h)?.in??"default",p=B.get(I)??new Map;if(!B.has(I))B.set(I,p);let m=E.get(d)??new Map;if(!E.has(d))E.set(d,m);for(let f of[p,m]){let D=f.get(Q)??[];if(!f.has(Q))f.set(Q,D);D.push(h)}}),{horiz:[...i(B,"horizontal").values()].filter((d)=>d.length>1),vert:[...i(E,"vertical").values()].filter((d)=>d.length>1)}}),[a,n]=u.reduce(([C,B],{horiz:E,vert:d})=>[[...C,...E],[...B,...d]],[[],[]]),o=new Set;r.forEach((C)=>C.members.forEach((B)=>o.add(B)));let s=y((C)=>C.filter((B)=>!B.some((E)=>o.has(E))),"dropOverlapping"),l=s(a),g=s(n);return r.forEach((C)=>{if(C.members.length<2)return;if(C.direction==="row")l.push([...C.members]);else g.push([...C.members])}),{horizontal:l,vertical:g}}function soe(A,e,t=[]){let r=[],i=e.getConfigField("iconSize"),u=e.getConfigField("idealEdgeLengthMultiplier"),a=u*i,n=new Set;t.forEach((l)=>{for(let g=0;g<l.members.length-1;g++){let C=l.members[g],B=l.members[g+1];if(n.add(`${C}|${B}`),n.add(`${B}|${C}`),l.direction==="row")r.push({left:C,right:B,gap:a});else r.push({top:C,bottom:B,gap:a})}});let o=y((l)=>`${l[0]},${l[1]}`,"posToStr"),s=y((l)=>l.split(",").map((g)=>parseInt(g)),"strToPos");return A.forEach((l)=>{let g=new Map([...l.entries()].map(([d,I])=>[o(I),d])),C=[o([0,0])],B={},E={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};while(C.length>0){let d=C.shift();if(d){B[d]=1;let I=g.get(d);if(I){let h=s(d);Object.entries(E).forEach(([Q,p])=>{let m=o([h[0]+p[0],h[1]+p[1]]),f=g.get(m);if(f&&!B[m]){if(C.push(m),n.has(`${I}|${f}`))return;r.push({[Zne[Q]]:f,[Zne[vYt(Q)]]:I,gap:u*i})}})}}}}),r}function loe(A,e,t,r,i,{spatialMaps:u,groupAlignments:a}){return new Promise((n)=>{let o=Qe("body").append("div").attr("id","cy").attr("style","display:none"),s=gc({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge[label]",style:{label:"data(label)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[0.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${i.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${i.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});o.remove(),aoe(t,s),roe(A,s,i),ioe(e,s,i),noe(r,s);let l=i.getLayoutHints(),g=ooe(i,u,a,l),C=soe(u,i,l),B=i.getConfigField("iconSize"),E=i.getConfigField("idealEdgeLengthMultiplier")*B,d=0.5*B,I=i.getConfigField("edgeElasticity"),h=i.getConfigField("seed"),Q=s.layout({name:"fcose",quality:"proof",randomize:i.getConfigField("randomize"),nodeSeparation:i.getConfigField("nodeSeparation"),numIter:i.getConfigField("numIter"),styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(p){let[m,f]=p.connectedNodes(),{parent:D}=Y6(m),{parent:w}=Y6(f);return D===w?E:d},edgeElasticity(p){let[m,f]=p.connectedNodes(),{parent:D}=Y6(m),{parent:w}=Y6(f);return D===w?I:0.001},alignmentConstraint:g,relativePlacementConstraint:C});Q.one("layoutstop",()=>{function p(m,f,D,w){let b,F,{x:v,y:S}=m,{x,y:k}=f;F=(w-S+(v-D)*(S-k)/(v-x))/Math.sqrt(1+Math.pow((S-k)/(v-x),2)),b=Math.sqrt(Math.pow(w-S,2)+Math.pow(D-v,2)-Math.pow(F,2));let T=Math.sqrt(Math.pow(x-v,2)+Math.pow(k-S,2));b=b/T;let R=(x-v)*(w-S)-(k-S)*(D-v);switch(!0){case R>=0:R=1;break;case R<0:R=-1;break}let L=(x-v)*(D-v)+(k-S)*(w-S);switch(!0){case L>=0:L=1;break;case L<0:L=-1;break}return F=Math.abs(F)*R,b=b*L,{distances:F,weights:b}}y(p,"getSegmentWeights"),s.startBatch();for(let m of Object.values(s.edges()))if(m.data?.()){let{x:f,y:D}=m.source().position(),{x:w,y:b}=m.target().position();if(f!==w&&D!==b){let F=m.sourceEndpoint(),v=m.targetEndpoint(),{sourceDir:S}=$ne(m),[x,k]=Q1(S)?[F.x,v.y]:[v.x,F.y],{weights:T,distances:R}=p(F,v,x,k);m.style("segment-distances",R),m.style("segment-weights",T)}}s.endBatch(),NBA(h,()=>Q.run())});try{NBA(h,()=>Q.run())}catch(p){if(p instanceof RangeError&&p.message.includes("Invalid array length"))throw Error("Architecture layout failed: a declared `align row|column` directive likely contradicts the edge directions, or two declared alignments overlap on a shared node. Check that the order of members in each `align` chain is consistent with the edges between them, and that no node appears in two `align` directives along the same axis.");throw p}s.ready((p)=>{sA.info("Ready",p),n(s)})})}var toe,Zne,Vne,aP,vYt,jne,Ms,Q1,GBA,kYt,FYt,RBA,xYt,SYt,LYt,RYt,NYt,Xne,$ne,Y6,GYt,Aoe,UYt,eoe,MYt,TYt,T6,k7,YYt,HYt,KYt,JYt,OYt,PYt,goe;var coe=P(()=>{ws();cn();eo();Rn();ai();rr();ir();Nt();E0();onA();Pr();toe=yu(zne(),1),Zne={L:"left",R:"right",T:"top",B:"bottom"},Vne={L:y((A)=>`${A},${A/2} 0,${A} 0,0`,"L"),R:y((A)=>`0,${A/2} ${A},0 ${A},${A}`,"R"),T:y((A)=>`0,0 ${A},0 ${A/2},${A}`,"T"),B:y((A)=>`${A/2},0 ${A},${A} 0,${A}`,"B")},aP={L:y((A,e)=>A-e+2,"L"),R:y((A,e)=>A-2,"R"),T:y((A,e)=>A-e+2,"T"),B:y((A,e)=>A-2,"B")},vYt=y(function(A){if(Ms(A))return A==="L"?"R":"L";else return A==="T"?"B":"T"},"getOppositeArchitectureDirection"),jne=y(function(A){let e=A;return e==="L"||e==="R"||e==="T"||e==="B"},"isArchitectureDirection"),Ms=y(function(A){let e=A;return e==="L"||e==="R"},"isArchitectureDirectionX"),Q1=y(function(A){let e=A;return e==="T"||e==="B"},"isArchitectureDirectionY"),GBA=y(function(A,e){let t=Ms(A)&&Q1(e),r=Q1(A)&&Ms(e);return t||r},"isArchitectureDirectionXY"),kYt=y(function(A){let e=A[0],t=A[1],r=Ms(e)&&Q1(t),i=Q1(e)&&Ms(t);return r||i},"isArchitecturePairXY"),FYt=y(function(A){return A!=="LL"&&A!=="RR"&&A!=="TT"&&A!=="BB"},"isValidArchitectureDirectionPair"),RBA=y(function(A,e){let t=`${A}${e}`;return FYt(t)?t:void 0},"getArchitectureDirectionPair"),xYt=y(function([A,e],t){let r=t[0],i=t[1];if(Ms(r))if(Q1(i))return[A+(r==="L"?-1:1),e+(i==="T"?1:-1)];else return[A+(r==="L"?-1:1),e];else if(Ms(i))return[A+(i==="L"?1:-1),e+(r==="T"?1:-1)];else return[A,e+(r==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),SYt=y(function(A){if(A==="LT"||A==="TL")return[1,1];else if(A==="BL"||A==="LB")return[1,-1];else if(A==="BR"||A==="RB")return[-1,-1];else return[-1,1]},"getArchitectureDirectionXYFactors"),LYt=y(function(A,e){if(GBA(A,e))return"bend";else if(Ms(A))return"horizontal";return"vertical"},"getArchitectureDirectionAlignment"),RYt=y(function(A){return A.type==="service"},"isArchitectureService"),NYt=y(function(A){return A.type==="junction"},"isArchitectureJunction"),Xne=y((A,e)=>{let[t,r]=[A,e].sort();return`${JSON.stringify(t)}-${JSON.stringify(r)}`},"architectureGroupAlignmentKey"),$ne=y((A)=>A.data(),"edgeData"),Y6=y((A)=>A.data(),"nodeData"),GYt=ur.architecture,Aoe=class{constructor(){this.nodes=new Map,this.groups=new Map,this.edges=[],this.layoutHints=[],this.registeredIds=new Map,this.elements=new Map,this.diagramId="",this.setAccTitle=Dr,this.getAccTitle=vr,this.setDiagramTitle=Mr,this.getDiagramTitle=xr,this.getAccDescription=Fr,this.setAccDescription=kr,this.clear()}static{y(this,"ArchitectureDB")}setDiagramId(A){this.diagramId=A}getDiagramId(){return this.diagramId}clear(){this.nodes=new Map,this.groups=new Map,this.edges=[],this.layoutHints=[],this.registeredIds=new Map,this.dataStructures=void 0,this.elements=new Map,this.diagramId="",sr()}addService({id:A,icon:e,in:t,title:r,iconText:i}){if(this.registeredIds.has(A))throw Error(`The service id [${A}] is already in use by another ${this.registeredIds.get(A)}`);if(t!==void 0){if(A===t)throw Error(`The service [${A}] cannot be placed within itself`);if(!this.registeredIds.has(t))throw Error(`The service [${A}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds.get(t)==="node")throw Error(`The service [${A}]'s parent is not a group`)}this.registeredIds.set(A,"node"),this.nodes.set(A,{id:A,type:"service",icon:e,iconText:i,title:r,edges:[],in:t})}getServices(){return[...this.nodes.values()].filter(RYt)}addJunction({id:A,in:e}){if(this.registeredIds.has(A))throw Error(`The junction id [${A}] is already in use by another ${this.registeredIds.get(A)}`);if(e!==void 0){if(A===e)throw Error(`The junction [${A}] cannot be placed within itself`);if(!this.registeredIds.has(e))throw Error(`The junction [${A}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds.get(e)==="node")throw Error(`The junction [${A}]'s parent is not a group`)}this.registeredIds.set(A,"node"),this.nodes.set(A,{id:A,type:"junction",edges:[],in:e})}getJunctions(){return[...this.nodes.values()].filter(NYt)}getNodes(){return[...this.nodes.values()]}getNode(A){return this.nodes.get(A)??null}addGroup({id:A,icon:e,in:t,title:r}){if(this.registeredIds.has(A))throw Error(`The group id [${A}] is already in use by another ${this.registeredIds.get(A)}`);if(t!==void 0){if(A===t)throw Error(`The group [${A}] cannot be placed within itself`);if(!this.registeredIds.has(t))throw Error(`The group [${A}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds.get(t)==="node")throw Error(`The group [${A}]'s parent is not a group`)}this.registeredIds.set(A,"group"),this.groups.set(A,{id:A,icon:e,title:r,in:t})}getGroups(){return[...this.groups.values()]}addEdge({lhsId:A,rhsId:e,lhsDir:t,rhsDir:r,lhsInto:i,rhsInto:u,lhsGroup:a,rhsGroup:n,title:o}){if(!jne(t))throw Error(`Invalid direction given for left hand side of edge ${A}--${e}. Expected (L,R,T,B) got ${String(t)}`);if(!jne(r))throw Error(`Invalid direction given for right hand side of edge ${A}--${e}. Expected (L,R,T,B) got ${String(r)}`);if(!this.nodes.has(A)&&!this.groups.has(A))throw Error(`The left-hand id [${A}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(!this.nodes.has(e)&&!this.groups.has(e))throw Error(`The right-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);let s=this.nodes.get(A).in,l=this.nodes.get(e).in;if(a&&s&&l&&s==l)throw Error(`The left-hand id [${A}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(n&&s&&l&&s==l)throw Error(`The right-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let g={lhsId:A,lhsDir:t,lhsInto:i,lhsGroup:a,rhsId:e,rhsDir:r,rhsInto:u,rhsGroup:n,title:o};this.edges.push(g);let C=this.nodes.get(A),B=this.nodes.get(e);if(C&&B)C.edges.push(this.edges[this.edges.length-1]),B.edges.push(this.edges[this.edges.length-1])}getEdges(){return this.edges}addLayoutHint(A){if(A.members.length<2)throw Error(`An align directive requires at least two members; got ${A.members.length}`);let e=new Set;A.members.forEach((t)=>{if(this.registeredIds.get(t)!=="node")throw Error(`align ${A.direction} references [${t}], which is not a service or junction`);if(e.has(t))throw Error(`align ${A.direction} lists [${t}] more than once`);e.add(t)}),this.layoutHints.push(A)}getLayoutHints(){return this.layoutHints}getDataStructures(){if(this.dataStructures===void 0){let A=new Map,e=new Map;for(let[a,n]of this.nodes.entries()){let o=new Map;for(let s of n.edges){let l=this.getNode(s.lhsId)?.in,g=this.getNode(s.rhsId)?.in;if(l&&g&&l!==g){let C=LYt(s.lhsDir,s.rhsDir);if(C!=="bend")A.set(Xne(l,g),C)}if(s.lhsId===a){let C=RBA(s.lhsDir,s.rhsDir);if(C)o.set(C,s.rhsId)}else{let C=RBA(s.rhsDir,s.lhsDir);if(C)o.set(C,s.lhsId)}}e.set(a,o)}let t=new Set,r=new Set(e.keys()),i=y((a)=>{let n=new Map([[a,[0,0]]]),o=[a];while(o.length>0){let s=o.shift();if(s){t.add(s),r.delete(s);let l=e.get(s);if(!l)throw Error(`BFS error: adjacency list for id ${s} not found. Please report this as a bug.`);let g=n.get(s);if(!g)throw Error(`BFS error: position for id ${s} not found in spatial map. Please report this as a bug.`);let[C,B]=g;l.forEach((E,d)=>{if(!t.has(E))n.set(E,xYt([C,B],d)),o.push(E)})}}return n},"BFS"),u=[];while(r.size>0){let a=r.values().next().value;u.push(i(a))}this.dataStructures={adjList:e,spatialMaps:u,groupAlignments:A}}return this.dataStructures}setElementForId(A,e){this.elements.set(A,e)}getElementById(A){return this.elements.get(A)}getConfig(){return si({...GYt,...st().architecture})}getConfigField(A){return this.getConfig()[A]}},UYt=y((A,e)=>{hu(A,e),A.groups.map((t)=>e.addGroup(t)),A.services.map((t)=>e.addService({...t,type:"service"})),A.junctions.map((t)=>e.addJunction({...t,type:"junction"})),A.edges.map((t)=>e.addEdge(t)),A.alignments?.map((t)=>e.addLayoutHint({direction:t.direction,members:[...t.members]}))},"populateDb"),eoe={parser:{yy:void 0},parse:y(async(A)=>{let e=await Ma("architecture",A);sA.debug(e);let t=eoe.parser?.yy;if(!(t instanceof Aoe))throw Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");UYt(e,t)},"parse")},MYt=y((A)=>`
|
||
.edge {
|
||
stroke-width: ${A.archEdgeWidth};
|
||
stroke: ${A.archEdgeColor};
|
||
fill: none;
|
||
}
|
||
|
||
.arrow {
|
||
fill: ${A.archEdgeArrowColor};
|
||
}
|
||
|
||
.node-bkg {
|
||
fill: none;
|
||
stroke: ${A.archGroupBorderColor};
|
||
stroke-width: ${A.archGroupBorderWidth};
|
||
stroke-dasharray: 8;
|
||
}
|
||
.node-icon-text {
|
||
display: flex;
|
||
align-items: center;
|
||
}
|
||
|
||
.node-icon-text > div {
|
||
color: #fff;
|
||
margin: 1px;
|
||
height: fit-content;
|
||
text-align: center;
|
||
overflow: hidden;
|
||
display: -webkit-box;
|
||
-webkit-box-orient: vertical;
|
||
}
|
||
`,"getStyles"),TYt=MYt;y(NBA,"withSeededRandom");T6=y((A)=>`<g><rect width="80" height="80" style="fill: #087ebf; stroke-width: 0px;"/>${A}</g>`,"wrapIcon"),k7={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:T6('<path id="b" data-name="4" d="m20,57.86c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path id="c" data-name="3" d="m20,45.95c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path id="d" data-name="2" d="m20,34.05c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse id="e" data-name="1" cx="40" cy="22.14" rx="20" ry="7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="20" y1="57.86" x2="20" y2="22.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="60" y1="57.86" x2="60" y2="22.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},server:{body:T6('<rect x="17.5" y="17.5" width="45" height="45" rx="2" ry="2" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="32.5" x2="62.5" y2="32.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="47.5" x2="62.5" y2="47.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><g><path d="m56.25,25c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,25c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><path d="m56.25,40c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,40c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><path d="m56.25,55c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,55c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g>')},disk:{body:T6('<rect x="20" y="15" width="40" height="50" rx="1" ry="1" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="24" cy="19.17" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="56" cy="19.17" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="24" cy="60.83" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="56" cy="60.83" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="40" cy="33.75" rx="14" ry="14.58" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="40" cy="33.75" rx="4" ry="4.17" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m37.51,42.52l-4.83,13.22c-.26.71-1.1,1.02-1.76.64l-4.18-2.42c-.66-.38-.81-1.26-.33-1.84l9.01-10.8c.88-1.05,2.56-.08,2.09,1.2Z" style="fill: #fff; stroke-width: 0px;"/>')},internet:{body:T6('<circle cx="40" cy="40" r="22.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="40" y1="17.5" x2="40" y2="62.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="40" x2="62.5" y2="40" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m39.99,17.51c-15.28,11.1-15.28,33.88,0,44.98" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m40.01,17.51c15.28,11.1,15.28,33.88,0,44.98" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="19.75" y1="30.1" x2="60.25" y2="30.1" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="19.75" y1="49.9" x2="60.25" y2="49.9" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},cloud:{body:T6('<path d="m65,47.5c0,2.76-2.24,5-5,5H20c-2.76,0-5-2.24-5-5,0-1.87,1.03-3.51,2.56-4.36-.04-.21-.06-.42-.06-.64,0-2.6,2.48-4.74,5.65-4.97,1.65-4.51,6.34-7.76,11.85-7.76.86,0,1.69.08,2.5.23,2.09-1.57,4.69-2.5,7.5-2.5,6.1,0,11.19,4.38,12.28,10.17,2.14.56,3.72,2.51,3.72,4.83,0,.03,0,.07-.01.1,2.29.46,4.01,2.48,4.01,4.9Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},unknown:yeA,blank:{body:T6("")}}},YYt=y(async function(A,e,t,r){let i=t.getConfigField("padding"),u=t.getConfigField("iconSize"),a=u/2,n=u/6,o=n/2;await Promise.all(e.edges().map(async(s)=>{let{source:l,sourceDir:g,sourceArrow:C,sourceGroup:B,target:E,targetDir:d,targetArrow:I,targetGroup:h,label:Q}=$ne(s),{x:p,y:m}=s[0].sourceEndpoint(),{x:f,y:D}=s[0].midpoint(),{x:w,y:b}=s[0].targetEndpoint(),F=i+4;if(B)if(Ms(g))p+=g==="L"?-F:F;else m+=g==="T"?-F:F+18;if(h)if(Ms(d))w+=d==="L"?-F:F;else b+=d==="T"?-F:F+18;if(!B&&t.getNode(l)?.type==="junction")if(Ms(g))p+=g==="L"?a:-a;else m+=g==="T"?a:-a;if(!h&&t.getNode(E)?.type==="junction")if(Ms(d))w+=d==="L"?a:-a;else b+=d==="T"?a:-a;if(s[0]._private.rscratch){let v=A.insert("g");if(v.insert("path").attr("d",`M ${p},${m} L ${f},${D} L${w},${b} `).attr("class","edge").attr("id",`${r}-${CE(l,E,{prefix:"L"})}`),C){let S=Ms(g)?aP[g](p,n):p-o,x=Q1(g)?aP[g](m,n):m-o;v.insert("polygon").attr("points",Vne[g](n)).attr("transform",`translate(${S},${x})`).attr("class","arrow")}if(I){let S=Ms(d)?aP[d](w,n):w-o,x=Q1(d)?aP[d](b,n):b-o;v.insert("polygon").attr("points",Vne[d](n)).attr("transform",`translate(${S},${x})`).attr("class","arrow")}if(Q){let S=!GBA(g,d)?Ms(g)?"X":"Y":"XY",x=0;if(S==="X")x=Math.abs(p-w);else if(S==="Y")x=Math.abs(m-b)/1.5;else x=Math.abs(p-w)/2;let k=v.append("g");if(await Nn(k,Q,{useHtmlLabels:!1,width:x,classes:"architecture-service-label"},OA()),k.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),S==="X")k.attr("transform","translate("+f+", "+D+")");else if(S==="Y")k.attr("transform","translate("+f+", "+D+") rotate(-90)");else if(S==="XY"){let T=RBA(g,d);if(T&&kYt(T)){let R=k.node().getBoundingClientRect(),[L,M]=SYt(T);k.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*L*M*45})`);let U=k.node().getBoundingClientRect();k.attr("transform",`
|
||
translate(${f}, ${D-R.height/2})
|
||
translate(${L*U.width/2}, ${M*U.height/2})
|
||
rotate(${-1*L*M*45}, 0, ${R.height/2})
|
||
`)}}}}}))},"drawEdges"),HYt=y(async function(A,e,t,r){let u=t.getConfigField("padding")*0.75,a=t.getConfigField("fontSize"),o=t.getConfigField("iconSize")/2;await Promise.all(e.nodes().map(async(s)=>{let l=Y6(s);if(l.type==="group"){let{h:g,w:C,x1:B,y1:E}=s.boundingBox(),d=A.append("rect");d.attr("id",`${r}-group-${l.id}`).attr("x",B+o).attr("y",E+o).attr("width",C).attr("height",g).attr("class","node-bkg");let I=A.append("g"),h=B,Q=E;if(l.icon){let p=I.append("g");p.html(`<g>${await ag(l.icon,{height:u,width:u,fallbackPrefix:k7.prefix})}</g>`),p.attr("transform","translate("+(h+o+1)+", "+(Q+o+1)+")"),h+=u,Q+=a/2-1-2}if(l.label){let p=I.append("g");await Nn(p,l.label,{useHtmlLabels:!1,width:C,classes:"architecture-service-label"},OA()),p.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),p.attr("transform","translate("+(h+o+4)+", "+(Q+o+2)+")")}t.setElementForId(l.id,d)}}))},"drawGroups"),KYt=y(async function(A,e,t,r){let i=OA();for(let u of t){let a=e.append("g"),n=A.getConfigField("iconSize");if(u.title){let g=a.append("g");await Nn(g,u.title,{useHtmlLabels:!1,width:n*1.5,classes:"architecture-service-label"},i),g.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),g.attr("transform","translate("+n/2+", "+n+")")}let o=a.append("g");if(u.icon)o.html(`<g>${await ag(u.icon,{height:n,width:n,fallbackPrefix:k7.prefix})}</g>`);else if(u.iconText){o.html(`<g>${await ag("blank",{height:n,width:n,fallbackPrefix:k7.prefix})}</g>`);let B=o.append("g").append("foreignObject").attr("width",n).attr("height",n).append("div").attr("class","node-icon-text").attr("style",`height: ${n}px;`).append("div").html(or(u.iconText,i)),E=parseInt(window.getComputedStyle(B.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;B.attr("style",`-webkit-line-clamp: ${Math.floor((n-2)/E)};`)}else o.append("path").attr("class","node-bkg").attr("id",`${r}-node-${u.id}`).attr("d",`M0,${n} V5 Q0,0 5,0 H${n-5} Q${n},0 ${n},5 V${n} Z`);a.attr("id",`${r}-service-${u.id}`).attr("class","architecture-service");let{width:s,height:l}=a.node().getBBox();u.width=s,u.height=l,A.setElementForId(u.id,a)}return 0},"drawServices"),JYt=y(function(A,e,t,r){t.forEach((i)=>{let u=e.append("g"),a=A.getConfigField("iconSize");u.append("g").append("rect").attr("id",`${r}-node-${i.id}`).attr("fill-opacity","0").attr("width",a).attr("height",a),u.attr("class","architecture-junction");let{width:o,height:s}=u._groups[0][0].getBBox();u.width=o,u.height=s,A.setElementForId(i.id,u)})},"drawJunctions");ly([{name:k7.prefix,icons:k7}]);gc.use(toe.default);y(roe,"addServices");y(ioe,"addJunctions");y(uoe,"positionNodes");y(aoe,"addGroups");y(noe,"addEdges");y(ooe,"getAlignments");y(soe,"getRelativeConstraints");y(loe,"layoutArchitecture");OYt=y(async(A,e,t,r)=>{let i=r.db;i.setDiagramId(e);let u=i.getServices(),a=i.getJunctions(),n=i.getGroups(),o=i.getEdges(),s=i.getDataStructures(),l=zi(e),g=l.append("g");g.attr("class","architecture-edges");let C=l.append("g");C.attr("class","architecture-services");let B=l.append("g");B.attr("class","architecture-groups"),await KYt(i,C,u,e),JYt(i,C,a,e);let E=await loe(u,a,n,o,i,s);await YYt(g,E,i,e),await HYt(B,E,i,e),uoe(i,E),rE(void 0,l,i.getConfigField("padding"),i.getConfigField("useMaxWidth"))},"draw"),PYt={draw:OYt},goe={parser:eoe,get db(){return new Aoe},renderer:PYt,styles:TYt}});function doe(){YBA={}}function Ioe(){let A=VYt,{ast:e}=YBA,t=HBA();if(!e)throw Error("No data for EventModel");return e.frames.forEach((r,i)=>{let u=yoe(r,e.dataEntities,t);A=oP(A,{$kind:Coe,index:i,frame:r,textProps:u});let a=void 0;if(xoe(r))sA.debug("source frame",r.sourceFrames),a=e.frames.filter((n)=>r.sourceFrames.some((o)=>o.$refText===n.name)),a.forEach((n)=>{A=oP(A,{$kind:UBA,index:i,frame:r,sourceFrame:n})});else A=oP(A,{$kind:UBA,index:i,frame:r})}),A={...A,sortedSwimlanesArray:KBA(A.swimlanes)},A}function hoe(A){YBA.ast=A}function HBA(){return eu}function Qoe(A){let e=A.split(".");if(e.length===2)return e[0];return}function poe(A){let e=A.split(".");if(e.length===2)return e[1];return A}function foe(A,e){if(!e||e.length===0)return;return Object.values(A).find((t)=>t.namespace===e)}function nP(A,e,t){return Math.max(e,...Object.keys(A).filter((r)=>{let i=Number.parseInt(r);return i>e&&i<t}).map((r)=>Number.parseInt(r)))+1}function moe(A,e){let t=Qoe(A.entityIdentifier),r=foe(e,t);switch(A.modelEntityType){case"ui":case"pcr":case"processor":if(r)return{index:r.index,label:r.namespace||eu.labelUiAutomation};else if(t)return{index:nP(e,0,100),label:eu.labelUiAutomationPrefix+t};return{index:0,label:eu.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":if(r)return{index:r.index,label:r.namespace||eu.labelCommandReadModel};else if(t)return{index:nP(e,100,200),label:eu.labelCommandReadModelPrefix+t};return{index:100,label:eu.labelCommandReadModel};case"evt":case"event":default:if(r)return{index:r.index,label:r.namespace||eu.labelEvents};else if(t)return{index:nP(e,200,300),label:eu.labelEventsPrefix+t};return{index:200,label:eu.labelEvents}}}function Doe(A){let{themeVariables:e}=st();switch(A.modelEntityType){case"ui":return{fill:e.emUiFill??"white",stroke:e.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:e.emProcessorFill??"#edb3f6",stroke:e.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:e.emReadModelFill??"#d3f1a2",stroke:e.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:e.emCommandFill??"#bcd6fe",stroke:e.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:e.emEventFill??"#ffb778",stroke:e.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}function yoe(A,e,t){let r=st(),i=or(poe(A.entityIdentifier)??"",r),u,a={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"<br/>"},o=`<b>${yf(i,t.textMaxWidth,a)}</b>`;if(A.dataInlineValue)u=A.dataInlineValue,u=u.substring(u.indexOf("{")+1),u=u.substring(0,u.lastIndexOf("}")-1),u=or(u,r),u=yf(u,t.textMaxWidth,a),u=u.replaceAll(" "," ");if(A.dataReference){let E=e.find((d)=>d.name===A.dataReference?.$refText);if(E)u=E.dataBlockValue,u=u.substring(u.indexOf(`{
|
||
`)+2),u=u.substring(0,u.lastIndexOf("}")-1),u=or(u,r),u=yf(u,t.textMaxWidth,a),u=u.replaceAll(" "," "),u+="<br/>"}let s=u!==void 0;if(s)o+=`<br/><br/><code style="text-align: left; display: block;max-width:${t.textMaxWidth}px">${u}</code>`;let l={fontSize:a.fontSize,fontWeight:a.fontWeight,fontFamily:a.fontFamily},g=Lv(o,l),C=s?g.width/3:g.width,B={content:o,width:C,height:g.height};return sA.debug(`[${A.name}] ${A.entityIdentifier} text`,B),B}function woe(A,e){let t=e,r=Doe(t.frame),i={width:t.textProps.width+2*eu.boxTextPadding,height:t.textProps.height+2*eu.boxTextPadding};return[{$kind:Boe,frame:t.frame,index:t.index,visual:r,dimension:i,textProps:t.textProps}]}function boe(A,e,t){if(e===void 0)return eu.contentStartX;if(e.index===A.index&&A.r)return A.r+eu.boxPadding;if(t===void 0)return eu.contentStartX;return t.r-eu.boxOverlap+eu.boxPadding}function voe(A,e){let t=[...A.map((r)=>r.r),e];return Math.max(...t)}function KBA(A){return Object.values(A).sort((e,t)=>e.index-t.index)}function koe(A,e){let t=e,r=moe(t.frame,A.swimlanes),i;if(r.index in A.swimlanes)i=A.swimlanes[r.index];else i={index:r.index,label:r.label,r:0,y:r.index*eu.swimlaneMinHeight+eu.swimlaneGap,height:eu.swimlaneMinHeight,maxHeight:eu.swimlaneMinHeight};let u=A.boxes.length>0?A.boxes[A.boxes.length-1]:void 0,a=A.previousSwimlaneNumber!==void 0?A.swimlanes[A.previousSwimlaneNumber]:void 0,n={width:Math.max(eu.boxMinWidth,Math.min(eu.boxMaxWidth,t.dimension.width))+2*eu.boxPadding,height:Math.max(eu.boxMinHeight,Math.min(eu.boxMaxHeight,t.dimension.height))+2*eu.boxPadding},o=boe(i,a,u),s=o+n.width+eu.boxPadding,l=voe(Object.values(A.swimlanes),s);i.r=o+n.width,i.maxHeight=Math.max(i.maxHeight,n.height),i.height=Math.max(eu.swimlaneMinHeight,i.maxHeight)+2*eu.swimlanePadding;let g={x:o,y:eu.swimlanePadding+i.y,r:s,dimension:n,leftSibling:!1,swimlane:i,visual:t.visual,text:t.textProps.content,frame:t.frame,index:t.index},C={...A,boxes:[...A.boxes,g],swimlanes:{...A.swimlanes,[`${i.index}`]:i},previousSwimlaneNumber:r.index,previousFrame:t.frame,maxR:l},B=KBA(C.swimlanes);if(B.length>0)B[0].y=0;for(let E=1;E<B.length;E++){let d=B[E],I=B[E-1];d.y=I.y+I.height+eu.swimlaneGap}return C}function Foe(A,e){if(A===0&&e.sourceFrames.length===0)return!0;return!1}function xoe(A){return A.sourceFrames!==void 0&&A.sourceFrames!==null&&A.sourceFrames.length>0}function MBA(A,e){if(e===void 0||e===null)return;return A.find((t)=>t.frame.name===e.name)}function Soe(A,e,t){if(t<0)return;for(let r=t;r>=0;r--){let i=A[r];if(i.swimlane.index!==e)return i}return}function Loe(A,e){let t=e;if(Wx(t.frame)||Foe(t.index,t.frame))return[];let r=MBA(A.boxes,t.frame);if(r===void 0)throw Error(`Target box not found for frame ${t.frame.name}`);let i;if(t.sourceFrame)i=MBA(A.boxes,t.sourceFrame);else i=Soe(A.boxes,r.swimlane.index,t.index-1);if(i===void 0)return[];return[{$kind:Eoe,frame:t.frame,index:t.index,sourceBox:i,targetBox:r}]}function Roe(A,e){let t=e,r={visual:{fill:"none",stroke:"#000"},source:{x:t.sourceBox.x,y:t.sourceBox.y},target:{x:t.targetBox.x,y:t.targetBox.y},sourceBox:t.sourceBox,targetBox:t.targetBox};return{...A,relations:[...A.relations,r]}}function Noe(A,e){let t=jYt[e.$kind];if(t===void 0||t===null)return[];let r=t(A,e);return sA.debug("decided events",r),r}function Goe(A,e){let t=e.reduce((r,i)=>{let u=XYt[i.$kind];if(u===void 0||u===null)return r;return u(r,i)},A);return sA.debug("evolve events",{state:A,newState:t,events:e}),t}function oP(A,e){let t=Noe(A,e);return Goe(A,t)}function Uoe(A,e){return(t)=>{let r=t.swimlane.y+e.swimlanePadding,i=A.append("g").attr("class","em-box");i.append("rect").attr("x",t.x).attr("y",r).attr("rx","3").attr("width",t.dimension.width).attr("height",t.dimension.height).attr("stroke",t.visual.stroke).attr("fill",t.visual.fill),i.append("foreignObject").attr("x",t.x+e.boxPadding).attr("y",r+10).attr("width",t.dimension.width-2*e.boxPadding).attr("height",t.dimension.height-2*e.boxPadding).append("xhtml:div").style("display","table").style("height","100%").style("width","100%").append("span").style("display","table-cell").style("text-align","center").style("vertical-align","middle").html(t.text)}}function Moe(A,e){return A>e}function Toe(A,e,t,r){return(i)=>{let u=i.sourceBox.swimlane.y+e.swimlanePadding,a=i.targetBox.swimlane.y+e.swimlanePadding,n=Moe(u,a),o=i.sourceBox.x+i.sourceBox.dimension.width*2/3,s=i.targetBox.x+i.targetBox.dimension.width/3,l,g;if(sA.debug(`rendering relation up=${n} for `,{sourceBox:i.sourceBox,targetBox:i.targetBox}),n)l=u,g=a+i.targetBox.dimension.height;else l=u+i.sourceBox.dimension.height,g=a;let C=r.emRelationStroke??i.visual.stroke;A.append("path").attr("class","em-relation").attr("fill",i.visual.fill).attr("stroke",C).attr("stroke-width","1").attr("marker-end",`url(#${t})`).attr("d",`M${o} ${l} L${s} ${g}`)}}function Yoe(A,e,t,r){return(i)=>{let u=A.append("g").attr("class","em-swimlane"),a=r.emSwimlaneBackgroundOdd??"rgb(250,250,250)",n=r.emSwimlaneBackgroundStroke??"rgb(240,240,240)";u.append("rect").attr("x",0).attr("y",i.y).attr("rx","3").attr("width",e+t.swimlanePadding).attr("height",i.height).attr("fill",a).attr("stroke",n),u.append("text").attr("font-weight",t.swimlaneTextFontWeight).attr("x",30).attr("y",i.y+30).text(i.label)}}var Coe="position frame",Boe="frame positioned",UBA="position relation",Eoe="relation positioned",_Yt,WYt,qYt,zYt,ZYt,YBA,eu,VYt,jYt,XYt,TBA,$Yt,AHt,eHt,tHt,rHt,iHt,uHt,Hoe;var Koe=P(()=>{ws();ai();rr();ir();Nt();E0();E0();Pr();_Yt=y(function(A){sA.debug("options str",A)},"setOptions"),WYt=y(function(){return{}},"getOptions"),qYt=y(function(){doe(),sr()},"clear");y(doe,"reset");zYt=ur.eventmodeling,ZYt=y(()=>si({...zYt,...st().eventmodeling}),"getConfig"),YBA={};y(Ioe,"getState");y(hoe,"setAst");eu={swimlaneMinHeight:70,swimlanePadding:15,swimlaneGap:10,boxPadding:10,boxOverlap:90,boxDefaultY:0,boxMinWidth:80,boxMaxWidth:450,boxMinHeight:80,boxMaxHeight:750,contentStartX:250,textMaxWidth:430,boxTextFontWeight:"bold",boxTextPadding:10,swimlaneTextFontWeight:"bold",labelUiAutomation:"UI/Automation",labelUiAutomationPrefix:"UI/A: ",labelCommandReadModel:"Command/Read Model",labelCommandReadModelPrefix:"C/RM: ",labelEvents:"Events",labelEventsPrefix:"Stream: "};y(HBA,"getDiagramProps");VYt={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};y(Qoe,"extractNamespace");y(poe,"extractName");y(foe,"findSwimlaneByNamespace");y(nP,"findNextAvailableIndex");y(moe,"calculateSwimlaneProps");y(Doe,"calculateEntityVisualProps");y(yoe,"calculateTextProps");y(woe,"decidePositionFrame");y(boe,"calculateX");y(voe,"calculateMaxRight");y(KBA,"sortedSwimlanesArray");y(koe,"evolveFramePositioned");y(Foe,"isFirstFrame");y(xoe,"hasSourceFrame");y(MBA,"findBoxByFrame");y(Soe,"findBoxByLineIndex");y(Loe,"decidePositionRelation");y(Roe,"evolveRelationPositioned");jYt={[Coe]:woe,[UBA]:Loe},XYt={[Boe]:koe,[Eoe]:Roe};y(Noe,"decide");y(Goe,"evolve");y(oP,"dispatch");TBA={getConfig:ZYt,setOptions:_Yt,getOptions:WYt,clear:qYt,setAccTitle:Dr,getAccTitle:vr,getAccDescription:Fr,setAccDescription:kr,setDiagramTitle:Mr,getDiagramTitle:xr,setAst:hoe,getDiagramProps:HBA,getState:Ioe},$Yt={parse:y(async(A)=>{let e=await Ma("eventmodeling",A);sA.debug(e),TBA.setAst(e),hu(e,TBA)},"parse")},AHt=OA(),eHt=AHt?.eventmodeling;y(Uoe,"renderD3Box");y(Moe,"dirUpwards");y(Toe,"renderD3Relation");y(Yoe,"renderD3Swimlane");tHt=y(function(A,e,t,r){if(sA.debug("in eventmodeling renderer",A+`
|
||
`,"id:",e,t),!eHt)throw Error("EventModeling config not found");let i=r.db,{themeVariables:u,eventmodeling:a}=OA(),n=Qe(`[id="${e}"]`),o=i.getDiagramProps(),s=i.getState(),l=`em-arrowhead-${e}`,g=u.emArrowhead??"#000000";s.sortedSwimlanesArray.forEach(Yoe(n,s.maxR,o,u)),s.boxes.forEach(Uoe(n,o)),s.relations.forEach(Toe(n,o,l,u)),n.append("defs").append("marker").attr("id",l).attr("markerWidth","10").attr("markerHeight","7").attr("refX","10").attr("refY","3.5").attr("orient","auto").append("polygon").attr("points","0 0, 10 3.5, 0 7").attr("fill",g),Fb(void 0,n,a?.padding??30,a?.useMaxWidth)},"draw"),rHt={draw:tHt},iHt=y((A)=>"","getStyles"),uHt=iHt,Hoe={parser:$Yt,db:TBA,renderer:rHt,styles:uHt}});var OBA,aHt,nHt,oHt=14,H6=250,sHt=30,lHt=60,gHt=5,qoe,Joe,Ooe,Poe,cHt,_oe,CHt,BHt,EHt,JBA,dHt,IHt,zoe,sP,Woe,K6,hHt,QHt,pHt,Zoe;var Voe=P(()=>{cn();ai();rr();ir();Nt();Yt();OBA=function(){var A=y(function(h,Q,p,m){for(p=p||{},m=h.length;m--;p[h[m]]=Q);return p},"o"),e=[1,4],t=[1,14],r=[1,12],i=[1,13],u=[6,7,8],a=[1,20],n=[1,18],o=[1,19],s=[6,7,11],l=[1,6,13,14],g=[1,23],C=[1,24],B=[1,6,7,11,13,14],E={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ishikawa:4,spaceLines:5,SPACELINE:6,NL:7,ISHIKAWA:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,TEXT:14,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"ISHIKAWA",11:"EOF",13:"SPACELIST",14:"TEXT"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,1],[12,1],[12,1]],performAction:y(function(Q,p,m,f,D,w,b){var F=w.length-1;switch(D){case 6:case 7:return f;case 15:f.addNode(w[F-1].length,w[F].trim());break;case 16:f.addNode(0,w[F].trim());break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:t,7:[1,10],9:9,12:11,13:r,14:i},A(u,[2,3]),{1:[2,2]},A(u,[2,4]),A(u,[2,5]),{1:[2,6],6:t,12:15,13:r,14:i},{6:t,9:16,12:11,13:r,14:i},{6:a,7:n,10:17,11:o},A(s,[2,18],{14:[1,21]}),A(s,[2,16]),A(s,[2,17]),{6:a,7:n,10:22,11:o},{1:[2,7],6:t,12:15,13:r,14:i},A(l,[2,14],{7:g,11:C}),A(B,[2,8]),A(B,[2,9]),A(B,[2,10]),A(s,[2,15]),A(l,[2,13],{7:g,11:C}),A(B,[2,11]),A(B,[2,12])],defaultActions:{2:[2,1],6:[2,2]},parseError:y(function(Q,p){if(p.recoverable)this.trace(Q);else{var m=Error(Q);throw m.hash=p,m}},"parseError"),parse:y(function(Q){var p=this,m=[0],f=[],D=[null],w=[],b=this.table,F="",v=0,S=0,x=0,k=2,T=1,R=w.slice.call(arguments,1),L=Object.create(this.lexer),M={yy:{}};for(var U in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,U))M.yy[U]=this.yy[U];if(L.setInput(Q,M.yy),M.yy.lexer=L,M.yy.parser=this,typeof L.yylloc>"u")L.yylloc={};var Y=L.yylloc;w.push(Y);var H=L.options&&L.options.ranges;if(typeof M.yy.parseError==="function")this.parseError=M.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function J(JA){m.length=m.length-2*JA,D.length=D.length-JA,w.length=w.length-JA}y(J,"popStack");function K(){var JA=f.pop()||L.lex()||T;if(typeof JA!=="number"){if(JA instanceof Array)f=JA,JA=f.pop();JA=p.symbols_[JA]||JA}return JA}y(K,"lex");var O,_,z,j,q,CA,tA={},lA,gA,aA,RA;while(!0){if(z=m[m.length-1],this.defaultActions[z])j=this.defaultActions[z];else{if(O===null||typeof O>"u")O=K();j=b[z]&&b[z][O]}if(typeof j>"u"||!j.length||!j[0]){var wA="";RA=[];for(lA in b[z])if(this.terminals_[lA]&&lA>k)RA.push("'"+this.terminals_[lA]+"'");if(L.showPosition)wA="Parse error on line "+(v+1)+`:
|
||
`+L.showPosition()+`
|
||
Expecting `+RA.join(", ")+", got '"+(this.terminals_[O]||O)+"'";else wA="Parse error on line "+(v+1)+": Unexpected "+(O==T?"end of input":"'"+(this.terminals_[O]||O)+"'");this.parseError(wA,{text:L.match,token:this.terminals_[O]||O,line:L.yylineno,loc:Y,expected:RA})}if(j[0]instanceof Array&&j.length>1)throw Error("Parse Error: multiple actions possible at state: "+z+", token: "+O);switch(j[0]){case 1:if(m.push(O),D.push(L.yytext),w.push(L.yylloc),m.push(j[1]),O=null,!_){if(S=L.yyleng,F=L.yytext,v=L.yylineno,Y=L.yylloc,x>0)x--}else O=_,_=null;break;case 2:if(gA=this.productions_[j[1]][1],tA.$=D[D.length-gA],tA._$={first_line:w[w.length-(gA||1)].first_line,last_line:w[w.length-1].last_line,first_column:w[w.length-(gA||1)].first_column,last_column:w[w.length-1].last_column},H)tA._$.range=[w[w.length-(gA||1)].range[0],w[w.length-1].range[1]];if(CA=this.performAction.apply(tA,[F,S,v,M.yy,j[1],D,w].concat(R)),typeof CA<"u")return CA;if(gA)m=m.slice(0,-1*gA*2),D=D.slice(0,-1*gA),w=w.slice(0,-1*gA);m.push(this.productions_[j[1]][0]),D.push(tA.$),w.push(tA._$),aA=b[m[m.length-2]][m[m.length-1]],m.push(aA);break;case 3:return!0}}return!0},"parse")},d=function(){var h={EOF:1,parseError:y(function(p,m){if(this.yy.parser)this.yy.parser.parseError(p,m);else throw Error(p)},"parseError"),setInput:y(function(Q,p){if(this.yy=p||this.yy||{},this._input=Q,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var Q=this._input[0];this.yytext+=Q,this.yyleng++,this.offset++,this.match+=Q,this.matched+=Q;var p=Q.match(/(?:\r\n?|\n).*/g);if(p)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),Q},"input"),unput:y(function(Q){var p=Q.length,m=Q.split(/(?:\r\n?|\n)/g);this._input=Q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-p),this.offset-=p;var f=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),m.length-1)this.yylineno-=m.length-1;var D=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:m?(m.length===f.length?this.yylloc.first_column:0)+f[f.length-m.length].length-m[0].length:this.yylloc.first_column-p},this.options.ranges)this.yylloc.range=[D[0],D[0]+this.yyleng-p];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(Q){this.unput(this.match.slice(Q))},"less"),pastInput:y(function(){var Q=this.matched.substr(0,this.matched.length-this.match.length);return(Q.length>20?"...":"")+Q.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var Q=this.match;if(Q.length<20)Q+=this._input.substr(0,20-Q.length);return(Q.substr(0,20)+(Q.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var Q=this.pastInput(),p=Array(Q.length+1).join("-");return Q+this.upcomingInput()+`
|
||
`+p+"^"},"showPosition"),test_match:y(function(Q,p){var m,f,D;if(this.options.backtrack_lexer){if(D={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)D.yylloc.range=this.yylloc.range.slice(0)}if(f=Q[0].match(/(?:\r\n?|\n).*/g),f)this.yylineno+=f.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:f?f[f.length-1].length-f[f.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Q[0].length},this.yytext+=Q[0],this.match+=Q[0],this.matches=Q,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(Q[0].length),this.matched+=Q[0],m=this.performAction.call(this,this.yy,this,p,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(m)return m;else if(this._backtrack){for(var w in D)this[w]=D[w];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var Q,p,m,f;if(!this._more)this.yytext="",this.match="";var D=this._currentRules();for(var w=0;w<D.length;w++)if(m=this._input.match(this.rules[D[w]]),m&&(!p||m[0].length>p[0].length)){if(p=m,f=w,this.options.backtrack_lexer)if(Q=this.test_match(m,D[w]),Q!==!1)return Q;else if(this._backtrack){p=!1;continue}else return!1;else if(!this.options.flex)break}if(p){if(Q=this.test_match(p,D[f]),Q!==!1)return Q;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var p=this.next();if(p)return p;else return this.lex()},"lex"),begin:y(function(p){this.conditionStack.push(p)},"begin"),popState:y(function(){var p=this.conditionStack.length-1;if(p>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(p){if(p=this.conditionStack.length-1-Math.abs(p||0),p>=0)return this.conditionStack[p];else return"INITIAL"},"topState"),pushState:y(function(p){this.begin(p)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(p,m,f,D){var w=D;switch(f){case 0:return 6;case 1:return 8;case 2:return 8;case 3:return 6;case 4:return 7;case 5:return 13;case 6:return 14;case 7:return 11}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:ishikawa-beta\b)/i,/^(?:ishikawa\b)/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:[^\n]+)/i,/^(?:$)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return h}();E.lexer=d;function I(){this.yy={}}return y(I,"Parser"),I.prototype=E,E.Parser=I,new I}();OBA.parser=OBA;aHt=OBA,nHt=class{constructor(){this.stack=[],this.clear=this.clear.bind(this),this.addNode=this.addNode.bind(this),this.getRoot=this.getRoot.bind(this)}static{y(this,"IshikawaDB")}clear(){this.root=void 0,this.stack=[],this.baseLevel=void 0,sr()}getRoot(){return this.root}addNode(A,e){let t=_e.sanitizeText(e,OA());if(!this.root){this.root={text:t,children:[]},this.stack=[{level:0,node:this.root}],Mr(t);return}this.baseLevel??=A;let r=A-this.baseLevel+1;if(r<=0)r=1;while(this.stack.length>1&&this.stack[this.stack.length-1].level>=r)this.stack.pop();let i=this.stack[this.stack.length-1].node,u={text:t,children:[]};i.children.push(u),this.stack.push({level:r,node:u})}getAccTitle(){return vr()}setAccTitle(A){Dr(A)}getAccDescription(){return Fr()}setAccDescription(A){kr(A)}getDiagramTitle(){return xr()}setDiagramTitle(A){Mr(A)}},qoe=82*Math.PI/180,Joe=Math.cos(qoe),Ooe=Math.sin(qoe),Poe=y((A,e,t)=>{let r=A.node().getBBox(),i=r.width+e*2,u=r.height+e*2;jr(A,u,i,t),A.attr("viewBox",`${r.x-e} ${r.y-e} ${i} ${u}`)},"applyPaddedViewBox"),cHt=y((A,e,t,r)=>{let u=r.db.getRoot();if(!u)return;let a=OA(),{look:n,handDrawnSeed:o,themeVariables:s}=a,l=al(a.fontSize)[0]??oHt,g=n==="handDrawn",C=u.children??[],B=a.ishikawa?.diagramPadding??20,E=a.ishikawa?.useMaxWidth??!1,d=zi(e),I=d.append("g").attr("class","ishikawa"),h=g?Ge.svg(d.node()):void 0,Q=h?{roughSvg:h,seed:o??0,lineColor:s?.lineColor??"#333",fillColor:s?.mainBkg??"#fff"}:void 0,p=`ishikawa-arrow-${e}`;if(!g)I.append("defs").append("marker").attr("id",p).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 Z").attr("class","ishikawa-arrow");let m=0,f=H6,D=g?void 0:K6(I,m,f,m,f,"ishikawa-spine");if(CHt(I,m,f,u.text,l,Q),!C.length){if(g)K6(I,m,f,m,f,"ishikawa-spine",Q);Poe(d,B,E);return}m-=20;let w=C.filter((L,M)=>M%2===0),b=C.filter((L,M)=>M%2===1),F=_oe(w),v=_oe(b),S=F.total+v.total,x=H6,k=H6;if(S>0){let L=H6*2,M=H6*0.3;x=Math.max(M,L*(F.total/S)),k=Math.max(M,L*(v.total/S))}let T=l*2;if(x=Math.max(x,F.max*T),k=Math.max(k,v.max*T),f=Math.max(x,H6),D)D.attr("y1",f).attr("y2",f);I.select(".ishikawa-head-group").attr("transform",`translate(0,${f})`);let R=Math.ceil(C.length/2);for(let L=0;L<R;L++){let M=I.append("g").attr("class","ishikawa-pair");for(let[U,Y,H]of[[C[L*2],-1,x],[C[L*2+1],1,k]])if(U)dHt(M,U,m,f,Y,H,l,Q);m=M.selectAll("text").nodes().reduce((U,Y)=>Math.min(U,Y.getBBox().x),1/0)}if(g)K6(I,m,f,0,f,"ishikawa-spine",Q);else{D.attr("x1",m);let L=`url(#${p})`;I.selectAll("line.ishikawa-branch, line.ishikawa-sub-branch").attr("marker-start",L)}Poe(d,B,E)},"draw"),_oe=y((A)=>{let e=y((t)=>t.children.reduce((r,i)=>r+1+e(i),0),"countDescendants");return A.reduce((t,r)=>{let i=e(r);return t.total+=i,t.max=Math.max(t.max,i),t},{total:0,max:0})},"sideStats"),CHt=y((A,e,t,r,i,u)=>{let a=Math.max(6,Math.floor(110/(i*0.6))),n=A.append("g").attr("class","ishikawa-head-group").attr("transform",`translate(${e},${t})`),o=sP(n,zoe(r,a),0,0,"ishikawa-head-label","start",i),s=o.node().getBBox(),l=Math.max(60,s.width+6),g=Math.max(40,s.height*2+40),C=`M 0 ${-g/2} L 0 ${g/2} Q ${l*2.4} 0 0 ${-g/2} Z`;if(u){let B=u.roughSvg.path(C,{roughness:1.5,seed:u.seed,fill:u.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:u.lineColor,strokeWidth:2});n.insert(()=>B,":first-child").attr("class","ishikawa-head")}else n.insert("path",":first-child").attr("class","ishikawa-head").attr("d",C);o.attr("transform",`translate(${(l-s.width)/2-s.x+3},${-s.y-s.height/2})`)},"drawHead"),BHt=y((A,e)=>{let t=[],r=[],i=y((u,a,n)=>{let o=e===-1?[...u].reverse():u;for(let s of o){let l=t.length,g=s.children??[];if(t.push({depth:n,text:zoe(s.text,15),parentIndex:a,childCount:g.length}),n%2===0){if(r.push(l),g.length)i(g,l,n+1)}else{if(g.length)i(g,l,n+1);r.push(l)}}},"walk");return i(A,-1,2),{entries:t,yOrder:r}},"flattenTree"),EHt=y((A,e,t,r,i,u,a)=>{let n=A.append("g").attr("class","ishikawa-label-group"),s=sP(n,e,t,r+11*i,"ishikawa-label cause","middle",u).node().getBBox();if(a){let l=a.roughSvg.rectangle(s.x-20,s.y-2,s.width+40,s.height+4,{roughness:1.5,seed:a.seed,fill:a.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:a.lineColor,strokeWidth:2});n.insert(()=>l,":first-child").attr("class","ishikawa-label-box")}else n.insert("rect",":first-child").attr("class","ishikawa-label-box").attr("x",s.x-20).attr("y",s.y-2).attr("width",s.width+40).attr("height",s.height+4)},"drawCauseLabel"),JBA=y((A,e,t,r,i,u)=>{let a=Math.sqrt(r*r+i*i);if(a===0)return;let n=r/a,o=i/a,s=6,l=-o*s,g=n*s,C=e,B=t,E=`M ${C} ${B} L ${C-n*s*2+l} ${B-o*s*2+g} L ${C-n*s*2-l} ${B-o*s*2-g} Z`,d=u.roughSvg.path(E,{roughness:1,seed:u.seed,fill:u.lineColor,fillStyle:"solid",stroke:u.lineColor,strokeWidth:1});A.append(()=>d)},"drawArrowMarker"),dHt=y((A,e,t,r,i,u,a,n)=>{let o=e.children??[],s=u*(o.length?1:0.2),l=-Joe*s,g=Ooe*s*i,C=t+l,B=r+g;if(K6(A,t,r,C,B,"ishikawa-branch",n),n)JBA(A,t,r,t-C,r-B,n);if(EHt(A,e.text,C,B,i,a,n),!o.length)return;let{entries:E,yOrder:d}=BHt(o,i),I=E.length,h=Array(I);for(let[D,w]of d.entries())h[w]=r+g*((D+1)/(I+1));let Q=new Map;Q.set(-1,{x0:t,y0:r,x1:C,y1:B,childCount:o.length,childrenDrawn:0});let p=-Joe,m=Ooe*i,f=i<0?"ishikawa-label up":"ishikawa-label down";for(let[D,w]of E.entries()){let b=h[D],F=Q.get(w.parentIndex),v=A.append("g").attr("class","ishikawa-sub-group"),S=0,x=0,k=0;if(w.depth%2===0){let T=F.y1-F.y0;if(S=Woe(F.x0,F.x1,T?(b-F.y0)/T:0.5),x=b,k=S-(w.childCount>0?lHt+w.childCount*gHt:sHt),K6(v,S,b,k,b,"ishikawa-sub-branch",n),n)JBA(v,S,b,1,0,n);sP(v,w.text,k,b,"ishikawa-label align","end",a)}else{let T=F.childrenDrawn++;if(S=Woe(F.x0,F.x1,(F.childCount-T)/(F.childCount+1)),x=F.y0,k=S+p*((b-x)/m),K6(v,S,x,k,b,"ishikawa-sub-branch",n),n)JBA(v,S,x,S-k,x-b,n);sP(v,w.text,k,b,f,"end",a)}if(w.childCount>0)Q.set(D,{x0:S,y0:x,x1:k,y1:b,childCount:w.childCount,childrenDrawn:0})}},"drawBranch"),IHt=y((A)=>A.split(/<br\s*\/?>|\n/),"splitLines"),zoe=y((A,e)=>{if(A.length<=e)return A;let t=[];for(let r of A.split(/\s+/)){let i=t.length-1;if(i>=0&&t[i].length+1+r.length<=e)t[i]+=" "+r;else t.push(r)}return t.join(`
|
||
`)},"wrapText"),sP=y((A,e,t,r,i,u,a)=>{let n=IHt(e),o=a*1.05,s=A.append("text").attr("class",i).attr("text-anchor",u).attr("x",t).attr("y",r-(n.length-1)*o/2);for(let[l,g]of n.entries())s.append("tspan").attr("x",t).attr("dy",l===0?0:o).text(g);return s},"drawMultilineText"),Woe=y((A,e,t)=>A+(e-A)*t,"lerp"),K6=y((A,e,t,r,i,u,a)=>{if(a){let n=a.roughSvg.line(e,t,r,i,{roughness:1.5,seed:a.seed,stroke:a.lineColor,strokeWidth:2});A.append(()=>n).attr("class",u);return}return A.append("line").attr("class",u).attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",i)},"drawLine"),hHt={draw:cHt},QHt=y((A)=>`
|
||
.ishikawa .ishikawa-spine,
|
||
.ishikawa .ishikawa-branch,
|
||
.ishikawa .ishikawa-sub-branch {
|
||
stroke: ${A.lineColor};
|
||
stroke-width: 2;
|
||
fill: none;
|
||
}
|
||
|
||
.ishikawa .ishikawa-sub-branch {
|
||
stroke-width: 1;
|
||
}
|
||
|
||
.ishikawa .ishikawa-arrow {
|
||
fill: ${A.lineColor};
|
||
}
|
||
|
||
.ishikawa .ishikawa-head {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.lineColor};
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.ishikawa .ishikawa-label-box {
|
||
fill: ${A.mainBkg};
|
||
stroke: ${A.lineColor};
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.ishikawa text {
|
||
font-family: ${A.fontFamily};
|
||
font-size: ${A.fontSize};
|
||
fill: ${A.textColor};
|
||
}
|
||
|
||
.ishikawa .ishikawa-head-label {
|
||
font-weight: 600;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
font-size: 14px;
|
||
}
|
||
|
||
.ishikawa .ishikawa-label {
|
||
text-anchor: end;
|
||
}
|
||
|
||
.ishikawa .ishikawa-label.cause {
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
}
|
||
|
||
.ishikawa .ishikawa-label.align {
|
||
text-anchor: end;
|
||
dominant-baseline: middle;
|
||
}
|
||
|
||
.ishikawa .ishikawa-label.up {
|
||
dominant-baseline: baseline;
|
||
}
|
||
|
||
.ishikawa .ishikawa-label.down {
|
||
dominant-baseline: hanging;
|
||
}
|
||
`,"getStyles"),pHt=QHt,Zoe={parser:aHt,get db(){return new nHt},renderer:hHt,styles:pHt}});function lP(A,e){let t=mHt(A),r=t.filter((n)=>fHt(n,A)),i=0,u=0,a=[];if(r.length>1){let n=A0e(r);for(let s=0;s<r.length;++s){let l=r[s];l.angle=Math.atan2(l.x-n.x,l.y-n.y)}r.sort((s,l)=>l.angle-s.angle);let o=r[r.length-1];for(let s=0;s<r.length;++s){let l=r[s];u+=(o.x+l.x)*(l.y-o.y);let g={x:(l.x+o.x)/2,y:(l.y+o.y)/2},C=null;for(let B=0;B<l.parentIndex.length;++B)if(o.parentIndex.includes(l.parentIndex[B])){let E=A[l.parentIndex[B]],d=Math.atan2(l.x-E.x,l.y-E.y),I=Math.atan2(o.x-E.x,o.y-E.y),h=I-d;if(h<0)h+=2*Math.PI;let Q=I-h/2,p=Ll(g,{x:E.x+E.radius*Math.sin(Q),y:E.y+E.radius*Math.cos(Q)});if(p>E.radius*2)p=E.radius*2;if(C==null||C.width>p)C={circle:E,width:p,p1:l,p2:o,large:p>E.radius,sweep:!0}}if(C!=null)a.push(C),i+=WBA(C.circle.radius,C.width),o=l}}else{let n=A[0];for(let s=1;s<A.length;++s)if(A[s].radius<n.radius)n=A[s];let o=!1;for(let s=0;s<A.length;++s)if(Ll(A[s],n)>Math.abs(n.radius-A[s].radius)){o=!0;break}if(o)i=u=0;else i=n.radius*n.radius*Math.PI,a.push({circle:n,p1:{x:n.x,y:n.y+n.radius},p2:{x:n.x-0.0000000001,y:n.y+n.radius},width:n.radius*2,large:!0,sweep:!0})}if(u/=2,e)e.area=i+u,e.arcArea=i,e.polygonArea=u,e.arcs=a,e.innerPoints=r,e.intersectionPoints=t;return i+u}function fHt(A,e){return e.every((t)=>Ll(A,t)<t.radius+0.0000000001)}function mHt(A){let e=[];for(let t=0;t<A.length;++t)for(let r=t+1;r<A.length;++r){let i=$oe(A[t],A[r]);for(let u of i)u.parentIndex=[t,r],e.push(u)}return e}function WBA(A,e){return A*A*Math.acos(1-e/A)-(A-e)*Math.sqrt(e*(2*A-e))}function Ll(A,e){return Math.sqrt((A.x-e.x)*(A.x-e.x)+(A.y-e.y)*(A.y-e.y))}function XBA(A,e,t){if(t>=A+e)return 0;if(t<=Math.abs(A-e))return Math.PI*Math.min(A,e)*Math.min(A,e);let r=A-(t*t-e*e+A*A)/(2*t),i=e-(t*t-A*A+e*e)/(2*t);return WBA(A,r)+WBA(e,i)}function $oe(A,e){let t=Ll(A,e),r=A.radius,i=e.radius;if(t>=r+i||t<=Math.abs(r-i))return[];let u=(r*r-i*i+t*t)/(2*t),a=Math.sqrt(r*r-u*u),n=A.x+u*(e.x-A.x)/t,o=A.y+u*(e.y-A.y)/t,s=-(e.y-A.y)*(a/t),l=-(e.x-A.x)*(a/t);return[{x:n+s,y:o-l},{x:n-s,y:o+l}]}function A0e(A){let e={x:0,y:0};for(let t of A)e.x+=t.x,e.y+=t.y;return e.x/=A.length,e.y/=A.length,e}function DHt(A,e,t,r){r=r||{};let i=r.maxIterations||100,u=r.tolerance||0.0000000001,a=A(e),n=A(t),o=t-e;if(a*n>0)throw"Initial bisect points must have opposite signs";if(a===0)return e;if(n===0)return t;for(let s=0;s<i;++s){o/=2;let l=e+o,g=A(l);if(g*a>=0)e=l;if(Math.abs(o)<u||g===0)return l}return e+o}function qBA(A){let e=Array(A);for(let t=0;t<A;++t)e[t]=0;return e}function joe(A,e){return qBA(A).map(()=>qBA(e))}function J6(A,e){let t=0;for(let r=0;r<A.length;++r)t+=A[r]*e[r];return t}function zBA(A){return Math.sqrt(J6(A,A))}function ZBA(A,e,t){for(let r=0;r<e.length;++r)A[r]=e[r]*t}function wh(A,e,t,r,i){for(let u=0;u<A.length;++u)A[u]=e*t[u]+r*i[u]}function e0e(A,e,t){t=t||{};let r=t.maxIterations||e.length*200,i=t.nonZeroDelta||1.05,u=t.zeroDelta||0.001,a=t.minErrorDelta||0.000001,n=t.minErrorDelta||0.00001,o=t.rho!==void 0?t.rho:1,s=t.chi!==void 0?t.chi:2,l=t.psi!==void 0?t.psi:-0.5,g=t.sigma!==void 0?t.sigma:0.5,C,B=e.length,E=Array(B+1);E[0]=e,E[0].fx=A(e),E[0].id=0;for(let f=0;f<B;++f){let D=e.slice();D[f]=D[f]?D[f]*i:u,E[f+1]=D,E[f+1].fx=A(D),E[f+1].id=f+1}function d(f){for(let D=0;D<f.length;D++)E[B][D]=f[D];E[B].fx=f.fx}let I=(f,D)=>f.fx-D.fx,h=e.slice(),Q=e.slice(),p=e.slice(),m=e.slice();for(let f=0;f<r;++f){if(E.sort(I),t.history){let w=E.map((b)=>{let F=b.slice();return F.fx=b.fx,F.id=b.id,F});w.sort((b,F)=>b.id-F.id),t.history.push({x:E[0].slice(),fx:E[0].fx,simplex:w})}C=0;for(let w=0;w<B;++w)C=Math.max(C,Math.abs(E[0][w]-E[1][w]));if(Math.abs(E[0].fx-E[B].fx)<a&&C<n)break;for(let w=0;w<B;++w){h[w]=0;for(let b=0;b<B;++b)h[w]+=E[b][w];h[w]/=B}let D=E[B];if(wh(Q,1+o,h,-o,D),Q.fx=A(Q),Q.fx<E[0].fx)if(wh(m,1+s,h,-s,D),m.fx=A(m),m.fx<Q.fx)d(m);else d(Q);else if(Q.fx>=E[B-1].fx){let w=!1;if(Q.fx>D.fx)if(wh(p,1+l,h,-l,D),p.fx=A(p),p.fx<D.fx)d(p);else w=!0;else if(wh(p,1-l*o,h,l*o,D),p.fx=A(p),p.fx<Q.fx)d(p);else w=!0;if(w){if(g>=1)break;for(let b=1;b<E.length;++b)wh(E[b],1-g,E[0],g,E[b]),E[b].fx=A(E[b])}}else d(Q)}return E.sort(I),{fx:E[0].fx,x:E[0]}}function yHt(A,e,t,r,i,u,a){let n=t.fx,o=J6(t.fxprime,e),s=n,l=n,g=o,C=0;i=i||1,u=u||0.000001,a=a||0.1;function B(E,d,I){for(let h=0;h<16;++h)if(i=(E+d)/2,wh(r.x,1,t.x,i,e),s=r.fx=A(r.x,r.fxprime),g=J6(r.fxprime,e),s>n+u*i*o||s>=I)d=i;else{if(Math.abs(g)<=-a*o)return i;if(g*(d-E)>=0)d=E;E=i,I=s}return 0}for(let E=0;E<10;++E){if(wh(r.x,1,t.x,i,e),s=r.fx=A(r.x,r.fxprime),g=J6(r.fxprime,e),s>n+u*i*o||E&&s>=l)return B(C,i,l);if(Math.abs(g)<=-a*o)return i;if(g>=0)return B(i,C,s);l=s,C=i,i*=2}return i}function wHt(A,e,t){let r={x:e.slice(),fx:0,fxprime:e.slice()},i={x:e.slice(),fx:0,fxprime:e.slice()},u=e.slice(),a,n,o=1,s;t=t||{},s=t.maxIterations||e.length*20,r.fx=A(r.x,r.fxprime),a=r.fxprime.slice(),ZBA(a,r.fxprime,-1);for(let l=0;l<s;++l){if(o=yHt(A,a,r,i,o),t.history)t.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:o});if(!o)ZBA(a,r.fxprime,-1);else{wh(u,1,i.fxprime,-1,r.fxprime);let g=J6(r.fxprime,r.fxprime),C=Math.max(0,J6(u,i.fxprime)/g);wh(a,C,a,-1,i.fxprime),n=r,r=i,i=n}if(zBA(r.fxprime)<=0.00001)break}if(t.history)t.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:o});return r}function t0e(A,e={}){e.maxIterations=e.maxIterations||500;let t=e.initialLayout||FHt,r=e.lossFunction||O6,i=bHt(A,e),u=t(i,e),a=Object.keys(u),n=[];for(let l of a)n.push(u[l].x),n.push(u[l].y);let s=e0e((l)=>{let g={};for(let C=0;C<a.length;++C){let B=a[C];g[B]={x:l[2*C],y:l[2*C+1],radius:u[B].radius}}return r(g,i)},n,e).x;for(let l=0;l<a.length;++l){let g=a[l];u[g].x=s[2*l],u[g].y=s[2*l+1]}return u}function VBA(A,e,t){if(Math.min(A,e)*Math.min(A,e)*Math.PI<=t+r0e)return Math.abs(A-e);return DHt((r)=>XBA(A,e,r)-t,0,A+e)}function bHt(A,e={}){let t=e.distinct,r=A.map((n)=>Object.assign({},n));function i(n){return n.join(";")}if(t){let n=new Map;for(let o of r)for(let s=0;s<o.sets.length;s++){let l=String(o.sets[s]);n.set(l,o.size+(n.get(l)||0));for(let g=s+1;g<o.sets.length;g++){let C=String(o.sets[g]),B=`${l};${C}`,E=`${C};${l}`;n.set(B,o.size+(n.get(B)||0)),n.set(E,o.size+(n.get(E)||0))}}for(let o of r)if(o.sets.length<3)o.size=n.get(i(o.sets))}let u=[],a=new Set;for(let n of r)if(n.sets.length===1)u.push(n.sets[0]);else if(n.sets.length===2){let o=n.sets[0],s=n.sets[1];a.add(i(n.sets)),a.add(i([s,o]))}u.sort((n,o)=>n===o?0:n<o?-1:1);for(let n=0;n<u.length;++n){let o=u[n];for(let s=n+1;s<u.length;++s){let l=u[s];if(!a.has(i([o,l])))r.push({sets:[o,l],size:0})}}return r}function vHt(A,e,t){let r=joe(e.length,e.length),i=joe(e.length,e.length);return A.filter((u)=>u.sets.length===2).forEach((u)=>{let a=t[u.sets[0]],n=t[u.sets[1]],o=Math.sqrt(e[a].size/Math.PI),s=Math.sqrt(e[n].size/Math.PI),l=VBA(o,s,u.size);r[a][n]=r[n][a]=l;let g=0;if(u.size+0.0000000001>=Math.min(e[a].size,e[n].size))g=1;else if(u.size<=0.0000000001)g=-1;i[a][n]=i[n][a]=g}),{distances:r,constraints:i}}function kHt(A,e,t,r){for(let u=0;u<e.length;++u)e[u]=0;let i=0;for(let u=0;u<t.length;++u){let a=A[2*u],n=A[2*u+1];for(let o=u+1;o<t.length;++o){let s=A[2*o],l=A[2*o+1],g=t[u][o],C=r[u][o],B=(s-a)*(s-a)+(l-n)*(l-n),E=Math.sqrt(B),d=B-g*g;if(C>0&&E<=g||C<0&&E>=g)continue;i+=2*d*d,e[2*u]+=4*d*(a-s),e[2*u+1]+=4*d*(n-l),e[2*o]+=4*d*(s-a),e[2*o+1]+=4*d*(l-n)}}return i}function FHt(A,e={}){let t=SHt(A,e),r=e.lossFunction||O6;if(A.length>=8){let i=xHt(A,e),u=r(i,A),a=r(t,A);if(u+0.00000001<a)t=i}return t}function xHt(A,e={}){let t=e.restarts||10,r=[],i={};for(let C of A)if(C.sets.length===1)i[C.sets[0]]=r.length,r.push(C);let{distances:u,constraints:a}=vHt(A,r,i),n=zBA(u.map(zBA))/u.length;u=u.map((C)=>C.map((B)=>B/n));let o=(C,B)=>kHt(C,B,u,a),s=null;for(let C=0;C<t;++C){let B=qBA(u.length*2).map(Math.random),E=wHt(o,B,e);if(!s||E.fx<s.fx)s=E}let l=s.x,g={};for(let C=0;C<r.length;++C){let B=r[C];g[B.sets[0]]={x:l[2*C]*n,y:l[2*C+1]*n,radius:Math.sqrt(B.size/Math.PI)}}if(e.history)for(let C of e.history)ZBA(C.x,n);return g}function SHt(A,e){let t=e&&e.lossFunction?e.lossFunction:O6,r={},i={};for(let g of A)if(g.sets.length===1){let C=g.sets[0];r[C]={x:10000000000,y:10000000000,rowid:r.length,size:g.size,radius:Math.sqrt(g.size/Math.PI)},i[C]=[]}A=A.filter((g)=>g.sets.length===2);for(let g of A){let C=g.weight!=null?g.weight:1,B=g.sets[0],E=g.sets[1];if(g.size+r0e>=Math.min(r[B].size,r[E].size))C=0;i[B].push({set:E,size:g.size,weight:C}),i[E].push({set:B,size:g.size,weight:C})}let u=[];Object.keys(i).forEach((g)=>{let C=0;for(let B=0;B<i[g].length;++B)C+=i[g][B].size*i[g][B].weight;u.push({set:g,size:C})});function a(g,C){return C.size-g.size}u.sort(a);let n={};function o(g){return g.set in n}function s(g,C){r[C].x=g.x,r[C].y=g.y,n[C]=!0}s({x:0,y:0},u[0].set);for(let g=1;g<u.length;++g){let C=u[g].set,B=i[C].filter(o),E=r[C];if(B.sort(a),B.length===0)throw"ERROR: missing pairwise overlap information";let d=[];for(var l=0;l<B.length;++l){let Q=r[B[l].set],p=VBA(E.radius,Q.radius,B[l].size);d.push({x:Q.x+p,y:Q.y}),d.push({x:Q.x-p,y:Q.y}),d.push({y:Q.y+p,x:Q.x}),d.push({y:Q.y-p,x:Q.x});for(let m=l+1;m<B.length;++m){let f=r[B[m].set],D=VBA(E.radius,f.radius,B[m].size),w=$oe({x:Q.x,y:Q.y,radius:p},{x:f.x,y:f.y,radius:D});d.push(...w)}}let I=100000000000000000000000000000000000000000000000000,h=d[0];for(let Q of d){r[C].x=Q.x,r[C].y=Q.y;let p=t(r,A);if(p<I)I=p,h=Q}s(h,C)}return r}function O6(A,e){let t=0;for(let r of e){if(r.sets.length===1)continue;let i;if(r.sets.length===2){let a=A[r.sets[0]],n=A[r.sets[1]];i=XBA(a.radius,n.radius,Ll(a,n))}else i=lP(r.sets.map((a)=>A[a]));let u=r.weight!=null?r.weight:1;t+=u*(i-r.size)*(i-r.size)}return t}function i0e(A,e){let t=0;for(let r of e){if(r.sets.length===1)continue;let i;if(r.sets.length===2){let n=A[r.sets[0]],o=A[r.sets[1]];i=XBA(n.radius,o.radius,Ll(n,o))}else i=lP(r.sets.map((n)=>A[n]));let u=r.weight!=null?r.weight:1,a=Math.log((i+1)/(r.size+1));t+=u*a*a}return t}function LHt(A,e,t){if(t==null)A.sort((i,u)=>u.radius-i.radius);else A.sort(t);if(A.length>0){let i=A[0].x,u=A[0].y;for(let a of A)a.x-=i,a.y-=u}if(A.length===2){if(Ll(A[0],A[1])<Math.abs(A[1].radius-A[0].radius))A[1].x=A[0].x+A[0].radius-A[1].radius-0.0000000001,A[1].y=A[0].y}if(A.length>1){let i=Math.atan2(A[1].x,A[1].y)-e,u=Math.cos(i),a=Math.sin(i);for(let n of A){let{x:o,y:s}=n;n.x=u*o-a*s,n.y=a*o+u*s}}if(A.length>2){let i=Math.atan2(A[2].x,A[2].y)-e;while(i<0)i+=2*Math.PI;while(i>2*Math.PI)i-=2*Math.PI;if(i>Math.PI){let u=A[1].y/(0.0000000001+A[1].x);for(let a of A){var r=(a.x+u*a.y)/(1+u*u);a.x=2*r-a.x,a.y=2*r*u-a.y}}}}function RHt(A){A.forEach((i)=>{i.parent=i});function e(i){if(i.parent!==i)i.parent=e(i.parent);return i.parent}function t(i,u){let a=e(i),n=e(u);a.parent=n}for(let i=0;i<A.length;++i)for(let u=i+1;u<A.length;++u){let a=A[i].radius+A[u].radius;if(Ll(A[i],A[u])+0.0000000001<a)t(A[u],A[i])}let r=new Map;for(let i=0;i<A.length;++i){let u=e(A[i]).parent.setid;if(!r.has(u))r.set(u,[]);r.get(u).push(A[i])}return A.forEach((i)=>{delete i.parent}),Array.from(r.values())}function jBA(A){let e=(t)=>{let r=A.reduce((u,a)=>Math.max(u,a[t]+a.radius),Number.NEGATIVE_INFINITY),i=A.reduce((u,a)=>Math.min(u,a[t]-a.radius),Number.POSITIVE_INFINITY);return{max:r,min:i}};return{xRange:e("x"),yRange:e("y")}}function u0e(A,e,t){if(e==null)e=Math.PI/2;let r=o0e(A).map((s)=>Object.assign({},s)),i=RHt(r);for(let s of i){LHt(s,e,t);let l=jBA(s);s.size=(l.xRange.max-l.xRange.min)*(l.yRange.max-l.yRange.min),s.bounds=l}i.sort((s,l)=>l.size-s.size),r=i[0];let u=r.bounds,a=(u.xRange.max-u.xRange.min)/50;function n(s,l,g){if(!s)return;let C=s.bounds,B,E;if(l)B=u.xRange.max-C.xRange.min+a;else{B=u.xRange.max-C.xRange.max;let d=(C.xRange.max-C.xRange.min)/2-(u.xRange.max-u.xRange.min)/2;if(d<0)B+=d}if(g)E=u.yRange.max-C.yRange.min+a;else{E=u.yRange.max-C.yRange.max;let d=(C.yRange.max-C.yRange.min)/2-(u.yRange.max-u.yRange.min)/2;if(d<0)E+=d}for(let d of s)d.x+=B,d.y+=E,r.push(d)}let o=1;while(o<i.length)n(i[o],!0,!1),n(i[o+1],!1,!0),n(i[o+2],!0,!0),o+=3,u=jBA(r);return n0e(r)}function a0e(A,e,t,r,i){let u=o0e(A);e-=2*r,t-=2*r;let{xRange:a,yRange:n}=jBA(u);if(a.max===a.min||n.max===n.min)return console.log("not scaling solution: zero size detected"),A;let o,s;if(i){let B=Math.sqrt(i/Math.PI)*2;o=e/B,s=t/B}else o=e/(a.max-a.min),s=t/(n.max-n.min);let l=Math.min(s,o),g=(e-(a.max-a.min)*l)/2,C=(t-(n.max-n.min)*l)/2;return n0e(u.map((B)=>({radius:l*B.radius,x:r+g+(B.x-a.min)*l,y:r+C+(B.y-n.min)*l,setid:B.setid})))}function n0e(A){let e={};for(let t of A)e[t.setid]=t;return e}function o0e(A){return Object.keys(A).map((t)=>Object.assign(A[t],{setid:t}))}function s0e(A={}){let e=!1,t=600,r=350,i=15,u=1000,a=Math.PI/2,n=!0,o=null,s=!0,l=!0,g=null,C=null,B=!1,E=null,d=A&&A.symmetricalTextCentre?A.symmetricalTextCentre:!1,I={},h=A&&A.colourScheme?A.colourScheme:A&&A.colorScheme?A.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],Q=0,p=function(w){if(w in I)return I[w];var b=I[w]=h[Q];if(Q+=1,Q>=h.length)Q=0;return b},m=t0e,f=O6;function D(w){let b=w.datum(),F=new Set;b.forEach((q)=>{if(q.size==0&&q.sets.length==1)F.add(q.sets[0])}),b=b.filter((q)=>!q.sets.some((CA)=>F.has(CA)));let v={},S={};if(b.length>0){let q=m(b,{lossFunction:f,distinct:B});if(n)q=u0e(q,a,C);v=a0e(q,t,r,i,o),S=g0e(v,b,d)}let x={};b.forEach((q)=>{if(q.label)x[q.sets]=q.label});function k(q){if(q.sets in x)return x[q.sets];if(q.sets.length==1)return""+q.sets[0]}w.selectAll("svg").data([v]).enter().append("svg");let T=w.select("svg");if(e)T.attr("viewBox",`0 0 ${t} ${r}`);else T.attr("width",t).attr("height",r);let R={},L=!1;T.selectAll(".venn-area path").each(function(q){let CA=this.getAttribute("d");if(q.sets.length==1&&CA&&!B)L=!0,R[q.sets[0]]=UHt(CA)});function M(q){return(CA)=>{let tA=q.sets.map((lA)=>{let gA=R[lA],aA=v[lA];if(!gA)gA={x:t/2,y:r/2,radius:1};if(!aA)aA={x:t/2,y:r/2,radius:1};return{x:gA.x*(1-CA)+aA.x*CA,y:gA.y*(1-CA)+aA.y*CA,radius:gA.radius*(1-CA)+aA.radius*CA}});return Xoe(tA,E)}}let U=T.selectAll(".venn-area").data(b,(q)=>q.sets),Y=U.enter().append("g").attr("class",(q)=>`venn-area venn-${q.sets.length==1?"circle":"intersection"}${q.colour||q.color?" venn-coloured":""}`).attr("data-venn-sets",(q)=>q.sets.join("_")),H=Y.append("path"),J=Y.append("text").attr("class","label").text((q)=>k(q)).attr("text-anchor","middle").attr("dy",".35em").attr("x",t/2).attr("y",r/2);if(l)H.style("fill-opacity","0").filter((q)=>q.sets.length==1).style("fill",(q)=>q.colour?q.colour:q.color?q.color:p(q.sets)).style("fill-opacity",".25"),J.style("fill",(q)=>{if(q.colour||q.color)return"#FFF";if(A.textFill)return A.textFill;return q.sets.length==1?p(q.sets):"#444"});function K(q){if(typeof q.transition==="function")return q.transition("venn").duration(u);return q}let O=w;if(L&&typeof O.transition==="function")O=K(w),O.selectAll("path").attrTween("d",M);else O.selectAll("path").attr("d",(q)=>Xoe(q.sets.map((CA)=>v[CA])),E);let _=O.selectAll("text").filter((q)=>(q.sets in S)).text((q)=>k(q)).attr("x",(q)=>Math.floor(S[q.sets].x)).attr("y",(q)=>Math.floor(S[q.sets].y));if(s)if(L)if("on"in _)_.on("end",PBA(v,k));else _.each("end",PBA(v,k));else _.each(PBA(v,k));let z=K(U.exit()).remove();if(typeof U.transition==="function")z.selectAll("path").attrTween("d",M);let j=z.selectAll("text").attr("x",t/2).attr("y",r/2);if(g!==null)J.style("font-size","0px"),_.style("font-size",g),j.style("font-size","0px");return{circles:v,textCentres:S,nodes:U,enter:Y,update:O,exit:z}}return D.wrap=function(w){if(!arguments.length)return s;return s=w,D},D.useViewBox=function(){return e=!0,D},D.width=function(w){if(!arguments.length)return t;return t=w,D},D.height=function(w){if(!arguments.length)return r;return r=w,D},D.padding=function(w){if(!arguments.length)return i;return i=w,D},D.distinct=function(w){if(!arguments.length)return B;return B=w,D},D.colours=function(w){if(!arguments.length)return p;return p=w,D},D.colors=function(w){if(!arguments.length)return p;return p=w,D},D.fontSize=function(w){if(!arguments.length)return g;return g=w,D},D.round=function(w){if(!arguments.length)return E;return E=w,D},D.duration=function(w){if(!arguments.length)return u;return u=w,D},D.layoutFunction=function(w){if(!arguments.length)return m;return m=w,D},D.normalize=function(w){if(!arguments.length)return n;return n=w,D},D.scaleToFit=function(w){if(!arguments.length)return o;return o=w,D},D.styled=function(w){if(!arguments.length)return l;return l=w,D},D.orientation=function(w){if(!arguments.length)return a;return a=w,D},D.orientationOrder=function(w){if(!arguments.length)return C;return C=w,D},D.lossFunction=function(w){if(!arguments.length)return f;return f=w==="default"?O6:w==="logRatio"?i0e:w,D},D}function PBA(A,e){return function(t){let r=this,i=A[t.sets[0]].radius||50,u=e(t)||"",a=u.split(/\s+/).reverse(),n=3,o=(u.length+a.length)/3,s=a.pop(),l=[s],g=0,C=1.1;r.textContent=null;let B=[];function E(p){let m=r.ownerDocument.createElementNS(r.namespaceURI,"tspan");return m.textContent=p,B.push(m),r.append(m),m}let d=E(s);while(!0){if(s=a.pop(),!s)break;l.push(s);let p=l.join(" ");if(d.textContent=p,p.length>o&&d.getComputedTextLength()>i)l.pop(),d.textContent=l.join(" "),l=[s],d=E(s),g++}let I=0.35-g*C/2,h=r.getAttribute("x"),Q=r.getAttribute("y");B.forEach((p,m)=>{p.setAttribute("x",h),p.setAttribute("y",Q),p.setAttribute("dy",`${I+m*C}em`)})}}function _BA(A,e,t){let r=e[0].radius-Ll(e[0],A);for(let i=1;i<e.length;++i){let u=e[i].radius-Ll(e[i],A);if(u<=r)r=u}for(let i=0;i<t.length;++i){let u=Ll(t[i],A)-t[i].radius;if(u<=r)r=u}return r}function l0e(A,e,t){let r=[];for(let l of A)r.push({x:l.x,y:l.y}),r.push({x:l.x+l.radius/2,y:l.y}),r.push({x:l.x-l.radius/2,y:l.y}),r.push({x:l.x,y:l.y+l.radius/2}),r.push({x:l.x,y:l.y-l.radius/2});let i=r[0],u=_BA(r[0],A,e);for(let l=1;l<r.length;++l){let g=_BA(r[l],A,e);if(g>=u)i=r[l],u=g}let a=e0e((l)=>-1*_BA({x:l[0],y:l[1]},A,e),[i.x,i.y],{maxIterations:500,minErrorDelta:0.0000000001}).x,n={x:t?0:a[0],y:a[1]},o=!0;for(let l of A)if(Ll(n,l)>l.radius){o=!1;break}for(let l of e)if(Ll(n,l)<l.radius){o=!1;break}if(o)return n;if(A.length==1)return{x:A[0].x,y:A[0].y};let s={};if(lP(A,s),s.arcs.length===0)return{x:0,y:-1000,disjoint:!0};if(s.arcs.length==1)return{x:s.arcs[0].circle.x,y:s.arcs[0].circle.y};if(e.length)return l0e(A,[]);return A0e(s.arcs.map((l)=>l.p1))}function NHt(A){let e={},t=Object.keys(A);for(let r of t)e[r]=[];for(let r=0;r<t.length;r++){let i=t[r],u=A[i];for(let a=r+1;a<t.length;++a){let n=t[a],o=A[n],s=Ll(u,o);if(s+o.radius<=u.radius+0.0000000001)e[n].push(i);else if(s+u.radius<=o.radius+0.0000000001)e[i].push(n)}}return e}function g0e(A,e,t){let r={},i=NHt(A);for(let u=0;u<e.length;++u){let a=e[u].sets,n={},o={};for(let C=0;C<a.length;++C){n[a[C]]=!0;let B=i[a[C]];for(let E=0;E<B.length;++E)o[B[E]]=!0}let s=[],l=[];for(let C in A)if(C in n)s.push(A[C]);else if(!(C in o))l.push(A[C]);let g=l0e(s,l,t);if(r[a]=g,g.disjoint&&e[u].size>0)console.log("WARNING: area "+a+" not represented on screen")}return r}function GHt(A,e,t){let r=[];return r.push(`
|
||
M`,A,e),r.push(`
|
||
m`,-t,0),r.push(`
|
||
a`,t,t,0,1,0,t*2,0),r.push(`
|
||
a`,t,t,0,1,0,-t*2,0),r.join(" ")}function UHt(A){let e=A.split(" ");return{x:Number.parseFloat(e[1]),y:Number.parseFloat(e[2]),radius:-Number.parseFloat(e[4])}}function c0e(A){if(A.length===0)return[];let e={};return lP(A,e),e.arcs}function C0e(A,e){if(A.length===0)return"M 0 0";let t=Math.pow(10,e||0),r=e!=null?(u)=>Math.round(u*t)/t:(u)=>u;if(A.length==1){let u=A[0].circle;return GHt(r(u.x),r(u.y),r(u.radius))}let i=[`
|
||
M`,r(A[0].p2.x),r(A[0].p2.y)];for(let u of A){let a=r(u.circle.radius);i.push(`
|
||
A`,a,a,0,u.large?1:0,u.sweep?1:0,r(u.p1.x),r(u.p1.y))}return i.join(" ")}function Xoe(A,e){return C0e(c0e(A),e)}function B0e(A,e={}){let{lossFunction:t,layoutFunction:r=t0e,normalize:i=!0,orientation:u=Math.PI/2,orientationOrder:a,width:n=600,height:o=350,padding:s=15,scaleToFit:l=!1,symmetricalTextCentre:g=!1,distinct:C,round:B=2}=e,E=r(A,{lossFunction:t==="default"||!t?O6:t==="logRatio"?i0e:t,distinct:C});if(i)E=u0e(E,u,a);let d=a0e(E,n,o,s,l),I=g0e(d,A,g),h=new Map(Object.keys(d).map((m)=>[m,{set:m,x:d[m].x,y:d[m].y,radius:d[m].radius}])),Q=A.map((m)=>{let f=m.sets.map((b)=>h.get(b)),D=c0e(f),w=C0e(D,B);return{circles:f,arcs:D,path:w,area:m,has:new Set(m.sets)}});function p(m){let f="";for(let D of Q)if(D.has.size>m.length&&m.every((w)=>D.has.has(w)))f+=" "+D.path;return f}return Q.map(({circles:m,arcs:f,path:D,area:w})=>({data:w,text:I[w.sets],circles:m,arcs:f,path:D,distinctPath:D+p(w.sets)}))}var r0e=0.0000000001;var E0e=()=>{};function d0e(){return si(VHt,st().venn)}function I0e(A){let e=new Map;for(let t of A){let r=t.targets.join("|"),i=e.get(r);if(i)Object.assign(i,t.styles);else e.set(r,{...t.styles})}return e}function p1(A){return A.join("|")}function h0e(A,e,t,r,i,u){let a=A?.useDebugLayout??!1,o=t.select("svg").append("g").attr("class","venn-text-nodes"),s=new Map;for(let l of r){let g=p1(l.sets),C=s.get(g);if(C)C.push(l);else s.set(g,[l])}for(let[l,g]of s.entries()){let C=e.get(l);if(!C?.text)continue;let B=C.text.x,E=C.text.y,d=Math.min(...C.circles.map((T)=>T.radius)),I=Math.min(...C.circles.map((T)=>T.radius-Math.hypot(B-T.x,E-T.y))),h=Number.isFinite(I)?Math.max(0,I):0;if(h===0&&Number.isFinite(d))h=d*0.6;let Q=o.append("g").attr("class","venn-text-area").attr("font-size",`${40*i}px`);if(a)Q.append("circle").attr("class","venn-text-debug-circle").attr("cx",B).attr("cy",E).attr("r",h).attr("fill","none").attr("stroke","purple").attr("stroke-width",1.5*i).attr("stroke-dasharray",`${6*i} ${4*i}`);let p=Math.max(80*i,h*2*0.95),m=Math.max(60*i,h*2*0.95),w=(C.data.label&&C.data.label.length>0?Math.min(32*i,h*0.25):0)+(g.length<=2?30*i:0),b=B-p/2,F=E-m/2+w,v=Math.max(1,Math.ceil(Math.sqrt(g.length))),S=Math.max(1,Math.ceil(g.length/v)),x=p/v,k=m/S;for(let[T,R]of g.entries()){let L=T%v,M=Math.floor(T/v),U=b+x*(L+0.5),Y=F+k*(M+0.5);if(a)Q.append("rect").attr("class","venn-text-debug-cell").attr("x",b+x*L).attr("y",F+k*M).attr("width",x).attr("height",k).attr("fill","none").attr("stroke","teal").attr("stroke-width",1*i).attr("stroke-dasharray",`${4*i} ${3*i}`);let H=x*0.9,J=k*0.9,K=Q.append("foreignObject").attr("class","venn-text-node-fo").attr("width",H).attr("height",J).attr("x",U-H/2).attr("y",Y-J/2).attr("overflow","visible"),O=u.get(R.id)?.color,_=K.append("xhtml:span").attr("class","venn-text-node").style("display","flex").style("width","100%").style("height","100%").style("white-space","normal").style("align-items","center").style("justify-content","center").style("text-align","center").style("overflow-wrap","normal").style("word-break","normal").text(R.label??R.id);if(O)_.style("color",O)}}}function Q0e(A){let e=new Set(A.map((i)=>[...i.sets].sort().join("|"))),t=new Map(A.filter((i)=>i.sets.length===1&&i.size!==void 0).map((i)=>[i.sets[0],i.size])),r=[];for(let i of A){if(i.sets.length<3)continue;let u=[...i.sets].sort();for(let a=0;a<u.length-1;a++)for(let n=a+1;n<u.length;n++){let o=[u[a],u[n]],s=o.join("|");if(!e.has(s)){e.add(s);let l=t.get(o[0]),g=t.get(o[1]),C=l!==void 0&&g!==void 0?Math.min(l,g)/4:2.5;r.push({sets:o,size:C,label:""})}}}return r.length>0?[...A,...r]:A}var $BA,THt,AEA,eEA,tEA,rEA,iEA,uEA=!1,YHt,HHt,F7,KHt,JHt,OHt,PHt,gP,_Ht,WHt,qHt,zHt,ZHt,VHt,jHt,XHt,$Ht,AKt,eKt,tKt,p0e;var f0e=P(()=>{cn();ai();rr();ir();Nt();Pr();kn();E0e();Yt();$BA=function(){var A=y(function(Q,p,m,f){for(m=m||{},f=Q.length;f--;m[Q[f]]=p);return m},"o"),e=[5,8],t=[7,8,11,12,17,19,22,24],r=[1,17],i=[1,18],u=[7,8,11,12,14,15,16,17,19,20,21,22,24,27],a=[1,31],n=[1,39],o=[7,8,11,12,17,19,22,24,27],s=[1,57],l=[1,56],g=[1,58],C=[1,59],B=[1,60],E=[7,8,11,12,16,17,19,20,22,24,27,31,32,33],d={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,optNewlines:4,VENN:5,document:6,EOF:7,NEWLINE:8,line:9,statement:10,TITLE:11,SET:12,identifier:13,BRACKET_LABEL:14,COLON:15,NUMERIC:16,UNION:17,identifierList:18,TEXT:19,IDENTIFIER:20,STRING:21,INDENT_TEXT:22,indentedTextTail:23,STYLE:24,stylesOpt:25,styleField:26,COMMA:27,styleValue:28,valueTokens:29,valueToken:30,HEXCOLOR:31,RGBCOLOR:32,RGBACOLOR:33,$accept:0,$end:1},terminals_:{2:"error",5:"VENN",7:"EOF",8:"NEWLINE",11:"TITLE",12:"SET",14:"BRACKET_LABEL",15:"COLON",16:"NUMERIC",17:"UNION",19:"TEXT",20:"IDENTIFIER",21:"STRING",22:"INDENT_TEXT",24:"STYLE",27:"COMMA",31:"HEXCOLOR",32:"RGBCOLOR",33:"RGBACOLOR"},productions_:[0,[3,4],[4,0],[4,2],[6,0],[6,2],[9,1],[9,1],[10,1],[10,2],[10,3],[10,4],[10,5],[10,2],[10,3],[10,4],[10,5],[10,3],[10,3],[10,3],[10,4],[10,4],[10,2],[10,3],[23,1],[23,1],[23,1],[23,2],[23,2],[25,1],[25,3],[26,3],[28,1],[28,1],[29,1],[29,2],[30,1],[30,1],[30,1],[30,1],[30,1],[18,1],[18,3],[13,1],[13,1]],performAction:y(function(p,m,f,D,w,b,F){var v=b.length-1;switch(w){case 1:return b[v-1];case 2:case 3:case 4:this.$=[];break;case 5:b[v-1].push(b[v]),this.$=b[v-1];break;case 6:this.$=[];break;case 7:case 22:case 32:case 36:case 37:case 38:case 39:case 40:this.$=b[v];break;case 8:D.setDiagramTitle(b[v].substr(6)),this.$=b[v].substr(6);break;case 9:if(D.addSubsetData([b[v]],void 0,void 0),D.setIndentMode)D.setIndentMode(!0);break;case 10:if(D.addSubsetData([b[v-1]],b[v],void 0),D.setIndentMode)D.setIndentMode(!0);break;case 11:if(D.addSubsetData([b[v-2]],void 0,parseFloat(b[v])),D.setIndentMode)D.setIndentMode(!0);break;case 12:if(D.addSubsetData([b[v-3]],b[v-2],parseFloat(b[v])),D.setIndentMode)D.setIndentMode(!0);break;case 13:if(b[v].length<2)throw Error("union requires multiple identifiers");if(D.validateUnionIdentifiers)D.validateUnionIdentifiers(b[v]);if(D.addSubsetData(b[v],void 0,void 0),D.setIndentMode)D.setIndentMode(!0);break;case 14:if(b[v-1].length<2)throw Error("union requires multiple identifiers");if(D.validateUnionIdentifiers)D.validateUnionIdentifiers(b[v-1]);if(D.addSubsetData(b[v-1],b[v],void 0),D.setIndentMode)D.setIndentMode(!0);break;case 15:if(b[v-2].length<2)throw Error("union requires multiple identifiers");if(D.validateUnionIdentifiers)D.validateUnionIdentifiers(b[v-2]);if(D.addSubsetData(b[v-2],void 0,parseFloat(b[v])),D.setIndentMode)D.setIndentMode(!0);break;case 16:if(b[v-3].length<2)throw Error("union requires multiple identifiers");if(D.validateUnionIdentifiers)D.validateUnionIdentifiers(b[v-3]);if(D.addSubsetData(b[v-3],b[v-2],parseFloat(b[v])),D.setIndentMode)D.setIndentMode(!0);break;case 17:case 18:case 19:D.addTextData(b[v-1],b[v],void 0);break;case 20:case 21:D.addTextData(b[v-2],b[v-1],b[v]);break;case 23:D.addStyleData(b[v-1],b[v]);break;case 24:case 25:case 26:var S=D.getCurrentSets();if(!S)throw Error("text requires set");D.addTextData(S,b[v],void 0);break;case 27:case 28:var S=D.getCurrentSets();if(!S)throw Error("text requires set");D.addTextData(S,b[v-1],b[v]);break;case 29:case 41:this.$=[b[v]];break;case 30:case 42:this.$=[...b[v-2],b[v]];break;case 31:this.$=[b[v-2],b[v]];break;case 33:this.$=b[v].join(" ");break;case 34:this.$=[b[v]];break;case 35:b[v-1].push(b[v]),this.$=b[v-1];break;case 43:case 44:this.$=b[v];break}},"anonymous"),table:[A(e,[2,2],{3:1,4:2}),{1:[3]},{5:[1,3],8:[1,4]},A(t,[2,4],{6:5}),A(e,[2,3]),{7:[1,6],8:[1,8],9:7,10:9,11:[1,10],12:[1,11],17:[1,12],19:[1,13],22:[1,14],24:[1,15]},{1:[2,1]},A(t,[2,5]),A(t,[2,6]),A(t,[2,7]),A(t,[2,8]),{13:16,20:r,21:i},{13:20,18:19,20:r,21:i},{13:20,18:21,20:r,21:i},{16:[1,25],20:[1,23],21:[1,24],23:22},{13:20,18:26,20:r,21:i},A(t,[2,9],{14:[1,27],15:[1,28]}),A(u,[2,43]),A(u,[2,44]),A(t,[2,13],{14:[1,29],15:[1,30],27:a}),A(u,[2,41]),{16:[1,34],20:[1,32],21:[1,33],27:a},A(t,[2,22]),A(t,[2,24],{14:[1,35]}),A(t,[2,25],{14:[1,36]}),A(t,[2,26]),{20:n,25:37,26:38,27:a},A(t,[2,10],{15:[1,40]}),{16:[1,41]},A(t,[2,14],{15:[1,42]}),{16:[1,43]},{13:44,20:r,21:i},A(t,[2,17],{14:[1,45]}),A(t,[2,18],{14:[1,46]}),A(t,[2,19]),A(t,[2,27]),A(t,[2,28]),A(t,[2,23],{27:[1,47]}),A(o,[2,29]),{15:[1,48]},{16:[1,49]},A(t,[2,11]),{16:[1,50]},A(t,[2,15]),A(u,[2,42]),A(t,[2,20]),A(t,[2,21]),{20:n,26:51},{16:s,20:l,21:[1,53],28:52,29:54,30:55,31:g,32:C,33:B},A(t,[2,12]),A(t,[2,16]),A(o,[2,30]),A(o,[2,31]),A(o,[2,32]),A(o,[2,33],{30:61,16:s,20:l,31:g,32:C,33:B}),A(E,[2,34]),A(E,[2,36]),A(E,[2,37]),A(E,[2,38]),A(E,[2,39]),A(E,[2,40]),A(E,[2,35])],defaultActions:{6:[2,1]},parseError:y(function(p,m){if(m.recoverable)this.trace(p);else{var f=Error(p);throw f.hash=m,f}},"parseError"),parse:y(function(p){var m=this,f=[0],D=[],w=[null],b=[],F=this.table,v="",S=0,x=0,k=0,T=2,R=1,L=b.slice.call(arguments,1),M=Object.create(this.lexer),U={yy:{}};for(var Y in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Y))U.yy[Y]=this.yy[Y];if(M.setInput(p,U.yy),U.yy.lexer=M,U.yy.parser=this,typeof M.yylloc>"u")M.yylloc={};var H=M.yylloc;b.push(H);var J=M.options&&M.options.ranges;if(typeof U.yy.parseError==="function")this.parseError=U.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function K(TA){f.length=f.length-2*TA,w.length=w.length-TA,b.length=b.length-TA}y(K,"popStack");function O(){var TA=D.pop()||M.lex()||R;if(typeof TA!=="number"){if(TA instanceof Array)D=TA,TA=D.pop();TA=m.symbols_[TA]||TA}return TA}y(O,"lex");var _,z,j,q,CA,tA,lA={},gA,aA,RA,wA;while(!0){if(j=f[f.length-1],this.defaultActions[j])q=this.defaultActions[j];else{if(_===null||typeof _>"u")_=O();q=F[j]&&F[j][_]}if(typeof q>"u"||!q.length||!q[0]){var JA="";wA=[];for(gA in F[j])if(this.terminals_[gA]&&gA>T)wA.push("'"+this.terminals_[gA]+"'");if(M.showPosition)JA="Parse error on line "+(S+1)+`:
|
||
`+M.showPosition()+`
|
||
Expecting `+wA.join(", ")+", got '"+(this.terminals_[_]||_)+"'";else JA="Parse error on line "+(S+1)+": Unexpected "+(_==R?"end of input":"'"+(this.terminals_[_]||_)+"'");this.parseError(JA,{text:M.match,token:this.terminals_[_]||_,line:M.yylineno,loc:H,expected:wA})}if(q[0]instanceof Array&&q.length>1)throw Error("Parse Error: multiple actions possible at state: "+j+", token: "+_);switch(q[0]){case 1:if(f.push(_),w.push(M.yytext),b.push(M.yylloc),f.push(q[1]),_=null,!z){if(x=M.yyleng,v=M.yytext,S=M.yylineno,H=M.yylloc,k>0)k--}else _=z,z=null;break;case 2:if(aA=this.productions_[q[1]][1],lA.$=w[w.length-aA],lA._$={first_line:b[b.length-(aA||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(aA||1)].first_column,last_column:b[b.length-1].last_column},J)lA._$.range=[b[b.length-(aA||1)].range[0],b[b.length-1].range[1]];if(tA=this.performAction.apply(lA,[v,x,S,U.yy,q[1],w,b].concat(L)),typeof tA<"u")return tA;if(aA)f=f.slice(0,-1*aA*2),w=w.slice(0,-1*aA),b=b.slice(0,-1*aA);f.push(this.productions_[q[1]][0]),w.push(lA.$),b.push(lA._$),RA=F[f[f.length-2]][f[f.length-1]],f.push(RA);break;case 3:return!0}}return!0},"parse")},I=function(){var Q={EOF:1,parseError:y(function(m,f){if(this.yy.parser)this.yy.parser.parseError(m,f);else throw Error(m)},"parseError"),setInput:y(function(p,m){if(this.yy=m||this.yy||{},this._input=p,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var m=p.match(/(?:\r\n?|\n).*/g);if(m)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),p},"input"),unput:y(function(p){var m=p.length,f=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var D=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1)this.yylineno-=f.length-1;var w=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===D.length?this.yylloc.first_column:0)+D[D.length-f.length].length-f[0].length:this.yylloc.first_column-m},this.options.ranges)this.yylloc.range=[w[0],w[0]+this.yyleng-m];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(p){this.unput(this.match.slice(p))},"less"),pastInput:y(function(){var p=this.matched.substr(0,this.matched.length-this.match.length);return(p.length>20?"...":"")+p.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var p=this.match;if(p.length<20)p+=this._input.substr(0,20-p.length);return(p.substr(0,20)+(p.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var p=this.pastInput(),m=Array(p.length+1).join("-");return p+this.upcomingInput()+`
|
||
`+m+"^"},"showPosition"),test_match:y(function(p,m){var f,D,w;if(this.options.backtrack_lexer){if(w={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)w.yylloc.range=this.yylloc.range.slice(0)}if(D=p[0].match(/(?:\r\n?|\n).*/g),D)this.yylineno+=D.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:D?D[D.length-1].length-D[D.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+p[0].length},this.yytext+=p[0],this.match+=p[0],this.matches=p,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(p[0].length),this.matched+=p[0],f=this.performAction.call(this,this.yy,this,m,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(f)return f;else if(this._backtrack){for(var b in w)this[b]=w[b];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var p,m,f,D;if(!this._more)this.yytext="",this.match="";var w=this._currentRules();for(var b=0;b<w.length;b++)if(f=this._input.match(this.rules[w[b]]),f&&(!m||f[0].length>m[0].length)){if(m=f,D=b,this.options.backtrack_lexer)if(p=this.test_match(f,w[b]),p!==!1)return p;else if(this._backtrack){m=!1;continue}else return!1;else if(!this.options.flex)break}if(m){if(p=this.test_match(m,w[D]),p!==!1)return p;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var m=this.next();if(m)return m;else return this.lex()},"lex"),begin:y(function(m){this.conditionStack.push(m)},"begin"),popState:y(function(){var m=this.conditionStack.length-1;if(m>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(m){if(m=this.conditionStack.length-1-Math.abs(m||0),m>=0)return this.conditionStack[m];else return"INITIAL"},"topState"),pushState:y(function(m){this.begin(m)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(m,f,D,w){var b=w;switch(D){case 0:break;case 1:break;case 2:break;case 3:if(m.getIndentMode&&m.getIndentMode())return m.consumeIndentText=!0,this.begin("INITIAL"),22;break;case 4:break;case 5:if(m.setIndentMode)m.setIndentMode(!1);this.begin("INITIAL"),this.unput(f.yytext);break;case 6:return this.begin("bol"),8;break;case 7:break;case 8:break;case 9:return 7;case 10:return 11;case 11:return 5;case 12:return 12;case 13:return 17;case 14:if(m.consumeIndentText)m.consumeIndentText=!1;else return 19;break;case 15:return 24;case 16:return f.yytext=f.yytext.slice(2,-2),14;break;case 17:return f.yytext=f.yytext.slice(1,-1).trim(),14;break;case 18:return 16;case 19:return 31;case 20:return 33;case 21:return 32;case 22:return 20;case 23:return 21;case 24:return 27;case 25:return 15}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[ \t]+(?=[\n\r]))/i,/^(?:[ \t]+(?=text\b))/i,/^(?:[ \t]+)/i,/^(?:[^ \t\n\r])/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[ \t]+)/i,/^(?:$)/i,/^(?:title\s[^#\n;]+)/i,/^(?:venn-beta\b)/i,/^(?:set\b)/i,/^(?:union\b)/i,/^(?:text\b)/i,/^(?:style\b)/i,/^(?:\["[^\"]*"\])/i,/^(?:\[[^\]\"]+\])/i,/^(?:[+-]?(\d+(\.\d+)?|\.\d+))/i,/^(?:#[0-9a-fA-F]{3,8})/i,/^(?:rgba\(\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*\))/i,/^(?:rgb\(\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*\))/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:"[^\"]*")/i,/^(?:,)/i,/^(?::)/i],conditions:{bol:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:!0},INITIAL:{rules:[0,1,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:!0}}};return Q}();d.lexer=I;function h(){this.yy={}}return y(h,"Parser"),h.prototype=d,d.Parser=h,new h}();$BA.parser=$BA;THt=$BA,AEA=[],eEA=[],tEA=[],rEA=new Set,YHt=y((A,e,t)=>{let r=gP(A).sort(),i=t??10/Math.pow(A.length,2);if(iEA=r,r.length===1)rEA.add(r[0]);AEA.push({sets:r,size:i,label:e?F7(e):void 0})},"addSubsetData"),HHt=y(()=>AEA,"getSubsetData"),F7=y((A)=>{let e=A.trim();if(e.length>=2&&e.startsWith('"')&&e.endsWith('"'))return e.slice(1,-1);return e},"normalizeText"),KHt=y((A)=>A?F7(A):A,"normalizeStyleValue"),JHt=y((A,e,t)=>{let r=F7(e);eEA.push({sets:gP(A).sort(),id:r,label:t?F7(t):void 0})},"addTextData"),OHt=y((A,e)=>{let t=gP(A).sort(),r={};for(let[i,u]of e)r[i]=KHt(u)??u;tEA.push({targets:t,styles:r})},"addStyleData"),PHt=y(()=>tEA,"getStyleData"),gP=y((A)=>A.map((e)=>F7(e)),"normalizeIdentifierList"),_Ht=y((A)=>{let t=gP(A).filter((r)=>!rEA.has(r));if(t.length>0)throw Error(`unknown set identifier: ${t.join(", ")}`)},"validateUnionIdentifiers"),WHt=y(()=>eEA,"getTextData"),qHt=y(()=>iEA,"getCurrentSets"),zHt=y(()=>uEA,"getIndentMode"),ZHt=y((A)=>{uEA=A},"setIndentMode"),VHt=ur.venn;y(d0e,"getConfig");jHt=y(()=>{sr(),AEA.length=0,eEA.length=0,tEA.length=0,rEA.clear(),iEA=void 0,uEA=!1},"customClear"),XHt={getConfig:d0e,clear:jHt,setAccTitle:Dr,getAccTitle:vr,setDiagramTitle:Mr,getDiagramTitle:xr,getAccDescription:Fr,setAccDescription:kr,addSubsetData:YHt,getSubsetData:HHt,addTextData:JHt,addStyleData:OHt,validateUnionIdentifiers:_Ht,getTextData:WHt,getStyleData:PHt,getCurrentSets:qHt,getIndentMode:zHt,setIndentMode:ZHt},$Ht=y((A)=>`
|
||
.venn-title {
|
||
font-size: 32px;
|
||
fill: ${A.vennTitleTextColor};
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
.venn-circle text {
|
||
font-size: 48px;
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
.venn-intersection text {
|
||
font-size: 48px;
|
||
fill: ${A.vennSetTextColor};
|
||
font-family: ${A.fontFamily};
|
||
}
|
||
|
||
.venn-text-node {
|
||
font-family: ${A.fontFamily};
|
||
color: ${A.vennSetTextColor};
|
||
}
|
||
`,"getStyles"),AKt=$Ht;y(I0e,"buildStyleByKey");eKt=y((A,e,t,r)=>{let i=r.db,u=i.getConfig?.(),{themeVariables:a,look:n,handDrawnSeed:o}=st(),s=n==="handDrawn",l=[a.venn1,a.venn2,a.venn3,a.venn4,a.venn5,a.venn6,a.venn7,a.venn8].filter(Boolean),g=i.getDiagramTitle?.(),C=i.getSubsetData(),B=i.getTextData(),E=I0e(i.getStyleData()),d=Q0e(C),I=u?.width??800,h=u?.height??450,Q=1600,p=I/1600,m=g?48*p:0,f=a.primaryTextColor??a.textColor,D=zi(e);if(D.attr("viewBox",`0 0 ${I} ${h}`),g)D.append("text").text(g).attr("class","venn-title").attr("font-size",`${32*p}px`).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("x","50%").attr("y",32*p).style("fill",a.vennTitleTextColor||a.titleColor);let w=Qe(document.createElement("div")),b=s0e().width(I).height(h-m);w.datum(d).call(b);let F=s?Ge.svg(w.select("svg").node()):void 0,v=B0e(d,{width:I,height:h-m,padding:u?.padding??15}),S=new Map;for(let R of v){let L=p1([...R.data.sets].sort());S.set(L,R)}if(B.length>0)h0e(u,S,w,B,p,E);let x=uu(a.background||"#f4f4f4");if(w.selectAll(".venn-circle").each(function(R,L){let M=Qe(this),Y=p1([...R.sets].sort()),H=E.get(Y),J=H?.fill||l[L%l.length]||a.primaryColor;M.classed(`venn-set-${L%8}`,!0);let K=H?.["fill-opacity"]??0.1,O=H?.stroke||J,_=H?.["stroke-width"]||`${5*p}`;if(s&&F){let j=S.get(Y);if(j&&j.circles.length>0){let q=j.circles[0],CA=F.circle(q.x,q.y,q.radius*2,{roughness:0.7,seed:o,fill:gR(J,0.7),fillStyle:"hachure",fillWeight:2,hachureGap:8,hachureAngle:-41+L*60,stroke:O,strokeWidth:parseFloat(String(_))});M.select("path").remove(),M.node()?.insertBefore(CA,M.select("text").node())}}else M.select("path").style("fill",J).style("fill-opacity",K).style("stroke",O).style("stroke-width",_).style("stroke-opacity",0.95);let z=H?.color||(x?Ie(J,30):he(J,30));M.select("text").style("font-size",`${48*p}px`).style("fill",z)}),s&&F)w.selectAll(".venn-intersection").each(function(R){let L=Qe(this),U=p1([...R.sets].sort()),Y=E.get(U),H=Y?.fill;if(H){let J=L.select("path"),K=J.attr("d");if(K){let O=F.path(K,{roughness:0.7,seed:o,fill:gR(H,0.3),fillStyle:"cross-hatch",fillWeight:2,hachureGap:6,hachureAngle:60,stroke:"none"}),_=J.node();_?.parentNode?.insertBefore(O,_),J.remove()}}else L.select("path").style("fill-opacity",0);L.select("text").style("font-size",`${48*p}px`).style("fill",Y?.color??a.vennSetTextColor??f)});else w.selectAll(".venn-intersection text").style("font-size",`${48*p}px`).style("fill",(R)=>{let M=p1([...R.sets].sort());return E.get(M)?.color??a.vennSetTextColor??f}),w.selectAll(".venn-intersection path").style("fill-opacity",(R)=>{let M=p1([...R.sets].sort());return E.get(M)?.fill?1:0}).style("fill",(R)=>{let M=p1([...R.sets].sort());return E.get(M)?.fill??"transparent"});let k=D.append("g").attr("transform",`translate(0, ${m})`),T=w.select("svg").node();if(T&&"childNodes"in T)for(let R of[...T.childNodes])k.node()?.appendChild(R);jr(D,h,I,u?.useMaxWidth??!0)},"draw");y(p1,"stableSetsKey");y(h0e,"renderTextNodes");y(Q0e,"ensurePairwiseSubsets");tKt={draw:eKt},p0e={parser:THt,db:XHt,renderer:tKt,styles:AKt}});function D0e(A){if(!A.length)return[];let e=[],t=[];return A.forEach((r)=>{let i={name:r.name,children:r.type==="Leaf"?void 0:[]};if(i.classSelector=r?.classSelector,r?.cssCompiledStyles)i.cssCompiledStyles=r.cssCompiledStyles;if(r.type==="Leaf"&&r.value!==void 0)i.value=r.value;while(t.length>0&&t[t.length-1].level>=r.level)t.pop();if(t.length===0)e.push(i);else{let u=t[t.length-1].node;if(u.children)u.children.push(i);else u.children=[i]}if(r.type!=="Leaf")t.push({node:i,level:r.level})}),e}var m0e,rKt,iKt,y0e,uKt=10,P6=10,x7=25,aKt,nKt,oKt,sKt,lKt,gKt,w0e;var b0e=P(()=>{ws();cn();fl();e0();ai();rr();ir();Nt();E0();Pr();m0e=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=Dr,this.getAccTitle=vr,this.setDiagramTitle=Mr,this.getDiagramTitle=xr,this.getAccDescription=Fr,this.setAccDescription=kr}static{y(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let A=ur,e=st();return si({...A.treemap,...e.treemap??{}})}addNode(A,e){if(this.nodes.push(A),this.levels.set(A,e),e===0)this.outerNodes.push(A),this.root??=A}getRoot(){return{name:"",children:this.outerNodes}}addClass(A,e){let t=this.classes.get(A)??{id:A,styles:[],textStyles:[]},r=e.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");if(r)r.forEach((i)=>{if(bv(i))if(t?.textStyles)t.textStyles.push(i);else t.textStyles=[i];if(t?.styles)t.styles.push(i);else t.styles=[i]});this.classes.set(A,t)}getClasses(){return this.classes}getStylesForClass(A){return this.classes.get(A)?.styles??[]}clear(){sr(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};y(D0e,"buildHierarchy");rKt=y((A,e)=>{hu(A,e);let t=[];for(let u of A.TreemapRows??[])if(u.$type==="ClassDefStatement")e.addClass(u.className??"",u.styleText??"");for(let u of A.TreemapRows??[]){let a=u.item;if(!a)continue;let n=u.indent?parseInt(u.indent):0,o=iKt(a),s=a.classSelector?e.getStylesForClass(a.classSelector):[],l=s.length>0?s:void 0,g={level:n,name:o,type:a.$type,value:a.value,classSelector:a.classSelector,cssCompiledStyles:l};t.push(g)}let r=D0e(t),i=y((u,a)=>{for(let n of u)if(e.addNode(n,a),n.children&&n.children.length>0)i(n.children,a+1)},"addNodesRecursively");i(r,0)},"populate"),iKt=y((A)=>A.name?String(A.name):"","getItemName"),y0e={parser:{yy:void 0},parse:y(async(A)=>{try{let t=await Ma("treemap",A);sA.debug("Treemap AST:",t);let r=y0e.parser?.yy;if(!(r instanceof m0e))throw Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");rKt(t,r)}catch(e){throw sA.error("Error parsing treemap:",e),e}},"parse")},aKt=y((A,e,t,r)=>{let i=r.db,u=i.getConfig(),a=u.padding??uKt,n=i.getDiagramTitle(),o=i.getRoot(),{themeVariables:s}=st();if(!o)return;let l=n?30:0,g=zi(e),C=u.nodeWidth?u.nodeWidth*P6:960,B=u.nodeHeight?u.nodeHeight*P6:500,E=C,d=B+l;g.attr("viewBox",`0 0 ${E} ${d}`),jr(g,d,E,u.useMaxWidth);let I;try{let K=u.valueFormat||",";if(K==="$0,0")I=y((O)=>"$"+nE(",")(O),"valueFormat");else if(K.startsWith("$")&&K.includes(",")){let O=/\.\d+/.exec(K),_=O?O[0]:"";I=y((z)=>"$"+nE(","+_)(z),"valueFormat")}else if(K.startsWith("$")){let O=K.substring(1);I=y((_)=>"$"+nE(O||"")(_),"valueFormat")}else I=nE(K)}catch(K){sA.error("Error creating format function:",K),I=nE(",")}let h=eg().range(["transparent",s.cScale0,s.cScale1,s.cScale2,s.cScale3,s.cScale4,s.cScale5,s.cScale6,s.cScale7,s.cScale8,s.cScale9,s.cScale10,s.cScale11]),Q=eg().range(["transparent",s.cScalePeer0,s.cScalePeer1,s.cScalePeer2,s.cScalePeer3,s.cScalePeer4,s.cScalePeer5,s.cScalePeer6,s.cScalePeer7,s.cScalePeer8,s.cScalePeer9,s.cScalePeer10,s.cScalePeer11]),p=eg().range([s.cScaleLabel0,s.cScaleLabel1,s.cScaleLabel2,s.cScaleLabel3,s.cScaleLabel4,s.cScaleLabel5,s.cScaleLabel6,s.cScaleLabel7,s.cScaleLabel8,s.cScaleLabel9,s.cScaleLabel10,s.cScaleLabel11]);if(n)g.append("text").attr("x",E/2).attr("y",l/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(n);let m=g.append("g").attr("transform",`translate(0, ${l})`).attr("class","treemapContainer"),f=YD(o).sum((K)=>K.value??0).sort((K,O)=>(O.value??0)-(K.value??0)),w=HN().size([C,B]).paddingTop((K)=>K.children&&K.children.length>0?x7+P6:0).paddingInner(a).paddingLeft((K)=>K.children&&K.children.length>0?P6:0).paddingRight((K)=>K.children&&K.children.length>0?P6:0).paddingBottom((K)=>K.children&&K.children.length>0?P6:0).round(!0)(f),b=w.descendants().filter((K)=>K.children&&K.children.length>0),F=m.selectAll(".treemapSection").data(b).enter().append("g").attr("class","treemapSection").attr("transform",(K)=>`translate(${K.x0},${K.y0})`);if(F.append("rect").attr("width",(K)=>K.x1-K.x0).attr("height",x7).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",0.6).attr("stroke-width",0.6).attr("style",(K)=>{if(K.depth===0)return"display: none;";return""}),F.append("clipPath").attr("id",(K,O)=>`clip-section-${e}-${O}`).append("rect").attr("width",(K)=>Math.max(0,K.x1-K.x0-12)).attr("height",x7),F.append("rect").attr("width",(K)=>K.x1-K.x0).attr("height",(K)=>K.y1-K.y0).attr("class",(K,O)=>`treemapSection section${O}`).attr("fill",(K)=>h(K.data.name)).attr("fill-opacity",0.6).attr("stroke",(K)=>Q(K.data.name)).attr("stroke-width",2).attr("stroke-opacity",0.4).attr("style",(K)=>{if(K.depth===0)return"display: none;";let O=bt({cssCompiledStyles:K.data.cssCompiledStyles});return O.nodeStyles+";"+O.borderStyles.join(";")}),F.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",x7/2).attr("dominant-baseline","middle").text((K)=>K.depth===0?"":K.data.name).attr("font-weight","bold").attr("clip-path",(K,O)=>`url(#clip-section-${e}-${O})`).attr("style",(K)=>{if(K.depth===0)return"display: none;";let O="dominant-baseline: middle; font-size: 12px; fill:"+p(K.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",_=bt({cssCompiledStyles:K.data.cssCompiledStyles});return O+_.labelStyles.replace("color:","fill:")}).each(function(K){if(K.depth===0)return;let O=Qe(this),_=K.data.name;O.text(_);let z=K.x1-K.x0,j=6,q;if(u.showValues!==!1&&K.value){let aA=z-10,RA=30,wA=10;q=aA-30-10-j}else q=z-j-6;let tA=Math.max(15,q),lA=O.node();if(lA.getComputedTextLength()>tA){let RA=_;while(RA.length>0){if(RA=_.substring(0,RA.length-1),RA.length===0){if(O.text("..."),lA.getComputedTextLength()>tA)O.text("");break}if(O.text(RA+"..."),lA.getComputedTextLength()<=tA)break}}}),u.showValues!==!1)F.append("text").attr("class","treemapSectionValue").attr("x",(K)=>K.x1-K.x0-10).attr("y",x7/2).attr("text-anchor","end").attr("dominant-baseline","middle").text((K)=>K.value?I(K.value):"").attr("font-style","italic").attr("style",(K)=>{if(K.depth===0)return"display: none;";let O="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+p(K.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",_=bt({cssCompiledStyles:K.data.cssCompiledStyles});return O+_.labelStyles.replace("color:","fill:")});let v=w.leaves(),S=v.length>20,x=S?16:38,k=S?14:28,T=S?4:8,R=S?4:6,L=S?2:4,M=S?8:10,U=S?1:2,Y=m.selectAll(".treemapLeafGroup").data(v).enter().append("g").attr("class",(K,O)=>`treemapNode treemapLeafGroup leaf${O}${K.data.classSelector?` ${K.data.classSelector}`:""}x`).attr("transform",(K)=>`translate(${K.x0},${K.y0})`);if(Y.append("rect").attr("width",(K)=>K.x1-K.x0).attr("height",(K)=>K.y1-K.y0).attr("class","treemapLeaf").attr("fill",(K)=>K.parent?h(K.parent.data.name):h(K.data.name)).attr("style",(K)=>bt({cssCompiledStyles:K.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",0.3).attr("stroke",(K)=>K.parent?h(K.parent.data.name):h(K.data.name)).attr("stroke-width",3),Y.append("clipPath").attr("id",(K,O)=>`clip-${e}-${O}`).append("rect").attr("width",(K)=>Math.max(0,K.x1-K.x0-4)).attr("height",(K)=>Math.max(0,K.y1-K.y0-4)),Y.append("text").attr("class","treemapLabel").attr("x",(K)=>(K.x1-K.x0)/2).attr("y",(K)=>(K.y1-K.y0)/2).attr("style",(K)=>{let O=`text-anchor: middle; dominant-baseline: middle; font-size: ${x}px;fill:`+p(K.data.name)+";",_=bt({cssCompiledStyles:K.data.cssCompiledStyles});return O+_.labelStyles.replace("color:","fill:")}).attr("clip-path",(K,O)=>`url(#clip-${e}-${O})`).text((K)=>K.data.name).each(function(K){let O=Qe(this),_=K.x1-K.x0,z=K.y1-K.y0,j=O.node(),q=_-2*L,CA=z-2*L;if(q<M||CA<M){O.style("display","none");return}let tA=parseInt(O.style("font-size"),10),lA=0.6;while(j.getComputedTextLength()>q&&tA>T)tA--,O.style("font-size",`${tA}px`);let gA=Math.max(R,Math.min(k,Math.round(tA*lA))),aA=tA+U+gA;while(aA>CA&&tA>T){if(tA--,gA=Math.max(R,Math.min(k,Math.round(tA*lA))),gA<R&&tA===T)break;if(O.style("font-size",`${tA}px`),aA=tA+U+gA,gA<=R&&aA>CA);}if(O.style("font-size",`${tA}px`),S){if(tA<T||CA<T)O.style("display","none")}else if(j.getComputedTextLength()>q||tA<T||CA<tA)O.style("display","none")}),u.showValues!==!1)Y.append("text").attr("class","treemapValue").attr("x",(O)=>(O.x1-O.x0)/2).attr("y",function(O){return(O.y1-O.y0)/2}).attr("style",(O)=>{let _=`text-anchor: middle; dominant-baseline: hanging; font-size: ${k}px;fill:`+p(O.data.name)+";",z=bt({cssCompiledStyles:O.data.cssCompiledStyles});return _+z.labelStyles.replace("color:","fill:")}).attr("clip-path",(O,_)=>`url(#clip-${e}-${_})`).text((O)=>O.value?I(O.value):"").each(function(O){let _=Qe(this),z=this.parentNode;if(!z){_.style("display","none");return}let j=Qe(z).select(".treemapLabel");if(j.empty()||j.style("display")==="none"){_.style("display","none");return}let q=parseFloat(j.style("font-size")),tA=Math.max(R,Math.min(k,Math.round(q*0.6)));_.style("font-size",`${tA}px`);let gA=(O.y1-O.y0)/2+q/2+U;_.attr("y",gA);let aA=O.x1-O.x0,JA=O.y1-O.y0-4,TA=aA-2*L;if(_.node().getComputedTextLength()>TA||gA+tA>JA||tA<R)_.style("display","none");else _.style("display",null)});let J=u.diagramPadding??8;pl(g,J,"flowchart",u?.useMaxWidth||!1)},"draw"),nKt=y(function(A,e){return e.db.getClasses()},"getClasses"),oKt={draw:aKt,getClasses:nKt},sKt={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},lKt=y(({treemap:A}={})=>{let e=R0(),t=st(),r=si(e,t.themeVariables),i=si(sKt,A),u=i.titleColor??r.titleColor,a=i.labelColor??r.textColor,n=i.valueColor??r.textColor;return`
|
||
.treemapNode.section {
|
||
stroke: ${i.sectionStrokeColor};
|
||
stroke-width: ${i.sectionStrokeWidth};
|
||
fill: ${i.sectionFillColor};
|
||
}
|
||
.treemapNode.leaf {
|
||
stroke: ${i.leafStrokeColor};
|
||
stroke-width: ${i.leafStrokeWidth};
|
||
fill: ${i.leafFillColor};
|
||
}
|
||
.treemapLabel {
|
||
fill: ${a};
|
||
font-size: ${i.labelFontSize};
|
||
}
|
||
.treemapValue {
|
||
fill: ${n};
|
||
font-size: ${i.valueFontSize};
|
||
}
|
||
.treemapTitle {
|
||
fill: ${u};
|
||
font-size: ${i.titleFontSize};
|
||
}
|
||
`},"getStyles"),gKt=lKt,w0e={parser:y0e,get db(){return new m0e},renderer:oKt,styles:gKt}});function F0e(){return OA()["wardley-beta"]}function x0e(A,e,t,r,i,u,a,n,o){_0.addNode({id:A,label:e,x:t,y:r,className:i,labelOffsetX:u,labelOffsetY:a,inertia:n,sourceStrategy:o})}function S0e(A,e,t=!1,r,i){_0.addLink({source:A,target:e,dashed:t,label:r,flow:i})}function L0e(A,e,t){_0.addTrend({nodeId:A,targetX:e,targetY:t})}function R0e(A,e,t){_0.addAnnotation({number:A,coordinates:e,text:t})}function N0e(A,e,t){_0.addNote({text:A,x:e,y:t})}function G0e(A,e,t){_0.addAccelerator({name:A,x:e,y:t})}function U0e(A,e,t){_0.addDeaccelerator({name:A,x:e,y:t})}function M0e(A,e){_0.setAnnotationsBox(A,e)}function T0e(A,e){_0.setSize(A,e)}function Y0e(A){_0.startPipeline(A)}function H0e(A,e){_0.addPipelineComponent(A,e)}function K0e(A){_0.setAxes(A)}function J0e(A){return _0.getNode(A)}function O0e(A){return _0.resolveNodeId(A)}function P0e(){return _0.build()}function _0e(){_0.clear(),sr()}var cP,vm,v0e,cKt,CKt,k0e,BKt,_0,EKt,dKt,IKt,hKt,QKt,pKt,fKt,W0e;var q0e=P(()=>{ws();cn();ai();rr();ir();Nt();E0();cP=y((A,e)=>{let t=A<=1?A*100:A;if(t<0||t>100)throw Error(`${e} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${A}`);return t},"toPercent"),vm=y((A,e,t)=>({x:cP(e,`${t} evolution`),y:cP(A,`${t} visibility`)}),"toCoordinates"),v0e=y((A)=>{if(!A)return;if(A==="+<>")return"bidirectional";if(A==="+<")return"backward";if(A==="+>")return"forward";return},"getFlowFromPort"),cKt=y((A)=>{if(!A?.startsWith("+"))return{};let t=/^\+'([^']*)'/.exec(A)?.[1];if(A.includes("<>"))return{flow:"bidirectional",label:t};if(A.includes("<"))return{flow:"backward",label:t};if(A.includes(">"))return{flow:"forward",label:t};return{label:t}},"extractFlowFromArrow"),CKt=y((A,e)=>{if(hu(A,e),A.size)e.setSize(A.size.width,A.size.height);if(A.evolution){let t=A.evolution.stages.map((i)=>{if(i.secondName)return`${i.name.trim()} / ${i.secondName.trim()}`;return i.name.trim()}),r=A.evolution.stages.filter((i)=>i.boundary!==void 0).map((i)=>i.boundary);e.updateAxes({stages:t,stageBoundaries:r})}if(A.anchors.forEach((t)=>{let r=vm(t.visibility,t.evolution,`Anchor "${t.name}"`);e.addNode(t.name,t.name,r.x,r.y,"anchor")}),A.components.forEach((t)=>{let r=vm(t.visibility,t.evolution,`Component "${t.name}"`),i=t.label?(t.label.negX?-1:1)*t.label.offsetX:void 0,u=t.label?(t.label.negY?-1:1)*t.label.offsetY:void 0,a=t.decorator?.strategy;e.addNode(t.name,t.name,r.x,r.y,"component",i,u,t.inertia,a)}),A.notes.forEach((t)=>{let r=vm(t.visibility,t.evolution,`Note "${t.text}"`);e.addNote(t.text,r.x,r.y)}),A.pipelines.forEach((t)=>{let r=e.getNode(t.parent);if(!r||typeof r.y!=="number")throw Error(`Pipeline "${t.parent}" must reference an existing component with coordinates.`);let i=r.y;e.startPipeline(t.parent),t.components.forEach((u)=>{let a=`${t.parent}_${u.name}`,n=u.label?(u.label.negX?-1:1)*u.label.offsetX:void 0,o=u.label?(u.label.negY?-1:1)*u.label.offsetY:void 0,s=cP(u.evolution,`Pipeline component "${u.name}" evolution`);e.addNode(a,u.name,s,i,"pipeline-component",n,o),e.addPipelineComponent(t.parent,a)})}),A.links.forEach((t)=>{let r=!!t.arrow&&(t.arrow.includes("-.->")||t.arrow.includes(".-.")),i=v0e(t.fromPort)??v0e(t.toPort),{flow:u,label:a}=cKt(t.arrow);if(!i&&u)i=u;let n=t.linkLabel,o=a??n;e.addLink(e.resolveNodeId(t.from),e.resolveNodeId(t.to),r,o,i)}),A.evolves.forEach((t)=>{let r=e.getNode(t.component);if(r?.y!==void 0){let i=cP(t.target,`Evolve target for "${t.component}"`);e.addTrend(t.component,i,r.y)}}),A.annotations.length>0){let t=A.annotations[0],r=vm(t.x,t.y,"Annotations box");e.setAnnotationsBox(r.x,r.y)}A.annotation.forEach((t)=>{let r=vm(t.x,t.y,`Annotation ${t.number}`);e.addAnnotation(t.number,[{x:r.x,y:r.y}],t.text)}),A.accelerators.forEach((t)=>{let r=vm(t.x,t.y,`Accelerator "${t.name}"`);e.addAccelerator(t.name,r.x,r.y)}),A.deaccelerators.forEach((t)=>{let r=vm(t.x,t.y,`Deaccelerator "${t.name}"`);e.addDeaccelerator(t.name,r.x,r.y)})},"populateDb"),k0e={parser:{yy:void 0},parse:y(async(A)=>{let e=await Ma("wardley",A);sA.debug(e);let t=k0e.parser?.yy;if(!t||typeof t.addNode!=="function")throw Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");CKt(e,t)},"parse")},BKt=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{y(this,"WardleyBuilder")}addNode(A){let e=this.nodes.get(A.id)??{id:A.id,label:A.label},t={...e,...A,className:A.className??e.className,labelOffsetX:A.labelOffsetX??e.labelOffsetX,labelOffsetY:A.labelOffsetY??e.labelOffsetY};this.nodes.set(A.id,t)}addLink(A){this.links.push(A)}addTrend(A){this.trends.set(A.nodeId,A)}startPipeline(A){this.pipelines.set(A,{nodeId:A,componentIds:[]});let e=this.nodes.get(A);if(e)e.isPipelineParent=!0}addPipelineComponent(A,e){let t=this.pipelines.get(A);if(t)t.componentIds.push(e);let r=this.nodes.get(e);if(r)r.inPipeline=!0}addAnnotation(A){this.annotations.push(A)}addNote(A){this.notes.push(A)}addAccelerator(A){this.accelerators.push(A)}addDeaccelerator(A){this.deaccelerators.push(A)}setAnnotationsBox(A,e){this.annotationsBox={x:A,y:e}}setAxes(A){this.axes={...this.axes,...A}}setSize(A,e){this.size={width:A,height:e}}getNode(A){return this.nodes.get(A)}resolveNodeId(A){if(this.nodes.has(A))return A;for(let[e,t]of this.nodes)if(t.label===A)return e;return A}build(){let A=[];for(let e of this.nodes.values()){if(typeof e.x!=="number"||typeof e.y!=="number")throw Error(`Node "${e.label}" is missing coordinates`);A.push(e)}return{nodes:A,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},_0=new BKt;y(F0e,"getConfig");y(x0e,"addNode");y(S0e,"addLink");y(L0e,"addTrend");y(R0e,"addAnnotation");y(N0e,"addNote");y(G0e,"addAccelerator");y(U0e,"addDeaccelerator");y(M0e,"setAnnotationsBox");y(T0e,"setSize");y(Y0e,"startPipeline");y(H0e,"addPipelineComponent");y(K0e,"updateAxes");y(J0e,"getNode");y(O0e,"resolveNodeId");y(P0e,"getWardleyData");y(_0e,"clear");EKt={getConfig:F0e,addNode:x0e,addLink:S0e,addTrend:L0e,addAnnotation:R0e,addNote:N0e,addAccelerator:G0e,addDeaccelerator:U0e,setAnnotationsBox:M0e,setSize:T0e,startPipeline:Y0e,addPipelineComponent:H0e,updateAxes:K0e,getNode:J0e,resolveNodeId:O0e,getWardleyData:P0e,clear:_0e,setAccTitle:Dr,getAccTitle:vr,setDiagramTitle:Mr,getDiagramTitle:xr,getAccDescription:Fr,setAccDescription:kr},dKt=["Genesis","Custom Built","Product","Commodity"],IKt=y(()=>{let{themeVariables:A}=OA();return{backgroundColor:A.wardley?.backgroundColor??A.background??"#fff",axisColor:A.wardley?.axisColor??"#000",axisTextColor:A.wardley?.axisTextColor??A.primaryTextColor??"#222",gridColor:A.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:A.wardley?.componentFill??"#fff",componentStroke:A.wardley?.componentStroke??"#000",componentLabelColor:A.wardley?.componentLabelColor??A.primaryTextColor??"#222",linkStroke:A.wardley?.linkStroke??"#000",evolutionStroke:A.wardley?.evolutionStroke??"#dc3545",annotationStroke:A.wardley?.annotationStroke??"#000",annotationTextColor:A.wardley?.annotationTextColor??A.primaryTextColor??"#222",annotationFill:A.wardley?.annotationFill??A.background??"#fff"}},"getTheme"),hKt=y(()=>{let A=OA()["wardley-beta"];return{width:A?.width??900,height:A?.height??600,padding:A?.padding??48,nodeRadius:A?.nodeRadius??6,nodeLabelOffset:A?.nodeLabelOffset??8,axisFontSize:A?.axisFontSize??12,labelFontSize:A?.labelFontSize??10,showGrid:A?.showGrid??!1,useMaxWidth:A?.useMaxWidth??!0}},"getConfigValues"),QKt=y((A,e,t,r)=>{sA.debug(`Rendering Wardley map
|
||
`+A);let i=hKt(),u=IKt(),a=i.nodeRadius*1.6,n=r.db,o=n.getWardleyData(),s=n.getDiagramTitle(),l=o.size?.width??i.width,g=o.size?.height??i.height,C=zi(e);C.selectAll("*").remove(),jr(C,g,l,i.useMaxWidth),C.attr("viewBox",`0 0 ${l} ${g}`);let B=C.append("g").attr("class","wardley-map"),E=C.append("defs");E.append("marker").attr("id",`arrow-${e}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",u.evolutionStroke).attr("stroke","none"),E.append("marker").attr("id",`link-arrow-end-${e}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",u.linkStroke).attr("stroke","none"),E.append("marker").attr("id",`link-arrow-start-${e}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",u.linkStroke).attr("stroke","none"),B.append("rect").attr("class","wardley-background").attr("width",l).attr("height",g).attr("fill",u.backgroundColor);let d=l-i.padding*2,I=g-i.padding*2;if(s)B.append("text").attr("class","wardley-title").attr("x",l/2).attr("y",i.padding/2).attr("fill",u.axisTextColor).attr("font-size",i.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(s);let h=y((U)=>i.padding+U/100*d,"projectX"),Q=y((U)=>g-i.padding-U/100*I,"projectY"),p=B.append("g").attr("class","wardley-axes");p.append("line").attr("x1",i.padding).attr("x2",l-i.padding).attr("y1",g-i.padding).attr("y2",g-i.padding).attr("stroke",u.axisColor).attr("stroke-width",1),p.append("line").attr("x1",i.padding).attr("x2",i.padding).attr("y1",i.padding).attr("y2",g-i.padding).attr("stroke",u.axisColor).attr("stroke-width",1);let m=o.axes.xLabel??"Evolution",f=o.axes.yLabel??"Visibility";p.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",i.padding+d/2).attr("y",g-i.padding/4).attr("fill",u.axisTextColor).attr("font-size",i.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(m),p.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",i.padding/3).attr("y",i.padding+I/2).attr("fill",u.axisTextColor).attr("font-size",i.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${i.padding/3} ${i.padding+I/2})`).text(f);let D=o.axes.stages&&o.axes.stages.length>0?o.axes.stages:dKt;if(D.length>0){let U=B.append("g").attr("class","wardley-stages"),Y=o.axes.stageBoundaries,H=[];if(Y&&Y.length===D.length){let J=0;Y.forEach((K)=>{H.push({start:J,end:K}),J=K})}else{let J=1/D.length;D.forEach((K,O)=>{H.push({start:O*J,end:(O+1)*J})})}D.forEach((J,K)=>{let O=H[K],_=i.padding+O.start*d,z=i.padding+O.end*d,j=(_+z)/2;if(K>0)U.append("line").attr("x1",_).attr("x2",_).attr("y1",i.padding).attr("y2",g-i.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",0.8);U.append("text").attr("class","wardley-stage-label").attr("x",j).attr("y",g-i.padding/1.5).attr("fill",u.axisTextColor).attr("font-size",i.axisFontSize-2).attr("text-anchor","middle").text(J)})}if(i.showGrid){let U=B.append("g").attr("class","wardley-grid");for(let Y=1;Y<4;Y++){let H=Y/4,J=i.padding+d*H;U.append("line").attr("x1",J).attr("x2",J).attr("y1",i.padding).attr("y2",g-i.padding).attr("stroke",u.gridColor).attr("stroke-dasharray","2 6"),U.append("line").attr("x1",i.padding).attr("x2",l-i.padding).attr("y1",g-i.padding-I*H).attr("y2",g-i.padding-I*H).attr("stroke",u.gridColor).attr("stroke-dasharray","2 6")}}let w=new Map;if(o.nodes.forEach((U)=>{w.set(U.id,{x:h(U.x),y:Q(U.y),node:U})}),o.pipelines.length>0){let U=B.append("g").attr("class","wardley-pipelines"),Y=B.append("g").attr("class","wardley-pipeline-links");o.pipelines.forEach((H)=>{if(H.componentIds.length===0)return;let J=H.componentIds.map((z)=>({id:z,pos:w.get(z),node:o.nodes.find((j)=>j.id===z)})).filter((z)=>z.pos&&z.node).sort((z,j)=>z.node.x-j.node.x);for(let z=0;z<J.length-1;z++){let j=J[z],q=J[z+1];Y.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",j.pos.x).attr("y1",j.pos.y).attr("x2",q.pos.x).attr("y2",q.pos.y).attr("stroke",u.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let K=1/0,O=-1/0,_=0;if(H.componentIds.forEach((z)=>{let j=w.get(z);if(j)K=Math.min(K,j.x),O=Math.max(O,j.x),_=j.y}),K!==1/0&&O!==-1/0){let j=i.nodeRadius*4,q=_-j/2,CA=w.get(H.nodeId);if(CA){let tA=(K+O)/2;CA.x=tA,CA.y=q-a/6}U.append("rect").attr("class","wardley-pipeline-box").attr("x",K-15).attr("y",q).attr("width",O-K+30).attr("height",j).attr("fill","none").attr("stroke",u.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}let b=B.append("g").attr("class","wardley-links"),F=new Map;o.pipelines.forEach((U)=>{F.set(U.nodeId,new Set(U.componentIds))});let v=o.links.filter((U)=>{if(!w.has(U.source)||!w.has(U.target))return!1;if(F.get(U.target)?.has(U.source))return!1;return!0});b.selectAll("line").data(v).enter().append("line").attr("class",(U)=>`wardley-link${U.dashed?" wardley-link--dashed":""}`).attr("x1",(U)=>{let Y=w.get(U.source),H=w.get(U.target),K=o.nodes.find((j)=>j.id===U.source).isPipelineParent?a/Math.sqrt(2):i.nodeRadius,O=H.x-Y.x,_=H.y-Y.y,z=Math.sqrt(O*O+_*_);return Y.x+O/z*K}).attr("y1",(U)=>{let Y=w.get(U.source),H=w.get(U.target),K=o.nodes.find((j)=>j.id===U.source).isPipelineParent?a/Math.sqrt(2):i.nodeRadius,O=H.x-Y.x,_=H.y-Y.y,z=Math.sqrt(O*O+_*_);return Y.y+_/z*K}).attr("x2",(U)=>{let Y=w.get(U.source),H=w.get(U.target),K=o.nodes.find((j)=>j.id===U.target).isPipelineParent?a/Math.sqrt(2):i.nodeRadius,O=Y.x-H.x,_=Y.y-H.y,z=Math.sqrt(O*O+_*_);return H.x+O/z*K}).attr("y2",(U)=>{let Y=w.get(U.source),H=w.get(U.target),K=o.nodes.find((j)=>j.id===U.target).isPipelineParent?a/Math.sqrt(2):i.nodeRadius,O=Y.x-H.x,_=Y.y-H.y,z=Math.sqrt(O*O+_*_);return H.y+_/z*K}).attr("stroke",u.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",(U)=>U.dashed?"6 6":null).attr("marker-end",(U)=>{if(U.flow==="forward"||U.flow==="bidirectional")return`url(#link-arrow-end-${e})`;return null}).attr("marker-start",(U)=>{if(U.flow==="backward"||U.flow==="bidirectional")return`url(#link-arrow-start-${e})`;return null}),b.selectAll("text").data(v.filter((U)=>U.label)).enter().append("text").attr("class","wardley-link-label").attr("x",(U)=>{let Y=w.get(U.source),H=w.get(U.target),J=(Y.x+H.x)/2,K=H.y-Y.y,O=H.x-Y.x,_=Math.sqrt(O*O+K*K),z=8,j=K/_;return J+j*8}).attr("y",(U)=>{let Y=w.get(U.source),H=w.get(U.target),J=(Y.y+H.y)/2,K=H.x-Y.x,O=H.y-Y.y,_=Math.sqrt(K*K+O*O),z=8,j=-K/_;return J+j*8}).attr("fill",u.axisTextColor).attr("font-size",i.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",(U)=>{let Y=w.get(U.source),H=w.get(U.target),J=(Y.x+H.x)/2,K=(Y.y+H.y)/2,O=H.x-Y.x,_=H.y-Y.y,z=Math.sqrt(O*O+_*_),j=8,q=_/z,CA=-O/z,tA=J+q*8,lA=K+CA*8,gA=Math.atan2(_,O)*180/Math.PI;if(gA>90||gA<-90)gA+=180;return`rotate(${gA} ${tA} ${lA})`}).text((U)=>U.label);let S=B.append("g").attr("class","wardley-trends"),x=o.trends.map((U)=>{let Y=w.get(U.nodeId);if(!Y)return null;let H=h(U.targetX),J=Q(U.targetY),K=H-Y.x,O=J-Y.y,_=Math.sqrt(K*K+O*O),z=i.nodeRadius+2,j=_>z?H-K/_*z:H,q=_>z?J-O/_*z:J;return{origin:Y,targetX:H,targetY:J,adjustedX2:j,adjustedY2:q}}).filter((U)=>U!==null);S.selectAll("line").data(x).enter().append("line").attr("class","wardley-trend").attr("x1",(U)=>U.origin.x).attr("y1",(U)=>U.origin.y).attr("x2",(U)=>U.adjustedX2).attr("y2",(U)=>U.adjustedY2).attr("stroke",u.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${e})`);let T=B.append("g").attr("class","wardley-nodes").selectAll("g").data(o.nodes).enter().append("g").attr("class",(U)=>["wardley-node",U.className?`wardley-node--${U.className}`:""].filter(Boolean).join(" "));T.filter((U)=>U.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius*2).attr("fill","#666").attr("stroke",u.componentStroke).attr("stroke-width",1),T.filter((U)=>U.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius*2).attr("fill","#ccc").attr("stroke",u.componentStroke).attr("stroke-width",1),T.filter((U)=>U.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);let R=T.filter((U)=>U.sourceStrategy==="market");R.append("circle").attr("class","wardley-market-overlay").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius*2).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",1),T.filter((U)=>!U.isPipelineParent&&U.sourceStrategy!=="market"&&U.className!=="anchor").append("circle").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius).attr("fill",u.componentFill).attr("stroke",u.componentStroke).attr("stroke-width",1);let L=i.nodeRadius*0.7,M=i.nodeRadius*1.2;if(R.append("line").attr("class","wardley-market-line").attr("x1",(U)=>w.get(U.id).x).attr("y1",(U)=>w.get(U.id).y-M).attr("x2",(U)=>w.get(U.id).x-M*Math.cos(Math.PI/6)).attr("y2",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("stroke",u.componentStroke).attr("stroke-width",1),R.append("line").attr("class","wardley-market-line").attr("x1",(U)=>w.get(U.id).x-M*Math.cos(Math.PI/6)).attr("y1",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("x2",(U)=>w.get(U.id).x+M*Math.cos(Math.PI/6)).attr("y2",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("stroke",u.componentStroke).attr("stroke-width",1),R.append("line").attr("class","wardley-market-line").attr("x1",(U)=>w.get(U.id).x+M*Math.cos(Math.PI/6)).attr("y1",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("x2",(U)=>w.get(U.id).x).attr("y2",(U)=>w.get(U.id).y-M).attr("stroke",u.componentStroke).attr("stroke-width",1),R.append("circle").attr("class","wardley-market-dot").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y-M).attr("r",L).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",2),R.append("circle").attr("class","wardley-market-dot").attr("cx",(U)=>w.get(U.id).x-M*Math.cos(Math.PI/6)).attr("cy",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("r",L).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",2),R.append("circle").attr("class","wardley-market-dot").attr("cx",(U)=>w.get(U.id).x+M*Math.cos(Math.PI/6)).attr("cy",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("r",L).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",2),T.filter((U)=>U.isPipelineParent===!0).append("rect").attr("x",(U)=>w.get(U.id).x-a/2).attr("y",(U)=>w.get(U.id).y-a/2).attr("width",a).attr("height",a).attr("fill",u.componentFill).attr("stroke",u.componentStroke).attr("stroke-width",1),T.filter((U)=>U.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",(U)=>{let Y=w.get(U.id),H=U.isPipelineParent?a/2+15:i.nodeRadius+15;if(U.sourceStrategy)H+=i.nodeRadius+10;return Y.x+H}).attr("y1",(U)=>{let Y=w.get(U.id),H=U.isPipelineParent?a:i.nodeRadius*2;return Y.y-H/2}).attr("x2",(U)=>{let Y=w.get(U.id),H=U.isPipelineParent?a/2+15:i.nodeRadius+15;if(U.sourceStrategy)H+=i.nodeRadius+10;return Y.x+H}).attr("y2",(U)=>{let Y=w.get(U.id),H=U.isPipelineParent?a:i.nodeRadius*2;return Y.y+H/2}).attr("stroke",u.componentStroke).attr("stroke-width",6),T.append("text").attr("x",(U)=>{let Y=w.get(U.id);if(U.className==="anchor")return U.labelOffsetX!==void 0?Y.x+U.labelOffsetX:Y.x;let H=i.nodeLabelOffset;if(U.sourceStrategy&&U.labelOffsetX===void 0)H+=10;let J=U.labelOffsetX??H;return Y.x+J}).attr("y",(U)=>{let Y=w.get(U.id);if(U.className==="anchor")return U.labelOffsetY!==void 0?Y.y+U.labelOffsetY:Y.y-3;let H=-i.nodeLabelOffset;if(U.sourceStrategy&&U.labelOffsetY===void 0)H-=10;let J=U.labelOffsetY??H;return Y.y+J}).attr("class","wardley-node-label").attr("fill",(U)=>{if(U.className==="evolved")return u.evolutionStroke;if(U.className==="anchor")return"#000";return u.componentLabelColor}).attr("font-size",i.labelFontSize).attr("font-weight",(U)=>U.className==="anchor"?"bold":"normal").attr("text-anchor",(U)=>U.className==="anchor"?"middle":"start").attr("dominant-baseline",(U)=>U.className==="anchor"?"middle":"auto").text((U)=>U.label),o.annotations.length>0){let U=B.append("g").attr("class","wardley-annotations");if(o.annotations.forEach((Y)=>{let H=Y.coordinates.map((J)=>({x:h(J.x),y:Q(J.y)}));if(H.length>1)for(let J=0;J<H.length-1;J++)U.append("line").attr("class","wardley-annotation-line").attr("x1",H[J].x).attr("y1",H[J].y).attr("x2",H[J+1].x).attr("y2",H[J+1].y).attr("stroke",u.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");H.forEach((J)=>{let K=U.append("g").attr("class","wardley-annotation");K.append("circle").attr("cx",J.x).attr("cy",J.y).attr("r",10).attr("fill","white").attr("stroke",u.axisColor).attr("stroke-width",1.5),K.append("text").attr("x",J.x).attr("y",J.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",u.axisTextColor).attr("font-weight","bold").text(Y.number)})}),o.annotationsBox){let Y=h(o.annotationsBox.x),H=Q(o.annotationsBox.y),J=10,K=16,O=11,_=U.append("g").attr("class","wardley-annotations-box"),z=[...o.annotations].filter((q)=>q.text).sort((q,CA)=>q.number-CA.number),j=[];if(z.forEach((q,CA)=>{let tA=_.append("text").attr("x",Y+J).attr("y",H+J+(CA+1)*K).attr("font-size",O).attr("fill",u.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${q.number}. ${q.text}`);j.push(tA)}),j.length>0){let q=0,CA=0;j.forEach((JA)=>{let TA=JA.node(),qA=TA.getComputedTextLength();q=Math.max(q,qA);let BA=TA.getBBox();CA=Math.max(CA,BA.height)});let tA=q+J*2+105,lA=z.length*K+J*2+CA/2,gA=i.padding,aA=l-i.padding-tA,RA=i.padding,wA=g-i.padding-lA;Y=Math.max(gA,Math.min(Y,aA)),H=Math.max(RA,Math.min(H,wA)),j.forEach((JA,TA)=>{JA.attr("x",Y+J).attr("y",H+J+(TA+1)*K)}),_.insert("rect","text").attr("x",Y).attr("y",H).attr("width",tA).attr("height",lA).attr("fill","white").attr("stroke",u.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(o.notes.length>0){let U=B.append("g").attr("class","wardley-notes");o.notes.forEach((Y)=>{let H=h(Y.x),J=Q(Y.y);U.append("text").attr("x",H).attr("y",J).attr("text-anchor","start").attr("font-size",11).attr("fill",u.axisTextColor).attr("font-weight","bold").text(Y.text)})}if(o.accelerators.length>0){let U=B.append("g").attr("class","wardley-accelerators");o.accelerators.forEach((Y)=>{let H=h(Y.x),J=Q(Y.y),K=60,O=30,_=20,z=`
|
||
M ${H} ${J-15}
|
||
L ${H+60-20} ${J-15}
|
||
L ${H+60-20} ${J-15-8}
|
||
L ${H+60} ${J}
|
||
L ${H+60-20} ${J+15+8}
|
||
L ${H+60-20} ${J+15}
|
||
L ${H} ${J+15}
|
||
Z
|
||
`;U.append("path").attr("d",z).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",1),U.append("text").attr("x",H+30).attr("y",J+15+15).attr("text-anchor","middle").attr("font-size",10).attr("fill",u.axisTextColor).attr("font-weight","bold").text(Y.name)})}if(o.deaccelerators.length>0){let U=B.append("g").attr("class","wardley-deaccelerators");o.deaccelerators.forEach((Y)=>{let H=h(Y.x),J=Q(Y.y),K=60,O=30,_=20,z=`
|
||
M ${H+60} ${J-15}
|
||
L ${H+20} ${J-15}
|
||
L ${H+20} ${J-15-8}
|
||
L ${H} ${J}
|
||
L ${H+20} ${J+15+8}
|
||
L ${H+20} ${J+15}
|
||
L ${H+60} ${J+15}
|
||
Z
|
||
`;U.append("path").attr("d",z).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",1),U.append("text").attr("x",H+30).attr("y",J+15+15).attr("text-anchor","middle").attr("font-size",10).attr("fill",u.axisTextColor).attr("font-weight","bold").text(Y.name)})}},"draw"),pKt={draw:QKt},fKt=y(({wardley:A}={})=>{let e=R0(),t=st(),r=si(e,t.themeVariables),i=si(r.wardley,A);return`
|
||
.wardley-background {
|
||
fill: ${i.backgroundColor};
|
||
}
|
||
.wardley-axes line, .wardley-axes path {
|
||
stroke: ${i.axisColor};
|
||
}
|
||
.wardley-axis-label {
|
||
fill: ${i.axisTextColor};
|
||
}
|
||
.wardley-stage-label {
|
||
fill: ${i.axisTextColor};
|
||
}
|
||
.wardley-grid line {
|
||
stroke: ${i.gridColor};
|
||
}
|
||
.wardley-node circle {
|
||
fill: ${i.componentFill};
|
||
stroke: ${i.componentStroke};
|
||
}
|
||
.wardley-node-label {
|
||
fill: ${i.componentLabelColor};
|
||
}
|
||
.wardley-link {
|
||
stroke: ${i.linkStroke};
|
||
}
|
||
.wardley-link--dashed {
|
||
stroke-dasharray: 4 4;
|
||
}
|
||
.wardley-link-label {
|
||
fill: ${i.axisTextColor};
|
||
}
|
||
.wardley-trend line {
|
||
stroke: ${i.evolutionStroke};
|
||
}
|
||
.wardley-annotation-line {
|
||
stroke: ${i.annotationStroke};
|
||
}
|
||
.wardley-annotation circle {
|
||
fill: ${i.annotationFill};
|
||
stroke: ${i.annotationStroke};
|
||
}
|
||
.wardley-annotation text {
|
||
fill: ${i.annotationTextColor};
|
||
}
|
||
.wardley-annotations-box rect {
|
||
fill: ${i.annotationFill};
|
||
stroke: ${i.annotationStroke};
|
||
}
|
||
.wardley-annotations-box text {
|
||
fill: ${i.annotationTextColor};
|
||
}
|
||
.wardley-pipeline-box {
|
||
stroke: ${i.componentStroke};
|
||
}
|
||
.wardley-notes text {
|
||
fill: ${i.axisTextColor};
|
||
}
|
||
`},"styles"),W0e={parser:k0e,db:EKt,renderer:pKt,styles:fKt}});function S7(A){let e=A+1831565813|0;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}function V0e(A){let e=0;for(let t=0;t<A.length;t++){let r=A.charCodeAt(t);e=(e<<5)-e+r,e|=0}return e}function j0e(A,e){if(typeof A==="number"&&Number.isFinite(A)&&A!==0)return A;return V0e(e)}function X0e(A,e,t,r){let i=A/2,u=r??A*0.015,a=7,n=e/7,o=[];for(let l=0;l<=7;l++){let g=S7(t+l*17)*u*2-u;o.push({x:i+g,y:l*n})}let s=`M${o[0].x},${o[0].y}`;for(let l=0;l<o.length-1;l++){let g=o[l],C=o[l+1],B=(g.y+C.y)/2,E=l%2===0?1:-1,d=u*1.5*E*S7(t+l*31+7),I=g.x+d,h=B,Q=C.x-d;s+=` C${I},${h} ${Q},${B} ${C.x},${C.y}`}return s}function $0e(A,e,t,r){let i=e/2,u=r??e*0.015,a=7,n=A/7,o=[];for(let l=0;l<=7;l++){let g=S7(t+l*23)*u*2-u;o.push({x:l*n,y:i+g})}let s=`M${o[0].x},${o[0].y}`;for(let l=0;l<o.length-1;l++){let g=o[l],C=o[l+1],B=(g.x+C.x)/2,E=l%2===0?1:-1,d=u*1.5*E*S7(t+l*37+11),I=B,h=g.y+d,Q=B,p=C.y-d;s+=` C${I},${h} ${Q},${p} ${C.x},${C.y}`}return s}function Ase(A,e){let t=A/2,r=e*0.5,i=e,u=A*0.03;return[`M${t},${r}`,`C${t+u},${r+(i-r)*0.2}`,`${t-u*1.5},${r+(i-r)*0.55}`,`${t+u*0.5},${r+(i-r)*0.75}`,`C${t-u},${r+(i-r)*0.85}`,`${t+u*0.3},${r+(i-r)*0.95}`,`${t},${i}`].join(" ")}function ese(A,e,t,r){return[`M${A-t},${e}`,`A${t},${r} 0 1,1 ${A+t},${e}`,`A${t},${r} 0 1,1 ${A-t},${e}`,"Z"].join(" ")}var Z0e,L7,mKt,DKt,yKt,wKt,bKt,vKt,CP,kKt,FKt,z0e,xKt,SKt,aEA=3,LKt,RKt,NKt,GKt,UKt,tse;var rse=P(()=>{ws();cn();ai();rr();ir();Nt();E0();Z0e=y(()=>({domains:new Map,transitions:[]}),"createDefaultData"),L7=Z0e(),mKt=y(()=>L7.domains,"getDomains"),DKt=y(()=>L7.transitions,"getTransitions"),yKt=y((A)=>{if(!A)return;for(let e of A){let t=e.domain,r=(e.items??[]).map((i)=>({label:i.label}));L7.domains.set(t,{name:t,items:r})}},"setDomains"),wKt=y((A)=>{if(!A)return;L7.transitions=A.filter((e)=>{if(e.from===e.to)return sA.warn(`Cynefin: self-loop transition on domain "${e.from}" is not meaningful and will be skipped.`),!1;return!0}).map((e)=>({from:e.from,to:e.to,label:e.label||void 0}))},"setTransitions"),bKt=y(()=>si({...ur.cynefin,...st().cynefin}),"getConfig"),vKt=y(()=>{sr(),L7=Z0e()},"clear"),CP={getDomains:mKt,getTransitions:DKt,setDomains:yKt,setTransitions:wKt,getConfig:bKt,clear:vKt,setAccTitle:Dr,getAccTitle:vr,setDiagramTitle:Mr,getDiagramTitle:xr,getAccDescription:Fr,setAccDescription:kr},kKt=y((A)=>{hu(A,CP),CP.setDomains(A.domains),CP.setTransitions(A.transitions)},"populate"),FKt={parse:y(async(A)=>{let e=await Ma("cynefin",A);sA.debug(e),kKt(e)},"parse")};y(S7,"seededRandom");y(V0e,"hashString");y(j0e,"resolveSeed");y(X0e,"generateFoldPath");y($0e,"generateHorizontalBoundary");y(Ase,"generateCliffPath");y(ese,"generateConfusionPath");z0e={complex:{model:"Probe → Sense → Respond",practice:"Emergent Practices"},complicated:{model:"Sense → Analyse → Respond",practice:"Good Practices"},clear:{model:"Sense → Categorise → Respond",practice:"Best Practices"},chaotic:{model:"Act → Sense → Respond",practice:"Novel Practices"},confusion:{model:"",practice:"Disorder"}},xKt=y((A,e)=>{let t=A/2,r=e/2;return{complex:{cx:t/2,cy:r/2,x:0,y:0,w:t,h:r},complicated:{cx:t+t/2,cy:r/2,x:t,y:0,w:t,h:r},chaotic:{cx:t/2,cy:r+r/2,x:0,y:r,w:t,h:r},clear:{cx:t+t/2,cy:r+r/2,x:t,y:r,w:t,h:r},confusion:{cx:t,cy:r,x:t*0.7,y:r*0.7,w:t*0.6,h:r*0.6}}},"getDomainLayouts"),SKt=y(()=>{let A=R0(),e=st();return si(A,e.themeVariables).cynefin},"getCynefinDomainColors"),LKt=y((A,e,t,r)=>{let i=r.db,u=i.getDomains(),a=i.getTransitions(),n=i.getDiagramTitle(),o=i.getAccTitle(),s=i.getAccDescription(),l=i.getConfig(),g=SKt();sA.debug("Rendering Cynefin diagram");let{width:C,height:B,padding:E,showDomainDescriptions:d,boundaryAmplitude:I}=l,h=C+E*2,Q=B+E*2,p={complex:g.complexBg,complicated:g.complicatedBg,clear:g.clearBg,chaotic:g.chaoticBg,confusion:g.confusionBg},m=zi(e);if(jr(m,Q,h,l.useMaxWidth??!0),m.attr("viewBox",`0 0 ${h} ${Q}`),o)m.append("title").text(o);if(s)m.append("desc").text(s);let f=m.append("g").attr("transform",`translate(${E}, ${E})`),D=xKt(C,B),w=j0e(l.seed,e),b=f.append("g").attr("class","cynefin-backgrounds"),F=["complex","complicated","chaotic","clear"];for(let U of F){let Y=D[U];b.append("rect").attr("class","cynefinDomain").attr("x",Y.x).attr("y",Y.y).attr("width",Y.w).attr("height",Y.h).attr("fill",p[U]).attr("fill-opacity",0.4).attr("stroke","none")}let v=f.append("g").attr("class","cynefin-boundaries");v.append("path").attr("class","cynefinBoundary").attr("d",X0e(C,B,w,I)).attr("fill","none"),v.append("path").attr("class","cynefinBoundary").attr("d",$0e(C,B,w+100,I)).attr("fill","none"),v.append("path").attr("class","cynefinCliff").attr("d",Ase(C,B)).attr("fill","none");let S=C*0.15,x=B*0.15;f.append("path").attr("class","cynefinConfusion").attr("d",ese(C/2,B/2,S,x)).attr("fill",p.confusion).attr("fill-opacity",0.5);let k=f.append("g").attr("class","cynefin-labels");for(let U of F){let Y=D[U];k.append("text").attr("class","cynefinDomainLabel").attr("x",Y.cx).attr("y",d?Y.cy-30:Y.cy).attr("text-anchor","middle").attr("dominant-baseline","middle").text(U.charAt(0).toUpperCase()+U.slice(1))}if(k.append("text").attr("class","cynefinDomainLabel").attr("x",C/2).attr("y",d?B/2-10:B/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text("Confusion"),d){let U=f.append("g").attr("class","cynefin-subtitles");for(let Y of F){let H=D[Y],J=z0e[Y];U.append("text").attr("class","cynefinSubtitle").attr("x",H.cx).attr("y",H.cy-10).attr("text-anchor","middle").attr("dominant-baseline","middle").text(J.model),U.append("text").attr("class","cynefinSubtitle").attr("x",H.cx).attr("y",H.cy+5).attr("text-anchor","middle").attr("dominant-baseline","middle").text(J.practice)}U.append("text").attr("class","cynefinSubtitle").attr("x",C/2).attr("y",B/2+8).attr("text-anchor","middle").attr("dominant-baseline","middle").text(z0e.confusion.practice)}let T=f.append("g").attr("class","cynefin-items"),R=26,L=10,M=["complex","complicated","chaotic","clear","confusion"];for(let U of M){let Y=u.get(U);if(!Y||Y.items.length===0)continue;let H=D[U],J=U==="confusion",K=Y.items,O=0;if(J&&Y.items.length>aEA)O=Y.items.length-aEA,K=Y.items.slice(0,aEA);let _;if(J){let z=d?22:14;_=H.cy+z}else _=H.cy+(d?25:15);if([...K].forEach((z,j)=>{let q=_+j*(R+4),CA=T.append("g"),tA=CA.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",R/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(z.label),lA=z.label.length*7,gA=tA.node();if(gA&&typeof gA.getBBox==="function"){let wA=gA.getBBox();if(wA.width>0)lA=wA.width}let aA=lA+L*2,RA=H.cx-aA/2;CA.attr("transform",`translate(${RA}, ${q})`),CA.insert("rect","text").attr("class","cynefinItem").attr("x",0).attr("y",0).attr("width",aA).attr("height",R).attr("rx",4).attr("ry",4).attr("fill",p[U]).attr("fill-opacity",0.95),tA.attr("x",aA/2).attr("y",R/2)}),O>0){let z=_+K.length*(R+4),j=`+${O} more`,q=T.append("g"),CA=q.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",R/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(j),tA=j.length*7,lA=CA.node();if(lA&&typeof lA.getBBox==="function"){let RA=lA.getBBox();if(RA.width>0)tA=RA.width}let gA=tA+L*2,aA=H.cx-gA/2;q.attr("transform",`translate(${aA}, ${z})`),q.insert("rect","text").attr("class","cynefinItemOverflow").attr("x",0).attr("y",0).attr("width",gA).attr("height",R).attr("rx",4).attr("ry",4).attr("fill",p[U]).attr("fill-opacity",0.6),CA.attr("x",gA/2).attr("y",R/2)}}if(a.length>0){let U=m.select("defs").empty()?m.append("defs"):m.select("defs"),Y=`cynefin-arrow-${e}`;U.append("marker").attr("id",Y).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","cynefinArrowHead");let H=f.append("g").attr("class","cynefin-arrows");a.forEach((J)=>{let K=D[J.from],O=D[J.to];if(!K||!O)return;if(J.from===J.to){sA.warn(`Cynefin renderer: skipping self-loop on domain "${J.from}"`);return}let{cx:_,cy:z}=K,{cx:j,cy:q}=O,CA=(_+j)/2,tA=(z+q)/2,lA=j-_,gA=q-z,aA=Math.sqrt(lA*lA+gA*gA),RA=aA*0.15,wA=-gA/aA,JA=lA/aA,TA=CA+wA*RA,qA=tA+JA*RA;if(H.append("path").attr("class","cynefinArrowLine").attr("d",`M${_},${z} Q${TA},${qA} ${j},${q}`).attr("fill","none").attr("marker-end",`url(#${Y})`),J.label)H.append("text").attr("class","cynefinArrowLabel").attr("x",TA).attr("y",qA-6).attr("text-anchor","middle").attr("dominant-baseline","auto").text(J.label)})}if(n)f.append("text").attr("class","cynefinTitle").attr("x",C/2).attr("y",-E/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text(n)},"draw"),RKt={draw:LKt},NKt=y(()=>{let A=R0(),e=st();return si(A,e.themeVariables).cynefin},"getCynefinTheme"),GKt=y(()=>{let A=NKt();return`
|
||
.cynefinDomain {
|
||
stroke: none;
|
||
}
|
||
.cynefinDomainLabel {
|
||
font-size: ${A.domainFontSize}px;
|
||
font-weight: bold;
|
||
fill: ${A.labelColor};
|
||
}
|
||
.cynefinSubtitle {
|
||
font-size: ${A.itemFontSize-1}px;
|
||
fill: ${A.textColor};
|
||
font-style: italic;
|
||
}
|
||
.cynefinItem {
|
||
fill-opacity: 0.95;
|
||
stroke: ${A.boundaryColor};
|
||
stroke-width: 1;
|
||
}
|
||
.cynefinItemText {
|
||
font-size: ${A.itemFontSize}px;
|
||
fill: ${A.textColor};
|
||
}
|
||
.cynefinItemOverflow {
|
||
fill-opacity: 0.6;
|
||
stroke: ${A.boundaryColor};
|
||
stroke-width: 1;
|
||
stroke-dasharray: 3 2;
|
||
}
|
||
.cynefinBoundary {
|
||
stroke: ${A.boundaryColor};
|
||
stroke-width: ${A.boundaryWidth};
|
||
stroke-dasharray: 6 3;
|
||
}
|
||
.cynefinCliff {
|
||
stroke: ${A.cliffColor};
|
||
stroke-width: ${A.cliffWidth};
|
||
}
|
||
.cynefinConfusion {
|
||
stroke: ${A.boundaryColor};
|
||
stroke-width: 1.5;
|
||
stroke-dasharray: 4 2;
|
||
}
|
||
.cynefinArrowLine {
|
||
stroke: ${A.arrowColor};
|
||
stroke-width: ${A.arrowWidth};
|
||
fill: none;
|
||
}
|
||
.cynefinArrowHead {
|
||
fill: ${A.arrowColor};
|
||
stroke: none;
|
||
}
|
||
.cynefinArrowLabel {
|
||
font-size: ${A.itemFontSize-1}px;
|
||
fill: ${A.textColor};
|
||
}
|
||
.cynefinTitle {
|
||
font-size: ${A.domainFontSize+2}px;
|
||
font-weight: bold;
|
||
fill: ${A.labelColor};
|
||
}
|
||
`},"styles"),UKt=GKt,tse={parser:FKt,db:CP,renderer:RKt,styles:UKt}});var nEA="",oEA="",sEA="",lEA,BP,f1,_6,MKt,use,ase,TKt,YKt,HKt,KKt,JKt,OKt,PKt,_Kt,WKt,pu,h0,qKt,zKt,ZKt,nse,VKt,jKt,Fu,ose,km,XKt,$Kt,gEA,m1,vc,AJt,ise,eJt,D1;var R7=P(()=>{cn();rr();ir();Nt();lEA=[],BP=new Map,f1=y((A)=>or(A,OA()),"sanitizeText"),_6=y((A)=>{switch(A.type){case"terminal":return{...A,value:f1(A.value)};case"nonterminal":return{...A,name:f1(A.name)};case"sequence":return{...A,elements:A.elements.map(_6)};case"choice":return{...A,alternatives:A.alternatives.map(_6)};case"optional":return{...A,element:_6(A.element)};case"repetition":return{...A,element:_6(A.element),separator:A.separator?_6(A.separator):void 0};case"special":return{...A,text:f1(A.text)}}},"sanitizeAstNode"),MKt=y(()=>{nEA="",oEA="",sEA="",lEA.length=0,BP.clear(),sr(),sA.debug("[Railroad] Database cleared")},"clear"),use=y((A)=>{nEA=f1(A),sA.debug("[Railroad] Title set:",A)},"setTitle"),ase=y(()=>nEA,"getTitle"),TKt=y((A)=>{let e={...A,name:f1(A.name),definition:_6(A.definition),comment:A.comment?f1(A.comment):void 0};if(sA.debug("[Railroad] Adding rule:",e.name),BP.has(e.name))sA.warn(`[Railroad] Rule '${e.name}' is already defined. Overwriting.`);lEA.push(e),BP.set(e.name,e)},"addRule"),YKt=y(()=>lEA,"getRules"),HKt=y((A)=>BP.get(A),"getRule"),KKt=y((A)=>{oEA=f1(A).replace(/^\s+/g,""),sA.debug("[Railroad] Accessibility title set:",A)},"setAccTitle"),JKt=y(()=>oEA,"getAccTitle"),OKt=y((A)=>{sEA=f1(A).replace(/\n\s+/g,`
|
||
`),sA.debug("[Railroad] Accessibility description set:",A)},"setAccDescription"),PKt=y(()=>sEA,"getAccDescription"),_Kt=use,WKt=ase,pu={clear:MKt,setTitle:use,getTitle:ase,addRule:TKt,getRules:YKt,getRule:HKt,setAccTitle:KKt,getAccTitle:JKt,setAccDescription:OKt,getAccDescription:PKt,setDiagramTitle:_Kt,getDiagramTitle:WKt},h0={compactMode:!1,padding:10,verticalSeparation:8,horizontalSeparation:10,arcRadius:10,fontSize:14,fontFamily:"monospace",terminalFill:"#FFFFC0",terminalStroke:"#000000",terminalTextColor:"#000000",nonTerminalFill:"#FFFFFF",nonTerminalStroke:"#000000",nonTerminalTextColor:"#000000",lineColor:"#000000",strokeWidth:2,markerFill:"#000000",commentFill:"#E8E8E8",commentStroke:"#888888",commentTextColor:"#666666",specialFill:"#F0E0FF",specialStroke:"#8800CC",ruleNameColor:"#000066",showMarkers:!0,markerRadius:5},qKt=/^#(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$|^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch)\([\d\s%+,./-]+\)$|^[a-z]+$/i,zKt=/^[\w "',.-]+$/,ZKt=new Set(["compactMode","padding","verticalSeparation","horizontalSeparation","arcRadius","fontSize","fontFamily","terminalFill","terminalStroke","terminalTextColor","nonTerminalFill","nonTerminalStroke","nonTerminalTextColor","lineColor","strokeWidth","markerFill","commentFill","commentStroke","commentTextColor","specialFill","specialStroke","ruleNameColor","showMarkers","markerRadius"]),nse=y((A)=>{if(!A)return!1;return Object.keys(A).every((e)=>e==="railroad"||ZKt.has(e))},"isRailroadStyleOptions"),VKt=y((A)=>{if(!A)return{};if("railroad"in A&&A.railroad)return A.railroad;return nse(A)?A:{}},"extractRailroadOverrides"),jKt=y((A)=>{if(!A||nse(A))return{};let{railroad:e,svgId:t,theme:r,look:i,...u}=A;return u},"extractThemeOverrides"),Fu=y((A,e)=>{if(typeof A!=="string")return e;let t=A.trim();return qKt.test(t)?t:e},"sanitizeColorValue"),ose=y((A,e)=>{if(typeof A!=="string")return e;let t=A.trim();return zKt.test(t)?t:e},"sanitizeFontFamilyValue"),km=y((A,e)=>{let t=typeof A==="number"?A:typeof A==="string"?Number.parseFloat(A):Number.NaN;return Number.isFinite(t)&&t>=0?t:e},"sanitizeNumberValue"),XKt=y((A)=>{let e=typeof A==="number"?A:typeof A==="string"?Number.parseFloat(A):Number.NaN;return Number.isFinite(e)&&e>0?e:void 0},"parseThemeFontSize"),$Kt=y((A)=>{let e=ose(A.fontFamily,h0.fontFamily),t=XKt(A.fontSize)??h0.fontSize;return{...h0,fontFamily:e,fontSize:t,terminalFill:Fu(A.secondBkg??A.secondaryColor,h0.terminalFill),terminalStroke:Fu(A.secondaryBorderColor??A.lineColor,h0.terminalStroke),terminalTextColor:Fu(A.secondaryTextColor??A.textColor,h0.terminalTextColor),nonTerminalFill:Fu(A.mainBkg??A.background,h0.nonTerminalFill),nonTerminalStroke:Fu(A.primaryBorderColor??A.lineColor,h0.nonTerminalStroke),nonTerminalTextColor:Fu(A.primaryTextColor??A.textColor,h0.nonTerminalTextColor),lineColor:Fu(A.lineColor,h0.lineColor),markerFill:Fu(A.lineColor,h0.markerFill),commentFill:Fu(A.labelBackground??A.tertiaryColor,h0.commentFill),commentStroke:Fu(A.tertiaryBorderColor??A.lineColor,h0.commentStroke),commentTextColor:Fu(A.tertiaryTextColor??A.textColor,h0.commentTextColor),specialFill:Fu(A.tertiaryColor??A.secondaryColor,h0.specialFill),specialStroke:Fu(A.tertiaryBorderColor??A.secondaryBorderColor,h0.specialStroke),ruleNameColor:Fu(A.titleColor??A.textColor,h0.ruleNameColor)}},"buildThemeDefaults"),gEA=y((A)=>{let e=st(),t={...R0(),...e.themeVariables??{},...jKt(A)},r=$Kt(t),i={...e.railroad??{},...VKt(A)};return{compactMode:i.compactMode??r.compactMode,padding:km(i.padding,r.padding),verticalSeparation:km(i.verticalSeparation,r.verticalSeparation),horizontalSeparation:km(i.horizontalSeparation,r.horizontalSeparation),arcRadius:km(i.arcRadius,r.arcRadius),fontSize:km(i.fontSize,r.fontSize),fontFamily:ose(i.fontFamily,r.fontFamily),terminalFill:Fu(i.terminalFill,r.terminalFill),terminalStroke:Fu(i.terminalStroke,r.terminalStroke),terminalTextColor:Fu(i.terminalTextColor,r.terminalTextColor),nonTerminalFill:Fu(i.nonTerminalFill,r.nonTerminalFill),nonTerminalStroke:Fu(i.nonTerminalStroke,r.nonTerminalStroke),nonTerminalTextColor:Fu(i.nonTerminalTextColor,r.nonTerminalTextColor),lineColor:Fu(i.lineColor,r.lineColor),strokeWidth:km(i.strokeWidth,r.strokeWidth),markerFill:Fu(i.markerFill,r.markerFill),commentFill:Fu(i.commentFill,r.commentFill),commentStroke:Fu(i.commentStroke,r.commentStroke),commentTextColor:Fu(i.commentTextColor,r.commentTextColor),specialFill:Fu(i.specialFill,r.specialFill),specialStroke:Fu(i.specialStroke,r.specialStroke),ruleNameColor:Fu(i.ruleNameColor,r.ruleNameColor),showMarkers:i.showMarkers??r.showMarkers,markerRadius:km(i.markerRadius,r.markerRadius)}},"buildRailroadStyleOptions"),m1=y((A)=>{let{fontFamily:e,fontSize:t,terminalFill:r,terminalStroke:i,terminalTextColor:u,nonTerminalFill:a,nonTerminalStroke:n,nonTerminalTextColor:o,lineColor:s,strokeWidth:l,markerFill:g,commentFill:C,commentStroke:B,commentTextColor:E,specialFill:d,specialStroke:I,ruleNameColor:h}=gEA(A);return`
|
||
.railroad-diagram {
|
||
font-family: ${e};
|
||
font-size: ${t}px;
|
||
}
|
||
|
||
.railroad-terminal rect {
|
||
fill: ${r};
|
||
stroke: ${i};
|
||
stroke-width: ${l}px;
|
||
}
|
||
|
||
.railroad-terminal text {
|
||
fill: ${u};
|
||
font-family: ${e};
|
||
font-size: ${t}px;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
}
|
||
|
||
.railroad-nonterminal rect {
|
||
fill: ${a};
|
||
stroke: ${n};
|
||
stroke-width: ${l}px;
|
||
}
|
||
|
||
.railroad-nonterminal text {
|
||
fill: ${o};
|
||
font-family: ${e};
|
||
font-size: ${t}px;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
}
|
||
|
||
.railroad-line {
|
||
stroke: ${s};
|
||
stroke-width: ${l}px;
|
||
fill: none;
|
||
}
|
||
|
||
.railroad-start circle,
|
||
.railroad-end circle {
|
||
fill: ${g};
|
||
}
|
||
|
||
.railroad-comment ellipse {
|
||
fill: ${C};
|
||
stroke: ${B};
|
||
stroke-width: ${l}px;
|
||
}
|
||
|
||
.railroad-comment text {
|
||
fill: ${E};
|
||
font-style: italic;
|
||
font-family: ${e};
|
||
font-size: ${t}px;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
}
|
||
|
||
.railroad-special rect {
|
||
fill: ${d};
|
||
stroke: ${I};
|
||
stroke-width: ${l}px;
|
||
stroke-dasharray: 5,3;
|
||
}
|
||
|
||
.railroad-special text {
|
||
fill: ${o};
|
||
font-family: ${e};
|
||
font-size: ${t}px;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
}
|
||
|
||
.railroad-rule-name {
|
||
font-weight: bold;
|
||
fill: ${h};
|
||
font-family: ${e};
|
||
font-size: ${t}px;
|
||
}
|
||
|
||
.railroad-group {
|
||
/* Grouping container, no specific styles */
|
||
}
|
||
`},"getStyles"),vc=class{constructor(){this.d=""}static{y(this,"PathBuilder")}moveTo(A,e){return this.d+=`M ${A} ${e} `,this}lineTo(A,e){return this.d+=`L ${A} ${e} `,this}horizontalTo(A){return this.d+=`H ${A} `,this}verticalTo(A){return this.d+=`V ${A} `,this}arcTo(A,e,t,r,i,u,a){return this.d+=`A ${A} ${e} ${t} ${r?1:0} ${i?1:0} ${u} ${a} `,this}build(){return this.d.trim()}},AJt=class{constructor(A,e=gEA()){this.textCache=new Map,this.svg=A,this.config=e}static{y(this,"RailroadRenderer")}measureText(A){if(this.textCache.has(A))return this.textCache.get(A);let e=this.svg.append("text").attr("font-family",this.config.fontFamily).attr("font-size",this.config.fontSize).text(A),t=e.node().getBBox(),r={width:t.width,height:t.height};return e.remove(),this.textCache.set(A,r),r}renderTerminal(A,e){let t=this.measureText(e),r=t.width+this.config.padding*2,i=t.height+this.config.padding*2,u=A.append("g").attr("class","railroad-terminal");return u.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",i).attr("rx",10).attr("ry",10),u.append("text").attr("x",r/2).attr("y",i/2).text(e),{element:u.node(),dimensions:{width:r,height:i,up:i/2,down:i/2}}}renderNonTerminal(A,e){let t=this.measureText(e),r=t.width+this.config.padding*2,i=t.height+this.config.padding*2,u=A.append("g").attr("class","railroad-nonterminal");return u.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",i),u.append("text").attr("x",r/2).attr("y",i/2).text(e),{element:u.node(),dimensions:{width:r,height:i,up:i/2,down:i/2}}}renderSequence(A,e){let t=e.map((o)=>this.renderExpression(A,o)),r=0,i=0,u=0;for(let o of t)r+=o.dimensions.width,i=Math.max(i,o.dimensions.up),u=Math.max(u,o.dimensions.down);r+=(t.length-1)*this.config.horizontalSeparation;let a=A.append("g").attr("class","railroad-sequence"),n=0;for(let o=0;o<t.length;o++){let s=t[o],l=i-s.dimensions.up;if(a.node().appendChild(s.element).setAttribute("transform",`translate(${n}, ${l})`),o<t.length-1){let C=n+s.dimensions.width,B=C+this.config.horizontalSeparation,E=i;a.append("path").attr("class","railroad-line").attr("d",new vc().moveTo(C,E).lineTo(B,E).build())}n+=s.dimensions.width+this.config.horizontalSeparation}return{element:a.node(),dimensions:{width:r,height:i+u,up:i,down:u}}}renderChoice(A,e){let t=e.map((g)=>this.renderExpression(A,g)),r=0,i=0;for(let g of t)r=Math.max(r,g.dimensions.width),i+=g.dimensions.height;i+=(t.length-1)*this.config.verticalSeparation;let u=this.config.arcRadius,a=u*4,n=r+a,o=A.append("g").attr("class","railroad-choice"),s=0,l=i/2;for(let g of t){let C=s,B=C+g.dimensions.up,E=u*2+(r-g.dimensions.width)/2;o.node().appendChild(g.element).setAttribute("transform",`translate(${E}, ${C})`);let I=new vc,h=B>l;if(B===l)I.moveTo(0,l).lineTo(E,B);else I.moveTo(0,l).arcTo(u,u,0,!1,h,u,l+(h?u:-u)).lineTo(u,B-(h?u:-u)).arcTo(u,u,0,!1,!h,u*2,B).lineTo(E,B);o.append("path").attr("class","railroad-line").attr("d",I.build());let Q=new vc,p=E+g.dimensions.width,m=n-u*2;if(B===l)Q.moveTo(p,B).lineTo(n,l);else Q.moveTo(p,B).lineTo(m,B).arcTo(u,u,0,!1,!h,n-u,B+(h?-u:u)).lineTo(n-u,l+(h?u:-u)).arcTo(u,u,0,!1,h,n,l);o.append("path").attr("class","railroad-line").attr("d",Q.build()),s+=g.dimensions.height+this.config.verticalSeparation}return{element:o.node(),dimensions:{width:n,height:i,up:l,down:i-l}}}renderOptional(A,e){let t=this.renderExpression(A,e),r=this.config.arcRadius,i=r*2,u=t.dimensions.width+r*4,a=t.dimensions.height+i,n=A.append("g").attr("class","railroad-optional"),o=r*2,s=i;n.node().appendChild(t.element).setAttribute("transform",`translate(${o}, ${s})`);let g=s+t.dimensions.up,C=new vc().moveTo(0,g).lineTo(r*2,g);n.append("path").attr("class","railroad-line").attr("d",C.build());let B=new vc().moveTo(o+t.dimensions.width,g).lineTo(u,g);n.append("path").attr("class","railroad-line").attr("d",B.build());let E=new vc().moveTo(0,g).arcTo(r,r,0,!1,!1,r,g-r).lineTo(r,r).arcTo(r,r,0,!1,!0,r*2,0).lineTo(u-r*2,0).arcTo(r,r,0,!1,!0,u-r,r).lineTo(u-r,g-r).arcTo(r,r,0,!1,!1,u,g);return n.append("path").attr("class","railroad-line").attr("d",E.build()),{element:n.node(),dimensions:{width:u,height:a,up:g,down:a-g}}}renderRepetition(A,e,t){let r=this.renderExpression(A,e),i=this.config.arcRadius,u=i*2,a=r.dimensions.width+i*4,n=t===0,o=r.dimensions.height+u+(n?u:0),s=A.append("g").attr("class","railroad-repetition"),l=i*2,g=n?u:0;s.node().appendChild(r.element).setAttribute("transform",`translate(${l}, ${g})`);let B=g+r.dimensions.up;s.append("path").attr("class","railroad-line").attr("d",new vc().moveTo(0,B).lineTo(i*2,B).build()),s.append("path").attr("class","railroad-line").attr("d",new vc().moveTo(l+r.dimensions.width,B).lineTo(a,B).build());let E=g+r.dimensions.height+i,d=new vc().moveTo(l+r.dimensions.width,B).arcTo(i,i,0,!1,!0,l+r.dimensions.width+i,B+i).lineTo(l+r.dimensions.width+i,E).arcTo(i,i,0,!1,!0,l+r.dimensions.width,E+i).lineTo(i*2,E+i).arcTo(i,i,0,!1,!0,i,E).lineTo(i,B+i).arcTo(i,i,0,!1,!0,i*2,B);if(s.append("path").attr("class","railroad-line").attr("d",d.build()),n){let I=new vc().moveTo(0,B).arcTo(i,i,0,!1,!1,i,B-i).lineTo(i,i).arcTo(i,i,0,!1,!0,i*2,0).lineTo(a-i*2,0).arcTo(i,i,0,!1,!0,a-i,i).lineTo(a-i,B-i).arcTo(i,i,0,!1,!1,a,B);s.append("path").attr("class","railroad-line").attr("d",I.build())}return{element:s.node(),dimensions:{width:a,height:o,up:B,down:o-B}}}renderSpecial(A,e){let t=this.measureText("? "+e+" ?"),r=t.width+this.config.padding*2,i=t.height+this.config.padding*2,u=A.append("g").attr("class","railroad-special");return u.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",i),u.append("text").attr("x",r/2).attr("y",i/2).text("? "+e+" ?"),{element:u.node(),dimensions:{width:r,height:i,up:i/2,down:i/2}}}renderExpression(A,e){switch(e.type){case"terminal":return this.renderTerminal(A,e.value);case"nonterminal":return this.renderNonTerminal(A,e.name);case"sequence":return this.renderSequence(A,e.elements);case"choice":return this.renderChoice(A,e.alternatives);case"optional":return this.renderOptional(A,e.element);case"repetition":return this.renderRepetition(A,e.element,e.min);case"special":return this.renderSpecial(A,e.text);default:throw Error(`Unknown node type: ${e.type}`)}}renderRule(A,e){let t=this.svg.append("g").attr("class","railroad-rule").attr("transform",`translate(0, ${e})`),r=A.name+" =",i=this.measureText(r).width+20,u=i+20,a=t.append("g"),n=this.renderExpression(a,A.definition),o=Math.max(20,n.dimensions.up),s=o-n.dimensions.up;return a.attr("transform",`translate(${u}, ${s})`),t.append("g").attr("class","railroad-rule-name-group").append("text").attr("class","railroad-rule-name").attr("x",0).attr("y",o).text(r),t.append("g").attr("class","railroad-start").append("circle").attr("cx",i).attr("cy",o).attr("r",this.config.markerRadius),t.append("g").attr("class","railroad-end").append("circle").attr("cx",u+n.dimensions.width+10).attr("cy",o).attr("r",this.config.markerRadius),t.append("path").attr("class","railroad-line").attr("d",new vc().moveTo(i+this.config.markerRadius,o).lineTo(u,o).build()),t.append("path").attr("class","railroad-line").attr("d",new vc().moveTo(u+n.dimensions.width,o).lineTo(u+n.dimensions.width+10-this.config.markerRadius,o).build()),{height:Math.max(40,s+n.dimensions.height+this.config.padding*2),width:u+n.dimensions.width+10+this.config.markerRadius}}renderDiagram(A){let e=this.config.padding,t=0;for(let r of A){let i=this.renderRule(r,e);e+=i.height+this.config.verticalSeparation,t=Math.max(t,i.width)}return{width:t+this.config.padding*2,height:e+this.config.padding}}},ise=y((A,e,t)=>{jr(A,e.height,e.width,t),A.attr("viewBox",`0 0 ${e.width} ${e.height}`)},"configureRailroadSvgSize"),eJt=y((A,e,t)=>{sA.debug(`[Railroad] Rendering diagram
|
||
`+A);try{let r=zi(e);r.attr("class","railroad-diagram");let u=st().railroad?.useMaxWidth??!0,a=pu.getRules();if(sA.debug(`[Railroad] Rendering ${a.length} rules`),a.length===0){sA.warn("[Railroad] No rules to render"),ise(r,{height:100,width:200},u);return}let o=new AJt(r,gEA()).renderDiagram(a);ise(r,o,u),sA.debug("[Railroad] Render complete")}catch(r){throw sA.error("[Railroad] Render error:",r),r}},"draw"),D1={draw:eJt}});var tJt,W6,rJt,iJt,uJt,sse;var lse=P(()=>{R7();ws();cn();rr();ir();Nt();E0();tJt=Bm().Railroad.parser.LangiumParser,W6=y((A)=>{switch(A.$type){case"RailroadTerminalExpr":return{type:"terminal",value:A.value};case"RailroadNonTerminalExpr":return{type:"nonterminal",name:A.name};case"RailroadSpecialExpr":return{type:"special",text:A.text};case"RailroadSequenceExpr":{let e=A.elements.map(W6);return e.length===1?e[0]:{type:"sequence",elements:e}}case"RailroadChoiceExpr":{let e=A.alternatives.map(W6);return e.length===1?e[0]:{type:"choice",alternatives:e}}case"RailroadOptionalExpr":return{type:"optional",element:W6(A.element)};case"RailroadOneOrMoreExpr":return{type:"repetition",element:W6(A.element),min:1,max:1/0};case"RailroadZeroOrMoreExpr":return{type:"repetition",element:W6(A.element),min:0,max:1/0};default:throw Error(`Unsupported railroad expression: ${A.$type}`)}},"transformExpression"),rJt=y((A)=>({name:A.name,definition:W6(A.definition)}),"transformRule"),iJt=y((A)=>{if(hu(A,pu),A.title)pu.setTitle(A.title);A.rules.map((e)=>pu.addRule(rJt(e)))},"populateDb"),uJt={parse:y((A)=>{pu.clear(),sA.debug("[Railroad Parser] Starting Langium parse");let e=tJt.parse(A);if(e.lexerErrors.length>0||e.parserErrors.length>0)throw new Eh(e);let t=e.value;sA.debug("[Railroad Parser] Parsed rules:",t.rules.length),iJt(t),sA.debug("[Railroad Parser] Parse complete")},"parse"),parser:{yy:pu}},sse={parser:uJt,db:pu,renderer:D1,styles:m1}});var aJt,EP,nJt,gse,oJt,sJt,lJt,gJt,cJt,cse;var Cse=P(()=>{R7();ws();cn();rr();ir();Nt();E0();aJt=Em().RailroadEbnf.parser.LangiumParser,EP=y((A)=>{let e=A.alternatives.map(nJt);if(e.length===1)return e[0];return{type:"choice",alternatives:e}},"transformChoice"),nJt=y((A)=>{let e=A.elements.map(sJt);if(e.length===1)return e[0];return{type:"sequence",elements:e}},"transformSequence"),gse=y((A)=>{switch(A.$type){case"EbnfTerminal":return{type:"terminal",value:A.value};case"EbnfNonTerminal":return{type:"nonterminal",name:A.name};case"EbnfSpecial":return{type:"special",text:A.text};case"EbnfGroup":return EP(A.element);case"EbnfOptional":return{type:"optional",element:EP(A.element)};case"EbnfRepetition":return{type:"repetition",element:EP(A.element),min:0,max:1/0};default:throw Error(`Unsupported EBNF primary node: ${A.$type}`)}},"transformPrimary"),oJt=y((A,e)=>{switch(e.$type){case"EbnfOptionalPostfix":return{type:"optional",element:A};case"EbnfZeroOrMorePostfix":return{type:"repetition",element:A,min:0,max:1/0};case"EbnfOneOrMorePostfix":return{type:"repetition",element:A,min:1,max:1/0};case"EbnfExceptionPostfix":return{type:"sequence",elements:[A,{type:"terminal",value:"-"},gse(e.except)]};default:throw Error(`Unsupported EBNF postfix node: ${e.$type}`)}},"transformPostfix"),sJt=y((A)=>A.postfixes.reduce((e,t)=>oJt(e,t),gse(A.base)),"transformTerm"),lJt=y((A)=>({name:A.name,definition:EP(A.definition)}),"transformRule"),gJt=y((A)=>{if(hu(A,pu),A.title)pu.setTitle(A.title);A.rules.map((e)=>pu.addRule(lJt(e)))},"populateDb"),cJt={parse:y((A)=>{pu.clear(),sA.debug("[EBNF Parser] Starting Langium parse");let e=aJt.parse(A);if(e.lexerErrors.length>0||e.parserErrors.length>0)throw new Eh(e);let t=e.value;sA.debug("[EBNF Parser] Parsed rules:",t.rules.length),gJt(t),sA.debug("[EBNF Parser] Parse complete")},"parse"),parser:{yy:pu}},cse={parser:cJt,db:pu,renderer:D1,styles:m1}});var CJt,cEA,BJt,EJt,dJt,IJt,hJt,QJt,pJt,Bse;var Ese=P(()=>{R7();ws();cn();rr();ir();Nt();E0();CJt=dm().RailroadAbnf.parser.LangiumParser,cEA=y((A)=>{let e=A.alternatives.map(BJt);if(e.length===1)return e[0];return{type:"choice",alternatives:e}},"transformAlternation"),BJt=y((A)=>{let e=A.elements.map(dJt);if(e.length===1)return e[0];return{type:"sequence",elements:e}},"transformConcatenation"),EJt=y((A)=>{if(A.includes("*")){let[t,r]=A.split("*"),i=t?parseInt(t,10):0,u=r?parseInt(r,10):1/0;return{min:i,max:u}}let e=parseInt(A,10);return{min:e,max:e}},"parseRepeat"),dJt=y((A)=>{let e=IJt(A.primary);if(!A.repeat)return e;let{min:t,max:r}=EJt(A.repeat);if(t===0&&r===1)return{type:"optional",element:e};return{type:"repetition",element:e,min:t,max:r}},"transformElement"),IJt=y((A)=>{switch(A.$type){case"AbnfStringLiteral":return{type:"terminal",value:A.value};case"AbnfNumVal":return{type:"terminal",value:A.value};case"AbnfRuleName":return{type:"nonterminal",name:A.name};case"AbnfGroup":return cEA(A.element);case"AbnfOptionalGroup":return{type:"optional",element:cEA(A.element)};default:throw Error(`Unsupported ABNF primary node: ${A.$type}`)}},"transformPrimary"),hJt=y((A)=>({name:A.name,definition:cEA(A.definition)}),"transformRule"),QJt=y((A)=>{if(hu(A,pu),A.title)pu.setTitle(A.title);A.rules.map((e)=>pu.addRule(hJt(e)))},"populateDb"),pJt={parse:y((A)=>{pu.clear(),sA.debug("[ABNF Parser] Starting Langium parse");let e=CJt.parse(A);if(e.lexerErrors.length>0||e.parserErrors.length>0)throw new Eh(e);let t=e.value;sA.debug("[ABNF Parser] Parsed rules:",t.rules.length),QJt(t),sA.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:pu}},Bse={parser:pJt,db:pu,renderer:D1,styles:m1}});var fJt,Ise,mJt,DJt,dse,yJt,wJt,bJt,vJt,kJt,hse;var Qse=P(()=>{R7();ws();cn();rr();ir();Nt();E0();fJt=Im().RailroadPeg.parser.LangiumParser,Ise=y((A)=>{let e=A.alternatives.map(mJt);if(e.length===1)return e[0];return{type:"choice",alternatives:e}},"transformOrderedChoice"),mJt=y((A)=>{let e=A.elements.map(DJt);if(e.length===1)return e[0];return{type:"sequence",elements:e}},"transformSequence"),DJt=y((A)=>{let e=yJt(A.suffix);if(!A.operator)return e;return{type:"special",text:A.operator==="&"?`&${dse(e)}`:`!${dse(e)}`}},"transformPrefix"),dse=y((A)=>{switch(A.type){case"terminal":return`"${A.value}"`;case"nonterminal":return A.name;case"special":return A.text;default:return"(...)"}},"nodeToLabel"),yJt=y((A)=>{let e=wJt(A.primary);if(!A.operator)return e;switch(A.operator){case"?":return{type:"optional",element:e};case"*":return{type:"repetition",element:e,min:0,max:1/0};case"+":return{type:"repetition",element:e,min:1,max:1/0};default:throw Error(`Unsupported PEG suffix operator: ${A.operator}`)}},"transformSuffix"),wJt=y((A)=>{switch(A.$type){case"PegLiteral":return{type:"terminal",value:A.value};case"PegIdentifier":return{type:"nonterminal",name:A.name};case"PegGroup":return Ise(A.element);case"PegAny":return{type:"special",text:A.dot};default:throw Error(`Unsupported PEG primary node: ${A.$type}`)}},"transformPrimary"),bJt=y((A)=>({name:A.name,definition:Ise(A.definition)}),"transformRule"),vJt=y((A)=>{if(hu(A,pu),A.title)pu.setTitle(A.title);A.rules.map((e)=>pu.addRule(bJt(e)))},"populateDb"),kJt={parse:y((A)=>{pu.clear(),sA.debug("[PEG Parser] Starting Langium parse");let e=fJt.parse(A);if(e.lexerErrors.length>0||e.parserErrors.length>0)throw new Eh(e);let t=e.value;sA.debug("[PEG Parser] Parsed rules:",t.rules.length),vJt(t),sA.debug("[PEG Parser] Parse complete")},"parse"),parser:{yy:pu}},hse={parser:kJt,db:pu,renderer:D1,styles:m1}});function sle(A,e){if(A.attr("role",C_t),e!=="")A.attr("aria-roledescription",e)}function lle(A,e,t,r){if(A.insert===void 0)return;if(t){let i=`chart-desc-${r}`;A.attr("aria-describedby",i),A.insert("desc",":first-child").attr("id",i).text(t)}if(e){let i=`chart-title-${r}`;A.attr("aria-labelledby",i),A.insert("title",":first-child").attr("id",i).text(e)}}function gle(A){let e=A.match(nj);if(!e)return{text:A,metadata:{}};let t=e[1],r=t?e[2].split(`
|
||
`).map((a)=>a.startsWith(t)?a.slice(t.length):a).join(`
|
||
`):e[2],i=UQ(r,{schema:GQ})??{};i=typeof i==="object"&&!Array.isArray(i)?i:{};let u={};if(i.displayMode)u.displayMode=i.displayMode.toString();if(i.title)u.title=i.title.toString();if(i.config)u.config=i.config;return{text:A.slice(e[0].length),metadata:u}}function dEA(A){let e=d_t(A),t=I_t(e),r=h_t(t.text),i=si(t.config,r.directive);return A=E_t(r.text),{code:A,title:t.title,config:i}}function cle(A){let e=new TextEncoder().encode(A),t=Array.from(e,(r)=>String.fromCodePoint(r)).join("");return btoa(t)}function IEA(A){let e=dEA(A);return bb(),kyA(e.config??{}),e}async function Cle(A,e){IP();try{let{code:t,config:r}=IEA(A);return{diagramType:(await Ele(t)).type,config:r}}catch(t){if(e?.suppressErrors)return!1;throw t}}function EEA(A,e){return A.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}function Ble(A={}){let e=Ea({},A);if(e?.fontFamily&&!e.themeVariables?.fontFamily){if(!e.themeVariables)e.themeVariables={};e.themeVariables.fontFamily=e.fontFamily}if(wyA(e),e?.theme&&e.theme in $B)e.themeVariables=$B[e.theme].getThemeVariables(e.themeVariables);else if(e)e.themeVariables=$B.default.getThemeVariables(e.themeVariables);let t=typeof e==="object"?yyA(e):uj();rb(t.logLevel),IP()}function dle(A,e,t,r){sle(e,A),lle(e,t,r,e.attr("id"))}var yse="c4",FJt,xJt,SJt,LJt,wse="flowchart",RJt,NJt,GJt,UJt,bse="flowchart-v2",MJt,TJt,YJt,HJt,vse="swimlane",KJt,JJt,OJt,PJt,kse="er",_Jt,WJt,qJt,zJt,Fse="gitGraph",ZJt,VJt,jJt,XJt,xse="gantt",$Jt,AOt,eOt,tOt,Sse="info",rOt,iOt,uOt,Lse="pie",aOt,nOt,oOt,Rse="quadrantChart",sOt,lOt,gOt,cOt,Nse="xychart",COt,BOt,EOt,dOt,Gse="requirement",IOt,hOt,QOt,pOt,Use="sequence",fOt,mOt,DOt,yOt,Mse="class",wOt,bOt,vOt,kOt,Tse="classDiagram",FOt,xOt,SOt,LOt,Yse="state",ROt,NOt,GOt,UOt,Hse="stateDiagram",MOt,TOt,YOt,HOt,Kse="journey",KOt,JOt,OOt,POt,_Ot,Jse,WOt,qOt,zOt,Ose="flowchart-elk",ZOt,VOt,jOt,XOt,Pse="timeline",$Ot,APt,ePt,tPt,_se="mindmap",rPt,iPt,uPt,aPt,Wse="kanban",nPt,oPt,sPt,lPt,qse="sankey",gPt,cPt,CPt,BPt,zse="packet",EPt,dPt,IPt,Zse="radar",hPt,QPt,pPt,Vse="block",fPt,mPt,DPt,yPt,jse="treeView",wPt,bPt,vPt,kPt,Xse="architecture",FPt,xPt,SPt,LPt,$se="eventmodeling",RPt,NPt,GPt,UPt,Ale="ishikawa",MPt,TPt,YPt,ele="venn",HPt,KPt,JPt,OPt,tle="treemap",PPt,_Pt,WPt,rle="wardley",qPt,zPt,ZPt,VPt,ile="cynefin",jPt,XPt,$Pt,ule="railroad",A_t,e_t,t_t,ale="railroadEbnf",r_t,i_t,u_t,nle="railroadAbnf",a_t,n_t,o_t,ole="railroadPeg",s_t,l_t,g_t,pse=!1,IP,c_t,C_t="graphics-document document",BEA,fse,B_t,E_t,d_t,I_t,h_t,Q_t=50000,p_t="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",f_t="sandbox",m_t="loose",D_t="http://www.w3.org/2000/svg",y_t="http://www.w3.org/1999/xlink",w_t="http://www.w3.org/1999/xhtml",b_t="100%",v_t="100%",k_t="border:0;margin:0;",F_t="margin:0",x_t="allow-top-navigation-by-user-activation allow-popups",S_t='The "iframe" tag is not supported by your browser.',L_t,R_t,mse,N_t,G_t,U_t,M_t,T_t,Dse,Y_t,H_t,Ele,Fm,K_t,Ile,J_t,hle,O_t,P_t,Qle,__t,dP,CEA=!1,ple,W_t,fle,q_t,bh,xm;var hEA=P(()=>{cn();ff();hl();ol();u0();e0();ds();r0();eo();Rn();ai();rr();ir();Nt();GeA();Pr();xOA();cD();jG();FJt=y((A)=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(A),"detector"),xJt=y(async()=>{await Promise.resolve().then(() => POA());return{id:yse,diagram:OOA}},"loader"),SJt={id:yse,detector:FJt,loader:xJt},LJt=SJt,RJt=y((A,e)=>{if(e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk")return!1;return/^\s*graph/.test(A)},"detector"),NJt=y(async()=>{await Promise.resolve().then(() => NY());return{id:wse,diagram:g3}},"loader"),GJt={id:wse,detector:RJt,loader:NJt},UJt=GJt,MJt=y((A,e)=>{if(e?.flowchart?.defaultRenderer==="dagre-d3")return!1;if(e?.flowchart?.defaultRenderer==="elk")e.layout="elk";if(/^\s*graph/.test(A)&&e?.flowchart?.defaultRenderer==="dagre-wrapper")return!0;return/^\s*flowchart/.test(A)},"detector"),TJt=y(async()=>{await Promise.resolve().then(() => NY());return{id:bse,diagram:g3}},"loader"),YJt={id:bse,detector:MJt,loader:TJt},HJt=YJt,KJt=y((A)=>/^\s*swimlane-beta\b/.test(A),"detector"),JJt=y(async()=>{await Promise.resolve().then(() => zOA());return{id:vse,diagram:qOA}},"loader"),OJt={id:vse,detector:KJt,loader:JJt},PJt=OJt,_Jt=y((A)=>/^\s*erDiagram/.test(A),"detector"),WJt=y(async()=>{await Promise.resolve().then(() => XOA());return{id:kse,diagram:jOA}},"loader"),qJt={id:kse,detector:_Jt,loader:WJt},zJt=qJt,ZJt=y((A)=>/^\s*gitGraph/.test(A),"detector"),VJt=y(async()=>{await Promise.resolve().then(() => pre());return{id:Fse,diagram:Qre}},"loader"),jJt={id:Fse,detector:ZJt,loader:VJt},XJt=jJt,$Jt=y((A)=>/^\s*gantt/.test(A),"detector"),AOt=y(async()=>{await Promise.resolve().then(() => Ore());return{id:xse,diagram:Jre}},"loader"),eOt={id:xse,detector:$Jt,loader:AOt},tOt=eOt,rOt=y((A)=>/^\s*info/.test(A),"detector"),iOt=y(async()=>{await Promise.resolve().then(() => _re());return{id:Sse,diagram:Pre}},"loader"),uOt={id:Sse,detector:rOt,loader:iOt},aOt=y((A)=>/^\s*pie/.test(A),"detector"),nOt=y(async()=>{await Promise.resolve().then(() => Zre());return{id:Lse,diagram:zre}},"loader"),oOt={id:Lse,detector:aOt,loader:nOt},sOt=y((A)=>/^\s*quadrantChart/.test(A),"detector"),lOt=y(async()=>{await Promise.resolve().then(() => cie());return{id:Rse,diagram:gie}},"loader"),gOt={id:Rse,detector:sOt,loader:lOt},cOt=gOt,COt=y((A)=>/^\s*xychart(-beta)?/.test(A),"detector"),BOt=y(async()=>{await Promise.resolve().then(() => Nie());return{id:Nse,diagram:Rie}},"loader"),EOt={id:Nse,detector:COt,loader:BOt},dOt=EOt,IOt=y((A)=>/^\s*requirement(Diagram)?/.test(A),"detector"),hOt=y(async()=>{await Promise.resolve().then(() => Mie());return{id:Gse,diagram:Uie}},"loader"),QOt={id:Gse,detector:IOt,loader:hOt},pOt=QOt,fOt=y((A)=>/^\s*sequenceDiagram/.test(A),"detector"),mOt=y(async()=>{await Promise.resolve().then(() => Xie());return{id:Use,diagram:jie}},"loader"),DOt={id:Use,detector:fOt,loader:mOt},yOt=DOt,wOt=y((A,e)=>{if(e?.class?.defaultRenderer==="dagre-wrapper")return!1;return/^\s*classDiagram/.test(A)},"detector"),bOt=y(async()=>{await Promise.resolve().then(() => rue());return{id:Mse,diagram:tue}},"loader"),vOt={id:Mse,detector:wOt,loader:bOt},kOt=vOt,FOt=y((A,e)=>{if(/^\s*classDiagram/.test(A)&&e?.class?.defaultRenderer==="dagre-wrapper")return!0;return/^\s*classDiagram-v2/.test(A)},"detector"),xOt=y(async()=>{await Promise.resolve().then(() => uue());return{id:Tse,diagram:iue}},"loader"),SOt={id:Tse,detector:FOt,loader:xOt},LOt=SOt,ROt=y((A,e)=>{if(e?.state?.defaultRenderer==="dagre-wrapper")return!1;return/^\s*stateDiagram/.test(A)},"detector"),NOt=y(async()=>{await Promise.resolve().then(() => Sue());return{id:Yse,diagram:xue}},"loader"),GOt={id:Yse,detector:ROt,loader:NOt},UOt=GOt,MOt=y((A,e)=>{if(/^\s*stateDiagram-v2/.test(A))return!0;if(/^\s*stateDiagram/.test(A)&&e?.state?.defaultRenderer==="dagre-wrapper")return!0;return!1},"detector"),TOt=y(async()=>{await Promise.resolve().then(() => Rue());return{id:Hse,diagram:Lue}},"loader"),YOt={id:Hse,detector:MOt,loader:TOt},HOt=YOt,KOt=y((A)=>/^\s*journey/.test(A),"detector"),JOt=y(async()=>{await Promise.resolve().then(() => Oue());return{id:Kse,diagram:Jue}},"loader"),OOt={id:Kse,detector:KOt,loader:JOt},POt=OOt,_Ot=y((A,e,t)=>{sA.debug(`rendering svg for syntax error
|
||
`);let r=zi(e),i=r.append("g");r.attr("viewBox","0 0 2412 512"),jr(r,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${t}`)},"draw"),Jse={draw:_Ot},WOt=Jse,qOt={db:{},renderer:Jse,parser:{parse:y(()=>{return},"parse")}},zOt=qOt,ZOt=y((A,e={})=>{if(/^\s*flowchart-elk/.test(A)||/^\s*(flowchart|graph)/.test(A)&&e?.flowchart?.defaultRenderer==="elk")return e.layout="elk",!0;return!1},"detector"),VOt=y(async()=>{await Promise.resolve().then(() => NY());return{id:Ose,diagram:g3}},"loader"),jOt={id:Ose,detector:ZOt,loader:VOt},XOt=jOt,$Ot=y((A)=>/^\s*timeline/.test(A),"detector"),APt=y(async()=>{await Promise.resolve().then(() => Bae());return{id:Pse,diagram:Cae}},"loader"),ePt={id:Pse,detector:$Ot,loader:APt},tPt=ePt,rPt=y((A)=>/^\s*mindmap/.test(A),"detector"),iPt=y(async()=>{await Promise.resolve().then(() => fae());return{id:_se,diagram:pae}},"loader"),uPt={id:_se,detector:rPt,loader:iPt},aPt=uPt,nPt=y((A)=>/^\s*kanban/.test(A),"detector"),oPt=y(async()=>{await Promise.resolve().then(() => yae());return{id:Wse,diagram:Dae}},"loader"),sPt={id:Wse,detector:nPt,loader:oPt},lPt=sPt,gPt=y((A)=>/^\s*sankey(-beta)?/.test(A),"detector"),cPt=y(async()=>{await Promise.resolve().then(() => Oae());return{id:qse,diagram:Jae}},"loader"),CPt={id:qse,detector:gPt,loader:cPt},BPt=CPt,EPt=y((A)=>/^\s*packet(-beta)?/.test(A),"detector"),dPt=y(async()=>{await Promise.resolve().then(() => qae());return{id:zse,diagram:Wae}},"loader"),IPt={id:zse,detector:EPt,loader:dPt},hPt=y((A)=>/^\s*radar-beta/.test(A),"detector"),QPt=y(async()=>{await Promise.resolve().then(() => ene());return{id:Zse,diagram:Ane}},"loader"),pPt={id:Zse,detector:hPt,loader:QPt},fPt=y((A)=>/^\s*block(-beta)?/.test(A),"detector"),mPt=y(async()=>{await Promise.resolve().then(() => Rne());return{id:Vse,diagram:Lne}},"loader"),DPt={id:Vse,detector:fPt,loader:mPt},yPt=DPt,wPt=y((A)=>/^\s*treeView-beta/.test(A),"detector"),bPt=y(async()=>{await Promise.resolve().then(() => qne());return{id:jse,diagram:Wne}},"loader"),vPt={id:jse,detector:wPt,loader:bPt},kPt=vPt,FPt=y((A)=>/^\s*architecture/.test(A),"detector"),xPt=y(async()=>{await Promise.resolve().then(() => coe());return{id:Xse,diagram:goe}},"loader"),SPt={id:Xse,detector:FPt,loader:xPt},LPt=SPt,RPt=y((A)=>/^\s*eventmodeling/.test(A),"detector"),NPt=y(async()=>{await Promise.resolve().then(() => Koe());return{id:$se,diagram:Hoe}},"loader"),GPt={id:$se,detector:RPt,loader:NPt},UPt=GPt,MPt=y((A)=>/^\s*ishikawa(-beta)?\b/i.test(A),"detector"),TPt=y(async()=>{await Promise.resolve().then(() => Voe());return{id:Ale,diagram:Zoe}},"loader"),YPt={id:Ale,detector:MPt,loader:TPt},HPt=y((A)=>/^\s*venn-beta/.test(A),"detector"),KPt=y(async()=>{await Promise.resolve().then(() => f0e());return{id:ele,diagram:p0e}},"loader"),JPt={id:ele,detector:HPt,loader:KPt},OPt=JPt,PPt=y((A)=>/^\s*treemap/.test(A),"detector"),_Pt=y(async()=>{await Promise.resolve().then(() => b0e());return{id:tle,diagram:w0e}},"loader"),WPt={id:tle,detector:PPt,loader:_Pt},qPt=y((A)=>/^\s*wardley-beta/i.test(A),"detector"),zPt=y(async()=>{await Promise.resolve().then(() => q0e());return{id:rle,diagram:W0e}},"loader"),ZPt={id:rle,detector:qPt,loader:zPt},VPt=ZPt,jPt=y((A)=>/^\s*cynefin-beta(?:[\s:]|$)/.test(A),"detector"),XPt=y(async()=>{await Promise.resolve().then(() => rse());return{id:ile,diagram:tse}},"loader"),$Pt={id:ile,detector:jPt,loader:XPt},A_t=y((A)=>/^\s*railroad-beta/i.test(A),"detector"),e_t=y(async()=>{await Promise.resolve().then(() => lse());return{id:ule,diagram:sse}},"loader"),t_t={id:ule,detector:A_t,loader:e_t},r_t=y((A)=>/^\s*railroad-ebnf-beta/i.test(A),"detector"),i_t=y(async()=>{await Promise.resolve().then(() => Cse());return{id:ale,diagram:cse}},"loader"),u_t={id:ale,detector:r_t,loader:i_t},a_t=y((A)=>/^\s*railroad-abnf-beta/i.test(A),"detector"),n_t=y(async()=>{await Promise.resolve().then(() => Ese());return{id:nle,diagram:Bse}},"loader"),o_t={id:nle,detector:a_t,loader:n_t},s_t=y((A)=>/^\s*railroad-peg-beta/i.test(A),"detector"),l_t=y(async()=>{await Promise.resolve().then(() => Qse());return{id:ole,diagram:hse}},"loader"),g_t={id:ole,detector:s_t,loader:l_t},IP=y(()=>{if(pse)return;pse=!0,xb("error",zOt,(A)=>A.toLowerCase().trim()==="error"),xb("---",{db:{clear:y(()=>{},"clear")},styles:{},renderer:{draw:y(()=>{},"draw")},parser:{parse:y(()=>{throw Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:y(()=>null,"init")},(A)=>A.toLowerCase().trimStart().startsWith("---")),zR(XOt,aPt,LPt),zR(LJt,lPt,LOt,kOt,zJt,tOt,uOt,oOt,pOt,yOt,PJt,HJt,UJt,tPt,XJt,HOt,UOt,POt,cOt,BPt,IPt,dOt,yPt,UPt,kPt,pPt,YPt,WPt,t_t,u_t,o_t,g_t,OPt,VPt,$Pt)},"addDiagrams"),c_t=y(async()=>{sA.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(QQ).map(async([t,{detector:r,loader:i}])=>{if(!i)return;try{$R(t)}catch{try{let{diagram:u,id:a}=await i();xb(a,u,r)}catch(u){throw sA.error(`Failed to load external diagram with key ${t}. Removing from detectors.`),delete QQ[t],u}}}))).filter((t)=>t.status==="rejected");if(e.length>0){sA.error(`Failed to load ${e.length} external diagrams`);for(let t of e)sA.error(t);throw Error(`Failed to load ${e.length} external diagrams`)}},"loadRegisteredDiagrams");y(sle,"setA11yDiagramInfo");y(lle,"addSVGa11yTitleDescription");BEA=class A{constructor(e,t,r,i,u){this.type=e,this.text=t,this.db=r,this.parser=i,this.renderer=u}static{y(this,"Diagram")}static async fromText(e,t={}){let r=st(),i=vb(e,r);e=rkA(e)+`
|
||
`;try{$R(i)}catch{let s=SyA(i);if(!s)throw new oj(`Diagram ${i} not found.`);let{id:l,diagram:g}=await s();xb(l,g)}let{db:u,parser:a,renderer:n,init:o}=$R(i);if(a.parser)a.parser.yy=u;if(u.clear?.(),o?.(r),t.title)u.setDiagramTitle?.(t.title);return await a.parse(e),new A(i,e,u,a,n)}async render(e,t){await this.renderer.draw(this.text,e,t,this)}getParser(){return this.parser}getType(){return this.type}},fse=[],B_t=y(()=>{fse.forEach((A)=>{A()}),fse=[]},"attachFunctions"),E_t=y((A)=>A.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");y(gle,"extractFrontMatter");d_t=y((A)=>A.replace(/\r\n?/g,`
|
||
`).replace(/<(\w+)([^>]*)>/g,(e,t,r)=>"<"+t+r.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),I_t=y((A)=>{let{text:e,metadata:t}=gle(A),{displayMode:r,title:i,config:u={}}=t;if(r){if(!u.gantt)u.gantt={};u.gantt.displayMode=r}return{title:i,config:u,text:e}},"processFrontmatter"),h_t=y((A)=>{let e=Jt.detectInit(A)??{},t=Jt.detectDirective(A,"wrap");if(Array.isArray(t))e.wrap=t.some(({type:r})=>r==="wrap");else if(t?.type==="wrap")e.wrap=!0;return{text:jvA(A),directive:e}},"processDirectives");y(dEA,"preprocessDiagram");y(cle,"toBase64");L_t=["foreignobject"],R_t=["dominant-baseline"];y(IEA,"processAndSetConfigs");y(Cle,"parse");mse=y((A,e,t=[])=>{let r=ij(`{ ${t.join(" !important; ")} !important; }`);return`.${A} ${e} ${r}`},"cssImportantStyles"),N_t=y((A,e=new Map)=>{let t=new CSSStyleSheet;if(A.fontFamily!==void 0)t.insertRule(`:root { --mermaid-font-family: ${A.fontFamily}}`,t.cssRules.length);if(A.altFontFamily!==void 0)t.insertRule(`:root { --mermaid-alt-font-family: ${A.altFontFamily}}`,t.cssRules.length);if(e instanceof Map){let n=ki(A)?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach((o)=>{if(!VG(o.styles))n.forEach((s)=>{t.insertRule(mse(o.id,s,o.styles),t.cssRules.length)});if(!VG(o.textStyles))t.insertRule(mse(o.id,"tspan",(o?.textStyles||[]).map((s)=>s.replace("color","fill"))),t.cssRules.length)})}let r="";if(A.themeCSS!==void 0)if(typeof t.replaceSync==="function"){let i=new CSSStyleSheet;i.replaceSync(A.themeCSS),r=ZR(i)+`
|
||
`}else r+=`${A.themeCSS}
|
||
`;return r+ZR(t)},"createCssStyles"),G_t=y((A,e)=>mY(DOA(`${A}{${e}}`),kOA([y(function(r,i,u,a){if(r.type==="rule"&&Array.isArray(r.props)){if(r.parent&&r.parent.type===gF)return;r.props=r.props.map((n)=>{if(n===A&&Array.isArray(r.children)&&r.children.every((s)=>{if(s.type!=="decl")return!1;return new Set(["font-family","font-size","fill"]).has(s.props)}))return n;if(!((n.startsWith(`${A} `)||n.startsWith(`${A}>`))&&!n.startsWith(`${A} ||`)))return`${A} ${n}`;return n})}else if(r.type.startsWith("@")){if(![aOA,oOA,BY,lOA,"@container","@starting-style",gF].includes(r.type))sA.warn(`Removing unsupported at-rule ${r.type} from CSS`),r.type=mw}},"addNamespace"),bOA])),"compileCSS"),U_t=y((A,e,t,r)=>{let i=N_t(A,t),u=GyA(e,i,{...A.themeVariables,theme:A.theme,look:A.look},r);return G_t(r,u)},"createUserStyles"),M_t=y((A="",e,t)=>{let r=A;if(!t&&!e)r=r.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#');return r=ug(r),r=r.replace(/<br>/g,"<br/>"),r},"cleanUpSvgCode"),T_t=y((A="",e)=>{let t=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":v_t,r=cle(`<body style="${F_t}">${A}</body>`);return`<iframe style="width:${b_t};height:${t};${k_t}" src="data:text/html;charset=UTF-8;base64,${r}" sandbox="${x_t}">
|
||
${S_t}
|
||
</iframe>`},"putIntoIFrame"),Dse=y((A,e,t,r,i)=>{let u=A.append("div");if(u.attr("id",t),r)u.attr("style",r);let a=u.append("svg").attr("id",e).attr("width","100%").attr("xmlns",D_t);if(i)a.attr("xmlns:xlink",i);return a.append("g"),A},"appendDivSvgG");y(EEA,"sandboxedIframe");Y_t=y((A,e,t,r)=>{A.getElementById(e)?.remove(),A.getElementById(t)?.remove(),A.getElementById(r)?.remove()},"removeExistingElements"),H_t=y(async function(A,e,t){IP();let r=IEA(e);e=r.code;let i=st();if(sA.debug(i),e.length>(i?.maxTextSize??Q_t))e=p_t;let u=`#${A}`,a="i"+A,n="#"+a,o="d"+A,s="#"+o,l=y(()=>{let k=Qe(C?n:s).node();if(k&&"remove"in k)k.remove()},"removeTempElements"),g=Qe(document.body),C=i.securityLevel===f_t,B=i.securityLevel===m_t,E=i.fontFamily;if(t!==void 0){if(t)t.innerHTML="";if(C){let x=EEA(Qe(t),a);g=Qe(x.nodes()[0].contentDocument.body),g.node().style.margin="0"}else g=Qe(t);Dse(g,A,o,`font-family: ${E}`,y_t)}else{if(Y_t(document,A,o,a),C){let x=EEA(Qe(document.body),a);g=Qe(x.nodes()[0].contentDocument.body),g.node().style.margin="0"}else g=Qe("body");Dse(g,A,o)}let d,I;try{d=await BEA.fromText(e,{title:r.title})}catch(x){if(i.suppressErrorRendering)throw l(),x;d=await BEA.fromText("error"),I=x}let h=g.select(s).node(),Q=d.type,p=h.firstChild,m=p.firstChild,f=d.renderer.getClasses?.(e,d),D=U_t(i,Q,f,u),w=document.createElement("style");w.innerHTML=D,p.insertBefore(w,m);try{await d.renderer.draw(e,A,"11.16.1",d)}catch(x){if(i.suppressErrorRendering)l();else WOt.draw(e,A,"11.16.1");throw x}let b=g.select(`${s} svg`),F=d.db.getAccTitle?.(),v=d.db.getAccDescription?.();dle(Q,b,F,v),g.select(`[id="${A}"]`).selectAll("foreignobject > *").attr("xmlns",w_t);let S=g.select(s).node().innerHTML;if(sA.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),S=M_t(S,C,Zg(i.arrowMarkerAbsolute)),C){let x=g.select(s+" svg").node();S=T_t(S,x)}else if(!B)S=Al.sanitize(S,{ADD_TAGS:L_t,ADD_ATTR:R_t,HTML_INTEGRATION_POINTS:{foreignobject:!0}});if(B_t(),I)throw I;return l(),{diagramType:Q,svg:S,bindFunctions:d.db.bindFunctions}},"render");y(Ble,"initialize");Ele=y((A,e={})=>{let{code:t}=dEA(A);return BEA.fromText(t,e)},"getDiagramFromText");y(dle,"addA11yInfo");Fm=Object.freeze({render:H_t,parse:Cle,getDiagramFromText:Ele,initialize:Ble,getConfig:st,setConfig:aj,getSiteConfig:uj,updateSiteConfig:byA,reset:y(()=>{bb()},"reset"),globalReset:y(()=>{bb($p)},"globalReset"),defaultConfig:$p});rb(st().logLevel);bb(st());K_t=y((A,e,t)=>{if(sA.warn(A),eU(A)){if(t)t(A.str,A.hash);e.push({...A,message:A.str,error:A})}else{if(t)t(A);if(A instanceof Error)e.push({str:A.message,message:A.message,hash:A.name,error:A})}},"handleError"),Ile=y(async function(A={querySelector:".mermaid"}){try{await J_t(A)}catch(e){if(eU(e))sA.error(e.str);if(bh.parseError)bh.parseError(e);if(!A.suppressErrors)throw sA.error("Use the suppressErrors option to suppress these errors"),e}},"run"),J_t=y(async function({postRenderCallback:A,querySelector:e,nodes:t}={querySelector:".mermaid"}){let r=Fm.getConfig();sA.debug(`${!A?"No ":""}Callback function found`);let i;if(t)i=t;else if(e)i=document.querySelectorAll(e);else throw Error("Nodes and querySelector are both undefined");if(sA.debug(`Found ${i.length} diagrams`),r?.startOnLoad!==void 0)sA.debug("Start On Load: "+r?.startOnLoad),Fm.updateSiteConfig({startOnLoad:r?.startOnLoad});let u=new Jt.InitIDGenerator(r.deterministicIds,r.deterministicIDSeed),a,n=[];for(let o of Array.from(i)){if(sA.info("Rendering diagram: "+o.id),o.getAttribute("data-processed"))continue;o.setAttribute("data-processed","true");let s=`mermaid-${u.next()}`;a=o.innerHTML,a=lU(Jt.entityDecode(a)).trim().replace(/<br\s*\/?>/gi,"<br/>");let l=Jt.detectInit(a);if(l)sA.debug("Detected early reinit: ",l);try{let{svg:g,bindFunctions:C}=await fle(s,a,o);if(o.innerHTML=g,A)await A(s);if(C)C(o)}catch(g){K_t(g,n,bh.parseError)}}if(n.length>0)throw n[0]},"runThrowsErrors"),hle=y(function(A){Fm.initialize(A)},"initialize"),O_t=y(async function(A,e,t){if(sA.warn("mermaid.init is deprecated. Please use run instead."),A)hle(A);let r={postRenderCallback:t,querySelector:".mermaid"};if(typeof e==="string")r.querySelector=e;else if(e)if(e instanceof HTMLElement)r.nodes=[e];else r.nodes=e;await Ile(r)},"init"),P_t=y(async(A,{lazyLoad:e=!0}={})=>{if(IP(),zR(...A),e===!1)await c_t()},"registerExternalDiagrams"),Qle=y(function(){if(bh.startOnLoad){let{startOnLoad:A}=Fm.getConfig();if(A)bh.run().catch((e)=>sA.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u")window.addEventListener("load",Qle,!1);__t=y(function(A){bh.parseError=A},"setParseErrorHandler"),dP=[],ple=y(async()=>{if(CEA)return;CEA=!0;while(dP.length>0){let A=dP.shift();if(A)try{await A()}catch(e){sA.error("Error executing queue",e)}}CEA=!1},"executeQueue"),W_t=y(async(A,e)=>new Promise((t,r)=>{let i=y(()=>new Promise((u,a)=>{Fm.parse(A,e).then((n)=>{u(n),t(n)},(n)=>{sA.error("Error parsing",n),bh.parseError?.(n),a(n),r(n)})}),"performCall");dP.push(i),ple().catch(r)}),"parse"),fle=y((A,e,t)=>new Promise((r,i)=>{let u=y(()=>new Promise((a,n)=>{Fm.render(A,e,t).then((o)=>{a(o),r(o)},(o)=>{sA.error("Error parsing",o),bh.parseError?.(o),n(o),i(o)})}),"performCall");dP.push(u),ple().catch(i)}),"render"),q_t=y(()=>Object.keys(QQ).map((A)=>({id:A})),"getRegisteredDiagramsMetadata"),bh={startOnLoad:!0,mermaidAPI:Fm,parse:W_t,render:fle,init:O_t,run:Ile,registerExternalDiagrams:P_t,registerLayoutLoaders:BnA,initialize:hle,parseError:void 0,contentLoaded:Qle,setParseErrorHandler:__t,detectType:vb,registerIconPacks:ly,getRegisteredDiagramsMetadata:q_t},xm=bh;/*! Check if previously processed *//*!
|
||
* Wait for document loaded before starting the execution
|
||
*/});var y1=20,mle,N7;var Sm=P(()=>{mle={rect:"rectangle",circle:"ellipse"},N7={startOnLoad:!1,flowchart:{curve:"linear"},themeVariables:{fontSize:"20px"},maxEdges:500,maxTextSize:50000}});class bg{constructor({converter:A}){this.convert=(e,t)=>this.converter(e,{...t,fontSize:t.fontSize||y1}),this.converter=A}}var Lm=P(()=>{Sm()});var vh,Ko,mi;var G7=P(()=>{(function(A){A.ROUND="round",A.STADIUM="stadium",A.DOUBLECIRCLE="doublecircle",A.CIRCLE="circle",A.DIAMOND="diamond",A.CYLINDER="cylinder"})(vh||(vh={}));(function(A){A.COLOR="color"})(Ko||(Ko={}));(function(A){A.FILL="fill",A.STROKE="stroke",A.STROKE_WIDTH="stroke-width",A.STROKE_DASHARRAY="stroke-dasharray"})(mi||(mi={}))});var wle=wu(function(Dle){Object.defineProperty(Dle,"__esModule",{value:!0});Dle.removeMarkdown=void 0;var z_t=function(A,e){if(e===void 0)e={listUnicodeChar:""};e=e||{},e.listUnicodeChar=e.hasOwnProperty("listUnicodeChar")?e.listUnicodeChar:!1,e.stripListLeaders=e.hasOwnProperty("stripListLeaders")?e.stripListLeaders:!0,e.gfm=e.hasOwnProperty("gfm")?e.gfm:!0,e.useImgAltText=e.hasOwnProperty("useImgAltText")?e.useImgAltText:!0,e.preserveLinks=e.hasOwnProperty("preserveLinks")?e.preserveLinks:!1;var t=A||"";t=t.replace(/^(-\s*?|\*\s*?|_\s*?){3,}\s*$/gm,"");try{if(e.stripListLeaders)if(e.listUnicodeChar)t=t.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,e.listUnicodeChar+" $1");else t=t.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,"$1");if(e.gfm)t=t.replace(/\n={2,}/g,`
|
||
`).replace(/~{3}.*\n/g,"").replace(/~~/g,"").replace(/`{3}.*\n/g,"");if(e.preserveLinks)t=t.replace(/\[(.*?)\][\[\(](.*?)[\]\)]/g,"$1 ($2)");t=t.replace(/<[^>]*>/g,"").replace(/^[=\-]{2,}\s*$/g,"").replace(/\[\^.+?\](\: .*?$)?/g,"").replace(/\s{0,2}\[.*?\]: .*?$/g,"").replace(/\!\[(.*?)\][\[\(].*?[\]\)]/g,e.useImgAltText?"$1":"").replace(/\[(.*?)\][\[\(].*?[\]\)]/g,"$1").replace(/^\s{0,3}>\s?/g,"").replace(/(^|\n)\s{0,3}>\s?/g,`
|
||
|
||
`).replace(/^\s{1,2}\[(.*?)\]: (\S+)( ".*?")?\s*$/g,"").replace(/^(\n)?\s{0,}#{1,6}\s+| {0,}(\n)?\s{0,}#{0,} {0,}(\n)?\s{0,}$/gm,"$1$2$3").replace(/([\*_]{1,3})(\S.*?\S{0,1})\1/g,"$2").replace(/([\*_]{1,3})(\S.*?\S{0,1})\1/g,"$2").replace(/(`{3,})(.*?)\1/gm,"$2").replace(/`(.+?)`/g,"$1").replace(/\n{2,}/g,`
|
||
|
||
`)}catch(r){return console.error(r),A}return t};Dle.removeMarkdown=z_t});var ble,Z_t,vle=(A)=>Z_t[A],hP=(A)=>{let e=A.text;if(A.labelType==="markdown")e=ble.removeMarkdown(A.text);return V_t(e)},V_t=(A)=>{let e=/\s?(fa|fab):[a-zA-Z0-9-]+/g;return A.replace(e,"")},Rm=(A)=>{let e={};return Object.keys(A).forEach((t)=>{switch(t){case mi.FILL:{e.backgroundColor=A[t],e.fillStyle="solid";break}case mi.STROKE:{e.strokeColor=A[t];break}case mi.STROKE_WIDTH:{e.strokeWidth=Number(A[t]?.split("px")[0]);break}case mi.STROKE_DASHARRAY:{e.strokeStyle="dashed";break}}}),e},U7=(A)=>{let e={};return Object.keys(A).forEach((t)=>{switch(t){case Ko.COLOR:{e.strokeColor=A[t];break}}}),e};var QEA=P(()=>{G7();ble=yu(wle(),1),Z_t={arrow_circle:{endArrowhead:"circle"},arrow_cross:{endArrowhead:"bar"},arrow_open:{endArrowhead:null,startArrowhead:null},double_arrow_circle:{endArrowhead:"circle",startArrowhead:"circle"},double_arrow_cross:{endArrowhead:"bar",startArrowhead:"bar"},double_arrow_point:{endArrowhead:"arrow",startArrowhead:"arrow"}}});var j_t=(A,e)=>[A,e],X_t=32,kle=0.62,$_t=12,AWt=12,Fle=(A,e)=>Math.max(20,Math.ceil(A.length*e*kle)),eWt=(A,e,t,r)=>{let i=r||y1;if(A!==vh.CYLINDER||!e||e.includes(`
|
||
`))return i;let u=Math.max(20,t-$_t);if(Fle(e,i)<=u)return i;return Math.max(AWt,Math.floor(u/(e.length*kle)))},tWt=(A)=>{let e={};A.subGraphs.map((r)=>{r.nodeIds.forEach((i)=>{e[r.id]={id:r.id,parent:null,isLeaf:!1},e[i]={id:i,parent:r.id,isLeaf:A.vertices[i]!==void 0}})});let t={};return[...Object.keys(A.vertices),...A.subGraphs.map((r)=>r.id)].forEach((r)=>{if(!e[r])return;let i=e[r],u=[];if(!i.isLeaf)u.push(`subgraph_group_${i.id}`);while(!0)if(i.parent)u.push(`subgraph_group_${i.parent}`),i=e[i.parent];else break;t[r]=u}),{getGroupIds:(r)=>t[r]||[],getParentId:(r)=>e[r]?e[r].parent:null}},xle;var Sle=P(()=>{Lm();QEA();G7();Sm();xle=new bg({converter:(A,e)=>{let t=[],r=e.fontSize,{getGroupIds:i,getParentId:u}=tWt(A);return A.subGraphs.reverse().forEach((a)=>{let n=i(a.id),o=hP(a),g=Fle(o,r||16)+X_t*2,C=Math.max(a.width,g),B=a.x-(C-a.width)/2,E=Rm(a.containerStyle),d=U7(a.labelStyle),I={id:a.id,type:"rectangle",groupIds:n,x:B,y:a.y,width:C,height:a.height,label:{groupIds:n,text:o,fontSize:r,verticalAlign:"top",...d},...E};t.push(I)}),Object.values(A.vertices).forEach((a)=>{if(!a)return;let n=i(a.id),o=hP(a),s=eWt(a.type,o,a.width,r),l=Rm(a.containerStyle),g=U7(a.labelStyle),C={id:a.id,type:"rectangle",groupIds:n,x:a.x,y:a.y,width:a.width,height:a.height,strokeWidth:2,label:{groupIds:n,text:o,fontSize:s,...g},link:a.link||null,...l};switch(a.type){case vh.STADIUM:{C={...C,roundness:{type:3}};break}case vh.ROUND:{C={...C,roundness:{type:3}};break}case vh.DOUBLECIRCLE:{n.push(`doublecircle_${a.id}}`);let E={type:"ellipse",groupIds:n,x:a.x+5,y:a.y+5,width:a.width-10,height:a.height-10,strokeWidth:2,roundness:{type:3},label:{groupIds:n,text:o,fontSize:s,...g}};C={...C,groupIds:n,type:"ellipse"},t.push(E);break}case vh.CIRCLE:{C.type="ellipse";break}case vh.DIAMOND:{C.type="diamond";break}}t.push(C)}),A.edges.forEach((a)=>{let n=[],o=u(a.start),s=u(a.end);if(o&&o===s)n=i(o);let{startX:l,startY:g,reflectionPoints:C}=a,B=C.map((p)=>j_t(p.x-C[0].x,p.y-C[0].y)),E=vle(a.type||"arrow_point"),d=t.find((p)=>p.id===a.start),I=t.find((p)=>p.id===a.end);if(!d||!I)return;let Q={id:`${a.start}_${a.end}`,type:"arrow",groupIds:n,x:l,y:g,strokeWidth:a.stroke==="thick"?4:2,strokeStyle:a.stroke==="dotted"?"dashed":void 0,points:B,...a.text?{label:{text:hP(a),fontSize:r,groupIds:n}}:{},roundness:{type:2},...E,start:{id:d.id||""},end:{id:I.id||""}};t.push(Q)}),{elements:t}}})});var Lle="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var fa=(A=21)=>{let e="",t=crypto.getRandomValues(new Uint8Array(A|=0));while(A--)e+=Lle[t[A]&63];return e};var nd=()=>{};var Rle;var Nle=P(()=>{Lm();nd();Rle=new bg({converter:(A)=>{let e=fa(),{width:t,height:r}=A,i={type:"image",x:0,y:0,width:t,height:r,status:"saved",fileId:e};return{files:{[e]:{id:e,mimeType:A.mimeType,dataURL:A.dataURL}},elements:[i]}}})});var M7=(A,e)=>[A,e],pEA=(A)=>A.replace(/\\n/g,`
|
||
`),od=(A)=>{let e={type:"line",x:A.startX,y:A.startY,points:[M7(0,0),M7(A.endX-A.startX,A.endY-A.startY)],width:A.endX-A.startX,height:A.endY-A.startY,strokeStyle:A.strokeStyle||"solid",strokeColor:A.strokeColor||"#000",strokeWidth:A.strokeWidth||1};if(A.groupId)Object.assign(e,{groupIds:[A.groupId]});if(A.id)Object.assign(e,{id:A.id});return e},sd=(A)=>{let e={type:"text",x:A.x,y:A.y,width:A.width,height:A.height,text:pEA(A.text)||"",fontSize:A.fontSize,verticalAlign:"top",strokeColor:A.color};if(A.groupId)Object.assign(e,{groupIds:[A.groupId]});if(A.id)Object.assign(e,{id:A.id});return e},kh=(A)=>{let e={text:pEA(A?.label?.text||""),fontSize:A?.label?.fontSize,textAlign:A.label?.textAlign,verticalAlign:A.label?.verticalAlign||"middle",strokeColor:A.label?.color||"#000",...A.groupId?{groupIds:[A.groupId]}:{}},t={};if(A.type==="rectangle"&&A.subtype==="activation")t={backgroundColor:"#e9ecef",fillStyle:"solid"};let r={id:A.id,type:A.type,x:A.x,y:A.y,width:A.width,height:A.height,label:e,strokeStyle:A?.strokeStyle,strokeWidth:A?.strokeWidth,strokeColor:A?.strokeColor,backgroundColor:A?.bgColor,fillStyle:"solid",...t};if(A.groupId)Object.assign(r,{groupIds:[A.groupId]});return r},q6=(A)=>{let e={type:"arrow",x:A.startX,y:A.startY,points:A.points?.map(([t,r])=>M7(t,r))||[M7(0,0),M7(A.endX-A.startX,A.endY-A.startY)],width:A.endX-A.startX,height:A.endY-A.startY,strokeStyle:A?.strokeStyle||"solid",endArrowhead:A?.endArrowhead||null,startArrowhead:A?.startArrowhead||null,label:{text:pEA(A?.label?.text||""),fontSize:16,textAlign:A?.label?.textAlign,verticalAlign:A?.label?.verticalAlign},roundness:{type:2},start:A.start,end:A.end};if(A.groupId)Object.assign(e,{groupIds:[A.groupId]});return e};var QP=10,fEA=16,rWt=24,iWt=4,uWt=(A)=>{if(!A)return!0;let e=A.trim().toLowerCase();return e==="transparent"||e==="none"||e==="rgba(0,0,0,0)"||e==="rgba(0, 0, 0, 0)"},aWt=(A,e)=>Math.max(20,Math.round(A.length*e*0.6)),Gle=(A,e,t=!0)=>{let r=A,i=r.groupIds??[];if(!i.includes(e))r.groupIds=[...i,e];if(!t||!r.label)return;let u=r.label.groupIds??[];if(!u.includes(e))r.label.groupIds=[...u,e]},Ule;var Mle=P(()=>{nd();Lm();Ule=new bg({converter:(A)=>{let e=[],t=[];if(Object.values(A.nodes).forEach((r)=>{if(!r||!r.length)return;r.forEach((i)=>{let u;switch(i.type){case"line":u=od(i);break;case"rectangle":case"ellipse":u=kh(i);break;case"text":u=sd(i);break;default:throw`unknown type ${i.type}`}if(i.type==="rectangle"&&i?.subtype==="activation")t.push(u);else e.push(u)})}),Object.values(A.lines).forEach((r)=>{if(!r)return;e.push(od(r))}),Object.values(A.arrows).forEach((r)=>{if(!r)return;if(e.push(q6(r)),r.sequenceNumber)e.push(kh(r.sequenceNumber))}),e.push(...t),A.loops){let{lines:r,texts:i,nodes:u}=A.loops;r.forEach((a)=>{e.push(od(a))}),i.forEach((a)=>{e.push(sd(a))}),u.forEach((a)=>{e.push(kh(a))})}if(A.groups)A.groups.forEach((r)=>{let{actorKeys:i,name:u}=r,a=1/0,n=1/0,o=0,s=0;if(!i.length)return;let l=e.filter((Q)=>{if(Q.id){let p=Q.id.indexOf("-"),m=Q.id.substring(0,p);return i.includes(m)}return!1});if(!l.length)return;if(l.forEach((Q)=>{if(Q.x===void 0||Q.y===void 0||Q.width===void 0||Q.height===void 0)return;a=Math.min(a,Q.x),n=Math.min(n,Q.y),o=Math.max(o,Q.x+Q.width),s=Math.max(s,Q.y+Q.height)}),!Number.isFinite(a)||!Number.isFinite(n)||!Number.isFinite(o)||!Number.isFinite(s))return;let g=a-QP,C=n-QP,B=o-a+QP*2,E=s-n+QP*2,d=fa(),I=fa(),h=kh({type:"rectangle",x:g,y:C,width:B,height:E,bgColor:uWt(r.fill)?void 0:r.fill,strokeColor:"#1f1f1f",strokeWidth:1,id:d,groupId:I});if(e.unshift(h),e.forEach((Q)=>{if(Q.id===d)return;if(Q.x===void 0||Q.y===void 0||Q.width===void 0||Q.height===void 0)return;if(Q.x>=a&&Q.x+Q.width<=o&&Q.y>=n&&Q.y+Q.height<=s)Gle(Q,I)}),u){let Q=sd({type:"text",id:fa(),text:u,x:g+iWt,y:C-rWt,width:aWt(u,fEA),height:fEA+8,fontSize:fEA,color:"#1f1f1f",groupId:I});Gle(Q,I,!1),e.push(Q)}});return{elements:e}}})});var Tle;var Yle=P(()=>{nd();Lm();Tle=new bg({converter:(A)=>{let e=[];return A.nodes.forEach((t)=>{if(!t||!t.length)return;t.forEach((r)=>{let i;switch(r.type){case"line":i=od(r);break;case"rectangle":case"ellipse":i=kh(r);break;case"text":i=sd(r);break;default:throw`unknown type ${r.type}`}e.push(i)})}),Object.values(A.lines).forEach((t)=>{if(!t)return;e.push(od(t))}),Object.values(A.arrows).forEach((t)=>{if(!t)return;let r=q6(t);e.push(r)}),Object.values(A.text).forEach((t)=>{let r=sd(t);e.push(r)}),Object.values(A.namespaces).forEach((t)=>{let r=Object.keys(t.classes),i=[...r],u=[...A.lines,...A.arrows,...A.text];r.forEach((n)=>{let o=u.filter((s)=>s.metadata&&s.metadata.classId===n).map((s)=>s.id);if(o.length)i.push(...o)});let a={type:"frame",id:fa(),name:t.id,children:i};e.push(a)}),{elements:e}}})});var Hle;var Kle=P(()=>{Lm();Hle=new bg({converter:(A)=>{let e=[];return A.nodes.forEach((t)=>{if(!t||!t.length)return;t.forEach((r)=>{let i;switch(r.type){case"line":i=od(r);break;case"rectangle":case"ellipse":i=kh(r);break;case"text":i=sd(r);break;default:throw`unknown type ${r.type}`}e.push(i)})}),A.lines.forEach((t)=>{e.push(od(t))}),A.arrows.forEach((t)=>{e.push(q6(t))}),A.text.forEach((t)=>{e.push(sd(t))}),{elements:e}}})});var pP=(A,e)=>[A,e],T7=16,Jle=14,nWt=1,mEA="#000000",Ole=5,oWt,sWt,lWt=1.25,Ple,DEA=(A)=>A.shape==="stateEnd"?[`state_end_group_${A.id}`]:void 0,_le=(A)=>{if(A.shape==="rectWithTitle"&&A.description.length)return[A.text,...A.description].join(`
|
||
`);return A.text},Nm,gWt=()=>{if(Nm!==void 0)return Nm;if(typeof document>"u")return Nm=null,Nm;try{Nm=document.createElement("canvas").getContext("2d")}catch{Nm=null}return Nm},z6=(A,e)=>{let t=gWt();if(!t)return A.length*e*0.6;return t.font=`${e}px Excalifont, sans-serif`,t.measureText(A).width},cWt=(A,e,t)=>{if(z6(A,e)<=t)return[A];let r=[],i="";for(let u of A){let a=`${i}${u}`;if(i&&z6(a,e)>t){r.push(i),i=u;continue}i=a}if(i)r.push(i);return r},CWt=(A,e,t)=>{if(!A.trim())return A;if(z6(A,e)<=t)return A;let r=A.split(/\s+/).filter(Boolean),i=[],u="";for(let a of r){let n=cWt(a,e,t);for(let[o,s]of n.entries()){let g=u?`${u}${u?o===0?" ":"":""}${s}`:s;if(z6(g,e)<=t){u=g;continue}if(u)i.push(u);u=s}if(n.length>1)continue}return i.push(u),i.join(`
|
||
`)},BWt=(A,e,t)=>{let i=A.map((n)=>CWt(n,e,t)).join(`
|
||
`).split(`
|
||
`),u=Math.max(...i.map((n)=>z6(n,e))),a=i.length*e*lWt;return{width:u,height:a}},EWt=(A,e,t,r)=>{let i=A.split(`
|
||
`);for(let u=T7;u>=Jle;u-=nWt){let{height:a}=BWt(i,u,e);if(a<=t)return u}return r},dWt=(A)=>{let e=_le(A);if(!e||Ple.has(A.shape))return T7;let t=Math.max(1,A.width-oWt),r=Math.max(1,A.height-sWt),i=e.split(`
|
||
`);if(i.length>1){if(Math.max(...i.map((a)=>z6(a,T7)))<=t)return T7}return EWt(e,t,r,i.length===1?T7:Jle)},IWt=(A)=>{if(Ple.has(A.shape))return;let e=_le(A);if(!e)return;return{text:e,fontSize:dWt(A),verticalAlign:A.shape==="rectWithTitle"||A.shape==="roundedWithTitle"?"top":"middle",...U7(A.labelStyle)}},hWt=(A)=>{let e=Rm(A.containerStyle),t=IWt(A),r=A.shape==="choice"?"diamond":A.shape==="stateStart"||A.shape==="stateEnd"?"ellipse":"rectangle",i=A.shape==="rect"||A.shape==="rectWithTitle"||A.shape==="roundedWithTitle",u=A.shape==="stateStart"||A.shape==="fork"||A.shape==="join",a=e.backgroundColor||e.strokeColor||mEA,n=e.strokeColor||e.backgroundColor||mEA;return{id:A.id,type:r,...DEA(A)?{groupIds:DEA(A)}:{},x:A.x,y:A.y,width:A.width,height:A.height,...t?{label:t}:{},...e,...i?{roundness:{type:3}}:{},...u?{backgroundColor:a,strokeColor:n,fillStyle:"solid"}:{}}},QWt=(A)=>{if(!A.dividerLine)return null;let e=Rm(A.containerStyle);return{id:`${A.id}__divider`,type:"line",x:A.dividerLine.startX,y:A.dividerLine.startY,width:A.dividerLine.endX-A.dividerLine.startX,height:A.dividerLine.endY-A.dividerLine.startY,points:[pP(0,0),pP(A.dividerLine.endX-A.dividerLine.startX,A.dividerLine.endY-A.dividerLine.startY)],strokeColor:e.strokeColor||"#000",strokeWidth:e.strokeWidth||1}},pWt=(A)=>{let e=Rm(A.containerStyle),t=Math.max(2,Math.min(A.width,A.height)*0.32),r=A.endInnerColor||e.strokeColor||e.backgroundColor||mEA;return{id:`${A.id}__inner`,type:"ellipse",groupIds:DEA(A),x:A.x+t,y:A.y+t,width:Math.max(1,A.width-t*2),height:Math.max(1,A.height-t*2),backgroundColor:r,strokeColor:r,fillStyle:"solid",strokeWidth:1}},fWt=(A)=>{let e=A.reflectionPoints.map((t,r,i)=>{let u=i[0];if(r===0)return pP(0,0);return pP(t.x-u.x,t.y-u.y)});return{id:A.id,type:"arrow",x:A.startX,y:A.startY,width:A.endX-A.startX,height:A.endY-A.startY,points:e,strokeColor:A.strokeColor||"#000",strokeWidth:A.strokeWidth||2,strokeStyle:A.strokeStyle||"solid",endArrowhead:A.isNoteEdge?null:"triangle",roundness:{type:2},start:{id:A.start},end:{id:A.end},...A.text?{label:{text:A.text,fontSize:16}}:{}}},Wle;var qle=P(()=>{Lm();QEA();oWt=Ole*2,sWt=Ole*2,Ple=new Set(["choice","fork","join","stateStart","stateEnd","divider"]),Wle=new bg({converter:(A)=>{let e=[];return A.nodes.forEach((t)=>{if(!t.isRenderable)return;let r=hWt(t);e.push(r);let i=QWt(t);if(i)e.push(i);if(t.shape==="stateEnd")e.push(pWt(t))}),A.edges.forEach((t)=>{e.push(fWt(t))}),{elements:e}}})});var go=(A)=>{A=mWt(A);let e=A.replace(/#(\d+);/g,"&#$1;").replace(/#([a-z]+);/g,"&$1;"),t=document.createElement("textarea");return t.innerHTML=e,t.value},jC=(A)=>{let t=A.getAttribute("transform")?.match(/translate\(([ \d.-]+),\s*([\d.-]+)\)/),r=0,i=0;if(t)r=Number(t[1]),i=Number(t[2]);return{transformX:r,transformY:i}},zle=(A)=>{let e=A;return e=e.replace(/style.*:\S*#.*;/g,(t)=>t.substring(0,t.length-1)),e=e.replace(/classDef.*:\S*#.*;/g,(t)=>t.substring(0,t.length-1)),e=e.replace(/#\w+;/g,(t)=>{let r=t.substring(1,t.length-1);if(/^\+?\d+$/.test(r))return`fl°°${r}¶ß`;return`fl°${r}¶ß`}),e},mWt=function(A){return A.replace(/fl°°/g,"#").replace(/fl°/g,"&").replace(/¶ß/g,";")},Y7=(A,e=0.5)=>{let t=[];return A.forEach((r)=>{let i=t[t.length-1];if(!i){t.push(r);return}if(Math.hypot(r[0]-i[0],r[1]-i[1])<=e)return;t.push(r)}),t},H7=(A)=>{let e=A.getAttribute("d");if(!e)return null;let t=Array.from(e.matchAll(/-?\d*\.?\d+(?:e[-+]?\d+)?/gi),(r)=>Number(r[0]));if(t.length<4)return null;return{startX:t[0],startY:t[1],endX:t[t.length-2],endY:t[t.length-1]}},fP=(A)=>{let e=A.getAttribute("data-points");if(!e){let t=H7(A);return t?[{x:t.startX,y:t.startY},{x:t.endX,y:t.endY}]:[]}try{let t=atob(e),r=JSON.parse(t);return Array.isArray(r)?r.filter((i)=>i&&typeof i.x==="number"&&typeof i.y==="number"&&Number.isFinite(i.x)&&Number.isFinite(i.y)):[]}catch{return[]}},mP=(A,e={x:0,y:0},t="LM")=>{if(A.tagName.toLowerCase()!=="path")throw Error(`Invalid input: Expected an HTMLElement of tag "path", got ${A.tagName}`);let r=A.getAttribute("d");if(!r)throw Error('Path element does not contain a "d" attribute');let i=r.split(new RegExp(`(?=[${t}])`)),u=i[0].substring(1).split(",").map((o)=>parseFloat(o)),a=i[i.length-1].substring(1).split(",").map((o)=>parseFloat(o)),n=i.map((o)=>{let s=o[0],l=o.substring(1).split(",").map((g)=>parseFloat(g));if(s==="C")return{x:l[4],y:l[5],command:s};return{x:l[0],y:l[1],command:s}}).filter((o,s,l)=>{if(s===0||s===l.length-1)return!0;if(o.x===l[s-1].x&&o.y===l[s-1].y)return!1;if(s===l.length-2&&o.command==="C")return!1;if(s===l.length-2&&(l[s-1].x===o.x||l[s-1].y===o.y)){let g=l[l.length-1];return Math.hypot(g.x-o.x,g.y-o.y)>20}return o.x!==l[s-1].x||o.y!==l[s-1].y}).map((o)=>({x:o.x+e.x,y:o.y+e.y}));return{startX:u[0]+e.x,startY:u[1]+e.y,endX:a[0]+e.x,endY:a[1]+e.y,reflectionPoints:n}};var DWt=(A)=>({...A,elements:A.elements.map((e)=>{if(!("points"in e)||!Array.isArray(e.points))return e;let t=e.points;if(t.length<2)return e;let r=Y7(t);if(r.length===t.length)return e;return{...e,points:r}})}),Zle=(A,e={})=>{let t=(()=>{switch(A.type){case"graphImage":return Rle.convert(A,e);case"flowchart":return xle.convert(A,e);case"sequence":return Ule.convert(A,e);case"class":return Tle.convert(A,e);case"erd":return Hle.convert(A,e);case"state":return Wle.convert(A,e);default:throw Error(`graphToExcalidraw: unknown graph type "${A.type}, only flowcharts are supported!"`)}})();return DWt(t)};var Vle=P(()=>{Sle();Nle();Mle();Yle();Kle();qle()});var qr=(A)=>A.replace(/\s*!important\s*$/i,"").trim(),yWt=(A,e)=>{let t=e;while(t<A.length&&/\s/.test(A[t]))t+=1;let r=t;while(t<A.length&&/[a-z-]/i.test(A[t]))t+=1;if(t===r)return!1;while(t<A.length&&/\s/.test(A[t]))t+=1;return A[t]===":"},W0=(A)=>{let e=[],t=0;while(t<A.length){while(t<A.length&&/[\s;,]/.test(A[t]))t+=1;if(t>=A.length)break;let r=t;while(t<A.length&&A[t]!==":"){if(A[t]===";"||A[t]===",")break;t+=1}if(t>=A.length||A[t]!==":")break;let i=A.substring(r,t).trim().toLowerCase();t+=1;let u=t,a=0,n=null;while(t<A.length){let s=A[t];if(n){if(s===n&&A[t-1]!=="\\")n=null;t+=1;continue}if(s==='"'||s==="'"){n=s,t+=1;continue}if(s==="("){a+=1,t+=1;continue}if(s===")"){a=Math.max(0,a-1),t+=1;continue}if(a===0){if(s===";"||s===",")break;if(/\s/.test(s)&&yWt(A,t))break}t+=1}let o=qr(A.substring(u,t));if(i&&o)e.push({property:i,value:o});if(t<A.length&&(A[t]===";"||A[t]===","))t+=1}return e},q0=(A)=>{let e=qr(A);if(!e)return!1;if(typeof CSS<"u"&&typeof CSS.supports==="function")return CSS.supports("color",e);if(typeof document<"u"){let t=document.createElement("div");return t.style.color="",t.style.color=e,t.style.color!==""}return!1},jle=(A,e)=>{let t=A.getAttribute("style");if(!t)return"";return W0(t).find((r)=>r.property===e)?.value||""},yEA=(...A)=>{for(let e of A){let t=qr(e||"");if(q0(t))return t}return},Z6=(A,e)=>{let t=A.querySelector("text, foreignObject, div, span, p")||A,r=yEA(t.getAttribute?.("fill"),jle(t,"fill"),t.style?.fill);if(r)return r;let i=yEA(t.getAttribute?.("color"),jle(t,"color"),t.style?.color);if(i)return i;let u=yEA(e);if(u)return u;return};var bEA=(A,e,t)=>{switch(e){case mi.FILL:case mi.STROKE:if(q0(t))A[e]=t;break;case mi.STROKE_WIDTH:case mi.STROKE_DASHARRAY:A[e]=t;break}},DP=(A,e,t)=>{if(e===Ko.COLOR&&q0(t))A[Ko.COLOR]=t},yP=(A,e,t)=>{if(!A)return;W0(A).forEach(({property:r,value:i})=>{bEA(e,r,i),DP(t,r,i)})},$le=(A,e)=>{if(!A)return;W0(A).forEach(({property:t,value:r})=>{if(t==="fill"&&q0(r)){e[Ko.COLOR]=r;return}DP(e,t,r)})},Age=(A,e)=>{if(!A)return;[[mi.FILL,A.getAttribute("fill")],[mi.STROKE,A.getAttribute("stroke")],[mi.STROKE_WIDTH,A.getAttribute("stroke-width")],[mi.STROKE_DASHARRAY,A.getAttribute("stroke-dasharray")]].forEach(([r,i])=>{let u=qr(i||"");if(u)bEA(e,r,u)})},ege=(A,e)=>{if(!A)return;let t=A.getAttribute("fill")||A.getAttribute("color"),r=qr(t||"");if(q0(r))e[Ko.COLOR]=r},wEA=(A,e,t,r)=>{if(!(e instanceof Map))return;let i=e.get(A);if(!i)return;i.styles?.forEach((u)=>{W0(u).forEach(({property:a,value:n})=>{bEA(t,a,n),DP(r,a,n)})}),i.textStyles?.forEach((u)=>{W0(u).forEach(({property:a,value:n})=>{DP(r,a,n)})})},wWt=(A,e,t)=>{let r=A.nodes.map((C)=>{if(C.startsWith("flowchart-"))return C.split("-")[1];return C}),i=e.querySelector(`[id='${A.id}']`);if(!i)throw Error("SubGraph element not found");let u=vEA(i,e),a=i.getBBox(),n={width:a.width,height:a.height},o={},s={},l=i.querySelector(":scope > rect, :scope > path, :scope > polygon, :scope > ellipse")||i.querySelector(".cluster > rect, .cluster > path, .cluster > polygon, .cluster > ellipse")||i.querySelector("rect, path, polygon, ellipse");yP(i.getAttribute("style"),o,s),yP(l?.getAttribute("style"),o,s),Age(l,o);let g=i.querySelector(".cluster-label text, .cluster-label tspan")||i.querySelector("text");return $le(g?.getAttribute("style"),s),ege(g,s),wEA(A.id,t,o,s),A.classes?.forEach((C)=>{wEA(C,t,o,s)}),{id:A.id,nodeIds:r,text:go(A.title),labelType:"text",...u,...n,containerStyle:o,labelStyle:s}},Xle=(A,e,t)=>{let r=e.querySelector(`[id*="${A.domId}"]`);if(!r)return;let i;if(r.parentElement?.tagName.toLowerCase()==="a")i=r.parentElement.getAttribute("xlink:href");let u=vEA(i?r.parentElement:r,e),a=r.getBBox(),n={width:a.width,height:a.height},o={},s={};if(A.classes&&t instanceof Map)(Array.isArray(A.classes)?A.classes:[A.classes]).forEach((C)=>{wEA(C,t,o,s)});A.styles?.forEach((C)=>{yP(C,o,s)});let l=r.querySelector(".label-container");return yP(l?.getAttribute("style"),o,s),Age(l,o),Array.from(r.querySelectorAll(".label, .nodeLabel, .label text, .label tspan, .label span, .label div")).forEach((C)=>{$le(C.getAttribute("style"),s),ege(C,s)}),{id:A.id,labelType:A.labelType,text:go(A.text||""),type:A.type,link:i||void 0,...u,...n,containerStyle:o,labelStyle:s}},bWt=(A,e,t)=>{let r=t.querySelector(`[id*="${A.id}"]`);if(!r)throw Error("Edge element not found");let i=vEA(r,t),u=mP(r,i);return A.length=void 0,{...A,...u,text:go(A.text)}},vEA=(A,e)=>{if(!A)throw Error("Element not found");let t=A.parentElement?.parentElement,r=A.childNodes[0],i={x:0,y:0};if(r){let{transformX:o,transformY:s}=jC(r),l=r.getBBox();i={x:Number(r.getAttribute("x"))||o+l.x||0,y:Number(r.getAttribute("y"))||s+l.y||0}}let{transformX:u,transformY:a}=jC(A),n={x:u+i.x,y:a+i.y};while(t&&t.id!==e.id){if(t.classList.value==="root"&&t.hasAttribute("transform")){let{transformX:o,transformY:s}=jC(t);n.x+=o,n.y+=s}t=t.parentElement}return n},tge=(A,e)=>{let t=A.getVertices(),r=A.getEdges(),i=A.getSubGraphs(),u=A.getClasses(),a={},n=u instanceof Map?u:{};if(t instanceof Map)t.forEach((g,C)=>{a[C]=Xle(g,e,n)});else if(typeof t==="object"&&t!==null)Object.entries(t).forEach(([g,C])=>{a[g]=Xle(C,e,n)});let o=new Map,s=(Array.isArray(r)?r:[]).map((g)=>{if(!e.querySelector(`[id*="${g.id}"]`))return null;let C=`${g.start}-${g.end}`,B=o.get(C)||0;return o.set(C,B+1),bWt(g,B,e)}).filter((g)=>g!==null&&g.reflectionPoints.length>1);return{type:"flowchart",subGraphs:(Array.isArray(i)?i:[]).map((g)=>wWt(g,e,n)),vertices:a,edges:s}};var rge=P(()=>{G7()});var ige=(A,e)=>{let t={};if(e?.label)t.label={text:go(e.label),fontSize:16};let r=A.tagName;if(r==="line")t.startX=Number(A.getAttribute("x1")),t.startY=Number(A.getAttribute("y1")),t.endX=Number(A.getAttribute("x2")),t.endY=Number(A.getAttribute("y2"));else if(r==="path"){let a=A.getAttribute("d");if(!a)throw Error('Path element does not contain a "d" attribute');let n=a.split(/(?=[LC])/),o=n[0].substring(1).split(",").map((g)=>parseFloat(g)),s=[];n.forEach((g)=>{let C=g.substring(1).trim().split(" ").map((B)=>{let[E,d]=B.split(",");return[parseFloat(E)-o[0],parseFloat(d)-o[1]]});s.push(...C)});let l=s[s.length-1];t.startX=o[0],t.startY=o[1],t.endX=l[0],t.endY=l[1],t.points=s}if(e?.label)t.startY=t.startY-10,t.endY=t.endY-10;let i=A.getAttribute("stroke"),u=(i&&i!=="none"?i:"")||getComputedStyle(A).stroke||"";return t.strokeColor=u?qr(u):null,t.strokeWidth=Number(A.getAttribute("stroke-width")),t.type="arrow",t.strokeStyle=e?.strokeStyle||"solid",t.startArrowhead=e?.startArrowhead||null,t.endArrowhead=e?.endArrowhead||null,t},K7=(A,e,t,r,i)=>{let u={};return u.type="arrow",u.startX=A,u.startY=e,u.endX=t,u.endY=r,Object.assign(u,{...i}),u},V6=(A,e,t,r)=>({type:"text",x:A,y:e,text:t,width:r?.width||20,height:r?.height||20,fontSize:r?.fontSize||y1,id:r?.id,color:r?.color,groupId:r?.groupId,metadata:r?.metadata}),kEA=(A,e,t)=>{let r={},i=Number(A.getAttribute("x")),u=Number(A.getAttribute("y"));if(r.type="text",r.text=go(e),t?.id)r.id=t.id;if(t?.groupId)r.groupId=t.groupId;let a=A.getBBox();r.width=a.width,r.height=a.height,r.x=i-a.width/2,r.y=u;let n=parseInt(getComputedStyle(A).fontSize);return r.fontSize=n,r.color=Z6(A),r},XC=(A,e,t={})=>{let r={};r.type=e;let{label:i,subtype:u,id:a,groupId:n}=t;if(r.id=a,n)r.groupId=n;if(i)r.label={text:go(i.text),fontSize:16,textAlign:i?.textAlign,verticalAlign:i?.verticalAlign};let o=A.getBBox();switch(r.x=o.x,r.y=o.y,r.width=o.width,r.height=o.height,r.subtype=u,u){case"highlight":let s=A.getAttribute("fill");if(s)r.bgColor=qr(s);break;case"note":r.strokeStyle="dashed";break}return r},Gm=(A,e,t,r,i,u)=>{let a={};if(a.startX=e,a.startY=t,a.endX=r,u?.groupId)a.groupId=u.groupId;if(u?.id)a.id=u.id;a.endY=i;let n=A.getAttribute("stroke");return a.strokeColor=n?qr(n):null,a.strokeWidth=Number(A.getAttribute("stroke-width")),a.type="line",a};var wP=P(()=>{Sm()});var uge,ld,vWt=(A)=>{let e;switch(A){case ld.SOLID:case ld.SOLID_CROSS:case ld.SOLID_OPEN:case ld.SOLID_POINT:e="solid";break;case ld.DOTTED:case ld.DOTTED_CROSS:case ld.DOTTED_OPEN:case ld.DOTTED_POINT:e="dotted";break;default:e="solid";break}return e},kWt=(A,e)=>{if(!!A.nextElementSibling?.classList.contains("sequenceNumber")){let r=A.nextElementSibling?.textContent;if(!r)throw Error("sequence number not present");let i=30,u=i/2,a=10,n={type:"rectangle",x:e.startX-a,y:e.startY-u,label:{text:r,fontSize:14},bgColor:"#e9ecef",height:i,subtype:"sequence"};Object.assign(e,{sequenceNumber:n})}},age=(A,e,t)=>{if(!A)throw"root node not found";let r=fa(),i=Array.from(A.children),u=[];return i.forEach((a,n)=>{let o=`${t?.id}-${n}`,s;switch(a.tagName){case"line":let l=Number(a.getAttribute("x1")),g=Number(a.getAttribute("y1")),C=Number(a.getAttribute("x2")),B=Number(a.getAttribute("y2"));s=Gm(a,l,g,C,B,{groupId:r,id:o});break;case"text":s=kEA(a,e,{groupId:r,id:o});break;case"circle":s=XC(a,"ellipse",{label:a.textContent?{text:a.textContent}:void 0,groupId:r,id:o});default:s=XC(a,mle[a.tagName],{label:a.textContent?{text:a.textContent}:void 0,groupId:r,id:o})}u.push(s)}),u},nge=(A,e)=>{let t=e.getAttribute("fill"),r=e.getAttribute("stroke"),i=e.getAttribute("stroke-width"),u=e.getAttribute("stroke-dasharray");if(t&&t!=="none")A.bgColor=qr(t);if(r&&r!=="none")A.strokeColor=qr(r);if(i)A.strokeWidth=Number(i);if(u&&u.trim())A.strokeStyle="dashed"},FWt=(A,e)=>{let t=Array.from(e.querySelectorAll(".actor-top")),r=Array.from(e.querySelectorAll(".actor-bottom")),i=[],u=[],a={},n=A instanceof Map?Array.from(A.values()):Object.values(A),o=Array.from(e.querySelectorAll(".actor-line")),s=(l,g)=>{let C=l.name,B=o.find((d)=>d.getAttribute("name")===C);if(B)return B;let E=l.type==="participant"?g.parentElement?.previousElementSibling:g.previousElementSibling;if(!E)return null;if(E.tagName==="line")return E;return E.querySelector("line")};return n.forEach((l)=>{let g=t.find((E)=>E.getAttribute("name")===l.name),C=r.find((E)=>E.getAttribute("name")===l.name);if(!g||!C)throw"root not found";let B=l.description;if(l.type==="participant"){let E=XC(g,"rectangle",{id:`${l.name}-top`,label:{text:B},subtype:"actor"});if(nge(E,g),!E)throw"Top Node element not found!";i.push([E]);let d=XC(C,"rectangle",{id:`${l.name}-bottom`,label:{text:B},subtype:"actor"});a[l.name]={topId:`${l.name}-top`,bottomId:`${l.name}-bottom`,bindType:"rectangle"},nge(d,C),i.push([d]);let I=s(l,g);if(I?.tagName!=="line")throw"Line not found";let h=Number(I.getAttribute("x1"));if(!E.height)throw"Top node element height is null";let Q=E.y+E.height,p=d.y,m=Number(I.getAttribute("x2")),f=Gm(I,h,Q,m,p);u.push(f)}else if(l.type==="actor"){let E=age(g,B,{id:`${l.name}-top`});i.push(E);let d=age(C,B,{id:`${l.name}-bottom`});i.push(d);let I=s(l,g);if(I?.tagName!=="line")throw"Line not found";let h=Number(I.getAttribute("x1")),Q=Number(I.getAttribute("y1")),p=Number(I.getAttribute("x2")),m=d.find((w)=>w.type==="ellipse");if(m){let w=m.y,b=Gm(I,h,Q,p,w);u.push(b)}let f=E.find((w)=>w.type==="ellipse"),D=d.find((w)=>w.type==="ellipse");if(f?.id&&D?.id)a[l.name]={topId:f.id,bottomId:D.id,bindType:"ellipse"}}}),{nodes:i,lines:u,actorMap:a}},xWt=(A,e,t)=>{let r=[],i=Array.from(e.querySelectorAll('[class*="messageLine"]')),u=Object.keys(uge),a=A.filter((n)=>u.includes(n.type.toString()));return i.forEach((n,o)=>{let s=a[o],l=uge[s.type],g=ige(n,{label:s?.message,strokeStyle:vWt(s.type),endArrowhead:l==="SOLID_OPEN"||l==="DOTTED_OPEN"?null:"arrow"}),C=t[s.from],B=t[s.to];if(C?.topId&&B?.topId)g.start={type:C.bindType||"rectangle",id:C.topId},g.end={type:B.bindType||"rectangle",id:B.topId};kWt(n,g),r.push(g)}),r},SWt=(A,e)=>{let t=Array.from(e.querySelectorAll(".note")).map((u)=>u.parentElement),r=A.filter((u)=>u.type===ld.NOTE),i=[];return t.forEach((u,a)=>{if(!u)return;let n=u.firstChild,o=r[a].message,s=XC(n,"rectangle",{label:{text:o},subtype:"note"}),l=n.getAttribute("fill"),g=n.getAttribute("stroke"),C=n.getAttribute("stroke-width"),B=n.getAttribute("stroke-dasharray");if(l&&l!=="none")s.bgColor=qr(l);if(g&&g!=="none")s.strokeColor=qr(g);if(C)s.strokeWidth=Number(C);if(B&&B.trim())s.strokeStyle="dashed";i.push(s)}),i},LWt=(A)=>{let e=Array.from(A.querySelectorAll("[class*=activation]")),t=[];return e.forEach((r)=>{let i=XC(r,"rectangle",{label:{text:""},subtype:"activation"});(()=>{let a=r.getAttribute("fill"),n=r.getAttribute("stroke"),o=r.getAttribute("stroke-width"),s=r.getAttribute("stroke-dasharray");if(a&&a!=="none")i.bgColor=qr(a);if(n&&n!=="none")i.strokeColor=qr(n);if(o)i.strokeWidth=Number(o);if(s&&s.trim())i.strokeStyle="dashed"})(),t.push(i)}),t},RWt=(A,e)=>{let t=Array.from(e.querySelectorAll(".loopLine")),r=[],i=[],u=[];t.forEach((l)=>{let g=Number(l.getAttribute("x1")),C=Number(l.getAttribute("y1")),B=Number(l.getAttribute("x2")),E=Number(l.getAttribute("y2")),d=Gm(l,g,C,B,E);d.strokeStyle="dotted",d.strokeColor="#adb5bd",d.strokeWidth=2,r.push(d)});let a=Array.from(e.querySelectorAll(".loopText")),n=A.filter((l)=>l.type===ld.CRITICAL_START).map((l)=>l.message);a.forEach((l)=>{let g=l.textContent||"",C=kEA(l,g),B=g.match(/\[(.*?)\]/)?.[1]||"";if(n.includes(B))C.x+=16;i.push(C)});let o=Array.from(e?.querySelectorAll(".labelBox")),s=Array.from(e?.querySelectorAll(".labelText"));return o.forEach((l,g)=>{let C=s[g]?.textContent||"",B=XC(l,"rectangle",{label:{text:C}});B.strokeColor="#adb5bd",B.bgColor="#e9ecef",B.width=void 0,u.push(B)}),{lines:r,texts:i,nodes:u}},NWt=(A)=>{let e=Array.from(A.querySelectorAll(".rect")).filter((r)=>r.parentElement?.tagName!=="g"),t=[];return e.forEach((r)=>{let i=XC(r,"rectangle",{label:{text:""},subtype:"highlight"});t.push(i)}),t},oge=(A,e)=>{let t=A.db,r=[],u=t.getBoxes().map((I)=>({...I,fill:qr(I.fill||"")})),a=NWt(e),n=t.getActors(),{nodes:o,lines:s,actorMap:l}=FWt(n,e),g=t.getMessages(),C=xWt(g,e,l),B=SWt(g,e),E=LWt(e),d=RWt(g,e);return r.push(a),r.push(...o),r.push(B),r.push(E),{type:"sequence",lines:s,arrows:C,nodes:r,loops:d,groups:u}};var sge=P(()=>{Sm();nd();wP();uge={0:"SOLID",1:"DOTTED",3:"SOLID_CROSS",4:"DOTTED_CROSS",5:"SOLID_OPEN",6:"DOTTED_OPEN",24:"SOLID_POINT",25:"DOTTED_POINT"},ld={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32}});var GWt=(A)=>{let e={};if(!A)return e;return A.forEach((t)=>{W0(t).forEach(({property:r,value:i})=>{if(r&&i)e[r]=qr(i)})}),e},bP,lge,gge=16,UWt=(A)=>{let e;switch(A){case lge.LINE:e="solid";break;case lge.DOTTED_LINE:e="dotted";break;default:e="solid"}return e},cge=(A)=>{let e;switch(A){case bP.AGGREGATION:e="diamond_outline";break;case bP.COMPOSITION:e="diamond";break;case bP.EXTENSION:e="triangle_outline";break;case"none":e=null;break;case bP.DEPENDENCY:default:e="arrow";break}return e},FEA=(A,e)=>{let t=0,r=0,i=A;while(i&&i!==e){let{transformX:u,transformY:a}=jC(i);t+=u,r+=a,i=i.parentElement}return{tx:t,ty:r}},Cge,dge=(A,e=0.5)=>{if(A.length<=2)return[...A];let t=[A[0]];for(let r=1;r<A.length-1;r++){let i=t[t.length-1],u=A[r],a=A[r+1],n=a.x-i.x,o=a.y-i.y,s=Math.hypot(n,o);if(!s)continue;let g=Math.abs(n*(u.y-i.y)-o*(u.x-i.x))/s,C=((u.x-i.x)*n+(u.y-i.y)*o)/(s*s);if(g<=e&&C>=-e&&C<=1+e)continue;t.push(u)}return t.push(A[A.length-1]),t},Ige=(A)=>{let e=Y7(fP(A).map((r)=>[r.x,r.y])).map(([r,i])=>({x:r,y:i})),t=H7(A);if(t&&e.length>=2)e[0]={x:t.startX,y:t.startY},e[e.length-1]={x:t.endX,y:t.endY};return dge(e)},Bge=(A,e,t)=>{let r=A.x-e.x,i=A.y-e.y,u=Math.hypot(r,i);if(!u)return A;return{x:A.x+r/u*t,y:A.y+i/u*t}},MWt=(A,e)=>{let t=Y7(e.map((u)=>[u.x,u.y])).map(([u,a])=>({x:u,y:a}));if(t.length<2)throw Error("Arrow route must contain at least two points");let r=t[0],i=t[t.length-1];A.startX=r.x,A.startY=r.y,A.endX=i.x,A.endY=i.y,A.points=t.map((u)=>[u.x-r.x,u.y-r.y])},TWt=(A)=>{let e=A.points?.map(([u,a])=>({x:A.startX+u,y:A.startY+a})).filter((u)=>Number.isFinite(u.x)&&Number.isFinite(u.y));if(!e||e.length<2)return A;let t=[...e],r=!!A.startArrowhead&&Cge.has(A.startArrowhead),i=!!A.endArrowhead&&Cge.has(A.endArrowhead);if(!r&&!i)return A;if(r)t[0]=Bge(t[0],t[1],gge);if(i){let u=t.length-1;t[u]=Bge(t[u],t[u-1],gge)}return MWt(A,t),A},YWt=(A,e)=>{let t=qr(A.getAttribute("stroke")||getComputedStyle(A).stroke||""),r=parseFloat(A.getAttribute("stroke-width")||getComputedStyle(A).strokeWidth||"1");if(q0(t)&&t!=="none")e.strokeColor=t;if(Number.isFinite(r)&&r>0)e.strokeWidth=r},HWt=(A)=>{let e=[];return A.forEach((t)=>{Ige(t).forEach((r)=>{let i=e[e.length-1];if(i&&i.x===r.x&&i.y===r.y)return;e.push(r)})}),dge(e)},hge=(A,e,t)=>{if(A.length<2)throw Error(`Class diagram edge ${e?.id||"<unknown>"} is missing usable path points`);let r=A[0],i=A[A.length-1],u=K7(r.x,r.y,i.x,i.y,{id:e?.getAttribute("data-id")||e?.id||void 0,...t,points:A.map((a)=>[a.x-r.x,a.y-r.y])});if(e)YWt(e,u);return TWt(u)},Qge=(A,e)=>hge(HWt(A),A[0],e),KWt=(A,e)=>{let t=Ige(A);return hge([t[0],t[t.length-1]],A,e)},JWt=(A,e)=>Qge([A],e),OWt=(A,e)=>[`${A}-cyclic-special-1`,`${A}-cyclic-special-mid`,`${A}-cyclic-special-2`].map((r)=>e.querySelector(`path[id="${r}"][data-edge="true"]`)).filter((r)=>r!==null),PWt=(A)=>A.points?.map(([e,t])=>({x:A.startX+e,y:A.startY+t})).filter((e)=>Number.isFinite(e.x)&&Number.isFinite(e.y))||[],Ege=(A,e)=>{let t=PWt(A);if(t.length<2)return null;let r=e==="start",i=r?t[0]:t[t.length-1],u=r?t[1]:t[t.length-2],a=u.x===i.x?r?-1:1:Math.sign(u.x-i.x),n=u.y===i.y?1:Math.sign(u.y-i.y);return{x:i.x+a*20,y:i.y+(n>=0?12:-28)}},_Wt=(A,e)=>{let t=A;while(t&&t!==e){if(t.classList.contains("annotation-group"))return"header";if(t.classList.contains("label-group"))return"header";if(t.classList.contains("members-group"))return"members";if(t.classList.contains("methods-group"))return"methods";t=t.parentElement}return"other"},WWt=(A,e,t)=>{let r=[],i=[],u=[];return Object.values(A).forEach((a)=>{let{domId:n,id:o}=a,s=fa(),l=GWt(a.styles||a.cssStyles),g;try{g=t?t(o):void 0}catch{g=void 0}let C=(M)=>{let U=new RegExp(`^classId-${M}(?:-|$)`);return Array.from(e.querySelectorAll("[id]")).filter((H)=>U.test(H.id))[0]},B=g&&e.querySelector(`#${g}`)||e.querySelector(`#${n}`)||e.querySelector(`[data-id='${o}']`)||C(o);if(!B)throw Error(`DOM Node with id ${n} not found`);let E=B.querySelector("rect")||B,d=E.getBBox(),{tx:I,ty:h}=FEA(E,e),Q={type:"rectangle",id:o,groupId:s,x:d.x+I,y:d.y+h,width:d.width,height:d.height,metadata:{classId:o}},p=E.getAttribute("fill"),m=E.getAttribute("stroke"),f=E.getAttribute("stroke-width"),D=E.getAttribute("stroke-dasharray"),w=getComputedStyle(E),b=qr(p||l.fill||(p?w.fill:"")),F=qr(m||l.stroke||(m?w.stroke:"")),v=f||l["stroke-width"]||(f?w.strokeWidth:""),S=D||l["stroke-dasharray"]||(D?w.strokeDasharray==="none"?"":w.strokeDasharray:""),x=(M)=>{if(!M)return!1;if(!q0(M))return!1;let U=M.toLowerCase();return!(U==="none"||U==="transparent"||U==="rgba(0, 0, 0, 0)"||U==="black"||U==="#000"||U==="#000000"||U==="rgb(0, 0, 0)"||U==="rgba(0, 0, 0, 1)")};if(x(b))Q.bgColor=b;else Q.bgColor=void 0;if(x(F))Q.strokeColor=F;else Q.strokeColor=void 0;if(v)Q.strokeWidth=Number(v);else Q.strokeWidth=void 0;if(S&&S.trim().length>0)Q.strokeStyle="dashed";else Q.strokeStyle=void 0;r.push(Q),[...Array.from(B.querySelectorAll("line")),...Array.from(B.querySelectorAll("g.divider path"))].forEach((M)=>{let{tx:U,ty:Y}=FEA(M,e),H,J,K,O;if(M.tagName.toLowerCase()==="line")H=Number(M.getAttribute("x1"))+U,J=Number(M.getAttribute("y1"))+Y,K=Number(M.getAttribute("x2"))+U,O=Number(M.getAttribute("y2"))+Y;else{let z=M.getBBox();H=z.x+U,K=z.x+z.width+U;let j=z.y+z.height/2+Y;J=j,O=j}if(H===K&&J===O)return;let _=Gm(M,H,J,K,O,{groupId:s,id:fa()});if(Q.strokeColor)_.strokeColor=Q.strokeColor;else _.strokeColor=void 0;if(Q.strokeWidth!==void 0)_.strokeWidth=Q.strokeWidth;else _.strokeWidth=void 0;if(Q.strokeStyle)_.strokeStyle=Q.strokeStyle;else _.strokeStyle=void 0;_.metadata={classId:o},i.push(_)});let T=Array.from(B.querySelectorAll("text, foreignObject")),R=[];T.forEach((M)=>{let U=M.tagName.toLowerCase()==="foreignobject",Y=!U?Array.from(M.querySelectorAll("tspan")):[],H=Y.length?Y.map((z)=>z.textContent?.trim()).filter(Boolean).join(`
|
||
`):M.textContent?.trim()||"";if(!H)return;let J=M.getBBox(),{ty:K}=FEA(M,e),O=parseFloat(getComputedStyle(M).fontSize||"");if(U&&(!Number.isFinite(O)||!O)){let z=M.querySelector("div, span, p");if(z)O=parseFloat(getComputedStyle(z).fontSize||"")}if(!Number.isFinite(O)||O<=0)O=Math.max(12,J.height*0.6);O=O*0.9;let _=Z6(M,l.color);R.push({section:_Wt(M,B),text:go(H),x:J.x,y:J.y+K,width:Q&&Q.width?Math.max(Q.width-8,J.width):J.width,height:J.height,fontSize:O,color:_})});let L=R.filter((M)=>M.section==="header").sort((M,U)=>M.y-U.y||M.x-U.x);if(!Q.label){let M=L.length===0&&R.length===1?R:L;if(M.length>0)Q.label={text:M.map((U)=>U.text).join(`
|
||
`),fontSize:Math.max(...M.map((U)=>U.fontSize)),color:M.find((U)=>U.color)?.color,verticalAlign:"top"}}R.filter((M)=>{if(L.length>0)return M.section!=="header";return!(Q.label&&R.length===1)}).forEach((M)=>{let U=V6((Q?.x||0)+4,M.y,M.text,{width:M.width,height:M.height,fontSize:M.fontSize,color:M.color,id:fa(),groupId:s,metadata:{classId:o}});u.push(U)})}),{nodes:r,lines:i,text:u}},qWt=(A,e,t,r)=>{let i=Array.from(t.querySelectorAll('.edgePaths path[data-edge="true"]:not([id^="edgeNote"]):not([id*="-cyclic-special-"])'));if(A.length===0)return{arrows:[],text:[]};let u=[],a=[],n=0;return A.forEach((o)=>{let{id1:s,id2:l,relation:g}=o,C=e.find((v)=>v.id===s),B=e.find((v)=>v.id===l);if(!C)throw Error(`parseRelations: Cannot find node with id ${s}`);if(!B)throw Error(`parseRelations: Cannot find node with id ${l}`);let E=UWt(g.lineType),d=cge(g.type1),I=cge(g.type2),h;if(s===l){let v=OWt(s,t);if(!v.length)throw Error(`parseRelations: Cannot find rendered SVG edge for relation ${s} -> ${l}`);h=Qge(v,{strokeStyle:E,startArrowhead:d,endArrowhead:I,label:o.title?{text:o.title}:void 0,start:{type:"rectangle",id:C.id},end:{type:"rectangle",id:B.id}})}else{let v=i[n];if(!v)throw Error(`parseRelations: Cannot find rendered SVG edge for relation ${s} -> ${l}`);n+=1,h=KWt(v,{strokeStyle:E,startArrowhead:d,endArrowhead:I,label:o.title?{text:o.title}:void 0,start:{type:"rectangle",id:C.id},end:{type:"rectangle",id:B.id}})}u.push(h);let{relationTitle1:Q,relationTitle2:p}=o,m=s===l,f=20,D=15,w=15,b,F;if(Q&&Q!=="none"){if(m){let S=Ege(h,"start");if(S)b=S.x,F=S.y}else switch(r){case"TB":if(b=h.startX-f,h.endX<h.startX)b-=w;F=h.startY+D;break;case"BT":if(b=h.startX+f,h.endX>h.startX)b+=w;F=h.startY-D;break;case"LR":if(b=h.startX+f,F=h.startY+D,h.endY>h.startY)F+=w;break;case"RL":if(b=h.startX-f,F=h.startY-D,h.startY>h.endY)F-=w;break;default:b=h.startX-f,F=h.startY+D}b??=h.startX-f,F??=h.startY+D;let v=V6(b,F,Q,{fontSize:16});a.push(v)}if(p&&p!=="none"){if(m){let S=Ege(h,"end");if(S)b=S.x,F=S.y}else switch(r){case"TB":if(b=h.endX+f,h.endX<h.startX)b+=w;F=h.endY-D;break;case"BT":if(b=h.endX-f,h.endX>h.startX)b-=w;F=h.endY+D;break;case"LR":if(b=h.endX-f,F=h.endY-D,h.endY>h.startY)F-=w;break;case"RL":if(b=h.endX+f,F=h.endY+D,h.startY>h.endY)F+=w;break;default:b=h.endX+f,F=h.endY-D}b??=h.endX+f,F??=h.endY+D;let v=V6(b,F,p,{fontSize:16});a.push(v)}}),{arrows:u,text:a}},zWt=(A,e,t)=>{let r=[],i=[];return A.forEach((u,a)=>{let{id:n,text:o,class:s}=u,l=e.querySelector(`#${n}`);if(!l)throw Error(`Node with id ${n} not found!`);let{transformX:g,transformY:C}=jC(l),B=l.firstChild,E=XC(B,"rectangle",{id:n,subtype:"note",label:{text:o}});if(Object.assign(E,{x:E.x+g,y:E.y+C}),r.push(E),s){let d=t.find((D)=>D.id===s);if(!d)throw Error(`class node with id ${s} not found!`);let I=e.querySelector(`path[id="edgeNote${a+1}"][data-edge="true"]`);if(I){i.push(JWt(I,{strokeStyle:"dotted",startArrowhead:null,endArrowhead:null,start:{id:E.id,type:"rectangle"},end:{id:d.id,type:"rectangle"}}));return}let h=E.x+(E.width||0)/2,Q=E.y+(E.height||0),p=h,m=d.y,f=K7(h,Q,p,m,{strokeStyle:"dotted",startArrowhead:null,endArrowhead:null,start:{id:E.id,type:"rectangle"},end:{id:d.id,type:"rectangle"}});i.push(f)}}),{notes:r,connectors:i}},pge=(A,e)=>{let t=A.db,r=t.getDirection?.()||"TB",i=[],u=[],a=[],n=[],o=t.getNamespaces?.()||[],s=t.getClasses?.()||{},l=s instanceof Map?Object.fromEntries(s):s;if(l&&Object.keys(l).length){let h=typeof t.lookUpDomId==="function"?t.lookUpDomId.bind(t):void 0,Q=WWt(l,e,h);i.push(Q.nodes),u.push(...Q.lines),a.push(...Q.text),n.push(...Q.nodes)}let g=t.getRelations?.()||[],{arrows:C,text:B}=qWt(g,n,e,r),E=t.getNotes?.()||[],{notes:d,connectors:I}=zWt(E,e,n);return i.push(d),C.push(...I),a.push(...B),{type:"class",nodes:i,lines:u,arrows:C,text:a,namespaces:o}};var fge=P(()=>{nd();wP();bP={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},lge={LINE:0,DOTTED_LINE:1},Cge=new Set(["triangle_outline","diamond","diamond_outline"])});var mge=18,ZWt=(A)=>{let e={};if(!A)return e;return A.forEach((t)=>{W0(t).forEach(({property:r,value:i})=>{if(r&&i)e[r]=qr(i)})}),e},VWt=(A)=>{if(A===null||A===void 0||A==="")return;let e=typeof A==="number"?A:parseFloat(qr(A));if(!Number.isFinite(e)||e<=0)return;return e},xEA=(A,e)=>{let t=0,r=0,i=A;while(i&&i!==e){let{transformX:u,transformY:a}=jC(i);t+=u,r+=a,i=i.parentElement}return{tx:t,ty:r}},jWt=(A)=>{let e=Array.from(A.querySelectorAll("tspan")),t=e.length?e.map((r)=>r.textContent?.trim()).filter(Boolean).join(`
|
||
`):A.textContent?.trim()||"";return go(t)},XWt=(A)=>{let e=A.querySelector("text, foreignObject, div, span, p")||A,t=parseFloat(getComputedStyle(e).fontSize||"");if(!Number.isFinite(t)||t<=0)t=Math.max(12,A.getBBox().height*0.75);return t},$Wt=(A,e,t)=>{let r=jWt(A);if(!r)return null;let i=A.getBBox(),{tx:u,ty:a}=xEA(A,e);return{className:A.getAttribute("class")||"",text:r,x:i.x+u,y:i.y+a,width:i.width,height:i.height,fontSize:XWt(A),color:Z6(A,t)}},Aqt=(A,e,t,r,i,u,a)=>{let{tx:n,ty:o}=xEA(A,e),s=0,l=0,g=0,C=0;if(A.tagName.toLowerCase()==="line")s=Number(A.getAttribute("x1"))+n,l=Number(A.getAttribute("y1"))+o,g=Number(A.getAttribute("x2"))+n,C=Number(A.getAttribute("y2"))+o;else{let E=H7(A);if(!E)return null;s=E.startX+n,l=E.startY+o,g=E.endX+n,C=E.endY+o}let B={type:"line",id:fa(),groupId:t,startX:s,startY:l,endX:g,endY:C,metadata:{entityId:r}};if(i&&q0(i)&&i!=="none")B.strokeColor=i;if(u!==void 0)B.strokeWidth=u;if(a)B.strokeStyle=a;return B},Dge=(A)=>{switch(A?.toLowerCase()){case"one":return"cardinality_one";case"many":return"cardinality_many";case"only_one":return"cardinality_exactly_one";case"one_or_more":return"cardinality_one_or_many";case"zero_or_one":return"cardinality_zero_or_one";case"zero_or_more":return"cardinality_zero_or_many";default:return null}},eqt=(A)=>{switch(A){case"dotted":return"dotted";case"dashed":return"dashed";default:return"solid"}},tqt=(A,e)=>{let t=e.querySelector(`path[id="${A.id}"][data-edge="true"]`);if(t)return[t];if(A.start!==A.end)return[];return[`${A.start}-cyclic-special-1`,`${A.start}-cyclic-special-mid`,`${A.start}-cyclic-special-2`].map((i)=>e.querySelector(`path[id="${i}"][data-edge="true"]`)).filter((i)=>i!==null)},rqt=(A)=>{let e=[];return A.forEach((t)=>{fP(t).forEach((r)=>{let i=e[e.length-1];if(i&&i.x===r.x&&i.y===r.y)return;e.push(r)})}),e},iqt=(A,e)=>{let t=e.querySelector(`[id="${A.id}"]`);if(!t)throw Error(`ER entity ${A.id} not found in rendered SVG`);let r=A.attributes.length?fa():void 0,i=t.getBBox(),{tx:u,ty:a}=xEA(t,e),n=ZWt([...A.cssStyles||[],...A.cssCompiledStyles||[]]),o=qr(n.fill||""),s=qr(n.stroke||""),l=VWt(n["stroke-width"]),g=qr(n["stroke-dasharray"]||""),C=Array.from(t.querySelectorAll("g.label")).map((p)=>$Wt(p,e,n.color)).filter((p)=>p!==null),B=C.find((p)=>p.className.includes("name"))||C[0],E=C.filter((p)=>p!==B),d=B?.text||go(A.alias||A.label||""),I={type:"rectangle",id:A.id,groupId:r,x:i.x+u,y:i.y+a,width:i.width,height:i.height,label:{text:d,fontSize:A.attributes.length?mge:B?.fontSize||16,color:B?.color,textAlign:"center",verticalAlign:A.attributes.length?"top":"middle"},metadata:{entityId:A.id,entityLabel:A.label,entityAlias:A.alias}};if(q0(o)&&o!=="none")I.bgColor=o;if(q0(s)&&s!=="none")I.strokeColor=s;if(l&&Number.isFinite(l)&&l>0)I.strokeWidth=l;if(g&&g!=="none")I.strokeStyle="dashed";let h=Array.from(t.querySelectorAll(".divider path, path.divider, line.divider")).map((p)=>Aqt(p,e,r,A.id,I.strokeColor,I.strokeWidth,I.strokeStyle)).filter((p)=>p!==null),Q=E.map((p)=>V6(p.x,p.y,p.text,{id:fa(),groupId:r,width:p.width,height:p.height,fontSize:mge,color:p.color,metadata:{entityId:A.id}}));return{container:I,lines:h,text:Q}},uqt=(A,e)=>{let t=tqt(A,e);if(!t.length)throw Error(`ER relationship ${A.id} not found in rendered SVG`);let r=rqt(t);if(r.length<2)throw Error(`ER relationship ${A.id} is missing usable path points`);let i=r[0],u=r[r.length-1],a=t[0],n=qr(a.getAttribute("stroke")||getComputedStyle(a).stroke||""),o=Number(a.getAttribute("stroke-width")||getComputedStyle(a).strokeWidth||1),s=K7(i.x,i.y,u.x,u.y,{id:A.id,label:A.label?{text:go(A.label),fontSize:16,textAlign:"center"}:void 0,strokeStyle:eqt(A.pattern),startArrowhead:Dge(A.arrowTypeStart),endArrowhead:Dge(A.arrowTypeEnd),start:{type:"rectangle",id:A.start},end:{type:"rectangle",id:A.end},points:r.map((l)=>[l.x-i.x,l.y-i.y])});if(q0(n)&&n!=="none")s.strokeColor=n;if(Number.isFinite(o)&&o>0)s.strokeWidth=o;return s},yge=(A,e)=>{let t=A.getData(),{nodes:r,edges:i}=t,u=[],a=[],n=[];r.forEach((s)=>{let l=iqt(s,e);u.push(l.container),a.push(...l.lines),n.push(...l.text)});let o=i.map((s)=>uqt(s,e));return{type:"erd",nodes:[u],lines:a,arrows:o,text:n}};var wge=P(()=>{nd();wP()});var Um=(A)=>{let e=qr(A||"");if(!e)return!1;if(e==="none"||e==="transparent"||e==="rgba(0, 0, 0, 0)"||e==="rgba(0,0,0,0)")return!1;return q0(e)},vge=(A,e,t)=>{switch(e){case mi.FILL:case mi.STROKE:if(Um(t))A[e]=qr(t);break;case mi.STROKE_WIDTH:case mi.STROKE_DASHARRAY:if(qr(t))A[e]=qr(t);break}},kge=(A,e,t)=>{if(e===Ko.COLOR&&Um(t))A[Ko.COLOR]=qr(t)},aqt=(A,e,t)=>{if(!A)return;W0(A).forEach(({property:r,value:i})=>{vge(e,r,i),kge(t,r,i)})},nqt=(A,e)=>{if(!A)return;W0(A).forEach(({property:t,value:r})=>{if(t===mi.FILL&&Um(r)){e[Ko.COLOR]=qr(r);return}kge(e,t,r)})},oqt=(A)=>{let e=new Set;return A.filter(Boolean).forEach((t)=>{W0(t||"").forEach(({property:r})=>{e.add(r)})}),e},sqt=(A,e,t)=>{if(!A)return;[[mi.FILL,A.getAttribute("fill")],[mi.STROKE,A.getAttribute("stroke")],[mi.STROKE_WIDTH,A.getAttribute("stroke-width")],[mi.STROKE_DASHARRAY,A.getAttribute("stroke-dasharray")]].forEach(([i,u])=>{if(!t.has(i))return;if(e[i])return;let a=qr(u||"");if(!a)return;vge(e,i,a)})},lqt=(A,e,t)=>{if(!A)return;let r=[A,...Array.from(A.querySelectorAll("text, foreignObject, div, span, p"))];for(let i of r){if(e[Ko.COLOR])break;if(t.has(Ko.COLOR)||t.has(mi.FILL)){if(nqt(i.getAttribute("style"),e),e[Ko.COLOR])break}let u=qr(i.getAttribute("fill")||i.getAttribute("color")||"");if((t.has(Ko.COLOR)||t.has(mi.FILL))&&Um(u))e[Ko.COLOR]=u}},LEA=(A,e)=>{let t=0,r=0,i=A;while(i&&i!==e){let{transformX:u,transformY:a}=jC(i);t+=u,r+=a,i=i.parentElement}return{tx:t,ty:r}},gqt=(A,e)=>{let t=A.getBBox(),{tx:r,ty:i}=LEA(A,e);return{x:t.x+r,y:t.y+i,width:t.width,height:t.height}},cqt=(A,e)=>{let t=A.querySelector("line.divider");if(!t)return;let{tx:r,ty:i}=LEA(t,e);return{startX:Number(t.getAttribute("x1"))+r,startY:Number(t.getAttribute("y1"))+i,endX:Number(t.getAttribute("x2"))+r,endY:Number(t.getAttribute("y2"))+i}},Cqt=(A)=>{let e=A.getBBox();return Math.abs(e.width*e.height)},bge=(A,e)=>{let t=A.getAttribute("style");if(!t)return;let r=W0(t).find((i)=>i.property===e);if(!r)return;return qr(r.value)},SEA=(A,e)=>{let t=A.map((i)=>({element:i,area:Cqt(i)})).filter(({area:i})=>Number.isFinite(i)&&i>0);if(t.length===0)return null;return t.sort((i,u)=>e==="largest"?u.area-i.area:i.area-u.area)[0].element},Bqt=(A,e)=>{if(!A)return;if(!e.has(mi.FILL)&&!e.has(mi.STROKE))return;let t=qr(A.getAttribute("fill")||bge(A,mi.FILL)||""),r=qr(A.getAttribute("stroke")||bge(A,mi.STROKE)||"");if(Um(t))return t;if(Um(r))return r;return},Eqt=(A,e)=>{let t=Array.from(A.querySelectorAll("circle, ellipse, path")),r=SEA(t,"smallest");return Bqt(r,e)},dqt=(A)=>{if(A.length<2)return A;let e=A.slice(1),t=e.filter((r)=>r.trim().length>0).reduce((r,i)=>{let u=i.match(/^\s*/)?.[0].length??0;return Math.min(r,u)},Number.POSITIVE_INFINITY);if(!Number.isFinite(t)||t<=0)return A.map((r)=>r.trimEnd());return[A[0].trimEnd(),...e.map((r)=>r.replace(new RegExp(`^\\s{0,${t}}`),"").trimEnd())]},Iqt=(A)=>{let e=Array.isArray(A.label)?A.label.map((r)=>go(r)):go(A.label||"").split(`
|
||
`);return dqt(e).join(`
|
||
`)},hqt=(A)=>{if(!A.description)return[];return(Array.isArray(A.description)?A.description:[A.description]).map((t)=>go(t)).filter((t)=>t.length>0)},Qqt=(A)=>{let e=new Set,t=(i)=>{if(i)e.add(i);return i},r=(i)=>{let u=i.find((a)=>!e.has(a));return t(u||null)};return(i)=>{let u=[`[id='${i.domId}']`,`[id='${i.id}']`,`[data-id='${i.id}']`];for(let a of u){let n=A.querySelector(a);if(n)return t(n)}switch(i.shape){case"divider":return r(Array.from(A.querySelectorAll("g.statediagram-cluster-alt")));case"stateStart":return r(Array.from(A.querySelectorAll("g.node.default")).filter((a)=>a.querySelector("circle.state-start")));case"stateEnd":return r(Array.from(A.querySelectorAll("g.node.default")).filter((a)=>!a.querySelector("circle.state-start")));default:return null}}},pqt=(A,e)=>{switch(e){case"roundedWithTitle":return A.querySelector("rect.outer")||A.querySelector("rect")||A;case"divider":return A.querySelector("rect.divider")||A.querySelector("rect")||A;case"rectWithTitle":return A.querySelector("rect.outer")||A.querySelector("rect")||A;case"stateStart":return SEA(Array.from(A.querySelectorAll("circle, ellipse, path")),"largest")||A;case"stateEnd":return SEA(Array.from(A.querySelectorAll("circle, ellipse, path")),"largest")||A;case"choice":case"fork":case"join":case"note":case"rect":default:return A.querySelector("rect, path, circle, ellipse, polygon")||A}},fqt=(A,e,t)=>{let r=t(A);if(!r)throw Error(`State node element not found for "${A.id}"`);let i=pqt(r,A.shape),u={},a={},n=[A.labelStyle,...A.cssCompiledStyles||[],...A.cssStyles||[]],o=oqt(n);n.filter(Boolean).forEach((l)=>{aqt(l,u,a)}),sqt(i,u,o),lqt(r,a,o);let s=gqt(i,e);return{id:A.id,shape:A.shape,text:Iqt(A),description:hqt(A),x:s.x,y:s.y,width:s.width,height:s.height,parentId:A.parentId,position:A.position,containerStyle:u,labelStyle:a,dividerLine:A.shape==="rectWithTitle"?cqt(r,e):void 0,endInnerColor:A.shape==="stateEnd"?Eqt(r,o):void 0,isRenderable:A.shape!=="noteGroup"}},mqt=(A,e)=>{let t=e.querySelector(`[id='${A.id}']`);if(!t)return null;let{tx:r,ty:i}=LEA(t,e),u=mP(t,{x:r,y:i},"MCL");if(u.reflectionPoints.length<2)return null;let a={},n=(s,l)=>{switch(s){case mi.STROKE:if(Um(l))a.strokeColor=qr(l);break;case mi.STROKE_WIDTH:{let g=parseFloat(qr(l));if(Number.isFinite(g)&&g>0)a.strokeWidth=g;break}case mi.STROKE_DASHARRAY:if(qr(l))a.strokeStyle="dashed";break}};[A.style].filter(Boolean).forEach((s)=>{W0(s||"").forEach(({property:l,value:g})=>{n(l,g)})});let o=A.arrowhead==="none"||A.classes?.includes("note-edge");return{id:A.id,start:A.start,end:A.end,text:go(A.label||""),...u,strokeColor:a.strokeColor,strokeWidth:a.strokeWidth,strokeStyle:o?"dashed":a.strokeStyle,isNoteEdge:o}},Fge=(A,e)=>{let{nodes:t,edges:r}=A.getData(),i=Qqt(e);return{type:"state",nodes:t.map((u)=>fqt(u,e,i)),edges:r.map((u)=>mqt(u,e)).filter((u)=>u!==null)}};var xge=P(()=>{G7()});var Sge,Lge=(A)=>{let e=Sge.then(A,A);return Sge=e.then(()=>{return},()=>{return}),e};var Rge=P(()=>{Sge=Promise.resolve()});var Nge=null,Dqt=0,yqt=(A)=>JSON.stringify(A),Gge=(A)=>{let e=A.querySelector("svg");if(!e)throw Error("SVG element not found");let t=e.getBoundingClientRect(),{width:r,height:i}=t;e.setAttribute("width",`${r}`),e.setAttribute("height",`${i}`);let u="image/svg+xml",a=unescape(encodeURIComponent(e.outerHTML)),o=`data:image/svg+xml;base64,${btoa(a)}`;return{type:"graphImage",mimeType:u,dataURL:o,width:r,height:i}},Uge=async(A,e=N7)=>Lge(async()=>{let t=e.themeVariables?.fontSize??N7.themeVariables.fontSize,r={...N7,...e,fontSize:t,themeVariables:{...N7.themeVariables,...e.themeVariables,fontSize:t}},i=yqt(r);if(i!==Nge)xm.initialize(r),Nge=i;let u=await xm.mermaidAPI.getDiagramFromText(zle(A)),a=`mermaid-to-excalidraw-${Dqt++}`,n=document.createElement("div");n.setAttribute("style","opacity: 0; position: fixed; z-index: -1; left: -99999px; top: -99999px;");let o=`${a}-container`;n.id=o,document.getElementById(o)?.remove(),document.body.appendChild(n);try{let{svg:s}=await xm.render(a,A,n);n.innerHTML=s;let l;try{switch(u.type){case"flowchart-v2":case"graph":{l=tge(u.db,n);break}case"sequence":{l=oge(u,n);break}case"class":case"classDiagram":{l=pge(u,n);break}case"er":{l=yge(u.db,n);break}case"state":case"stateDiagram":{l=Fge(u.db,n);break}default:l=Gge(n)}}catch(g){console.error("Error processing Mermaid diagram:",g),l=Gge(n)}return l}finally{n.remove()}});var Mge=P(()=>{hEA();Sm();rge();sge();fge();wge();xge();Rge()});var Tge={};yt(Tge,{parseMermaidToExcalidraw:()=>vP});var vP=async(A,e)=>{let t=e||{},r=parseInt(t.themeVariables?.fontSize??"")||y1,i=await Uge(A,{...t,themeVariables:{...t.themeVariables}});return Zle(i,{fontSize:r})};var kP=P(()=>{Sm();Vle();Mge()});var Qr;var j6=P(()=>{Qr={VITE_APP_BACKEND_V2_GET_URL:"https://json.excalidraw.com/api/v2/",VITE_APP_BACKEND_V2_POST_URL:"https://json.excalidraw.com/api/v2/post/",VITE_APP_LIBRARY_URL:"https://libraries.excalidraw.com",VITE_APP_LIBRARY_BACKEND:"https://us-central1-excalidraw-room-persistence.cloudfunctions.net/libraries",VITE_APP_PLUS_LP:"https://plus.excalidraw.com",VITE_APP_PLUS_APP:"https://app.excalidraw.com",VITE_APP_AI_BACKEND:"https://oss-ai.excalidraw.com",VITE_APP_WS_SERVER_URL:"https://oss-collab.excalidraw.com",VITE_APP_FIREBASE_CONFIG:'{}',VITE_APP_ENABLE_TRACKING:"false",VITE_APP_PLUS_EXPORT_PUBLIC_KEY:`MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApQ0jM9Qz8TdFLzcuAZZX
|
||
/WvuKSOJxiw6AR/ZcE3eFQWM/mbFdhQgyK8eHGkKQifKzH1xUZjCxyXcxW6ZO02t
|
||
kPOPxhz+nxUrIoWCD/V4NGmUA1lxwHuO21HN1gzKrN3xHg5EGjyouR9vibT9VDGF
|
||
gq6+4Ic/kJX+AD2MM7Yre2+FsOdysrmuW2Fu3ahuC1uQE7pOe1j0k7auNP0y1q53
|
||
PrB8Ts2LUpepWC1l7zIXFm4ViDULuyWXTEpUcHSsEH8vpd1tckjypxCwkipfZsXx
|
||
iPszy0o0Dx2iArPfWMXlFAI9mvyFCyFC3+nSvfyAUb2C4uZgCwAuyFh/ydPF4DEE
|
||
PQIDAQAB`,VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX:"false",VITE_APP_COLLAPSE_OVERLAY:"false",VITE_APP_ENABLE_ESLINT:"false",PKG_NAME:"@excalidraw/excalidraw",PKG_VERSION:"0.18.1",PROD:!0}});var Yge,wqt=(A,e,t)=>(e in A)?Yge(A,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):A[e]=t,REA,Hge=(A)=>(e)=>{var t=A[e];if(t)return t();throw Error("Module not found in bundle: "+e)},NEA=(A,e)=>{for(var t in e)Yge(A,t,{get:e[t],enumerable:!0})},UA=(A,e,t)=>(wqt(A,typeof e!="symbol"?e+"":e,t),t);var qt=P(()=>{Yge=Object.defineProperty,REA=((A)=>oD)(function(A){return oD.apply(this,arguments)})});var UEA=wu(function(GEA){var Kge;(function(A){if(typeof DO_NOT_EXPORT_CRC>"u")if(typeof GEA==="object")A(GEA);else if(typeof define==="function"&&define.amd)define(function(){var e={};return A(e),e});else A(Kge={});else A(Kge={})})(function(A){A.version="0.3.0";function e(){var o=0,s=Array(256);for(var l=0;l!=256;++l)o=l,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,s[l]=o;return typeof Int32Array<"u"?new Int32Array(s):s}var t=e(),r=typeof Buffer<"u";function i(o){if(o.length>32768){if(r)return a(new Buffer(o))}var s=-1,l=o.length-1;for(var g=0;g<l;)s=t[(s^o.charCodeAt(g++))&255]^s>>>8,s=t[(s^o.charCodeAt(g++))&255]^s>>>8;if(g===l)s=s>>>8^t[(s^o.charCodeAt(g))&255];return s^-1}function u(o){if(o.length>1e4)return a(o);for(var s=-1,l=0,g=o.length-3;l<g;)s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255];while(l<g+3)s=s>>>8^t[(s^o[l++])&255];return s^-1}function a(o){for(var s=-1,l=0,g=o.length-7;l<g;)s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255];while(l<g+7)s=s>>>8^t[(s^o[l++])&255];return s^-1}function n(o){for(var s=-1,l=0,g=o.length,C,B;l<g;)if(C=o.charCodeAt(l++),C<128)s=s>>>8^t[(s^C)&255];else if(C<2048)s=s>>>8^t[(s^(192|C>>6&31))&255],s=s>>>8^t[(s^(128|C&63))&255];else if(C>=55296&&C<57344)C=(C&1023)+64,B=o.charCodeAt(l++)&1023,s=s>>>8^t[(s^(240|C>>8&7))&255],s=s>>>8^t[(s^(128|C>>2&63))&255],s=s>>>8^t[(s^(128|B>>6&15|C&3))&255],s=s>>>8^t[(s^(128|B&63))&255];else s=s>>>8^t[(s^(224|C>>12&15))&255],s=s>>>8^t[(s^(128|C>>6&63))&255],s=s>>>8^t[(s^(128|C&63))&255];return s^-1}A.table=t,A.bstr=i,A.buf=u,A.str=n})});var Oge=wu(function(n2i,Jge){var bqt=UEA();Jge.exports=Fqt;var gd=new Uint8Array(4),vqt=new Int32Array(gd.buffer),kqt=new Uint32Array(gd.buffer);function Fqt(A){if(A[0]!==137)throw Error("Invalid .png file header");if(A[1]!==80)throw Error("Invalid .png file header");if(A[2]!==78)throw Error("Invalid .png file header");if(A[3]!==71)throw Error("Invalid .png file header");if(A[4]!==13)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");if(A[5]!==10)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");if(A[6]!==26)throw Error("Invalid .png file header");if(A[7]!==10)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");var e=!1,t=[],r=8;while(r<A.length){gd[3]=A[r++],gd[2]=A[r++],gd[1]=A[r++],gd[0]=A[r++];var i=kqt[0]+4,u=new Uint8Array(i);u[0]=A[r++],u[1]=A[r++],u[2]=A[r++],u[3]=A[r++];var a=String.fromCharCode(u[0])+String.fromCharCode(u[1])+String.fromCharCode(u[2])+String.fromCharCode(u[3]);if(!t.length&&a!=="IHDR")throw Error("IHDR header missing");if(a==="IEND"){e=!0,t.push({name:a,data:new Uint8Array(0)});break}for(var n=4;n<i;n++)u[n]=A[r++];gd[3]=A[r++],gd[2]=A[r++],gd[1]=A[r++],gd[0]=A[r++];var o=vqt[0],s=bqt.buf(u);if(s!==o)throw Error("CRC values for "+a+" header do not match, PNG file is likely corrupted");var l=new Uint8Array(u.buffer.slice(4));t.push({name:a,data:l})}if(!e)throw Error(".png file ended prematurely: no IEND header was found");return t}});var _ge=wu(function(o2i,Pge){Pge.exports=xqt;function xqt(A,e){if(A=String(A),e=String(e),!/^[\x00-\xFF]+$/.test(A)||!/^[\x00-\xFF]+$/.test(e))throw Error("Only Latin-1 characters are permitted in PNG tEXt chunks. You might want to consider base64 encoding and/or zEXt compression");if(A.length>=80)throw Error('Keyword "'+A+'" is longer than the 79-character limit imposed by the PNG specification');var t=A.length+e.length+1,r=new Uint8Array(t),i=0,u;for(var a=0;a<A.length;a++){if(!(u=A.charCodeAt(a)))throw Error("0x00 character is not permitted in tEXt keywords");r[i++]=u}r[i++]=0;for(var n=0;n<e.length;n++){if(!(u=e.charCodeAt(n)))throw Error("0x00 character is not permitted in tEXt content");r[i++]=u}return{name:"tEXt",data:r}}});var qge=wu(function(s2i,Wge){Wge.exports=Sqt;function Sqt(A){if(A.data&&A.name)A=A.data;var e=!0,t="",r="";for(var i=0;i<A.length;i++){var u=A[i];if(e)if(u)r+=String.fromCharCode(u);else e=!1;else if(u)t+=String.fromCharCode(u);else throw Error("Invalid NULL character found. 0x00 character is not permitted in tEXt content")}return{keyword:r,text:t}}});var FP={};PZ(FP,{encode:()=>zge,decode:()=>Zge},{encode:(l2i)=>zge=l2i,decode:(l2i)=>Zge=l2i});var zge,Zge;var Vge=P(()=>{zge=_ge(),Zge=qge()});var Xge=wu(function(g2i,jge){jge.exports=function(A,e,t){var r=[],i=A.length;if(i===0)return r;var u=e<0?Math.max(0,e+i):e||0;if(t!==void 0)i=t<0?t+i:t;while(i-- >u)r[i-u]=A[i];return r}});var Ace=wu(function(c2i,$ge){var Lqt=Xge(),Rqt=UEA();$ge.exports=Uqt;var cd=new Uint8Array(4),Nqt=new Int32Array(cd.buffer),Gqt=new Uint32Array(cd.buffer);function Uqt(A){var e=8,t=e,r;for(r=0;r<A.length;r++)e+=A[r].data.length,e+=12;var i=new Uint8Array(e);i[0]=137,i[1]=80,i[2]=78,i[3]=71,i[4]=13,i[5]=10,i[6]=26,i[7]=10;for(r=0;r<A.length;r++){var u=A[r],{name:a,data:n}=u,o=n.length,s=[a.charCodeAt(0),a.charCodeAt(1),a.charCodeAt(2),a.charCodeAt(3)];Gqt[0]=o,i[t++]=cd[3],i[t++]=cd[2],i[t++]=cd[1],i[t++]=cd[0],i[t++]=s[0],i[t++]=s[1],i[t++]=s[2],i[t++]=s[3];for(var l=0;l<o;)i[t++]=n[l++];var g=s.concat(Lqt(n)),C=Rqt.buf(g);Nqt[0]=C,i[t++]=cd[3],i[t++]=cd[2],i[t++]=cd[1],i[t++]=cd[0]}return i}});function e9(A){let e=A.length;while(--e>=0)A[e]=0}function TEA(A,e,t,r,i){this.static_tree=A,this.extra_bits=e,this.extra_base=t,this.elems=r,this.max_length=i,this.has_stree=A&&A.length}function YEA(A,e){this.dyn_tree=A,this.max_code=0,this.stat_desc=e}function Cd(A,e,t,r,i){this.good_length=A,this.max_lazy=e,this.nice_length=t,this.max_chain=r,this.func=i}function Kzt(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=JP,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(Szt*2),this.dyn_dtree=new Uint16Array((2*Fzt+1)*2),this.bl_tree=new Uint16Array((2*xzt+1)*2),b1(this.dyn_ltree),b1(this.dyn_dtree),b1(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(Lzt+1),this.heap=new Uint16Array(2*$EA+1),b1(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*$EA+1),b1(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function sZt(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}function i8(A){this.options=PP.assign({level:EZt,method:IZt,chunkSize:16384,windowBits:15,memLevel:8,strategy:dZt},A||{});let e=this.options;if(e.raw&&e.windowBits>0)e.windowBits=-e.windowBits;else if(e.gzip&&e.windowBits>0&&e.windowBits<16)e.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new uCe,this.strm.avail_out=0;let t=W7.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(t!==HP)throw Error(Ym[t]);if(e.header)W7.deflateSetHeader(this.strm,e.header);if(e.dictionary){let r;if(typeof e.dictionary==="string")r=A8.string2buf(e.dictionary);else if(aCe.call(e.dictionary)==="[object ArrayBuffer]")r=new Uint8Array(e.dictionary);else r=e.dictionary;if(t=W7.deflateSetDictionary(this.strm,r),t!==HP)throw Error(Ym[t]);this._dict_set=!0}}function udA(A,e){let t=new i8(e);if(t.push(A,!0),t.err)throw t.msg||Ym[t.err];return t.result}function hZt(A,e){return e=e||{},e.raw=!0,udA(A,e)}function QZt(A,e){return e=e||{},e.gzip=!0,udA(A,e)}function OZt(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function aVt(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}function u8(A){this.options=PP.assign({chunkSize:65536,windowBits:15,to:""},A||{});let e=this.options;if(e.raw&&e.windowBits>=0&&e.windowBits<16){if(e.windowBits=-e.windowBits,e.windowBits===0)e.windowBits=-15}if(e.windowBits>=0&&e.windowBits<16&&!(A&&A.windowBits))e.windowBits+=32;if(e.windowBits>15&&e.windowBits<48){if((e.windowBits&15)===0)e.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new uCe,this.strm.avail_out=0;let t=Sh.inflateInit2(this.strm,e.windowBits);if(t!==e8)throw Error(Ym[t]);if(this.header=new nVt,Sh.inflateGetHeader(this.strm,this.header),e.dictionary){if(typeof e.dictionary==="string")e.dictionary=A8.string2buf(e.dictionary);else if(hCe.call(e.dictionary)==="[object ArrayBuffer]")e.dictionary=new Uint8Array(e.dictionary);if(e.raw){if(t=Sh.inflateSetDictionary(this.strm,e.dictionary),t!==e8)throw Error(Ym[t])}}}function adA(A,e){let t=new u8(e);if(t.push(A),t.err)throw t.msg||Ym[t.err];return t.result}function cVt(A,e){return e=e||{},e.raw=!0,adA(A,e)}var Mqt=0,Yce=1,Tqt=2,Yqt=3,Hqt=258,edA=29,t8=256,z7,A9=30,tdA=19,Hce,Mm=15,MEA=16,Kqt=7,rdA=256,Kce=16,Jce=17,Oce=18,jEA,GP,Jqt,Pce,Oqt=512,xh,_7,Z7,V7,idA,YP,_ce,Wce,qce,zce=(A)=>A<256?Z7[A]:Z7[256+(A>>>7)],j7=(A,e)=>{A.pending_buf[A.pending++]=e&255,A.pending_buf[A.pending++]=e>>>8&255},Rl=(A,e,t)=>{if(A.bi_valid>MEA-t)A.bi_buf|=e<<A.bi_valid&65535,j7(A,A.bi_buf),A.bi_buf=e>>MEA-A.bi_valid,A.bi_valid+=t-MEA;else A.bi_buf|=e<<A.bi_valid&65535,A.bi_valid+=t},Bd=(A,e,t)=>{Rl(A,t[e*2],t[e*2+1])},Zce=(A,e)=>{let t=0;do t|=A&1,A>>>=1,t<<=1;while(--e>0);return t>>>1},Pqt=(A)=>{if(A.bi_valid===16)j7(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0;else if(A.bi_valid>=8)A.pending_buf[A.pending++]=A.bi_buf&255,A.bi_buf>>=8,A.bi_valid-=8},_qt=(A,e)=>{let{dyn_tree:t,max_code:r}=e,i=e.stat_desc.static_tree,u=e.stat_desc.has_stree,a=e.stat_desc.extra_bits,n=e.stat_desc.extra_base,o=e.stat_desc.max_length,s,l,g,C,B,E,d=0;for(C=0;C<=Mm;C++)A.bl_count[C]=0;t[A.heap[A.heap_max]*2+1]=0;for(s=A.heap_max+1;s<Hce;s++){if(l=A.heap[s],C=t[t[l*2+1]*2+1]+1,C>o)C=o,d++;if(t[l*2+1]=C,l>r)continue;if(A.bl_count[C]++,B=0,l>=n)B=a[l-n];if(E=t[l*2],A.opt_len+=E*(C+B),u)A.static_len+=E*(i[l*2+1]+B)}if(d===0)return;do{C=o-1;while(A.bl_count[C]===0)C--;A.bl_count[C]--,A.bl_count[C+1]+=2,A.bl_count[o]--,d-=2}while(d>0);for(C=o;C!==0;C--){l=A.bl_count[C];while(l!==0){if(g=A.heap[--s],g>r)continue;if(t[g*2+1]!==C)A.opt_len+=(C-t[g*2+1])*t[g*2],t[g*2+1]=C;l--}}},Vce=(A,e,t)=>{let r=Array(Mm+1),i=0,u,a;for(u=1;u<=Mm;u++)r[u]=i=i+t[u-1]<<1;for(a=0;a<=e;a++){let n=A[a*2+1];if(n===0)continue;A[a*2]=Zce(r[n]++,n)}},Wqt=()=>{let A,e,t,r,i,u=Array(Mm+1);t=0;for(r=0;r<edA-1;r++){idA[r]=t;for(A=0;A<1<<jEA[r];A++)V7[t++]=r}V7[t-1]=r,i=0;for(r=0;r<16;r++){YP[r]=i;for(A=0;A<1<<GP[r];A++)Z7[i++]=r}i>>=7;for(;r<A9;r++){YP[r]=i<<7;for(A=0;A<1<<GP[r]-7;A++)Z7[256+i++]=r}for(e=0;e<=Mm;e++)u[e]=0;A=0;while(A<=143)xh[A*2+1]=8,A++,u[8]++;while(A<=255)xh[A*2+1]=9,A++,u[9]++;while(A<=279)xh[A*2+1]=7,A++,u[7]++;while(A<=287)xh[A*2+1]=8,A++,u[8]++;Vce(xh,z7+1,u);for(A=0;A<A9;A++)_7[A*2+1]=5,_7[A*2]=Zce(A,5);_ce=new TEA(xh,jEA,t8+1,z7,Mm),Wce=new TEA(_7,GP,0,A9,Mm),qce=new TEA([],Jqt,0,tdA,Kqt)},jce=(A)=>{let e;for(e=0;e<z7;e++)A.dyn_ltree[e*2]=0;for(e=0;e<A9;e++)A.dyn_dtree[e*2]=0;for(e=0;e<tdA;e++)A.bl_tree[e*2]=0;A.dyn_ltree[rdA*2]=1,A.opt_len=A.static_len=0,A.last_lit=A.matches=0},Xce=(A)=>{if(A.bi_valid>8)j7(A,A.bi_buf);else if(A.bi_valid>0)A.pending_buf[A.pending++]=A.bi_buf;A.bi_buf=0,A.bi_valid=0},qqt=(A,e,t,r)=>{if(Xce(A),r)j7(A,t),j7(A,~t);A.pending_buf.set(A.window.subarray(e,e+t),A.pending),A.pending+=t},ece=(A,e,t,r)=>{let i=e*2,u=t*2;return A[i]<A[u]||A[i]===A[u]&&r[e]<=r[t]},HEA=(A,e,t)=>{let r=A.heap[t],i=t<<1;while(i<=A.heap_len){if(i<A.heap_len&&ece(e,A.heap[i+1],A.heap[i],A.depth))i++;if(ece(e,r,A.heap[i],A.depth))break;A.heap[t]=A.heap[i],t=i,i<<=1}A.heap[t]=r},tce=(A,e,t)=>{let r,i,u=0,a,n;if(A.last_lit!==0)do if(r=A.pending_buf[A.d_buf+u*2]<<8|A.pending_buf[A.d_buf+u*2+1],i=A.pending_buf[A.l_buf+u],u++,r===0)Bd(A,i,e);else{if(a=V7[i],Bd(A,a+t8+1,e),n=jEA[a],n!==0)i-=idA[a],Rl(A,i,n);if(r--,a=zce(r),Bd(A,a,t),n=GP[a],n!==0)r-=YP[a],Rl(A,r,n)}while(u<A.last_lit);Bd(A,rdA,e)},XEA=(A,e)=>{let t=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.has_stree,u=e.stat_desc.elems,a,n,o=-1,s;A.heap_len=0,A.heap_max=Hce;for(a=0;a<u;a++)if(t[a*2]!==0)A.heap[++A.heap_len]=o=a,A.depth[a]=0;else t[a*2+1]=0;while(A.heap_len<2)if(s=A.heap[++A.heap_len]=o<2?++o:0,t[s*2]=1,A.depth[s]=0,A.opt_len--,i)A.static_len-=r[s*2+1];e.max_code=o;for(a=A.heap_len>>1;a>=1;a--)HEA(A,t,a);s=u;do a=A.heap[1],A.heap[1]=A.heap[A.heap_len--],HEA(A,t,1),n=A.heap[1],A.heap[--A.heap_max]=a,A.heap[--A.heap_max]=n,t[s*2]=t[a*2]+t[n*2],A.depth[s]=(A.depth[a]>=A.depth[n]?A.depth[a]:A.depth[n])+1,t[a*2+1]=t[n*2+1]=s,A.heap[1]=s++,HEA(A,t,1);while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],_qt(A,e),Vce(t,o,A.bl_count)},rce=(A,e,t)=>{let r,i=-1,u,a=e[1],n=0,o=7,s=4;if(a===0)o=138,s=3;e[(t+1)*2+1]=65535;for(r=0;r<=t;r++){if(u=a,a=e[(r+1)*2+1],++n<o&&u===a)continue;else if(n<s)A.bl_tree[u*2]+=n;else if(u!==0){if(u!==i)A.bl_tree[u*2]++;A.bl_tree[Kce*2]++}else if(n<=10)A.bl_tree[Jce*2]++;else A.bl_tree[Oce*2]++;if(n=0,i=u,a===0)o=138,s=3;else if(u===a)o=6,s=3;else o=7,s=4}},ice=(A,e,t)=>{let r,i=-1,u,a=e[1],n=0,o=7,s=4;if(a===0)o=138,s=3;for(r=0;r<=t;r++){if(u=a,a=e[(r+1)*2+1],++n<o&&u===a)continue;else if(n<s)do Bd(A,u,A.bl_tree);while(--n!==0);else if(u!==0){if(u!==i)Bd(A,u,A.bl_tree),n--;Bd(A,Kce,A.bl_tree),Rl(A,n-3,2)}else if(n<=10)Bd(A,Jce,A.bl_tree),Rl(A,n-3,3);else Bd(A,Oce,A.bl_tree),Rl(A,n-11,7);if(n=0,i=u,a===0)o=138,s=3;else if(u===a)o=6,s=3;else o=7,s=4}},zqt=(A)=>{let e;rce(A,A.dyn_ltree,A.l_desc.max_code),rce(A,A.dyn_dtree,A.d_desc.max_code),XEA(A,A.bl_desc);for(e=tdA-1;e>=3;e--)if(A.bl_tree[Pce[e]*2+1]!==0)break;return A.opt_len+=3*(e+1)+5+5+4,e},Zqt=(A,e,t,r)=>{let i;Rl(A,e-257,5),Rl(A,t-1,5),Rl(A,r-4,4);for(i=0;i<r;i++)Rl(A,A.bl_tree[Pce[i]*2+1],3);ice(A,A.dyn_ltree,e-1),ice(A,A.dyn_dtree,t-1)},Vqt=(A)=>{let e=4093624447,t;for(t=0;t<=31;t++,e>>>=1)if(e&1&&A.dyn_ltree[t*2]!==0)return 0;if(A.dyn_ltree[18]!==0||A.dyn_ltree[20]!==0||A.dyn_ltree[26]!==0)return 1;for(t=32;t<t8;t++)if(A.dyn_ltree[t*2]!==0)return 1;return 0},uce=!1,jqt=(A)=>{if(!uce)Wqt(),uce=!0;A.l_desc=new YEA(A.dyn_ltree,_ce),A.d_desc=new YEA(A.dyn_dtree,Wce),A.bl_desc=new YEA(A.bl_tree,qce),A.bi_buf=0,A.bi_valid=0,jce(A)},$ce=(A,e,t,r)=>{Rl(A,(Mqt<<1)+(r?1:0),3),qqt(A,e,t,!0)},Xqt=(A)=>{Rl(A,Yce<<1,3),Bd(A,rdA,xh),Pqt(A)},$qt=(A,e,t,r)=>{let i,u,a=0;if(A.level>0){if(A.strm.data_type===2)A.strm.data_type=Vqt(A);if(XEA(A,A.l_desc),XEA(A,A.d_desc),a=zqt(A),i=A.opt_len+3+7>>>3,u=A.static_len+3+7>>>3,u<=i)i=u}else i=u=t+5;if(t+4<=i&&e!==-1)$ce(A,e,t,r);else if(A.strategy===4||u===i)Rl(A,(Yce<<1)+(r?1:0),3),tce(A,xh,_7);else Rl(A,(Tqt<<1)+(r?1:0),3),Zqt(A,A.l_desc.max_code+1,A.d_desc.max_code+1,a+1),tce(A,A.dyn_ltree,A.dyn_dtree);if(jce(A),r)Xce(A)},Azt=(A,e,t)=>{if(A.pending_buf[A.d_buf+A.last_lit*2]=e>>>8&255,A.pending_buf[A.d_buf+A.last_lit*2+1]=e&255,A.pending_buf[A.l_buf+A.last_lit]=t&255,A.last_lit++,e===0)A.dyn_ltree[t*2]++;else A.matches++,e--,A.dyn_ltree[(V7[t]+t8+1)*2]++,A.dyn_dtree[zce(e)*2]++;return A.last_lit===A.lit_bufsize-1},ezt,tzt,rzt,izt,uzt,azt,nzt=(A,e,t,r)=>{let i=A&65535|0,u=A>>>16&65535|0,a=0;while(t!==0){a=t>2000?2000:t,t-=a;do i=i+e[r++]|0,u=u+i|0;while(--a);i%=65521,u%=65521}return i|u<<16|0},X7,ozt=()=>{let A,e=[];for(var t=0;t<256;t++){A=t;for(var r=0;r<8;r++)A=A&1?3988292384^A>>>1:A>>>1;e[t]=A}return e},szt,lzt=(A,e,t,r)=>{let i=szt,u=r+t;A^=-1;for(let a=r;a<u;a++)A=A>>>8^i[(A^e[a])&255];return A^-1},Jo,Ym,t9,gzt,czt,Czt,F1,Bzt,Om,Ezt,dzt,x1,ace,Ed,nce,kc,Izt,KEA,hzt,Qzt,xP,pzt,fzt,mzt,Dzt,JP,yzt=9,wzt=15,bzt=8,vzt=29,kzt=256,$EA,Fzt=30,xzt=19,Szt,Lzt=15,Di=3,v1=258,$C,Rzt=32,OP=42,AdA=69,UP=73,MP=91,TP=103,Tm=113,O7=666,co=1,r8=2,Hm=3,r9=4,Nzt=3,k1=(A,e)=>(A.msg=Ym[e],e),oce=(A)=>(A<<1)-(A>4?9:0),b1=(A)=>{let e=A.length;while(--e>=0)A[e]=0},Gzt=(A,e,t)=>(e<<A.hash_shift^t)&A.hash_mask,S1,w1=(A)=>{let e=A.state,t=e.pending;if(t>A.avail_out)t=A.avail_out;if(t===0)return;if(A.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+t),A.next_out),A.next_out+=t,e.pending_out+=t,A.total_out+=t,A.avail_out-=t,e.pending-=t,e.pending===0)e.pending_out=0},Q0=(A,e)=>{Czt(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,e),A.block_start=A.strstart,w1(A.strm)},tu=(A,e)=>{A.pending_buf[A.pending++]=e},J7=(A,e)=>{A.pending_buf[A.pending++]=e>>>8&255,A.pending_buf[A.pending++]=e&255},Uzt=(A,e,t,r)=>{let i=A.avail_in;if(i>r)i=r;if(i===0)return 0;if(A.avail_in-=i,e.set(A.input.subarray(A.next_in,A.next_in+i),t),A.state.wrap===1)A.adler=X7(A.adler,e,i,t);else if(A.state.wrap===2)A.adler=Jo(A.adler,e,i,t);return A.next_in+=i,A.total_in+=i,i},ACe=(A,e)=>{let{max_chain_length:t,strstart:r}=A,i,u,{prev_length:a,nice_match:n}=A,o=A.strstart>A.w_size-$C?A.strstart-(A.w_size-$C):0,{window:s,w_mask:l,prev:g}=A,C=A.strstart+v1,B=s[r+a-1],E=s[r+a];if(A.prev_length>=A.good_match)t>>=2;if(n>A.lookahead)n=A.lookahead;do{if(i=e,s[i+a]!==E||s[i+a-1]!==B||s[i]!==s[r]||s[++i]!==s[r+1])continue;r+=2,i++;do;while(s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&r<C);if(u=v1-(C-r),r=C-v1,u>a){if(A.match_start=e,a=u,u>=n)break;B=s[r+a-1],E=s[r+a]}}while((e=g[e&l])>o&&--t!==0);if(a<=A.lookahead)return a;return A.lookahead},Km=(A)=>{let e=A.w_size,t,r,i,u,a;do{if(u=A.window_size-A.lookahead-A.strstart,A.strstart>=e+(e-$C)){A.window.set(A.window.subarray(e,e+e),0),A.match_start-=e,A.strstart-=e,A.block_start-=e,r=A.hash_size,t=r;do i=A.head[--t],A.head[t]=i>=e?i-e:0;while(--r);r=e,t=r;do i=A.prev[--t],A.prev[t]=i>=e?i-e:0;while(--r);u+=e}if(A.strm.avail_in===0)break;if(r=Uzt(A.strm,A.window,A.strstart+A.lookahead,u),A.lookahead+=r,A.lookahead+A.insert>=Di){a=A.strstart-A.insert,A.ins_h=A.window[a],A.ins_h=S1(A,A.ins_h,A.window[a+1]);while(A.insert)if(A.ins_h=S1(A,A.ins_h,A.window[a+Di-1]),A.prev[a&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=a,a++,A.insert--,A.lookahead+A.insert<Di)break}}while(A.lookahead<$C&&A.strm.avail_in!==0)},Mzt=(A,e)=>{let t=65535;if(t>A.pending_buf_size-5)t=A.pending_buf_size-5;for(;;){if(A.lookahead<=1){if(Km(A),A.lookahead===0&&e===Om)return co;if(A.lookahead===0)break}A.strstart+=A.lookahead,A.lookahead=0;let r=A.block_start+t;if(A.strstart===0||A.strstart>=r){if(A.lookahead=A.strstart-r,A.strstart=r,Q0(A,!1),A.strm.avail_out===0)return co}if(A.strstart-A.block_start>=A.w_size-$C){if(Q0(A,!1),A.strm.avail_out===0)return co}}if(A.insert=0,e===x1){if(Q0(A,!0),A.strm.avail_out===0)return Hm;return r9}if(A.strstart>A.block_start){if(Q0(A,!1),A.strm.avail_out===0)return co}return co},JEA=(A,e)=>{let t,r;for(;;){if(A.lookahead<$C){if(Km(A),A.lookahead<$C&&e===Om)return co;if(A.lookahead===0)break}if(t=0,A.lookahead>=Di)A.ins_h=S1(A,A.ins_h,A.window[A.strstart+Di-1]),t=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart;if(t!==0&&A.strstart-t<=A.w_size-$C)A.match_length=ACe(A,t);if(A.match_length>=Di)if(r=F1(A,A.strstart-A.match_start,A.match_length-Di),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=Di){A.match_length--;do A.strstart++,A.ins_h=S1(A,A.ins_h,A.window[A.strstart+Di-1]),t=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart;while(--A.match_length!==0);A.strstart++}else A.strstart+=A.match_length,A.match_length=0,A.ins_h=A.window[A.strstart],A.ins_h=S1(A,A.ins_h,A.window[A.strstart+1]);else r=F1(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(r){if(Q0(A,!1),A.strm.avail_out===0)return co}}if(A.insert=A.strstart<Di-1?A.strstart:Di-1,e===x1){if(Q0(A,!0),A.strm.avail_out===0)return Hm;return r9}if(A.last_lit){if(Q0(A,!1),A.strm.avail_out===0)return co}return r8},X6=(A,e)=>{let t,r,i;for(;;){if(A.lookahead<$C){if(Km(A),A.lookahead<$C&&e===Om)return co;if(A.lookahead===0)break}if(t=0,A.lookahead>=Di)A.ins_h=S1(A,A.ins_h,A.window[A.strstart+Di-1]),t=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart;if(A.prev_length=A.match_length,A.prev_match=A.match_start,A.match_length=Di-1,t!==0&&A.prev_length<A.max_lazy_match&&A.strstart-t<=A.w_size-$C){if(A.match_length=ACe(A,t),A.match_length<=5&&(A.strategy===Qzt||A.match_length===Di&&A.strstart-A.match_start>4096))A.match_length=Di-1}if(A.prev_length>=Di&&A.match_length<=A.prev_length){i=A.strstart+A.lookahead-Di,r=F1(A,A.strstart-1-A.prev_match,A.prev_length-Di),A.lookahead-=A.prev_length-1,A.prev_length-=2;do if(++A.strstart<=i)A.ins_h=S1(A,A.ins_h,A.window[A.strstart+Di-1]),t=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart;while(--A.prev_length!==0);if(A.match_available=0,A.match_length=Di-1,A.strstart++,r){if(Q0(A,!1),A.strm.avail_out===0)return co}}else if(A.match_available){if(r=F1(A,0,A.window[A.strstart-1]),r)Q0(A,!1);if(A.strstart++,A.lookahead--,A.strm.avail_out===0)return co}else A.match_available=1,A.strstart++,A.lookahead--}if(A.match_available)r=F1(A,0,A.window[A.strstart-1]),A.match_available=0;if(A.insert=A.strstart<Di-1?A.strstart:Di-1,e===x1){if(Q0(A,!0),A.strm.avail_out===0)return Hm;return r9}if(A.last_lit){if(Q0(A,!1),A.strm.avail_out===0)return co}return r8},Tzt=(A,e)=>{let t,r,i,u,a=A.window;for(;;){if(A.lookahead<=v1){if(Km(A),A.lookahead<=v1&&e===Om)return co;if(A.lookahead===0)break}if(A.match_length=0,A.lookahead>=Di&&A.strstart>0){if(i=A.strstart-1,r=a[i],r===a[++i]&&r===a[++i]&&r===a[++i]){u=A.strstart+v1;do;while(r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&i<u);if(A.match_length=v1-(u-i),A.match_length>A.lookahead)A.match_length=A.lookahead}}if(A.match_length>=Di)t=F1(A,1,A.match_length-Di),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0;else t=F1(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(t){if(Q0(A,!1),A.strm.avail_out===0)return co}}if(A.insert=0,e===x1){if(Q0(A,!0),A.strm.avail_out===0)return Hm;return r9}if(A.last_lit){if(Q0(A,!1),A.strm.avail_out===0)return co}return r8},Yzt=(A,e)=>{let t;for(;;){if(A.lookahead===0){if(Km(A),A.lookahead===0){if(e===Om)return co;break}}if(A.match_length=0,t=F1(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,t){if(Q0(A,!1),A.strm.avail_out===0)return co}}if(A.insert=0,e===x1){if(Q0(A,!0),A.strm.avail_out===0)return Hm;return r9}if(A.last_lit){if(Q0(A,!1),A.strm.avail_out===0)return co}return r8},P7,Hzt=(A)=>{A.window_size=2*A.w_size,b1(A.head),A.max_lazy_match=P7[A.level].max_lazy,A.good_match=P7[A.level].good_length,A.nice_match=P7[A.level].nice_length,A.max_chain_length=P7[A.level].max_chain,A.strstart=0,A.block_start=0,A.lookahead=0,A.insert=0,A.match_length=A.prev_length=Di-1,A.match_available=0,A.ins_h=0},eCe=(A)=>{if(!A||!A.state)return k1(A,kc);A.total_in=A.total_out=0,A.data_type=Dzt;let e=A.state;if(e.pending=0,e.pending_out=0,e.wrap<0)e.wrap=-e.wrap;return e.status=e.wrap?OP:Tm,A.adler=e.wrap===2?0:1,e.last_flush=Om,gzt(e),Ed},tCe=(A)=>{let e=eCe(A);if(e===Ed)Hzt(A.state);return e},Jzt=(A,e)=>{if(!A||!A.state)return kc;if(A.state.wrap!==2)return kc;return A.state.gzhead=e,Ed},rCe=(A,e,t,r,i,u)=>{if(!A)return kc;let a=1;if(e===hzt)e=6;if(r<0)a=0,r=-r;else if(r>15)a=2,r-=16;if(i<1||i>yzt||t!==JP||r<8||r>15||e<0||e>9||u<0||u>fzt)return k1(A,kc);if(r===8)r=9;let n=new Kzt;return A.state=n,n.strm=A,n.wrap=a,n.gzhead=null,n.w_bits=r,n.w_size=1<<n.w_bits,n.w_mask=n.w_size-1,n.hash_bits=i+7,n.hash_size=1<<n.hash_bits,n.hash_mask=n.hash_size-1,n.hash_shift=~~((n.hash_bits+Di-1)/Di),n.window=new Uint8Array(n.w_size*2),n.head=new Uint16Array(n.hash_size),n.prev=new Uint16Array(n.w_size),n.lit_bufsize=1<<i+6,n.pending_buf_size=n.lit_bufsize*4,n.pending_buf=new Uint8Array(n.pending_buf_size),n.d_buf=1*n.lit_bufsize,n.l_buf=3*n.lit_bufsize,n.level=e,n.strategy=u,n.method=t,tCe(A)},Ozt=(A,e)=>rCe(A,e,JP,wzt,bzt,mzt),Pzt=(A,e)=>{let t,r;if(!A||!A.state||e>ace||e<0)return A?k1(A,kc):kc;let i=A.state;if(!A.output||!A.input&&A.avail_in!==0||i.status===O7&&e!==x1)return k1(A,A.avail_out===0?KEA:kc);i.strm=A;let u=i.last_flush;if(i.last_flush=e,i.status===OP)if(i.wrap===2)if(A.adler=0,tu(i,31),tu(i,139),tu(i,8),!i.gzhead)tu(i,0),tu(i,0),tu(i,0),tu(i,0),tu(i,0),tu(i,i.level===9?2:i.strategy>=xP||i.level<2?4:0),tu(i,Nzt),i.status=Tm;else{if(tu(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(!i.gzhead.extra?0:4)+(!i.gzhead.name?0:8)+(!i.gzhead.comment?0:16)),tu(i,i.gzhead.time&255),tu(i,i.gzhead.time>>8&255),tu(i,i.gzhead.time>>16&255),tu(i,i.gzhead.time>>24&255),tu(i,i.level===9?2:i.strategy>=xP||i.level<2?4:0),tu(i,i.gzhead.os&255),i.gzhead.extra&&i.gzhead.extra.length)tu(i,i.gzhead.extra.length&255),tu(i,i.gzhead.extra.length>>8&255);if(i.gzhead.hcrc)A.adler=Jo(A.adler,i.pending_buf,i.pending,0);i.gzindex=0,i.status=AdA}else{let a=JP+(i.w_bits-8<<4)<<8,n=-1;if(i.strategy>=xP||i.level<2)n=0;else if(i.level<6)n=1;else if(i.level===6)n=2;else n=3;if(a|=n<<6,i.strstart!==0)a|=Rzt;if(a+=31-a%31,i.status=Tm,J7(i,a),i.strstart!==0)J7(i,A.adler>>>16),J7(i,A.adler&65535);A.adler=1}if(i.status===AdA)if(i.gzhead.extra){t=i.pending;while(i.gzindex<(i.gzhead.extra.length&65535)){if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>t)A.adler=Jo(A.adler,i.pending_buf,i.pending-t,t);if(w1(A),t=i.pending,i.pending===i.pending_buf_size)break}tu(i,i.gzhead.extra[i.gzindex]&255),i.gzindex++}if(i.gzhead.hcrc&&i.pending>t)A.adler=Jo(A.adler,i.pending_buf,i.pending-t,t);if(i.gzindex===i.gzhead.extra.length)i.gzindex=0,i.status=UP}else i.status=UP;if(i.status===UP)if(i.gzhead.name){t=i.pending;do{if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>t)A.adler=Jo(A.adler,i.pending_buf,i.pending-t,t);if(w1(A),t=i.pending,i.pending===i.pending_buf_size){r=1;break}}if(i.gzindex<i.gzhead.name.length)r=i.gzhead.name.charCodeAt(i.gzindex++)&255;else r=0;tu(i,r)}while(r!==0);if(i.gzhead.hcrc&&i.pending>t)A.adler=Jo(A.adler,i.pending_buf,i.pending-t,t);if(r===0)i.gzindex=0,i.status=MP}else i.status=MP;if(i.status===MP)if(i.gzhead.comment){t=i.pending;do{if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>t)A.adler=Jo(A.adler,i.pending_buf,i.pending-t,t);if(w1(A),t=i.pending,i.pending===i.pending_buf_size){r=1;break}}if(i.gzindex<i.gzhead.comment.length)r=i.gzhead.comment.charCodeAt(i.gzindex++)&255;else r=0;tu(i,r)}while(r!==0);if(i.gzhead.hcrc&&i.pending>t)A.adler=Jo(A.adler,i.pending_buf,i.pending-t,t);if(r===0)i.status=TP}else i.status=TP;if(i.status===TP)if(i.gzhead.hcrc){if(i.pending+2>i.pending_buf_size)w1(A);if(i.pending+2<=i.pending_buf_size)tu(i,A.adler&255),tu(i,A.adler>>8&255),A.adler=0,i.status=Tm}else i.status=Tm;if(i.pending!==0){if(w1(A),A.avail_out===0)return i.last_flush=-1,Ed}else if(A.avail_in===0&&oce(e)<=oce(u)&&e!==x1)return k1(A,KEA);if(i.status===O7&&A.avail_in!==0)return k1(A,KEA);if(A.avail_in!==0||i.lookahead!==0||e!==Om&&i.status!==O7){let a=i.strategy===xP?Yzt(i,e):i.strategy===pzt?Tzt(i,e):P7[i.level].func(i,e);if(a===Hm||a===r9)i.status=O7;if(a===co||a===Hm){if(A.avail_out===0)i.last_flush=-1;return Ed}if(a===r8){if(e===Ezt)Bzt(i);else if(e!==ace){if(czt(i,0,0,!1),e===dzt){if(b1(i.head),i.lookahead===0)i.strstart=0,i.block_start=0,i.insert=0}}if(w1(A),A.avail_out===0)return i.last_flush=-1,Ed}}if(e!==x1)return Ed;if(i.wrap<=0)return nce;if(i.wrap===2)tu(i,A.adler&255),tu(i,A.adler>>8&255),tu(i,A.adler>>16&255),tu(i,A.adler>>24&255),tu(i,A.total_in&255),tu(i,A.total_in>>8&255),tu(i,A.total_in>>16&255),tu(i,A.total_in>>24&255);else J7(i,A.adler>>>16),J7(i,A.adler&65535);if(w1(A),i.wrap>0)i.wrap=-i.wrap;return i.pending!==0?Ed:nce},_zt=(A)=>{if(!A||!A.state)return kc;let e=A.state.status;if(e!==OP&&e!==AdA&&e!==UP&&e!==MP&&e!==TP&&e!==Tm&&e!==O7)return k1(A,kc);return A.state=null,e===Tm?k1(A,Izt):Ed},Wzt=(A,e)=>{let t=e.length;if(!A||!A.state)return kc;let r=A.state,i=r.wrap;if(i===2||i===1&&r.status!==OP||r.lookahead)return kc;if(i===1)A.adler=X7(A.adler,e,t,0);if(r.wrap=0,t>=r.w_size){if(i===0)b1(r.head),r.strstart=0,r.block_start=0,r.insert=0;let o=new Uint8Array(r.w_size);o.set(e.subarray(t-r.w_size,t),0),e=o,t=r.w_size}let{avail_in:u,next_in:a,input:n}=A;A.avail_in=t,A.next_in=0,A.input=e,Km(r);while(r.lookahead>=Di){let o=r.strstart,s=r.lookahead-(Di-1);do r.ins_h=S1(r,r.ins_h,r.window[o+Di-1]),r.prev[o&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=o,o++;while(--s);r.strstart=o,r.lookahead=Di-1,Km(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=Di-1,r.match_available=0,A.next_in=a,A.input=n,A.avail_in=u,r.wrap=i,Ed},qzt,zzt,Zzt,Vzt,jzt,Xzt,$zt,AZt,eZt="pako deflate (from Nodeca project)",W7,tZt=(A,e)=>Object.prototype.hasOwnProperty.call(A,e),rZt=function(A){let e=Array.prototype.slice.call(arguments,1);while(e.length){let t=e.shift();if(!t)continue;if(typeof t!=="object")throw TypeError(t+"must be non-object");for(let r in t)if(tZt(t,r))A[r]=t[r]}return A},iZt=(A)=>{let e=0;for(let r=0,i=A.length;r<i;r++)e+=A[r].length;let t=new Uint8Array(e);for(let r=0,i=0,u=A.length;r<u;r++){let a=A[r];t.set(a,i),i+=a.length}return t},PP,iCe=!0,$7,uZt=(A)=>{let e,t,r,i,u,a=A.length,n=0;for(i=0;i<a;i++){if(t=A.charCodeAt(i),(t&64512)===55296&&i+1<a){if(r=A.charCodeAt(i+1),(r&64512)===56320)t=65536+(t-55296<<10)+(r-56320),i++}n+=t<128?1:t<2048?2:t<65536?3:4}e=new Uint8Array(n);for(u=0,i=0;u<n;i++){if(t=A.charCodeAt(i),(t&64512)===55296&&i+1<a){if(r=A.charCodeAt(i+1),(r&64512)===56320)t=65536+(t-55296<<10)+(r-56320),i++}if(t<128)e[u++]=t;else if(t<2048)e[u++]=192|t>>>6,e[u++]=128|t&63;else if(t<65536)e[u++]=224|t>>>12,e[u++]=128|t>>>6&63,e[u++]=128|t&63;else e[u++]=240|t>>>18,e[u++]=128|t>>>12&63,e[u++]=128|t>>>6&63,e[u++]=128|t&63}return e},aZt=(A,e)=>{if(e<65534){if(A.subarray&&iCe)return String.fromCharCode.apply(null,A.length===e?A:A.subarray(0,e))}let t="";for(let r=0;r<e;r++)t+=String.fromCharCode(A[r]);return t},nZt=(A,e)=>{let t,r,i=e||A.length,u=Array(i*2);for(r=0,t=0;t<i;){let a=A[t++];if(a<128){u[r++]=a;continue}let n=$7[a];if(n>4){u[r++]=65533,t+=n-1;continue}a&=n===2?31:n===3?15:7;while(n>1&&t<i)a=a<<6|A[t++]&63,n--;if(n>1){u[r++]=65533;continue}if(a<65536)u[r++]=a;else a-=65536,u[r++]=55296|a>>10&1023,u[r++]=56320|a&1023}return aZt(u,r)},oZt=(A,e)=>{if(e=e||A.length,e>A.length)e=A.length;let t=e-1;while(t>=0&&(A[t]&192)===128)t--;if(t<0)return e;if(t===0)return e;return t+$7[A[t]]>e?t:e},A8,uCe,aCe,lZt,gZt,cZt,CZt,HP,BZt,EZt,dZt,IZt,pZt,fZt,mZt,DZt,yZt,wZt,SP=30,bZt=12,vZt=function(e,t){let r,i,u,a,n,o,s,l,g,C,B,E,d,I,h,Q,p,m,f,D,w,b,F,v,S=e.state;r=e.next_in,F=e.input,i=r+(e.avail_in-5),u=e.next_out,v=e.output,a=u-(t-e.avail_out),n=u+(e.avail_out-257),o=S.dmax,s=S.wsize,l=S.whave,g=S.wnext,C=S.window,B=S.hold,E=S.bits,d=S.lencode,I=S.distcode,h=(1<<S.lenbits)-1,Q=(1<<S.distbits)-1;A:do{if(E<15)B+=F[r++]<<E,E+=8,B+=F[r++]<<E,E+=8;p=d[B&h];e:for(;;){if(m=p>>>24,B>>>=m,E-=m,m=p>>>16&255,m===0)v[u++]=p&65535;else if(m&16){if(f=p&65535,m&=15,m){if(E<m)B+=F[r++]<<E,E+=8;f+=B&(1<<m)-1,B>>>=m,E-=m}if(E<15)B+=F[r++]<<E,E+=8,B+=F[r++]<<E,E+=8;p=I[B&Q];t:for(;;){if(m=p>>>24,B>>>=m,E-=m,m=p>>>16&255,m&16){if(D=p&65535,m&=15,E<m){if(B+=F[r++]<<E,E+=8,E<m)B+=F[r++]<<E,E+=8}if(D+=B&(1<<m)-1,D>o){e.msg="invalid distance too far back",S.mode=SP;break A}if(B>>>=m,E-=m,m=u-a,D>m){if(m=D-m,m>l){if(S.sane){e.msg="invalid distance too far back",S.mode=SP;break A}}if(w=0,b=C,g===0){if(w+=s-m,m<f){f-=m;do v[u++]=C[w++];while(--m);w=u-D,b=v}}else if(g<m){if(w+=s+g-m,m-=g,m<f){f-=m;do v[u++]=C[w++];while(--m);if(w=0,g<f){m=g,f-=m;do v[u++]=C[w++];while(--m);w=u-D,b=v}}}else if(w+=g-m,m<f){f-=m;do v[u++]=C[w++];while(--m);w=u-D,b=v}while(f>2)v[u++]=b[w++],v[u++]=b[w++],v[u++]=b[w++],f-=3;if(f){if(v[u++]=b[w++],f>1)v[u++]=b[w++]}}else{w=u-D;do v[u++]=v[w++],v[u++]=v[w++],v[u++]=v[w++],f-=3;while(f>2);if(f){if(v[u++]=v[w++],f>1)v[u++]=v[w++]}}}else if((m&64)===0){p=I[(p&65535)+(B&(1<<m)-1)];continue t}else{e.msg="invalid distance code",S.mode=SP;break A}break}}else if((m&64)===0){p=d[(p&65535)+(B&(1<<m)-1)];continue e}else if(m&32){S.mode=bZt;break A}else{e.msg="invalid literal/length code",S.mode=SP;break A}break}}while(r<i&&u<n);f=E>>3,r-=f,E-=f<<3,B&=(1<<E)-1,e.next_in=r,e.next_out=u,e.avail_in=r<i?5+(i-r):5-(r-i),e.avail_out=u<n?257+(n-u):257-(u-n),S.hold=B,S.bits=E;return},$6=15,sce=852,lce=592,gce=0,OEA=1,cce=2,kZt,FZt,xZt,SZt,LZt=(A,e,t,r,i,u,a,n)=>{let o=n.bits,s=0,l=0,g=0,C=0,B=0,E=0,d=0,I=0,h=0,Q=0,p,m,f,D,w,b=null,F=0,v,S=new Uint16Array($6+1),x=new Uint16Array($6+1),k=null,T=0,R,L,M;for(s=0;s<=$6;s++)S[s]=0;for(l=0;l<r;l++)S[e[t+l]]++;B=o;for(C=$6;C>=1;C--)if(S[C]!==0)break;if(B>C)B=C;if(C===0)return i[u++]=20971520,i[u++]=20971520,n.bits=1,0;for(g=1;g<C;g++)if(S[g]!==0)break;if(B<g)B=g;I=1;for(s=1;s<=$6;s++)if(I<<=1,I-=S[s],I<0)return-1;if(I>0&&(A===gce||C!==1))return-1;x[1]=0;for(s=1;s<$6;s++)x[s+1]=x[s]+S[s];for(l=0;l<r;l++)if(e[t+l]!==0)a[x[e[t+l]]++]=l;if(A===gce)b=k=a,v=19;else if(A===OEA)b=kZt,F-=257,k=FZt,T-=257,v=256;else b=xZt,k=SZt,v=-1;if(Q=0,l=0,s=g,w=u,E=B,d=0,f=-1,h=1<<B,D=h-1,A===OEA&&h>sce||A===cce&&h>lce)return 1;for(;;){if(R=s-d,a[l]<v)L=0,M=a[l];else if(a[l]>v)L=k[T+a[l]],M=b[F+a[l]];else L=96,M=0;p=1<<s-d,m=1<<E,g=m;do m-=p,i[w+(Q>>d)+m]=R<<24|L<<16|M|0;while(m!==0);p=1<<s-1;while(Q&p)p>>=1;if(p!==0)Q&=p-1,Q+=p;else Q=0;if(l++,--S[s]===0){if(s===C)break;s=e[t+a[l]]}if(s>B&&(Q&D)!==f){if(d===0)d=B;w+=g,E=s-d,I=1<<E;while(E+d<C){if(I-=S[E+d],I<=0)break;E++,I<<=1}if(h+=1<<E,A===OEA&&h>sce||A===cce&&h>lce)return 1;f=Q&D,i[f]=B<<24|E<<16|w-u|0}}if(Q!==0)i[w+Q]=s-d<<24|4194304|0;return n.bits=B,0},q7,RZt=0,nCe=1,oCe=2,Cce,NZt,LP,Jm,GZt,UZt,Fc,sCe,lCe,MZt,Bce,gCe=1,Ece=2,dce=3,Ice=4,hce=5,Qce=6,pce=7,fce=8,mce=9,Dce=10,KP=11,Fh=12,PEA=13,yce=14,_EA=15,wce=16,bce=17,vce=18,kce=19,RP=20,NP=21,Fce=22,xce=23,Sce=24,Lce=25,Rce=26,WEA=27,Nce=28,Gce=29,ma=30,cCe=31,TZt=32,YZt=852,HZt=592,KZt=15,JZt,Uce=(A)=>(A>>>24&255)+(A>>>8&65280)+((A&65280)<<8)+((A&255)<<24),CCe=(A)=>{if(!A||!A.state)return Fc;let e=A.state;if(A.total_in=A.total_out=e.total=0,A.msg="",e.wrap)A.adler=e.wrap&1;return e.mode=gCe,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(YZt),e.distcode=e.distdyn=new Int32Array(HZt),e.sane=1,e.back=-1,Jm},BCe=(A)=>{if(!A||!A.state)return Fc;let e=A.state;return e.wsize=0,e.whave=0,e.wnext=0,CCe(A)},ECe=(A,e)=>{let t;if(!A||!A.state)return Fc;let r=A.state;if(e<0)t=0,e=-e;else if(t=(e>>4)+1,e<48)e&=15;if(e&&(e<8||e>15))return Fc;if(r.window!==null&&r.wbits!==e)r.window=null;return r.wrap=t,r.wbits=e,BCe(A)},dCe=(A,e)=>{if(!A)return Fc;let t=new OZt;A.state=t,t.window=null;let r=ECe(A,e);if(r!==Jm)A.state=null;return r},PZt=(A)=>dCe(A,JZt),Mce=!0,qEA,zEA,_Zt=(A)=>{if(Mce){qEA=new Int32Array(512),zEA=new Int32Array(32);let e=0;while(e<144)A.lens[e++]=8;while(e<256)A.lens[e++]=9;while(e<280)A.lens[e++]=7;while(e<288)A.lens[e++]=8;q7(nCe,A.lens,0,288,qEA,0,A.work,{bits:9}),e=0;while(e<32)A.lens[e++]=5;q7(oCe,A.lens,0,32,zEA,0,A.work,{bits:5}),Mce=!1}A.lencode=qEA,A.lenbits=9,A.distcode=zEA,A.distbits=5},ICe=(A,e,t,r)=>{let i,u=A.state;if(u.window===null)u.wsize=1<<u.wbits,u.wnext=0,u.whave=0,u.window=new Uint8Array(u.wsize);if(r>=u.wsize)u.window.set(e.subarray(t-u.wsize,t),0),u.wnext=0,u.whave=u.wsize;else{if(i=u.wsize-u.wnext,i>r)i=r;if(u.window.set(e.subarray(t-r,t-r+i),u.wnext),r-=i,r)u.window.set(e.subarray(t-r,t),0),u.wnext=r,u.whave=u.wsize;else{if(u.wnext+=i,u.wnext===u.wsize)u.wnext=0;if(u.whave<u.wsize)u.whave+=i}}return 0},WZt=(A,e)=>{let t,r,i,u,a,n,o,s,l,g,C,B,E,d,I=0,h,Q,p,m,f,D,w,b,F=new Uint8Array(4),v,S,x=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!A||!A.state||!A.output||!A.input&&A.avail_in!==0)return Fc;if(t=A.state,t.mode===Fh)t.mode=PEA;a=A.next_out,i=A.output,o=A.avail_out,u=A.next_in,r=A.input,n=A.avail_in,s=t.hold,l=t.bits,g=n,C=o,b=Jm;A:for(;;)switch(t.mode){case gCe:if(t.wrap===0){t.mode=PEA;break}while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.wrap&2&&s===35615){t.check=0,F[0]=s&255,F[1]=s>>>8&255,t.check=Jo(t.check,F,2,0),s=0,l=0,t.mode=Ece;break}if(t.flags=0,t.head)t.head.done=!1;if(!(t.wrap&1)||(((s&255)<<8)+(s>>8))%31){A.msg="incorrect header check",t.mode=ma;break}if((s&15)!==Bce){A.msg="unknown compression method",t.mode=ma;break}if(s>>>=4,l-=4,w=(s&15)+8,t.wbits===0)t.wbits=w;else if(w>t.wbits){A.msg="invalid window size",t.mode=ma;break}t.dmax=1<<t.wbits,A.adler=t.check=1,t.mode=s&512?Dce:Fh,s=0,l=0;break;case Ece:while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.flags=s,(t.flags&255)!==Bce){A.msg="unknown compression method",t.mode=ma;break}if(t.flags&57344){A.msg="unknown header flags set",t.mode=ma;break}if(t.head)t.head.text=s>>8&1;if(t.flags&512)F[0]=s&255,F[1]=s>>>8&255,t.check=Jo(t.check,F,2,0);s=0,l=0,t.mode=dce;case dce:while(l<32){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.head)t.head.time=s;if(t.flags&512)F[0]=s&255,F[1]=s>>>8&255,F[2]=s>>>16&255,F[3]=s>>>24&255,t.check=Jo(t.check,F,4,0);s=0,l=0,t.mode=Ice;case Ice:while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.head)t.head.xflags=s&255,t.head.os=s>>8;if(t.flags&512)F[0]=s&255,F[1]=s>>>8&255,t.check=Jo(t.check,F,2,0);s=0,l=0,t.mode=hce;case hce:if(t.flags&1024){while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.length=s,t.head)t.head.extra_len=s;if(t.flags&512)F[0]=s&255,F[1]=s>>>8&255,t.check=Jo(t.check,F,2,0);s=0,l=0}else if(t.head)t.head.extra=null;t.mode=Qce;case Qce:if(t.flags&1024){if(B=t.length,B>n)B=n;if(B){if(t.head){if(w=t.head.extra_len-t.length,!t.head.extra)t.head.extra=new Uint8Array(t.head.extra_len);t.head.extra.set(r.subarray(u,u+B),w)}if(t.flags&512)t.check=Jo(t.check,r,B,u);n-=B,u+=B,t.length-=B}if(t.length)break A}t.length=0,t.mode=pce;case pce:if(t.flags&2048){if(n===0)break A;B=0;do if(w=r[u+B++],t.head&&w&&t.length<65536)t.head.name+=String.fromCharCode(w);while(w&&B<n);if(t.flags&512)t.check=Jo(t.check,r,B,u);if(n-=B,u+=B,w)break A}else if(t.head)t.head.name=null;t.length=0,t.mode=fce;case fce:if(t.flags&4096){if(n===0)break A;B=0;do if(w=r[u+B++],t.head&&w&&t.length<65536)t.head.comment+=String.fromCharCode(w);while(w&&B<n);if(t.flags&512)t.check=Jo(t.check,r,B,u);if(n-=B,u+=B,w)break A}else if(t.head)t.head.comment=null;t.mode=mce;case mce:if(t.flags&512){while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(s!==(t.check&65535)){A.msg="header crc mismatch",t.mode=ma;break}s=0,l=0}if(t.head)t.head.hcrc=t.flags>>9&1,t.head.done=!0;A.adler=t.check=0,t.mode=Fh;break;case Dce:while(l<32){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}A.adler=t.check=Uce(s),s=0,l=0,t.mode=KP;case KP:if(t.havedict===0)return A.next_out=a,A.avail_out=o,A.next_in=u,A.avail_in=n,t.hold=s,t.bits=l,UZt;A.adler=t.check=1,t.mode=Fh;case Fh:if(e===NZt||e===LP)break A;case PEA:if(t.last){s>>>=l&7,l-=l&7,t.mode=WEA;break}while(l<3){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}switch(t.last=s&1,s>>>=1,l-=1,s&3){case 0:t.mode=yce;break;case 1:if(_Zt(t),t.mode=RP,e===LP){s>>>=2,l-=2;break A}break;case 2:t.mode=bce;break;case 3:A.msg="invalid block type",t.mode=ma}s>>>=2,l-=2;break;case yce:s>>>=l&7,l-=l&7;while(l<32){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if((s&65535)!==(s>>>16^65535)){A.msg="invalid stored block lengths",t.mode=ma;break}if(t.length=s&65535,s=0,l=0,t.mode=_EA,e===LP)break A;case _EA:t.mode=wce;case wce:if(B=t.length,B){if(B>n)B=n;if(B>o)B=o;if(B===0)break A;i.set(r.subarray(u,u+B),a),n-=B,u+=B,o-=B,a+=B,t.length-=B;break}t.mode=Fh;break;case bce:while(l<14){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.nlen=(s&31)+257,s>>>=5,l-=5,t.ndist=(s&31)+1,s>>>=5,l-=5,t.ncode=(s&15)+4,s>>>=4,l-=4,t.nlen>286||t.ndist>30){A.msg="too many length or distance symbols",t.mode=ma;break}t.have=0,t.mode=vce;case vce:while(t.have<t.ncode){while(l<3){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}t.lens[x[t.have++]]=s&7,s>>>=3,l-=3}while(t.have<19)t.lens[x[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,v={bits:t.lenbits},b=q7(RZt,t.lens,0,19,t.lencode,0,t.work,v),t.lenbits=v.bits,b){A.msg="invalid code lengths set",t.mode=ma;break}t.have=0,t.mode=kce;case kce:while(t.have<t.nlen+t.ndist){for(;;){if(I=t.lencode[s&(1<<t.lenbits)-1],h=I>>>24,Q=I>>>16&255,p=I&65535,h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(p<16)s>>>=h,l-=h,t.lens[t.have++]=p;else{if(p===16){S=h+2;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(s>>>=h,l-=h,t.have===0){A.msg="invalid bit length repeat",t.mode=ma;break}w=t.lens[t.have-1],B=3+(s&3),s>>>=2,l-=2}else if(p===17){S=h+3;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}s>>>=h,l-=h,w=0,B=3+(s&7),s>>>=3,l-=3}else{S=h+7;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}s>>>=h,l-=h,w=0,B=11+(s&127),s>>>=7,l-=7}if(t.have+B>t.nlen+t.ndist){A.msg="invalid bit length repeat",t.mode=ma;break}while(B--)t.lens[t.have++]=w}}if(t.mode===ma)break;if(t.lens[256]===0){A.msg="invalid code -- missing end-of-block",t.mode=ma;break}if(t.lenbits=9,v={bits:t.lenbits},b=q7(nCe,t.lens,0,t.nlen,t.lencode,0,t.work,v),t.lenbits=v.bits,b){A.msg="invalid literal/lengths set",t.mode=ma;break}if(t.distbits=6,t.distcode=t.distdyn,v={bits:t.distbits},b=q7(oCe,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,v),t.distbits=v.bits,b){A.msg="invalid distances set",t.mode=ma;break}if(t.mode=RP,e===LP)break A;case RP:t.mode=NP;case NP:if(n>=6&&o>=258){if(A.next_out=a,A.avail_out=o,A.next_in=u,A.avail_in=n,t.hold=s,t.bits=l,vZt(A,C),a=A.next_out,i=A.output,o=A.avail_out,u=A.next_in,r=A.input,n=A.avail_in,s=t.hold,l=t.bits,t.mode===Fh)t.back=-1;break}t.back=0;for(;;){if(I=t.lencode[s&(1<<t.lenbits)-1],h=I>>>24,Q=I>>>16&255,p=I&65535,h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(Q&&(Q&240)===0){m=h,f=Q,D=p;for(;;){if(I=t.lencode[D+((s&(1<<m+f)-1)>>m)],h=I>>>24,Q=I>>>16&255,p=I&65535,m+h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}s>>>=m,l-=m,t.back+=m}if(s>>>=h,l-=h,t.back+=h,t.length=p,Q===0){t.mode=Rce;break}if(Q&32){t.back=-1,t.mode=Fh;break}if(Q&64){A.msg="invalid literal/length code",t.mode=ma;break}t.extra=Q&15,t.mode=Fce;case Fce:if(t.extra){S=t.extra;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}t.length+=s&(1<<t.extra)-1,s>>>=t.extra,l-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=xce;case xce:for(;;){if(I=t.distcode[s&(1<<t.distbits)-1],h=I>>>24,Q=I>>>16&255,p=I&65535,h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if((Q&240)===0){m=h,f=Q,D=p;for(;;){if(I=t.distcode[D+((s&(1<<m+f)-1)>>m)],h=I>>>24,Q=I>>>16&255,p=I&65535,m+h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}s>>>=m,l-=m,t.back+=m}if(s>>>=h,l-=h,t.back+=h,Q&64){A.msg="invalid distance code",t.mode=ma;break}t.offset=p,t.extra=Q&15,t.mode=Sce;case Sce:if(t.extra){S=t.extra;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}t.offset+=s&(1<<t.extra)-1,s>>>=t.extra,l-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){A.msg="invalid distance too far back",t.mode=ma;break}t.mode=Lce;case Lce:if(o===0)break A;if(B=C-o,t.offset>B){if(B=t.offset-B,B>t.whave){if(t.sane){A.msg="invalid distance too far back",t.mode=ma;break}}if(B>t.wnext)B-=t.wnext,E=t.wsize-B;else E=t.wnext-B;if(B>t.length)B=t.length;d=t.window}else d=i,E=a-t.offset,B=t.length;if(B>o)B=o;o-=B,t.length-=B;do i[a++]=d[E++];while(--B);if(t.length===0)t.mode=NP;break;case Rce:if(o===0)break A;i[a++]=t.length,o--,t.mode=NP;break;case WEA:if(t.wrap){while(l<32){if(n===0)break A;n--,s|=r[u++]<<l,l+=8}if(C-=o,A.total_out+=C,t.total+=C,C)A.adler=t.check=t.flags?Jo(t.check,i,C,a-C):X7(t.check,i,C,a-C);if(C=o,(t.flags?s:Uce(s))!==t.check){A.msg="incorrect data check",t.mode=ma;break}s=0,l=0}t.mode=Nce;case Nce:if(t.wrap&&t.flags){while(l<32){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(s!==(t.total&4294967295)){A.msg="incorrect length check",t.mode=ma;break}s=0,l=0}t.mode=Gce;case Gce:b=GZt;break A;case ma:b=sCe;break A;case cCe:return lCe;case TZt:default:return Fc}if(A.next_out=a,A.avail_out=o,A.next_in=u,A.avail_in=n,t.hold=s,t.bits=l,t.wsize||C!==A.avail_out&&t.mode<ma&&(t.mode<WEA||e!==Cce)){if(ICe(A,A.output,A.next_out,C-A.avail_out));}if(g-=A.avail_in,C-=A.avail_out,A.total_in+=g,A.total_out+=C,t.total+=C,t.wrap&&C)A.adler=t.check=t.flags?Jo(t.check,i,C,A.next_out-C):X7(t.check,i,C,A.next_out-C);if(A.data_type=t.bits+(t.last?64:0)+(t.mode===Fh?128:0)+(t.mode===RP||t.mode===_EA?256:0),(g===0&&C===0||e===Cce)&&b===Jm)b=MZt;return b},qZt=(A)=>{if(!A||!A.state)return Fc;let e=A.state;if(e.window)e.window=null;return A.state=null,Jm},zZt=(A,e)=>{if(!A||!A.state)return Fc;let t=A.state;if((t.wrap&2)===0)return Fc;return t.head=e,e.done=!1,Jm},ZZt=(A,e)=>{let t=e.length,r,i,u;if(!A||!A.state)return Fc;if(r=A.state,r.wrap!==0&&r.mode!==KP)return Fc;if(r.mode===KP){if(i=1,i=X7(i,e,t,0),i!==r.check)return sCe}if(u=ICe(A,e,t,t),u)return r.mode=cCe,lCe;return r.havedict=1,Jm},VZt,jZt,XZt,$Zt,AVt,eVt,tVt,rVt,iVt,uVt="pako inflate (from Nodeca project)",Sh,nVt,hCe,oVt,sVt,e8,ZEA,VEA,lVt,Tce,gVt,CVt,BVt,EVt,dVt,IVt,hVt,C2i,QVt,B2i,E2i,d2i,pVt,I2i,h2i,QCe,pCe;var fCe=P(()=>{/*! pako 2.0.3 https://github.com/nodeca/pako @license (MIT AND Zlib) */z7=t8+1+edA,Hce=2*z7+1,jEA=new Uint8Array([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]),GP=new Uint8Array([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]),Jqt=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),Pce=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),xh=Array((z7+2)*2);e9(xh);_7=Array(A9*2);e9(_7);Z7=Array(Oqt);e9(Z7);V7=Array(Hqt-Yqt+1);e9(V7);idA=Array(edA);e9(idA);YP=Array(A9);e9(YP);ezt=jqt,tzt=$ce,rzt=$qt,izt=Azt,uzt=Xqt,azt={_tr_init:ezt,_tr_stored_block:tzt,_tr_flush_block:rzt,_tr_tally:izt,_tr_align:uzt},X7=nzt,szt=new Uint32Array(ozt()),Jo=lzt,Ym={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},t9={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:gzt,_tr_stored_block:czt,_tr_flush_block:Czt,_tr_tally:F1,_tr_align:Bzt}=azt,{Z_NO_FLUSH:Om,Z_PARTIAL_FLUSH:Ezt,Z_FULL_FLUSH:dzt,Z_FINISH:x1,Z_BLOCK:ace,Z_OK:Ed,Z_STREAM_END:nce,Z_STREAM_ERROR:kc,Z_DATA_ERROR:Izt,Z_BUF_ERROR:KEA,Z_DEFAULT_COMPRESSION:hzt,Z_FILTERED:Qzt,Z_HUFFMAN_ONLY:xP,Z_RLE:pzt,Z_FIXED:fzt,Z_DEFAULT_STRATEGY:mzt,Z_UNKNOWN:Dzt,Z_DEFLATED:JP}=t9,$EA=kzt+1+vzt,Szt=2*$EA+1,$C=v1+Di+1,S1=Gzt;P7=[new Cd(0,0,0,0,Mzt),new Cd(4,4,8,4,JEA),new Cd(4,5,16,8,JEA),new Cd(4,6,32,32,JEA),new Cd(4,4,16,16,X6),new Cd(8,16,32,32,X6),new Cd(8,16,128,128,X6),new Cd(8,32,128,256,X6),new Cd(32,128,258,1024,X6),new Cd(32,258,258,4096,X6)];qzt=Ozt,zzt=rCe,Zzt=tCe,Vzt=eCe,jzt=Jzt,Xzt=Pzt,$zt=_zt,AZt=Wzt,W7={deflateInit:qzt,deflateInit2:zzt,deflateReset:Zzt,deflateResetKeep:Vzt,deflateSetHeader:jzt,deflate:Xzt,deflateEnd:$zt,deflateSetDictionary:AZt,deflateInfo:eZt},PP={assign:rZt,flattenChunks:iZt};try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){iCe=!1}$7=new Uint8Array(256);for(let A=0;A<256;A++)$7[A]=A>=252?6:A>=248?5:A>=240?4:A>=224?3:A>=192?2:1;$7[254]=$7[254]=1;A8={string2buf:uZt,buf2string:nZt,utf8border:oZt};uCe=sZt,aCe=Object.prototype.toString,{Z_NO_FLUSH:lZt,Z_SYNC_FLUSH:gZt,Z_FULL_FLUSH:cZt,Z_FINISH:CZt,Z_OK:HP,Z_STREAM_END:BZt,Z_DEFAULT_COMPRESSION:EZt,Z_DEFAULT_STRATEGY:dZt,Z_DEFLATED:IZt}=t9;i8.prototype.push=function(A,e){let t=this.strm,r=this.options.chunkSize,i,u;if(this.ended)return!1;if(e===~~e)u=e;else u=e===!0?CZt:lZt;if(typeof A==="string")t.input=A8.string2buf(A);else if(aCe.call(A)==="[object ArrayBuffer]")t.input=new Uint8Array(A);else t.input=A;t.next_in=0,t.avail_in=t.input.length;for(;;){if(t.avail_out===0)t.output=new Uint8Array(r),t.next_out=0,t.avail_out=r;if((u===gZt||u===cZt)&&t.avail_out<=6){this.onData(t.output.subarray(0,t.next_out)),t.avail_out=0;continue}if(i=W7.deflate(t,u),i===BZt){if(t.next_out>0)this.onData(t.output.subarray(0,t.next_out));return i=W7.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===HP}if(t.avail_out===0){this.onData(t.output);continue}if(u>0&&t.next_out>0){this.onData(t.output.subarray(0,t.next_out)),t.avail_out=0;continue}if(t.avail_in===0)break}return!0};i8.prototype.onData=function(A){this.chunks.push(A)};i8.prototype.onEnd=function(A){if(A===HP)this.result=PP.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};pZt=i8,fZt=udA,mZt=hZt,DZt=QZt,yZt=t9,wZt={Deflate:pZt,deflate:fZt,deflateRaw:mZt,gzip:DZt,constants:yZt},kZt=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),FZt=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),xZt=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),SZt=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]),q7=LZt,{Z_FINISH:Cce,Z_BLOCK:NZt,Z_TREES:LP,Z_OK:Jm,Z_STREAM_END:GZt,Z_NEED_DICT:UZt,Z_STREAM_ERROR:Fc,Z_DATA_ERROR:sCe,Z_MEM_ERROR:lCe,Z_BUF_ERROR:MZt,Z_DEFLATED:Bce}=t9,JZt=KZt;VZt=BCe,jZt=ECe,XZt=CCe,$Zt=PZt,AVt=dCe,eVt=WZt,tVt=qZt,rVt=zZt,iVt=ZZt,Sh={inflateReset:VZt,inflateReset2:jZt,inflateResetKeep:XZt,inflateInit:$Zt,inflateInit2:AVt,inflate:eVt,inflateEnd:tVt,inflateGetHeader:rVt,inflateSetDictionary:iVt,inflateInfo:uVt};nVt=aVt,hCe=Object.prototype.toString,{Z_NO_FLUSH:oVt,Z_FINISH:sVt,Z_OK:e8,Z_STREAM_END:ZEA,Z_NEED_DICT:VEA,Z_STREAM_ERROR:lVt,Z_DATA_ERROR:Tce,Z_MEM_ERROR:gVt}=t9;u8.prototype.push=function(A,e){let t=this.strm,r=this.options.chunkSize,i=this.options.dictionary,u,a,n;if(this.ended)return!1;if(e===~~e)a=e;else a=e===!0?sVt:oVt;if(hCe.call(A)==="[object ArrayBuffer]")t.input=new Uint8Array(A);else t.input=A;t.next_in=0,t.avail_in=t.input.length;for(;;){if(t.avail_out===0)t.output=new Uint8Array(r),t.next_out=0,t.avail_out=r;if(u=Sh.inflate(t,a),u===VEA&&i){if(u=Sh.inflateSetDictionary(t,i),u===e8)u=Sh.inflate(t,a);else if(u===Tce)u=VEA}while(t.avail_in>0&&u===ZEA&&t.state.wrap>0&&A[t.next_in]!==0)Sh.inflateReset(t),u=Sh.inflate(t,a);switch(u){case lVt:case Tce:case VEA:case gVt:return this.onEnd(u),this.ended=!0,!1}if(n=t.avail_out,t.next_out){if(t.avail_out===0||u===ZEA)if(this.options.to==="string"){let o=A8.utf8border(t.output,t.next_out),s=t.next_out-o,l=A8.buf2string(t.output,o);if(t.next_out=s,t.avail_out=r-s,s)t.output.set(t.output.subarray(o,o+s),0);this.onData(l)}else this.onData(t.output.length===t.next_out?t.output:t.output.subarray(0,t.next_out))}if(u===e8&&n===0)continue;if(u===ZEA)return u=Sh.inflateEnd(this.strm),this.onEnd(u),this.ended=!0,!0;if(t.avail_in===0)break}return!0};u8.prototype.onData=function(A){this.chunks.push(A)};u8.prototype.onEnd=function(A){if(A===e8)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=PP.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};CVt=u8,BVt=adA,EVt=cVt,dVt=adA,IVt=t9,hVt={Inflate:CVt,inflate:BVt,inflateRaw:EVt,ungzip:dVt,constants:IVt},{Deflate:C2i,deflate:QVt,deflateRaw:B2i,gzip:E2i}=wZt,{Inflate:d2i,inflate:pVt,inflateRaw:I2i,ungzip:h2i}=hVt,QCe=QVt,pCe=pVt});var ua;var L1=P(()=>{ua={white:"#ffffff",black:"#000000",gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]}});var i9=wu(function(f2i,wCe){var yCe="Expected a function",mCe=NaN,mVt="[object Symbol]",DVt=/^\s+|\s+$/g,yVt=/^[-+]0x[0-9a-f]+$/i,wVt=/^0b[01]+$/i,bVt=/^0o[0-7]+$/i,vVt=parseInt,kVt=typeof global=="object"&&global&&global.Object===Object&&global,FVt=typeof self=="object"&&self&&self.Object===Object&&self,xVt=kVt||FVt||Function("return this")(),SVt=Object.prototype,LVt=SVt.toString,{max:RVt,min:NVt}=Math,ndA=function(){return xVt.Date.now()};function GVt(A,e,t){var r,i,u,a,n,o,s=0,l=!1,g=!1,C=!0;if(typeof A!="function")throw TypeError(yCe);if(e=DCe(e)||0,_P(t))l=!!t.leading,g="maxWait"in t,u=g?RVt(DCe(t.maxWait)||0,e):u,C="trailing"in t?!!t.trailing:C;function B(D){var w=r,b=i;return r=i=void 0,s=D,a=A.apply(b,w),a}function E(D){return s=D,n=setTimeout(h,e),l?B(D):a}function d(D){var w=D-o,b=D-s,F=e-w;return g?NVt(F,u-b):F}function I(D){var w=D-o,b=D-s;return o===void 0||w>=e||w<0||g&&b>=u}function h(){var D=ndA();if(I(D))return Q(D);n=setTimeout(h,d(D))}function Q(D){if(n=void 0,C&&r)return B(D);return r=i=void 0,a}function p(){if(n!==void 0)clearTimeout(n);s=0,r=o=i=n=void 0}function m(){return n===void 0?a:Q(ndA())}function f(){var D=ndA(),w=I(D);if(r=arguments,i=this,o=D,w){if(n===void 0)return E(o);if(g)return n=setTimeout(h,e),B(o)}if(n===void 0)n=setTimeout(h,e);return a}return f.cancel=p,f.flush=m,f}function UVt(A,e,t){var r=!0,i=!0;if(typeof A!="function")throw TypeError(yCe);if(_P(t))r="leading"in t?!!t.leading:r,i="trailing"in t?!!t.trailing:i;return GVt(A,e,{leading:r,maxWait:e,trailing:i})}function _P(A){var e=typeof A;return!!A&&(e=="object"||e=="function")}function MVt(A){return!!A&&typeof A=="object"}function TVt(A){return typeof A=="symbol"||MVt(A)&&LVt.call(A)==mVt}function DCe(A){if(typeof A=="number")return A;if(TVt(A))return mCe;if(_P(A)){var e=typeof A.valueOf=="function"?A.valueOf():A;A=_P(e)?e+"":e}if(typeof A!="string")return A===0?A:+A;A=A.replace(DVt,"");var t=wVt.test(A);return t||bVt.test(A)?vVt(A.slice(2),t?2:8):yVt.test(A)?mCe:+A}wCe.exports=UVt});var vCe=wu(function(odA,bCe){(function(A,e){if(typeof define==="function"&&define.amd)define([],e);else if(typeof odA==="object")bCe.exports=e();else A.PromisePool=e(),A.promisePool=A.PromisePool})(odA,function(){var A=function(){this._listeners={}};A.prototype.addEventListener=function(n,o){if(this._listeners[n]=this._listeners[n]||[],this._listeners[n].indexOf(o)<0)this._listeners[n].push(o)},A.prototype.removeEventListener=function(n,o){if(this._listeners[n]){var s=this._listeners[n].indexOf(o);if(s>=0)this._listeners[n].splice(s,1)}},A.prototype.dispatchEvent=function(n){if(this._listeners[n.type]&&this._listeners[n.type].length){var o=this._listeners[n.type].slice();for(var s=0,l=o.length;s<l;++s)o[s].call(this,n)}};var e=function(n){return typeof n.constructor==="function"&&n.constructor.name==="GeneratorFunction"},t=function(n){return{next:function(){var o=n();return o?{value:o}:{done:!0}}}},r=function(n){var o=!1;return{next:function(){if(o)return{done:!0};return o=!0,{value:n}}}},i=function(n,o){var s=typeof n;if(s==="object"){if(typeof n.next==="function")return n;if(typeof n.then==="function")return r(n)}if(s==="function")return e(n)?n():t(n);return r(o.resolve(n))},u=function(n,o,s){this.target=n,this.type=o,this.data=s},a=function(n,o,s){if(A.call(this),typeof o!=="number"||Math.floor(o)!==o||o<1)throw Error("Invalid concurrency");this._concurrency=o,this._options=s||{},this._options.promise=this._options.promise||Promise,this._iterator=i(n,this._options.promise),this._done=!1,this._size=0,this._promise=null,this._callbacks=null};return a.prototype=new A,a.prototype.constructor=a,a.prototype.concurrency=function(n){if(typeof n<"u"){if(this._concurrency=n,this.active())this._proceed()}return this._concurrency},a.prototype.size=function(){return this._size},a.prototype.active=function(){return!!this._promise},a.prototype.promise=function(){return this._promise},a.prototype.start=function(){var n=this,o=this._options.promise;return this._promise=new o(function(s,l){n._callbacks={reject:l,resolve:s},n._proceed()}),this._promise},a.prototype._fireEvent=function(n,o){this.dispatchEvent(new u(this,n,o))},a.prototype._settle=function(n){if(n)this._callbacks.reject(n);else this._callbacks.resolve();this._promise=null,this._callbacks=null},a.prototype._onPooledPromiseFulfilled=function(n,o){if(this._size--,this.active())this._fireEvent("fulfilled",{promise:n,result:o}),this._proceed()},a.prototype._onPooledPromiseRejected=function(n,o){if(this._size--,this.active())this._fireEvent("rejected",{promise:n,error:o}),this._settle(o||Error("Unknown error"))},a.prototype._trackPromise=function(n){var o=this;n.then(function(s){o._onPooledPromiseFulfilled(n,s)},function(s){o._onPooledPromiseRejected(n,s)}).catch(function(s){o._settle(Error("Promise processing failed: "+s))})},a.prototype._proceed=function(){if(!this._done){var n={done:!1};while(this._size<this._concurrency&&!(n=this._iterator.next()).done)this._size++,this._trackPromise(n.value);this._done=n===null||!!n.done}if(this._done&&this._size===0)this._settle()},a.PromisePoolEvent=u,a.PromisePool=a,a})});function sdA(A,e,t){if(A&&A.length){let[r,i]=e,u=Math.PI/180*t,a=Math.cos(u),n=Math.sin(u);for(let o of A){let[s,l]=o;o[0]=(s-r)*a-(l-i)*n+r,o[1]=(s-r)*n+(l-i)*a+i}}}function YVt(A,e,t){let r=[];A.forEach((i)=>r.push(...i)),sdA(r,e,t)}function HVt(A,e){return A[0]===e[0]&&A[1]===e[1]}function kCe(A,e,t,r=1){let i=t,u=Math.max(e,0.1),a=A[0]&&A[0][0]&&typeof A[0][0]==="number"?[A]:A,n=[0,0];if(i)for(let s of a)sdA(s,n,i);let o=KVt(a,u,r);if(i){for(let s of a)sdA(s,n,-i);YVt(o,n,-i)}return o}function KVt(A,e,t){let r=[];for(let s of A){let l=[...s];if(!HVt(l[0],l[l.length-1]))l.push([l[0][0],l[0][1]]);if(l.length>2)r.push(l)}let i=[];e=Math.max(e,0.1);let u=[];for(let s of r)for(let l=0;l<s.length-1;l++){let g=s[l],C=s[l+1];if(g[1]!==C[1]){let B=Math.min(g[1],C[1]);u.push({ymin:B,ymax:Math.max(g[1],C[1]),x:B===g[1]?g[0]:C[0],islope:(C[0]-g[0])/(C[1]-g[1])})}}if(u.sort((s,l)=>{if(s.ymin<l.ymin)return-1;if(s.ymin>l.ymin)return 1;if(s.x<l.x)return-1;if(s.x>l.x)return 1;if(s.ymax===l.ymax)return 0;return(s.ymax-l.ymax)/Math.abs(s.ymax-l.ymax)}),!u.length)return i;let a=[],n=u[0].ymin,o=0;while(a.length||u.length){if(u.length){let s=-1;for(let g=0;g<u.length;g++){if(u[g].ymin>n)break;s=g}u.splice(0,s+1).forEach((g)=>{a.push({s:n,edge:g})})}if(a=a.filter((s)=>{if(s.edge.ymax<=n)return!1;return!0}),a.sort((s,l)=>{if(s.edge.x===l.edge.x)return 0;return(s.edge.x-l.edge.x)/Math.abs(s.edge.x-l.edge.x)}),t!==1||o%e===0){if(a.length>1)for(let s=0;s<a.length;s=s+2){let l=s+1;if(l>=a.length)break;let g=a[s].edge,C=a[l].edge;i.push([[Math.round(g.x),n],[Math.round(C.x),n]])}}n+=t,a.forEach((s)=>{s.edge.x=s.edge.x+t*s.edge.islope}),o++}return i}function dd(A,e){var t;let r=e.hachureAngle+90,i=e.hachureGap;if(i<0)i=e.strokeWidth*4;i=Math.max(i,0.1);let u=1;if(e.roughness>=1){if((((t=e.randomizer)===null||t===void 0?void 0:t.next())||Math.random())>0.7)u=i}return kCe(A,i,r,u||1)}var u9=()=>{};class Pm{constructor(A){this.helper=A}fillPolygons(A,e){return this._fillPolygons(A,e)}_fillPolygons(A,e){let t=dd(A,e);return{type:"fillSketch",ops:this.renderLines(t,e)}}renderLines(A,e){let t=[];for(let r of A)t.push(...this.helper.doubleLineOps(r[0][0],r[0][1],r[1][0],r[1][1],e));return t}}var WP=P(()=>{u9()});function R1(A){let e=A[0],t=A[1];return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}var ldA;var FCe=P(()=>{WP();u9();ldA=class ldA extends Pm{fillPolygons(A,e){let t=e.hachureGap;if(t<0)t=e.strokeWidth*4;t=Math.max(t,0.1);let r=Object.assign({},e,{hachureGap:t}),i=dd(A,r),u=Math.PI/180*e.hachureAngle,a=[],n=t*0.5*Math.cos(u),o=t*0.5*Math.sin(u);for(let[l,g]of i)if(R1([l,g]))a.push([[l[0]-n,l[1]+o],[...g]],[[l[0]+n,l[1]-o],[...g]]);return{type:"fillSketch",ops:this.renderLines(a,e)}}}});var gdA;var xCe=P(()=>{WP();gdA=class gdA extends Pm{fillPolygons(A,e){let t=this._fillPolygons(A,e),r=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),i=this._fillPolygons(A,r);return t.ops=t.ops.concat(i.ops),t}}});class cdA{constructor(A){this.helper=A}fillPolygons(A,e){e=Object.assign({},e,{hachureAngle:0});let t=dd(A,e);return this.dotsOnLines(t,e)}dotsOnLines(A,e){let t=[],r=e.hachureGap;if(r<0)r=e.strokeWidth*4;r=Math.max(r,0.1);let i=e.fillWeight;if(i<0)i=e.strokeWidth/2;let u=r/4;for(let a of A){let n=R1(a),o=n/r,s=Math.ceil(o)-1,l=n-s*r,g=(a[0][0]+a[1][0])/2-r/4,C=Math.min(a[0][1],a[1][1]);for(let B=0;B<s;B++){let E=C+l+B*r,d=g-u+Math.random()*2*u,I=E-u+Math.random()*2*u,h=this.helper.ellipse(d,I,i,i,e);t.push(...h.ops)}}return{type:"fillSketch",ops:t}}}var SCe=P(()=>{u9()});class CdA{constructor(A){this.helper=A}fillPolygons(A,e){let t=dd(A,e);return{type:"fillSketch",ops:this.dashedLine(t,e)}}dashedLine(A,e){let t=e.dashOffset<0?e.hachureGap<0?e.strokeWidth*4:e.hachureGap:e.dashOffset,r=e.dashGap<0?e.hachureGap<0?e.strokeWidth*4:e.hachureGap:e.dashGap,i=[];return A.forEach((u)=>{let a=R1(u),n=Math.floor(a/(t+r)),o=(a+r-n*(t+r))/2,s=u[0],l=u[1];if(s[0]>l[0])s=u[1],l=u[0];let g=Math.atan((l[1]-s[1])/(l[0]-s[0]));for(let C=0;C<n;C++){let B=C*(t+r),E=B+t,d=[s[0]+B*Math.cos(g)+o*Math.cos(g),s[1]+B*Math.sin(g)+o*Math.sin(g)],I=[s[0]+E*Math.cos(g)+o*Math.cos(g),s[1]+E*Math.sin(g)+o*Math.sin(g)];i.push(...this.helper.doubleLineOps(d[0],d[1],I[0],I[1],e))}}),i}}var LCe=P(()=>{u9()});class BdA{constructor(A){this.helper=A}fillPolygons(A,e){let t=e.hachureGap<0?e.strokeWidth*4:e.hachureGap,r=e.zigzagOffset<0?t:e.zigzagOffset;e=Object.assign({},e,{hachureGap:t+r});let i=dd(A,e);return{type:"fillSketch",ops:this.zigzagLines(i,r,e)}}zigzagLines(A,e,t){let r=[];return A.forEach((i)=>{let u=R1(i),a=Math.round(u/(2*e)),n=i[0],o=i[1];if(n[0]>o[0])n=i[1],o=i[0];let s=Math.atan((o[1]-n[1])/(o[0]-n[0]));for(let l=0;l<a;l++){let g=l*2*e,C=(l+1)*2*e,B=Math.sqrt(2*Math.pow(e,2)),E=[n[0]+g*Math.cos(s),n[1]+g*Math.sin(s)],d=[n[0]+C*Math.cos(s),n[1]+C*Math.sin(s)],I=[E[0]+B*Math.cos(s+Math.PI/4),E[1]+B*Math.sin(s+Math.PI/4)];r.push(...this.helper.doubleLineOps(E[0],E[1],I[0],I[1],t),...this.helper.doubleLineOps(I[0],I[1],d[0],d[1],t))}}),r}}var RCe=P(()=>{u9()});function NCe(A,e){let t=A.fillStyle||"hachure";if(!Nl[t])switch(t){case"zigzag":if(!Nl[t])Nl[t]=new ldA(e);break;case"cross-hatch":if(!Nl[t])Nl[t]=new gdA(e);break;case"dots":if(!Nl[t])Nl[t]=new cdA(e);break;case"dashed":if(!Nl[t])Nl[t]=new CdA(e);break;case"zigzag-line":if(!Nl[t])Nl[t]=new BdA(e);break;case"hachure":default:if(t="hachure",!Nl[t])Nl[t]=new Pm(e);break}return Nl[t]}var Nl;var GCe=P(()=>{WP();FCe();xCe();SCe();LCe();RCe();Nl={}});function UCe(){return Math.floor(Math.random()*2147483648)}class a8{constructor(A){this.seed=A}next(){if(this.seed)return(2147483647&(this.seed=Math.imul(48271,this.seed)))/2147483648;else return Math.random()}}function JVt(A){let e=[];while(A!=="")if(A.match(/^([ \t\r\n,]+)/))A=A.substr(RegExp.$1.length);else if(A.match(/^([aAcChHlLmMqQsStTvVzZ])/))e[e.length]={type:0,text:RegExp.$1},A=A.substr(RegExp.$1.length);else if(A.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))e[e.length]={type:1,text:`${parseFloat(RegExp.$1)}`},A=A.substr(RegExp.$1.length);else return[];return e[e.length]={type:2,text:""},e}function EdA(A,e){return A.type===e}function a9(A){let e=[],t=JVt(A),r="BOD",i=0,u=t[i];while(!EdA(u,2)){let a=0,n=[];if(r==="BOD")if(u.text==="M"||u.text==="m")i++,a=qP[u.text],r=u.text;else return a9("M0,0"+A);else if(EdA(u,1))a=qP[r];else i++,a=qP[u.text],r=u.text;if(i+a<t.length){for(let o=i;o<i+a;o++){let s=t[o];if(EdA(s,1))n[n.length]=+s.text;else throw Error("Param not a number: "+r+","+s.text)}if(typeof qP[r]==="number"){let o={key:r,data:n};if(e.push(o),i+=a,u=t[i],r==="M")r="L";if(r==="m")r="l"}else throw Error("Bad segment: "+r)}else throw Error("Path data ended short")}return e}var qP;var MCe=P(()=>{qP={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0}});function n8(A){let e=0,t=0,r=0,i=0,u=[];for(let{key:a,data:n}of A)switch(a){case"M":u.push({key:"M",data:[...n]}),[e,t]=n,[r,i]=n;break;case"m":e+=n[0],t+=n[1],u.push({key:"M",data:[e,t]}),r=e,i=t;break;case"L":u.push({key:"L",data:[...n]}),[e,t]=n;break;case"l":e+=n[0],t+=n[1],u.push({key:"L",data:[e,t]});break;case"C":u.push({key:"C",data:[...n]}),e=n[4],t=n[5];break;case"c":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"C",data:o}),e=o[4],t=o[5];break}case"Q":u.push({key:"Q",data:[...n]}),e=n[2],t=n[3];break;case"q":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"Q",data:o}),e=o[2],t=o[3];break}case"A":u.push({key:"A",data:[...n]}),e=n[5],t=n[6];break;case"a":e+=n[5],t+=n[6],u.push({key:"A",data:[n[0],n[1],n[2],n[3],n[4],e,t]});break;case"H":u.push({key:"H",data:[...n]}),e=n[0];break;case"h":e+=n[0],u.push({key:"H",data:[e]});break;case"V":u.push({key:"V",data:[...n]}),t=n[0];break;case"v":t+=n[0],u.push({key:"V",data:[t]});break;case"S":u.push({key:"S",data:[...n]}),e=n[2],t=n[3];break;case"s":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"S",data:o}),e=o[2],t=o[3];break}case"T":u.push({key:"T",data:[...n]}),e=n[0],t=n[1];break;case"t":e+=n[0],t+=n[1],u.push({key:"T",data:[e,t]});break;case"Z":case"z":u.push({key:"Z",data:[]}),e=r,t=i;break}return u}function s8(A){let e=[],t="",r=0,i=0,u=0,a=0,n=0,o=0;for(let{key:s,data:l}of A){switch(s){case"M":e.push({key:"M",data:[...l]}),[r,i]=l,[u,a]=l;break;case"C":e.push({key:"C",data:[...l]}),r=l[4],i=l[5],n=l[2],o=l[3];break;case"L":e.push({key:"L",data:[...l]}),[r,i]=l;break;case"H":r=l[0],e.push({key:"L",data:[r,i]});break;case"V":i=l[0],e.push({key:"L",data:[r,i]});break;case"S":{let g=0,C=0;if(t==="C"||t==="S")g=r+(r-n),C=i+(i-o);else g=r,C=i;e.push({key:"C",data:[g,C,...l]}),n=l[0],o=l[1],r=l[2],i=l[3];break}case"T":{let[g,C]=l,B=0,E=0;if(t==="Q"||t==="T")B=r+(r-n),E=i+(i-o);else B=r,E=i;let d=r+2*(B-r)/3,I=i+2*(E-i)/3,h=g+2*(B-g)/3,Q=C+2*(E-C)/3;e.push({key:"C",data:[d,I,h,Q,g,C]}),n=B,o=E,r=g,i=C;break}case"Q":{let[g,C,B,E]=l,d=r+2*(g-r)/3,I=i+2*(C-i)/3,h=B+2*(g-B)/3,Q=E+2*(C-E)/3;e.push({key:"C",data:[d,I,h,Q,B,E]}),n=g,o=C,r=B,i=E;break}case"A":{let g=Math.abs(l[0]),C=Math.abs(l[1]),B=l[2],E=l[3],d=l[4],I=l[5],h=l[6];if(g===0||C===0)e.push({key:"C",data:[r,i,I,h,I,h]}),r=I,i=h;else if(r!==I||i!==h)TCe(r,i,I,h,g,C,B,E,d).forEach(function(p){e.push({key:"C",data:p})}),r=I,i=h;break}case"Z":e.push({key:"Z",data:[]}),r=u,i=a;break}t=s}return e}function OVt(A){return Math.PI*A/180}function o8(A,e,t){let r=A*Math.cos(t)-e*Math.sin(t),i=A*Math.sin(t)+e*Math.cos(t);return[r,i]}function TCe(A,e,t,r,i,u,a,n,o,s){let l=OVt(a),g=[],C=0,B=0,E=0,d=0;if(s)[C,B,E,d]=s;else{[A,e]=o8(A,e,-l),[t,r]=o8(t,r,-l);let x=(A-t)/2,k=(e-r)/2,T=x*x/(i*i)+k*k/(u*u);if(T>1)T=Math.sqrt(T),i=T*i,u=T*u;let R=n===o?-1:1,L=i*i,M=u*u,U=L*M-L*k*k-M*x*x,Y=L*k*k+M*x*x,H=R*Math.sqrt(Math.abs(U/Y));if(E=H*i*k/u+(A+t)/2,d=H*-u*x/i+(e+r)/2,C=Math.asin(parseFloat(((e-d)/u).toFixed(9))),B=Math.asin(parseFloat(((r-d)/u).toFixed(9))),A<E)C=Math.PI-C;if(t<E)B=Math.PI-B;if(C<0)C=Math.PI*2+C;if(B<0)B=Math.PI*2+B;if(o&&C>B)C=C-Math.PI*2;if(!o&&B>C)B=B-Math.PI*2}let I=B-C;if(Math.abs(I)>Math.PI*120/180){let x=B,k=t,T=r;if(o&&B>C)B=C+Math.PI*120/180*1;else B=C+Math.PI*120/180*-1;t=E+i*Math.cos(B),r=d+u*Math.sin(B),g=TCe(t,r,k,T,i,u,a,0,o,[B,x,E,d])}I=B-C;let h=Math.cos(C),Q=Math.sin(C),p=Math.cos(B),m=Math.sin(B),f=Math.tan(I/4),D=1.3333333333333333*i*f,w=1.3333333333333333*u*f,b=[A,e],F=[A+D*Q,e-w*h],v=[t+D*m,r-w*p],S=[t,r];if(F[0]=2*b[0]-F[0],F[1]=2*b[1]-F[1],s)return[F,v,S].concat(g);else{g=[F,v,S].concat(g);let x=[];for(let k=0;k<g.length;k+=3){let T=o8(g[k][0],g[k][1],l),R=o8(g[k+1][0],g[k+1][1],l),L=o8(g[k+2][0],g[k+2][1],l);x.push([T[0],T[1],R[0],R[1],L[0],L[1]])}return x}}var ddA=P(()=>{MCe()});function IdA(A,e,t,r,i){return{type:"path",ops:Lh(A,e,t,r,i)}}function l8(A,e,t){let r=(A||[]).length;if(r>2){let i=[];for(let u=0;u<r-1;u++)i.push(...Lh(A[u][0],A[u][1],A[u+1][0],A[u+1][1],t));if(e)i.push(...Lh(A[r-1][0],A[r-1][1],A[0][0],A[0][1],t));return{type:"path",ops:i}}else if(r===2)return IdA(A[0][0],A[0][1],A[1][0],A[1][1],t);return{type:"path",ops:[]}}function _Vt(A,e){return l8(A,!0,e)}function OCe(A,e,t,r,i){let u=[[A,e],[A+t,e],[A+t,e+r],[A,e+r]];return _Vt(u,i)}function hdA(A,e){let t=HCe(A,1*(1+e.roughness*0.2),e);if(!e.disableMultiStroke){let r=HCe(A,1.5*(1+e.roughness*0.22),VVt(e));t=t.concat(r)}return{type:"path",ops:t}}function WVt(A,e,t,r,i){let u=QdA(t,r,i);return VP(A,e,i,u).opset}function QdA(A,e,t){let r=Math.sqrt(Math.PI*2*Math.sqrt((Math.pow(A/2,2)+Math.pow(e/2,2))/2)),i=Math.ceil(Math.max(t.curveStepCount,t.curveStepCount/Math.sqrt(200)*r)),u=Math.PI*2/i,a=Math.abs(A/2),n=Math.abs(e/2),o=1-t.curveFitting;return a+=pr(a*o,t),n+=pr(n*o,t),{increment:u,rx:a,ry:n}}function VP(A,e,t,r){let[i,u]=KCe(r.increment,A,e,r.rx,r.ry,1,r.increment*zP(0.1,zP(0.4,1,t),t),t),a=ZP(i,null,t);if(!t.disableMultiStroke&&t.roughness!==0){let[n]=KCe(r.increment,A,e,r.rx,r.ry,1.5,0,t),o=ZP(n,null,t);a=a.concat(o)}return{estimatedPoints:u,opset:{type:"path",ops:a}}}function pdA(A,e,t,r,i,u,a,n,o){let s=A,l=e,g=Math.abs(t/2),C=Math.abs(r/2);g+=pr(g*0.01,o),C+=pr(C*0.01,o);let B=i,E=u;while(B<0)B+=Math.PI*2,E+=Math.PI*2;if(E-B>Math.PI*2)B=0,E=Math.PI*2;let d=Math.PI*2/o.curveStepCount,I=Math.min(d/2,(E-B)/2),h=JCe(I,s,l,g,C,B,E,1,o);if(!o.disableMultiStroke){let Q=JCe(I,s,l,g,C,B,E,1.5,o);h.push(...Q)}if(a)if(n)h.push(...Lh(s,l,s+g*Math.cos(B),l+C*Math.sin(B),o),...Lh(s,l,s+g*Math.cos(E),l+C*Math.sin(E),o));else h.push({op:"lineTo",data:[s,l]},{op:"lineTo",data:[s+g*Math.cos(B),l+C*Math.sin(B)]});return{type:"path",ops:h}}function fdA(A,e){let t=s8(n8(a9(A))),r=[],i=[0,0],u=[0,0];for(let{key:a,data:n}of t)switch(a){case"M":{u=[n[0],n[1]],i=[n[0],n[1]];break}case"L":r.push(...Lh(u[0],u[1],n[0],n[1],e)),u=[n[0],n[1]];break;case"C":{let[o,s,l,g,C,B]=n;r.push(...jVt(o,s,l,g,C,B,u,e)),u=[C,B];break}case"Z":r.push(...Lh(u[0],u[1],i[0],i[1],e)),u=[i[0],i[1]];break}return{type:"path",ops:r}}function jP(A,e){let t=[];for(let r of A)if(r.length){let i=e.maxRandomnessOffset||0,u=r.length;if(u>2){t.push({op:"move",data:[r[0][0]+pr(i,e),r[0][1]+pr(i,e)]});for(let a=1;a<u;a++)t.push({op:"lineTo",data:[r[a][0]+pr(i,e),r[a][1]+pr(i,e)]})}}return{type:"fillPath",ops:t}}function _m(A,e){return NCe(e,PVt).fillPolygons(A,e)}function PCe(A,e,t,r,i,u,a){let n=A,o=e,s=Math.abs(t/2),l=Math.abs(r/2);s+=pr(s*0.01,a),l+=pr(l*0.01,a);let g=i,C=u;while(g<0)g+=Math.PI*2,C+=Math.PI*2;if(C-g>Math.PI*2)g=0,C=Math.PI*2;let B=(C-g)/a.curveStepCount,E=[];for(let d=g;d<=C;d=d+B)E.push([n+s*Math.cos(d),o+l*Math.sin(d)]);return E.push([n+s*Math.cos(C),o+l*Math.sin(C)]),E.push([n,o]),_m([E],a)}function qVt(A,e){return pr(A,e)}function zVt(A,e,t){return zP(A,e,t)}function ZVt(A,e,t,r,i){return Lh(A,e,t,r,i,!0)}function VVt(A){let e=Object.assign({},A);if(e.randomizer=void 0,A.seed)e.seed=A.seed+1;return e}function _Ce(A){if(!A.randomizer)A.randomizer=new a8(A.seed||0);return A.randomizer.next()}function zP(A,e,t,r=1){return t.roughness*r*(_Ce(t)*(e-A)+A)}function pr(A,e,t=1){return zP(-A,A,e,t)}function Lh(A,e,t,r,i,u=!1){let a=u?i.disableMultiStrokeFill:i.disableMultiStroke,n=YCe(A,e,t,r,i,!0,!1);if(a)return n;let o=YCe(A,e,t,r,i,!0,!0);return n.concat(o)}function YCe(A,e,t,r,i,u,a){let n=Math.pow(A-t,2)+Math.pow(e-r,2),o=Math.sqrt(n),s=1;if(o<200)s=1;else if(o>500)s=0.4;else s=-0.0016668*o+1.233334;let l=i.maxRandomnessOffset||0;if(l*l*100>n)l=o/10;let g=l/2,C=0.2+_Ce(i)*0.2,B=i.bowing*i.maxRandomnessOffset*(r-e)/200,E=i.bowing*i.maxRandomnessOffset*(A-t)/200;B=pr(B,i,s),E=pr(E,i,s);let d=[],I=()=>pr(g,i,s),h=()=>pr(l,i,s),Q=i.preserveVertices;if(u)if(a)d.push({op:"move",data:[A+(Q?0:I()),e+(Q?0:I())]});else d.push({op:"move",data:[A+(Q?0:pr(l,i,s)),e+(Q?0:pr(l,i,s))]});if(a)d.push({op:"bcurveTo",data:[B+A+(t-A)*C+I(),E+e+(r-e)*C+I(),B+A+2*(t-A)*C+I(),E+e+2*(r-e)*C+I(),t+(Q?0:I()),r+(Q?0:I())]});else d.push({op:"bcurveTo",data:[B+A+(t-A)*C+h(),E+e+(r-e)*C+h(),B+A+2*(t-A)*C+h(),E+e+2*(r-e)*C+h(),t+(Q?0:h()),r+(Q?0:h())]});return d}function HCe(A,e,t){let r=[];r.push([A[0][0]+pr(e,t),A[0][1]+pr(e,t)]),r.push([A[0][0]+pr(e,t),A[0][1]+pr(e,t)]);for(let i=1;i<A.length;i++)if(r.push([A[i][0]+pr(e,t),A[i][1]+pr(e,t)]),i===A.length-1)r.push([A[i][0]+pr(e,t),A[i][1]+pr(e,t)]);return ZP(r,null,t)}function ZP(A,e,t){let r=A.length,i=[];if(r>3){let u=[],a=1-t.curveTightness;i.push({op:"move",data:[A[1][0],A[1][1]]});for(let n=1;n+2<r;n++){let o=A[n];u[0]=[o[0],o[1]],u[1]=[o[0]+(a*A[n+1][0]-a*A[n-1][0])/6,o[1]+(a*A[n+1][1]-a*A[n-1][1])/6],u[2]=[A[n+1][0]+(a*A[n][0]-a*A[n+2][0])/6,A[n+1][1]+(a*A[n][1]-a*A[n+2][1])/6],u[3]=[A[n+1][0],A[n+1][1]],i.push({op:"bcurveTo",data:[u[1][0],u[1][1],u[2][0],u[2][1],u[3][0],u[3][1]]})}if(e&&e.length===2){let n=t.maxRandomnessOffset;i.push({op:"lineTo",data:[e[0]+pr(n,t),e[1]+pr(n,t)]})}}else if(r===3)i.push({op:"move",data:[A[1][0],A[1][1]]}),i.push({op:"bcurveTo",data:[A[1][0],A[1][1],A[2][0],A[2][1],A[2][0],A[2][1]]});else if(r===2)i.push(...Lh(A[0][0],A[0][1],A[1][0],A[1][1],t));return i}function KCe(A,e,t,r,i,u,a,n){let o=n.roughness===0,s=[],l=[];if(o){A=A/4,l.push([e+r*Math.cos(-A),t+i*Math.sin(-A)]);for(let g=0;g<=Math.PI*2;g=g+A){let C=[e+r*Math.cos(g),t+i*Math.sin(g)];s.push(C),l.push(C)}l.push([e+r*Math.cos(0),t+i*Math.sin(0)]),l.push([e+r*Math.cos(A),t+i*Math.sin(A)])}else{let g=pr(0.5,n)-Math.PI/2;l.push([pr(u,n)+e+0.9*r*Math.cos(g-A),pr(u,n)+t+0.9*i*Math.sin(g-A)]);let C=Math.PI*2+g-0.01;for(let B=g;B<C;B=B+A){let E=[pr(u,n)+e+r*Math.cos(B),pr(u,n)+t+i*Math.sin(B)];s.push(E),l.push(E)}l.push([pr(u,n)+e+r*Math.cos(g+Math.PI*2+a*0.5),pr(u,n)+t+i*Math.sin(g+Math.PI*2+a*0.5)]),l.push([pr(u,n)+e+0.98*r*Math.cos(g+a),pr(u,n)+t+0.98*i*Math.sin(g+a)]),l.push([pr(u,n)+e+0.9*r*Math.cos(g+a*0.5),pr(u,n)+t+0.9*i*Math.sin(g+a*0.5)])}return[l,s]}function JCe(A,e,t,r,i,u,a,n,o){let s=u+pr(0.1,o),l=[];l.push([pr(n,o)+e+0.9*r*Math.cos(s-A),pr(n,o)+t+0.9*i*Math.sin(s-A)]);for(let g=s;g<=a;g=g+A)l.push([pr(n,o)+e+r*Math.cos(g),pr(n,o)+t+i*Math.sin(g)]);return l.push([e+r*Math.cos(a),t+i*Math.sin(a)]),l.push([e+r*Math.cos(a),t+i*Math.sin(a)]),ZP(l,null,o)}function jVt(A,e,t,r,i,u,a,n){let o=[],s=[n.maxRandomnessOffset||1,(n.maxRandomnessOffset||1)+0.3],l=[0,0],g=n.disableMultiStroke?1:2,C=n.preserveVertices;for(let B=0;B<g;B++){if(B===0)o.push({op:"move",data:[a[0],a[1]]});else o.push({op:"move",data:[a[0]+(C?0:pr(s[0],n)),a[1]+(C?0:pr(s[0],n))]});l=C?[i,u]:[i+pr(s[B],n),u+pr(s[B],n)],o.push({op:"bcurveTo",data:[A+pr(s[B],n),e+pr(s[B],n),t+pr(s[B],n),r+pr(s[B],n),l[0],l[1]]})}return o}var PVt;var WCe=P(()=>{GCe();ddA();PVt={randOffset:qVt,randOffsetWithRange:zVt,ellipse:WVt,doubleLineOps:ZVt}});function g8(A){return[...A]}function qCe(A,e=0){let t=A.length;if(t<3)throw Error("A curve must have at least three points.");let r=[];if(t===3)r.push(g8(A[0]),g8(A[1]),g8(A[2]),g8(A[2]));else{let i=[];i.push(A[0],A[0]);for(let n=1;n<A.length;n++)if(i.push(A[n]),n===A.length-1)i.push(A[n]);let u=[],a=1-e;r.push(g8(i[0]));for(let n=1;n+2<i.length;n++){let o=i[n];u[0]=[o[0],o[1]],u[1]=[o[0]+(a*i[n+1][0]-a*i[n-1][0])/6,o[1]+(a*i[n+1][1]-a*i[n-1][1])/6],u[2]=[i[n+1][0]+(a*i[n][0]-a*i[n+2][0])/6,i[n+1][1]+(a*i[n][1]-a*i[n+2][1])/6],u[3]=[i[n+1][0],i[n+1][1]],r.push(u[1],u[2],u[3])}}return r}function XVt(A,e){return Math.sqrt(XP(A,e))}function XP(A,e){return Math.pow(A[0]-e[0],2)+Math.pow(A[1]-e[1],2)}function $Vt(A,e,t){let r=XP(e,t);if(r===0)return XP(A,e);let i=((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r;return i=Math.max(0,Math.min(1,i)),XP(A,Wm(e,t,i))}function Wm(A,e,t){return[A[0]+(e[0]-A[0])*t,A[1]+(e[1]-A[1])*t]}function Ajt(A,e){let t=A[e+0],r=A[e+1],i=A[e+2],u=A[e+3],a=3*r[0]-2*t[0]-u[0];a*=a;let n=3*r[1]-2*t[1]-u[1];n*=n;let o=3*i[0]-2*u[0]-t[0];o*=o;let s=3*i[1]-2*u[1]-t[1];if(s*=s,a<o)a=o;if(n<s)n=s;return a+n}function mdA(A,e,t,r){let i=r||[];if(Ajt(A,e)<t){let u=A[e+0];if(i.length){if(XVt(i[i.length-1],u)>1)i.push(u)}else i.push(u);i.push(A[e+3])}else{let a=A[e+0],n=A[e+1],o=A[e+2],s=A[e+3],l=Wm(a,n,0.5),g=Wm(n,o,0.5),C=Wm(o,s,0.5),B=Wm(l,g,0.5),E=Wm(g,C,0.5),d=Wm(B,E,0.5);mdA([a,l,B,d],0,t,i),mdA([d,E,C,s],0,t,i)}return i}function DdA(A,e,t,r,i){let u=i||[],a=A[e],n=A[t-1],o=0,s=1;for(let l=e+1;l<t-1;++l){let g=$Vt(A[l],a,n);if(g>o)o=g,s=l}if(Math.sqrt(o)>r)DdA(A,e,s+1,r,u),DdA(A,s,t,r,u);else{if(!u.length)u.push(a);u.push(n)}return u}function zCe(A,e=0.15,t){let r=[],i=(A.length-1)/3;for(let u=0;u<i;u++){let a=u*3;mdA(A,a,e,r)}if(t&&t>0)return DdA(r,0,r.length,t);return r}function ejt(A,e){return Math.sqrt($P(A,e))}function $P(A,e){return Math.pow(A[0]-e[0],2)+Math.pow(A[1]-e[1],2)}function tjt(A,e,t){let r=$P(e,t);if(r===0)return $P(A,e);let i=((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r;return i=Math.max(0,Math.min(1,i)),$P(A,qm(e,t,i))}function qm(A,e,t){return[A[0]+(e[0]-A[0])*t,A[1]+(e[1]-A[1])*t]}function rjt(A,e){let t=A[e+0],r=A[e+1],i=A[e+2],u=A[e+3],a=3*r[0]-2*t[0]-u[0];a*=a;let n=3*r[1]-2*t[1]-u[1];n*=n;let o=3*i[0]-2*u[0]-t[0];o*=o;let s=3*i[1]-2*u[1]-t[1];if(s*=s,a<o)a=o;if(n<s)n=s;return a+n}function ydA(A,e,t,r){let i=r||[];if(rjt(A,e)<t){let u=A[e+0];if(i.length){if(ejt(i[i.length-1],u)>1)i.push(u)}else i.push(u);i.push(A[e+3])}else{let a=A[e+0],n=A[e+1],o=A[e+2],s=A[e+3],l=qm(a,n,0.5),g=qm(n,o,0.5),C=qm(o,s,0.5),B=qm(l,g,0.5),E=qm(g,C,0.5),d=qm(B,E,0.5);ydA([a,l,B,d],0,t,i),ydA([d,E,C,s],0,t,i)}return i}function ZCe(A,e){return A_(A,0,A.length,e)}function A_(A,e,t,r,i){let u=i||[],a=A[e],n=A[t-1],o=0,s=1;for(let l=e+1;l<t-1;++l){let g=tjt(A[l],a,n);if(g>o)o=g,s=l}if(Math.sqrt(o)>r)A_(A,e,s+1,r,u),A_(A,s,t,r,u);else{if(!u.length)u.push(a);u.push(n)}return u}function VCe(A,e=0.15,t){let r=[],i=(A.length-1)/3;for(let u=0;u<i;u++){let a=u*3;ydA(A,a,e,r)}if(t&&t>0)return A_(r,0,r.length,t);return r}function jCe(A,e,t){let r=a9(A),i=s8(n8(r)),u=[],a=[],n=[0,0],o=[],s=()=>{if(o.length>=4)a.push(...VCe(o,e));o=[]},l=()=>{if(s(),a.length)u.push(a),a=[]};for(let{key:C,data:B}of i)switch(C){case"M":l(),n=[B[0],B[1]],a.push(n);break;case"L":s(),a.push([B[0],B[1]]);break;case"C":if(!o.length){let E=a.length?a[a.length-1]:n;o.push([E[0],E[1]])}o.push([B[0],B[1]]),o.push([B[2],B[3]]),o.push([B[4],B[5]]);break;case"Z":s(),a.push([n[0],n[1]]);break}if(l(),!t)return u;let g=[];for(let C of u){let B=ZCe(C,t);if(B.length)g.push(B)}return g}var XCe=P(()=>{ddA()});class Id{constructor(A){if(this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:0.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:0.8},this.config=A||{},this.config.options)this.defaultOptions=this._o(this.config.options)}static newSeed(){return UCe()}_o(A){return A?Object.assign({},this.defaultOptions,A):this.defaultOptions}_d(A,e,t){return{shape:A,sets:e||[],options:t||this.defaultOptions}}line(A,e,t,r,i){let u=this._o(i);return this._d("line",[IdA(A,e,t,r,u)],u)}rectangle(A,e,t,r,i){let u=this._o(i),a=[],n=OCe(A,e,t,r,u);if(u.fill){let o=[[A,e],[A+t,e],[A+t,e+r],[A,e+r]];if(u.fillStyle==="solid")a.push(jP([o],u));else a.push(_m([o],u))}if(u.stroke!==vg)a.push(n);return this._d("rectangle",a,u)}ellipse(A,e,t,r,i){let u=this._o(i),a=[],n=QdA(t,r,u),o=VP(A,e,u,n);if(u.fill)if(u.fillStyle==="solid"){let s=VP(A,e,u,n).opset;s.type="fillPath",a.push(s)}else a.push(_m([o.estimatedPoints],u));if(u.stroke!==vg)a.push(o.opset);return this._d("ellipse",a,u)}circle(A,e,t,r){let i=this.ellipse(A,e,t,t,r);return i.shape="circle",i}linearPath(A,e){let t=this._o(e);return this._d("linearPath",[l8(A,!1,t)],t)}arc(A,e,t,r,i,u,a=!1,n){let o=this._o(n),s=[],l=pdA(A,e,t,r,i,u,a,!0,o);if(a&&o.fill)if(o.fillStyle==="solid"){let g=Object.assign({},o);g.disableMultiStroke=!0;let C=pdA(A,e,t,r,i,u,!0,!1,g);C.type="fillPath",s.push(C)}else s.push(PCe(A,e,t,r,i,u,o));if(o.stroke!==vg)s.push(l);return this._d("arc",s,o)}curve(A,e){let t=this._o(e),r=[],i=hdA(A,t);if(t.fill&&t.fill!==vg&&A.length>=3)if(t.fillStyle==="solid"){let u=hdA(A,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));r.push({type:"fillPath",ops:this._mergedShape(u.ops)})}else{let u=qCe(A),a=zCe(u,10,(1+t.roughness)/2);r.push(_m([a],t))}if(t.stroke!==vg)r.push(i);return this._d("curve",r,t)}polygon(A,e){let t=this._o(e),r=[],i=l8(A,!0,t);if(t.fill)if(t.fillStyle==="solid")r.push(jP([A],t));else r.push(_m([A],t));if(t.stroke!==vg)r.push(i);return this._d("polygon",r,t)}path(A,e){let t=this._o(e),r=[];if(!A)return this._d("path",r,t);A=(A||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let i=t.fill&&t.fill!=="transparent"&&t.fill!==vg,u=t.stroke!==vg,a=!!(t.simplification&&t.simplification<1),n=a?4-4*(t.simplification||1):(1+t.roughness)/2,o=jCe(A,1,n),s=fdA(A,t);if(i)if(t.fillStyle==="solid")if(o.length===1){let l=fdA(A,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));r.push({type:"fillPath",ops:this._mergedShape(l.ops)})}else r.push(jP(o,t));else r.push(_m(o,t));if(u)if(a)o.forEach((l)=>{r.push(l8(l,!1,t))});else r.push(s);return this._d("path",r,t)}opsToPath(A,e){let t="";for(let r of A.ops){let i=typeof e==="number"&&e>=0?r.data.map((u)=>+u.toFixed(e)):r.data;switch(r.op){case"move":t+=`M${i[0]} ${i[1]} `;break;case"bcurveTo":t+=`C${i[0]} ${i[1]}, ${i[2]} ${i[3]}, ${i[4]} ${i[5]} `;break;case"lineTo":t+=`L${i[0]} ${i[1]} `;break}}return t.trim()}toPaths(A){let e=A.sets||[],t=A.options||this.defaultOptions,r=[];for(let i of e){let u=null;switch(i.type){case"path":u={d:this.opsToPath(i),stroke:t.stroke,strokeWidth:t.strokeWidth,fill:vg};break;case"fillPath":u={d:this.opsToPath(i),stroke:vg,strokeWidth:0,fill:t.fill||vg};break;case"fillSketch":u=this.fillSketch(i,t);break}if(u)r.push(u)}return r}fillSketch(A,e){let t=e.fillWeight;if(t<0)t=e.strokeWidth/2;return{d:this.opsToPath(A),stroke:e.fill||vg,strokeWidth:t,fill:vg}}_mergedShape(A){return A.filter((e,t)=>{if(t===0)return!0;if(e.op==="move")return!1;return!0})}}var vg="none";var c8=P(()=>{WCe();XCe()});class wdA{constructor(A,e){this.canvas=A,this.ctx=this.canvas.getContext("2d"),this.gen=new Id(e)}draw(A){let e=A.sets||[],t=A.options||this.getDefaultOptions(),r=this.ctx,i=A.options.fixedDecimalPlaceDigits;for(let u of e)switch(u.type){case"path":if(r.save(),r.strokeStyle=t.stroke==="none"?"transparent":t.stroke,r.lineWidth=t.strokeWidth,t.strokeLineDash)r.setLineDash(t.strokeLineDash);if(t.strokeLineDashOffset)r.lineDashOffset=t.strokeLineDashOffset;this._drawToContext(r,u,i),r.restore();break;case"fillPath":{r.save(),r.fillStyle=t.fill||"";let a=A.shape==="curve"||A.shape==="polygon"||A.shape==="path"?"evenodd":"nonzero";this._drawToContext(r,u,i,a),r.restore();break}case"fillSketch":this.fillSketch(r,u,t);break}}fillSketch(A,e,t){let r=t.fillWeight;if(r<0)r=t.strokeWidth/2;if(A.save(),t.fillLineDash)A.setLineDash(t.fillLineDash);if(t.fillLineDashOffset)A.lineDashOffset=t.fillLineDashOffset;A.strokeStyle=t.fill||"",A.lineWidth=r,this._drawToContext(A,e,t.fixedDecimalPlaceDigits),A.restore()}_drawToContext(A,e,t,r="nonzero"){A.beginPath();for(let i of e.ops){let u=typeof t==="number"&&t>=0?i.data.map((a)=>+a.toFixed(t)):i.data;switch(i.op){case"move":A.moveTo(u[0],u[1]);break;case"bcurveTo":A.bezierCurveTo(u[0],u[1],u[2],u[3],u[4],u[5]);break;case"lineTo":A.lineTo(u[0],u[1]);break}}if(e.type==="fillPath")A.fill(r);else A.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(A,e,t,r,i){let u=this.gen.line(A,e,t,r,i);return this.draw(u),u}rectangle(A,e,t,r,i){let u=this.gen.rectangle(A,e,t,r,i);return this.draw(u),u}ellipse(A,e,t,r,i){let u=this.gen.ellipse(A,e,t,r,i);return this.draw(u),u}circle(A,e,t,r){let i=this.gen.circle(A,e,t,r);return this.draw(i),i}linearPath(A,e){let t=this.gen.linearPath(A,e);return this.draw(t),t}polygon(A,e){let t=this.gen.polygon(A,e);return this.draw(t),t}arc(A,e,t,r,i,u,a=!1,n){let o=this.gen.arc(A,e,t,r,i,u,a,n);return this.draw(o),o}curve(A,e){let t=this.gen.curve(A,e);return this.draw(t),t}path(A,e){let t=this.gen.path(A,e);return this.draw(t),t}}var $Ce=P(()=>{c8()});var C8="http://www.w3.org/2000/svg";class bdA{constructor(A,e){this.svg=A,this.gen=new Id(e)}draw(A){let e=A.sets||[],t=A.options||this.getDefaultOptions(),r=this.svg.ownerDocument||window.document,i=r.createElementNS(C8,"g"),u=A.options.fixedDecimalPlaceDigits;for(let a of e){let n=null;switch(a.type){case"path":{if(n=r.createElementNS(C8,"path"),n.setAttribute("d",this.opsToPath(a,u)),n.setAttribute("stroke",t.stroke),n.setAttribute("stroke-width",t.strokeWidth+""),n.setAttribute("fill","none"),t.strokeLineDash)n.setAttribute("stroke-dasharray",t.strokeLineDash.join(" ").trim());if(t.strokeLineDashOffset)n.setAttribute("stroke-dashoffset",`${t.strokeLineDashOffset}`);break}case"fillPath":{if(n=r.createElementNS(C8,"path"),n.setAttribute("d",this.opsToPath(a,u)),n.setAttribute("stroke","none"),n.setAttribute("stroke-width","0"),n.setAttribute("fill",t.fill||""),A.shape==="curve"||A.shape==="polygon")n.setAttribute("fill-rule","evenodd");break}case"fillSketch":{n=this.fillSketch(r,a,t);break}}if(n)i.appendChild(n)}return i}fillSketch(A,e,t){let r=t.fillWeight;if(r<0)r=t.strokeWidth/2;let i=A.createElementNS(C8,"path");if(i.setAttribute("d",this.opsToPath(e,t.fixedDecimalPlaceDigits)),i.setAttribute("stroke",t.fill||""),i.setAttribute("stroke-width",r+""),i.setAttribute("fill","none"),t.fillLineDash)i.setAttribute("stroke-dasharray",t.fillLineDash.join(" ").trim());if(t.fillLineDashOffset)i.setAttribute("stroke-dashoffset",`${t.fillLineDashOffset}`);return i}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(A,e){return this.gen.opsToPath(A,e)}line(A,e,t,r,i){let u=this.gen.line(A,e,t,r,i);return this.draw(u)}rectangle(A,e,t,r,i){let u=this.gen.rectangle(A,e,t,r,i);return this.draw(u)}ellipse(A,e,t,r,i){let u=this.gen.ellipse(A,e,t,r,i);return this.draw(u)}circle(A,e,t,r){let i=this.gen.circle(A,e,t,r);return this.draw(i)}linearPath(A,e){let t=this.gen.linearPath(A,e);return this.draw(t)}polygon(A,e){let t=this.gen.polygon(A,e);return this.draw(t)}arc(A,e,t,r,i,u,a=!1,n){let o=this.gen.arc(A,e,t,r,i,u,a,n);return this.draw(o)}curve(A,e){let t=this.gen.curve(A,e);return this.draw(t)}path(A,e){let t=this.gen.path(A,e);return this.draw(t)}}var ABe=P(()=>{c8()});var xc;var B8=P(()=>{$Ce();c8();ABe();xc={canvas(A,e){return new wdA(A,e)},svg(A,e){return new bdA(A,e)},generator(A){return new Id(A)},newSeed(){return Id.newSeed()}}});function eBe(A,e,t,r=(i)=>i){return A*r(0.5-e*(0.5-t))}function ijt(A){return[-A[0],-A[1]]}function eB(A,e){return[A[0]+e[0],A[1]+e[1]]}function Sc(A,e){return[A[0]-e[0],A[1]-e[1]]}function AB(A,e){return[A[0]*e,A[1]*e]}function ujt(A,e){return[A[0]/e,A[1]/e]}function E8(A){return[A[1],-A[0]]}function tBe(A,e){return A[0]*e[0]+A[1]*e[1]}function ajt(A,e){return A[0]===e[0]&&A[1]===e[1]}function njt(A){return Math.hypot(A[0],A[1])}function ojt(A){return A[0]*A[0]+A[1]*A[1]}function rBe(A,e){return ojt(Sc(A,e))}function aBe(A){return ujt(A,njt(A))}function sjt(A,e){return Math.hypot(A[1]-e[1],A[0]-e[0])}function d8(A,e,t){let r=Math.sin(t),i=Math.cos(t),u=A[0]-e[0],a=A[1]-e[1],n=u*i-a*r,o=u*r+a*i;return[n+e[0],o+e[1]]}function vdA(A,e,t){return eB(A,AB(Sc(e,A),t))}function iBe(A,e,t){return eB(A,AB(e,t))}function gjt(A,e={}){let{size:t=16,smoothing:r=0.5,thinning:i=0.5,simulatePressure:u=!0,easing:a=(M)=>M,start:n={},end:o={},last:s=!1}=e,{cap:l=!0,easing:g=(M)=>M*(2-M)}=n,{cap:C=!0,easing:B=(M)=>--M*M*M+1}=o;if(A.length===0||t<=0)return[];let E=A[A.length-1].runningLength,d=n.taper===!1?0:n.taper===!0?Math.max(t,E):n.taper,I=o.taper===!1?0:o.taper===!0?Math.max(t,E):o.taper,h=Math.pow(t*r,2),Q=[],p=[],m=A.slice(0,10).reduce((M,U)=>{let Y=U.pressure;if(u){let H=n9(1,U.distance/t),J=n9(1,1-H);Y=n9(1,M+(J-M)*(H*uBe))}return(M+Y)/2},A[0].pressure),f=eBe(t,i,A[A.length-1].pressure,a),D,w=A[0].vector,b=A[0].point,F=b,v=b,S=F,x=!1;for(let M=0;M<A.length;M++){let{pressure:U}=A[M],{point:Y,vector:H,distance:J,runningLength:K}=A[M];if(M<A.length-1&&E-K<3)continue;if(i){if(u){let lA=n9(1,J/t),gA=n9(1,1-lA);U=n9(1,m+(gA-m)*(lA*uBe))}f=eBe(t,i,U,a)}else f=t/2;D===void 0&&(D=f);let O=K<d?g(K/d):1,_=E-K<I?B((E-K)/I):1;f=Math.max(0.01,f*Math.min(O,_));let z=(M<A.length-1?A[M+1]:A[M]).vector,j=M<A.length-1?tBe(H,z):1,q=tBe(H,w)<0&&!x,CA=j!==null&&j<0;if(q||CA){let lA=AB(E8(w),f);for(let gA=0.07692307692307693,aA=0;aA<=1;aA+=gA)v=d8(Sc(Y,lA),Y,I8*aA),Q.push(v),S=d8(eB(Y,lA),Y,I8*-aA),p.push(S);b=v,F=S,CA&&(x=!0);continue}if(x=!1,M===A.length-1){let lA=AB(E8(H),f);Q.push(Sc(Y,lA)),p.push(eB(Y,lA));continue}let tA=AB(E8(vdA(z,H,j)),f);v=Sc(Y,tA),(M<=1||rBe(b,v)>h)&&(Q.push(v),b=v),S=eB(Y,tA),(M<=1||rBe(F,S)>h)&&(p.push(S),F=S),m=U,w=H}let k=A[0].point.slice(0,2),T=A.length>1?A[A.length-1].point.slice(0,2):eB(A[0].point,[1,1]),R=[],L=[];if(A.length===1){if(!(d||I)||s){let M=iBe(k,aBe(E8(Sc(k,T))),-(D||f)),U=[];for(let Y=0.07692307692307693,H=Y;H<=1;H+=Y)U.push(d8(M,k,I8*2*H));return U}}else{if(!(d||I&&A.length===1))if(l)for(let U=0.07692307692307693,Y=U;Y<=1;Y+=U){let H=d8(p[0],k,I8*Y);R.push(H)}else{let U=Sc(Q[0],p[0]),Y=AB(U,0.5),H=AB(U,0.51);R.push(Sc(k,Y),Sc(k,H),eB(k,H),eB(k,Y))}let M=E8(ijt(A[A.length-1].vector));if(I||d&&A.length===1)L.push(T);else if(C){let U=iBe(T,M,f);for(let Y=0.034482758620689655,H=Y;H<1;H+=Y)L.push(d8(U,T,I8*3*H))}else L.push(eB(T,AB(M,f)),eB(T,AB(M,f*0.99)),Sc(T,AB(M,f*0.99)),Sc(T,AB(M,f)))}return Q.concat(L,p.reverse(),R)}function cjt(A,e={}){var t;let{streamline:r=0.5,size:i=16,last:u=!1}=e;if(A.length===0)return[];let a=0.15+(1-r)*0.85,n=Array.isArray(A[0])?A:A.map(({x:B,y:E,pressure:d=0.5})=>[B,E,d]);if(n.length===2){let B=n[1];n=n.slice(0,-1);for(let E=1;E<5;E++)n.push(vdA(n[0],B,E/4))}n.length===1&&(n=[...n,[...eB(n[0],[1,1]),...n[0].slice(2)]]);let o=[{point:[n[0][0],n[0][1]],pressure:n[0][2]>=0?n[0][2]:0.25,vector:[1,1],distance:0,runningLength:0}],s=!1,l=0,g=o[0],C=n.length-1;for(let B=1;B<n.length;B++){let E=u&&B===C?n[B].slice(0,2):vdA(g.point,n[B],a);if(ajt(g.point,E))continue;let d=sjt(E,g.point);if(l+=d,B<C&&!s){if(l<i)continue;s=!0}g={point:E,pressure:n[B][2]>=0?n[B][2]:0.5,vector:aBe(Sc(g.point,E)),distance:d,runningLength:l},o.push(g)}return o[0].vector=((t=o[1])==null?void 0:t.vector)||[0,0],o}function nBe(A,e={}){return gjt(cjt(A,e),e)}var n9,ljt,uBe=0.275,I8;var oBe=P(()=>{({min:n9,PI:ljt}=Math),I8=ljt+0.0001});var vt={};PZ(vt,{Children:()=>di,Component:()=>RdA,Fragment:()=>Co,Profiler:()=>pBe,PureComponent:()=>fBe,StrictMode:()=>mBe,Suspense:()=>DBe,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:()=>s9,act:()=>yBe,cloneElement:()=>Jn,createContext:()=>yi,createElement:()=>Rt,createFactory:()=>wBe,createRef:()=>NdA,forwardRef:()=>Dt,isValidElement:()=>Da,lazy:()=>bBe,memo:()=>gi,startTransition:()=>vBe,unstable_act:()=>kBe,useCallback:()=>lt,useContext:()=>Si,useDebugValue:()=>N1,useDeferredValue:()=>i_,useEffect:()=>le,useId:()=>FBe,useImperativeHandle:()=>zm,useInsertionEffect:()=>xBe,useLayoutEffect:()=>Ii,useMemo:()=>Ut,useReducer:()=>G1,useRef:()=>Ee,useState:()=>we,useSyncExternalStore:()=>Q8,useTransition:()=>GdA,version:()=>u_},{Children:(LDi)=>di=LDi,Component:(LDi)=>RdA=LDi,Fragment:(LDi)=>Co=LDi,Profiler:(LDi)=>pBe=LDi,PureComponent:(LDi)=>fBe=LDi,StrictMode:(LDi)=>mBe=LDi,Suspense:(LDi)=>DBe=LDi,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:(LDi)=>s9=LDi,act:(LDi)=>yBe=LDi,cloneElement:(LDi)=>Jn=LDi,createContext:(LDi)=>yi=LDi,createElement:(LDi)=>Rt=LDi,createFactory:(LDi)=>wBe=LDi,createRef:(LDi)=>NdA=LDi,forwardRef:(LDi)=>Dt=LDi,isValidElement:(LDi)=>Da=LDi,lazy:(LDi)=>bBe=LDi,memo:(LDi)=>gi=LDi,startTransition:(LDi)=>vBe=LDi,unstable_act:(LDi)=>kBe=LDi,useCallback:(LDi)=>lt=LDi,useContext:(LDi)=>Si=LDi,useDebugValue:(LDi)=>N1=LDi,useDeferredValue:(LDi)=>i_=LDi,useEffect:(LDi)=>le=LDi,useId:(LDi)=>FBe=LDi,useImperativeHandle:(LDi)=>zm=LDi,useInsertionEffect:(LDi)=>xBe=LDi,useLayoutEffect:(LDi)=>Ii=LDi,useMemo:(LDi)=>Ut=LDi,useReducer:(LDi)=>G1=LDi,useRef:(LDi)=>Ee=LDi,useState:(LDi)=>we=LDi,useSyncExternalStore:(LDi)=>Q8=LDi,useTransition:(LDi)=>GdA=LDi,version:(LDi)=>u_=LDi});function Djt(A){if(A===null||typeof A!=="object")return null;return A=sBe&&A[sBe]||A["@@iterator"],typeof A==="function"?A:null}function o9(A,e,t){this.props=A,this.context=e,this.refs=BBe,this.updater=t||cBe}function EBe(){}function FdA(A,e,t){this.props=A,this.context=e,this.refs=BBe,this.updater=t||cBe}function hBe(A,e,t){var r,i={},u=null,a=null;if(e!=null)for(r in e.ref!==void 0&&(a=e.ref),e.key!==void 0&&(u=""+e.key),e)dBe.call(e,r)&&!IBe.hasOwnProperty(r)&&(i[r]=e[r]);var n=arguments.length-2;if(n===1)i.children=t;else if(1<n){for(var o=Array(n),s=0;s<n;s++)o[s]=arguments[s+2];i.children=o}if(A&&A.defaultProps)for(r in n=A.defaultProps,n)i[r]===void 0&&(i[r]=n[r]);return{$$typeof:h8,type:A,key:u,ref:a,props:i,_owner:SdA.current}}function yjt(A,e){return{$$typeof:h8,type:A.type,key:e,ref:A.ref,props:A.props,_owner:A._owner}}function LdA(A){return typeof A==="object"&&A!==null&&A.$$typeof===h8}function wjt(A){var e={"=":"=0",":":"=2"};return"$"+A.replace(/[=:]/g,function(t){return e[t]})}function kdA(A,e){return typeof A==="object"&&A!==null&&A.key!=null?wjt(""+A.key):e.toString(36)}function t_(A,e,t,r,i){var u=typeof A;if(u==="undefined"||u==="boolean")A=null;var a=!1;if(A===null)a=!0;else switch(u){case"string":case"number":a=!0;break;case"object":switch(A.$$typeof){case h8:case Cjt:a=!0}}if(a)return a=A,i=i(a),A=r===""?"."+kdA(a,0):r,lBe(i)?(t="",A!=null&&(t=A.replace(gBe,"$&/")+"/"),t_(i,e,t,"",function(s){return s})):i!=null&&(LdA(i)&&(i=yjt(i,t+(!i.key||a&&a.key===i.key?"":(""+i.key).replace(gBe,"$&/")+"/")+A)),e.push(i)),1;if(a=0,r=r===""?".":r+":",lBe(A))for(var n=0;n<A.length;n++){u=A[n];var o=r+kdA(u,n);a+=t_(u,e,t,o,i)}else if(o=Djt(A),typeof o==="function")for(A=o.call(A),n=0;!(u=A.next()).done;)u=u.value,o=r+kdA(u,n++),a+=t_(u,e,t,o,i);else if(u==="object")throw e=String(A),Error("Objects are not valid as a React child (found: "+(e==="[object Object]"?"object with keys {"+Object.keys(A).join(", ")+"}":e)+"). If you meant to render a collection of children, use an array instead.");return a}function e_(A,e,t){if(A==null)return A;var r=[],i=0;return t_(A,r,"","",function(u){return e.call(t,u,i++)}),r}function bjt(A){if(A._status===-1){var e=A._result;e=e(),e.then(function(t){if(A._status===0||A._status===-1)A._status=1,A._result=t},function(t){if(A._status===0||A._status===-1)A._status=2,A._result=t}),A._status===-1&&(A._status=0,A._result=e)}if(A._status===1)return A._result.default;throw A._result}function QBe(){throw Error("act(...) is not supported in production builds of React.")}var h8,Cjt,Bjt,Ejt,djt,Ijt,hjt,Qjt,pjt,fjt,mjt,sBe,cBe,CBe,BBe,xdA,lBe,dBe,SdA,IBe,gBe,Ts,r_,vjt,di,RdA,Co,pBe,fBe,mBe,DBe,s9,yBe,Jn=function(A,e,t){if(A===null||A===void 0)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+A+".");var r=CBe({},A.props),{key:i,ref:u,_owner:a}=A;if(e!=null){if(e.ref!==void 0&&(u=e.ref,a=SdA.current),e.key!==void 0&&(i=""+e.key),A.type&&A.type.defaultProps)var n=A.type.defaultProps;for(o in e)dBe.call(e,o)&&!IBe.hasOwnProperty(o)&&(r[o]=e[o]===void 0&&n!==void 0?n[o]:e[o])}var o=arguments.length-2;if(o===1)r.children=t;else if(1<o){n=Array(o);for(var s=0;s<o;s++)n[s]=arguments[s+2];r.children=n}return{$$typeof:h8,type:A.type,key:i,ref:u,props:r,_owner:a}},yi=function(A){return A={$$typeof:hjt,_currentValue:A,_currentValue2:A,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},A.Provider={$$typeof:Ijt,_context:A},A.Consumer=A},Rt,wBe=function(A){var e=hBe.bind(null,A);return e.type=A,e},NdA=function(){return{current:null}},Dt=function(A){return{$$typeof:Qjt,render:A}},Da,bBe=function(A){return{$$typeof:mjt,_payload:{_status:-1,_result:A},_init:bjt}},gi=function(A,e){return{$$typeof:fjt,type:A,compare:e===void 0?null:e}},vBe=function(A){var e=r_.transition;r_.transition={};try{A()}finally{r_.transition=e}},kBe,lt=function(A,e){return Ts.current.useCallback(A,e)},Si=function(A){return Ts.current.useContext(A)},N1=function(){},i_=function(A){return Ts.current.useDeferredValue(A)},le=function(A,e){return Ts.current.useEffect(A,e)},FBe=function(){return Ts.current.useId()},zm=function(A,e,t){return Ts.current.useImperativeHandle(A,e,t)},xBe=function(A,e){return Ts.current.useInsertionEffect(A,e)},Ii=function(A,e){return Ts.current.useLayoutEffect(A,e)},Ut=function(A,e){return Ts.current.useMemo(A,e)},G1=function(A,e,t){return Ts.current.useReducer(A,e,t)},Ee=function(A){return Ts.current.useRef(A)},we=function(A){return Ts.current.useState(A)},Q8=function(A,e,t){return Ts.current.useSyncExternalStore(A,e,t)},GdA=function(){return Ts.current.useTransition()},u_="18.3.1";var fe=P(()=>{h8=Symbol.for("react.element"),Cjt=Symbol.for("react.portal"),Bjt=Symbol.for("react.fragment"),Ejt=Symbol.for("react.strict_mode"),djt=Symbol.for("react.profiler"),Ijt=Symbol.for("react.provider"),hjt=Symbol.for("react.context"),Qjt=Symbol.for("react.forward_ref"),pjt=Symbol.for("react.suspense"),fjt=Symbol.for("react.memo"),mjt=Symbol.for("react.lazy"),sBe=Symbol.iterator;cBe={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},CBe=Object.assign,BBe={};o9.prototype.isReactComponent={};o9.prototype.setState=function(A,e){if(typeof A!=="object"&&typeof A!=="function"&&A!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,A,e,"setState")};o9.prototype.forceUpdate=function(A){this.updater.enqueueForceUpdate(this,A,"forceUpdate")};EBe.prototype=o9.prototype;xdA=FdA.prototype=new EBe;xdA.constructor=FdA;CBe(xdA,o9.prototype);xdA.isPureReactComponent=!0;lBe=Array.isArray,dBe=Object.prototype.hasOwnProperty,SdA={current:null},IBe={key:!0,ref:!0,__self:!0,__source:!0};gBe=/\/+/g;Ts={current:null},r_={transition:null},vjt={ReactCurrentDispatcher:Ts,ReactCurrentBatchConfig:r_,ReactCurrentOwner:SdA};di={map:e_,forEach:function(A,e,t){e_(A,function(){e.apply(this,arguments)},t)},count:function(A){var e=0;return e_(A,function(){e++}),e},toArray:function(A){return e_(A,function(e){return e})||[]},only:function(A){if(!LdA(A))throw Error("React.Children.only expected to receive a single React element child.");return A}},RdA=o9,Co=Bjt,pBe=djt,fBe=FdA,mBe=Ejt,DBe=pjt,s9=vjt,yBe=QBe,Rt=hBe,Da=LdA,kBe=QBe});function SBe(A){var e,t,r="";if(typeof A==="string"||typeof A==="number")r+=A;else if(typeof A==="object"){if(Array.isArray(A)){for(e=0;e<A.length;e++)if(A[e]){if(t=SBe(A[e]))r&&(r+=" "),r+=t}}else for(e in A)if(A[e])r&&(r+=" "),r+=e}return r}function Re(){var A=0,e,t,r="";while(A<arguments.length)if(e=arguments[A++]){if(t=SBe(e))r&&(r+=" "),r+=t}return r}function LBe(A,e,t){var r,i={},u=null,a=null;t!==void 0&&(u=""+t),e.key!==void 0&&(u=""+e.key),e.ref!==void 0&&(a=e.ref);for(r in e)xjt.call(e,r)&&!Ljt.hasOwnProperty(r)&&(i[r]=e[r]);if(A&&A.defaultProps)for(r in e=A.defaultProps,e)i[r]===void 0&&(i[r]=e[r]);return{$$typeof:kjt,type:A,key:u,ref:a,props:i,_owner:Sjt.current}}var kjt,Fjt,xjt,Sjt,Ljt,et,N,cA;var Be=P(()=>{fe();kjt=Symbol.for("react.element"),Fjt=Symbol.for("react.fragment"),xjt=Object.prototype.hasOwnProperty,Sjt=s9.ReactCurrentOwner,Ljt={key:!0,ref:!0,__self:!0,__source:!0};et=Fjt,N=LBe,cA=LBe});function Rjt(A,e){return Math.sqrt(a_(A,e))}function a_(A,e){return Math.pow(A[0]-e[0],2)+Math.pow(A[1]-e[1],2)}function Njt(A,e,t){let r=a_(e,t);if(r===0)return a_(A,e);let i=((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r;return i=Math.max(0,Math.min(1,i)),a_(A,Zm(e,t,i))}function Zm(A,e,t){return[A[0]+(e[0]-A[0])*t,A[1]+(e[1]-A[1])*t]}function Gjt(A,e){let t=A[e+0],r=A[e+1],i=A[e+2],u=A[e+3],a=3*r[0]-2*t[0]-u[0];a*=a;let n=3*r[1]-2*t[1]-u[1];n*=n;let o=3*i[0]-2*u[0]-t[0];o*=o;let s=3*i[1]-2*u[1]-t[1];if(s*=s,a<o)a=o;if(n<s)n=s;return a+n}function UdA(A,e,t,r){let i=r||[];if(Gjt(A,e)<t){let u=A[e+0];if(i.length){if(Rjt(i[i.length-1],u)>1)i.push(u)}else i.push(u);i.push(A[e+3])}else{let a=A[e+0],n=A[e+1],o=A[e+2],s=A[e+3],l=Zm(a,n,0.5),g=Zm(n,o,0.5),C=Zm(o,s,0.5),B=Zm(l,g,0.5),E=Zm(g,C,0.5),d=Zm(B,E,0.5);UdA([a,l,B,d],0,t,i),UdA([d,E,C,s],0,t,i)}return i}function RBe(A,e){return n_(A,0,A.length,e)}function n_(A,e,t,r,i){let u=i||[],a=A[e],n=A[t-1],o=0,s=1;for(let l=e+1;l<t-1;++l){let g=Njt(A[l],a,n);if(g>o)o=g,s=l}if(Math.sqrt(o)>r)n_(A,e,s+1,r,u),n_(A,s,t,r,u);else{if(!u.length)u.push(a);u.push(n)}return u}function NBe(A,e=0.15,t){let r=[],i=(A.length-1)/3;for(let u=0;u<i;u++){let a=u*3;UdA(A,a,e,r)}if(t&&t>0)return n_(r,0,r.length,t);return r}var MBe=wu(function(GBe){Object.defineProperty(GBe,"__esModule",{value:!0});GBe.sanitizeUrl=void 0;var Ujt=/^([^\w]*)(javascript|data|vbscript)/im,Mjt=/&#(\w+)(^\w|;)?/g,Tjt=/&(newline|tab);/gi,Yjt=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,Hjt=/^.+(:|:)/gim,Kjt=[".","/"];function Jjt(A){return Kjt.indexOf(A[0])>-1}function Ojt(A){return A.replace(Mjt,function(e,t){return String.fromCharCode(t)})}function Pjt(A){var e=Ojt(A||"").replace(Tjt,"").replace(Yjt,"").trim();if(!e)return"about:blank";if(Jjt(e))return e;var t=e.match(Hjt);if(!t)return e;var r=t[0];if(Ujt.test(r))return"about:blank";return e}GBe.sanitizeUrl=Pjt});function g9(A,e,t){let r=t[0];if(e!=null&&A>=e)throw Error(A+" >= "+e);if(A.slice(-1)===r||e&&e.slice(-1)===r)throw Error("trailing zero");if(e){let a=0;while((A[a]||r)===e[a])a++;if(a>0)return e.slice(0,a)+g9(A.slice(a),e.slice(a),t)}let i=A?t.indexOf(A[0]):0,u=e!=null?t.indexOf(e[0]):t.length;if(u-i>1){let a=Math.round(0.5*(i+u));return t[a]}else if(e&&e.length>1)return e.slice(0,1);else return t[i]+g9(A.slice(1),null,t)}function HBe(A){if(A.length!==KBe(A[0]))throw Error("invalid integer part of order key: "+A)}function KBe(A){if(A>="a"&&A<="z")return A.charCodeAt(0)-97+2;else if(A>="A"&&A<="Z")return 90-A.charCodeAt(0)+2;else throw Error("invalid order key head: "+A)}function p8(A){let e=KBe(A[0]);if(e>A.length)throw Error("invalid order key: "+A);return A.slice(0,e)}function TBe(A,e){if(A==="A"+e[0].repeat(26))throw Error("invalid order key: "+A);let t=p8(A);if(A.slice(t.length).slice(-1)===e[0])throw Error("invalid order key: "+A)}function YBe(A,e){HBe(A);let[t,...r]=A.split(""),i=!0;for(let u=r.length-1;i&&u>=0;u--){let a=e.indexOf(r[u])+1;if(a===e.length)r[u]=e[0];else r[u]=e[a],i=!1}if(i){if(t==="Z")return"a"+e[0];if(t==="z")return null;let u=String.fromCharCode(t.charCodeAt(0)+1);if(u>"a")r.push(e[0]);else r.pop();return u+r.join("")}else return t+r.join("")}function _jt(A,e){HBe(A);let[t,...r]=A.split(""),i=!0;for(let u=r.length-1;i&&u>=0;u--){let a=e.indexOf(r[u])-1;if(a===-1)r[u]=e.slice(-1);else r[u]=e[a],i=!1}if(i){if(t==="a")return"Z"+e.slice(-1);if(t==="A")return null;let u=String.fromCharCode(t.charCodeAt(0)-1);if(u<"Z")r.push(e.slice(-1));else r.pop();return u+r.join("")}else return t+r.join("")}function l9(A,e,t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"){if(A!=null)TBe(A,t);if(e!=null)TBe(e,t);if(A!=null&&e!=null&&A>=e)throw Error(A+" >= "+e);if(A==null){if(e==null)return"a"+t[0];let o=p8(e),s=e.slice(o.length);if(o==="A"+t[0].repeat(26))return o+g9("",s,t);if(o<e)return o;let l=_jt(o,t);if(l==null)throw Error("cannot decrement any more");return l}if(e==null){let o=p8(A),s=A.slice(o.length),l=YBe(o,t);return l==null?o+g9(s,null,t):l}let r=p8(A),i=A.slice(r.length),u=p8(e),a=e.slice(u.length);if(r===u)return r+g9(i,a,t);let n=YBe(r,t);if(n==null)throw Error("cannot increment any more");if(n<e)return n;return r+g9(i,null,t)}function o_(A,e,t,r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"){if(t===0)return[];if(t===1)return[l9(A,e,r)];if(e==null){let a=l9(A,e,r),n=[a];for(let o=0;o<t-1;o++)a=l9(a,e,r),n.push(a);return n}if(A==null){let a=l9(A,e,r),n=[a];for(let o=0;o<t-1;o++)a=l9(A,a,r),n.push(a);return n.reverse(),n}let i=Math.floor(t/2),u=l9(A,e,r);return[...o_(A,u,i,r),u,...o_(u,e,t-i-1,r)]}var JBe={};yt(JBe,{default:()=>qjt});var Wjt=async(A)=>{let e=await A.getFile();return e.handle=A,e},qjt=async(A=[{}])=>{Array.isArray(A)||(A=[A]);let e=[];A.forEach((i,u)=>{e[u]={description:i.description||"",accept:{}},i.mimeTypes?i.mimeTypes.map((a)=>{e[u].accept[a]=i.extensions||[]}):e[u].accept["*/*"]=i.extensions||[]});let t=await window.showOpenFilePicker({id:A[0].id,startIn:A[0].startIn,types:e,multiple:A[0].multiple||!1,excludeAcceptAllOption:A[0].excludeAcceptAllOption||!1}),r=await Promise.all(t.map(Wjt));return A[0].multiple?r:r[0]};var OBe=()=>{};var PBe={};yt(PBe,{default:()=>zjt});var zjt=async(A=[{}])=>(Array.isArray(A)||(A=[A]),new Promise((e,t)=>{let r=document.createElement("input");r.type="file";let i=[...A.map((n)=>n.mimeTypes||[]),...A.map((n)=>n.extensions||[])].join();r.multiple=A[0].multiple||!1,r.accept=i||"";let u=(n)=>{typeof a=="function"&&a(),e(n)},a=A[0].legacySetup&&A[0].legacySetup(u,()=>a(t),r);r.addEventListener("change",()=>{u(r.multiple?Array.from(r.files):r.files[0])}),r.click()}));var _Be=()=>{};var qBe={};yt(qBe,{default:()=>Zjt});function s_(A){function e(t){if(Object(t)!==t)return Promise.reject(TypeError(t+" is not an object."));var r=t.done;return Promise.resolve(t.value).then(function(i){return{value:i,done:r}})}return s_=function(t){this.s=t,this.n=t.next},s_.prototype={s:null,n:null,next:function(){return e(this.n.apply(this.s,arguments))},return:function(t){var r=this.s.return;return r===void 0?Promise.resolve({value:t,done:!0}):e(r.apply(this.s,arguments))},throw:function(t){var r=this.s.return;return r===void 0?Promise.reject(t):e(r.apply(this.s,arguments))}},new s_(A)}var WBe=async(A,e,t=A.name,r)=>{let i=[],u=[];var a,n=!1,o=!1;try{for(var s,l=function(g){var C,B,E,d=2;for(typeof Symbol<"u"&&(B=Symbol.asyncIterator,E=Symbol.iterator);d--;){if(B&&(C=g[B])!=null)return C.call(g);if(E&&(C=g[E])!=null)return new s_(C.call(g));B="@@asyncIterator",E="@@iterator"}throw TypeError("Object is not async iterable")}(A.values());n=!(s=await l.next()).done;n=!1){let g=s.value,C=`${t}/${g.name}`;g.kind==="file"?u.push(g.getFile().then((B)=>(B.directoryHandle=A,B.handle=g,Object.defineProperty(B,"webkitRelativePath",{configurable:!0,enumerable:!0,get:()=>C})))):g.kind!=="directory"||!e||r&&r(g)||i.push(WBe(g,e,C,r))}}catch(g){o=!0,a=g}finally{try{n&&l.return!=null&&await l.return()}finally{if(o)throw a}}return[...(await Promise.all(i)).flat(),...await Promise.all(u)]},Zjt=async(A={})=>{A.recursive=A.recursive||!1;let e=await window.showDirectoryPicker({id:A.id,startIn:A.startIn});return WBe(e,A.recursive,void 0,A.skipDirectory)};var zBe=()=>{};var ZBe={};yt(ZBe,{default:()=>Vjt});var Vjt=async(A=[{}])=>(Array.isArray(A)||(A=[A]),A[0].recursive=A[0].recursive||!1,new Promise((e,t)=>{let r=document.createElement("input");r.type="file",r.webkitdirectory=!0;let i=(a)=>{typeof u=="function"&&u(),e(a)},u=A[0].legacySetup&&A[0].legacySetup(i,()=>u(t),r);r.addEventListener("change",()=>{let a=Array.from(r.files);A[0].recursive?A[0].recursive&&A[0].skipDirectory&&(a=a.filter((n)=>n.webkitRelativePath.split("/").every((o)=>!A[0].skipDirectory({name:o,kind:"directory"})))):a=a.filter((n)=>n.webkitRelativePath.split("/").length===2),i(a)}),r.click()}));var VBe=()=>{};var jBe={};yt(jBe,{default:()=>jjt});var jjt=async(A,e=[{}],t=null,r=!1,i=null)=>{Array.isArray(e)||(e=[e]),e[0].fileName=e[0].fileName||"Untitled";let u=[],a=null;if(A instanceof Blob&&A.type?a=A.type:A.headers&&A.headers.get("content-type")&&(a=A.headers.get("content-type")),e.forEach((s,l)=>{u[l]={description:s.description||"",accept:{}},s.mimeTypes?(l===0&&a&&s.mimeTypes.push(a),s.mimeTypes.map((g)=>{u[l].accept[g]=s.extensions||[]})):a&&(u[l].accept[a]=s.extensions||[])}),t)try{await t.getFile()}catch(s){if(t=null,r)throw s}let n=t||await window.showSaveFilePicker({suggestedName:e[0].fileName,id:e[0].id,startIn:e[0].startIn,types:u,excludeAcceptAllOption:e[0].excludeAcceptAllOption||!1});!t&&i&&i();let o=await n.createWritable();if("stream"in A)return await A.stream().pipeTo(o),n;return"body"in A?(await A.body.pipeTo(o),n):(await o.write(await A),await o.close(),n)};var XBe=()=>{};var $Be={};yt($Be,{default:()=>Xjt});var Xjt=async(A,e={})=>{Array.isArray(e)&&(e=e[0]);let t=document.createElement("a"),r=A;"body"in A&&(r=await async function(a,n){let o=a.getReader(),s=new ReadableStream({start:(C)=>async function B(){return o.read().then(({done:E,value:d})=>{if(!E)return C.enqueue(d),B();C.close()})}()}),l=new Response(s),g=await l.blob();return o.releaseLock(),new Blob([g],{type:n})}(A.body,A.headers.get("content-type"))),t.download=e.fileName||"Untitled",t.href=URL.createObjectURL(await r);let i=()=>{typeof u=="function"&&u()},u=e.legacySetup&&e.legacySetup(i,()=>u(reject),t);return t.addEventListener("click",()=>{setTimeout(()=>URL.revokeObjectURL(t.href),30000),i()}),t.click(),null};var AEe=()=>{};async function eEe(...A){return(await $jt).default(...A)}async function tEe(...A){return(await AXt).default(...A)}var Rh,$jt,TDi,AXt;var rEe=P(()=>{Rh=(()=>{if(typeof self>"u")return!1;if("top"in self&&self!==top)try{}catch(A){return!1}else if("showOpenFilePicker"in self)return"showOpenFilePicker";return!1})(),$jt=Rh?Promise.resolve().then(() => (OBe(),JBe)):Promise.resolve().then(() => (_Be(),PBe));TDi=Rh?Promise.resolve().then(() => (zBe(),qBe)):Promise.resolve().then(() => (VBe(),ZBe)),AXt=Rh?Promise.resolve().then(() => (XBe(),jBe)):Promise.resolve().then(() => (AEe(),$Be))});function iEe(A){let e=[];for(let t=0,r=A.size();t<r;t++)e.push(A.get(t));return new Uint8Array(e)}function sXt(A,e,t,r){let i=A.hb_subset_input_create_or_fail();if(i===0)throw Error("hb_subset_input_create_or_fail (harfbuzz) returned zero, indicating failure");let u=A.malloc(t.byteLength);e.set(new Uint8Array(t),u);let a=A.hb_blob_create(u,t.byteLength,2,0,0),n=A.hb_face_create(a,0);A.hb_blob_destroy(a);let o=A.hb_subset_input_set(i,6);A.hb_set_clear(o),A.hb_set_invert(o);let s=A.hb_subset_input_unicode_set(i);for(let d of r)A.hb_set_add(s,d);let l;try{if(l=A.hb_subset_or_fail(n,i),l===0)throw A.hb_face_destroy(n),A.free(u),Error("hb_subset_or_fail (harfbuzz) returned zero, indicating failure. Maybe the input file is corrupted?")}finally{A.hb_subset_input_destroy(i)}let g=A.hb_face_reference_blob(l),C=A.hb_blob_get_data(g,0),B=A.hb_blob_get_length(g);if(B===0)throw A.hb_blob_destroy(g),A.hb_face_destroy(l),A.hb_face_destroy(n),A.free(u),Error("Failed to create subset font, maybe the input file is corrupted?");let E=new Uint8Array(e.subarray(C,C+B));return A.hb_blob_destroy(g),A.hb_face_destroy(l),A.hb_face_destroy(n),A.free(u),E}var __dirname="/workspace/gstack/lib/diagram-render/node_modules/@excalidraw/excalidraw/dist/prod",eXt,tXt,rXt,iXt,MdA=null,uXt=()=>new Promise((A,e)=>{try{iXt({wasmBinary:tXt}).then((t)=>{try{A({compress:(r)=>iEe(t.woff2Enc(r,r.byteLength)),decompress:(r)=>iEe(t.woff2Dec(r,r.byteLength))})}catch(r){e(r)}})}catch(t){e(t)}}),aXt=()=>(MdA||(MdA=uXt()),MdA),nXt,oXt,lXt,TdA=null,gXt=()=>new Promise(async(A,e)=>{try{let t=(await WebAssembly.instantiate(oXt)).instance.exports,r=new Uint8Array(t.memory.buffer);A({subset:(i,u)=>lXt.subset(t,r,i,u)})}catch(t){e(t)}}),cXt=()=>(TdA||(TdA=gXt()),TdA),g_,uEe=async(A,e)=>{try{let t=await f8(A,e);return l_(t)}catch(t){return console.error("Skipped glyph subsetting",t),l_(A)}},f8=async(A,e)=>{let{compress:t,decompress:r}=await aXt(),{subset:i}=await cXt(),u=r(A).buffer,a=i(u,new Set(e));return t(a.buffer).buffer},l_=async(A)=>{let e;if(typeof Buffer<"u")e=Buffer.from(A).toString("base64");else{let t=String.fromCharCode(...new Uint8Array(A));e=btoa(t)}return`data:font/woff2;base64,${e}`};var YdA=P(()=>{qt();eXt=(()=>{let A=new Uint8Array(128);for(let e=0;e<64;e++)A[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return(e)=>{let t=e.length,r=new Uint8Array((t-(e[t-1]=="=")-(e[t-2]=="="))*3/4|0);for(let i=0,u=0;i<t;){let a=A[e.charCodeAt(i++)],n=A[e.charCodeAt(i++)],o=A[e.charCodeAt(i++)],s=A[e.charCodeAt(i++)];r[u++]=a<<2|n>>4,r[u++]=n<<4|o>>2,r[u++]=o<<6|s}return r}})(),tXt=eXt("AGFzbQEAAAABmwMrYAABf2ACf38AYAN/f38AYAF/AX9gA39/fwF/YAR/f39/AX9gAn9/AX9gBn98f39/fwF/YAN/fn8BfmAEf39/fwBgBn9/f39/fwBgBX9/f39/AGAAAGABfwBgDX9/f39/f39/f39/f38AYAh/f39/f39/fwBgAXwBfGAFf39/f38Bf2AGf39/f39/AX9gB39/f39/f38Bf2ABfwF+YAt/f39/f39/f39/fwBgCn9/f39/f39/f38AYAd/f39/f39/AGAIf39/f39/f38Bf2AOf39/f39/f39/f39/f38AYAl/f39/f39/f38AYAp/f39/f39/f39/AX9gDX9/f39/f39/f39/f38Bf2AEfX9/fwF/YAx/f39/f39/f39/f38AYAt/f39/f39/f39/fwF/YAF/AXxgD39/f39/f39/f39/f39/fwBgCX9/f39/f39/fwF/YAJ/fwF8YAF+AX9gEX9/f35/f39/f39/f39/f39/AGAGf39+f39/AX9gA35/fwF/YAJ+fwF/YAJ8fwF8YAd/f3x/f39/AX8CoQkyA2VudhJhYm9ydFN0YWNrT3ZlcmZsb3cADQNlbnYOX2xsdm1fbG9nMl9mNjQAEANlbnYGX2Fib3J0AAwDZW52HV9fZW1iaW5kX3JlZ2lzdGVyX21lbW9yeV92aWV3AAIDZW52DF9fX2N4YV90aHJvdwACA2VudhlfX19jeGFfYWxsb2NhdGVfZXhjZXB0aW9uAAMDZW52GV9fZW1iaW5kX3JlZ2lzdGVyX2ludGVnZXIACwNlbnYgX19lbWJpbmRfcmVnaXN0ZXJfY2xhc3NfZnVuY3Rpb24ADwNlbnYcX19lbWJpbmRfcmVnaXN0ZXJfc3RkX3N0cmluZwABA2VudhdfX2VtYmluZF9yZWdpc3Rlcl9mbG9hdAACA2VudgtudWxsRnVuY192aQANA2VudgpudWxsRnVuY192AA0DZW52DW51bGxGdW5jX2ppamkADQNlbnYObnVsbEZ1bmNfaWlpaWkADQNlbnYNbnVsbEZ1bmNfaWlpaQANA2Vudg9fX193YXNpX2ZkX3NlZWsAEQNlbnYLc2V0VGVtcFJldDAADQNlbnYKX2xsdm1fdHJhcAAMA2VudgVfZXhpdAANA2VudhdfZW1zY3JpcHRlbl9yZXNpemVfaGVhcAADA2VudgxudWxsRnVuY19paWkADQNlbnYWX2Vtc2NyaXB0ZW5fbWVtY3B5X2JpZwAEA2VudhlfZW1zY3JpcHRlbl9nZXRfaGVhcF9zaXplAAADZW52El9fZW12YWxfdGFrZV92YWx1ZQAGA2Vudg5fX2VtdmFsX2luY3JlZgANA2Vudg5fX2VtdmFsX2RlY3JlZgANA2VudhZfX2VtYmluZF9yZWdpc3Rlcl92b2lkAAEDZW52HV9fZW1iaW5kX3JlZ2lzdGVyX3N0ZF93c3RyaW5nAAIDZW52EG51bGxGdW5jX2lpZGlpaWkADQNlbnYaX19lbWJpbmRfcmVnaXN0ZXJfZnVuY3Rpb24ACgNlbnYXX19lbWJpbmRfcmVnaXN0ZXJfZW12YWwAAQNlbnYjX19lbWJpbmRfcmVnaXN0ZXJfY2xhc3NfY29uc3RydWN0b3IACgNlbnYXX19lbWJpbmRfcmVnaXN0ZXJfY2xhc3MADgNlbnYWX19lbWJpbmRfcmVnaXN0ZXJfYm9vbAALA2VudhBfX193YXNpX2ZkX3dyaXRlAAUDZW52EF9fX3dhc2lfZmRfY2xvc2UAAwNlbnYLbnVsbEZ1bmNfaWkADQNlbnYJX19fdW5sb2NrAA0DZW52B19fX2xvY2sADQNlbnYOX19fYXNzZXJ0X2ZhaWwACQNlbnYQbnVsbEZ1bmNfdmlpaWlpaQANA2Vudg9udWxsRnVuY192aWlpaWkADQNlbnYObnVsbEZ1bmNfdmlpaWkADQNlbnYNbnVsbEZ1bmNfdmlpaQANA2VudgxudWxsRnVuY192aWkADQNlbnYKbnVsbEZ1bmNfaQANA2VudgxfX3RhYmxlX2Jhc2UDfwAGZ2xvYmFsCEluZmluaXR5A3wAA2VudgZtZW1vcnkCAIACA2VudgV0YWJsZQFwAeAC4AIDsgiwCAEBBgEEBAYGBg0GBgsBAw0NDQMBAwEGAQYGAQMGBAMJAgQCCwMCBAYCBAIDAgMGBgECDQIGBAIDBg8JBgYNFwQGAQYGBAYLAwYDAQ0DBgsTAwEBAQYBBAMCBAMDAgYJAwYGAQMBKAEDBA8BDQsBBgQGAQYNAw0DDQMGAwwNAyQBCwQGCQYNAg0LBAQDBAkNAw0GBgMBAgIJAQ0CIyIjIgIEFyAgAg0NAQYREQkNDQkJCg0DAQEBBAYBAQMDBgYBCQMBBgYNBgYBAwMDAQ0JAgIDBQMRBAMGAxQFAQEOCQIBCQkKCSAJFxoBDQEFAg0BCQEBDQEGEQMGAwIBAwERBQkCAg0BDAkBBg0NDQETAwkCAgQDAwEGAQUGBg0EAQYGBgkFAxIBAQMCBgQFBQYDAQIBBgMJAQMDAgYCBgQDBgYEDQEFAw0pAwQGAgMDCQ0mEQ0JCQkJCQkJAQENDQUNEQENBQECAQEBCgoVFyMiFxceDw0BBBcXCyERBgMGARwJCRsCFgUNAgEDAgMDDQkEAgIJAQQFAwMNAQ0FEgMDDQ0NBgMDEQ0BBg0DAwUEDQIGDQENBgENAQQFARQBAQEEDAgFBg8BAg0NDQ0NDQwMDAkLCgYGBAQNAwECBgYGBgYBAgYGBgYGAQYBARcTBgEDAQIEAQQBBgEGAQEKEgECBAECBAEBAQYGAgMDAwYGAQYEAQEBAgQBAQICAQEGAQkEAgIBBgECBAEGAwEGBgYGAQIECQEBBgYGBgEBBgELEQEJBQECBAQBAgQBAgEBCQUEAgEGAQMBBgMBAgUBBAECAwEBAwEJAQkJAgYCBAEKBgEJBAEEBAEGAQYGAQQBBgMDAwYBAgQBEwEGAQYBBgIEAxMDAwEBBgYGBgEGBAEGAQEBAgEBBgMBAQIGAQIGAQEGDQYMAQEBBgIEDQEDAwMNDQ0EAwkLCgkNCwoEDA0SBAYFAgYoJwQBBwUGCAMECAQDCQQNBgQJEw8lAg0EAgMSEgQSBRIDDQ0NAAQJCRcBCh4KBQoGAQoFCgENFRUVFQMCFRUPBAkCCgUPFxcMFwkFCwsBHxceHh0BAQkFBBkJCgsYDAkJCQoLGAkJCQoGDQsYCQkLCwsKBg0WCw8JDw8PDw8PDw8PDQYKCQkLAhUVFQ0VFRUVFRUVCQMCAg0BAgwBAwMDAwMNAAMFBAQNDQEBAQ0BAQEBAwABAQEBAQEGAgMBAQMEAgENAQEJAQEFEQIJDQIBAgIJAQQCCQIRAw0CAxEJAQQDDRENBQMCDQ0DAwYCBgMEAg0NAwMBAw0DAwYGAwIFDQYGEgUEBAIFBAEBAQENAQEJAQEBBAECAQIJAQENAQEMAQEGAQICBAEBAQEBAhEKCwcDABcKBQsJAgENEQUEKgYTAwMCCwILARIBAQADDAwMDAwMDAwMDAwMDAwMBAwGEAJ/AUHAvxoLfwFB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AiAAQQFqNgIAC3EBAX8gASABKAIAIgNBAWo2AgAgAiADaiAAQRh2OgAAIAEgASgCACIDQQFqNgIAIAIgA2ogAEEQdjoAACABIAEoAgAiA0EBajYCACACIANqIABBCHY6AAAgASABKAIAIgFBAWo2AgAgASACaiAAOgAAC0EAIAAgAWogAkEYdjoAACAAIAFBAWpqIAJBEHY6AAAgACABQQJqaiACQQh2OgAAIAAgAUEDamogAjoAACABQQRqCxgAIAAoAgBBIHFFBEAgASACIAAQ9QIaCwuRAQEDfyMCIQYjAkGAAmokAiMCIwNOBEBBgAIQAAsgBiEFIARBgMAEcUUgAiADSnEEQCAFIAFBGHRBGHUgAiADayIBQYACIAFBgAJJGxAzGiABQf8BSwRAAn8gAiADayEHA0AgACAFQYACEFAgAUGAfmoiAUH/AUsNAAsgBwtB/wFxIQELIAAgBSABEFALIAYkAgsXACAAKQAAQoCAgOj7tI2PvX9+QjCIpws5AQF/IAEgASgCACIDQQFqNgIAIAIgA2ogAEEIdjoAACABIAEoAgAiAUEBajYCACABIAJqIAA6AAALYgECfyABIABIIAAgASACakhxBEACfyAAIQQgASACaiEBIAAgAmohAANAIAJBAEoEQCACQQFrIQIgAEEBayIAIAFBAWsiASwAADoAAAwBCwsgBAshAAUgACABIAIQMhoLIAALOAECfyAAKAIIIgJBAmoiAyAAKAIESwR/QQAFIAEgAiAAKAIAai4AABDCCDsBACAAIAM2AghBAQsLFwAgACABNgIAIAAgAjYCBCAAQQA2AggLIQAgACABaiACQQh2OgAAIAAgAUEBamogAjoAACABQQJqCy4AIAAgASABQQhqIgAoAgAgAkECdGogACgCBBDhAiAAIAAoAgAgAkECdGo2AgQLDQAgACgCACAAKAIERgttAQF/IAEoAgAhAyACBEAgAUHuABA1GgsCQAJAIAEQTEUNACABKAIAIgIsAABBUGpBCk8NAANAAkAgARBMRQ0AIAIsAABBUGpBCk8NACABIAJBAWoiAjYCAAwBCwsgACADIAIQXwwBCyAAEGsLCwoAIAAoAiBBAEcLUQEDfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIAIiAyAAQQEQWiACEFkEf0EABSAAQcUAEDUEfyAAQfAC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AiMDTgRAQRAQAAsgBCICQQJqIgNBADoAACAAIAMQagR/An8CQAJAAkACQCADLAAAIgNBfWsOAwACAQMLIAJBADsBACAAIAIQVQR/IAEgAi8BADYCAEEBBUEACwwDCyACQQA6AAAgACACEGoEfyABIAItAABB/QFqNgIAQQEFQQALDAILIAJBADoAACAAIAIQagR/IAEgAi0AAEH6A2o2AgBBAQVBAAsMAQsgASADQf8BcTYCAEEBCwVBAAshBSAEJAIgBQvIBQEGfyMCIQQjAkEgaiQCIwIjA04EQEEgEAALIAQhAwJ/IAEgABBHIQcgAiABEEchBSAHCwR/An8gBQRAIAMgACkCADcCACADIAApAgg3AgggAyAAKQIQNwIQIAMgACkCGDcCGCAAIAIpAgA3AgAgACACKQIINwIIIAAgAikCEDcCECAAIAIpAhg3AhggAiADKQIANwIAIAIgAykCCDcCCCACIAMpAhA3AhAgAiADKQIYNwIYQQEMAQsgAyAAKQIANwIAIAMgACkCCDcCCCADIAApAhA3AhAgAyAAKQIYNwIYIAAgASkCADcCACAAIAEpAgg3AgggACABKQIQNwIQIAAgASkCGDcCGCABIAMpAgA3AgAgASADKQIINwIIIAEgAykCEDcCECABIAMpAhg3AhggAiABEEcEfyADIAEpAgA3AgAgAyABKQIINwIIIAMgASkCEDcCECADIAEpAhg3AhggASACKQIANwIAIAEgAikCCDcCCCABIAIpAhA3AhAgASACKQIYNwIYIAIgAykCADcCACACIAMpAgg3AgggAiADKQIQNwIQIAIgAykCGDcCGEECBUEBCwsFIAUEfyADIAEpAgA3AgAgAyABKQIINwIIIAMgASkCEDcCECADIAEpAhg3AhggASACKQIANwIAIAEgAikCCDcCCCABIAIpAhA3AhAgASACKQIYNwIYIAIgAykCADcCACACIAMpAgg3AgggAiADKQIQNwIQIAIgAykCGDcCGCABIAAQRwR/IAMgACkCADcCACADIAApAgg3AgggAyAAKQIQNwIQIAMgACkCGDcCGCAAIAEpAgA3AgAgACABKQIINwIIIAAgASkCEDcCECAAIAEpAhg3AhggASADKQIANwIAIAEgAykCCDcCCCABIAMpAhA3AhAgASADKQIYNwIYQQIFQQELBUEA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aigCAEcNACADQQFqDAELIABFIANBBEtxIABBAEcgA0EGS3FyBEAgByADa0EBIAMQMxoLIAVFBEAgBEECdCABaigCACEAC0EBCyEDIARBAWoiBCAGTQ0ACyAGQX5qIQhBACEFIAEoAgggASgCACABKAIEampBCHRBA25BpANqIQBBACEEQQAhAwNAAkACQCAFIAZGIgcNACACIAVqLAAADQAgBQRAIAIgBUF/amosAAANAQtB2AkgAGsgBUECdCABaigCACIJQQh0akGvE0sNACADIAlqIQcgBEEBaiIDQQNLBEAgAyEEIAdBCHQgA0EBdmogA24iAEH4AGogACADQQRGGyEABSADIQQLIAchAwwBCyADRSAEQQNGcSAEQQNLcgRAQQEgBEEBdiADaiIAIARuIAQgAEsbQQAgAxshAyAFQX9qIQlBACEAA0AgCSAAa0ECdCABaiADNgIAIAQgAEEBaiIARw0ACwsgBSAISQR/IAVBAmpBAnQgAWooAgAgBUECdCABaigCACAFQQFqQQJ0IAFqKAIAampBCHRBA25BpANqBSAFIAZJBH8gBUECdCABaigCAEEIdAVBAAsLIQAgBwRAQQAhAwUgBUECdCABaigCACEDC0EBIQQLIAVBAWoiBSAGTQ0ACwsLCwsLCy8BAX8gACgCBCIBIAAoAghHBEAgACABNgIICyAAKAIAIgEEQCAAKAIMGiABED8LC5kBAQR/IAFBBGoiAigCACAAKAIEIAAoAgAiA2siBWshBCACIAQ2AgAgBUEASgR/IAQgAyAFEDIaIAIhAyACKAIABSACIQMgBAshAiAAKAIAIQQgACACNgIAIAMgBDYCACAAKAIEIQIgACABKAIINgIEIAEgAjYCCCAAKAIIIQIgACABKAIMNgIIIAEgAjYCDCABIAMoAgA2AgALQAAgAEEANgIMIAAgAzYCECAAIAEEfyABEEIFQQALIgM2AgAgACACIANqIgI2AgggACACNgIEIAAgASADajYCDAsfACABBEAgACABKAIAEJ4CIAAgASgCBBCeAiABED8LCycAIAEEQCAAIAEoAgAQnwIgACABKAIEEJ8CIAFBEGoQywMgARA/CwsRACAAQQhqIgAgACgCBBCfAgsfACABBEAgACABKAIAEKECIAAgASgCBBChAiABED8LC0IBA38jAiECIwJBIGok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BEAgBCACQQEQYSAAKAIMIgIoAgAoAgwhACACIAEgAEEfcUEMahEGACEAIAQQYAsgAyQCIAALTgEDfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIAIhAyAAQRBqIgQsAAAEQEEAIQAFIAMgBEEBEGEgACgCDCABEHEhACADEGALIAIkAiAAC04BA38jAiECIwJBEGokAiMCIwNOBEBBEBAACyACIQMgAEEQaiIELAAABEBBACEABSADIARBARBhIAAoAgwgARBmIQAgAxBgCyACJAIgAAtPAQN/IwIhAiMCQRBqJAIjAiMDTgRAQRAQAAsgAiEDIABBEGoiBCwAAARAQQAhAAUgAyAEQQEQYSAAKAIMIAEQpwEhACADEGALIAIkAiAACywAIABBH0ECQQJBAhA6IABByN4ZNgIAIAAgATYCCCAAQQA2AgwgAEEAOgAQC1sBA38jAiECIwJBIGokAiMCIwNOBEBBIBAACyACQQhqIgRByo4aEC4gAkEQaiIDIAQpAgA3AgAgASADEC8gAiAAKQIINwMAIAMgAikCADcCACABIAMQLyACJAILYQEBfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIABBEBA0IQAgAiABKQIANwMAIAJBCGoiASACKQIANwIAIABBNkEBQQFBARA6IABBnN4ZNgIAIAAgASkCADcCCCACJAIgAAvVAgEGfyMCIQIjAkFAayQCIwIjA04EQEHAABAACyACQThqIQMgAkEwaiEGIAJBIGohByACIQQgAkEoaiIFIAE2AgAgBSAANgIEIAFBKBBIIAAsABgEQCAAKAIMIgQEQCAEIAEQOyABQSAQSCACIABBEGoiACkCADcDGCADIAIpAhg3AgAgASADEC8gAUEgEEgFIABBEGohAAsgBkGUjhoQLiADIAYpAgA3AgAgASADEC8gAiAAKQIANwMQIAMgAikCEDcCACABIAMQLyABQSAQSCAFEMgCBSAFEMgCIAFBIBBIIAIgACkCEDcDCCADIAIpAgg3AgAgASADEC8gB0GZjhoQLiADIAcpAgA3AgAgASADEC8gACgCDARAIAFBIBBIIAQgACkCEDcDACADIAQpAgA3AgAgASADEC8gAUEgEEggACgCDCABEDsLCyABQSkQSCACJAILOQAgAEE5QQFBAUEBEDogAEHw3Rk2AgAgACADNgII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AEHCAEEBQQFBARA6IABB3NgZNgIAIAAgATYCCCAAIAI2AgwgACADNgIQC28BBH8jAiEFIwJBEGokAiMCIwNOBEBBEBAACyABIAUiBCIGQQxqIAIQugEiBygCACICBH9BAAUgBCABIAMQhQUgASAGKAIMIAcgBCgCABCMASAEKAIAIQJBAQshASAAIAI2AgAgACABOgAEIAUkAguMAQEFfyMCIQMjAkEQaiQCIwIjA04EQEEQEAALIANBDGohBCADQQhqIQUgAyEGIABBADYCACAAQQA2AgQgAEEANgIIIAIoAgAiAiABKAIAIgFrIgcEQCAAIAcQmwEgAyABNgIEIAYgAjYCACAFIAMoAgQ2AgAgBCAGKAIANgIAIAAgBSAEEP0HCyADJAILSwEBfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIABBFBA0IQAgAiABKQIANwMAIAJBCGoiASACKQIANwIAIABBACABENUCIAIkAiAACygAIABBLEEBQQFBARA6IABBsNgZNgIAIAAgATYCCCAAIAIpAgA3AgwLTgEBfyMCIQMjAkEQaiQCIwIjA04EQEEQEAALIABBFBA0IQAgASgCACEBIAMgAhAuIANBCGoiAiADKQIANwIAIAAgASACEJYFIAMkAiAAC8ICAQV/IwIhBCMCQUBrJAIjAiMDTgRAQcAAEAALIARBOGohAiAEQTBqIQMgACwAHARAIANB84EaEC4gAiADKQIANwIAIAEgAhAvCyAEQSBqIQMgBEEoaiIFQf+BGhAuIAIgBSkCADcCACABIAIQLyAALAAdBEAgA0GDghoQLiACIAMpAgA3AgAgASACEC8LIARBGGohAyAEQRBqIQUgAUEgEEggAEEIaiIGENACRQRAIANBu/cZEC4gAiADKQIANwIAIAEgAhAvIAYgARBeIAVBt/cZEC4gAiAFKQIANwIAIAEgAhAvCyAEQQhqIQUgBCEDIAAoAhAgARA7IABBFGoiABDQAkUEQCAFQbv3GRAuIAIgBSkCADcCACABIAIQLyAAIAEQXiADQbf3GRAuIAIgAykCADcCACABIAIQLwsgBCQCC0YAIABBM0EBQQFBARA6IABBhNgZNgIAIAAgASkCADcCCCAAIAI2AhAgACADKQIANwIUIAAgBEEBcToAHCAAIAVBAXE6AB0LbAEDfyMCIQIjAkEg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BEAgB0EJaiIDBH8gBSADEDAFQQALIQYgACgCkAEiAwRAIAYgAyAAKAKIAUEJahAyGiAFIAAoApABEDEgAEEANgKQAQsgACAGNgKQASAAIAc2AogBIAAgBkECajYClAEgBkEAOgABIAAoApQBQX5qQQA6AABBACEDA0AgACgClAEgACgCiAEgA2pqQQA6AAAgA0EBaiIDQQdHDQALIAAoApQBIAQoAgBBfmpqQQA6AAAgACgClAEgBCgCAEF/ampBADoAACAAKAKMASEDCyAAKAKAASIFIABB/ABqIgcoAgAgA3EiBksEQCAAQZQBaiIDKAIAIAQoAgAgBmpqIAIgASAFIAZrIgUgBSABSxsQMhoFIABBlAFqIQMLIAMoAgAgBmohBSABIAZqIAQoAgBLBEAgBSACIAEgACgChAEgBmsiBSAFIAFLGxAyGiADKAIAIAIgBCgCACAGayICaiABIAJrEDIaBSAFIAIgARAyGgsgACgCjAFBAEghBSADKAIAIgJBfmogAiAEKAIAQX5qaiwAADoAACADKAIAIgJBf2ogAiAEKAIAQX9qaiwAADoAACAAIAAoAowBQf////8HcSABQf////8HcWoiAkGAgICAeHIgAiAFGyICNgKMAQsgACAAKQNwIAGtfDcDcCACIAcoAgBNBEAgAiAAKAKUAWoiAEEANgAAIABBADsABCAAQQA6AAYLCx8BAX4gABCGAiEBIAAQhQIiACABp2tBACABIACtVBsL+AUBHH8jAiEPIwJBEGokAiMCIwNOBEBBEBAACyAPQQRqIQsgDyEQIAEoAgAiCEEBIAAoAgh0IgwgCCAMSRsiB0GAgAggB0GAgAhJGyEGIABB4ABqIQggACgCBCIJQQJJBH8gCUEBRgR/An8gAEGsKWoiCigCACIJRSAHQf//B0txBEAgCiAIQYCAIBAwNgIAIABBsClqIAhBgIAIEDA2AgAgCigCACEJCyAJBEBBACEKIABBsClqKAIADAELIAYEfyAIIAZBAnQQMCIJIRggCCAGEDAiCgVBACEJQQAhCkEACwsFQQAhCUEACyEZIABBuClqIREgAEHUKWohEiAAQagiaiEaIABBqCNqIRsgAEGoKWohHCAAQaglaiEdIABBtClqIR4gAEG8KWohEyAFRSEfA0ACQCAAIAMgBCAFEIcCRQRAIBEoAgANASAS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AiAgACgCZCABQf8AcUHIAWoRAQAgAEEANgJkIAAoAhwhASAAKAIgIAAoAqwBIAFB/wBxQcgBahEBACAAQQA2AqwBC9cBACAAQQA2ArwBIABBgICACDYCxAEgAEGAgIAINgLIASAAQYCAgAg2AswBIABBATYC0AEgAEEBNgLUASAAQQE2AtgBIABBATYC3AEgAEEANgLgASAAQQE2AuQBIABBADYC6AEgAEEBNgLsASAAQQA2AvABIABB7CZqQQA2AgAgAEHwJmpBADYCACAAQQA2AoQCIABBADYCiAIgAEEAOgCMAiAAQQA2ApABIABBADYCjAEgAEEANgKgASAAQQA2ApwBIABCADcDcCAAQgA3A3ggAEEANgKAAQuFAwEDfyAAQRo2AhggAEHYADYCHCAAQQA2AiAgAEEANgJcIABBADYCCCAAQSA2AgwgAEEANgIAIABB3CZqIgIuAQAhAyAAQQA2AjAgAEEANgIEIABBADYCNCAAQQA2AqACIABBADYCpAIgAEEANgJkIABBQGtBADYCACAAQeQmakEANgIAIABBADYCRCAAQewmakEANgIAIABB8CZqQQA2AgAgAEEANgKEAiAAQQA2AmAgAEEANgKQASAAQQA2AowBIABBADYCoAEgAEEANgKcASAAQgA3AnQgAEIANwJ8IABBwCZqIgFCADcDACABQgA3AwggAUIANwMQIAFBADYCGCACIANBQHFBEHI7AQAgAEHgJmpBADYCACAAQQA2AjwgAEEQNgJMIABBDzYCUCAAQQs2AlQgAEEENgJYIABBADYCSCAAQQA2AqwBIABBADYCsAEgACAAQdgDajYCtAMgAEG4JGpBPzYCACAAQfQmakG4yxk2AgAgAEH4JmpB4MwZNgIAQQELLAECfyAAQUBrKAIAIgEgACgCNCICIAIgAUobIAEgACgCoAJsaiAAKAKkAmsLgQYBC38gASgCqAIiAyAASQR/An8gASgCsAIhBgNAAkBBASAGRQ0CGiACBEBBAiABKAIUIgRFDQMaIAEgASgCCEEIdiICNgIIIAEgASgCECIFLQAAQRh0IAJyNgIIIAEgASgCDEF4aiICNgIMIAEgBEF/ajYCFCABIAVBAWo2AhAFIAEoAgwhAgtBICACayIEBH8gASgCCCACdgVBAAshCyAEIAFBtAJqIAtBH3EiBUECdGot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AgAgAyAEKQIINwIIIAMgBCkCEDcCECADIAQpAhg3AhggBCEFA0ACQCAFIAIpAgA3AgAgBSACKQIINwIIIAUgAikCEDcCECAFIAIpAhg3AhggACACRgRAIAAhAgwBCyADIAJBYGoiBxBHBEAgAiEFIAchAgwCCwsLIAIgAykCADcCACACIAMpAgg3AgggAiADKQIQNwIQIAIgAykCGDcCGAsgBEEgaiIFIAFHBEAgBCECIAUhBAwBCwsLIAYkAgtrACAAIAEoAgA2AgAgACABLgEEOwEEIABBADYCCCAAQQA2AgwgAEEANgIQIAAgASgCCDYCCCAAIAEoAgw2AgwgACABKAIQNgIQIAFBADYCECABQQA2AgwgAUEANgIIIABBFGogAUEUahDjAwtKAQJ/IAAoAgQiAiAAKAIIIgFHBEADQCAAIAFBYGoiATYCCCABEPoBIAAoAggiASACRw0ACwsgACgCACIBBEAgACgCDBogARA/Cwu8AQEFfyABQQRqIQMgACgCACIGIAAoAgQiAkYEfyAAIQQgAygCACECIAMFIAMoAgAhBQNAIAVBYGogAkFgaiIEEJsIIAMgAygCAEFgaiICNgIAIAQgBkcEQCACIQUgBCECDAELCyAAIQQgACgCACEGIAMLIQUgBCACNgIAIAUgBjYCACAAKAIEIQIgACABKAIINgIEIAEgAjYCCCAAKAIIIQIgACABKAIMNgIIIAEgAjYCDCABIAUoAgA2AgALRwEBfyAAKAIIIQIDQCACQgA3AgAgAkIANwIIIAJCADcCECACQgA3AhggAhDiAyAAIAAoAghBIGoiAjYCCCABQX9qIgENAAsLsgEBAn8jAiEAIwJBEGokAiMCIwNOBEBBEBAAC0GguhlBuLoZQci6GUEAQajqGUEFQavqGUEAQavqGUEAQajoGUGt6hlB1QAQIBCaByAAQdcANgIAIABBADYCBCAAQQhqIgEgACkCADcCACABEIsHIABBAzYCACAAQQA2AgQgASAAKQIANwIAIAEQgQcgAEEGNgIAIABBADYCBCABIAApAgA3AgAgARDzBhDdBhDHBiAAJAILRwEBfyAAKAIEIQIDQCACQgA3AgAgAkIANwIIIAJCADcCECACQgA3AhggAhDiAyAAIAAoAgRBIGoiAjYCBCABQX9qIgENAAsLsgEBBn8jAiEEIwJBIGokAiMCIwNOBEBBIBAACyAEIQIgACgCCCAAKAIEIgNrQQV1IAFJBEBB////PyABIAMgACgCAGtBBXVqIgVJBEAQAgUgAiAFIAAoAgggACgCACIGayIHQQR1IgMgAyAFSRtB////PyAHQQV1Qf///x9JGyAAKAIEIAZrQQV1IABBCGoQrQIgAiABEJ4IIAAgAhCdCCACEJwICwUgACABEKAICyAEJAILQgEDfyMCIQIjAkEgaiQCIwIjA04EQEEgEAALIAIgATYCACACQQhqIgMgACABIAIQmQggAygCAEEUaiEEIAIkAiAEC0YBAn8gAEEANgIAIABBADYCBCAAQQA2AgggASgCBCABKAIAayIDQQV1IQIgAwRAIAAgAhCXCCAAIAEoAgAgASgCBBCWCAsLUQEBfyAAQQA2AgAgAEEANgIEIABBADYCCCABBEAgACABEJsBIAAoAgQhAwNAIAMgAiwAADoAACAAIAAoAgRBAWoiAzYCBCABQX9qIgENAAsLCzUBAX8gAEEANgIAIABBADYCBCAAQQA2AgggAiABayIDBEAgACADEJsBIAAgASACIAMQ2QELC1cBAn8gAQRAIAAoAgAhAyAAKAIEIQQDQCABKAIQIgAgA0kEfyABQQRqBQJ/IAMgAE8EQCABQQRqIAEoAhQgBEkNARoLIAEhAiABCwsoAgAiAQ0ACwsgAgsiAQF/IAAoAgQiAkEAIAFBAnQQMxogACABQQJ0IAJqNgIEC2EBAX9B/////wMgAUkEQBACCyABQf////8DSwRAQQgQBSIAQZbvGRBvIABBqOcZNgIAIABB0McZQc4AEAQFIAAgAUECdBBCIgI2AgQgACACNgIAIAAgAUECdCACajYCCAsLIgEBfyAAKAIIIgJBACABQQF0EDMaIAAgAUEBdCACajYCCAsiAQF/IAAoAgQiAkEAIAFBAXQQMxogACABQQF0IAJqNgIEC7ABAQV/IwIhBCMCQSBqJAIjAiMDTgRAQSAQAAsgBCECIAAoAgggACgCBCIDa0EBdSABSQRAQf////8HIAEgAyAAKAIAa0EBdWoiBUkEQBACBSACIAUgACgCCCAAKAIAIgNrIgYgBiAFSRtB/////wcgBkEBdUH/////A0kbIAAoAgQgA2tBAXUgAEEIahC8AiACIAEQqQggACACELkCIAIQuAILBSAA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AAUA0QAFAPEABgAxAQYAcQEHAPEBCADxAgkA8QQKAPEICwDxEAwA8SANAPFAGABBpg4L2oMDAgAAAAABAAADAAAAAAIAAAQAAAAAAwAABQAAAAADAAAGAAAAAAMAAAcAAAAAAwAACAAAAAADAAAJAAAAAAABAAIAAAAAAQEAAwAAAAACAQAEAAAAAAMBAAUAAAAAAwEABgAAAAADAQAHAAAAAAMBAAgAAAAAAwEACQAAAAAAAgACAAAAAAECAAMAAAAAAgIABAAAAAADAgAFAAAAAAMCAAYAAAAAAwIABwAAAAADAgAIAAAAAAMCAAkAAAAAAAMAAgAAAAABAwADAAAAAAIDAAQAAAAAAwMABQAAAAADAwAGAAAAAAMDAAcAAAAAAwMACAAAAAADAwAJAAAAAAAEAAIAAAAAAQQAAwAAAAACBAAEAAAAAAMEAAUAAAAAAwQABgAAAAADBAAHAAAAAAMEAAgAAAAAAwQACQAAAAAABQACAAAAAAEFAAMAAAAAAgUABAAAAAADBQAFAAAAAAMFAAYAAAAAAwUABwAAAAADBQAIAAAAAAMFAAkAAQAAAAYAAgABAAABBgADAAEAAAIGAAQAAQAAAwYABQABAAADBgAGAAEAAAMGAAcAAQAAAwYACAABAAADBgAJAAEAAAAIAAIAAQAAAQgAAwABAAACCAAEAAEAAAMIAAUAAQAAAwgABgABAAADCAAHAAEAAAMIAAgAAQAAAwgACQAAAQADAAAKAAABAAMAAAwAAAIAAwAADgAAAgADAAASAAADAAMAABYAAAMAAwAAHgAABAADAAAmAAAEAAMAADYAAAEAAwEACgAAAQADAQAMAAACAAMBAA4AAAIAAwEAEgAAAwADAQAWAAADAAMBAB4AAAQAAwEAJgAABAADAQA2AAABAAMCAAoAAAEAAwIADAAAAgADAgAOAAACAAMCABIAAAMAAwIAFgAAAwADAgAeAAAEAAMCACYAAAQAAwIANgAAAQADAwAKAAABAAMDAAwAAAIAAwMADgAAAgADAwASAAADAAMDABYAAAMAAwMAHgAABAADAwAmAAAEAAMDADYAAAEAAwQACgAAAQADBAAMAAACAAMEAA4AAAIAAwQAEgAAAwADBAAWAAADAAMEAB4AAAQAAwQAJgAABAADBAA2AAABAAMFAAoAAAEAAwUADAAAAgADBQAOAAACAAMFABIAAAMAAwUAFgAAAwADBQAeAAAEAAMFACYAAAQAAwUANgABAQADBgAKAAEBAAMGAAwAAQIAAwYADgABAgADBgASAAEDAAMGABYAAQMAAwYAHgABBAADBgAmAAEEAAMGADYAAQEAAwgACgABAQADCAAMAAECAAMIAA4AAQIAAwgAEgABAwADCAAWAAEDAAMIAB4AAQQAAwgAJgABBAADCAA2AAAA/wAAAAIAAAD/AQAAAwAAAP8CAAAEAAAA/wMAAAUAAAD/AwAABgAAAP8DAAAHAAAA/wMAAAgAAAD/AwAACQAAAP8AAQACAAAA/wEBAAMAAAD/AgEABAAAAP8DAQAFAAAA/wMBAAYAAAD/AwEABwAAAP8DAQAIAAAA/wMBAAkAAAD/AAIAAgAAAP8BAgADAAAA/wICAAQAAAD/AwIABQAAAP8DAgAGAAAA/wMCAAcAAAD/AwIACAAAAP8DAgAJAAAA/wADAAIAAAD/AQMAAwAAAP8CAwAEAAAA/wMDAAUAAAD/AwMABgAAAP8DAwAHAAAA/wMDAAgAAAD/AwMACQAAAP8ABAACAAAA/wEEAAMAAAD/AgQABAAAAP8DBAAFAAAA/wMEAAYAAAD/AwQABwAAAP8DBAAIAAAA/wMEAAkAAAD/AAUAAgAAAP8BBQADAAAA/wIFAAQAAAD/AwUABQAAAP8DBQAGAAAA/wMFAAcAAAD/AwUACAAAAP8DBQAJAAEA/wAGAAIAAQD/AQYAAwABAP8CBgAEAAEA/wMGAAUAAQD/AwYABgABAP8DBgAHAAEA/wMGAAgAAQD/AwYACQABAP8ACAACAAEA/wEIAAMAAQD/AggABAABAP8DCAAFAAEA/wMIAAYAAQD/AwgABwABAP8DCAAIAAEA/wMIAAkAAAH/AwAACgAAAf8DAAAMAAAC/wMAAA4AAAL/AwAAEgAAA/8DAAAWAAAD/wMAAB4AAAT/AwAAJgAABP8DAAA2AAAB/wMBAAoAAAH/AwEADAAAAv8DAQAOAAAC/wMBABIAAAP/AwEAFgAAA/8DAQAeAAAE/wMBACYAAAT/AwEANgAAAf8DAgAKAAAB/wMCAAwAAAL/AwIADgAAAv8DAgASAAAD/wMCABYAAAP/AwIAHgAABP8DAgAmAAAE/wMCADYAAAH/AwMACgAAAf8DAwAMAAAC/wMDAA4A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MgBGAQQJ/wMyAEYCBAr/AzIARgQEGP8DMgBGCAUF/wNCAEYABQX/A0IAZgAFBv8DQgCGAAUH/wNCAMYABQj/A0IARgEFCf8DQgBGAgUK/wNCAEYEBRj/A0IARggFBf8DYgBGAAUF/wNiAGYABQb/A2IAhgAFB/8DYgDGAAUI/wNiAEYBBQn/A2IARgIFCv8DYgBGBAUY/wNiAEYIBgH/A4IACgAGAf8DggAMAAYC/wOCAA4ABgL/A4IAEgAGA/8DggAWAAYD/wOCAB4ABgT/A4IAJgAGBP8DggA2AAcB/wPCAAoABwH/A8IADAAHAv8DwgAOAAcC/wPCABIABwP/A8IAFgAHA/8DwgAeAAcE/wPCACYABwT/A8IANgAIAf8DQgEKAAgB/wNCAQwACAL/A0IBDgAIAv8DQgESAAgD/wNCARYACAP/A0IBHgAIBP8DQgEmAAgE/wNCATYACQH/A0ICCgAJAf8DQgIMAAkC/wNCAg4ACQL/A0ICEgAJA/8DQgIWAAkD/wNCAh4ACQT/A0ICJgAJBP8DQgI2AAoB/wNCBAoACgH/A0IEDAAKAv8DQgQOAAoC/wNCBBIACgP/A0IEFgAKA/8DQgQeAAoE/wNCBCYACgT/A0IENgAMAf8DQggKAAwB/wNCCAwADAL/A0IIDgAMAv8DQggSAAwD/wNCCBYADAP/A0IIHgAMBP8DQggmAAwE/wNCCDYADgH/A0IYCgAOAf8DQhgMAA4C/wNCGA4ADgL/A0IYEgAOA/8DQhgWAA4D/wNCGB4ADgT/A0IYJgAOBP8DQhg2ABgB/wNCWAoAGAH/A0JYDAAYAv8DQlgOABgC/wNCWBIAGAP/A0JYFgAYA/8DQlgeABgE/wNCWCYAGAT/A0JYNgAGBf8DggBGAAYF/wOCAGYABgb/A4IAhgAGB/8DggDGAAYI/wOCAEYBBgn/A4IARgIGCv8DggBGBAYY/wOCAEYIBwX/A8IARgAHBf8DwgBmAAcG/wPCAIYABwf/A8IAxgAHCP8DwgBGAQcJ/wPCAEYCBwr/A8IARgQHGP8DwgBGCAgF/wNCAUYACAX/A0IBZgAIBv8DQgGGAAgH/wNCAcYACAj/A0IBRgEICf8DQgFGAggK/wNCAUYECBj/A0IBRggJBf8DQgJGAAkF/wNCAmYACQb/A0IChgAJB/8DQgLGAAkI/wNCAkYBCQn/A0ICRgIJCv8DQgJGBAkY/wNCAkYICgX/A0IERgAKBf8DQgRmAAoG/wNCBIYACgf/A0IExgAKCP8DQgRGAQoJ/wNCBEYCCgr/A0IERgQKGP8DQgRGCAwF/wNCCEYADAX/A0IIZgAMBv8DQgiGAAwH/wNCCMYADAj/A0IIRgEMCf8DQghGAgwK/wNCCEYEDBj/A0IIRggOBf8DQhhGAA4F/wNCGGYADgb/A0IYhgAOB/8DQhjGAA4I/wNCGEYBDgn/A0IYRgIOCv8DQhhGBA4Y/wNCGEYIGAX/A0JYRgAYBf8DQlhmABgG/wNCWIYAGAf/A0JYxgAYCP8DQlhGARgJ/wNCWEYCGAr/A0JYRgQYGP8DQlhGCAAAAAAEAAAADAAAABwAAABJAAAAfgAAAOQAAACoAQAAAgICAwICAgQCAgIDAgICBAAEAwIABAMBAAQDAgAEAwUAAZIBtAHUAfQBFgI2AlYCdgKWArYC1gL2AhYDNgNWA3YDmAO4A9gD+AMYBDgEWAR4BJgEuATYBPgEGAU4BVgFeAWYBbgF2AX4BQAAAAAAAHRpbWVkb3dubGlmZWxlZnRiYWNrY29kZWRhdGFzaG93b25seXNpdGVjaXR5b3Blbmp1c3RsaWtlZnJlZXdvcmt0ZXh0eWVhcm92ZXJib2R5bG92ZWZvcm1ib29rcGxheWxpdmVsaW5laGVscGhvbWVzaWRlbW9yZXdvcmRsb25ndGhlbXZpZXdmaW5kcGFnZWRheXNmdWxsaGVhZHRlcm1lYWNoYXJlYWZyb210cnVlbWFya2FibGV1cG9uaGlnaGRhdGVsYW5kbmV3c2V2ZW5uZXh0Y2FzZWJvdGhwb3N0dXNlZG1hZGVoYW5kaGVyZXdoYXRuYW1lTGlua2Jsb2dzaXplYmFzZWhlbGRtYWtlbWFpbnVzZXInKSAraG9sZGVuZHN3aXRoTmV3c3JlYWR3ZXJlc2lnbnRha2VoYXZlZ2FtZXNlZW5jYWxscGF0aHdlbGxwbHVzbWVudWZpbG1wYXJ0am9pbnRoaXNsaXN0Z29vZG5lZWR3YXlzd2VzdGpvYnNtaW5kYWxzb2xvZ29yaWNodXNlc2xhc3R0ZWFtYXJteWZvb2RraW5nd2lsbGVhc3R3YXJkYmVzdGZpcmVQYWdla25vd2F3YXkucG5nbW92ZXRoYW5sb2FkZ2l2ZXNlbGZub3RlbXVjaGZlZWRtYW55cm9ja2ljb25vbmNlbG9va2hpZGVkaWVkSG9tZXJ1bGVob3N0YWpheGluZm9jbHVibGF3c2xlc3NoYWxmc29tZXN1Y2h6b25lMTAwJW9uZXNjYXJlVGltZXJhY2VibHVlZm91cndlZWtmYWNlaG9wZWdhdmVoYXJkbG9zdHdoZW5wYXJra2VwdHBhc3NzaGlwcm9vbUhUTUxwbGFuVHlwZWRvbmVzYXZla2VlcGZsYWdsaW5rc29sZGZpdmV0b29rcmF0ZXRvd25qdW1wdGh1c2RhcmtjYXJkZmlsZWZlYXJzdGF5a2lsbHRoYXRmYWxsYXV0b2V2ZXIuY29tdGFsa3Nob3B2b3RlZGVlcG1vZGVyZXN0dHVybmJvcm5iYW5kZmVsbHJvc2V1cmwoc2tpbnJvbGVjb21lYWN0c2FnZXNtZWV0Z29sZC5qcGdpdGVtdmFyeWZlbHR0aGVuc2VuZGRyb3BWaWV3Y29weTEuMCI8L2E+c3RvcGVsc2VsaWVzdG91cnBhY2suZ2lmcGFzdGNzcz9ncmF5bWVhbiZndDtyaWRlc2hvdGxhdGVzYWlkcm9hZHZhciBmZWVsam9obnJpY2twb3J0ZmFzdCdVQS1kZWFkPC9iPnBvb3JiaWxsdHlwZVUuUy53b29kbXVzdDJweDtJbmZvcmFua3dpZGV3YW50d2FsbGxlYWRbMF07cGF1bHdhdmVzdXJlJCgnI3dhaXRtYXNzYXJtc2dvZXNnYWlubGFuZ3BhaWQhLS0gbG9ja3VuaXRyb290d2Fsa2Zpcm13aWZleG1sInNvbmd0ZXN0MjBweGtpbmRyb3dzdG9vbGZvbnRtYWlsc2FmZXN0YXJtYXBzY29yZXJhaW5mbG93YmFieXNwYW5zYXlzNHB4OzZweDthcnRzZm9vdHJlYWx3aWtpaGVhdHN0ZXB0cmlwb3JnL2xha2V3ZWFrdG9sZEZvcm1jYXN0ZmFuc2Jhbmt2ZXJ5cnVuc2p1bHl0YXNrMXB4O2dvYWxncmV3c2xvd2VkZ2VpZD0ic2V0czVweDsuanM/NDBweGlmIChzb29uc2VhdG5vbmV0dWJlemVyb3NlbnRyZWVkZmFjdGludG9naWZ0aGFybTE4cHhjYW1laGlsbGJvbGR6b29tdm9pZGVhc3lyaW5nZmlsbHBlYWtpbml0Y29zdDNweDtqYWNrdGFnc2JpdHNyb2xsZWRpdGtuZXduZWFyPCEtLWdyb3dKU09OZHV0eU5hbWVzYWxleW91IGxvdHNwYWluamF6emNvbGRleWVzZmlzaHd3dy5yaXNrdGFic3ByZXYxMHB4cmlzZTI1cHhCbHVlZGluZzMwMCxiYWxsZm9yZGVhcm53aWxkYm94LmZhaXJsYWNrdmVyc3BhaXJqdW5ldGVjaGlmKCFwaWNrZXZpbCQoIiN3YXJtbG9yZGRvZXNwdWxsLDAwMGlkZWFkcmF3aHVnZXNwb3RmdW5kYnVybmhyZWZjZWxsa2V5c3RpY2tob3VybG9zc2Z1ZWwxMnB4c3VpdGRlYWxSU1MiYWdlZGdyZXlHRVQiZWFzZWFpbXNnaXJsYWlkczhweDtuYXZ5Z3JpZHRpcHMjOTk5d2Fyc2xhZHljYXJzKTsgfXBocD9oZWxsdGFsbHdob216aDrlKi8NCiAxMDBoYWxsLgoKQTdweDtwdXNoY2hhdDBweDtjcmV3Ki88L2hhc2g3NXB4ZmxhdHJhcmUgJiYgdGVsbGNhbXBvbnRvbGFpZG1pc3Nza2lwdGVudGZpbmVtYWxlZ2V0c3Bsb3Q0MDAsDQoNCmNvb2xmZWV0LnBocDxicj5lcmljbW9zdGd1aWRiZWxsZGVzY2hhaXJtYXRoYXRvbS9pbWcmIzgybHVja2NlbnQwMDA7dGlueWdvbmVodG1sc2VsbGRydWdGUkVFbm9kZW5pY2s/aWQ9bG9zZW51bGx2YXN0d2luZFJTUyB3ZWFycmVseWJlZW5zYW1lZHVrZW5hc2FjYXBld2lzaGd1bGZUMjM6aGl0c3Nsb3RnYXRla2lja2JsdXJ0aGV5MTVweCcnKTspOyI+bXNpZXdpbnNiaXJkc29ydGJldGFzZWVrVDE4Om9yZHN0cmVlbWFsbDYwcHhmYXJt4oCZc2JveXNbMF0uJyk7IlBPU1RiZWFya2lkcyk7fX1tYXJ5dGVuZChVSylxdWFkemg65i1zaXotLS0tcHJvcCcpOw1saWZ0VDE5OnZpY2VhbmR5ZGVidD5SU1Nwb29sbmVja2Jsb3dUMTY6ZG9vcmV2YWxUMTc6bGV0c2ZhaWxvcmFscG9sbG5vdmFjb2xzZ2VuZSDigJRzb2Z0cm9tZXRpbGxyb3NzPGgzPnBvdXJmYWRlcGluazx0cj5taW5pKXwhKG1pbmV6aDroYmFyc2hlYXIwMCk7bWlsayAtLT5pcm9uZnJlZGRpc2t3ZW50c29pbHB1dHMvanMvaG9seVQyMjpJU0JOVDIwOmFkYW1zZWVzPGgyPmpzb24nLCAnY29udFQyMTogUlNTbG9vcGFzaWFtb29uPC9wPnNvdWxMSU5FZm9ydGNhcnRUMTQ6PGgxPjgwcHghLS08OXB4O1QwNDptaWtlOjQ2Wm5pY2VpbmNoWW9ya3JpY2V6aDrkJykpO3B1cmVtYWdlcGFyYXRvbmVib25kOjM3Wl9vZl8nXSk7MDAwLHpoOud0YW5reWFyZGJvd2xidXNoOjU2WkphdmEzMHB4Cnx9CiVDMyU6MzRaamVmZkVYUEljYXNodmlzYWdvbGZzbm93emg66XF1ZXIuY3Nzc2lja21lYXRtaW4uYmluZGRlbGxoaXJlcGljc3JlbnQ6MzZaSFRUUC0yMDFmb3Rvd29sZkVORCB4Ym94OjU0WkJPRFlkaWNrOwp9CmV4aXQ6MzVadmFyc2JlYXQnfSk7ZGlldDk5OTthbm5lfX08L1tpXS5MYW5na23CsndpcmV0b3lzYWRkc3NlYWxhbGV4OwoJfWVjaG9uaW5lLm9yZzAwNSl0b255amV3c3NhbmRsZWdzcm9vZjAwMCkgMjAwd2luZWdlYXJkb2dzYm9vdGdhcnljdXRzdHlsZXRlbXB0aW9uLnhtbGNvY2tnYW5nJCgnLjUwcHhQaC5EbWlzY2FsYW5sb2FuZGVza21pbGVyeWFudW5peGRpc2MpO30KZHVzdGNsaXApLgoKNzBweC0yMDBEVkRzN10+PHRhcGVkZW1vaSsrKXdhZ2VldXJvcGhpbG9wdHNob2xlRkFRc2FzaW4tMjZUbGFic3BldHNVUkwgYnVsa2Nvb2s7fQ0KSEVBRFswXSlhYmJyanVhbigxOThsZXNodHdpbjwvaT5zb255Z3V5c2Z1Y2twaXBlfC0KITAwMiluZG93WzFdO1tdOwpMb2cgc2FsdA0KCQliYW5ndHJpbWJhdGgpew0KMDBweAp9KTtrbzrsZmVlc2FkPg1zOi8vIFtdO3RvbGxwbHVnKCl7CnsNCiAuanMnMjAwcGR1YWxib2F0LkpQRyk7Cn1xdW90KTsKCicpOwoNCn0NMjAxNDIwMTUyMDE2MjAxNzIwMTgyMDE5MjAyMDIwMjEyMDIyMjAyMzIwMjQyMDI1MjAyNjIwMjcyMDI4MjAyOTIwMzAyMDMxMjAzMjIwMzMyMDM0MjAzNTIwMzYyMDM3MjAxMzIwMTIyMDExMjAxMDIwMDkyMDA4MjAwNzIwMDYyMDA1MjAwNDIwMDMyMDAyMjAwMTIwMDAxOTk5MTk5ODE5OTcxOTk2MTk5NTE5OTQxOTkzMTk5MjE5OTExOTkwMTk4OTE5ODgxOTg3MTk4NjE5ODUxOTg0MTk4MzE5ODIxOTgxMTk4MDE5NzkxOTc4MTk3NzE5NzYxOTc1MTk3NDE5NzMxOTcyMTk3MTE5NzAxOTY5MTk2ODE5NjcxOTY2MTk2NTE5NjQxOTYzMTk2MjE5NjExOTYwMTk1OTE5NTgxOTU3MTk1NjE5NTUxOTU0MTk1MzE5NTIxOTUxMTk1MDEwMDAxMDI0MTM5NDAwMDA5OTk5Y29tb23DoXNlc3RlZXN0YXBlcm90b2RvaGFjZWNhZGFhw7FvYmllbmTDrWFhc8OtdmlkYWNhc29vdHJvZm9yb3NvbG9vdHJhY3VhbGRpam9zaWRvZ3JhbnRpcG90ZW1hZGViZWFsZ29xdcOpZXN0b25hZGF0cmVzcG9jb2Nhc2FiYWpvdG9kYXNpbm9hZ3VhcHVlc3Vub3NhbnRlZGljZWx1aXNlbGxhbWF5b3pvbmFhbW9ycGlzb29icmFjbGljZWxsb2Rpb3Nob3JhY2FzadC30LDQvdCw0L7QvNGA0LDRgNGD0YLQsNC90LXQv9C+0L7RgtC40LfQvdC+0LTQvtGC0L7QttC10L7QvdC40YXQndCw0LXQtdCx0YvQvNGL0JLRi9GB0L7QstGL0LLQvtCd0L7QvtCx0J/QvtC70LjQvdC40KDQpNCd0LXQnNGL0YLRi9Ce0L3QuNC80LTQsNCX0LDQlNCw0J3Rg9Ce0LHRgtC10JjQt9C10LnQvdGD0LzQvNCi0YvRg9C22YHZitij2YbZhdin2YXYudmD2YTYo9mI2LHYr9mK2KfZgdmJ2YfZiNmE2YXZhNmD2KfZiNmE2YfYqNiz2KfZhNil2YbZh9mK2KPZitmC2K/Zh9mE2KvZhdio2YfZhNmI2YTZitio2YTYp9mK2KjZg9i02YrYp9mF2KPZhdmG2KrYqNmK2YTZhtit2KjZh9mF2YXYtNmI2LRmaXJzdHZpZGVvbGlnaHR3b3JsZG1lZGlhd2hpdGVjbG9zZWJsYWNrcmlnaHRzbWFsbGJvb2tzcGxhY2VtdXNpY2ZpZWxkb3JkZXJwb2ludHZhbHVlbGV2ZWx0YWJsZWJvYXJkaG91c2Vncm91cHdvcmtzeWVhcnNzdGF0ZXRvZGF5d2F0ZXJzdGFydHN0eWxlZGVhdGhwb3dlcnBob25lbmlnaHRlcnJvcmlucHV0YWJvdXR0ZXJtc3RpdGxldG9vbHNldmVudGxvY2FsdGltZXNsYXJnZXdvcmRzZ2FtZXNzaG9ydHNwYWNlZm9jdXNjbGVhcm1vZGVsYmxvY2tndWlkZXJhZGlvc2hhcmV3b21lbmFnYWlubW9uZXlpbWFnZW5hbWVzeW91bmdsaW5lc2xhdGVyY29sb3JncmVlbmZyb250JmFtcDt3YXRjaGZvcmNlcHJpY2VydWxlc2JlZ2luYWZ0ZXJ2aXNpdGlzc3VlYXJlYXNiZWxvd2luZGV4dG90YWxob3Vyc2xhYmVscHJpbnRwcmVzc2J1aWx0bGlua3NzcGVlZHN0dWR5dHJhZGVmb3VuZHNlbnNldW5kZXJzaG93bmZvcm1zcmFuZ2VhZGRlZHN0aWxsbW92ZWR0YWtlbmFib3ZlZmxhc2hmaXhlZG9mdGVub3RoZXJ2aWV3c2NoZWNrbGVnYWxyaXZlcml0ZW1zcXVpY2tzaGFwZWh1bWFuZXhpc3Rnb2luZ21vdmlldGhpcmRiYXNpY3BlYWNlc3RhZ2V3aWR0aGxvZ2luaWRlYXN3cm90ZXBhZ2VzdXNlcnNkcml2ZXN0b3JlYnJlYWtzb3V0aHZvaWNlc2l0ZXNtb250aHdoZXJlYnVpbGR3aGljaGVhcnRoZm9ydW10aHJlZXNwb3J0cGFydHlDbGlja2xvd2VybGl2ZXNjbGFzc2xheWVyZW50cnlzdG9yeXVzYWdlc291bmRjb3VydHlvdXIgYmlydGhwb3B1cHR5cGVzYXBwbHlJbWFnZWJlaW5ndXBwZXJub3Rlc2V2ZXJ5c2hvd3NtZWFuc2V4dHJhbWF0Y2h0cmFja2tub3duZWFybHliZWdhbnN1cGVycGFwZXJub3J0aGxlYXJuZ2l2ZW5uYW1lZGVuZGVkVGVybXNwYXJ0c0dyb3VwYnJhbmR1c2luZ3dvbWFuZmFsc2VyZWFkeWF1ZGlvdGFrZXN3aGlsZS5jb20vbGl2ZWRjYXNlc2RhaWx5Y2hpbGRncmVhdGp1ZGdldGhvc2V1bml0c25ldmVyYnJvYWRjb2FzdGNvdmVyYXBwbGVmaWxlc2N5Y2xlc2NlbmVwbGFuc2NsaWNrd3JpdGVxdWVlbnBpZWNlZW1haWxmcmFtZW9sZGVycGhvdG9saW1pdGNhY2hlY2l2aWxzY2FsZWVudGVydGhlbWV0aGVyZXRvdWNoYm91bmRyb3lhbGFza2Vkd2hvbGVzaW5jZXN0b2NrIG5hbWVmYWl0aGhlYXJ0ZW1wdHlvZmZlcnNjb3Blb3duZWRtaWdodGFsYnVtdGhpbmtibG9vZGFycmF5bWFqb3J0cnVzdGNhbm9udW5pb25jb3VudHZhbGlkc3RvbmVTdHlsZUxvZ2luaGFwcHlvY2N1cmxlZnQ6ZnJlc2hxdWl0ZWZpbG1zZ3JhZGVuZWVkc3VyYmFuZmlnaHRiYXNpc2hvdmVyYXV0bztyb3V0ZS5odG1sbWl4ZWRmaW5hbFlvdXIgc2xpZGV0b3BpY2Jyb3duYWxvbmVkcmF3bnNwbGl0cmVhY2hSaWdodGRhdGVzbWFyY2hxdW90ZWdvb2RzTGlua3Nkb3VidGFzeW5jdGh1bWJhbGxvd2NoaWVmeW91dGhub3ZlbDEwcHg7c2VydmV1bnRpbGhhbmRzQ2hlY2tTcGFjZXF1ZXJ5amFtZXNlcXVhbHR3aWNlMCwwMDBTdGFydHBhbmVsc29uZ3Nyb3VuZGVpZ2h0c2hpZnR3b3J0aHBvc3RzbGVhZHN3ZWVrc2F2b2lkdGhlc2VtaWxlc3BsYW5lc21hcnRhbHBoYXBsYW50bWFya3NyYXRlc3BsYXlzY2xhaW1zYWxlc3RleHRzc3RhcnN3cm9uZzwvaDM+dGhpbmcub3JnL211bHRpaGVhcmRQb3dlcnN0YW5kdG9rZW5zb2xpZCh0aGlzYnJpbmdzaGlwc3N0YWZmdHJpZWRjYWxsc2Z1bGx5ZmFjdHNhZ2VudFRoaXMgLy8tLT5hZG1pbmVneXB0RXZlbnQxNXB4O0VtYWlsdHJ1ZSJjcm9zc3NwZW50YmxvZ3Nib3giPm5vdGVkbGVhdmVjaGluYXNpemVzZ3Vlc3Q8L2g0PnJvYm90aGVhdnl0cnVlLHNldmVuZ3JhbmRjcmltZXNpZ25zYXdhcmVkYW5jZXBoYXNlPjwhLS1lbl9VUyYjMzk7MjAwcHhfbmFtZWxhdGluZW5qb3lhamF4LmF0aW9uc21pdGhVLlMuIGhvbGRzcGV0ZXJpbmRpYW5hdiI+Y2hhaW5zY29yZWNvbWVzZG9pbmdwcmlvclNoYXJlMTk5MHNyb21hbmxpc3RzamFwYW5mYWxsc3RyaWFsb3duZXJhZ3JlZTwvaDI+YWJ1c2VhbGVydG9wZXJhIi0vL1djYXJkc2hpbGxzdGVhbXNQaG90b3RydXRoY2xlYW4ucGhwP3NhaW50bWV0YWxsb3Vpc21lYW50cHJvb2ZicmllZnJvdyI+Z2VucmV0cnVja2xvb2tzVmFsdWVGcmFtZS5uZXQvLS0+Cjx0cnkgewp2YXIgbWFrZXNjb3N0c3BsYWluYWR1bHRxdWVzdHRyYWlubGFib3JoZWxwc2NhdXNlbWFnaWNtb3RvcnRoZWlyMjUwcHhsZWFzdHN0ZXBzQ291bnRjb3VsZGdsYXNzc2lkZXNmdW5kc2hvdGVsYXdhcmRtb3V0aG1vdmVzcGFyaXNnaXZlc2R1dGNodGV4YXNmcnVpdG51bGwsfHxbXTt0b3AiPgo8IS0tUE9TVCJvY2Vhbjxici8+Zmxvb3JzcGVha2RlcHRoIHNpemViYW5rc2NhdGNoY2hhcnQyMHB4O2FsaWduZGVhbHN3b3VsZDUwcHg7dXJsPSJwYXJrc21vdXNlTW9zdCAuLi48L2Ftb25nYnJhaW5ib2R5IG5vbmU7YmFzZWRjYXJyeWRyYWZ0cmVmZXJwYWdlX2hvbWUubWV0ZXJkZWxheWRyZWFtcHJvdmVqb2ludDwvdHI+ZHJ1Z3M8IS0tIGFwcmlsaWRlYWxhbGxlbmV4YWN0Zm9ydGhjb2Rlc2xvZ2ljVmlldyBzZWVtc2JsYW5rcG9ydHMgKDIwMHNhdmVkX2xpbmtnb2Fsc2dyYW50Z3JlZWtob21lc3JpbmdzcmF0ZWQzMHB4O3dob3NlcGFyc2UoKTsiIEJsb2NrbGludXhqb25lc3BpeGVsJyk7Ij4pO2lmKC1sZWZ0ZGF2aWRob3JzZUZvY3VzcmFpc2Vib3hlc1RyYWNrZW1lbnQ8L2VtPmJhciI+LnNyYz10b3dlcmFsdD0iY2FibGVoZW5yeTI0cHg7c2V0dXBpdGFseXNoYXJwbWlub3J0YXN0ZXdhbnRzdGhpcy5yZXNldHdoZWVsZ2lybHMvY3NzLzEwMCU7Y2x1YnNzdHVmZmJpYmxldm90ZXMgMTAwMGtvcmVhfSk7DQpiYW5kc3F1ZXVlPSB7fTs4MHB4O2NraW5new0KCQlhaGVhZGNsb2NraXJpc2hsaWtlIHJhdGlvc3RhdHNGb3JtInlhaG9vKVswXTtBYm91dGZpbmRzPC9oMT5kZWJ1Z3Rhc2tzVVJMID1jZWxsc30pKCk7MTJweDtwcmltZXRlbGxzdHVybnMweDYwMC5qcGcic3BhaW5iZWFjaHRheGVzbWljcm9hbmdlbC0tPjwvZ2lmdHNzdGV2ZS1saW5rYm9keS59KTsKCW1vdW50ICgxOTlGQVE8L3JvZ2VyZnJhbmtDbGFzczI4cHg7ZmVlZHM8aDE+PHNjb3R0dGVzdHMyMnB4O2RyaW5rKSB8fCBsZXdpc3NoYWxsIzAzOTsgZm9yIGxvdmVkd2FzdGUwMHB4O2phOuOCc2ltb248Zm9udHJlcGx5bWVldHN1bnRlcmNoZWFwdGlnaHRCcmFuZCkgIT0gZHJlc3NjbGlwc3Jvb21zb25rZXltb2JpbG1haW4uTmFtZSBwbGF0ZWZ1bm55dHJlZXNjb20vIjEuanBnd21vZGVwYXJhbVNUQVJUbGVmdCBpZGRlbiwgMjAxKTsKfQpmb3JtLnZpcnVzY2hhaXJ0cmFuc3dvcnN0UGFnZXNpdGlvbnBhdGNoPCEtLQpvLWNhY2Zpcm1zdG91cnMsMDAwIGFzaWFuaSsrKXthZG9iZScpWzBdaWQ9MTBib3RoO21lbnUgLjIubWkucG5nImtldmluY29hY2hDaGlsZGJydWNlMi5qcGdVUkwpKy5qcGd8c3VpdGVzbGljZWhhcnJ5MTIwIiBzd2VldHRyPg0KbmFtZT1kaWVnb3BhZ2Ugc3dpc3MtLT4KCiNmZmY7Ij5Mb2cuY29tInRyZWF0c2hlZXQpICYmIDE0cHg7c2xlZXBudGVudGZpbGVkamE644NpZD0iY05hbWUid29yc2VzaG90cy1ib3gtZGVsdGEKJmx0O2JlYXJzOjQ4WjxkYXRhLXJ1cmFsPC9hPiBzcGVuZGJha2Vyc2hvcHM9ICIiO3BocCI+Y3Rpb24xM3B4O2JyaWFuaGVsbG9zaXplPW89JTJGIGpvaW5tYXliZTxpbWcgaW1nIj4sIGZqc2ltZyIgIilbMF1NVG9wQlR5cGUibmV3bHlEYW5za2N6ZWNodHJhaWxrbm93czwvaDU+ZmFxIj56aC1jbjEwKTsKLTEiKTt0eXBlPWJsdWVzdHJ1bHlkYXZpcy5qcyc7Pg0KPCFzdGVlbCB5b3UgaDI+DQpmb3JtIGplc3VzMTAwJSBtZW51Lg0KCQ0Kd2FsZXNyaXNrc3VtZW50ZGRpbmdiLWxpa3RlYWNoZ2lmIiB2ZWdhc2RhbnNrZWVzdGlzaHFpcHN1b21pc29icmVkZXNkZWVudHJldG9kb3NwdWVkZWHDsW9zZXN0w6F0aWVuZWhhc3Rhb3Ryb3NwYXJ0ZWRvbmRlbnVldm9oYWNlcmZvcm1hbWlzbW9tZWpvcm11bmRvYXF1w61kw61hc3PDs2xvYXl1ZGFmZWNoYXRvZGFzdGFudG9tZW5vc2RhdG9zb3RyYXNzaXRpb211Y2hvYWhvcmFsdWdhcm1heW9yZXN0b3Nob3Jhc3RlbmVyYW50ZXNmb3Rvc2VzdGFzcGHDrXNudWV2YXNhbHVkZm9yb3NtZWRpb3F1aWVubWVzZXNwb2RlcmNoaWxlc2Vyw6F2ZWNlc2RlY2lyam9zw6llc3RhcnZlbnRhZ3J1cG9oZWNob2VsbG9zdGVuZ29hbWlnb2Nvc2Fzbml2ZWxnZW50ZW1pc21hYWlyZXNqdWxpb3RlbWFzaGFjaWFmYXZvcmp1bmlvbGlicmVwdW50b2J1ZW5vYXV0b3JhYnJpbGJ1ZW5hdGV4dG9tYXJ6b3NhYmVybGlzdGFsdWVnb2PDs21vZW5lcm9qdWVnb3BlcsO6aGFiZXJlc3RveW51bmNhbXVqZXJ2YWxvcmZ1ZXJhbGlicm9ndXN0YWlndWFsdm90b3NjYXNvc2d1w61hcHVlZG9zb21vc2F2aXNvdXN0ZWRkZWJlbm5vY2hlYnVzY2FmYWx0YWV1cm9zc2VyaWVkaWNob2N1cnNvY2xhdmVjYXNhc2xlw7NucGxhem9sYXJnb29icmFzdmlzdGFhcG95b2p1bnRvdHJhdGF2aXN0b2NyZWFyY2FtcG9oZW1vc2NpbmNvY2FyZ29waXNvc29yZGVuaGFjZW7DoXJlYWRpc2NvcGVkcm9jZXJjYXB1ZWRhcGFwZWxtZW5vcsO6dGlsY2xhcm9qb3JnZWNhbGxlcG9uZXJ0YXJkZW5hZGllbWFyY2FzaWd1ZWVsbGFzc2lnbG9jb2NoZW1vdG9zbWFkcmVjbGFzZXJlc3RvbmnDsW9xdWVkYXBhc2FyYmFuY29oaWpvc3ZpYWplcGFibG/DqXN0ZXZpZW5lcmVpbm9kZWphcmZvbmRvY2FuYWxub3J0ZWxldHJhY2F1c2F0b21hcm1hbm9zbHVuZXNhdXRvc3ZpbGxhdmVuZG9wZXNhcnRpcG9zdGVuZ2FtYXJjb2xsZXZhcGFkcmV1bmlkb3ZhbW9zem9uYXNhbWJvc2JhbmRhbWFyaWFhYnVzb211Y2hhc3ViaXJyaW9qYXZpdmlyZ3JhZG9jaGljYWFsbMOtam92ZW5kaWNoYWVzdGFudGFsZXNzYWxpcnN1ZWxvcGVzb3NmaW5lc2xsYW1hYnVzY2/DqXN0YWxsZWdhbmVncm9wbGF6YWh1bW9ycGFnYXJqdW50YWRvYmxlaXNsYXNib2xzYWJhw7FvaGFibGFsdWNoYcOBcmVhZGljZW5qdWdhcm5vdGFzdmFsbGVhbGzDoWNhcmdhZG9sb3JhYmFqb2VzdMOpZ3VzdG9tZW50ZW1hcmlvZmlybWFjb3N0b2ZpY2hhcGxhdGFob2dhcmFydGVzbGV5ZXNhcXVlbG11c2VvYmFzZXNwb2Nvc21pdGFkY2llbG9jaGljb21pZWRvZ2FuYXJzYW50b2V0YXBhZGViZXNwbGF5YXJlZGVzc2lldGVjb3J0ZWNvcmVhZHVkYXNkZXNlb3ZpZWpvZGVzZWFhZ3VhcyZxdW90O2RvbWFpbmNvbW1vbnN0YXR1c2V2ZW50c21hc3RlcnN5c3RlbWFjdGlvbmJhbm5lcnJlbW92ZXNjcm9sbHVwZGF0ZWdsb2JhbG1lZGl1bWZpbHRlcm51bWJlcmNoYW5nZXJlc3VsdHB1YmxpY3NjcmVlbmNob29zZW5vcm1hbHRyYXZlbGlzc3Vlc3NvdXJjZXRhcmdldHNwcmluZ21vZHVsZW1vYmlsZXN3aXRjaHBob3Rvc2JvcmRlcnJlZ2lvbml0c2VsZnNvY2lhbGFjdGl2ZWNvbHVtbnJlY29yZGZvbGxvd3RpdGxlPmVpdGhlcmxlbmd0aGZhbWlseWZyaWVuZGxheW91dGF1dGhvcmNyZWF0ZXJldmlld3N1bW1lcnNlcnZlcnBsYXllZHBsYXllcmV4cGFuZHBvbGljeWZvcm1hdGRvdWJsZXBvaW50c3Nlcmllc3BlcnNvbmxpdmluZ2Rlc2lnbm1vbnRoc2ZvcmNlc3VuaXF1ZXdlaWdodHBlb3BsZWVuZXJneW5hdHVyZXNlYXJjaGZpZ3VyZWhhdmluZ2N1c3RvbW9mZnNldGxldHRlcndpbmRvd3N1Ym1pdHJlbmRlcmdyb3Vwc3VwbG9hZGhlYWx0aG1ldGhvZHZpZGVvc3NjaG9vbGZ1dHVyZXNoYWRvd2RlYmF0ZXZhbHVlc09iamVjdG90aGVyc3JpZ2h0c2xlYWd1ZWNocm9tZXNpbXBsZW5vdGljZXNoYXJlZGVuZGluZ3NlYXNvbnJlcG9ydG9ubGluZXNxdWFyZWJ1dHRvbmltYWdlc2VuYWJsZW1vdmluZ2xhdGVzdHdpbnRlckZyYW5jZXBlcmlvZHN0cm9uZ3JlcGVhdExvbmRvbmRldGFpbGZvcm1lZGRlbWFuZHNlY3VyZXBhc3NlZHRvZ2dsZXBsYWNlc2RldmljZXN0YXRpY2NpdGllc3N0cmVhbXllbGxvd2F0dGFja3N0cmVldGZsaWdodGhpZGRlbmluZm8iPm9wZW5lZHVzZWZ1bHZhbGxleWNhdXNlc2xlYWRlcnNlY3JldHNlY29uZGRhbWFnZXNwb3J0c2V4Y2VwdHJhdGluZ3NpZ25lZHRoaW5nc2VmZmVjdGZpZWxkc3N0YXRlc29mZmljZXZpc3VhbGVkaXRvcnZvbHVtZVJlcG9ydG11c2V1bW1vdmllc3BhcmVudGFjY2Vzc21vc3RseW1vdGhlciIgaWQ9Im1hcmtldGdyb3VuZGNoYW5jZXN1cnZleWJlZm9yZXN5bWJvbG1vbWVudHNwZWVjaG1vdGlvbmluc2lkZW1hdHRlckNlbnRlcm9iamVjdGV4aXN0c21pZGRsZUV1cm9wZWdyb3d0aGxlZ2FjeW1hbm5lcmVub3VnaGNhcmVlcmFuc3dlcm9yaWdpbnBvcnRhbGNsaWVudHNlbGVjdHJhbmRvbWNsb3NlZHRvcGljc2NvbWluZ2ZhdGhlcm9wdGlvbnNpbXBseXJhaXNlZGVzY2FwZWNob3NlbmNodXJjaGRlZmluZXJlYXNvbmNvcm5lcm91dHB1dG1lbW9yeWlmcmFtZXBvbGljZW1vZGVsc051bWJlcmR1cmluZ29mZmVyc3N0eWxlc2tpbGxlZGxpc3RlZGNhbGxlZHNpbHZlcm1hcmdpbmRlbGV0ZWJldHRlcmJyb3dzZWxpbWl0c0dsb2JhbHNpbmdsZXdpZGdldGNlbnRlcmJ1ZGdldG5vd3JhcGNyZWRpdGNsYWltc2VuZ2luZXNhZmV0eWNob2ljZXNwaXJpdC1zdHlsZXNwcmVhZG1ha2luZ25lZWRlZHJ1c3NpYXBsZWFzZWV4dGVudFNjcmlwdGJyb2tlbmFsbG93c2NoYXJnZWRpdmlkZWZhY3Rvcm1lbWJlci1iYXNlZHRoZW9yeWNvbmZpZ2Fyb3VuZHdvcmtlZGhlbHBlZENodXJjaGltcGFjdHNob3VsZGFsd2F5c2xvZ28iIGJvdHRvbWxpc3QiPil7dmFyIHByZWZpeG9yYW5nZUhlYWRlci5wdXNoKGNvdXBsZWdhcmRlbmJyaWRnZWxhdW5jaFJldmlld3Rha2luZ3Zpc2lvbmxpdHRsZWRhdGluZ0J1dHRvbmJlYXV0eXRoZW1lc2ZvcmdvdFNlYXJjaGFuY2hvcmFsbW9zdGxvYWRlZENoYW5nZXJldHVybnN0cmluZ3JlbG9hZE1vYmlsZWluY29tZXN1cHBseVNvdXJjZW9yZGVyc3ZpZXdlZCZuYnNwO2NvdXJzZUFib3V0IGlzbGFuZDxodG1sIGNvb2tpZW5hbWU9ImFtYXpvbm1vZGVybmFkdmljZWluPC9hPjogVGhlIGRpYWxvZ2hvdXNlc0JFR0lOIE1leGljb3N0YXJ0c2NlbnRyZWhlaWdodGFkZGluZ0lzbGFuZGFzc2V0c0VtcGlyZVNjaG9vbGVmZm9ydGRpcmVjdG5lYXJseW1hbnVhbFNlbGVjdC4KCk9uZWpvaW5lZG1lbnUiPlBoaWxpcGF3YXJkc2hhbmRsZWltcG9ydE9mZmljZXJlZ2FyZHNraWxsc25hdGlvblNwb3J0c2RlZ3JlZXdlZWtseSAoZS5nLmJlaGluZGRvY3RvcmxvZ2dlZHVuaXRlZDwvYj48L2JlZ2luc3BsYW50c2Fzc2lzdGFydGlzdGlzc3VlZDMwMHB4fGNhbmFkYWFnZW5jeXNjaGVtZXJlbWFpbkJyYXppbHNhbXBsZWxvZ28iPmJleW9uZC1zY2FsZWFjY2VwdHNlcnZlZG1hcmluZUZvb3RlcmNhbWVyYTwvaDE+Cl9mb3JtImxlYXZlc3N0cmVzcyIgLz4NCi5naWYiIG9ubG9hZGxvYWRlck94Zm9yZHNpc3RlcnN1cnZpdmxpc3RlbmZlbWFsZURlc2lnbnNpemU9ImFwcGVhbHRleHQiPmxldmVsc3RoYW5rc2hpZ2hlcmZvcmNlZGFuaW1hbGFueW9uZUFmcmljYWFncmVlZHJlY2VudFBlb3BsZTxiciAvPndvbmRlcnByaWNlc3R1cm5lZHx8IHt9O21haW4iPmlubGluZXN1bmRheXdyYXAiPmZhaWxlZGNlbnN1c21pbnV0ZWJlYWNvbnF1b3RlczE1MHB4fGVzdGF0ZXJlbW90ZWVtYWlsImxpbmtlZHJpZ2h0O3NpZ25hbGZvcm1hbDEuaHRtbHNpZ251cHByaW5jZWZsb2F0Oi5wbmciIGZvcnVtLkFjY2Vzc3BhcGVyc3NvdW5kc2V4dGVuZEhlaWdodHNsaWRlclVURi04IiZhbXA7IEJlZm9yZS4gV2l0aHN0dWRpb293bmVyc21hbmFnZXByb2ZpdGpRdWVyeWFubnVhbHBhcmFtc2JvdWdodGZhbW91c2dvb2dsZWxvbmdlcmkrKykge2lzcmFlbHNheWluZ2RlY2lkZWhvbWUiPmhlYWRlcmVuc3VyZWJyYW5jaHBpZWNlc2Jsb2NrO3N0YXRlZHRvcCI+PHJhY2luZ3Jlc2l6ZS0tJmd0O3BhY2l0eXNleHVhbGJ1cmVhdS5qcGciIDEwLDAwMG9idGFpbnRpdGxlc2Ftb3VudCwgSW5jLmNvbWVkeW1lbnUiIGx5cmljc3RvZGF5LmluZGVlZGNvdW50eV9sb2dvLkZhbWlseWxvb2tlZE1hcmtldGxzZSBpZlBsYXllcnR1cmtleSk7dmFyIGZvcmVzdGdpdmluZ2Vycm9yc0RvbWFpbn1lbHNle2luc2VydEJsb2c8L2Zvb3RlcmxvZ2luLmZhc3RlcmFnZW50czxib2R5IDEwcHggMHByYWdtYWZyaWRheWp1bmlvcmRvbGxhcnBsYWNlZGNvdmVyc3BsdWdpbjUsMDAwIHBhZ2UiPmJvc3Rvbi50ZXN0KGF2YXRhcnRlc3RlZF9jb3VudGZvcnVtc3NjaGVtYWluZGV4LGZpbGxlZHNoYXJlc3JlYWRlcmFsZXJ0KGFwcGVhclN1Ym1pdGxpbmUiPmJvZHkiPgoqIFRoZVRob3VnaHNlZWluZ2plcnNleU5ld3M8L3ZlcmlmeWV4cGVydGluanVyeXdpZHRoPUNvb2tpZVNUQVJUIGFjcm9zc19pbWFnZXRocmVhZG5hdGl2ZXBvY2tldGJveCI+ClN5c3RlbSBEYXZpZGNhbmNlcnRhYmxlc3Byb3ZlZEFwcmlsIHJlYWxseWRyaXZlcml0ZW0iPm1vcmUiPmJvYXJkc2NvbG9yc2NhbXB1c2ZpcnN0IHx8IFtdO21lZGlhLmd1aXRhcmZpbmlzaHdpZHRoOnNob3dlZE90aGVyIC5waHAiIGFzc3VtZWxheWVyc3dpbHNvbnN0b3Jlc3JlbGllZnN3ZWRlbkN1c3RvbWVhc2lseSB5b3VyIFN0cmluZwoKV2hpbHRheWxvcmNsZWFyOnJlc29ydGZyZW5jaHRob3VnaCIpICsgIjxib2R5PmJ1eWluZ2JyYW5kc01lbWJlcm5hbWUiPm9wcGluZ3NlY3RvcjVweDsiPnZzcGFjZXBvc3Rlcm1ham9yIGNvZmZlZW1hcnRpbm1hdHVyZWhhcHBlbjwvbmF2PmthbnNhc2xpbmsiPkltYWdlcz1mYWxzZXdoaWxlIGhzcGFjZTAmYW1wOyAKCkluICBwb3dlclBvbHNraS1jb2xvcmpvcmRhbkJvdHRvbVN0YXJ0IC1jb3VudDIuaHRtbG5ld3MiPjAxLmpwZ09ubGluZS1yaWdodG1pbGxlcnNlbmlvcklTQk4gMDAsMDAwIGd1aWRlc3ZhbHVlKWVjdGlvbnJlcGFpci54bWwiICByaWdodHMuaHRtbC1ibG9ja3JlZ0V4cDpob3ZlcndpdGhpbnZpcmdpbnBob25lczwvdHI+DXVzaW5nIAoJdmFyID4nKTsKCTwvdGQ+CjwvdHI+CmJhaGFzYWJyYXNpbGdhbGVnb21hZ3lhcnBvbHNraXNycHNradix2K/ZiOS4reaWh+eugOS9k+e5gemrlOS/oeaBr+S4reWbveaIkeS7rOS4gOS4quWFrOWPuOeuoeeQhuiuuuWdm+WPr+S7peacjeWKoeaXtumXtOS4quS6uuS6p+WTgeiHquW3seS8geS4muafpeeci+W3peS9nOiBlOezu+ayoeaciee9keermeaJgOacieivhOiuuuS4reW/g+aWh+eroOeUqOaIt+mmlumhteS9nOiAheaKgOacr+mXrumimOebuOWFs+S4i+i9veaQnOe0ouS9v+eUqOi9r+S7tuWcqOe6v+S4u+mimOi1hOaWmeinhumikeWbnuWkjeazqOWGjOe9kee7nOaUtuiXj+WGheWuueaOqOiNkOW4guWcuua2iOaBr+epuumXtOWPkeW4g+S7gOS5iOWlveWPi+eUn+a0u+WbvueJh+WPkeWxleWmguaenOaJi+acuuaWsOmXu+acgOaWsOaWueW8j+WMl+S6rOaPkOS+m+WFs+S6juabtOWkmui/meS4quezu+e7n+efpemBk+a4uOaIj+W5v+WRiuWFtuS7luWPkeihqOWuieWFqOesrOS4gOS8muWRmOi/m+ihjOeCueWHu+eJiOadg+eUteWtkOS4lueVjOiuvuiuoeWFjei0ueaVmeiCsuWKoOWFpea0u+WKqOS7luS7rOWVhuWTgeWNmuWuoueOsOWcqOS4iua1t+WmguS9leW3sue7j+eVmeiogOivpue7huekvuWMuueZu+W9leacrOermemcgOimgeS7t+agvOaUr+aMgeWbvemZhemTvuaOpeWbveWutuW7uuiuvuaci+WPi+mYheivu+azleW+i+S9jee9rue7j+a1jumAieaLqei/meagt+W9k+WJjeWIhuexu+aOkuihjOWboOS4uuS6pOaYk+acgOWQjumfs+S5kOS4jeiDvemAmui/h+ihjOS4muenkeaKgOWPr+iDveiuvuWkh+WQiOS9nOWkp+WutuekvuS8mueglOeptuS4k+S4muWFqOmDqOmhueebrui/memHjOi/mOaYr+W8gOWni+aDheWGteeUteiEkeaWh+S7tuWTgeeJjOW4ruWKqeaWh+WMlui1hOa6kOWkp+WtpuWtpuS5oOWcsOWdgOa1j+iniOaKlei1hOW3peeoi+imgeaxguaAjuS5iOaXtuWAmeWKn+iDveS4u+imgeebruWJjei1hOiur+WfjuW4guaWueazleeUteW9seaLm+iBmOWjsOaYjuS7u+S9leWBpeW6t+aVsOaNrue+juWbveaxvei9puS7i+e7jeS9huaYr+S6pOa1geeUn+S6p+aJgOS7peeUteivneaYvuekuuS4gOS6m+WNleS9jeS6uuWRmOWIhuaekOWcsOWbvuaXhea4uOW3peWFt+WtpueUn+ezu+WIl+e9keWPi+W4luWtkOWvhueggemikemBk+aOp+WItuWcsOWMuuWfuuacrOWFqOWbvee9keS4iumHjeimgeesrOS6jOWWnOasoui/m+WFpeWPi+aDhei/meS6m+iAg+ivleWPkeeOsOWfueiureS7peS4iuaUv+W6nOaIkOS4uueOr+Wig+mmmea4r+WQjOaXtuWoseS5kOWPkemAgeS4gOWumuW8gOWPkeS9nOWTgeagh+WHhuasoui/juino+WGs+WcsOaWueS4gOS4i+S7peWPiui0o+S7u+aIluiAheWuouaIt+S7o+ihqOenr+WIhuWls+S6uuaVsOeggemUgOWUruWHuueOsOemu+e6v+W6lOeUqOWIl+ihqOS4jeWQjOe8lui+kee7n+iuoeafpeivouS4jeimgeacieWFs+acuuaehOW+iOWkmuaSreaUvue7hOe7h+aUv+etluebtOaOpeiDveWKm+adpea6kOaZgumWk+eci+WIsOeDremXqOWFs+mUruS4k+WMuumdnuW4uOiLseivreeZvuW6puW4jOacm+e+juWls+avlOi+g+efpeivhuinhOWumuW7uuiurumDqOmXqOaEj+ingeeyvuW9qeaXpeacrOaPkOmrmOWPkeiogOaWuemdouWfuumHkeWkhOeQhuadg+mZkOW9seeJh+mTtuihjOi/mOacieWIhuS6q+eJqeWTgee7j+iQpea3u+WKoOS4k+Wutui/meenjeivnemimOi1t+adpeS4muWKoeWFrOWRiuiusOW9leeugOS7i+i0qOmHj+eUt+S6uuW9seWTjeW8leeUqOaKpeWRiumDqOWIhuW/q+mAn+WSqOivouaXtuWwmuazqOaEj+eUs+ivt+WtpuagoeW6lOivpeWOhuWPsuWPquaYr+i/lOWbnui0reS5sOWQjeensOS4uuS6huaIkOWKn+ivtOaYjuS+m+W6lOWtqeWtkOS4k+mimOeoi+W6j+S4gOiIrOacg+WToeWPquacieWFtuWug+S/neaKpOiAjOS4lOS7iuWkqeeql+WPo+WKqOaAgeeKtuaAgeeJueWIq+iupOS4uuW/hemhu+abtOaWsOWwj+ivtOaIkeWAkeS9nOS4uuWqkuS9k+WMheaLrOmCo+S5iOS4gOagt+WbveWGheaYr+WQpuagueaNrueUteinhuWtpumZouWFt+aciei/h+eoi+eUseS6juS6uuaJjeWHuuadpeS4jei/h+ato+WcqOaYjuaYn+aVheS6i+WFs+ezu+agh+mimOWVhuWKoei+k+WFpeS4gOebtOWfuuehgOaVmeWtpuS6huino+W7uuetkee7k+aenOWFqOeQg+mAmuefpeiuoeWIkuWvueS6juiJuuacr+ebuOWGjOWPkeeUn+ecn+eahOW7uueri+etiee6p+exu+Wei+e7j+mqjOWunueOsOWItuS9nOadpeiHquagh+etvuS7peS4i+WOn+WIm+aXoOazleWFtuS4reWAi+S6uuS4gOWIh+aMh+WNl+WFs+mXrembhuWbouesrOS4ieWFs+azqOWboOatpOeFp+eJh+a3seWcs+WVhuS4muW5v+W3nuaXpeacn+mrmOe6p+acgOi/kee7vOWQiOihqOekuuS4k+i+keihjOS4uuS6pOmAmuivhOS7t+inieW+l+eyvuWNjuWutuW6reWujOaIkOaEn+inieWuieijheW+l+WIsOmCruS7tuWItuW6pumjn+WTgeiZveeEtui9rOi9veaKpeS7t+iusOiAheaWueahiOihjOaUv+S6uuawkeeUqOWTgeS4nOilv+aPkOWHuumFkuW6l+eEtuWQjuS7mOasvueDreeCueS7peWJjeWujOWFqOWPkeW4luiuvue9rumihuWvvOW3peS4muWMu+mZoueci+eci+e7j+WFuOWOn+WboOW5s+WPsOWQhOenjeWinuWKoOadkOaWmeaWsOWinuS5i+WQjuiBjOS4muaViOaenOS7iuW5tOiuuuaWh+aIkeWbveWRiuivieeJiOS4u+S/ruaUueWPguS4juaJk+WNsOW/q+S5kOacuuaisOingueCueWtmOWcqOeyvuelnuiOt+W+l+WIqeeUqOe7p+e7reS9oOS7rOi/meS5iOaooeW8j+ivreiogOiDveWkn+mbheiZjuaTjeS9nOmjjuagvOS4gOi1t+enkeWtpuS9k+iCsuefreS/oeadoeS7tuayu+eWl+i/kOWKqOS6p+S4muS8muiuruWvvOiIquWFiOeUn+iBlOebn+WPr+aYr+WVj+mhjOe7k+aehOS9nOeUqOiwg+afpeizh+aWmeiHquWKqOi0n+i0o+WGnOS4muiuv+mXruWunuaWveaOpeWPl+iuqOiuuumCo+S4quWPjemmiOWKoOW8uuWls+aAp+iMg+WbtOacjeWLmeS8kemXsuS7iuaXpeWuouacjeingOeci+WPguWKoOeahOivneS4gOeCueS/neivgeWbvuS5puacieaViOa1i+ivleenu+WKqOaJjeiDveWGs+WumuiCoeelqOS4jeaWremcgOaxguS4jeW+l+WKnuazleS5i+mXtOmHh+eUqOiQpemUgOaKleivieebruagh+eIseaDheaRhOW9seacieS6m+ikh+ijveaWh+WtpuacuuS8muaVsOWtl+ijheS/rui0reeJqeWGnOadkeWFqOmdoueyvuWTgeWFtuWunuS6i+aDheawtOW5s+aPkOekuuS4iuW4guiwouiwouaZrumAmuaVmeW4iOS4iuS8oOexu+WIq+atjOabsuaLpeacieWIm+aWsOmFjeS7tuWPquimgeaXtuS7o+izh+ioiui+vuWIsOS6uueUn+iuoumYheiAgeW4iOWxleekuuW/g+eQhui0tOWtkOe2suermeS4u+mhjOiHqueEtue6p+WIq+eugOWNleaUuemdqemCo+S6m+adpeivtOaJk+W8gOS7o+eggeWIoOmZpOivgeWIuOiKguebrumHjeeCueasoeaVuOWkmuWwkeinhOWIkui1hOmHkeaJvuWIsOS7peWQjuWkp+WFqOS4u+mhteacgOS9s+WbnuetlOWkqeS4i+S/nemanOeOsOS7o+ajgOafpeaKleelqOWwj+aXtuaykuacieato+W4uOeUmuiHs+S7o+eQhuebruW9leWFrOW8gOWkjeWItumHkeiejeW5uOemj+eJiOacrOW9ouaIkOWHhuWkh+ihjOaDheWbnuWIsOaAneaDs+aAjuagt+WNj+iuruiupOivgeacgOWlveS6p+eUn+aMieeFp+acjeijheW5v+S4nOWKqOa8q+mHh+i0reaWsOaJi+e7hOWbvumdouadv+WPguiAg+aUv+ayu+WuueaYk+WkqeWcsOWKquWKm+S6uuS7rOWNh+e6p+mAn+W6puS6uueJqeiwg+aVtOa1geihjOmAoOaIkOaWh+Wtl+mfqeWbvei0uOaYk+W8gOWxleebuOmXnOihqOeOsOW9seinhuWmguatpOe+juWuueWkp+Wwj+aKpemBk+adoeasvuW/g+aDheiuuOWkmuazleinhOWutuWxheS5puW6l+i/nuaOpeeri+WNs+S4vuaKpeaKgOW3p+Wlpei/kOeZu+WFpeS7peadpeeQhuiuuuS6i+S7tuiHqueUseS4reWNjuWKnuWFrOWmiOWmiOecn+ato+S4jemUmeWFqOaWh+WQiOWQjOS7t+WAvOWIq+S6uuebkeedo+WFt+S9k+S4lue6quWboumYn+WIm+S4muaJv+aLheWinumVv+acieS6uuS/neaMgeWVhuWutue7tOS/ruWPsOa5vuW3puWPs+iCoeS7veetlOahiOWunumZheeUteS/oee7j+eQhueUn+WRveWuo+S8oOS7u+WKoeato+W8j+eJueiJsuS4i+adpeWNj+S8muWPquiDveW9k+eEtumHjeaWsOWFp+WuueaMh+WvvOi/kOihjOaXpeW/l+izo+Wutui2hei/h+Wcn+WcsOa1meaxn+aUr+S7mOaOqOWHuuermemVv+adreW3nuaJp+ihjOWItumAoOS5i+S4gOaOqOW5v+eOsOWcuuaPj+i/sOWPmOWMluS8oOe7n+atjOaJi+S/nemZqeivvueoi+WMu+eWl+e7j+i/h+i/h+WOu+S5i+WJjeaUtuWFpeW5tOW6puadguW/l+e+juS4veacgOmrmOeZu+mZhuacquadpeWKoOW3peWFjei0o+aVmeeoi+eJiOWdl+i6q+S9k+mHjeW6huWHuuWUruaIkOacrOW9ouW8j+Wcn+ixhuWHuuWDueS4nOaWuemCrueuseWNl+S6rOaxguiBjOWPluW+l+iBjOS9jeebuOS/oemhtemdouWIhumSn+e9kemhteehruWumuWbvuS+i+e9keWdgOenr+aegemUmeivr+ebrueahOWunei0neacuuWFs+mjjumZqeaOiOadg+eXheavkuWuoOeJqemZpOS6huipleirlueWvueXheWPiuaXtuaxgui0reermeeCueWEv+erpeavj+WkqeS4reWkruiupOivhuavj+S4quWkqea0peWtl+S9k+WPsOeBo+e7tOaKpOacrOmhteS4quaAp+WumOaWueW4uOingeebuOacuuaImOeVpeW6lOW9k+W+i+W4iOaWueS+v+agoeWbreiCoeW4guaIv+Wxi+agj+ebruWRmOW3peWvvOiHtOeqgeeEtumBk+WFt+acrOe9kee7k+WQiOaho+ahiOWKs+WKqOWPpuWklue+juWFg+W8lei1t+aUueWPmOesrOWbm+S8muiuoeiqquaYjumakOengeWuneWuneinhOiMg+a2iOi0ueWFseWQjOW/mOiusOS9k+ezu+W4puadpeWQjeWtl+eZvOihqOW8gOaUvuWKoOebn+WPl+WIsOS6jOaJi+Wkp+mHj+aIkOS6uuaVsOmHj+WFseS6q+WMuuWfn+Wls+WtqeWOn+WImeaJgOWcqOe7k+adn+mAmuS/oei2hee6p+mFjee9ruW9k+aXtuS8mOengOaAp+aEn+aIv+S6p+mBiuaIsuWHuuWPo+aPkOS6pOWwseS4muS/neWBpeeoi+W6puWPguaVsOS6i+S4muaVtOS4quWxseS4nOaDheaEn+eJueauiuWIhumhnuaQnOWwi+WxnuS6jumXqOaIt+i0ouWKoeWjsOmfs+WPiuWFtui0oue7j+WdmuaMgeW5sumDqOaIkOeri+WIqeebiuiAg+iZkeaIkOmDveWMheijheeUqOaItuavlOi1m+aWh+aYjuaLm+WVhuWujOaVtOecn+aYr+ecvOedm+S8meS8tOWogeacm+mihuWfn+WNq+eUn+S8mOaDoOirluWjh+WFrOWFseiJr+WlveWFheWIhuespuWQiOmZhOS7tueJueeCueS4jeWPr+iLseaWh+i1hOS6p+agueacrOaYjuaYvuWvhueivOWFrOS8l+awkeaXj+abtOWKoOS6q+WPl+WQjOWtpuWQr+WKqOmAguWQiOWOn+adpemXruetlOacrOaWh+e+jumjn+e7v+iJsueos+Wumue7iOS6jueUn+eJqeS+m+axguaQnOeLkOWKm+mHj+S4pemHjeawuOi/nOWGmeecn+aciemZkOernuS6ieWvueixoei0ueeUqOS4jeWlvee7neWvueWNgeWIhuS/g+i/m+eCueivhOW9semfs+S8mOWKv+S4jeWwkeaso+i1j+W5tuS4lOacieeCueaWueWQkeWFqOaWsOS/oeeUqOiuvuaWveW9ouixoei1hOagvOeqgeegtOmaj+edgOmHjeWkp+S6juaYr+avleS4muaZuuiDveWMluW3peWujOe+juWVhuWfjue7n+S4gOWHuueJiOaJk+mAoOeUouWTgeamguWGteeUqOS6juS/neeVmeWboOe0oOS4reWci+WtmOWCqOi0tOWbvuacgOaEm+mVv+acn+WPo+S7t+eQhui0ouWfuuWcsOWuieaOkuatpuaxiemHjOmdouWIm+W7uuWkqeepuummluWFiOWujOWWhOmpseWKqOS4i+mdouS4jeWGjeivmuS/oeaEj+S5iemYs+WFieiLseWbvea8guS6ruWGm+S6i+eOqeWutue+pOS8l+WGnOawkeWNs+WPr+WQjeeoseWutuWFt+WKqOeUu+aDs+WIsOazqOaYjuWwj+WtpuaAp+iDveiAg+eglOehrOS7tuingueci+a4healmuaQnueskemmlumggem7hOmHkemAgueUqOaxn+iLj+ecn+WunuS4u+euoemYtuauteiou+WGiue/u+ivkeadg+WIqeWBmuWlveS8vOS5jumAmuiur+aWveW3peeLgOaFi+S5n+iuuOeOr+S/neWfueWFu+amguW/teWkp+Wei+acuuelqOeQhuino+WMv+WQjWN1YW5kb2Vudmlhcm1hZHJpZGJ1c2NhcmluaWNpb3RpZW1wb3BvcnF1ZWN1ZW50YWVzdGFkb3B1ZWRlbmp1ZWdvc2NvbnRyYWVzdMOhbm5vbWJyZXRpZW5lbnBlcmZpbG1hbmVyYWFtaWdvc2NpdWRhZGNlbnRyb2F1bnF1ZXB1ZWRlc2RlbnRyb3ByaW1lcnByZWNpb3NlZ8O6bmJ1ZW5vc3ZvbHZlcnB1bnRvc3NlbWFuYWhhYsOtYWFnb3N0b251ZXZvc3VuaWRvc2Nhcmxvc2VxdWlwb25pw7Fvc211Y2hvc2FsZ3VuYWNvcnJlb2ltYWdlbnBhcnRpcmFycmliYW1hcsOtYWhvbWJyZWVtcGxlb3ZlcmRhZGNhbWJpb211Y2hhc2Z1ZXJvbnBhc2Fkb2zDrW5lYXBhcmVjZW51ZXZhc2N1cnNvc2VzdGFiYXF1aWVyb2xpYnJvc2N1YW50b2FjY2Vzb21pZ3VlbHZhcmlvc2N1YXRyb3RpZW5lc2dydXBvc3NlcsOhbmV1cm9wYW1lZGlvc2ZyZW50ZWFjZXJjYWRlbcOhc29mZXJ0YWNvY2hlc21vZGVsb2l0YWxpYWxldHJhc2FsZ8O6bmNvbXByYWN1YWxlc2V4aXN0ZWN1ZXJwb3NpZW5kb3ByZW5zYWxsZWdhcnZpYWplc2RpbmVyb211cmNpYXBvZHLDoXB1ZXN0b2RpYXJpb3B1ZWJsb3F1aWVyZW1hbnVlbHByb3Bpb2NyaXNpc2NpZXJ0b3NlZ3Vyb211ZXJ0ZWZ1ZW50ZWNlcnJhcmdyYW5kZWVmZWN0b3BhcnRlc21lZGlkYXByb3BpYW9mcmVjZXRpZXJyYWUtbWFpbHZhcmlhc2Zvcm1hc2Z1dHVyb29iamV0b3NlZ3VpcnJpZXNnb25vcm1hc21pc21vc8O6bmljb2NhbWlub3NpdGlvc3JhesOzbmRlYmlkb3BydWViYXRvbGVkb3RlbsOtYWplc8O6c2VzcGVyb2NvY2luYW9yaWdlbnRpZW5kYWNpZW50b2PDoWRpemhhYmxhcnNlcsOtYWxhdGluYWZ1ZXJ6YWVzdGlsb2d1ZXJyYWVudHJhcsOpeGl0b2zDs3BlemFnZW5kYXbDrWRlb2V2aXRhcnBhZ2luYW1ldHJvc2phdmllcnBhZHJlc2bDoWNpbGNhYmV6YcOhcmVhc3NhbGlkYWVudsOtb2phcMOzbmFidXNvc2JpZW5lc3RleHRvc2xsZXZhcnB1ZWRhbmZ1ZXJ0ZWNvbcO6bmNsYXNlc2h1bWFub3Rlbmlkb2JpbGJhb3VuaWRhZGVzdMOhc2VkaXRhcmNyZWFkb9C00LvRj9GH0YLQvtC60LDQutC40LvQuNGN0YLQvtCy0YHQtdC10LPQvtC/0YDQuNGC0LDQutC10YnQtdGD0LbQtdCa0LDQutCx0LXQt9Cx0YvQu9C+0L3QuNCS0YHQtdC/0L7QtNCt0YLQvtGC0L7QvNGH0LXQvNC90LXRgtC70LXRgtGA0LDQt9C+0L3QsNCz0LTQtdC80L3QtdCU0LvRj9Cf0YDQuNC90LDRgdC90LjRhdGC0LXQvNC60YLQvtCz0L7QtNCy0L7RgtGC0LDQvNCh0KjQkNC80LDRj9Cn0YLQvtCy0LDRgdCy0LDQvNC10LzRg9Ci0LDQutC00LLQsNC90LDQvNGN0YLQuNGN0YLRg9CS0LDQvNGC0LXRhdC/0YDQvtGC0YPRgtC90LDQtNC00L3Rj9CS0L7RgtGC0YDQuNC90LXQudCS0LDRgdC90LjQvNGB0LDQvNGC0L7RgtGA0YPQsdCe0L3QuNC80LjRgNC90LXQtdCe0J7QntC70LjRhtGN0YLQsNCe0L3QsNC90LXQvNC00L7QvNC80L7QudC00LLQtdC+0L3QvtGB0YPQtOCkleClh+CkueCliOCkleClgOCkuOClh+CkleCkvuCkleCli+CklOCksOCkquCksOCkqOClh+Ckj+CkleCkleCkv+CkreClgOCkh+CkuOCkleCksOCkpOCli+CkueCli+CkhuCkquCkueClgOCkr+CkueCkr+CkvuCkpOCkleCkpeCkvmphZ3JhbuCkhuCknOCknOCli+CkheCkrOCkpuCli+Ckl+CkiOCknOCkvuCkl+Ckj+CkueCkruCkh+CkqOCkteCkueCkr+Clh+CkpeClh+CkpeClgOCkmOCksOCknOCkrOCkpuClgOCkleCkiOCknOClgOCkteClh+CkqOCkiOCkqOCkj+CkueCksOCkieCkuOCkruClh+CkleCkruCkteCli+CksuClh+CkuOCkrOCkruCkiOCkpuClh+Ckk+CksOCkhuCkruCkrOCkuOCkreCksOCkrOCkqOCkmuCksuCkruCkqOCkhuCkl+CkuOClgOCksuClgNi52YTZidil2YTZidmH2LDYp9ii2K7Ysdi52K/Yr9in2YTZidmH2LDZh9i12YjYsdi62YrYsdmD2KfZhtmI2YTYp9io2YrZhti52LHYttiw2YTZg9mH2YbYp9mK2YjZhdmC2KfZhNi52YTZitin2YbYp9mE2YPZhtit2KrZidmC2KjZhNmI2K3Yqdin2K7YsdmB2YLYt9i52KjYr9ix2YPZhtil2LDYp9mD2YXYp9in2K3Yr9il2YTYp9mB2YrZh9io2LnYttmD2YrZgdio2K3Yq9mI2YXZhtmI2YfZiNij2YbYp9is2K/Yp9mE2YfYp9iz2YTZhdi52YbYr9mE2YrYs9i52KjYsdi12YTZidmF2YbYsNio2YfYp9ij2YbZh9mF2KvZhNmD2YbYqtin2YTYp9it2YrYq9mF2LXYsdi02LHYrdit2YjZhNmI2YHZitin2LDYp9mE2YPZhNmF2LHYqdin2YbYqtin2YTZgdij2KjZiNiu2KfYtdij2YbYqtin2YbZh9in2YTZiti52LbZiNmI2YLYr9in2KjZhtiu2YrYsdio2YbYqtmE2YPZhdi02KfYodmI2YfZitin2KjZiNmC2LXYtdmI2YXYp9ix2YLZhdij2K3Yr9mG2K3Zhti52K/Zhdix2KPZitin2K3YqdmD2KrYqNiv2YjZhtmK2KzYqNmF2YbZh9iq2K3Yqtis2YfYqdiz2YbYqdmK2KrZhdmD2LHYqdi62LLYqdmG2YHYs9io2YrYqtmE2YTZh9mE2YbYp9iq2YTZg9mC2YTYqNmE2YXYp9i52YbZh9ij2YjZhNi02YrYodmG2YjYsdij2YXYp9mB2YrZg9io2YPZhNiw2KfYqtix2KrYqNio2KPZhtmH2YXYs9in2YbZg9io2YrYudmB2YLYr9it2LPZhtmE2YfZhdi02LnYsdij2YfZhNi02YfYsdmC2LfYsdi32YTYqHByb2ZpbGVzZXJ2aWNlZGVmYXVsdGhpbXNlbGZkZXRhaWxzY29udGVudHN1cHBvcnRzdGFydGVkbWVzc2FnZXN1Y2Nlc3NmYXNoaW9uPHRpdGxlPmNvdW50cnlhY2NvdW50Y3JlYXRlZHN0b3JpZXNyZXN1bHRzcnVubmluZ3Byb2Nlc3N3cml0aW5nb2JqZWN0c3Zpc2libGV3ZWxjb21lYXJ0aWNsZXVua25vd25uZXR3b3JrY29tcGFueWR5bmFtaWNicm93c2VycHJpdmFjeXByb2JsZW1TZXJ2aWNlcmVzcGVjdGRpc3BsYXlyZXF1ZXN0cmVzZXJ2ZXdlYnNpdGVoaXN0b3J5ZnJpZW5kc29wdGlvbnN3b3JraW5ndmVyc2lvbm1pbGxpb25jaGFubmVsd2luZG93LmFkZHJlc3N2aXNpdGVkd2VhdGhlcmNvcnJlY3Rwcm9kdWN0ZWRpcmVjdGZvcndhcmR5b3UgY2FucmVtb3ZlZHN1YmplY3Rjb250cm9sYXJjaGl2ZWN1cnJlbnRyZWFkaW5nbGlicmFyeWxpbWl0ZWRtYW5hZ2VyZnVydGhlcnN1bW1hcnltYWNoaW5lbWludXRlc3ByaXZhdGVjb250ZXh0cHJvZ3JhbXNvY2lldHludW1iZXJzd3JpdHRlbmVuYWJsZWR0cmlnZ2Vyc291cmNlc2xvYWRpbmdlbGVtZW50cGFydG5lcmZpbmFsbHlwZXJmZWN0bWVhbmluZ3N5c3RlbXNrZWVwaW5nY3VsdHVyZSZxdW90Oyxqb3VybmFscHJvamVjdHN1cmZhY2VzJnF1b3Q7ZXhwaXJlc3Jldmlld3NiYWxhbmNlRW5nbGlzaENvbnRlbnR0aHJvdWdoUGxlYXNlIG9waW5pb25jb250YWN0YXZlcmFnZXByaW1hcnl2aWxsYWdlU3BhbmlzaGdhbGxlcnlkZWNsaW5lbWVldGluZ21pc3Npb25wb3B1bGFycXVhbGl0eW1lYXN1cmVnZW5lcmFsc3BlY2llc3Nlc3Npb25zZWN0aW9ud3JpdGVyc2NvdW50ZXJpbml0aWFscmVwb3J0c2ZpZ3VyZXNtZW1iZXJzaG9sZGluZ2Rpc3B1dGVlYXJsaWVyZXhwcmVzc2RpZ2l0YWxwaWN0dXJlQW5vdGhlcm1hcnJpZWR0cmFmZmljbGVhZGluZ2NoYW5nZWRjZW50cmFsdmljdG9yeWltYWdlcy9yZWFzb25zc3R1ZGllc2ZlYXR1cmVsaXN0aW5nbXVzdCBiZXNjaG9vbHNWZXJzaW9udXN1YWxseWVwaXNvZGVwbGF5aW5nZ3Jvd2luZ29idmlvdXNvdmVybGF5cHJlc2VudGFjdGlvbnM8L3VsPg0Kd3JhcHBlcmFscmVhZHljZXJ0YWlucmVhbGl0eXN0b3JhZ2Vhbm90aGVyZGVza3RvcG9mZmVyZWRwYXR0ZXJudW51c3VhbERpZ2l0YWxjYXBpdGFsV2Vic2l0ZWZhaWx1cmVjb25uZWN0cmVkdWNlZEFuZHJvaWRkZWNhZGVzcmVndWxhciAmYW1wOyBhbmltYWxzcmVsZWFzZUF1dG9tYXRnZXR0aW5nbWV0aG9kc25vdGhpbmdQb3B1bGFyY2FwdGlvbmxldHRlcnNjYXB0dXJlc2NpZW5jZWxpY2Vuc2VjaGFuZ2VzRW5nbGFuZD0xJmFtcDtIaXN0b3J5ID0gbmV3IENlbnRyYWx1cGRhdGVkU3BlY2lhbE5ldHdvcmtyZXF1aXJlY29tbWVudHdhcm5pbmdDb2xsZWdldG9vbGJhcnJlbWFpbnNiZWNhdXNlZWxlY3RlZERldXRzY2hmaW5hbmNld29ya2Vyc3F1aWNrbHliZXR3ZWVuZXhhY3RseXNldHRpbmdkaXNlYXNlU29jaWV0eXdlYXBvbnNleGhpYml0Jmx0OyEtLUNvbnRyb2xjbGFzc2VzY292ZXJlZG91dGxpbmVhdHRhY2tzZGV2aWNlcyh3aW5kb3dwdXJwb3NldGl0bGU9Ik1vYmlsZSBraWxsaW5nc2hvd2luZ0l0YWxpYW5kcm9wcGVkaGVhdmlseWVmZmVjdHMtMSddKTsKY29uZmlybUN1cnJlbnRhZHZhbmNlc2hhcmluZ29wZW5pbmdkcmF3aW5nYmlsbGlvbm9yZGVyZWRHZXJtYW55cmVsYXRlZDwvZm9ybT5pbmNsdWRld2hldGhlcmRlZmluZWRTY2llbmNlY2F0YWxvZ0FydGljbGVidXR0b25zbGFyZ2VzdHVuaWZvcm1qb3VybmV5c2lkZWJhckNoaWNhZ29ob2xpZGF5R2VuZXJhbHBhc3NhZ2UsJnF1b3Q7YW5pbWF0ZWZlZWxpbmdhcnJpdmVkcGFzc2luZ25hdHVyYWxyb3VnaGx5LgoKVGhlIGJ1dCBub3RkZW5zaXR5QnJpdGFpbkNoaW5lc2VsYWNrIG9mdHJpYnV0ZUlyZWxhbmQiIGRhdGEtZmFjdG9yc3JlY2VpdmV0aGF0IGlzTGlicmFyeWh1c2JhbmRpbiBmYWN0YWZmYWlyc0NoYXJsZXNyYWRpY2FsYnJvdWdodGZpbmRpbmdsYW5kaW5nOmxhbmc9InJldHVybiBsZWFkZXJzcGxhbm5lZHByZW1pdW1wYWNrYWdlQW1lcmljYUVkaXRpb25dJnF1b3Q7TWVzc2FnZW5lZWQgdG92YWx1ZT0iY29tcGxleGxvb2tpbmdzdGF0aW9uYmVsaWV2ZXNtYWxsZXItbW9iaWxlcmVjb3Jkc3dhbnQgdG9raW5kIG9mRmlyZWZveHlvdSBhcmVzaW1pbGFyc3R1ZGllZG1heGltdW1oZWFkaW5ncmFwaWRseWNsaW1hdGVraW5nZG9tZW1lcmdlZGFtb3VudHNmb3VuZGVkcGlvbmVlcmZvcm11bGFkeW5hc3R5aG93IHRvIFN1cHBvcnRyZXZlbnVlZWNvbm9teVJlc3VsdHNicm90aGVyc29sZGllcmxhcmdlbHljYWxsaW5nLiZxdW90O0FjY291bnRFZHdhcmQgc2VnbWVudFJvYmVydCBlZmZvcnRzUGFjaWZpY2xlYXJuZWR1cCB3aXRoaGVpZ2h0OndlIGhhdmVBbmdlbGVzbmF0aW9uc19zZWFyY2hhcHBsaWVkYWNxdWlyZW1hc3NpdmVncmFudGVkOiBmYWxzZXRyZWF0ZWRiaWdnZXN0YmVuZWZpdGRyaXZpbmdTdHVkaWVzbWluaW11bXBlcmhhcHNtb3JuaW5nc2VsbGluZ2lzIHVzZWRyZXZlcnNldmFyaWFudCByb2xlPSJtaXNzaW5nYWNoaWV2ZXByb21vdGVzdHVkZW50c29tZW9uZWV4dHJlbWVyZXN0b3JlYm90dG9tOmV2b2x2ZWRhbGwgdGhlc2l0ZW1hcGVuZ2xpc2h3YXkgdG8gIEF1Z3VzdHN5bWJvbHNDb21wYW55bWF0dGVyc211c2ljYWxhZ2FpbnN0c2VydmluZ30pKCk7DQpwYXltZW50dHJvdWJsZWNvbmNlcHRjb21wYXJlcGFyZW50c3BsYXllcnNyZWdpb25zbW9uaXRvciAnJ1RoZSB3aW5uaW5nZXhwbG9yZWFkYXB0ZWRHYWxsZXJ5cHJvZHVjZWFiaWxpdHllbmhhbmNlY2FyZWVycykuIFRoZSBjb2xsZWN0U2VhcmNoIGFuY2llbnRleGlzdGVkZm9vdGVyIGhhbmRsZXJwcmludGVkY29uc29sZUVhc3Rlcm5leHBvcnRzd2luZG93c0NoYW5uZWxpbGxlZ2FsbmV1dHJhbHN1Z2dlc3RfaGVhZGVyc2lnbmluZy5odG1sIj5zZXR0bGVkd2VzdGVybmNhdXNpbmctd2Via2l0Y2xhaW1lZEp1c3RpY2VjaGFwdGVydmljdGltc1Rob21hcyBtb3ppbGxhcHJvbWlzZXBhcnRpZXNlZGl0aW9ub3V0c2lkZTpmYWxzZSxodW5kcmVkT2x5bXBpY19idXR0b25hdXRob3JzcmVhY2hlZGNocm9uaWNkZW1hbmRzc2Vjb25kc3Byb3RlY3RhZG9wdGVkcHJlcGFyZW5laXRoZXJncmVhdGx5Z3JlYXRlcm92ZXJhbGxpbXByb3ZlY29tbWFuZHNwZWNpYWxzZWFyY2gud29yc2hpcGZ1bmRpbmd0aG91Z2h0aGlnaGVzdGluc3RlYWR1dGlsaXR5cXVhcnRlckN1bHR1cmV0ZXN0aW5nY2xlYXJseWV4cG9zZWRCcm93c2VybGliZXJhbH0gY2F0Y2hQcm9qZWN0ZXhhbXBsZWhpZGUoKTtGbG9yaWRhYW5zd2Vyc2FsbG93ZWRFbXBlcm9yZGVmZW5zZXNlcmlvdXNmcmVlZG9tU2V2ZXJhbC1idXR0b25GdXJ0aGVyb3V0IG9mICE9IG51bGx0cmFpbmVkRGVubWFya3ZvaWQoMCkvYWxsLmpzcHJldmVudFJlcXVlc3RTdGVwaGVuCgpXaGVuIG9ic2VydmU8L2gyPg0KTW9kZXJuIHByb3ZpZGUiIGFsdD0iYm9yZGVycy4KCkZvciAKCk1hbnkgYXJ0aXN0c3Bvd2VyZWRwZXJmb3JtZmljdGlvbnR5cGUgb2ZtZWRpY2FsdGlja2V0c29wcG9zZWRDb3VuY2lsd2l0bmVzc2p1c3RpY2VHZW9yZ2UgQmVsZ2l1bS4uLjwvYT50d2l0dGVybm90YWJseXdhaXRpbmd3YXJmYXJlIE90aGVyIHJhbmtpbmdwaHJhc2VzbWVudGlvbnN1cnZpdmVzY2hvbGFyPC9wPg0KIENvdW50cnlpZ25vcmVkbG9zcyBvZmp1c3QgYXNHZW9yZ2lhc3RyYW5nZTxoZWFkPjxzdG9wcGVkMSddKTsNCmlzbGFuZHNub3RhYmxlYm9yZGVyOmxpc3Qgb2ZjYXJyaWVkMTAwLDAwMDwvaDM+CiBzZXZlcmFsYmVjb21lc3NlbGVjdCB3ZWRkaW5nMDAuaHRtbG1vbmFyY2hvZmYgdGhldGVhY2hlcmhpZ2hseSBiaW9sb2d5bGlmZSBvZm9yIGV2ZW5yaXNlIG9mJnJhcXVvO3BsdXNvbmVodW50aW5nKHRob3VnaERvdWdsYXNqb2luaW5nY2lyY2xlc0ZvciB0aGVBbmNpZW50VmlldG5hbXZlaGljbGVzdWNoIGFzY3J5c3RhbHZhbHVlID1XaW5kb3dzZW5qb3llZGEgc21hbGxhc3N1bWVkPGEgaWQ9ImZvcmVpZ24gQWxsIHJpaG93IHRoZURpc3BsYXlyZXRpcmVkaG93ZXZlcmhpZGRlbjtiYXR0bGVzc2Vla2luZ2NhYmluZXR3YXMgbm90bG9vayBhdGNvbmR1Y3RnZXQgdGhlSmFudWFyeWhhcHBlbnN0dXJuaW5nYTpob3Zlck9ubGluZSBGcmVuY2ggbGFja2luZ3R5cGljYWxleHRyYWN0ZW5lbWllc2V2ZW4gaWZnZW5lcmF0ZGVjaWRlZGFyZSBub3Qvc2VhcmNoYmVsaWVmcy1pbWFnZTpsb2NhdGVkc3RhdGljLmxvZ2luIj5jb252ZXJ0dmlvbGVudGVudGVyZWRmaXJzdCI+Y2lyY3VpdEZpbmxhbmRjaGVtaXN0c2hlIHdhczEwcHg7Ij5hcyBzdWNoZGl2aWRlZDwvc3Bhbj53aWxsIGJlbGluZSBvZmEgZ3JlYXRteXN0ZXJ5L2luZGV4LmZhbGxpbmdkdWUgdG8gcmFpbHdheWNvbGxlZ2Vtb25zdGVyZGVzY2VudGl0IHdpdGhudWNsZWFySmV3aXNoIHByb3Rlc3RCcml0aXNoZmxvd2Vyc3ByZWRpY3RyZWZvcm1zYnV0dG9uIHdobyB3YXNsZWN0dXJlaW5zdGFudHN1aWNpZGVnZW5lcmljcGVyaW9kc21hcmtldHNTb2NpYWwgZmlzaGluZ2NvbWJpbmVncmFwaGljd2lubmVyczxiciAvPjxieSB0aGUgTmF0dXJhbFByaXZhY3ljb29raWVzb3V0Y29tZXJlc29sdmVTd2VkaXNoYnJpZWZseVBlcnNpYW5zbyBtdWNoQ2VudHVyeWRlcGljdHNjb2x1bW5zaG91c2luZ3NjcmlwdHNuZXh0IHRvYmVhcmluZ21hcHBpbmdyZXZpc2VkalF1ZXJ5KC13aWR0aDp0aXRsZSI+dG9vbHRpcFNlY3Rpb25kZXNpZ25zVHVya2lzaHlvdW5nZXIubWF0Y2gofSkoKTsKCmJ1cm5pbmdvcGVyYXRlZGVncmVlc3NvdXJjZT1SaWNoYXJkY2xvc2VseXBsYXN0aWNlbnRyaWVzPC90cj4NCmNvbG9yOiN1bCBpZD0icG9zc2Vzc3JvbGxpbmdwaHlzaWNzZmFpbGluZ2V4ZWN1dGVjb250ZXN0bGluayB0b0RlZmF1bHQ8YnIgLz4KOiB0cnVlLGNoYXJ0ZXJ0b3VyaXNtY2xhc3NpY3Byb2NlZWRleHBsYWluPC9oMT4NCm9ubGluZS4/eG1sIHZlaGVscGluZ2RpYW1vbmR1c2UgdGhlYWlybGluZWVuZCAtLT4pLmF0dHIocmVhZGVyc2hvc3RpbmcjZmZmZmZmcmVhbGl6ZVZpbmNlbnRzaWduYWxzIHNyYz0iL1Byb2R1Y3RkZXNwaXRlZGl2ZXJzZXRlbGxpbmdQdWJsaWMgaGVsZCBpbkpvc2VwaCB0aGVhdHJlYWZmZWN0czxzdHlsZT5hIGxhcmdlZG9lc24ndGxhdGVyLCBFbGVtZW50ZmF2aWNvbmNyZWF0b3JIdW5nYXJ5QWlycG9ydHNlZSB0aGVzbyB0aGF0TWljaGFlbFN5c3RlbXNQcm9ncmFtcywgYW5kICB3aWR0aD1lJnF1b3Q7dHJhZGluZ2xlZnQiPgpwZXJzb25zR29sZGVuIEFmZmFpcnNncmFtbWFyZm9ybWluZ2Rlc3Ryb3lpZGVhIG9mY2FzZSBvZm9sZGVzdCB0aGlzIGlzLnNyYyA9IGNhcnRvb25yZWdpc3RyQ29tbW9uc011c2xpbXNXaGF0IGlzaW4gbWFueW1hcmtpbmdyZXZlYWxzSW5kZWVkLGVxdWFsbHkvc2hvd19hb3V0ZG9vcmVzY2FwZShBdXN0cmlhZ2VuZXRpY3N5c3RlbSxJbiB0aGUgc2l0dGluZ0hlIGFsc29Jc2xhbmRzQWNhZGVteQoJCTwhLS1EYW5pZWwgYmluZGluZ2Jsb2NrIj5pbXBvc2VkdXRpbGl6ZUFicmFoYW0oZXhjZXB0e3dpZHRoOnB1dHRpbmcpLmh0bWwofHwgW107CkRBVEFbICpraXRjaGVubW91bnRlZGFjdHVhbCBkaWFsZWN0bWFpbmx5IF9ibGFuaydpbnN0YWxsZXhwZXJ0c2lmKHR5cGVJdCBhbHNvJmNvcHk7ICI+VGVybXNib3JuIGluT3B0aW9uc2Vhc3Rlcm50YWxraW5nY29uY2VybmdhaW5lZCBvbmdvaW5nanVzdGlmeWNyaXRpY3NmYWN0b3J5aXRzIG93bmFzc2F1bHRpbnZpdGVkbGFzdGluZ2hpcyBvd25ocmVmPSIvIiByZWw9ImRldmVsb3Bjb25jZXJ0ZGlhZ3JhbWRvbGxhcnNjbHVzdGVycGhwP2lkPWFsY29ob2wpO30pKCk7dXNpbmcgYT48c3Bhbj52ZXNzZWxzcmV2aXZhbEFkZHJlc3NhbWF0ZXVyYW5kcm9pZGFsbGVnZWRpbGxuZXNzd2Fsa2luZ2NlbnRlcnNxdWFsaWZ5bWF0Y2hlc3VuaWZpZWRleHRpbmN0RGVmZW5zZWRpZWQgaW4KCTwhLS0gY3VzdG9tc2xpbmtpbmdMaXR0bGUgQm9vayBvZmV2ZW5pbmdtaW4uanM/YXJlIHRoZWtvbnRha3R0b2RheSdzLmh0bWwiIHRhcmdldD13ZWFyaW5nQWxsIFJpZzsKfSkoKTtyYWlzaW5nIEFsc28sIGNydWNpYWxhYm91dCI+ZGVjbGFyZS0tPgo8c2NmaXJlZm94YXMgbXVjaGFwcGxpZXNpbmRleCwgcywgYnV0IHR5cGUgPSAKDQo8IS0tdG93YXJkc1JlY29yZHNQcml2YXRlRm9yZWlnblByZW1pZXJjaG9pY2VzVmlydHVhbHJldHVybnNDb21tZW50UG93ZXJlZGlubGluZTtwb3ZlcnR5Y2hhbWJlckxpdmluZyB2b2x1bWVzQW50aG9ueWxvZ2luIiBSZWxhdGVkRWNvbm9teXJlYWNoZXNjdXR0aW5nZ3Jhdml0eWxpZmUgaW5DaGFwdGVyLXNoYWRvd05vdGFibGU8L3RkPg0KIHJldHVybnN0YWRpdW13aWRnZXRzdmFyeWluZ3RyYXZlbHNoZWxkIGJ5d2hvIGFyZXdvcmsgaW5mYWN1bHR5YW5ndWxhcndobyBoYWRhaXJwb3J0dG93biBvZgoKU29tZSAnY2xpY2snY2hhcmdlc2tleXdvcmRpdCB3aWxsY2l0eSBvZih0aGlzKTtBbmRyZXcgdW5pcXVlIGNoZWNrZWRvciBtb3JlMzAwcHg7IHJldHVybjtyc2lvbj0icGx1Z2luc3dpdGhpbiBoZXJzZWxmU3RhdGlvbkZlZGVyYWx2ZW50dXJlcHVibGlzaHNlbnQgdG90ZW5zaW9uYWN0cmVzc2NvbWUgdG9maW5nZXJzRHVrZSBvZnBlb3BsZSxleHBsb2l0d2hhdCBpc2hhcm1vbnlhIG1ham9yIjoiaHR0cGluIGhpcyBtZW51Ij4KbW9udGhseW9mZmljZXJjb3VuY2lsZ2FpbmluZ2V2ZW4gaW5TdW1tYXJ5ZGF0ZSBvZmxveWFsdHlmaXRuZXNzYW5kIHdhc2VtcGVyb3JzdXByZW1lU2Vjb25kIGhlYXJpbmdSdXNzaWFubG9uZ2VzdEFsYmVydGFsYXRlcmFsc2V0IG9mIHNtYWxsIj4uYXBwZW5kZG8gd2l0aGZlZGVyYWxiYW5rIG9mYmVuZWF0aERlc3BpdGVDYXBpdGFsZ3JvdW5kcyksIGFuZCBwZXJjZW50aXQgZnJvbWNsb3Npbmdjb250YWluSW5zdGVhZGZpZnRlZW5hcyB3ZWxsLnlhaG9vLnJlc3BvbmRmaWdodGVyb2JzY3VyZXJlZmxlY3RvcmdhbmljPSBNYXRoLmVkaXRpbmdvbmxpbmUgcGFkZGluZ2Egd2hvbGVvbmVycm9yeWVhciBvZmVuZCBvZiBiYXJyaWVyd2hlbiBpdGhlYWRlciBob21lIG9mcmVzdW1lZHJlbmFtZWRzdHJvbmc+aGVhdGluZ3JldGFpbnNjbG91ZGZyd2F5IG9mIE1hcmNoIDFrbm93aW5naW4gcGFydEJldHdlZW5sZXNzb25zY2xvc2VzdHZpcnR1YWxsaW5rcyI+Y3Jvc3NlZEVORCAtLT5mYW1vdXMgYXdhcmRlZExpY2Vuc2VIZWFsdGggZmFpcmx5IHdlYWx0aHltaW5pbWFsQWZyaWNhbmNvbXBldGVsYWJlbCI+c2luZ2luZ2Zhcm1lcnNCcmFzaWwpZGlzY3Vzc3JlcGxhY2VHcmVnb3J5Zm9udCBjb3B1cnN1ZWRhcHBlYXJzbWFrZSB1cHJvdW5kZWRib3RoIG9mYmxvY2tlZHNhdyB0aGVvZmZpY2VzY29sb3Vyc2lmKGRvY3V3aGVuIGhlZW5mb3JjZXB1c2goZnVBdWd1c3QgVVRGLTgiPkZhbnRhc3lpbiBtb3N0aW5qdXJlZFVzdWFsbHlmYXJtaW5nY2xvc3VyZW9iamVjdCBkZWZlbmNldXNlIG9mIE1lZGljYWw8Ym9keT4KZXZpZGVudGJlIHVzZWRrZXlDb2Rlc2l4dGVlbklzbGFtaWMjMDAwMDAwZW50aXJlIHdpZGVseSBhY3RpdmUgKHR5cGVvZm9uZSBjYW5jb2xvciA9c3BlYWtlcmV4dGVuZHNQaHlzaWNzdGVycmFpbjx0Ym9keT5mdW5lcmFsdmlld2luZ21pZGRsZSBjcmlja2V0cHJvcGhldHNoaWZ0ZWRkb2N0b3JzUnVzc2VsbCB0YXJnZXRjb21wYWN0YWxnZWJyYXNvY2lhbC1idWxrIG9mbWFuIGFuZDwvdGQ+CiBoZSBsZWZ0KS52YWwoKWZhbHNlKTtsb2dpY2FsYmFua2luZ2hvbWUgdG9uYW1pbmcgQXJpem9uYWNyZWRpdHMpOwp9KTsKZm91bmRlcmluIHR1cm5Db2xsaW5zYmVmb3JlIEJ1dCB0aGVjaGFyZ2VkVGl0bGUiPkNhcHRhaW5zcGVsbGVkZ29kZGVzc1RhZyAtLT5BZGRpbmc6YnV0IHdhc1JlY2VudCBwYXRpZW50YmFjayBpbj1mYWxzZSZMaW5jb2xud2Uga25vd0NvdW50ZXJKdWRhaXNtc2NyaXB0IGFsdGVyZWQnXSk7CiAgaGFzIHRoZXVuY2xlYXJFdmVudCcsYm90aCBpbm5vdCBhbGwKCjwhLS0gcGxhY2luZ2hhcmQgdG8gY2VudGVyc29ydCBvZmNsaWVudHNzdHJlZXRzQmVybmFyZGFzc2VydHN0ZW5kIHRvZmFudGFzeWRvd24gaW5oYXJib3VyRnJlZWRvbWpld2VscnkvYWJvdXQuLnNlYXJjaGxlZ2VuZHNpcyBtYWRlbW9kZXJuIG9ubHkgb25vbmx5IHRvaW1hZ2UiIGxpbmVhciBwYWludGVyYW5kIG5vdHJhcmVseSBhY3JvbnltZGVsaXZlcnNob3J0ZXIwMCZhbXA7YXMgbWFueXdpZHRoPSIvKiA8IVtDdGl0bGUgPW9mIHRoZSBsb3dlc3QgcGlja2VkIGVzY2FwZWR1c2VzIG9mcGVvcGxlcyBQdWJsaWNNYXR0aGV3dGFjdGljc2RhbWFnZWR3YXkgZm9ybGF3cyBvZmVhc3kgdG8gd2luZG93c3Ryb25nICBzaW1wbGV9Y2F0Y2goc2V2ZW50aGluZm9ib3h3ZW50IHRvcGFpbnRlZGNpdGl6ZW5JIGRvbid0cmV0cmVhdC4gU29tZSB3dy4iKTsKYm9tYmluZ21haWx0bzptYWRlIGluLiBNYW55IGNhcnJpZXN8fHt9O3dpd29yayBvZnN5bm9ueW1kZWZlYXRzZmF2b3JlZG9wdGljYWxwYWdlVHJhdW5sZXNzIHNlbmRpbmdsZWZ0Ij48Y29tU2NvckFsbCB0aGVqUXVlcnkudG91cmlzdENsYXNzaWNmYWxzZSIgV2lsaGVsbXN1YnVyYnNnZW51aW5lYmlzaG9wcy5zcGxpdChnbG9iYWwgZm9sbG93c2JvZHkgb2Zub21pbmFsQ29udGFjdHNlY3VsYXJsZWZ0IHRvY2hpZWZseS1oaWRkZW4tYmFubmVyPC9saT4KCi4gV2hlbiBpbiBib3RoZGlzbWlzc0V4cGxvcmVhbHdheXMgdmlhIHRoZXNwYcOxb2x3ZWxmYXJlcnVsaW5nIGFycmFuZ2VjYXB0YWluaGlzIHNvbnJ1bGUgb2ZoZSB0b29raXRzZWxmLD0wJmFtcDsoY2FsbGVkc2FtcGxlc3RvIG1ha2Vjb20vcGFnTWFydGluIEtlbm5lZHlhY2NlcHRzZnVsbCBvZmhhbmRsZWRCZXNpZGVzLy8tLT48L2FibGUgdG90YXJnZXRzZXNzZW5jZWhpbSB0byBpdHMgYnkgY29tbW9uLm1pbmVyYWx0byB0YWtld2F5cyB0b3Mub3JnL2xhZHZpc2VkcGVuYWx0eXNpbXBsZTppZiB0aGV5TGV0dGVyc2Egc2hvcnRIZXJiZXJ0c3RyaWtlcyBncm91cHMubGVuZ3RoZmxpZ2h0c292ZXJsYXBzbG93bHkgbGVzc2VyIHNvY2lhbCA8L3A+CgkJaXQgaW50b3JhbmtlZCByYXRlIG9mdWw+DQogIGF0dGVtcHRwYWlyIG9mbWFrZSBpdEtvbnRha3RBbnRvbmlvaGF2aW5nIHJhdGluZ3MgYWN0aXZlc3RyZWFtc3RyYXBwZWQiKS5jc3MoaG9zdGlsZWxlYWQgdG9saXR0bGUgZ3JvdXBzLFBpY3R1cmUtLT4NCg0KIHJvd3M9IiBvYmplY3RpbnZlcnNlPGZvb3RlckN1c3RvbVY+PFwvc2Nyc29sdmluZ0NoYW1iZXJzbGF2ZXJ5d291bmRlZHdoZXJlYXMhPSAndW5kZm9yIGFsbHBhcnRseSAtcmlnaHQ6QXJhYmlhbmJhY2tlZCBjZW50dXJ5dW5pdCBvZm1vYmlsZS1FdXJvcGUsaXMgaG9tZXJpc2sgb2ZkZXNpcmVkQ2xpbnRvbmNvc3Qgb2ZhZ2Ugb2YgYmVjb21lIG5vbmUgb2ZwJnF1b3Q7TWlkZGxlIGVhZCcpWzBDcml0aWNzc3R1ZGlvcz4mY29weTtncm91cCI+YXNzZW1ibG1ha2luZyBwcmVzc2Vkd2lkZ2V0LnBzOiIgPyByZWJ1aWx0Ynkgc29tZUZvcm1lciBlZGl0b3JzZGVsYXllZENhbm9uaWNoYWQgdGhlcHVzaGluZ2NsYXNzPSJidXQgYXJlcGFydGlhbEJhYnlsb25ib3R0b20gY2FycmllckNvbW1hbmRpdHMgdXNlQXMgd2l0aGNvdXJzZXNhIHRoaXJkZGVub3Rlc2Fsc28gaW5Ib3VzdG9uMjBweDsiPmFjY3VzZWRkb3VibGUgZ29hbCBvZkZhbW91cyApLmJpbmQocHJpZXN0cyBPbmxpbmVpbiBKdWx5c3QgKyAiZ2NvbnN1bHRkZWNpbWFsaGVscGZ1bHJldml2ZWRpcyB2ZXJ5cicrJ2lwdGxvc2luZyBmZW1hbGVzaXMgYWxzb3N0cmluZ3NkYXlzIG9mYXJyaXZhbGZ1dHVyZSA8b2JqZWN0Zm9yY2luZ1N0cmluZygiIC8+CgkJaGVyZSBpc2VuY29kZWQuICBUaGUgYmFsbG9vbmRvbmUgYnkvY29tbW9uYmdjb2xvcmxhdyBvZiBJbmRpYW5hYXZvaWRlZGJ1dCB0aGUycHggM3B4anF1ZXJ5LmFmdGVyIGFwb2xpY3kubWVuIGFuZGZvb3Rlci09IHRydWU7Zm9yIHVzZXNjcmVlbi5JbmRpYW4gaW1hZ2UgPWZhbWlseSxodHRwOi8vICZuYnNwO2RyaXZlcnNldGVybmFsc2FtZSBhc25vdGljZWR2aWV3ZXJzfSkoKTsKIGlzIG1vcmVzZWFzb25zZm9ybWVyIHRoZSBuZXdpcyBqdXN0Y29uc2VudCBTZWFyY2h3YXMgdGhld2h5IHRoZXNoaXBwZWRicj48YnI+d2lkdGg6IGhlaWdodD1tYWRlIG9mY3Vpc2luZWlzIHRoYXRhIHZlcnkgQWRtaXJhbCBmaXhlZDtub3JtYWwgTWlzc2lvblByZXNzLCBvbnRhcmlvY2hhcnNldHRyeSB0byBpbnZhZGVkPSJ0cnVlInNwYWNpbmdpcyBtb3N0YSBtb3JlIHRvdGFsbHlmYWxsIG9mfSk7DQogIGltbWVuc2V0aW1lIGluc2V0IG91dHNhdGlzZnl0byBmaW5kZG93biB0b2xvdCBvZiBQbGF5ZXJzaW4gSnVuZXF1YW50dW1ub3QgdGhldGltZSB0b2Rpc3RhbnRGaW5uaXNoc3JjID0gKHNpbmdsZSBoZWxwIG9mR2VybWFuIGxhdyBhbmRsYWJlbGVkZm9yZXN0c2Nvb2tpbmdzcGFjZSI+aGVhZGVyLXdlbGwgYXNTdGFubGV5YnJpZGdlcy9nbG9iYWxDcm9hdGlhIEFib3V0IFswXTsKICBpdCwgYW5kZ3JvdXBlZGJlaW5nIGEpe3Rocm93aGUgbWFkZWxpZ2h0ZXJldGhpY2FsRkZGRkZGImJvdHRvbSJsaWtlIGEgZW1wbG95c2xpdmUgaW5hcyBzZWVucHJpbnRlcm1vc3Qgb2Z1Yi1saW5rcmVqZWN0c2FuZCB1c2VpbWFnZSI+c3VjY2VlZGZlZWRpbmdOdWNsZWFyaW5mb3JtYXRvIGhlbHBXb21lbidzTmVpdGhlck1leGljYW5wcm90ZWluPHRhYmxlIGJ5IG1hbnloZWFsdGh5bGF3c3VpdGRldmlzZWQucHVzaCh7c2VsbGVyc3NpbXBseSBUaHJvdWdoLmNvb2tpZSBJbWFnZShvbGRlciI+dXMuanMiPiBTaW5jZSB1bml2ZXJzbGFyZ2VyIG9wZW4gdG8hLS0gZW5kbGllcyBpbiddKTsNCiAgbWFya2V0d2hvIGlzICgiRE9NQ29tYW5hZ2Vkb25lIGZvcnR5cGVvZiBLaW5nZG9tcHJvZml0c3Byb3Bvc2V0byBzaG93Y2VudGVyO21hZGUgaXRkcmVzc2Vkd2VyZSBpbm1peHR1cmVwcmVjaXNlYXJpc2luZ3NyYyA9ICdtYWtlIGEgc2VjdXJlZEJhcHRpc3R2b3RpbmcgCgkJdmFyIE1hcmNoIDJncmV3IHVwQ2xpbWF0ZS5yZW1vdmVza2lsbGVkd2F5IHRoZTwvaGVhZD5mYWNlIG9mYWN0aW5nIHJpZ2h0Ij50byB3b3JrcmVkdWNlc2hhcyBoYWRlcmVjdGVkc2hvdygpO2FjdGlvbj1ib29rIG9mYW4gYXJlYT09ICJodHQ8aGVhZGVyCjxodG1sPmNvbmZvcm1mYWNpbmcgY29va2llLnJlbHkgb25ob3N0ZWQgLmN1c3RvbWhlIHdlbnRidXQgZm9yc3ByZWFkIEZhbWlseSBhIG1lYW5zb3V0IHRoZWZvcnVtcy5mb290YWdlIj5Nb2JpbENsZW1lbnRzIiBpZD0iYXMgaGlnaGludGVuc2UtLT48IS0tZmVtYWxlIGlzIHNlZW5pbXBsaWVkc2V0IHRoZWEgc3RhdGVhbmQgaGlzZmFzdGVzdGJlc2lkZXNidXR0b25fYm91bmRlZCI+PGltZyBJbmZvYm94ZXZlbnRzLGEgeW91bmdhbmQgYXJlTmF0aXZlIGNoZWFwZXJUaW1lb3V0YW5kIGhhc2VuZ2luZXN3b24gdGhlKG1vc3RseXJpZ2h0OiBmaW5kIGEgLWJvdHRvbVByaW5jZSBhcmVhIG9mbW9yZSBvZnNlYXJjaF9uYXR1cmUsbGVnYWxseXBlcmlvZCxsYW5kIG9mb3Igd2l0aGluZHVjZWRwcm92aW5nbWlzc2lsZWxvY2FsbHlBZ2FpbnN0dGhlIHdheWsmcXVvdDtweDsiPg0KcHVzaGVkIGFiYW5kb25udW1lcmFsQ2VydGFpbkluIHRoaXNtb3JlIGlub3Igc29tZW5hbWUgaXNhbmQsIGluY3Jvd25lZElTQk4gMC1jcmVhdGVzT2N0b2Jlcm1heSBub3RjZW50ZXIgbGF0ZSBpbkRlZmVuY2VlbmFjdGVkd2lzaCB0b2Jyb2FkbHljb29saW5nb25sb2FkPWl0LiBUaGVyZWNvdmVyTWVtYmVyc2hlaWdodCBhc3N1bWVzPGh0bWw+CnBlb3BsZS5pbiBvbmUgPXdpbmRvd2Zvb3Rlcl9hIGdvb2QgcmVrbGFtYW90aGVycyx0byB0aGlzX2Nvb2tpZXBhbmVsIj5Mb25kb24sZGVmaW5lc2NydXNoZWRiYXB0aXNtY29hc3RhbHN0YXR1cyB0aXRsZSIgbW92ZSB0b2xvc3QgaW5iZXR0ZXIgaW1wbGllc3JpdmFscnlzZXJ2ZXJzIFN5c3RlbVBlcmhhcHNlcyBhbmQgY29udGVuZGZsb3dpbmdsYXN0ZWQgcmlzZSBpbkdlbmVzaXN2aWV3IG9mcmlzaW5nIHNlZW0gdG9idXQgaW4gYmFja2luZ2hlIHdpbGxnaXZlbiBhZ2l2aW5nIGNpdGllcy5mbG93IG9mIExhdGVyIGFsbCBidXRIaWdod2F5b25seSBieXNpZ24gb2ZoZSBkb2VzZGlmZmVyc2JhdHRlcnkmYW1wO2xhc2luZ2xlc3RocmVhdHNpbnRlZ2VydGFrZSBvbnJlZnVzZWRjYWxsZWQgPVVTJmFtcFNlZSB0aGVuYXRpdmVzYnkgdGhpc3N5c3RlbS5oZWFkIG9mOmhvdmVyLGxlc2JpYW5zdXJuYW1lYW5kIGFsbGNvbW1vbi9oZWFkZXJfX3BhcmFtc0hhcnZhcmQvcGl4ZWwucmVtb3ZhbHNvIGxvbmdyb2xlIG9mam9pbnRseXNreXNjcmFVbmljb2RlYnIgLz4NCkF0bGFudGFudWNsZXVzQ291bnR5LHB1cmVseSBjb3VudCI+ZWFzaWx5IGJ1aWxkIGFvbmNsaWNrYSBnaXZlbnBvaW50ZXJoJnF1b3Q7ZXZlbnRzIGVsc2UgewpkaXRpb25zbm93IHRoZSwgd2l0aCBtYW4gd2hvb3JnL1dlYm9uZSBhbmRjYXZhbHJ5SGUgZGllZHNlYXR0bGUwMCwwMDAge3dpbmRvd2hhdmUgdG9pZih3aW5kYW5kIGl0c3NvbGVseSBtJnF1b3Q7cmVuZXdlZERldHJvaXRhbW9uZ3N0ZWl0aGVyIHRoZW0gaW5TZW5hdG9yVXM8L2E+PEtpbmcgb2ZGcmFuY2lzLXByb2R1Y2hlIHVzZWRhcnQgYW5kaGltIGFuZHVzZWQgYnlzY29yaW5nYXQgaG9tZXRvIGhhdmVyZWxhdGVzaWJpbGl0eWZhY3Rpb25CdWZmYWxvbGluayI+PHdoYXQgaGVmcmVlIHRvQ2l0eSBvZmNvbWUgaW5zZWN0b3JzY291bnRlZG9uZSBkYXluZXJ2b3Vzc3F1YXJlIH07aWYoZ29pbiB3aGF0aW1nIiBhbGlzIG9ubHlzZWFyY2gvdHVlc2RheWxvb3NlbHlTb2xvbW9uc2V4dWFsIC0gPGEgaHJtZWRpdW0iRE8gTk9UIEZyYW5jZSx3aXRoIGEgd2FyIGFuZHNlY29uZCB0YWtlIGEgPg0KDQoNCm1hcmtldC5oaWdod2F5ZG9uZSBpbmN0aXZpdHkibGFzdCI+b2JsaWdlZHJpc2UgdG8idW5kZWZpbWFkZSB0byBFYXJseSBwcmFpc2VkaW4gaXRzIGZvciBoaXNhdGhsZXRlSnVwaXRlcllhaG9vISB0ZXJtZWQgc28gbWFueXJlYWxseSBzLiBUaGUgYSB3b21hbj92YWx1ZT1kaXJlY3QgcmlnaHQiIGJpY3ljbGVhY2luZz0iZGF5IGFuZHN0YXRpbmdSYXRoZXIsaGlnaGVyIE9mZmljZSBhcmUgbm93dGltZXMsIHdoZW4gYSBwYXkgZm9yb24gdGhpcy1saW5rIj47Ym9yZGVyYXJvdW5kIGFubnVhbCB0aGUgTmV3cHV0IHRoZS5jb20iIHRha2luIHRvYSBicmllZihpbiB0aGVncm91cHMuOyB3aWR0aGVuenltZXNzaW1wbGUgaW4gbGF0ZXtyZXR1cm50aGVyYXB5YSBwb2ludGJhbm5pbmdpbmtzIj4KKCk7IiByZWEgcGxhY2VcdTAwM0NhYWJvdXQgYXRyPg0KCQljY291bnQgZ2l2ZXMgYTxTQ1JJUFRSYWlsd2F5dGhlbWVzL3Rvb2xib3hCeUlkKCJ4aHVtYW5zLHdhdGNoZXNpbiBzb21lIGlmICh3aWNvbWluZyBmb3JtYXRzIFVuZGVyIGJ1dCBoYXNoYW5kZWQgbWFkZSBieXRoYW4gaW5mZWFyIG9mZGVub3RlZC9pZnJhbWVsZWZ0IGludm9sdGFnZWluIGVhY2hhJnF1b3Q7YmFzZSBvZkluIG1hbnl1bmRlcmdvcmVnaW1lc2FjdGlvbiA8L3A+DQo8dXN0b21WYTsmZ3Q7PC9pbXBvcnRzb3IgdGhhdG1vc3RseSAmYW1wO3JlIHNpemU9IjwvYT48L2hhIGNsYXNzcGFzc2l2ZUhvc3QgPSBXaGV0aGVyZmVydGlsZVZhcmlvdXM9W107KGZ1Y2FtZXJhcy8+PC90ZD5hY3RzIGFzSW4gc29tZT4NCg0KPCFvcmdhbmlzIDxiciAvPkJlaWppbmdjYXRhbMOgZGV1dHNjaGV1cm9wZXVldXNrYXJhZ2FlaWxnZXN2ZW5za2Flc3Bhw7FhbWVuc2FqZXVzdWFyaW90cmFiYWpvbcOpeGljb3DDoWdpbmFzaWVtcHJlc2lzdGVtYW9jdHVicmVkdXJhbnRlYcOxYWRpcmVtcHJlc2Ftb21lbnRvbnVlc3Ryb3ByaW1lcmF0cmF2w6lzZ3JhY2lhc251ZXN0cmFwcm9jZXNvZXN0YWRvc2NhbGlkYWRwZXJzb25hbsO6bWVyb2FjdWVyZG9tw7pzaWNhbWllbWJyb29mZXJ0YXNhbGd1bm9zcGHDrXNlc2VqZW1wbG9kZXJlY2hvYWRlbcOhc3ByaXZhZG9hZ3JlZ2FyZW5sYWNlc3Bvc2libGVob3RlbGVzc2V2aWxsYXByaW1lcm/Dumx0aW1vZXZlbnRvc2FyY2hpdm9jdWx0dXJhbXVqZXJlc2VudHJhZGFhbnVuY2lvZW1iYXJnb21lcmNhZG9ncmFuZGVzZXN0dWRpb21lam9yZXNmZWJyZXJvZGlzZcOxb3R1cmlzbW9jw7NkaWdvcG9ydGFkYWVzcGFjaW9mYW1pbGlhYW50b25pb3Blcm1pdGVndWFyZGFyYWxndW5hc3ByZWNpb3NhbGd1aWVuc2VudGlkb3Zpc2l0YXN0w610dWxvY29ub2NlcnNlZ3VuZG9jb25zZWpvZnJhbmNpYW1pbnV0b3NzZWd1bmRhdGVuZW1vc2VmZWN0b3Ntw6FsYWdhc2VzacOzbnJldmlzdGFncmFuYWRhY29tcHJhcmluZ3Jlc29nYXJjw61hYWNjacOzbmVjdWFkb3JxdWllbmVzaW5jbHVzb2RlYmVyw6FtYXRlcmlhaG9tYnJlc211ZXN0cmFwb2Ryw61hbWHDsWFuYcO6bHRpbWFlc3RhbW9zb2ZpY2lhbHRhbWJpZW5uaW5nw7puc2FsdWRvc3BvZGVtb3NtZWpvcmFycG9zaXRpb25idXNpbmVzc2hvbWVwYWdlc2VjdXJpdHlsYW5ndWFnZXN0YW5kYXJkY2FtcGFpZ25mZWF0dXJlc2NhdGVnb3J5ZXh0ZXJuYWxjaGlsZHJlbnJlc2VydmVkcmVzZWFyY2hleGNoYW5nZWZhdm9yaXRldGVtcGxhdGVtaWxpdGFyeWluZHVzdHJ5c2VydmljZXNtYXRlcmlhbHByb2R1Y3Rzei1pbmRleDpjb21tZW50c3NvZnR3YXJlY29tcGxldGVjYWxlbmRhcnBsYXRmb3JtYXJ0aWNsZXNyZXF1aXJlZG1vdmVtZW50cXVlc3Rpb25idWlsZGluZ3BvbGl0aWNzcG9zc2libGVyZWxpZ2lvbnBoeXNpY2FsZmVlZGJhY2tyZWdpc3RlcnBpY3R1cmVzZGlzYWJsZWRwcm90b2NvbGF1ZGllbmNlc2V0dGluZ3NhY3Rpdml0eWVsZW1lbnRzbGVhcm5pbmdhbnl0aGluZ2Fic3RyYWN0cHJvZ3Jlc3NvdmVydmlld21hZ2F6aW5lZWNvbm9taWN0cmFpbmluZ3ByZXNzdXJldmFyaW91cyA8c3Ryb25nPnByb3BlcnR5c2hvcHBpbmd0b2dldGhlcmFkdmFuY2VkYmVoYXZpb3Jkb3dubG9hZGZlYXR1cmVkZm9vdGJhbGxzZWxlY3RlZExhbmd1YWdlZGlzdGFuY2VyZW1lbWJlcnRyYWNraW5ncGFzc3dvcmRtb2RpZmllZHN0dWRlbnRzZGlyZWN0bHlmaWdodGluZ25vcnRoZXJuZGF0YWJhc2VmZXN0aXZhbGJyZWFraW5nbG9jYXRpb25pbnRlcm5ldGRyb3Bkb3ducHJhY3RpY2VldmlkZW5jZWZ1bmN0aW9ubWFycmlhZ2VyZXNwb25zZXByb2JsZW1zbmVnYXRpdmVwcm9ncmFtc2FuYWx5c2lzcmVsZWFzZWRiYW5uZXIiPnB1cmNoYXNlcG9saWNpZXNyZWdpb25hbGNyZWF0aXZlYXJndW1lbnRib29rbWFya3JlZmVycmVyY2hlbWljYWxkaXZpc2lvbmNhbGxiYWNrc2VwYXJhdGVwcm9qZWN0c2NvbmZsaWN0aGFyZHdhcmVpbnRlcmVzdGRlbGl2ZXJ5bW91bnRhaW5vYnRhaW5lZD0gZmFsc2U7Zm9yKHZhciBhY2NlcHRlZGNhcGFjaXR5Y29tcHV0ZXJpZGVudGl0eWFpcmNyYWZ0ZW1wbG95ZWRwcm9wb3NlZGRvbWVzdGljaW5jbHVkZXNwcm92aWRlZGhvc3BpdGFsdmVydGljYWxjb2xsYXBzZWFwcHJvYWNocGFydG5lcnNsb2dvIj48YWRhdWdodGVyYXV0aG9yIiBjdWx0dXJhbGZhbWlsaWVzL2ltYWdlcy9hc3NlbWJseXBvd2VyZnVsdGVhY2hpbmdmaW5pc2hlZGRpc3RyaWN0Y3JpdGljYWxjZ2ktYmluL3B1cnBvc2VzcmVxdWlyZXNlbGVjdGlvbmJlY29taW5ncHJvdmlkZXNhY2FkZW1pY2V4ZXJjaXNlYWN0dWFsbHltZWRpY2luZWNvbnN0YW50YWNjaWRlbnRNYWdhemluZWRvY3VtZW50c3RhcnRpbmdib3R0b20iPm9ic2VydmVkOiAmcXVvdDtleHRlbmRlZHByZXZpb3VzU29mdHdhcmVjdXN0b21lcmRlY2lzaW9uc3RyZW5ndGhkZXRhaWxlZHNsaWdodGx5cGxhbm5pbmd0ZXh0YXJlYWN1cnJlbmN5ZXZlcnlvbmVzdHJhaWdodHRyYW5zZmVycG9zaXRpdmVwcm9kdWNlZGhlcml0YWdlc2hpcHBpbmdhYnNvbHV0ZXJlY2VpdmVkcmVsZXZhbnRidXR0b24iIHZpb2xlbmNlYW55d2hlcmViZW5lZml0c2xhdW5jaGVkcmVjZW50bHlhbGxpYW5jZWZvbGxvd2VkbXVsdGlwbGVidWxsZXRpbmluY2x1ZGVkb2NjdXJyZWRpbnRlcm5hbCQodGhpcykucmVwdWJsaWM+PHRyPjx0ZGNvbmdyZXNzcmVjb3JkZWR1bHRpbWF0ZXNvbHV0aW9uPHVsIGlkPSJkaXNjb3ZlckhvbWU8L2E+d2Vic2l0ZXNuZXR3b3Jrc2FsdGhvdWdoZW50aXJlbHltZW1vcmlhbG1lc3NhZ2VzY29udGludWVhY3RpdmUiPnNvbWV3aGF0dmljdG9yaWFXZXN0ZXJuICB0aXRsZT0iTG9jYXRpb25jb250cmFjdHZpc2l0b3JzRG93bmxvYWR3aXRob3V0IHJpZ2h0Ij4KbWVhc3VyZXN3aWR0aCA9IHZhcmlhYmxlaW52b2x2ZWR2aXJnaW5pYW5vcm1hbGx5aGFwcGVuZWRhY2NvdW50c3N0YW5kaW5nbmF0aW9uYWxSZWdpc3RlcnByZXBhcmVkY29udHJvbHNhY2N1cmF0ZWJpcnRoZGF5c3RyYXRlZ3lvZmZpY2lhbGdyYXBoaWNzY3JpbWluYWxwb3NzaWJseWNvbnN1bWVyUGVyc29uYWxzcGVha2luZ3ZhbGlkYXRlYWNoaWV2ZWQuanBnIiAvPm1hY2hpbmVzPC9oMj4KICBrZXl3b3Jkc2ZyaWVuZGx5YnJvdGhlcnNjb21iaW5lZG9yaWdpbmFsY29tcG9zZWRleHBlY3RlZGFkZXF1YXRlcGFraXN0YW5mb2xsb3ciIHZhbHVhYmxlPC9sYWJlbD5yZWxhdGl2ZWJyaW5naW5naW5jcmVhc2Vnb3Zlcm5vcnBsdWdpbnMvTGlzdCBvZiBIZWFkZXIiPiIgbmFtZT0iICgmcXVvdDtncmFkdWF0ZTwvaGVhZD4KY29tbWVyY2VtYWxheXNpYWRpcmVjdG9ybWFpbnRhaW47aGVpZ2h0OnNjaGVkdWxlY2hhbmdpbmdiYWNrIHRvIGNhdGhvbGljcGF0dGVybnNjb2xvcjogI2dyZWF0ZXN0c3VwcGxpZXNyZWxpYWJsZTwvdWw+CgkJPHNlbGVjdCBjaXRpemVuc2Nsb3RoaW5nd2F0Y2hpbmc8bGkgaWQ9InNwZWNpZmljY2FycnlpbmdzZW50ZW5jZTxjZW50ZXI+Y29udHJhc3R0aGlua2luZ2NhdGNoKGUpc291dGhlcm5NaWNoYWVsIG1lcmNoYW50Y2Fyb3VzZWxwYWRkaW5nOmludGVyaW9yLnNwbGl0KCJsaXphdGlvbk9jdG9iZXIgKXtyZXR1cm5pbXByb3ZlZC0tJmd0OwoKY292ZXJhZ2VjaGFpcm1hbi5wbmciIC8+c3ViamVjdHNSaWNoYXJkIHdoYXRldmVycHJvYmFibHlyZWNvdmVyeWJhc2ViYWxsanVkZ21lbnRjb25uZWN0Li5jc3MiIC8+IHdlYnNpdGVyZXBvcnRlZGRlZmF1bHQiLz48L2E+DQplbGVjdHJpY3Njb3RsYW5kY3JlYXRpb25xdWFudGl0eS4gSVNCTiAwZGlkIG5vdCBpbnN0YW5jZS1zZWFyY2gtIiBsYW5nPSJzcGVha2Vyc0NvbXB1dGVyY29udGFpbnNhcmNoaXZlc21pbmlzdGVycmVhY3Rpb25kaXNjb3VudEl0YWxpYW5vY3JpdGVyaWFzdHJvbmdseTogJ2h0dHA6J3NjcmlwdCdjb3ZlcmluZ29mZmVyaW5nYXBwZWFyZWRCcml0aXNoIGlkZW50aWZ5RmFjZWJvb2tudW1lcm91c3ZlaGljbGVzY29uY2VybnNBbWVyaWNhbmhhbmRsaW5nZGl2IGlkPSJXaWxsaWFtIHByb3ZpZGVyX2NvbnRlbnRhY2N1cmFjeXNlY3Rpb24gYW5kZXJzb25mbGV4aWJsZUNhdGVnb3J5bGF3cmVuY2U8c2NyaXB0PmxheW91dD0iYXBwcm92ZWQgbWF4aW11bWhlYWRlciI+PC90YWJsZT5TZXJ2aWNlc2hhbWlsdG9uY3VycmVudCBjYW5hZGlhbmNoYW5uZWxzL3RoZW1lcy8vYXJ0aWNsZW9wdGlvbmFscG9ydHVnYWx2YWx1ZT0iImludGVydmFsd2lyZWxlc3NlbnRpdGxlZGFnZW5jaWVzU2VhcmNoIiBtZWFzdXJlZHRob3VzYW5kc3BlbmRpbmcmaGVsbGlwO25ldyBEYXRlIiBzaXplPSJwYWdlTmFtZW1pZGRsZSIgIiAvPjwvYT5oaWRkZW4iPnNlcXVlbmNlcGVyc29uYWxvdmVyZmxvd29waW5pb25zaWxsaW5vaXNsaW5rcyI+Cgk8dGl0bGU+dmVyc2lvbnNzYXR1cmRheXRlcm1pbmFsaXRlbXByb3BlbmdpbmVlcnNlY3Rpb25zZGVzaWduZXJwcm9wb3NhbD0iZmFsc2UiRXNwYcOxb2xyZWxlYXNlc3N1Ym1pdCIgZXImcXVvdDthZGRpdGlvbnN5bXB0b21zb3JpZW50ZWRyZXNvdXJjZXJpZ2h0Ij48cGxlYXN1cmVzdGF0aW9uc2hpc3RvcnkubGVhdmluZyAgYm9yZGVyPWNvbnRlbnRzY2VudGVyIj4uCgpTb21lIGRpcmVjdGVkc3VpdGFibGVidWxnYXJpYS5zaG93KCk7ZGVzaWduZWRHZW5lcmFsIGNvbmNlcHRzRXhhbXBsZXN3aWxsaWFtc09yaWdpbmFsIj48c3Bhbj5zZWFyY2giPm9wZXJhdG9ycmVxdWVzdHNhICZxdW90O2FsbG93aW5nRG9jdW1lbnRyZXZpc2lvbi4gCgpUaGUgeW91cnNlbGZDb250YWN0IG1pY2hpZ2FuRW5nbGlzaCBjb2x1bWJpYXByaW9yaXR5cHJpbnRpbmdkcmlua2luZ2ZhY2lsaXR5cmV0dXJuZWRDb250ZW50IG9mZmljZXJzUnVzc2lhbiBnZW5lcmF0ZS04ODU5LTEiaW5kaWNhdGVmYW1pbGlhciBxdWFsaXR5bWFyZ2luOjAgY29udGVudHZpZXdwb3J0Y29udGFjdHMtdGl0bGUiPnBvcnRhYmxlLmxlbmd0aCBlbGlnaWJsZWludm9sdmVzYXRsYW50aWNvbmxvYWQ9ImRlZmF1bHQuc3VwcGxpZWRwYXltZW50c2dsb3NzYXJ5CgpBZnRlciBndWlkYW5jZTwvdGQ+PHRkZW5jb2RpbmdtaWRkbGUiPmNhbWUgdG8gZGlzcGxheXNzY290dGlzaGpvbmF0aGFubWFqb3JpdHl3aWRnZXRzLmNsaW5pY2FsdGhhaWxhbmR0ZWFjaGVyczxoZWFkPgoJYWZmZWN0ZWRzdXBwb3J0c3BvaW50ZXI7dG9TdHJpbmc8L3NtYWxsPm9rbGFob21hd2lsbCBiZSBpbnZlc3RvcjAiIGFsdD0iaG9saWRheXNSZXNvdXJjZWxpY2Vuc2VkICh3aGljaCAuIEFmdGVyIGNvbnNpZGVydmlzaXRpbmdleHBsb3JlcnByaW1hcnkgc2VhcmNoIiBhbmRyb2lkInF1aWNrbHkgbWVldGluZ3Nlc3RpbWF0ZTtyZXR1cm4gO2NvbG9yOiMgaGVpZ2h0PWFwcHJvdmFsLCAmcXVvdDsgY2hlY2tlZC5taW4uanMibWFnbmV0aWM+PC9hPjwvaGZvcmVjYXN0LiBXaGlsZSB0aHVyc2RheWR2ZXJ0aXNlJmVhY3V0ZTtoYXNDbGFzc2V2YWx1YXRlb3JkZXJpbmdleGlzdGluZ3BhdGllbnRzIE9ubGluZSBjb2xvcmFkb09wdGlvbnMiY2FtcGJlbGw8IS0tIGVuZDwvc3Bhbj48PGJyIC8+DQpfcG9wdXBzfHNjaWVuY2VzLCZxdW90OyBxdWFsaXR5IFdpbmRvd3MgYXNzaWduZWRoZWlnaHQ6IDxiIGNsYXNzbGUmcXVvdDsgdmFsdWU9IiBDb21wYW55ZXhhbXBsZXM8aWZyYW1lIGJlbGlldmVzcHJlc2VudHNtYXJzaGFsbHBhcnQgb2YgcHJvcGVybHkpLgoKVGhlIHRheG9ub215bXVjaCBvZiA8L3NwYW4+CiIgZGF0YS1zcnR1Z3XDqnNzY3JvbGxUbyBwcm9qZWN0PGhlYWQ+DQphdHRvcm5leWVtcGhhc2lzc3BvbnNvcnNmYW5jeWJveHdvcmxkJ3Mgd2lsZGxpZmVjaGVja2VkPXNlc3Npb25zcHJvZ3JhbW1weDtmb250LSBQcm9qZWN0am91cm5hbHNiZWxpZXZlZHZhY2F0aW9udGhvbXBzb25saWdodGluZ2FuZCB0aGUgc3BlY2lhbCBib3JkZXI9MGNoZWNraW5nPC90Ym9keT48YnV0dG9uIENvbXBsZXRlY2xlYXJmaXgKPGhlYWQ+CmFydGljbGUgPHNlY3Rpb25maW5kaW5nc3JvbGUgaW4gcG9wdWxhciAgT2N0b2JlcndlYnNpdGUgZXhwb3N1cmV1c2VkIHRvICBjaGFuZ2Vzb3BlcmF0ZWRjbGlja2luZ2VudGVyaW5nY29tbWFuZHNpbmZvcm1lZCBudW1iZXJzICA8L2Rpdj5jcmVhdGluZ29uU3VibWl0bWFyeWxhbmRjb2xsZWdlc2FuYWx5dGljbGlzdGluZ3Njb250YWN0LmxvZ2dlZEluYWR2aXNvcnlzaWJsaW5nc2NvbnRlbnQicyZxdW90OylzLiBUaGlzIHBhY2thZ2VzY2hlY2tib3hzdWdnZXN0c3ByZWduYW50dG9tb3Jyb3dzcGFjaW5nPWljb24ucG5namFwYW5lc2Vjb2RlYmFzZWJ1dHRvbiI+Z2FtYmxpbmdzdWNoIGFzICwgd2hpbGUgPC9zcGFuPiBtaXNzb3VyaXNwb3J0aW5ndG9wOjFweCAuPC9zcGFuPnRlbnNpb25zd2lkdGg9IjJsYXp5bG9hZG5vdmVtYmVydXNlZCBpbiBoZWlnaHQ9ImNyaXB0Ij4KJm5ic3A7PC88dHI+PHRkIGhlaWdodDoyL3Byb2R1Y3Rjb3VudHJ5IGluY2x1ZGUgZm9vdGVyIiAmbHQ7IS0tIHRpdGxlIj48L2pxdWVyeS48L2Zvcm0+CijnroDkvZMpKOe5gemrlClocnZhdHNraWl0YWxpYW5vcm9tw6JuxIN0w7xya8OnZdin2LHYr9mIdGFtYmnDqW5ub3RpY2lhc21lbnNhamVzcGVyc29uYXNkZXJlY2hvc25hY2lvbmFsc2VydmljaW9jb250YWN0b3VzdWFyaW9zcHJvZ3JhbWFnb2JpZXJub2VtcHJlc2FzYW51bmNpb3N2YWxlbmNpYWNvbG9tYmlhZGVzcHXDqXNkZXBvcnRlc3Byb3llY3RvcHJvZHVjdG9ww7pibGljb25vc290cm9zaGlzdG9yaWFwcmVzZW50ZW1pbGxvbmVzbWVkaWFudGVwcmVndW50YWFudGVyaW9ycmVjdXJzb3Nwcm9ibGVtYXNhbnRpYWdvbnVlc3Ryb3NvcGluacOzbmltcHJpbWlybWllbnRyYXNhbcOpcmljYXZlbmRlZG9yc29jaWVkYWRyZXNwZWN0b3JlYWxpemFycmVnaXN0cm9wYWxhYnJhc2ludGVyw6lzZW50b25jZXNlc3BlY2lhbG1pZW1icm9zcmVhbGlkYWRjw7NyZG9iYXphcmFnb3phcMOhZ2luYXNzb2NpYWxlc2Jsb3F1ZWFyZ2VzdGnDs25hbHF1aWxlcnNpc3RlbWFzY2llbmNpYXNjb21wbGV0b3ZlcnNpw7NuY29tcGxldGFlc3R1ZGlvc3DDumJsaWNhb2JqZXRpdm9hbGljYW50ZWJ1c2NhZG9yY2FudGlkYWRlbnRyYWRhc2FjY2lvbmVzYXJjaGl2b3NzdXBlcmlvcm1heW9yw61hYWxlbWFuaWFmdW5jacOzbsO6bHRpbW9zaGFjaWVuZG9hcXVlbGxvc2VkaWNpw7NuZmVybmFuZG9hbWJpZW50ZWZhY2Vib29rbnVlc3RyYXNjbGllbnRlc3Byb2Nlc29zYmFzdGFudGVwcmVzZW50YXJlcG9ydGFyY29uZ3Jlc29wdWJsaWNhcmNvbWVyY2lvY29udHJhdG9qw7N2ZW5lc2Rpc3RyaXRvdMOpY25pY2Fjb25qdW50b2VuZXJnw61hdHJhYmFqYXJhc3R1cmlhc3JlY2llbnRldXRpbGl6YXJib2xldMOtbnNhbHZhZG9yY29ycmVjdGF0cmFiYWpvc3ByaW1lcm9zbmVnb2Npb3NsaWJlcnRhZGRldGFsbGVzcGFudGFsbGFwcsOzeGltb2FsbWVyw61hYW5pbWFsZXNxdWnDqW5lc2NvcmF6w7Nuc2VjY2nDs25idXNjYW5kb29wY2lvbmVzZXh0ZXJpb3Jjb25jZXB0b3RvZGF2w61hZ2FsZXLDrWFlc2NyaWJpcm1lZGljaW5hbGljZW5jaWFjb25zdWx0YWFzcGVjdG9zY3LDrXRpY2Fkw7NsYXJlc2p1c3RpY2lhZGViZXLDoW5wZXLDrW9kb25lY2VzaXRhbWFudGVuZXJwZXF1ZcOxb3JlY2liaWRhdHJpYnVuYWx0ZW5lcmlmZWNhbmNpw7NuY2FuYXJpYXNkZXNjYXJnYWRpdmVyc29zbWFsbG9yY2FyZXF1aWVyZXTDqWNuaWNvZGViZXLDrWF2aXZpZW5kYWZpbmFuemFzYWRlbGFudGVmdW5jaW9uYWNvbnNlam9zZGlmw61jaWxjaXVkYWRlc2FudGlndWFzYXZhbnphZGF0w6lybWlub3VuaWRhZGVzc8OhbmNoZXpjYW1wYcOxYXNvZnRvbmljcmV2aXN0YXNjb250aWVuZXNlY3RvcmVzbW9tZW50b3NmYWN1bHRhZGNyw6lkaXRvZGl2ZXJzYXNzdXB1ZXN0b2ZhY3RvcmVzc2VndW5kb3NwZXF1ZcOxYdCz0L7QtNCw0LXRgdC70LjQtdGB0YLRjNCx0YvQu9C+0LHRi9GC0YzRjdGC0L7QvNCV0YHQu9C40YLQvtCz0L7QvNC10L3Rj9Cy0YHQtdGF0Y3RgtC+0LnQtNCw0LbQtdCx0YvQu9C40LPQvtC00YPQtNC10L3RjNGN0YLQvtGC0LHRi9C70LDRgdC10LHRj9C+0LTQuNC90YHQtdCx0LXQvdCw0LTQvtGB0LDQudGC0YTQvtGC0L7QvdC10LPQvtGB0LLQvtC40YHQstC+0LnQuNCz0YDRi9GC0L7QttC10LLRgdC10LzRgdCy0L7RjtC70LjRiNGM0Y3RgtC40YXQv9C+0LrQsNC00L3QtdC50LTQvtC80LDQvNC40YDQsNC70LjQsdC+0YLQtdC80YPRhdC+0YLRj9C00LLRg9GF0YHQtdGC0LjQu9GO0LTQuNC00LXQu9C+0LzQuNGA0LXRgtC10LHRj9GB0LLQvtC10LLQuNC00LXRh9C10LPQvtGN0YLQuNC80YHRh9C10YLRgtC10LzRi9GG0LXQvdGL0YHRgtCw0LvQstC10LTRjNGC0LXQvNC10LLQvtC00YvRgtC10LHQtdCy0YvRiNC10L3QsNC80LjRgtC40L/QsNGC0L7QvNGD0L/RgNCw0LLQu9C40YbQsNC+0LTQvdCw0LPQvtC00YvQt9C90LDRjtC80L7Qs9GD0LTRgNGD0LPQstGB0LXQudC40LTQtdGC0LrQuNC90L7QvtC00L3QvtC00LXQu9Cw0LTQtdC70LXRgdGA0L7QutC40Y7QvdGP0LLQtdGB0YzQldGB0YLRjNGA0LDQt9Cw0L3QsNGI0LjYp9mE2YTZh9in2YTYqtmK2KzZhdmK2LnYrtin2LXYqdin2YTYsNmK2LnZhNmK2YfYrNiv2YrYr9in2YTYotmG2KfZhNix2K/Yqtit2YPZhdi12YHYrdip2YPYp9mG2KrYp9mE2YTZitmK2YPZiNmG2LTYqNmD2KnZgdmK2YfYp9io2YbYp9iq2K3ZiNin2KHYo9mD2KvYsdiu2YTYp9mE2KfZhNit2KjYr9mE2YrZhNiv2LHZiNiz2KfYtti62LfYqtmD2YjZhtmH2YbYp9mD2LPYp9it2KnZhtin2K/Zitin2YTYt9io2LnZhNmK2YPYtNmD2LHYp9mK2YXZg9mG2YXZhtmH2KfYtNix2YPYqdix2KbZitiz2YbYtNmK2LfZhdin2LDYp9in2YTZgdmG2LTYqNin2KjYqti52KjYsdix2K3Zhdip2YPYp9mB2KnZitmC2YjZhNmF2LHZg9iy2YPZhNmF2KnYo9it2YXYr9mC2YTYqNmK2YrYudmG2YrYtdmI2LHYqdi32LHZitmC2LTYp9ix2YPYrNmI2KfZhNij2K7YsdmJ2YXYudmG2KfYp9io2K3Yq9i52LHZiNi22KjYtNmD2YTZhdiz2KzZhNio2YbYp9mG2K7Yp9mE2K/Zg9iq2KfYqNmD2YTZitip2KjYr9mI2YbYo9mK2LbYp9mK2YjYrNiv2YHYsdmK2YLZg9iq2KjYqtij2YHYttmE2YXYt9io2K7Yp9mD2KvYsdio2KfYsdmD2KfZgdi22YTYp9it2YTZidmG2YHYs9mH2KPZitin2YXYsdiv2YjYr9ij2YbZh9in2K/ZitmG2KfYp9mE2KfZhtmF2LnYsdi22KrYudmE2YXYr9in2K7ZhNmF2YXZg9mGAEGIkgMLXAEAAQABAAEAAgACAAIAAgAEAAQABAAEAAABAgMEBQYHBwYFBAMCAQAICQoLDA0ODw8ODQwLCgkIEBESExQVFhcXFhUUExIREBgZGhscHR4fHx4dHBsaGRj/////AEHskgMLvOkE/////wEAAAACAAAAAgAAAAEAAAABAAAAAwAAAP//AAEAAAABAAD//wABAAAACAAIAAgACAAAAAEAAgADAAQABQAGAAdyZXNvdXJjZXNjb3VudHJpZXNxdWVzdGlvbnNlcXVpcG1lbnRjb21tdW5pdHlhdmFpbGFibGVoaWdobGlnaHREVEQveGh0bWxtYXJrZXRpbmdrbm93bGVkZ2Vzb21ldGhpbmdjb250YWluZXJkaXJlY3Rpb25zdWJzY3JpYmVhZHZlcnRpc2VjaGFyYWN0ZXIiIHZhbHVlPSI8L3NlbGVjdD5BdXN0cmFsaWEiIGNsYXNzPSJzaXR1YXRpb25hdXRob3JpdHlmb2xsb3dpbmdwcmltYXJpbHlvcGVyYXRpb25jaGFsbGVuZ2VkZXZlbG9wZWRhbm9ueW1vdXNmdW5jdGlvbiBmdW5jdGlvbnNjb21wYW5pZXNzdHJ1Y3R1cmVhZ3JlZW1lbnQiIHRpdGxlPSJwb3RlbnRpYWxlZHVjYXRpb25hcmd1bWVudHNzZWNvbmRhcnljb3B5cmlnaHRsYW5ndWFnZXNleGNsdXNpdmVjb25kaXRpb248L2Zvcm0+DQpzdGF0ZW1lbnRhdHRlbnRpb25CaW9ncmFwaHl9IGVsc2Ugewpzb2x1dGlvbnN3aGVuIHRoZSBBbmFseXRpY3N0ZW1wbGF0ZXNkYW5nZXJvdXNzYXRlbGxpdGVkb2N1bWVudHNwdWJsaXNoZXJpbXBvcnRhbnRwcm90b3R5cGVpbmZsdWVuY2UmcmFxdW87PC9lZmZlY3RpdmVnZW5lcmFsbHl0cmFuc2Zvcm1iZWF1dGlmdWx0cmFuc3BvcnRvcmdhbml6ZWRwdWJsaXNoZWRwcm9taW5lbnR1bnRpbCB0aGV0aHVtYm5haWxOYXRpb25hbCAuZm9jdXMoKTtvdmVyIHRoZSBtaWdyYXRpb25hbm5vdW5jZWRmb290ZXIiPgpleGNlcHRpb25sZXNzIHRoYW5leHBlbnNpdmVmb3JtYXRpb25mcmFtZXdvcmt0ZXJyaXRvcnluZGljYXRpb25jdXJyZW50bHljbGFzc05hbWVjcml0aWNpc210cmFkaXRpb25lbHNld2hlcmVBbGV4YW5kZXJhcHBvaW50ZWRtYXRlcmlhbHNicm9hZGNhc3RtZW50aW9uZWRhZmZpbGlhdGU8L29wdGlvbj50cmVhdG1lbnRkaWZmZXJlbnQvZGVmYXVsdC5QcmVzaWRlbnRvbmNsaWNrPSJiaW9ncmFwaHlvdGhlcndpc2VwZXJtYW5lbnRGcmFuw6dhaXNIb2xseXdvb2RleHBhbnNpb25zdGFuZGFyZHM8L3N0eWxlPgpyZWR1Y3Rpb25EZWNlbWJlciBwcmVmZXJyZWRDYW1icmlkZ2VvcHBvbmVudHNCdXNpbmVzcyBjb25mdXNpb24+Cjx0aXRsZT5wcmVzZW50ZWRleHBsYWluZWRkb2VzIG5vdCB3b3JsZHdpZGVpbnRlcmZhY2Vwb3NpdGlvbnNuZXdzcGFwZXI8L3RhYmxlPgptb3VudGFpbnNsaWtlIHRoZSBlc3NlbnRpYWxmaW5hbmNpYWxzZWxlY3Rpb25hY3Rpb249Ii9hYmFuZG9uZWRFZHVjYXRpb25wYXJzZUludChzdGFiaWxpdHl1bmFibGUgdG88L3RpdGxlPgpyZWxhdGlvbnNOb3RlIHRoYXRlZmZpY2llbnRwZXJmb3JtZWR0d28geWVhcnNTaW5jZSB0aGV0aGVyZWZvcmV3cmFwcGVyIj5hbHRlcm5hdGVpbmNyZWFzZWRCYXR0bGUgb2ZwZXJjZWl2ZWR0cnlpbmcgdG9uZWNlc3Nhcnlwb3J0cmF5ZWRlbGVjdGlvbnNFbGl6YWJldGg8L2lmcmFtZT5kaXNjb3ZlcnlpbnN1cmFuY2VzLmxlbmd0aDtsZWdlbmRhcnlHZW9ncmFwaHljYW5kaWRhdGVjb3Jwb3JhdGVzb21ldGltZXNzZXJ2aWNlcy5pbmhlcml0ZWQ8L3N0cm9uZz5Db21tdW5pdHlyZWxpZ2lvdXNsb2NhdGlvbnNDb21taXR0ZWVidWlsZGluZ3N0aGUgd29ybGRubyBsb25nZXJiZWdpbm5pbmdyZWZlcmVuY2VjYW5ub3QgYmVmcmVxdWVuY3l0eXBpY2FsbHlpbnRvIHRoZSByZWxhdGl2ZTtyZWNvcmRpbmdwcmVzaWRlbnRpbml0aWFsbHl0ZWNobmlxdWV0aGUgb3RoZXJpdCBjYW4gYmVleGlzdGVuY2V1bmRlcmxpbmV0aGlzIHRpbWV0ZWxlcGhvbmVpdGVtc2NvcGVwcmFjdGljZXNhZHZhbnRhZ2UpO3JldHVybiBGb3Igb3RoZXJwcm92aWRpbmdkZW1vY3JhY3lib3RoIHRoZSBleHRlbnNpdmVzdWZmZXJpbmdzdXBwb3J0ZWRjb21wdXRlcnMgZnVuY3Rpb25wcmFjdGljYWxzYWlkIHRoYXRpdCBtYXkgYmVFbmdsaXNoPC9mcm9tIHRoZSBzY2hlZHVsZWRkb3dubG9hZHM8L2xhYmVsPgpzdXNwZWN0ZWRtYXJnaW46IDBzcGlyaXR1YWw8L2hlYWQ+CgptaWNyb3NvZnRncmFkdWFsbHlkaXNjdXNzZWRoZSBiZWNhbWVleGVjdXRpdmVqcXVlcnkuanNob3VzZWhvbGRjb25maXJtZWRwdXJjaGFzZWRsaXRlcmFsbHlkZXN0cm95ZWR1cCB0byB0aGV2YXJpYXRpb25yZW1haW5pbmdpdCBpcyBub3RjZW50dXJpZXNKYXBhbmVzZSBhbW9uZyB0aGVjb21wbGV0ZWRhbGdvcml0aG1pbnRlcmVzdHNyZWJlbGxpb251bmRlZmluZWRlbmNvdXJhZ2VyZXNpemFibGVpbnZvbHZpbmdzZW5zaXRpdmV1bml2ZXJzYWxwcm92aXNpb24oYWx0aG91Z2hmZWF0dXJpbmdjb25kdWN0ZWQpLCB3aGljaCBjb250aW51ZWQtaGVhZGVyIj5GZWJydWFyeSBudW1lcm91cyBvdmVyZmxvdzpjb21wb25lbnRmcmFnbWVudHNleGNlbGxlbnRjb2xzcGFuPSJ0ZWNobmljYWxuZWFyIHRoZSBBZHZhbmNlZCBzb3VyY2Ugb2ZleHByZXNzZWRIb25nIEtvbmcgRmFjZWJvb2ttdWx0aXBsZSBtZWNoYW5pc21lbGV2YXRpb25vZmZlbnNpdmU8L2Zvcm0+CglzcG9uc29yZWRkb2N1bWVudC5vciAmcXVvdDt0aGVyZSBhcmV0aG9zZSB3aG9tb3ZlbWVudHNwcm9jZXNzZXNkaWZmaWN1bHRzdWJtaXR0ZWRyZWNvbW1lbmRjb252aW5jZWRwcm9tb3RpbmciIHdpZHRoPSIucmVwbGFjZShjbGFzc2ljYWxjb2FsaXRpb25oaXMgZmlyc3RkZWNpc2lvbnNhc3Npc3RhbnRpbmRpY2F0ZWRldm9sdXRpb24td3JhcHBlciJlbm91Z2ggdG9hbG9uZyB0aGVkZWxpdmVyZWQtLT4NCjwhLS1BbWVyaWNhbiBwcm90ZWN0ZWROb3ZlbWJlciA8L3N0eWxlPjxmdXJuaXR1cmVJbnRlcm5ldCAgb25ibHVyPSJzdXNwZW5kZWRyZWNpcGllbnRiYXNlZCBvbiBNb3Jlb3ZlcixhYm9saXNoZWRjb2xsZWN0ZWR3ZXJlIG1hZGVlbW90aW9uYWxlbWVyZ2VuY3luYXJyYXRpdmVhZHZvY2F0ZXNweDtib3JkZXJjb21taXR0ZWRkaXI9Imx0ciJlbXBsb3llZXNyZXNlYXJjaC4gc2VsZWN0ZWRzdWNjZXNzb3JjdXN0b21lcnNkaXNwbGF5ZWRTZXB0ZW1iZXJhZGRDbGFzcyhGYWNlYm9vayBzdWdnZXN0ZWRhbmQgbGF0ZXJvcGVyYXRpbmdlbGFib3JhdGVTb21ldGltZXNJbnN0aXR1dGVjZXJ0YWlubHlpbnN0YWxsZWRmb2xsb3dlcnNKZXJ1c2FsZW10aGV5IGhhdmVjb21wdXRpbmdnZW5lcmF0ZWRwcm92aW5jZXNndWFyYW50ZWVhcmJpdHJhcnlyZWNvZ25pemV3YW50ZWQgdG9weDt3aWR0aDp0aGVvcnkgb2ZiZWhhdmlvdXJXaGlsZSB0aGVlc3RpbWF0ZWRiZWdhbiB0byBpdCBiZWNhbWVtYWduaXR1ZGVtdXN0IGhhdmVtb3JlIHRoYW5EaXJlY3RvcnlleHRlbnNpb25zZWNyZXRhcnluYXR1cmFsbHlvY2N1cnJpbmd2YXJpYWJsZXNnaXZlbiB0aGVwbGF0Zm9ybS48L2xhYmVsPjxmYWlsZWQgdG9jb21wb3VuZHNraW5kcyBvZiBzb2NpZXRpZXNhbG9uZ3NpZGUgLS0mZ3Q7Cgpzb3V0aHdlc3R0aGUgcmlnaHRyYWRpYXRpb25tYXkgaGF2ZSB1bmVzY2FwZShzcG9rZW4gaW4iIGhyZWY9Ii9wcm9ncmFtbWVvbmx5IHRoZSBjb21lIGZyb21kaXJlY3RvcnlidXJpZWQgaW5hIHNpbWlsYXJ0aGV5IHdlcmU8L2ZvbnQ+PC9Ob3J3ZWdpYW5zcGVjaWZpZWRwcm9kdWNpbmdwYXNzZW5nZXIobmV3IERhdGV0ZW1wb3JhcnlmaWN0aW9uYWxBZnRlciB0aGVlcXVhdGlvbnNkb3dubG9hZC5yZWd1bGFybHlkZXZlbG9wZXJhYm92ZSB0aGVsaW5rZWQgdG9waGVub21lbmFwZXJpb2Qgb2Z0b29sdGlwIj5zdWJzdGFuY2VhdXRvbWF0aWNhc3BlY3Qgb2ZBbW9uZyB0aGVjb25uZWN0ZWRlc3RpbWF0ZXNBaXIgRm9yY2VzeXN0ZW0gb2ZvYmplY3RpdmVpbW1lZGlhdGVtYWtpbmcgaXRwYWludGluZ3Njb25xdWVyZWRhcmUgc3RpbGxwcm9jZWR1cmVncm93dGggb2ZoZWFkZWQgYnlFdXJvcGVhbiBkaXZpc2lvbnNtb2xlY3VsZXNmcmFuY2hpc2VpbnRlbnRpb25hdHRyYWN0ZWRjaGlsZGhvb2RhbHNvIHVzZWRkZWRpY2F0ZWRzaW5nYXBvcmVkZWdyZWUgb2ZmYXRoZXIgb2Zjb25mbGljdHM8L2E+PC9wPgpjYW1lIGZyb213ZXJlIHVzZWRub3RlIHRoYXRyZWNlaXZpbmdFeGVjdXRpdmVldmVuIG1vcmVhY2Nlc3MgdG9jb21tYW5kZXJQb2xpdGljYWxtdXNpY2lhbnNkZWxpY2lvdXNwcmlzb25lcnNhZHZlbnQgb2ZVVEYtOCIgLz48IVtDREFUQVsiPkNvbnRhY3RTb3V0aGVybiBiZ2NvbG9yPSJzZXJpZXMgb2YuIEl0IHdhcyBpbiBFdXJvcGVwZXJtaXR0ZWR2YWxpZGF0ZS5hcHBlYXJpbmdvZmZpY2lhbHNzZXJpb3VzbHktbGFuZ3VhZ2Vpbml0aWF0ZWRleHRlbmRpbmdsb25nLXRlcm1pbmZsYXRpb25zdWNoIHRoYXRnZXRDb29raWVtYXJrZWQgYnk8L2J1dHRvbj5pbXBsZW1lbnRidXQgaXQgaXNpbmNyZWFzZXNkb3duIHRoZSByZXF1aXJpbmdkZXBlbmRlbnQtLT4KPCEtLSBpbnRlcnZpZXdXaXRoIHRoZSBjb3BpZXMgb2Zjb25zZW5zdXN3YXMgYnVpbHRWZW5lenVlbGEoZm9ybWVybHl0aGUgc3RhdGVwZXJzb25uZWxzdHJhdGVnaWNmYXZvdXIgb2ZpbnZlbnRpb25XaWtpcGVkaWFjb250aW5lbnR2aXJ0dWFsbHl3aGljaCB3YXNwcmluY2lwbGVDb21wbGV0ZSBpZGVudGljYWxzaG93IHRoYXRwcmltaXRpdmVhd2F5IGZyb21tb2xlY3VsYXJwcmVjaXNlbHlkaXNzb2x2ZWRVbmRlciB0aGV2ZXJzaW9uPSI+Jm5ic3A7PC9JdCBpcyB0aGUgVGhpcyBpcyB3aWxsIGhhdmVvcmdhbmlzbXNzb21lIHRpbWVGcmllZHJpY2h3YXMgZmlyc3R0aGUgb25seSBmYWN0IHRoYXRmb3JtIGlkPSJwcmVjZWRpbmdUZWNobmljYWxwaHlzaWNpc3RvY2N1cnMgaW5uYXZpZ2F0b3JzZWN0aW9uIj5zcGFuIGlkPSJzb3VnaHQgdG9iZWxvdyB0aGVzdXJ2aXZpbmd9PC9zdHlsZT5oaXMgZGVhdGhhcyBpbiB0aGVjYXVzZWQgYnlwYXJ0aWFsbHlleGlzdGluZyB1c2luZyB0aGV3YXMgZ2l2ZW5hIGxpc3Qgb2ZsZXZlbHMgb2Zub3Rpb24gb2ZPZmZpY2lhbCBkaXNtaXNzZWRzY2llbnRpc3RyZXNlbWJsZXNkdXBsaWNhdGVleHBsb3NpdmVyZWNvdmVyZWRhbGwgb3RoZXJnYWxsZXJpZXN7cGFkZGluZzpwZW9wbGUgb2ZyZWdpb24gb2ZhZGRyZXNzZXNhc3NvY2lhdGVpbWcgYWx0PSJpbiBtb2Rlcm5zaG91bGQgYmVtZXRob2Qgb2ZyZXBvcnRpbmd0aW1lc3RhbXBuZWVkZWQgdG90aGUgR3JlYXRyZWdhcmRpbmdzZWVtZWQgdG92aWV3ZWQgYXNpbXBhY3Qgb25pZGVhIHRoYXR0aGUgV29ybGRoZWlnaHQgb2ZleHBhbmRpbmdUaGVzZSBhcmVjdXJyZW50Ij5jYXJlZnVsbHltYWludGFpbnNjaGFyZ2Ugb2ZDbGFzc2ljYWxhZGRyZXNzZWRwcmVkaWN0ZWRvd25lcnNoaXA8ZGl2IGlkPSJyaWdodCI+DQpyZXNpZGVuY2VsZWF2ZSB0aGVjb250ZW50Ij5hcmUgb2Z0ZW4gIH0pKCk7DQpwcm9iYWJseSBQcm9mZXNzb3ItYnV0dG9uIiByZXNwb25kZWRzYXlzIHRoYXRoYWQgdG8gYmVwbGFjZWQgaW5IdW5nYXJpYW5zdGF0dXMgb2ZzZXJ2ZXMgYXNVbml2ZXJzYWxleGVjdXRpb25hZ2dyZWdhdGVmb3Igd2hpY2hpbmZlY3Rpb25hZ3JlZWQgdG9ob3dldmVyLCBwb3B1bGFyIj5wbGFjZWQgb25jb25zdHJ1Y3RlbGVjdG9yYWxzeW1ib2wgb2ZpbmNsdWRpbmdyZXR1cm4gdG9hcmNoaXRlY3RDaHJpc3RpYW5wcmV2aW91cyBsaXZpbmcgaW5lYXNpZXIgdG9wcm9mZXNzb3IKJmx0OyEtLSBlZmZlY3Qgb2ZhbmFseXRpY3N3YXMgdGFrZW53aGVyZSB0aGV0b29rIG92ZXJiZWxpZWYgaW5BZnJpa2FhbnNhcyBmYXIgYXNwcmV2ZW50ZWR3b3JrIHdpdGhhIHNwZWNpYWw8ZmllbGRzZXRDaHJpc3RtYXNSZXRyaWV2ZWQKCkluIHRoZSBiYWNrIGludG9ub3J0aGVhc3RtYWdhemluZXM+PHN0cm9uZz5jb21taXR0ZWVnb3Zlcm5pbmdncm91cHMgb2ZzdG9yZWQgaW5lc3RhYmxpc2hhIGdlbmVyYWxpdHMgZmlyc3R0aGVpciBvd25wb3B1bGF0ZWRhbiBvYmplY3RDYXJpYmJlYW5hbGxvdyB0aGVkaXN0cmljdHN3aXNjb25zaW5sb2NhdGlvbi47IHdpZHRoOiBpbmhhYml0ZWRTb2NpYWxpc3RKYW51YXJ5IDE8L2Zvb3Rlcj5zaW1pbGFybHljaG9pY2Ugb2Z0aGUgc2FtZSBzcGVjaWZpYyBidXNpbmVzcyBUaGUgZmlyc3QubGVuZ3RoOyBkZXNpcmUgdG9kZWFsIHdpdGhzaW5jZSB0aGV1c2VyQWdlbnRjb25jZWl2ZWRpbmRleC5waHBhcyAmcXVvdDtlbmdhZ2UgaW5yZWNlbnRseSxmZXcgeWVhcnN3ZXJlIGFsc28KPGhlYWQ+CjxlZGl0ZWQgYnlhcmUga25vd25jaXRpZXMgaW5hY2Nlc3NrZXljb25kZW1uZWRhbHNvIGhhdmVzZXJ2aWNlcyxmYW1pbHkgb2ZTY2hvb2wgb2Zjb252ZXJ0ZWRuYXR1cmUgb2YgbGFuZ3VhZ2VtaW5pc3RlcnM8L29iamVjdD50aGVyZSBpcyBhIHBvcHVsYXJzZXF1ZW5jZXNhZHZvY2F0ZWRUaGV5IHdlcmVhbnkgb3RoZXJsb2NhdGlvbj1lbnRlciB0aGVtdWNoIG1vcmVyZWZsZWN0ZWR3YXMgbmFtZWRvcmlnaW5hbCBhIHR5cGljYWx3aGVuIHRoZXllbmdpbmVlcnNjb3VsZCBub3RyZXNpZGVudHN3ZWRuZXNkYXl0aGUgdGhpcmQgcHJvZHVjdHNKYW51YXJ5IDJ3aGF0IHRoZXlhIGNlcnRhaW5yZWFjdGlvbnNwcm9jZXNzb3JhZnRlciBoaXN0aGUgbGFzdCBjb250YWluZWQiPjwvZGl2Pgo8L2E+PC90ZD5kZXBlbmQgb25zZWFyY2giPgpwaWVjZXMgb2Zjb21wZXRpbmdSZWZlcmVuY2V0ZW5uZXNzZWV3aGljaCBoYXMgdmVyc2lvbj08L3NwYW4+IDw8L2hlYWRlcj5naXZlcyB0aGVoaXN0b3JpYW52YWx1ZT0iIj5wYWRkaW5nOjB2aWV3IHRoYXR0b2dldGhlcix0aGUgbW9zdCB3YXMgZm91bmRzdWJzZXQgb2ZhdHRhY2sgb25jaGlsZHJlbixwb2ludHMgb2ZwZXJzb25hbCBwb3NpdGlvbjphbGxlZ2VkbHlDbGV2ZWxhbmR3YXMgbGF0ZXJhbmQgYWZ0ZXJhcmUgZ2l2ZW53YXMgc3RpbGxzY3JvbGxpbmdkZXNpZ24gb2ZtYWtlcyB0aGVtdWNoIGxlc3NBbWVyaWNhbnMuCgpBZnRlciAsIGJ1dCB0aGVNdXNldW0gb2Zsb3Vpc2lhbmEoZnJvbSB0aGVtaW5uZXNvdGFwYXJ0aWNsZXNhIHByb2Nlc3NEb21pbmljYW52b2x1bWUgb2ZyZXR1cm5pbmdkZWZlbnNpdmUwMHB4fHJpZ2htYWRlIGZyb21tb3VzZW92ZXIiIHN0eWxlPSJzdGF0ZXMgb2Yod2hpY2ggaXNjb250aW51ZXNGcmFuY2lzY29idWlsZGluZyB3aXRob3V0IGF3aXRoIHNvbWV3aG8gd291bGRhIGZvcm0gb2ZhIHBhcnQgb2ZiZWZvcmUgaXRrbm93biBhcyAgU2VydmljZXNsb2NhdGlvbiBhbmQgb2Z0ZW5tZWFzdXJpbmdhbmQgaXQgaXNwYXBlcmJhY2t2YWx1ZXMgb2YNCjx0aXRsZT49IHdpbmRvdy5kZXRlcm1pbmVlciZxdW90OyBwbGF5ZWQgYnlhbmQgZWFybHk8L2NlbnRlcj5mcm9tIHRoaXN0aGUgdGhyZWVwb3dlciBhbmRvZiAmcXVvdDtpbm5lckhUTUw8YSBocmVmPSJ5OmlubGluZTtDaHVyY2ggb2Z0aGUgZXZlbnR2ZXJ5IGhpZ2hvZmZpY2lhbCAtaGVpZ2h0OiBjb250ZW50PSIvY2dpLWJpbi90byBjcmVhdGVhZnJpa2FhbnNlc3BlcmFudG9mcmFuw6dhaXNsYXR2aWXFoXVsaWV0dXZpxbPEjGXFoXRpbmHEjWXFoXRpbmHguYTguJfguKLml6XmnKzoqp7nroDkvZPlrZfnuYHpq5TlrZftlZzqta3slrTkuLrku4DkuYjorqHnrpfmnLrnrJTorrDmnKzoqI7oq5bljYDmnI3liqHlmajkupLogZTnvZHmiL/lnLDkuqfkv7HkuZDpg6jlh7rniYjnpL7mjpLooYzmppzpg6jokL3moLzov5vkuIDmraXmlK/ku5jlrp3pqozor4HnoIHlp5TlkZjkvJrmlbDmja7lupPmtojotLnogIXlip7lhazlrqTorqjorrrljLrmt7HlnLPluILmkq3mlL7lmajljJfkuqzluILlpKflrabnlJ/otormnaXotornrqHnkIblkZjkv6Hmga/nvZFzZXJ2aWNpb3NhcnTDrWN1bG9hcmdlbnRpbmFiYXJjZWxvbmFjdWFscXVpZXJwdWJsaWNhZG9wcm9kdWN0b3Nwb2zDrXRpY2FyZXNwdWVzdGF3aWtpcGVkaWFzaWd1aWVudGViw7pzcXVlZGFjb211bmlkYWRzZWd1cmlkYWRwcmluY2lwYWxwcmVndW50YXNjb250ZW5pZG9yZXNwb25kZXJ2ZW5lenVlbGFwcm9ibGVtYXNkaWNpZW1icmVyZWxhY2nDs25ub3ZpZW1icmVzaW1pbGFyZXNwcm95ZWN0b3Nwcm9ncmFtYXNpbnN0aXR1dG9hY3RpdmlkYWRlbmN1ZW50cmFlY29ub23DrWFpbcOhZ2VuZXNjb250YWN0YXJkZXNjYXJnYXJuZWNlc2FyaW9hdGVuY2nDs250ZWzDqWZvbm9jb21pc2nDs25jYW5jaW9uZXNjYXBhY2lkYWRlbmNvbnRyYXJhbsOhbGlzaXNmYXZvcml0b3N0w6lybWlub3Nwcm92aW5jaWFldGlxdWV0YXNlbGVtZW50b3NmdW5jaW9uZXNyZXN1bHRhZG9jYXLDoWN0ZXJwcm9waWVkYWRwcmluY2lwaW9uZWNlc2lkYWRtdW5pY2lwYWxjcmVhY2nDs25kZXNjYXJnYXNwcmVzZW5jaWFjb21lcmNpYWxvcGluaW9uZXNlamVyY2ljaW9lZGl0b3JpYWxzYWxhbWFuY2Fnb256w6FsZXpkb2N1bWVudG9wZWzDrWN1bGFyZWNpZW50ZXNnZW5lcmFsZXN0YXJyYWdvbmFwcsOhY3RpY2Fub3ZlZGFkZXNwcm9wdWVzdGFwYWNpZW50ZXN0w6ljbmljYXNvYmpldGl2b3Njb250YWN0b3PgpK7gpYfgpILgpLLgpL/gpI/gpLngpYjgpILgpJfgpK/gpL7gpLjgpL7gpKXgpI/gpLXgpILgpLDgpLngpYfgpJXgpYvgpIjgpJXgpYHgpJvgpLDgpLngpL7gpKzgpL7gpKbgpJXgpLngpL7gpLjgpK3gpYDgpLngpYHgpI/gpLDgpLngpYDgpK7gpYjgpILgpKbgpL/gpKjgpKzgpL7gpKRkaXBsb2RvY3PgpLjgpK7gpK/gpLDgpYLgpKrgpKjgpL7gpK7gpKrgpKTgpL7gpKvgpL/gpLDgpJTgpLjgpKTgpKTgpLDgpLngpLLgpYvgpJfgpLngpYHgpIbgpKzgpL7gpLDgpKbgpYfgpLbgpLngpYHgpIjgpJbgpYfgpLLgpK/gpKbgpL/gpJXgpL7gpK7gpLXgpYfgpKzgpKTgpYDgpKjgpKzgpYDgpJrgpK7gpYzgpKTgpLjgpL7gpLLgpLLgpYfgpJbgpJzgpYngpKzgpK7gpKbgpKbgpKTgpKXgpL7gpKjgpLngpYDgpLbgpLngpLDgpIXgpLLgpJfgpJXgpK3gpYDgpKjgpJfgpLDgpKrgpL7gpLjgpLDgpL7gpKTgpJXgpL/gpI/gpIngpLjgpYfgpJfgpK/gpYDgpLngpYLgpIHgpIbgpJfgpYfgpJ/gpYDgpK7gpJbgpYvgpJzgpJXgpL7gpLDgpIXgpK3gpYDgpJfgpK/gpYfgpKTgpYHgpK7gpLXgpYvgpJ/gpKbgpYfgpILgpIXgpJfgpLDgpJDgpLjgpYfgpK7gpYfgpLLgpLLgpJfgpL7gpLngpL7gpLLgpIrgpKrgpLDgpJrgpL7gpLDgpJDgpLjgpL7gpKbgpYfgpLDgpJzgpL/gpLjgpKbgpL/gpLLgpKzgpILgpKbgpKzgpKjgpL7gpLngpYLgpILgpLLgpL7gpJbgpJzgpYDgpKTgpKzgpJ/gpKjgpK7gpL/gpLLgpIfgpLjgpYfgpIbgpKjgpYfgpKjgpK/gpL7gpJXgpYHgpLLgpLLgpYngpJfgpK3gpL7gpJfgpLDgpYfgpLLgpJzgpJfgpLngpLDgpL7gpK7gpLLgpJfgpYfgpKrgpYfgpJzgpLngpL7gpKXgpIfgpLjgpYDgpLjgpLngpYDgpJXgpLLgpL7gpKDgpYDgpJXgpLngpL7gpIHgpKbgpYLgpLDgpKTgpLngpKTgpLjgpL7gpKTgpK/gpL7gpKbgpIbgpK/gpL7gpKrgpL7gpJXgpJXgpYzgpKjgpLbgpL7gpK7gpKbgpYfgpJbgpK/gpLngpYDgpLDgpL7gpK/gpJbgpYHgpKbgpLLgpJfgpYBjYXRlZ29yaWVzZXhwZXJpZW5jZTwvdGl0bGU+DQpDb3B5cmlnaHQgamF2YXNjcmlwdGNvbmRpdGlvbnNldmVyeXRoaW5nPHAgY2xhc3M9InRlY2hub2xvZ3liYWNrZ3JvdW5kPGEgY2xhc3M9Im1hbmFnZW1lbnQmY29weTsgMjAxamF2YVNjcmlwdGNoYXJhY3RlcnNicmVhZGNydW1idGhlbXNlbHZlc2hvcml6b250YWxnb3Zlcm5tZW50Q2FsaWZvcm5pYWFjdGl2aXRpZXNkaXNjb3ZlcmVkTmF2aWdhdGlvbnRyYW5zaXRpb25jb25uZWN0aW9ubmF2aWdhdGlvbmFwcGVhcmFuY2U8L3RpdGxlPjxtY2hlY2tib3giIHRlY2huaXF1ZXNwcm90ZWN0aW9uYXBwYXJlbnRseWFzIHdlbGwgYXN1bnQnLCAnVUEtcmVzb2x1dGlvbm9wZXJhdGlvbnN0ZWxldmlzaW9udHJhbnNsYXRlZFdhc2hpbmd0b25uYXZpZ2F0b3IuID0gd2luZG93LmltcHJlc3Npb24mbHQ7YnImZ3Q7bGl0ZXJhdHVyZXBvcHVsYXRpb25iZ2NvbG9yPSIjZXNwZWNpYWxseSBjb250ZW50PSJwcm9kdWN0aW9ubmV3c2xldHRlcnByb3BlcnRpZXNkZWZpbml0aW9ubGVhZGVyc2hpcFRlY2hub2xvZ3lQYXJsaWFtZW50Y29tcGFyaXNvbnVsIGNsYXNzPSIuaW5kZXhPZigiY29uY2x1c2lvbmRpc2N1c3Npb25jb21wb25lbnRzYmlvbG9naWNhbFJldm9sdXRpb25fY29udGFpbmVydW5kZXJzdG9vZG5vc2NyaXB0PjxwZXJtaXNzaW9uZWFjaCBvdGhlcmF0bW9zcGhlcmUgb25mb2N1cz0iPGZvcm0gaWQ9InByb2Nlc3Npbmd0aGlzLnZhbHVlZ2VuZXJhdGlvbkNvbmZlcmVuY2VzdWJzZXF1ZW50d2VsbC1rbm93bnZhcmlhdGlvbnNyZXB1dGF0aW9ucGhlbm9tZW5vbmRpc2NpcGxpbmVsb2dvLnBuZyIgKGRvY3VtZW50LGJvdW5kYXJpZXNleHByZXNzaW9uc2V0dGxlbWVudEJhY2tncm91bmRvdXQgb2YgdGhlZW50ZXJwcmlzZSgiaHR0cHM6IiB1bmVzY2FwZSgicGFzc3dvcmQiIGRlbW9jcmF0aWM8YSBocmVmPSIvd3JhcHBlciI+Cm1lbWJlcnNoaXBsaW5ndWlzdGljcHg7cGFkZGluZ3BoaWxvc29waHlhc3Npc3RhbmNldW5pdmVyc2l0eWZhY2lsaXRpZXNyZWNvZ25pemVkcHJlZmVyZW5jZWlmICh0eXBlb2ZtYWludGFpbmVkdm9jYWJ1bGFyeWh5cG90aGVzaXMuc3VibWl0KCk7JmFtcDtuYnNwO2Fubm90YXRpb25iZWhpbmQgdGhlRm91bmRhdGlvbnB1Ymxpc2hlciJhc3N1bXB0aW9uaW50cm9kdWNlZGNvcnJ1cHRpb25zY2llbnRpc3RzZXhwbGljaXRseWluc3RlYWQgb2ZkaW1lbnNpb25zIG9uQ2xpY2s9ImNvbnNpZGVyZWRkZXBhcnRtZW50b2NjdXBhdGlvbnNvb24gYWZ0ZXJpbnZlc3RtZW50cHJvbm91bmNlZGlkZW50aWZpZWRleHBlcmltZW50TWFuYWdlbWVudGdlb2dyYXBoaWMiIGhlaWdodD0ibGluayByZWw9Ii5yZXBsYWNlKC9kZXByZXNzaW9uY29uZmVyZW5jZXB1bmlzaG1lbnRlbGltaW5hdGVkcmVzaXN0YW5jZWFkYXB0YXRpb25vcHBvc2l0aW9ud2VsbCBrbm93bnN1cHBsZW1lbnRkZXRlcm1pbmVkaDEgY2xhc3M9IjBweDttYXJnaW5tZWNoYW5pY2Fsc3RhdGlzdGljc2NlbGVicmF0ZWRHb3Zlcm5tZW50CgpEdXJpbmcgdGRldmVsb3BlcnNhcnRpZmljaWFsZXF1aXZhbGVudG9yaWdpbmF0ZWRDb21taXNzaW9uYXR0YWNobWVudDxzcGFuIGlkPSJ0aGVyZSB3ZXJlTmVkZXJsYW5kc2JleW9uZCB0aGVyZWdpc3RlcmVkam91cm5hbGlzdGZyZXF1ZW50bHlhbGwgb2YgdGhlbGFuZz0iZW4iIDwvc3R5bGU+DQphYnNvbHV0ZTsgc3VwcG9ydGluZ2V4dHJlbWVseSBtYWluc3RyZWFtPC9zdHJvbmc+IHBvcHVsYXJpdHllbXBsb3ltZW50PC90YWJsZT4NCiBjb2xzcGFuPSI8L2Zvcm0+CiAgY29udmVyc2lvbmFib3V0IHRoZSA8L3A+PC9kaXY+aW50ZWdyYXRlZCIgbGFuZz0iZW5Qb3J0dWd1ZXNlc3Vic3RpdHV0ZWluZGl2aWR1YWxpbXBvc3NpYmxlbXVsdGltZWRpYWFsbW9zdCBhbGxweCBzb2xpZCAjYXBhcnQgZnJvbXN1YmplY3QgdG9pbiBFbmdsaXNoY3JpdGljaXplZGV4Y2VwdCBmb3JndWlkZWxpbmVzb3JpZ2luYWxseXJlbWFya2FibGV0aGUgc2Vjb25kaDIgY2xhc3M9IjxhIHRpdGxlPSIoaW5jbHVkaW5ncGFyYW1ldGVyc3Byb2hpYml0ZWQ9ICJodHRwOi8vZGljdGlvbmFyeXBlcmNlcHRpb25yZXZvbHV0aW9uZm91bmRhdGlvbnB4O2hlaWdodDpzdWNjZXNzZnVsc3VwcG9ydGVyc21pbGxlbm5pdW1oaXMgZmF0aGVydGhlICZxdW90O25vLXJlcGVhdDtjb21tZXJjaWFsaW5kdXN0cmlhbGVuY291cmFnZWRhbW91bnQgb2YgdW5vZmZpY2lhbGVmZmljaWVuY3lSZWZlcmVuY2VzY29vcmRpbmF0ZWRpc2NsYWltZXJleHBlZGl0aW9uZGV2ZWxvcGluZ2NhbGN1bGF0ZWRzaW1wbGlmaWVkbGVnaXRpbWF0ZXN1YnN0cmluZygwIiBjbGFzcz0iY29tcGxldGVseWlsbHVzdHJhdGVmaXZlIHllYXJzaW5zdHJ1bWVudFB1Ymxpc2hpbmcxIiBjbGFzcz0icHN5Y2hvbG9neWNvbmZpZGVuY2VudW1iZXIgb2YgYWJzZW5jZSBvZmZvY3VzZWQgb25qb2luZWQgdGhlc3RydWN0dXJlc3ByZXZpb3VzbHk+PC9pZnJhbWU+b25jZSBhZ2FpbmJ1dCByYXRoZXJpbW1pZ3JhbnRzb2YgY291cnNlLGEgZ3JvdXAgb2ZMaXRlcmF0dXJlVW5saWtlIHRoZTwvYT4mbmJzcDsKZnVuY3Rpb24gaXQgd2FzIHRoZUNvbnZlbnRpb25hdXRvbW9iaWxlUHJvdGVzdGFudGFnZ3Jlc3NpdmVhZnRlciB0aGUgU2ltaWxhcmx5LCIgLz48L2Rpdj5jb2xsZWN0aW9uDQpmdW5jdGlvbnZpc2liaWxpdHl0aGUgdXNlIG9mdm9sdW50ZWVyc2F0dHJhY3Rpb251bmRlciB0aGUgdGhyZWF0ZW5lZCo8IVtDREFUQVtpbXBvcnRhbmNlaW4gZ2VuZXJhbHRoZSBsYXR0ZXI8L2Zvcm0+CjwvLmluZGV4T2YoJ2kgPSAwOyBpIDxkaWZmZXJlbmNlZGV2b3RlZCB0b3RyYWRpdGlvbnNzZWFyY2ggZm9ydWx0aW1hdGVseXRvdXJuYW1lbnRhdHRyaWJ1dGVzc28tY2FsbGVkIH0KPC9zdHlsZT5ldmFsdWF0aW9uZW1waGFzaXplZGFjY2Vzc2libGU8L3NlY3Rpb24+c3VjY2Vzc2lvbmFsb25nIHdpdGhNZWFud2hpbGUsaW5kdXN0cmllczwvYT48YnIgLz5oYXMgYmVjb21lYXNwZWN0cyBvZlRlbGV2aXNpb25zdWZmaWNpZW50YmFza2V0YmFsbGJvdGggc2lkZXNjb250aW51aW5nYW4gYXJ0aWNsZTxpbWcgYWx0PSJhZHZlbnR1cmVzaGlzIG1vdGhlcm1hbmNoZXN0ZXJwcmluY2lwbGVzcGFydGljdWxhcmNvbW1lbnRhcnllZmZlY3RzIG9mZGVjaWRlZCB0byI+PHN0cm9uZz5wdWJsaXNoZXJzSm91cm5hbCBvZmRpZmZpY3VsdHlmYWNpbGl0YXRlYWNjZXB0YWJsZXN0eWxlLmNzcyIJZnVuY3Rpb24gaW5ub3ZhdGlvbj5Db3B5cmlnaHRzaXR1YXRpb25zd291bGQgaGF2ZWJ1c2luZXNzZXNEaWN0aW9uYXJ5c3RhdGVtZW50c29mdGVuIHVzZWRwZXJzaXN0ZW50aW4gSmFudWFyeWNvbXByaXNpbmc8L3RpdGxlPgoJZGlwbG9tYXRpY2NvbnRhaW5pbmdwZXJmb3JtaW5nZXh0ZW5zaW9uc21heSBub3QgYmVjb25jZXB0IG9mIG9uY2xpY2s9Ikl0IGlzIGFsc29maW5hbmNpYWwgbWFraW5nIHRoZUx1eGVtYm91cmdhZGRpdGlvbmFsYXJlIGNhbGxlZGVuZ2FnZWQgaW4ic2NyaXB0Iik7YnV0IGl0IHdhc2VsZWN0cm9uaWNvbnN1Ym1pdD0iCjwhLS0gRW5kIGVsZWN0cmljYWxvZmZpY2lhbGx5c3VnZ2VzdGlvbnRvcCBvZiB0aGV1bmxpa2UgdGhlQXVzdHJhbGlhbk9yaWdpbmFsbHlyZWZlcmVuY2VzCjwvaGVhZD4NCnJlY29nbmlzZWRpbml0aWFsaXplbGltaXRlZCB0b0FsZXhhbmRyaWFyZXRpcmVtZW50QWR2ZW50dXJlc2ZvdXIgeWVhcnMKCiZsdDshLS0gaW5jcmVhc2luZ2RlY29yYXRpb25oMyBjbGFzcz0ib3JpZ2lucyBvZm9ibGlnYXRpb25yZWd1bGF0aW9uY2xhc3NpZmllZChmdW5jdGlvbihhZHZhbnRhZ2VzYmVpbmcgdGhlIGhpc3RvcmlhbnM8YmFzZSBocmVmcmVwZWF0ZWRseXdpbGxpbmcgdG9jb21wYXJhYmxlZGVzaWduYXRlZG5vbWluYXRpb25mdW5jdGlvbmFsaW5zaWRlIHRoZXJldmVsYXRpb25lbmQgb2YgdGhlcyBmb3IgdGhlIGF1dGhvcml6ZWRyZWZ1c2VkIHRvdGFrZSBwbGFjZWF1dG9ub21vdXNjb21wcm9taXNlcG9saXRpY2FsIHJlc3RhdXJhbnR0d28gb2YgdGhlRmVicnVhcnkgMnF1YWxpdHkgb2Zzd2ZvYmplY3QudW5kZXJzdGFuZG5lYXJseSBhbGx3cml0dGVuIGJ5aW50ZXJ2aWV3cyIgd2lkdGg9IjF3aXRoZHJhd2FsZmxvYXQ6bGVmdGlzIHVzdWFsbHljYW5kaWRhdGVzbmV3c3BhcGVyc215c3RlcmlvdXNEZXBhcnRtZW50YmVzdCBrbm93bnBhcmxpYW1lbnRzdXBwcmVzc2VkY29udmVuaWVudHJlbWVtYmVyZWRkaWZmZXJlbnQgc3lzdGVtYXRpY2hhcyBsZWQgdG9wcm9wYWdhbmRhY29udHJvbGxlZGluZmx1ZW5jZXNjZXJlbW9uaWFscHJvY2xhaW1lZFByb3RlY3Rpb25saSBjbGFzcz0iU2NpZW50aWZpY2NsYXNzPSJuby10cmFkZW1hcmtzbW9yZSB0aGFuIHdpZGVzcHJlYWRMaWJlcmF0aW9udG9vayBwbGFjZWRheSBvZiB0aGVhcyBsb25nIGFzaW1wcmlzb25lZEFkZGl0aW9uYWwKPGhlYWQ+CjxtTGFib3JhdG9yeU5vdmVtYmVyIDJleGNlcHRpb25zSW5kdXN0cmlhbHZhcmlldHkgb2ZmbG9hdDogbGVmRHVyaW5nIHRoZWFzc2Vzc21lbnRoYXZlIGJlZW4gZGVhbHMgd2l0aFN0YXRpc3RpY3NvY2N1cnJlbmNlL3VsPjwvZGl2PmNsZWFyZml4Ij50aGUgcHVibGljbWFueSB5ZWFyc3doaWNoIHdlcmVvdmVyIHRpbWUsc3lub255bW91c2NvbnRlbnQiPgpwcmVzdW1hYmx5aGlzIGZhbWlseXVzZXJBZ2VudC51bmV4cGVjdGVkaW5jbHVkaW5nIGNoYWxsZW5nZWRhIG1pbm9yaXR5dW5kZWZpbmVkImJlbG9uZ3MgdG90YWtlbiBmcm9taW4gT2N0b2JlcnBvc2l0aW9uOiBzYWlkIHRvIGJlcmVsaWdpb3VzIEZlZGVyYXRpb24gcm93c3Bhbj0ib25seSBhIGZld21lYW50IHRoYXRsZWQgdG8gdGhlLS0+DQo8ZGl2IDxmaWVsZHNldD5BcmNoYmlzaG9wIGNsYXNzPSJub2JlaW5nIHVzZWRhcHByb2FjaGVzcHJpdmlsZWdlc25vc2NyaXB0PgpyZXN1bHRzIGlubWF5IGJlIHRoZUVhc3RlciBlZ2dtZWNoYW5pc21zcmVhc29uYWJsZVBvcHVsYXRpb25Db2xsZWN0aW9uc2VsZWN0ZWQiPm5vc2NyaXB0Pg0vaW5kZXgucGhwYXJyaXZhbCBvZi1qc3NkaycpKTttYW5hZ2VkIHRvaW5jb21wbGV0ZWNhc3VhbHRpZXNjb21wbGV0aW9uQ2hyaXN0aWFuc1NlcHRlbWJlciBhcml0aG1ldGljcHJvY2VkdXJlc21pZ2h0IGhhdmVQcm9kdWN0aW9uaXQgYXBwZWFyc1BoaWxvc29waHlmcmllbmRzaGlwbGVhZGluZyB0b2dpdmluZyB0aGV0b3dhcmQgdGhlZ3VhcmFudGVlZGRvY3VtZW50ZWRjb2xvcjojMDAwdmlkZW8gZ2FtZWNvbW1pc3Npb25yZWZsZWN0aW5nY2hhbmdlIHRoZWFzc29jaWF0ZWRzYW5zLXNlcmlmb25rZXlwcmVzczsgcGFkZGluZzpIZSB3YXMgdGhldW5kZXJseWluZ3R5cGljYWxseSAsIGFuZCB0aGUgc3JjRWxlbWVudHN1Y2Nlc3NpdmVzaW5jZSB0aGUgc2hvdWxkIGJlIG5ldHdvcmtpbmdhY2NvdW50aW5ndXNlIG9mIHRoZWxvd2VyIHRoYW5zaG93cyB0aGF0PC9zcGFuPgoJCWNvbXBsYWludHNjb250aW51b3VzcXVhbnRpdGllc2FzdHJvbm9tZXJoZSBkaWQgbm90ZHVlIHRvIGl0c2FwcGxpZWQgdG9hbiBhdmVyYWdlZWZmb3J0cyB0b3RoZSBmdXR1cmVhdHRlbXB0IHRvVGhlcmVmb3JlLGNhcGFiaWxpdHlSZXB1YmxpY2Fud2FzIGZvcm1lZEVsZWN0cm9uaWNraWxvbWV0ZXJzY2hhbGxlbmdlc3B1Ymxpc2hpbmd0aGUgZm9ybWVyaW5kaWdlbm91c2RpcmVjdGlvbnNzdWJzaWRpYXJ5Y29uc3BpcmFjeWRldGFpbHMgb2ZhbmQgaW4gdGhlYWZmb3JkYWJsZXN1YnN0YW5jZXNyZWFzb24gZm9yY29udmVudGlvbml0ZW10eXBlPSJhYnNvbHV0ZWx5c3VwcG9zZWRseXJlbWFpbmVkIGFhdHRyYWN0aXZldHJhdmVsbGluZ3NlcGFyYXRlbHlmb2N1c2VzIG9uZWxlbWVudGFyeWFwcGxpY2FibGVmb3VuZCB0aGF0c3R5bGVzaGVldG1hbnVzY3JpcHRzdGFuZHMgZm9yIG5vLXJlcGVhdChzb21ldGltZXNDb21tZXJjaWFsaW4gQW1lcmljYXVuZGVydGFrZW5xdWFydGVyIG9mYW4gZXhhbXBsZXBlcnNvbmFsbHlpbmRleC5waHA/PC9idXR0b24+CnBlcmNlbnRhZ2ViZXN0LWtub3duY3JlYXRpbmcgYSIgZGlyPSJsdHJMaWV1dGVuYW50CjxkaXYgaWQ9InRoZXkgd291bGRhYmlsaXR5IG9mbWFkZSB1cCBvZm5vdGVkIHRoYXRjbGVhciB0aGF0YXJndWUgdGhhdHRvIGFub3RoZXJjaGlsZHJlbidzcHVycG9zZSBvZmZvcm11bGF0ZWRiYXNlZCB1cG9udGhlIHJlZ2lvbnN1YmplY3Qgb2ZwYXNzZW5nZXJzcG9zc2Vzc2lvbi4KCkluIHRoZSBCZWZvcmUgdGhlYWZ0ZXJ3YXJkc2N1cnJlbnRseSBhY3Jvc3MgdGhlc2NpZW50aWZpY2NvbW11bml0eS5jYXBpdGFsaXNtaW4gR2VybWFueXJpZ2h0LXdpbmd0aGUgc3lzdGVtU29jaWV0eSBvZnBvbGl0aWNpYW5kaXJlY3Rpb246d2VudCBvbiB0b3JlbW92YWwgb2YgTmV3IFlvcmsgYXBhcnRtZW50c2luZGljYXRpb25kdXJpbmcgdGhldW5sZXNzIHRoZWhpc3RvcmljYWxoYWQgYmVlbiBhZGVmaW5pdGl2ZWluZ3JlZGllbnRhdHRlbmRhbmNlQ2VudGVyIGZvcnByb21pbmVuY2VyZWFkeVN0YXRlc3RyYXRlZ2llc2J1dCBpbiB0aGVhcyBwYXJ0IG9mY29uc3RpdHV0ZWNsYWltIHRoYXRsYWJvcmF0b3J5Y29tcGF0aWJsZWZhaWx1cmUgb2YsIHN1Y2ggYXMgYmVnYW4gd2l0aHVzaW5nIHRoZSB0byBwcm92aWRlZmVhdHVyZSBvZmZyb20gd2hpY2gvIiBjbGFzcz0iZ2VvbG9naWNhbHNldmVyYWwgb2ZkZWxpYmVyYXRlaW1wb3J0YW50IGhvbGRzIHRoYXRpbmcmcXVvdDsgdmFsaWduPXRvcHRoZSBHZXJtYW5vdXRzaWRlIG9mbmVnb3RpYXRlZGhpcyBjYXJlZXJzZXBhcmF0aW9uaWQ9InNlYXJjaHdhcyBjYWxsZWR0aGUgZm91cnRocmVjcmVhdGlvbm90aGVyIHRoYW5wcmV2ZW50aW9ud2hpbGUgdGhlIGVkdWNhdGlvbixjb25uZWN0aW5nYWNjdXJhdGVseXdlcmUgYnVpbHR3YXMga2lsbGVkYWdyZWVtZW50c211Y2ggbW9yZSBEdWUgdG8gdGhld2lkdGg6IDEwMHNvbWUgb3RoZXJLaW5nZG9tIG9mdGhlIGVudGlyZWZhbW91cyBmb3J0byBjb25uZWN0b2JqZWN0aXZlc3RoZSBGcmVuY2hwZW9wbGUgYW5kZmVhdHVyZWQiPmlzIHNhaWQgdG9zdHJ1Y3R1cmFscmVmZXJlbmR1bW1vc3Qgb2Z0ZW5hIHNlcGFyYXRlLT4KPGRpdiBpZCBPZmZpY2lhbCB3b3JsZHdpZGUuYXJpYS1sYWJlbHRoZSBwbGFuZXRhbmQgaXQgd2FzZCIgdmFsdWU9Imxvb2tpbmcgYXRiZW5lZmljaWFsYXJlIGluIHRoZW1vbml0b3JpbmdyZXBvcnRlZGx5dGhlIG1vZGVybndvcmtpbmcgb25hbGxvd2VkIHRvd2hlcmUgdGhlIGlubm92YXRpdmU8L2E+PC9kaXY+c291bmR0cmFja3NlYXJjaEZvcm10ZW5kIHRvIGJlaW5wdXQgaWQ9Im9wZW5pbmcgb2ZyZXN0cmljdGVkYWRvcHRlZCBieWFkZHJlc3Npbmd0aGVvbG9naWFubWV0aG9kcyBvZnZhcmlhbnQgb2ZDaHJpc3RpYW4gdmVyeSBsYXJnZWF1dG9tb3RpdmVieSBmYXIgdGhlcmFuZ2UgZnJvbXB1cnN1aXQgb2Zmb2xsb3cgdGhlYnJvdWdodCB0b2luIEVuZ2xhbmRhZ3JlZSB0aGF0YWNjdXNlZCBvZmNvbWVzIGZyb21wcmV2ZW50aW5nZGl2IHN0eWxlPWhpcyBvciBoZXJ0cmVtZW5kb3VzZnJlZWRvbSBvZmNvbmNlcm5pbmcwIDFlbSAxZW07QmFza2V0YmFsbC9zdHlsZS5jc3NhbiBlYXJsaWVyZXZlbiBhZnRlci8iIHRpdGxlPSIuY29tL2luZGV4dGFraW5nIHRoZXBpdHRzYnVyZ2hjb250ZW50Ij4NPHNjcmlwdD4oZnR1cm5lZCBvdXRoYXZpbmcgdGhlPC9zcGFuPg0KIG9jY2FzaW9uYWxiZWNhdXNlIGl0c3RhcnRlZCB0b3BoeXNpY2FsbHk+PC9kaXY+CiAgY3JlYXRlZCBieUN1cnJlbnRseSwgYmdjb2xvcj0idGFiaW5kZXg9ImRpc2FzdHJvdXNBbmFseXRpY3MgYWxzbyBoYXMgYT48ZGl2IGlkPSI8L3N0eWxlPgo8Y2FsbGVkIGZvcnNpbmdlciBhbmQuc3JjID0gIi8vdmlvbGF0aW9uc3RoaXMgcG9pbnRjb25zdGFudGx5aXMgbG9jYXRlZHJlY29yZGluZ3NkIGZyb20gdGhlbmVkZXJsYW5kc3BvcnR1Z3XDqnPXoteR16jXmdeq2YHYp9ix2LPbjGRlc2Fycm9sbG9jb21lbnRhcmlvZWR1Y2FjacOzbnNlcHRpZW1icmVyZWdpc3RyYWRvZGlyZWNjacOzbnViaWNhY2nDs25wdWJsaWNpZGFkcmVzcHVlc3Rhc3Jlc3VsdGFkb3NpbXBvcnRhbnRlcmVzZXJ2YWRvc2FydMOtY3Vsb3NkaWZlcmVudGVzc2lndWllbnRlc3JlcMO6YmxpY2FzaXR1YWNpw7NubWluaXN0ZXJpb3ByaXZhY2lkYWRkaXJlY3RvcmlvZm9ybWFjacOzbnBvYmxhY2nDs25wcmVzaWRlbnRlY29udGVuaWRvc2FjY2Vzb3Jpb3N0ZWNobm9yYXRpcGVyc29uYWxlc2NhdGVnb3LDrWFlc3BlY2lhbGVzZGlzcG9uaWJsZWFjdHVhbGlkYWRyZWZlcmVuY2lhdmFsbGFkb2xpZGJpYmxpb3RlY2FyZWxhY2lvbmVzY2FsZW5kYXJpb3BvbMOtdGljYXNhbnRlcmlvcmVzZG9jdW1lbnRvc25hdHVyYWxlemFtYXRlcmlhbGVzZGlmZXJlbmNpYWVjb27Ds21pY2F0cmFuc3BvcnRlcm9kcsOtZ3VlenBhcnRpY2lwYXJlbmN1ZW50cmFuZGlzY3VzacOzbmVzdHJ1Y3R1cmFmdW5kYWNpw7NuZnJlY3VlbnRlc3Blcm1hbmVudGV0b3RhbG1lbnRl0LzQvtC20L3QvtCx0YPQtNC10YLQvNC+0LbQtdGC0LLRgNC10LzRj9GC0LDQutC20LXRh9GC0L7QsdGL0LHQvtC70LXQtdC+0YfQtdC90YzRjdGC0L7Qs9C+0LrQvtCz0LTQsNC/0L7RgdC70LXQstGB0LXQs9C+0YHQsNC50YLQtdGH0LXRgNC10LfQvNC+0LPRg9GC0YHQsNC50YLQsNC20LjQt9C90LjQvNC10LbQtNGD0LHRg9C00YPRgtCf0L7QuNGB0LrQt9C00LXRgdGM0LLQuNC00LXQvtGB0LLRj9C30LjQvdGD0LbQvdC+0YHQstC+0LXQudC70Y7QtNC10LnQv9C+0YDQvdC+0LzQvdC+0LPQvtC00LXRgtC10LnRgdCy0L7QuNGF0L/RgNCw0LLQsNGC0LDQutC+0LnQvNC10YHRgtC+0LjQvNC10LXRgtC20LjQt9C90YzQvtC00L3QvtC50LvRg9GH0YjQtdC/0LXRgNC10LTRh9Cw0YHRgtC40YfQsNGB0YLRjNGA0LDQsdC+0YLQvdC+0LLRi9GF0L/RgNCw0LLQvtGB0L7QsdC+0LnQv9C+0YLQvtC80LzQtdC90LXQtdGH0LjRgdC70LXQvdC+0LLRi9C10YPRgdC70YPQs9C+0LrQvtC70L7QvdCw0LfQsNC00YLQsNC60L7QtdGC0L7Qs9C00LDQv9C+0YfRgtC40J/QvtGB0LvQtdGC0LDQutC40LXQvdC+0LLRi9C50YHRgtC+0LjRgtGC0LDQutC40YXRgdGA0LDQt9GD0KHQsNC90LrRgtGE0L7RgNGD0LzQmtC+0LPQtNCw0LrQvdC40LPQuNGB0LvQvtCy0LDQvdCw0YjQtdC50L3QsNC50YLQuNGB0LLQvtC40LzRgdCy0Y/Qt9GM0LvRjtCx0L7QudGH0LDRgdGC0L7RgdGA0LXQtNC40JrRgNC+0LzQtdCk0L7RgNGD0LzRgNGL0L3QutC10YHRgtCw0LvQuNC/0L7QuNGB0LrRgtGL0YHRj9GH0LzQtdGB0Y/RhtGG0LXQvdGC0YDRgtGA0YPQtNCw0YHQsNC80YvRhdGA0YvQvdC60LDQndC+0LLRi9C50YfQsNGB0L7QstC80LXRgdGC0LDRhNC40LvRjNC80LzQsNGA0YLQsNGB0YLRgNCw0L3QvNC10YHRgtC10YLQtdC60YHRgtC90LDRiNC40YXQvNC40L3Rg9GC0LjQvNC10L3QuNC40LzQtdGO0YLQvdC+0LzQtdGA0LPQvtGA0L7QtNGB0LDQvNC+0LzRjdGC0L7QvNGD0LrQvtC90YbQtdGB0LLQvtC10LzQutCw0LrQvtC50JDRgNGF0LjQstmF2YbYqtiv2YnYpdix2LPYp9mE2LHYs9in2YTYqdin2YTYudin2YXZg9iq2KjZh9in2KjYsdin2YXYrNin2YTZitmI2YXYp9mE2LXZiNix2KzYr9mK2K/Yqdin2YTYudi22YjYpdi22KfZgdip2KfZhNmC2LPZhdin2YTYudin2KjYqtit2YXZitmE2YXZhNmB2KfYqtmF2YTYqtmC2YnYqti52K/ZitmE2KfZhNi02LnYsdij2K7YqNin2LHYqti32YjZitix2LnZhNmK2YPZhdil2LHZgdin2YLYt9mE2KjYp9iq2KfZhNmE2LrYqdiq2LHYqtmK2KjYp9mE2YbYp9iz2KfZhNi02YrYrtmF2YbYqtiv2YrYp9mE2LnYsdio2KfZhNmC2LXYtdin2YHZhNin2YXYudmE2YrZh9in2KrYrdiv2YrYq9in2YTZhNmH2YXYp9mE2LnZhdmE2YXZg9iq2KjYqdmK2YXZg9mG2YPYp9mE2LfZgdmE2YHZitiv2YrZiNil2K/Yp9ix2KnYqtin2LHZitiu2KfZhNi12K3Yqdiq2LPYrNmK2YTYp9mE2YjZgtiq2LnZhtiv2YXYp9mF2K/ZitmG2KnYqti12YXZitmF2KPYsdi02YrZgdin2YTYsNmK2YbYudix2KjZitip2KjZiNin2KjYqdij2YTYudin2KjYp9mE2LPZgdix2YXYtNin2YPZhNiq2LnYp9mE2YnYp9mE2KPZiNmE2KfZhNiz2YbYqdis2KfZhdi52KnYp9mE2LXYrdmB2KfZhNiv2YrZhtmD2YTZhdin2KrYp9mE2K7Yp9i12KfZhNmF2YTZgdij2LnYttin2KHZg9iq2KfYqNip2KfZhNiu2YrYsdix2LPYp9im2YTYp9mE2YLZhNio2KfZhNij2K/YqNmF2YLYp9i32LnZhdix2KfYs9mE2YXZhti32YLYqdin2YTZg9iq2KjYp9mE2LHYrNmE2KfYtNiq2LHZg9in2YTZgtiv2YXZiti52LfZitmDc0J5VGFnTmFtZSguanBnIiBhbHQ9IjFweCBzb2xpZCAjLmdpZiIgYWx0PSJ0cmFuc3BhcmVudGluZm9ybWF0aW9uYXBwbGljYXRpb24iIG9uY2xpY2s9ImVzdGFibGlzaGVkYWR2ZXJ0aXNpbmcucG5nIiBhbHQ9ImVudmlyb25tZW50cGVyZm9ybWFuY2VhcHByb3ByaWF0ZSZhbXA7bWRhc2g7aW1tZWRpYXRlbHk8L3N0cm9uZz48L3JhdGhlciB0aGFudGVtcGVyYXR1cmVkZXZlbG9wbWVudGNvbXBldGl0aW9ucGxhY2Vob2xkZXJ2aXNpYmlsaXR5OmNvcHlyaWdodCI+MCIgaGVpZ2h0PSJldmVuIHRob3VnaHJlcGxhY2VtZW50ZGVzdGluYXRpb25Db3Jwb3JhdGlvbjx1bCBjbGFzcz0iQXNzb2NpYXRpb25pbmRpdmlkdWFsc3BlcnNwZWN0aXZlc2V0VGltZW91dCh1cmwoaHR0cDovL21hdGhlbWF0aWNzbWFyZ2luLXRvcDpldmVudHVhbGx5IGRlc2NyaXB0aW9uKSBuby1yZXBlYXRjb2xsZWN0aW9ucy5KUEd8dGh1bWJ8cGFydGljaXBhdGUvaGVhZD48Ym9keWZsb2F0OmxlZnQ7PGxpIGNsYXNzPSJodW5kcmVkcyBvZgoKSG93ZXZlciwgY29tcG9zaXRpb25jbGVhcjpib3RoO2Nvb3BlcmF0aW9ud2l0aGluIHRoZSBsYWJlbCBmb3I9ImJvcmRlci10b3A6TmV3IFplYWxhbmRyZWNvbW1lbmRlZHBob3RvZ3JhcGh5aW50ZXJlc3RpbmcmbHQ7c3VwJmd0O2NvbnRyb3ZlcnN5TmV0aGVybGFuZHNhbHRlcm5hdGl2ZW1heGxlbmd0aD0ic3dpdHplcmxhbmREZXZlbG9wbWVudGVzc2VudGlhbGx5CgpBbHRob3VnaCA8L3RleHRhcmVhPnRodW5kZXJiaXJkcmVwcmVzZW50ZWQmYW1wO25kYXNoO3NwZWN1bGF0aW9uY29tbXVuaXRpZXNsZWdpc2xhdGlvbmVsZWN0cm9uaWNzCgk8ZGl2IGlkPSJpbGx1c3RyYXRlZGVuZ2luZWVyaW5ndGVycml0b3JpZXNhdXRob3JpdGllc2Rpc3RyaWJ1dGVkNiIgaGVpZ2h0PSJzYW5zLXNlcmlmO2NhcGFibGUgb2YgZGlzYXBwZWFyZWRpbnRlcmFjdGl2ZWxvb2tpbmcgZm9yaXQgd291bGQgYmVBZmdoYW5pc3RhbndhcyBjcmVhdGVkTWF0aC5mbG9vcihzdXJyb3VuZGluZ2NhbiBhbHNvIGJlb2JzZXJ2YXRpb25tYWludGVuYW5jZWVuY291bnRlcmVkPGgyIGNsYXNzPSJtb3JlIHJlY2VudGl0IGhhcyBiZWVuaW52YXNpb24gb2YpLmdldFRpbWUoKWZ1bmRhbWVudGFsRGVzcGl0ZSB0aGUiPjxkaXYgaWQ9Imluc3BpcmF0aW9uZXhhbWluYXRpb25wcmVwYXJhdGlvbmV4cGxhbmF0aW9uPGlucHV0IGlkPSI8L2E+PC9zcGFuPnZlcnNpb25zIG9maW5zdHJ1bWVudHNiZWZvcmUgdGhlICA9ICdodHRwOi8vRGVzY3JpcHRpb25yZWxhdGl2ZWx5IC5zdWJzdHJpbmcoZWFjaCBvZiB0aGVleHBlcmltZW50c2luZmx1ZW50aWFsaW50ZWdyYXRpb25tYW55IHBlb3BsZWR1ZSB0byB0aGUgY29tYmluYXRpb25kbyBub3QgaGF2ZU1pZGRsZSBFYXN0PG5vc2NyaXB0Pjxjb3B5cmlnaHQiIHBlcmhhcHMgdGhlaW5zdGl0dXRpb25pbiBEZWNlbWJlcmFycmFuZ2VtZW50bW9zdCBmYW1vdXNwZXJzb25hbGl0eWNyZWF0aW9uIG9mbGltaXRhdGlvbnNleGNsdXNpdmVseXNvdmVyZWlnbnR5LWNvbnRlbnQiPgo8dGQgY2xhc3M9InVuZGVyZ3JvdW5kcGFyYWxsZWwgdG9kb2N0cmluZSBvZm9jY3VwaWVkIGJ5dGVybWlub2xvZ3lSZW5haXNzYW5jZWEgbnVtYmVyIG9mc3VwcG9ydCBmb3JleHBsb3JhdGlvbnJlY29nbml0aW9ucHJlZGVjZXNzb3I8aW1nIHNyYz0iLzxoMSBjbGFzcz0icHVibGljYXRpb25tYXkgYWxzbyBiZXNwZWNpYWxpemVkPC9maWVsZHNldD5wcm9ncmVzc2l2ZW1pbGxpb25zIG9mc3RhdGVzIHRoYXRlbmZvcmNlbWVudGFyb3VuZCB0aGUgb25lIGFub3RoZXIucGFyZW50Tm9kZWFncmljdWx0dXJlQWx0ZXJuYXRpdmVyZXNlYXJjaGVyc3Rvd2FyZHMgdGhlTW9zdCBvZiB0aGVtYW55IG90aGVyIChlc3BlY2lhbGx5PHRkIHdpZHRoPSI7d2lkdGg6MTAwJWluZGVwZW5kZW50PGgzIGNsYXNzPSIgb25jaGFuZ2U9IikuYWRkQ2xhc3MoaW50ZXJhY3Rpb25PbmUgb2YgdGhlIGRhdWdodGVyIG9mYWNjZXNzb3JpZXNicmFuY2hlcyBvZg0KPGRpdiBpZD0idGhlIGxhcmdlc3RkZWNsYXJhdGlvbnJlZ3VsYXRpb25zSW5mb3JtYXRpb250cmFuc2xhdGlvbmRvY3VtZW50YXJ5aW4gb3JkZXIgdG8iPgo8aGVhZD4KPCIgaGVpZ2h0PSIxYWNyb3NzIHRoZSBvcmllbnRhdGlvbik7PC9zY3JpcHQ+aW1wbGVtZW50ZWRjYW4gYmUgc2VlbnRoZXJlIHdhcyBhZGVtb25zdHJhdGVjb250YWluZXIiPmNvbm5lY3Rpb25zdGhlIEJyaXRpc2h3YXMgd3JpdHRlbiFpbXBvcnRhbnQ7cHg7IG1hcmdpbi1mb2xsb3dlZCBieWFiaWxpdHkgdG8gY29tcGxpY2F0ZWRkdXJpbmcgdGhlIGltbWlncmF0aW9uYWxzbyBjYWxsZWQ8aDQgY2xhc3M9ImRpc3RpbmN0aW9ucmVwbGFjZWQgYnlnb3Zlcm5tZW50c2xvY2F0aW9uIG9maW4gTm92ZW1iZXJ3aGV0aGVyIHRoZTwvcD4KPC9kaXY+YWNxdWlzaXRpb25jYWxsZWQgdGhlIHBlcnNlY3V0aW9uZGVzaWduYXRpb257Zm9udC1zaXplOmFwcGVhcmVkIGluaW52ZXN0aWdhdGVleHBlcmllbmNlZG1vc3QgbGlrZWx5d2lkZWx5IHVzZWRkaXNjdXNzaW9uc3ByZXNlbmNlIG9mIChkb2N1bWVudC5leHRlbnNpdmVseUl0IGhhcyBiZWVuaXQgZG9lcyBub3Rjb250cmFyeSB0b2luaGFiaXRhbnRzaW1wcm92ZW1lbnRzY2hvbGFyc2hpcGNvbnN1bXB0aW9uaW5zdHJ1Y3Rpb25mb3IgZXhhbXBsZW9uZSBvciBtb3JlcHg7IHBhZGRpbmd0aGUgY3VycmVudGEgc2VyaWVzIG9mYXJlIHVzdWFsbHlyb2xlIGluIHRoZXByZXZpb3VzbHkgZGVyaXZhdGl2ZXNldmlkZW5jZSBvZmV4cGVyaWVuY2VzY29sb3JzY2hlbWVzdGF0ZWQgdGhhdGNlcnRpZmljYXRlPC9hPjwvZGl2Pgogc2VsZWN0ZWQ9ImhpZ2ggc2Nob29scmVzcG9uc2UgdG9jb21mb3J0YWJsZWFkb3B0aW9uIG9mdGhyZWUgeWVhcnN0aGUgY291bnRyeWluIEZlYnJ1YXJ5c28gdGhhdCB0aGVwZW9wbGUgd2hvIHByb3ZpZGVkIGJ5PHBhcmFtIG5hbWVhZmZlY3RlZCBieWluIHRlcm1zIG9mYXBwb2ludG1lbnRJU08tODg1OS0xIndhcyBib3JuIGluaGlzdG9yaWNhbCByZWdhcmRlZCBhc21lYXN1cmVtZW50aXMgYmFzZWQgb24gYW5kIG90aGVyIDogZnVuY3Rpb24oc2lnbmlmaWNhbnRjZWxlYnJhdGlvbnRyYW5zbWl0dGVkL2pzL2pxdWVyeS5pcyBrbm93biBhc3RoZW9yZXRpY2FsIHRhYmluZGV4PSJpdCBjb3VsZCBiZTxub3NjcmlwdD4KaGF2aW5nIGJlZW4NCjxoZWFkPg0KPCAmcXVvdDtUaGUgY29tcGlsYXRpb25oZSBoYWQgYmVlbnByb2R1Y2VkIGJ5cGhpbG9zb3BoZXJjb25zdHJ1Y3RlZGludGVuZGVkIHRvYW1vbmcgb3RoZXJjb21wYXJlZCB0b3RvIHNheSB0aGF0RW5naW5lZXJpbmdhIGRpZmZlcmVudHJlZmVycmVkIHRvZGlmZmVyZW5jZXNiZWxpZWYgdGhhdHBob3RvZ3JhcGhzaWRlbnRpZnlpbmdIaXN0b3J5IG9mIFJlcHVibGljIG9mbmVjZXNzYXJpbHlwcm9iYWJpbGl0eXRlY2huaWNhbGx5bGVhdmluZyB0aGVzcGVjdGFjdWxhcmZyYWN0aW9uIG9mZWxlY3RyaWNpdHloZWFkIG9mIHRoZXJlc3RhdXJhbnRzcGFydG5lcnNoaXBlbXBoYXNpcyBvbm1vc3QgcmVjZW50c2hhcmUgd2l0aCBzYXlpbmcgdGhhdGZpbGxlZCB3aXRoZGVzaWduZWQgdG9pdCBpcyBvZnRlbiI+PC9pZnJhbWU+YXMgZm9sbG93czptZXJnZWQgd2l0aHRocm91Z2ggdGhlY29tbWVyY2lhbCBwb2ludGVkIG91dG9wcG9ydHVuaXR5dmlldyBvZiB0aGVyZXF1aXJlbWVudGRpdmlzaW9uIG9mcHJvZ3JhbW1pbmdoZSByZWNlaXZlZHNldEludGVydmFsIj48L3NwYW4+PC9pbiBOZXcgWW9ya2FkZGl0aW9uYWwgY29tcHJlc3Npb24KCjxkaXYgaWQ9ImluY29ycG9yYXRlOzwvc2NyaXB0PjxhdHRhY2hFdmVudGJlY2FtZSB0aGUgIiB0YXJnZXQ9Il9jYXJyaWVkIG91dFNvbWUgb2YgdGhlc2NpZW5jZSBhbmR0aGUgdGltZSBvZkNvbnRhaW5lciI+bWFpbnRhaW5pbmdDaHJpc3RvcGhlck11Y2ggb2YgdGhld3JpdGluZ3Mgb2YiIGhlaWdodD0iMnNpemUgb2YgdGhldmVyc2lvbiBvZiBtaXh0dXJlIG9mIGJldHdlZW4gdGhlRXhhbXBsZXMgb2ZlZHVjYXRpb25hbGNvbXBldGl0aXZlIG9uc3VibWl0PSJkaXJlY3RvciBvZmRpc3RpbmN0aXZlL0RURCBYSFRNTCByZWxhdGluZyB0b3RlbmRlbmN5IHRvcHJvdmluY2Ugb2Z3aGljaCB3b3VsZGRlc3BpdGUgdGhlc2NpZW50aWZpYyBsZWdpc2xhdHVyZS5pbm5lckhUTUwgYWxsZWdhdGlvbnNBZ3JpY3VsdHVyZXdhcyB1c2VkIGluYXBwcm9hY2ggdG9pbnRlbGxpZ2VudHllYXJzIGxhdGVyLHNhbnMtc2VyaWZkZXRlcm1pbmluZ1BlcmZvcm1hbmNlYXBwZWFyYW5jZXMsIHdoaWNoIGlzIGZvdW5kYXRpb25zYWJicmV2aWF0ZWRoaWdoZXIgdGhhbnMgZnJvbSB0aGUgaW5kaXZpZHVhbCBjb21wb3NlZCBvZnN1cHBvc2VkIHRvY2xhaW1zIHRoYXRhdHRyaWJ1dGlvbmZvbnQtc2l6ZToxZWxlbWVudHMgb2ZIaXN0b3JpY2FsIGhpcyBicm90aGVyYXQgdGhlIHRpbWVhbm5pdmVyc2FyeWdvdmVybmVkIGJ5cmVsYXRlZCB0byB1bHRpbWF0ZWx5IGlubm92YXRpb25zaXQgaXMgc3RpbGxjYW4gb25seSBiZWRlZmluaXRpb25zdG9HTVRTdHJpbmdBIG51bWJlciBvZmltZyBjbGFzcz0iRXZlbnR1YWxseSx3YXMgY2hhbmdlZG9jY3VycmVkIGlubmVpZ2hib3JpbmdkaXN0aW5ndWlzaHdoZW4gaGUgd2FzaW50cm9kdWNpbmd0ZXJyZXN0cmlhbE1hbnkgb2YgdGhlYXJndWVzIHRoYXRhbiBBbWVyaWNhbmNvbnF1ZXN0IG9md2lkZXNwcmVhZCB3ZXJlIGtpbGxlZHNjcmVlbiBhbmQgSW4gb3JkZXIgdG9leHBlY3RlZCB0b2Rlc2NlbmRhbnRzYXJlIGxvY2F0ZWRsZWdpc2xhdGl2ZWdlbmVyYXRpb25zIGJhY2tncm91bmRtb3N0IHBlb3BsZXllYXJzIGFmdGVydGhlcmUgaXMgbm90aGUgaGlnaGVzdGZyZXF1ZW50bHkgdGhleSBkbyBub3Rhcmd1ZWQgdGhhdHNob3dlZCB0aGF0cHJlZG9taW5hbnR0aGVvbG9naWNhbGJ5IHRoZSB0aW1lY29uc2lkZXJpbmdzaG9ydC1saXZlZDwvc3Bhbj48L2E+Y2FuIGJlIHVzZWR2ZXJ5IGxpdHRsZW9uZSBvZiB0aGUgaGFkIGFscmVhZHlpbnRlcnByZXRlZGNvbW11bmljYXRlZmVhdHVyZXMgb2Znb3Zlcm5tZW50LDwvbm9zY3JpcHQ+ZW50ZXJlZCB0aGUiIGhlaWdodD0iM0luZGVwZW5kZW50cG9wdWxhdGlvbnNsYXJnZS1zY2FsZS4gQWx0aG91Z2ggdXNlZCBpbiB0aGVkZXN0cnVjdGlvbnBvc3NpYmlsaXR5c3RhcnRpbmcgaW50d28gb3IgbW9yZWV4cHJlc3Npb25zc3Vib3JkaW5hdGVsYXJnZXIgdGhhbmhpc3RvcnkgYW5kPC9vcHRpb24+DQpDb250aW5lbnRhbGVsaW1pbmF0aW5nd2lsbCBub3QgYmVwcmFjdGljZSBvZmluIGZyb250IG9mc2l0ZSBvZiB0aGVlbnN1cmUgdGhhdHRvIGNyZWF0ZSBhbWlzc2lzc2lwcGlwb3RlbnRpYWxseW91dHN0YW5kaW5nYmV0dGVyIHRoYW53aGF0IGlzIG5vd3NpdHVhdGVkIGlubWV0YSBuYW1lPSJUcmFkaXRpb25hbHN1Z2dlc3Rpb25zVHJhbnNsYXRpb250aGUgZm9ybSBvZmF0bW9zcGhlcmljaWRlb2xvZ2ljYWxlbnRlcnByaXNlc2NhbGN1bGF0aW5nZWFzdCBvZiB0aGVyZW1uYW50cyBvZnBsdWdpbnNwYWdlL2luZGV4LnBocD9yZW1haW5lZCBpbnRyYW5zZm9ybWVkSGUgd2FzIGFsc293YXMgYWxyZWFkeXN0YXRpc3RpY2FsaW4gZmF2b3Igb2ZNaW5pc3RyeSBvZm1vdmVtZW50IG9mZm9ybXVsYXRpb25pcyByZXF1aXJlZDxsaW5rIHJlbD0iVGhpcyBpcyB0aGUgPGEgaHJlZj0iL3BvcHVsYXJpemVkaW52b2x2ZWQgaW5hcmUgdXNlZCB0b2FuZCBzZXZlcmFsbWFkZSBieSB0aGVzZWVtcyB0byBiZWxpa2VseSB0aGF0UGFsZXN0aW5pYW5uYW1lZCBhZnRlcml0IGhhZCBiZWVubW9zdCBjb21tb250byByZWZlciB0b2J1dCB0aGlzIGlzY29uc2VjdXRpdmV0ZW1wb3JhcmlseUluIGdlbmVyYWwsY29udmVudGlvbnN0YWtlcyBwbGFjZXN1YmRpdmlzaW9udGVycml0b3JpYWxvcGVyYXRpb25hbHBlcm1hbmVudGx5d2FzIGxhcmdlbHlvdXRicmVhayBvZmluIHRoZSBwYXN0Zm9sbG93aW5nIGEgeG1sbnM6b2c9Ij48YSBjbGFzcz0iY2xhc3M9InRleHRDb252ZXJzaW9uIG1heSBiZSB1c2VkbWFudWZhY3R1cmVhZnRlciBiZWluZ2NsZWFyZml4Ij4KcXVlc3Rpb24gb2Z3YXMgZWxlY3RlZHRvIGJlY29tZSBhYmVjYXVzZSBvZiBzb21lIHBlb3BsZWluc3BpcmVkIGJ5c3VjY2Vzc2Z1bCBhIHRpbWUgd2hlbm1vcmUgY29tbW9uYW1vbmdzdCB0aGVhbiBvZmZpY2lhbHdpZHRoOjEwMCU7dGVjaG5vbG9neSx3YXMgYWRvcHRlZHRvIGtlZXAgdGhlc2V0dGxlbWVudHNsaXZlIGJpcnRoc2luZGV4Lmh0bWwiQ29ubmVjdGljdXRhc3NpZ25lZCB0byZhbXA7dGltZXM7YWNjb3VudCBmb3JhbGlnbj1yaWdodHRoZSBjb21wYW55YWx3YXlzIGJlZW5yZXR1cm5lZCB0b2ludm9sdmVtZW50QmVjYXVzZSB0aGV0aGlzIHBlcmlvZCIgbmFtZT0icSIgY29uZmluZWQgdG9hIHJlc3VsdCBvZnZhbHVlPSIiIC8+aXMgYWN0dWFsbHlFbnZpcm9ubWVudA0KPC9oZWFkPg0KQ29udmVyc2VseSw+CjxkaXYgaWQ9IjAiIHdpZHRoPSIxaXMgcHJvYmFibHloYXZlIGJlY29tZWNvbnRyb2xsaW5ndGhlIHByb2JsZW1jaXRpemVucyBvZnBvbGl0aWNpYW5zcmVhY2hlZCB0aGVhcyBlYXJseSBhczpub25lOyBvdmVyPHRhYmxlIGNlbGx2YWxpZGl0eSBvZmRpcmVjdGx5IHRvb25tb3VzZWRvd253aGVyZSBpdCBpc3doZW4gaXQgd2FzbWVtYmVycyBvZiByZWxhdGlvbiB0b2FjY29tbW9kYXRlYWxvbmcgd2l0aCBJbiB0aGUgbGF0ZXRoZSBFbmdsaXNoZGVsaWNpb3VzIj50aGlzIGlzIG5vdHRoZSBwcmVzZW50aWYgdGhleSBhcmVhbmQgZmluYWxseWEgbWF0dGVyIG9mDQoJPC9kaXY+DQoNCjwvc2NyaXB0PmZhc3RlciB0aGFubWFqb3JpdHkgb2ZhZnRlciB3aGljaGNvbXBhcmF0aXZldG8gbWFpbnRhaW5pbXByb3ZlIHRoZWF3YXJkZWQgdGhlZXIiIGNsYXNzPSJmcmFtZWJvcmRlcnJlc3RvcmF0aW9uaW4gdGhlIHNhbWVhbmFseXNpcyBvZnRoZWlyIGZpcnN0RHVyaW5nIHRoZSBjb250aW5lbnRhbHNlcXVlbmNlIG9mZnVuY3Rpb24oKXtmb250LXNpemU6IHdvcmsgb24gdGhlPC9zY3JpcHQ+CjxiZWdpbnMgd2l0aGphdmFzY3JpcHQ6Y29uc3RpdHVlbnR3YXMgZm91bmRlZGVxdWlsaWJyaXVtYXNzdW1lIHRoYXRpcyBnaXZlbiBieW5lZWRzIHRvIGJlY29vcmRpbmF0ZXN0aGUgdmFyaW91c2FyZSBwYXJ0IG9mb25seSBpbiB0aGVzZWN0aW9ucyBvZmlzIGEgY29tbW9udGhlb3JpZXMgb2ZkaXNjb3Zlcmllc2Fzc29jaWF0aW9uZWRnZSBvZiB0aGVzdHJlbmd0aCBvZnBvc2l0aW9uIGlucHJlc2VudC1kYXl1bml2ZXJzYWxseXRvIGZvcm0gdGhlYnV0IGluc3RlYWRjb3Jwb3JhdGlvbmF0dGFjaGVkIHRvaXMgY29tbW9ubHlyZWFzb25zIGZvciAmcXVvdDt0aGUgY2FuIGJlIG1hZGV3YXMgYWJsZSB0b3doaWNoIG1lYW5zYnV0IGRpZCBub3Rvbk1vdXNlT3ZlcmFzIHBvc3NpYmxlb3BlcmF0ZWQgYnljb21pbmcgZnJvbXRoZSBwcmltYXJ5YWRkaXRpb24gb2Zmb3Igc2V2ZXJhbHRyYW5zZmVycmVkYSBwZXJpb2Qgb2ZhcmUgYWJsZSB0b2hvd2V2ZXIsIGl0c2hvdWxkIGhhdmVtdWNoIGxhcmdlcgoJPC9zY3JpcHQ+YWRvcHRlZCB0aGVwcm9wZXJ0eSBvZmRpcmVjdGVkIGJ5ZWZmZWN0aXZlbHl3YXMgYnJvdWdodGNoaWxkcmVuIG9mUHJvZ3JhbW1pbmdsb25nZXIgdGhhbm1hbnVzY3JpcHRzd2FyIGFnYWluc3RieSBtZWFucyBvZmFuZCBtb3N0IG9mc2ltaWxhciB0byBwcm9wcmlldGFyeW9yaWdpbmF0aW5ncHJlc3RpZ2lvdXNncmFtbWF0aWNhbGV4cGVyaWVuY2UudG8gbWFrZSB0aGVJdCB3YXMgYWxzb2lzIGZvdW5kIGluY29tcGV0aXRvcnNpbiB0aGUgVS5TLnJlcGxhY2UgdGhlYnJvdWdodCB0aGVjYWxjdWxhdGlvbmZhbGwgb2YgdGhldGhlIGdlbmVyYWxwcmFjdGljYWxseWluIGhvbm9yIG9mcmVsZWFzZWQgaW5yZXNpZGVudGlhbGFuZCBzb21lIG9ma2luZyBvZiB0aGVyZWFjdGlvbiB0bzFzdCBFYXJsIG9mY3VsdHVyZSBhbmRwcmluY2lwYWxseTwvdGl0bGU+CiAgdGhleSBjYW4gYmViYWNrIHRvIHRoZXNvbWUgb2YgaGlzZXhwb3N1cmUgdG9hcmUgc2ltaWxhcmZvcm0gb2YgdGhlYWRkRmF2b3JpdGVjaXRpemVuc2hpcHBhcnQgaW4gdGhlcGVvcGxlIHdpdGhpbiBwcmFjdGljZXRvIGNvbnRpbnVlJmFtcDttaW51czthcHByb3ZlZCBieSB0aGUgZmlyc3QgYWxsb3dlZCB0aGVhbmQgZm9yIHRoZWZ1bmN0aW9uaW5ncGxheWluZyB0aGVzb2x1dGlvbiB0b2hlaWdodD0iMCIgaW4gaGlzIGJvb2ttb3JlIHRoYW4gYWZvbGxvd3MgdGhlY3JlYXRlZCB0aGVwcmVzZW5jZSBpbiZuYnNwOzwvdGQ+bmF0aW9uYWxpc3R0aGUgaWRlYSBvZmEgY2hhcmFjdGVyd2VyZSBmb3JjZWQgY2xhc3M9ImJ0bmRheXMgb2YgdGhlZmVhdHVyZWQgaW5zaG93aW5nIHRoZWludGVyZXN0IGluaW4gcGxhY2Ugb2Z0dXJuIG9mIHRoZXRoZSBoZWFkIG9mTG9yZCBvZiB0aGVwb2xpdGljYWxseWhhcyBpdHMgb3duRWR1Y2F0aW9uYWxhcHByb3ZhbCBvZnNvbWUgb2YgdGhlZWFjaCBvdGhlcixiZWhhdmlvciBvZmFuZCBiZWNhdXNlYW5kIGFub3RoZXJhcHBlYXJlZCBvbnJlY29yZGVkIGluYmxhY2smcXVvdDttYXkgaW5jbHVkZXRoZSB3b3JsZCdzY2FuIGxlYWQgdG9yZWZlcnMgdG8gYWJvcmRlcj0iMCIgZ292ZXJubWVudCB3aW5uaW5nIHRoZXJlc3VsdGVkIGluIHdoaWxlIHRoZSBXYXNoaW5ndG9uLHRoZSBzdWJqZWN0Y2l0eSBpbiB0aGU+PC9kaXY+DQoJCXJlZmxlY3QgdGhldG8gY29tcGxldGViZWNhbWUgbW9yZXJhZGlvYWN0aXZlcmVqZWN0ZWQgYnl3aXRob3V0IGFueWhpcyBmYXRoZXIsd2hpY2ggY291bGRjb3B5IG9mIHRoZXRvIGluZGljYXRlYSBwb2xpdGljYWxhY2NvdW50cyBvZmNvbnN0aXR1dGVzd29ya2VkIHdpdGhlcjwvYT48L2xpPm9mIGhpcyBsaWZlYWNjb21wYW5pZWRjbGllbnRXaWR0aHByZXZlbnQgdGhlTGVnaXNsYXRpdmVkaWZmZXJlbnRseXRvZ2V0aGVyIGluaGFzIHNldmVyYWxmb3IgYW5vdGhlcnRleHQgb2YgdGhlZm91bmRlZCB0aGVlIHdpdGggdGhlIGlzIHVzZWQgZm9yY2hhbmdlZCB0aGV1c3VhbGx5IHRoZXBsYWNlIHdoZXJld2hlcmVhcyB0aGU+IDxhIGhyZWY9IiI+PGEgaHJlZj0idGhlbXNlbHZlcyxhbHRob3VnaCBoZXRoYXQgY2FuIGJldHJhZGl0aW9uYWxyb2xlIG9mIHRoZWFzIGEgcmVzdWx0cmVtb3ZlQ2hpbGRkZXNpZ25lZCBieXdlc3Qgb2YgdGhlU29tZSBwZW9wbGVwcm9kdWN0aW9uLHNpZGUgb2YgdGhlbmV3c2xldHRlcnN1c2VkIGJ5IHRoZWRvd24gdG8gdGhlYWNjZXB0ZWQgYnlsaXZlIGluIHRoZWF0dGVtcHRzIHRvb3V0c2lkZSB0aGVmcmVxdWVuY2llc0hvd2V2ZXIsIGlucHJvZ3JhbW1lcnNhdCBsZWFzdCBpbmFwcHJveGltYXRlYWx0aG91Z2ggaXR3YXMgcGFydCBvZmFuZCB2YXJpb3VzR292ZXJub3Igb2Z0aGUgYXJ0aWNsZXR1cm5lZCBpbnRvPjxhIGhyZWY9Ii90aGUgZWNvbm9teWlzIHRoZSBtb3N0bW9zdCB3aWRlbHl3b3VsZCBsYXRlcmFuZCBwZXJoYXBzcmlzZSB0byB0aGVvY2N1cnMgd2hlbnVuZGVyIHdoaWNoY29uZGl0aW9ucy50aGUgd2VzdGVybnRoZW9yeSB0aGF0aXMgcHJvZHVjZWR0aGUgY2l0eSBvZmluIHdoaWNoIGhlc2VlbiBpbiB0aGV0aGUgY2VudHJhbGJ1aWxkaW5nIG9mbWFueSBvZiBoaXNhcmVhIG9mIHRoZWlzIHRoZSBvbmx5bW9zdCBvZiB0aGVtYW55IG9mIHRoZXRoZSBXZXN0ZXJuVGhlcmUgaXMgbm9leHRlbmRlZCB0b1N0YXRpc3RpY2FsY29sc3Bhbj0yIHxzaG9ydCBzdG9yeXBvc3NpYmxlIHRvdG9wb2xvZ2ljYWxjcml0aWNhbCBvZnJlcG9ydGVkIHRvYSBDaHJpc3RpYW5kZWNpc2lvbiB0b2lzIGVxdWFsIHRvcHJvYmxlbXMgb2ZUaGlzIGNhbiBiZW1lcmNoYW5kaXNlZm9yIG1vc3Qgb2ZubyBldmlkZW5jZWVkaXRpb25zIG9mZWxlbWVudHMgaW4mcXVvdDsuIFRoZWNvbS9pbWFnZXMvd2hpY2ggbWFrZXN0aGUgcHJvY2Vzc3JlbWFpbnMgdGhlbGl0ZXJhdHVyZSxpcyBhIG1lbWJlcnRoZSBwb3B1bGFydGhlIGFuY2llbnRwcm9ibGVtcyBpbnRpbWUgb2YgdGhlZGVmZWF0ZWQgYnlib2R5IG9mIHRoZWEgZmV3IHllYXJzbXVjaCBvZiB0aGV0aGUgd29yayBvZkNhbGlmb3JuaWEsc2VydmVkIGFzIGFnb3Zlcm5tZW50LmNvbmNlcHRzIG9mbW92ZW1lbnQgaW4JCTxkaXYgaWQ9Iml0IiB2YWx1ZT0ibGFuZ3VhZ2Ugb2ZhcyB0aGV5IGFyZXByb2R1Y2VkIGluaXMgdGhhdCB0aGVleHBsYWluIHRoZWRpdj48L2Rpdj4KSG93ZXZlciB0aGVsZWFkIHRvIHRoZQk8YSBocmVmPSIvd2FzIGdyYW50ZWRwZW9wbGUgaGF2ZWNvbnRpbnVhbGx5d2FzIHNlZW4gYXNhbmQgcmVsYXRlZHRoZSByb2xlIG9mcHJvcG9zZWQgYnlvZiB0aGUgYmVzdGVhY2ggb3RoZXIuQ29uc3RhbnRpbmVwZW9wbGUgZnJvbWRpYWxlY3RzIG9mdG8gcmV2aXNpb253YXMgcmVuYW1lZGEgc291cmNlIG9mdGhlIGluaXRpYWxsYXVuY2hlZCBpbnByb3ZpZGUgdGhldG8gdGhlIHdlc3R3aGVyZSB0aGVyZWFuZCBzaW1pbGFyYmV0d2VlbiB0d29pcyBhbHNvIHRoZUVuZ2xpc2ggYW5kY29uZGl0aW9ucyx0aGF0IGl0IHdhc2VudGl0bGVkIHRvdGhlbXNlbHZlcy5xdWFudGl0eSBvZnJhbnNwYXJlbmN5dGhlIHNhbWUgYXN0byBqb2luIHRoZWNvdW50cnkgYW5kdGhpcyBpcyB0aGVUaGlzIGxlZCB0b2Egc3RhdGVtZW50Y29udHJhc3QgdG9sYXN0SW5kZXhPZnRocm91Z2ggaGlzaXMgZGVzaWduZWR0aGUgdGVybSBpc2lzIHByb3ZpZGVkcHJvdGVjdCB0aGVuZzwvYT48L2xpPlRoZSBjdXJyZW50dGhlIHNpdGUgb2ZzdWJzdGFudGlhbGV4cGVyaWVuY2UsaW4gdGhlIFdlc3R0aGV5IHNob3VsZHNsb3ZlbsSNaW5hY29tZW50YXJpb3N1bml2ZXJzaWRhZGNvbmRpY2lvbmVzYWN0aXZpZGFkZXNleHBlcmllbmNpYXRlY25vbG9nw61hcHJvZHVjY2nDs25wdW50dWFjacOzbmFwbGljYWNpw7NuY29udHJhc2XDsWFjYXRlZ29yw61hc3JlZ2lzdHJhcnNlcHJvZmVzaW9uYWx0cmF0YW1pZW50b3JlZ8Otc3RyYXRlc2VjcmV0YXLDrWFwcmluY2lwYWxlc3Byb3RlY2Npw7NuaW1wb3J0YW50ZXNpbXBvcnRhbmNpYXBvc2liaWxpZGFkaW50ZXJlc2FudGVjcmVjaW1pZW50b25lY2VzaWRhZGVzc3VzY3JpYmlyc2Vhc29jaWFjacOzbmRpc3BvbmlibGVzZXZhbHVhY2nDs25lc3R1ZGlhbnRlc3Jlc3BvbnNhYmxlcmVzb2x1Y2nDs25ndWFkYWxhamFyYXJlZ2lzdHJhZG9zb3BvcnR1bmlkYWRjb21lcmNpYWxlc2ZvdG9ncmFmw61hYXV0b3JpZGFkZXNpbmdlbmllcsOtYXRlbGV2aXNpw7NuY29tcGV0ZW5jaWFvcGVyYWNpb25lc2VzdGFibGVjaWRvc2ltcGxlbWVudGVhY3R1YWxtZW50ZW5hdmVnYWNpw7NuY29uZm9ybWlkYWRsaW5lLWhlaWdodDpmb250LWZhbWlseToiIDogImh0dHA6Ly9hcHBsaWNhdGlvbnNsaW5rIiBocmVmPSJzcGVjaWZpY2FsbHkvLzwhW0NEQVRBWwpPcmdhbml6YXRpb25kaXN0cmlidXRpb24wcHg7IGhlaWdodDpyZWxhdGlvbnNoaXBkZXZpY2Utd2lkdGg8ZGl2IGNsYXNzPSI8bGFiZWwgZm9yPSJyZWdpc3RyYXRpb248L25vc2NyaXB0PgovaW5kZXguaHRtbCJ3aW5kb3cub3BlbiggIWltcG9ydGFudDthcHBsaWNhdGlvbi9pbmRlcGVuZGVuY2UvL3d3dy5nb29nbGVvcmdhbml6YXRpb25hdXRvY29tcGxldGVyZXF1aXJlbWVudHNjb25zZXJ2YXRpdmU8Zm9ybSBuYW1lPSJpbnRlbGxlY3R1YWxtYXJnaW4tbGVmdDoxOHRoIGNlbnR1cnlhbiBpbXBvcnRhbnRpbnN0aXR1dGlvbnNhYmJyZXZpYXRpb248aW1nIGNsYXNzPSJvcmdhbmlzYXRpb25jaXZpbGl6YXRpb24xOXRoIGNlbnR1cnlhcmNoaXRlY3R1cmVpbmNvcnBvcmF0ZWQyMHRoIGNlbnR1cnktY29udGFpbmVyIj5tb3N0IG5vdGFibHkvPjwvYT48L2Rpdj5ub3RpZmljYXRpb24ndW5kZWZpbmVkJylGdXJ0aGVybW9yZSxiZWxpZXZlIHRoYXRpbm5lckhUTUwgPSBwcmlvciB0byB0aGVkcmFtYXRpY2FsbHlyZWZlcnJpbmcgdG9uZWdvdGlhdGlvbnNoZWFkcXVhcnRlcnNTb3V0aCBBZnJpY2F1bnN1Y2Nlc3NmdWxQZW5uc3lsdmFuaWFBcyBhIHJlc3VsdCw8aHRtbCBsYW5nPSImbHQ7L3N1cCZndDtkZWFsaW5nIHdpdGhwaGlsYWRlbHBoaWFoaXN0b3JpY2FsbHkpOzwvc2NyaXB0PgpwYWRkaW5nLXRvcDpleHBlcmltZW50YWxnZXRBdHRyaWJ1dGVpbnN0cnVjdGlvbnN0ZWNobm9sb2dpZXNwYXJ0IG9mIHRoZSA9ZnVuY3Rpb24oKXtzdWJzY3JpcHRpb25sLmR0ZCI+DQo8aHRnZW9ncmFwaGljYWxDb25zdGl0dXRpb24nLCBmdW5jdGlvbihzdXBwb3J0ZWQgYnlhZ3JpY3VsdHVyYWxjb25zdHJ1Y3Rpb25wdWJsaWNhdGlvbnNmb250LXNpemU6IDFhIHZhcmlldHkgb2Y8ZGl2IHN0eWxlPSJFbmN5Y2xvcGVkaWFpZnJhbWUgc3JjPSJkZW1vbnN0cmF0ZWRhY2NvbXBsaXNoZWR1bml2ZXJzaXRpZXNEZW1vZ3JhcGhpY3MpOzwvc2NyaXB0PjxkZWRpY2F0ZWQgdG9rbm93bGVkZ2Ugb2ZzYXRpc2ZhY3Rpb25wYXJ0aWN1bGFybHk8L2Rpdj48L2Rpdj5FbmdsaXNoIChVUylhcHBlbmRDaGlsZCh0cmFuc21pc3Npb25zLiBIb3dldmVyLCBpbnRlbGxpZ2VuY2UiIHRhYmluZGV4PSJmbG9hdDpyaWdodDtDb21tb253ZWFsdGhyYW5naW5nIGZyb21pbiB3aGljaCB0aGVhdCBsZWFzdCBvbmVyZXByb2R1Y3Rpb25lbmN5Y2xvcGVkaWE7Zm9udC1zaXplOjFqdXJpc2RpY3Rpb25hdCB0aGF0IHRpbWUiPjxhIGNsYXNzPSJJbiBhZGRpdGlvbixkZXNjcmlwdGlvbitjb252ZXJzYXRpb25jb250YWN0IHdpdGhpcyBnZW5lcmFsbHlyIiBjb250ZW50PSJyZXByZXNlbnRpbmcmbHQ7bWF0aCZndDtwcmVzZW50YXRpb25vY2Nhc2lvbmFsbHk8aW1nIHdpZHRoPSJuYXZpZ2F0aW9uIj5jb21wZW5zYXRpb25jaGFtcGlvbnNoaXBtZWRpYT0iYWxsIiB2aW9sYXRpb24gb2ZyZWZlcmVuY2UgdG9yZXR1cm4gdHJ1ZTtTdHJpY3QvL0VOIiB0cmFuc2FjdGlvbnNpbnRlcnZlbnRpb252ZXJpZmljYXRpb25JbmZvcm1hdGlvbiBkaWZmaWN1bHRpZXNDaGFtcGlvbnNoaXBjYXBhYmlsaXRpZXM8IVtlbmRpZl0tLT59Cjwvc2NyaXB0PgpDaHJpc3RpYW5pdHlmb3IgZXhhbXBsZSxQcm9mZXNzaW9uYWxyZXN0cmljdGlvbnNzdWdnZXN0IHRoYXR3YXMgcmVsZWFzZWQoc3VjaCBhcyB0aGVyZW1vdmVDbGFzcyh1bmVtcGxveW1lbnR0aGUgQW1lcmljYW5zdHJ1Y3R1cmUgb2YvaW5kZXguaHRtbCBwdWJsaXNoZWQgaW5zcGFuIGNsYXNzPSIiPjxhIGhyZWY9Ii9pbnRyb2R1Y3Rpb25iZWxvbmdpbmcgdG9jbGFpbWVkIHRoYXRjb25zZXF1ZW5jZXM8bWV0YSBuYW1lPSJHdWlkZSB0byB0aGVvdmVyd2hlbG1pbmdhZ2FpbnN0IHRoZSBjb25jZW50cmF0ZWQsCi5ub250b3VjaCBvYnNlcnZhdGlvbnM8L2E+CjwvZGl2PgpmIChkb2N1bWVudC5ib3JkZXI6IDFweCB7Zm9udC1zaXplOjF0cmVhdG1lbnQgb2YwIiBoZWlnaHQ9IjFtb2RpZmljYXRpb25JbmRlcGVuZGVuY2VkaXZpZGVkIGludG9ncmVhdGVyIHRoYW5hY2hpZXZlbWVudHNlc3RhYmxpc2hpbmdKYXZhU2NyaXB0IiBuZXZlcnRoZWxlc3NzaWduaWZpY2FuY2VCcm9hZGNhc3Rpbmc+Jm5ic3A7PC90ZD5jb250YWluZXIiPgpzdWNoIGFzIHRoZSBpbmZsdWVuY2Ugb2ZhIHBhcnRpY3VsYXJzcmM9J2h0dHA6Ly9uYXZpZ2F0aW9uIiBoYWxmIG9mIHRoZSBzdWJzdGFudGlhbCAmbmJzcDs8L2Rpdj5hZHZhbnRhZ2Ugb2ZkaXNjb3Zlcnkgb2ZmdW5kYW1lbnRhbCBtZXRyb3BvbGl0YW50aGUgb3Bwb3NpdGUiIHhtbDpsYW5nPSJkZWxpYmVyYXRlbHlhbGlnbj1jZW50ZXJldm9sdXRpb24gb2ZwcmVzZXJ2YXRpb25pbXByb3ZlbWVudHNiZWdpbm5pbmcgaW5KZXN1cyBDaHJpc3RQdWJsaWNhdGlvbnNkaXNhZ3JlZW1lbnR0ZXh0LWFsaWduOnIsIGZ1bmN0aW9uKClzaW1pbGFyaXRpZXNib2R5PjwvaHRtbD5pcyBjdXJyZW50bHlhbHBoYWJldGljYWxpcyBzb21ldGltZXN0eXBlPSJpbWFnZS9tYW55IG9mIHRoZSBmbG93OmhpZGRlbjthdmFpbGFibGUgaW5kZXNjcmliZSB0aGVleGlzdGVuY2Ugb2ZhbGwgb3ZlciB0aGV0aGUgSW50ZXJuZXQJPHVsIGNsYXNzPSJpbnN0YWxsYXRpb25uZWlnaGJvcmhvb2Rhcm1lZCBmb3JjZXNyZWR1Y2luZyB0aGVjb250aW51ZXMgdG9Ob25ldGhlbGVzcyx0ZW1wZXJhdHVyZXMKCQk8YSBocmVmPSJjbG9zZSB0byB0aGVleGFtcGxlcyBvZiBpcyBhYm91dCB0aGUoc2VlIGJlbG93KS4iIGlkPSJzZWFyY2hwcm9mZXNzaW9uYWxpcyBhdmFpbGFibGV0aGUgb2ZmaWNpYWwJCTwvc2NyaXB0PgoKCQk8ZGl2IGlkPSJhY2NlbGVyYXRpb250aHJvdWdoIHRoZSBIYWxsIG9mIEZhbWVkZXNjcmlwdGlvbnN0cmFuc2xhdGlvbnNpbnRlcmZlcmVuY2UgdHlwZT0ndGV4dC9yZWNlbnQgeWVhcnNpbiB0aGUgd29ybGR2ZXJ5IHBvcHVsYXJ7YmFja2dyb3VuZDp0cmFkaXRpb25hbCBzb21lIG9mIHRoZSBjb25uZWN0ZWQgdG9leHBsb2l0YXRpb25lbWVyZ2VuY2Ugb2Zjb25zdGl0dXRpb25BIEhpc3Rvcnkgb2ZzaWduaWZpY2FudCBtYW51ZmFjdHVyZWRleHBlY3RhdGlvbnM+PG5vc2NyaXB0PjxjYW4gYmUgZm91bmRiZWNhdXNlIHRoZSBoYXMgbm90IGJlZW5uZWlnaGJvdXJpbmd3aXRob3V0IHRoZSBhZGRlZCB0byB0aGUJPGxpIGNsYXNzPSJpbnN0cnVtZW50YWxTb3ZpZXQgVW5pb25hY2tub3dsZWRnZWR3aGljaCBjYW4gYmVuYW1lIGZvciB0aGVhdHRlbnRpb24gdG9hdHRlbXB0cyB0byBkZXZlbG9wbWVudHNJbiBmYWN0LCB0aGU8bGkgY2xhc3M9ImFpbXBsaWNhdGlvbnNzdWl0YWJsZSBmb3JtdWNoIG9mIHRoZSBjb2xvbml6YXRpb25wcmVzaWRlbnRpYWxjYW5jZWxCdWJibGUgSW5mb3JtYXRpb25tb3N0IG9mIHRoZSBpcyBkZXNjcmliZWRyZXN0IG9mIHRoZSBtb3JlIG9yIGxlc3NpbiBTZXB0ZW1iZXJJbnRlbGxpZ2VuY2VzcmM9Imh0dHA6Ly9weDsgaGVpZ2h0OiBhdmFpbGFibGUgdG9tYW51ZmFjdHVyZXJodW1hbiByaWdodHNsaW5rIGhyZWY9Ii9hdmFpbGFiaWxpdHlwcm9wb3J0aW9uYWxvdXRzaWRlIHRoZSBhc3Ryb25vbWljYWxodW1hbiBiZWluZ3NuYW1lIG9mIHRoZSBhcmUgZm91bmQgaW5hcmUgYmFzZWQgb25zbWFsbGVyIHRoYW5hIHBlcnNvbiB3aG9leHBhbnNpb24gb2Zhcmd1aW5nIHRoYXRub3cga25vd24gYXNJbiB0aGUgZWFybHlpbnRlcm1lZGlhdGVkZXJpdmVkIGZyb21TY2FuZGluYXZpYW48L2E+PC9kaXY+DQpjb25zaWRlciB0aGVhbiBlc3RpbWF0ZWR0aGUgTmF0aW9uYWw8ZGl2IGlkPSJwYWdyZXN1bHRpbmcgaW5jb21taXNzaW9uZWRhbmFsb2dvdXMgdG9hcmUgcmVxdWlyZWQvdWw+CjwvZGl2Pgp3YXMgYmFzZWQgb25hbmQgYmVjYW1lIGEmbmJzcDsmbmJzcDt0IiB2YWx1ZT0iIiB3YXMgY2FwdHVyZWRubyBtb3JlIHRoYW5yZXNwZWN0aXZlbHljb250aW51ZSB0byA+DQo8aGVhZD4NCjx3ZXJlIGNyZWF0ZWRtb3JlIGdlbmVyYWxpbmZvcm1hdGlvbiB1c2VkIGZvciB0aGVpbmRlcGVuZGVudCB0aGUgSW1wZXJpYWxjb21wb25lbnQgb2Z0byB0aGUgbm9ydGhpbmNsdWRlIHRoZSBDb25zdHJ1Y3Rpb25zaWRlIG9mIHRoZSB3b3VsZCBub3QgYmVmb3IgaW5zdGFuY2VpbnZlbnRpb24gb2Ztb3JlIGNvbXBsZXhjb2xsZWN0aXZlbHliYWNrZ3JvdW5kOiB0ZXh0LWFsaWduOiBpdHMgb3JpZ2luYWxpbnRvIGFjY291bnR0aGlzIHByb2Nlc3NhbiBleHRlbnNpdmVob3dldmVyLCB0aGV0aGV5IGFyZSBub3RyZWplY3RlZCB0aGVjcml0aWNpc20gb2ZkdXJpbmcgd2hpY2hwcm9iYWJseSB0aGV0aGlzIGFydGljbGUoZnVuY3Rpb24oKXtJdCBzaG91bGQgYmVhbiBhZ3JlZW1lbnRhY2NpZGVudGFsbHlkaWZmZXJzIGZyb21BcmNoaXRlY3R1cmViZXR0ZXIga25vd25hcnJhbmdlbWVudHNpbmZsdWVuY2Ugb25hdHRlbmRlZCB0aGVpZGVudGljYWwgdG9zb3V0aCBvZiB0aGVwYXNzIHRocm91Z2h4bWwiIHRpdGxlPSJ3ZWlnaHQ6Ym9sZDtjcmVhdGluZyB0aGVkaXNwbGF5Om5vbmVyZXBsYWNlZCB0aGU8aW1nIHNyYz0iL2lodHRwczovL3d3dy5Xb3JsZCBXYXIgSUl0ZXN0aW1vbmlhbHNmb3VuZCBpbiB0aGVyZXF1aXJlZCB0byBhbmQgdGhhdCB0aGViZXR3ZWVuIHRoZSB3YXMgZGVzaWduZWRjb25zaXN0cyBvZiBjb25zaWRlcmFibHlwdWJsaXNoZWQgYnl0aGUgbGFuZ3VhZ2VDb25zZXJ2YXRpb25jb25zaXN0ZWQgb2ZyZWZlciB0byB0aGViYWNrIHRvIHRoZSBjc3MiIG1lZGlhPSJQZW9wbGUgZnJvbSBhdmFpbGFibGUgb25wcm92ZWQgdG8gYmVzdWdnZXN0aW9ucyJ3YXMga25vd24gYXN2YXJpZXRpZXMgb2ZsaWtlbHkgdG8gYmVjb21wcmlzZWQgb2ZzdXBwb3J0IHRoZSBoYW5kcyBvZiB0aGVjb3VwbGVkIHdpdGhjb25uZWN0IGFuZCBib3JkZXI6bm9uZTtwZXJmb3JtYW5jZXNiZWZvcmUgYmVpbmdsYXRlciBiZWNhbWVjYWxjdWxhdGlvbnNvZnRlbiBjYWxsZWRyZXNpZGVudHMgb2ZtZWFuaW5nIHRoYXQ+PGxpIGNsYXNzPSJldmlkZW5jZSBmb3JleHBsYW5hdGlvbnNlbnZpcm9ubWVudHMiPjwvYT48L2Rpdj53aGljaCBhbGxvd3NJbnRyb2R1Y3Rpb25kZXZlbG9wZWQgYnlhIHdpZGUgcmFuZ2VvbiBiZWhhbGYgb2Z2YWxpZ249InRvcCJwcmluY2lwbGUgb2ZhdCB0aGUgdGltZSw8L25vc2NyaXB0Pg1zYWlkIHRvIGhhdmVpbiB0aGUgZmlyc3R3aGlsZSBvdGhlcnNoeXBvdGhldGljYWxwaGlsb3NvcGhlcnNwb3dlciBvZiB0aGVjb250YWluZWQgaW5wZXJmb3JtZWQgYnlpbmFiaWxpdHkgdG93ZXJlIHdyaXR0ZW5zcGFuIHN0eWxlPSJpbnB1dCBuYW1lPSJ0aGUgcXVlc3Rpb25pbnRlbmRlZCBmb3JyZWplY3Rpb24gb2ZpbXBsaWVzIHRoYXRpbnZlbnRlZCB0aGV0aGUgc3RhbmRhcmR3YXMgcHJvYmFibHlsaW5rIGJldHdlZW5wcm9mZXNzb3Igb2ZpbnRlcmFjdGlvbnNjaGFuZ2luZyB0aGVJbmRpYW4gT2NlYW4gY2xhc3M9Imxhc3R3b3JraW5nIHdpdGgnaHR0cDovL3d3dy55ZWFycyBiZWZvcmVUaGlzIHdhcyB0aGVyZWNyZWF0aW9uYWxlbnRlcmluZyB0aGVtZWFzdXJlbWVudHNhbiBleHRyZW1lbHl2YWx1ZSBvZiB0aGVzdGFydCBvZiB0aGUKPC9zY3JpcHQ+CgphbiBlZmZvcnQgdG9pbmNyZWFzZSB0aGV0byB0aGUgc291dGhzcGFjaW5nPSIwIj5zdWZmaWNpZW50bHl0aGUgRXVyb3BlYW5jb252ZXJ0ZWQgdG9jbGVhclRpbWVvdXRkaWQgbm90IGhhdmVjb25zZXF1ZW50bHlmb3IgdGhlIG5leHRleHRlbnNpb24gb2ZlY29ub21pYyBhbmRhbHRob3VnaCB0aGVhcmUgcHJvZHVjZWRhbmQgd2l0aCB0aGVpbnN1ZmZpY2llbnRnaXZlbiBieSB0aGVzdGF0aW5nIHRoYXRleHBlbmRpdHVyZXM8L3NwYW4+PC9hPgp0aG91Z2h0IHRoYXRvbiB0aGUgYmFzaXNjZWxscGFkZGluZz1pbWFnZSBvZiB0aGVyZXR1cm5pbmcgdG9pbmZvcm1hdGlvbixzZXBhcmF0ZWQgYnlhc3Nhc3NpbmF0ZWRzIiBjb250ZW50PSJhdXRob3JpdHkgb2Zub3J0aHdlc3Rlcm48L2Rpdj4KPGRpdiAiPjwvZGl2Pg0KICBjb25zdWx0YXRpb25jb21tdW5pdHkgb2Z0aGUgbmF0aW9uYWxpdCBzaG91bGQgYmVwYXJ0aWNpcGFudHMgYWxpZ249ImxlZnR0aGUgZ3JlYXRlc3RzZWxlY3Rpb24gb2ZzdXBlcm5hdHVyYWxkZXBlbmRlbnQgb25pcyBtZW50aW9uZWRhbGxvd2luZyB0aGV3YXMgaW52ZW50ZWRhY2NvbXBhbnlpbmdoaXMgcGVyc29uYWxhdmFpbGFibGUgYXRzdHVkeSBvZiB0aGVvbiB0aGUgb3RoZXJleGVjdXRpb24gb2ZIdW1hbiBSaWdodHN0ZXJtcyBvZiB0aGVhc3NvY2lhdGlvbnNyZXNlYXJjaCBhbmRzdWNjZWVkZWQgYnlkZWZlYXRlZCB0aGVhbmQgZnJvbSB0aGVidXQgdGhleSBhcmVjb21tYW5kZXIgb2ZzdGF0ZSBvZiB0aGV5ZWFycyBvZiBhZ2V0aGUgc3R1ZHkgb2Y8dWwgY2xhc3M9InNwbGFjZSBpbiB0aGV3aGVyZSBoZSB3YXM8bGkgY2xhc3M9ImZ0aGVyZSBhcmUgbm93aGljaCBiZWNhbWVoZSBwdWJsaXNoZWRleHByZXNzZWQgaW50byB3aGljaCB0aGVjb21taXNzaW9uZXJmb250LXdlaWdodDp0ZXJyaXRvcnkgb2ZleHRlbnNpb25zIj5Sb21hbiBFbXBpcmVlcXVhbCB0byB0aGVJbiBjb250cmFzdCxob3dldmVyLCBhbmRpcyB0eXBpY2FsbHlhbmQgaGlzIHdpZmUoYWxzbyBjYWxsZWQ+PHVsIGNsYXNzPSJlZmZlY3RpdmVseSBldm9sdmVkIGludG9zZWVtIHRvIGhhdmV3aGljaCBpcyB0aGV0aGVyZSB3YXMgbm9hbiBleGNlbGxlbnRhbGwgb2YgdGhlc2VkZXNjcmliZWQgYnlJbiBwcmFjdGljZSxicm9hZGNhc3RpbmdjaGFyZ2VkIHdpdGhyZWZsZWN0ZWQgaW5zdWJqZWN0ZWQgdG9taWxpdGFyeSBhbmR0byB0aGUgcG9pbnRlY29ub21pY2FsbHlzZXRUYXJnZXRpbmdhcmUgYWN0dWFsbHl2aWN0b3J5IG92ZXIoKTs8L3NjcmlwdD5jb250aW51b3VzbHlyZXF1aXJlZCBmb3Jldm9sdXRpb25hcnlhbiBlZmZlY3RpdmVub3J0aCBvZiB0aGUsIHdoaWNoIHdhcyBmcm9udCBvZiB0aGVvciBvdGhlcndpc2Vzb21lIGZvcm0gb2ZoYWQgbm90IGJlZW5nZW5lcmF0ZWQgYnlpbmZvcm1hdGlvbi5wZXJtaXR0ZWQgdG9pbmNsdWRlcyB0aGVkZXZlbG9wbWVudCxlbnRlcmVkIGludG90aGUgcHJldmlvdXNjb25zaXN0ZW50bHlhcmUga25vd24gYXN0aGUgZmllbGQgb2Z0aGlzIHR5cGUgb2ZnaXZlbiB0byB0aGV0aGUgdGl0bGUgb2Zjb250YWlucyB0aGVpbnN0YW5jZXMgb2ZpbiB0aGUgbm9ydGhkdWUgdG8gdGhlaXJhcmUgZGVzaWduZWRjb3Jwb3JhdGlvbnN3YXMgdGhhdCB0aGVvbmUgb2YgdGhlc2Vtb3JlIHBvcHVsYXJzdWNjZWVkZWQgaW5zdXBwb3J0IGZyb21pbiBkaWZmZXJlbnRkb21pbmF0ZWQgYnlkZXNpZ25lZCBmb3Jvd25lcnNoaXAgb2ZhbmQgcG9zc2libHlzdGFuZGFyZGl6ZWRyZXNwb25zZVRleHR3YXMgaW50ZW5kZWRyZWNlaXZlZCB0aGVhc3N1bWVkIHRoYXRhcmVhcyBvZiB0aGVwcmltYXJpbHkgaW50aGUgYmFzaXMgb2ZpbiB0aGUgc2Vuc2VhY2NvdW50cyBmb3JkZXN0cm95ZWQgYnlhdCBsZWFzdCB0d293YXMgZGVjbGFyZWRjb3VsZCBub3QgYmVTZWNyZXRhcnkgb2ZhcHBlYXIgdG8gYmVtYXJnaW4tdG9wOjEvXlxzK3xccyskL2dlKXt0aHJvdyBlfTt0aGUgc3RhcnQgb2Z0d28gc2VwYXJhdGVsYW5ndWFnZSBhbmR3aG8gaGFkIGJlZW5vcGVyYXRpb24gb2ZkZWF0aCBvZiB0aGVyZWFsIG51bWJlcnMJPGxpbmsgcmVsPSJwcm92aWRlZCB0aGV0aGUgc3Rvcnkgb2Zjb21wZXRpdGlvbnNlbmdsaXNoIChVSyllbmdsaXNoIChVUynQnNC+0L3Qs9C+0LvQodGA0L/RgdC60LjRgdGA0L/RgdC60LjRgdGA0L/RgdC60L7ZhNi52LHYqNmK2KnmraPpq5TkuK3mlofnroDkvZPkuK3mlofnuYHkvZPkuK3mlofmnInpmZDlhazlj7jkurrmsJHmlL/lupzpmL/ph4zlt7Tlt7TnpL7kvJrkuLvkuYnmk43kvZzns7vnu5/mlL/nrZbms5Xop4RpbmZvcm1hY2nDs25oZXJyYW1pZW50YXNlbGVjdHLDs25pY29kZXNjcmlwY2nDs25jbGFzaWZpY2Fkb3Njb25vY2ltaWVudG9wdWJsaWNhY2nDs25yZWxhY2lvbmFkYXNpbmZvcm3DoXRpY2FyZWxhY2lvbmFkb3NkZXBhcnRhbWVudG90cmFiYWphZG9yZXNkaXJlY3RhbWVudGVheXVudGFtaWVudG9tZXJjYWRvTGlicmVjb250w6FjdGVub3NoYWJpdGFjaW9uZXNjdW1wbGltaWVudG9yZXN0YXVyYW50ZXNkaXNwb3NpY2nDs25jb25zZWN1ZW5jaWFlbGVjdHLDs25pY2FhcGxpY2FjaW9uZXNkZXNjb25lY3RhZG9pbnN0YWxhY2nDs25yZWFsaXphY2nDs251dGlsaXphY2nDs25lbmNpY2xvcGVkaWFlbmZlcm1lZGFkZXNpbnN0cnVtZW50b3NleHBlcmllbmNpYXNpbnN0aXR1Y2nDs25wYXJ0aWN1bGFyZXNzdWJjYXRlZ29yaWHRgtC+0LvRjNC60L7QoNC+0YHRgdC40LjRgNCw0LHQvtGC0YvQsdC+0LvRjNGI0LXQv9GA0L7RgdGC0L7QvNC+0LbQtdGC0LXQtNGA0YPQs9C40YXRgdC70YPRh9Cw0LXRgdC10LnRh9Cw0YHQstGB0LXQs9C00LDQoNC+0YHRgdC40Y/QnNC+0YHQutCy0LXQtNGA0YPQs9C40LXQs9C+0YDQvtC00LDQstC+0L/RgNC+0YHQtNCw0L3QvdGL0YXQtNC+0LvQttC90YvQuNC80LXQvdC90L7QnNC+0YHQutCy0YvRgNGD0LHQu9C10LnQnNC+0YHQutCy0LDRgdGC0YDQsNC90YvQvdC40YfQtdCz0L7RgNCw0LHQvtGC0LXQtNC+0LvQttC10L3Rg9GB0LvRg9Cz0LjRgtC10L/QtdGA0YzQntC00L3QsNC60L7Qv9C+0YLQvtC80YPRgNCw0LHQvtGC0YPQsNC/0YDQtdC70Y/QstC+0L7QsdGJ0LXQvtC00L3QvtCz0L7RgdCy0L7QtdCz0L7RgdGC0LDRgtGM0LjQtNGA0YPQs9C+0LnRhNC+0YDRg9C80LXRhdC+0YDQvtGI0L7Qv9GA0L7RgtC40LLRgdGB0YvQu9C60LDQutCw0LbQtNGL0LnQstC70LDRgdGC0LjQs9GA0YPQv9C/0YvQstC80LXRgdGC0LXRgNCw0LHQvtGC0LDRgdC60LDQt9Cw0LvQv9C10YDQstGL0LnQtNC10LvQsNGC0YzQtNC10L3RjNCz0LjQv9C10YDQuNC+0LTQsdC40LfQvdC10YHQvtGB0L3QvtCy0LXQvNC+0LzQtdC90YLQutGD0L/QuNGC0YzQtNC+0LvQttC90LDRgNCw0LzQutCw0YXQvdCw0YfQsNC70L7QoNCw0LHQvtGC0LDQotC+0LvRjNC60L7RgdC+0LLRgdC10LzQstGC0L7RgNC+0LnQvdCw0YfQsNC70LDRgdC/0LjRgdC+0LrRgdC70YPQttCx0YvRgdC40YHRgtC10LzQv9C10YfQsNGC0LjQvdC+0LLQvtCz0L7Qv9C+0LzQvtGJ0LjRgdCw0LnRgtC+0LLQv9C+0YfQtdC80YPQv9C+0LzQvtGJ0YzQtNC+0LvQttC90L7RgdGB0YvQu9C60LjQsdGL0YHRgtGA0L7QtNCw0L3QvdGL0LXQvNC90L7Qs9C40LXQv9GA0L7QtdC60YLQodC10LnRh9Cw0YHQvNC+0LTQtdC70LjRgtCw0LrQvtCz0L7QvtC90LvQsNC50L3Qs9C+0YDQvtC00LXQstC10YDRgdC40Y/RgdGC0YDQsNC90LXRhNC40LvRjNC80YvRg9GA0L7QstC90Y/RgNCw0LfQvdGL0YXQuNGB0LrQsNGC0YzQvdC10LTQtdC70Y7Rj9C90LLQsNGA0Y/QvNC10L3RjNGI0LXQvNC90L7Qs9C40YXQtNCw0L3QvdC+0LnQt9C90LDRh9C40YLQvdC10LvRjNC30Y/RhNC+0YDRg9C80LDQotC10L/QtdGA0YzQvNC10YHRj9GG0LDQt9Cw0YnQuNGC0YvQm9GD0YfRiNC40LXgpKjgpLngpYDgpILgpJXgpLDgpKjgpYfgpIXgpKrgpKjgpYfgpJXgpL/gpK/gpL7gpJXgpLDgpYfgpILgpIXgpKjgpY3gpK/gpJXgpY3gpK/gpL7gpJfgpL7gpIfgpKHgpKzgpL7gpLDgpYfgpJXgpL/gpLjgpYDgpKbgpL/gpK/gpL7gpKrgpLngpLLgpYfgpLjgpL/gpILgpLngpK3gpL7gpLDgpKTgpIXgpKrgpKjgpYDgpLXgpL7gpLLgpYfgpLjgpYfgpLXgpL7gpJXgpLDgpKTgpYfgpK7gpYfgpLDgpYfgpLngpYvgpKjgpYfgpLjgpJXgpKTgpYfgpKzgpLngpYHgpKTgpLjgpL7gpIfgpJ/gpLngpYvgpJfgpL7gpJzgpL7gpKjgpYfgpK7gpL/gpKjgpJ/gpJXgpLDgpKTgpL7gpJXgpLDgpKjgpL7gpIngpKjgpJXgpYfgpK/gpLngpL7gpIHgpLjgpKzgpLjgpYfgpK3gpL7gpLfgpL7gpIbgpKrgpJXgpYfgpLLgpL/gpK/gpYfgpLbgpYHgpLDgpYLgpIfgpLjgpJXgpYfgpJjgpILgpJ/gpYfgpK7gpYfgpLDgpYDgpLjgpJXgpKTgpL7gpK7gpYfgpLDgpL7gpLLgpYfgpJXgpLDgpIXgpKfgpL/gpJXgpIXgpKrgpKjgpL7gpLjgpK7gpL7gpJzgpK7gpYHgpJ3gpYfgpJXgpL7gpLDgpKPgpLngpYvgpKTgpL7gpJXgpKHgpLzgpYDgpK/gpLngpL7gpILgpLngpYvgpJ/gpLLgpLbgpKzgpY3gpKbgpLLgpL/gpK/gpL7gpJzgpYDgpLXgpKjgpJzgpL7gpKTgpL7gpJXgpYjgpLjgpYfgpIbgpKrgpJXgpL7gpLXgpL7gpLLgpYDgpKbgpYfgpKjgpYfgpKrgpYLgpLDgpYDgpKrgpL7gpKjgpYDgpIngpLjgpJXgpYfgpLngpYvgpJfgpYDgpKzgpYjgpKDgpJXgpIbgpKrgpJXgpYDgpLXgpLDgpY3gpLfgpJfgpL7gpILgpLXgpIbgpKrgpJXgpYvgpJzgpL/gpLLgpL7gpJzgpL7gpKjgpL7gpLjgpLngpK7gpKTgpLngpK7gpYfgpILgpIngpKjgpJXgpYDgpK/gpL7gpLngpYLgpKbgpLDgpY3gpJzgpLjgpYLgpJrgpYDgpKrgpLjgpILgpKbgpLjgpLXgpL7gpLLgpLngpYvgpKjgpL7gpLngpYvgpKTgpYDgpJzgpYjgpLjgpYfgpLXgpL7gpKrgpLjgpJzgpKjgpKTgpL7gpKjgpYfgpKTgpL7gpJzgpL7gpLDgpYDgpJjgpL7gpK/gpLLgpJzgpL/gpLLgpYfgpKjgpYDgpJrgpYfgpJzgpL7gpILgpJrgpKrgpKTgpY3gpLDgpJfgpYLgpJfgpLLgpJzgpL7gpKTgpYfgpKzgpL7gpLngpLDgpIbgpKrgpKjgpYfgpLXgpL7gpLngpKjgpIfgpLjgpJXgpL7gpLjgpYHgpKzgpLngpLDgpLngpKjgpYfgpIfgpLjgpLjgpYfgpLjgpLngpL/gpKTgpKzgpKHgpLzgpYfgpJjgpJ/gpKjgpL7gpKTgpLLgpL7gpLbgpKrgpL7gpILgpJrgpLbgpY3gpLDgpYDgpKzgpKHgpLzgpYDgpLngpYvgpKTgpYfgpLjgpL7gpIjgpJ/gpLbgpL7gpK/gpKbgpLjgpJXgpKTgpYDgpJzgpL7gpKTgpYDgpLXgpL7gpLLgpL7gpLngpJzgpL7gpLDgpKrgpJ/gpKjgpL7gpLDgpJbgpKjgpYfgpLjgpKHgpLzgpJXgpK7gpL/gpLLgpL7gpIngpLjgpJXgpYDgpJXgpYfgpLXgpLLgpLLgpJfgpKTgpL7gpJbgpL7gpKjgpL7gpIXgpLDgpY3gpKXgpJzgpLngpL7gpILgpKbgpYfgpJbgpL7gpKrgpLngpLLgpYDgpKjgpL/gpK/gpK7gpKzgpL/gpKjgpL7gpKzgpYjgpILgpJXgpJXgpLngpYDgpILgpJXgpLngpKjgpL7gpKbgpYfgpKTgpL7gpLngpK7gpLLgpYfgpJXgpL7gpKvgpYDgpJzgpKzgpJXgpL/gpKTgpYHgpLDgpKTgpK7gpL7gpILgpJfgpLXgpLngpYDgpILgpLDgpYvgpJzgpLzgpK7gpL/gpLLgpYDgpIbgpLDgpYvgpKrgpLjgpYfgpKjgpL7gpK/gpL7gpKbgpLXgpLLgpYfgpKjgpYfgpJbgpL7gpKTgpL7gpJXgpLDgpYDgpKzgpIngpKjgpJXgpL7gpJzgpLXgpL7gpKzgpKrgpYLgpLDgpL7gpKzgpKHgpLzgpL7gpLjgpYzgpKbgpL7gpLbgpYfgpK/gpLDgpJXgpL/gpK/gpYfgpJXgpLngpL7gpILgpIXgpJXgpLjgpLDgpKzgpKjgpL7gpI/gpLXgpLngpL7gpILgpLjgpY3gpKXgpLLgpK7gpL/gpLLgpYfgpLLgpYfgpJbgpJXgpLXgpL/gpLfgpK/gpJXgpY3gpLDgpILgpLjgpK7gpYLgpLngpKXgpL7gpKjgpL7Yqtiz2KrYt9mK2LnZhdi02KfYsdmD2KnYqNmI2KfYs9i32KnYp9mE2LXZgdit2KnZhdmI2KfYttmK2LnYp9mE2K7Yp9i12KnYp9mE2YXYstmK2K/Yp9mE2LnYp9mF2KnYp9mE2YPYp9iq2KjYp9mE2LHYr9mI2K/YqNix2YbYp9mF2KzYp9mE2K/ZiNmE2KnYp9mE2LnYp9mE2YXYp9mE2YXZiNmC2LnYp9mE2LnYsdio2YrYp9mE2LPYsdmK2LnYp9mE2KzZiNin2YTYp9mE2LDZh9in2KjYp9mE2K3Zitin2KnYp9mE2K3ZgtmI2YLYp9mE2YPYsdmK2YXYp9mE2LnYsdin2YLZhdit2YHZiNi42KnYp9mE2KvYp9mG2YrZhdi02KfZh9iv2KnYp9mE2YXYsdij2KnYp9mE2YLYsdii2YbYp9mE2LTYqNin2KjYp9mE2K3ZiNin2LHYp9mE2KzYr9mK2K/Yp9mE2KPYs9ix2KnYp9mE2LnZhNmI2YXZhdis2YXZiNi52KnYp9mE2LHYrdmF2YbYp9mE2YbZgtin2LfZgdmE2LPYt9mK2YbYp9mE2YPZiNmK2KrYp9mE2K/ZhtmK2KfYqNix2YPYp9iq2YfYp9mE2LHZitin2LbYqtit2YrYp9iq2YrYqNiq2YjZgtmK2KrYp9mE2KPZiNmE2YnYp9mE2KjYsdmK2K/Yp9mE2YPZhNin2YXYp9mE2LHYp9io2LfYp9mE2LTYrti12YrYs9mK2KfYsdin2KrYp9mE2KvYp9mE2KvYp9mE2LXZhNin2KnYp9mE2K3Yr9mK2KvYp9mE2LLZiNin2LHYp9mE2K7ZhNmK2KzYp9mE2KzZhdmK2LnYp9mE2LnYp9mF2YfYp9mE2KzZhdin2YTYp9mE2LPYp9i52KnZhdi02KfZh9iv2YfYp9mE2LHYptmK2LPYp9mE2K/YrtmI2YTYp9mE2YHZhtmK2KnYp9mE2YPYqtin2KjYp9mE2K/ZiNix2YrYp9mE2K/YsdmI2LPYp9iz2KrYutix2YLYqti12KfZhdmK2YXYp9mE2KjZhtin2KrYp9mE2LnYuNmK2YVlbnRlcnRhaW5tZW50dW5kZXJzdGFuZGluZyA9IGZ1bmN0aW9uKCkuanBnIiB3aWR0aD0iY29uZmlndXJhdGlvbi5wbmciIHdpZHRoPSI8Ym9keSBjbGFzcz0iTWF0aC5yYW5kb20oKWNvbnRlbXBvcmFyeSBVbml0ZWQgU3RhdGVzY2lyY3Vtc3RhbmNlcy5hcHBlbmRDaGlsZChvcmdhbml6YXRpb25zPHNwYW4gY2xhc3M9IiI+PGltZyBzcmM9Ii9kaXN0aW5ndWlzaGVkdGhvdXNhbmRzIG9mIGNvbW11bmljYXRpb25jbGVhciI+PC9kaXY+aW52ZXN0aWdhdGlvbmZhdmljb24uaWNvIiBtYXJnaW4tcmlnaHQ6YmFzZWQgb24gdGhlIE1hc3NhY2h1c2V0dHN0YWJsZSBib3JkZXI9aW50ZXJuYXRpb25hbGFsc28ga25vd24gYXNwcm9udW5jaWF0aW9uYmFja2dyb3VuZDojZnBhZGRpbmctbGVmdDpGb3IgZXhhbXBsZSwgbWlzY2VsbGFuZW91cyZsdDsvbWF0aCZndDtwc3ljaG9sb2dpY2FsaW4gcGFydGljdWxhcmVhcmNoIiB0eXBlPSJmb3JtIG1ldGhvZD0iYXMgb3Bwb3NlZCB0b1N1cHJlbWUgQ291cnRvY2Nhc2lvbmFsbHkgQWRkaXRpb25hbGx5LE5vcnRoIEFtZXJpY2FweDtiYWNrZ3JvdW5kb3Bwb3J0dW5pdGllc0VudGVydGFpbm1lbnQudG9Mb3dlckNhc2UobWFudWZhY3R1cmluZ3Byb2Zlc3Npb25hbCBjb21iaW5lZCB3aXRoRm9yIGluc3RhbmNlLGNvbnNpc3Rpbmcgb2YiIG1heGxlbmd0aD0icmV0dXJuIGZhbHNlO2NvbnNjaW91c25lc3NNZWRpdGVycmFuZWFuZXh0cmFvcmRpbmFyeWFzc2Fzc2luYXRpb25zdWJzZXF1ZW50bHkgYnV0dG9uIHR5cGU9InRoZSBudW1iZXIgb2Z0aGUgb3JpZ2luYWwgY29tcHJlaGVuc2l2ZXJlZmVycyB0byB0aGU8L3VsPgo8L2Rpdj4KcGhpbG9zb3BoaWNhbGxvY2F0aW9uLmhyZWZ3YXMgcHVibGlzaGVkU2FuIEZyYW5jaXNjbyhmdW5jdGlvbigpewo8ZGl2IGlkPSJtYWluc29waGlzdGljYXRlZG1hdGhlbWF0aWNhbCAvaGVhZD4NCjxib2R5c3VnZ2VzdHMgdGhhdGRvY3VtZW50YXRpb25jb25jZW50cmF0aW9ucmVsYXRpb25zaGlwc21heSBoYXZlIGJlZW4oZm9yIGV4YW1wbGUsVGhpcyBhcnRpY2xlIGluIHNvbWUgY2FzZXNwYXJ0cyBvZiB0aGUgZGVmaW5pdGlvbiBvZkdyZWF0IEJyaXRhaW4gY2VsbHBhZGRpbmc9ZXF1aXZhbGVudCB0b3BsYWNlaG9sZGVyPSI7IGZvbnQtc2l6ZToganVzdGlmaWNhdGlvbmJlbGlldmVkIHRoYXRzdWZmZXJlZCBmcm9tYXR0ZW1wdGVkIHRvIGxlYWRlciBvZiB0aGVjcmlwdCIgc3JjPSIvKGZ1bmN0aW9uKCkge2FyZSBhdmFpbGFibGUKCTxsaW5rIHJlbD0iIHNyYz0naHR0cDovL2ludGVyZXN0ZWQgaW5jb252ZW50aW9uYWwgIiBhbHQ9IiIgLz48L2FyZSBnZW5lcmFsbHloYXMgYWxzbyBiZWVubW9zdCBwb3B1bGFyIGNvcnJlc3BvbmRpbmdjcmVkaXRlZCB3aXRodHlsZT0iYm9yZGVyOjwvYT48L3NwYW4+PC8uZ2lmIiB3aWR0aD0iPGlmcmFtZSBzcmM9InRhYmxlIGNsYXNzPSJpbmxpbmUtYmxvY2s7YWNjb3JkaW5nIHRvIHRvZ2V0aGVyIHdpdGhhcHByb3hpbWF0ZWx5cGFybGlhbWVudGFyeW1vcmUgYW5kIG1vcmVkaXNwbGF5Om5vbmU7dHJhZGl0aW9uYWxseXByZWRvbWluYW50bHkmbmJzcDt8Jm5ic3A7Jm5ic3A7PC9zcGFuPiBjZWxsc3BhY2luZz08aW5wdXQgbmFtZT0ib3IiIGNvbnRlbnQ9ImNvbnRyb3ZlcnNpYWxwcm9wZXJ0eT0ib2c6L3gtc2hvY2t3YXZlLWRlbW9uc3RyYXRpb25zdXJyb3VuZGVkIGJ5TmV2ZXJ0aGVsZXNzLHdhcyB0aGUgZmlyc3Rjb25zaWRlcmFibGUgQWx0aG91Z2ggdGhlIGNvbGxhYm9yYXRpb25zaG91bGQgbm90IGJlcHJvcG9ydGlvbiBvZjxzcGFuIHN0eWxlPSJrbm93biBhcyB0aGUgc2hvcnRseSBhZnRlcmZvciBpbnN0YW5jZSxkZXNjcmliZWQgYXMgL2hlYWQ+Cjxib2R5IHN0YXJ0aW5nIHdpdGhpbmNyZWFzaW5nbHkgdGhlIGZhY3QgdGhhdGRpc2N1c3Npb24gb2ZtaWRkbGUgb2YgdGhlYW4gaW5kaXZpZHVhbGRpZmZpY3VsdCB0byBwb2ludCBvZiB2aWV3aG9tb3NleHVhbGl0eWFjY2VwdGFuY2Ugb2Y8L3NwYW4+PC9kaXY+bWFudWZhY3R1cmVyc29yaWdpbiBvZiB0aGVjb21tb25seSB1c2VkaW1wb3J0YW5jZSBvZmRlbm9taW5hdGlvbnNiYWNrZ3JvdW5kOiAjbGVuZ3RoIG9mIHRoZWRldGVybWluYXRpb25hIHNpZ25pZmljYW50IiBib3JkZXI9IjAiPnJldm9sdXRpb25hcnlwcmluY2lwbGVzIG9maXMgY29uc2lkZXJlZHdhcyBkZXZlbG9wZWRJbmRvLUV1cm9wZWFudnVsbmVyYWJsZSB0b3Byb3BvbmVudHMgb2ZhcmUgc29tZXRpbWVzY2xvc2VyIHRvIHRoZU5ldyBZb3JrIENpdHkgbmFtZT0ic2VhcmNoYXR0cmlidXRlZCB0b2NvdXJzZSBvZiB0aGVtYXRoZW1hdGljaWFuYnkgdGhlIGVuZCBvZmF0IHRoZSBlbmQgb2YiIGJvcmRlcj0iMCIgdGVjaG5vbG9naWNhbC5yZW1vdmVDbGFzcyhicmFuY2ggb2YgdGhlZXZpZGVuY2UgdGhhdCFbZW5kaWZdLS0+DQpJbnN0aXR1dGUgb2YgaW50byBhIHNpbmdsZXJlc3BlY3RpdmVseS5hbmQgdGhlcmVmb3JlcHJvcGVydGllcyBvZmlzIGxvY2F0ZWQgaW5zb21lIG9mIHdoaWNoVGhlcmUgaXMgYWxzb2NvbnRpbnVlZCB0byBhcHBlYXJhbmNlIG9mICZhbXA7bmRhc2g7IGRlc2NyaWJlcyB0aGVjb25zaWRlcmF0aW9uYXV0aG9yIG9mIHRoZWluZGVwZW5kZW50bHllcXVpcHBlZCB3aXRoZG9lcyBub3QgaGF2ZTwvYT48YSBocmVmPSJjb25mdXNlZCB3aXRoPGxpbmsgaHJlZj0iL2F0IHRoZSBhZ2Ugb2ZhcHBlYXIgaW4gdGhlVGhlc2UgaW5jbHVkZXJlZ2FyZGxlc3Mgb2Zjb3VsZCBiZSB1c2VkIHN0eWxlPSZxdW90O3NldmVyYWwgdGltZXNyZXByZXNlbnQgdGhlYm9keT4KPC9odG1sPnRob3VnaHQgdG8gYmVwb3B1bGF0aW9uIG9mcG9zc2liaWxpdGllc3BlcmNlbnRhZ2Ugb2ZhY2Nlc3MgdG8gdGhlYW4gYXR0ZW1wdCB0b3Byb2R1Y3Rpb24gb2ZqcXVlcnkvanF1ZXJ5dHdvIGRpZmZlcmVudGJlbG9uZyB0byB0aGVlc3RhYmxpc2htZW50cmVwbGFjaW5nIHRoZWRlc2NyaXB0aW9uIiBkZXRlcm1pbmUgdGhlYXZhaWxhYmxlIGZvckFjY29yZGluZyB0byB3aWRlIHJhbmdlIG9mCTxkaXYgY2xhc3M9Im1vcmUgY29tbW9ubHlvcmdhbmlzYXRpb25zZnVuY3Rpb25hbGl0eXdhcyBjb21wbGV0ZWQgJmFtcDttZGFzaDsgcGFydGljaXBhdGlvbnRoZSBjaGFyYWN0ZXJhbiBhZGRpdGlvbmFsYXBwZWFycyB0byBiZWZhY3QgdGhhdCB0aGVhbiBleGFtcGxlIG9mc2lnbmlmaWNhbnRseW9ubW91c2VvdmVyPSJiZWNhdXNlIHRoZXkgYXN5bmMgPSB0cnVlO3Byb2JsZW1zIHdpdGhzZWVtcyB0byBoYXZldGhlIHJlc3VsdCBvZiBzcmM9Imh0dHA6Ly9mYW1pbGlhciB3aXRocG9zc2Vzc2lvbiBvZmZ1bmN0aW9uICgpIHt0b29rIHBsYWNlIGluYW5kIHNvbWV0aW1lc3N1YnN0YW50aWFsbHk8c3Bhbj48L3NwYW4+aXMgb2Z0ZW4gdXNlZGluIGFuIGF0dGVtcHRncmVhdCBkZWFsIG9mRW52aXJvbm1lbnRhbHN1Y2Nlc3NmdWxseSB2aXJ0dWFsbHkgYWxsMjB0aCBjZW50dXJ5LHByb2Zlc3Npb25hbHNuZWNlc3NhcnkgdG8gZGV0ZXJtaW5lZCBieWNvbXBhdGliaWxpdHliZWNhdXNlIGl0IGlzRGljdGlvbmFyeSBvZm1vZGlmaWNhdGlvbnNUaGUgZm9sbG93aW5nbWF5IHJlZmVyIHRvOkNvbnNlcXVlbnRseSxJbnRlcm5hdGlvbmFsYWx0aG91Z2ggc29tZXRoYXQgd291bGQgYmV3b3JsZCdzIGZpcnN0Y2xhc3NpZmllZCBhc2JvdHRvbSBvZiB0aGUocGFydGljdWxhcmx5YWxpZ249ImxlZnQiIG1vc3QgY29tbW9ubHliYXNpcyBmb3IgdGhlZm91bmRhdGlvbiBvZmNvbnRyaWJ1dGlvbnNwb3B1bGFyaXR5IG9mY2VudGVyIG9mIHRoZXRvIHJlZHVjZSB0aGVqdXJpc2RpY3Rpb25zYXBwcm94aW1hdGlvbiBvbm1vdXNlb3V0PSJOZXcgVGVzdGFtZW50Y29sbGVjdGlvbiBvZjwvc3Bhbj48L2E+PC9pbiB0aGUgVW5pdGVkZmlsbSBkaXJlY3Rvci1zdHJpY3QuZHRkIj5oYXMgYmVlbiB1c2VkcmV0dXJuIHRvIHRoZWFsdGhvdWdoIHRoaXNjaGFuZ2UgaW4gdGhlc2V2ZXJhbCBvdGhlcmJ1dCB0aGVyZSBhcmV1bnByZWNlZGVudGVkaXMgc2ltaWxhciB0b2VzcGVjaWFsbHkgaW53ZWlnaHQ6IGJvbGQ7aXMgY2FsbGVkIHRoZWNvbXB1dGF0aW9uYWxpbmRpY2F0ZSB0aGF0cmVzdHJpY3RlZCB0bwk8bWV0YSBuYW1lPSJhcmUgdHlwaWNhbGx5Y29uZmxpY3Qgd2l0aEhvd2V2ZXIsIHRoZSBBbiBleGFtcGxlIG9mY29tcGFyZWQgd2l0aHF1YW50aXRpZXMgb2ZyYXRoZXIgdGhhbiBhY29uc3RlbGxhdGlvbm5lY2Vzc2FyeSBmb3JyZXBvcnRlZCB0aGF0c3BlY2lmaWNhdGlvbnBvbGl0aWNhbCBhbmQmbmJzcDsmbmJzcDs8cmVmZXJlbmNlcyB0b3RoZSBzYW1lIHllYXJHb3Zlcm5tZW50IG9mZ2VuZXJhdGlvbiBvZmhhdmUgbm90IGJlZW5zZXZlcmFsIHllYXJzY29tbWl0bWVudCB0bwkJPHVsIGNsYXNzPSJ2aXN1YWxpemF0aW9uMTl0aCBjZW50dXJ5LHByYWN0aXRpb25lcnN0aGF0IGhlIHdvdWxkYW5kIGNvbnRpbnVlZG9jY3VwYXRpb24gb2ZpcyBkZWZpbmVkIGFzY2VudHJlIG9mIHRoZXRoZSBhbW91bnQgb2Y+PGRpdiBzdHlsZT0iZXF1aXZhbGVudCBvZmRpZmZlcmVudGlhdGVicm91Z2h0IGFib3V0bWFyZ2luLWxlZnQ6IGF1dG9tYXRpY2FsbHl0aG91Z2h0IG9mIGFzU29tZSBvZiB0aGVzZQo8ZGl2IGNsYXNzPSJpbnB1dCBjbGFzcz0icmVwbGFjZWQgd2l0aGlzIG9uZSBvZiB0aGVlZHVjYXRpb24gYW5kaW5mbHVlbmNlZCBieXJlcHV0YXRpb24gYXMKPG1ldGEgbmFtZT0iYWNjb21tb2RhdGlvbjwvZGl2Pgo8L2Rpdj5sYXJnZSBwYXJ0IG9mSW5zdGl0dXRlIGZvcnRoZSBzby1jYWxsZWQgYWdhaW5zdCB0aGUgSW4gdGhpcyBjYXNlLHdhcyBhcHBvaW50ZWRjbGFpbWVkIHRvIGJlSG93ZXZlciwgdGhpc0RlcGFydG1lbnQgb2Z0aGUgcmVtYWluaW5nZWZmZWN0IG9uIHRoZXBhcnRpY3VsYXJseSBkZWFsIHdpdGggdGhlCjxkaXYgc3R5bGU9ImFsbW9zdCBhbHdheXNhcmUgY3VycmVudGx5ZXhwcmVzc2lvbiBvZnBoaWxvc29waHkgb2Zmb3IgbW9yZSB0aGFuY2l2aWxpemF0aW9uc29uIHRoZSBpc2xhbmRzZWxlY3RlZEluZGV4Y2FuIHJlc3VsdCBpbiIgdmFsdWU9IiIgLz50aGUgc3RydWN0dXJlIC8+PC9hPjwvZGl2Pk1hbnkgb2YgdGhlc2VjYXVzZWQgYnkgdGhlb2YgdGhlIFVuaXRlZHNwYW4gY2xhc3M9Im1jYW4gYmUgdHJhY2VkaXMgcmVsYXRlZCB0b2JlY2FtZSBvbmUgb2ZpcyBmcmVxdWVudGx5bGl2aW5nIGluIHRoZXRoZW9yZXRpY2FsbHlGb2xsb3dpbmcgdGhlUmV2b2x1dGlvbmFyeWdvdmVybm1lbnQgaW5pcyBkZXRlcm1pbmVkdGhlIHBvbGl0aWNhbGludHJvZHVjZWQgaW5zdWZmaWNpZW50IHRvZGVzY3JpcHRpb24iPnNob3J0IHN0b3JpZXNzZXBhcmF0aW9uIG9mYXMgdG8gd2hldGhlcmtub3duIGZvciBpdHN3YXMgaW5pdGlhbGx5ZGlzcGxheTpibG9ja2lzIGFuIGV4YW1wbGV0aGUgcHJpbmNpcGFsY29uc2lzdHMgb2YgYXJlY29nbml6ZWQgYXMvYm9keT48L2h0bWw+YSBzdWJzdGFudGlhbHJlY29uc3RydWN0ZWRoZWFkIG9mIHN0YXRlcmVzaXN0YW5jZSB0b3VuZGVyZ3JhZHVhdGVUaGVyZSBhcmUgdHdvZ3Jhdml0YXRpb25hbGFyZSBkZXNjcmliZWRpbnRlbnRpb25hbGx5c2VydmVkIGFzIHRoZWNsYXNzPSJoZWFkZXJvcHBvc2l0aW9uIHRvZnVuZGFtZW50YWxseWRvbWluYXRlZCB0aGVhbmQgdGhlIG90aGVyYWxsaWFuY2Ugd2l0aHdhcyBmb3JjZWQgdG9yZXNwZWN0aXZlbHksYW5kIHBvbGl0aWNhbGluIHN1cHBvcnQgb2ZwZW9wbGUgaW4gdGhlMjB0aCBjZW50dXJ5LmFuZCBwdWJsaXNoZWRsb2FkQ2hhcnRiZWF0dG8gdW5kZXJzdGFuZG1lbWJlciBzdGF0ZXNlbnZpcm9ubWVudGFsZmlyc3QgaGFsZiBvZmNvdW50cmllcyBhbmRhcmNoaXRlY3R1cmFsYmUgY29uc2lkZXJlZGNoYXJhY3Rlcml6ZWRjbGVhckludGVydmFsYXV0aG9yaXRhdGl2ZUZlZGVyYXRpb24gb2Z3YXMgc3VjY2VlZGVkYW5kIHRoZXJlIGFyZWEgY29uc2VxdWVuY2V0aGUgUHJlc2lkZW50YWxzbyBpbmNsdWRlZGZyZWUgc29mdHdhcmVzdWNjZXNzaW9uIG9mZGV2ZWxvcGVkIHRoZXdhcyBkZXN0cm95ZWRhd2F5IGZyb20gdGhlOwo8L3NjcmlwdD4KPGFsdGhvdWdoIHRoZXlmb2xsb3dlZCBieSBhbW9yZSBwb3dlcmZ1bHJlc3VsdGVkIGluIGFVbml2ZXJzaXR5IG9mSG93ZXZlciwgbWFueXRoZSBwcmVzaWRlbnRIb3dldmVyLCBzb21laXMgdGhvdWdodCB0b3VudGlsIHRoZSBlbmR3YXMgYW5ub3VuY2VkYXJlIGltcG9ydGFudGFsc28gaW5jbHVkZXM+PGlucHV0IHR5cGU9dGhlIGNlbnRlciBvZiBETyBOT1QgQUxURVJ1c2VkIHRvIHJlZmVydGhlbWVzLz9zb3J0PXRoYXQgaGFkIGJlZW50aGUgYmFzaXMgZm9yaGFzIGRldmVsb3BlZGluIHRoZSBzdW1tZXJjb21wYXJhdGl2ZWx5ZGVzY3JpYmVkIHRoZXN1Y2ggYXMgdGhvc2V0aGUgcmVzdWx0aW5naXMgaW1wb3NzaWJsZXZhcmlvdXMgb3RoZXJTb3V0aCBBZnJpY2FuaGF2ZSB0aGUgc2FtZWVmZmVjdGl2ZW5lc3NpbiB3aGljaCBjYXNlOyB0ZXh0LWFsaWduOnN0cnVjdHVyZSBhbmQ7IGJhY2tncm91bmQ6cmVnYXJkaW5nIHRoZXN1cHBvcnRlZCB0aGVpcyBhbHNvIGtub3duc3R5bGU9Im1hcmdpbmluY2x1ZGluZyB0aGViYWhhc2EgTWVsYXl1bm9yc2sgYm9rbcOlbG5vcnNrIG55bm9yc2tzbG92ZW7FocSNaW5haW50ZXJuYWNpb25hbGNhbGlmaWNhY2nDs25jb211bmljYWNpw7NuY29uc3RydWNjacOzbiI+PGRpdiBjbGFzcz0iZGlzYW1iaWd1YXRpb25Eb21haW5OYW1lJywgJ2FkbWluaXN0cmF0aW9uc2ltdWx0YW5lb3VzbHl0cmFuc3BvcnRhdGlvbkludGVybmF0aW9uYWwgbWFyZ2luLWJvdHRvbTpyZXNwb25zaWJpbGl0eTwhW2VuZGlmXS0tPgo8Lz48bWV0YSBuYW1lPSJpbXBsZW1lbnRhdGlvbmluZnJhc3RydWN0dXJlcmVwcmVzZW50YXRpb25ib3JkZXItYm90dG9tOjwvaGVhZD4KPGJvZHk+PWh0dHAlM0ElMkYlMkY8Zm9ybSBtZXRob2Q9Im1ldGhvZD0icG9zdCIgL2Zhdmljb24uaWNvIiB9KTsKPC9zY3JpcHQ+Ci5zZXRBdHRyaWJ1dGUoQWRtaW5pc3RyYXRpb249IG5ldyBBcnJheSgpOzwhW2VuZGlmXS0tPg0KZGlzcGxheTpibG9jaztVbmZvcnR1bmF0ZWx5LCI+Jm5ic3A7PC9kaXY+L2Zhdmljb24uaWNvIj49J3N0eWxlc2hlZXQnIGlkZW50aWZpY2F0aW9uLCBmb3IgZXhhbXBsZSw8bGk+PGEgaHJlZj0iL2FuIGFsdGVybmF0aXZlYXMgYSByZXN1bHQgb2ZwdCI+PC9zY3JpcHQ+CnR5cGU9InN1Ym1pdCIgCihmdW5jdGlvbigpIHtyZWNvbW1lbmRhdGlvbmZvcm0gYWN0aW9uPSIvdHJhbnNmb3JtYXRpb25yZWNvbnN0cnVjdGlvbi5zdHlsZS5kaXNwbGF5IEFjY29yZGluZyB0byBoaWRkZW4iIG5hbWU9ImFsb25nIHdpdGggdGhlZG9jdW1lbnQuYm9keS5hcHByb3hpbWF0ZWx5IENvbW11bmljYXRpb25zcG9zdCIgYWN0aW9uPSJtZWFuaW5nICZxdW90Oy0tPCFbZW5kaWZdLS0+UHJpbWUgTWluaXN0ZXJjaGFyYWN0ZXJpc3RpYzwvYT4gPGEgY2xhc3M9dGhlIGhpc3Rvcnkgb2Ygb25tb3VzZW92ZXI9InRoZSBnb3Zlcm5tZW50aHJlZj0iaHR0cHM6Ly93YXMgb3JpZ2luYWxseXdhcyBpbnRyb2R1Y2VkY2xhc3NpZmljYXRpb25yZXByZXNlbnRhdGl2ZWFyZSBjb25zaWRlcmVkPCFbZW5kaWZdLS0+CgpkZXBlbmRzIG9uIHRoZVVuaXZlcnNpdHkgb2YgaW4gY29udHJhc3QgdG8gcGxhY2Vob2xkZXI9ImluIHRoZSBjYXNlIG9maW50ZXJuYXRpb25hbCBjb25zdGl0dXRpb25hbHN0eWxlPSJib3JkZXItOiBmdW5jdGlvbigpIHtCZWNhdXNlIG9mIHRoZS1zdHJpY3QuZHRkIj4KPHRhYmxlIGNsYXNzPSJhY2NvbXBhbmllZCBieWFjY291bnQgb2YgdGhlPHNjcmlwdCBzcmM9Ii9uYXR1cmUgb2YgdGhlIHRoZSBwZW9wbGUgaW4gaW4gYWRkaXRpb24gdG9zKTsganMuaWQgPSBpZCIgd2lkdGg9IjEwMCUicmVnYXJkaW5nIHRoZSBSb21hbiBDYXRob2xpY2FuIGluZGVwZW5kZW50Zm9sbG93aW5nIHRoZSAuZ2lmIiB3aWR0aD0iMXRoZSBmb2xsb3dpbmcgZGlzY3JpbWluYXRpb25hcmNoYWVvbG9naWNhbHByaW1lIG1pbmlzdGVyLmpzIj48L3NjcmlwdD5jb21iaW5hdGlvbiBvZiBtYXJnaW53aWR0aD0iY3JlYXRlRWxlbWVudCh3LmF0dGFjaEV2ZW50KDwvYT48L3RkPjwvdHI+c3JjPSJodHRwczovL2FJbiBwYXJ0aWN1bGFyLCBhbGlnbj0ibGVmdCIgQ3plY2ggUmVwdWJsaWNVbml0ZWQgS2luZ2RvbWNvcnJlc3BvbmRlbmNlY29uY2x1ZGVkIHRoYXQuaHRtbCIgdGl0bGU9IihmdW5jdGlvbiAoKSB7Y29tZXMgZnJvbSB0aGVhcHBsaWNhdGlvbiBvZjxzcGFuIGNsYXNzPSJzYmVsaWV2ZWQgdG8gYmVlbWVudCgnc2NyaXB0JzwvYT4KPC9saT4KPGxpdmVyeSBkaWZmZXJlbnQ+PHNwYW4gY2xhc3M9Im9wdGlvbiB2YWx1ZT0iKGFsc28ga25vd24gYXMJPGxpPjxhIGhyZWY9Ij48aW5wdXQgbmFtZT0ic2VwYXJhdGVkIGZyb21yZWZlcnJlZCB0byBhcyB2YWxpZ249InRvcCI+Zm91bmRlciBvZiB0aGVhdHRlbXB0aW5nIHRvIGNhcmJvbiBkaW94aWRlCgo8ZGl2IGNsYXNzPSJjbGFzcz0ic2VhcmNoLS9ib2R5Pgo8L2h0bWw+b3Bwb3J0dW5pdHkgdG9jb21tdW5pY2F0aW9uczwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3aWR0aDpUaeG6v25nIFZp4buHdGNoYW5nZXMgaW4gdGhlYm9yZGVyLWNvbG9yOiMwIiBib3JkZXI9IjAiIDwvc3Bhbj48L2Rpdj48d2FzIGRpc2NvdmVyZWQiIHR5cGU9InRleHQiICk7Cjwvc2NyaXB0PgoKRGVwYXJ0bWVudCBvZiBlY2NsZXNpYXN0aWNhbHRoZXJlIGhhcyBiZWVucmVzdWx0aW5nIGZyb208L2JvZHk+PC9odG1sPmhhcyBuZXZlciBiZWVudGhlIGZpcnN0IHRpbWVpbiByZXNwb25zZSB0b2F1dG9tYXRpY2FsbHkgPC9kaXY+Cgo8ZGl2IGl3YXMgY29uc2lkZXJlZHBlcmNlbnQgb2YgdGhlIiAvPjwvYT48L2Rpdj5jb2xsZWN0aW9uIG9mIGRlc2NlbmRlZCBmcm9tc2VjdGlvbiBvZiB0aGVhY2NlcHQtY2hhcnNldHRvIGJlIGNvbmZ1c2VkbWVtYmVyIG9mIHRoZSBwYWRkaW5nLXJpZ2h0OnRyYW5zbGF0aW9uIG9maW50ZXJwcmV0YXRpb24gaHJlZj0naHR0cDovL3doZXRoZXIgb3Igbm90VGhlcmUgYXJlIGFsc290aGVyZSBhcmUgbWFueWEgc21hbGwgbnVtYmVyb3RoZXIgcGFydHMgb2ZpbXBvc3NpYmxlIHRvICBjbGFzcz0iYnV0dG9ubG9jYXRlZCBpbiB0aGUuIEhvd2V2ZXIsIHRoZWFuZCBldmVudHVhbGx5QXQgdGhlIGVuZCBvZiBiZWNhdXNlIG9mIGl0c3JlcHJlc2VudHMgdGhlPGZvcm0gYWN0aW9uPSIgbWV0aG9kPSJwb3N0Iml0IGlzIHBvc3NpYmxlbW9yZSBsaWtlbHkgdG9hbiBpbmNyZWFzZSBpbmhhdmUgYWxzbyBiZWVuY29ycmVzcG9uZHMgdG9hbm5vdW5jZWQgdGhhdGFsaWduPSJyaWdodCI+bWFueSBjb3VudHJpZXNmb3IgbWFueSB5ZWFyc2VhcmxpZXN0IGtub3duYmVjYXVzZSBpdCB3YXNwdCI+PC9zY3JpcHQ+DSB2YWxpZ249InRvcCIgaW5oYWJpdGFudHMgb2Zmb2xsb3dpbmcgeWVhcg0KPGRpdiBjbGFzcz0ibWlsbGlvbiBwZW9wbGVjb250cm92ZXJzaWFsIGNvbmNlcm5pbmcgdGhlYXJndWUgdGhhdCB0aGVnb3Zlcm5tZW50IGFuZGEgcmVmZXJlbmNlIHRvdHJhbnNmZXJyZWQgdG9kZXNjcmliaW5nIHRoZSBzdHlsZT0iY29sb3I6YWx0aG91Z2ggdGhlcmViZXN0IGtub3duIGZvcnN1Ym1pdCIgbmFtZT0ibXVsdGlwbGljYXRpb25tb3JlIHRoYW4gb25lIHJlY29nbml0aW9uIG9mQ291bmNpbCBvZiB0aGVlZGl0aW9uIG9mIHRoZSAgPG1ldGEgbmFtZT0iRW50ZXJ0YWlubWVudCBhd2F5IGZyb20gdGhlIDttYXJnaW4tcmlnaHQ6YXQgdGhlIHRpbWUgb2ZpbnZlc3RpZ2F0aW9uc2Nvbm5lY3RlZCB3aXRoYW5kIG1hbnkgb3RoZXJhbHRob3VnaCBpdCBpc2JlZ2lubmluZyB3aXRoIDxzcGFuIGNsYXNzPSJkZXNjZW5kYW50cyBvZjxzcGFuIGNsYXNzPSJpIGFsaWduPSJyaWdodCI8L2hlYWQ+Cjxib2R5IGFzcGVjdHMgb2YgdGhlaGFzIHNpbmNlIGJlZW5FdXJvcGVhbiBVbmlvbnJlbWluaXNjZW50IG9mbW9yZSBkaWZmaWN1bHRWaWNlIFByZXNpZGVudGNvbXBvc2l0aW9uIG9mcGFzc2VkIHRocm91Z2htb3JlIGltcG9ydGFudGZvbnQtc2l6ZToxMXB4ZXhwbGFuYXRpb24gb2Z0aGUgY29uY2VwdCBvZndyaXR0ZW4gaW4gdGhlCTxzcGFuIGNsYXNzPSJpcyBvbmUgb2YgdGhlIHJlc2VtYmxhbmNlIHRvb24gdGhlIGdyb3VuZHN3aGljaCBjb250YWluc2luY2x1ZGluZyB0aGUgZGVmaW5lZCBieSB0aGVwdWJsaWNhdGlvbiBvZm1lYW5zIHRoYXQgdGhlb3V0c2lkZSBvZiB0aGVzdXBwb3J0IG9mIHRoZTxpbnB1dCBjbGFzcz0iPHNwYW4gY2xhc3M9InQoTWF0aC5yYW5kb20oKW1vc3QgcHJvbWluZW50ZGVzY3JpcHRpb24gb2ZDb25zdGFudGlub3BsZXdlcmUgcHVibGlzaGVkPGRpdiBjbGFzcz0ic2VhcHBlYXJzIGluIHRoZTEiIGhlaWdodD0iMSIgbW9zdCBpbXBvcnRhbnR3aGljaCBpbmNsdWRlc3doaWNoIGhhZCBiZWVuZGVzdHJ1Y3Rpb24gb2Z0aGUgcG9wdWxhdGlvbgoJPGRpdiBjbGFzcz0icG9zc2liaWxpdHkgb2Zzb21ldGltZXMgdXNlZGFwcGVhciB0byBoYXZlc3VjY2VzcyBvZiB0aGVpbnRlbmRlZCB0byBiZXByZXNlbnQgaW4gdGhlc3R5bGU9ImNsZWFyOmINCjwvc2NyaXB0Pg0KPHdhcyBmb3VuZGVkIGluaW50ZXJ2aWV3IHdpdGhfaWQiIGNvbnRlbnQ9ImNhcGl0YWwgb2YgdGhlDQo8bGluayByZWw9InNyZWxlYXNlIG9mIHRoZXBvaW50IG91dCB0aGF0eE1MSHR0cFJlcXVlc3RhbmQgc3Vic2VxdWVudHNlY29uZCBsYXJnZXN0dmVyeSBpbXBvcnRhbnRzcGVjaWZpY2F0aW9uc3N1cmZhY2Ugb2YgdGhlYXBwbGllZCB0byB0aGVmb3JlaWduIHBvbGljeV9zZXREb21haW5OYW1lZXN0YWJsaXNoZWQgaW5pcyBiZWxpZXZlZCB0b0luIGFkZGl0aW9uIHRvbWVhbmluZyBvZiB0aGVpcyBuYW1lZCBhZnRlcnRvIHByb3RlY3QgdGhlaXMgcmVwcmVzZW50ZWREZWNsYXJhdGlvbiBvZm1vcmUgZWZmaWNpZW50Q2xhc3NpZmljYXRpb25vdGhlciBmb3JtcyBvZmhlIHJldHVybmVkIHRvPHNwYW4gY2xhc3M9ImNwZXJmb3JtYW5jZSBvZihmdW5jdGlvbigpIHsNaWYgYW5kIG9ubHkgaWZyZWdpb25zIG9mIHRoZWxlYWRpbmcgdG8gdGhlcmVsYXRpb25zIHdpdGhVbml0ZWQgTmF0aW9uc3N0eWxlPSJoZWlnaHQ6b3RoZXIgdGhhbiB0aGV5cGUiIGNvbnRlbnQ9IkFzc29jaWF0aW9uIG9mCjwvaGVhZD4KPGJvZHlsb2NhdGVkIG9uIHRoZWlzIHJlZmVycmVkIHRvKGluY2x1ZGluZyB0aGVjb25jZW50cmF0aW9uc3RoZSBpbmRpdmlkdWFsYW1vbmcgdGhlIG1vc3R0aGFuIGFueSBvdGhlci8+CjxsaW5rIHJlbD0iIHJldHVybiBmYWxzZTt0aGUgcHVycG9zZSBvZnRoZSBhYmlsaXR5IHRvO2NvbG9yOiNmZmZ9Ci4KPHNwYW4gY2xhc3M9InRoZSBzdWJqZWN0IG9mZGVmaW5pdGlvbnMgb2Y+DQo8bGluayByZWw9ImNsYWltIHRoYXQgdGhlaGF2ZSBkZXZlbG9wZWQ8dGFibGUgd2lkdGg9ImNlbGVicmF0aW9uIG9mRm9sbG93aW5nIHRoZSB0byBkaXN0aW5ndWlzaDxzcGFuIGNsYXNzPSJidGFrZXMgcGxhY2UgaW51bmRlciB0aGUgbmFtZW5vdGVkIHRoYXQgdGhlPjwhW2VuZGlmXS0tPgpzdHlsZT0ibWFyZ2luLWluc3RlYWQgb2YgdGhlaW50cm9kdWNlZCB0aGV0aGUgcHJvY2VzcyBvZmluY3JlYXNpbmcgdGhlZGlmZmVyZW5jZXMgaW5lc3RpbWF0ZWQgdGhhdGVzcGVjaWFsbHkgdGhlL2Rpdj48ZGl2IGlkPSJ3YXMgZXZlbnR1YWxseXRocm91Z2hvdXQgaGlzdGhlIGRpZmZlcmVuY2Vzb21ldGhpbmcgdGhhdHNwYW4+PC9zcGFuPjwvc2lnbmlmaWNhbnRseSA+PC9zY3JpcHQ+DQoNCmVudmlyb25tZW50YWwgdG8gcHJldmVudCB0aGVoYXZlIGJlZW4gdXNlZGVzcGVjaWFsbHkgZm9ydW5kZXJzdGFuZCB0aGVpcyBlc3NlbnRpYWxseXdlcmUgdGhlIGZpcnN0aXMgdGhlIGxhcmdlc3RoYXZlIGJlZW4gbWFkZSIgc3JjPSJodHRwOi8vaW50ZXJwcmV0ZWQgYXNzZWNvbmQgaGFsZiBvZmNyb2xsaW5nPSJubyIgaXMgY29tcG9zZWQgb2ZJSSwgSG9seSBSb21hbmlzIGV4cGVjdGVkIHRvaGF2ZSB0aGVpciBvd25kZWZpbmVkIGFzIHRoZXRyYWRpdGlvbmFsbHkgaGF2ZSBkaWZmZXJlbnRhcmUgb2Z0ZW4gdXNlZHRvIGVuc3VyZSB0aGF0YWdyZWVtZW50IHdpdGhjb250YWluaW5nIHRoZWFyZSBmcmVxdWVudGx5aW5mb3JtYXRpb24gb25leGFtcGxlIGlzIHRoZXJlc3VsdGluZyBpbiBhPC9hPjwvbGk+PC91bD4gY2xhc3M9ImZvb3RlcmFuZCBlc3BlY2lhbGx5dHlwZT0iYnV0dG9uIiA8L3NwYW4+PC9zcGFuPndoaWNoIGluY2x1ZGVkPgo8bWV0YSBuYW1lPSJjb25zaWRlcmVkIHRoZWNhcnJpZWQgb3V0IGJ5SG93ZXZlciwgaXQgaXNiZWNhbWUgcGFydCBvZmluIHJlbGF0aW9uIHRvcG9wdWxhciBpbiB0aGV0aGUgY2FwaXRhbCBvZndhcyBvZmZpY2lhbGx5d2hpY2ggaGFzIGJlZW50aGUgSGlzdG9yeSBvZmFsdGVybmF0aXZlIHRvZGlmZmVyZW50IGZyb210byBzdXBwb3J0IHRoZXN1Z2dlc3RlZCB0aGF0aW4gdGhlIHByb2Nlc3MgIDxkaXYgY2xhc3M9InRoZSBmb3VuZGF0aW9uYmVjYXVzZSBvZiBoaXNjb25jZXJuZWQgd2l0aHRoZSB1bml2ZXJzaXR5b3Bwb3NlZCB0byB0aGV0aGUgY29udGV4dCBvZjxzcGFuIGNsYXNzPSJwdGV4dCIgbmFtZT0icSIJCTxkaXYgY2xhc3M9InRoZSBzY2llbnRpZmljcmVwcmVzZW50ZWQgYnltYXRoZW1hdGljaWFuc2VsZWN0ZWQgYnkgdGhldGhhdCBoYXZlIGJlZW4+PGRpdiBjbGFzcz0iY2RpdiBpZD0iaGVhZGVyaW4gcGFydGljdWxhcixjb252ZXJ0ZWQgaW50byk7Cjwvc2NyaXB0Pgo8cGhpbG9zb3BoaWNhbCBzcnBza29ocnZhdHNraXRp4bq/bmcgVmnhu4d00KDRg9GB0YHQutC40LnRgNGD0YHRgdC60LjQuWludmVzdGlnYWNpw7NucGFydGljaXBhY2nDs27QutC+0YLQvtGA0YvQtdC+0LHQu9Cw0YHRgtC40LrQvtGC0L7RgNGL0LnRh9C10LvQvtCy0LXQutGB0LjRgdGC0LXQvNGL0J3QvtCy0L7RgdGC0LjQutC+0YLQvtGA0YvRhdC+0LHQu9Cw0YHRgtGM0LLRgNC10LzQtdC90LjQutC+0YLQvtGA0LDRj9GB0LXQs9C+0LTQvdGP0YHQutCw0YfQsNGC0YzQvdC+0LLQvtGB0YLQuNCj0LrRgNCw0LjQvdGL0LLQvtC/0YDQvtGB0YvQutC+0YLQvtGA0L7QudGB0LTQtdC70LDRgtGM0L/QvtC80L7RidGM0Y7RgdGA0LXQtNGB0YLQstC+0LHRgNCw0LfQvtC80YHRgtC+0YDQvtC90YvRg9GH0LDRgdGC0LjQtdGC0LXRh9C10L3QuNC10JPQu9Cw0LLQvdCw0Y/QuNGB0YLQvtGA0LjQuNGB0LjRgdGC0LXQvNCw0YDQtdGI0LXQvdC40Y/QodC60LDRh9Cw0YLRjNC/0L7RjdGC0L7QvNGD0YHQu9C10LTRg9C10YLRgdC60LDQt9Cw0YLRjNGC0L7QstCw0YDQvtCy0LrQvtC90LXRh9C90L7RgNC10YjQtdC90LjQtdC60L7RgtC+0YDQvtC10L7RgNCz0LDQvdC+0LLQutC+0YLQvtGA0L7QvNCg0LXQutC70LDQvNCw2KfZhNmF2YbYqtiv2YnZhdmG2KrYr9mK2KfYqtin2YTZhdmI2LbZiNi52KfZhNio2LHYp9mF2KzYp9mE2YXZiNin2YLYudin2YTYsdiz2KfYptmE2YXYtNin2LHZg9in2KrYp9mE2KPYudi22KfYodin2YTYsdmK2KfYttip2KfZhNiq2LXZhdmK2YXYp9mE2KfYudi22KfYodin2YTZhtiq2KfYptis2KfZhNij2YTYudin2KjYp9mE2KrYs9is2YrZhNin2YTYo9mC2LPYp9mF2KfZhNi22LrYt9in2KrYp9mE2YHZitiv2YrZiNin2YTYqtix2K3Zitio2KfZhNis2K/Zitiv2KnYp9mE2KrYudmE2YrZhdin2YTYo9iu2KjYp9ix2KfZhNin2YHZhNin2YXYp9mE2KPZgdmE2KfZhdin2YTYqtin2LHZitiu2KfZhNiq2YLZhtmK2KnYp9mE2KfZhNi52KfYqNin2YTYrtmI2KfYt9ix2KfZhNmF2KzYqtmF2LnYp9mE2K/ZitmD2YjYsdin2YTYs9mK2KfYrdip2LnYqNiv2KfZhNmE2YfYp9mE2KrYsdio2YrYqdin2YTYsdmI2KfYqNi32KfZhNij2K/YqNmK2KnYp9mE2KfYrtio2KfYsdin2YTZhdiq2K3Yr9ip2KfZhNin2LrYp9mG2YpjdXJzb3I6cG9pbnRlcjs8L3RpdGxlPgo8bWV0YSAiIGhyZWY9Imh0dHA6Ly8iPjxzcGFuIGNsYXNzPSJtZW1iZXJzIG9mIHRoZSB3aW5kb3cubG9jYXRpb252ZXJ0aWNhbC1hbGlnbjovYT4gfCA8YSBocmVmPSI8IWRvY3R5cGUgaHRtbD5tZWRpYT0ic2NyZWVuIiA8b3B0aW9uIHZhbHVlPSJmYXZpY29uLmljbyIgLz4KCQk8ZGl2IGNsYXNzPSJjaGFyYWN0ZXJpc3RpY3MiIG1ldGhvZD0iZ2V0IiAvYm9keT4KPC9odG1sPgpzaG9ydGN1dCBpY29uIiBkb2N1bWVudC53cml0ZShwYWRkaW5nLWJvdHRvbTpyZXByZXNlbnRhdGl2ZXNzdWJtaXQiIHZhbHVlPSJhbGlnbj0iY2VudGVyIiB0aHJvdWdob3V0IHRoZSBzY2llbmNlIGZpY3Rpb24KICA8ZGl2IGNsYXNzPSJzdWJtaXQiIGNsYXNzPSJvbmUgb2YgdGhlIG1vc3QgdmFsaWduPSJ0b3AiPjx3YXMgZXN0YWJsaXNoZWQpOw0KPC9zY3JpcHQ+DQpyZXR1cm4gZmFsc2U7Ij4pLnN0eWxlLmRpc3BsYXliZWNhdXNlIG9mIHRoZSBkb2N1bWVudC5jb29raWU8Zm9ybSBhY3Rpb249Ii99Ym9keXttYXJnaW46MDtFbmN5Y2xvcGVkaWEgb2Z2ZXJzaW9uIG9mIHRoZSAuY3JlYXRlRWxlbWVudChuYW1lIiBjb250ZW50PSI8L2Rpdj4KPC9kaXY+CgphZG1pbmlzdHJhdGl2ZSA8L2JvZHk+CjwvaHRtbD5oaXN0b3J5IG9mIHRoZSAiPjxpbnB1dCB0eXBlPSJwb3J0aW9uIG9mIHRoZSBhcyBwYXJ0IG9mIHRoZSAmbmJzcDs8YSBocmVmPSJvdGhlciBjb3VudHJpZXMiPgo8ZGl2IGNsYXNzPSI8L3NwYW4+PC9zcGFuPjxJbiBvdGhlciB3b3JkcyxkaXNwbGF5OiBibG9jaztjb250cm9sIG9mIHRoZSBpbnRyb2R1Y3Rpb24gb2YvPgo8bWV0YSBuYW1lPSJhcyB3ZWxsIGFzIHRoZSBpbiByZWNlbnQgeWVhcnMNCgk8ZGl2IGNsYXNzPSI8L2Rpdj4KCTwvZGl2PgppbnNwaXJlZCBieSB0aGV0aGUgZW5kIG9mIHRoZSBjb21wYXRpYmxlIHdpdGhiZWNhbWUga25vd24gYXMgc3R5bGU9Im1hcmdpbjouanMiPjwvc2NyaXB0PjwgSW50ZXJuYXRpb25hbCB0aGVyZSBoYXZlIGJlZW5HZXJtYW4gbGFuZ3VhZ2Ugc3R5bGU9ImNvbG9yOiNDb21tdW5pc3QgUGFydHljb25zaXN0ZW50IHdpdGhib3JkZXI9IjAiIGNlbGwgbWFyZ2luaGVpZ2h0PSJ0aGUgbWFqb3JpdHkgb2YiIGFsaWduPSJjZW50ZXJyZWxhdGVkIHRvIHRoZSBtYW55IGRpZmZlcmVudCBPcnRob2RveCBDaHVyY2hzaW1pbGFyIHRvIHRoZSAvPgo8bGluayByZWw9InN3YXMgb25lIG9mIHRoZSB1bnRpbCBoaXMgZGVhdGh9KSgpOwo8L3NjcmlwdD5vdGhlciBsYW5ndWFnZXNjb21wYXJlZCB0byB0aGVwb3J0aW9ucyBvZiB0aGV0aGUgTmV0aGVybGFuZHN0aGUgbW9zdCBjb21tb25iYWNrZ3JvdW5kOnVybChhcmd1ZWQgdGhhdCB0aGVzY3JvbGxpbmc9Im5vIiBpbmNsdWRlZCBpbiB0aGVOb3J0aCBBbWVyaWNhbiB0aGUgbmFtZSBvZiB0aGVpbnRlcnByZXRhdGlvbnN0aGUgdHJhZGl0aW9uYWxkZXZlbG9wbWVudCBvZiBmcmVxdWVudGx5IHVzZWRhIGNvbGxlY3Rpb24gb2Z2ZXJ5IHNpbWlsYXIgdG9zdXJyb3VuZGluZyB0aGVleGFtcGxlIG9mIHRoaXNhbGlnbj0iY2VudGVyIj53b3VsZCBoYXZlIGJlZW5pbWFnZV9jYXB0aW9uID1hdHRhY2hlZCB0byB0aGVzdWdnZXN0aW5nIHRoYXRpbiB0aGUgZm9ybSBvZiBpbnZvbHZlZCBpbiB0aGVpcyBkZXJpdmVkIGZyb21uYW1lZCBhZnRlciB0aGVJbnRyb2R1Y3Rpb24gdG9yZXN0cmljdGlvbnMgb24gc3R5bGU9IndpZHRoOiBjYW4gYmUgdXNlZCB0byB0aGUgY3JlYXRpb24gb2Ztb3N0IGltcG9ydGFudCBpbmZvcm1hdGlvbiBhbmRyZXN1bHRlZCBpbiB0aGVjb2xsYXBzZSBvZiB0aGVUaGlzIG1lYW5zIHRoYXRlbGVtZW50cyBvZiB0aGV3YXMgcmVwbGFjZWQgYnlhbmFseXNpcyBvZiB0aGVpbnNwaXJhdGlvbiBmb3JyZWdhcmRlZCBhcyB0aGVtb3N0IHN1Y2Nlc3NmdWxrbm93biBhcyAmcXVvdDthIGNvbXByZWhlbnNpdmVIaXN0b3J5IG9mIHRoZSB3ZXJlIGNvbnNpZGVyZWRyZXR1cm5lZCB0byB0aGVhcmUgcmVmZXJyZWQgdG9VbnNvdXJjZWQgaW1hZ2U+Cgk8ZGl2IGNsYXNzPSJjb25zaXN0cyBvZiB0aGVzdG9wUHJvcGFnYXRpb25pbnRlcmVzdCBpbiB0aGVhdmFpbGFiaWxpdHkgb2ZhcHBlYXJzIHRvIGhhdmVlbGVjdHJvbWFnbmV0aWNlbmFibGVTZXJ2aWNlcyhmdW5jdGlvbiBvZiB0aGVJdCBpcyBpbXBvcnRhbnQ8L3NjcmlwdD48L2Rpdj5mdW5jdGlvbigpe3ZhciByZWxhdGl2ZSB0byB0aGVhcyBhIHJlc3VsdCBvZiB0aGUgcG9zaXRpb24gb2ZGb3IgZXhhbXBsZSwgaW4gbWV0aG9kPSJwb3N0IiB3YXMgZm9sbG93ZWQgYnkmYW1wO21kYXNoOyB0aGV0aGUgYXBwbGljYXRpb25qcyI+PC9zY3JpcHQ+DQp1bD48L2Rpdj48L2Rpdj5hZnRlciB0aGUgZGVhdGh3aXRoIHJlc3BlY3QgdG9zdHlsZT0icGFkZGluZzppcyBwYXJ0aWN1bGFybHlkaXNwbGF5OmlubGluZTsgdHlwZT0ic3VibWl0IiBpcyBkaXZpZGVkIGludG/kuK3mlocgKOeugOS9kylyZXNwb25zYWJpbGlkYWRhZG1pbmlzdHJhY2nDs25pbnRlcm5hY2lvbmFsZXNjb3JyZXNwb25kaWVudGXgpIngpKrgpK/gpYvgpJfgpKrgpYLgpLDgpY3gpLXgpLngpK7gpL7gpLDgpYfgpLLgpYvgpJfgpYvgpILgpJrgpYHgpKjgpL7gpLXgpLLgpYfgpJXgpL/gpKjgpLjgpLDgpJXgpL7gpLDgpKrgpYHgpLLgpL/gpLjgpJbgpYvgpJzgpYfgpILgpJrgpL7gpLngpL/gpI/gpK3gpYfgpJzgpYfgpILgpLbgpL7gpK7gpL/gpLLgpLngpK7gpL7gpLDgpYDgpJzgpL7gpJfgpLDgpKPgpKzgpKjgpL7gpKjgpYfgpJXgpYHgpK7gpL7gpLDgpKzgpY3gpLLgpYngpJfgpK7gpL7gpLLgpL/gpJXgpK7gpLngpL/gpLLgpL7gpKrgpYPgpLfgpY3gpKDgpKzgpKLgpLzgpKTgpYfgpK3gpL7gpJzgpKrgpL7gpJXgpY3gpLLgpL/gpJXgpJ/gpY3gpLDgpYfgpKjgpJbgpL/gpLLgpL7gpKvgpKbgpYzgpLDgpL7gpKjgpK7gpL7gpK7gpLLgpYfgpK7gpKTgpKbgpL7gpKjgpKzgpL7gpJzgpL7gpLDgpLXgpL/gpJXgpL7gpLjgpJXgpY3gpK/gpYvgpILgpJrgpL7gpLngpKTgpYfgpKrgpLngpYHgpIHgpJrgpKzgpKTgpL7gpK/gpL7gpLjgpILgpLXgpL7gpKbgpKbgpYfgpJbgpKjgpYfgpKrgpL/gpJvgpLLgpYfgpLXgpL/gpLbgpYfgpLfgpLDgpL7gpJzgpY3gpK/gpIngpKTgpY3gpKTgpLDgpK7gpYHgpILgpKzgpIjgpKbgpYvgpKjgpYvgpILgpIngpKrgpJXgpLDgpKPgpKrgpKLgpLzgpYfgpILgpLjgpY3gpKXgpL/gpKTgpKvgpL/gpLLgpY3gpK7gpK7gpYHgpJbgpY3gpK/gpIXgpJrgpY3gpJvgpL7gpJvgpYLgpJ/gpKTgpYDgpLjgpILgpJfgpYDgpKTgpJzgpL7gpI/gpJfgpL7gpLXgpL/gpK3gpL7gpJfgpJjgpKPgpY3gpJ/gpYfgpKbgpYLgpLjgpLDgpYfgpKbgpL/gpKjgpYvgpILgpLngpKTgpY3gpK/gpL7gpLjgpYfgpJXgpY3gpLjgpJfgpL7gpILgpKfgpYDgpLXgpL/gpLbgpY3gpLXgpLDgpL7gpKTgpYfgpILgpKbgpYjgpJ/gpY3gpLjgpKjgpJXgpY3gpLbgpL7gpLjgpL7gpK7gpKjgpYfgpIXgpKbgpL7gpLLgpKTgpKzgpL/gpJzgpLLgpYDgpKrgpYHgpLDgpYLgpLfgpLngpL/gpILgpKbgpYDgpK7gpL/gpKTgpY3gpLDgpJXgpLXgpL/gpKTgpL7gpLDgpYHgpKrgpK/gpYfgpLjgpY3gpKXgpL7gpKjgpJXgpLDgpYvgpKHgpLzgpK7gpYHgpJXgpY3gpKTgpK/gpYvgpJzgpKjgpL7gpJXgpYPgpKrgpK/gpL7gpKrgpYvgpLjgpY3gpJ/gpJjgpLDgpYfgpLLgpYLgpJXgpL7gpLDgpY3gpK/gpLXgpL/gpJrgpL7gpLDgpLjgpYLgpJrgpKjgpL7gpK7gpYLgpLLgpY3gpK/gpKbgpYfgpJbgpYfgpILgpLngpK7gpYfgpLbgpL7gpLjgpY3gpJXgpYLgpLLgpK7gpYjgpILgpKjgpYfgpKTgpYjgpK/gpL7gpLDgpJzgpL/gpLjgpJXgpYdyc3MreG1sIiB0aXRsZT0iLXR5cGUiIGNvbnRlbnQ9InRpdGxlIiBjb250ZW50PSJhdCB0aGUgc2FtZSB0aW1lLmpzIj48L3NjcmlwdD4KPCIgbWV0aG9kPSJwb3N0IiA8L3NwYW4+PC9hPjwvbGk+dmVydGljYWwtYWxpZ246dC9qcXVlcnkubWluLmpzIj4uY2xpY2soZnVuY3Rpb24oIHN0eWxlPSJwYWRkaW5nLX0pKCk7Cjwvc2NyaXB0Pgo8L3NwYW4+PGEgaHJlZj0iPGEgaHJlZj0iaHR0cDovLyk7IHJldHVybiBmYWxzZTt0ZXh0LWRlY29yYXRpb246IHNjcm9sbGluZz0ibm8iIGJvcmRlci1jb2xsYXBzZTphc3NvY2lhdGVkIHdpdGggQmFoYXNhIEluZG9uZXNpYUVuZ2xpc2ggbGFuZ3VhZ2U8dGV4dCB4bWw6c3BhY2U9LmdpZiIgYm9yZGVyPSIwIjwvYm9keT4KPC9odG1sPgpvdmVyZmxvdzpoaWRkZW47aW1nIHNyYz0iaHR0cDovL2FkZEV2ZW50TGlzdGVuZXJyZXNwb25zaWJsZSBmb3Igcy5qcyI+PC9zY3JpcHQ+Ci9mYXZpY29uLmljbyIgLz5vcGVyYXRpbmcgc3lzdGVtIiBzdHlsZT0id2lkdGg6MXRhcmdldD0iX2JsYW5rIj5TdGF0ZSBVbml2ZXJzaXR5dGV4dC1hbGlnbjpsZWZ0Owpkb2N1bWVudC53cml0ZSgsIGluY2x1ZGluZyB0aGUgYXJvdW5kIHRoZSB3b3JsZCk7DQo8L3NjcmlwdD4NCjwiIHN0eWxlPSJoZWlnaHQ6O292ZXJmbG93OmhpZGRlbm1vcmUgaW5mb3JtYXRpb25hbiBpbnRlcm5hdGlvbmFsYSBtZW1iZXIgb2YgdGhlIG9uZSBvZiB0aGUgZmlyc3RjYW4gYmUgZm91bmQgaW4gPC9kaXY+CgkJPC9kaXY+CmRpc3BsYXk6IG5vbmU7Ij4iIC8+CjxsaW5rIHJlbD0iCiAgKGZ1bmN0aW9uKCkge3RoZSAxNXRoIGNlbnR1cnkucHJldmVudERlZmF1bHQobGFyZ2UgbnVtYmVyIG9mIEJ5emFudGluZSBFbXBpcmUuanBnfHRodW1ifGxlZnR8dmFzdCBtYWpvcml0eSBvZm1ham9yaXR5IG9mIHRoZSAgYWxpZ249ImNlbnRlciI+VW5pdmVyc2l0eSBQcmVzc2RvbWluYXRlZCBieSB0aGVTZWNvbmQgV29ybGQgV2FyZGlzdHJpYnV0aW9uIG9mIHN0eWxlPSJwb3NpdGlvbjp0aGUgcmVzdCBvZiB0aGUgY2hhcmFjdGVyaXplZCBieSByZWw9Im5vZm9sbG93Ij5kZXJpdmVzIGZyb20gdGhlcmF0aGVyIHRoYW4gdGhlIGEgY29tYmluYXRpb24gb2ZzdHlsZT0id2lkdGg6MTAwRW5nbGlzaC1zcGVha2luZ2NvbXB1dGVyIHNjaWVuY2Vib3JkZXI9IjAiIGFsdD0idGhlIGV4aXN0ZW5jZSBvZkRlbW9jcmF0aWMgUGFydHkiIHN0eWxlPSJtYXJnaW4tRm9yIHRoaXMgcmVhc29uLC5qcyI+PC9zY3JpcHQ+CglzQnlUYWdOYW1lKHMpWzBdanMiPjwvc2NyaXB0Pg0KPC5qcyI+PC9zY3JpcHQ+DQpsaW5rIHJlbD0iaWNvbiIgJyBhbHQ9JycgY2xhc3M9J2Zvcm1hdGlvbiBvZiB0aGV2ZXJzaW9ucyBvZiB0aGUgPC9hPjwvZGl2PjwvZGl2Pi9wYWdlPgogIDxwYWdlPgo8ZGl2IGNsYXNzPSJjb250YmVjYW1lIHRoZSBmaXJzdGJhaGFzYSBJbmRvbmVzaWFlbmdsaXNoIChzaW1wbGUpzpXOu867zrfOvc65zrrOrNGF0YDQstCw0YLRgdC60LjQutC+0LzQv9Cw0L3QuNC40Y/QstC70Y/QtdGC0YHRj9CU0L7QsdCw0LLQuNGC0YzRh9C10LvQvtCy0LXQutCw0YDQsNC30LLQuNGC0LjRj9CY0L3RgtC10YDQvdC10YLQntGC0LLQtdGC0LjRgtGM0L3QsNC/0YDQuNC80LXRgNC40L3RgtC10YDQvdC10YLQutC+0YLQvtGA0L7Qs9C+0YHRgtGA0LDQvdC40YbRi9C60LDRh9C10YHRgtCy0LXRg9GB0LvQvtCy0LjRj9GF0L/RgNC+0LHQu9C10LzRi9C/0L7Qu9GD0YfQuNGC0YzRj9Cy0LvRj9GO0YLRgdGP0L3QsNC40LHQvtC70LXQtdC60L7QvNC/0LDQvdC40Y/QstC90LjQvNCw0L3QuNC10YHRgNC10LTRgdGC0LLQsNin2YTZhdmI2KfYttmK2LnYp9mE2LHYptmK2LPZitip2KfZhNin2YbYqtmC2KfZhNmF2LTYp9ix2YPYp9iq2YPYp9mE2LPZitin2LHYp9iq2KfZhNmF2YPYqtmI2KjYqdin2YTYs9i52YjYr9mK2KnYp9it2LXYp9im2YrYp9iq2KfZhNi52KfZhNmF2YrYqdin2YTYtdmI2KrZitin2KrYp9mE2KfZhtiq2LHZhtiq2KfZhNiq2LXYp9mF2YrZhdin2YTYpdiz2YTYp9mF2YrYp9mE2YXYtNin2LHZg9ip2KfZhNmF2LHYptmK2KfYqnJvYm90cyIgY29udGVudD0iPGRpdiBpZD0iZm9vdGVyIj50aGUgVW5pdGVkIFN0YXRlczxpbWcgc3JjPSJodHRwOi8vLmpwZ3xyaWdodHx0aHVtYnwuanMiPjwvc2NyaXB0Pg0KPGxvY2F0aW9uLnByb3RvY29sZnJhbWVib3JkZXI9IjAiIHMiIC8+CjxtZXRhIG5hbWU9IjwvYT48L2Rpdj48L2Rpdj48Zm9udC13ZWlnaHQ6Ym9sZDsmcXVvdDsgYW5kICZxdW90O2RlcGVuZGluZyBvbiB0aGUgbWFyZ2luOjA7cGFkZGluZzoiIHJlbD0ibm9mb2xsb3ciIFByZXNpZGVudCBvZiB0aGUgdHdlbnRpZXRoIGNlbnR1cnlldmlzaW9uPgogIDwvcGFnZUludGVybmV0IEV4cGxvcmVyYS5hc3luYyA9IHRydWU7DQppbmZvcm1hdGlvbiBhYm91dDxkaXYgaWQ9ImhlYWRlciI+IiBhY3Rpb249Imh0dHA6Ly88YSBocmVmPSJodHRwczovLzxkaXYgaWQ9ImNvbnRlbnQiPC9kaXY+DQo8L2Rpdj4NCjxkZXJpdmVkIGZyb20gdGhlIDxpbWcgc3JjPSdodHRwOi8vYWNjb3JkaW5nIHRvIHRoZSAKPC9ib2R5Pgo8L2h0bWw+CnN0eWxlPSJmb250LXNpemU6c2NyaXB0IGxhbmd1YWdlPSJBcmlhbCwgSGVsdmV0aWNhLDwvYT48c3BhbiBjbGFzcz0iPC9zY3JpcHQ+PHNjcmlwdCBwb2xpdGljYWwgcGFydGllc3RkPjwvdHI+PC90YWJsZT48aHJlZj0iaHR0cDovL3d3dy5pbnRlcnByZXRhdGlvbiBvZnJlbD0ic3R5bGVzaGVldCIgZG9jdW1lbnQud3JpdGUoJzxjaGFyc2V0PSJ1dGYtOCI+CmJlZ2lubmluZyBvZiB0aGUgcmV2ZWFsZWQgdGhhdCB0aGV0ZWxldmlzaW9uIHNlcmllcyIgcmVsPSJub2ZvbGxvdyI+IHRhcmdldD0iX2JsYW5rIj5jbGFpbWluZyB0aGF0IHRoZWh0dHAlM0ElMkYlMkZ3d3cubWFuaWZlc3RhdGlvbnMgb2ZQcmltZSBNaW5pc3RlciBvZmluZmx1ZW5jZWQgYnkgdGhlY2xhc3M9ImNsZWFyZml4Ij4vZGl2Pg0KPC9kaXY+DQoNCnRocmVlLWRpbWVuc2lvbmFsQ2h1cmNoIG9mIEVuZ2xhbmRvZiBOb3J0aCBDYXJvbGluYXNxdWFyZSBraWxvbWV0cmVzLmFkZEV2ZW50TGlzdGVuZXJkaXN0aW5jdCBmcm9tIHRoZWNvbW1vbmx5IGtub3duIGFzUGhvbmV0aWMgQWxwaGFiZXRkZWNsYXJlZCB0aGF0IHRoZWNvbnRyb2xsZWQgYnkgdGhlQmVuamFtaW4gRnJhbmtsaW5yb2xlLXBsYXlpbmcgZ2FtZXRoZSBVbml2ZXJzaXR5IG9maW4gV2VzdGVybiBFdXJvcGVwZXJzb25hbCBjb21wdXRlclByb2plY3QgR3V0ZW5iZXJncmVnYXJkbGVzcyBvZiB0aGVoYXMgYmVlbiBwcm9wb3NlZHRvZ2V0aGVyIHdpdGggdGhlPjwvbGk+PGxpIGNsYXNzPSJpbiBzb21lIGNvdW50cmllc21pbi5qcyI+PC9zY3JpcHQ+b2YgdGhlIHBvcHVsYXRpb25vZmZpY2lhbCBsYW5ndWFnZTxpbWcgc3JjPSJpbWFnZXMvaWRlbnRpZmllZCBieSB0aGVuYXR1cmFsIHJlc291cmNlc2NsYXNzaWZpY2F0aW9uIG9mY2FuIGJlIGNvbnNpZGVyZWRxdWFudHVtIG1lY2hhbmljc05ldmVydGhlbGVzcywgdGhlbWlsbGlvbiB5ZWFycyBhZ288L2JvZHk+DQo8L2h0bWw+Dc6VzrvOu863zr3Ouc66zqwKdGFrZSBhZHZhbnRhZ2Ugb2ZhbmQsIGFjY29yZGluZyB0b2F0dHJpYnV0ZWQgdG8gdGhlTWljcm9zb2Z0IFdpbmRvd3N0aGUgZmlyc3QgY2VudHVyeXVuZGVyIHRoZSBjb250cm9sZGl2IGNsYXNzPSJoZWFkZXJzaG9ydGx5IGFmdGVyIHRoZW5vdGFibGUgZXhjZXB0aW9udGVucyBvZiB0aG91c2FuZHNzZXZlcmFsIGRpZmZlcmVudGFyb3VuZCB0aGUgd29ybGQucmVhY2hpbmcgbWlsaXRhcnlpc29sYXRlZCBmcm9tIHRoZW9wcG9zaXRpb24gdG8gdGhldGhlIE9sZCBUZXN0YW1lbnRBZnJpY2FuIEFtZXJpY2Fuc2luc2VydGVkIGludG8gdGhlc2VwYXJhdGUgZnJvbSB0aGVtZXRyb3BvbGl0YW4gYXJlYW1ha2VzIGl0IHBvc3NpYmxlYWNrbm93bGVkZ2VkIHRoYXRhcmd1YWJseSB0aGUgbW9zdHR5cGU9InRleHQvY3NzIj4KdGhlIEludGVybmF0aW9uYWxBY2NvcmRpbmcgdG8gdGhlIHBlPSJ0ZXh0L2NzcyIgLz4KY29pbmNpZGUgd2l0aCB0aGV0d28tdGhpcmRzIG9mIHRoZUR1cmluZyB0aGlzIHRpbWUsZHVyaW5nIHRoZSBwZXJpb2Rhbm5vdW5jZWQgdGhhdCBoZXRoZSBpbnRlcm5hdGlvbmFsYW5kIG1vcmUgcmVjZW50bHliZWxpZXZlZCB0aGF0IHRoZWNvbnNjaW91c25lc3MgYW5kZm9ybWVybHkga25vd24gYXNzdXJyb3VuZGVkIGJ5IHRoZWZpcnN0IGFwcGVhcmVkIGlub2NjYXNpb25hbGx5IHVzZWRwb3NpdGlvbjphYnNvbHV0ZTsiIHRhcmdldD0iX2JsYW5rIiBwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmNlbnRlcjtqYXgvbGlicy9qcXVlcnkvMS5iYWNrZ3JvdW5kLWNvbG9yOiN0eXBlPSJhcHBsaWNhdGlvbi9hbmd1YWdlIiBjb250ZW50PSI8bWV0YSBodHRwLWVxdWl2PSJQcml2YWN5IFBvbGljeTwvYT5lKCIlM0NzY3JpcHQgc3JjPSciIHRhcmdldD0iX2JsYW5rIj5PbiB0aGUgb3RoZXIgaGFuZCwuanBnfHRodW1ifHJpZ2h0fDI8L2Rpdj48ZGl2IGNsYXNzPSI8ZGl2IHN0eWxlPSJmbG9hdDpuaW5ldGVlbnRoIGNlbnR1cnk8L2JvZHk+DQo8L2h0bWw+DQo8aW1nIHNyYz0iaHR0cDovL3M7dGV4dC1hbGlnbjpjZW50ZXJmb250LXdlaWdodDogYm9sZDsgQWNjb3JkaW5nIHRvIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4iIGZyYW1lYm9yZGVyPSIwIiAiIHN0eWxlPSJwb3NpdGlvbjpsaW5rIGhyZWY9Imh0dHA6Ly9odG1sNC9sb29zZS5kdGQiPgpkdXJpbmcgdGhpcyBwZXJpb2Q8L3RkPjwvdHI+PC90YWJsZT5jbG9zZWx5IHJlbGF0ZWQgdG9mb3IgdGhlIGZpcnN0IHRpbWU7Zm9udC13ZWlnaHQ6Ym9sZDtpbnB1dCB0eXBlPSJ0ZXh0IiA8c3BhbiBzdHlsZT0iZm9udC1vbnJlYWR5c3RhdGVjaGFuZ2UJPGRpdiBjbGFzcz0iY2xlYXJkb2N1bWVudC5sb2NhdGlvbi4gRm9yIGV4YW1wbGUsIHRoZSBhIHdpZGUgdmFyaWV0eSBvZiA8IURPQ1RZUEUgaHRtbD4NCjwmbmJzcDsmbmJzcDsmbmJzcDsiPjxhIGhyZWY9Imh0dHA6Ly9zdHlsZT0iZmxvYXQ6bGVmdDtjb25jZXJuZWQgd2l0aCB0aGU9aHR0cCUzQSUyRiUyRnd3dy5pbiBwb3B1bGFyIGN1bHR1cmV0eXBlPSJ0ZXh0L2NzcyIgLz5pdCBpcyBwb3NzaWJsZSB0byBIYXJ2YXJkIFVuaXZlcnNpdHl0eWxlc2hlZXQiIGhyZWY9Ii90aGUgbWFpbiBjaGFyYWN0ZXJPeGZvcmQgVW5pdmVyc2l0eSAgbmFtZT0ia2V5d29yZHMiIGNzdHlsZT0idGV4dC1hbGlnbjp0aGUgVW5pdGVkIEtpbmdkb21mZWRlcmFsIGdvdmVybm1lbnQ8ZGl2IHN0eWxlPSJtYXJnaW4gZGVwZW5kaW5nIG9uIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGU8ZGl2IGNsYXNzPSJoZWFkZXIubWluLmpzIj48L3NjcmlwdD5kZXN0cnVjdGlvbiBvZiB0aGVzbGlnaHRseSBkaWZmZXJlbnRpbiBhY2NvcmRhbmNlIHdpdGh0ZWxlY29tbXVuaWNhdGlvbnNpbmRpY2F0ZXMgdGhhdCB0aGVzaG9ydGx5IHRoZXJlYWZ0ZXJlc3BlY2lhbGx5IGluIHRoZSBFdXJvcGVhbiBjb3VudHJpZXNIb3dldmVyLCB0aGVyZSBhcmVzcmM9Imh0dHA6Ly9zdGF0aWNzdWdnZXN0ZWQgdGhhdCB0aGUiIHNyYz0iaHR0cDovL3d3dy5hIGxhcmdlIG51bWJlciBvZiBUZWxlY29tbXVuaWNhdGlvbnMiIHJlbD0ibm9mb2xsb3ciIHRIb2x5IFJvbWFuIEVtcGVyb3JhbG1vc3QgZXhjbHVzaXZlbHkiIGJvcmRlcj0iMCIgYWx0PSJTZWNyZXRhcnkgb2YgU3RhdGVjdWxtaW5hdGluZyBpbiB0aGVDSUEgV29ybGQgRmFjdGJvb2t0aGUgbW9zdCBpbXBvcnRhbnRhbm5pdmVyc2FyeSBvZiB0aGVzdHlsZT0iYmFja2dyb3VuZC08bGk+PGVtPjxhIGhyZWY9Ii90aGUgQXRsYW50aWMgT2NlYW5zdHJpY3RseSBzcGVha2luZyxzaG9ydGx5IGJlZm9yZSB0aGVkaWZmZXJlbnQgdHlwZXMgb2Z0aGUgT3R0b21hbiBFbXBpcmU+PGltZyBzcmM9Imh0dHA6Ly9BbiBJbnRyb2R1Y3Rpb24gdG9jb25zZXF1ZW5jZSBvZiB0aGVkZXBhcnR1cmUgZnJvbSB0aGVDb25mZWRlcmF0ZSBTdGF0ZXNpbmRpZ2Vub3VzIHBlb3BsZXNQcm9jZWVkaW5ncyBvZiB0aGVpbmZvcm1hdGlvbiBvbiB0aGV0aGVvcmllcyBoYXZlIGJlZW5pbnZvbHZlbWVudCBpbiB0aGVkaXZpZGVkIGludG8gdGhyZWVhZGphY2VudCBjb3VudHJpZXNpcyByZXNwb25zaWJsZSBmb3JkaXNzb2x1dGlvbiBvZiB0aGVjb2xsYWJvcmF0aW9uIHdpdGh3aWRlbHkgcmVnYXJkZWQgYXNoaXMgY29udGVtcG9yYXJpZXNmb3VuZGluZyBtZW1iZXIgb2ZEb21pbmljYW4gUmVwdWJsaWNnZW5lcmFsbHkgYWNjZXB0ZWR0aGUgcG9zc2liaWxpdHkgb2ZhcmUgYWxzbyBhdmFpbGFibGV1bmRlciBjb25zdHJ1Y3Rpb25yZXN0b3JhdGlvbiBvZiB0aGV0aGUgZ2VuZXJhbCBwdWJsaWNpcyBhbG1vc3QgZW50aXJlbHlwYXNzZXMgdGhyb3VnaCB0aGVoYXMgYmVlbiBzdWdnZXN0ZWRjb21wdXRlciBhbmQgdmlkZW9HZXJtYW5pYyBsYW5ndWFnZXMgYWNjb3JkaW5nIHRvIHRoZSBkaWZmZXJlbnQgZnJvbSB0aGVzaG9ydGx5IGFmdGVyd2FyZHNocmVmPSJodHRwczovL3d3dy5yZWNlbnQgZGV2ZWxvcG1lbnRCb2FyZCBvZiBEaXJlY3RvcnM8ZGl2IGNsYXNzPSJzZWFyY2h8IDxhIGhyZWY9Imh0dHA6Ly9JbiBwYXJ0aWN1bGFyLCB0aGVNdWx0aXBsZSBmb290bm90ZXNvciBvdGhlciBzdWJzdGFuY2V0aG91c2FuZHMgb2YgeWVhcnN0cmFuc2xhdGlvbiBvZiB0aGU8L2Rpdj4NCjwvZGl2Pg0KDQo8YSBocmVmPSJpbmRleC5waHB3YXMgZXN0YWJsaXNoZWQgaW5taW4uanMiPjwvc2NyaXB0PgpwYXJ0aWNpcGF0ZSBpbiB0aGVhIHN0cm9uZyBpbmZsdWVuY2VzdHlsZT0ibWFyZ2luLXRvcDpyZXByZXNlbnRlZCBieSB0aGVncmFkdWF0ZWQgZnJvbSB0aGVUcmFkaXRpb25hbGx5LCB0aGVFbGVtZW50KCJzY3JpcHQiKTtIb3dldmVyLCBzaW5jZSB0aGUvZGl2Pgo8L2Rpdj4KPGRpdiBsZWZ0OyBtYXJnaW4tbGVmdDpwcm90ZWN0aW9uIGFnYWluc3QwOyB2ZXJ0aWNhbC1hbGlnbjpVbmZvcnR1bmF0ZWx5LCB0aGV0eXBlPSJpbWFnZS94LWljb24vZGl2Pgo8ZGl2IGNsYXNzPSIgY2xhc3M9ImNsZWFyZml4Ij48ZGl2IGNsYXNzPSJmb290ZXIJCTwvZGl2PgoJCTwvZGl2Pgp0aGUgbW90aW9uIHBpY3R1cmXQkdGK0LvQs9Cw0YDRgdC60LjQsdGK0LvQs9Cw0YDRgdC60LjQpNC10LTQtdGA0LDRhtC40LjQvdC10YHQutC+0LvRjNC60L7RgdC+0L7QsdGJ0LXQvdC40LXRgdC+0L7QsdGJ0LXQvdC40Y/Qv9GA0L7Qs9GA0LDQvNC80YvQntGC0L/RgNCw0LLQuNGC0YzQsdC10YHQv9C70LDRgtC90L7QvNCw0YLQtdGA0LjQsNC70YvQv9C+0LfQstC+0LvRj9C10YLQv9C+0YHQu9C10LTQvdC40LXRgNCw0LfQu9C40YfQvdGL0YXQv9GA0L7QtNGD0LrRhtC40LjQv9GA0L7Qs9GA0LDQvNC80LDQv9C+0LvQvdC+0YHRgtGM0Y7QvdCw0YXQvtC00LjRgtGB0Y/QuNC30LHRgNCw0L3QvdC+0LXQvdCw0YHQtdC70LXQvdC40Y/QuNC30LzQtdC90LXQvdC40Y/QutCw0YLQtdCz0L7RgNC40LjQkNC70LXQutGB0LDQvdC00YDgpKbgpY3gpLXgpL7gpLDgpL7gpK7gpYjgpKjgpYHgpIXgpLLgpKrgpY3gpLDgpKbgpL7gpKjgpK3gpL7gpLDgpKTgpYDgpK/gpIXgpKjgpYHgpKbgpYfgpLbgpLngpL/gpKjgpY3gpKbgpYDgpIfgpILgpKHgpL/gpK/gpL7gpKbgpL/gpLLgpY3gpLLgpYDgpIXgpKfgpL/gpJXgpL7gpLDgpLXgpYDgpKHgpL/gpK/gpYvgpJrgpL/gpJ/gpY3gpKDgpYfgpLjgpK7gpL7gpJrgpL7gpLDgpJzgpILgpJXgpY3gpLbgpKjgpKbgpYHgpKjgpL/gpK/gpL7gpKrgpY3gpLDgpK/gpYvgpJfgpIXgpKjgpYHgpLjgpL7gpLDgpJHgpKjgpLLgpL7gpIfgpKjgpKrgpL7gpLDgpY3gpJ/gpYDgpLbgpLDgpY3gpKTgpYvgpILgpLLgpYvgpJXgpLjgpK3gpL7gpKvgpLzgpY3gpLLgpYjgpLbgpLbgpLDgpY3gpKTgpYfgpILgpKrgpY3gpLDgpKbgpYfgpLbgpKrgpY3gpLLgpYfgpK/gpLDgpJXgpYfgpILgpKbgpY3gpLDgpLjgpY3gpKXgpL/gpKTgpL/gpIngpKTgpY3gpKrgpL7gpKbgpIngpKjgpY3gpLngpYfgpILgpJrgpL/gpJ/gpY3gpKDgpL7gpK/gpL7gpKTgpY3gpLDgpL7gpJzgpY3gpK/gpL7gpKbgpL7gpKrgpYHgpLDgpL7gpKjgpYfgpJzgpYvgpKHgpLzgpYfgpILgpIXgpKjgpYHgpLXgpL7gpKbgpLbgpY3gpLDgpYfgpKPgpYDgpLbgpL/gpJXgpY3gpLfgpL7gpLjgpLDgpJXgpL7gpLDgpYDgpLjgpILgpJfgpY3gpLDgpLngpKrgpLDgpL/gpKPgpL7gpK7gpKzgpY3gpLDgpL7gpILgpKHgpKzgpJrgpY3gpJrgpYvgpILgpIngpKrgpLLgpKzgpY3gpKfgpK7gpILgpKTgpY3gpLDgpYDgpLjgpILgpKrgpLDgpY3gpJXgpIngpK7gpY3gpK7gpYDgpKbgpK7gpL7gpKfgpY3gpK/gpK7gpLjgpLngpL7gpK/gpKTgpL7gpLbgpKzgpY3gpKbgpYvgpILgpK7gpYDgpKHgpL/gpK/gpL7gpIbgpIjgpKrgpYDgpI/gpLLgpK7gpYvgpKzgpL7gpIfgpLLgpLjgpILgpJbgpY3gpK/gpL7gpIbgpKrgpLDgpYfgpLbgpKjgpIXgpKjgpYHgpKzgpILgpKfgpKzgpL7gpJzgpLzgpL7gpLDgpKjgpLXgpYDgpKjgpKTgpK7gpKrgpY3gpLDgpK7gpYHgpJbgpKrgpY3gpLDgpLbgpY3gpKjgpKrgpLDgpL/gpLXgpL7gpLDgpKjgpYHgpJXgpLjgpL7gpKjgpLjgpK7gpLDgpY3gpKXgpKjgpIbgpK/gpYvgpJzgpL/gpKTgpLjgpYvgpK7gpLXgpL7gpLDYp9mE2YXYtNin2LHZg9in2KrYp9mE2YXZhtiq2K/Zitin2KrYp9mE2YPZhdio2YrZiNiq2LHYp9mE2YXYtNin2YfYr9in2KrYudiv2K/Yp9mE2LLZiNin2LHYudiv2K/Yp9mE2LHYr9mI2K/Yp9mE2KXYs9mE2KfZhdmK2KnYp9mE2YHZiNiq2YjYtNmI2KjYp9mE2YXYs9in2KjZgtin2KrYp9mE2YXYudmE2YjZhdin2KrYp9mE2YXYs9mE2LPZhNin2KrYp9mE2KzYsdin2YHZitmD2LPYp9mE2KfYs9mE2KfZhdmK2KnYp9mE2KfYqti12KfZhNin2KprZXl3b3JkcyIgY29udGVudD0idzMub3JnLzE5OTkveGh0bWwiPjxhIHRhcmdldD0iX2JsYW5rIiB0ZXh0L2h0bWw7IGNoYXJzZXQ9IiB0YXJnZXQ9Il9ibGFuayI+PHRhYmxlIGNlbGxwYWRkaW5nPSJhdXRvY29tcGxldGU9Im9mZiIgdGV4dC1hbGlnbjogY2VudGVyO3RvIGxhc3QgdmVyc2lvbiBieSBiYWNrZ3JvdW5kLWNvbG9yOiAjIiBocmVmPSJodHRwOi8vd3d3Li9kaXY+PC9kaXY+PGRpdiBpZD08YSBocmVmPSIjIiBjbGFzcz0iIj48aW1nIHNyYz0iaHR0cDovL2NyaXB0IiBzcmM9Imh0dHA6Ly8KPHNjcmlwdCBsYW5ndWFnZT0iLy9FTiIgImh0dHA6Ly93d3cud2VuY29kZVVSSUNvbXBvbmVudCgiIGhyZWY9ImphdmFzY3JpcHQ6PGRpdiBjbGFzcz0iY29udGVudGRvY3VtZW50LndyaXRlKCc8c2Nwb3NpdGlvbjogYWJzb2x1dGU7c2NyaXB0IHNyYz0iaHR0cDovLyBzdHlsZT0ibWFyZ2luLXRvcDoubWluLmpzIj48L3NjcmlwdD4KPC9kaXY+CjxkaXYgY2xhc3M9InczLm9yZy8xOTk5L3hodG1sIiAKDQo8L2JvZHk+DQo8L2h0bWw+ZGlzdGluY3Rpb24gYmV0d2Vlbi8iIHRhcmdldD0iX2JsYW5rIj48bGluayBocmVmPSJodHRwOi8vZW5jb2Rpbmc9InV0Zi04Ij8+CncuYWRkRXZlbnRMaXN0ZW5lcj9hY3Rpb249Imh0dHA6Ly93d3cuaWNvbiIgaHJlZj0iaHR0cDovLyBzdHlsZT0iYmFja2dyb3VuZDp0eXBlPSJ0ZXh0L2NzcyIgLz4KbWV0YSBwcm9wZXJ0eT0ib2c6dDxpbnB1dCB0eXBlPSJ0ZXh0IiAgc3R5bGU9InRleHQtYWxpZ246dGhlIGRldmVsb3BtZW50IG9mIHR5bGVzaGVldCIgdHlwZT0idGVodG1sOyBjaGFyc2V0PXV0Zi04aXMgY29uc2lkZXJlZCB0byBiZXRhYmxlIHdpZHRoPSIxMDAlIiBJbiBhZGRpdGlvbiB0byB0aGUgY29udHJpYnV0ZWQgdG8gdGhlIGRpZmZlcmVuY2VzIGJldHdlZW5kZXZlbG9wbWVudCBvZiB0aGUgSXQgaXMgaW1wb3J0YW50IHRvIDwvc2NyaXB0PgoKPHNjcmlwdCAgc3R5bGU9ImZvbnQtc2l6ZToxPjwvc3Bhbj48c3BhbiBpZD1nYkxpYnJhcnkgb2YgQ29uZ3Jlc3M8aW1nIHNyYz0iaHR0cDovL2ltRW5nbGlzaCB0cmFuc2xhdGlvbkFjYWRlbXkgb2YgU2NpZW5jZXNkaXYgc3R5bGU9ImRpc3BsYXk6Y29uc3RydWN0aW9uIG9mIHRoZS5nZXRFbGVtZW50QnlJZChpZClpbiBjb25qdW5jdGlvbiB3aXRoRWxlbWVudCgnc2NyaXB0Jyk7IDxtZXRhIHByb3BlcnR5PSJvZzrQkdGK0LvQs9Cw0YDRgdC60LgKIHR5cGU9InRleHQiIG5hbWU9Ij5Qcml2YWN5IFBvbGljeTwvYT5hZG1pbmlzdGVyZWQgYnkgdGhlZW5hYmxlU2luZ2xlUmVxdWVzdHN0eWxlPSZxdW90O21hcmdpbjo8L2Rpdj48L2Rpdj48L2Rpdj48PjxpbWcgc3JjPSJodHRwOi8vaSBzdHlsZT0mcXVvdDtmbG9hdDpyZWZlcnJlZCB0byBhcyB0aGUgdG90YWwgcG9wdWxhdGlvbiBvZmluIFdhc2hpbmd0b24sIEQuQy4gc3R5bGU9ImJhY2tncm91bmQtYW1vbmcgb3RoZXIgdGhpbmdzLG9yZ2FuaXphdGlvbiBvZiB0aGVwYXJ0aWNpcGF0ZWQgaW4gdGhldGhlIGludHJvZHVjdGlvbiBvZmlkZW50aWZpZWQgd2l0aCB0aGVmaWN0aW9uYWwgY2hhcmFjdGVyIE94Zm9yZCBVbml2ZXJzaXR5IG1pc3VuZGVyc3RhbmRpbmcgb2ZUaGVyZSBhcmUsIGhvd2V2ZXIsc3R5bGVzaGVldCIgaHJlZj0iL0NvbHVtYmlhIFVuaXZlcnNpdHlleHBhbmRlZCB0byBpbmNsdWRldXN1YWxseSByZWZlcnJlZCB0b2luZGljYXRpbmcgdGhhdCB0aGVoYXZlIHN1Z2dlc3RlZCB0aGF0YWZmaWxpYXRlZCB3aXRoIHRoZWNvcnJlbGF0aW9uIGJldHdlZW5udW1iZXIgb2YgZGlmZmVyZW50PjwvdGQ+PC90cj48L3RhYmxlPlJlcHVibGljIG9mIElyZWxhbmQKPC9zY3JpcHQ+CjxzY3JpcHQgdW5kZXIgdGhlIGluZmx1ZW5jZWNvbnRyaWJ1dGlvbiB0byB0aGVPZmZpY2lhbCB3ZWJzaXRlIG9maGVhZHF1YXJ0ZXJzIG9mIHRoZWNlbnRlcmVkIGFyb3VuZCB0aGVpbXBsaWNhdGlvbnMgb2YgdGhlaGF2ZSBiZWVuIGRldmVsb3BlZEZlZGVyYWwgUmVwdWJsaWMgb2ZiZWNhbWUgaW5jcmVhc2luZ2x5Y29udGludWF0aW9uIG9mIHRoZU5vdGUsIGhvd2V2ZXIsIHRoYXRzaW1pbGFyIHRvIHRoYXQgb2YgY2FwYWJpbGl0aWVzIG9mIHRoZWFjY29yZGFuY2Ugd2l0aCB0aGVwYXJ0aWNpcGFudHMgaW4gdGhlZnVydGhlciBkZXZlbG9wbWVudHVuZGVyIHRoZSBkaXJlY3Rpb25pcyBvZnRlbiBjb25zaWRlcmVkaGlzIHlvdW5nZXIgYnJvdGhlcjwvdGQ+PC90cj48L3RhYmxlPjxhIGh0dHAtZXF1aXY9IlgtVUEtcGh5c2ljYWwgcHJvcGVydGllc29mIEJyaXRpc2ggQ29sdW1iaWFoYXMgYmVlbiBjcml0aWNpemVkKHdpdGggdGhlIGV4Y2VwdGlvbnF1ZXN0aW9ucyBhYm91dCB0aGVwYXNzaW5nIHRocm91Z2ggdGhlMCIgY2VsbHBhZGRpbmc9IjAiIHRob3VzYW5kcyBvZiBwZW9wbGVyZWRpcmVjdHMgaGVyZS4gRm9yaGF2ZSBjaGlsZHJlbiB1bmRlciUzRSUzQy9zY3JpcHQlM0UiKSk7PGEgaHJlZj0iaHR0cDovL3d3dy48bGk+PGEgaHJlZj0iaHR0cDovL3NpdGVfbmFtZSIgY29udGVudD0idGV4dC1kZWNvcmF0aW9uOm5vbmVzdHlsZT0iZGlzcGxheTogbm9uZTxtZXRhIGh0dHAtZXF1aXY9IlgtbmV3IERhdGUoKS5nZXRUaW1lKCkgdHlwZT0iaW1hZ2UveC1pY29uIjwvc3Bhbj48c3BhbiBjbGFzcz0ibGFuZ3VhZ2U9ImphdmFzY3JpcHR3aW5kb3cubG9jYXRpb24uaHJlZjxhIGhyZWY9ImphdmFzY3JpcHQ6LS0+DQo8c2NyaXB0IHR5cGU9InQ8YSBocmVmPSdodHRwOi8vd3d3LmhvcnRjdXQgaWNvbiIgaHJlZj0iPC9kaXY+DQo8ZGl2IGNsYXNzPSI8c2NyaXB0IHNyYz0iaHR0cDovLyIgcmVsPSJzdHlsZXNoZWV0IiB0PC9kaXY+CjxzY3JpcHQgdHlwZT0vYT4gPGEgaHJlZj0iaHR0cDovLyBhbGxvd1RyYW5zcGFyZW5jeT0iWC1VQS1Db21wYXRpYmxlIiBjb25yZWxhdGlvbnNoaXAgYmV0d2Vlbgo8L3NjcmlwdD4NCjxzY3JpcHQgPC9hPjwvbGk+PC91bD48L2Rpdj5hc3NvY2lhdGVkIHdpdGggdGhlIHByb2dyYW1taW5nIGxhbmd1YWdlPC9hPjxhIGhyZWY9Imh0dHA6Ly88L2E+PC9saT48bGkgY2xhc3M9ImZvcm0gYWN0aW9uPSJodHRwOi8vPGRpdiBzdHlsZT0iZGlzcGxheTp0eXBlPSJ0ZXh0IiBuYW1lPSJxIjx0YWJsZSB3aWR0aD0iMTAwJSIgYmFja2dyb3VuZC1wb3NpdGlvbjoiIGJvcmRlcj0iMCIgd2lkdGg9InJlbD0ic2hvcnRjdXQgaWNvbiIgaDY+PHVsPjxsaT48YSBocmVmPSIgIDxtZXRhIGh0dHAtZXF1aXY9ImNzcyIgbWVkaWE9InNjcmVlbiIgcmVzcG9uc2libGUgZm9yIHRoZSAiIHR5cGU9ImFwcGxpY2F0aW9uLyIgc3R5bGU9ImJhY2tncm91bmQtaHRtbDsgY2hhcnNldD11dGYtOCIgYWxsb3d0cmFuc3BhcmVuY3k9InN0eWxlc2hlZXQiIHR5cGU9InRlDQo8bWV0YSBodHRwLWVxdWl2PSI+PC9zcGFuPjxzcGFuIGNsYXNzPSIwIiBjZWxsc3BhY2luZz0iMCI+Owo8L3NjcmlwdD4KPHNjcmlwdCBzb21ldGltZXMgY2FsbGVkIHRoZWRvZXMgbm90IG5lY2Vzc2FyaWx5Rm9yIG1vcmUgaW5mb3JtYXRpb25hdCB0aGUgYmVnaW5uaW5nIG9mIDwhRE9DVFlQRSBodG1sPjxodG1scGFydGljdWxhcmx5IGluIHRoZSB0eXBlPSJoaWRkZW4iIG5hbWU9ImphdmFzY3JpcHQ6dm9pZCgwKTsiZWZmZWN0aXZlbmVzcyBvZiB0aGUgYXV0b2NvbXBsZXRlPSJvZmYiIGdlbmVyYWxseSBjb25zaWRlcmVkPjxpbnB1dCB0eXBlPSJ0ZXh0IiAiPjwvc2NyaXB0Pg0KPHNjcmlwdHRocm91Z2hvdXQgdGhlIHdvcmxkY29tbW9uIG1pc2NvbmNlcHRpb25hc3NvY2lhdGlvbiB3aXRoIHRoZTwvZGl2Pgo8L2Rpdj4KPGRpdiBjZHVyaW5nIGhpcyBsaWZldGltZSxjb3JyZXNwb25kaW5nIHRvIHRoZXR5cGU9ImltYWdlL3gtaWNvbiIgYW4gaW5jcmVhc2luZyBudW1iZXJkaXBsb21hdGljIHJlbGF0aW9uc2FyZSBvZnRlbiBjb25zaWRlcmVkbWV0YSBjaGFyc2V0PSJ1dGYtOCIgPGlucHV0IHR5cGU9InRleHQiIGV4YW1wbGVzIGluY2x1ZGUgdGhlIj48aW1nIHNyYz0iaHR0cDovL2lwYXJ0aWNpcGF0aW9uIGluIHRoZXRoZSBlc3RhYmxpc2htZW50IG9mCjwvZGl2Pgo8ZGl2IGNsYXNzPSImYW1wO25ic3A7JmFtcDtuYnNwO3RvIGRldGVybWluZSB3aGV0aGVycXVpdGUgZGlmZmVyZW50IGZyb21tYXJrZWQgdGhlIGJlZ2lubmluZ2Rpc3RhbmNlIGJldHdlZW4gdGhlY29udHJpYnV0aW9ucyB0byB0aGVjb25mbGljdCBiZXR3ZWVuIHRoZXdpZGVseSBjb25zaWRlcmVkIHRvd2FzIG9uZSBvZiB0aGUgZmlyc3R3aXRoIHZhcnlpbmcgZGVncmVlc2hhdmUgc3BlY3VsYXRlZCB0aGF0KGRvY3VtZW50LmdldEVsZW1lbnRwYXJ0aWNpcGF0aW5nIGluIHRoZW9yaWdpbmFsbHkgZGV2ZWxvcGVkZXRhIGNoYXJzZXQ9InV0Zi04Ij4gdHlwZT0idGV4dC9jc3MiIC8+CmludGVyY2hhbmdlYWJseSB3aXRobW9yZSBjbG9zZWx5IHJlbGF0ZWRzb2NpYWwgYW5kIHBvbGl0aWNhbHRoYXQgd291bGQgb3RoZXJ3aXNlcGVycGVuZGljdWxhciB0byB0aGVzdHlsZSB0eXBlPSJ0ZXh0L2Nzc3R5cGU9InN1Ym1pdCIgbmFtZT0iZmFtaWxpZXMgcmVzaWRpbmcgaW5kZXZlbG9waW5nIGNvdW50cmllc2NvbXB1dGVyIHByb2dyYW1taW5nZWNvbm9taWMgZGV2ZWxvcG1lbnRkZXRlcm1pbmF0aW9uIG9mIHRoZWZvciBtb3JlIGluZm9ybWF0aW9ub24gc2V2ZXJhbCBvY2Nhc2lvbnNwb3J0dWd1w6pzIChFdXJvcGV1KdCj0LrRgNCw0ZfQvdGB0YzQutCw0YPQutGA0LDRl9C90YHRjNC60LDQoNC+0YHRgdC40LnRgdC60L7QudC80LDRgtC10YDQuNCw0LvQvtCy0LjQvdGE0L7RgNC80LDRhtC40LjRg9C/0YDQsNCy0LvQtdC90LjRj9C90LXQvtCx0YXQvtC00LjQvNC+0LjQvdGE0L7RgNC80LDRhtC40Y/QmNC90YTQvtGA0LzQsNGG0LjRj9Cg0LXRgdC/0YPQsdC70LjQutC40LrQvtC70LjRh9C10YHRgtCy0L7QuNC90YTQvtGA0LzQsNGG0LjRjtGC0LXRgNGA0LjRgtC+0YDQuNC40LTQvtGB0YLQsNGC0L7Rh9C90L7Yp9mE2YXYqtmI2KfYrNiv2YjZhtin2YTYp9i02KrYsdin2YPYp9iq2KfZhNin2YLYqtix2KfYrdin2KpodG1sOyBjaGFyc2V0PVVURi04IiBzZXRUaW1lb3V0KGZ1bmN0aW9uKClkaXNwbGF5OmlubGluZS1ibG9jazs8aW5wdXQgdHlwZT0ic3VibWl0IiB0eXBlID0gJ3RleHQvamF2YXNjcmk8aW1nIHNyYz0iaHR0cDovL3d3dy4iICJodHRwOi8vd3d3LnczLm9yZy9zaG9ydGN1dCBpY29uIiBocmVmPSIiIGF1dG9jb21wbGV0ZT0ib2ZmIiA8L2E+PC9kaXY+PGRpdiBjbGFzcz08L2E+PC9saT4KPGxpIGNsYXNzPSJjc3MiIHR5cGU9InRleHQvY3NzIiA8Zm9ybSBhY3Rpb249Imh0dHA6Ly94dC9jc3MiIGhyZWY9Imh0dHA6Ly9saW5rIHJlbD0iYWx0ZXJuYXRlIiANCjxzY3JpcHQgdHlwZT0idGV4dC8gb25jbGljaz0iamF2YXNjcmlwdDoobmV3IERhdGUpLmdldFRpbWUoKX1oZWlnaHQ9IjEiIHdpZHRoPSIxIiBQZW9wbGUncyBSZXB1YmxpYyBvZiAgPGEgaHJlZj0iaHR0cDovL3d3dy50ZXh0LWRlY29yYXRpb246dW5kZXJ0aGUgYmVnaW5uaW5nIG9mIHRoZSA8L2Rpdj4KPC9kaXY+CjwvZGl2Pgplc3RhYmxpc2htZW50IG9mIHRoZSA8L2Rpdj48L2Rpdj48L2Rpdj48L2Qjdmlld3BvcnR7bWluLWhlaWdodDoKPHNjcmlwdCBzcmM9Imh0dHA6Ly9vcHRpb24+PG9wdGlvbiB2YWx1ZT1vZnRlbiByZWZlcnJlZCB0byBhcyAvb3B0aW9uPgo8b3B0aW9uIHZhbHU8IURPQ1RZUEUgaHRtbD4KPCEtLVtJbnRlcm5hdGlvbmFsIEFpcnBvcnQ+CjxhIGhyZWY9Imh0dHA6Ly93d3c8L2E+PGEgaHJlZj0iaHR0cDovL3fguKDguLLguKnguLLguYTguJfguKLhg6Xhg5Dhg6Dhg5fhg6Phg5rhg5jmraPpq5TkuK3mlocgKOe5gemrlCngpKjgpL/gpLDgpY3gpKbgpYfgpLbgpKHgpL7gpIngpKjgpLLgpYvgpKHgpJXgpY3gpLfgpYfgpKTgpY3gpLDgpJzgpL7gpKjgpJXgpL7gpLDgpYDgpLjgpILgpKzgpILgpKfgpL/gpKTgpLjgpY3gpKXgpL7gpKrgpKjgpL7gpLjgpY3gpLXgpYDgpJXgpL7gpLDgpLjgpILgpLjgpY3gpJXgpLDgpKPgpLjgpL7gpK7gpJfgpY3gpLDgpYDgpJrgpL/gpJ/gpY3gpKDgpYvgpILgpLXgpL/gpJzgpY3gpJ7gpL7gpKjgpIXgpK7gpYfgpLDgpL/gpJXgpL7gpLXgpL/gpK3gpL/gpKjgpY3gpKjgpJfgpL7gpKHgpL/gpK/gpL7gpIHgpJXgpY3gpK/gpYvgpILgpJXgpL/gpLjgpYHgpLDgpJXgpY3gpLfgpL7gpKrgpLngpYHgpIHgpJrgpKTgpYDgpKrgpY3gpLDgpKzgpILgpKfgpKjgpJ/gpL/gpKrgpY3gpKrgpKPgpYDgpJXgpY3gpLDgpL/gpJXgpYfgpJ/gpKrgpY3gpLDgpL7gpLDgpILgpK3gpKrgpY3gpLDgpL7gpKrgpY3gpKTgpK7gpL7gpLLgpL/gpJXgpYvgpILgpLDgpKvgpLzgpY3gpKTgpL7gpLDgpKjgpL/gpLDgpY3gpK7gpL7gpKPgpLLgpL/gpK7gpL/gpJ/gpYfgpKFkZXNjcmlwdGlvbiIgY29udGVudD0iZG9jdW1lbnQubG9jYXRpb24ucHJvdC5nZXRFbGVtZW50c0J5VGFnTmFtZSg8IURPQ1RZUEUgaHRtbD4KPGh0bWwgPG1ldGEgY2hhcnNldD0idXRmLTgiPjp1cmwiIGNvbnRlbnQ9Imh0dHA6Ly8uY3NzIiByZWw9InN0eWxlc2hlZXQic3R5bGUgdHlwZT0idGV4dC9jc3MiPnR5cGU9InRleHQvY3NzIiBocmVmPSJ3My5vcmcvMTk5OS94aHRtbCIgeG1sdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBtZXRob2Q9ImdldCIgYWN0aW9uPSJsaW5rIHJlbD0ic3R5bGVzaGVldCIgID0gZG9jdW1lbnQuZ2V0RWxlbWVudHR5cGU9ImltYWdlL3gtaWNvbiIgLz5jZWxscGFkZGluZz0iMCIgY2VsbHNwLmNzcyIgdHlwZT0idGV4dC9jc3MiIDwvYT48L2xpPjxsaT48YSBocmVmPSIiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIj48YSBocmVmPSJodHRwOi8vd3d3LnN0eWxlPSJkaXNwbGF5Om5vbmU7Ij5hbHRlcm5hdGUiIHR5cGU9ImFwcGxpLS8vVzNDLy9EVEQgWEhUTUwgMS4wIGVsbHNwYWNpbmc9IjAiIGNlbGxwYWQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iL2E+Jm5ic3A7PHNwYW4gcm9sZT0icwo8aW5wdXQgdHlwZT0iaGlkZGVuIiBsYW5ndWFnZT0iSmF2YVNjcmlwdCIgIGRvY3VtZW50LmdldEVsZW1lbnRzQmc9IjAiIGNlbGxzcGFjaW5nPSIwIiB5cGU9InRleHQvY3NzIiBtZWRpYT0idHlwZT0ndGV4dC9qYXZhc2NyaXB0J3dpdGggdGhlIGV4Y2VwdGlvbiBvZiB5cGU9InRleHQvY3NzIiByZWw9InN0IGhlaWdodD0iMSIgd2lkdGg9IjEiID0nK2VuY29kZVVSSUNvbXBvbmVudCg8bGluayByZWw9ImFsdGVybmF0ZSIgCmJvZHksIHRyLCBpbnB1dCwgdGV4dG1ldGEgbmFtZT0icm9ib3RzIiBjb25tZXRob2Q9InBvc3QiIGFjdGlvbj0iPgo8YSBocmVmPSJodHRwOi8vd3d3LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiA8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzbGFuZ3VhZ2U9ImphdmFzY3JpcHQiPmFyaWEtaGlkZGVuPSJ0cnVlIj7CtzxyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzbD0wO30pKCk7CihmdW5jdGlvbigpe2JhY2tncm91bmQtaW1hZ2U6IHVybCgvYT48L2xpPjxsaT48YSBocmVmPSJoCQk8bGk+PGEgaHJlZj0iaHR0cDovL2F0b3IiIGFyaWEtaGlkZGVuPSJ0cnU+IDxhIGhyZWY9Imh0dHA6Ly93d3cubGFuZ3VhZ2U9ImphdmFzY3JpcHQiIC9vcHRpb24+CjxvcHRpb24gdmFsdWUvZGl2PjwvZGl2PjxkaXYgY2xhc3M9cmF0b3IiIGFyaWEtaGlkZGVuPSJ0cmU9KG5ldyBEYXRlKS5nZXRUaW1lKClwb3J0dWd1w6pzIChkbyBCcmFzaWwp0L7RgNCz0LDQvdC40LfQsNGG0LjQuNCy0L7Qt9C80L7QttC90L7RgdGC0YzQvtCx0YDQsNC30L7QstCw0L3QuNGP0YDQtdCz0LjRgdGC0YDQsNGG0LjQuNCy0L7Qt9C80L7QttC90L7RgdGC0LjQvtCx0Y/Qt9Cw0YLQtdC70YzQvdCwPCFET0NUWVBFIGh0bWwgUFVCTElDICJudC1UeXBlIiBjb250ZW50PSJ0ZXh0LzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy0vL1czQy8vRFREIFhIVE1MIDEuMCBURFREL3hodG1sMS10cmFuc2l0aW9uYWwvL3d3dy53My5vcmcvVFIveGh0bWwxL3BlID0gJ3RleHQvamF2YXNjcmlwdCc7PG1ldGEgbmFtZT0iZGVzY3JpcHRpb25wYXJlbnROb2RlLmluc2VydEJlZm9yZTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hanMiIHR5cGU9InRleHQvamF2YXNjcmkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aXNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzaW1hZ2UiIGNvbnRlbnQ9Imh0dHA6Ly9VQS1Db21wYXRpYmxlIiBjb250ZW50PXRtbDsgY2hhcnNldD11dGYtOCIgLz4KbGluayByZWw9InNob3J0Y3V0IGljb248bGluayByZWw9InN0eWxlc2hlZXQiIDwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9PSBkb2N1bWVudC5jcmVhdGVFbGVtZW48YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCaW5wdXQgdHlwZT0idGV4dCIgbmFtZT1hLnR5cGUgPSAndGV4dC9qYXZhc2NyaW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1laHRtbDsgY2hhcnNldD11dGYtOCIgLz5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cC0vL1czQy8vRFREIEhUTUwgNC4wMSBUZW50c0J5VGFnTmFtZSgnc2NyaXB0JylpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhcyIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCcgdHlwZT0ndGV4dC9qYXZhc2NyaXB0J2lucHV0IHR5cGU9InRleHQiIG5hbWU9ImQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoc25pY2FsIiBocmVmPSJodHRwOi8vd3d3LkMvL0RURCBIVE1MIDQuMDEgVHJhbnNpdDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPmlvbmFsLmR0ZCI+CjxodG1sIHhtbG5zPWh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZWRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwImh0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+CiBzdHlsZT0iZGlzcGxheTpub25lOyI+PDxsaT48YSBocmVmPSJodHRwOi8vd3d3LiB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPtC00LXRj9GC0LXQu9GM0L3QvtGB0YLQuNGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQuNC/0YDQvtC40LfQstC+0LTRgdGC0LLQsNCx0LXQt9C+0L/QsNGB0L3QvtGB0YLQuOCkquClgeCkuOCljeCkpOCkv+CkleCkvuCkleCkvuCkguCkl+CljeCksOClh+CkuOCkieCkqOCljeCkueCli+CkguCkqOClh+CkteCkv+Ckp+CkvuCkqOCkuOCkreCkvuCkq+Ckv+CkleCljeCkuOCkv+CkguCkl+CkuOClgeCksOCkleCljeCkt+Ckv+CkpOCkleClieCkquClgOCksOCkvuCkh+Ckn+CkteCkv+CknOCljeCknuCkvuCkquCkqOCkleCkvuCksOCljeCksOCkteCkvuCkiOCkuOCkleCljeCksOCkv+Ckr+CkpOCkvgEgAiwgCCBvZiB0aGUgBCBvZiACcyABLgUgYW5kIAQgaW4gASIEIHRvIAIiPgEKAi4gAV0FIGZvciADIGEgBiB0aGF0IAEnBiB3aXRoIAYgZnJvbSAEIGJ5IAEoBi4gVGhlIAQgb24gBCBhcyAEIGlzIARpbmcgAgoJAToDZWQgAj0iBCBhdCADbHkgASwCPScFLmNvbS8HLiBUaGlzIAUgbm90IANlciADYWwgBGZ1bCAEaXZlIAVsZXNzIARlc3QgBGl6ZSACwqAEb3VzIAUgdGhlIAJlIABBsvwHC2ECAAUADgATABYAGAAeACMAJQAqAC0ALwAyADQAOgA+AEUARwBOAFUAWgBcAGMAaABtAHIAdwB6AHwAgACDAIgAjACOAJEAlwCfAKUAqQCtALIAtwC9AMIAxwDKAM8A1QDYAEGg/QcL8gIxADExAAAAAAAxDDExCgAxAC8AADEEAAAxAAMxCjExAAYxDTExATEBAAAxAAEACgAxAAcxAAkwAAAxAAgxAAUxAAoxAAsxAzExAA0xAA4xDjExAjExAA8xABAACjExAAwFADEAAAExDzExABIxABExABMxABQxEDExETEvADExBDExABYxCzExABcxABgxABkxBzExARoxABsxABwAAAwxAB0xFDExEjExBjExABUxCgExCDExAB8xACAvAAMxBTExCTEACgExCggFABUxCwAxCgoxAB4AAAUjADEvAAIxChExACQxACEFAAAxChUxCgUxACUAAB4xACYACwAxACcACzExACIxCwgxCgwAABUxACgACgwxACkxACoxCxExACsACgUxCwoAACIxCiExACwxCwUtADEAACExCh4xCx4xAC4xCwExCiIACiEACx4ACwExCyExCxUxCwwACwUxCyIACwwACh4ACyIACiIAAAAAAEh9AEGigAgLAmRVAEGygAgLAiaeAEG+gAgLAuayAEHMgAgLAgwFAEHWgAgLCmQTFgGlXAAABE4AQfiACAsMTgjmPgAAAAAAAGU4AEGSgQgLCmdozQgAAAAAZEMAQa6BCAsCJg4AQbiBCAsCyFkAQcaBCAsGB0EAAMeFAEHWgQgLAma9AEH0gQgLAs8JAEG4gggLEExMAAAAAMRdAAAAAAAAZCYAQeaCCAsChXgAQaqDCAsC5nwAQbyDCAsQqlBkCQAAJVGNBkcjAAAEGQBB8oMICwKnygBBkIQICxZpGiYcAAAAAOhVx1kAAAAAyQ0AAEgHAEGyhAgLGiYrAAAAAKklAAAAAAAAaxkAAAAARpBIVKfzAEHehAgLAmYgAEHuhAgLDGefAAAAAAAA5pnIHwBBiIUICwKrIgBBsoUICxYFHwAAAAAJZAAAAAAAAKgDhA6NDEc9AEHShQgLBifNAADlQwBB4IUICxAoBaUWAAAlUgAAAABIGScDAEGEhggLHOk0AAAAAAAAKA4AAAAAAADqc2R4AAAFegAAxBkAQbKGCAsCRvoAQcqGCAsGBlcAAEaSAEHYhggLDEgcpwEAACRgyVTkRABB8IYICxQpBwAAAAAAAEgBhRcAAAAAAAAGTgBBlocICwSn8lIQAEGihwgLGkQvqSEAAAAABEIAAEaPAAAAAAAAJooAAAbKAEHahwgLBgZSAACG8gBB6ocICwKmFQBBgogICwYlOcgqR2UAQZCICAsCiU0AQaCICAsg6HjmC+o3xjIAAAAAAACkOwAAhp4IdqbyAAAAAAAApE4AQcqICAsK5S4AAAAAAACGzABB3IgICwjKYAAALABHgQBB7ogICwIEZwBB+ogICwrFDgAAAAAIRgclAEGUiQgLBCl+xW8AQbKJCAsERrjLLQBByIkICwroCWfXAAAAAAoZAEHiiQgLDObbii4AABECAADodQBBkooICw5FIAAAAACIcOblaVjFAwBBxooICw6H+gAAAABLAWQOAABFBgBB6IoICwwKQSUAAABGXEgMRTwAQYiLCAsDq1dFAEGciwgLAqhFAEGwiwgLAmkrAEG6iwgLAoVHAEHOiwgLCgZoAAAAAKhjJ2UAQe6LCAsYBUIAAAAAAACmawAAAADKJAAAAAAAALQNAEGWjAgLBmaUSSRFIQBBpIwICw4qBkQGiF0AAAAARDrtMQBBwIwICwZJLwAA6UAAQd6MCAsGZFPoK8ZwAEGIjQgLCIwWAAAAAKRsAEGejQgLAoQgAEG0jQgLEmxBhQQAAAAAaknEPyplpwONIABB1o0ICwpGRwAApkYAAAa3AEHsjQgLDlMBAAAAAGRi7DGGLwkZAEGCjggLCIRAAACEaetuAEGYjggLDIwFAAAAAAAAKCbnzgBBwI4ICwRLYkQBAEHWjggLAub9AEHijggLAoVVAEHujggLEga5AAAAAAAAZgMAAAAAAABmMQBBpo8ICwSkZeg/AEHIjwgLDBEHAAAAAAAAyRkGPgBB3o8ICwakcQAAZG8AQfaPCAsK5FUAAAAAAADGpwBBlJAICwQNFCYFAEGukAgLBMbWSGEAQcaQCAsCRskAQdKQCAsCZQ4AQdyQCAsQTifEJAAAAAAAAOR6TBYlGABB/pAICwLHFQBBlJEICwQIaobgAEGkkQgLCKwbAADpVYbPAEG0kQgLCM0gAAAAAGUWAEHGkQgLCkQIAACmYAAABywAQfCRCAsMbQQAAAkTAAAAAKaVAEGUkggLEAxGAAAAAIVGAAAAAAAApmMAQcKSCAsGhkUAAGZmAEHYkggLB+hZB0SoT6QAQfaSCAsOpwwAACe0AAAAAAAApG8AQZaTCAsCxR0AQbaTCAsOBqIAAAAAKHkm2EgnhAcAQc6TCAsGBo8AAGePAEHokwgLBKo2p+cAQYqUCAsGhWcAAAcWAEGclAgLBEk25QQAQaqUCAsK5xMAAAAAAADFcABB1pQICwLGIQBB4JQICwQpZIRFAEHylAgLCAQ0bAKlGCsuAEGMlQgLFIgDRwQAAKVeAAAAAEhwJ8IAACVaAEGolQgLAoh+AEGylQgLCMeJAABEcOoWAEHIlQgLAgkRAEGQlggLDO0epSIAAAAAAABkNgBBppYICwLmowBBtJYICxJuGqU2AAAAAAAAhwMAAAAAyl0AQe6WCAsKhvsAAMRXAAAFZQBBgJcICwRoXMUUAEGQlwgLBulZRRWJPgBBppcICyKGu+koAAAAAEQ4AAAAAAAAx6QAAAAAAABGyAAAAABqKUReAEHSlwgLEgarAAAAAKpFAAAAAAAA6GNFagBB9JcICwKKcQBBgJgICwZyAsQHbDkAQZ6YCAsCRuEAQbKYCAsCpq4AQbyYCAsECA/HHQBB1pgICwKGpQBB6JgICwpISyQZAAAAAIgUAEGOmQgLAuVMAEGqmQgLAmebAEG0mQgLAgh5AEHCmQgLDkZuAAAAAAAAZHEqKYUMAEHmmQgLDgQWSAMnAQAAAAAoIQYgAEGGmggLAmRQAEGsmggLBOoPRkwAQbiaCAsEqHkm+gBByJoICwJMQQBB4JoICwIqRQBB7poICwbGxQAAR8UAQYqbCAsKZmMAAAAAAAAHNgBBoJsICwSICscPAEGsmwgLDMhiAAAsLwYIAAAmvwBBwJsICwhJQifoa0MHigBB4JsICworegAAAAAAAEkEAEGAnAgLCggDRwMAAAAAynIAQbicCAsE6BZmLwBBypwICwIFYwBB3pwICwIH8ABB8pwICxBmYAAAAAAAAGf3AACkcM4fAEHInQgLAo4RAEHUnQgLEAg3pAQAAIQ/AAAAAAAAJUAAQZieCAsIFAEAAAAApEIAQdyeCAsYDF4FcwAAB4MAACUTAAAAAOowAAAAAAf0AEGInwgLAs4PAEGSnwgLCgZQAABkPKkIB8oAQaafCAsCx1sAQbSfCAsKCjwAAOk9AAAJOwBBzp8ICwREbakcAEHanwgLAoZ2AEHsnwgLCCt+hF0AAGZFAEGAoAgLBigYAACoUQBBmqAICwoEewAAAAAAAIUVAEG0oAgLCm0KBsQAAAAACzAAQcygCAsEiRQHbgBB5qAICwrmLTIPAAAAAIRnAEH+oAgLAqbAAEGOoQgLAuUqAEGgoQgLBClGJwcAQbKhCAsCxnMAQbyhCAsGaWcAAEgYAEHqoQgLAscCAEGAoggLBAtwJ5wAQY6iCAsKxskAAAAAAACHawBBqKIICwSLeMQMAEHqoggLBmRwAAAkRwBB+KIICwRoY6b/AEGIowgLBAkNhgYAQZajCAsChEsAQaCjCAsCaGEAQcCjCAsCEwQAQcqjCAsGxj0AAKZUAEHeowgLAoc/AEHyowgLIsZ+AACmdwAAAADKTsYmAAAAAAAAR0cAAAAAKDgAAAgIJ0MAQaKkCAsChB4AQcCkCAsGyldGzjQGAEHwpAgLAkkqAEH6pAgLAuafAEGKpQgLCAVwAAAAAFIWAEGspQgLBAll5lYAQbilCAsEaEOniwBBzKUIC0QsIAAAbH0AAAAAAAArAAY4AACFQAAAAAAMeAAArA+FAAAAh57LA4ZdAAAAAItqAAAAAAAAzAAAAAAABGqMHSetyGtm4gBBmKYICwRIV2VkAEGqpggLDkRMC3wAAAAAxm0AAOfmAEHGpggLBuUvAACGrwBB1KYICwZIewAAaisAQfCmCAsICUqHRwAAZ7AAQZynCAsCCwgAQb6nCAsCx0sAQdqnCAsCpuQAQfSnCAsEi1eHXQBBhKgICxCqLQAAAADlDwAAAABsCsYYAEGgqAgLBAps5gYAQayoCAsEyFoG2wBByqgICwZHhQAAhV8AQdioCAsoa1UAAMpEpiYAAAAASG2GlwAAAAAAAIaqAABHe6ovZloAAAAAAACnxABBiqkICwImgABBsqkICwLnwgBBvKkICwSqPacQAEHIqQgLBIoS5g4AQdipCAsUKEPFAatDAABoT8QPAAAAAAAA5D0AQfSpCAsGqWvEfCh+AEGIqggLBOssBi4AQZSqCAsECiYnxQBBoqoICwJmigBBrqoICwomdAAAAAAAAMeOAEHAqggLDCkk5hUAAAU2AABnGwBB1qoICwgnYgAAAABrSgBB+KoICwIMCgBBhqsICwJldABBrqsICwJmpQBBuKsICyRNJAAA6EXm2u0PAAAAAAAAy3TnkQAAZ3gAAIYgAAAAAAAApkcAQYysCAsEiUgm0wBBoqwICw6GkQAAAADJekbwAADmBwBBuqwICwIlYwBB1qwICwRlCMliAEHurAgLBOQwaTcAQaKtCAsC5CEAQbqtCAsCho4AQcStCAsIiSqHJQAAJ3AAQeCtCAsCSm8AQeqtCAsGRWYrKKUGAEGCrggLJoQ6AABnHgAAxmwAAAAAAACm3DQPAAAAAAAAihbHQAAAxWZuNERPAEG6rggLAkZwAEHErggLBMg4hgQAQfCuCAsCyWQAQYqvCAsGxqUAAAQNAEGirwgLAocgAEG8rwgLDslDpwUAAAAA6yCGvU8FAEHUrwgLBoo6AACofQBB/K8ICwQOJOcKAEGQsAgLBsk+h3utEABBorAICwqnEQAAAAAIbUbmAEG8sAgLBKkgZE0AQciwCAsEqBfFHgBB8rAICwLFVABBjLEICwioI2UEAACkQABBqLEICxCMQ8YaaFMAAEwJAAAAAKcPAEHCsQgLBCVfahAAQeCxCAsCqCkAQYqyCAsER6fOCwBBprIICxUlOAAAxVDoDMcKKlCH/QAAAAAAACYAQdKyCAsKpmzyCqYirg7nBABB7LIICwRLdSYlAEH4sggLBMhFBzoAQZCzCAsCbFsAQa6zCAsCBskAQb6zCAseprIAAAAAq1tHfgAAAABKKgfPAAAAAAAAxoFoekb7AEHqswgLEqZ9AAAAADMPAAAAAAAAaRuFAgBBiLQICxYLbQe0AAAAAAAAZ1UAAMaFAAAAAEtBAEGmtAgLBOQ2qFMAQbq0CAsCppsAQca0CAsKRpgAAAAAaEQkHQBB4rQICwJEPABB8rQICwLEbgBBmrUICwJlYwBBvrUICwJnLgBB2rUICxbHTQAAJ04AAAAAAABnKq8DAAAAAEUqAEH4tQgLAkoQAEGMtggLAmwmAEGitggLAof/AEG0tggLBIkmRmAAQcK2CAsCR54AQda2CAsCBDIAQfi2CAsES1ZnXABBircICwrGewAAAAAAAOfkAEGutwgLAqRMAEHKtwgLEmVfAADEbQAAAAAAACR6AACEDABB7rcICwLmOQBB+LcICx7rTcYnAAAAAAgl5TkuEQAAAADEOAAAAAAAAOe+UQcAQaS4CAsETQIFBgBBsrgICwolWwAAAAAAAEU3AEHEuAgLCBAFJjgAAKRqAEHYuAgLAmwcAEHmuAgLAma6AEH8uAgLEiwU5QYAAEU4AADGksoHAADsGQBBnrkICwKnbABBqLkICwQICqQaAEHAuQgLLEgsh2YAAAAAaF0AAAAAAABIdwAAAAAmhgAAh0UAAAAAAACFVgAA5hcAAIRkAEGcuggLCuhnRhQAAAAAdgQAQba6CAsCZ5oAQcK6CAsCRpoAQdi6CAsCDQwAQei6CAsYshIAAAAAAADJcIQZAAAAAChoAADpI8ctAEGMuwgLBAh8hvwAQaa7CAsChSwAQca7CAsYBmIAAAAA6UbHTgAAAAAAAGZDAAAAAG4DAEHyuwgLAmZeAEGMvAgLAstlAEGovAgLEGh7AAAAAOcfKl9EGAAAxocAQcS8CAsICH8AAAAAh64AQfK8CAsGRUbpISZyAEGIvQgLCAsoJhOsBWc7AEGevQgLBiZZAADlKABBsL0ICwiJSwZFawDmLABBwL0ICwSpagUKAEHSvQgLBgb8yADlbgBB4L0ICwboeQAAKngAQfC9CAsEiXJm7ABBnL4ICxSJDKUMyjCHWAAAAAAAAGVJ6HoHQABBxr4ICwqmUAAAAAAAAGZqAEHavggLDkQ+iBEnGwAAAAAAAAa1AEH6vggLAiVxAEGYvwgLCGhQJw0AAAZjAEG4vwgLAhYHAEHOvwgLAuVCAEHuvwgLAofaAEH6vwgLAkVeAEGUwAgLFHELAAAAAKbDAABmCwxjZHVzAEYuAEGwwAgLAvALAEG6wAgLBudE7wBnTQBB4sAICwLGjwBB/sAICwLnUwBBisEICzIEbwoupBIAAAAAKA3HjQAA53oAAAAASTnkAwAAZlAAAAAAAAAEJwAAhVwAAAAAAABHzQBBysEICwKEHQBB2sEICwRnB4oIAEHowQgLBGtsZ2MAQfTBCAsETHkm9wBBhsIICwaGjwAA5GAAQbzCCAsCSHkAQdDCCAsEKlPkCABB3MIICwJrZwBB8sIICwLkOwBBhMMICwRoDOdLAEGWwwgLGgb1AAAAAAAAJGMAAAAA62wkBQAAAAAsHscLAEG4wwgLCCkaAAAAACa7AEHSwwgLCkUMAAAAAAAA5DkAQeTDCAsCbiQAQfrDCAsCBXsAQYbECAsCphkAQZTECAsIqRlEBQAAJmQAQabECAsIZE8AAAAAq0IAQcrECAsOZC4AAEagAAAAAAAAJWcAQerECAsKpyzpbWY6AACnJwBBgsUICwKGcwBBjMUICwQoambgAEGYxQgLBupv5uBrBQBBssUICwKH4wBBwsUICwKlQQBB7sUICwzGDQAApT0AAMQVKDQAQYTGCAsE6UinWwBBlMYICwQtPOUaAEGgxggLAqg7AEGyxggLAoUmAEHExggLDCglxQ8AAAAAKy3nwQBB3MYICwTobObhAEHqxggLBmejAACkVQBB/sYICwqlYwAARmsAAKVGAEGgxwgLBko2hB9JZwBBsscICwLkYgBBvMcICwiqP+UcShYnSwBB1McICwRwBefGAEHixwgLAmfSAEHsxwgLAqsFAEGCyAgLAgeMAEGoyAgLEIlFxT0AAMQxAAAAAAAAx4AAQcTICAsCDRUAQdrICAsGp3kAAERQAEHyyAgLAubJAEGkyQgLDk0vR0oAAKeIAADkVBAOAEG6yQgLCoa6iEPHq0lZx7kAQczJCAsEKGfmvABB6skICxIGdwAAAAAIXOURAACEVwAAhsAAQaLKCAsUp8IAAAAAAACFa8t7BwAAAAAA62QAQcDKCAsIaRBlQAAAxFAAQdDKCAsIqQ4HW4g/Jg8AQeTKCAsCqiwAQfLKCAsCpR0AQYbLCAsCB98AQZ7LCAsKJFmKKwbAAABHXABBtssICwJFNgBBxMsICwbKLafq6gQAQdbLCAsChEgAQfTLCAsCKW0AQf7LCAsOZxUAACZOyERnDewq5HUAQZrMCAsDBWAOAEGqzAgLCuRjAAAAAAAAxG8AQdbMCAsCJ9EAQe7MCAsChoMAQY7NCAsaBiIAACQ3AAAAAHQAJAEAAAAAAADHkwAARqgAQbjNCAsXSFUAAAAAhn0PAwAAAAAGeQAAAAAAAEQAQYzOCAsMLBcAAAAAAABJSEc7AEG0zggLBC4ORUIAQeLOCAsChUUAQfDOCAsSCAKmpAAAAAAyDAAAAAAAAOpXAEGSzwgLFoZvAAAAAAAAZsQAAAAASTVGFwAApokAQbjPCAsEKXUkSQBB3M8ICwSLUGckAEHozwgLDKldAABJFAAAAACkLwBBltAICwJGXwBByNAICwSJTqUCAEHc0AgLAutyAEHw0AgLAipPAEH60AgLAocpAEGO0QgLAie6AEHC0QgLEARoyDEAAKhQAAAAAAAAsAEAQebRCAsGhgIAAARkAEGG0ggLAib5AEGQ0ggLCihgAAAAAAAAK1MAQa7SCAsCRrIAQbjSCAsQiwcAAAAAAAApUEfqAACGUABB5tIICwKn2wBB8tIICwondQAAh84AAMZRAEGK0wgLAudBAEGm0wgLAkUcAEGy0wgLAsa5AEHK0wgLAqYoAEHa0wgLDCaoAAAAAHILAACIMgBB/tMICwKleQBBjtQICwYHkwAApEQAQajUCAsCCHoAQbTUCAsCsAIAQcDUCAsCcAYAQcrUCAsCRycAQezUCAsBkgBBgNUICwjJGMcAAACmiABBotUICwIH3gBBrtUICwYGvwAAZDQAQcTVCAsEiQlEEQBB0NUICwTMT6UDAEHi1QgLAkexAEGa1ggLAsbVAEG01ggLBIxC5QIAQcbWCAsKxWsAAAAASnYGSgBB9NYICwLICABBiNcICxyJZQAAAAAAAIsJAAAAAIZ7AABGNwAAAAAAAAdwAEGw1wgLAmg8AEG61wgLAqbVAEHI1wgLDvMOAAAAAAAArA4AAKkmAEHg1wgLBIpKB3oAQfrXCAsCBGAAQY7YCAsCxEAAQazYCAsU6WsAAAAAAAAQAycSjH8AAAAABvgAQc7YCAsCRlIAQeTYCAsITA1m5AAARX4AQYzZCAsEykjlCgBBntkICwpkIQAAAAAAAOVXAEHE2QgLAgk+AEHO2QgLAieMAEH02QgLBCofJEYAQYbaCAsWBF8AAAAASRMAAAAAAADoHwAAbDRkKABBptoICwIELgBBvNoICwJIQQBBzNoICwToREdGAEGE2wgLAokLAEGU2wgLBIwjpkEAQbjbCAsIy3cAAAAARUoAQczbCAsEzQDmOwBB7NsICwKxBwBB/NsICwiIZibNAACGwgBBktwICwLEJQBBntwICwiGEgAAAACJVABBstwICwJG0QBBwNwICwJLFgBB0NwICwTKC6YwAEHc3AgLBGgLBgEAQfTcCAsCCQ4AQYrdCAsCZl0AQZrdCAsCR9oAQabdCAsWBwMAAAapyhNHvwAAAADKWUUQCyMmrwBBxt0ICwRH8xABAEHS3QgLAubIAEHg3QgLAkpuAEGK3ggLDiU0AAAAAAAAp8cpTyU2AEG83ggLBEkCRh0AQdDeCAsECFXH8wBB3N4ICwMrH6YAQfLeCAsGBpgAAKbdAEGU3wgLBKg/hxYAQabfCAsCRH0AQcLfCAsCZHQAQdTfCAsIbF3ndQAAp+UAQerfCAsCJlAAQfTfCAsJCSMAAAAAAAC3AEGI4AgLBAoJJUQAQZ7gCAsMxFwAAAAAyx/nEgptAEHC4AgLGCZzAAAAAKhAJ2gAAAfSAAAAAIg2Zx8ISQBB8OAICwQOA4U+AEGE4QgLCHIY5t1IQKcwAEGa4QgLAuRcAEGo4QgLEIskAAAAAAAAaRxnoMxgpuEAQczhCAsE7A4lCgBB7OEICw4pcsbuAAAAAAAAR+RLPQBBquIICxhGkYhXxwMAAAAAAAAmWupoAAAAAAAAKU0AQdTiCAsEKBWGNQBB4uIICxYGzqpPp5YAAAAAAACHxwAAAACIAEQhAEGO4wgLAsRrAEGk4wgLAhMCAEG44wgLFOgipxPoMIZLAAAAACtZJ3aqbaR5AEHo4wgLCGlr5EaITsfmAEGC5AgLCEVfAAAAAO0XAEGS5AgLCkUlAAAAAOlfp3EAQarkCAsOZGMAAAAAqyUAAAAAR/YAQcrkCAsChpoAQdjkCAsMjFAnLvMBAAAIFOYIAEHu5AgLAua0AEGA5QgLBupb5pyICQBBmuUICwJGOwBBsOUICwIqaQBBxuUICwKGaABB0uUICwjHygAAAADsWwBB4uUICwgmyIlkxq1OMQBB9uUICxoGDAAAJSQAAAAAaAQHVgAAAAAAAGZTAAAkQABBnuYICwJG/gBByuYICwoEWAAAhr4AAMeGAEHy5ggLAkUmAEGC5wgLFuU1AACHlQAAAADKBgAA6QEHtQAARrEAQarnCAsCZnEAQbjnCAsETBjm3ABBxucICwYFaQAAhnAAQeLnCAsChrMAQeznCAsESVAHwwBB/OcICwTLC0YwAEGU6AgLDMtnBzQAAAAAjQJnWwBBsOgICwgsVwAAAADEUgBByugICwKkawBB2ugICxDmbOtTBWwAAAV07QAAAIgpAEHy6AgLAuaDAEGA6QgLAkt7AEGM6QgLBIgFhwkAQaTpCAsCiyUAQbTpCAsU6xXFQOlnhooAAAAAAACEaAAAh+cAQezpCAsEaGmG4QBBkOoICx7KHgAAAAAAAEhMRRkAAAAAiQQAAAAAAAAIHsdRqQEAQb7qCAsG5zAAAGYyAEHY6ggLDmsJAADNLeZlAAAAAOlOAEH26ggLAiUrAEGW6wgLAgd3AEGu6wgLCiVUdQTGUgAA5CMAQdTrCAsEuABFBABB6OsICxrqEgAAaDUAAAAAxi8AAAAAAAAkKQAAAADpIgBBluwICx5EcQAAAADILWZpAABmtAAAh6sKfAAAiARkDwAAJFEAQb7sCAsG5V8AAEZ/AEHm7AgLAmV8AEH27AgLEgYJDC4AAAAAJ6gAAAAAAAClSQBBmu0ICxKG+AAAAACIG6ZDAAAAAAAAxVUAQdztCAsEDwSHGABB+u0ICwKlLwBBju4ICwqGtQAAAAAYAAdNAEGq7ggLAqeZAEHA7ggLBGlTBg8AQdLuCAsCR48AQeruCAsCBCwAQfbuCAsCpiQAQZLvCAsS5nQAAEaDAABkEgwLAAAAAGdzAEGu7wgLAsV0AEHA7wgLAk8OAEH47wgLBKgqxxsAQZDwCAsCqCQAQarwCAsCpE8AQcrwCAsK5pAAAAAAAADmaQBB4PAICwhpVQAAaWwGdgBB8vAICwIn4gBBiPEICwRoMUYVAEGg8QgLCEhN5EIAACfLAEG48QgLAvYCAEHe8QgLAkRhAEHq8QgLFsQFAAAH/gAAAAC1BEe2AABHdWktRgQAQZzyCAsCSicAQaryCAsCJ28AQcLyCAsCxDkAQczyCAsIqEEAAAAA5gIAQeryCAsChFQAQYTzCAsESD6nWgBBkPMICwH3AEGa8wgLCqdgAAAAAAAAhBQAQbTzCAsMCXXkSGtSx7YAAIUbAEHI8wgLCmtkAAAAAARE9A4AQejzCAsIqxYFFgAAB5UAQZr0CAsCx+oAQbz0CAsCVQMAQcr0CAsCB3YAQdr0CAsCJSIAQeb0CAsC5moAQfD0CAsEqwDmDwBBhPUICwQJXsYcAEGs9QgLDIgIRRQAAMRRCQaEEwBB6vUICwIEHgBBoPYICwKpGABBsPYICwJqeABBxvYICwJHawBB3PYICwyIVEf3AAAAAMsMh3kAQfb2CAsOJC0AAKQ5AAAAAAAABDsAQaD3CAsMal0mcQAAAAAAAGUTAEHA9wgLBOgnZxQAQdb3CAsKBmoAAAAAlQTmTgBB6vcICwIm3QBB9vcICwIEEgBBjPgICwIuLgBBrPgICxBpReYeAAAAAIh8AAAAAKcXAEHQ+AgLAgojAEHo+AgLEshBR10AAAAAKysAAAAAAAAofwBBmPkICxxqUYU1AAAAAAAAR5HNHOcoSkQEYwAAAAAAAGaWAEHG+QgLBAVUqhcAQdb5CAsKZQwAAAAAAABHJQBB7PkICwRoRaQxAEH6+QgLAqaQAEGQ+ggLFswxZ74AAMYtAAAAAGpiAAAAAAAASSMAQcL6CAsGpBMAAKZ1AEHS+ggLCAenAAAAAIgOAEHm+ggLAmZiAEH8+ggLCEoVBRQAAObiAEGO+wgLAkRsAEGi+wgLAiRWAEGs+wgLIIlmAABLPoQNAAAAAAAA5osAAAAAAACFHixMp30AAKVIAEHW+wgLCuRvAAAAAAAAR+0AQer7CAsCxHMAQYb8CAsWREMNPsYkqiUAAAAAAABRAgAAAACkXgBBpvwICwrmnQAAhGYAAEVaAEHW/AgLAob9AEHg/AgLFIsPZ+oAAAAAAAAnbgAAAAAAAIaoAEGC/QgLBuZxAABEdwBBkP0ICwLIMwBBmv0ICwKlQABBpv0ICwIEZgBBuP0ICwIpWQBByP0ICwIpBABB9P0ICwQpSsUSAEGC/ggLAiZFAEGY/ggLAowNAEGi/ggLAoc0AEG6/ggLFifeAAAAAPAGpD0AAAAAKwoAACgohnoAQez+CAsISC0HDgAARAkAQYL/CAsCJE4AQZD/CAsMKC8GAgAAAACoBycjAEG4/wgLBAoc54AAQcj/CAsCaQYAQdj/CAsIbBqlJuoBpQ8AQYCACQsSqmKlFQAA5TYyAQdRAAAAAM4kAEGggAkLCMkuBAEAAGeJAEG2gAkLEuVHAAAAAAAAxkAAAAAAAADGVwBB1IAJCwroCgAAAAAAAMo2AEGAgQkLDAo6RQ8AAAAAAABH4QBBmIEJCwxrPgAAAAAAAOoKhzsAQcKBCQsEBGluIwBBzoEJCwKGygBB7IEJCwQrTAeRAEGeggkLBgVLbiiGLgBBrIIJCwTrOkRaAEHQggkLAakAQeiCCQsUqjsHowAAxt0AAAAACQsAAMk2hQEAQYyDCQsE6lOmfABBrIMJCwzoT8YCAAAAAMhhJVUAQcyDCQsMq34EUwAAxnUAAKaoAEHwgwkLCIssAAAAAAUEAEGkhAkLDOwaJCQAAOb2qA1GOABBxIQJCwgoWAAAAAAFUwBB2oQJCwjHmgAAAADNJwBB/IQJCwQJeAbqAEGchQkLAukMAEGwhQkLCOwdJ2EAAEYDAEHQhQkLFO0uxDMAACcCAAAAAAAAx6gAAGd3AEH0hQkLBOpuBHgAQYyGCQsEiVjFWABBsoYJCwLmcgBBvIYJCwjKPgYj9QClBQBBzIYJCwIoYQBB1oYJCwZEMwAAx4oAQeiGCQsEyzOlKgBBkocJCwpnYgAAAAAAAIQ2AEGqhwkLCGfVqUwmLwsMAEG6hwkLAmQ4AEHWhwkLCAZVAABnPIpyAEHqhwkLAiZ1AEGOiAkLAmVcAEGgiAkLCFMKAAAAAOdSAEHQiAkLAhIQAEHiiAkLAuaHAEHyiAkLAuc+AEGAiQkLDCkBJA4KDYQoAACHOQBBuokJCxLkdMlXRzapPMd+qnbkNAAAh3AAQdqJCQsERvzMRwBB9okJCwLGlgBBiIoJCwLUBABBpooJCwLGfwBBsIoJCwLuEQBB3ooJCwKn/QBB+IoJCwJoQQBBhosJCxIlTgAAAAAoNacEAAAAAAAA5/IAQaKLCQsCpF8AQbiLCQsC60QAQdKLCQsWBBUAAAAASH4AAAAARvkAAAAAAABnCwBB8IsJCwKKQgBBjowJCwKH6wBBwIwJCxAKHuYBAAAAAAAAZpkAAMa/AEHsjAkLAgsxAEGGjQkLEOdRSUZnMQAAAAAAAKQ+aH8AQZ6NCQsEpj9rIQBB2o0JCwJmiQBB6I0JCwKKdgBB+I0JCxDNOUQOAAAAAEwghjIAAKbWAEGQjgkLCEgKp4QAAIdaAEGijgkLAqaNAEGwjgkLCKx/JmkAAKR/AEHMjgkLBgk9py62BABB2o4JCwKERgBB5o4JCyImQAAAAAAAACRnAAAAAGlwAAAAAEZhAAAAAJgBJ7EAAIeLAEGkjwkLB0oOJkQAAKUAQbqPCQsIBxgAAAAAaF8AQdCPCQsEal7lXgBB5o8JCwZHLgAAp5oAQfiPCQsETSXkCgBBtJAJCwLyAwBBwpAJCwrHZex7AACpXiQHAEHekAkLAoRDAEHokAkLAghMAEH6kAkLCsR+AAAAAAAAx3AAQYyRCQsEKEWH0ABBopEJCwTkRZIHAEGwkQkLDuo/AAAAAGVUAAAAAIsTAEHKkQkLDqVYAABGVwAAAAAAACbaAEHqkQkLAkVZAEH8kQkLBMgZBwEAQa6SCQsCBGEAQcKSCQsCB58AQc6SCQsCZoQAQdySCQsCyDIAQfKSCQsCZHYAQYCTCQsCChUAQY6TCQsCxGwAQbyTCQsCTEUAQcaTCQsEBWKIcQBB2JMJCwSIMcYsAEHskwkLBFQAhxwAQYaUCQsapGnJAQAAjFmG40hKAAAuCoeyAAAlFAAAxGEAQciUCQsCEQgAQdSUCQsCynwAQe6UCQsGZoIAAAa7AEGElQkLAqxhAEGUlQkLCilmRosAAMfizHcAQaaVCQsChGUAQdCVCQsCaBEAQfSVCQsEiB1nUABBipYJCwKGkgBBnpYJCwJGpwBBtpYJCyrFBgAAAAAAAAQgAAAAAOkrAABsd6brAAClOgAAAAAAAMaeAAAEXQAAJicAQfCWCQsESjIneQBBgJcJCwJIBgBBipcJCwKERwBBlJcJCwLqaQBBpJcJCwgIH2YFAAAlLgBBxpcJCwbFXwAAZS0AQeKXCQsOxlQAAAAALDNGIFQKJR8AQYiYCQsUCQQlMQAAhWIAAAAAAAAmoK0/B/YAQaSYCQsU7wRmJAAAAAAAAKZJAAAAAM0GZ4QAQcSYCQsCCWcAQdqYCQsGpX0AAMfHAEHqmAkLAuRyAEH8mAkLBIoGhhAAQYqZCQsCBikAQZSZCQsCqRUAQaCZCQsEMwhmsABBuJkJCwZNNwAAS2kAQdCZCQsCyEIAQeyZCQsEqmlGGgBBgJoJCwiKbwAAAADmGwBBkJoJCxQoQgAAAAAAAOlkAAAvEUQbAACGtABBrpoJCwSGKaxSAEHAmgkLBI4Jp70AQdqaCQsCRTQAQeyaCQsEKDxnLwBB+poJCwSmEkoCAEGOmwkLBsdcCCbEEQBB0JsJCwjpY6dzahhlBgBB4JsJCwIIVgBB6psJCwIkVwBBipwJCxYmkuxdAAAAAAAAijgndAAApRsAAKazAEGonAkLBGh3Z5wAQdacCQsGBhgAAIQQAEHmnAkLAidsAEH2nAkLDuRfCVRGBQAAAAAAAEeDAEGUnQkLBAguhgUAQaadCQsEREesAwBBtp0JCwJmHABB1p0JCwJFQQBB5p0JCwInvwBB9J0JCwJsXABBkp4JCwJm0ABBoJ4JCxiMEOY/AABGEQkahH8AAAAA6AKkRgAABisAQcKeCQsCRHMAQdKeCQsKBh4AAAAA6TNmFQBBkJ8JCxJIMgAAAABGXu0DhFkAAMV6aFsAQbCfCQsSCG8AAAAAAABqZOVpAAAAAOlmAEHOnwkLByZiAAAAAFgAQeSfCQsUiEIAAAAAJ1UAAAAATCcAAAgwhFUAQZygCQscKVHnNwAARuPofQAAKigAAEkIBy0AAAAAAAAlMABBxqAJCwaEcCgJxR8AQdSgCQsEaFXn9ABBkKEJCwjTCgAAAACkWgBBoqEJCwKGGABBrqEJCwLlZwBBuKEJCwJoWgBBxKEJCwRIfGZOAEHcoQkLBIhfRggAQeihCQsEqhmEBABB+qEJCxbGdgAAAAAAAORu9A0AAAAA52eKMKYUAEGaogkLAmcTAEG4ogkLBIphZ14AQcSiCQsESXBGEgBB1qIJCwOkBewAQeqiCQsC5EsAQfiiCQsCLAgAQYyjCQsCCwsAQZijCQsIqU0ESwAA5S0AQa6jCQsKJkYAAOZFAAAmSQBB2qMJCwLmIwBBjqQJCwQGVKkTAEGapAkLAkdZAEGmpAkLBgY5AAClcwBBvKQJCwJpAgBBxqQJCwImuABB3KQJCwIrDgBB+KQJCxCxCOc5AAAAAE0KJhhOAOY6AEGQpQkLAihPAEGepQkLCoePLBAHrshDZ2QAQcClCQsCyDYAQc6lCQsCZG0AQdqlCQsCpB0AQeqlCQsCJwgAQZCmCQsUbEYAAAAAAAAsAYQ3AAAAAGoFh50AQbCmCQsIankAAAAAZlcAQcKmCQsChosAQe6mCQsKpGdMHgAAAAAmSgBBiKcJCwYoGYcEDBwAQZqnCQsaxrIAAMbhAABkQQAAAACSGibsAAAAAAAAZmcAQb6nCQsGZv8KEUYeAEHQpwkLBogjhxJOAQBB4qcJCwomnAAAAAAAAORkAEGQqAkLCtMLAAAAAAAAyD0AQaqoCQsCx7wAQcCoCQsMKD9HowAAAACKX4UhAEGGqQkLAgQwAEGqqQkLAufUAEG0qQkLBukThHjoSABBxqkJCwhkQAAAAADJagBB5qkJCwJmjABB9qkJCwIEEQBBgqoJCwrG3gAAAACJBeegAEGWqgkLAoVbAEGgqgkLCign51QAAAAAjicAQbKqCQsCZkoAQcCqCQsEKV5mEgBB6KoJCwIqEQBB8qoJCwbFMwAAR9wAQY6rCQsC5koAQaKrCQsOptoAAAAAAABmywAABD0AQbqrCQsCZAoAQcSrCQsIjFQAAAAA58wAQd6rCQsCxiIAQeyrCQsILAwAANABpocAQYCsCQsMq2GHMAAAJGpoB6ccAEGWrAkLAmaLAEGgrAkLApANAEGqrAkLAoZXAEG+rAkLAsawAEHarAkLBoRSKlxngQBB7KwJCwQsQUdWAEGIrQkLAgoiAEGerQkLAgbaAEGsrQkLCg0QpFsAAAAAqiIAQcitCQsBkwBB5K0JCwYIdab3FgUAQfqtCQsC5mAAQY6uCQsCRyYAQZ6uCQsCZXoAQaquCQsCZUwAQbauCQsKRRYAAAAAAAAm9gBBzq4JCwIGUwBB7q4JCwrEMAAAAAAAAMa8AEGOrwkLCKc9AAAAALIEAEGerwkLAoZaAEHMrwkLFA4MJ8AAAAAACxUlOwAAAAAAACUNAEHorwkLBGxOxTYAQYCwCQsQeAEGnQAAAAAAAEfLAABkYQBBmLAJCwIoAwBBtrAJCwKEJgBBwrAJCwanXAAA5FMAQdCwCQscKFHHEgAAAABpDCZBAAAAAG4AZSoAAAAAAADmQwBB/rAJCwLGqQBBrLEJCwRMHWYTAEG+sQkLBobLAADEXwBB3rEJCxKnZwAAAAAAAKe0AAAAAAAAxTwAQfixCQsETABnzABBhLIJCwLKRQBBmrIJCwKmtgBBprIJCwLlSgBBurIJCwIGrABB4LIJCwKpCwBB7rIJCwrmNwAAAABNCAezAEGEswkLEG4mAACrMyRMAAAAAAAARHQAQZyzCQsErgJldQBBqrMJCwZFeIsAZVEAQbizCQsE9gFlSABBxrMJCwKnSgBB0rMJCwqkegAAAAAAACREAEHqswkLAsbCAEGItAkLJApkJgIAAAAAMQIAAGpxAAAAAAAAyA0AAAAAAACzBkU5EgDn9wBBwLQJCwJqNwBB2LQJCwiKc4bmAAAGmgBB6LQJCwjKCORAAAAkfABB/LQJCwjOAUdCAABlcQBBjrUJCwKmWwBBoLUJCxDoBgAAiRdmQgwHAAAAAKbTAEHAtQkLCCw3AAAKGAZ0AEHStQkLAiQeAEH6tQkLBqe+AABkIABBprYJCwoFQC0XAAAJOmfIAEHGtgkLDCeLiSMHWgAAAABIWgBB3LYJCwK2AQBB7LYJCwaXACYkbgUAQf62CQsCx9MAQYi3CQsCKxgAQZK3CQsCJzMAQay3CQsIiiYAAAAA5ugAQca3CQsKxmIAAAAAKF1FfQBB4rcJCwgnJIsIpju1AQBB/rcJCwIlTABBlrgJCwLkLQBBvrgJCwIGQgBB0rgJCwbEVkkHh0QAQeS4CQsC7FUAQe64CQsCp9oAQYC5CQsEin2kUgBBkLkJCwqpNwAAAAAAAFQJAEGiuQkLAqcaAEG+uQkLCkZoAAAAAKsXB9EAQda5CQsEhsEPGABB9LkJCwgMBORdAADFCQBBiLoJCwgLREfIMQ0mOwBBnLoJCwiPE6bzAABn3gBBuroJCwJmXwBBzLoJCwKuAwBB4roJCwJnbgBB8roJCxQGPQAAJU0AAAAASwYAAMtWx70pYgBBrrsJCwJERABBxLsJCwLRAgBBzrsJCwoGfwAAAAAAACVIAEHkuwkLDggX53RJDgZaAAAAAI4MAEGEvAkLAXAAQZC8CQsI6AvHAQAAJHkAQaa8CQsG5loAAKV/AEG2vAkLAsaUAEHSvAkLAiQTAEHmvAkLLsVjAABkSQAAAADoVkcFAAAm8awRpXcAACc68gCHcQAAAABIOIUSAAAAAAAAxpEAQay9CQsGqh8AAGt9AEHIvQkLEMkFAAAAAORtAADGZAAAh+kAQeK9CQsKxuYAAAAAAABGWwBB+r0JCwKneABBhL4JCxJIPwAAAAAAAE8BAAAAAAAAygIAQbC+CQsECngGJQBByr4JCwJmSQBB1L4JCwyXAgAAAAAAAAoEx3oAQfS+CQsCqHUAQf6+CQsCZTYAQYy/CQsE6AhmNABBnL8JCxAMVodcyQsnKwAAAADqVMZIAEG6vwkLAiZ2AEHUvwkLHGlDAACIVSf5AAAAAAAAZlIAAOZIAABkZAAABVgAQfq/CQsGxRioFmcrAEG2wAkLDic8qjJlGQAAAABrDEZnAEHSwAkLBoY9AAAGMwBB7MAJCwGOAEH2wAkLBiRTqSsnEQBBhMEJCwSLTMeeAEGSwQkLCmUuAAAAAAAAR2cAQaTBCQsItwLmv0trxC4AQbjBCQsM6SYAAAAAAADqewb2AEHMwQkLBMk95s0AQfbBCQsCJmAAQYLCCQsSRlAAAAAAqhNmDwAAAAAAAGezAEGowgkLAvQJAEG2wgkLAiayAEHkwgkLCE0NJjHLPEfTAEGEwwkLHIpeBRcAAAAAAADGrAAAAAAAAOUVAACmugAA5n0AQbbDCQsCZhsAQcDDCQsIaEBnDAAAZWoAQdLDCQsCxp8AQeLDCQsIBH3KegAASF8AQYzECQsEynFm4wBBnMQJCwJKcQBBssQJCwJG2ABBysQJCwImlABB3MQJCwoKBQAAAAAAAGkSAEGAxQkLAkxRAEGgxQkLFAsHxgMAACRFAAAAAI4CpUoAAMfJAEG+xQkLBOYoMAYAQdDFCQsUygkAAAAAR2LPEAAAAAAAAIsBBz4AQfjFCQsISAWHGQAAxEwAQazGCQsEchLlHgBBuMYJCwjIdQAAAADm/ABBzMYJCwppCKUjAAAAABcBAEH+xgkLAqajAEHMxwkLBDAFhkIAQd7HCQsCh9MAQejHCQsE7wYH1QBB9McJCwqIewAAAAAAAO4bAEGMyAkLBDAHZ4wAQZrICQsCh9wAQb7ICQsK5vsAAAAAAADmxwBBgskJCwImEABBmskJCwLEQgBBtMkJCwoMAAY/q00HnCkoAEHmyQkLAqeuAEGIygkLBC03ZwkAQaDKCQsCKWkAQazKCQsIrFYAAEpRRScAQd7KCQsCJHIAQfzKCQscCm4AAGg7AAAAAAV/aBZHS+oNJikAAAAAAAAH6QBBoMsJCxLMaQbsAAAAAIlhAAAAAAAATAoAQbrLCQsCpWYAQdLLCQsOhHcKDgAAAAAAAKog5TgAQezLCQsEKSomMABBjMwJCxgSFybpAAAAAClaBQIAAMQ8AAAAAAAAJiEAQerMCQsCpU0AQfzMCQsUSR0AAAAA5WUAAAAA6Fxn+KgZphgAQaLNCQsCRicAQcDNCQsMahuGOKpJAAAJFqQpAEHazQkLBMaK6wUAQfTNCQsMCGwAAAAAhiUAAKaaAEGWzgkLAqbSAEG4zgkLBugA5xBpMQBB8s4JCwLnTgBBgM8JCxBqaAAAAAAAAMhLZzkAAGZ6AEG6zwkLAoVMAEHMzwkLCMgThC4AAMVqAEHizwkLCoe6AAAAAAAAJmgAQfrPCQsCZ9kAQabQCQsCZRgAQbjQCQsESFun+QBBzNAJCwK2BwBB3NAJCwRIIeVdAEHu0AkLFqdmAAAAAAAAZlkAAAAAAACGbAAA5ncAQZrRCQsSp4MAAAAAAADFdgAAJocAAGfHAEG00QkLAnQHAEHK0QkLBOcFiVUAQdrRCQsSxsgAACZhAACHfwAAAAAAAMeIAEH60QkLAsQrAEGI0gkLFk4eh+IAAAAAAADleAAAAAAWACQ7yiMAQarSCQsGxGOoTsQbAEHU0gkLBitAJSpNJgBB7NIJCwhIEgAAAADHzQBB/tIJCwokOgAAAAAAAKRBAEGU0wkLBGolpxQAQabTCQsCBoUAQbLTCQsChEoAQdDTCQsMyx2n2QAAJ5puOAbkAEHk0wkLBKlb5T0AQfLTCQsShpYAAAAAAADlRaoqAAAIHKYCAEGU1AkLBCkMx7QAQabUCQsWJlsAAAAAqEbkWgAAhvMAAAAAAADlQABBztQJCwImlQBB3NQJCwLMYgBBgNUJCyZoKEcALhkAAAAAZQcAAAAAUgQAAAhwJHgAAKagAAAAANQFAADtOwBBrtUJCwanRAAA5FIAQb7VCQsG5GEoCERVAEHO1QkLAmYBAEHa1QkLCkRBAAAAAAAAhAYAQe7VCQsC5C8AQYDWCQsC7g8AQYzWCQsKqTFHGAAAAABpTwBBqtYJCwLkeQBBwNYJCxSUDgAAbgYAAAAARGsAAGaG6EIFOABB3tYJCwJHTABB9NYJCwLoFwBBntcJCyZnISpU5CfMC4cLAADmRAAAAABJG8evqggFIAAAAAAId4b3AAAkaABB3NcJCwLxBABB7NcJCwwyCgAAAAAAAA4sR08AQYLYCQsCRE0AQZDYCQsEMQlkKgBBsNgJCwQtFeReAEHO2AkLAmeGAEHc2AkLBEg8JlEAQfDYCQsMSDAFKgAAAAAAAGaBAEGS2QkLBoVzAAAnCQBBotkJCwJn9gBBttkJCwYHqAAApj4AQczZCQsEyAXlYwBB3tkJCwKHIgBB7tkJCwJFYABBitoJCwLHEwBBltoJCwIGswBBrNoJCwg3AwAAAAAn+gBBztoJCwLEOwBB3NoJCwhsC6e2aBpESwBB9toJCxKGhQAAAACJD+VGAAAAAAAAx30AQZrbCQsS5FuKZQAAAABnKAAAAAAAAAUmAEG+2wkLAoQSAEHS2wkLHGVBAAAAABISR1sAAAAAqHoAAAAA5Q0AAAAAihAAQfrbCQsCRm8AQYbcCQsGhTcAAGffAEGg3AkLAfAAQarcCQsEJv+IdABB0twJCxwldQAAZnwAAAAA6h8AAAAARRHqa6R4AAAAAOxOAEH23AkLBkauFgKEUQBBlt0JCwYmcAAAJSgAQabdCQsGR3MAAGVNAEHU3QkLAoxpAEHi3QkLFmbPAACHiQAAAAAAAKaSAABG8YghZR8AQZzeCQsEyDDlWABBut4JCwIGXQBBzt4JCwoFTgAAAAAAAMf5AEH+3gkLCqaMAAAAAAAAREoAQa7fCQsChCEAQb7fCQsCZUYAQdDfCQsMUADmBAAAAAAAAIamAEHq3wkLAoY/AEGM4AkLBEwIh2MAQZjgCQsC6UEAQaLgCQsIRgwAAAAAC0gAQbTgCQsITQ8AAIkipgQAQergCQsCpVAAQYLhCQsWRCQAAAAASl+HoQAAAAAAAGekAABm9ABBrOEJCwRIGmcQAEG44QkLFKtjAADPBAAAdgEHPQAABHUAACY3AEHW4QkLAmdKAEH24QkLAuZ7AEGO4gkLDqRRAABnQQAAAAAAAOZwAEG04gkLAhIKAEHI4gkLCA42AAAAAEQnAEHY4gkLBggdB6vJQgBB6OIJCwppAwAAAAAAAI4BAEGE4wkLCAshB1wAACbPAEGq4wkLEqaLAADnDwAAAAAAAAaXAADGoQBBxOMJCwKILQBB0OMJCwSrD8emAEHw4wkLAgljAEGA5AkLBClqZFcAQY7kCQsCBHkAQcLkCQsGxrSID6cxAEHe5AkLAiVQAEH45AkLDOgPRisAAAAAqUBlCQBBlOUJCwJuCgBBouUJCwLmgABBsuUJCxDGtwAARXcAAAAAKisGJkkzAEHK5QkLAsZbAEHW5QkLCsbjAAAAAAAAx+AAQfrlCQsCxgEAQYjmCQsGKxQn6awIAEGa5gkLAkZzAEGy5gkLBqRDAABlTgBByuYJCwLHFABB3uYJCwImagBB7uYJCwKlWQBBjOcJCwIISwBBmucJCyrFUQAAAACKFyYiAAAAAAAA5EMAAEcz7QoAAAAApHUAAAAASxdEHwAAJt8AQc7nCQsKZqfIOSd4AACEYQBB+ucJCwIlQgBBiOgJCwRIO4efAEGo6AkLBBQDhXYAQbToCQsELFImXgBBwOgJCwKrdQBB5ugJCwpFWCt7pWgAAKfoAEGM6QkLBIgkp3QAQaLpCQsC518AQbLpCQsiJFAAAAAAAAAmmlEOAABpbgAASiIG+wAARuCsIwAAAABkRwBB6OkJCwzoZgV4DAInTQAA5DUAQYjqCQss60YAACkyAABKAKZhCzUlBAAAx/oAAAAASCIAAAAAR+sAAERjAAAAAAAAB+cAQcDqCQsMCDjmBQAAAAAAAOaVAEHc6gkLAik0AEHy6gkLAuYkAEGC6wkLAmV/AEGe6wkLAoRNAEGo6wkLAgs6AEGy6wkLAgYaAEHk6wkLBko3AABKdABB9OsJCwSIQIYIAEGC7AkLBAaNDA0AQZbsCQsCZWIAQbjsCQsCaD0AQcbsCQsO5lgAAAAAMAEAAKsMJTcAQejsCQsEChSHMQBBlu0JCwTlVMkoAEG+7QkLAgeNAEHK7QkLBiZcAACH4ABB6O0JCwRIKsRHAEH27QkLBgaJaj2nMgBBhu4JCwInhwBBou4JCwaH0QAA5pYAQbTuCQsEKXlFLABBwO4JCwbISgAAKSUAQdbuCQsOh93qXQAArQQAAAAAhuQAQfbuCQsGJiDpF8RIAEGI7wkLAspiAEGU7wkLAuoFAEGk7wkLBio4RiZrfgBBtO8JCwJpJQBBwu8JCwKkaABB0O8JCwRKASUpAEHe7wkLAgalAEHs7wkLCNITJFIAAOeUAEGA8AkLDPgAAADIeWbyAAAn0ABBlPAJCwIPAQBBsPAJCwQIJEUIAEG88AkLCMo95xUAAGbNAEHU8AkLBkhHxV3qWQBB9PAJCxCrAQAAAADmmwAAAACoG4csAEGY8QkLBMxWJuIAQarxCQsIZDMAAIUF7wMAQbrxCQsGp1MAACdUAEHS8QkLFuaiClhlJQAAAAAAAGYiAAAAAAgbJ9wAQf7xCQsI56QAAAAAjDUAQZryCQsCRUAAQajyCQsGLgbkBtIMAEHK8gkLAoUtAEHU8gkLCmsvAAAqc2R5iQYAQYrzCQsKRp0AAAAAAABGhABBnvMJCwIEUgBBqvMJCwIHEgBBwvMJCwanq00Bp0sAQdbzCQsGxWgAAIV+AEH48wkLBEgTpy0AQY70CQsChSoAQZr0CQsCRmUAQaj0CQsC6z0AQbz0CQsMqCAAAOpCBh8AAMQsAEHm9AkLBOZGqDcAQZL1CQsKJlcAAAAAAAAGpwBBrPUJCwSqcsYVAEHq9QkLAoV5AEGK9gkLAuQrAEGm9gkLCsQjAAAAAAkHxzYAQbr2CQsCxvMAQdr2CQsCRFwAQfD2CQsEKnnm/wBBgvcJCwJGZgBBkvcJCwJFbABBovcJCwJmtwBBvvcJCw6EeQAAZiwAAAAAAACFDgBBiPgJCwZoIaYXCw0AQZb4CQsCpskAQab4CQsChg4AQcb4CQsGxm4AAMQKAEHw+AkLCLYFAAAAAOZrAEGG+QkLBib0Sjin3QBBuPkJCwKuLwBB0vkJCw7GjgAAppQAAAAAAADlUgBB7vkJCw7FaQAAAAAKQgAAKzFFLwBBiPoJCwyuKGdwCVUH6wAARt0AQZ76CQsCBFEAQaz6CQsIKxfnFAAAxv8AQcD6CQsQKR+nzQAABBMAAAAAAACn2ABB2voJCwLFfQBB5voJCwqFNAAAAAAAAAdoAEH6+gkLAuUrAEGE+wkLCtEABQUAAAAAiAcAQZb7CQsGRqkpXYRaAEGs+wkLCohg5/NrIocN6U8AQcj7CQsEiD7H2wBB4vsJCxbG6+lYpRkAAAAAqHgmbAAAAAAAAMVCAEGA/AkLEGlWAAAAAAAAqR1mNwAAx20AQZr8CQsCRrAAQbb8CQsCZHwAQdL8CQsCREgAQdz8CQsCKm4AQe78CQsGxGYAAGVzAEGa/QkLCoRzAAAAAAAAJVMAQa79CQsCp+0AQbr9CQsOx3ZNPqULAAAAAAAAZ7UAQdL9CQsOZ12JZ4ZiCzIHFwAAxxgAQfb9CQsCR3wAQYj+CQsQ6EwFKAAAAAAAAEV6aWkkcQBBqP4JCwRIasR5AEG0/gkLAdgAQeL+CQsCpD8AQe7+CQsCJyIAQYr/CQsSJhkAAAAAAAAnggAAAAAAAAaCAEGu/wkLIqVWSx3GYAAABCoAAOeu1AIAAKhkRWQpYeUUqWIAAAAAJtUAQeb/CQseRwG3AWUBAAAAAIgZBCEAAAAACgcAAAAApu8AAMU6AEGagAoLAseVAEGwgAoLAut+AEHegAoLEGVZAAAAAEl9AAAAAAAASiUAQY6BCgsIZGwAAAAAiFoAQa6BCgsCB2AAQbqBCgsCRoUAQcSBCgsIbggAANIVhHYAQeaBCgsChF8AQfCBCgsIaQkmEQAAhF4AQYSCCgsOCH5EaWtQAAAAAAAAawgAQaiCCgsE6BCkZgBBvIIKCw4MXAAAqjBnLAAAAABKYgBB1oIKCwKG/wBBgoMKCwrGgAAAAAAAAGaHAEGWgwoLAkaZAEGggwoLCIgs5icKAaQwAEHOgwoLEkU7AAAAAAAAZDUAAKYzAABEWwBB6oMKCwKlLgBB/oMKCxLnYwAAAAAAACfgAAAAAAAARCgAQciECgsFMQtHJEsAQeKECgsWBFRsV4boAAAAAAAAJVwAAAAAAACGyQBBjoUKCwYlEowPh24AQZ6FCgsCZDAAQbaFCgsG5lQAAMdEAEHahQoLAiejAEHqhQoLAgRIAEH6hQoLDMZVAADmSwAAAAC0BABBmIYKCwSoDMfXAEGmhgoLCsR3AAAAAAAA5XAAQbiGCgsCbBIAQdCGCgsC6i0AQdqGCgsORlYAACRYLSIAAAAA524AQf6GCgsCRgsAQY6HCgsChnEAQZ6HCgsOpp0AAAAALD5mmgAApzUAQbSHCgsQCnEAAJcBpg8AAAAAAAAkaQBBzocKCwSGa0h2AEGQiAoLCApgAABJYAYUAEHAiAoLAuwhAEHQiAoLCOtZAABpV6dIAEHsiAoLCMlrByYAAOROAEH8iAoLBAhuJ70AQYqJCgsCp3oAQaqJCgsCRDYAQbaJCgsYxkQAAAAAijtHdApnJUUAAAAAiDgAAOgSAEHaiQoLCIRgAACFJOoQAEHwiQoLCAk/AAAAACaIAEGOigoLAudhAEGcigoLBMsZJzEAQbCKCgsECR0EcgBBvooKCwomegAAAACIWUcMAEHSigoLAqVbAEHkigoLAmoCAEHuigoLBoVTAAAELQBBgIsKCwIMUgBBoIsKCwQ4AcdaAEG8iwoLDgkJAAAAAKaeAAAAAOk5AEHWiwoLDMe1AADmoK0eAACoewBB9IsKCwRpDYcUAEGGjAoLAqaEAEGQjAoLBEgAhTwAQaKMCgsC5owAQbKMCgsChDkAQb6MCgsChHQAQc6MCgsEhkkoTgBB2owKCwSGCYgLAEH4jAoLAg4NAEGWjQoLQmRfAADETQAAAAAAAKUfAABHRAAAAADKDQAACiCHcgAAAABsBIUaAAAAAEldAAAAAAAAyhIAAAAARrcAAAAAAABmogBB6o0KCwLGvQBBho4KCwqmmQAAAAAAAAVmAEGcjgoLAuwTAEGojgoLCMhbpWzND4bWAEG8jgoLBEkZBB0AQciOCgsCiBoAQdSOCgsE6A1nfQBB7o4KCwgG1gAAAAAOGwBB/o4KCwKGQABBio8KCwJGUQBBlI8KCwQxB2YMAEGgjwoLBIwlxkcAQayPCgsg6H8AAAAAxyUAAOfpAAAEW4kfAAAAAKY5AAAAAAAAZigAQdiPCgsE6GCnOQBB6I8KCwiLFQAAAAAEOgBBmJAKCwgyCedaAADkfwBBtJAKCwIoSABBxpAKCwKmgQBB2JAKCwQMI6VUAEHykAoLAuZjAEH8kAoLCOgTAADLN0fYAEGWkQoLAmQxAEGgkQoLAisSAEGwkQoLCpUCAAAAAEY1CkwAQcSRCgsGKXoAAEofAEHUkQoLAosMAEHekQoLAsb3AEHqkQoLAoU7AEH4kQoLBEpKhQkAQaCSCgsC6DcAQaqSCgsKxEEAAAAA1wGHjABB6pIKCwKHFwBB/JIKCxBJLaclAAAAAAAA59kAAEQWAEHOkwoLDgRtAADmZwAAAAALGkYZAEHqkwoLAkb0AEH0kwoLMIpAB20AAAAAKScEHAAAAAALAwAAaAFFRAAAAAAAACfySB4lHtYFAAAAAAAAyWcmnwBBspQKCwYmZ+ooxH0AQcKUCgsGh8WJQMQtAEHSlAoLAgbZAEHqlAoLBubxAABEZwBB+JQKCwRrEWYpAEGSlQoLBgckAACGcgBBopUKCwIH7ABBspUKCwrmtwAARsQAAEQxAEHKlQoLDGfxAADn1gAARFKNHABB4JUKCwLILgBB6pUKCwLnWwBB+JUKCwhrKEY+AADnhABBiJYKCwJpEwBBmpYKCwJFcQBBwpYKCwJmjgBB7JYKCwKKDQBBspcKCwQETchwAEHAlwoLAohWAEHOlwoLCuZmAAAAAAAAJCYAQeaXCgsCJlUAQfCXCgsGDQDFGoh9AEGEmAoLCO4CAAAAAObUAEGemAoLCme0AAAAAHECRlkAQbCYCgscDQgkXAAAAAApK8bbAAAAAGpI5QUAAAAAakNlEQBB1JgKCwKNMABB3pgKCwKmHwBB7JgKCwaKHwAALF0AQYiZCgsQCD9kDQAA5GwAAAAAAACkHABBopkKCxLkcAAAAADsCAAAAAClRMkA5AUAQcaZCgsOhXoobCVYAAAAAAAAJxQAQdyZCgsg6BFnpgAAAAAAAIatLASFWgAAAAAAAGUCAAAAAAAAZTEAQYaaCgsMxGlMGgAAAAAAAEkPAEHSmgoLBuRWKHUnPgBB4poKCwLGWQBB8poKCwKmxQBBgJsKCwQpFCYGAEGWmwoLFKRKAAAAAAAAxogAAAAAAABkZYtxAEG+mwoLAue3AEHUmwoLFkwF5/EAAAAAAADH+0oI5/oAAAAAS0kAQfybCgsSiwOnhgAAAAAAAKaYAAAAAMsHAEGinAoLAsbcAEG8nAoLEDYDAABqPoetAAAAACgMRQEAQdacCgsCJTwAQeycCgsMqQTGEGgTxzwAAEa0AEGCnQoLAuVJAEGQnQoLBMgmp5IAQZydCgsUKTOHkAAAAAAAAEY8AAAAAOggx3MAQcqdCgsChmQAQeadCgsSJ54AAOQzAACFKwAAAAAAAIR+AEGwngoLBLIUZuEAQcKeCgsCBDMAQdCeCgsEKSAmpQBB/p4KCxJGjgAAAAAAACQfAAAAAAAABUgAQZifCgsK7hwAAAAAAAAJJABBtJ8KCwgpNue5LEfH0QBB9J8KCwLsCgBBgKAKCwxsYUdDAAAAAAAApTMAQaCgCgsC6D0AQaygCgsE6hfHBgBB1KAKCwRIQudGAEHioAoLAoa5AEHwoAoLBOllJkwAQf6gCgsChjwAQZShCgsCiXAAQZ6hCgsG56YAAIbXAEG6oQoLAgVQAEHSoQoLAubkAEHuoQoLAkQ7AEGCogoLCuaJAAAHvOxRRoEAQZaiCgsCJSYAQaqiCgsKh5oAAAAAqDUmGwBBvKIKCwRqXMciAEHOogoLAoZYAEHaogoLBAbmLB0AQe6iCgsCJvwAQfqiCgsKBroAAAAAAADGxgBBjqMKCwQG4ZADAEGkowoLDqkFAACRBAAAzgJHtEgvAEG+owoLAma8AEHUowoLEOsEAAAAAMaDqFpn9AAAhv4AQfijCgsEDHDm6QBBkKQKCwKpZABBmqQKCwLH/wBBpKQKCw4rAgVZAAAkTekGBijoIQBBxKQKCwiqNwAACxfnDABB3KQKCwJpUgBBiqUKCwKGVABBqKUKCworKgAAAAAAAEw/AEG8pQoLCGpppQkAAEQ5AEHOpQoLCoexyi+mDcsRRikAQfClCgsK8QoAAAAAAACLPQBBnqYKCwLmmgBBrKYKCwJrGgBB0qYKCwYmgwAAJygAQfamCgsWJ/gAAAAASA8AAAAARB0AAAAAAABGiQBBmKcKCwSoRKcfAEG8pwoLCklBZhAAAAAArhIAQeKnCgsCZD8AQeynCgsMaWXGTgAAAAAAAOQqAEGCqAoLCgQ46knnOAAAp6wAQZqoCgsC5kcAQaaoCgsC5pIAQbqoCgsOplEAAAAAAAAm3AAAxpUAQdCoCgsEKiXnjABB8qgKCwjEVAAAAACSFABBpKkKCwZuBAAArQUAQbSpCgsCKg8AQcapCgsKpA8AAAAAAADGygBB2qkKCxYkWigSAAAAAAAAS3kHYwAAAAAAAGRZAEH6qQoLGuf5AAAAAEgJZUIAAAAAMAgAAAAAAAAtDYYbAEGiqgoLAgZ4AEGsqgoLEBQAAACLNWYCAAAAACgyBwwAQcaqCgsIZseRDgAAqH8AQdiqCgsKyF0n9QAAAACJEgBB/KoKCwhuCQAAAADmrABBoKsKCwJpYQBBsqsKCwbESgAABzUAQcarCgsKxpgAAAAAAACEbQBB8qsKCwKlEABB/KsKCwZoFwAACAEAQZCsCgsGqzUAAKhVAEGsrAoLBIgQBjsAQcKsCgsIRnUAAAAASW0AQdSsCgsCyGAAQeCsCgsCkgsAQe6sCgsExGepVwBB/KwKCwRINcUrAEGcrQoLBGlLZgcAQbStCgsCrSQAQdKtCgsFJzdoFIcAQeqtCgsCxGQAQfitCgsCLh0AQYKuCgsaR/kAAGbZAAAAACgxAAD0BceBAAAAAAAApyYAQciuCgsKaC0AAAAAAADuFQBB4K4KCxRIUwAAAABn0QAABsgAAAAAAAAHZQBBiq8KCwQEI8wGAEGerwoLAqQ0AEHGrwoLDycfAAAAAOoMxh8AAMUgMABB9q8KCwKmZABBirAKCwLGywBBprAKCwblU4h5pHsAQbqwCgsKJG8AAAAAAADHrABB0rAKCwLlYABB6LAKCwSMMEcZAEH0sAoLGg0CBkYAAAAAAAAnaQAAAADIRgAAAAAAAEh1AEGisQoLCgVyAAAAAAAAJ6oAQbixCgsUS02FHQAAxucAAAAAyCfFFwAAB6wAQdqxCgsCpysAQeSxCgsE6HaG9gBB9LEKCwIJKwBBhrIKCwJEagBBvrIKCwLGcQBB3LIKCwxuAgAAahSnCgAA5DwAQZSzCgseKhIAAHMKAAAAAKR+AAAAAAAAR/AAAAAAKxWlRUsIAEHOswoLGieVUAoAAAosxTgyBwAAAACnpokxZg0AAEUuAEH6swoLAoUZAEGGtAoLAkbVAEGgtAoLBEgxh5YAQa60CgsO5X0AAAAAAAAH1AAA5r0AQdi0CgsCqXoAQeK0CgsOBoYAAAAAAAAEWQAApssAQf60CgsCBlsAQaa1CgsM5p4AAAAAAAAHyRcCAEG6tQoLAqU8AEHItQoLBCgTZQMAQfa1CgsC5vgAQYi2CgsGjgYAALQCAEGgtgoLAmhmAEGstgoLAqtyAEG2tgoLAgdiAEHAtgoLAu8QAEHMtgoLAso4AEHgtgoLBIlq5tYAQe62CgsCh2oAQfq2CgsCBHcAQYS3CgsCCkcAQZC3CgsKCTgAAAAAAABoCABBtrcKCwpG5CpSAAArW0ZTAEHetwoLAqRTAEHutwoLCEUyAAAAAAsTAEH+twoLAgdyAEGMuAoLCGgGBygAAKQ3AEGcuAoLAosmAEGouAoLGEswAAAAAOUdAAAAAEgQZwoAAOQRAACHKwBBzrgKCwLGdwBB2rgKCwJEGgBBirkKCwLENQBBpLkKCwTqAKUaAEHWuQoLAidkAEHquQoLBgZ1AACFDQBBgroKCxikbmtJZRvKMYctAACnkQAAAADJKiYe6SUAQa66CgsCxrUAQcS6CgsIyR9ERgAARGIAQeq6CgsCx6EAQaC7CgsEqD0GGwBBrLsKCwRrG6cqAEHEuwoLBksQx9hMEwBB7LsKCxCoV4VLAAAAAOhtAABpGEVTAEGivAoLCqbQAAAAAAAA5t8AQdK8CgsCh5kAQd68CgsC5E0AQe68CgsCx2MAQYi9CgsMigpHDwAAAAAAAKZoAEGgvQoLEqh+AAAAACZIAAAAAAAAhjmKdABByL0KCxToA2UQAAAAAAAApksAAAAAAADGmwBB5L0KCwqJCMUiqBRlJqhhAEH6vQoLAiYEAEGivgoLDCaLAAAAAAhaJ/RqGQBBvL4KCwQpNcYoAEHUvgoLBCseh6QAQeK+CgsWBTQAAAAAAACGogAA52kAAAAAylLFLABBgL8KCwToaObjAEGgvwoLBMxRRr4AQbC/CgsCaxQAQby/CgsMTSdEegAAAAAAACRLAEHSvwoLDkV2SDYAAAAAAABMMmczAEGEwAoLBqwBZ7dOMwBBpsAKCwJmPABB4sAKCwKkVABB/MAKCwLJCABBhsEKCwKnrwBBlMEKCwKJDQBBssEKCwIkYQBBvsEKCwJlXQBB4MEKCwKOCABBlsIKCxokPwAAxSgAAAAAjxSGTspRAAAAAAAAqAQGBABB2MIKCwSJUwYTAEHywgoLAqRIAEH8wgoLBo4Fxg8qCwBBksMKCwJmvwBBpMMKCwRsGeaRAEG4wwoLBGlCB5oAQcbDCgsW5nUAAMVT6xwEbgAAJsoAAAAAAACn9ABB6sMKCwLmeQBBgsQKCwJHHgBBlsQKCwqlNAAAAADIAUVoAEG4xAoLAio6AEHExAoLEEloBlapM+RqAAAAAAAAxEkAQeTECgsCSw4AQfzECgsEqAUlFQBBlsUKCwrEGAAAAACrRiVJAEG6xQoLCmZWAAAAAAAAJUoAQdbFCgsEJ3KMDgBB4sUKCwoGqgAAAAAAAERkAEGYxgoLGClUhiYAAKRYyX3m7AAAhBwAAAAAAAAH5gBB1sYKCwIETABB6sYKCwqmxAAA5/4IEYZDAEGCxwoLCiRwAAAAAEl1xuoAQZ7HCgsKprcAAOV8AABkJQBBtscKCwJFSABBwscKCw4FOQAAAAAAAOfRbBSnVgBB3McKCwQSBmReAEH4xwoLAksqAEGCyAoLAmaIAEGMyAoLCOxWAAAAAAe3AEGeyAoLDud5AAAAAO0pAAAAAGb3AEG0yAoLCKghx8PJToYxAEHiyAoLDOfiSk8FAAAAAADIeABB/MgKCxQoAYYzAADHdwAAAABoSMQvAACEGgBBmMkKCwqqeCRVAAAAAA4CAEG6yQoLAuVRAEHEyQoLAnEIAEHSyQoLAuZdAEHcyQoLDOg05hwAAAAACn+FJQBB8MkKCxSIDKYdAAAAAAAARqsAAAAAAAAHlwBBjsoKCwRmmC4QAEGuygoLCOUYAAAAAGw1AEG+ygoLBKZ2KFMAQYrLCgsCB1kAQZbLCgsCRpQAQazLCgsE7CQGJwBBzMsKCwLpEgBB1ssKCwOESZgAQeTLCgsYzDMGDQAAAACqXuYgAAAlRgAAAAAAAAQoAEGSzAoLAiQcAEGczAoLCLEEJ2YAAMV5AEG+zAoLDkb9axBlHQkCAADISaeQAEHczAoLAqobAEGEzQoLBIoRxzAAQZbNCgsKB48AAAAAAAAGOgBBuM0KCwiLGeUy6CVHmABByM0KCwSoAKUoAEHUzQoLCIoBB2QAAOfeAEHwzQoLBA0/pk0AQYbOCgsGBnMAAAQvAEGWzgoLCkYbjEgAAAhgxzgAQbTOCgsGEAAAAIpUAEHGzgoLAoYUAEHYzgoLAlYGAEH0zgoLBA0PpiMAQZjPCgsESRzmKgBBuM8KCxi2AwAAAACG4gAAAAAVAQAAAAAAALYCp4wAQfrPCgsC5qUAQYTQCgsE6UfGxwBBmtAKCwrmbwAAAAAAAOV3AEGu0AoLBOfbqBUAQbrQCgsERiGuIABBgtEKCwpmsgAAAACIJSaBAEGi0QoLAgZJAEGs0QoLEIgGxVsAAAAAKxvnHQAAJo0AQczRCgsEiFuHAgBB5tEKCwpGNAAAAAAAAKVMAEGC0goLCgRPAAAAAKgKB3sAQZTSCgsIqHHFVusAp4oAQbrSCgsC5BQAQcTSCgsUCCPFBwAAAAAqBAAAAADkLE0Xh3oAQe7SCgsiJ0kAAAAAAABlGgAAAAANKiYSAABGjQAAJ20AAAAACGnkIABBotMKCwKEcgBBuNMKCwxvEwAAAAAAAKo5JwwAQc7TCgsCh6kAQd7TCgsCJEoAQerTCgsCBq4AQfTTCgsC0w8AQf7TCgsCZpMAQYrUCgsCRBQAQZbUCgsKpl8AAGUXAADHoABBstQKCxpmTwAAAADrAuQaAAAAAAAARqMAAAAALQyHWQBB9NQKCwIoUgBBhtUKCwJmJQBBlNUKCwLOEABBrNUKCwRMUkaHAEG61QoLAkf6AEHI1QoLBCtoBx8AQdbVCgsIxs4AAAAAakIAQerVCgsCRk8AQf7VCgsGpWqrRyYfAEGU1goLAupBAEGe1goLAmaxAEGs1goLFIgCJwYAAAAAAAAFfAAAAAAAAAVbAEHY1goLBCg+Z8UAQeTWCgsEyQeGIQBB9tYKCwImlgBBkNcKCwTqPScYAEGc1woLDkoNAAAAAGZrAAAAAO0CAEG41woLDqllpnMAAAAA6BumTCh3AEHW1woLAkRTAEHq1woLCsRTAAAAAAkFBxsAQYDYCgsMayAAAAAAAAAKN0eLAEGc2AoLEEkJZjsAAAAAjBdkEQAApGMAQcrYCgsChsQAQdTYCgsC9QQAQe7YCgsCRscAQf7YCgsMRiQAAAUdAAAAAOluAEGw2QoLBChBxAEAQb7ZCgsKplwAAAAAAAAGfABB2NkKCwjwDQAAAAAkNQBB6tkKCxSnYgAAAAAAACbHAAAG3QAAAAArHQBBhtoKCwLldQBBltoKCwZkdygcpR4AQajaCgsCLh4AQbLaCgsK5vIAAAAAAACGoABB6toKCwKnWABB+NoKCwJIRQBBitsKCwqGwwAAAAAAAGQ3AEGg2woLAg4jAEGy2woLCiRbAAAAAAAAhCsAQcrbCgsGxl4JakQlAEHs2woLFqlnxrGuFycPAAAAAAlPh2UAAAAAi0UAQYzcCgsMijaEFUtChWkNHQZ7AEGs3AoLAmoSAEG+3AoLAiVDAEHK3AoLCGRrAAAAAElpAEHm3AoLAmehAEH+3AoLEEa5jEwFMQAAAAAAAMYg7gMAQaLdCgsFJF6pRAQAQbLdCgsCBVcAQcLdCgsCRGgAQc7dCgsCZGAAQerdCgsKJXMAAAAAAABFVABBiN4KCwSIJoY3AEGY3goLGKtkhhYAAAAAzSLnIQAAAADNGiY/AADnlwBBvN4KCwRoMOYhAEHq3goLEqbNSgWGCwAAZDkAAAAATCmmwgBBjN8KCxQqDkYCAAAAAAAAxtkAAAAAAACleABBut8KCwjGFgAAAAAqCABB2t8KCwKmeQBB5t8KCwgHKQAAAACJSQBBouAKCxRG3wAAAABIeCb4AAAAAAAAhyaLPwBB9OAKCwKISQBBguEKCwTFTCxjAEHE4QoLAkwkAEHa4QoLAgaOAEHw4QoLJIhj51kAAAAAyChFGgAAAAAAAKRXyV4FOwAAAAAAAGfzyiLmhgBBoOIKCxopPicFAAAAAEhPxQUoeAAASGWEQQAAAAAtBABB0uIKCwaFQgAApXwAQe7iCgsCpqIAQZbjCgsORqIAAOZTAAAAAAAARCYAQbjjCgsMq1bn4wAAAAAAAOdeAEHO4woLAofxAEHs4woLDBELxRYAAAAAAACH9QBBnuQKCwIkQQBBrOQKCwQJNSdrAEG45AoLCOhTBSkAACRCAEHK5AoLCoZZAACmvA4KZggAQdzkCgsEaQemEQBB7OQKCwLoYQBBruUKCwJGuwBBuOUKCwruKsc1aWTnk6hUAEG65goLBKapsAYAQcbmCgsCxkkAQeLmCgsCJykAQfLmCgsCpDoAQYjnCgsQjjkAAAAA5tkAAAAAaHiGKgBBoucKCwhmyAAAAABMHwBBtOcKCxzIUEUbAABH4AsAAAAAAGVHAADkOAAAAAAAAIZ+AEHo5woLDKlKJhQAAKQrAACGQQBBjOgKCwRLKAY2AEGc6AoLBKoo5RsAQaroCgsmxEYAAAAAAABHris8hjYAAAQGKDlFTIleRU0AAAAAAABlXgAAJ5gAQdroCgsCpBgAQfjoCgsICESFPW4NxzMAQZbpCgsC5H0AQaDpCgsIsAAAAAAAhsUAQcLpCgsCJFQAQeLpCgsCZuYAQfbpCgsCpBQAQYTqCgsEKWWmbgBBqOoKCwxJPgAAAAAAAEwmJQEAQcLqCgsGpDYqWkUSAEHe6goLAiYWAEHu6goLAiasAEGa6woLDgUZAADkdwAAAAAAAAbxAEHW6woLBmazAAAmPABB6OsKCwTKEYQKAEH26woLCuV+AAAAAAAAZCcAQYzsCgsC6V4AQZ7sCgsKBlkAAAAAAABG1wBBwOwKCwjIGwAAKnvHsABB/uwKCwYnn0pDR1gAQZTtCgsCbw4AQartCgsCp94AQbbtCgsY5zUqDCdTSQWnHQAAAAAAAAchAAAAAKgaAEHc7QoLCuk4AAAAAAAASHEAQYTuCgsGC04AAMhHAEGi7goLCkQsAAAAAAAAx8IAQcjuCgsUjwhnHWxapuIAAAAAAACndwAAxWcAQfTuCgsI8gIAAAAABT4AQYrvCgsGZkTpHQULAEGi7woLAsejAEG07woLFAkKh4YAAAAAzg4AAAAAAADrO0ciAEHe7woLCiQ+AAAAAKtTpyAAQfDvCgsCqAEAQf7vCgsS5mJIH0dQAAAAAAAAp7JqdaR2AEGq8AoLAkRmAEHU8AoLBMh6RykAQeDwCgsCKkQAQe7wCgsGZnYAAIaUAEH+8AoLAgRxAEGK8QoLAoarAEGy8QoLBKRWKy8AQdLxCgsK51YAAAAAKllHMABB5PEKCwQJEOfEAEH08QoLBA01p28AQaDyCgsCCHEAQazyCgsECUVGKABB0PIKCwaJAwbiLAYAQd7yCgsCBuUAQZLzCgsQpzQAAAAASTfmMwAAAAArJABBrPMKCwTOGcQNAEG68woLAqcZAEHs8woLBHcCZ8AAQfrzCgsGhqcAAEeVAEGQ9AoLAqxEAEGi9AoLAgbXAEG29AoLAuUnAEHA9AoLBBQOh5MAQdr0CgsC5ngAQe70CgsCh/IAQZT1CgsC6FsAQaj1CgsEK3CFEABBwPUKCxTKBMRoAAAAAAAAZS9IGwUBilIkfwBB4PUKCxDtDWYw6VCnbQAAAACqBsdiAEGA9goLAk45AEGO9goLDkZ3AAAAAAAARzEAAOaqAEG69goLAkRuAEHK9goLAiewAEHs9goLCMgEhw/KKucYAEGI9woLBIxahE4AQZT3CgsEiGRHIQBBovcKCwYHGgAA5gkAQbj3CgsCqFwAQc73CgsaxksAAMa6qWYmwgAAAADsEKUyAAAAAEgWhgwAQYL4CgsKJDwAAAAAAABGrABBpvgKCwzlYigEZ5kpawAAaDoAQdL4CgsC5DcAQeD4CgsEywoEEABB8PgKCxBoSQAAAAAAAIpWR38AAGQYAEGO+QoLAkbBAEGm+QoLCIZVAAAAACgrAEG6+QoLEKUtAABm0gAAAAAKOwAALjYAQdj5CgsPlwMAAAAAAACsfAAAKlhlAEH6+QoLAqUcAEGE+goLAsgMAEGO+goLBEZsyH8AQaT6CgsG9gYAAGgOAEGy+goLAqZ0AEHC+goLAsVXAEHS+goLFgbYUgOEPAAAAAAAACcXSk0mNAAAZmQAQf76CgsCxp0AQZr7CgsCJE8AQbb7CgsE5zvKIABBxvsKCwLGZwBB0PsKCwRLA8UIAEHk+woLEC8bAAAIUGYGAAAAAA0tR8YAQf77CgsCh1EAQYr8CgsCx18AQZT8CgsESCUnXABBrPwKCxDpUcUbSXEAAAAApn7oeyb7AEHE/AoLGOo+AAAAAAAAEhtFEwAAAAAAAIVZAACHaQBB5PwKCwSoTYYfAEHw/AoLAoldAEGY/QoLBe4MAABXAEG6/QoLEgdIAAAAAAAABlEAAAAAAABlKQBB5P0KCwwMTwAAAAAAAMhAZQ0AQYD+CgsCaWoAQYr+CgsCBD8AQaT+CgsE9ABlbgBBtv4KCwJFcwBByP4KCwRpCyV8AEHY/goLBggZZBBYAQBB+P4KCwSpLSezAEGE/woLDIoD5QwAAAAAyGOlfgBBoP8KCxDsBKfwAACmagAAAADqIeZAAEG4/woLDE4qAAAAAIQlyTplNABB0P8KCwKJaABB3v8KCwIm8gBB6v8KCwgkMQAAAACoLABB/P8KCwLrVwBBqoALCwJlMABBuIALCxJoCYVYqzjnqAAA5CUAAAAAimAAQdqACwsCpF0AQfaACwsKJoUAAAAAq1lGHABBioELCwZFb+41Rk4AQZiBCwsMSlgAAAAAAABtBkRXAEG6gQsLCIZnAAAAACoCAEHKgQsLAifxAEHugQsLAoYKAEGMggsLDHMD52xMPgAAqgwm4ABBpIILCwJqNgBBsIILCwjKeAAAKRCHzQBB0oILCwSnfMg+AEHuggsLBuRmAADn8ABB/IILCwRJDIfbAEGYgwsLDBgBAAALFMeCAACHPQBBsIMLCwQoEKYFAEHAgwsLBCgsx0UAQc6DCwsWJWIAAAAAAAAmj6kXAAAAAAAAVwMlLABB7oMLCwoG/QAAAAAAAMVLAEGYhAsLBBAE52oAQbaECwsaZvsAAAAAsgCEAAAAAACrOYdfAAAAAAAAJrUAQe6ECwsSprQAAAAAAAAGkgAAAAAAACYdAEGihQsLIuYfAAAAAAkbAAAAAAAAyyMAAAAAAAB3AAAAAAAAAGpaBEMAQc6FCwsKpyMAAAAAAAAHRgBB4oULCwJEVgBB7oULCwzHmwAAAADzBwAAKwQAQYSGCwsEDEHH6ABBoIYLCwLLTgBBqoYLCwJFRQBBtoYLCwIlfQBBwoYLCwLFNwBB0oYLCwompAAAAACpaIZPAEH8hgsLAssiAEGOhwsLAoRsAEGYhwsLAkp+AEHGhwsLCueZAAAEJgAARz8AQfyHCwsoVgMAAKgLB7BKY2RpC1gAAK0jRQ6oPEdwKRIAAGgCZ/4AAAAAAACn8QBBsogLCwIH2ABBxIgLCwJIXQBB1IgLCwRofIb1AEHuiAsLBsbBAABGbQBBnokLCxpEfwAAAAAAAMRlyw8AAAAABp4AAAAAyGVldwBBxokLCwKmegBB2IkLCwpocgUHAAAAAJQMAEH0iQsLAstPAEH+iQsLAkVcAEGSigsLAsVeAEG2igsLFgeLAAAAAM4aAAAAAAAAqRAAAI0YBxUAQdaKCwssBpAAAKebAAAAAEhDJhXqbAbjAAAAAKgzphAAAAAAAABGegAAAABsBaYLaS4AQY6LCwsKxUEpAwAATF7kKQBBoIsLCwLLFgBBuIsLCwToBCVLAEHKiwsLDKQWSC4AAAAAhs7ILABB6IsLCwgNFsYjAACHYgBB+osLCxLmmIhhxx9ofQZwAAAAAAAA57QAQbCMCwsCDF0AQbyMCwsQ0g8AACsFhGIAAAAAAAClTgBB4owLCwKlJABBqo0LCwaENK4Ehu0AQbiNCwsGzENHxKh3AEHMjQsLBKgu5wMAQdiNCwsEqg+kKABB6I0LCwhqKAAAAABmwQBBio4LCwIHmABBmI4LCwjPGCbuqU7nAQBBrI4LCxWPAmYJ60MnqQAAAAAAAKdCAAAAANUAQc6OCwsCRUMAQeaOCwsCRCoAQfCOCwsQcQEGAAAAAACKI2VSAAClewBBko8LCwgHagAAAABqPwBBqo8LCwaEF+t7hW4AQbiPCwsEkAfndwBBxo8LCxSmzgAAAABIcycqAADETwAAAACKPgBB8I8LCwLMFABBipALCwJHNABBsJALCwIIXwBBvpALCwKmnwBB9JALCwJIYABBhJELCwRqHiQLAEGakQsLDoauAAAFRgAAAABpAEbPAEHIkQsLEEpJAAAAAOeeAAAAAAAAJT8AQYaSCwsCpk8AQaqSCwsGZvMqBac3AEHAkgsLCigHpBcAAAAAai4AQdKSCwsKBEUAAGZuAABmcwBBopMLCwxnbQAAAAAAAIffMQYAQcSTCwsIqlIAAAAAJ/MAQdaTCwsCRmMAQYaUCwsK5o0AAAAAAAAlXQBBnpQLCwKFCgBBrpQLCwZFMwAABHoAQb6UCwsC5lcAQcyUCwsMahdFKAAAAAAAAGUcAEHglAsLCAlGAADzA2euAEHylAsLAkc6AEH8lAsLEGpQ5hQAAAAAAACGsgAAhTMAQZ6VCwsExotIRgBBrJULCwILIABBupULCwJm3QBBxpULCwjHlIkQAABPCABB4pULCwqkJwAAAAAAAOUHAEH6lQsLAma4AEGKlgsLAgQkAEGUlgsLAglMAEGmlgsLBiaZAACnlABBupYLCwKGtwBBxpYLCwQmVgoPAEHYlgsLBjcAAAAuKQBB5pYLCwJHHABB8pYLCwjn5wAAAACpOQBBgpcLCwJHqABBjpcLCwimCgAAAABuJQBBypcLCwpmkgAAAAAAAIR6AEHklwsLBKlP5SIAQfKXCwsCpCQAQfyXCwsECUIlAgBBiJgLCwG2AEG8mAsLAhYGAEHMmAsLAipLAEHamAsLBmVhAACEGABBipkLCwZGpStcBF4AQa6ZCwsOhzMOGAcKAAAAAAwBx7cAQc6ZCwsCJG0AQdqZCwsCZmgAQeSZCwsGCCDGBEp7AEH8mQsLCGoLJyDIIuVxAEGUmgsLBKhd5BIAQbCaCwsQqnsAAAAAxXsAAAAASQtFGABBypoLCwIlNQBB1poLCwLEYABB7JoLCxTMUGRnC14AAAAAAADJUgAAywKnAgBBjJsLCwzqC+YdAAAAAAAA5jUAQaCbCwsUDwBFbQAAAAArISYIAAAAAAAAxqgAQdqbCwsC5+sAQeqbCwsKJGUAAARXAABGhgBBmpwLCxzFTgAAAABIZAAAAAAAABMHB2EAAER5AAAAAKljAEHAnAsLFAoyAAAAAObzAAAAAC0FAABsAcYOAEHknAsLDGof50wAAAAAAACHggBBhp0LCwIlHABBqp0LCwJELgBBtJ0LCwYNDQcGKhoAQfKdCwsCRnQAQYqeCwsUxqAAAOZeAAAEDykwAAAAAAAAqjUAQa6eCwsChWYAQbyeCwsS6hgAAFcB5hIAAAAAAAAmX6gtAEHgngsLBNEFx4cAQeyeCwsYawEGy1YHBSsAAAAACX6G6QAAAAAAAAVvAEGinwsLAuRYAEHAnwsLAgk3AEHgnwsLDElyJu8AAMV3AACnbgBBhqALCxbkaYsiAADJJSQIAAAAAAAAxz8AAEe9AEGooAsLBAwTZCQAQcSgCwsESyOkSQBB4qALCwpEEAAAAADrOUUFAEH2oAsLAoUuAEGKoQsLAgVVAEGcoQsLDCh6pvkAAAAAAABEZQBBuqELCxLHrQAAAAAAAIRQAAAAAGpsxHoAQdqhCwsOh0MAAGcPAAAAAAAARvcAQfChCwsMqGLmTQAAZtcAAIaYAEGKogsLAgc8AEGiogsLAgZvAEG8ogsLBGglZ/kAQeyiCwsEimJmFgBB/KILCwTpNYUTAEG2owsLFqar9gQGCowYAAAAAGY/AAAAAAAAxlAAQdajCwsCx5cAQeCjCwsMy3MAAAAAAAApAEcOAEH2owsLAsQ3AEG+pAsLI0Y9AAAAAAAAZj0AAAbGAAAAAGg/Rx8AAAAAAADEE0kBRy0zAEH0pAsLHAkzhhyKawY8AABmYQAAAAAAAKRFAAAAAMgRpxgAQaalCwsaRrpwAUcviicmhAAAAABXAmZIayVHwQAAJBYAQdKlCwsCZTMAQdylCwsE6lrnNgBB6qULCwIHvwBB+KULCxBPBwAASjwAAAAAAAAuPwb0AEGepgsLAkUeAEGupgsLAiV3AEG4pgsLAktkAEHOpgsLCkUkAAAAAOtihQYAQe6mCwsCBA4AQfqmCwsIhoAAAAAAShEAQYqnCwsCZ+IAQZinCwsEynSm4wBBpKcLCwxoLsQEAAAAAAAAB6IAQc6nCwsCZVoAQeqnCwsCRqYAQfqnCwsG55wMJaUNAEGKqAsLAoZSAEGUqAsLBMkh5kkAQaaoCwsERogpCgBBsqgLCwLmMABBvKgLCwQoH0coAEHOqAsLAoawAEHkqAsLBMpBBU8AQfSoCwsEaB0GEgBBgqkLCwqGdQAAAAAAAIcGAEGoqQsLBKgmhRgAQbapCwsQB+8AAEehAADEVQAAAAAqTgBB3KkLCwKLMwBB5qkLCwJlBQBB8KkLCwZtAed4zF4AQZKqCwsChBsAQaiqCwsEKG1nAQBB1qoLCwdHbwAAAABNAEHuqgsLBsfdKjHlIABBgKsLCxBJZgc5AAAAAGgfRhYpMSUMAEGaqwsLBEZUDBUAQayrCwsE8hPmzABBwKsLCwhzB8d0AADkFwBB0KsLCwhJK6UUAAClbQBB9KsLCwIIEABBgqwLCwInogBBkKwLCxCOFAAAAAAAAPcBhxAoHieGAEHQrAsLDIgchii2BgAAAADHcQBB7KwLCwjJWydYKBskCQBBhK0LCwiIT6UwAAAmsABBlq0LCwKmbwBBoK0LCwKoAgBBvK0LCwosWgAAAAAAAOh3AEHOrQsLAiazAEHorQsLBMwVpRcAQYCuCwsMyAJGAAAAAADrZUcsAEGUrgsLDCw1AABoM4YHswFnyQBBuq4LCw7GuItKAAAAAMYxAABHBgBB7K4LCwQLGOeQAEH6rgsLBARK6hsAQYyvCwsEqB4HCABBmK8LCw7OIgAAiEsAAAAAxrsqIQBBtK8LCwTMJmfcAEHarwsLAiUQAEHurwsLAoapAEGAsAsLAi0/AEGQsAsLCAt9AAAAAMZ4AEG2sAsLAuZoAEHSsAsLAqVPAEHwsAsLAslJAEH6sAsLFgUjAAAAAAAARq0AAAAAAAAlIwAAB4UAQZqxCwsqpnIAAAAA9QFnRQAAAADJfmbrAAAAAAAApngAAAAArQ4nBAAAAAAAACVkAEHOsQsLBqRtAAAGZwBB6rELCwKkLQBB+LELCxDLYOUAAADGNQAAAADqHAUtAEGYsgsLDMlmhlwAAAAAKHSnuQBByrILCwKEagBB1LILCwIpAgBB4rILCwImfQBB7LILCzxvBORnAAAAAAwwJzkAAAAAAADmqAAAZwMAAAAACHsAAAkhBUUAACQyAAAAAAAAxlgAAGaXAAAAAHcBpBkAQcCzCwsOqgBnSAAApFkAAAAAaH4AQeqzCwsCpGQAQYK0CwsKJD0AAAAAAAAGgABBnrQLCwKHbwBBuLQLCwwpOwAAAAAAAGxSBmwAQdC0CwsIChNnZgAAZwYAQey0CwsCSRAAQfi0CwsCqBwAQYK1CwsCRFQAQZa1CwsSRGCLBuUJAAAAAAAARtAAACYzAEG2tQsLBmYYAAAEVgBB0rULCwYlb8gVBBQAQfK1CwsWBm0AAMZyKEeHIQAAAAAAAAaZAAAmqgBBmrYLCwLFLgBBprYLCwJlWwBBsLYLCwLLFwBBwLYLCwZKGUU/iTcAQYC3CwsIaGgAADcCx74AQZK3CwsMpzsAAAAASnzGq5IJAEGstwsLCGgs5yMAAKatAEHAtwsLDOg4BTAAAAAAAAAFIQBB5LcLCwIofQBB/rcLCw6GAwAAAAAAAGRq7BXnLABBnLgLCwTqI4RcAEHGuAsLAiZrAEHkuAsLBGlmRq8AQfS4CwsEzRUFHABBprkLCwInzgBBzLkLCwToUaRHAEHguQsLBAsQ5ysAQfq5CwsCxXIAQaK6CwsC5lUAQba6CwsKpr4AAAAAAAAkfgBBzroLCwKEKgBB5LoLCwaqawAACxYAQfy6CwsIEQwlewAA5EwAQZK7CwsC5+8AQZ67CwsCZo0AQa67CwsC5B4AQbi7CwsEaAPnAgBBzLsLCwLNBABB9rsLCwLkfgBBgrwLCwIGiABBjrwLCwImxgBBmLwLCxRqHAAAAAAAAMg7Bi0AAAAAAADnCwBBuLwLCwpoVwAAAAAAAE4DAEHKvAsLCueLAAAAAAAAZFwAQfS8CwsEqVxkCABBhL0LCwIIOgBBsL0LCxBOBQAACgwAAAAAAABQA8UqAEHMvQsLCGgZAAAAACQ4AEHovQsLBAkg5iYAQfi9CwsCyl4AQYq+CwsCZWcAQZS+CwsIrEgFCAAA54IAQaa+CwsCBiQAQbK+CwsC5qsAQcq+CwsCp6MAQdy+CwsEDC+GAQBB6r4LCw5HEwAABr4AACbb7AvGPgBBhr8LCwakIWgkp5UAQcC/CwsC9AEAQcq/CwsGpqcAACZ/AEHgvwsLDCprRuKoQgAAAACmtQBBlMALCwSIaGQaAEG4wAsLBnACAACIEwBBxsALCwIlfgBB4sALCwKGZgBB9MALCxAXAIUcAAAAAAAAZ40AAIafAEGcwQsLDCpqBuAAAAAAqTBlJABB7MELCwqqQQAAAAAAAK44AEH+wQsLDkdTAAAAAAAAxDQRAGUsAEGUwgsLBqsUAACJIABBusILCwIlbABBysILCw4mywAAAAAAAEUdAADnrABB6MILCwxIJgAAAAAAAExkJvAAQYDDCwsCjRYAQYrDCwsEB6TJZQBBosMLCyBlWAAAAAAAAKe6agGnB6xbAAAAAAAAqSoAAAAAAABODABB2MMLCwLIfgBB6MMLCyDPEcYMAAAAANcDAAAAAOdmAACmggAAAAAAAEfxAAAGvQBBlsQLCwjmCgAAZpupHgBBrMQLCwQIBocIAEHAxAsLHMgPpwkpTkR1AAAAAOorAAAAAAAAyhWG0AAAZ1gAQfLECwsCZTIAQYzFCwsI1wAAAAAARiMAQaDFCwsMCQGEBQAAAABqLWcOAEHExQsLDClEJ18AAAAAaWjGnABB2MULCwRIdAbyAEHsxQsLAqxRAEH4xQsLGAgrAAAAAGa5K1QmFwAAAACIOacLKF7FOwBBmsYLCwKFfwBBqsYLCwrkDAAAAAAAAGQ+AEHAxgsLAuoZAEHexgsLBgQMAAAHeQBBhMcLCwFqAEGOxwsLAucxAEGYxwsLBAkcZkYAQabHCwsCBlgAQb7HCwsC5sIAQejHCwsCqGsAQfLHCwsGRnasKUVdAEGGyAsLAsRxAEGiyAsLAoZRAEHKyAsLAiauAEHqyAsLAka9AEH0yAsLDioZAADKP6dZAAAAAAhCAEGKyQsLGoQCAAAAAAAAZpwAAAAAAABmkQAAAAAAAGYmAEGuyQsLAmeIAEHGyQsLCqU1AAAAAAAAJG4AQdrJCwsCpE0AQerJCwsKBlwAAIYrAACFbABB/MkLCwwoNgAAAAAAAGpg57oAQZDKCwsC6hoAQZzKCwsCjQ8AQbTKCwsC7AYAQcTKCwsOEw7HBwAABGvMIQAAiEcAQdrKCwsCZnUAQerKCwsCBiwAQf7KCwsC5FAAQYjLCwsCUgEAQZjLCwsCihsAQbTLCwsgDjoAAAAApA0AAAAAAABG2gAAAAAAAGZAAAAAAAAAx0YAQeDLCwsSaggEBQAAAABJWgd8AAAAAGtzAEH+ywsLAiePAEGWzAsLAgdHAEG0zAsLAukeAEG+zAsLCKRQAAAAAAwpAEHezAsLAmaqAEHqzAsLAgagAEGAzQsLCPYAhQMJLUcUAEGezQsLDoZfAAAAACloxmsAAAVrAEG4zQsLKgpchQsAAAAAiHYG8wAA5rjqB8VJAAAAAAAAJr4AAAAAAACmWAAAAAC0BwBBlM4LCwJpPABBns4LCwKmlwBBqM4LCwyxA8R/AAAH1gAARjoAQc7OCwsCZFsAQdzOCwsCbhUAQYDPCwsCKh4AQZjPCwsEiHim+gBBus8LCwqGiQAAAAAAAEd3AEHWzwsLHsf0AAAAAEgEpkRMfAAAAAAnODIRR2oAAAAAyFNEEgBB/M8LCwTJQOYTAEGQ0AsLCO0SAAAAAGaAAEGs0AsLAup6AEG20AsLAid8AEHk0AsLBKoRpz4AQfrQCwsChTgAQZDRCwsEKB2lEgBBpNELCwrMSAAAAAAAAChkAEG60QsLDMQIAAAAACouAACQBABB1NELCwiMGSdayjUnHgBBstILCw4m4xACxoaqfwAAAADFMgBBytILCwKmCABB1tILCwrH5AAAAAAAAAdnAEHy0gsLAkVnAEGY0wsLAglmAEG60wsLCgV9qFmn5gAA5zQAQdTTCwsYyD8AAAAABoMAAAAAAABGTQAAAAAAAARBAEH00wsLAsh7AEGm1AsLAiQoAEG21AsLEueNAAAAAChzAAAAAAAACQOlMQBB5tQLCx4GawAAAAAAAGcRTSOlegAABSQAAAAAAABH7GhRBAcAQZTVCwsCrCAAQazVCwsOKE1mrwAAppYAAAAAa0YAQcrVCwsCpikAQdbVCwsCJC4AQerVCwsKxk0AAAAAAADmrwBBjNYLCwgKTgcUAABkLQBB6NYLCxhpTQAAyxWGJAAAAAAKUgZNAAAAAAAAplUAQZrXCwsK51AAAAAAAADlTgBBytcLCyBmngAAAAAAAKbgAAAAAAAAh9IAAAAAqToAAGhCx5krCQBB/NcLCwKMIQBBiNgLCwjJDMZFqg0lCABBuNgLCwJoSgBBxNgLCwTKLgflAEHU2AsLBwsCAACpMsYAQf7YCwsGJW4AAOa6AEGW2QsLAsURAEGs2QsLCK8CRTrsAiUgAEHA2QsLBKwJhzIAQdDZCwsCCFkAQfTZCwsMiGsG5wAAAACMUaZOAEGI2gsLCLgBJC8AAEfmAEGy2gsLCqa7AAAAAAAAR+4AQdbaCwsGZD1KHWQVAEHk2gsLBOpOR5QAQYDbCwsGaXQAAEsVAEGa2wsLAmbGAEG+2wsLAqVfAEHq2wsLCAU1AAAAAEhZAEH62wsLAqdVAEGI3AsLAqojAEGW3AsLAqQ1AEGs3AsLBOoIRwIAQcTcCwsEjg6HZwBB1NwLCwIqJABB5twLCwpkVAAAAAAAAAayAEH63AsLCuZQAAAAAAAAxqYAQaDdCwsEiwQmGgBBst0LCwrEKgAAAAAAAAR0AEHG3QsLCsfl1A4Ha8tRxCcAQfzdCwsQEwBnculvxjgAAAAALEAnsgBBmN4LCwbqYgAALBMAQareCwsIhGOpcaY3LSsAQcLeCwsSRkgAAAAAAABmrQAAAAAAAGVFAEHg3gsLAshfAEH23gsLAqdDAEGS3wsLAgZuAEGe3wsLDEa8AAAAAOt6AAAJYABBst8LCwIESQBB2N8LCwIsXABB9t8LCwZEHMgDRTUAQaTgCwsCsw4AQdLgCwsOxzkAAAAAAAAkMAAAxTEAQfLgCwsCZCsAQfzgCwsIqQ9nnYhQBREAQaLhCwsCpzoAQa7hCwsC56oAQcbhCwsC5VkAQeLhCwsC5rEAQfbhCwsCpl0AQYDiCwsESESnUABBkOILCwisIgAAAABmnwBBpuILCxSmOAhDZEUAAAAAantnigAAAABKCwBByuILCwKEawBB+uILCwYkIAAAB90AQaLjCwsC5oUAQb7jCwsGZgoAAGRoAEHS4wsLAsb6AEGA5AsLAglXAEGg5AsLBOkLx9YAQbLkCwsGRQMAAMREAEHC5AsLAqZwAEHQ5AsLEMhmAAAAAEYPAAAAAAAA5mQAQerkCwsQxyAAAIVNKEtEBAAAAABJFQBBguULCwIkQwBBluULCxaFKQAAAAAPGqbuyBamIAAAAAAAACbXAEG25QsLAqR0AEHa5QsLBibJAADnbwBB/uULCwqFZQAAAADJdYbvAEGW5gsLDkdhAAAAAAAAJBEAAEakAEGy5gsLAqbPAEHC5gsLAubGAEHQ5gsLAotmAEH85gsLCykXJQsAAAaRzBzFAEGo5wsLBOsHpgMAQdbnCwsOhtkAAAAAKBZHFQAAJvUAQfznCwsIawsAACwChwUAQZboCwsGxSEAAAUlAEGq6AsLAma+AEHA6AsLA6te5ABB2OgLCwRKQodJAEHu6AsLAkZiAEH66AsLCodIaE4HC+k3JgcAQZTpCwsEqGnmWwBBoukLCxblA+wBAACKOSVBjAEGNQAAAAAAAMeiAEHG6QsLDmVKAAAAAAAApQGJRCYMAEHy6QsLBge4izjn3ABBjOoLCwJxDgBBmuoLCwbmwAAA54oAQajqCwsUKAAAAOgsBT0AAGYhAAAAAAAA5vcAQcrqCwsUZpAAAObEAADGs+kDAAAAACUvsQwAQfjqCwsCiTsAQYrrCwsC5/wAQZbrCwsCh+UAQaDrCwsEcARlaQBBsusLCx5ERQAAAAAAAAVDK07lGQAAZ6sAAAAAAAAENShiByoAQfbrCwsCBHAAQZjsCwsEawPHXQBBpOwLCwLMHQBBsOwLCwLsLwBBwuwLCwZkS6paZAEAQdrsCwsChDsAQebsCwsCBsIAQfbsCwsCBFUAQZjtCwsCazYAQbrtCwsQ57IAAAAAtAEFDgAAAACKLABB3u0LCwxm9QAAAAAAAIabTAIAQfbtCwsCZmwAQYTuCwsMSQaEWCoJB0oAAMQ+AEGc7gsLBCoUZisAQajuCwsWyDokBAAAxx5oR0YBAAAmOshMAACqHQBByO4LCwgNA0UCAABGPwBB3O4LCwQ2BKQmAEH07gsLAokRAEH+7gsLCgaEAAAAAAAABtUAQZbvCwsChoEAQarvCwsKZqQKNsUKCCGFQQBB1O8LCwJqDQBB4O8LCwxqD+RzAAAAAKp3p48AQfbvCwsIRWEAAMU+iBgAQYbwCwsCBqQAQZbwCwsC5WoAQazwCwsMqgUHrwAAAAAAAGR9AEHC8AsLAiaJAEHU8AsLBChEh0wAQfDwCwsCywYAQfrwCwsKhxUAAAAAAACmgABBlvELCxgERwAAAAAAAIRbKk0AAAAAxnnNC6d7qFsAQbrxCwsKp98AAAAALFPn+wBB0PELCwTKZOUjAEHe8QsLAmbAAEH08QsLBM0WZ8MAQYryCwsChzwAQZbyCwsC5soAQajyCwsIyG0m5QAAJsQAQcDyCwsIrAsAAGhZRHwAQdLyCwsG5AcAAORJAEHm8gsLAqVdAEHw8gsLDGxExS0AAAAAAABn2gBBivMLCwInCwBBrvMLCyLmtgAAhmCqbwAAAAAAABQGAAAAAKV1AAAAAEpWJ99LDQc3AEHk8wsLCBEEAACJKQQbAEG69AsLHoVqAAAAAAo0h0YAAMRyAACG3AAAAAB4AAAAAABFIgBB4PQLCwKoPgBB8PQLCxJqauVcAAAkBgAA5m0AAAAA6AUAQY71CwsGJGwAAEaWAEGg9QsLBOkFBSIAQbr1CwsC5rUAQcT1CwsEaW/n7gBB6vULCwIkXwBB/vULCwzkMgAA5xYAAAAATT0AQZj2CwsEawRmWwBBqvYLCwJkZgBBxvYLCwLkRwBB0PYLCwyxBUdmAAAAAKsJxhsAQeT2CwsQLGoG6wAAAAAAACZPAACGowBBiPcLCwLKCgBBpvcLCwIkZgBBuvcLCwpFbgAAAAAAAEZyAEHY9wsLDCpsAAAAAEQ16DFGBwBB8PcLCwRJQ8cMAEGW+AsLAodtAEHI+AsLCmkRxUYAAOcHkgEAQez4CwsEaABGDgBBgPkLCwIISABBkvkLCwKldABByvkLCwKGVgBB5PkLCwIKXgBB9vkLCwzkLgAAZn4AAAAACQwAQZT6CwsCjRIAQaz6CwsMKCoHB0pTAADIHkUxAEHI+gsLCqk2AAAAAAAASj8AQdr6CwsKZn0AAGeRAAAEKQBB9PoLCwIIfQBBgPsLCwQIXaQMAEGO+wsLDsVaAAAAAAoWAABMEiYBAEHC+wsLAuRoAEHQ+wsLAuwbAEGE/AsLDNIeZvGrAwAAAABn3QBBmvwLCwbGacoApRMAQbL8CwsOZW0AAAAAqTulYCwW5E8AQd78CwsCZtoAQej8CwsIzRMmbQAAZFIAQZb9CwsC5TAAQbD9CwsKiFNkbgAAxgmMTgBB0v0LCwaGtgAARngAQeL9CwsChTkAQYD+CwsYSwTkGAAAAAAAAIYwTjsAAOshAACpKQZMAEGk/gsLDDYGAACMewAAaFgmTQBBvv4LCwKGXgBByv4LCwLmxQBB4P4LCwKrIwBB/v4LCwIHKwBBkP8LCwRqQKfVAEGk/wsLAokyAEGu/wsLAoQ+AEHC/wsLBIUICxsAQdT/CwsUCD0mLAAAAAApFocdAAAAAEw5RD0AQfT/CwsUjF4GvAAApl4AAOfYAAAAAIgNxUoAQZSADAs5CAAAAAQAAAAMAAAAAgAAAAoAAAAGAAAADgAAAAEAAAAJAAAABQAAAA0AAAADAAAACwAAAAcAAAAPAEHogAwLRQEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAwAAAAOAAAAGABB0IEMCx0BAAAAAQAAAAIAAAACAAAAAwAAAAMAAAAEAAAABABBkIIMCz0BAAAAAQAAAAIAAAACAAAAAwAAAAMAAAAEAAAABAAAAAUAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAAYAEGQgwwLzQEBAAAAAQAAAAIAAAACAAAAAwAAAAMAAAAEAAAABAAAAAUAAAAFAAAABgAAAAYAAAAHAAAABwAAAAgAAAAIAAAACQAAAAkAAAAKAAAACgAAAAsAAAALAAAADAAAAAwAAAANAAAADQAAAA4AAAAOAAAADwAAAA8AAAAQAAAAEAAAABEAAAARAAAAEgAAABIAAAATAAAAEwAAABQAAAAUAAAAFQAAABUAAAAWAAAAFgAAABcAAAAXAAAAGAAAABgAAAAAAAAAAQAAAAIAAAADAEH4hAwLFQEAAAABAAAAAQAAAAEAAAABAAAAAQBBoIUMC0L/////AQAAAP7///8CAAAA/f///wMAAAD/////AQAAAP7///8CAAAA/f///wMAAAABAgMEAAURBhAHCAkKCwwNDg8AQfCFDAsVhAAAADkAAAAXAAAACgAAAAQAAAABAEGUhgwL+RUEAAAACAAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAACwAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAA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AAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAAsAAAAAAAAAGwAAAAAAAAArAAAAAAAAADsAAAAAAAAAywIAAAAAAADLBgAAAAAAAMsKAAAAAAAAyw4AAAAAAADbAgAAAAAAANsGAAAAAAAA2woAAAAAAADbDgAAAAAAAOsCAAAAAAAA6wYAAAAAAADrCgAAAAAAAOsOAAAAAAAA+wIAAAAAAAD7BgAAAAAAAPsKAAAAAAAA+w4AAAAAAADLsgAAAAAAAMuyAQAAAAAAy7ICAAAAAADLsgMAAAAAAMu2AAAAAAAAy7YBAAAAAADLtgIAAAAAAMu2AwAAAAAAy7oAAAAAAADLugEAAAAAAMu6AgAAAAAAy7oDAAAAAADLvgAAAAAAAMu+AQAAAAAAy74CAAAAAADLvgMAAAAAANuyAAAAAAAA27IBAAAAAADbsgIAAAAAANuyAwAAAAAA27YAAAAAAADbtgEAAAAAANu2AgAAAAAA27YDAAAAAADbugAAAAAAANu6AQAAAAAA27oCAAAAAADbugMAAAAAANu+AAAAAAAA274BAAAAAADbvgIAAAAAANu+AwAAAAAA67IAAAAAAADrsgEAAAAAAOuyAgAAAAAA67IDAAAAAADrtgAAAAAAAOu2AQAAAAAA67YCAAAAAADrtgMAAAAAAOu6AAAAAAAA67oBAAAAAADrugIAAAAAAOu6AwAAAAAA674AAAAAAADrvgEAAAAAAOu+AgAAAAAA674DAAAAAAD7sgAAAAAAAPuyAQAAAAAA+7ICAAAAAAD7sgMAAAAAAPu2AAAAAAAA+7YBAAAAAAD7tgIAAAAAAPu2AwAAAAAA+7oAAAAAAAD7ugEAAAAAAPu6AgAAAAAA+7oDAAAAAAD7vgAAAAAAAPu+AQAAAAAA+74CAAAAAAD7vgMAAAAAAMuyLAAAAAAAy7JsAAAAAADLsqwAAAAAAMuy7AAAAAAAy7ItAAAAAADLsm0AAAAAAMuyrQAAAAAAy7LtAAAAAADLsi4AAAAAAMuybgAAAAAAy7KuAAAAAADLsu4AAAAAAMuyLwAAAAAAy7JvAAAAAADLsq8AAAAAAMuy7wAAAAAAy7YsAAAAAADLtmwAAAAAAMu2rAAAAAAAy7bsAAAAAADLti0AAAAAAMu2bQAAAAAAy7atAAAAAADLtu0AAAAAAMu2LgAAAAAAy7ZuAAAAAADLtq4AAAAAAMu27gAAAAAAy7YvAAAAAADLtm8AAAAAAMu2rwAAAAAAy7bvAAAAAADLuiwAAAAAAMu6bAAAAAAAy7qsAAAAAADLuuwAAAAAAMu6LQAAAAAAy7ptAAAAAADLuq0AAAAAAMu67QAAAAAAy7ouAAAAAADLum4AAAAAAMu6rgAAAAAAy7ruAAAAAADLui8AAAAAAMu6bwAAAAAAy7qvAAAAAADLuu8AAAAAAMu+LAAAAAAAy75sAAAAAADLvqwAAAAAAMu+7AAAAAAAy74tAAAAAADLvm0AAAAAAMu+rQAAAAAAy77tAAAAAADLvi4AAAAAAMu+bgAAAAAAy76uAAAAAADLvu4AAAAAAMu+LwAAAAAAy75vAAAAAADLvq8AAAAAAMu+7wAAAAAA27IsAAAAAADbsmwAAAAAANuyrAAAAAAA27LsAAAAAADbsi0AAAAAANuybQAAAAAA27KtAAAAAADbsu0AAAAAANuyLgAAAAAA27JuAAAAAADbsq4AAAAAANuy7gAAAAAA27IvAAAAAADbsm8AAAAAANuyrwAAAAAA27LvAAAAAADbtiwAAAAAANu2bAAAAAAA27asAAAAAADbtuwAAAAAANu2LQAAAAAA27ZtAAAAAADbtq0AAAAAANu27QAAAAAA27YuAAAAAADbtm4AAAAAANu2rgAAAAAA27buAAAAAADbti8AAAAAANu2bwAAAAAA27avAAAAAADbtu8AAAAAANu6LAAAAAAA27psAAAAAADbuqwAAAAAANu67AAAAAAA27otAAAAAADbum0AAAAAANu6rQAAAAAA27rtAAAAAADbui4AAAAAANu6bgAAAAAA27quAAAAAADbuu4AAAAAANu6LwAAAAAA27pvAAAAAADbuq8AAAAAANu67wAAAAAA274sAAAAAADbvmwAAAAAANu+rAAAAAAA277sAAAAAADbvi0AAAAAANu+bQAAAAAA276tAAAAAADbvu0AAAAAANu+LgAAAAAA275uAAAAAADbvq4AAAAAANu+7gAAAAAA274vAAAAAADbvm8AAAAAANu+rwAAAAAA277vAAAAAADrsiwAAAAAAOuybAAAAAAA67KsAAAAAADrsuwAAAAAAOuyLQAAAAAA67JtAAAAAADrsq0AAAAAAOuy7QAAAAAA67IuAAAAAADrsm4AAAAAAOuyrgAAAAAA67LuAAAAAADrsi8AAAAAAOuybwAAAAAA67KvAAAAAADrsu8AAAAAAOu2LAAAAAAA67ZsAAAAAADrtqwAAAAAAOu27AAAAAAA67YtAAAAAADrtm0AAAAAAOu2rQAAAAAA67btAAAAAADrti4AAAAAAOu2bgAAAAAA67auAAAAAADrtu4AAAAAAOu2LwAAAAAA67ZvAAAAAADrtq8AAAAAAOu27wAAAAAA67osAAAAAADrumwAAAAAAOu6rAAAAAAA67rsAAAAAADrui0AAAAAAOu6bQAAAAAA67qtAAAAAADruu0AAAAAAOu6LgAAAAAA67puAAAAAADruq4AAAAAAOu67gAAAAAA67ovAAAAAADrum8AAAAAAOu6rwAA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AAAAy7otCwAAAADLui0bAAAAAMu6LSsAAAAAy7otOwAAAADLum0LAAAAAMu6bRsAAAAAy7ptKwAAAADLum07AAAAAMu6rQsAAAAAy7qtGwAAAADLuq0rAAAAAMu6rTsAAAAAy7rtCwAAAADLuu0bAAAAAMu67SsAAAAAy7rtOwAAAADLui4LAAAAAMu6LhsAAAAAy7ouKwAAAADLui47AAAAAMu6bgsAAAAAy7puGwAAAADLum4rAAAAAMu6bjsAAAAAy7quCwAAAADLuq4bAAAAAMu6risAAAAAy7quOwAAAADLuu4LAAAAAMu67hsAAAAAy7ruKwAAAADLuu47AAAAAMu6LwsAAAAAy7ovGwAAAADLui8rAAAAAMu6LzsAAAAAy7pvCwAAAADLum8bAAAAAMu6bysAAAAAy7pvOwAAAADLuq8LAAAAAMu6rxsAAAAAy7qvKwAAAADLuq87AAAAAMu67wsAAAAAy7rvGwAAAADLuu8rAAAAAMu67zsAAAAAy74sCwAAAADLviwbAAAAAMu+LCsAAAAAy74sOwAAAADLvmwLAAAAAMu+bBsAAAAAy75sKwAAAADLvmw7AAAAAMu+rAsAAAAAy76sGwAAAADLvqwrAAAAAMu+rDsAAAAAy77sCwAAAADLvuwbAAAAAMu+7CsAAAAAy77sOwAAAADLvi0LAAAAAMu+LRsAAAAAy74tKwAAAADLvi07AAAAAMu+bQsAAAAAy75tGwAAAADLvm0rAAAAAMu+bTsAAAAAy76tCwAAAADLvq0bAAAAAMu+rSsAAAAAy76tOwAAAADLvu0LAAAAAMu+7RsAAAAAy77tKwAAAADLvu07AAAAAMu+LgsAAAAAy74uGwAAAADLvi4rAAAAAMu+LjsAAAAAy75uCwAAAADLvm4bAAAAAMu+bisAAAAAy75uOwAAAADLvq4LAAAAAMu+rhsAAAAAy76uKwAAAADLvq47AAAAAMu+7gsAAAAAy77uGwAAAADLvu4rAAAAAMu+7jsAAAAAy74vCwAAAADLvi8bAAAAAMu+LysAAAAAy74vOwAAAADLvm8LAAAAAMu+bxsAAAAAy75vKwAAAADLvm87AAAAAMu+rwsAAAAAy76vGwAAAADLvq8rAAAAAMu+rzsAAAAAy77vCwAAAADLvu8bAAAAAMu+7ysAAAAAy77vOwAAAADbsiwLAAAAANuyLBsAAAAA27IsKwAAAADbsiw7AAAAANuybAsAAAAA27JsGwAAAADbsmwrAAAAANuybDsAAAAA27KsCwAAAADbsqwbAAAAANuyrCsAAAAA27KsOwAAAADbsuwLAAAAANuy7BsAAAAA27LsKwAAAADbsuw7AAAAANuyLQsAAAAA27ItGwAAAADbsi0rAAAAANuyLTsAAAAA27JtCwAAAADbsm0bAAAAANuybSsAAAAA27JtOwAAAADbsq0LAAAAANuyrRsAAAAA27KtKwAAAADbsq07AAAAANuy7QsAAAAA27LtGwAAAADbsu0rAAAAANuy7TsAAAAA27IuCwAAAADbsi4bAAAAANuyLisAAAAA27IuOwAAAADbsm4LAAAAANuybhsAAAAA27JuKwAAAADbsm47AAAAANuyrgsAAAAA27KuGwAAAADbsq4rAAAAANuyrjsAAAAA27LuCwAAAADbsu4bAAAAANuy7isAAAAA27LuOwAAAADbsi8LAAAAANuyLxsAAAAA27IvKwAAAADbsi87AAAAANuybwsAAAAA27JvGwAAAADbsm8rAAAAANuybzsAAAAA27KvCwAAAADbsq8bAAAAANuyrysAAAAA27KvOwAAAADbsu8LAAAAANuy7xsAAAAA27LvKwAAAADbsu87AAAAANu2LAsAAAAA27YsGwAAAADbtiwrAAAAANu2LDsAAAAA27ZsCwAAAADbtmwbAAAAANu2bCsAAAAA27ZsOwAAAADbtqwLAAAAANu2rBsAAAAA27asKwAAAADbtqw7AAAAANu27AsAAAAA27bsGwAAAADbtuwrAAAAANu27DsAAAAA27YtCwAAAADbti0bAAAAANu2LSsAAAAA27YtOwAAAADbtm0LAAAAANu2bRsAAAAA27ZtKwAAAADbtm07AAAAANu2rQsAAAAA27atGwAAAADbtq0rAAAAANu2rTsAAAAA27btCwAAAADbtu0bAAAAANu27SsAAAAA27btOwAAAADbti4LAAAAANu2LhsAAAAA27YuKwAAAADbti47AAAAANu2bgsAAAAA27ZuGwAAAADbtm4rAAAAANu2bjsAAAAA27auCwAAAADbtq4bAAAAANu2risAAAAA27auOwAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+PwABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/AEGEjw0L/AEBAQEBAgICAgMDAwMEBAQEBQUFBQYGBgYHBwcHCAgICAkJCQkKCgoKCwsLCwwMDAwNDQ0NDg4ODg8PDw8QEBAQERERERISEhITExMTFBQUFBUVFRUWFhYWFxcXFxgYGBgZGRkZGhoaGhsbGxscHBwcHR0dHR4eHh4fHx8fICAgICEhISEiIiIiIyMjIyQkJCQlJSUlJiYmJicnJycoKCgoKSkpKSoqKiorKysrLCwsLC0tLS0uLi4uLy8vLzAwMDAxMTExMjIyMjMzMzM0NDQ0NTU1NTY2NjY3Nzc3ODg4ODk5OTk6Ojo6Ozs7Ozw8PDw9PT09Pj4+Pj8/Pz8AQYmTDQsFBAQAAAQAQaCTDQvgAQgMEAwMFAwQGBwMDCAMJAwsLCwsLCwsLCwsICAYKBwMDDA0NDQwNDQ0MDQ0NDQ0MDQ0NDQ0MDQ0NDQ0GAwcDAwMODw8PDg8PDw4PDw8PDw4PDw8PDw4PDw8PDwYDBwMAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAECAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAEGhlQ0LXgEBAQEBAQEBAQEBAQEBAQICAgICAgICAgIBAQEBAQEBAgICAgICAgICAgICAgICAgICAgICAgICAgIBAQEBAQEDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwEBAQEAQeCWDQugBAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAgICAgICAgICAgICAgICBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoMDAwMDAwMDAwMDAwMDAwOAABAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQYGBgYGBgYGBgYGBgYGBgcAQZibDQuGAgEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAwAAAAOAAAAGAAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAIAAAACgAAAA4AAAASAAAAGgAAACIAAAAyAAAAQgAAAGIAAACCAAAAwgAAAEIBAABCAgAAQgQAAEIIAABCGAAAQlgAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAwAAAAOAAAAEgAAABYAAAAeAAAAJgAAADYAAABGAAAAZgAAAIYAAADGAAAARgEAAEYCAABGBAAARggAQcCdDQvNFAEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAABgAAAABAAAAAgAAAAUAAAACAAAACQAAAAIAAAANAAAAAgAAABEAAAADAAAAGQAAAAMAAAAhAAAAAwAAACkAAAADAAAAMQAAAAQAAABBAAAABAAAAFEAAAAEAAAAYQAAAAQAAABxAAAABQAAAJEAAAAFAAAAsQAAAAUAAADRAAAABQAAAPEAAAAGAAAAMQEAAAYAAABxAQAABwAAAPEBAAAIAAAA8QIAAAkAAADxBAAACgAAAPEIAAALAAAA8RAAAAwAAADxIAAADQAAAPFAAAAYAAAACQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsAAAABgACAAUAAQAHAAMABIAAgAaAAoAFgAGAB4ADgARAAEAGQAJABUABQAdAA0AEwADABsACwAXAAcAHwAPABCAAIAYgAiAFIAEgByADIASgAKAGoAKgBaABoAegA6AEYABgBmACYAVgAWAHYANgBOAA4AbgAuAF4AHgB+AD4AQQABAGEAIQBRABEAcQAxAEkACQBpACkAWQAZAHkAOQBFAAUAZQAlAFUAFQB1ADUATQANAG0ALQBdAB0AfQA9AEMAAwBjACMAUwATAHMAMwBLAAsAawArAFsAGwB7ADsARwAHAGcAJwBXABcAdwA3AE8ADwBvAC8AXwAfAH8APwBAgACAYIAggFCAEIBwgDCASIAIgGiAKIBYgBiAeIA4gESABIBkgCSAVIAUgHSANIBMgAyAbIAsgFyAHIB8gDyAQoACgGKAIoBSgBKAcoAygEqACoBqgCqAWoAagHqAOoBGgAaAZoAmgFaAFoB2gDaAToAOgG6ALoBegB6AfoA+gEGAAYBhgCGAUYARgHGAMYBJgAmAaYApgFmAGYB5gDmARYAFgGWAJYBVgBWAdYA1gE2ADYBtgC2AXYAdgH2APYBDgAOAY4AjgFOAE4BzgDOAS4ALgGuAK4BbgBuAe4A7gEeAB4BngCeAV4AXgHeAN4BPgA+Ab4AvgF+AH4B/gD+AQEAAQGBAIEBQQBBAcEAwQEhACEBoQChAWEAYQHhAOEBEQARAZEAkQFRAFEB0QDRATEAMQGxALEBcQBxAfEA8QEJAAkBiQCJAUkASQHJAMkBKQApAakAqQFpAGkB6QDpARkAGQGZAJkBWQBZAdkA2QE5ADkBuQC5AXkAeQH5APkBBQAFAYUAhQFFAEUBxQDFASUAJQGlAKUBZQBlAeUA5QEVABUBlQCVAVUAVQHVANUBNQA1AbUAtQF1AHUB9QD1AQ0ADQGNAI0BTQBNAc0AzQEtAC0BrQCtAW0AbQHtAO0BHQAdAZ0AnQFdAF0B3QDdAT0APQG9AL0BfQB9Af0A/QEDAAMBgwCDAUMAQwHDAMMBIwAjAaMAowFjAGMB4wDjARMAEwGTAJMBUwBTAdMA0wEzADMBswCzAXMAcwHzAPMBCwALAYsAiwFLAEsBywDLASsAKwGrAKsBawBrAesA6wEbABsBmwCbAVsAWwHbANsBOwA7AbsAuwF7AHsB+wD7AQcABwQHAgcGBwEHBQcDBweHAIcEhwKHBocBhwWHA4cHRwBHBEcCRwZHAUcFRwNHB8cAxwTHAscGxwHHBccDxwcnACcEJwInBicB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Cwu6A40L4QGEAGoDCQDlAAUKhQGICnwCBwvVBogL3QGGALQDBQs0AYcLQAQEAOwCiwDxA4gKFQAGACsChwDlAQULfgAICykBCQtuAQkLvQEMCzUADAt2AY0L7AEHCw8GiwtpAYgAwQCIANgBCACNAg0AXQCTAA4AhADYA4QLrwAFAKwABgCzB4QLrQKVCwgAhQsdAw0AUwAFCr0ABwq6AQcKuwEIChkBDAquAI0KBQGGACAGhQs1AosAgAGFAAQBBwD2AgcAcAMHAE8FCQCkAAkApwAKAJwACgBMAgwAZQAOADAADwBGAAYKAgAHCu4EBwrJBggKFgAICg4BCApkAgkKOAEJCrQBCgo3AQoKbwILCkgACwpKAQsKxwEMCkEBDAr4AQwKEgIMCh8CDQoRAA0KnAANCk4BEQo8AJQKQAAEC/wABwssBAoLsgELC+QACwuqAQ0L5wASC2oAlAtXAAcKYgEKCpoBiwovAwYAbwEHCp4CBwovBQgKmwEICrMBCQqNAgkK5AIKCoEBCwreAAsKRAELCj0DjApjAgcAlgQGCqYAhwp2AZIAeQCEADwDBQvnAIoL/QEHC1kCCQsVAQkLogIKC7IACgsBAQoLogELCxMCCwsgAgsLSQIMC3EADAvbAQ0LYwCOC6wBhgAFBocL8wYFAFcBhgqOAYcKMgCHC5MGBAC4AQcAOQAIAKcACAB3AQkAUgAJADECCQDoAgoAbAKJC+gChgCeAwYKBQIHCocECgptAosKwACJADsDCADCAIgA9AIKCt8AiwqFAgcKQACICvUABAuPAQULdwAFC+4BBwvvAokLLAKEACgDhwAWAAcK4waMCjYBBQB/AgcA4QQLAIADhgtIAoYATgaHAFwDhwthBAUKgQAGCj0AhwqzAwQAZgAHAC8DBwCjBosAxAMNCvkBjQr6AYsK6AOEC6cChACDA4QAOQIFC7YCiQvKAogAGwMGAP0HiwsHAAYANAAJAGgACQAvAgwANAGTAFcABAAtAYQAXAKFCn0CiAALAwULjwAFCwEDBgvgBgcLqgIHC8gHiAvgAokKTgKTACAAiQsPAgUKGAGHCsoEhgDuAQYApQIGAKoChgAUBIUKGQGHCigEBwD8AYULXAMGC6YBBwsAAAcLCAYJC0ECCwveAwwLjQAMC8UBDQsvAI0LCgGGAPYDBQsDAokLgwCGAL0D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Bwp7BwkKuQAJCusACgpAAAoKDgEKCpMBCgrVAQoKEQIKCk4CCwqMAAsKXAMNCgEADQqmAQ4KVQEOCmwBEQpdABIKcQATCmEAkwpxAIUKtwKHAGEEBQoGAAYKtwAHCqgCBwrSAwcK9QMHCh8EDArmAA0KrACSCh0ABAsIAAcLgAQHC4EEBwuzBgkLdgEKC94BiwuIAocLSwQGCh0Aiwo/AAQAMQIKAPkAiwDRAIQA+AIHCx8Digv/AYgLVwAJAJoAjADlAYgA/wCEAEMBjACjAYQKNwGGCswGBABwAYcAgQIHCqoACApaAAgKsQAICp8BCwrKAo4KGQEEC0UABQt6AAkLkAKKC9ABBQtRA4YLYQYIAAoCjgBIAQsKWwANCoEADwplAJEKfQAHADICCAAnAgQK7gEGCkoABwosAAsL8wEMChEADwoFAJQKCwAEChQBhQooAQkAXACTAFsABAoHAAUKWgAFCp4ABgoeAgcK3QAHCiYGCQrqAQoKHAILCrsBiwr1AgYADQIGALgHCAAmAwkAbAOMABwBBQtbAwcKTAIHC4gECAtrAAkKrwAJCyMBCQu3AQoKEgIKC5cCCwthAowLxQAHC6gADQvEAI0L7QCLAL4DhQBSAocKRAIHClgAiApzAgYA3wEGADICBwAkBA0ABgAFCmgDBgo5AAcK1wEJCr8BiQrGAYgLnQGRCxMABAt1AAYLdAEHC3EHjgtDAQQL0gKLC9cBEQA9AAUKHwCGCmYCCApKAYwK3QEHCrAEigrMAQYKqAGHCkoHBgBpBogANAMGABQGhgBSBgkLBQAMC9gADAsmAQwLKgEMC5ABDAsGAg0L5QCPC4sADwubAJALTwAEAC4BhwDmBgUKDQCGCo4ABgCUAAcAIQUHCnQACApCAQgK8wIJCiQCCgrKAgsKdAONCkQBiQCkAgkLWACLCw4BBQsMAAcLdwGJC7YBhgCKBgcKwAWHChIGCwCyAAcKLwQHCgUGBwrnBgcKDgcLCqIACwryAAwKXQIPChoAkAosAAYAhQEHAJUACQCOAIoAXgCMC0cAkQpzAAYACAAHAFkHCABbAAsLxgMMCx8BDQtWAQ0LkgEPC24AjwujAAQLAgGIC38CBgsWAAcLhwOKC0EChQupAocKVwSHCwYFCQBwAAgKAQCKCkYBBQroAQYKDwIHCukBBwpkBggKeQAICpAACApnAQkKwQAJCvEACQpQAQkKcgMLCgoBCwp0AQsKsAMMCpEBjAqBAgQLmAKFCyQDBgDrAoYA9wOHANIGCQofAAoK9AAKCrsCDAqVAI0K8QGFCnkBhwAYAAYASAUFCyAAkQplAAcA+gUKAJ4ADQANAA0AiQANAAIBDgBvAA4A4QAOAP0ADgAwAQ4AUwEOAKEBkgAhAAQA9wGHAH0GBQCCAAYATQMHACIFCQBiAgoAzgILAFkCCwAzAwsAsgOMABgCCgCVAAsAGAGOAFABhgB5BYcAmgcIAJcCkAAIAIYARwaHCucHBAshAQcLdQIHC6IGBwuvBowL1wAGC8IBiAttAAoAcgMKAHMDCgCSA4oAoAOFCksDiAvBAoQKKgKFChgCBQChAQkKTwALCnECkQoHAAcL1gSOCyUABACIAYcAPQYFALEBCQB5AgsAdQKECqgBBwpQAYgKEQOGC2MBBgDqAAcAAQMJABIAigBmAQQKgAOGCvEGigtDAQcAjAAHAJ4HCACoAgsAMQOTAFgABwDGBIoAggGLC4wDCwD5AAwAOQEQAEIAkQAaAIYABQAHCu4CCQrfAAsKGwALCtIBDApwAg4KCQGSCj0AhgsaAIYAwAQFAMMDhgDtBgQLngEFC9MBCQuOAgoLwwEMCzsAjQt3AYcLEQAEClsChQqVAgQKCwAGCoAABwrnAAcK/QWKCtUChwu7AwcAtAAIAP0BiAAYA4QK3AGEAOoDhQsaAocKDweEAKMDBwCvAwsAZgKMAOsChwAtBwkKFAAKCkQBCgonA4sK6AGGAIECBgsYAQoL9gELC1gBjAsmAAULLQAHC4kECwvAAQsLcAMNC4sADQuXAQ8LEAARC18AEgtCABILWAASC3sAlQsHAAkAGAGKAIYAFgAWABcABQCXAB0AiAsJAwQAWgAFACECBwDyAgkAugAKAEgACgAOAwsAQQILAGICCwDAAwwAYgEMAGoBDABTAgQLmgGHCwkChwvyBgUKcAAGCmcAhgqWAIoKZAGEAOYCBwCXAAkASQGLAP4ACABVAwgAcQMIAI8DCACQAwoAaAMMAOUCDADmApgAEgAECz0CiAuPAgYAmQOGAKYDCQC7AAoAJAALAPgDEQAsAJIAQAAHAEEDiAAFAgQA+gEFACcBhwCQBgQKxAIICg8ACQoyAAkKggELChIACwoRAowK5AAHAPsABwClBggAtAEECjMCBwpQAgcKfQIHCgIDCArPAQkKPAAJCk8BCQqIAwoKSQALCrIBDApJAg0KSwESCm4AlAo8AIQK9gGIAEgCBgpbAYoKoQAHANsDCQCwAgoACgILABQDDACJAAwANgIOAAkADgAYAA4AQAAHC4MDjgtFAQQA1gAFAPQBBQpmAAYKHAEHCjcEBwqPBQcKpgYICtYBCQoqAgkK0wKLCk0BBwr2AIcKSAMGCgoACAo7AgkK4wKPClsAhQpyApIAwwCGAO8GBwCFAQcAvAIHAKwDCAACAgkAdAAJABcCCgB2AAsAawALAJQACwCaAwwA/gAMAKUBjgDuAAUKEgAGCg4CDQoYAA0KbgATCgUAkwosAIQA5wILACQBBAo1AQUKzgEHCsoDhwpJBBYKHgCWCiEAiwtSAYcLPgYHAAMFCQDjAAsARQELAJgBDgC0AJIALwAEALkDBgANBwYAFgcGAEYHjAAGAwYLYwKHC8UGhwu4BQUAUQAHAJIABwA+BQgANQAIADECCAC2AggA8gIJAHMACQCzAAkAfgMKAM4BCgAtAwsA5gALAJECCwC7AgsA7AIMAHcADADIAAwAGwGOABEBBQCYAQYAFQMGAG0DBgDlBAYAhQWJAOsChgqoBocLlwIGAHYHBgB7BwYAgwcJAJEDCQCgAwkAtgMJALoDCQDSAwkA4QMMACwDDAAzAwwAPwMMAEEDDABGAwwAjQMMAKADDACjAwwAtgMPALoADwC7AA8AwwAPAMQADwDRAA8A1wAPAOwADwDxAA8A+QAPAP0AEgC0ABIA3QASAOAAEgDjABIA5QCVADwABwAiB4cAkgcLAOoBEgCPAAUKVgAHCucCCQpVAAoKGQEKCrABDAr7AA0KdgCOCnoBBQoMAoUK6AKNC7oBCgprAIwKtAGHC/cBhgCKBIQKnwMHAB4ACABWAAgAOwEIALwCCQBAAgkAWgMKAJ4BCwA2AQsAeAMLAIgDDABpAQ0A+AANAHMBDgCOAAwKngKSCl4AhgDRAgQLcQAFC6MABQvfAgcL8QMHCn0ECQsJAAkKnAAJCwMDDAtaAA0LigANC5oBjwuAAIoARwOFCgoDiQBpAoUK9gEICsQACgobAYsKlgEGAKwBBwAMAggAqQAIAOoACQDgAYoAhgKFClcDhgBwBgcAtQSKAH0CBwA8BgQLpwOFCzcDBQsNAQcLsgEHC3sDCAtTAQkLvgILC1ICCwvOApELZAAHC24DCQvlAY0LCAEEAAoBCAAEAAkAJwAKAKYACwCWAwwAewIUAAoAFgAbABYAKwAWADQAhguxBgcKeAUJCr4BigotAIcLhAOEAF4DhgASBocLCQQTABAAkwsQAIcLuAQHAJ0AiAAXAQYAXAKIAIcBDQrHAQ8KYwAPCoEAkApEAIcKrAAHALEDCwDJAosA6AIEAM0DCgBtAwoAqQMKAKoDjADHAosA/gOECjgCjguPAAQANwIJAFsDhArcAgcANgeIAHQCiArdAoUA+gIECqwBhwr9BgoAEAMNAL8ABwrfB4wKmQKFACoBBwB5AgcAiQMHAI0DBwACBgkA/wKMAHwCigomA4QAGwOLAC0BhwCyBwULcQKHC1EGhwsTAQcLJQAIC6kBCAu1AgkL0AIKC3wBCgt+AgsLEQELCzMBCwvZAQwLPQCPCysAhwvGAIYA1AQHAHEBDACEAgwAhQKQAFoAEwAPAJUAGwAGAEcABwBNAwgAoAAJAD4BBgpXBoYKkQaGAKcFhgDnBIoA3wIIAEwAhAuoAAYK1AYICssCCQoiAwoKLgAKCjMDDQo0AQ4KXwEOCmsBkgpDAIcLWwAGANoBBAo/AIUKWwGFCu0CigBJA4UKbgEGAEQDhAvhAIcAVgaHClkAjADfAoYAQQaKC5EABgBuBYkAJAOOAIoBBgsPAAcLRgAKC/AAkwtdAAYAYACHAJIFBACLAoUAIQEHC7wDBwrRAwcLhQQHC+IFBwtGBgcLTwYHC1MGBwvIBgcL7wYIC04CCQtEAQkL4AIJCwYDCQsIAwkLEAMKCzcCCgvEAgsLBgILC2UCCwu3AgsLzAILC+MCCwsCAwsLAwMLC1ADCwtZAwsLowMLC7MDDAtGAQwLgwEMC+QBDAsQAgwLKAIMC2UCDQu9AA0LAAENC1QBDQuwAQ0LtAENC7gBDQvGAQ4LrgAOC9wADgscAQ4LhgGRC3kABwCwAggAIwAJAP8BCgD/ApMAdgCGAJsCBAABAgUKOAOFCq0DBwq4AQgK5gCLCmoAhgDyB4cLdwWPC0IAhwv5BQQLkQAGC7AABwuLAQkLMgKQCxwAhAv1AYQAwAKGAPQFBwA2BIYL0AEGC/0BCgtSABQLWwCXCw0ABADQAoUAMgGFAK8BBwCsBAQKkgMFCiADhQpUA4cLpQQKADYAjQpzAAcKNAKOCqgABQDQAQYA7AAHALgCBwCSAwcAVAQHAKgFCQAPAAkANAIKAA4ADAA1Ag0AwQEOADUADwANABAAQAARACkABAqWA4UKbAMGAIoFhgrkBgQKXACFChIBhgCLAwQLcgAICvUBCQvsAQ0LzgGOC9cABAtNAAULaQEGC4sABguRAQYLlAEHC50BBwvLAgcLtAYLCxcBDAuzAAwLAgENC/QAjgtmAQYA5wYMAMIAkQBrAIYLtQYFCucCjgtJAQQKMQAHChgBhwphBgUASAMHCyUECAtSAAsL+gAMC6QBjQu4AIcL1AKGAIQDiAovAIYAnAWQCwAABgCjAgcA8AMHABgGCQCCAgsA7AAOAMEABQoQAQUKjAMFCq4DCArFAAkKLwALChoCiwrmAgQARAAFAHQCBQB6AgYAggEHABoDCAARAQkAMwIKAGkACgCrAAsAXgCLAGIBhwp3B4kKewMEAF8ABgARBQYARAYHAKABiwA+AwYLAQKHCxwEBwDbAg0AFACPAAsAiQuDAwoAUgOMALkCBACWAgcLiQUMC34BEQswAJgLDACFAOAChABdAwQKlwGECjACjQrqAQYLIQIHCzUCBwuFBgoLcgALC4ICjAtqAgYAZwOGAOgDBQBgAwoAiAILAJ8CDwAuAIULBQCFAKADCwBaAA0ABwAECtsBCwojAA0KRwANCrEAjgqmAYgATAGHC8AAhgAfBIgL+wILANoDjACqAgcATAAIACwACQB0AwoARAILAI8BCwB+A48AegCHC9UEhwp8AgsALAEGCt4ABwpUBggKmQGJCrUCBAtXAAUL+gAKC1kCDQsqAQ0LYQGNC3gBBQAGAgoAVAELAK8AlQAQAIwAAwMGAFQEiQA/A4QARAOHADwHBAC9AwYADAcIAEoDCABLAwgAUwMIAFcDjAD/AocLLgMECzkABwurBAcLngUHCwwGBwsrBwcLcAcJC/UCCgtcAosLBwKFCnIDigD2AAQApgMFAMoACABiAgcLaQcMCyIBDQtQAA0LtQGRC0oACABgAAkAJAAKAF8CCgAkAwoAQAMLAKcBCwC6AQwANQEOAMcADwBaAJEAbgCECqoBBwCOAggA8AAGCjoABwrpAgcKsQcICqMCCQrfAQkK2wIKCkoBCgpRAgoKMQMLCiAACwqFAAsK3QCRCkQACQANAAkAjgEJANcCCgBLAAoAuAAKAOYACgA0AgoAOQILAM0DDABGAAwAvQANADkAjQABAQQL0QCHC4YDBwCHAYkKGgKGAJMBBgsvAQcLTwEHC50FBwuEBggLKQIIC4wCCAuQAgkLLgILC+cClQsSAIQLLwILAEsAjgALAQYALwONCwIAjQBuAYkAdwKFC/kDBQBZAYcA+AOFC8UChgvRBoUKNgIHALgDBgowAAkKiwAKCo8BCwrVAQwKegKNCt8AhQChAgkAUgMHCwgAiAvOAAYAlgKVACMABAAfAYUA+gMGCnIABwrIBAcKFAaICgMACApAAokKCwEEAHQDBQAiAAoA1AIMALwBDQBiARIAIAAXABgAFwAfAJgABQCFCqUDhAsIA4oAlwCIAKsBhgB+AYQASQEJAE4DCgA7A4oLIQAJABcBCgCXAQ4AVAAWABIAhwsRBYgLlgGEAIoDiABuAYYASwOGAKMFhwBcBYoA4AMEAHsABQBdAgcA5QWIACQAhACJAggLrwAKC6gAigs9AoUA/wKGAPoDhwsZBQwKHgANCpQADgpXAA4KtgAQCioAlApGAIYLXwIEABEBBQCSAoUA4wMGAEgAiwuuAAoA4wEMAHABBwo4AAcKxQcIClEBCAriAgkKWAINCr8BjgpcAAULEAOKCpoChwBBBYsLcgOGAA0FhQBNAoYAxAcFAHUABgACAgYAHQIHAIwEBwCcBQgA3AAIAIgCCgCwAosAMAKIAHsBBQCuAgcKYgOHCosEhApIAQkLDgAJC7kBCgsyAYsLCQAECmUAhwqTBAUKQQOICugCBQuhAAcLRwOHC3cDBwDEAAoA/QILAFsBCwAoAgsAFgMMAAcBDQD2AA0ADgENAIsBDgCwAA4AvgAOAI4BDgCcAQ8AIAAPAD8AEABYAJMAaQAGCgkABgqNAQcKNQAHCs4GCgp4AgsKPAOMCpIABQB9AYcAAAeGAKwFhwutAQgAbwEKAPgCDgBPABQAEQCYAAAABwBoAooAnQELCqEBDArfAIwKCQEHC0sGDQsOAA8LLAATCw0AlAtMAIcAzQQGAHgABwCkBAcArgYIAB4BCQCbAgsAUAKLANoChwsWB4cAegQECroABQqdAAgKqACKCgYABABgAYcArwIEAMAABQAxAAYAyAAGACUBBgCgBocAfwSFCmsDBQoFAwUK3wMGCmMGhgr8BgcKbwCICkUCBgCnA4YAfwSGABoEhACKAoQAkwALAMIADAA+AAwAWAALC8IADAs+AIwLWAAGAFMBhwCbA4YK0wYHC4MCiAvsAIUApgMHClQFBwpzB40KngCECpMCBAqUAYcKowIHC0UCCQuEAokLuwINANMADgCFAA4AzAAPAEAADwBFAA8AcgAQAAoAEwAXABMAIwATACcAEwAzABMARwATAEsAmAAPAIUKhwEFCzYAhwvpBQcA3gAIAFUBBQocAoYKoQaGCk4AhAvoAogAJQGJC70CBwuiAwoLkgEKC9wBDQvEARILNwCTC2gAhAB9AoUKzAEICzIAiQtwAoQLPAKGAIcEBArHAIsKIgCGAE8DhgqEAQYLKwAHCyYACAv4AAkL+AGKCwECCQCrAgQK/wEGCmACCQpNAQoKWgILCrkBCwrTAgsK0AOMCmUBCQBjA4oARQMGALADhwtGAYcAEQcFCqoDBwsPA4gKwwKFC/4ChQtrAQYAqgAHADgECACLAQgA5wGNAJMABgsCAYwLmQEEABcCCABqAgUL+QCUC1IABgBjBZULDwCHAFkGlgAXAAULiQEGC3oBBwu9BwkLIAAJC08CCgutAgoL5QKOC34BhQsUAwcLsAcKCxMAiwuPAwcLeQWHC8QFBAs9AAULOgAFC6sABQt7AgULqwIFC7wCBgsjAQYLNgIHC3IGCwsLAgwLEQEMCy8BDwsnAI8LbwAGCtUBBwqtBooKAwIEAAoDhgtNAoQALgAFACsDBgCPBgYAsgaHAPAHBwCyBQkAlwELAA8ADACLApUAJQAHAKoDhAr0AQYAIgAHAEUABwBBBAcAAQUIAMQCCADRAgkAawGUAGIACgvnAJMLfAAHC9YCmAsJAAUKRACGCn8BiAtHAgQLlQOFC+0DCwrYAIsKVAGHC4sGCAC5AQoAOgGPAAMAhAuXAwQKUQEGCmEBBwqOBwgK6AGJCq0BBwB5AwcKAwcICgMBCQqHAAkKsQAJClwDCgo5AwsKcwALCnIBCwqVAQsKXAIMCgoADAqbAgwKnQINCkwADgo2AQ8KTAAPCpMAlAoXAAQKDwAEC/8ABQoWAAULLgEGC4QABgr0AAcKKAAHC4AABwrIAAcLGwEHCooDBwqvBAcLEwUJCmgCCgs0AAoLAgIKCswCCwp7AgsKIQMLC50DDArKAQ0LXACOCzUBhADOAYkLrQCHCscGCAANAgUKVgIHChcDCApsAIkKewAFAEkABgAXAIYAUgGEAKQChAqrAgcA1QIIAPIBiwAMAQwAFQCXAAcAhwAFAwQKmwCHCpkGBACkAAUA2gIFCpcABQrlAgYL0gAHCvIBBwpmAwcKBgYMCtUADgokAA4KhwERCm8AEgoGABIKLgASCpcAEwokABQKIAAUCjgAFApFABQKZgAVCgQAFgoIABYKCgAWCg4AlgofAAQKcAKHCtgGBABHAgkAqAMPANYAEgDHABgAGgCGC0wCBwC2BQsAkwIECxwBhgvfAIUA3ACLACMDhAAgAgQK7AGFCsMBEABiAJQAdwAEC9oABwsOAo8LiQCHCkMDBAsOAQULwAAGC0wBBwsqBQ0LCQANCkYADgtoAI4LNwGEChsCjAuVAgUAsAAGALUBBgA0AgsAtQCNALcAhwCoBAYKcQCHCrQBiArOAocKCAKHAFYHjAvEAAcLewEIC+EBiQt5AQUL6wMGC5UAiQvqAggLBgEJC3MCCgsSAAsL1gALC5QBCwvJAQsLDAMLC1EDCwuRAw0LSgENC5EBjgvIAJUAGgCICzABhAuOAIcAsAMEABYDBQARAYYAigGGAFcDBACHAAYAfwAHAKEEBwDnBQgAZQILAAUADABQAQwA7wEMAEoCDACUAgwAnAIOAIEBDwB2ABEAFACSAGIABgDmAAkA8AISAG0ADApiAg0KrwGQCjsABwCiB4cLnQMEC9cBBQszAAYLWgIIC+QBCgvDAIwLnwCECjMBiAuwAoQLuQIHCywDBwvtBAcLUAUJC3gCjAtgAQUAogAIAEQAhQrEAwQAjgKIC9QABACcAAcA5gMHABUEBwBEBwkAMAAJALQCCwCjAYsAWgKFC90ABAt1AQULGwEGC+ABhwthAo4L2ACEAPAABgvAAAkLGQORCzcABApLAAUKtAAGCvQBBwo6AAcKxgKKCoUCBAuEAAULRQAFCokChwvaBAYKFAEHChoBBwpvAwcKnAMICssBCQpXAgkK8gILCj4CDAqAAAwK7gENCjQADQotAQ8KHgCPCoQAhArIAAQLbwCHCy4BCQDFAAoALAEMANkBDQBaAI0AlQGEC/8CBgsqAAcLiAUHCzYGBwvVBwgLgwAIC9IBCQugAg0L/ACUC2cACAC+AwgA5wMKAMMDigDpA4cKVQaHAFoDBABeAokLvAEGCywAiAtwAYsLrAAECzoChQt4AIsLcAIHALoHCACkAgYK4QCJCtMABwDMAwsAZgCICq8CBgvjAIcLNQYICjoACQrUAgsKKQMNCnEAkQpIAAQAaQGFADsBhADNAQYKWQGHCt8EhADYAQgK/wIICiMDCQotAYkKhwOHCzUFhwvdAQcKnQeICqICBgCJA4oA6wKFAJsAhgoDAQcAowAIAD8BCQCSAQoAGAAKAKkCCwDIAAwA/QAMAJoBjgDbAAUA2wEHAPQGCQDmAAsAKQELAC4CDgBCARMATAAGC4MGBwv0B4oLWAKICv4ABgBQA4cApAcGC/8BjAuEAAULOAIGC4oAhwsNBQYAdwKJAEYDlQAkAAQLNQIICxcAiAs7AwUAsAOGAOkGBACQAAYASgMGAHgFBAuaA4UL/wOFCvgACQogAwoKtQILCuIBCwreAosKFQMHC+oDiwuRAAQKdAAFCl8ABQq9AQcKmAYICh0ACQoQAQsK/QGLCpMDDgBxAZIASACHCmkGhAvkAoUKHwKMC3QABgD3AAkAKwIFCrUAiAopAIUKkQKIAOQDigrFAgcAvQAICsoAigoYAogLkgEEC8wCjQsfAAoAGAGKAB0DCQqnAYwKWQAICnEACQptAwoKKgILClMADAqIAJMKbQCFCtADBwDqAoQKzgCIAA4CiwBZAYgA+QMIC5gACQs1AAkLDAEJC4UDCgsGAgoLPQMLC7wADQtKAA4LLgAPCxEADwshABELKAASCyQAEwsUABYLAQCYCwIAhQvgAogLFAIFAKwBigCLAocLqQKHAIoEBwBHAQ0A5gARAHEACAriAAoKGQILCjoCCwpdAgsKHwMLCiQDDApVAAwKBAIMCm8CDAulAg0KaQEOCk0ADgpOAJMKbgAEABgDBwC1BgoAIgKECgEDBAusAogLgAGECicChgCzBAkKOQAJCssBCgqpAQsKdwAMCrgADApzAQ0KZgGRCjMABQCgAgUKLgMICgoACQqlAQkK2QIKCmECiwqxAooAvQCGCnACBwtuAAcLvAAICyIBCAtPAgkLfgEJC4kCCwtHAAsLmwALCzkBDAsFAA0LRQGOCx8BhQBjAAYAHQSHACoBBwtoAQcLqQEJC0IACQsWAYoLhAIEAI0BiAArAokKDQGEChACBAuEA4ULXQMGAIUEBQv+AAcL2QOIC0kABwunB4gLqwIMAI4BFAAnABUACwCWACkABADlAQcAYQGHAPMFBgBuAQcAaAWHAEEGigATA4kAGgEFCmgABgqtAIcKXwaLC5IABACdAIUA1wGGAK0DhAvVAgcAOAUICooACApWAQkKVAAKCsEACwpzA4wKZwGGC8QAiAB0AIULPwOGABMDhgpfAAYKlgEKCpkBCgq/AQsKLACMCmQABQCgAAcAawEHAE0CCgCqAI0ANwCGABcHhABiAwYAeQMGACsEBgCfBAQLQQGGCzkCBQtQA4YLQgAECyQABgpkBgcLawUKC80ACwvzAo0LDwGEALECCQA0AwQKGgEHCgoECwqOAQsKegIMCgEADApPAAwKIAIOCu0AEQoKAJIKFAAEAGwABwAkA4sA8gGEC3cDBgBfBIcLbAIGC6UAiguEAQUA9AAFCvMBBgrcAQcKWAIHCngDhwpIBIwAYQKHAO0DBACcAYUARQIEC88ChwubAAcKKAEHClQCCAowAggKSgIJCmQCCwowAQwKLgANClkADgpwAJEKegAEAH8DhQAEA44LMwGHAGoHBACeA4UA1wMEC2EBBguSAAYL/QYHCyABBwveAwcLRAUJC5kCCQuCAwsLfQOOC9QAhAAaAoULFAIGACYBBwDzBAgAcAKNAPABBwAtBQQLLQCHC+kEigAtAQkAKgEMACMBDQAUAQ4ABgARABIAFQAgAAcKPwYHCrsGCApPAAgKagAICr4ACAouAQgKfwEICskCCQp3AAkK6QAJCqMBCQrXAQoKtQAKCpYBCwo5AAsKVQALCngACwqxAAsKKAELCn4BCwrGAQsK9gILCucDDAobAAwKgwAMCvUADAo4AQwKvgEMCsYBDQpiAA0KqgENCvwBDgqjAA4KEAEOChUBDgpyAQ8KXwAPCooADwqnABEKJgCUCmAAhAD1AoYA7wQEADQDhgrfBoUA0gKICzADigp0AZEKEACGAA8EBADfA4YA7AeFCgIBBwBTB4sAfAAGCy8CBgubBocLSgIFAEQBBwBxAwgKhgAJChQDjAq2AQcLHweLC7UCBgBEBYYACQaGAI8DhAC6AwgASQEIAJ4BBwqcB4cK1AcFAAUCBgq3AQcKDAOHChAEhAAwAwUKAQAGClEAigoIAgkAyQIKAN4ABQriAQgKYgAKCrwCCgo2AwsKLgELCgoDDAoyAAwKfwAMCowBDQo+AA0KSAEOCnoAkwpIAIkAIQAFCgIABwrWBYgKTQIGCgACBwodAwgK/QAJCk0ACgoBAAoLbAAKCoEACgrhAAsLdAALCnYACwriAAsK+wALCq4BCwq9AgsKzgMLCtYDDApAAAwKBAEMCugBjAqyAoYLyAGFC50DBQCWAAcAagAHAAYDCABbAgkAUQIJAHoCCgAsAAoArQALAM4BCwADAg0A2AANACABjgCQAYkKWwEFAOwChgApAgwAbACNACMBBwCkAQQKDAAHCgoCBwopAwgKHQONClgABgvBAAcL8AAHC5IGCgszAAoLgAILC5oBDQtSAA4L9wAOC0sBjgt5AYUKEAKHAPEGBADtAZAANwCIC3kCiwBRAAYA1AOIAEEBlAptAAUKCgEJCiIBCQpsAQoKJQELCl4CjgotAAYAOAIHAHAABwAMBwgAagEIAJoBCAA+AwkAAgILAIkCjgCdAAQASgAGAP4BBgpSAgkKeQAKCjEACgqcAYsKQgOGAEYDiArsAoQK0gGEAHEChwujBQQL7QCHCwICCQp6AY0KogAGABAABgCeAAcAKwAHAIEABwC1AAgAFAEIAHkBCgALAgsAMAMMAMcBDQAvAY4AhwCHABkBBAABAAcAdwQHALcFCAA9AAkAzwAJAIYBCQDTAYsARAMGC4gBBwtBAIcL4weECpsCBADTAgUAfwMHAAcECADHAAgAVAEJAJkACQDXAAoAFQAKADsACgBQAAoA4AAKAEYDCwDlAAsAjAIMAMAADQCSAI4AWwCEACcBiQAzAAkL3gAKCysAiwuEAwUANQGMANMABQB9AAgATQCKAA8AiAtcAooAFQMFAK0ABAonAAcKMwcICpcBCwqQAIwKCwKKCwkBhQC3AYQK/gEHAIgCBwBqAwsApAAMAEwAEgAJAAcKvAcKCucBigopAwwAbwAOACYBEwAtAA0KBAGSCj8AhQslAoYKOgIEAAgABwCABAcAgQQHALMGCQB2AQoA3gGLAIgChwBLBAUAPwIGAGIBhwC9AgcLJAAIC8kAiAtdAgQKEwOIC5wABgAGApULDQCMC+AAhgC+AoQKBAIFC9QCCgsxAQsLlwAMCyEADAt5AAwLfQERCwMAEQsbABELTgASCxIAEws2AJULBQAIAFcABAsLAgULfgILCncDDgptAY4KdwGKALYBiAo1A4cLdAcGC/IABwvjAAcLLQYIC2gACQtxAAkL3AAJC6sBCgtKAAoL7wALC0MCCwv/Aw0LBAANC8wADQs8ARILXwCUC1YABABFAAUAegAFAFEDBgBhBgkAkAKKANABBwAKBwQKCgCLChIDhwtdA4sA8wEHANwBBwA4BooAVwCFCqwCBABIA4YKGwCOABsBBgBUBgcLMAWIC+4BBQBbAwcAiAQIAGsACQAjAQkAtwEKAJcCCwBhAowAxQAHCxoFCAv5AQkL4gEKC34ACwvhAAwLWwEMC8EBDQsTAI4L2gAFCwwBCgv8AgwLeAANCycAkQt/AJEKOAAHC4gGCgvYAQsLvQCPCzMABgpWAQYK8AEIChMBiQrOAIUAWAIEAHUABgB0AQcAcQeOAEMBBAqNAwUKrAOHC78FhAp7AwQA0gKLANcBBAuAAYcL/gOECq8CCQAFAAwA2AAMACYBDAAqAQwAkAEMAAYCDQDlAI8AiwCHC6cGBwtCBgoLugIMC9QAjQszAQYKKQCNCqAAhws1BAkLnwALCxwAjAtbAgQAAgIHABgFigDdAYYA7gYJAFgAiwAOAQUADAAHAHcBCQC2AYYKtgaECwMCiAoKAwgLeAIIC7kCiQtWAwYAagEGAOUDkgAzAAcAMAMHANkECQAbAQkACAIKANUACgAzAQoAzwEKAJ8CCgDqAgsAkQELABoDDAAFAhIAawCTAHMAhQpzAJYLHAAEC4gAhQsnAo4KOgGEAAIBBgAWAAcAhwMHAKsHCAB/AooAQQIFAKkCCAAOAw0AggARAFQABQrBAIwKsgAJCxEAigsjAQcLBwUJCywACgsoAgoLggILC0cDDAsSAQwLEwEMC3QBDQtbAI4LfQCHCq4ABACYAgUAJAOLAPUDhgCuAwYARQUGAEkFBgCqBQcL7gWLC7YCCwBkAQQKegAFChwDBQq4AwYKfAYGCocGCAo3AgkKrwIJCuYCCgquAgsKqgKMChkBBQAgAAYLkwAHC3YDCQvxAooLDAEFCrMABwpHBIcKvQQECkIABwrSAocKiAOHCmABCQv1AIoLiQAEACEBBwB1AgcAogYHAK8GDADXAIULngEGALcHhwviBgYAwgGIAG0AjQojAIYLVwKIAMEChQCYAoYL1QYLC5IBDAttAAwLrwENC7MADQvOAA4LrwAOC9kAEAsDAJQLNQCHANYEhgtbBoQL6AENAD4BCgpQAgoK8QIMCj0BDApjAQwK0QEMCtUBDAowAowKQgKFCjQChAtTAIwLpAIGAFAHBgByBwYAcwcJAKYDCQC8AwkAwAMJAOQDDAAaAwwAbAMMAHADDACWAw8A5gASAOoAEgDuABUAJgCVAD4AhgosAoYLFgGJAGcABwogAggKzwKKCj0ABAoFAAUK8gEICn0CiQoJAgcACQMMAOUADADvAA8ADAAMC+UADAvvAI8LDAAGABoABwuEAQcLhAKLCw0DBwvlAAgLOwAJC74ACQsBAQoLegGMC78AhQqfA4cKoQUECn0DBQoMA4UKfQMEAJ4BBQDTAQkAjgIKAMMBDAA7AI0AdwGOAK0AhwARAAcARgWFCu4AhwC7AwQAwAMKAHcDDADxAhIAoQASAKIAmAATAIgLWAEGCsEGiQsgAYQLlAIEANkABQDGAgcA+AIHAIYHCQCsAQkAxAIKAP4ACgAoAQoA0AILAG0ACwD/AAwApQAMADsBDQBrAA0AywAOADYADgBjAA4AcgAOAIQBEABVABEACQARACEAFAAZABQAHAAUAB0AFQAJABUACgAVACIAFgARAAQKPAAHCggHCAo6AQkKvAKLCucBBwsLBIoL4QIHC7ICCQvZAAkLSwKMCwkCBgCXAwcLwgIHCyIEigsaAgcKPQeKCrUBiAqjAQYAGAEKAPYBCwBYAYwAJgAFAC0ABwCJBAsAwAELAHADDQCLAA0AlwEPABAAEQBfABIAQgASAFgAEgB7AJUABwALC1wACwvEAAsLmQELC8IBCwuaAgsLCQMMCwYBDQuBAQ0LiQEPC3MAEAstAJELUgCIAAkDhgvQBgQAmgEHAAkChQo8A4YAoQIHAFYEBwDyBgcKsACHCrIABQomAwcLDAEHCrgHiAs5AgQL3QIJC8IACgtcAAsLxgAMC1QADAtXAA0LgACQC0oABQBVAQcAaQQLAJ4BBAozAAYKBAAHCk8CBwpRAwcKtwMHCk0GBwrgBgcKxAcJCrIBCgryAgsKGQCLCiUAhQqGA4cKoAOHABMDhAC0AYYKDgEHADMGhwCrBgYAeQEHAAEECQBlApEAaAAHC9YDBwtRBQoLIACPCzgAiwBgAIQAwwGECqABjgp0AQUKmAAFCsUABwsyAQcKVAEHCmMDCgokAgoKRQILCgYADAoDAAwKEwAOCm4AjgohAYYAqAKGC2ECBwDjAQcKvgAIChwACAqNAAgKvAEICisDCQrUAQsKTgEMChgADAqCAYwKQAIKAJQDhQr1AgUK0QKHChEGhQuyAIYAqQOECoIDhQDjApMAUgCHAJcCkgCAAAUKFQGNCvcAhgA/BIQKswEGC30BBwuFAgcLtgKICyICBwD3AYcAXQcGAK0HCACdA4oAuwMEAHEABQCjAAUA3wIHAPEDCQAJAAkAAwMMAFoADQCKAA0AmgGPAIAABABEAYoAaAAHAMwBBQoJAYYK1ACFC2kABwsFAQcLUwQHC1sEBwtKBQcLNAYHC6kGBwtuBwkL0QEKC/gACgtdAQoLhwILCw8CCwuUAgsLnQIMCxECjQsxAQULtgEJC7YCDAtzAo0L0gCYCwsABACnA4UANwOECr4CBQANAQcAsgEHAHsDCABTAQkAvgILAFICCwDOAhEAZAAFCigDhwr9BwcA9gMJAOUBjQAIAYYAsQYHABIHCwBiAwwAZwANAO8BjAvpAAQApwEKALUDigD1A4cAhAMICxkAigs6AwUKpgAICuMCjAr/AYYA4gcHC/YEiwtkAgQKdwAFCqoABQq/AQcKrAYHCmEHCQplAQkKzwIMCuYBjApUAgwAPgKMCz4ChAs0AQYAxAMGALYEhgAWBQQKwgGHCoYEhwuWAIgLiQIOANUAlAAmAAkLLQAJCzcBjQsqAIYLCQIHCl8FBwq6BYoKSwGECvICBQtTAQcLogUOCwMADwspAJMLQgCIC3oBhgD+AwUKUgOICh8DjgCPAIcA7QeGC1wGCAALApYAIgAFAHEChwBRBgcAEwEHCu4ABwrxBwgKeAAICrwACAqTAgkKVgIKCtIBDApWAQwKTAINCvcBDgr2AI8KXAAHACUACACpAQgAtQIJANACCgB8AQoAfgILABEBCwDZAQwAPQCPACsAhws9A4cAlweEAP0CBQvmAYcLRQUHC2MGCAsRAAoL2QCKCycBBArJAAcK0AYICloCCwr3AAsKOgORCkEAigsuAgsAJwKOAJ8ACAqkAJIKPgCLC7AAhACoAIgA8gOGAMoHhwBbAIoAFAKHCtsEhwBcB4QKiwMFCmQACgpJAQwKoAGVCh0Ahgu/AYQKsAAFCnwCBQrmAwcKCQAHCuQFCAoaAAkKPQEJCmYBCgrSAAoKJAEKChUCCworAgwKDgIMCl8CDQoHAQ0KywGOCg8BBAthAocL9AIGAA8ABwBGAAoA8ACTAF0ABAuiA4ULswOGAMsEhgD+BYULqwOFC8IDBQuLAggLqgAJCz0ACQs/AAoLFwAKCyUACgtCAwsLBAALC7sACwsZAQsL9wELC6UCDAtgAAwLggAMC/QADgsFAA4LKAAOC6IADgvKAJILhQAEC5YBBQtDAgwL7AGWCw8AiwCIAQYKYgIKCn8AjQobAAcAjwIHADQHiAp3AAQAkQAGALAABwCLAYkAMgKEAPUBjAuRAIgA+wOGAP0BiwALAQYLEQAHCxAABwvpAwcLvgcJC3YDCgvpAQoLIAMLCw4DDAtAAQ0L0wEOC5EADguDAY8LdwCRCxEABgBLBIULygEHC78HCAsAAAgLqwAJC3gACQvcAgoL2QELC5ACCwvmAxILAAASCwIAkwsVAAwLqwGSCyYACgC0A4oAyAMHCn4AiApUAIgKFgMEAHIACQDsAQ0AzgGOANcABgpAAAwKeQGNCjUBBABNAAUAaQEGAIsABgCRAQYAlAEHAJ0BBwDLAgcAtAYLABcBDACzAAwAAgENAPQAjgBmAYYAtQYHAAQDBwAlBAcAbwYIAFIACwD6AAsAXwIMADcBDACkAQ0AuAANAG8BBwpQBAsKDQELChsCCwpzAgsKwgILCs8DDAr4AAwKsgEMClgCDApuAg0KKQENCuUBDgpFAA4KmQGPCmwAhwDUAgQLAAIECwcChQtWAYYAbQSRCx0ACwrRA40K+wEGAEkDBgASBAYAqgQKAOEDjAD9AwYLHwAHC+sBBwsSAggLUAIJCiIACws1AAsK5AELCwsDDAunAAwLmwEOCw4ADguIAA8LSAAQCxEAkAtIAAQA/QMGAPUHhQuLAwcAdQEIAE8BCABUAgkA6AEGCqQGBwolAQcKfgEHCgIEBwo/BAcK6wcICvwACArXAggK2QIJCh4ACQrHAAkK5wAJCvsACQpOAQkKaQEJCsgCCgo3AAoKPAAKCugACgpMAQoKgAEKCowBCgr4AQoKHgIKCowCCwoUAAsKMAALCs8ACwojAQsKKgELClYBCwptAQsKigELCmwCCwrBAgsK+QMMCnsADApUAQwKlgEMCoMCDQo9AA0KDQENCjcBDQo/AQ0K5gEOCuoADwo+AA8KVQAQCkcAEgp3AJQKaQCWACUABAvQAAULagAGCxMCCAuYAQkLvACKCzwChAA0AgYAAQKHABwEhAA5AwkAgwOMC7kBhgAKA4ULewEHAIkFDAB+AREAMACYAAwAhAvxAAcAXAQGCnsBBwoOAQgKsAAICrcACQqwAQkKlQIMCvcADAppApIKfQAFChgDhQqEAwYAIQIHADUCBwCFBgoAcgALAIICjABqAoUABQCKCwcAhAsDAYcAwACGAL0CiAD7AocKuwcECoUDhQoIAwoA8wKTAB0AhQD3AgQLrQAFCzgBBQsAAocLBQUHC0MGBwubBgkL0AELC8MADAsXAQwLwAEOCwsAkwtmAAcAcgEHAO8DBwCZBIcAHQaHANUEBABXAAUA+gCNACoBBAvEAQULRwIFCzEDBguxAQcLUQIHC9ACBwtiBQgLoQAJCxwBCgs5AYsLdgMECyMChwuBBYgL0gIECiUABQpOAYcK5QSECvwBDABrAJIAHwAIC6QBiwvBAIcALgOHC5kBjADfAwQAOQAHAKsEBwCeBQcADAYHACsHBwBwBwkA9QIKAFwCiwAHAoQAHAKKCzQBhAoVAogAYAKQC0EABAD2A4YA7QcEANEABwCGAwUL6gOIC+kChgDuBwYALwEHAE8BBwCdBQcAhAYIACkCCACMAggAkAIJAC4CCwDnApUAEgAFCz8CBgtiAYcLvQIEC+8ABgvdAQcLRwYLC0QAiwtpAoQALwIIAA8CEgA8AJMAGACFCpgDigD/AYUA+QOFAKMCigqHAQsAnACHCqAHigtxAYQLbwGFAMUCBgC6AoYAdwOOCn4AhgDRBoQK4wENCysBjgtLAIUAygIHAAgAiADOAIoK4AEEC7YCCQrvAZIKaAAHC+AECwttAosLvgKMC68ChAAIA4sK8QOHAPgEhgAjBAgKjQINCl0AkwoOAIcL1QCIAJYBhQqsAIQAswMIAK8ACgCoAIoAPQKEAGYDBgAfBpcLHACGC9gBBQoEAYgLhAAEC+8CCwuGAYwLIAAEC5kBhQtOAAwAKgIGC9kBkQtpAIUAEAMIAIwDiAsyAYsAcgMGAGYBBwBxBQgAjAEKAAcBDgCaABAAMAARAAgABwvfBggLjAEKCwcBDguaABALMACRCwgADQujAA0LtAASC04AlAsjAA4AIAASAFUAFAACAJgAEAAHAOQACgACAwgKpwAICncBCQpSAAkKMQKKCmwChABNAwkADgAJALkBCgAyAYsACQALAMYDDAAfAQ0AVgENAJIBDwBuAA8AowAICsIAiAr0AoYAKgYEAMcDBgAcBwYANweMAMwCiABSAgcAlAUHAGgGBwBLBwkAqQAJALYACQBvAQkA3gEJAPoBCQAnAgkALQIJAIgCCQC5AgkAwQIJANUCCQATAwkAGgMKAMYACgDWAAoACwEKABMBCgDIAQoAJwIKADECCgBlAgoAcwIKAJwCCgCjAgoAswIKALcCCgDDAgoAywILALcACwDJAAsA9AALAAYBCwBgAQsAtwELAO0BCwA8AgsATwILAGACCwBjAgsAhgILAKICCwDHAgsA7wILAPkCCwAIAwsAEQMLAFIDCwBVAwsAXgMLAGEDCwBkAwsAawMLAIIDCwCGAwsAhwMLAI4DCwCkAwsArgMLAL0DCwDHAwsAzAMMAJQADADDAAwA3AAMAO0ADAA+AQwAUwEMAIkBDAC9AQwAwgEMANoBDAD5AQwA/QEMABUCDABPAgwAUgIMAFUCDABtAgwAeQIMAIICDQA7AA0APAANAJEADQDvAA0A+gANAEkBDQBYAQ0AbQENAHQBDQCDAQ0AkwENAJ4BDQDIAQ0A1gENAN4BDQDjAQ0A6QEOADcADgA5AA4AUQAOAFoADgCUAA4A7wAOAAoBDgBBAQ4ARgEOAEcBDgBKAQ4AWwEOAGMBDgCRAQ4AlAEOAJsBDgCeAQ4AoAEOAKQBDwA9AA8ASgAPAFcADwBYAA8AXgAPAGAADwB0AA8AlQAPAJoAEAAyABAAPwAQAEkAEQACABEAQgARAFwAEQBnABEAcAARAHgAEgAyABIANgASAFIAEgBWABIAWgASAG8AEgBzABIAnAATACgAEwBPABQATgAVABYAhwtzAwUAoQCHAEcDBAAOAw0LJQGOCzgAhQtpAosLMgCHChYAkQBAAAUKfwIHCuEEiwqAA4oA5gOHC/oHBAsiAo4L6QAGABMEhgAmBoYA2AUECmYABwovAwcKowaLCsQDDAANA44AzQEECzkBhQtBAgYAfwIGAFoEiQAxAwgLuACNC7EBBwAWB4cLpwMKAOUDjAC+AwQALAOJC3EChAqDA4gKGwMFC3YDBgsuAAYL/gYHCw4ABwvcAgcLdgYIC18ACAtHAQgLaAIKC1YCCgsBAwsLhgALC+sCDAt6AY4LYQCIAIsABgo0AAkKaAAJCi8CDAo0AZMKVwCFC/0DhApcAoQKLQGICgsDBwCDAogA7ACEC5kAhgCUBJMKIACFCx4DBgA6BYQLSwIGC1YCBwsqAAgLtwIKC9QACwueAA4LxACRC1UAhwr8AQULvQMFC/ADhwv5AAQLgQCHC9EBBQA2AAcL1gEHCyEEBwuxBAkL8wILC4oDjAsPAgcLjAOSCwcABQuUAIgLwgGQCwEABAAAAYcA0AUJAF8BBgo2AQcKOQcICkgACAoQAQgKrwEJCgwACgozAgoKdgIKChwDCgoqAwsKbwELClcCCwquAowKoAIGAF0HBgBqBwYAaweMALsDBADKAoUA1QEGAPYEhgCwBYQA6AIGADkBBwoZAggKQAAJCn8ACgrwAQwK/gGNCoABBAvZAAQK9AAFC8YCBwrpAAcLhgcJC6wBCQvEAgoL/gAKCygBCgvQAgsLbQALC/8ADAulAAwLOwENC2sADQvLAA4LNgAOC2MADgtyAA4LhAEQC1UAEQsJABELIQAUCxkAFAscABQLHQAVCwkAFQsKABULIgCWCxEAigCSAQcAyQOSADcACAAyAIkAcAKGAEsFhAA8AoYKcgYKCr4Ciwr1AAoATwOOAL0BBgArAAcAJgAIAPgAigABAoUAcQGJClIBhQD+AoUAawGFCoADCAuIAQsLNgANC60ADQsmAZQLBwCGAKYCBwvOBIgLEwIGAAIBjACZAQUA+QCUAFIABwpdBIgKGwIFAIkBBgB6AQcAvQcJACAACQBPAgoArQIKAOUCjgB+AYUAFAOGAAEFhgAPBQcAsAeNAP0BBAA9AAUAOgAFAKsABQCrAgYAIwEGADYCBwByBgsACwIMABEBDAAvAQ8AJwCPAG8ABgDCAoYAAwWGAE0ChwuZBYULswEHACMEDQA2AAUKBAAFCioDBgoNAAYKGgIGCpoGBgq+BgcKGwcICpQACAq4AggKFwMMCn0AjwoJAIcK9AQFC1UABgujAQcLhgAHCzEBBwtpAQcLOQUIC0cAjAsHAokAOAOMC7ACBQuzAgcLWQEHCmkFCQteAAsKRgILCooCCwqFAwsKtQMMC6kADAroAAwK7AANCp0BDQr1AZIKdAAEAJUDhQDtAwcAPgYFC7cABgtGAgkLWAEKC6cCjAuzAQQKnQMFCiMDCAq6AooKPAOEAJcDhwv/AYsK4AMEAP8ABQAuAQYAhAAHAIAABwAbAQcAEwUKADQACgACAgsAnQMNAFwAjgA1AYYAWQWHCjcHhgBIAQcLyQeIC6wChQp/AYkArQCGC0cChgCDBRMAQQAFC8ACCAtlAQoL6QIOC6oBEQteAJMLOQAJCpQCigpbAQQLswAFC8YAhQu5AgcLWwEHC8sDCAu1AIoLxwKNALoBCwBKAwsAnAMNAD0BDQByAQ0A1QENANcBDgCNARIARQASAJEABwo8AgkKUAILCqgCDApkAYwKJgIOCxMADgscAJALHQCIABYCBAvzAAULywAHCxMABwtHAAcLcQAKC5UBCwtlAY4L8AAGANIACgBNA4oAXgMHC0cFCQtFAgoLfwILC8UBjAtIAgcLqgWLC2MACgB8AwwAzwKQAGkABAAcAQYA3wCGC+wBBQuGAAYLmAEGC+8Bhws5BogAEQKJACcDBADaAAcADgKPAIkABgCkBY4LBACEC5kCBAAOAQUAwAAGAEwBBwAqBQQL+AAHC4kAiQtdAYwAlQIHAO0FCwBVAg4ATAAOAE8BFAAhAAcK7AKLCrwCBQtzAYcLMwKSCzkAhQp/AIUAogEEC3YBBwsjAgcLpAYHCykHiwtaAwYKxgCMClMABwsUBw0LAwENC2QBDgvyAJMLcgAHAHsBCADhAQkAeQEFChQBBgo3AIcKWQWKCx4BBQDrAwYAlQAGCtgGiArWAggABgEJAHMCCgASAAsA1gALAJQBCwDJAQsADAMLAJEDDQCRAQ4AyAAGC28GBwsQBgcL2gcJC+4BiQv9AYcA5gKIADABhACOAIUK/AIGCjUBBwpLAYoKJgKHCiYEBgt7AAcL1gAHCtoDCQvYAgoLnQALC1oBCwuWAo8LagCHCiUGBwCdA4kAHwMEANcBBQAzAAYAWgIIAOQBigDDAIgAsAKEALkCBgCRBAYA2QQGCsIABwqFAAoK7QEKCjoCiwqYAowA7wIHAKEDCgDEAQsAbgMQACEABQoYAAUKOQIGCgMABgp3AAYKjwAGCrgBBwpXAgcKlgYHCj4HCAqoAQkKKwAJCkgCCQr4AgoKSAELCp8ACwr9AAwK5wGMChMCBAvDAg0LagASCzEAkwspAAUA3QAFC0wChguJAYYAnQUGC9MABwuaBgsL5gGMC3EBBQoOAAUKfAMGChsBBwrqAIgKGQIEANwDiAC7A4cA4wQECn4ACAp7ApMKIgAECjwBhwoZBokKXQMECkAABQpgAQUK0AIGCnABiwpnAYYAwAAEAIQABQBFAIcA2gQHCikGCgowAQoKJQIMCm0BDQrcAA0K8ACOCiEABABvAAcAYQOGC9sABQtGAgYLbgYHC2MABwuqBwcLwgcICwMCCAsFAwkLFwAJC+sBDAtsAg4LNACRCzIAhAD/AgcLOAKUCxUABgAqAAcAiAUHANUHCACDAAgA0gEJAKACDQD8ABQAZwCFC1MDhwAaBAYKrwCJCiEBBQqwAYUKkQMGACwAiABwAYcLEAOEADoChQB4AIsKUwKMAB0ABgDjAIcANQYEC2IABwtVBQkLpgEJC54CCgsHAwsL0gANCxoADQvJAY0L3AGMClAABQqjA4YKogaFAAoChgBgBIcA+QUMAOMCDgDAAY4A0wELCg4CCwqrA40KIgEFCgYDBgplBgYKlgaGCtcGBgCDBocA9AcHCo8ECwqmAw0KhwGRCkwAiQuTAAYKBAEHCswFCws1AwwLbgAMC5kAEgspAJYLEwAGAP8BDACEAIYKPQIFADgCBgCKAIcADQWEAPwDCAACAQkA0ACJAGcBBAA1AggAFwCIADsDhgBYAQQAmgMFAP8DDQvdAQ4LeACUCz0AhgDwAAUL0QAGCx4ACws4AIsLMQEGAKsABwDqAwcALAUJAJ8BDgDmABIARAAECiQBBArgAgUKZwMGCpkGBwqYB4kKRAIJC3sCiwsvAgQLlgAFCy8BhgtHAQYKPwCHCpgDhQoZAwgLwAAKC04ACgsrAgsLNAENC2cBkwtfAIcLEgOHC7AGiACSAQYA8gIGC2YGBwtPAAcL8AEJC4oACgtQAQsLDAAMC5wBDAu4AY4LMQEEAMwCjQAfAIUA1gMIALMCCADbAgUKQwAGCj4ABgp2AYcKbwUJChYDjAovAIsLLAKXCwEABwvMAAcLnwEICyoACgtVAAsLIQALCzQCDAs7ApULAQAIAHgDBwtiAocL3QUECocBhwqRBAUATwMJAEgDigAjA4kANwOGABEDCACYAAkANQAJAAwBCQCFAwoABgIKAD0DCwC8AA0ASgAOAC4ADwARAA8AIQARACgAEgAkABMAFAAWAAEAmAACAAQLAwAFC/cABQuEAgcL6AIHC7cEBwvJBAcLdQeSC5MAiAAUAocAqQKECg8BjAA6AYwApQIEAKwCiACAAQULHQEJC0MADQvZAY8LUgAECv0ABQogAgcKLAGJClQBBwBuAAcAvwEIACIBCABPAgkAfgEJAIkCCwBHAAsAmwALADkBDAAFAA0ARQGOAB8BhgAaB4gA7wOKAEEBBwBoAQcAqQEJAEIACQAWAYoAhAKFCjIDBQCBAQUKHQIGCl4ABgrzAQcK5gCLCkEBBAqYAwUKGQAFChYDBgrJAQcKVQOIChQDBACEA4UAXQMFAP4ABwDZA4gASQAHAKcHiACrAoYK5QaFCjYDhAp6AgQLHQAGCxQCBwtcBgcLcAYJCy8BCQteAQoLsQELC2EACwstAgsL6QIMCyEBDAtPAQwLXAEMC14CDQt0AA0L6QANC9IBDgu1AA4L0QAOC+gADgvsAA4LLAEQCykAlAthABMAVgAGCiQABwqSAogKxgGHC5wGhADVAgUL9QEHC6gGCQspAgsLCAIMCy0CjQv5AIYAxACFAD8DiADTAgcAaQcNAFAADQC1AZEASgAEAOADBgBzAogA4gOHCw4FhApoAAUAUAMGAEIAiAD8AgQAJAAHAGsFCgDNAIsA8wIGABYEhgDNBYYAtgOEAHcDDgDCAZQAbwAHAGwCBwA/AwkKHgIJCjYCigrYAgYApQCKAIQBiwoHAQQAzwKHAJsAigrUAQYLxQGQCyQAhguBAAUAFQIHAPMCigAMA4YAuQUEAGEBBgCSAAYA/QYHAKsBBwDeAwcARAUJAJkCCQCCAwsAfQOOANQABwpXAI4KIAEEAC0AhwDpBAwABwAHCtwDBwqTBwkKQAAJCvYBDAoiAA0KDAANCuoAkwpNAAQAXwIFCzwABgv4AQcLZgIHC4MEjAsAAIcKjQAIC8YACwsdAIwLFgKMAEEAiAAwA4QKawKLAFgABQr2AAgKvQAJCmMBCQoAAgoKfAAKCsUBCwqPAAsKoAELClsDjQpVAQQLewGHC3UFBABYAokAbQKFAG8BhgAxAgYALwKGAJsGBgBJAoYLSQKHC8wEBAt2AAUKpgIGCxIBBgtpAQcLSwCNC7kBhwsaB4kLSQMFAD0CBgAfAQcKXgMHCl4HigqzAIQKBQKMC7UCBQs6AQYL3QAHC6MBCguKAgsLjAEMC5wADQtxAQ4LTQGRCy8AjAocAogKmwILCpMBkgpTAAYAoAKFCvkCCQCdAAoKgwCMCkgABwDKAoYLzAGGAMgBhQCdAwULqgKHC18HiAv+AYgL2wGFC/gDCQATAAcLWgIIC7MACgsNA4wLfgAGC0kBigtvAAYANgOGAMEFkAtWAAsAcQCLC3EABQs1A4YLlwaFCsEBBwDPAREARQCICmcABwrsB4oKgQIGAMEABwDwAAcAkgYKADMACgCAAgsAmgENAFIADgD3AA4ASwGOAHkBBgDXAQsAmwGOAAIABQtHAAcLfwUJC4QBCQvAAgoLBQEKC2sCCwsjAgsLawKPC50AiAB5AocAfAQGACoCBwBwBQwAgQAHCvoEBwpqBQcL2AcJC1EBCgsFApIKVwAHACMDCAAeAgYKuwAHCrMECAp8AQ4KdQCVChwABgopAQcKGQOLCqoDCAC2AQsAawEHCtABCwppAAwK5wAOCoIBDwpmAJQKSwAFCxAABgtWAAYLWwIHCyQBBwsxAggLAQEIC34BCQvRAgkLCgMLC0UCjAvSAQYAzQIEC+YBhQvrAYQAawOEC0gABgsJAYcLTwMEAO0AhwACAgYAiAEHAEEAhwDjB4wLBQGHC5oDiQuUAQwAMwIOAGUAEgCBAAcK8gMLCt0CCwr3Ag0KIgCSCi0ABwp4BgkKcQEKClIBCgrqAQsKmgALCiECCwoHAw0KTQCNChIBBAC8AQoAkgCMAAkAiwujAAcA7ASHAP4GCQDeAAoAKwCLAIQDiQvqAIoAywOJAPkChgC7AogLsgEGAFwEBwBWBQUKFAAGC8UABgoqAQcKkwIIC80AiQrbAIQL6gELCzQDlgszAAcKoAULClYDCwpoAwsKmQMMCicCDQrYAY4KbwGMCw0AhAA9AwwA8gCECrcBiAqdAgYAUQIGC8QBBws4AYoL2wAEC00BCQuwAAwLYQGNC7sABwAkAAgAyQCIAF0CjADgAIQK6QCGAJYFhgAOBwQACwKFAH4CBgBhBwkAvgMJAMsDCQDQAwwAHAMMAB8DDAAoAwwAQwMMAEQDDACSAwwAsgMPANgADwDoABIAtwASALsAEgDCABIA1AASAOgAlQAxAIQK4gEGADsDhgCaBYcKWgGGAPsHBgDyAAcA4wAHAC0GCABoAAkAcQAJANwACQCrAQoAiAAKAO8ACwBDAgsA/wMNAAQADQDMAA0APAGUAFYAhguVBgcAlAAIABwBjQA/AI4ACgCHC0gChgDhBAcAXQOHCk4BBQobAwYKzQaJC0YAhAAnAwcLhwAICwcACAs+AAkL8wAKC5ICCgu5AgsLyAGLC/QCCQuLAYoLTwCJC2wAkwBeAIgA7gGHC3cChwpuAgcA5gWHCtYGBArLAIcKkAcHC5YBBwvLAQgLXgKLC9YCBwAaBQgA+QEJAOIBCgB+AAsA4QAMAFsBDADBAQ0AEwAOANoAjgCzAQUADAEKAPwCDAB4AA0AJwCRAH8AjgtEAAsKpgKMCjMBDAsMAQwLgAKOC3cAhwr8B4ULZAIEC3QBBwviAQgLngAJC1oCCQtnAgoL9QAKC6YCCgvoAgsL+ACLCyYDBwo3AQkKNAGMCv8ABACAAYcA/gMFC1YDhwvHB4cK8gQECpABBQoLAYcK6ACHAKcGCQCfAAsAlQKMAFsCBADEAw4AtgEOALwBDgDIARYAPAAWAD8ACQtqAAkLowAJCygBCgunAAoLrAAKCwkDiwsQAIgARwKEAAMCCAB4AggAuQKJAFYDBQvDAIcLlQYGAGMEhgBVBYYLSAEHC80HCAvaAosL7gMEAIgAhQAnAoYA9gYHAAcFCQAsAAoAKAIKAIICCwBHAwwAEgEMABMBDAB0AQ0AWwCOAH0ABQvvAgsLHQOMC8sAhQDcAgcApwIIADkBBApkAIcLNQMKAGkBjgA8AYYAUwIGAJMABwB2AwkA8QKKAAwBBQpqAQUKuwEGCj4BBwr7A4sKbwIFCs8BiAooAQQKxgEFC7YDBQviA4YLXwGKAIkABQowAAUKlAEGCi0CBwrKAQgKVQIKCscBCgpeAgsKMQALCiQCDArcAQ0KEgCNCsIBhQCeAYcA4gYFC6UBhwsvAAUKugGHCsAHhgBXAoYA1QaGAFsGBADoAYQLXgGJC+8ChABTAIwApAKFC8cDBwBnBgUKNwCMCqEABAvZAQcLbwIICygDCQtnAwkLfQMLCyYACwuvAQwLcAAMC9kADAvzAAwLMgIMC6sCDQuNAA0LxQANC+MADQuWAQ0L5wEOC5wADgvLAA4L4AAOCwABEgs6AJYLAACFCsIBBwvgAosLCAGGABYBBAveAAcLHgGIC3UChwplA4wAYQCQAA4AhgA9BAQK1QAHCt8AiApQAAcAhAEHAIQCiwANA4QAUQMHAOUACAA7AAkAvgAKAHoBjAC/AAcKfQEHCiYDBwo0AwgKYgEICrUBCAoTAwkKkQIKCjoACgpTAQoK7QILCpIDDAqiAA0KSwAOCmoADgrGAA4KQAEOCp0B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hApzAQQKEAGHCkQDBQo5A4YKaAYFC/sABQu8AwgLDAEJC9YAkguOAIoANAEGAEcHjQslAIkKbwMHCj0Bhwo5AoQLJgGGABYDBQDqA4gA6QIFC1oBBQvHAogLhgGHACEBBQD4AQsARACJCjMBBADvAAYA3QEHAEcGiwBpApUADQCFAGEChQtwAgULDwMHC84Hhwv/B4UKDQKEAG8BhAtSAgYAEAKFCu0BBAquAIcKjwMICqEBiQoOA4QAtgIHACQCiQA6AAQKIAAFCtcABgoNAQcK9gYHCmQHCgoQAAsKNgMLCroDjQrhAYwArwIHANUGiArdAYQLOQKFCjQBhwpABAQAlQKKAOwDBQslAAYLJwAGC8MBBwvaAAcLmwIHC44EBwuXBggLlgKQCwIACQC9AQwANQANAOwBBQp+AAgKKQEJCm4BjAp2AQcKDwaLCmkBlABKAIYL/AGHANUAhAqvAIQKrQIGAPgCBgBCA4YA4AQHC8UBBwt7AgcLHAMIC0sBCQtIAQkLSgEJC2EDCgt3AAoL6wALC28ACwuBAAsL8AAMCx8ADAtCAAwL3gAMCw0BDAtXAgwLsQINC7oADQtsAY4LWQEHAIgGiwC9AIUKHQOFCjUCBgAMBgYLYgAHC0kChwu+AgkAyAMPAMAAlQA4AAQK/AAGCyUABwsrAQcKLAQHC4IGCAvDAAgLPAEJC7IACQsUAQkLUwEJCxgCCgtmAAoLagEKCrIBCgsRAwsLNwALC5UACwrkAAsKqgELCwUDDQrnAA0LoAENC6MBDgsmAA4LKQAOC9IAEgpqAJQKVwAEAO8CCwCGAYwAIAAEAJkBhQBOAAsLygEMCw8AjAuwAQcAQgYKAAEBCgC6AgsAIAILAEkCDADUAA0AMwEFCucABwpZAgkKFQEJCqICCgqyAAoKogEKCv0BCwoTAgwKcQAMCtsBDQpjAI4KrAEGANkBkQBpAAYAnQcPAJwAhQuFAgcKNwaQCisAhwDzBocKkwYECyIBhwtMBYYA+wIGC0YABwsMBQoL+gKLCyABjgAdAIwLrAEHAHMDBwuDAAcLpgEIC9IAjAs9AoYA6AEECo8BBQp3AAUK7gEHCu8CiQosAoUAaQKEC6gDiwAyAAcA7gWLALYCiQARAwQAIgKHAPoHBwvMAg0LYQCNC/sAhAuNApEAFgCGAPgDBAA5AYUAQQKIC5EC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CAsGAwoLngKMCzMAhQoQA4sKcgMEAFIABQBNAQUAiAMGAM8ABwBFAQcAvgYIAGUACgAKA4sA3ACHC3MBhAC+A4UAhwMEC38ABQteAQYLZAEIC6oBCQs8AgoL9wCLCzgBjACTAAYLOwAHC3UDCQtbAo0LjQEKAG8BCQoOAAkKuQGLCgkACwrGAwwKHwENClYBDQqSAQ8KbgCPCqMAhgCyAoQAwQIJAIsCCwDLAw0AEQEHCpQFBwpoBgcKSwcJCqkACQq2AAkKbwEJCt4BCQr6AQkKJwIJCi0CCQqIAgkKuQIJCsECCQrVAgkKEwMJChoDCgrGAAoK1gAKCgsBCgoTAQoKyAEKCicCCgoxAgoKZQIKCnMCCgqcAgoKowIKCrMCCgq3AgoKwwIKCssCCwq3AAsKyQALCgYBCwpgAQsKtwELCu0BCwo8AgsKTwILCmACCwpjAgsKhgILCqICCwrHAgsK7wILCvkCCwoIAwsKEQMLClIDCwpVAwsKXgMLCmEDCwpkAwsKawMLCoIDCwqGAwsKhwMLCo4DCwqkAwsKrgMLCr0DCwrHAwsKzAMMCpQADArDAAwK3AAMCu0ADAo+AQwKUwEMCokBDAq9AQwKwgEMCtoBDAr5AQwK/QEMChUCDApPAgwKUgIMClUCDAptAgwKeQIMCoICDQo7AA0KPAANCpEADQrvAA0K+gANCkkBDQpYAQ0KbQENCnQBDQqDAQ0KkwENCp4BDQrIAQ0K1gENCt4BDQrjAQ0K6QEOCjcADgo5AA4KUQAOCloADgqUAA4K7wAOCgoBDgpBAQ4KRgEOCkcBDgpKAQ4KWwEOCmMBDgqRAQ4KlAEOCpsBDgqeAQ4KoAEOCqQBDwo9AA8KSgAPClcADwpYAA8KXgAPCmAADwp0AA8KlQAPCpoAEAoyABAKPwAQCkkAEQoCABEKQgARClwAEQpnABEKcAARCngAEgoyABIKNgASClIAEgpWABIKWgASCm8AEgpzABIKnAATCigAEwpPABQKTgCVChYABwB3AwUKoQCHCkcDjgtiAIYAWgCKC2QBhwu5AQYLbwAHCwQACAujAAgLCAOKCzYChgCMA4YA7QQHAC0DDADxAY0AOACGANMEhwCtAYcLygeKAIgDBgB9AAcA/QSJAAQDlwAMAAQASQMFAIIBhQuCAQULKQGHCw4EBgBcAwYALQSHCzUB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CwsiAgsLtAIMCwMBDAsnAQ0LLgCNC5oAhgCkAoQLTAIEC+cABQs9AAYLaAAHC9kCBwvEAwcLegaMC54BBgsHAYoL9QILAFEBjgAvAYcLUwWEC0ABjAD6AYYKvwEFAE0ABwCvBQoASwOTAEkABwpBAgcKmAUJCtsBCQr5AQkKDgIJCmECCQqxAgkK1gIJCt8CCQriAgoKLAIKCqICCgqsAgsKWQALCsoACwoQAQsKfAELCp8BCwr5AQsKGQILCiYCCwoyAgsKgAILCpsCCwqwAgsKTwMLCp8DCwqiAwsKrAMMCpAADApFAQwKSQEMCoUBDAqTAQwKwwEMCgMCDApcAgwKaAIMCnICDQpCAA0KgwANCqcADQrsAA0KcAENCpsBDQqyAQ0KxQENCs0BDQraAQ4KOwAOCjwADgqLAA4KmAAOChQBDgphAQ4KkgEPChwADwpRAA8KewAPCpgAEgqIAJQKWACEAMoBhwCMBQYAbQAKAH4BBAuVAQQKYQIHCvQCBwsxAwkKIAILCp0BDgs6AA4KMwEQChkAEQslAJILfAAGAEoBBwA8BAsAjgCFC84DBAqiA4UKswMFCqsDjguKARAAWwCRAFcABQvrAAUKwgMHC9cECwuDAIwLcgELAOwBBQqLAggKqgAJCj0ACQo/AAoKFwAKCiUACgpCAwsKBAALChkBCwr3AQsKpQIMCmAADAqCAAwK9AAOCgUADgooAA4KogAOCsoAkgqFAAQKlgEFCkMCDArsAZYKDwAJC4kAigvdAIYA1wQLANMAjACRAAcLhgGKC4wAhwuKBYcLeASGABkEBwBBAQYKEQAHCukDBwq+BwkKdgMKCukBCgogAwsKDgMMCkABDQrTAQ4KkQAOCoMBjwp3AJEKEQAFC5cBCwvpARMLJQAUC0kAlgsmAIUKygGHAMEHBwq/BwgKAAAICqsACQp4AAkK3AIKCtkBCwqQAgsK5gMSCgAAEgoCAJMKFQAFC0UBBwvLBQgLBQAIC+MACQtpAAoLSQKMC2YCiAB6AIQA6gCHC6wEBgDQAwYASgSGAKEFBwD9AIgAJQIGC20CDQv4AZALEwCECgcCBQCuAQUApAMGAIMABwChAQkACgILADoBjQCGAQ4AlQAOAI8BjwA5AAUKiwMGCh8ABgvaAAcK6wEHChICCApQAgsKNQALCgsDDAqnAAwKmwEOCg4ADgqIAA8KSAAQChEAkApIAIwLSgEHC8YBBwsOA4gLAAOEAPsBCgukAowLzgEGAHYCCQArAwQK0AAFCmoABgoTAggKmAEJCrwAigo8AgQAVwEFAP8BhgqdBoYLpACEAMABBwDHAYoATwKHAGUFDAq5AZYLMgAJCsEBCgrAAIoK5AIGAD8ChArxAIYAlwSGAI0ChgDhBoYArgSECgMBBgtXAQcLwwAJC+IACgvFAAoLPwILC/YBiwuDAwcAZwQHACQGCgApAQoApgELAPwCCwAqAwwACAENAGYADQAsAQ0A5AEOAJMADgDlABEARwASAHYAkwB4AIcLmgKEAKYCBAqtAAUKOAEFCgAChwoFBQcKQwYHCpsGCQrQAQsKwwAMChcBDArAAQ4KCwCTCmYAEABjAJIApAAHC2UECQuPAAsLPQAOC5UBlgsVAIkLBAEECsQBBQpHAgUKMQMGCrEBBwpRAgcK0AIHCmIFCAqhAAkKHAEKCjkBiwp2A4QKIwKICtICDgAjAI4AvwCNAC0AigB5AIQAfQCGAFYGhQu/AwgKpAGLCsEAhADRAocKmQGIAJEABwAYAwgAkwAKADUDCwDKAwsA/QOIC60AhgsKAYQAywIHAM8Higo0AYUAEwIFAKgABQCiAwgASgAJAG8CDAD0AYwAQwKQAEEAigv2AAYA3AAHAE0EDQBpAI4LOgEFCuoDiArpAoYAwAMUAAAAlAsAAAQA7QMECu8ABgrdAQcKRwYLCkQAiwppAgYAEwAHAIUFiwCsAZUKDQAHAGAACACRAQgAvwIJAIADiAssAYYAOwaRAHQAiAD9AwcAqQcHAK0HBwDuBwgAlgAIAL4CCADhAggA7gKMAG4BCwtLAI4LCwGECm8BCAAgAwkAlAAJAGgDCQB6AwsANQELAOkDDQALAQ0AQwEFC6sBBQveAgcL3gGICzQABwvvAAsL2QCOC6UAhAtDAYwLowENACsBjgBLAAYLVwAGC8YGBwsUAAcLIAQIC9wCCQuWAQkLjwOKC7YChgBnBYQKtgKFC2UCiQALAwQAVgKMCq8CBgDKA4cAqAGFACMCBwsgAAcL2AMIC1UACAvFAgkLQwIJC08DCQtYAwoLHwMLCwIBCwvvAwwLSwEMC2cCDQu8AA0LswEOCwgADwulABALGwCUCygABgDGBIYAaQWEAGwDiguXAIcK1QAEC6cAhwtSAIUAhQAGCxgABwtKAAcLpgKJCwIBBQs+AAYLFgIHC6wCBwsTBAcLMAQICxgBCAsdAggLrgIKCwcCCwv8AIwLGgGIALsACAAIAAoAAAAKADIDiwDcA4QLZwELAK0BDwAzAIcKiAaIAK0CBQvTAAcLWACIC3MChgDYAYgAhAAGC5EAjQtQAQQK7wILCoYBjAogAAYAqgMGACQEBAsHAQQKmQGFCk4AiQBqAwgABgMKAJ4CDAAzAAQLlAMGCtkBBwpCBgoKugIMCtQADQozAZEKaQCSAFwAjwqcAIQAPgOJAL0CBAtXAgYLYgYHCwUABws3AAcLQwAHC2EABwuzAgcL0wMHC6EGCAvPAAgL1gAIC+cACAsmAQgLUAEIC6wBCAvDAQgLzAEIC9cBCAtuAggLcgIIC6cCCAv3AggLPQMJCwsACQv2AAkL5AEJCz0CCQvCAgkL+gIJCx4DCQtXAwkLZgMJC5ADCgsvAQoLTwEKC6gBCgvNAQoLHwIKC/cCCgsuAwsLOwALC8cACwvrAAsL2wELC04CCwuhAwsLwwMMC3IADAu2AAwL4gAMC0wBDAu3AQwLPwIMC1YCDQsIAA0LfQANC8IADQsfAQ4LxQAOC38BDws1ABELPwATCy4AEwtiABMLagCUC1UABAB/AAUAXgEGAGQBCACqAQkAPAIKAPcAiwA4AYYAvwQGADsACQBbAg0AjQEHCz0Higu1AYYA4gaTC34AhwpzAw0AJQGOADgAhQppAosKMgAFC7sABwruBYsKtgKHALkBBgBvAAcABAAIAKMACAAIA4oANgKEACYDBAvXAAkLJgAKCwMACwsXAAsLfwCLCxwDDgDpAAQKIgKHCvoHhwDKB4YAywaHC/oFiACJAQUAKQEHAA4EDgBnARMANACUAC8AhwA1AQQKOQGFCkECCAq4AI0KsQGHCqcDDAq6AAwKJAEOCmQAkgpGAIgAawEOAK8ACwqSAQwKbQAMCq8BDQqzAA0KzgAOCtkAEAoDAJQKNQAFCnYDBgouAAYK/gYHCg4ABwrcAgcKdgYICl8ACApHAQgKaAIJCnwDCgpWAgoKAQMLCoYACwrrAgwKegGOCmEAiACaAocAiwYGAI8ChgBABocAKAOFCv0DBAscAAULuAEHC/gACwtBA4wLWAGGC3YGhAAYAYwANgAEAKUBhQAkAoQKmQAGC1MB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hQoxAYQL9wAHAHMFCADmAQkA7AAJAG4DCgDaAAsAXwATABEAkwAfAAcA+wcIAKACjQDAAQQLuAAFC4YBBgtRAQcLFwAHC+4BBwtqAgcLsAUICxsACAtXAgoLmQCLC8YChwDSAYcK1AQGAKcABwC6AAcAkAIKAIMCBArgAQYKLgEGCmoGBwpFAwcKCwYHCnkGCAqtAQkK5AANCiEBDQpXAZMKZQCGAJQFhgCgBQUAnAEHChYBCgrjAgsKxAKNClwBhgBeBIgAMgKUCy4ACQA8AYsAAAGGAOsGhwCmBIkAhAAKC+MACwvxAQsLxQKMC58BjwBCAAYLaAEHC4AGiAveAZAKHAAEAD0BhwD/BAUAPwCFAP0BiAu7ApEKJACGAMMFCwtXAY4LfwCEC+MChAAgAYcL3QYIAFkACABsAgkAYAILAHQCDABCAY8AfACGAMkEBwClBAQLQwAFC6YBBgprAQcLDQQHCwkFBwsTBgcKowcICtUCCQvlApELbACGALwFBgCxAoYAqwWKAHgAlwABAIkKJQOOAEkBBQotA4cK/geHAOIAigtgAAcAPwcFCsgCCwoRAA0KQQGQCkMACQDNAQYKQAEHCg0DBwqBBwkKNwAKCroACgoRAQoKmAIKCiEDCwrkAwsK5QMNCp0AjgqqAAgLywAICg8BCws3AwsLTgMMC+IBDQuFAA0LFQENCy4BDQvQAQ4LzQCOC90AhwBCBQQLwQGFC84ChgBVAA4AKwEHCmcABwpfAwsKuACRCj4ABAtjAQYLNwEJCwABiguUAYkKkwKKC/YChQs7AwULQACMC0UChgCTBAQLugEHCxcEBwtIBYcLawaEANQDBQvRAwYLIAEHCxAChwspBAUAFwEGAOsABwDUAQgAvgEJAH0CCgDNAgsA4gKMAAIChAAlAQsKUQGOCi8BiAsdAQUAEQAGAHMBCQAQAgwAbAGEC/4ABQpNAAcKrwUKCksDkwpJAJYABQCECsoBBgsMAAcLwwSRC0kAhwqMBQYKbQCKCn4Bhwt9AAYKSgEHCjwEiwqOAAYLcQEGC/YBBwsMBAgLXAEJC8QBCgsaAAsL4AALC4MBCwsEAwwLXwAMC3UCDQvDAA0LzwANC/EADgsEAQ4LDgGPC4wAhAsNAQUL4AEHCxQCBwutBAcLTgUICyMBCwtdAY4LjAGWADAACgBZAg0AYQGNAHgB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CwDbAQQKVwIGCmIGBwpDAAcKswIHCtMDBwqhBggKzwAICtYACArnAAgKJgEIClABCAqsAQgK1wEICm4CCApyAggKpwIICvcCCAo9AwkKCwAJCvYACQrkAQkKPQIJCsICCQr6AgkKHgMJClcDCQpmAwkKkAMKCi8BCgpPAQoKqAEKCs0BCgofAgoK9wIKCi4DCwo7AAsK6wALCk4CCwqhAwsKwwMLCtsDDApyAAwKtgAMCuIADApMAQwKtwEMCj8CDApWAgwKowINCggADQp9AA0KwgANCh8BDgrFAA4KfwEPCjUAEQo/ABMKLgATCmIAEwpqAJQKVQCEC9wBBABHAQUA3gEHADQFiADxAgUA/AOFAP4DhwsPBwQAZwCFAJEBBADzAYcAjQUKAM8ADQCkAJMKfgAJCxQACgtEAYsL6AGEAGAACQsYAYoLhgCHAMgDhQq7AIcKBgUFC3AABgtnAIYLlgAIAJIDCgADAAQK1wAJCiYACwoXAAsKfwCLChwDhwCPAQYAMwKJAOAABgDAAoYAvgQEC8QCCAsPAAkLMgAJC4IBCwsSAAsLEQKMC+QABAszAgcLbQAHC1ACBwt9AgcLAgMHC6UGCAu0AQgLzwEJCzwACQtPAQkLiAMKC0kACwuyAQwLSQINC0sBEgtuAJQLPACGABcGhAv2AQYLWwGKC6EABAshAAULZgAFC/QBBgscAQcLNwQHC48FBwumBggL1gEJCyoCCQvTAosLTQEHC/YAhwtIAwYLCgAICzsCCQvjAo8LWwAIAF0DCgCJAwwA2gIMABUDhQtyAoYAsgMFAOoCDABNAQ4ATAEMC00BjgtMAQULEgAGCw4CDQsYAA0LbgATCwUAkwssAAQAjgMFAEADhwrSBwoLAAOLCxMDBAs1AQULzgEHC8oDhwtJBAQKHAAFCrgBBwr4AAsKQQOMClgBhgp2BgYAeAIGAIwCBgD4BAYAaAWGABgGhguoBgYAcQWFClUDBgr5AAcK0gSLCj0CBQtWAAcL5wIJC1UACgsZAQoLsAELC+oBDAv7AA0LdgAOC3oBkguPAAULDAKFC+gChgDqBQoAyQCOAD8BBwDNAgoA/gEHCogBCAoUAAgKrAAICrICCQp/AQkKTQMLCiUBCwpAAwsKmAMLCtgDjQrdAIYAZQUFCloDhQrgAwgAEAKJAFwBCgtrAIwLtAEEABQAhQBoAoYA4wSEC58DCgt7AAwLngINC3MBDguOAJILXgCGAIsEBwt9BIkLnACGADMBhQsKAwcAQwSHAOUGBQv2AQYKDAGJCj4ACAvEAAoLGwGLC5YBBAAaAAUArQEGAPUABwDAAgcAYwWHAMIFhQtXA4QAcQMEAG0Chws8BgcLeAUJC74BigstAAYA4AKKCmoAhQAeAoYAXAGFAGQDiACxAYcA1wWKAAMDBgplAogK3wCKANcAjQB8AIgLhwGHC6wAhAqeAowANwAJCigAiwqIAAcAPgCTAHAAhABYA4QLOAIMAA4BiwoDAQgAPAKJALoCBAvcAgkKNgGJCqoCjgooAYYAqwOIC90ChwubBQcKeQWHCsQFBgBgAQQKKAEHCpEBBwqCBQcKOgYHCooGCAo/AAgKlAKJCkoABAusAYULnAIECosABAqEAYwKvAAHC98HjAuZAoQAhwKSAAoAigDcAI4A0AGEAG0AhgDSBgYAAwIECusCBgtXBgYLkQYHCokCBwrHBYcKLwaFCugAhwA2AokKdwMEACgACgBDAAsAdQALAAADiwCnA4QAIQMHAOADCAAtAQkA0gIMAD8ADQAdAA4AoQCPABIAiwCbAwYL1AYIC8sCCQsiAwoLLgAKCzMDDQs0AQ4LXwEOC2sBkgtDAIkL6QIHAHkEBAoOAAcKCQcKCuwCjQrKAQQLPwAFC1sBhgvaAYcAOAIECqkBBwtBAgcLmAUJC9sBCQv5AQkLDgIJC2ECCQuxAgkL1gIJC98CCQviAgoLLAIKC6ICCgusAgsLWQALC8oACwsQAQsLfAELC58BCwv5AQsLGQILCyYCCwsyAgsLgAILC5sCCwuwAgsLTwMLC58DCwuiAwsLrAMMC5AADAtFAQwLSQEMC4UBDAuTAQwLwwEMCwMCDAtcAgwLaAIMC3ICDQtCAA0LgwANC6cADQvsAA0LcAENC5sBDQuyAQ0LxQENC80BDQvaAQ4LOwAOCzwADguLAA4LmAAOCxQBDgthAQ4LkgEPCxwADwtRAA8LewAPC5gAEguIAJQLWACJAPcAhwtWBgkLIAILC50BkAsZAAQAhQIHADkDBgroBocLWQCMAEgBBQqvA4YK8waGAFMFBQr1AAYKQAIHCkYCiArhAIYAAAUFCzgDhQutAwcLuAEIC+YAiwtqAAUAHAAGAMwACgBAAQoARwINAPYB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iAsOAowA4QILClwACwrEAAsKmQELCsIBCwqaAgsKCQMMCgYBDQqBAQ0KiQEPCnMAEAotAJEKUgAEAOIABABGAQcA6gYECz8BBQu7AooLoQIGCigAhwr1BgUAqgEIAB4ACQACAAsAJQKTAHoABgCJBIYAMQWKCmEABgqnAQcKmQKHCroEBwsNAAgL4gAKCxkCCws6AgsLXQILCx8DCwskAwwLVQAMCwQCDAtvAg0LcAANC2kBDgtNAA4LTgARCxwAkwtuAIQLAQOECycChAvYApMAdQAJCzkACQvLAQoLqQELC3cADAu4AAwLcwENC2YBkQszAAULvAAFCy4DCAsKAAkLpQEJC9kCCgthAosLsQKGC3AChwsqAYcAzgEEAFkBiwpwAogKPgIEAIEBBwAJAYcASwIGACgDhAsQAoUAjgGECmIBBABbAQUApwEFAOQDhwAxBYcKFgYHAOsECQB9AIsAQQAFAIgABgCIAIgAhAIFC2gABgutAIcLXwaHANUBhQo+AwQAFgEFANEBhwBXBQcLKgMIC4oACAtWAQkLVAAKC8EACwtzA4wLZwEFCvABhwrLAAQAsQGFAM8CBgtfAIYKIwIFClgAiQrvAAYLlgEKC5kBCgu/AQsLLACMC2QAhgCPBQcKigKHCh4FhgDtAocL2wSHAFMFBgB9AQcAhQIHALYCCAAiAgcKNAQJClAACwpOAAsKpQELChYCjAohAoYLZAaHC0AFDAAVAQcKEgELCt8Biwr7AQYAwQIGAA8DBgD7BAYAyQUECxoBBwsKBAsLjgELC3oCDAsBAAwLTwAMCyACDgvtABELCgCSCxQAhgDFAQQAKwIIABgCCgAgAQsA7QMECvEBhwowBgULdgAFC/MBBgvcAQcLWAIHC3gDhwtIBIoA2wMHAFMEBwoFAQcKWwQHCkoFBwo0BgcKqQYHCm4HCQrRAQoK+AAKCl0BCgqHAgsKDwILCpQCCwqdAgwKEQKNCjEBBwsoAQcLVAIICzACCAtKAgkLZAILC2QACwswAQwLLgANC1kADgtwAJELegAJAHIBigBaAIgKDQCEAFwDBwqCAggK+gALCnsACwqJAA0KMACOCl8AhwqVBYkLQQGEAAEBhwDvBwcA6AYHCz8GBwu7BggLTwAIC2oACAu+AAgLLgEIC38BCQt3AAkL6QAJCyoBCQujAQkL1wEKC7UA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Cwu1AwwL6AAMC+wADQudAQ0L9QGSC3QACQCMAAUK3gCKChYCBgAgBIkKigOGAKgGigr3AYYADAQFCpoABwrTBQoKewGKCuUBBAt/AYUKzAKGACMFBQBWAAcA5wIJAFUACgAZAQoAsAELADkDDAD7AA0AdgCOAHoBCAAIAQQKWwAFCoQBBQpNAwYKzgAGCvwABgptAQcKiAAHChMCiAptAgUADAKFAOgCBQsVAY0L9wCEC7MBCgBrAIwAtAGEAJ8DCgB7AAwAngKSAF4ABwB9BAkAnACKAL0DBQsJAQYL1ACHCxwAhQAKA4UA9gEIAMQACgAbAYsAlgGHCkACiAsXAoYAIAUFCgMDBQpfAwUKggMGCmAGBgpsBoYK9AYFAFcDBQpLAYcLzwWEC74CBQsoA4cL/QcHAHgFCQC+AYoALQCMCngChADrAwULpgAIC+MCjAv/AQUKawAHCskAiAoGAgYKvgGHChkHhgD8BYYASQQEC3cABQuqAAULvwEHC6wGBwthBwkLZQEJC88CDAvmAYwLVAIJClMDjQr+AQcAZAIIACECCAA4AggAggIJAM0CCgAdAgoA+wILAMEBDADpAQ0AmQANACgBDgCKAA4AiAEPADIAEAAGABAADAAUAAkAhAr4AQQLwgGHC4YECwA2AA0ArQANACYBBQpzAwUKzwMICogBlAoHAA0AxwEPAGMADwCBAJAARACHAKwAhAvyAgUKmgOGCqsGhgAFBBELJwCUCyQABAA4AgUK4QMHCgMCiQpbAIQA3AIKAGkCigtpAoYAzgMHAN0DCgB5AQwAawENAEQADQBeAA4AbACOADIBiADdAoQArAEHAP0GhwsmBAcA3weMAJkChwqZBQUAHwEHCpkDCApEAggKUQIICnYCigocAIoAJgMECo8DBQpjAwUK9QMHCvIHCAoeA4gKLQOGAAMGCAsLApYLIgCHC+QCBwvuAAcL8QcIC3gACAu8AAgLkwIJC1YCCgvSAQwLVgEMC0wCDQv3AQ4L9gCPC1wABwAbBo0AtgAFCocABgoHAgcKugYKCg8BCwoFAZEKNgAOClIBlApRAAcA5AEECiwBhQq0AZELcgAGAFcGhgCRBoULgAIEC8kABwvQBggLWgILC/cACws6A5ELQQAIC6QAkgs+AAYAKQcGAEUHiABuA4YAIQYICmUBCgrpAg4KqgERCl4Akwo5AAwAXQAMAPUBDQBqAQ4AlwAPACgADwA7ABAALgARABkAEgAOABIAhgATABkAEwBFABQAEAAUABMAFABCABUAFwAVABkAlgAqAAYA1AYIAMsCCQAiAwoALgAKADMDDQA0AQ4AXwEOAGsBkgBDAIQA4gMEAD8AhQBbAYQATwKFAO0CBwspBgoLMAEKCyUCCwuoAQwLbQENC9wADQvwAI4LIQCFAG4BBwAtAgwAIwIOAFYAhQqDAYcA0waEC4sDBQtkAAoLSQEMC6ABlQsdAAQKBgAFCsQCiApLAAcKRwUJCkUCCgp/AgsKxQGMCkgCBwBZAIQKLwGKCgQDhAuwAAULfAIFC+YDCAsaAIkLZgEHCwkABwvkBQkLPQEKC9IACgskAQoLFQILCysCDAsOAgwLXwINCwcBDQvLAY4LDwGGALcFBgAEAwYAcQSLC1MCBwDRA4sLQgCKAH0DFAAwAJQLMAAFADgDhQCtA4YLJwEHAAcGBwD5BgoAsgIECmoAiwrNAgcAuAEIAOYAiwBqAAUKegOFCtwDBgpyAo4KrwEKC38AjQsbABEAIAAKCsIClgosAIQA2ACJAEwBBAq6AogLdwCLCwsBigoRAAsLDgILC6sDjQsiAQcLjwQLC6YDDQuHAZELTACLCycAhgpUAAQAkgMFACADhQBUAwoAoAGNAHMABwA0Ao4AqAAEAJYDhQBsA4YA5AaYAAMABABcAAUAEgEHC34AiAtUAIwK8gGICxYDCAD1AQUK2gMGCoIABwouBggKygEKCmUACgo+AYoKNwMGC0AADAt5AY0LNQEFAOcCigBTAwQAMQAHABgBhwBhBoYAbwOIAC8ABwpsBokKgQCEAGEDhgCyBAkLIgCLC+QBhwrlAwUAEAEFAIwDBQCuAwgAxQAJAC8ACwAaAosA5gIGC6QGBwsaAAcLJQEHC34BBwsCBAcLPwQHC+sHCAsYAAgLcgAIC/wACAvXAggL2QIJCx4ACQvHAAkL5wAJC/sACQtOAQkLaQEJC+gBCQvIAgoLNwAKCzwACgvoAAoLTAEKC4ABCguMAQoL+AEKCx4CCguMAgsLFAALCzAACwvPAAsLIwELCyoBCwtWAQsLbQELC4oBCwtsAgsLwQILC/kDDAt7AAwLVAEMC5YBDAuDAg0LPQANCw0BDQs3AQ0LPwENC+YBDgvqAA8LPgAPC1UAEAtHABILdwCUC2kABgCvBZYLJQCHCocHhwB3B4kAewMHCtwGiQpiAAcKFgSLCqAAhAD5AgYLewEHCw4BBwtcBAgLsAAIC7cACQuwAQkLlQIMC/cADAtpApILfQAGCi0ABwqxAQgKgQAJChUACgqIAQsKTwAMCvMBDQrHAI0KwwEEAJcBBQsYA4ULhAOEADAChwC3AA0A6gEHCi4CiAphAQQA2wEGANsCCwAjAA0ARwANALEADgCmAYUKEQMIClEACQq9AAkKyQALCt4BCwrIAo0KUgEEAKIBBAAzA4UKYQGXChoABAuFA4ULCAOEAD8CBwAyAxAAXAARAA4AEQAtABIASwCUABIABgDeAAcAfAIHAFQGCACZAQkAtQKLAE0ABgoZAAcKVwMHCuoEkAogAAYAWAcGAF8HBgB+BwYAhAcJAMcDCQDjAwkA9wMMADoDDABRAwwAWQMMAFwDDAB2AwwApAMSAOQAEgDnAJIA8ACGAHkChgAcBQQLJQAFC04BhwvlBAoAVgAECgQABwpeBAcKKAUHCqoGCAoVAQkKbgILCtQCDApeAQwKjQENChwADQqfAA8KWQASCgUAEwoJABQKIgCWCi8AhAv8AYkLwAEMC2sAkgsfAIQAMQOGAJcChQByA4YAkgOECxwChAsVAogLYAIIAHUDigBhA4QAqgEGADoABwDpAgcAsQcIAI8BCACjAgkA3wEJANsCCgBKAQoAUQIKADEDCwAgAAsAhQALAN0AkQBEAIYK/wAHAGYAiQAaAokK2AAHC/0AiAslAocLkAMJCrcAiwoeAQsKvAOXCgMACAsPAhILPACTCxgABAoYAgcKdQQKCtMCiwpzAYULmAMHAGwDhwodAYcKMAKECrICjgt+AAsKIQAMCjsClQoBAIUANgIJAIsACgCPAQsA1QEMAHoCDQDfAIQL4wEGADAAhwA/ABIADAAHCkYHDArrAQwKCAINCn8Bjgr0AIcLgQaEC8ABCQvvAZILaAAGAHIABwDIBAcAFAaIAAMABAq+AIUKKgIIAEACCQALAYUK6QOFCr4BhQClA4sL8QMIC40CDQtdAJMLDgAGALQCBgA1A4YANQQFC6wAhwshA4oA8AIEAHcBhgB+AoYA8wOMCxwCCQBgAIULBAGLC0sChwrPBAwAHgANAJQADgBXAA4AtgAQACoAFABGAIQKMAEGAHYFBwA4AAcAxQcIAFEBCADiAgkAWAIMACUADQC/AY4AXACKAJoCBQCKAQcA5wGIAPYACQC1AQYKNQAGCscABwqABQgKIAAICl0ACgqNAQoKdQILClECCwr7Ag0KRgGRCiMAhgppAAkAQAEKAPoBigoaAwcLOQAIC6cACAt3AQkLUgAJCzECCgtsAgoLAgMLCsACjQqMAQYA6wMFCnIABQr/AI0KHQEHAGIDhwCLBIULEwKEAEgBBwrzBwgKEwAJClkAigo/AwgLwgCIC/QCiADoAwULxQGGC7kBBABlAAUAQQMHAJMEiADoAoUA1gKICuoCigCwAAYACQAGAI0BBwA1AAcAzgYKAHgCCwA8A4wAkgCHCxYAkQtAAIQARwMLAKEBDADfAIwACQEEC2YABwsvAwcLowaLC8QDBQq7A4gKLgMGAIsHBgDXBxIA9gCSAPcACADGAAsAHQCMABYChwDrBgYATgMHC/IDCwvdAgsL9wIMCzMCDQsiAA4LZQASCy0AkguBAAQAugAFAJ0ACACoAIoABgCEC4MDhQo4AJQKZACFAGsDBQAFAwUA3wMGAGMGhgD8BgYA+gQJAN0BjQBOAAQAfwIHAG8ACABFAgwAsQAGCzQACQtoAAkLLwIKCgQACgoNAAsKfgIMCzQBEwtXAJQKOQCEC1wCBAstAYUK4gKFCvYChgDTBgcLoAULC1YDCwtoAwsLmQMMCycCDQvYAY4LbwEHAFQFBwBzB40AngCGAGkDBACUAQQAkwIHACgChwCjAocKWASLCkgBBwv8AYkKhQCFAIcBBQpuAAYKqQAGCqYGBwqQAQgKGgIJCrgACQoMAowK2gAGCzYBBws5BwgLSAAICxABCAuvAQkLDAAJC18BCgszAgoLdgIKCyoDCwtvAQsLVwILC64CjAugAgUAHAIGAKEGiACcAoQAcwOGAE4ADAB0AhIATwAGCoUACQphAYsK4QMGC7UABwsZAggLQAAJC38ACgvwAQwL/gGNC4ABBgpdAAcKjgUHCjsHCAqhAgkKEQKMCisAiQpzAYYAtAWGAMIDBAv0AIcL6QAJChkACgrTAYoKLwIECk8BhwquA4UAzAGHC04BhgtyBgQAxwCLACIABQpZAggKJwAKCgUDCwpUAAwKzQCOCgEAhQpmA4YAhAEOANoBlAB4AIULcQGLAA8BBAD/AQkATQEJAHsBCgBaAgsAuQELANMCCwDQAwwAZQGECrUAhgBgAoYKdAYWADEAiQtSAYwA3AOGAGkCBQCqA4gAwwKECmEABQqTAAYKHgEHClIFjQqwAAYA9AKGAH0EhQuAAwYKdwEHCqkABwr+AIgKDAOGAC8GhwqnBYsAHQEHC10ECAuJAYgLGwKHAFgBBgDVAQcArQaKAAMCBQp1AocKDQYFCwQABQsqAwYLDQAGCxoCBguaBgYLvgYHC/MBBwsbBwgLlAAIC7gCCAsXAwwLfQANCzYAjwsJAIcL9ASJAJQBhAD0AQUARACGAH8BCwDYAIsAVAEEC50DBQsjAwgLugKKCzwDBABRAQYAYQEHAI4HCADoAYkArQEHAOwABwADBwgAAwEJAIcACQCxAAkAXAMKADkDCwBzAAsAcgELAJUBCwBcAgwACgAMAJsCDACdAg0ATAAOADYBDwBMAA8AkwCUABcABAAPAAQA6gEFABYABgD0AAcAKAAHAMgABwCKAwcArwQJAGgCCgDMAgsAewILACEDjADKAQwA9AKECqQBhgDgBQYA9QKFC38BBgDyBIcAxwYFAFYCBwAXAwgAbAAJAHsABwoiBowKHgKOC5oBCQuUAooLWwEAQcGUGQv/AQECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+PwABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+PwBBxJgZC/wBAQEBAQICAgIDAwMDBAQEBAUFBQUGBgYGBwcHBwgICAgJCQkJCgoKCgsLCwsMDAwMDQ0NDQ4ODg4PDw8PEBAQEBERERESEhISExMTExQUFBQVFRUVFhYWFhcXFxcYGBgYGRkZGRoaGhobGxsbHBwcHB0dHR0eHh4eHx8fHyAgICAhISEhIiIiIiMjIyMkJCQkJSUlJSYmJiYnJycnKCgoKCkpKSkqKioqKysrKywsLCwtLS0tLi4uLi8vLy8wMDAwMTExMTIyMjIzMzMzNDQ0NDU1NTU2NjY2Nzc3Nzg4ODg5OTk5Ojo6Ojs7Ozs8PDw8PT09PT4+Pj4/Pz8/AEHJnBkLBQQEAAAEAEHgnBkL4AEIDBAMDBQMEBgcDAwgDCQMLCwsLCwsLCwsLCAgGCgcDAwwNDQ0MDQ0NDA0NDQ0NDA0NDQ0NDA0NDQ0NBgMHAwMDDg8PDw4PDw8ODw8PDw8ODw8PDw8ODw8PDw8GAwcDAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwBB4Z4ZC14BAQEBAQEBAQEBAQEBAQECAgICAgICAgICAQEBAQEBAQICAgICAgICAgICAgICAgICAgICAgICAgICAQEBAQEBAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAEGgoBkLoAQCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgAICAgICAgICAgICAgICAgQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKDAwMDAwMDAwMDAwMDAwMDgAAQEBAQEBAQEBAQEBAQEBAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYHAEHIpBkLBQEAAAACAEHapBkL9geAPw3gyj8AAABAeJoUQAdwJUC0qzNAAABAQA3gSkB4mlRAVGddQAdwZUAB1GxAtKtzQH8KekAAAIBAf8yCQAdwhUAG74dAPE2KQN2NjECqs45ABcGQQAO4kkB4mpRAAWqWQAoomEDa1ZlAlXSbQD8FnUDHiJ5AAACgQK1roUB/zKJAFiOkQAdwpUDYs6ZABu+nQAQiqUA8TapAEXGrQN2NrED2o61AqrOuQEO9r0AFwbBAMb+xQAO4skC0q7NAeJq0QIKEtUABarZAIEu3QAoouEDmALlA2tW5QAmnukCVdLtAnT68QD8FvUCayL1Ax4i+QOFFv0AAAMBAPbfAQK1rwUBnHcJAf8zCQAh5w0AWI8RAusrEQAdwxUALE8ZA2LPGQHxSx0AG78dAhInIQAQiyUCSuMlAPE3KQA3gykARcctAUwDMQN2NzEC7Gc1A9qPNQJgszkCqs85ANTnPQEO9z0DbP9BABcHQQMpA0UAxv9FAQjzSQAO40kB8MtNAtKvTQLAj1EB4mtRAEhDVQIKE1UDQ99VAAWrWQBnb1kAgS9dAGbrXQAoo2ED3lNhA5gDZQNtr2UDa1dlA6D7aQAmn2kBBDttAlXTbQAfa20CdPtxAWaLcQD8F3UBUZ91AmsjdQBQp3kDHiN5AtOfeQOFF30BOo99AAADgQPlb4EA9t+BAzRHhQK1r4UDgxOFAZx3iQEZ14kB/zOJAFCPjQAh540BezuNAFiPkQDR35EC6yuRAqh3lQAdw5UDRweVACxPmQLdj5kDYs+ZAbgPnQHxS50ADoedABu/nQIU86ECEiehAA9boQAQi6UCIbelAkrjpQCMD6kA8TepA35bqQA3g6kDIKOtAEXHrQOm460BTAOxATkfsQN2N7EAB1OxAuxntQAxf7UD2o+1AeejtQJgs7kBScO5AqrPuQKD27kA1Oe9Aa3vvQEO970C9/u9A2z/wQJ2A8EAFwfBAFAHxQMpA8UApgPFAMb/xQOT98UBCPPJATHryQAO48kBo9fJAfDLzQEBv80C0q/NA2efzQLAj9EA7X/RAeJr0QGrV9EASEPVAb0r1QIKE9UBNvvVA0Pf1QAwx9kABavZAsKL2QBnb9kA/E/dAIEv3QL6C90AZuvdAMvH3QAoo+EChXvhA95T4QA7L+EDmAPlAfzb5QNtr+UD5oPlA2tX5QH8K+kDoPvpAFnP6QAmn+kDC2vpAQQ77QIdB+0CVdPtAaqf7QAfa+0BtDPxAnT78QJZw/EBZovxA59P8QD8F/UBkNv1AVGf9QBCY/UCayP1A8Pj9QBQp/kAGWf5Ax4j+QFa4/kC05/5A4xb/QOFF/0CvdP9ATqP/QL7R/0AAQdisGQsFAQAAAAEAQdCuGQsNAQAAAAEAAAACAAAAAgBB0LAZCw0LAAAACwAAAAwAAAAMAEHwsBkLgQEBAAAAAQAAAAkAAAAJAAAAAgAAAAIAAAACAAAAAgAAAAEAAAABAAAAAQAAAAEAAAAIAAAAAwAAAAMAAAADAAAAAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAAIAAAABAAAAAQAAAAEAAAACAAAAAcAAAAEAAAABAAAAAgAQYCyGQuRAQMAAAADAAAAAwAAAAMAAAAFAAAABQAAAAoAAAAFAAAABQAAAAUAAAAKAAAABQAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAAAAQEBQYGBwcHBwcICAgICAAAAAQEBAQEBQUGBgYGBwcHBwoKCgoKCgAEBAUFBQYGBwgICQoKCgoKCgoKCgoKCgUAQaCzGQssBgYGBgYGBQUFBQUFBAQEBAQEBAUFBQUFBQYGBwcHCAoMDAwMDAwMDAwMDAwAQdSzGQt9CAAJAAMAIwAHAEcAJwBnABcALwCvAG8A7wAfAAAAAAAAAAQADAACAAoABgANAB0ACwArABsAOwBXADcADwBPAD8BPwO/AL8CvwG/AwAADgABABkABQAVABMAMwB3AJ8AXwDfAN8B3wM/AD8CfwB/An8BfwP/AP8C/wH/Aw4AQfC0GQtYGwA7AAcAJwAXADcAHgABABEACQAZAAUAAAAIAAQADAACAAoABgAVAA0AHQADABMACwAPAC8AHwBfAD8AfwD/AP8C/wr/Bv8O/wH/Cf8F/w3/A/8L/wf/DwBB0LUZCzj/d9W/597qnlFd3sZwV7xYWFjY2FjVy4zq4MOHH4PBYBxnsqoGg8FgMBjMoc6IVJRG4bDQTrL3BABBkLYZCygEAAAACwAAAA8AAAAQAAAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAEHAthkLIREADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQBB8bYZCwELAEH6thkLGBEACgoREREACgAAAgAJCwAAAAkACwAACwBBq7cZCwEMAEG3txkLFQwAAAAADAAAAAAJDAAAAAAADAAADABB5bcZCwEOAEHxtxkLFQ0AAAAEDQAAAAAJDgAAAAAADgAADgBBn7gZCwEQAEGruBkLHg8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgBB4rgZCw4SAAAAEhISAAAAAAAACQBBk7kZCwELAEGfuRkLFQoAAAAACgAAAAAJCwAAAAAACwAACwBBzbkZCwEMAEHZuRkLwAEMAAAAAAwAAAAACQwAAAAAAAwAAAwAADAxMjM0NTY3ODlBQkNERUaUZwYAuHQGAAh0BgCMdAYAAAAAAAEAAAAAXQYAAAAAAAh0BgBodAYAAAAAAAEAAAAIXQYAAAAAAOxzBgDddAYAAAAAACBdBgDscwYAAnUGAAEAAAAgXQYAlGcGAD91BgCUZwYAnHUGAAh0BgBddQYAAAAAAAEAAABgXQYAAAAAALxnBgAQdgYAkF0GAAAAAACUZwYAKXYGAAUAQaS7GQsBAgBBvLsZCwsCAAAAAQAAAPyaBgBB1LsZCwECAEHjuxkLBf//////AEGovBkLAQUAQbS8GQsBAwBBzLwZCw4CAAAAAgAAAAiWBgAABABB5LwZCwEBAEHzvBkLBQr/////AEHcvRkLAQMAQYO+GQsF//////8AQci+GQuJDZRnBgC1eAYAvGcGABV5BgBgXwYAAAAAALxnBgDCeAYAcF8GAAAAAACUZwYA43gGALxnBgDweAYAUF8GAAAAAAC8ZwYAPXoGAJhfBgAAAAAAlGcGAGx6BgC8ZwYAMnsGAJhfBgAAAAAAvGcGAHV7BgCYXwYAAAAAALxnBgDCewYAmF8GAAAAAAC8ZwYACHwGAJhfBgAAAAAAvGcGADh8BgCYXwYAAAAAALxnBgB2fAYAmF8GAAAAAAC8ZwYAp3wGAJhfBgAAAAAAvGcGAPd8BgCYXwYAAAAAALxnBgAwfQYAmF8GAAAAAAC8ZwYAa30GAJhfBgAAAAAAvGcGAKd9BgCYXwYAAAAAALxnBgDqfQYAmF8GAAAAAAC8ZwYAGH4GAJhfBgAAAAAAvGcGAEt+BgCYXwYAAAAAALxnBgAHfwYAmF8GAAAAAAC8ZwYANH8GAJhfBgAAAAAAvGcGAGV/BgCYXwYAAAAAALxnBgCjfwYAmF8GAAAAAAC8ZwYAG4AGAJhfBgAAAAAAvGcGAOB/BgCYXwYAAAAAALxnBgBigAYAmF8GAAAAAAC8ZwYAq4AGAJhfBgAAAAAAvGcGAAaBBgCYXwYAAAAAALxnBgAxgQYAmF8GAAAAAAC8ZwYAa4EGAJhfBgAAAAAAvGcGAJ+BBgCYXwYAAAAAALxnBgDvgQYAmF8GAAAAAAC8ZwYAHoIGAJhfBgAAAAAAvGcGAFeCBgCYXwYAAAAAALxnBgCQggYAmF8GAAAAAAC8ZwYAtYQGAJhfBgAAAAAAvGcGAAOFBgCYXwYAAAAAALxnBgA+hQYAmF8GAAAAAAC8ZwYAaoUGAJhfBgAAAAAAvGcGALSFBgCYXwYAAAAAALxnBgDphQYAmF8GAAAAAAC8ZwYAHIYGAJhfBgAAAAAAvGcGAFOGBgCYXwYAAAAAALxnBgCIhgYAmF8GAAAAAAC8ZwYAHocGAJhfBgAAAAAAvGcGAFCHBgCYXwYAAAAAALxnBgCChwYAmF8GAAAAAAC8ZwYA2ocGAJhfBgAAAAAAvGcGACKIBgCYXwYAAAAAALxnBgBaiAYAmF8GAAAAAAC8ZwYAqIgGAJhfBgAAAAAAvGcGAOeIBgCYXwYAAAAAALxnBgAqiQYAmF8GAAAAAAC8ZwYAW4kGAJhfBgAAAAAAvGcGAJWKBgCYXwYAAAAAALxnBgDVigYAmF8GAAAAAAC8ZwYACIsGAJhfBgAAAAAAvGcGAEKLBgCYXwYAAAAAALxnBgB7iwYAmF8GAAAAAAC8ZwYAuIsGAJhfBgAAAAAAvGcGAC6MBgCYXwYAAAAAALxnBgBajAYAmF8GAAAAAAC8ZwYAkIwGAJhfBgAAAAAAvGcGAOSMBgCYXwYAAAAAALxnBgAcjQYAmF8GAAAAAAC8ZwYAX40GAJhfBgAAAAAAvGcGAJCNBgCYXwYAAAAAALxnBgDAjQYAmF8GAAAAAAC8ZwYA+40GAJhfBgAAAAAAvGcGAD2OBgCYXwYAAAAAALxnBgAsjwYAmF8GAAAAAAC8ZwYAt48GAEhfBgAAAAAAvGcGAMePBgDAYwYAAAAAALxnBgDYjwYAwGMGAAAAAAC8ZwYA6Y8GAGBfBgAAAAAAvGcGAAuQBgDwYwYAAAAAALxnBgAvkAYAYF8GAAAAAAC8ZwYAVJAGAPBjBgAAAAAAvGcGAIKQBgBgXwYAAAAAANBzBgCqkAYA0HMGAKyQBgDQcwYAr5AGANBzBgCxkAYA0HMGALOQBgDQcwYAtZAGANBzBgC3kAYA0HMGALmQBgDQcwYAu5AGANBzBgC9kAYA0HMGAOt8BgDQcwYAv5AGANBzBgDBkAYA0HMGAMOQBgC8ZwYAxZAGAFBfBgAAAAAAlGcGAAiUBgCUZwYAJ5QGAJRnBgBGlAYAlGcGAGWUBgCUZwYAhJQGAJRnBgCjlAYAlGcGAMKUBgCUZwYA4ZQGAJRnBgAAlQYAlGcGAB+VBgCUZwYAPpUGAJRnBgBdlQYACHQGAHyVBgAAAAAAAQAAAGBdBgAAAAAACHQGALuVBgAAAAAAAQAAAGBdBgAAAAAAOF0GAEBkBgA4XQYAYGQGAJhkBgBIXQYAWF0GACBdBgCYZAYAIF0GAGhdBgCYZAYAAAAAAIBdBgABAAAAAgAAAAEAAAABAAAAAQAAAAAAAACQXQYAAQAAAAMAAAABAAAAAQAAAAEAAAAAAAAACgoLCwoKCgoKCQkIBwcIBwcGBgUFAEHtyxkLqgEQAAAAJAAAAFQAAACMAAAArAAAANAAAAD4AAAAJAEAAFQBAABuAQAAigEAAJkBAAChAQCAqQEAgLsBAADFAQAAzwEAQNQBAMDZAQCg3AEAoN8BAKDfAQCg3wEAoN8BAKDfAQCg3wEAoN8BAKDfAQCwHQAA2QAAAFD9AQAw/gEAeQAAAKD+AQAAAAwAGwAXACoAPwA4ADAAOwBAAGFjb2xHSVNEmF0GACheBgBB1M4ZCwO4mgYAQZDPGQupA1BfBgAEAAAABQAAAAYAAAAHAAAABAAAAAEAAAABAAAAAQAAAAAAAAB4XwYABAAAAAgAAAAGAAAABwAAAAQAAAACAAAAAgAAAAIAAAAAAAAAiF8GAAEAAAACAAAAAwAAAAQAAAABAAAAAgAAAAMAAAAJAAAACgAAAAAAAACYXwYAAQAAAAIAAAADAAAABAAAAAEAAAACAAAAAwAAAAkAAAALAAAAAAAAAKBfBgABAAAAAgAAAAMAAAAEAAAABAAAAAIAAAAFAAAACQAAAAwAAAAAAAAAsF8GAAEAAAACAAAAAwAAAAQAAAAGAAAAAgAAAAMAAAAJAAAADQAAAAAAAADAXwYABQAAAAIAAAADAAAABAAAAAcAAAAIAAAAAwAAAAkAAAAOAAAAAAAAANBfBgAGAAAAAgAAAAMAAAAEAAAACQAAAAoAAAADAAAACQAAAA8AAAAAAAAA4F8GAAEAAAACAAAAAwAAAAQAAAALAAAAAgAAAAwAAAAJAAAAEAAAAAAAAADwXwYAAQAAAAIAAAADAAAABAAAAA0AAAACAAAAAwAAAAkAAAARAEHB0hkLuAVgBgAHAAAACAAAAAkAAAAKAAAADgAAAA8AAAADAAAACQAAABIAAAAAAAAAEGAGAAEAAAACAAAAAwAAAAQAAAAQAAAAAgAAAAMAAAAJAAAAEwAAAAAAAAAgYAYAAQAAAAIAAAADAAAABAAAABEAAAACAAAAAwAAAAkAAAAUAAAAAAAAADBgBgABAAAAAgAAAAMAAAAEAAAAEgAAAAIAAAADAAAACQAAABUAAAAAAAAAQGAGAAEAAAACAAAAAwAAAAQAAAATAAAAAgAAAAMAAAAJAAAAFgAAAAAAAABQYAYAAQAAAAIAAAADAAAABAAAABQAAAACAAAAAwAAAAkAAAAXAAAAAAAAAGBgBgABAAAAAgAAAAMAAAAEAAAAFQAAAAIAAAADAAAACQAAABgAAAAAAAAAcGAGAAEAAAACAAAAAwAAAAQAAAAWAAAAAgAAAAMAAAAJAAAAGQAAAAAAAACAYAYAAQAAAAIAAAADAAAABAAAABcAAAACAAAAAwAAAAkAAAAaAAAAAAAAAJBgBgABAAAAAgAAAAMAAAAEAAAAGAAAAAIAAAADAAAACQAAABsAAAAAAAAAoGAGAAEAAAACAAAAAwAAAAQAAAAZAAAAAgAAAAMAAAAJAAAAHAAAAAAAAACwYAYAAQAAAAIAAAADAAAABAAAABoAAAACAAAAAwAAAAkAAAAdAAAAAAAAAMBgBgABAAAAAgAAAAMAAAAEAAAAGwAAAAIAAAADAAAACQAAAB4AAAAAAAAA0GAGAAEAAAACAAAAAwAAAAQAAAAcAAAAAgAAAAMAAAAJAAAAHwAAAAAAAADgYAYAAQAAAAIAAAADAAAABAAAAB0AAAACAAAAAwAAAAkAAAAgAAAAAAAAAPBgBgABAAAAAgAAAAMAAAAEAAAAHgAAAAIAAAADAAAACQAAACEAQYHYGQu4BWEGAAEAAAACAAAAAwAAAAQAAAAfAAAAAgAAAAMAAAAJAAAAIgAAAAAAAAAQYQYAAQAAAAIAAAADAAAABAAAACAAAAACAAAAAwAAAAkAAAAjAAAAAAAAACBhBgABAAAAAgAAAAMAAAAEAAAAIQAAAAIAAAADAAAACQAAACQAAAAAAAAAMGEGAAEAAAACAAAAAwAAAAQAAAAiAAAAAgAAAAMAAAAJAAAAJQAAAAAAAABAYQYAAQAAAAIAAAADAAAABAAAACMAAAACAAAAJAAAAAkAAAAmAAAAAAAAAFBhBgABAAAAAgAAAAMAAAAEAAAAJQAAAAIAAAADAAAACQAAACcAAAAAAAAAYGEGAAEAAAACAAAAAwAAAAQAAAAmAAAAAgAAAAMAAAAJAAAAKAAAAAAAAABwYQYAAQAAAAIAAAADAAAABAAAACcAAAACAAAAKAAAAAkAAAApAAAAAAAAAIBhBgABAAAAAgAAAAMAAAAEAAAAKQAAAAIAAAADAAAACQAAACoAAAAAAAAAkGEGAAEAAAACAAAAAwAAAAQAAAAqAAAAAgAAAAMAAAAJAAAAKwAAAAAAAACgYQYAAQAAAAIAAAADAAAABAAAACsAAAACAAAAAwAAAAkAAAAsAAAAAAAAALBhBgABAAAAAgAAAAMAAAAEAAAALAAAAAIAAAAtAAAACQAAAC0AAAAAAAAAwGEGAAEAAAACAAAAAwAAAAQAAAAuAAAAAgAAAAMAAAAJAAAALgAAAAAAAADQYQYAAQAAAAIAAAADAAAABAAAAC8AAAACAAAAAwAAAAkAAAAvAAAAAAAAAOBhBgABAAAAAgAAAAMAAAAEAAAAMAAAAAIAAAADAAAACQAAADAAAAAAAAAA8GEGAAEAAAACAAAAAwAAAAQAAAAxAAAAAgAAAAMAAAAJAAAAMQBBwd0ZC7gFYgYAAQAAAAIAAAADAAAABAAAADIAAAACAAAAAwAAAAkAAAAyAAAAAAAAABBiBgABAAAAAgAAAAMAAAAEAAAAMwAAAAIAAAADAAAACQAAADMAAAAAAAAAIGIGAAEAAAACAAAAAwAAAAQAAAA0AAAAAgAAAAMAAAAJAAAANAAAAAAAAAAwYgYACwAAAAwAAAANAAAADgAAADUAAAA2AAAAAwAAAAkAAAA1AAAAAAAAAEBiBgABAAAAAgAAAAMAAAAEAAAANwAAAAIAAAADAAAACQAAADYAAAAAAAAAUGIGAAEAAAACAAAAAwAAAAQAAAA4AAAAAgAAADkAAAAJAAAANwAAAAAAAABgYgYAAQAAAAIAAAADAAAABAAAADoAAAACAAAAAwAAAAkAAAA4AAAAAAAAAHBiBgABAAAAAgAAAAMAAAAEAAAAOwAAAAIAAAADAAAACQAAADkAAAAAAAAAgGIGAAEAAAACAAAAAwAAAAQAAAA8AAAAAgAAAAMAAAAJAAAAOgAAAAAAAACQYgYAAQAAAAIAAAADAAAABAAAAD0AAAACAAAAAwAAAAkAAAA7AAAAAAAAAKBiBgABAAAAAgAAAAMAAAAEAAAAPgAAAAIAAAADAAAACQAAADwAAAAAAAAAsGIGAAEAAAACAAAAAwAAAAQAAAA/AAAAAgAAAEAAAAAJAAAAPQAAAAAAAADAYgYAAQAAAAIAAAADAAAABAAAAEEAAAACAAAAQgAAAAkAAAA+AAAAAAAAANBiBgAPAAAAAgAAAAMAAAAEAAAAQwAAAEQAAAADAAAACQAAAD8AAAAAAAAA4GIGABAAAAARAAAAAwAAAAQAAABFAAAARgAAAAMAAAAJAAAAQAAAAAAAAADwYgYAAQAAAAIAAAADAAAABAAAAEcAAAACAAAAAwAAAAkAAABBAEGB4xkL4ARjBgABAAAAAgAAAAMAAAAEAAAASAAAAAIAAAADAAAACQAAAEIAAAAAAAAAEGMGABIAAAATAAAAFAAAAAQAAABJAAAASgAAAAMAAAAJAAAAQwAAAAAAAAAgYwYAAQAAAAIAAAADAAAABAAAAEsAAAACAAAAAwAAAAkAAABEAAAAAAAAADBjBgABAAAAAgAAAAMAAAAEAAAATAAAAAIAAAADAAAACQAAAEUAAAAAAAAAQGMGABUAAAACAAAAFgAAAAQAAABNAAAATgAAAAMAAAAJAAAARgAAAAAAAABQYwYAAQAAAAIAAAADAAAABAAAAE8AAAACAAAAAwAAAAkAAABHAAAAAAAAAGBjBgABAAAAAgAAAAMAAAAEAAAAUAAAAAIAAAADAAAACQAAAEgAAAAAAAAAcGMGAAEAAAACAAAAAwAAAAQAAABRAAAAAgAAAAMAAAAJAAAASQAAAAAAAACAYwYAAQAAAAIAAAADAAAABAAAAFIAAAACAAAAAwAAAAkAAABKAAAAAAAAAJBjBgAXAAAAAgAAABgAAAAEAAAAUwAAAFQAAAADAAAACQAAAEsAAAAAAAAAoGMGAAEAAAACAAAAAwAAAAQAAABVAAAAAgAAAAMAAAAJAAAATAAAAAAAAACwYwYAAQAAAAIAAAADAAAABAAAAFYAAAACAAAAAwAAAAkAAABNAAAAAAAAAMBjBgBOAAAATwAAAAQAAAAAAAAA0GMGAE4AAABQAAAABAAAAAAAAADgYwYATgAAAFEAAAAEAAAAAAAAADBkBgAEAAAAUgAAAAYAAAAHAAAABQBB6ecZC5BEZAYABAAAAFMAAAAGAAAABwAAAAYAAAAAAAAAsGQGAAQAAABUAAAABgAAAAcAAAAEAAAAAwAAAAMAAAADAAAAdmVjdG9yPHVpbnQ4X3Q+AHdvZmYyRGVjAHdvZmYyRW5jAHB1c2hfYmFjawByZXNpemUAc2l6ZQBnZXQAc2V0AE5TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAE5TdDNfXzIxM19fdmVjdG9yX2Jhc2VJaE5TXzlhbGxvY2F0b3JJaEVFRUUATlN0M19fMjIwX192ZWN0b3JfYmFzZV9jb21tb25JTGIxRUVFAFBOU3QzX18yNnZlY3RvckloTlNfOWFsbG9jYXRvckloRUVFRQBQS05TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAGlpAHYAdmkAdmlpaQB2aWlpaQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWkAaWlpaWkATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQB4X21pbnMuc2l6ZSgpID09IG51bV9nbHlwaHMAd29mZjIvc3JjL3dvZmYyX2RlYy5jYwBSZWNvbnN0cnVjdFRyYW5zZm9ybWVkSG10eABONXdvZmYyMTRXT0ZGMlN0cmluZ091dEUATjV3b2ZmMjhXT0ZGMk91dEUAZ2x5Zi9sb2NhIHRyYW5zZm9ybWF0aW9uIGZhaWxlZC4KAFBhcnNpbmcgb2YgdGhlIGlucHV0IGZvbnQgZmFpbGVkLgoAQ29tcHJlc3Npb24gb2YgY29tYmluZWQgdGFibGUgZmFpbGVkLgoAQ29tcHJlc3NlZCAlenUgdG8gJXUuCgBDb21wcmVzc2lvbiBvZiBleHRlbmRlZCBtZXRhZGF0YSBmYWlsZWQuCgBSZXN1bHQgYWxsb2NhdGlvbiB3YXMgdG9vIHNtYWxsICglemQgdnMgJXpkIGJ5dGVzKS4KAE1pc3NpbmcgdGFibGUgaW5kZXggZm9yIG9mZnNldCAweCUwOHgKAE1pc21hdGNoIGJldHdlZW4gY29tcHV0ZWQgYW5kIGFjdHVhbCBsZW5ndGggKCV6ZCB2cyAlemQpCgBtYXA6OmF0OiAga2V5IG5vdCBmb3VuZABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAMGxcqPzgwO0ACBAMCAgQABwMCAQ8tKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4AdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQAX1oAX19fWgBfYmxvY2tfaW52b2tlAGludm9jYXRpb24gZnVuY3Rpb24gZm9yIGJsb2NrIGluIABsb25nIGxvbmcAX19pbnQxMjgAdW5zaWduZWQgX19pbnQxMjgAbG9uZyBkb3VibGUAX19mbG9hdDEyOAAuLi4AZGVjaW1hbDY0AGRlY2ltYWwxMjgAZGVjaW1hbDMyAGRlY2ltYWwxNgBjaGFyMzJfdABjaGFyMTZfdABhdXRvAGRlY2x0eXBlKGF1dG8pAHN0ZDo6bnVsbHB0cl90AFthYmk6AF0ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBBYmlUYWdBdHRyRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU0Tm9kZUUAUHVyZSB2aXJ0dWFsIGZ1bmN0aW9uIGNhbGxlZCEAYWxsb2NhdG9yAGJhc2ljX3N0cmluZwBzdHJpbmcAaXN0cmVhbQBvc3RyZWFtAGlvc3RyZWFtAHN0ZDo6YWxsb2NhdG9yAHN0ZDo6YmFzaWNfc3RyaW5nAHN0ZDo6aXN0cmVhbQBzdGQ6Om9zdHJlYW0Ac3RkOjppb3N0cmVhbQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxOVNwZWNpYWxTdWJzdGl0dXRpb25FACBpbWFnaW5hcnkATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBQb3N0Zml4UXVhbGlmaWVkVHlwZUUAIGNvbXBsZXgAKQAgACgAJgAmJgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM1JlZmVyZW5jZVR5cGVFAG9iamNfb2JqZWN0ACoAaWQ8AD4ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTFQb2ludGVyVHlwZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBOYW1lV2l0aFRlbXBsYXRlQXJnc0UAPAAsIABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMlRlbXBsYXRlQXJnc0UATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTNQYXJhbWV0ZXJQYWNrRQB3Y2hhcl90AGIwRQBiMUUAdQBsAHVsAGxsAHVsbABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUludGVnZXJDYXN0RXhwckUAJUxhTABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNkZsb2F0TGl0ZXJhbEltcGxJZUVFACVhAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE2RmxvYXRMaXRlcmFsSW1wbElkRUUAJWFmAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE2RmxvYXRMaXRlcmFsSW1wbElmRUUAdHJ1ZQBmYWxzZQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU4Qm9vbEV4cHJFAC0ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTRJbnRlZ2VyTGl0ZXJhbEUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBUZW1wbGF0ZUFyZ3VtZW50UGFja0UAZ3MAJj0APQBhbGlnbm9mICgALAB+AC4qAC8ALz0AXgBePQA9PQA+PQA8PQA8PAA8PD0ALT0AKj0ALS0AIT0AIQB8fAB8AHw9AC0+KgArACs9ACsrAC0+ACUAJT0APj4APj49AHNpemVvZiAoAHR5cGVpZCAoAHRocm93AHRocm93IABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU5VGhyb3dFeHByRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkluaXRMaXN0RXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTNOb2RlQXJyYXlOb2RlRQBzaXplb2YuLi4gKABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM0VuY2xvc2luZ0V4cHJFAHNpemVvZi4uLigATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjJQYXJhbWV0ZXJQYWNrRXhwYW5zaW9uRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxOVNpemVvZlBhcmFtUGFja0V4cHJFAHN0YXRpY19jYXN0AD4oAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZThDYXN0RXhwckUAcmVpbnRlcnByZXRfY2FzdAApID8gKAApIDogKABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUNvbmRpdGlvbmFsRXhwckUAbm9leGNlcHQgKABudwBuYQBwaQA6Om9wZXJhdG9yIABuZXcAW10ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlN05ld0V4cHJFAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTExUG9zdGZpeEV4cHJFACAuLi4gACA9IABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUJyYWNlZFJhbmdlRXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBCcmFjZWRFeHByRQBfR0xPQkFMX19OAChhbm9ueW1vdXMgbmFtZXNwYWNlKQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU4TmFtZVR5cGVFAClbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE4QXJyYXlTdWJzY3JpcHRFeHByRQAuAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwTWVtYmVyRXhwckUAc3JOAHNyADo6AE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE5R2xvYmFsUXVhbGlmaWVkTmFtZUUAZG4Ab24Ab3BlcmF0b3ImJgBvcGVyYXRvciYAb3BlcmF0b3ImPQBvcGVyYXRvcj0Ab3BlcmF0b3IoKQBvcGVyYXRvciwAb3BlcmF0b3J+AG9wZXJhdG9yIGRlbGV0ZVtdAG9wZXJhdG9yKgBvcGVyYXRvci8Ab3BlcmF0b3IvPQBvcGVyYXRvcl4Ab3BlcmF0b3JePQBvcGVyYXRvcj09AG9wZXJhdG9yPj0Ab3BlcmF0b3I+AG9wZXJhdG9yW10Ab3BlcmF0b3I8PQBvcGVyYXRvcjw8AG9wZXJhdG9yPDw9AG9wZXJhdG9yPABvcGVyYXRvci0Ab3BlcmF0b3ItPQBvcGVyYXRvcio9AG9wZXJhdG9yLS0Ab3BlcmF0b3IgbmV3W10Ab3BlcmF0b3IhPQBvcGVyYXRvciEAb3BlcmF0b3IgbmV3AG9wZXJhdG9yfHwAb3BlcmF0b3J8AG9wZXJhdG9yfD0Ab3BlcmF0b3ItPioAb3BlcmF0b3IrAG9wZXJhdG9yKz0Ab3BlcmF0b3IrKwBvcGVyYXRvci0+AG9wZXJhdG9yPwBvcGVyYXRvciUAb3BlcmF0b3IlPQBvcGVyYXRvcj4+AG9wZXJhdG9yPj49AG9wZXJhdG9yPD0+AG9wZXJhdG9yIiIgAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1TGl0ZXJhbE9wZXJhdG9yRQBvcGVyYXRvciBkZWxldGUAb3BlcmF0b3IgAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIyQ29udmVyc2lvbk9wZXJhdG9yVHlwZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOER0b3JOYW1lRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM1F1YWxpZmllZE5hbWVFAGR5bmFtaWNfY2FzdABkZWxldGUAW10gAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwRGVsZXRlRXhwckUAY3YAKSgATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTRDb252ZXJzaW9uRXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOENhbGxFeHByRQBjb25zdF9jYXN0AE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwUHJlZml4RXhwckUAKSAAICgATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBCaW5hcnlFeHByRQBhYQBhbgBhTgBhUwBjbQBkcwBkdgBkVgBlbwBlTwBlcQBnZQBndABsZQBscwBsUwBsdABtaQBtSQBtbABtTABuZQBvbwBvcgBvUgBwbABwTABybQByTQBycwByUwAuLi4gACAuLi4ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOEZvbGRFeHByRQBmcABmTABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM0Z1bmN0aW9uUGFyYW1FAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTI0Rm9yd2FyZFRlbXBsYXRlUmVmZXJlbmNlRQBUcwBzdHJ1Y3QAVHUAdW5pb24AVGUAZW51bQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUyMkVsYWJvcmF0ZWRUeXBlU3BlZlR5cGVFAFN0TABTdABzdGQ6OgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNlN0ZFF1YWxpZmllZE5hbWVFAERDAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIxU3RydWN0dXJlZEJpbmRpbmdOYW1lRQBVdABVbAB2RQAnbGFtYmRhACcoAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1Q2xvc3VyZVR5cGVOYW1lRQAndW5uYW1lZAAnAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1VW5uYW1lZFR5cGVOYW1lRQBzdHJpbmcgbGl0ZXJhbABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU5TG9jYWxOYW1lRQBzdGQATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTJDdG9yRHRvck5hbWVFAGJhc2ljX2lzdHJlYW0AYmFzaWNfb3N0cmVhbQBiYXNpY19pb3N0cmVhbQBzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LCBzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+AHN0ZDo6YmFzaWNfaXN0cmVhbTxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+ID4Ac3RkOjpiYXNpY19vc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBzdGQ6OmJhc2ljX2lvc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUyN0V4cGFuZGVkU3BlY2lhbFN1YnN0aXR1dGlvbkUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBOZXN0ZWROYW1lRQA6OioATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTlQb2ludGVyVG9NZW1iZXJUeXBlRQBbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTlBcnJheVR5cGVFAER2ACB2ZWN0b3JbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwVmVjdG9yVHlwZUUAcGl4ZWwgdmVjdG9yWwBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNVBpeGVsVmVjdG9yVHlwZUUAZGVjbHR5cGUoAHVuc2lnbmVkIGxvbmcgbG9uZwBvYmpjcHJvdG8AIGNvbnN0ACB2b2xhdGlsZQAgcmVzdHJpY3QATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOFF1YWxUeXBlRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxN1ZlbmRvckV4dFF1YWxUeXBlRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM09iakNQcm90b05hbWVFAERvAG5vZXhjZXB0AERPAER3AER4AFJFAE9FACAmACAmJgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkZ1bmN0aW9uVHlwZUUAdGhyb3coAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIwRHluYW1pY0V4Y2VwdGlvblNwZWNFAG5vZXhjZXB0KABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMk5vZXhjZXB0U3BlY0UATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTFTcGVjaWFsTmFtZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOURvdFN1ZmZpeEUAVWE5ZW5hYmxlX2lmSQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNkZ1bmN0aW9uRW5jb2RpbmdFACBbZW5hYmxlX2lmOgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkVuYWJsZUlmQXR0ckUAdGhyZWFkLWxvY2FsIHdyYXBwZXIgcm91dGluZSBmb3IgAHJlZmVyZW5jZSB0ZW1wb3JhcnkgZm9yIABndWFyZCB2YXJpYWJsZSBmb3IgAG5vbi12aXJ0dWFsIHRodW5rIHRvIAB2aXJ0dWFsIHRodW5rIHRvIAB0aHJlYWQtbG9jYWwgaW5pdGlhbGl6YXRpb24gcm91dGluZSBmb3IgAGNvbnN0cnVjdGlvbiB2dGFibGUgZm9yIAAtaW4tAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIxQ3RvclZ0YWJsZVNwZWNpYWxOYW1lRQBjb3ZhcmlhbnQgcmV0dXJuIHRodW5rIHRvIAB0eXBlaW5mbyBuYW1lIGZvciAAdHlwZWluZm8gZm9yIABWVFQgZm9yIAB2dGFibGUgZm9yIABTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBTdDEyb3V0X29mX3JhbmdlAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjBfX2Z1bmN0aW9uX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTI5X19wb2ludGVyX3RvX21lbWJlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AERuAGIAYwBoAGEAcwB0AGkAagBtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAHZvaWQAYm9vbABjaGFyAHNpZ25lZCBjaGFyAHVuc2lnbmVkIGNoYXIAc2hvcnQAdW5zaWduZWQgc2hvcnQAaW50AHVuc2lnbmVkIGludABsb25nAHVuc2lnbmVkIGxvbmcAZmxvYXQAZG91YmxlAHN0ZDo6c3RyaW5nAHN0ZDo6YmFzaWNfc3RyaW5nPHVuc2lnbmVkIGNoYXI+AHN0ZDo6d3N0cmluZwBlbXNjcmlwdGVuOjp2YWwAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nIGRvdWJsZT4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lmRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWxFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUU="),rXt=function(){let A=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return function(t){t=t||{};var t=typeof t<"u"?t:{};let r={},i;for(i in t)t.hasOwnProperty(i)&&(r[i]=t[i]);let u=[],a="./this.program",n=function(oA,hA){throw hA},o=!1,s=!1,l=!1,g=!1,C=!1;if(o=typeof window=="object",s=typeof importScripts=="function",g=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",l=g&&!o&&!s,C=!o&&!l&&!s,t.ENVIRONMENT)throw Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)");let B="";function E(oA){return t.locateFile?t.locateFile(oA,B):B+oA}let d,I,h,Q;if(l){B=`${__dirname}/`;let oA,hA;d=function(jA,ae){let Ue;return oA||(oA=REA(["fs"].join())),hA||(hA=REA(["path"].join())),jA=hA.normalize(jA),Ue=oA.readFileSync(jA),ae?Ue:Ue.toString()},h=function(jA){let ae=d(jA,!0);return ae.buffer||(ae=new Uint8Array(ae)),L(ae.buffer),ae},process.argv.length>1&&(a=process.argv[1].replace(/\\/g,"/")),u=process.argv.slice(2),process.on("uncaughtException",(jA)=>{if(!(jA instanceof LmA))throw jA}),process.on("unhandledRejection",se),n=function(jA){process.exit(jA)},t.inspect=function(){return"[Emscripten Module object]"}}else if(C)typeof read<"u"&&(d=function(oA){return read(oA)}),h=function(oA){let hA;return typeof readbuffer=="function"?new Uint8Array(readbuffer(oA)):(hA=read(oA,"binary"),L(typeof hA=="object"),hA)},typeof scriptArgs<"u"?u=scriptArgs:typeof arguments<"u"&&(u=arguments),typeof quit=="function"&&(n=function(oA){quit(oA)}),typeof print<"u"&&(typeof console>"u"&&(console={}),console.log=print,console.warn=console.error=typeof printErr<"u"?printErr:print);else if(o||s)s?B=self.location.href:document.currentScript&&(B=document.currentScript.src),A&&(B=A),B.indexOf("blob:")!==0?B=B.substr(0,B.lastIndexOf("/")+1):B="",d=function(oA){let hA=new XMLHttpRequest;return hA.open("GET",oA,!1),hA.send(null),hA.responseText},s&&(h=function(oA){let hA=new XMLHttpRequest;return hA.open("GET",oA,!1),hA.responseType="arraybuffer",hA.send(null),new Uint8Array(hA.response)}),I=function(oA,hA,jA){let ae=new XMLHttpRequest;ae.open("GET",oA,!0),ae.responseType="arraybuffer",ae.onload=function(){if(ae.status==200||ae.status==0&&ae.response){hA(ae.response);return}jA()},ae.onerror=jA,ae.send(null)},Q=function(oA){document.title=oA};else throw Error("environment detection error");let p=t.print||function(){},m=t.printErr||function(){};for(i in r)r.hasOwnProperty(i)&&(t[i]=r[i]);r=null,t.arguments&&(u=t.arguments),Object.getOwnPropertyDescriptor(t,"arguments")||Object.defineProperty(t,"arguments",{configurable:!0,get(){se("Module.arguments has been replaced with plain arguments_")}}),t.thisProgram&&(a=t.thisProgram),Object.getOwnPropertyDescriptor(t,"thisProgram")||Object.defineProperty(t,"thisProgram",{configurable:!0,get(){se("Module.thisProgram has been replaced with plain thisProgram")}}),t.quit&&(n=t.quit),Object.getOwnPropertyDescriptor(t,"quit")||Object.defineProperty(t,"quit",{configurable:!0,get(){se("Module.quit has been replaced with plain quit_")}}),L(typeof t.memoryInitializerPrefixURL>"u","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"),L(typeof t.pthreadMainPrefixURL>"u","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"),L(typeof t.cdInitializerPrefixURL>"u","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"),L(typeof t.filePackagePrefixURL>"u","Module.filePackagePrefixURL option was removed, use Module.locateFile instead"),L(typeof t.read>"u","Module.read option was removed (modify read_ in JS)"),L(typeof t.readAsync>"u","Module.readAsync option was removed (modify readAsync in JS)"),L(typeof t.readBinary>"u","Module.readBinary option was removed (modify readBinary in JS)"),L(typeof t.setWindowTitle>"u","Module.setWindowTitle option was removed (modify setWindowTitle in JS)"),Object.getOwnPropertyDescriptor(t,"read")||Object.defineProperty(t,"read",{configurable:!0,get(){se("Module.read has been replaced with plain read_")}}),Object.getOwnPropertyDescriptor(t,"readAsync")||Object.defineProperty(t,"readAsync",{configurable:!0,get(){se("Module.readAsync has been replaced with plain readAsync")}}),Object.getOwnPropertyDescriptor(t,"readBinary")||Object.defineProperty(t,"readBinary",{configurable:!0,get(){se("Module.readBinary has been replaced with plain readBinary")}}),HZ=SmA=YZ=function(){se("cannot use the stack before compiled code is ready to run, and has provided stack access")};function f(oA){f.shown||(f.shown={}),f.shown[oA]||(f.shown[oA]=1,m(oA))}let D={"f64-rem"(oA,hA){return oA%hA},debugger(){debugger}},w=[],b=0,F=function(oA){b=oA},v;t.wasmBinary&&(v=t.wasmBinary),Object.getOwnPropertyDescriptor(t,"wasmBinary")||Object.defineProperty(t,"wasmBinary",{configurable:!0,get(){se("Module.wasmBinary has been replaced with plain wasmBinary")}});let S;t.noExitRuntime&&(S=t.noExitRuntime),Object.getOwnPropertyDescriptor(t,"noExitRuntime")||Object.defineProperty(t,"noExitRuntime",{configurable:!0,get(){se("Module.noExitRuntime has been replaced with plain noExitRuntime")}}),typeof WebAssembly!="object"&&se("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.");let x,k=new WebAssembly.Table({initial:352,maximum:352,element:"anyfunc"}),T=!1,R=0;function L(oA,hA){oA||se(`Assertion failed: ${hA}`)}function M(oA){let hA=t[`_${oA}`];return L(hA,`Cannot call unknown function ${oA}, make sure it is exported`),hA}function U(oA,hA,jA,ae,Ue){let qe={string(_r){let Ui=0;if(_r!=null&&_r!==0){let vn=(_r.length<<2)+1;Ui=YZ(vn),_(_r,Ui,vn)}return Ui},array(_r){let Ui=YZ(_r.length);return q(_r,Ui),Ui}};function $e(_r){return hA==="string"?K(_r):hA==="boolean"?!!_r:_r}let Ke=M(oA),ot=[],Wt=0;if(L(hA!=="array",'Return type should not be "array".'),ae)for(let _r=0;_r<ae.length;_r++){let Ui=qe[jA[_r]];Ui?(Wt===0&&(Wt=HZ()),ot[_r]=Ui(ae[_r])):ot[_r]=ae[_r]}let ui=Ke.apply(null,ot);return ui=$e(ui),Wt!==0&&SmA(Wt),ui}function Y(oA,hA,jA,ae){return function(){return U(oA,hA,jA,arguments,ae)}}let H=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function J(oA,hA,jA){let ae=hA+jA,Ue=hA;for(;oA[Ue]&&!(Ue>=ae);)++Ue;if(Ue-hA>16&&oA.subarray&&H)return H.decode(oA.subarray(hA,Ue));let qe="";for(;hA<Ue;){let $e=oA[hA++];if(!($e&128)){qe+=String.fromCharCode($e);continue}let Ke=oA[hA++]&63;if(($e&224)==192){qe+=String.fromCharCode(($e&31)<<6|Ke);continue}let ot=oA[hA++]&63;if(($e&240)==224?$e=($e&15)<<12|Ke<<6|ot:(($e&248)!=240&&f(`Invalid UTF-8 leading byte 0x${$e.toString(16)} encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!`),$e=($e&7)<<18|Ke<<12|ot<<6|oA[hA++]&63),$e<65536)qe+=String.fromCharCode($e);else{let Wt=$e-65536;qe+=String.fromCharCode(55296|Wt>>10,56320|Wt&1023)}}return qe}function K(oA,hA){return oA?J(aA,oA,hA):""}function O(oA,hA,jA,ae){if(!(ae>0))return 0;let Ue=jA,qe=jA+ae-1;for(let $e=0;$e<oA.length;++$e){let Ke=oA.charCodeAt($e);if(Ke>=55296&&Ke<=57343){let ot=oA.charCodeAt(++$e);Ke=65536+((Ke&1023)<<10)|ot&1023}if(Ke<=127){if(jA>=qe)break;hA[jA++]=Ke}else if(Ke<=2047){if(jA+1>=qe)break;hA[jA++]=192|Ke>>6,hA[jA++]=128|Ke&63}else if(Ke<=65535){if(jA+2>=qe)break;hA[jA++]=224|Ke>>12,hA[jA++]=128|Ke>>6&63,hA[jA++]=128|Ke&63}else{if(jA+3>=qe)break;Ke>=2097152&&f(`Invalid Unicode code point 0x${Ke.toString(16)} encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF).`),hA[jA++]=240|Ke>>18,hA[jA++]=128|Ke>>12&63,hA[jA++]=128|Ke>>6&63,hA[jA++]=128|Ke&63}}return hA[jA]=0,jA-Ue}function _(oA,hA,jA){return L(typeof jA=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"),O(oA,aA,hA,jA)}function z(oA){let hA=0;for(let jA=0;jA<oA.length;++jA){let ae=oA.charCodeAt(jA);ae>=55296&&ae<=57343&&(ae=65536+((ae&1023)<<10)|oA.charCodeAt(++jA)&1023),ae<=127?++hA:ae<=2047?hA+=2:ae<=65535?hA+=3:hA+=4}return hA}let j=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function q(oA,hA){L(oA.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)"),gA.set(oA,hA)}let CA=65536;function tA(oA,hA){return oA%hA>0&&(oA+=hA-oA%hA),oA}let lA,gA,aA,RA,wA,JA,TA,qA,BA;function bA(oA){lA=oA,t.HEAP8=gA=new Int8Array(oA),t.HEAP16=RA=new Int16Array(oA),t.HEAP32=JA=new Int32Array(oA),t.HEAPU8=aA=new Uint8Array(oA),t.HEAPU16=wA=new Uint16Array(oA),t.HEAPU32=TA=new Uint32Array(oA),t.HEAPF32=qA=new Float32Array(oA),t.HEAPF64=BA=new Float64Array(oA)}let FA=434112,IA=5676992,nA=5676992,eA=433920;L(FA%16===0,"stack must start aligned"),L(nA%16===0,"heap must start aligned");let EA=5242880;t.TOTAL_STACK&&L(EA===t.TOTAL_STACK,"the stack size can no longer be determined at runtime");let mA=t.TOTAL_MEMORY||16777216;Object.getOwnPropertyDescriptor(t,"TOTAL_MEMORY")||Object.defineProperty(t,"TOTAL_MEMORY",{configurable:!0,get(){se("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY")}}),L(mA>=EA,`TOTAL_MEMORY should be larger than TOTAL_STACK, was ${mA}! (TOTAL_STACK=${EA})`),L(typeof Int32Array<"u"&&typeof Float64Array<"u"&&Int32Array.prototype.subarray!==void 0&&Int32Array.prototype.set!==void 0,"JS engine does not provide full typed array support"),t.wasmMemory?x=t.wasmMemory:x=new WebAssembly.Memory({initial:mA/CA}),x&&(lA=x.buffer),mA=lA.byteLength,L(mA%CA===0),bA(lA),JA[eA>>2]=nA;function kA(){L((IA&3)==0),TA[(IA>>2)-1]=34821223,TA[(IA>>2)-2]=2310721022,JA[0]=1668509029}function SA(){let oA=TA[(IA>>2)-1],hA=TA[(IA>>2)-2];(oA!=34821223||hA!=2310721022)&&se(`Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x${hA.toString(16)} ${oA.toString(16)}`),JA[0]!==1668509029&&se("Runtime error: The application has corrupted its heap memory area (address zero)!")}function YA(oA){se(`Stack overflow! Attempted to allocate ${oA} bytes on the stack, but stack has only ${IA-HZ()+oA} bytes available!`)}(function(){let oA=new Int16Array(1),hA=new Int8Array(oA.buffer);if(oA[0]=25459,hA[0]!==115||hA[1]!==99)throw"Runtime error: expected the system to be little-endian!"})();function dA(oA,hA){se(`Invalid function pointer ${oA} called with signature '${hA}'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). Build with ASSERTIONS=2 for more info.`)}function W(oA){for(;oA.length>0;){let hA=oA.shift();if(typeof hA=="function"){hA();continue}let jA=hA.func;typeof jA=="number"?hA.arg===void 0?t.dynCall_v(jA):t.dynCall_vi(jA,hA.arg):jA(hA.arg===void 0?null:hA.arg)}}let Z=[],pA=[],AA=[],DA=[],rA=!1,KA=!1;function _A(){if(t.preRun)for(typeof t.preRun=="function"&&(t.preRun=[t.preRun]);t.preRun.length;)ee(t.preRun.shift());W(Z)}function zA(){SA(),L(!rA),rA=!0,W(pA)}function WA(){SA(),W(AA)}function te(){SA(),KA=!0}function ZA(){if(SA(),t.postRun)for(typeof t.postRun=="function"&&(t.postRun=[t.postRun]);t.postRun.length;)$A(t.postRun.shift());W(DA)}function ee(oA){Z.unshift(oA)}function $A(oA){DA.unshift(oA)}L(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),L(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),L(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),L(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");let oe=0,vA=null,Pe=null,MA={};function ke(oA){oe++,t.monitorRunDependencies&&t.monitorRunDependencies(oe),oA?(L(!MA[oA]),MA[oA]=1,vA===null&&typeof setInterval<"u"&&(vA=setInterval(()=>{if(T){clearInterval(vA),vA=null;return}let hA=!1;for(let jA in MA)hA||(hA=!0,m("still waiting on run dependencies:")),m(`dependency: ${jA}`);hA&&m("(end of list)")},1e4))):m("warning: run dependency added without ID")}function We(oA){if(oe--,t.monitorRunDependencies&&t.monitorRunDependencies(oe),oA?(L(MA[oA]),delete MA[oA]):m("warning: run dependency removed without ID"),oe==0&&(vA!==null&&(clearInterval(vA),vA=null),Pe)){let hA=Pe;Pe=null,hA()}}t.preloadedImages={},t.preloadedAudios={};function se(oA){t.onAbort&&t.onAbort(oA),oA+="",p(oA),m(oA),T=!0,R=1;let hA="";throw`abort(${oA}) at ${Le()}${hA}`}var Te={error(){se("Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -s FORCE_FILESYSTEM=1")},init(){Te.error()},createDataFile(){Te.error()},createPreloadedFile(){Te.error()},createLazyFile(){Te.error()},open(){Te.error()},mkdev(){Te.error()},registerDevice(){Te.error()},analyzePath(){Te.error()},loadFilesFromDB(){Te.error()},ErrnoError:function(){Te.error()}};t.FS_createDataFile=Te.createDataFile,t.FS_createPreloadedFile=Te.createPreloadedFile;let je="data:application/octet-stream;base64,";function xe(oA){return String.prototype.startsWith?oA.startsWith(je):oA.indexOf(je)===0}let yA="woff2.wasm";xe(yA)||(yA=E(yA));function Ne(){try{if(v)return new Uint8Array(v);if(h)return h(yA);throw"both async and sync fetching of the wasm failed"}catch(oA){se(oA)}}function He(){return!v&&(o||s)&&typeof fetch=="function"?fetch(yA,{credentials:"same-origin"}).then((oA)=>{if(!oA.ok)throw`failed to load wasm binary file at '${yA}'`;return oA.arrayBuffer()}).catch(()=>Ne()):new Promise((oA,hA)=>{oA(Ne())})}function de(){let oA={env:MZ,wasi_unstable:MZ,global:{NaN:NaN,Infinity:1/0},"global.Math":Math,asm2wasm:D};function hA($e,Ke){let ot=$e.exports;t.asm=ot,We("wasm-instantiate")}ke("wasm-instantiate");let jA=t;function ae($e){L(t===jA,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"),jA=null,hA($e.instance)}function Ue($e){return He().then((Ke)=>WebAssembly.instantiate(Ke,oA)).then($e,(Ke)=>{m(`failed to asynchronously prepare wasm: ${Ke}`),se(Ke)})}function qe(){if(!v&&typeof WebAssembly.instantiateStreaming=="function"&&!xe(yA)&&typeof fetch=="function"&&typeof process=="object"&&process.versions&&process.versions.node&&+process.versions.node.split(".")[0]<17)fetch(yA,{credentials:"same-origin"}).then(($e)=>WebAssembly.instantiateStreaming($e,oA).then(ae,(Ke)=>{m(`wasm streaming compile failed: ${Ke}`),m("falling back to ArrayBuffer instantiation"),Ue(ae)}));else return Ue(ae)}if(t.instantiateWasm)try{return t.instantiateWasm(oA,hA)}catch($e){return m(`Module.instantiateWasm callback failed with error: ${$e}`),!1}return qe(),{}}t.asm=de,pA.push({func(){kje()}}),L(!0);function NA(oA){let hA=t.___cxa_demangle||t.__cxa_demangle;L(hA);try{let qe=oA;qe.startsWith("__Z")&&(qe=qe.substr(1));let $e=z(qe)+1;var jA=eb($e);_(qe,jA,$e);var ae=eb(4),Ue=hA(jA,0,0,ae);if(JA[ae>>2]===0&&Ue)return K(Ue)}catch{}finally{jA&&aC(jA),ae&&aC(ae),Ue&&aC(Ue)}return oA}function ce(oA){let hA=/\b__Z[\w\d_]+/g;return oA.replace(hA,(jA)=>{let ae=NA(jA);return jA===ae?jA:`${ae} [${jA}]`})}function me(){let oA=Error();if(!oA.stack){try{throw Error(0)}catch(hA){oA=hA}if(!oA.stack)return"(no stack trace available)"}return oA.stack.toString()}function Le(){let oA=me();return t.extraStackTrace&&(oA+=`
|
||
${t.extraStackTrace()}`),ce(oA)}function Lt(oA,hA,jA,ae){se(`Assertion failed: ${K(oA)}, at: ${[hA?K(hA):"unknown filename",jA,ae?K(ae):"unknown function"]}`)}function tt(oA){return eb(oA)}let Ht={},lr=0;function It(oA,hA,jA){throw Ht[oA]={ptr:oA,adjusted:[oA],type:hA,destructor:jA,refcount:0,caught:!1,rethrown:!1},lr=oA,"uncaught_exception"in TZ?TZ.uncaught_exceptions++:TZ.uncaught_exceptions=1,`${oA} - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.`}function Ct(){}function Kt(){}var Ce={splitPath(oA){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(oA).slice(1)},normalizeArray(oA,hA){let jA=0;for(let ae=oA.length-1;ae>=0;ae--){let Ue=oA[ae];Ue==="."?oA.splice(ae,1):Ue===".."?(oA.splice(ae,1),jA++):jA&&(oA.splice(ae,1),jA--)}if(hA)for(;jA;jA--)oA.unshift("..");return oA},normalize(oA){let hA=oA.charAt(0)==="/",jA=oA.substr(-1)==="/";return oA=Ce.normalizeArray(oA.split("/").filter((ae)=>!!ae),!hA).join("/"),!oA&&!hA&&(oA="."),oA&&jA&&(oA+="/"),(hA?"/":"")+oA},dirname(oA){let hA=Ce.splitPath(oA),jA=hA[0],ae=hA[1];return!jA&&!ae?".":(ae&&(ae=ae.substr(0,ae.length-1)),jA+ae)},basename(oA){if(oA==="/")return"/";let hA=oA.lastIndexOf("/");return hA===-1?oA:oA.substr(hA+1)},extname(oA){return Ce.splitPath(oA)[3]},join(){let oA=Array.prototype.slice.call(arguments,0);return Ce.normalize(oA.join("/"))},join2(oA,hA){return Ce.normalize(`${oA}/${hA}`)}},De={buffers:[null,[],[]],printChar(oA,hA){let jA=De.buffers[oA];L(jA),hA===0||hA===10?((oA===1?p:m)(J(jA,0)),jA.length=0):jA.push(hA)},varargs:0,get(oA){return De.varargs+=4,JA[De.varargs-4>>2]},getStr(){return K(De.get())},get64(){let oA=De.get(),hA=De.get();return oA>=0?L(hA===0):L(hA===-1),oA},getZero(){L(De.get()===0)}};function Ve(oA){try{return se("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM"),0}catch(hA){return(typeof Te>"u"||!(hA instanceof Te.ErrnoError))&&se(hA),hA.errno}}function Vt(){return Ve.apply(null,arguments)}function jt(oA,hA,jA,ae,Ue){try{return se("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM"),0}catch(qe){return(typeof Te>"u"||!(qe instanceof Te.ErrnoError))&&se(qe),qe.errno}}function Or(){return jt.apply(null,arguments)}function bi(){let oA=t._fflush;oA&&oA(0);let hA=De.buffers;hA[1].length&&De.printChar(1,10),hA[2].length&&De.printChar(2,10)}function fr(oA,hA,jA,ae){try{let Ue=0;for(let qe=0;qe<jA;qe++){let $e=JA[hA+qe*8>>2],Ke=JA[hA+(qe*8+4)>>2];for(let ot=0;ot<Ke;ot++)De.printChar(oA,aA[$e+ot]);Ue+=Ke}return JA[ae>>2]=Ue,0}catch(Ue){return(typeof Te>"u"||!(Ue instanceof Te.ErrnoError))&&se(Ue),Ue.errno}}function At(){return fr.apply(null,arguments)}function Ye(oA){switch(oA){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw TypeError(`Unknown type size: ${oA}`)}}function Bt(){let oA=Array(256);for(let hA=0;hA<256;++hA)oA[hA]=String.fromCharCode(hA);nt=oA}var nt=void 0;function Me(oA){let hA="",jA=oA;for(;aA[jA];)hA+=nt[aA[jA++]];return hA}let kt={},LA={},Gi={},HA=48,Er=57;function xa(oA){if(oA===void 0)return"_unknown";oA=oA.replace(/[^a-zA-Z0-9_]/g,"$");let hA=oA.charCodeAt(0);return hA>=HA&&hA<=Er?`_${oA}`:oA}function ns(oA,hA){return oA=xa(oA),Function("body",`return function ${oA}() {
|
||
"use strict"; return body.apply(this, arguments);
|
||
};
|
||
`)(hA)}function Og(oA,hA){let jA=ns(hA,function(ae){this.name=hA,this.message=ae;let Ue=Error(ae).stack;Ue!==void 0&&(this.stack=`${this.toString()}
|
||
${Ue.replace(/^Error(:[^\n]*)?\n/,"")}`)});return jA.prototype=Object.create(oA.prototype),jA.prototype.constructor=jA,jA.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},jA}let os;function ri(oA){throw new os(oA)}let Ku;function yo(oA){throw new Ku(oA)}function v0(oA,hA,jA){oA.forEach((Ke)=>{Gi[Ke]=hA});function ae(Ke){let ot=jA(Ke);ot.length!==oA.length&&yo("Mismatched type converter count");for(let Wt=0;Wt<oA.length;++Wt)Sa(oA[Wt],ot[Wt])}let Ue=Array(hA.length),qe=[],$e=0;hA.forEach((Ke,ot)=>{LA.hasOwnProperty(Ke)?Ue[ot]=LA[Ke]:(qe.push(Ke),kt.hasOwnProperty(Ke)||(kt[Ke]=[]),kt[Ke].push(()=>{Ue[ot]=LA[Ke],++$e,$e===qe.length&&ae(Ue)}))}),qe.length===0&&ae(Ue)}function Sa(oA,hA,jA){if(jA=jA||{},!("argPackAdvance"in hA))throw TypeError("registerType registeredInstance requires argPackAdvance");let ae=hA.name;if(oA||ri(`type "${ae}" must have a positive integer typeid pointer`),LA.hasOwnProperty(oA)){if(jA.ignoreDuplicateRegistrations)return;ri(`Cannot register type '${ae}' twice`)}if(LA[oA]=hA,delete Gi[oA],kt.hasOwnProperty(oA)){let Ue=kt[oA];delete kt[oA],Ue.forEach((qe)=>{qe()})}}function JB(oA,hA,jA,ae,Ue){let qe=Ye(jA);hA=Me(hA),Sa(oA,{name:hA,fromWireType($e){return!!$e},toWireType($e,Ke){return Ke?ae:Ue},argPackAdvance:8,readValueFromPointer($e){let Ke;if(jA===1)Ke=gA;else if(jA===2)Ke=RA;else if(jA===4)Ke=JA;else throw TypeError(`Unknown boolean type size: ${hA}`);return this.fromWireType(Ke[$e>>qe])},destructorFunction:null})}function bn(oA){if(!(this instanceof iC)||!(oA instanceof iC))return!1;let hA=this.$$.ptrType.registeredClass,jA=this.$$.ptr,ae=oA.$$.ptrType.registeredClass,Ue=oA.$$.ptr;for(;hA.baseClass;)jA=hA.upcast(jA),hA=hA.baseClass;for(;ae.baseClass;)Ue=ae.upcast(Ue),ae=ae.baseClass;return hA===ae&&jA===Ue}function AC(oA){return{count:oA.count,deleteScheduled:oA.deleteScheduled,preservePointerOnDelete:oA.preservePointerOnDelete,ptr:oA.ptr,ptrType:oA.ptrType,smartPtr:oA.smartPtr,smartPtrType:oA.smartPtrType}}function Du(oA){function hA(jA){return jA.$$.ptrType.registeredClass.name}ri(`${hA(oA)} instance already deleted`)}let zl=!1;function Pa(oA){}function k0(oA){oA.smartPtr?oA.smartPtrType.rawDestructor(oA.smartPtr):oA.ptrType.registeredClass.rawDestructor(oA.ptr)}function aQ(oA){oA.count.value-=1,oA.count.value===0&&k0(oA)}function eC(oA){return typeof FinalizationGroup>"u"?(eC=function(hA){return hA},oA):(zl=new FinalizationGroup((hA)=>{for(let jA=hA.next();!jA.done;jA=hA.next()){let ae=jA.value;ae.ptr?aQ(ae):console.warn(`object already deleted: ${ae.ptr}`)}}),eC=function(hA){return zl.register(hA,hA.$$,hA.$$),hA},Pa=function(hA){zl.unregister(hA.$$)},eC(oA))}function tC(){if(this.$$.ptr||Du(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;let oA=eC(Object.create(Object.getPrototypeOf(this),{$$:{value:AC(this.$$)}}));return oA.$$.count.value+=1,oA.$$.deleteScheduled=!1,oA}function Zl(){this.$$.ptr||Du(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&ri("Object already scheduled for deletion"),Pa(this),aQ(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function ss(){return!this.$$.ptr}let rC,Pg=[];function OB(){for(;Pg.length;){let oA=Pg.pop();oA.$$.deleteScheduled=!1,oA.delete()}}function F0(){return this.$$.ptr||Du(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&ri("Object already scheduled for deletion"),Pg.push(this),Pg.length===1&&rC&&rC(OB),this.$$.deleteScheduled=!0,this}function RZ(){iC.prototype.isAliasOf=bn,iC.prototype.clone=tC,iC.prototype.delete=Zl,iC.prototype.isDeleted=ss,iC.prototype.deleteLater=F0}function iC(){}let iD={};function nQ(oA,hA,jA){if(oA[hA].overloadTable===void 0){let ae=oA[hA];oA[hA]=function(){return oA[hA].overloadTable.hasOwnProperty(arguments.length)||ri(`Function '${jA}' called with an invalid number of arguments (${arguments.length}) - expects one of (${oA[hA].overloadTable})!`),oA[hA].overloadTable[arguments.length].apply(this,arguments)},oA[hA].overloadTable=[],oA[hA].overloadTable[ae.argCount]=ae}}function uD(oA,hA,jA){t.hasOwnProperty(oA)?((jA===void 0||t[oA].overloadTable!==void 0&&t[oA].overloadTable[jA]!==void 0)&&ri(`Cannot register public name '${oA}' twice`),nQ(t,oA,oA),t.hasOwnProperty(jA)&&ri(`Cannot register multiple overloads of a function with the same number of arguments (${jA})!`),t[oA].overloadTable[jA]=hA):(t[oA]=hA,jA!==void 0&&(t[oA].numArguments=jA))}function ze(oA,hA,jA,ae,Ue,qe,$e,Ke){this.name=oA,this.constructor=hA,this.instancePrototype=jA,this.rawDestructor=ae,this.baseClass=Ue,this.getActualType=qe,this.upcast=$e,this.downcast=Ke,this.pureVirtualFunctions=[]}function GA(oA,hA,jA){for(;hA!==jA;)hA.upcast||ri(`Expected null or instance of ${jA.name}, got an instance of ${hA.name}`),oA=hA.upcast(oA),hA=hA.baseClass;return oA}function ie(oA,hA){if(hA===null)return this.isReference&&ri(`null is not a valid ${this.name}`),0;hA.$$||ri(`Cannot pass "${aD(hA)}" as a ${this.name}`),hA.$$.ptr||ri(`Cannot pass deleted object as a pointer of type ${this.name}`);let jA=hA.$$.ptrType.registeredClass;return GA(hA.$$.ptr,jA,this.registeredClass)}function Je(oA,hA){let jA;if(hA===null)return this.isReference&&ri(`null is not a valid ${this.name}`),this.isSmartPointer?(jA=this.rawConstructor(),oA!==null&&oA.push(this.rawDestructor,jA),jA):0;hA.$$||ri(`Cannot pass "${aD(hA)}" as a ${this.name}`),hA.$$.ptr||ri(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&hA.$$.ptrType.isConst&&ri(`Cannot convert argument of type ${hA.$$.smartPtrType?hA.$$.smartPtrType.name:hA.$$.ptrType.name} to parameter type ${this.name}`);let ae=hA.$$.ptrType.registeredClass;if(jA=GA(hA.$$.ptr,ae,this.registeredClass),this.isSmartPointer)switch(hA.$$.smartPtr===void 0&&ri("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:hA.$$.smartPtrType===this?jA=hA.$$.smartPtr:ri(`Cannot convert argument of type ${hA.$$.smartPtrType?hA.$$.smartPtrType.name:hA.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:jA=hA.$$.smartPtr;break;case 2:if(hA.$$.smartPtrType===this)jA=hA.$$.smartPtr;else{let Ue=hA.clone();jA=this.rawShare(jA,UZ(()=>{Ue.delete()})),oA!==null&&oA.push(this.rawDestructor,jA)}break;default:ri("Unsupporting sharing policy")}return jA}function Oe(oA,hA){if(hA===null)return this.isReference&&ri(`null is not a valid ${this.name}`),0;hA.$$||ri(`Cannot pass "${aD(hA)}" as a ${this.name}`),hA.$$.ptr||ri(`Cannot pass deleted object as a pointer of type ${this.name}`),hA.$$.ptrType.isConst&&ri(`Cannot convert argument of type ${hA.$$.ptrType.name} to parameter type ${this.name}`);let jA=hA.$$.ptrType.registeredClass;return GA(hA.$$.ptr,jA,this.registeredClass)}function zt(oA){return this.fromWireType(TA[oA>>2])}function mr(oA){return this.rawGetPointee&&(oA=this.rawGetPointee(oA)),oA}function ii(oA){this.rawDestructor&&this.rawDestructor(oA)}function sn(oA){oA!==null&&oA.delete()}function Vl(oA,hA,jA){if(hA===jA)return oA;if(jA.baseClass===void 0)return null;let ae=Vl(oA,hA,jA.baseClass);return ae===null?null:jA.downcast(ae)}function qo(){return Object.keys(sQ).length}function x0(){let oA=[];for(let hA in sQ)sQ.hasOwnProperty(hA)&&oA.push(sQ[hA]);return oA}function oQ(oA){rC=oA,Pg.length&&rC&&rC(OB)}function S0(){t.getInheritedInstanceCount=qo,t.getLiveInheritedInstances=x0,t.flushPendingDeletes=OB,t.setDelayFunction=oQ}var sQ={};function NVe(oA,hA){for(hA===void 0&&ri("ptr should not be undefined");oA.baseClass;)hA=oA.upcast(hA),oA=oA.baseClass;return hA}function GVe(oA,hA){return hA=NVe(oA,hA),sQ[hA]}function tR(oA,hA){(!hA.ptrType||!hA.ptr)&&yo("makeClassHandle requires ptr and ptrType");let jA=!!hA.smartPtrType,ae=!!hA.smartPtr;return jA!==ae&&yo("Both smartPtrType and smartPtr must be specified"),hA.count={value:1},eC(Object.create(oA,{$$:{value:hA}}))}function UVe(oA){let hA=this.getPointee(oA);if(!hA)return this.destructor(oA),null;let jA=GVe(this.registeredClass,hA);if(jA!==void 0){if(jA.$$.count.value===0)return jA.$$.ptr=hA,jA.$$.smartPtr=oA,jA.clone();let ot=jA.clone();return this.destructor(oA),ot}function ae(){return this.isSmartPointer?tR(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:hA,smartPtrType:this,smartPtr:oA}):tR(this.registeredClass.instancePrototype,{ptrType:this,ptr:oA})}let Ue=this.registeredClass.getActualType(hA),qe=iD[Ue];if(!qe)return ae.call(this);let $e;this.isConst?$e=qe.constPointerType:$e=qe.pointerType;let Ke=Vl(hA,this.registeredClass,$e.registeredClass);return Ke===null?ae.call(this):this.isSmartPointer?tR($e.registeredClass.instancePrototype,{ptrType:$e,ptr:Ke,smartPtrType:this,smartPtr:oA}):tR($e.registeredClass.instancePrototype,{ptrType:$e,ptr:Ke})}function MVe(){Zd.prototype.getPointee=mr,Zd.prototype.destructor=ii,Zd.prototype.argPackAdvance=8,Zd.prototype.readValueFromPointer=zt,Zd.prototype.deleteObject=sn,Zd.prototype.fromWireType=UVe}function Zd(oA,hA,jA,ae,Ue,qe,$e,Ke,ot,Wt,ui){this.name=oA,this.registeredClass=hA,this.isReference=jA,this.isConst=ae,this.isSmartPointer=Ue,this.pointeeType=qe,this.sharingPolicy=$e,this.rawGetPointee=Ke,this.rawConstructor=ot,this.rawShare=Wt,this.rawDestructor=ui,!Ue&&hA.baseClass===void 0?ae?(this.toWireType=ie,this.destructorFunction=null):(this.toWireType=Oe,this.destructorFunction=null):this.toWireType=Je}function DmA(oA,hA,jA){t.hasOwnProperty(oA)||yo("Replacing nonexistant public symbol"),t[oA].overloadTable!==void 0&&jA!==void 0?t[oA].overloadTable[jA]=hA:(t[oA]=hA,t[oA].argCount=jA)}function Op(oA,hA){oA=Me(oA);function jA(Ue){let qe=[];for(let Ke=1;Ke<oA.length;++Ke)qe.push(`a${Ke}`);let $e=`return function ${`dynCall_${oA}_${hA}`}(${qe.join(", ")}) {
|
||
`;return $e+=` return dynCall(rawFunction${qe.length?", ":""}${qe.join(", ")});
|
||
`,$e+=`};
|
||
`,Function("dynCall","rawFunction",$e)(Ue,hA)}let ae;if(t[`FUNCTION_TABLE_${oA}`]!==void 0)ae=t[`FUNCTION_TABLE_${oA}`][hA];else if(typeof FUNCTION_TABLE<"u")ae=FUNCTION_TABLE[hA];else{let Ue=t[`dynCall_${oA}`];Ue===void 0&&(Ue=t[`dynCall_${oA.replace(/f/g,"d")}`],Ue===void 0&&ri(`No dynCall invoker for signature: ${oA}`)),ae=jA(Ue)}return typeof ae!="function"&&ri(`unknown function pointer with signature ${oA}: ${hA}`),ae}let ymA;function wmA(oA){let hA=vje(oA),jA=Me(hA);return aC(hA),jA}function rR(oA,hA){let jA=[],ae={};function Ue(qe){if(!ae[qe]&&!LA[qe]){if(Gi[qe]){Gi[qe].forEach(Ue);return}jA.push(qe),ae[qe]=!0}}throw hA.forEach(Ue),new ymA(`${oA}: ${jA.map(wmA).join([", "])}`)}function TVe(oA,hA,jA,ae,Ue,qe,$e,Ke,ot,Wt,ui,_r,Ui){ui=Me(ui),qe=Op(Ue,qe),Ke&&(Ke=Op($e,Ke)),Wt&&(Wt=Op(ot,Wt)),Ui=Op(_r,Ui);let vn=xa(ui);uD(vn,()=>{rR(`Cannot construct ${ui} due to unbound types`,[ae])}),v0([oA,hA,jA],ae?[ae]:[],(PB)=>{PB=PB[0];let nC,JZ;ae?(nC=PB.registeredClass,JZ=nC.instancePrototype):JZ=iC.prototype;let lQ=ns(vn,function(){if(Object.getPrototypeOf(this)!==OZ)throw new os(`Use 'new' to construct ${ui}`);if(nD.constructor_body===void 0)throw new os(`${ui} has no accessible constructor`);let GmA=nD.constructor_body[arguments.length];if(GmA===void 0)throw new os(`Tried to invoke ctor of ${ui} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(nD.constructor_body).toString()}) parameters instead!`);return GmA.apply(this,arguments)});var OZ=Object.create(JZ,{constructor:{value:lQ}});lQ.prototype=OZ;var nD=new ze(ui,lQ,OZ,Ui,nC,qe,Ke,Wt);let Sje=new Zd(ui,nD,!0,!1,!1),RmA=new Zd(`${ui}*`,nD,!1,!1,!1),NmA=new Zd(`${ui} const*`,nD,!1,!0,!1);return iD[oA]={pointerType:RmA,constPointerType:NmA},DmA(vn,lQ),[Sje,RmA,NmA]})}function NZ(oA,hA){let jA=[];for(let ae=0;ae<oA;ae++)jA.push(JA[(hA>>2)+ae]);return jA}function bmA(oA){for(;oA.length;){let hA=oA.pop();oA.pop()(hA)}}function YVe(oA,hA,jA,ae,Ue,qe){let $e=NZ(hA,jA);Ue=Op(ae,Ue),v0([],[oA],(Ke)=>{Ke=Ke[0];let ot=`constructor ${Ke.name}`;if(Ke.registeredClass.constructor_body===void 0&&(Ke.registeredClass.constructor_body=[]),Ke.registeredClass.constructor_body[hA-1]!==void 0)throw new os(`Cannot register multiple constructors with identical number of parameters (${hA-1}) for class '${Ke.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return Ke.registeredClass.constructor_body[hA-1]=function(){rR(`Cannot construct ${Ke.name} due to unbound types`,$e)},v0([],$e,(Wt)=>(Ke.registeredClass.constructor_body[hA-1]=function(){arguments.length!==hA-1&&ri(`${ot} called with ${arguments.length} arguments, expected ${hA-1}`);let ui=[],_r=Array(hA);_r[0]=qe;for(let vn=1;vn<hA;++vn)_r[vn]=Wt[vn].toWireType(ui,arguments[vn-1]);let Ui=Ue.apply(null,_r);return bmA(ui),Wt[0].fromWireType(Ui)},[])),[]})}function HVe(oA,hA){if(!(oA instanceof Function))throw TypeError(`new_ called with constructor type ${typeof oA} which is not a function`);let jA=ns(oA.name||"unknownFunctionName",()=>{});jA.prototype=oA.prototype;let ae=new jA,Ue=oA.apply(ae,hA);return Ue instanceof Object?Ue:ae}function vmA(oA,hA,jA,ae,Ue){let qe=hA.length;qe<2&&ri("argTypes array size mismatch! Must at least get return value and 'this' types!");let $e=hA[1]!==null&&jA!==null,Ke=!1;for(var ot=1;ot<hA.length;++ot)if(hA[ot]!==null&&hA[ot].destructorFunction===void 0){Ke=!0;break}let Wt=hA[0].name!=="void",ui="",_r="";for(var ot=0;ot<qe-2;++ot)ui+=`${ot!==0?", ":""}arg${ot}`,_r+=`${ot!==0?", ":""}arg${ot}Wired`;let Ui=`return function ${xa(oA)}(${ui}) {
|
||
if (arguments.length !== ${qe-2}) {
|
||
throwBindingError('function ${oA} called with ' + arguments.length + ' arguments, expected ${qe-2} args!');
|
||
}
|
||
`;Ke&&(Ui+=`var destructors = [];
|
||
`);let vn=Ke?"destructors":"null",PB=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],nC=[ri,ae,Ue,bmA,hA[0],hA[1]];$e&&(Ui+=`var thisWired = classParam.toWireType(${vn}, this);
|
||
`);for(var ot=0;ot<qe-2;++ot)Ui+=`var arg${ot}Wired = argType${ot}.toWireType(${vn}, arg${ot}); // ${hA[ot+2].name}
|
||
`,PB.push(`argType${ot}`),nC.push(hA[ot+2]);if($e&&(_r=`thisWired${_r.length>0?", ":""}${_r}`),Ui+=`${Wt?"var rv = ":""}invoker(fn${_r.length>0?", ":""}${_r});
|
||
`,Ke)Ui+=`runDestructors(destructors);
|
||
`;else for(var ot=$e?1:2;ot<hA.length;++ot){let lQ=ot===1?"thisWired":`arg${ot-2}Wired`;hA[ot].destructorFunction!==null&&(Ui+=`${lQ}_dtor(${lQ}); // ${hA[ot].name}
|
||
`,PB.push(`${lQ}_dtor`),nC.push(hA[ot].destructorFunction))}return Wt&&(Ui+=`var ret = retType.fromWireType(rv);
|
||
return ret;
|
||
`),Ui+=`}
|
||
`,PB.push(Ui),HVe(Function,PB).apply(null,nC)}function KVe(oA,hA,jA,ae,Ue,qe,$e,Ke){let ot=NZ(jA,ae);hA=Me(hA),qe=Op(Ue,qe),v0([],[oA],(Wt)=>{Wt=Wt[0];let ui=`${Wt.name}.${hA}`;Ke&&Wt.registeredClass.pureVirtualFunctions.push(hA);function _r(){rR(`Cannot call ${ui} due to unbound types`,ot)}let Ui=Wt.registeredClass.instancePrototype,vn=Ui[hA];return vn===void 0||vn.overloadTable===void 0&&vn.className!==Wt.name&&vn.argCount===jA-2?(_r.argCount=jA-2,_r.className=Wt.name,Ui[hA]=_r):(nQ(Ui,hA,ui),Ui[hA].overloadTable[jA-2]=_r),v0([],ot,(PB)=>{let nC=vmA(ui,PB,Wt,qe,$e);return Ui[hA].overloadTable===void 0?(nC.argCount=jA-2,Ui[hA]=nC):Ui[hA].overloadTable[jA-2]=nC,[]}),[]})}let GZ=[],uC=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function kmA(oA){oA>4&&--uC[oA].refcount===0&&(uC[oA]=void 0,GZ.push(oA))}function JVe(){let oA=0;for(let hA=5;hA<uC.length;++hA)uC[hA]!==void 0&&++oA;return oA}function OVe(){for(let oA=5;oA<uC.length;++oA)if(uC[oA]!==void 0)return uC[oA];return null}function PVe(){t.count_emval_handles=JVe,t.get_first_emval=OVe}function UZ(oA){switch(oA){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:{let hA=GZ.length?GZ.pop():uC.length;return uC[hA]={refcount:1,value:oA},hA}}}function _Ve(oA,hA){hA=Me(hA),Sa(oA,{name:hA,fromWireType(jA){let ae=uC[jA].value;return kmA(jA),ae},toWireType(jA,ae){return UZ(ae)},argPackAdvance:8,readValueFromPointer:zt,destructorFunction:null})}function aD(oA){if(oA===null)return"null";let hA=typeof oA;return hA==="object"||hA==="array"||hA==="function"?oA.toString():`${oA}`}function WVe(oA,hA){switch(hA){case 2:return function(jA){return this.fromWireType(qA[jA>>2])};case 3:return function(jA){return this.fromWireType(BA[jA>>3])};default:throw TypeError(`Unknown float type: ${oA}`)}}function qVe(oA,hA,jA){let ae=Ye(jA);hA=Me(hA),Sa(oA,{name:hA,fromWireType(Ue){return Ue},toWireType(Ue,qe){if(typeof qe!="number"&&typeof qe!="boolean")throw TypeError(`Cannot convert "${aD(qe)}" to ${this.name}`);return qe},argPackAdvance:8,readValueFromPointer:WVe(hA,ae),destructorFunction:null})}function zVe(oA,hA,jA,ae,Ue,qe){let $e=NZ(hA,jA);oA=Me(oA),Ue=Op(ae,Ue),uD(oA,()=>{rR(`Cannot call ${oA} due to unbound types`,$e)},hA-1),v0([],$e,(Ke)=>{let ot=[Ke[0],null].concat(Ke.slice(1));return DmA(oA,vmA(oA,ot,null,Ue,qe),hA-1),[]})}function ZVe(oA,hA,jA){switch(hA){case 0:return jA?function(ae){return gA[ae]}:function(ae){return aA[ae]};case 1:return jA?function(ae){return RA[ae>>1]}:function(ae){return wA[ae>>1]};case 2:return jA?function(ae){return JA[ae>>2]}:function(ae){return TA[ae>>2]};default:throw TypeError(`Unknown integer type: ${oA}`)}}function VVe(oA,hA,jA,ae,Ue){hA=Me(hA),Ue===-1&&(Ue=4294967295);let qe=Ye(jA),$e=function(ot){return ot};if(ae===0){let ot=32-8*jA;$e=function(Wt){return Wt<<ot>>>ot}}let Ke=hA.indexOf("unsigned")!=-1;Sa(oA,{name:hA,fromWireType:$e,toWireType(ot,Wt){if(typeof Wt!="number"&&typeof Wt!="boolean")throw TypeError(`Cannot convert "${aD(Wt)}" to ${this.name}`);if(Wt<ae||Wt>Ue)throw TypeError(`Passing a number "${aD(Wt)}" from JS side to C/C++ side to an argument of type "${hA}", which is outside the valid range [${ae}, ${Ue}]!`);return Ke?Wt>>>0:Wt|0},argPackAdvance:8,readValueFromPointer:ZVe(hA,qe,ae!==0),destructorFunction:null})}function jVe(oA,hA,jA){let ae=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][hA];function Ue(qe){qe=qe>>2;let $e=TA,Ke=$e[qe],ot=$e[qe+1];return new ae($e.buffer,ot,Ke)}jA=Me(jA),Sa(oA,{name:jA,fromWireType:Ue,argPackAdvance:8,readValueFromPointer:Ue},{ignoreDuplicateRegistrations:!0})}function XVe(oA,hA){hA=Me(hA);let jA=hA==="std::string";Sa(oA,{name:hA,fromWireType(ae){let Ue=TA[ae>>2],qe;if(jA){let Ke=aA[ae+4+Ue],ot=0;Ke!=0&&(ot=Ke,aA[ae+4+Ue]=0);let Wt=ae+4;for(var $e=0;$e<=Ue;++$e){let ui=ae+4+$e;if(aA[ui]==0){let _r=K(Wt);qe===void 0?qe=_r:(qe+="\x00",qe+=_r),Wt=ui+1}}ot!=0&&(aA[ae+4+Ue]=ot)}else{let Ke=Array(Ue);for(var $e=0;$e<Ue;++$e)Ke[$e]=String.fromCharCode(aA[ae+4+$e]);qe=Ke.join("")}return aC(ae),qe},toWireType(ae,Ue){Object.prototype.toString.call(Ue)==="[object ArrayBuffer]"&&(Ue=new Uint8Array(Ue));let qe,$e=typeof Ue=="string";$e||Ue instanceof Uint8Array||Ue instanceof Uint8ClampedArray||Ue instanceof Int8Array||ri("Cannot pass non-string to std::string"),jA&&$e?qe=function(){return z(Ue)}:qe=function(){return Ue.length};let Ke=qe(),ot=eb(4+Ke+1);if(TA[ot>>2]=Ke,jA&&$e)_(Ue,ot+4,Ke+1);else if($e)for(var Wt=0;Wt<Ke;++Wt){let ui=Ue.charCodeAt(Wt);ui>255&&(aC(ot),ri("String has UTF-16 code units that do not fit in 8 bits")),aA[ot+4+Wt]=ui}else for(var Wt=0;Wt<Ke;++Wt)aA[ot+4+Wt]=Ue[Wt];return ae!==null&&ae.push(aC,ot),ot},argPackAdvance:8,readValueFromPointer:zt,destructorFunction(ae){aC(ae)}})}function $Ve(oA,hA,jA){jA=Me(jA);let ae,Ue;hA===2?(ae=function(){return wA},Ue=1):hA===4&&(ae=function(){return TA},Ue=2),Sa(oA,{name:jA,fromWireType(qe){let $e=ae(),Ke=TA[qe>>2],ot=Array(Ke),Wt=qe+4>>Ue;for(let ui=0;ui<Ke;++ui)ot[ui]=String.fromCharCode($e[Wt+ui]);return aC(qe),ot.join("")},toWireType(qe,$e){let Ke=$e.length,ot=eb(4+Ke*hA),Wt=ae();TA[ot>>2]=Ke;let ui=ot+4>>Ue;for(let _r=0;_r<Ke;++_r)Wt[ui+_r]=$e.charCodeAt(_r);return qe!==null&&qe.push(aC,ot),ot},argPackAdvance:8,readValueFromPointer:zt,destructorFunction(qe){aC(qe)}})}function Aje(oA,hA){hA=Me(hA),Sa(oA,{isVoid:!0,name:hA,argPackAdvance:0,fromWireType(){},toWireType(jA,ae){}})}function eje(oA){oA>4&&(uC[oA].refcount+=1)}function tje(oA,hA){let jA=LA[oA];return jA===void 0&&ri(`${hA} has unknown type ${wmA(oA)}`),jA}function rje(oA,hA){oA=tje(oA,"_emval_take_value");let jA=oA.readValueFromPointer(hA);return UZ(jA)}function ije(){se()}function FmA(){return gA.length}function uje(oA){try{return x.grow(oA-lA.byteLength+65535>>16),bA(x.buffer),1}catch(hA){console.error(`emscripten_realloc_buffer: Attempted to grow heap from ${lA.byteLength} bytes to ${oA} bytes, but got error: ${hA}`)}}function aje(oA){let hA=FmA();L(oA>hA);let jA=65536,ae=2147483648-jA;if(oA>ae)return m(`Cannot enlarge memory, asked to go up to ${oA} bytes, but the limit is ${ae} bytes!`),!1;let Ue=Math.max(hA,16777216);for(;Ue<oA;)Ue<=536870912?Ue=tA(2*Ue,jA):Ue=Math.min(tA((3*Ue+2147483648)/4,jA),ae),Ue===hA&&f(`Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only ${gA.length}`);return uje(Ue)?!0:(m(`Failed to grow the heap from ${hA} bytes to ${Ue} bytes, not enough memory!`),!1)}function nje(oA){xje(oA)}function oje(oA){return Math.log(oA)/Math.LN2}function sje(oA){return oje(oA)}function lje(){se("trap!")}function gje(oA,hA,jA){aA.set(aA.subarray(hA,hA+jA),oA)}Bt(),os=t.BindingError=Og(Error,"BindingError"),Ku=t.InternalError=Og(Error,"InternalError"),RZ(),MVe(),S0(),ymA=t.UnboundTypeError=Og(Error,"UnboundTypeError"),PVe();function cje(oA){dA(oA,"i")}function Cje(oA){dA(oA,"ii")}function Bje(oA){dA(oA,"iidiiii")}function Eje(oA){dA(oA,"iii")}function dje(oA){dA(oA,"iiii")}function Ije(oA){dA(oA,"iiiii")}function hje(oA){dA(oA,"jiji")}function Qje(oA){dA(oA,"v")}function pje(oA){dA(oA,"vi")}function fje(oA){dA(oA,"vii")}function mje(oA){dA(oA,"viii")}function Dje(oA){dA(oA,"viiii")}function yje(oA){dA(oA,"viiiii")}function wje(oA){dA(oA,"viiiiii")}let bje={};var MZ={___assert_fail:Lt,___cxa_allocate_exception:tt,___cxa_throw:It,___lock:Ct,___unlock:Kt,___wasi_fd_close:Vt,___wasi_fd_seek:Or,___wasi_fd_write:At,__embind_register_bool:JB,__embind_register_class:TVe,__embind_register_class_constructor:YVe,__embind_register_class_function:KVe,__embind_register_emval:_Ve,__embind_register_float:qVe,__embind_register_function:zVe,__embind_register_integer:VVe,__embind_register_memory_view:jVe,__embind_register_std_string:XVe,__embind_register_std_wstring:$Ve,__embind_register_void:Aje,__emval_decref:kmA,__emval_incref:eje,__emval_take_value:rje,__memory_base:1024,__table_base:0,_abort:ije,_emscripten_get_heap_size:FmA,_emscripten_memcpy_big:gje,_emscripten_resize_heap:aje,_exit:nje,_llvm_log2_f64:sje,_llvm_trap:lje,abortStackOverflow:YA,memory:x,nullFunc_i:cje,nullFunc_ii:Cje,nullFunc_iidiiii:Bje,nullFunc_iii:Eje,nullFunc_iiii:dje,nullFunc_iiiii:Ije,nullFunc_jiji:hje,nullFunc_v:Qje,nullFunc_vi:pje,nullFunc_vii:fje,nullFunc_viii:mje,nullFunc_viiii:Dje,nullFunc_viiiii:yje,nullFunc_viiiiii:wje,setTempRet0:F,table:k};let xmA=t.asm(bje,MZ,lA);t.asm=xmA;var TZ=t.__ZSt18uncaught_exceptionv=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.__ZSt18uncaught_exceptionv.apply(null,arguments)};let MQr=t.___cxa_demangle=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.___cxa_demangle.apply(null,arguments)},TQr=t.___embind_register_native_and_builtin_types=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.___embind_register_native_and_builtin_types.apply(null,arguments)};var vje=t.___getTypeName=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.___getTypeName.apply(null,arguments)};let YQr=t._fflush=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm._fflush.apply(null,arguments)};var aC=t._free=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm._free.apply(null,arguments)},eb=t._malloc=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm._malloc.apply(null,arguments)};let HQr=t.establishStackSpace=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.establishStackSpace.apply(null,arguments)};var kje=t.globalCtors=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.globalCtors.apply(null,arguments)},YZ=t.stackAlloc=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.stackAlloc.apply(null,arguments)},SmA=t.stackRestore=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.stackRestore.apply(null,arguments)},HZ=t.stackSave=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.stackSave.apply(null,arguments)};let KQr=t.dynCall_i=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_i.apply(null,arguments)},JQr=t.dynCall_ii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_ii.apply(null,arguments)},OQr=t.dynCall_iidiiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_iidiiii.apply(null,arguments)},PQr=t.dynCall_iii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_iii.apply(null,arguments)},_Qr=t.dynCall_iiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_iiii.apply(null,arguments)},WQr=t.dynCall_iiiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_iiiii.apply(null,arguments)},qQr=t.dynCall_jiji=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_jiji.apply(null,arguments)},zQr=t.dynCall_v=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_v.apply(null,arguments)},ZQr=t.dynCall_vi=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_vi.apply(null,arguments)},VQr=t.dynCall_vii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_vii.apply(null,arguments)},jQr=t.dynCall_viii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_viii.apply(null,arguments)},XQr=t.dynCall_viiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_viiii.apply(null,arguments)},$Qr=t.dynCall_viiiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_viiiii.apply(null,arguments)},A4r=t.dynCall_viiiiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!KA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_viiiiii.apply(null,arguments)};t.asm=xmA,Object.getOwnPropertyDescriptor(t,"intArrayFromString")||(t.intArrayFromString=function(){se("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"intArrayToString")||(t.intArrayToString=function(){se("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),t.ccall=U,t.cwrap=Y,Object.getOwnPropertyDescriptor(t,"setValue")||(t.setValue=function(){se("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getValue")||(t.getValue=function(){se("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"allocate")||(t.allocate=function(){se("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getMemory")||(t.getMemory=function(){se("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"AsciiToString")||(t.AsciiToString=function(){se("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stringToAscii")||(t.stringToAscii=function(){se("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"UTF8ArrayToString")||(t.UTF8ArrayToString=function(){se("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"UTF8ToString")||(t.UTF8ToString=function(){se("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stringToUTF8Array")||(t.stringToUTF8Array=function(){se("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),t.stringToUTF8=_,Object.getOwnPropertyDescriptor(t,"lengthBytesUTF8")||(t.lengthBytesUTF8=function(){se("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"UTF16ToString")||(t.UTF16ToString=function(){se("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stringToUTF16")||(t.stringToUTF16=function(){se("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"lengthBytesUTF16")||(t.lengthBytesUTF16=function(){se("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"UTF32ToString")||(t.UTF32ToString=function(){se("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stringToUTF32")||(t.stringToUTF32=function(){se("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"lengthBytesUTF32")||(t.lengthBytesUTF32=function(){se("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"allocateUTF8")||(t.allocateUTF8=function(){se("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stackTrace")||(t.stackTrace=function(){se("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnPreRun")||(t.addOnPreRun=function(){se("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnInit")||(t.addOnInit=function(){se("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnPreMain")||(t.addOnPreMain=function(){se("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnExit")||(t.addOnExit=function(){se("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnPostRun")||(t.addOnPostRun=function(){se("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"writeStringToMemory")||(t.writeStringToMemory=function(){se("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"writeArrayToMemory")||(t.writeArrayToMemory=function(){se("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"writeAsciiToMemory")||(t.writeAsciiToMemory=function(){se("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addRunDependency")||(t.addRunDependency=function(){se("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"removeRunDependency")||(t.removeRunDependency=function(){se("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"ENV")||(t.ENV=function(){se("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"FS")||(t.FS=function(){se("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"FS_createFolder")||(t.FS_createFolder=function(){se("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createPath")||(t.FS_createPath=function(){se("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createDataFile")||(t.FS_createDataFile=function(){se("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createPreloadedFile")||(t.FS_createPreloadedFile=function(){se("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createLazyFile")||(t.FS_createLazyFile=function(){se("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createLink")||(t.FS_createLink=function(){se("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createDevice")||(t.FS_createDevice=function(){se("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_unlink")||(t.FS_unlink=function(){se("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"GL")||(t.GL=function(){se("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"dynamicAlloc")||(t.dynamicAlloc=function(){se("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"loadDynamicLibrary")||(t.loadDynamicLibrary=function(){se("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"loadWebAssemblyModule")||(t.loadWebAssemblyModule=function(){se("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getLEB")||(t.getLEB=function(){se("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getFunctionTables")||(t.getFunctionTables=function(){se("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"alignFunctionTables")||(t.alignFunctionTables=function(){se("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"registerFunctions")||(t.registerFunctions=function(){se("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addFunction")||(t.addFunction=function(){se("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"removeFunction")||(t.removeFunction=function(){se("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getFuncWrapper")||(t.getFuncWrapper=function(){se("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"prettyPrint")||(t.prettyPrint=function(){se("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"makeBigInt")||(t.makeBigInt=function(){se("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"dynCall")||(t.dynCall=function(){se("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getCompilerSetting")||(t.getCompilerSetting=function(){se("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stackSave")||(t.stackSave=function(){se("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stackRestore")||(t.stackRestore=function(){se("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stackAlloc")||(t.stackAlloc=function(){se("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"establishStackSpace")||(t.establishStackSpace=function(){se("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"print")||(t.print=function(){se("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"printErr")||(t.printErr=function(){se("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getTempRet0")||(t.getTempRet0=function(){se("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"setTempRet0")||(t.setTempRet0=function(){se("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"callMain")||(t.callMain=function(){se("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"abort")||(t.abort=function(){se("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"Pointer_stringify")||(t.Pointer_stringify=function(){se("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"warnOnce")||(t.warnOnce=function(){se("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),t.writeStackCookie=kA,t.checkStackCookie=SA,t.abortStackOverflow=YA,Object.getOwnPropertyDescriptor(t,"ALLOC_NORMAL")||Object.defineProperty(t,"ALLOC_NORMAL",{configurable:!0,get(){se("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(t,"ALLOC_STACK")||Object.defineProperty(t,"ALLOC_STACK",{configurable:!0,get(){se("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(t,"ALLOC_DYNAMIC")||Object.defineProperty(t,"ALLOC_DYNAMIC",{configurable:!0,get(){se("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(t,"ALLOC_NONE")||Object.defineProperty(t,"ALLOC_NONE",{configurable:!0,get(){se("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(t,"calledRun")||Object.defineProperty(t,"calledRun",{configurable:!0,get(){se("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}});let tb;t.then=function(oA){if(tb)oA(t);else{let hA=t.onRuntimeInitialized;t.onRuntimeInitialized=function(){hA&&hA(),oA(t)}}return t};function LmA(oA){this.name="ExitStatus",this.message=`Program terminated with exit(${oA})`,this.status=oA}Pe=function oA(){tb||KZ(),tb||(Pe=oA)};function KZ(oA){if(oA=oA||u,oe>0||(kA(),_A(),oe>0))return;function hA(){tb||(tb=!0,!T&&(zA(),WA(),t.onRuntimeInitialized&&t.onRuntimeInitialized(),L(!t._main,'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]'),ZA()))}t.setStatus?(t.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>{t.setStatus("")},1),hA()},1)):hA(),SA()}t.run=KZ;function Fje(){let oA=p,hA=m,jA=!1;p=m=function(ae){jA=!0};try{let ae=bi;ae&&ae(0)}catch{}p=oA,m=hA,jA&&(f("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc."),f("(this may also be due to not including full filesystem support - try building with -s FORCE_FILESYSTEM=1)"))}function xje(oA,hA){Fje(),!(hA&&S&&oA===0)&&(S?hA||m(`program exited (with status: ${oA}), but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)`):(T=!0,R=oA,te(),t.onExit&&t.onExit(oA)),n(oA,new LmA(oA)))}if(t.preInit)for(typeof t.preInit=="function"&&(t.preInit=[t.preInit]);t.preInit.length>0;)t.preInit.pop()();return S=!0,KZ(),t}}(),iXt=rXt;nXt=(()=>{let A=new Uint8Array(128);for(let e=0;e<64;e++)A[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return(e)=>{let t=e.length,r=new Uint8Array((t-(e[t-1]=="=")-(e[t-2]=="="))*3/4|0);for(let i=0,u=0;i<t;){let a=A[e.charCodeAt(i++)],n=A[e.charCodeAt(i++)],o=A[e.charCodeAt(i++)],s=A[e.charCodeAt(i++)];r[u++]=a<<2|n>>4,r[u++]=n<<4|o>>2,r[u++]=o<<6|s}return r}})(),oXt=nXt("AGFzbQEAAAAB+gIuYAJ/fwF/YAJ/fwBgAX8Bf2ABfwBgA39/fwF/YAR/f39/AX9gA39/fwBgBH9/f38AYAV/f39/fwF/YAZ/f39/f38Bf2AFf39/f38AYAZ/f39/f38AYAh/f39/f39/fwBgB39/f39/f38Bf2AIf39/f39/f38Bf2AAAX9gBn9/f319fwBgBX9/f39/AX1gB39/f39/f38AYAAAYAJ8fwF8YAh/f399fX19fwBgCn9/f319fX19fX8AYAl/f319fX19fX8AYAF/AXxgBH9/f38BfWACf30Bf2AEf39/fQF/YAZ/f399fX0Bf2AEfH9/fwF8YAJ/fAF8YA5/f39/f39/f39/f39/fwF/YAV/f39/fwF8YAZ/f39/f38BfWADf39/AX1gCn9/f39/f39/f38AYAt/f39/f39/f39/fwBgA399fwF/YAJ/fwF+YAN/fn8AYAV8fHx8fAF8YAJ/fQBgA399fQBgAXwBfGACfn8Bf2AGf3x/f39/AX8DkQ2PDRMABAAABAIBAQYDAQIIAgMDAwMCAgACBAQDBA8BAQIDBAIEAQEAAAEAAAEAAwMDAwAFAgQCAQMDAAAEAwQDAwMDCAAAAAICAgUFCA4ECQkFBQwACwAMAAsACQkICA0JCwwDBAQFAAUICQUFCQYJCA0JCQsMAQIDBgcDAgECAA8DBQgAAQQEAwEBAQIBAQIBAhgFAQAGBQAAAgUABgADAwMDAwMDAwAGAgICBgYCAgAAAAIKAQIBAgABAQcAAQMCAgAGAwAKAQMDAgcEAgICGQICEQ8DBAAaAgQAAAUBAwMCAAEEAQEGAQEBAwICAAEEAgICCAQABwcOAQEBAAQDAwMACAQEAAgAAAUDCAIDBwYAAAYEAwAHAAAEAwEAAAMDAgQIBAAEAQIHAQMPAwICAAIBAwQFBBscBAQCAAMCBAQFDQQdBwEeFAEEAQEBAQEBAQEBAQABAQEBAwMDAwMDAQEBAwAABAEAAwEAAAICAAEDAgYBCgoKAgECAAYLAgEGAQgCAgEBAQIAAQEBAAABAhEEBgIEAAEHAQEDAwMFAAUBAQYAAgAHAQIEAAABAAADBAYAAgAABAYCBwACAAQBAgABAgIBAQEDBQECAAEFAAMGAwEFAwYGBQAAAwEQEBUWBwcBAwEBAAEDBgMBAwEBAQECAwIGCgwAAQICAQQIDgkFDAUMCQgCAgIFBAQEBAQBBAQAAAQAAAAAAAADAAQEAAAEBAAABAUCAAARAAAAAB8EAQADAQYBAQkBCggAIAQEIQIBAQIEAgYGAAADAAAABAQFAAIABQMEAQMABwYBBQAEAgABAgMAAAIEAAUFBAACAAADAQMDAAIABAQCAAECAAAEAwMEBwoEBgUEAQEFBQQBACICAAAAAAACAAQAAAQEAAAEAQQABQAEBgECBgICAwAEAgIGBgECAQIFAAICAwMBBgIAAgIAAwYDBQoEAQcSBSMJAQAKBQADAwQEBgAEBAcACgUHJA4AAAAEBAQABAAEAAAAAAQEBAAABAAAAAAEAAUJBAQFCgIAAAQEAQABBAAAAAQAAAEAAQAGAQEFAwEACAgBAwQBBgYGAQEBAQEBAQEBAQQADQEDBgEDBQYGAQsBBwEBAwAJAwUCAQMDAwYGBgEBAgYGAwECAwIBAAsNBgYLAwAHAAQEAgMAAAAAAAIDAAMABgMGBwADAAADAAcAAwABBgABAQQAAAAAAAACBAQGAgEBAAQEBgEBAQYAAQABAAUBAQMCAQYEAAQCBgAEBAAGAQMBAAAABAAAAAAAAAAAAAAEBAQAAAAAAQcAAgACBAQlAQYBBwYBAAIDBQEBAAAFBQADAQYBAwcGBgMGAgIFBQYABAQEBgEHAQEBBwMABwAAAAIDAAQCCgQGAAMDAAEABQEEAwEDASYnAQoGAQcAAAAEAgQBAAIACQMEAAAHAQoABQIBAwEABwUCAQMEBgEBAgMBAAEBAQMBAQcDBQIBAgIFAQECAAsBBQIBAgIFAQECAQoDBwcBBgICBwcGBQUDAgEDAQEGBgEGBgoKCgoAAAIABAUFBQUBAwcCAAMABAQAAgMAAAAABAEGBAUEBgEBAQEBAAAAAQAAAAAAAAUDAQQNAQAEBhIGAQUDAgALAgAAAgAABQEABQACDAcFAwAABgUFBQUIAgMBAwEGCQkBAwUCAAICCQMDBQQBAggEBAYABAECAAEAAQAAAAAAAQIIAwEABAEAAQQAAAEEACgCBAUAAgAABQAFAgcCAgAABgAAAAAAAAApAAsIBAUAAAgABQgIAAUFBQUFBQAFBQUFBQMFBQACAAQEAQAACAQEBAQHBQICAQACAwQABAMBAwACDAUIAQEFAAUACQUDAgkAAAACCQgEBQECAAAKCggAAAQAAAUBAgQCAQIGAQIEAgcBAAIBAAIAAAMBAgACAQIAAAEABQQFCgUACQALAAYEBAUHBAMFAAQACQEBAwsGBwsBBgkBAQMBAQYCBwECCwASAQIBAQIBBQEACQEBAgQCAQMFAAIGCAcOAAQGBgQCBAcEAAAABAQFAQUFAAAAAwQBBwQEAwsBBAMBAgAAAAAAKgEAAAAAAAUAAQEGBAYGAAYAAAIDAAEBAQEGCgYGBgYBAAAABgMGCgwBAAEBBgEBAQcCAAAEBAAFAAQGCgIAARMEBAQCKwcAAhQIBgIGLAotAQQAAgIDAAEAAw8EBwUKBAQLBgcCBAUGBAQEBAQFCAkJCQkIBgUGCAYFBgEGBAcBcAGCAYIBBQYBAZAIkAgGCAF/AUGQ2wQLB/MGJgZtZW1vcnkCAARmcmVlAOcMDmhiX2Jsb2JfY3JlYXRlAA0PaGJfYmxvYl9kZXN0cm95AA8GbWFsbG9jAOYMEmhiX2Jsb2JfZ2V0X2xlbmd0aAAUEGhiX2Jsb2JfZ2V0X2RhdGEAFRFoYl9mYWNlX2dldF9lbXB0eQAbDmhiX2ZhY2VfY3JlYXRlADkPaGJfZmFjZV9kZXN0cm95AD0WaGJfZmFjZV9yZWZlcmVuY2VfYmxvYgBFDWhiX3NldF9jcmVhdGUA0gEOaGJfc2V0X2Rlc3Ryb3kA0wEMaGJfc2V0X2NsZWFyAN0BCmhiX3NldF9hZGQA4QEKaGJfc2V0X2RlbADjAQxoYl9zZXRfdW5pb24A5gENaGJfc2V0X2ludmVydADpAR5oYl9zdWJzZXRfaW5wdXRfY3JlYXRlX29yX2ZhaWwAqgIXaGJfc3Vic2V0X2lucHV0X2Rlc3Ryb3kAqwIZaGJfc3Vic2V0X2lucHV0X3JlZmVyZW5jZQCsAhtoYl9zdWJzZXRfaW5wdXRfdW5pY29kZV9zZXQAFBloYl9zdWJzZXRfaW5wdXRfZ2x5cGhfc2V0AK0CE2hiX3N1YnNldF9pbnB1dF9zZXQArgIZaGJfc3Vic2V0X2lucHV0X2dldF9mbGFncwCvAhloYl9zdWJzZXRfaW5wdXRfc2V0X2ZsYWdzALACHWhiX3N1YnNldF9pbnB1dF9zZXRfdXNlcl9kYXRhAEEdaGJfc3Vic2V0X2lucHV0X2dldF91c2VyX2RhdGEAQh9oYl9zdWJz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DEGgI2okACAFC4QDAgZ9Bn8gACoCRCIFIAEoAgQiCMGylCEGIAAqAkAiAyABKAIAIgnBspQhAiAFIAEoAgwgCGrBspQhByADIAEoAgggCWrBspQhBSAAKgI8IgRDAAAAAFwEQCAFIAYgBJQiAyAEIAeUIgQgAyAEYBuSIQUgAiADIAQgAyAEXxuSIQILIAECfyAGjiIDi0MAAABPXQRAIAOoDAELQYCAgIB4CyIINgIEIAECfyACjiICi0MAAABPXQRAIAKoDAELQYCAgIB4CyIJNgIAIAECfyAHjSAIspMiAotDAAAAT10EQCACqAwBC0GAgICAeAsiCjYCDCABAn8gBY0gCbKTIgKLQwAAAE9dBEAgAqgMAQtBgICAgHgLIg02AgggACgCMCILIAAoAjQiDHIEQCABIApBACAMayAMIAAoAiBBAEgbIgprNgIMIAEgCCAKajYCBEEAIAtrIAsgACgCHEEASBshCCAALQAsQQFGBEAgASAIQX5tIAlqNgIACyABIAggDWo2AggLCzgBAX8CQCAAQaASRg0AAkACQCAALQAADgQAAgIBAgsgACABai0AAQ8LIABBAWogARCWASECCyACC7UBAQN/AkAgAiABLwAAIgNBCHQgA0EIdnJB//8DcU8EQAwBCyABIAIQlwEhAwJAIAMgASACQQFqEJcBIgJNBEAgASABLwAAIgRBCHQgBEEIdnJB//8DcRCXASACTw0BCwwBCyABLQACIQUgAS8AACEEIABBADYCCCAAIAIgA2s2AgQgACABQQJqIAUgBEEIdCAEQQh2ckH//wNxQQFqbGogA2o2AgAPCyAAQgA3AgAgAEEANgIIC5MCAgF+An8gAigCSCEFQaASIAIoAtgBIANBGGxqIAIoAtQBIANNGygCFCECIABCADcDACAAQQA6ABAgAEEANgIIIABBFGpBAEGMIBDUDBogASkCACEEIABCADcDoCAgAEEANgIIIAAgBDcDACAAQaggaiIDQQA2AgAgAEHEIGoQ4gMgAEGwImoiBkIANwMAIABCADcDqCIgASkCACEEIABCADcDqCIgAEEANgLAICAAQgA3A7ggIABBATsAtSAgAEEANgKwICADQgA3AwAgACAENwOgICAGQgA3AwAgAEGUImogBRDjAyAAQZwiaiACEOMDIABBADoAyCIgAEEANgK8IiAA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BWovAAAiAkEIdCACQQh2csEiBCABTARAIAAgA0EBdGovAAAiAEEIdCAAQQh2csEgASAEa2oPCyACIAUgAEEEayIFai8AACIGRgRAIAUgA0EBdGovAAAiAEEIdCAAQQh2csEPCyABIAZBCHQgBkEIdnLBIgFrsiAAIANBAXQiAmovAAAiAEEIdCAAQQh2csEgAiAFai8AACIAQQh0IABBCHZywSIAa7KUIAQgAWuylSAAspJDAAAAP5KOIgiLQwAAAE9dBEAgCKgPC0GAgICAeCEBDAILIABBAWohAAwACwALIAELmAIBA38CQCAALQAAQQFHDQAgACABKAIcQQAQiQVFDQAgACABKAIENgIEIABBDGoiAigCACIDQQBIBEAgAiADQX9zNgIACyACQQBBAUEAEI0FGiACIAEoAhBBARD8ARoCQCACKAIAQQBIDQAgASgCFCEDIAIgASgCECIENgIEIARBA3QiBEUNACACKAIIIAMgBBDSDBoLIABBGGoiAigCACIDQQBIBEAgAiADQX9zNgIACyACQQBBAUEAEIwFGiACIAEoAhxBARCOBRoCQCACKAIAQQBIDQAgASgCICEDIAIgASgCHCIENgIEIARByABsIgRFDQAgAigCCCADIAQQ0gwaCwsgAC0AAEEBRgRAIAAgAS0AJDoAJAsLCgAgAEEMahDeAQsZACAAEIAHIAAtAABBAUYEQCAAQQA6ACQLCy4BAX8jAEEQayIBJAAgAUF/NgIMIAAgAUEMahDsARogASgCDCABQRBqJABBf0YLDwAgACABEKIMIAAtACRHCwwAIABBDGogARCOAQsiACAALQAkQQFGBEAgACABIAIQnAxBAQ8LIAAgASACEJ0MCwwAIABBDGogARDkAQscACAALQAkQQFGBEAgACABEJsMDwsgACABEJoMCyEAIAAtACRBAUYEQCAAIAEgAhCdDBoPCyAAIAEgAhCcDAsPACAAQQxqIAFBDGoQ5wELYQEBfwJAIAAtACQiAiABLQAkRgRAIAIEQCAAIAEQpwwMAgsgACABEKgMDAELIAIEQCAAIAEQqQwMAQsgACABEKoMCyAALQAAQQFGBEAgACAALQAkIAEtACRyQQFxOgAkCwthAQF/AkAgAC0AJCICIAEtACRGBEAgAgRAIAAgARCqDAwCCyAAIAEQqQwMAQsgAgRAIAAg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IAMgAUECdGogAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnI2AAALCz8BAX8jAEEQayIDJAAgAyABNgIMIAAoAiAgA0EMahCCASgCACIAQX9HBEAgAiAANgIACyADQRBqJAAgAEF/RwtjAQJ/IABCADcCACAAQgA3AhAgAEIANwIIIABBGGohAgNAIAFBC0cEQCACIAFBAnRqQX82AgAgAUEBaiEBDAELCyAAQgA3AlAgAEKAgICAgMIINwJIIABCADcCWCAAQgA3AmALOQECfyAAKAIMIgIgACgCCEEEdGohAwNAIAMgAiIARwRAIABBEGohAiAAKAIEIAFHDQELCyAAIANHC18BAn8gAEEEaiADEPcEIgMgATYCBCACKAIIIQEgAigCBCEEIAMgACgCACIFIAIoAgBqNgIAIAMgBCAFayICQQAgAiAETRsiAiABIAVrIgMgAiADSRs6AAggACABNgIACxYAIAAgACgCVCAAQdwAakEAIAEQoQYLTAECfyAAIAFBACABQQBKGyIBQQAQpAIiAgRAAkAgACgCBCIDIAFJBEAgACABEKUCDAELIAEgA08NACAAIAEQogYLIAAgATYCBAsgAgtCAQF/IABBoBIgACgCWCIDKAIIIAFBDGxqIAMoAgQgAU0bQaASIAAoApgBIAFBNGxqIAAoApQBIAFNGyABIAIQoQYLcAECfyAAQbQBahCjBiAAQagBahDzBCAAQZwBahDzBCAAQdwAaiICQTRqIgEoAgAEQCABQQAQsAYgASgCCBDnDAsgAUEANgIIIAFCADcCACACEJ8CGiAAQcgAahAtIABBCGoiAEE0ahDHASAAELYBGguhAgEEfwJAIAAoAgQiAiAAKAIATgRAIAJBAWohBAJAIAAoAgAiA0EASA0AQQEhBSADIARPDQAgAyECA0AgAiAESQRAIAIgAkEBdmpBCGohAgwBCwsCfyACQc2Zs+YATwRAIANBf3MhAkEADAELAn8gACgCCCEDIAJFBEAgAxDnDEEADAELIAMgAkEUbBDoDAsiAyACRXJFBEAgAiAAKAIAIgNNDQIgA0F/cyECQQAMAQsgACADNgIIQQELIQUgACACNgIACyAFRQ0BIAAoAgQhAgsgACACQQFqNgIEIAAoAgggAkEUbGoiACABKAIQNgIQIAAgASkCCDcCCCAAIAEp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AyADQcggajYCtCAgBhDuBCECIAYoAgBBAEgNBCACQgA3AgAgAkIANwIQIAJCADcCCCACQoCAgIBwNwIYIANBtCBqIAIQ7wRFDQQCfyAFIAAoAtQBTwRAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQdDQAAwBCyAAKALYASAFQRhsagshBCABIAIoAhAgACACQRRqENQEIgdBoBJGDQQgAigCFCECIANBADoAICAIQQBBjCAQ1AwaIANBADYCGCADIAI2AhQgAyAHNgIQIAMgA0EQajYCDCAEQQA2AhAgBEIANwIIIARCADcCACAEQaASNgIUIANBDGogBBDuBkUNBCAEIAcgBCgCECAAEOgENgIUIAVBAWohBSAAKAJYIQQMAAsACwJ/IAAoAtQBRQRAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQdDQAAwBCyAAKALYAQshAiABIAAoArgBIAAgAEG8AWoQ1AQiAUGgEkYNAiAAKAK8ASEEIANBADoA2CAgA0HcIGpBAEGMIBDUDBogA0EANgLQICADIAQ2AswgIAMgATYCyCAgAyADQcggajYCECACQQA2AhAgAkIANwIIIAJCADcCACACQaASNgIUIANBEGogAhDuBkUNAiACIAEgAigCECAAEOgENgIUDAMFAn8gAiAAKALUAU8EQEHg0ABCADcDAEHY0ABCADcDAEHQ0ABCADcDAEHQ0AAMAQsgACgC2AEgAkEYbGoLIgRCADcCACAEQaASNgIUIARBADYCECAEQgA3AgggAkEBaiECDAELAAsACyAAEPEECyADQfDAAGokACAAQQA2AuQBIAALawEDfyAAQQRrIQIDQAJAIAAoAgAiAUUEQCACKAIARQRAQaASDwsgAEEEaygCACEDQQFB6AEQ6gwiAQRAIAEgAxDqAhoLIAFBoBIgARshASAAKAIADQEgACABNgIACyABDwsgARDbAgwACwALoQIBBH8jAEEQayIEJAAjAEFAaiIBJAACQAJAIAAoApwQIgJBBGogAEH0C2ogAhsiAi0ADEEBRw0AIAFBwqrNugQ2AgggAiABQQhqIgNBABCFAUUNACABQcKqzboENgIIIAIgAxCkBSgCACIARQ0BIAAoAgAiAkUNASAAIAJBAWo2AgAMAQsgAUIANwMQIAFCADcDGCABQgA3AB0gAUIA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AiAAIAJBCGsQygMaDAILIAQgBCACIARBf0cbIAtBAXEbIQQgBSAIQQFqIgggAmpxIQIMAAsACyAFCxcAIAAgARDLAyAAQQA2AhwgAEEtNgIYC1wBAn8CfyAAKAIERQRAQdDQAEIANwMAQdjQAEEANgIAQdDQAAwBCyAAKAIACyAAKAIcIgJBAXVqIQEgACgCGCEAIAEgAkEBcQR/IAEoAgAgAGooAgAFIAALEQIAC6MCAQR/IAAtAAxBAUcEQEEADwsCQCABBEAgACgCGCABQQF2IAFqSw0BC0EMQSAgACgCECICIAEgASACSRtBAXRBCGoiAWdrQQAgARsiAXQiAxDmDCICRQRAIABBADoADEEADwsgAUEdTQRAIAJBACADENQMGgsgAEIANwIQIAAoAhghAyAAQX8gAXRBf3M2AhggAUEfSwR/Qf////8HBSABQQJ0QZDGAGooAgALIQQgACgCICEFIAAgAjYCICAAIAQ2AhwgACABQQF0OwEOAkAgA0UNACADQQFqIQNBACEBA0AgASADRg0BIAUgAUEMbGoiAigCBCIEQQFxBEAgACACIARBAnYgAkEIahDHAxoLIAFBAWohAQwACwALIAUQ5wwLQQELCwAgACABQS4Q+QwLVwEBfiACKQIAIQQgACABKQIANwIAIAAgASgCCDYCCCAAIAM2AhQgACAENwIMIABBDGohAQNAAkAgACgCBEUNACABIAAoAgAQzQMNACAAEMYDDAELCyAACzUBAX8gASAAKAIEIgJBAXVqIQEgACgCACEAIAEgAkEBcQR/IAEoAgAgAGooAgAFIAALEQIAC8YBAQN/IwBBEGsiAyQAIABBADYCGCAAQgA3AhAgACAAKAIANgIEIAAgACgCDDYCCCAAENADIANBADYCDAJAAkAgAEEwaiIBKAIEIgIgASgCAE4EQCABIAJBAWpBABDYAUUNASABKAIEIQILIAEgAkEBajYCBCABKAIIIAJBAnRqQQA2AgAMAQtB0NAAQQA2AgALIABCADcBSiAAQQE6AEggAEEANgJEIABCgYCAgBA3AjwgAEIANwFSIABCADcBWCADQRBqJAALNwEBfwJ/IAAoAhgiA0UgASgCAEEASHFFBEBBACADDQEaQQEgAi0ADA0BGgsgAEEBNgIYQQALGgt3AQN/IAAoAjggACgCNCICQQBHQQJ0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IghqIgJCADcCACACQQA2AhggAkIANwIQIAJCADcCCCACIAAoAgggCGoiCRDiBCACIAkoAhg2AhggAiAJKQIQNwIQIAAoAgggCGpBBGoQLSAEQQFqIQQMAAsACyAHKAIAEOcMIAYLIgIgAUVyRQRAIAEgACgCACICTQ0CIAJBf3MhAUEADAELIAAgAjYCCEEBCyEFIAAgATYCAAsgBQRAAkAgACgCBCIBIANJBEAgACgCBCEBA0AgASADSQRAIAAoAgggAUEcbGoiAUIANwIAIAFBADYCGCABQgA3AhAgAUIANwIIIAAgACgCBEEBaiIBNgIEDAELCwwBCyABIANNDQAgACADENcECyAAIAM2AgQLIAULTQAgACAAKAIEQQFqENEERQRAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQejQAEEANgIAQdDQAA8LIAAoAgggACgCBEEcbGpBHGsL/QEBBX8gAUIANwIAIAFBADYCGCABQgA3AhAgAUIANwIIIAAoAgAiAigCBCEDIAIoAgghBANAAkAgBEEBaiADSyIFDQAgAhCYASEEIAAoAgAhAiMAQRBrIgMkAAJAAkAgBEESRgRAIAEgAkEQaiIGEOMENgIQIAEgBhDjBDYCFCACQQA2AhQMAQsgBCACENwEIAIoAhQNAQsgAigCCCACKAIESw0AIAItABBBAXENACADQQA2AgggA0IANwMAIANB//8DNgIEIAEgBCACIAMQ2gQLIANBEGokACAAKAIAIgIoAggiBCACKAIEIgNLDQAgAi0AEEEBcUUNAQsLIAULPAEBf0GgEiEEAkAgAUUNACACKAIMIAAgAWoiACACKAIEa0kNACAAQaASIAIgACADKAIAENYEGyEECyAECy0AIAAQNyAAQThqEC0gAEHsAGoQ2AQgAEH4AGoQ2AQgACgCMBAPIABBADYCMAsNACAAIAEgAkEBEKUECw0AIAAgAUEcQRgQ7gwLJwAgACgCAARAIABBABDXBCAAKAIIEOcMCyAAQQA2AgggAEIANwIACw0AIAAgAUECQQUQ7wwLXgECfyAAQQRqIAMQJSIDIAE2AgQgAigCCCEBIAIoAgQhBCADIAAoAgAiBSACKAIAajYCACADIAQgBWsiAkEAIAIgBE0bIgIgASAFayIDIAIgA0kbOgAIIAAgATYCAAtNAAJAAkAg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CEEBCyEFIAAgATYCAAsgBQRAAkAgACgCBCIBIANJBEAgACgCBCEBA0AgASADSQRAIAAoAgggAUEFdGoiAUIANwIAIAFCADcCGCABQgA3AhAgAUIANwIIIAAgACgCBEEBaiIBNgIEDAELCwwBCyABIANNDQAgACADEPwECyAAIAM2AgQLIAVFBEBB6NAAQgA3AwBB4NAAQgA3AwBB2NAAQgA3AwBB0NAAQgA3AwBB0NAADwsgACgCCCAAKAIEQQV0akEgawuyAgEFfyABQgA3AgAgAUIANwIQIAFCADcCCCABQoCAgIBwNwIYIAAoAgAiAigCBCEDIAIoAgghBANAAkAgBEEBaiADSyIGDQAgAhCYASEDIAAoAgAhAiMAQRBrIgQkAAJAAkACQAJ/AkACQAJAIANBhQJrDgMEAQQACyADQRJGDQEgA0GmAkcNACACQRBqIQVBHAwCCyADIAIQ3AQgAigCFEUNAwwECyABIAJBEGoiBRDjBDYCEEEUCyABaiAFEOMENgIACyACQQA2AhQLIAIoAgggAigCBEsNACACLQAQQQFxDQAgBEEANgIIIARCADcDACAEQf//AzYCBCABIAMgAiAEENoECyAEQRBqJAAgACgCACICKAIIIgQgAigCBCIDSw0AIAItABBBAXFFDQELCyAGC6cCAQV/IAFCADcCACABQaASNgIUIAFBADYCECABQgA3AgggACgCACICKAIEIQMgAigCCCEEA0ACQCAEQQFqIANLIgUNACACEJgBIQMgACgCACECIwBBEGsiBCQAIARBADoADCAEQoCAgIDw/z83AgQCQAJAAkACQCADQRVLDQBBASADdEHAn8ABcQ0BIANBE0cNACABIAJBEGoQ+QM2AhAMAQsgA0GJAmsiBkEKTUEAQQEgBnRBvw5xGw0AIAMgAhDcBCACKAIURQ0BDAILIAJBADYCFAsgAigCCCACKAIESw0AIAItABBBAXENACABIAMgAiAEQQRqENoECyAEQRBqJAAgACgCACICKAIIIgQgAigCBCIDSw0AIAItABBBAXFFDQELCyAFCy4AIAAQNyAAQeAAahAtIABBxAFqEPMEIABB0AFqEPQEIAAoAjAQDyAAQQA2AjALDQAgACABQRhBFBDuDAsnACAAKAIABEAgAEEAEPwEIAAoAggQ5wwLIABBADYCCCAAQgA3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IAAvAAIiA0EIdCADQQh2ckH//wNxIgMgAS8AAiIEQQh0IARBCHZyQf//A3EiBEkNASADIARLDQBBfyECIAAvAAQiAEEIdCAAQQh2ckH//wNxIgAgAS8ABCIBQQh0IAFBCHZyQf//A3EiAUkNACAAIAFLIQILIAIPC0F/C4oBAQd/AkAgASgCDCIGIAEoAggiAmsiByABKAIEIgggASgCACIDayIEaiIFRQRADAELIAUQ5gwiAUUEQAwBCyADIAhHBEAgASADIAQQ0gwaCyACIAZHBEAgASAEaiACIAcQ0gwaCyAAQQA2AgggACAFNgIEIAAgATYCAA8LIABCADcCACAAQQA2AggLewEFfyACQf////8DcSIEIAAoAhxwIQIDQAJAIAAoAiAgAkEMbGoiBigCBCIHQQJxBH8gB0ECdiAERw0BIAYgARCQBkUNAUEAIAAoAiAgAkEMbGoiACgCBEEBcWsgAHEFQQALDwsgACgCGCADQQFqIgMgAmpxIQIMAAsAC6ICAQR/IAAtAAxBAUcEQEEADwsCQCABBEAgACgCGCABQQF2IAFqSw0BC0EMQSAgACgCECICIAEgASACSRtBAXRBCGoiAWdrQQAgARsiAXQiAxDmDCICRQRAIABBADoADEEADwsgAUEdTQRAIAJBACADENQMGgsgAEIANwIQIAAoAhghAyAAQX8gAXRBf3M2AhggAUEfSwR/Qf////8HBSABQQJ0QZDGAGooAgALIQQgACgCICEFIAAgAjYCICAAIAQ2AhwgACABQQF0OwEOAkAgA0UNACADQQFqIQNBACEBA0AgASADRg0BIAUgAUEMbGoiAigCBCIEQQFxBEAgACACIARBAnYgAkEIahCNAgsgAUEBaiEBDAALAAsgBRDnDAtBAQusAQEGfyAAKAIAIQIgASgCACEBIwBBIGsiACQAAkAgAigCBCACKAIAIgRrIgUgASgCBCABKAIAIgZrRw0AIAIoAgwiByABKAIMRw0AIAQgBiAFEKgDDQAgAigCECECIABBADYCHCAAIAdBDGwiAzYCGCAAIAI2AhQgASgCECEBIABBADYCECAAIAM2AgwgACABNgIIIABBFGogAEEIahCiAyEDCyAAQSBqJAAgAwuGAQEDfyMAQRBrIgIkACABQQFqQYgDTwRAIAIgAUGHA2s2AgwgAiAAKAIANgIIAn8gAEEEaiIBIAJBDGoiAyACQQhqIgRBABCAAQRAIABBKGogAxDaARogACAAKAIAQQFqNgIAIAQMAQsgASACQQxqEIIBCygCAEGHA2ohAQsgAkEQaiQAIAELpwQBBH8gACgCOCIDQaASRwRAAn8gACgC3AEhBEEAIQACQAJAAkACQCADLQAADgMAAQIDCyABRSABIARPcg0CIAFBAXQgA2pBAWsvAAAiAEEIdCAAQQh2ckH//wNxDAMLAn8gA0EBaiEGQQAgASAETw0AGgJ/AkACQCACRQ0AIAIoAgQiACABSw0AIAIoAgAhAwwBC0EBIQBBACIDIAFFDQEaCyABIABrIQEDfyAGIANBA2xqIgQtAAIiBSABTwR/IAIEQCACIAA2AgQgAiADNgIACyABIAQvAAAiAEEIdCAAQQh2ckH//wNxagUgA0EBaiEDIAEgBUEBaiIEayEBIAAgBGohAAwBCwsLCwwCCwJ/IANBAWohBkEAIAEgBE8NABoCfwJAAkAgAkUNACACKAIEIgAgAUsNACACKAIAIQMMAQtBASEAQQAiAyABRQ0BGgsgASAAayEBA38gBiADQQJ0aiIELwACIgVBCHQgBUEIdnJB//8DcSIFIAFPBH8gAgRAIAIgADYCBCACIAM2AgALIAEgBC8AACIAQQh0IABBCHZyQf//A3FqBSADQQFqIQMgASAFQQFqIgRrIQEgACAEaiEADAELCwsLIQALIAALDwtBACECAkACQAJAAkAgACgCsAEOAwABAgMLIAFBACABQeUBSRsPCyABQaUBSw0BIAFBAXRBoAxqLwEADwsgAUHWAEsNACABQQF0QfAOai8BACECCyACC1QBA38gACgCCEEEayEEIAAoAgQhAAN/IAAEfyAEIABBA3RqIgMgASADKAIAIgNBf3NqIgE2AgAgAEEBayEAIAEgAnIhAiADIQEMAQUgAkH/AUsLCwsLACAAIAFBARCkBgtRAQF/AkAgACgCBCICIAAoAgBOBEAgACACQQFqQQAQwQJFDQEgACgCBCECCyAAIAJBAWo2AgQgACgCCCACaiABKAIAOgAADwtB0NAAQQA6AAALDQAgACABQQFBARC/AgsLACAAIAFBARCZBguBAQECfyAAIAFBACABQQBKGyIBQQAQpAIiAwRAAkAgACgCBCICIAFJBEAgACgCBCECA0Ag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AQR/IAAgAUEIdCABQQh2ckH//wNxagVBoBILLwAAIgFBCHQgAUEIdnJB//8DcSEDIAJB7ABqIAAvAAQiAQR/IAAgAUEIdCABQQh2ckH//wNxagVBoBILELoFIgFBADYCFCABQQE2AhwgASADNgIYIAIgASkCEDcDqAEgAiABKQIINwOgASACIAEpAhg3A7ABIAIgASkCADcDmAEgAkG2HjYCpAIgAiACKALsAUEIajYCoAIgAkHwAWogAkGYAWogAkGgAmoQ2AcgAkG3HjYCmAIgAC8ACiIBBH8gACABQQh0IAFBCHZyQf//A3FqBUGgEgshAyACQZgBaiACQfABaiIBQSwQ0gwaIAJBxABqrSAArUIghoQhDyACQewAaiABENkHA0AgAkGYAWoiASACQewAahDaBwRAIAEQ2wchBEEAIQEgAkEANgJoIAJCADcCYCADIAQQkwUvAAAhBSACQQE2AlwgAkEANgJUIAIgBUEIdCAFQQh2ckH//wNxNgJYIAJByABqIAJB1ABqEOgCA0AgAigCSCABRgRAIAMgBBCTBSACQQA2AhggAkEANgIIIAIgAikCZEIgiSIQNwIQIAIgEDcDACACKALsASACEOsHIAJB4ABqEC0gAkGYAWoQ3AcMAwUgAiABNgJEIAAvAAYhBSACQQE2AiwgAkEANgIkIAIgBUEIdCAFQQh2ckH//wNxNgIoIAJBxRc2AiAgAiACQcgBajYCHCACQTBqIAJBJGogAkEcahDsByACIAJBQGsoAgA2ArACIAIgAikCODcDqAIgAiACKQIwNwOgAiACIA83ArQCA0AgAigCoAIiBSACKAKkAkcEQCACIAUgAigCtAIoAgAgAigCuAIvAAYiCEEIdCAIQQh2ckH//wNxbGo2ArwCIAJB4ABqIAJBvAJqENoBGiACQaACahDtBwwBCwsgAUEBaiEBDAELAAsACwsgAkHIAWoQLyACQcACaiQACw8LIAAgARDWBw8LIAAvAABBgAJGBEAgACgABCICBH8gACACQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZycmoFQaASCyABIAAvAAIiAEEIdCAAQQh2ckH//wNxENUHCwsL5gcCA38BfiAALwAAQYACRgRAIwBBoAJrIgIkACACIAE2AswBIAJBxABqIgQgAC8AAiIDBH8gACADQQh0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BBDqARogA0EwaiABELgBIANBGGogARC5AUEAIQQgAygCGCEHIAMoAhwhCANAAkAgAygCNCIJIAhHDQAgAygCMCAHRw0AIAYoAkAgBE0NAiAAIAIQrwgiBUF/RgRAQQAhBQwDCyADQdQAaiABELgBIANByABqIAEQuQEgAygCSCEKIAMoAkwhCwNAIAsgAygCWCIBRgRAIAMoAlQgCkYNBAsCfyABIAEgBUZqIgYgACgCBE8EQEEAIQdB0NAAQQBB8AAQ1AwaQQAhCEEAIQlBAAwBCyAAKAIIIAZB8ABsaiIBKAIYIQcgASgCHCEIIAEoAgwhCSABKAIQCyEEIANBADYCOCADQUBrIgEgBzYCACADIAk2AjQgAyAENgIwIAMgCDYCPCADQQA2AkQgAyABKQIANwMoIAMgAykCODcDICADIAMpAjA3AxggAyADQTBqEAgDQCADKAIcIQECQCADKAIYIgQgAygCAEcNACABIAMoAgRHDQAgAygCJCADKAIMRw0AIAMoAiggAygCEEcNACADQdQAahC9AQwCCwJAIAENACADKAIoRQRAQdDQAEIANwMAQdjQAEEANgIAQdDQACEEDAELIAMoAiQhBAsgAiAEKAIIRgRAIAAgBCAGIAUQsAgLIANBGGoQCgwACwALAAsgBiAJEK4IIARqIQQgA0EwahC9AQwACwALIANB4ABqJAAgBQsnACAAKAIABEAgAEEAEMADIAAoAggQ5wwLIABBADYCCCAAQgA3AgALvgEBAX8jAEEQayICJAAgAiABNgIMAkAgACgCQEUEQCAAQQE2AkAgACABNgJEDAELIABBxABqIgEoAgBBf0cEQCACQQE2AgggAEHIAGogASACQQhqELwDRQ0BIAFBfzYCAAsCQCAAQcgAaiIBIAJBDGogAkEIahCFAQRAIAIoAggiASABKAIAQQFqNgIADAELIAJBATYCBCABIAJBDGogAkEEahC8A0UNAQsgACAAKAJAQQFqNgJACyACQRBqJAALFgAgAEKAgICAcDcDQCAAQcgAahD+AQsMACAAIAFBABD4BBoLcgIBfgF/IAFB//8Pca1C////////AQJ+QgAgACgCPCIBRQ0AGiAAKAIEIAAoAgBrIgNBfm2sIAFBAUYNABpCACADrH0LIAApAyh8IgJCACACQgBVGyICIAJC////////AVkb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ACkCEDcDECABIAApAgg3AwggASAAKQIANwMAQQAhAANAAkAgASgCAEEBa0EBSw0AIAEoAgggASgCBC8AAiICQQh0IAJBCHZyQf//A3FPDQAgAEEBaiEAIAEQ3wgaDAELCyABQSBqJAAgAAsTACAAIAEQ5AggACABKAIgNgIgCyMBAX8jAEEQayIBJAAgAUEIaiAAEOEIIAEoAgggAUEQaiQAC0MBAX8jAEEQayIBJAADQAJAIAAQvgUgABC7BUUNACABQQhqIAAQ4QggACgCGCgCACABKAIMTQ0BCwsgAUEQaiQAIAALcwEBfyMAQRBrIgQkACAAIAEpAgA3AgAgACABKQIYNwIYIAAgASkCEDcCECAAIAEpAgg3AgggACADNgIkIAAgAjYCIANAAkAgABC7BUUNACAEQQhqIAAQ4QggBCgCDA0AIAAQ3wgaDAELCyAEQRBqJAAgAAskAQF/IAEQvAUhAiAAIAEoAhQoAgggAhClATYCBCAAIAI2AgALLQEBfyMAQSBrIgIkACACIAEQ5AggACACIAEoAiAgASgCJBDgCBogAkEgaiQACzgBAn8jAEEQayIBJAADQCAAEN8IIgIQuwUEQCABQQhqIAIQ4QggASgCDEUNAQsLIAFBEGokACACCzIBAn8jAEEgayICJAAgAkEIaiIDIAEQxwggACADIAEoAhggASgCHBDbCBogAkEgaiQACxMAIAAgASABIAIgAxACIAQQ6AgLJwAgACgCAARAIABBABDpCCAAKAIIEOcMCyAAQQA2AgggAEIANwIACxEAIAAgASABIAIgAxACEOoIC4UBAQN/AkAgAiABKAIETw0AIAEoAgggAkHwAGxqIgEoAgAiBEUNACABKAIEIAEoAgBrIgVBAk4EfyAFIAMgBC8AACIGQQh0IAZBCHZyQf//A3FsQQF0QQJqTwVBAAtFDQAgACAENgIIIAAgATYCBCAAIAI2AgAPCyAAQQA2AgggAEIANwIACz8BAn8gACgCBCICIAFrIQMgACgCCCACQQZ0aiECA0AgAwRAIANBAWshAyACQUBqEOwIIQIMAQsLIAAgATYCBAuEAQECfwJAIAIgASgCBE8NACABKAIIIAJB8ABsaiIBKAIAIgRFDQAgASgCBCABKAIAayIDQQJOBH8gA60gBC8AACIDQQh0IANBCHZyrUL//wODQgKG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ICEBIAAgAzcCGCAAIAIpAhA3AhAgACACKQIINwIIIAAgAikCADcCACAAIAE2AiAgAkEgaiQAC9wCAgR/An4jAEHQAGsiAyQAIAMgATYCTAJAIAIgA0HMAGpBABCFAQ0AIAMgACADKAJMEK8IIgE2AkggAC0AGyIEQQFxRSABQX9HckUEQCAAQQA6ABsMAQsgBEEBcUUNACACIANBzABqIANByABqQQEQgAEaQaASIAAoAgggAygCTCIBQfAAbGogACgCBCABTRsiASkCDCEHIAEpAhghCCADQQA2AjggA0EANgJEIAMgCEIgiTcCPCADIAdCIIk3AjAgAyADQUBrKQIANwMoIAMgAykCODcDICADIAMpAjA3AxggAyADQTBqEAgDQCADKAIkIQEgAygCKCEEIAMoAhwhBQJAIAMoAhgiBiADKAIARw0AIAUgAygCBEcNACABIAMoAgxHDQAgBCADKAIQRg0CCyAAIAYgAUGgEiAEGyAFGygCCCACEPsIIANBGGoQCgwACwALIANB0ABqJAAL3wIBBX8jAEHQAGsiAyQAAn8gASAAKAIETwRAQdDQAEEAQfAAENQMGkEADAELIAAoAgggAUHwAGxqIgEoAhghBCABKAIcIQUgASgCDCEGIAEoAhALIQEgA0FAayIHQQA2AgAgAyAENgJIIAMgBjYCPCADIAE2AjggAyAFNgJEIANBADYCTCADIAMpAkg3AzAgAyAHKQIANwMoIAMgAykCODcDICADQQhqIANBOGoQCANAAkAgAygCLCEBIAMoAjAhBCADKAIkIQUCQCADKAIgIgYgAygCCEcNACAFIAMoAgxHDQAgASADKAIURw0AIAQgAygCGEYNAQsCQCACIAYgAUGgEiAEGyAFG0EIaiIBIANBBGoQhQEEQCADKAIEIgEgASgCAEEBajYCAAwBCyADQQE2AgAgAiABIANBARCAARogACABKAIAIAIQ/AgLIANBIGoQCgwBCwsgA0HQAGokAAsRACAAIAEgAiADIARBDBDzDAsRACAAIAEgAiADIARBBBDzDAsRACAAIAEgAiADIARBChDzDAsRACAAIAEgAiADIARBAxDzDAuOAQEDfwJAIAEoAgwgACABKAIEa0kNACABKAIIIABrQQhJDQAgAC8AAiICQQh0IAJBCHZyQf//A3EiBK0gACgABCICQRh0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IAFBgP4DcUEIdnI7AAQgACACQQh0IAJBgP4DcUEIdnIiADsAAAsgByAFQQZsaiAAOwACIAFBAWohASADQdgCahCOCxogAiEADAEFIAZFDQQgCC8AAiEAIANBADYC4AIgAyAHNgLYAiADIABBCHQgAEEIdnJB//8DcTYC3AIgCiACEIsGCwsLCwsLC0EBIQAgBCAJIARBARCGAkEAQQAQhQYMAgsgBBCJAgtBACEACyADQZADaiQAIAAFQQELIQMLIAMLC6cQARB/QQEhAgJAAkACQAJAIAAvAAAiBEEIdCAEQQh2ckH//wNxQQFrDgMAAQIDCyMAQfABayICJAAgASgCCCIEKAIcIQYCQCABKAIMIgUgBSgCBCIFEIcGRQRAQQAhAAwBCyAEQdAEaiEDIAUgAC8AADsAACACIAEoAghB7AVBkAYgASgCEEHCqs26BEYbajYCnAEgAkEANgKYASACQgA3ApABIAJBDGoiByAALwACIgQEfyAAIARBCHQgBEEIdnJB//8DcWoFQaASCyAAQQRqELMFIAJBth42AgggAiADNgIEIAJBLGoiBCAHIAJBBGoQwAUgAkHUAGogBEEoENIMGiACQbceNgKMASACIAA2AoQBIAIgBUEEajYCgAEgAiABNgJ8IAIgAkGcAWo2AogBIAJB/ABqIQQDQAJAIAJB1ABqIgAQtgVFDQAgAkGgAWogABC3BSAEIAIoAqQBEKQLDQAgABC4BRoMAQsLIAJBoAFqIAJB1ABqQTwQ0gwaIAIgBjYC4AEgAkG2HjYC3AEgAkHIAWohAANAIAJBoAFqIgQQtgUEQCACKALgASEGIAJB6AFqIAQQtwUgAiACKALoATYC5AEgAkGQAWogBiACQeQBahCCARDaARoDQCACQaABahC4BSIEELYFRQ0CIAJB6AFqIAQQtwUgACACKALsARCkC0UNAAsMAQsLIAEoAgwhACACIAIpApQBQiCJNwKgASACQQA2AqgBIAVBAmogACACQaABahDbChogAigClAFBAEchACACQZABahAtCyACQfABaiQAIAAPC0EAIQIjAEGwAmsiAyQAAkAgASgCDCIFIAUoAgQiBBDXA0UNACAEIAAvAAA7AAAgBEECaiABIABBAmogABCnC0UNACADQgA3AY4CIANCADcBlAIgA0IANwGGAiADQQE6AIQCIANB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aiIEELYFBEAgAigC4AEhAyACQegBaiAEELcFIAIgAigC6AE2AuQBIAJBkAFqIAMgAkHkAWoQggEQ2gEaA0AgAkGgAWoQuAUiBBC2BUUNAiACQegBaiAEELcFIAAgAigC7AEQqgtFDQALDAELCyABKAIMIQAgAiACKQKUAUIgiTcCoAEgAkEANgKoASAFQQJqIAAgAkGgAWoQ2woaIAIoApQBQQBHIQAgAkGQAWoQLQsgAkHwAWokACAADwsjAEGAA2siAyQAAkAgASgCDCICIAIoAgQiBRApRQRAQQAhAgwBCyAFIAAvAAA7AAAgBUECaiABIABBAmogABCnCxogA0IANwHeAiADQgA3AeQCIANCADcB1gIgA0EBOgDUAkEAIQIgA0EANgLQAiADQoGAgIAQNwLIAiADQgA3AboCIANCADcBwAIgA0IANwGyAiADQQE6ALACIANBADYCrAIgA0KBgICAEDcCpAIgA0IANwGWAiADQgA3AZwCIANCADcBjgIgA0EBOgCMAiADQQA2AogCIANCgYCAgBA3AoACIAMgA0HIAmo2AswBIAVBBGogASAAQQRqIAAgA0HMAWoiBBCoCyADIANBpAJqNgLMASAFQQZqIAEgAEEGaiAAIAQQqAsgAyADQYACajYCzAEgBUEIaiABIABBCGogACAEEKgLAkACQAJAIAEoAgwiBCgCGCIGRQRAIAMtANQCQQFxRQ0BCyAGDQIgAy0AsAJBAUcNACADLQCMAg0BCyAEQQE2AhgMAQsgASgCCCEEIANBAToA2AEgA0EANgLUASADQoGAgIAQNwLMASADQdwBakEAQSEQ1AwaIAAvAAIiAgR/IAAgAkEIdCACQQh2ckH//wNxagVBoBILIARB0ARqIANBzAFqEKsFIANBAToApAEgA0EANgKgASADQoGAgIAQNwKYASADQagBakEAQSEQ1AwaIAAvAAYiAgR/IAAgAkEIdCACQQh2ckH//wNxagVBoBILIANBzAFqIANBmAFqEJEHIAMgASgCCEHsBUGQBiABKAIQQcKqzboERhtqNgKUASABKAIMIgIoAiwiBgRAIAYoAgwhCyAGKAIYIQcLIANBpAFqIRAgAigCCCEMIAIoAgQhDSACKAIYIQ4gAC8ACiECIANBADYCaCADIABBDGo2AmAgA0KAgICAEDcDWCADIAJBCHQgAkEIdnJB//8DcTYCZCADIANB+ABqIANB2ABqIANBpAJqQbYeEKkLIgIoAhg2AnAgAyACKQIQNwNoIAMgAikCCDcDYCADIAIpAgA3A1ggA0HsAmoiBCACEJMHIAVBCmohCiADQTxqIAQgAigCFCACKAIYEKkLIQ9BfyECQQAhBQJ/AkADQAJAIAMoAmQhCCADKAJgIgkgDygCCEYEQCAIIA8oAgxGDQELIAMoAlghESAKIAEoAgwQ6QoiBEUNAgJAIBAgERDgAUUNACADIANBpAJqNgI4IAMgA0HIAmo2AuwCIAMgA0GAAmo2AjQCfyAEQQA7AAAgCUGgEiAIGyIJLwAABEAgASgCDCIIECEaIAkvAAAiCQR/IAAgCUEIdCAJQQh2ckH//wNxagVBoBILIAEgAygClAEgAygC7AIgAygCOCADKAI0EKsLBEAgCCAEIAhBARCGAkEAQQAQhQZBAQwCCyAIEIkCC0EAC0UNAAJ/IAEoAgwiAigCLCIGRQRAQQAhB0EADAELIAYoAhghByAGKAIMCyELIAIoAgghDCACKAIEIQ0gAigCGCEOIAUhAgsgBUEBaiEFA0AgA0HYAGoQ1wUgAygCZEUNAiADIAMoAlg2AuwCIAMoAmwgA0HsAmpBABCFAUUNAAsMAQsLIAJBf0YNAAJAIAIgBU4EQCAKLwAAIQAMAQsgASgCDCADIAY2AiQgAyAHNgIsIAMgCzYCKCADIAMpAiQ3AwggAyAONgIwIAMgAykCLDcDECADIAw2AiAgAyANNgIcIAMgAykCHDcDACADEJsJIAogAkEBaiIAQQh0IABBgP4DcUEIdnIiADsAAAsgAEH//wNxQQBHDAELQQALIQIgA0GYAWoQtgEaIANBzAFqELYBGgsgA0GAAmoQLyADQaQCahAvIANByAJqEC8LIANBgANqJAAgAg8LQQAhBSMAQfAAayICJAACQCABKAIMIAAQrgkEQCAALwACIQQgAkEANgJsIAJBADYCOCACIABBBGo2AmQgAiAEQQh0IARBCHZyQf//A3E2AmggAiACKQJkNwMwIAEgAkEwaiAAELALRQ0BIABBAmogAC8AAiIFQQh0IAVBCHZyQf//A3FBAXRqIgQvAAIhA0EAIQUgAkEANgJgIAJBADYCKCACIARBBGo2AlggAiADQQh0IANBCHZyQf//A3E2AlwgAiACKQJYNwMgIAEgAkEgaiAAELALRQ0BIARBAmogBC8AAiIFQQh0IAVBCHZyQf//A3FBAXRqIgQvAAIhA0EAIQUgAkEANgJUIAJBADYCGCACIARBBGo2AkwgAiADQQh0IANBCHZyQf//A3E2AlAgAiACKQJMNwMQIAEgAkEQaiAAELALRQ0BIAEoAgghAyABKAIQIQYgASgCDCAEQQJqIAQvAAIiAEEIdCAAQQh2ckH//wNxQQF0aiIAQQJqEMsJIgRFDQEgASgCDCAALwACIQUgAkEANgJIIAJBADYCCCACIABBBGo2AkAgAiAFQQh0IAVBCHZyQf//A3E2AkQgAiACKQJANwMAIAIgA0HsBUGQBiAGQcKqzboERhtqEKYLIQAgASgCDCEBIAQgAEEIdCAAQYD+A3FBCHZyOwAAQQEhBSAAQYCABEkNASABIAEoAhhBCHI2AhgLQQAhBQsgAkHwAGokACAFIQILIAILZAAgACABKQIANwIAIAAgASgCEDYCECAAIAEpAgg3AgggACADNgIYIAAgAjYCFANAAkAgACgCBCIBQX9GDQAgACgCFEEMaiAAKAIQIAAoAgwgAWpxEOABDQAgABC9AQwBCwsgAAtxAgJ/AX4jAEEQayICJAAgAiABKAIQIAEoAgQiAyABKAIManGtQiCGIAOthCIENwMAIAIgBDcDCCABKAIcIAIoAgAQgAIgASgCHCACKAIEEIACIQEoAgAhAyAAIAEoAgA2AgQgACADNgIAIAJBEGokAAs5AQF/A0ACQCAAEL0BIAAoAgQiAUF/Rg0AIAAoAhRBDGogACgCECAAKAIMIAFqcRDgAUUNAQsLIAAL9gYBCn8jAEGgAWsiAyQAIABBADsAACABECEhBiADQQhqIgQgAkEkENIMGgJ/AkAgASAGEJACRQ0AIAQQiQshCCADQfgAaiAEQSQQ0gwaIANB1ABqIAQQigsgAygCVCEKIAMoAlghC0F+IQVBACECA0ACQAJAIAMoAnwgC0cNACADKAJ4IApHDQAgBkGABEGAAiAJIAggB0EDbEtyQQFxIgUbOwAAIAJB//8DSwRAIAEoAhgNBCABQQg2AhgMBAsgBUUEQCADQfgAaiIEIANBCGpBJBDSDBpBACECIAZBAmogASAEEIkLIgVBABCeA0UNBCAGQQRqIQQDQCACIAVGDQMgBCACQQF0aiADQfgAaiIIEIsLIgZBCHQgBkGA/gNxQQh2cjsAACACQQFqIQIgCBCHCxoMAAsACyADQTBqIgIgA0EIakEkENIMGiABIAYQKEUNAyADQfgAaiACQSQQ0gwaIANB1ABqIAIQigtBACECQX4hBSADKAJUIQQgAygCWCEHA0ACQCADKAJ8IAdHDQAgAygCeCAERw0AIAZBAmogASACEIoGRQ0FIAJFDQMgA0H4AGogA0EwaiICQSQQ0gwaIAZBBGohCSADQdQAaiACEIoLQX8hB0EAIQUgAygCVCEKIAMoAlghC0F+IQJBACEIA0ACQCADKAJ8IAtHDQAgAygCeCAKRw0AIAhFDQUgBi8AAiECIANBADYCgAEgAyAJNgJ4IAMgAkEIdCACQQh2ckH//wNxNgJ8IANB1ABqIANB+ABqEIsGDAULAkAgAkEBaiIMIANB+ABqEIsLIgRGBEAgBEEIdCAEQYD+A3FBCHZyIQIMAQsgCEEBIAJBfkYgBCAMT3IbIQggCSAHQQFqIgdBBmxqIgIgBUEIdCAFQYD+A3FBCHZyOwAEIAIgBEEIdCAEQYD+A3FBCHZyIgI7AAALIAkgB0EGbGogAjsAAiAFQQFqIQUgA0H4AGoQhwsaIAQhAgwACwALIAIgBUEBaiADQfgAaiIIEIsLIgVHaiECIAgQhwsaDAALAAsgBUF+RyADQfgAaiIMEIsLIgQgBUlxIAlyIQkgBCACIAIgBEkbIQIgByAFQQFqIARHaiEHIAwQhwsaIAQhBQwBCwsgASAAIAFBARCGAkEAQQAQhQZBAQwBCyABEIkCQQALIANBoAFqJAALYAEBfyMAQSBrIgEkACABIAAoAhg2AhggASAAKQIQNwMQIAEgACkCCDcDCCABIAApAgA3AwBBACEAA0AgASgCBEF/RkUEQCAAQQFqIQAgARCHCxoMAQsLIAFBIGokACAAC34BAn8jAEFAaiIDJAAgA0EsaiICIAEQoAcgAiABKQIMNwIMIANBDGogAiABKAIUIAEoAhgQhQsiAiABKAIcNgIcIAEoAiAhASAAIAIpAhg3AhggACACKQIQNwIQIAAgAikCCDcCCCAAIAIpAgA3AgAgACABNgIgIANBQGskAAsjAQF/IwBBEGsiASQAIAFBCGogABCGCyABKAIIIAFBEGokAAs0AQJ/IwBBMGsiAyQAIANBCGoiBCABQSgQ0gwaIAAgBCACKAIAIAIoAgQQkQsgA0EwaiQAC3gCAn8BfiMAQSBrIgIkACACQRBqIAEQtwUgAiACKQMQIgQ3AxggAiAENwMIIAEoAjAgAigCCBCAAiABKAIwIAIoAgwvAAAiAUEIdCABQQh2ckH//wNxEIACIQEoAgAhAyAAIAEoAgA2AgQgACADNgIAIAJBIGokAAtAAQN/IwBBEGsiASQAA0AgABC4BSICELYFBEAgACgCKCABQQhqIAIQtwUgASgCDBCWCUUNAQsLIAFBEGokACACC6wGAQh/IwBB4AFrIgMkACAAQQA7AAAgARAhIQYgAyACQTgQ0gwhBAJ/AkAgASAGEJACRQ0AIAQQkAshByAEQagBaiAEQTgQ0gwaIARB8ABqIAQQkgtBfiECQQAhAwNAIARBqAFqIARB8ABqEJMLBEAgAkF+RyAEQagBaiIKEJQLIgUgAklxIAlyIQkgBSADIAMgBUkbIQMgCCACQQFqIAVHaiEIIAoQjgsaIAUhAgwBBQJAIAZBgARBgAIgCSAHIAhBA2xLckEBcSICGzsAACADQf//A0sEQCABKAIYDQQgAUEINgIYDAQLIAJFBEAgBEGoAWoiAiAEQTgQ0gwaQQAhAyAGQQJqIAEgAhCQCyICQQAQngNFDQQgBkEEaiEFA0AgAiADRg0CIAUgA0EBdGogBEGoAWoiBxCUCyIGQQh0IAZBgP4DcUEIdnI7AAAgA0EBaiEDIAcQjgsaDAALAAsgBEE4aiICIARBOBDSDBogASAGEChFDQMgBEGoAWogAkE4ENIMGiAEQfAAaiACEJILQQAhA0F+IQIDQCAEQagBaiIFIARB8ABqIgcQkwsEQCADIAJBAWogBEGoAWoiBRCUCyICR2ohAyAFEI4LGgwBBSAGQQJqIAEgAxCKBkUNBSADRQ0CIAUgBEE4aiICQTgQ0gwaIAZBBGohCSAHIAIQkgtBfyEIQQAhAkF+IQNBACEHA0AgBEGoAWoiBSAEQfAAaiIKEJMLBEACQCADQQFqIgogBEGoAWoQlAsiBUYEQCAFQQh0IAVBgP4DcUEIdnIhAwwBCyAHQQEgA0F+RiAFIApPchshByAJIAhBAWoiCEEGbGoiAyACQQh0IAJBgP4DcUEIdnI7AAQgAyAFQQh0IAVBgP4DcUEIdnIiAzsAAAsgCSAIQQZsaiADOwACIAJBAWohAiAEQagBahCOCxogBSEDDAEFIAdFDQQgBi8AAiECIARBADYCsAEgBCAJNgKoASAEIAJBCHQgAkEIdnJB//8DcTYCrAEgCiAFEIsGCwsLCwsLCyABIAAgAUEBEIYCQQBBABCFBkEBDAELIAEQiQJBAAsgBEHgAWokAAs/AQF/IwBBMGsiASQAIAEgAEEwENIMIQBBACEBA0AgABC2BQRAIAFBAWohASAAEI4LGgwBCwsgAEEwaiQAIAELWgEBfyMAQRBrIgQkACAAIAFBKBDSDCIAIAM2AiwgACACNgIoA0ACQCAAELYFRQ0AIAAoAiggBEEIaiAAELcFIAQoAgwQlgkNACAAELgFGgwBCwsgBEEQaiQAC3kBBH8jAEFAaiICJAAjAEHQAGsiAyQAIANBMGoiBCABEJULIAJBDGoiBSADQQhqIAQgASgCICABKAIkELkFIAEoAiggASgCLBCRCyADQdAAaiQAIAIgASgCMDYCPCABKAI0IQEgACAFQTQQ0gwgATYCNCACQUBrJAALKAEBfyAAIAEQ4AcEfyAAKAIUIAEoAhRHIAAoAhggASgCGEdyBUEACwsjAQF/IwBBEGsiASQAIAFBCGogABCNCyABKAIIIAFBEGokAAtJAQF/IwBBIGsiAiQAIAJBDGogARDfByAAQRRqIAFBFGoQlAcgACACKAIcNgIQIAAgAikCFDcCCCAAIAIpAgw3AgAgAkEgaiQAC4QFARJ/IwBBMGsiAyQAIAAoAgAoAgwiAigCLCIHBEAgBygCGCEOIAcoAgwhCwsgAigCCCEPIAIoAgQhECACKAIYIRECQCAAKAIEIAIQ6QoiDEUNAEEBIQ0CfyAAKAIAIQIgACgCCCEFIAxBADsAACABLwAABEAgAigCDCIIECEaIAEvAAAiAQR/IAUgAUEIdCABQQh2ckH//wNxagVBoBILIQFBACEFIwBBIGsiBCQAIAIiCSgCCCICKAIcIRIjAEEQayIKJAAgCiACQdAEajYCDCABIgYvAAAiAkEIdCACQQh2ckH//wNxIQIDQCACIhMEQCACQQFrIQIgCkEMaiAGQQJqIgYQkAUNAQsLIApBEGokACATRQRAIAkoAgwiBigCBCECIAEvAAAhBSAEQQA2AhggBCASNgIcIAQgBCkDGDcDCCAEIAFBAmo2AhAgBCAFQQh0IAVBCHZyQf//A3E2AhQgBCAEKQMQNwMAQQAhAQJAIAIgBiAEKAIEIgZBABCeAyIFRQ0AIAJBAmohAgNAIAEgBkYNASACIAFBAXRqIAQQlwsvAQAiCUEIdCAJQQh2cjsAACAEEIIFIAFBAWohAQwACwALCyAEQSBqJAAgBQRAIAggDCAIQQEQhgJBAEEAEIUGQQEMAgsgCBCJAgtBAAsNACAAKAIEIgEgAS8AACIBQQh0IAFBCHZyQQFrIgFBCHQgAUGA/gNxQQh2cjsAACAAKAIAKAIMIAMgBzYCICADIA42AiggAyALNgIkIAMgAykCIDcDCCADIBE2AiwgAyADKQIoNwMQIAMgDzYCHCADIBA2AhggAyADKQIYNwMAIAMQmwlBACENCyADQTBqJAAgDQsYACAAKAIMIAAoAgBBoBIgACgCBBsQmAsLOAEBfyMAQRBrIgIkACACIAEvAAAiAUEIdCABQQh2ckH//wNxNgIMIAAgAkEMahCCASACQRBqJAALuwUBEX8jAEEwayIFJAAgACgCACgCDCIDKAIsIggEQCAIKAIYIQ4gCCgCDCELCyADKAIIIQ8gAygCBCEQIAMoAhghEQJAIAAoAgQgAxDpCiIMRQ0AQQEhDQJ/IAAoAgAhAyAAKAIIIQcgDEEAOwAAIAEvAAAEQCADKAIMIgkQIRoCfyABLwAAIgEEfyAHIAFBCHQgAUEIdnJB//8DcWoFQaASCyEGIwBBMGsiAiQAIAMiBygCCCIBQdAEaiEKIAEoAhwhEkEAIQEgBi8AACIDQQh0IANBCHZyQf//A3EiAyEEA0AgBkECaiEGAkAgBARAIAogBhCWCUUNASABIQMLIAcoAgwiBygCBCEBIAIgEjYCFCACQcUXNgIQIAIgCjYCDCACIAM2AgggAiAENgIEIAIgBjYCACACQcUXNgIsIAIgCjYCKCACIAM2AiQgAiAENgIgIAIgBjYCHEEAIQYDQCAEBEAgBkEBaiEGIAJBHGoQmgsgAigCICEEDAELC0EAIQQgASAHIAZBABCeAwRAIAFBAmohAwNAIAQgBkcEQCADIARBAXRqIAIoAhQgAigCAEGgEiACKAIEGxCYCy8BACIHQQh0IAdBCHZyOwAAIARBAWohBCACEJoLDAELCyABLwAAQQBHIQQLIAJBMGokACAEDAILIAFBAWohASAEQQFrIQQMAAsACwRAIAkgDCAJQQEQhgJBAEEAEIUGQQEMAgsgCRCJAgtBAAsNACAAKAIEIgEgAS8AACIBQQh0IAFBCHZyQQFrIgFBCHQgAUGA/gNxQQh2cjsAACAAKAIAKAIMIAUgCDYCICAFIA42AiggBSALNgIkIAUgBSkCIDcDCCAFIBE2AiwgBSAFKQIoNwMQIAUgDzYCHCAFIBA2AhggBSAFKQIYNwMAIAUQmwlBACENCyAFQTBqJAAgDQslAANAAkAgABCCBSAAKAIERQ0AIAAoAgwgACgCABCWCUUNAQsLC0wBA38gARC8BSEDQaASIQQgACABKAIUQaASIAEoAhgbLwAAIgIEfyABKAIkIAJBCHQgAkEIdnJB//8DcWoFQaASCzYCBCAAIAM2AgALEQAgABC+BSAAQRRqEIIFIAALygEBAn8jAEEgayICJAAgAC8AACEDIAIgATYCHCACQQA2AhAgAiAAQQJqNgIIIAIgAK1CIIZCtR6ENwIUIAIgA0EIdCADQQh2ckH//wNxIgA2AgwgAkEcaiEBA0ACQCAARQ0AIAJBCGoQmAUiAyABKAIAEKELBH8gAyABKAIAEMIFBUEACw0AQQAhACACKAIMIgNFDQEgAiADQQFrIgA2AgwgAiACKAIQQQFqNgIQIAIgAigCCEECajYCCAwBCwsgAkEgaiQAIABBAEcLQwEDfyMAQRBrIgEkAANAIAAQnAsiAhC2BQRAIAAoAiggAUEIaiACEJsLQQxqIAEoAggQ4AFFDQELCyABQRBqJAAgAgsTACAAIAEQoAcgACABKAIMNgIMCysBAn8jAEEQayIBJAAgACgCDCABIAAoAgQ2AgwgAUEMahCCASABQRBqJAALHwAgAUEMaiAALwAAIgBBCHQgAEEIdnJB//8DcRDgAQu5BgEQfyMAQTBrIgMkACAAKAIAKAIMIgIoAiwiCQRAIAkoAgwhDiAJKAIYIQsLIAIoAgghDyACKAIEIRAgAigCGCERAkAgACgCBCACEOkKIgxFDQBBASENAn8gACgCACECIAAoAgghBCAAKAIMIQUgDEEAOwAAIAEvAAAEQCACKAIMIgoQIRogAS8AACIBBH8gBCABQQh0IAFBCHZyQf//A3FqBUGgEgshBiAFKAIAIQQjAEEgayIFJAAgAigCCCIBKAIcIQgCQCAGIAFB0ARqEMIFRQ0AIAFB3ARqIAYvAAAiAUEIdCABQQh2ckH//wNxEOABRQ0AIAIoAgwgBBCjCyACKAIMIgEoAgQhBCAGLwACIQcgCCAGLwAAIgJBCHQgAkEIdnJB//8DcRCAAigCACECIAVBADYCGCAFIAg2AhwgBSAFKQIYNwMIIAUgB0EIdCAHQQh2ckH//wNxQQFrQQAgBxs2AhQgBSAGQQRqNgIQIAUgBSkCEDcDACMAQRBrIgYkACABIAQQKAR/IAQgAkEIdCACQYD+A3FBCHZyOwAAIAYgBSkCCDcDCCAGIAUpAgA3AwBBACECAkACfyAGKAIEIQhBACABIARBAmoiBxCQAkUNABogByAIQQFqIgRBCHQgBEGA/gNxQQh2cjsAACAEQYCABE8EQCABIAEoAhhBEHI2AhgLIAEgByAEQQF0Qf7/B3FBAiAEQf//A3EbQQAQ1gNBAEcLIgFFDQAgB0ECaiEEA0AgAiAIRg0BIAQgAkEBdGogBhCXCy8BACIHQQh0IAdBCHZyOwAAIAYQggUgAkEBaiECDAALAAsgAQVBAAsgBkEQaiQAIQcLIAVBIGokACAHBEAgCiAMIApBARCGAkEAQQAQhQZBAQwCCyAKEIkCC0EACw0AIAAoAgQiASABLwAAIgFBCHQgAUEIdnJBAWsiAUEIdCABQYD+A3FBCHZyOwAAIAAoAgAoAgwgAyAJNgIgIAMgCzYCKCADIA42AiQgAyADKQIgNwMIIAMgETYCLCADIAMpAig3AxAgAyAPNgIcIAMgEDYCGCADIAMpAhg3AwAgAxCbCUEAIQ0LIANBMGokACANCyoAAkAgAUUNACAAKAIYDQAgACgCLCABEPEKDQAgACAAKAIYQQFyNgIYCwvnAgENfyMAQTBrIgIkACAAKAIAKAIMIgMoAiwiBARAIAQoAhghCSAEKAIMIQYLIAMoAgghCiADKAIEIQsgAygCGCEMAkAgACgCBCADEOkKIgdFDQBBASEIAn8gACgCACEDIAAoAgghDSAAKAIMIQ4gB0EAOwAAIAEvAAAEQCADKAIMIgUQIRogAS8AACIBBH8gDSABQQh0IAFBCHZyQf//A3FqBUGgEgsgAyAOKAIAQQAQpQsEQCAFIAcgBUEBEIYCQQBBABCFBkEBDAILIAUQiQILQQALDQAgACgCBCIBIAEvAAAiAUEIdCABQQh2ckEBayIBQQh0IAFBgP4DcUEIdnI7AAAgACgCACgCDCACIAQ2AiAgAiAJNgIoIAIgBjYCJCACIAIpAiA3AwggAiAMNgIsIAIgAikCKDcDECACIAo2AhwgAiALNgIYIAIgAikCGDcDACACEJsJQQAhCAsgAkEwaiQAIAgLkQgBGn8jAEHwAGsiBCQAIAQgAzYCaCAEIAI2AmwgASgCDCIDKAIEIQhBACECIAMoAiwiDARAIAwoAgwhFSAMKAIYIRELIAMoAgghFiADKAIYIRcCQCADIAgQkAJFDQAgAEECaiIDIAAvAAAiAkEIdCACQQh2ckH//wNxQQF0aiEYA38gAyAYRgR/QQEhAiAILwAADQIgASgCDCAEQUBrIgEgDDYCACAEIBE2AkggBCAVNgJEIAQgASkCADcDECAEIBc2AkwgBCAEKQJINwMYIAQgFjYCPCAEIAg2AjggBCAEKQI4NwMIIARBCGoQmwlBAAUCQCADLwAARQ0AAn8gASgCDCICKAIsIg1FBEBBACESQQAMAQsgDSgCGCESIA0oAgwLIRkgAigCCCEaIAIoAgQhGyACKAIYIRwgCCACEOkKIhNFDQACfyATQQA7AAAgAy8AAARAIAEoAgwiDhAhGiADLwAAIgIEfyAAIAJBCHQgAkEIdnJB//8DcWoFQaASCyEGIAQoAmwhCiAEKAJoIQIjAEEQayIPJAACfwJAIAYvAAAiB0UNACAHQQh0IAdBCHZyQf//A3EhCyAGQQRqIQcgAkUEQCABKAIIKAIcIQILIA8gAjYCDANAIAtBAWsiCwRAIA9BDGogBxChByAHQQJqIQcNAQwCCwsgASgCDCEJIAIhByAKIQsjAEEgayIFJAACfyAJIAkoAgQiFBAoBEAgFCAGLwAAOwAAIAZBBGoiCiAGLwAAIgJBCHQgAkEIdnJB//8DcUEBdGpBAmshHSAKIQIDQCACIB1GBEAgBi8AACECIAYvAAIhBiAFQQA2AhQgBUEANgIIIAUgBkEIdCAGQQh2ckH//wNxNgIQIAUgCiACQQh0IAJBCHZyQf//A3FBAXRBAmtBACACG2o2AgwgBSAFKQIMNwMAIBQgCSAFIAsQpgsiAkEIdCACQYD+A3FBCHZyOwACQQEgAkGAgARJDQMaIAkgCSgCGEEIcjYCGAUgBSACLwAAIhBBCHQgEEEIdnJB//8DcTYCGCAFIAcgBUEYahCCAS8BACIQQQh0IBBBCHZyOwEeIAkgBUEeahDLCRogAkECaiECDAELCwtBAAsgBUEgaiQADAELQQALIA9BEGokAARAIA4gEyAOQQEQhgJBAEEAEIUGQQEMAgsgDhCJAgtBAAsNACAIIAgvAAAiAkEIdCACQQh2ckEBayICQQh0IAJBgP4DcUEIdnI7AAAgASgCDCAEIA02AlggBCASNgJgIAQgGTYCXCAEIAQpAlg3AyggBCAcNgJkIAQgBCkCYDcDMCAEIBo2AlQgBCAbNgJQIAQgBCkCUDcDICAEQSBqEJsJCyADQQJqIQMMAQsLIQILIARB8ABqJAAgAgvJAQEGfyMAQRBrIgUkACABKAIAIgMgASgCBEECdGohB0EAIQECQANAIAMgB0YNASAFIAMvAAIiBEEIdCAEQQh2ckH//wNxNgIMAkAgAiAFQQxqQQAQhQEEQCMAQRBrIgQkACAAIAMQrwoiBgR/IAQgAy8AAiIIQQh0IAhBCHZyQf//A3E2AgwgACAGQQJqIAIgBEEMahCCARCJBgVBAAsgBEEQaiQARQ0BIAFBAWohAQsgA0EEaiEDDAELC0EAIQELIAVBEGokACABC2IBAX8gAEEAOwAAIAIvAAAEQCABKAIMIgQQIRogAi8AACICBH8gAyACQQh0IAJBCHZyQf//A3FqBUGgEgsgARDzCgRAIAQgACAEQQEQhgJBAEEAEIUGQQEPCyAEEIkCC0EAC2kBAX8gAEEAOwAAIAIvAAAEQCABKAIMIgUQIRogAi8AACICBH8gAyACQQh0IAJBCHZyQf//A3FqBUGgEgsgASAEKAIAQQFBAUEAEPUKBEAgBSAAIAVBARCGAkEAQQAQhQYPCyAFEIkCCwtyAQF/IwBBEGsiBCQAIAAgASkCADcCACAAIAEoAhA2AhAgACABKQIINwIIIAAgAzYCGCAAIAI2AhQDQAJAIAAoAgxFDQAgACgCFCAEIAAoAgA2AgwgBEEMakEAEIUBDQAgABDXBQwBCwsgBEEQaiQAIAAL6wIBDX8jAEEwayICJAAgACgCACgCDCIDKAIsIgQEQCAEKAIYIQkgBCgCDCEGCyADKAIIIQogAygCBCELIAMoAhghDAJAIAAoAgQgAxDpCiIHRQ0AQQEhCAJ/IAAoAgAhAyAAKAIIIQ0gACgCDCEOIAdBADsAACABLwAABEAgAygCDCIFECEaIAEvAAAiAQR/IA0gAUEIdCABQQh2ckH//wNxagVBoBILIAMgDigCAEEAQQBBABCrCwRAIAUgByAFQQEQhgJBAEEAEIUGQQEMAgsgBRCJAgtBAAsNACAAKAIEIgEgAS8AACIBQQh0IAFBCHZyQQFrIgFBCHQgAUGA/gNxQQh2cjsAACAAKAIAKAIMIAIgBDYCICACIAk2AiggAiAGNgIkIAIgAikCIDcDCCACIAw2AiwgAiACKQIoNwMQIAIgCjYCHCACIAs2AhggAiACKQIYNwMAIAIQmwlBACEICyACQTBqJAAgCAvpBwEWfyMAQfAAayIGJAAgBiADNgJoIAYgAjYCbCAGIAQ2AmQgBiAFNgJgIAEoAgwiAygCBCEFQQAhAiADKAIsIgwEQCAMKAIYIRQgDCgCDCEPCyADKAIIIRUgAygCGCEWAkAgAyAFEJACRQ0AIABBAmoiAyAALwAAIgJBCHQgAkEIdnJB//8DcUEBdGohFwN/IAMgF0YEf0EBIQIgBS8AAA0CIAEoAgwgBiAMNgI4IAZBQGsiASAUNgIAIAYgDzYCPCAGIAYpAjg3AwggBiAWNgJEIAYgASkCADcDECAGIBU2AjQgBiAFNgIwIAYgBikCMDcDACAGEJsJQQAFAkAgAy8AAEUNAAJ/IAEoAgwiAigCLCINRQRAQQAhEEEADAELIA0oAhghECANKAIMCyEYIAIoAgghGSACKAIEIRogAigCGCEbIAUgAhDpCiIRRQ0AAn8gEUEAOwAAIAMvAAAEQCAGQewAaiAGQegAaiEHIAZB5ABqIQogBkHgAGohCyABKAIMIg4QIRogAy8AACICBH8gACACQQh0IAJBCHZyQf//A3FqBUGgEgshCCgCACESIAcoAgAhCSAKKAIAIQogCygCACELIwBBEGsiAiQAIAIgCjYCCCACIAk2AgwgAiALNgIEIAggCC8AACIEQQh0IARBCHZyQf//A3FBAXRqIgRBAmoiByAELwACIgRBCHQgBEEIdnJB//8DcUEBdEECIAQbaiETAn8CQAJAIAlFBEBBACAIIAEoAghB0ARqIgkQrAtFDQMaIAcvAAAiBEEIdCAEQQh2ckH//wNxQQFrQQAgBBshBANAIAQEQCAEQQFrIQQgCSAHQQJqIgcQlgkNAQwECwtBACATIAkQrAtFDQMaIAggASgCDCASIAEoAggoAhxBAEEAEK0LDAELQQAgCCACQQxqEK4LRQ0CGiAHLwAAIgRBCHQgBEEIdnJB//8DcUEBa0EAIAQbIQQDQCAEBEAgBEEBayEEIAJBCGogB0ECaiIHEKEHDQEMAwsLQQAgEyACQQRqEK4LRQ0CGiAIIAEoAgwgEiAJIAogCxCtCwtBAQwBC0EACyACQRBqJAAEQCAOIBEgDkEBEIYCQQBBABCFBkEBDAILIA4QiQILQQALDQAgBSAFLwAAIgJBCHQgAkEIdnJBAWsiAkEIdCACQYD+A3FBCHZyOwAAIAEoAgwgBiANNgJQIAYgEDYCWCAGIBg2AlQgBiAGKQJQNwMgIAYgGzYCXCAGIAYpAlg3AyggBiAZNgJMIAYgGjYCSCAGIAYpAkg3AxggBkEYahCbCQsgA0ECaiEDDAELCyECCyAGQfAAaiQAIAILPQECfyAALwAAIgJBCHQgAkEIdnJB//8DcSEDA0AgAyICBEAgAkEBayEDIAEgAEECaiIAEJYJDQELCyACRQvkBAEBfyMAQaABayIGJAAgBiADNgKcASAALwAAIQMgBkEANgKQASAGIAZBnAFqNgKUASAGIAYpApABNwNIIAYgAEECajYCiAEgBiADQQh0IANBCHZyQf//A3E2AowBIAYgAzsBmgEgBiADOwFSIAYgBikCiAE3A0AgASAGQdIAaiAGQUBrEK8LIAAgAC8AACIDQQh0IANBCHZyQf//A3FBAXRqIgNBAmogBARAIAYgBDYCnAELIAMvAAIhBCAGQQA2AnwgBiAGQZwBajYCgAEgBiAGKQJ8NwMwIAYgA0EEajYCdCAGIARBCHQgBEEIdnJB//8DcUEBa0EAIAQbNgJ4IAYgBDsBhgEgBiAEOwE+IAYgBikCdDcDKCABIAZBPmogBkEoahCvCyADLwACIgNBCHQgA0EIdnJB//8DcUEBdEECIAMbaiEDIAUEQCAGIAU2ApwBCyADLwAAIQAgBkEANgJoIAYgBkGcAWo2AmwgBiAGKQJoNwMYIAYgA0ECajYCYCAGIABBCHQgAEEIdnJB//8DcTYCZCAGIAA7AXIgBiAAOwEmIAYgBikCYDcDECABIAZBJmogBkEQahCvCwJAIAEgAyADLwAAIgBBCHQgAEEIdnJB//8DcUEBdGoiBEECahCuCSIARQ0AIAQvAAIhAyAGQQA2AlwgBkEANgIIIAYgBEEEajYCVCAGIANBCHQgA0EIdnJB//8DcTYCWCAGIAYpAlQ3AwAgACABIAYgAhCmCyIAQQh0IABBgP4DcUEIdnI7AAAgAEGAgARJDQAgASABKAIYQQhyNgIYCyAGQaABaiQACz0BAn8gAC8AACICQQh0IAJBCHZyQf//A3EhAwNAIAMiAgRAIAJBAWshAyABIABBAmoiABChBw0BCwsgAkULiQIBAn8jAEEwayIDJAAgACABEMsJGiADIAIpAgg3AyggAyACKQIANwMgIANBEGoiASACEJQHIAEgAigCDDYCDCADKAIkIQIDQAJAIAMoAiAgAygCEEYEQCACIAMoAhRGDQELIwBBEGsiASQAIAMoAiwoAgAgASADKAIgQaASIAMoAiQbLwAAIgRBCHQgBEEIdnJB//8DcTYCDCABQQxqEIIBIQIgAUEQaiQAIAMgAi8BACIBQQh0IAFBCHZyOwEOIAAgA0EOahDLCRpBACECIAMoAiQiAUUNASADIAFBAWsiAjYCJCADIAMoAihBAWo2AiggAyADKAIgQQJqNgIgDAELCyADQTBqJAALZgEEfyAAKAIMIgMoAgQhBSADQQJBARCCAkUEQEEADwsgASgCACIDIAEoAgRBAXRqIQEDQAJAIAEgA0YiBg0AIAUgACgCDBDpCiIERQ0AIAQgACADIAIQpwsgA0ECaiEDDQELCyAGC2YBBH8gASgCDCIDKAIEIQUgA0ECQQEQggJFBEBBAA8LIAIoAgAiAyACKAIEQQF0aiECA0ACQCACIANGIgYNACAFIAEoAgwQ6QoiBEUNACAEIAEgAyAAEKcLIANBAmohAw0BCwsgBgvdAwEGfyMAQeAAayIEJAAgBCADNgJcIAEoAgwiAyADKAIEIgYQKCIJBEAgBkEAOwAAIAAvAAAEQAJAIAEoAgwiBxAhGiAALwAAIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyEDAn8CQCAEKAJcIgVFDQAgBSgAACIFQfPS6asGRgRAIAEoAgwgAxC9CkEARwwCCyAFQRh0IAVBgP4DcUEIdHIiBUGAgNibBkcEQCAFQYCAzJsHRw0BIAMgARDrCgwCCyABKAIMIAMvAAwiBUEIdCAFQQh2ckH//wNxQQNsQQ5qIghBABCCAiIFBEAgBSADIAgQ0gwaCyAFQQBHIQgLIAgLBEAgByAGIAdBARCGAkEAQQAQhQYMAQsgBxCJAgsLIAAvAAIhAyAEQQA2AkQgBCAAQQRqNgI8IAQgA0EIdCADQQh2ckH//wNxNgJAIARBxRc2AjggBCACQQxqIgA2AjQgBEHIAGogBEE8aiAEQTRqEPQGIAEoAgwhASAEIAQpA1A3AyAgBCAEKAJYNgIoIAQgBCkDIDcDCCAEIAA2AiwgBCAEKQMoNwMQIAQgBCkDSDcDGCAEIAQpAxg3AwAgBkECaiABIAIgBBCzCwsgBEHgAGokACAJQQBHC4MCAQR/IwBBQGoiBCQAAkAgAygCBEUNACABIAAQkAJFDQAgBCADKQIQNwMoIAQgAykCCDcDICAEIAMpAgA3AxggBEE0aiIFIAMQlAcgBCAFIAMoAgwgAygCEBCiByIFIAMoAhQ2AhQDQCAEKAIYIAUoAgBGBEAgBCgCHCAFKAIERg0CCyAEQRhqIgYQpgcoAgAhAyACIAIoAjxBAWoiBzYCPCAHQbeRAksNASAEIANBCHQgA0GA/gNxQQh2cjsBNCABIARBNGoQywkaIAAgAC8AACIDQQh0IANBCHZyQQFqIgNBCHQgA0GA/gNxQQh2cjsAACAGEPUGDAALAAsgBEFAayQAC+QCAgR/AX4jAEHgAGsiAyQAAn9BACABKAIMIgQgBCgCBCIGEIcGRQ0AGiACKAIUIAMgAC8AAiIEQQh0IARBCHZyQf//A3E2AkhB//8DIQQgA0HIAGogA0HcAGoQhQEEQCADKAJcKAIAIQQLIAYgBEEIdCAEQYD+A3FBCHZyOwACIAIgAC8ABCIEQQh0IARBCHZyQf//A3EiBCACKAI4aiIFNgI4QQAgBUHbC0sNABogAyAENgJAIAMgAEEGajYCPCADQQA2AkQgA0HFFzYCOCADIAJBFGoiBDYCNCADQcgAaiADQTxqIANBNGoQ9AYgAyADKQJQIgc3AiQgAyADKAJYNgIsIAMoAkghBSADKAJMIQAgASgCDCEBIAMgBzcDCCADIAQ2AjAgAyADKQIsNwMQIAMgADYCICADIAU2AhwgAyADKQIcNwMAIAZBBGogASACIAMQswsgAEEARwsgA0HgAGokAAsrAANAAkAgABClByAAKAIMRQ0AIAAoAhQoAgBBDGogACgCABDgAUUNAQsLC7gUAht/AnwjAEEQayIMJAAgDCADOgALIAwgATYCDCABKAIEKAIMIAAQvwkiFARAIAEoAgQhByAUQQA2AAAgACgAAARAAkAgBygCDCINECEaIAAoAAAiAQR/IAIgAUEYdCABQYD+A3FBCHRyIAFBCHZBgP4DcSABQRh2cnJqBUGgEgshCiAMKAIMIQEgDC0ACyEEIwBBEGsiBSQAIAcoAgwiAyADKAIEIg8QkAIiBkEARyEDIAZFIARyRQRAQQAhAyABKAIcIgQEQCAEIAFBLGoQpAUoAgAhEAsgCi8AACIBQQh0IAFBCHZyQf//A3EhFyAKQQJqIRggEEEMaiEZA38gAyAXRgR/IA8vAABBAEcFAkAgEARAIBkgAxDgAUUNAQsgBSAPNgIIIAUgBzYCBCAFIAo2AgxBoBIgGCADQQJ0aiAKLwAAIgFBCHQgAUEIdnJB//8DcSADTRshCUEAIQtBACERQQAhFSMAQTBrIgQkACAFKAIEKAIMIgEoAiwiEgRAIBIoAgwhFSASKAIYIRELIAEoAgghGiABKAIEIRsgASgCGCEcAkAgBSgCCCABEPIKIhZFDQACfyAFKAIEIQYgBSgCDCEIIBZBADYAACAJKAAABEAgBigCDCIOECEaAn8CQAJAAkAgCSgAACIBBH8gCCABQRh0IAFBgP4DcUEIdHIgAUEIdkGA/gNxIAFBGHZycmoFQaASCyIJLwAAIgFBCHQgAUEIdnJB//8DcUEBaw4FAAICAgIBCyMAQUBqIgEkAAJ/AkAgBigCDCAJEL8JIgtFDQBBASAGKAIIIggoAqANRQ0BGiABIAkvAAIiE0EIdCATQQh2ckH//wNxNgIgIAhBtA1qIAFBIGogAUE8ahCFAUUNACABIAkvAAIiE0EIdCATQQh2ckH//wNxNgIIQQAgCEGQDWoiEyABQQhqQQAQhQFFDQEaIAYoAgggAUKAgICAgICA+D83AzAgAUIANwMoIAFCgICAgICAgPi/fzcDIEGYDGogASgCPCABQRxqELcCBEAgASABKAIcIggpAwg3AyggASAIKQMQNwMwIAEgCCkDADcDIAsgBigCCCABQoCAgICAgID4PzcDECABQoCAgICAgID4PzcDCEHsDGogASgCPCABQQRqEIoKBEAgASABKAIEIggpAwg3AxAgASAIKQMANwMICyAJLwAEIghBCHQgCEEIdnLBskMAAIA4lLsgAUEgaiIIIAFBCGoiHUEAEMICIR8gCS8ABiIeQQh0IB5BCHZywbJDAACAOJS7IAggHUEAEMICISAgC0EEaiAfthCpCiALQQZqICC2EKkKIAYoAgwgASAJLwACIglBCHQgCUEIdnJB//8DcTYCACALQQJqIBMgARCCARCJBgwBC0EACyABQUBrJAAMAgtBASELCyALCwRAIA4gFiAOQQEQhgJBAEEAEP4IQQEMAgsgDhCJAgtBAAsNACAFKAIIIgEgAS8AACIBQQh0IAFBCHZyQQFrIgFBCHQgAUGA/gNxQQh2cjsAACAFKAIEKAIMIAQgEjYCICAEIBE2AiggBCAVNgIkIAQgBCkCIDcDCCAEIBw2AiwgBCAEKQIoNwMQIAQgGjYCHCAEIBs2AhggBCAEKQIYNwMAIAQQmwkLIARBMGokAAsgA0EBaiEDDAELCyEDCyAFQRBqJAAgAwRAIA0gFCANQQEQhgJBAEEAEP4IDAELIA0QiQILCyAMKAIMKAIEIQYgFEEEaiISQQA2AAAgACgABARAAkAgBigCDCIJECEaIAAoAAQiAAR/IAIgAEEYdCAAQYD+A3FBCHRyIABBCHZBgP4DcSAAQRh2cnJqBUGgEgshAkEAIQogDCgCDCEAIAwtAAshAyMAQTBrIgEkAAJAIAYoAgwiBCAEKAIEIgUQhwZFDQAgBSACLwAAOwAAIAUgAi8AAjsAAiADBEAgAUEkaiAAKAIgIgIQuAEgAUEYaiACELkBIAVBBGohAiABKAIYIQ0gASgCHCEOA0ACQCAOIAEoAigiA0YEQCABKAIkIA1GDQELIAEgAzYCFCAAKAIkIAFBFGogAUEQahAiRQ0DAn8gBigCDCEFIAIgAi8AACIDQQh0IANBCHZyQf//A3FBAWoiBEEIdCAEQf//A3EiB0EIdnIiAzsAAAJAIAQgB0YEQCAFIAIgAi8AACIDQQh0IANBCHZyQf//A3FBBmxBAmpBARDWAyACLwAAIQMNAQsgAiADQQh0IANBgP4DcUEIdnJBAWsiA0EIdCADQYD+A3FBCHZyOwAAQQAMAQsgA0EIdCADQYD+A3FBCHZyQf//A3FBBmwgAmpBBGsLIQcgASgCFCEEIAEoAhAiAygCACELIAMoAgQhDyMAQRBrIgMkACADIAQ2AgwCQCAAKAIEKAIMIgUgBxCHBkUEQEEAIQQMAQtBACEEIAAoAhQgA0EMaiADQQhqEIUBRQ0AIAUgByADKAIIEIkGRQ0AIAUQIRogCyAAKAIEIAAgDxCyCwRAQQEhBCAFIAdBAmogBUEBEIYCQQBBABD+CAwBCyAFEIkCCyADQRBqJAAgBEUNAyABQSRqEL0BDAELC0EBIQoMAQsgAi8ABCEDIAFBADYCLCABQQA2AgggASACQQZqNgIkIAEgA0EIdCADQQh2ckH//wNxNgIoIAEgAjYCICABIAVBBGo2AhwgASAANgIYIAEgASkCJDcDAANAIAEoAgQEQCABKAIAIQZBACENIwBBMGsiAiQAIAEoAhgiACgCBCgCDCIDKAIsIgoEfyAKKAIYIQ0gCigCDAVBAAshDiADKAIIIQsgAygCBCEPIAMoAhghECABKAIgIREjAEEQayIDJAAgAyAANgIMIAAoAhQhByADIAYvAAAiBEEIdCAEQQh2ckH//wNxNgIEQQAhBAJAIAcgA0EEaiADQQhqEIUBRQ0AIAAoAgQoAgwgBhCsCSIHRQ0AIAcgAygCCC8BACIEQQh0IARBCHZyOwAAAn8gACgCBCEAIAdBAmoiFUEANgAAIAYoAAIEQCADQQxqIRYgACgCDCIHECEaIAYoAAIiBAR/IBEgBEEYdCAEQYD+A3FBCHRyIARBCHZBgP4DcSAEQRh2cnJqBUGgEgsgACAWKAIAQQAQsgsEQCAHIBUgB0EBEIYCQQBBABD+CEEBDAILIAcQiQILQQALIQQLIANBEGokAAJAIARFBEAgASgCGCgCBCgCDCACIAo2AiAgAiANNgIoIAIgDjYCJCACIAIpAiA3AwggAiAQNgIsIAIgAikCKDcDECACIAs2AhwgAiAPNgIYIAIgAikCGDcDACACEJsJDAELIAEoAhwiACAALwAAIgBBCHQgAEEIdnJBAWoiAEEIdCAAQYD+A3FBCHZyOwAACyACQTBqJAAgARCBBQwBCwsgBS8ABEEARyEKCyABQTBqJAAgCgRAIAkgEiAJQQEQhgJBAEEAEP4IDAELIAkQiQILCwsgDEEQaiQAIBRBAEcLXgECfyABLwAAIgEEfyAAKAIAIAFBCHQgAUEIdnJB//8DcWoFQaASCyAAKAIEIQIgACgCCCEDIwBBEGsiACQAIAAgAjYCDCAAQQA2AgggAEEIaiADEKkHIABBEGokAAuWUQIQfwN+An9BASEDAkACQAJAAkACQAJAAkACQAJAAkAgAigCAEEBaw4JAAECAwQFBgcICQsCf0EBIQICQAJAAkAgAS8AACIDQQh0IANBCHZyQf//A3FBAWsOAgABAgsjAEHwAGsiAiQAIAAoAggiAygCHCEGIAJBAToAKCACQQA2AiQgAkKBgICAEDcCHCACQSxqQQBBIRDUDBogA0HQBGohBCABLwACIgMEfyABIANBCHQgA0EIdnJB//8DcWoFQaASCyAEIAJBHGoQqwUgAUEEaiEDAn8gACgCCCIEKALADARAIAMgAUEGakEAQQAgASAEQcQLahC6CwwBCyAELQAQQQFxRQRAIAMvAAAiA0EIdCADQQh2ckH//wNxDAELIAQoAiRB8sLZswYQRCIEEA8gAyABQQZqIARBoBJHBH8gACgCCC0APUEBcwVBAQtBAXFBASABQQAQugsLIQQgAkHQAGogAkEcaiILELgBIAEvAAQhAyACKAJQIQUgAigCVCEIIAAoAgggACgCDCEAIAIgAigCWDYCWCACIAFBBmo2AmAgAkEANgJoIAIgBjYCXCACIAg2AlQgAiAFNgJQIAIgA2k2AmQgACgCBCEGIAIgAikDWDcDCCACIAIpA2A3AxAgAkEANgIYIAIgAikDUDcDACABIQNBxAtqIQkjAEHwAGsiBSQAAkAgACIBIAYiABCQAkUNACAEQQh0IARBgP4DcUEIdnIhBwJAIAIoAgRBf0YEQCAAQYAEOwAADAELIAUgAigCGDYCaCAFIAIpAhA3A2AgBSACKQIINwNYIAUgAikCADcDUCMAQaABayIEJAAgBUHQAGoiBhCgCxogBCAGKAIYNgKYASAEIAYpAhA3A5ABIAQgBigCGDYCiAEgBCAGKQIQNwOAASAEIAYpAgg3A3ggBCAGKQIANwNwIARB1ABqIAYQuwsCfwNAAkAgBCgCdCAEKAJYRw0AIAQoAnAgBCgCVEcNAEEBDAILIARB8ABqEKALGiAEQUBrIgYgBCgCiAE2AgAgBCAEKQKAATcDOCAEIAQoApgBNgJMIAQgBCkDkAE3AkQgBCAEKQNINwMwIAQgBikDADcDKCAEIAQpAzg3AyAgBEEIaiAEQThqELwLAkADQAJAIAQoAiQhBiAEKAIgIgwgBCgCCEYEQCAGIAQoAgxGDQELIAQoAjAhCiAEKAIsIg4gBCgCFEYEQCAKIAQoAhhGDQELIAxBoBIgBhsvAAAgDkGgEiAKGy8AAEcNAiAEQSBqEL0LDAELCyAEQfAAahC9AQwBCwtBAgshBiAEQaABaiQAIAAgBkEIdCAGQf//A3EiBEEIdnI7AAACQCAEQQFrDgIAAQILIAUgBzsBbiAFIAIpAgg3AzggBUFAayACKQIQNwMAIAUgAigCGDYCSCAFIAIpAgA3AzAgBSAHOwEuIwBB8ABrIgQkACABIAAQhwYEQCAAIAUvAC4iBjsABCAEIAUoAkg2AmggBCAFKQJAIhM3A2AgBCAFKQI4IhQ3A1ggBCAFKQIwIhU3A1AgBEG3HjYCbCAEIAQpA2g3A0ggBEFAayATNwMAIAQgFDcDOCAEIBU3AzAgBEEQaiAEQdAAahC7CyAEIAQoAmw2AiwCQCAEKAI0IAQoAhRGBEAgBCgCMCAEKAIQRg0BCyAEQTBqEKALGiAEKAJAIQcgBCADLwAEOwEOIARBDmogASAGQQh0IAZBgP4DcUEIdnJB//8DcSADIAcgCRC+CwsgBCAFKAJINgJoIAQgBSkCQDcDYCAEIAUpAjg3A1ggBCAFKQIwNwNQIARBth42AmwgAEECaiABIARB0ABqEL8LCyAEQfAAaiQADAELIAUgBzsBbCAFIAIpAgg3AxggBSACKQIQNwMgIAUgAigCGDYCKCAFIAIpAgA3AxAgBSAHOwEOIAVBDmohBiMAQdAAayIEJAAgBCADNgIoIAQgATYCLCAEIAk2AiQCQCABIAAQ1wNFDQAgACAFLwAOOwAEIAAgBSgCGCIDQQh0IANBgP4DcUEIdnI7AAYgA0GAgARPBEAgASABKAIYQRByNgIYDAELIAQgBSgCKDYCSCAEQUBrIgMgBSkCIDcDACAEIAUpAhg3AzggBCAFKQIQNwMwIARBtx42AkwgBCAGNgIcIAQgBEEkajYCICAEIARBLGo2AhggBCAEQShqNgIUA0AgBCgCNEF/RwRAIARBMGoiBhCgCxogBCADKAIINgIQIAQgAykCADcDCCMAQRBrIgEkACABIAQoAhQoAgAiBy8ABDsBDiABQQ5qIAQoAhgoAgAgBCgCHC8AACIJQQh0IAlBCHZyQf//A3EgByAEKAIIIAQoAiAoAgAQvgsgAUEQaiQAIAYQvQEMAQsLIAQgBSgCKDYCSCAEQUBrIAUpAiA3AwAgBCAFKQIYNwM4IAQgBSkCEDcDMCAEQbYeNgJMIABBAmogBCgCLCAEQTBqEL8LCyAEQdAAaiQACyAFQfAAaiQAIAsQtgEaIAJB8ABqJAAgCEF/RwwCCyMAQaAEayIDJAAgACgCCCIEKAIcIQcgAyABLwAEaSIGNgK0ASABLwAGIQIgA0EANgKwASADIAFBCGo2AqgBIAMgBiACQQh0IAJBCHZyQf//A3EiBWw2AqwBIARB0ARqIQggAUEEaiEEIANBsANqIgYgAS8AAiICBH8gASACQQh0IAJBCHZyQf//A3FqBUGgEgsQugUiAkEANgIUIAJBATYCHCACIAU2AhggAyACKQIQNwP4AyADIAIpAgg3A/ADIAMgAikCGDcDgAQgAyACKQIANwPoAyADQbYeNgL8AiADIAg2AvgCIANB9ABqIgggA0HoA2oiBSADQfgCahDDCyADIAc2ApwBIAMgA0G0AWo2AqQBIAMgA0GoAWo2AqABIAAoAggiAigCJCAGIAhBNBDSDBogAi0APSEIIAIoAhAhCSACKALADCEKQfLC2bMGEEQiBxAPAn8gCgRAIAUgBkE0ENIMGiADQbceNgKcBCADQTxqIgYgBUE4ENIMGiAEIAZBAEEAIAEgAkHEC2oQxAsMAQsgCUEBcQRAIANB6ANqIgIgA0GwA2pBNBDSDBogA0G3HjYCnAQgA0EEaiIGIAJBOBDSDBogBCAGIAhBf3MgB0GgEkZyQQFxQQEgAUEAEMQLDAELIAQvAAAiAkEIdCACQQh2ckH//wNxCyEFIANB9ABqIggQxAUhAiAAKAIMIgYoAgQhBCAAKAIIIQAgA0G4AWoiByAIQTQQ0gwaAkAgBiAEEJACRQ0AIABBxAtqIQggBUEIdCAFQYD+A3FBCHZyIQkCQCAHEMQFRQ0AIANB+AJqIgAgB0E0ENIMGiADQegDaiIHIAAQxQsgAyADKAL0AzYCuAIgAyADKQLsAzcDsAIgByAAQTQQ0gwaIANBsANqIAAQxgsDQCADQegDaiIAIANBsANqENoHBEAgA0GgAmogABDFCyADIAMoAqwCNgLIAiADIAMpAqQCNwPAAiADIAMoArgCNgLUAiADIAMpA7ACNwLMAiADIAMpA9ACNwOYAiADIAMpA8gCNwOQAiADIAMpA8ACNwOIAiADQfABaiADQcACahC8CwNAAkAgAygCjAIhACADKAKIAiIKIAMoAvABRgRAIAAgAygC9AFGDQELIAMoApgCIQcgAygClAIiCyADKAL8AUYEQCAHIAMoAoACRg0BCyAKQaASIAAbLwAAIAtBoBIgBxsvAABHDQQgA0GIAmoQvQsMAQsLIANB6ANqEMcLDAELCyAEQYACOwAAIANBwAJqIgcgA0G4AWpBNBDSDBogBiAEEIcGRQ0BIAQgCTsABCADQegDaiIAIAdBNBDSDBogA0G3HjYCnAQgA0GwA2oiByAAQTgQ0gwaIANB+AJqIgkgABDICyAHIAkQ2gcEQCADQYgCaiAHEMkLIAMgAS8ABDsB8AEgA0HwAWogBiAFQf//A3EgASADKAKIAiAIEL4LCyADQegDaiIAIANBwAJqQTQQ0gwaIANBth42ApwEIARBAmogBiAAEMoLDAELIARBgAQ7AAAgA0GwA2oiACADQbgBakE0ENIMGiAGIAQQ1wNFDQAgBCAJOwAEIAQgABDLCyIAQQh0IABBgP4DcUEIdnI7AAYgAEGAgARPBEAgBiAGKAIYQRByNgIYDAELIANB6ANqIANBsANqQTQQ0gwaIANBtx42ApwEIAVB//8DcSEFA0AgA0HoA2oiABDEBQRAIANB+AJqIAAQyQsgAygC+AIhByADIAEvAAQ7AcACIANBwAJqIAYgBSABIAcgCBC+CyAAEMcLDAELCyADQegDaiIAIANBsANqQTQQ0gwaIANBth42ApwEIARBAmogBiAAEMoLCyADQaAEaiQACyACCwwJCwJ/IAAhAkEAIQACQAJAAkAgAS8AACIEQQh0IARBCHZyQf//A3FBAWsOAgABAgsjAEHwAWsiAyQAIAIoAggiACgCHCEHAkAgAigCDCIEIAQoAgQiBBDJCUUEQEEAIQAMAQsgAEHQBGohBSAEIAEvAAA7AAACQCACKAIIIgAoAsAMBEAgA0GgAWogASAFQQBBACAAQcQLahDPCyADKQOgASITQiCIpyEAIBOnIQYMAQsgAC0AEEEBcUUEQCABLwAEIgBBCHQgAEEIdnIhBiABLwAGIgBBCHQgAEEIdnIhAAwBCyAAKAIkQfLC2bMGEEQiABAPIANBoAFqIAEgBSAAQaASRwR/IAIoAggtAD1BAXMFQQELQQFxQQFBABDPCyADKQOgASITQiCIpyEAIBOnIQYLIAQgAEEIdCAAQYD+A3FBCHZyOwAGIAQgBkEIdCAGQYD+A3FBCHZyOwAEIANBADYCnAEgA0IANwKUASADQRRqIgYgAS8AAiIABH8gASAAQQh0IABBCHZyQf//A3FqBUGgEgsgAUEIahCzBSADQbYeNgIQIAMgBTYCDCADQTRqIgAgBiADQQxqELQFIANB3ABqIABBKBDSDBogA0G3HjYCkAEgAyAENgKMASADIAI2AogBIAMgATYChAEgA0GEAWohAQNAAkAgA0HcAGoiABC2BUUNACADQaABaiAAELcFIAEgAygCpAEQ0AsNACAAELgFGgwBCwsgA0GgAWogA0HcAGpBOBDSDBogAyAHNgLcASADQbYeNgLYASADQcgBaiEAA0AgA0GgAWoiARC2BQRAIAMoAtwBIQYgA0HoAWogARC3BSADIAMoAugBNgLkASADQZQBaiAGIANB5AFqEIIBENoBGgNAIANBoAFqELgFIgEQtgVFDQIgA0HoAWogARC3BSAAIAMoAuwBENALRQ0ACwwBCwsgAigCDCEAIAMgAykCmAFCIIk3AqABIANBADYCqAEgBEECaiAAIANBoAFqENsKGiADKAKYAUEARyEAIANBlAFqEC0LIANB8AFqJAAgAAwCCyMAQbABayIFJAAgAigCDCIDIAMoAgQiBxDGCQRAIAcgAS8AADsAACAFQgA3AXogBUIANwGAASAFQgA3AXIgBUEBOgBwIAVBADYCbCAFQoGAgIAQNwJkIAUgBUHkAGo2AkAgBUEBOgAYIAVBAToABCABQQhqIQkgB0EIaiEDIAUgAS8AAiIABH8gASAAQQh0IABBCHZyQf//A3FqBUGgEgs2AogBIAVBQGshCiAFQRhqIQQgBUEEaiEGIAVBiAFqIQAgA0EAOwAAIAkvAAAEQAJAIAIoAgwiCBAhGiAJLwAAIgkEfyABIAlBCHQgCUEIdnJB//8DcWoFQaASCyACIAooAgAgBC0AACAGLQAAIAAoAgAQ9QoEQCAIIAMgCEEBEIYCQQBBABCFBgwBCyAIEIkCCwsgByAFLwF0IgNBCHQgA0EIdnI7AAwgBUIANwFWIAVCADcBXCAFQgA3AU4gBUEBOgBMIAVBADYCSCAFQoGAgIAQNwJAIAUgCjYCiAEgBUEBOgAYIAVBADoABCAHQQpqIglBADsAACABLwAKBEACQCACKAIMIgMQIRogAS8ACiIIBH8gASAIQQh0IAhBCHZyQf//A3FqBUGgEgsgAiAAKAIAIAQtAAAgBi0AAEEAEPUKBEAgAyAJIANBARCGAkEAQQAQhQYMAQsgAxCJAgsLIAcgBS8BUCIDQQh0IANBCHZyOwAOIAEvAAYiBGkhCSABLwAEIgZpIQgCfyACKAIIIgMoAsAMBEAgACABIAVB5ABqIApBAEEAIANBxAtqENELIAUpA4gBIhNCIIinIQAgE6cMAQsgAy0AEEEBcUUEQCAEQQh0IARBCHZyIQAgBkEIdCAGQQh2cgwBCyADKAIkQfLC2bMGEEQiABAPIAVBiAFqIAEgBUHkAGogBUFAayAAQaASRwR/IAIoAggtAD1BAXMFQQELQQFxQQFBABDRCyAFKQOIASITQiCIpyEAIBOnCyEDIAFBAmohBCABQQZqIQYgAUEEaiEKIAcgAEEIdCAAQYD+A3FBCHZyOwAGIAcgA0EIdCADQYD+A3FBCHZyOwAEIAEvAA4hACAFQQE2AgwgBUEANgIEIAUgAEEIdCAAQQh2ckH//wNxNgIIIAVBxRc2AqgBIAUgBUFAazYCpAEgBUEYaiAFQQRqIAVBpAFqEOwHIAVBADYCOCAFQgA3AzAgBSAFKAIoNgKYASAFIAUpAiA3A5ABIAUgBSkCGDcDiAEgCCAJaiEJA0AgBSgCiAEiACAFKAKMAUcEQCAFIAA2AqABIAVBMGogBUGgAWoQ2gEaIAVBiAFqEO0HDAELCyABLwAMIQAgBUEBNgIgIAVBADYCGCAFIABBCHQgAEEIdnJB//8DcTYCHCAFQcUXNgIIIAUgBUHkAGo2AgQgBUGIAWoiACAFQRhqIAVBBGoiCxDsByAFIAUoApgBNgIoIAUgBSkCkAE3AyAgBSAFKQKIATcDGCABQRBqIQMgBUGkAWoiDCAAEOgCIAsgDCAFKAKUASAFKAKYARDxByELAn8DQAJAIAUoAhgiDCALKAIARgRAIAdBAmogAiAEIAEQpwshACAHLwAMDQFBAAwDCyAFKAI4IgAgBSgCNEECdGohDgNAIAAgDkYEQCAFQRhqEO0HDAMFIAogAigCDCAHLwAEIg1BCHQgDUEIdnJB//8DcSABIAMgACgCACAMIAEvAA4iDUEIdCANQQh2ckH//wNxbGogCWwiDUEBdGogAigCCEHEC2oQvgsgBiACKAIMIAcvAAYiD0EIdCAPQQh2ckH//wNxIAEgAyAIIA1qQQF0aiACKAIIQcQLahC+CyAAQQRqIQAMAQsACwALCyAAIAcvAA5BAEdxCyEAIAVBMGoQLSAFQUBrEC8gBUHkAGoQLwsgBUGwAWokACAAIQMLIAMLDAgLIAEvAABBgAJGBH8jAEGgAmsiAyQAIAAoAggiBEHQBGohByAAKAIMKAIEIQIgBCgCHCEIIANBwAFqIgYgAS8AAiIEBH8gASAEQQh0IARBCHZyQf//A3FqBUGgEgsgAUEEahCzBSADQQRqIgUgA0HwAWoiBCAGIAdBth4Q8gdBKBDSDBogAyAINgIsIAUQtgUgA0EwaiIHIAVBLBDSDBoCQCAAKAIMIAIQhwZFDQAgAkGAAjsAACACIAcQ0wsiBUEIdCAFQYD+A3FBCHZyOwAEIAQgB0EsENIMGiADQbceNgKcAiAGIARBMBDSDBogA0GQAWogBBDUCyADIAMoApwCNgK8AQJAA0AgA0HAAWoiBCIHIANBkAFqEJMLBEAgA0HgAGogBBDXCyAAKAIMIAMoAmQiBhCvCiIFBEAgBSAAIAYgARDYCxogBUECaiAAIAZBAmogARDYCxoLIAQQ8AcaDAEFAkAgACgCDCEEQQAhBSACQQA7AAIgBBAhIQYgA0HgAGoiACADQTBqQSwQ0gwaIANBth42AowBIAQgBhCQAkUNAyACQQJqIQogABDTCyELIANB8AFqIABBMBDSDBogByAAENULQX4hAUEAIQBBACEHA0AgA0HwAWoiCCADQcABahCTCwRAIAFBfkcgCBDWCyICIAFJcSAHciEHIAIgACAAIAJJGyEAIAUgAUEBaiACR2ohBSAIEPAHGiACIQEMAQUgBkGABEGAAiAHIAsgBUEDbEtyQQFxIgEbOwAAIABB//8DSwRAIAQoAhgNBiAEQQg2AhgMBgsgAUUEQCADQfABaiIBIANB4ABqQTAQ0gwaQQAhACAGQQJqIAQgARDTCyIBQQAQngNFDQYgBkEEaiECA0AgACABRg0EIAIgAEEBdGogA0HwAWoiBhDWCyIFQQh0IAVBgP4DcUEIdnI7AAAgAEEBaiEAIAYQ8AcaDAALAAsgA0GQAWoiACADQeAAakEwENIMGiAEIAYQKEUNBSADQfABaiAAQTAQ0gwaIANBwAFqIAAQ1QtBACEAQX4hAQNAIANB8AFqIgIgA0HAAWoiBRCTCwRAIAAgAUEBaiACENYLIgFHaiEAIAIQ8AcaDAEFIAZBAmogBCAAEIoGRQ0HIABFDQQgAiADQZABaiIAQTAQ0gwaIAZBBGohByAFIAAQ1QtBfyEFQQAhAUF+IQBBACEIA0AgA0HwAWoiAiADQcABaiILEJMLBEACQCAAQQFqIgsgAhDWCyICRgRAIAJBCHQgAkGA/gNxQQh2ciEADAELIAhBASAAQX5GIAIgC09yGyEIIAcgBUEBaiIFQQZsaiIAIAFBCHQgAUGA/gNxQQh2cjsABCAAIAJBCHQgAkGA/gNxQQh2ciIAOwAACyAHIAVBBmxqIAA7AAIgAUEBaiEBIANB8AFqEPAHGiACIQAMAQUgCEUNBiAGLwACIQAgA0EANgL4ASADIAc2AvABIAMgAEEIdCAAQQh2ckH//wNxNgL0ASALIAIQiwYLCwsLCwsLCwsgBCAKIARBARCGAkEAQQAQhQYMAQsgBBCJAgsgA0GgAmokAAVBAQsMBwsgASAAELkLDAYLIAEvAABBgAJGBH9BACECIwBB8AJrIgYkACAAIgMoAgghByAAKAIMIgAgACgCBCIJECkEQCAJIAEiBC8AADsAACAGQgA3AaIBIAZCADcBqAEgBkIANwGaASAGQQE6AJgBIAZBADYClAEgBkKBgICAEDcCjAEgBC8AAiIABH8gBCAAQQh0IABBCHZyQf//A3FqBUGgEgsgBC8ACCIABH8gBCAAQQh0IABBCHZyQf//A3FqBUGgEgsgB0HQBGoiAiAGQYwBahDqBwJAAkAgBigCnAEiAEUNACAJIABBCHQgAEGA/gNxQQh2cjsABiAGQcACaiIBIAQvAAIiAAR/IAQgAEEIdCAAQQh2ckH//wNxagVBoBILIARBCGoiDC8AACIABH8gBCAAQQh0IABBCHZyQf//A3FqBUGgEgsQswUgBkG2HjYClAIgBiACNgKQAiAGQeQAaiIAIAEgBkGQAmoiAhDuByAGQThqIgsgAEEoENIMGiADKAIMIQggCUEAOwACIAgQISEKIAZBsAFqIgAgC0EoENIMGiAGIAdB+ANqIg42AtwBIAZBth42AtgBAkAgCCAKEJACRQ0AIAlBAmohDSAAENMLIQ8gASAAQTAQ0gwaIAIgABDdC0F+IQBBACECQQAhBwNAIAZBwAJqIgsgBkGQAmoQkwsEQCAAQX5HIAsQ3gsoAgAiASAASXEgB3IhByABIAIgASACSxshAiAFIABBAWogAUdqIQUgCxDwBxogASEADAEFAkAgCkGABEGAAiAHIA8gBUEDbEtyQQFxIgAbOwAAIAJB//8DSwRAIAgoAhgNBCAIQQg2AhgMBAsgAEUEQCAGQcACaiIAIAZBsAFqQTAQ0gwaQQAhAiAKQQJqIAggABDTCyIAQQAQngNFDQQgCkEEaiEBA0AgACACRg0CIAEgAkEBdGogBkHAAmoiBRDeCy8BACIHQQh0IAdBCHZyOwAAIAJBAWohAiAFEPAHGgwACwALIAZB4AFqIgAgBkGwAWpBMBDSDBogCCAKEChFDQMgBkHAAmogAEEwENIMGiAGQZACaiAAEN0LQQAhAkF+IQADQCAGQcACaiIBIAZBkAJqIgUQkwsEQCACIABBAWogARDeCygCACIAR2ohAiABEPAHGgwBBSAKQQJqIAggAhCKBkUNBSACRQ0CIAEgBkHgAWoiAEEwENIMGiAKQQRqIQsgBSAAEN0LQX8hBUEAIQBBfiECQQAhBwNAIAZBwAJqIgEgBkGQAmoiDxCTCwRAAkAgAkEBaiIPIAEQ3gsoAgAiAUYEQCABQQh0IAFBgP4DcUEIdnIhAgwBCyAHQQEgAkF+RiABIA9PchshByALIAVBAWoiBUEGbGoiAiAAQQh0IABBgP4DcUEIdnI7AAQgAiABQQh0IAFBgP4DcUEIdnIiAjsAAAsgCyAFQQZsaiACOwACIABBAWohACAGQcACahDwBxogASECDAEFIAdFDQQgCi8AAiEAIAZBADYCyAIgBiALNgLAAiAGIABBCHQgAEEIdnJB//8DcTYCxAIgDyABEIsGCwsLCwsLC0EAIQIgCCANIAhBARCGAkEAQQAQhQYgCUEIaiAGQcACaiAELwACIgAEfyAEIABBCHQgAEEIdnJB//8DcWoFQaASCxC6BSEAIAYgBkGMAWo2ApACIAMgDCAEIAAgBkGQAmoiABDbC0UNAiAAIAQvAAQiAAR/IAQgAEEIdCAAQQh2ckH//wNxagVBoBILELoFIQAgBC8ACiIBBH8gBCABQQh0IAFBCHZyQf//A3FqBUGgEgsvAAAhASAGQQE2AsgCQQAhBSAGQQA2AsACIAYgAUEIdCABQQh2ckH//wNxNgLEAiAGIAApAgg3AtQCIAYgACgCEDYC3AIgBiAAKQIANwLMAiAGIA42AuQCIAZBtx42AuACIAZBCGogBkHAAmoiAUHFFxDfCyECIAMoAgwhCCAJQQA7AAQgCBAhIQogBkGwAWoiACACQTAQ0gwaAkAgCCAKEJACRQ0AIARBCmohDCAJQQRqIQ4gABDgCyENIAEgAEEwENIMGiAGQZACaiAAEOELQX4hAEEAIQJBACEHA0AgBkHAAmoiCyAGQZACahDYCgRAIABBfkcgCxD0CigCACIBIABJcSAHciEHIAEgAiABIAJLGyECIAUgAEEBaiABR2ohBSALEOILIAEhAAwBBQJAIApBgARBgAIgByANIAVBA2xLckEBcSIAGzsAACACQf//A0sEQCAIKAIYDQQgCEEINgIYDAQLIABFBEAgBkHAAmoiACAGQbABakEwENIMGkEAIQIgCkECaiAIIAAQ4AsiAEEAEJ4DRQ0EIApBBGohAQNAIAAgAkYNAiABIAJBAXRqIAZBwAJqIgUQ9AovAQAiB0EIdCAHQQh2cjsAACACQQFqIQIgBRDiCwwACwALIAZB4AFqIgAgBkGwAWpBMBDSDBogCCAKEChFDQMgBkHAAmogAEEwENIMGiAGQZACaiAAEOELQQAhAkF+IQADQCAGQcACaiIBIAZBkAJqIgUQ2AoEQCACIABBAWogARD0CigCACIAR2ohAiABEOILDAEFIApBAmogCCACEIoGRQ0FIAJFDQIgASAGQeABaiIAQTAQ0gwaIApBBGohCyAFIAAQ4QtBfyEFQQAhAEF+IQJBACEHA0AgBkHAAmoiASAGQZACaiINENgKBEACQCACQQFqIg0gARD0CigCACIBRgRAIAFBCHQgAUGA/gNxQQh2ciECDAELIAdBASACQX5GIAEgDU9yGyEHIAsgBUEBaiIFQQZsaiICIABBCHQgAEGA/gNxQQh2cjsABCACIAFBCHQgAUGA/gNxQQh2ciICOwAACyALIAVBBmxqIAI7AAIgAEEBaiEAIAZBwAJqEOILIAEhAgwBBSAHRQ0EIAovAAIhACAGQQA2AsgCIAYgCzYCwAIgBiAAQQh0IABBCHZyQf//A3E2AsQCIA0gARCLBgsLCwsLCwsgCCAOIAhBARCGAkEAQQAQhQYgCUEKaiEBIAZBwAJqIAQvAAQiAAR/IAQgAEEIdCAAQQh2ckH//wNxagVBoBILELoFIQAgBiAGQYwBajYCkAICfyABQQA7AAAgDC8AAARAIAMoAgwiBxAhGiAMLwAAIgIEfyAEIAJBCHQgAkEIdnJB//8DcWoFQaASCyEFIwBBIGsiAiQAIAYoApACIQggBC8ABiEEIAIgACgCEDYCGCACIAApAgg3AxAgAiAAKQIANwMIIARBCHQgBEEIdnJB//8DcSEKIwBBkAJrIgAkACADKAIIIQkCQAJAIAMoAgwiBCAEKAIEIg4QkAJFDQAgACACKAIYNgJoIAAgAikCEDcDYCAAIAIpAgg3A1ggBS8AACEEIABBADYCdCAAIAVBAmo2AmwgACAEQQh0IARBCHZyQf//A3E2AnAgAEHYAGoiBCAAQYABaiAEIAlB0ARqQbYeELkFIgRBKBDSDBogAEGoAWoiCSAEEJULIAitIAqtQiCGhCETIABBMGogCSAEKAIgIAQoAiQQuQUhDSAAQbQBaiEPQQAhBANAIABB2ABqIgggDRCTC0UNAiAAQShqIAgQtwUgDiADKAIMEOkKIgtFDQEgACgCLC8AACIIBH8gBSAIQQh0IAhBCHZyQf//A3FqBUGgEgsiEC8AACEIIABBATYCsAEgAEEANgKoASAAIAhBCHQgCEEIdnJB//8DcSAKbDYCrAEgACATNwMIIAAgEzcD4AEgAEEQaiAAQagBaiAAQQhqQcUXEOMLIQggACgCLCEMIAtBADsAACAMLwAABEAgAygCDCIJECEaIAwvAAAiDAR/IAUgDEEIdCAMQQh2ckH//wNxagVBoBILIQwgEC8AACEQIAAgCCkCEDcD2AEgACAIKQIINwPQASAAIAgpAgAiFDcDyAECfwJAIAAoAswBIBSnRg0AIAMoAgwiCCAIKAIEIggQkAJFDQAgCCAQOwAAIAAgACkD2AE3A7gBIAAgACkD0AE3A7ABIAAgACkDyAE3A6gBIABBhAJqIgggAEHIAWoQ6AIgACAAKQLUASIUNwP4ASAAIBQ3AwAgDEECaiEQIABB4AFqIAggACAAKALcARDjCyERA0AgACgCqAEiCCARKAIARwRAIAMoAgwgECAIQQF0aiIIEK4JIhJFDQIgEiADIAggDBDYCxoDQCAAIAAoAqgBIAAoArABaiIINgKoASAIIAAoAqwBRg0CIA8gCBDkC0UNAAsMAQsLIAkgCyAJQQEQhgJBAEEAEIUGQQEMAQsgCRCJAkEACyAEciEECwNAIABB2ABqIggQvQUgCBC2BUUNASAAKAJ4IABBqAFqIAgQtwVBDGogACgCqAEQ4AFFDQALDAALAAtBACEECyAAQZACaiQAIAJBIGokACAEQQFxBEAgByABIAdBARCGAkEAQQAQhQZBAQwCCyAHEIkCC0EACyECDAMLIAgQiQIMAQsgCBCJAgtBACECCyAGQYwBahAvCyAGQfACaiQAIAIFQQELDAULIAEgABC5CwwECyABIAAQgwsMAwsgASAAEIQLDAILIAEvAABBgAJGBH8jAEEQayICJAAgACgCDCIDIAMoAgQiAxDXAwR/IAMgAS8AADsAACADIAEvAAI7AAIgAiABLwACIgRBCHQgBEEIdnJB//8DcTYCDAJ/IAJBDGohBCADQQRqIgZBADYAACABKAAEBEAgACgCDCIDECEaIAAgASgABCIABH8gASAAQRh0IABBgP4DcUEIdHIgAEEIdkGA/gNxIABBGHZycmoFQaASCyAEELgLBEAgAyAGIANBARCGAkEAQQAQ/ghBAQwCCyADEIkCC0EACwVBAAsgAkEQaiQABUEBCyEDCyADCwuiDQILfwF+IAAvAABBgAJGBH8jAEHgAmsiAiQAIAEoAggiBCgCHCEHIAEoAgwiAyADKAIEIgUQKQRAIAUgAC8AADsAACACQgA3AbICIAJCADcBuAIgAkIANwGqAiACQQE6AKgCIAJBADYCpAIgAkKBgICAEDcCnAIgAC8AAiIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgAC8ACCIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgBEHQBGoiCSACQZwCahDqByACKAKsAiIDBEAgBSADQQh0IANBgP4DcUEIdnI7AAYgAkG4AWoiBCAALwACIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyAAQQhqIggvAAAiAwR/IAAgA0EIdCADQQh2ckH//wNxagVBoBILELMFIAJBth42AlwgAiAJNgJYIAJB9AFqIgMgBCACQdgAahDuByACQQA2AvABIAJCADcC6AEgBCADQSgQ0gwaIAIg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BH8gByAELwAAOwEAIARBAmohBCACQQFxBH8gASAHEMsJBUEACwVBAAshCiAGQQJxBEAgByAELwAAOwEIIAJBAnEEQCABIAdBCGoQywkhCAsgBEECaiEECyAGQQRxBH8gByAELwAAOwEQIARBAmohBCACQQRxBH8gASAHQRBqEMsJBUEACwVBAAshCyAGQQhxBEAgByAELwAAOwEYIAJBCHEEQCABIAdBGGoQywkhCQsgBEECaiEECyAALwAAQYAgSQ0AIAZBEHEEQCAKIAMgBCAFEMALIAEgAyAEIAUgAkEQEMELIARBAmohBAsgBkEgcQRAIAggAyAEIAUQwAsgASADIAQgBSACQSAQwQsgBEECaiEECyAGQcAAcQRAIAsgAyAEIAUQwAsgASADIAQgBSACQcAAEMELIARBAmohBAsgBkGAAXFFDQAgCSADIAQgBRDACyABIAMgBCAFIAJBgAEQwQsLIAdBIGokAAvtBwIIfwF+IwBBgAFrIgMkACAAQQA7AAAgARAhIQYgAyACKQIYNwMYIAMgAikCEDcDECADIAIpAgg3AwggAyACKQIANwMAAkACQCABIAYQkAJFDQAgAygCCCEIIAMgAykDGDcDeCADIAMpAxA3A3AgAyADKQMINwNoIAMgAykDADcDYCADQUBrIAMQwgtBfiEEQQAhAgNAAkACQCADKAJkIAMoAkRHDQAgAygCYCADKAJARw0AIAZBgARBgAIgCSAIIAdBA2xLckEBcSIEGzsAACACQf//A0sEQCABKAIYDQQgAUEINgIYDAQLIARFBEAgAyADKQMYNwN4IAMgAykDEDcDcCADIAMpAwgiCzcDaCADIAMpAwA3A2BBACECIAZBAmogASALpyIEQQAQngNFDQQgBkEEaiEFA0AgAiAERg0DIAUgAkEBdGogA0HgAGoiCBCgCy8BACIGQQh0IAZBCHZyOwAAIAJBAWohAiAIEL0BDAALAAsgAyADKQMYNwM4IAMgAykDEDcDMCADIAMpAwg3AyggAyADKQMANwMgIAEgBhAoRQ0DIAMgAykDODcDeCADIAMpAzA3A3AgAyADKQMoNwNoIAMgAykDIDcDYCADQUBrIANBIGoQwgtBACECQX4hBANAAkAgAygCZCADKAJERw0AIAMoAmAgAygCQEcNACAGQQJqIAEgAhCKBkUNBSACRQ0DIAMgAykDODcDeCADIAMpAzA3A3AgAyADKQMoNwNoIAMgAykDIDcDYCAGQQRqIQkgA0FAayADQSBqEMILQX8hB0EAIQRBfiECQQAhCANAAkAgAygCZCADKAJERw0AIAMoAmAgAygCQEcNACAIRQ0FIAYvAAIhAiADQQA2AmggAyAJNgJgIAMgAkEIdCACQQh2ckH//wNxNgJkIANBQGsgA0HgAGoQiwYMBQsCQCACQQFqIgogA0HgAGoQoAsoAgAiBUYEQCAFQQh0IAVBgP4DcUEIdnIhAgwBCyAIQQEgAkF+RiAFIApPchshCCAJIAdBAWoiB0EGbGoiAiAEQQh0IARBgP4DcUEIdnI7AAQgAiAFQQh0IAVBgP4DcUEIdnIiAjsAAAsgCSAHQQZsaiACOwACIARBAWohBCADQeAAahC9ASAFIQIMAAsACyACIARBAWogA0HgAGoiBRCgCygCACIER2ohAiAFEL0BDAALAAsgBEF+RyADQeAAaiIKEKALKAIAIgUgBElxIAlyIQkgBSACIAIgBUkbIQIgByAEQQFqIAVHaiEHIAoQvQEgBSEEDAELCyABIAAgAUEBEIYCQQBBABCFBgwBCyABEIkCCyADQYABaiQAC7YBAQF/IwBBEGsiBCQAAkAgAEUNACAEIAIvAAAiAgR/IAEgAkEIdCACQQh2ckH//wNxagVBoBILIgEvAARBgAFGBH8gASgAACIBQRh0IAFBgP4DcUEIdHIgAUEIdkGA/gNxIAFBGHZycgVBfws2AgwgAyAEQQxqIARBCGoQIkUNACAAIAQoAggvAQQgAC8AACIAQQh0IABBCHZyaiIAQQh0IABBgP4DcUEIdnI7AAALIARBEGokAAtwAAJAIAQgBXFFDQAgACACEMsJIgQEQCAELwAARQ0BIARBADsAACAAECEaIAIvAAAiAgR/IAEgAkEIdCACQQh2ckH//wNxagVBoBILIAAgAxDSCgRAIAAgBCAAQQEQhgJBAEEAEIUGDwsgABCJAgsLCxMAIAAgARC7CyAAIAEoAhw2AhwLTQEBfyMAQSBrIgMkACADIAEpAhg3AxggAyABKQIQNwMQIAMgASkCCDcDCCADIAEpAgA3AwAgACADIAIoAgAgAigCBBDMCyADQSBqJAALdwECfyMAQYABayIGJAAgBkHIAGogAUE4ENIMGiAGQRBqIAEQyAtBACEBA38gBkHIAGogBkEQahDaBwR/IAZBBGogBkHIAGoiBxDJCyAAIAYoAgQgAiADIAQgBRC6CyABciEBIAcQxwsMAQUgBkGAAWokACABCwsLnQEBBX8jAEEQayICJAAgARC8BSEDIAIgASgCFDYCDCACIAM2AgggASgCKCACKAIIEIACIQQgASgCLCIFKAIEIQMgBSgCACEFIAIoAgwhBiABKAIwKAIAIQEgAEEANgIMIAAgBDYCACAAIAUgASAGbCIEQQF0ajYCBCAAIAMgBGsiAEEAIAAgA00bIgAgASAAIAFJGzYCCCACQRBqJAALHQAgACABEM0LIAAgASgCMDYCMCAAIAEpAig3AigLKAADQAJAIAAQxgUgABDEBUUNACAAKAIgQQxqIAAQvAUQ4AFFDQELCwsTACAAIAEQxgsgACABKAI0NgI0Cy8BAX8jAEEQayICJAAgAiABEMULIAAgAigCDDYCCCAAIAIpAgQ3AgAgAkEQaiQAC6sGAQh/IwBB4AFrIgQkACAAQQA7AAAgARAhIQYgBCACQTgQ0gwhAwJAAkAgASAGEJACRQ0AIAMQywshByADQagBaiADQTgQ0gwaIANB8ABqIAMQyAtBfiECQQAhBANAIANBqAFqIANB8ABqENoHBEAgAkF+RyADQagBaiIKEM4LKAIAIgUgAklxIAlyIQkgBSAEIAQgBUkbIQQgCCACQQFqIAVHaiEIIAoQxwsgBSECDAEFAkAgBkGABEGAAiAJIAcgCEEDbEtyQQFxIgIbOwAAIARB//8DSwRAIAEoAhgNBCABQQg2AhgMBAsgAkUEQCADQagBaiICIANBOBDSDBpBACEEIAZBAmogASACEMsLIgJBABCeA0UNBCAGQQRqIQUDQCACIARGDQIgBSAEQQF0aiADQagBaiIHEM4LLwEAIgZBCHQgBkEIdnI7AAAgBEEBaiEEIAcQxwsMAAsACyADQThqIgIgA0E4ENIMGiABIAYQKEUNAyADQagBaiACQTgQ0gwaIANB8ABqIAIQyAtBACEEQX4hAgNAIANBqAFqIgUgA0HwAGoiBxDaBwRAIAQgAkEBaiADQagBaiIFEM4LKAIAIgJHaiEEIAUQxwsMAQUgBkECaiABIAQQigZFDQUgBEUNAiAFIANBOGoiAkE4ENIMGiAGQQRqIQkgByACEMgLQX8hCEEAIQJBfiEEQQAhBwNAIANBqAFqIgUgA0HwAGoiChDaBwRAAkAgBEEBaiIKIANBqAFqEM4LKAIAIgVGBEAgBUEIdCAFQYD+A3FBCHZyIQQMAQsgB0EBIARBfkYgBSAKT3IbIQcgCSAIQQFqIghBBmxqIgQgAkEIdCACQYD+A3FBCHZyOwAEIAQgBUEIdCAFQYD+A3FBCHZyIgQ7AAALIAkgCEEGbGogBDsAAiACQQFqIQIgA0GoAWoQxwsgBSEEDAEFIAdFDQQgBi8AAiECIANBADYCsAEgAyAJNgKoASADIAJBCHQgAkEIdnJB//8DcTYCrAEgCiAFEIsGCwsLCwsLCyABIAAgAUEBEIYCQQBBABCFBgwBCyABEIkCCyADQeABaiQAC0UBAn8jAEEwayIBJAAgAUEIaiAAQSgQ0gwaQQAhAANAIAFBCGoiAhDEBQRAIABBAWohACACEMcLDAELCyABQTBqJAAgAAtfACAAIAEpAgA3AgAgACABKQIYNwIYIAAgASkCEDcCECAAIAEpAgg3AgggACADNgIkIAAgAjYCIANAAkAgABDEBUUNACAAKAIgQQxqIAAQvAUQ4AENACAAEMYFDAELCwssAQF/IwBBIGsiAiQAIAIgARDeByAAIAIgASgCICABKAIkEMwLIAJBIGokAAsgAQF/IwBBEGsiASQAIAEgABDFCyABKAIAIAFBEGokAAvOAwENfyMAQbABayIHJAAgAUEEaiIKEKwHIQ4gB0E4aiIIIAEvAAIiBgR/IAEgBkEIdCAGQQh2ckH//wNxagVBoBILIAFBCGoQswUgB0G2HjYCECAHIAI2AgwgB0HkAGoiBiAIIAdBDGoiCRC0BSAHQbceNgKMASAIIAZBLBDSDBogB0GQAWoiCCAGEJULIAkgCCAHKAKEASAHKAKIARC5BSIPIAcoAowBNgIoIAFBBmohDUEAIQhBACEJA0ACQCAHQThqIgYgDxCTC0UNACAGEMEFLwAAIgYEfyABIAZBCHQgBkEIdnJB//8DcWoFQaASCyILLwAAIgZBCHQgBkEIdnJB//8DcSEQIAtBAmohBkEAIQwDQCAMIBBGBEAgCi8AACIGQQh0IAZBCHZyQf//A3EgCEYEQCAJIA0vAAAiBkEIdCAGQQh2ckH//wNxRg0DCyAHQThqELgFGgwDBSAGIAIQoQsEQCAKIAZBAmoiESADIAQgCyAFELoLIRIgDSARIAovAABpQQF0aiADIAQgCyAFELoLIAlyIQkgCCASciEICyAMQQFqIQwgBiAOaiEGDAELAAsACwsgACAJNgIEIAAgCDYCACAHQbABaiQAC7EHARp/IwBBMGsiBCQAIAAoAgQoAgwiBygCLCILBEAgCygCGCEVIAsoAgwhEQsgACgCACEFIAcoAgghFiAHKAIEIRcgBygCGCEYAkAgACgCCEEIaiAHEOkKIhJFDQBBASETAn8gACgCBCEHIAAoAghBBGohCCASQQA7AAAgAS8AAARAIAVBBGogBygCDCIMECEaIAEvAAAiAQR/IAUgAUEIdCABQQh2ckH//wNxagVBoBILIQkhAUEAIQUjAEHQAGsiAiQAIAcoAgwiAygCBCEKIAMoAiwiDgRAIA4oAgwhFCAOKAIYIQ0LIAMoAgghGSADKAIYIRogAyAKEJACBEAgCkEAOwAAIAEvAAIgAS8AACEPIAcoAggiAygCHCEQIAIgA0HEC2o2AkwgAiAQNgJIIAIgCDYCQCACIAE2AjwgAiAPaSIINgJEIAIgCTYCOCAJLwAAIgFBCHQgAUEIdnJB//8DcSEPIANB3ARqIRAgCUECaiEBaSAIakEBdEECaiEJQQAhCAN/IAggD0YEfyAKIAVBCHQgBUGA/gNxQQh2cjsAACAFRQRAIAcoAgwgAiAONgIoIAIgDTYCMCACIBQ2AiwgAiACKQIoNwMQIAIgGjYCNCACIAIpAjA3AxggAiAZNgIkIAIgCjYCICACIAIpAiA3AwggAkEIahCbCQsgBUEARwUgECABLwAAIgNBCHQgA0EIdnJB//8DcRDgAQRAIAcoAgwiAyADKAIEIgYQkAIiGwRAIAYgAigCSCABLwAAIgZBCHQgBkEIdnJB//8DcRCAAi8BACIGQQh0IAZBCHZyOwAAIAIoAjwgAyACKAJALwAAIgZBCHQgBkEIdnJB//8DcSACKAI4IAFBAmoiBiACKAJMEL4LIAIoAjxBAmogAyACKAJALwACIgNBCHQgA0EIdnJB//8DcSACKAI4IAYgAigCREEBdGogAigCTBC+CwsgBSAbQQBHaiEFCyAIQQFqIQggASAJaiEBDAELCyEFCyACQdAAaiQAIAUEQCAMIBIgDEEBEIYCQQBBABCFBkEBDAILIAwQiQILQQALDQAgACgCCCIBIAEvAAgiAUEIdCABQQh2ckEBayIBQQh0IAFBgP4DcUEIdnI7AAggACgCBCgCDCAEIAs2AiAgBCAVNgIoIAQgETYCJCAEIAQpAiA3AwggBCAYNgIsIAQgBCkCKDcDECAEIBY2AhwgBCAXNgIYIAQgBCkCGDcDACAEEJsJQQAhEwsgBEEwaiQAIBMLjgQBCn8jAEGAAWsiByQAIAEvAAYhCCABLwAEIAEvAAwhCSAHQQE2AmAgB0EANgJYIAcgCUEIdCAJQQh2ckH//wNxNgJcIAdBxRc2AkggByACNgJEIAdB7ABqIgIgB0HYAGogB0HEAGoiCRDsByAHIAcoAnw2AmggByAHKQJ0NwNgIAcgBykCbDcDWCABQRBqIQsgAUEGaiEMIAFBBGohDWkiCiAIaWohDiAJIAIQ0gtBACECQQAhCQNAAkAgBygCWCIPIAcoAkRGDQAgAS8ADiEIIAdBATYCICAHQQA2AhggByAIQQh0IAhBCHZyQf//A3E2AhwgB0HFFzYCCCAHIAM2AgQgB0EwaiIIIAdBGGogB0EEaiIQEOwHIAcgB0FAaygCADYCKCAHIAcpAjg3AyAgByAHKQIwNwMYIBAgCBDSCwNAIAcoAhgiCCAHKAIERgRAIA0vAAAiCEEIdCAIQQh2ckH//wNxIAJGBEAgCSAMLwAAIghBCHQgCEEIdnJB//8DcUYNAwsgB0HYAGoQ7QcMAwUgDSALIAggDyABLwAOIghBCHQgCEEIdnJB//8DcWxqIA5sIghBAXRqIAQgBSABIAYQugsgAnIhAiAMIAsgCCAKakEBdGogBCAFIAEgBhC6CyAJciEJIAdBGGoQ7QcMAQsACwALCyAAIAk2AgQgACACNgIAIAdBgAFqJAALMgECfyMAQRBrIgIkACACQQRqIgMgARDoAiAAIAMgASgCDCABKAIQEPEHGiACQRBqJAALRgECfyMAQTBrIgEkACABQQhqIABBKBDSDBpBACEAA0AgAUEIaiICELYFBEAgAEEBaiEAIAIQ8AcaDAELCyABQTBqJAAgAAs0AQF/IwBBIGsiAiQAIAIgARDZCyAAIAIgASgCICABKAIkEPIHIAEoAig2AiggAkEgaiQACxMAIAAgARDUCyAAIAEoAiw2AiwLIwEBfyMAQRBrIgEkACABQQhqIAAQ1wsgASgCCCABQRBqJAALRgIBfwF+IwBBEGsiAiQAIAJBCGogARC3BSABKAIoIAIpAwgiA6cQgAIoAgAhASAAIANCIIg+AgQgACABNgIAIAJBEGokAAufBwEGfyAAQQA7AAAgAi8AAARAIAEoAgwiCBAhGgJ/AkACQAJAAkAgAi8AACICBH8gAyACQQh0IAJBCHZyQf//A3FqBUGgEgsiAi8AACIDQQh0IANBCHZyQf//A3FBAWsOAwABAgMLIAIgASgCDBDaC0EARwwDCyABKAIMIQMgASgCCC0AEEEBcQRAIAIgAxDaC0EARwwDCyADIAIQvwlBAEcMAgsjAEEQayIDJAAgASgCDCIGKAIEIQcCQCAGIAIQrglFDQAgASgCDCACQQJqEK4JRQ0AIAEoAgwgAkEEahCuCUUNAAJAAkACQCACLwAGIgQEQCACIARBCHQgBEEIdnJB//8DcWoiBC8ABEGAAUYNAQtBfyEGIANBfzYCDAwBCyADIAQoAAAiBEEYdCAEQYD+A3FBCHRyIARBCHZBgP4DcSAEQRh2cnIiBjYCDCAEQX9GDQAgASgCCEHEC2ogA0EMaiADQQhqECJFDQEgAyADKAIIIgQoAgAiBjYCDCAEKAIEIgVFDQAgASgCDCEEIAcgBSACLwACIglBCHQgCUEIdnLBaiIFQQh0IAVBgP4DcUEIdnI7AAIgBUGAgAJqQYCABEkNACAEIAQoAhhBCHI2AhgMAQsCQAJAIAIvAAgiBARAIAIgBEEIdCAEQQh2ckH//wNxaiIELwAEQYABRg0BC0F/IQQgA0F/NgIIDAELIAMgBCgAACIFQRh0IAVBgP4DcUEIdHIgBUEIdkGA/gNxIAVBGHZyciIENgIIIAVBf0YNACABKAIIQcQLaiADQQhqIANBBGoQIkUNASADIAMoAgQiBigCACIENgIIAkAgBigCBCIFRQ0AIAEoAgwhBiAHIAUgAi8ABCIJQQh0IAlBCHZywWoiBUEIdCAFQYD+A3FBCHZyOwAEIAVBgIACakGAgARJDQAgBiAGKAIYQQhyNgIYDAILIAMoAgwhBgsgBCAGcUF/RgRAIAdBgAI7AABBASEEDAILQQAhBCABKAIMIAJBBmoiBhCuCUUNASABKAIMIAJBCGoiBRCuCUUNASABKAIMIQQgAyABKAIIQcQLajYCBCAHQQZqIAQgBiACQQAgA0EEaiIEEOwKGiABKAIMIQYgAyABKAIIQcQLajYCBCAHQQhqIAYgBSACQQAgBBDsChogB0EARyEEDAELQQAhBAsgA0EQaiQACyAECwRAIAggACAIQQEQhgJBAEEAEIUGQQEPCyAIEIkCC0EAC0kBAX8jAEEgayICJAAgAkEMaiABEN8HIABBFGogAUEUahDFCCAAIAIoAhw2AhAgACACKQIUNwIIIAAgAikCDDcCACACQSBqJAALGAAgASAAEKwJIgAEQCAAQYACOwAACyAAC8UEAQl/IABBADsAACACLwAABEAgASgCDCIKECEaIAIvAAAiAgR/IAMgAkEIdCACQQh2ckH//wNxagVBoBILIQIjAEEgayIIJAAgBSgCACEDIAggBCgCEDYCGCAIIAQpAgg3AxAgCCAEKQIANwMIIwBBkAFrIgQkACABKAIIIQcCQCABKAIMIgUgBSgCBCIOEJACBEAgAi8AACEGIAQgCCgCGDYCSCAEQUBrIAgpAhA3AwAgBCAIKQIINwM4QQAhBSAEQQA2AlQgBCACQQJqNgJMIAQgBkEIdCAGQQh2ckH//wNxNgJQIARBth42AhAgBCAHQdAEajYCDCAEQeQAaiIGIARBOGoiByAEQQxqIgkQ7gcgBEG3HjYCjAEgByAGQSwQ0gwaIAkgBhDcCyAEIAQoAowBNgI0QQAhBgNAIARBOGoiDCAEQQxqEJMLBEAgDBDBBSEHIwBBEGsiCSQAIAEoAgwgBxCvCiINBH8gCSAHLwAAIgtBCHQgC0EIdnJB//8DcTYCDCANIAMgCUEMahCCAS8BACILQQh0IAtBCHZyOwAAIA1BAmogASAHQQJqIAIQ2AsFQQALIQcgCUEQaiQAIAYgB3IhBiAFQQFqIQUgDBDwBxoMAQUgASgCDCEBIA4gBUEIdCAFQYD+A3FBCHZyOwAAIAVBgIAESQ0DIAEgASgCGEEQcjYCGAsLC0EAIQYLIARBkAFqJAAgBkEBcSAIQSBqJAAEQCAKIAAgCkEBEIYCQQBBABCFBkEBDwsgChCJAgtBAAstAQF/IwBBIGsiAiQAIAIgARDZCyAAIAIgASgCICABKAIkEPIHGiACQSBqJAALPwECfyMAQTBrIgIkACACQQRqIgMgARDcCyACIAEoAig2AiwgASgCLCEBIAAgA0EsENIMIAE2AiwgAkEwaiQACzUBAn8jAEEQayIBJAAgACgCLCABQQhqIAAQtwUgASABKAIINgIEIAFBBGoQggEgAUEQaiQACzYAIAAgAUEoENIMIgAgAjYCLANAAkAgABDVCkUNACAAEPQKKAIAQX9HDQAgABDeCgwBCwsgAAs+AQF/IwBBMGsiASQAIAEgAEEwENIMIQBBACEBA0AgABDVCgRAIAFBAWohASAAEOILDAELCyAAQTBqJAAgAQs3AQJ/IwBBMGsiAiQAIAJBCGoiAyABEN8KIAIgASgCJDYCLCAAIAMgASgCLBDfCxogAkEwaiQACyIAA0ACQCAAEN4KIAAQ1QpFDQAgABD0CigCAEF/Rg0BCwsLagECfiAAIAEpAgAiBDcCACAAIAEoAgg2AgggAikCACEFIAAgAzYCFCAAIAU3AgwgAEEMaiECIASnIQEDQAJAIAEgACgCBEYNACACIAEQ5AsNACAAIAAoAgAgACgCCGoiATYCAAwBCwsgAAswAQJ/IwBBEGsiAiQAIAAoAgAgAiABIAAoAgRwNgIMIAJBDGpBABCFASACQRBqJAALCwAgAEEUQQEQggILFwAgACABIAEoAgBBsfPd8XlsIAIQ6AsLtxACFX8DfSMAQRBrIg4kACMAQSBrIgUkACAAQTBqIQogAEEMaiEHIAAoAggiBiAAKAIEQewAbGohCwNAAkAgBiALRiIMDQAgBSAGQSRqNgIcAkAgByAFQRxqIglBABDuCwRAIAogCSAFQQxqEPYLBEAgBSAFKAIMKAIAQQFqNgIYQQMhCCAKIAkgBUEYahD3Cw0CC0EBIQgMAQsgBUEANgIUIAVCADcCDEEBIQgCQCAFKAIcIAVBDGoiCRCXCkUNACAHIAVBHGoiDSANKAIAEJ0KIAkQ+wtFDQAgBUEBNgIYIAogDSAFQRhqEPcLQQFzIQgLIAVBDGoQLQsCQCAIDgQAAQEAAQsgBkHsAGohBgwBCwsgBUEgaiQAAkAgDEUNAAJAIANFDQAjAEGQAWsiBiQAIAAoAiQhAyAAKAIsIQUgBkEANgJAIAYgBTYCOCAGIANBAWpBACADGzYCPCAGQQA2AhwgBkHVADYCGCAGIAYpAhg3AwggBkHcAGogBkE4aiAGQQhqQcUXEPgLIgNBADYCHCADQdYANgIYIAYgAykCGDcDUCAGIAMpAhA3A0ggBkFAayADKQIINwMAIAYgAykCADcDOCAGQYQBaiIFIAMQ+QsgAygCFCEIIAYgAykCDDcCfCAGIAYpAnw3AwAgBkEYaiAFIAYgCBD4CyIKIAMpAhg3AhggAEEwaiEHIAZBxABqIQlBACEDAkADQCAGKAI8IQggBigCOCIFIAooAgBGBEAgCCAKKAIERg0CCyAIRQRAQdjQAEIANwMAQdDQAEIANwMAQeDQAEEANgIAQdDQACEFCyAGKAJQIQggBkGEAWogBSAGKAJUIgtBAXVqIgUgC0EBcQR/IAUoAgAgCGooAgAFIAgLEQEAIAYgBigChAEoAgA2AnwCQAJAIAYoAogBKAIEIgVFDQAgByAGQfwAaiAGQRRqEPYLRQ0BIAYoAhQoAgAiCEECSQ0BIAhBAWsgBWwiBSADTQ0AIAAgBigCiAE2AlQgBSEDCyAGKAI4IQUgBigCPCEIA0AgCEUNAiAGIAhBAWsiCDYCPCAGIAYoAkBBAWo2AkAgBiAFQRRqIgU2AjggCEUNAiAJIAUQzQNFDQALDAELCyAAQQA2AlQLIAZBkAFqJAAgACgCVCIDRQ0AIAAgACgCWCADKAIEajYCWAsgAEEMaiESIAAoAggiAyAAKAIEQewAbGohEwNAIAMgE0YEQEEBIRQMAgsgDiADQSRqIgU2AgwgEiAOQQxqIA5BCGoQ7gtFDQEgDigCCCgCBARAIAUgA0EwaiADQTxqIANB1ABqEJgKRQ0CIA4oAggiBSAAKAJURgR/QQAFIAUoAgQLIQ8jAEFAaiIHJAACf0EBIAMoAlhFDQAaQQAgA0HIAGoiFSABKAIQQQZsQQRqQQEQvQJFDQAaIAdBADYCPCADKAJQQQRqIQggAygCTEEEa0EBdSEGAkACQCAEBEAgByADQeAAajYCNCAEIAdBNGogB0E4ahDrCw0BCyAHQQA2AjAgB0EANgIYIAcgBjYCLCAHIAg2AiggByAHKQIoNwMQQQAhCyMAQRBrIgUkACAHKAIUIQogBygCECEJIAIoAhAhDUEAIQwDQCAFIAw2AgwgDCANSQRAIAEgBUEMaiIMQQAQhQEEQCAFIAIgDBCCASgCADYCCAJAIAMgBUEIaiAFQQRqELcCRQRAIAoEfyAJBUHQ0ABBADsBAEHQ0AALQQA7AAAMAQsgCgR/IAkFQdDQAEEAOwEAQdDQAAsgBSgCBCsDCLYQqQoLIAtBAWohCyAJIApBAEdBAXRqIQkgCkEBayIMQQAgCiAMTxshCgsgBSgCDEEBaiEMDAELCyAHIAcoAjxBgIACcjYCPCAFQRBqJABBACALIgxFDQIaIAYgC2siBUEAIAUgBk0bIQYgCCALQQF0aiEIDAELIAcgBygCOCgCADYCPEEAIQwLIAdBADYCJCAHQQA2AgggByAGNgIgIAcgCDYCHCAHIAcpAhw3AwBBACEQIwBBEGsiCSQAIAcoAgQiBSABKAIQIgZrIghBACAFIAhPGyAFIAYbIQ0gBSAGIAUgBkkbIQsgBygCACIRIAZBAXRqIQYgAigCECEWQQAhBUEAIQgDfyAJIAU2AgwgBSAWTwR/QQAhBSAQBEAgByAHKAI8QYCAAXI2AjwgCCEFCyAJQRBqJAAgBQUgASAJQQxqIgVBABCFAQRAIAkgAiAFEIIBKAIANgIIQwAAAAAhGkMAAAAAIRtDAAAAACEcIAMgCUEIaiAJQQRqELcCBEAgCSgCBCIFKwMQtiEcIAUrAwC2IRsgBSsDCLYhGgsgCwR/IBEFQdDQAEEAOwEAQdDQAAsgGxCpCkECIQUgBiEKIA1FBEBB0NAAQQA7AQBB0NAAIQpBACEFCyAKIBwQqQogDUEBayIKIA1LIQ0gC0EBayIXIAtLIRggC0EAR0EBdCEZIBBBASAaQwAAAAAgGkMAAAAAXxsgG1sgHCAaQwAAAAAgGkMAAAAAYBtbcRshEEEAIAogDRshDUEAIBcgGBshCyAIQQJqIQggESAZaiERIAUgBmohBgsgCSgCDEEBaiEFDAELCxogDwRAIAcgBygCPEGAwAByNgI8CyADKAJQIgYgAygCWCAPaiIIQQh0IAhBgP4DcUEIdnI7AAAgBiAHLwE8IgZBCHQgBkEIdnI7AAIgFSAFIAxqQQF0QQRqQQEQvQILIAdBQGskAEUNAiAAIAAoAlggAygCWCADKAJMIA9qamo2AlgLIANB7ABqIQMMAAsACyAOQRBqJAAgFAvYAgEIfyAALQAMQQFHBEAPCwJAIAAoAhgiBiAAKAIUIgRBAXYgBGpNBEAgAEEAEOoLRQ0BIAAoAhghBgsgAkH/////A3EiCSAAKAIccCECIAEoAgAhBSAAKAIgIQdBfyEEA0ACQCAHIAJBFGxqIgooAgQiC0ECcQRAIAooAgAgBUcNAQsgByACIAQgBEF/RhtBFGxqIgItAARBAnEEQCAAIAAoAhRBAWs2AhQgACAAKAIQIAIoAgRBAXFrNgIQIAEoAgAhBQsgAiAFNgIAIAIgAykCADcCCCACIAMoAgg2AhAgAiAJQQJ0QQNyNgIEIAAgACgCFEEBaiIBNgIUIAAgACgCEEEBajYCECAIIAAvAQ5NDQIgACgCGCICIAFBA3RPDQIgACACQQhrEOoLGgwCCyAEIAQgAiAEQX9HGyALQQFxGyEEIAYgCEEBaiIIIAJqcSECDAALAAsLgQwEGH8DfQF+AXwjAEHQAWsiCCQAIAVBCGohEyAFQQRqIRQgCEHUAGohFSAIQcgAaiEWIAhBPGohFyAIQSZqIRggCEGkAWohGSAIQaABaiEaAn8DQCAIIAEoAgAvAAIiBQR/IAEoAhAgBUEIdCAFQQh2ckH//wNxagVBoBILIAEoAgxqIgU2AswBAkACQCABKAIUIgogBUsNACAKIAEoAhhqIgogBUkNACABKAIgIgsvAAAiCUEIdCAJQQh2ckH//wNxIhAgCiAFa0sNAEEBIQUgCEEBOgC0ASAIQQA2ArABIAhCgYCAgBA3AqgBIAhCADcBxAEgCEIANwG+ASAIQgA3AbYBIAEoAgghCiAIIAYoAgg2AhAgCCAGKQIANwMIIAhBqAFqIRFBACENQQAhDyMAQSBrIgkkAAJ/AkAgCy8AAiIOQYABcQR/IAtBBGoFIAgoAgwgDkEIdCAOQQh2ckH/H3EiDEEBaiAKbEkNASAIKAIIIAogDGxBAXRqCyESQQAhDCAOQcAAcSIOBEAgCSALIAoQxgQgCSgCACEPIAkgCyAKEMcEIAkoAgAhDQsDQAJAIAkgDDYCHCAKIAxNDQAgEiAMQQF0ai8AACILQQh0IAtBCHZywbJDAACAOJQiIEMAAAAAXAR/IAQgCUEcaiAJQRhqEIUBRQ0DAn0gDgRAIA0gCSgCHEEBdCILai8AACIMQQh0IAxBCHZywbJDAACAOJQhISALIA9qLwAAIgtBCHQgC0EIdnLBskMAAIA4lAwBCyAgQwAAAAAgIEMAAAAAYBshISAgQwAAAAAgIEMAAAAAXxsLISIgCSgCGCELIAkgIbs5AxAgCSAguzkDCCAJICK7OQMAIBEgCyAJELICGiAJKAIcBSAMC0EBaiEMDAELC0EBDAELQQALIQogCUEgaiQAAkAgCkUNACAIKAK4AUUNACAIQQA2AqQBIAhCADcCnAEgCCgCzAEgEGohCSAUIQogEyELAkAgASgCIC0AAkEgcQRAIBohCiAZIQsgCEHMAWogCEGcAWogCRC9BEUNAQsgCigCACEMIAhBADYCmAEgCEIANwKQAQJAIAhBkAFqIg0gDCACIAwbIg5BAEEAEL8CRQ0AIAhBzAFqIg8gDSAJEL4ERQ0AIAhBADYCjAEgCEIANwKEAQJAIAMEQCAIQYQBaiINIA5BAEEAEL8CRQ0BIA8gDSAJEL4ERQ0BCyAIQQA2AiAgCEKBgICAEDcCGCAIQQE6ACQgGEEAQd4AENQMGiAILQC0AUEBcQRAIAggCC8BtgE7ASYgCEEAOwG2ASAIKAK4ASEFIAhBADYCuAEgCCAFNgIoIAgpArwBISMgCEIANwK8ASAIICM3AiwgCCkCxAEhIyAIQgA3AsQBIAggIzcCNAtBASEFAkAgFyACQQEQvQJFDQAgFiACQQBBABCNBUUNACADBEAgFSACQQBBABCNBUUNAQtBACEFIAgoAlwhDSAIKAJYIQ8gCCgCjAEhECAIKAKIASERIAgoAlAhEiAIKAJMIRsgCCgCmAEhHCAIKAKUASEdIAgoAkQhHiAIKAJAIR8DfyAFIA5GBH8gACAIQRhqEIAKQQAFIAUhCSAMBEBBoBIgCygCACAJQQJ0aiAKKAIAIAlNGygCACEJCwJAIAIgCU0NAAJ/IAkgH08EQEHQ0ABBADoAAEHQ0AAMAQsgCSAeagtBAToAAAJ/IAUgHU8EQEHQ0ABBADYCAEEADAELIBwgBUECdGooAgALtyEkAn8gCSAbTwRAQdDQAEIANwMAQdDQAAwBCyASIAlBA3RqCyAkOQMAIANFDQACfyAFIBFPBEBB0NAAQQA2AgBBAAwBCyAQIAVBAnRqKAIAC7chJAJ/IAkgD08EQEHQ0ABCADcDAEHQ0AAMAQsgDSAJQQN0agsgJDkDAAsgBUEBaiEFDAELCyEFCyAIQRhqEIEKGgsgCEGEAWoQLQsgCEGQAWoQLQsgCEGcAWoQLQsgCEGoAWoQLyAFRQ0BC0EADAILIAEQwAQNAAsgACAHOgBcQQELIAhB0AFqJAALygIBBX8gAC0ADEEBRwRAQQAPCwJAIAEEQCAAKAIYIAFBAXYgAWpLDQELQRRBICAAKAIQIgIgASABIAJJG0EBdEEIaiIBZ2tBACABGyIEdBDmDCICRQRAIABBADoADEEADwsgAkEBIAR0IgVBFGxqIQMgAiEBA0AgASADRgRAIABCADcCECAAKAIYIQMgACAFQQFrNgIYIANBAWpBACEBIARBH0sEf0H/////BwUgBEECdEGQxgBqKAIACyEFQQAgAxshBiAAKAIgIQMgACACNgIgIAAgBTYCHCAAIARBAXQ7AQ4DQCABIAZGBEAgAxDnDAwECyADIAFBFGxqIgIoAgQiBEEBcQRAIAAgAiAEQQJ2IAJBCGoQ6AsLIAFBAWohAQwACwAFIAFCADcCACABQQA2AhAgAUIANwIIIAFBFGohAQwBCwALAAtBAQs9ACAAKAIgRQRAQQAPCyAAIAEgASgCABDvCxDwCyIBQQBHIQAgAkUgAUVyBH8gAAUgAiABQQhqNgIAQQELCxMAIAAgASABKAIAEO8LIAIQ8QsL0wMBB38DQCAAIAFBAnRqIQgCQAJAIAFBCU0EQCAAIQMDQCADQQRqIgMhASADIAhPDQIDQCAAIAFPDQEgAUEEayIEIAEgAhDyC0EATA0BIAQgAUEEENQDIAQhAQwACwALAAsgAEEEaiIEIAAgAUEBdEF8cWoiASAEIAEgAhDyC0EASiIHGyIDIAhBCGsiBSACEPILQQBKBEAgASAEIAcbIgEgBSABIAUgAhDyC0EAShshAwsgCEEEayIHIANHBEAgAyAHQQQQ1AMLIAAiASEGIAciBCEFA0AgASAETw0CA0AgASAETw0DIAEgByACEPILIgNBAEoEQCAEIQMDQCABIANPBEAgAyEEDAQLIANBBGsiBCAHIAIQ8gsiCUUEQCADIAVJIAQhAyAFQQRrIQVFDQEgBCAFQQQQ1AMMAQsgBCEDIAlBAE4NAAsgASAESQRAIAEgBEEEENQDCyABQQRqIQEMAgUgA0UEQCABIAZLBEAgBiABQQQQ1AMLIAZBBGohBgsgAUEEaiEBDAELAAsACwALDwsgACAGIABrIAQgBmsiARDVAyAEIAUgBGsiAyAIIAVrENUDIAAgAUECdiACEO0LIANBAnYhASAIIANrIQAMAAsACw0AIAAgASACQRQQhw0LNgIBfwF+IwBBEGsiASQAIAApAgQhAiABQQA2AgwgASACQiCJNwIEIAFBBGoQpwMgAUEQaiQAC3sBBX8gAkH/////A3EiBCAAKAIccCECA0ACQCAAKAIgIAJBDGxqIgYoAgQiB0ECcQR/IAdBAnYgBEcNASAGIAEQ9AtFDQFBACAAKAIgIAJBDGxqIgAoAgRBAXFrIABxBUEACw8LIAAoAhggA0EBaiIDIAJqcSECDAALAAvhAgEHfyAALQAMQQFHBEAPCwJAIAAoAhggACgCFCIEQQF2IARqTQRAIABBABD1C0UNAQsgAkH/////A3EiBiAAKAIccCECIAAoAiAhBEF/IQUCQANAIAQgAkEMbCIIaiIJKAIEIgpBAnFFDQECQCAGIApBAnZGBEAgCSABEPQLDQEgACgCICEECyAFIAUgAiAFQX9HGyAEIAhqLQAEQQFxGyEFIAAoAhggB0EBaiIHIAJqcSECDAELCyAAKAIgIQQLIAQgAiAFIAVBf0YbQQxsaiICLQAEQQJxBEAgACAAKAIUQQFrNgIUIAAgACgCECACKAIEQQFxazYCEAsgAiABKAIANgIAIAMoAgAhASACIAZBAnRBA3I2AgQgAiABNgIIIAAgACgCFEEBaiIBNgIUIAAgACgCEEEBajYCECAHIAAvAQ5NDQAgACgCGCICIAFBA3RPDQAgACACQQhrEPULGgsLpQECA38BfiMAQSBrIgMkAAJ/IAIgAEEAEOsLIgRFIAIgAUEAEOsLIgVFckUEQCACIAAQ8wsoAgAiBCACIAEQ8wsoAgAiAkcEQCACIARrDAILIAEoAgApAgQhBiADQQA2AhwgAyAGQiCJNwIUIAAoAgApAgQhBiADQQA2AhAgAyAGQiCJNwIIIANBFGogA0EIahCfCgwBC0F/IAUgBBsLIANBIGokAAs+ACAAKAIgRQRAQaASDwsgASgCABDvCxogACgCIAR/IAAgASABKAIAEO8LEPALIgBBCGpBoBIgABsFQaASCwsPACAAKAIAIAEoAgAQ+wkLogIBBH8gAC0ADEEBRwRAQQAPCwJAIAEEQCAAKAIYIAFBAXYgAWpLDQELQQxBICAAKAIQIgIgASABIAJJG0EBdEEIaiIBZ2tBACABGyIBdCIDEOYMIgJFBEAgAEEAOgAMQQAPCyABQR1NBEAgAkEAIAMQ1AwaCyAAQgA3AhAgACgCGCEDIABBfyABdEF/czYCGCABQR9LBH9B/////wcFIAFBAnRBkMYAaigCAAshBCAAKAIgIQUgACACNgIgIAAgBDYCHCAAIAFBAXQ7AQ4CQCADRQ0AIANBAWohA0EAIQEDQCABIANGDQEgBSABQQxsaiICKAIEIgRBAXEEQCAAIAIgBEECdiACQQhqEPELCyABQQFqIQEMAAsACyAFEOcMC0EBCw0AIAAgASACQQwQhw0LEwAgACABIAEoAgAQnQogAhD6CwtXAQF+IAIpAgAhBCAAIAEpAgA3AgAgACABKAIINgIIIAAgAzYCFCAAIAQ3AgwgAEEMaiEBA0ACQCAAKAIERQ0AIAEgACgCABDNAw0AIAAQ/wsMAQsLIAALCwAgACABQRQQig0L7QIBB38gAC0ADEEBRwRAQQAPCwJAIAAoAhggACgCFCIEQQF2IARqTQRAQQAhBCAAQQAQ/QtFDQELIAJB/////wNxIgYgACgCHHAhAiAAKAIgIQRBfyEFAkADQCAEIAJBDGwiCGoiCSgCBCIKQQJxRQ0BAkAgBiAKQQJ2RgRAIAkgARD8Cw0BIAAoAiAhBAsgBSAFIAIgBUF/RxsgBCAIai0ABEEBcRshBSAAKAIYIAdBAWoiByACanEhAgwBCwsgACgCICEECyAEIAIgBSAFQX9GG0EMbGoiAi0ABEECcQRAIAAgACgCFEEBazYCFCAAIAAoAhAgAigCBEEBcWs2AhALIAIgASgCADYCACADKAIAIQEgAiAGQQJ0QQNyNgIEIAIgATYCCEEBIQQgACAAKAIUQQFqIgE2AhQgACAAKAIQQQFqNgIQIAcgAC8BDk0NACAAKAIYIgIgAUEDdE8NACAAIAJBCGsQ/QsaCyAEC+kCAQd/IAAtAAxBAUcEQEEADwsCQCAAKAIYIAAoAhQiBEEBdiAEak0EQEEAIQQgAEEAEP4LRQ0BCyACQf////8DcSIGIAAoAhxwIQIgACgCICEEQX8hBQJAA0AgBCACQRRsIghqIgkoAgQiCkECcUUNAQJAIAYgCkECdkYEQCAJIAEQ/AsNASAAKAIgIQQLIAUgBSACIAVBf0cbIAQgCGotAARBAXEbIQUgACgCGCAHQQFqIgcgAmpxIQIMAQsLIAAoAiAhBAsgBCACIAUgBUF/RhtBFGxqIgItAARBAnEEQCAAIAAoAhRBAWs2AhQgACAAKAIQIAIoAgRBAXFrNgIQCyACIAEoAgA2AgAgAkEIaiADEMQDIAIgBkECdEEDcjYCBEEBIQQgACAAKAIUQQFqIgE2AhQgACAAKAIQQQFqNgIQIAcgAC8BDk0NACAAKAIYIgIgAUEDdE8NACAAIAJBCGsQ/gsaCyAEC6QBAgZ/AX4gACgCACABKAIAIQEjAEEgayIAJAApAgQhCCAAQQA2AhwgACAIQiCJNwIUIAEpAgQhCCAAQQA2AhAgACAIQiCJNwIIQQAhAgJAIAAoAgwiAyAAKAIYRw0AIAAoAgghBCAAKAIUIQVBACEBA0AgASADRiICDQEgASAEaiEGIAEgBWogAUEBaiEBLQAAIAYtAABGDQALCyAAQSBqJAAgAgujAgEEfyAALQAMQQFHBEBBAA8LAkAgAQRAIAAoAhggAUEBdiABaksNAQtBDEEgIAAoAhAiAiABIAEgAkkbQQF0QQhqIgFna0EAIAEbIgF0IgMQ5gwiAkUEQCAAQQA6AAxBAA8LIAFBHU0EQCACQQAgAxDUDBoLIABCADcCECAAKAIYIQMgAEF/IAF0QX9zNgIYIAFBH0sEf0H/////BwUgAUECdEGQxgBqKAIACyEEIAAoAiAhBSAAIAI2AiAgACAENgIcIAAgAUEBdDsBDgJAIANFDQAgA0EBaiEDQQAhAQNAIAEgA0YNASAFIAFBDGxqIgIoAgQiBEEBcQRAIAAgAiAEQQJ2IAJBCGoQ+gsaCyABQQFqIQEMAAsACyAFEOcMC0EBC/ECAQV/IAAtAAxBAUcEQEEADwsCQCABBEAgACgCGCABQQF2IAFqSw0BC0EUQSAgACgCECICIAEgASACSRtBAXRBCGoiAWdrQQAgARsiBHQQ5gwiAkUEQCAAQQA6AAxBAA8LIAJBASAEdCIGQRRsaiEDIAIhAQNAIAEgA0YEQCAAQgA3AhAgACgCGCEDIAAgBkEBazYCGCADQQFqQQAhASAEQR9LBH9B/////wcFIARBAnRBkMYAaigCAAshBkEAIAMbIQUgACgCICEDIAAgAjYCICAAIAY2AhwgACAEQQF0OwEOA0ACQCABIAVGBEBBACEBDAELIAMgAUEUbGoiAigCBCIEQQFxBEAgACACIARBAnYgAkEIahD7CxoLIAFBAWohAQwBCwsDQCABIAVGRQRAIAMgAUEUbGpBCGoQLSABQQFqIQEMAQsLIAMQ5wwFIAFCADcCACABQQA2AhAgAUIANwIIIAFBFGohAQwBCwsLQQELCQAgAEEUEI0NC7AFAgd/AX4jAEEQayIFJAACQCACKAIERQRAQQEhBgwBCyAAIAAoAgQiCBAoRQ0AIAIoAggiBCACKAIEQewAbGohByAIA38gBCAHRgR/IAIoAlQiBAR/IANBgIACciADIAQoAgQbBSADCwUgAyAEKAJYQQBHaiEDIARB7ABqIQQMAQsLIgNBCHQgA0GA/gNxQQh2cjsAACADQYCABE8EQCAAIAAoAhhBCHI2AhgMAQsgBUEANgIMIwBBIGsiAyQAIAIoAggiBCACKAIEQewAbGohBwNAAkAgBCAHRiIJDQAgBCkCTCEKIANBADYCHCADIApCIIk3AhQgA0EIaiADQRRqIAAQjAggACgCGA0AIAUgBSgCDCAEKAJMajYCDCAEQewAaiEEDAELCyADQSBqJAAgCUUNACAIIAUoAgxBBEEIIAEbaiIDQQh0IANBgP4DcUEIdnI7AAIgA0GAgARPBEAgACAAKAIYQQhyNgIYDAELIwBBIGsiAyQAAkAgAUUNACACKAJUIgRFDQAgBCkCBCEKIANBADYCHCADIApCIIk3AhQgA0EIaiADQRRqIAAQjAgLIAJBDGohCCACKAIIIgQgAigCBEHsAGxqIQcCfwJAA0AgBCAHRg0BIAMgBEEkajYCBAJAIAggA0EEaiADEO4LRQ0AIAMoAgAhBgJAIAEEQCAGIAIoAlRGDQELIAYpAgQhCiADQQA2AhwgAyAKQiCJNwIUIANBCGogA0EUaiAAEIwICyAEKQJYIQogA0EANgIcIAMgCkIgiTcCFCADQQhqIANBFGogABCMCCAAKAIYDQAgBEHsAGohBAwBCwtBAAwBC0EBIAFFDQAaQQEgAi0AWEEBcUUNABogA0EAOgAUIAAgA0EUahCNCEEARwsgA0EgaiQAIQYLIAVBEGokACAGC98BAQN/IwBBEGsiAyQAQaASIQQgAyAAKAAIIgIEfyAAIAJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyagVBoBILNgIMIAEgA0EMahDaARogAyAAKAAMIgIEfyAAIAJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyagVBoBILNgIIIAEgA0EIahDaARogAyAAKAAQIgIEfyAAIAJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyagVBoBILNgIEIAEgA0EEahDaARogA0EQaiQAC8kOAQx/IwBBIGsiCiQAIAEoAgQiBUEAIAVBAEobIQwCQCAAQTxqIgYoAgAiBUEASA0AQQEhDyAFIAxPDQAgBSEEA0AgBCAMSQRAIAQgBEEBdmpBCGohBAwBCwsCfyAEQcjj8ThPBEAgBUF/cyEEQQAMAQsCfwJAIARFBEAgBkEIaiEHDAELQQAgBEEkbBDmDCIIRQ0BGiAGQQhqIQcDQCAJIAYoAgRPDQEgCCAJQSRsIgVqQQBBJBDUDCINIAYoAgggBWoiDigCADYCACANQQRqIA5BBGoQxAMgDSAOKQIQNwIQIA1BGGogDkEYahDEAyAGKAIIIAVqEIsMGiAJQQFqIQkMAAsACyAHKAIAEOcMIAgLIgUgBEVyRQRAIAQgBigCACIFTQ0CIAVBf3MhBEEADAELIAYgBTYCCEEBCyEPIAYgBDYCAAsgDwRAAkAgBigCBCIFIAxJBEAgBigCBCEEA0AgBCAMSQRAIAYoAgggBEEkbGpBAEEkENQMGiAGIAYoAgRBAWoiBDYCBAwBCwsMAQsgBSAMTQ0AIAYgDBCKDAsgBiAMNgIECyAAIAI2AkggAEHMAGoiCCACLwAGIgJBCHQgAkEIdnJB//8DcUEBQQAQvwIaIAAoAlAhBEEAIQICQANAAkAQ0gEhBSACIARPBEAgACAFNgJYIABBMGogACgCSC8ABiICQQh0IAJBCHZyQf//A3EQtwcaIAAoAkBFDQMgACgCUEUNAyAAKAI0DQEMAwUCfyACIAAoAlAiBE8EQEHQ0ABBADYCAEHQ0AAMAQsgACgCVCACQQJ0agsgBTYCACACQQFqIQIMAgsACwtBACEEIAAoAkQgASgCACgCACAAIAggA0EAEIYMAkAgASgCBEUEQEHQ0ABBADYCAAwBCyABKAIAKAIAQaASRw0AIAMoAhAhBCAAQQAQ+gEgCkEUaiADQZwEahC4ASAKIAooAhw2AhAgCiAKKQIUNwMIIAooAhQhBQNAAkAgCigCDCICQX9HDQAgCigCCCAFRw0AIAAoAlhBDGogACgCVCgCAEEMahDnASAEQQJxQQF2IQQMAgsgACgCVCgCAEEMaiACEI4BIApBCGoQvQEMAAsAC0EBIQIDQCABKAIEIAJNBEAjAEEQayIHJAAgACgCECEIIAdBADYCDCAHQgA3AgQCQCAHQQRqIAhBAEEAEL8CRQ0AIAAoAiwhBSAHKAIMIQIDQCAIIAtGBEAgB0EEakHXABCJCiAAEP0BQQAhCwNAIAggC0YNAyAAIAcoAgwgC0ECdGooAgAQ+gEgC0EBaiELDAALAAUgAiALQQJ0agJ/IAsgACgCKE8EQEHQ0ABBADYCAEEADAELIAUgC0ECdGooAgALNgIAIAtBAWohCwwBCwALAAsgB0EEahAtIAdBEGokAAJAIAQEQCADKAKIASICIAMoAoQBQQN0aiEEA0AgAiAERg0CIAIoAgQhBQJ/IAAoAjRFBEBB0NAAQQBBMBDUDBpB0NAADAELIAAoAjgLIAUQ+gEgAkEIaiECDAALAAsCfyAAKAI0RQRAQdDQAEEAQTAQ1AwaQdDQAAwBCyAAKAI4CyAAKAJYEIcMIAAoAlQoAgBBDGogACgCWEEMahDoAQJ/IAAoAjRFBEBB0NAAQQBBMBDUDBpB0NAADAELIAAoAjgLAn8gACgCUEUEQEHQ0ABBADYCAEEADAELIAAoAlQoAgALEIcMC0EBIQIDQCAAKAI0IAJNBEBBACECA0AgAiABKAIEIgRPDQUCfyACIAAoAkBPBEBB0NAAQQBBJBDUDBogASgCBCEEQdDQAAwBCyAAKAJEIAJBJGxqCyEJAn8gAiAETwRAQdDQAEEANgIAQQAMAQsgASgCACACQQJ0aigCAAshDkEAIQQDQCAJKAIIIARNBEACQCAJQRhqIAkoAgBBAUEAEL8CRQ0AIAMoAogBIgQgAygChAFBA3RqIQ8DQCAEIA9GDQEgBCgCACIHIAkoAgBPDQEgACAOIAQoAgQQ2QEiBUEQdiINEPsBIQhBoBIgACgCOCANQTBsaiAAKAI0IA1NGyAFQf//A3EQ+wEhBSAJKAIgIAdBAnRqIAUgCEEQdHI2AgAgBEEIaiEEDAALAAsFAkBBoBIgACgCOCAEQTBsaiAAKAI0IARNGyIIKAIQRQ0AIAkoAgwgBEECdGooAgAiBQR/QSAgCCAFEPsBIgVna0EAIAUbBUEBCyEFIAUgCSgCFE0NACAJIAU2AhQLIARBAWohBAwBCwsgAkEBaiECDAALAAUgACgCOCACQTBsagJ/IAIgACgCUE8EQEHQ0ABBADYCAEEADAELIAAoAlQgAkECdGooAgALEIcMIAJBAWohAgwBCwALAAUCfyACIAAoAkBPBEBB0NAAQQBBJBDUDBpB0NAADAELIAAoAkQgAkEkbGoLIAEoAgAgAkECdGooAgAgACAIIANBARCGDCACQQFqIQIMAQsACwALIApBIGokAAuUAgEKfwNAIAcgACgCQE8iCkUEQCAHQSRsIAdBAWohByAAKAJEaiEEIwBBEGsiBSQAIARCgYCAgBA3AhAgASgCiAEiBiABKAKEAUEDdGohC0EBIQkCQANAIAYgC0YNASAGKAIAIgMgBCgCAE8NASAFIANBAnQiAyAEKAIgaigCADYCDCACIAVBDGogBUEIahCFAQRAIAQoAiAgA2ogBSgCCCIIKAIAIgM2AgAgBEEBQSAgA0EQdmdrIANBgIAESRsiAyAEKAIQIgwgAyAMSxs2AhAgBEEgIAgvAQAiA2drQQEgAxsiAyAEKAIUIgggAyAISxs2AhQgBkEIaiEGDAELC0EAIQkLIAVBEGokACAJDQELCyAKC8ICAAJAAkACQAJAIAIoAgRFBEBB0NAAQQBBJBDUDBoMAQsgAigCACgCHA0BCyAAQQA2AAgMAQsgAEEIaiABAn8gAigCBEUEQEHQ0ABBAEEkENQMGkHQ0AAMAQsgAigCAAsQiAxFDQELAkACQAJAIAIoAgRBAU0EQEHQ0ABBAEEkENQMGgwBCyACKAIAKAJADQELIABBADYADAwBCyAAQQxqIAECfyACKAIEQQFNBEBB0NAAQQBBJBDUDBpB0NAADAELIAIoAgBBJGoLEIgMRQ0BCwJAAkACQCACKAIEQQJNBEBB0NAAQQBBJBDUDBoMAQsgAigCACgCZA0BCyAAQQA2ABAMAQsgAEEQaiABAn8gAigCBEECTQRAQdDQAEEAQSQQ1AwaQdDQAAwBCyACKAIAQcgAagsQiAxFDQELQQEPC0EAC2MBAX8DQCAAKAJQIAFNBEAgACgCWBDTASAAQTBqEJoDIABBPGoQiQwFIAAoAlQgAUECdGooAgAQ0wEgAUEBaiEBDAELCyAAQcwAahAtIABBPGoQiQwgAEEwahCaAyAAEJ8CGgvcBAEFfyAAQoCAgIAQNwIQIABCADcCACAAQgA3AgggAEEANgIgIABCADcCGAJAIAUEQCABEPwCRQ0BCyAAAn9BACEFAkACQAJAIAEtAAAOAgABAgsgAS0AAUEEdkEDcUEBagwCCyABLQABQQR2QQNxQQFqIQULIAULQQN0An9BACEFAkACQAJAIAEtAAAOAgABAgsgAS0AAUEPcUEBagwCCyABLQABQQ9xQQFqIQULIAULazYCECAAQQRqIAMoAgRBAUEAEL8CGiAAKAIMIQZBACEFA0AgAygCBCAFTQRAAkAgBCgChAEhBUF/IQdBfyEGA0AgBUUNASAEKAKIASAFQQN0aiIIQQhrKAIAIgkgCSAHIAEgCEEEaygCABDZASIJIAZGIgobIAdBf0YiCBshB0EHQQBBBSAKGyAIGyIKQQdHQQAgChsNASAJIAYgCBshBiAFQQFrIQUMAAsACwUCfyAFIAAoAghPBEBB0NAAQQA2AgBB0NAADAELIAYgBUECdGoLQQA2AgAgBUEBaiEFDAELCyAHQX9GDQAgACAHQQFqNgIAIAQoAogBIgUgBCgChAFBA3RqIQgDQCAFIAhGDQEgBSgCACAAKAIATw0BIAIgASAFKAIEENkBIgZBEHYiBBD6ASAGQf//A3EhBwJAAkAgBCAAKAIISQRAIAcgACgCDCAEQQJ0aiIGKAIASw0BDAILQdDQAEEANgIAQdDQACEGIAdFDQELIAYgBzYCAAsgBCADKAIETw0BIAMoAgggBEECdGooAgBBDGogBxCOASAFQQhqIQUMAAsACwtlAQN/IwBBIGsiAiQAIAJBFGogARC4ASACQQhqIAEQuQEgAigCCCEBIAIoAgwhAwNAAkAgAigCGCIEIANHDQAgAigCFCABRw0AIAJBIGokAA8LIAAgBBD6ASACQRRqEL0BDAALAAu+BAEHfyAAQQA2AAACfyABECEiAyACKAIcQf//A0siBDoAACAERQRAAn8gAigCFCIHIAIoAhBqQQdqQQN2IQQgAigCICEJAkAgAigCHCIGQQAgB0ERa0FwSSAEQQVrQXxJchsNACABIAMQKEUNACADIAZBCHQgBkGA/gNxQQh2cjsAAiADIARBBHRB8AFqIAdBAWtyOgABIAEgBCAGbEEBEIICIghFDQADQCAFIAZGBEBBAQwDBQJAIAkgBUECdGooAgAiAkUNACACQf//A3EgAkEQdiAHdHIhAyAEIQIDQCACRQ0BIAggAkEBayICaiADOgAAIANBCHYhAwwACwALIAVBAWohBSAEIAhqIQgMAQsACwALQQALDAELAn8gAigCFCIHIAIoAhBqQQdqQQN2IQQgAigCICEJAkAgAigCHCIFQQAgB0ERa0FwSSAEQQVrQXxJchsNACABIAMQhwZFDQAgAyAEQQR0QfABaiAHQQFrcjoAASADIAVBGHQgBUGA/gNxQQh0ciAFQQh2QYD+A3EgBUEYdnJyNgACIAEgBCAFbEEBEIICIghFDQADQCAFIAZGBEBBAQwDBQJAIAkgBkECdGooAgAiAkUNACACQf//A3EgAkEQdiAHdHIhAyAEIQIDQCACRQ0BIAggAkEBayICaiADOgAAIANBCHYhAwwACwALIAZBAWohBiAEIAhqIQgMAQsACwALQQALCyICBEAgASAAIAFBARCGAkEAQQAQ/gggAg8LIAEQiQIgAgsnACAAKAIABEAgAEEAEIoMIAAoAggQ5wwLIABBADYCCCAAQgA3AgALPwECfyAAKAIEIgIgAWshAyAAKAIIIAJBJGxqIQIDQCADBEAgA0EBayEDIAJBJGsQiwwhAgwBCwsgACABNgIECxIAIABBGGoQLSAAQQRqEC0gAAvuAQEDfyAALQAsRQRAIAEQRyECIABBAToALCAAIAI2AigLAn8gACABQfLC2bMGEEMiARA1A0AgABA2IAAoAgQiAkUEQCAAEDcgAQwCCyACIAAQjQwhBCAAKAIgIQMCQAJAAkACQCAEBEAgA0UNAiAAQQA2AiAgAiAAEI0MIQIgACgCICAAEDcgAkVyDQEMAwsCQCADRQ0AIAAtABwNACAAIAEQFiICNgIEIAAgAiABKAIQajYCCCACDQQLIAAQNwsgARAPQaASDAQLIAAQNwsgASgCBARAIAFBADYCBAsgAQwCCyAAQQE6ABwMAAsACwvxAQEEfyMAQSBrIgIkAAJAIAEoAgwgACABKAIEa0kiAw0AIAEoAgggAGsiBEEESQ0AIAMgAC8AAEGAAkdyIARBEElyDQAgAC8ACkGAKEcNACAALwAIIgNBCHQgA0EIdnJB//8DcUECdEEEaiAALwAOIgNBCHQgA0EIdnJB//8DcUsNACACQRRqIAAQeyABIAIoAhQgAigCGEEUEKUERQ0AIAJBCGogABB7IAEgAigCCCACKAIMQRRsaiAALwAMIgFBCHQgAUEIdnJB//8DcSAALwAOIgBBCHQgAEEIdnJB//8DcRClBCEFCyACQSBqJAAgBQswACAAQRRBABCCAiIABEAgACABKQAANwAAIAAgASgAEDYAECAAIAEpAAg3AAgLIAAL7gEBA38gAC0ALEUEQCABEEchAiAAQQE6ACwgACACNgIoCwJ/IAAgAUHywtmLBhBDIgEQNQNAIAAQNiAAKAIEIgJFBEAgABA3IAEMAgsgAiAAEJAMIQQgACgCICEDAkACQAJAAkAgBARAIANFDQIgAEEANgIgIAIgABCQDCECIAAoAiAgABA3IAJFcg0BDAMLAkAgA0UNACAALQAcDQAgACABEBYiAjYCBCAAIAIgASgCEGo2AgggAg0ECyAAEDcLIAEQD0GgEgwECyAAEDcLIAEoAgQEQCABQQA2AgQLIAEMAgsgAEEBOgAcDAALAAsL7AEBBH8CQCABKAIMIAAgASgCBGtJIgINACABKAIIIABrIgRBBEkNACACIAAvAAAiBUEIdCAFQQh2ckH//wNxQQFrQQFLciAEQQhJcg0AIAAvAAYiAkEIdCACQQh2ckH//wNxIQQgAEEIaiECA0AgAyAERwRAIAIgARCjBARAIAIgAi8AACIFQQh0IAVBCHZyQf//A3FBAnRqQQJqIQIgA0EBaiEDDAIFQQAPCwALC0EBIQMgAC8AACIEQQh0IARBCHZyQf//A3FBAkkNACACIAEgABChBAR/IAJBBGogASAAEKAEBUEACyEDCyADCxMAIAAgARCpCiAAQQJqIAIQqQoLVAEBfwJAIAAoAgQiAiAAKAIATgRAIAAgAkEBakEAENgBRQ0BIAAoAgQhAgsgACACQQFqNgIEIAAoAgggAkECdGogASgAADYAAA8LQdDQAEEANgIAC2ABAn8CQCAALwAAIgIgAS8AACIDRwRAIAJBCHQgAkEIdnIhASADQQh0IANBCHZyIQIMAQsgAS8AAiIBQQh0IAFBCHZyIQIgAC8AAiIAQQh0IABBCHZyIQELIAHBIALBawvuAQEDfyAALQAsRQRAIAEQRyECIABBAToALCAAIAI2AigLAn8gACABQfLC2ZsGEEMiARA1A0AgABA2IAAoAgQiAkUEQCAAEDcgAQwCCyACIAAQlQwhBCAAKAIgIQMCQAJAAkACQCAEBEAgA0UNAiAAQQA2AiAgAiAAEJUMIQIgACgCICAAEDcgAkVyDQEMAwsCQCADRQ0AIAAtABwNACAAIAEQFiICNgIEIAAgAiABKAIQajYCCCACDQQLIAAQNwsgARAPQaASDAQLIAAQNwsgASgCBARAIAFBADYCBAsgAQwCCyAAQQE6ABwMAAsACwtSAQF/AkAgASgCDCAAIAEoAgRrSQ0AIAEoAgggAGtBCEkNACAALwAAQYACRw0AIAEoAgwgAEEEaiIAIAEoAgRrTyABKAIIIABrQQNLcSECCyACC+4BAQN/IAAtACxFBEAgARBHIQIgAEEBOgAsIAAgAjYCKAsCfyAAIAFB1ILRmgUQQyIBEDUDQCAAEDYgACgCBCICRQRAIAAQNyABDAILIAIgABCXDCEEIAAoAiAhAwJAAkACQAJAIAQEQCADRQ0CIABBADYCICACIAAQlwwhAiAAKAIgIAAQNyACRXINAQwDCwJAIANFDQAgAC0AHA0AIAAgARAWIgI2AgQgACACIAEoAhBqNgIIIAINBAsgABA3CyABEA9BoBIMBAsgABA3CyABKAIEBEAgAUEANgIECyABDAILIABBAToAHAwACwALC7gFAQl/IwBBEGsiBCQAAkAgASgCDCAAIAEoAgRrSQ0AIAEoAgggAGtBFEkNACAALwAAQYACRw0AIAAvAAJFDQAgAEEIaiABEJQEBH8gASAAIAAoAAgiAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnJqIAAvAAYiAkEIdCACQQh2ckH//wNxEMkKBUEAC0UNACAEIAAgACgADiICQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZycmo2AgwgAEEOaiABEJQEBH8gASAAIAAoAA4iAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnJqIgggAC8ADCIAQQh0IABBCHZyQf//A3EiCRD5BAR/QQAhAANAIAAgCUYiCkUEQCAAQQF0IQMgAEEBaiEAAn8gBCgCDCEFQQAhAgJAIAMgCGoiByABEJsFRQ0AQQEhBgJAIAcvAAAiA0UNAAJ/AkAgASgCDCAFIANBCHQgA0EIdnJB//8DcWoiAyABKAIEa0kNACABKAIIIANrQQJJDQBBASECAkACQAJAAkAgAy8AACIFQQh0IAVBCHZyQf//A3FBAWsOBAABAgMECyABKAIIIANrQQtLIAEoAgwgAyABKAIEa09xDAQLIAEoAgggA2tBE0sgASgCDCADIAEoAgRrT3EMAwsgASgCCCADa0EPSyABKAIMIAMgASgCBGtPcQwCC0EAIQICQCABKAIMIAMgASgCBGtJDQAgASgCCCADa0EISQ0AIAEgA0EIaiADLwACIgJBCHQgAkEIdnJB//8DcRCkBCECCwsgAgsNACABKAIgIgJBH0sNASABIAJBAWo2AiBBACEGIAEtABxBAUcNACAHQQA7AABBASEGCyAGDAELQQALDQELCyAKBUEACwVBAAshAwsgBEEQaiQAIAMLTgAgACABKQIANwIAIAAgASgCCDYCCCAAIAM2AhAgACACNgIMIABBDGohAQNAAkAgACgCBEUNACABIAAoAgAQmQwNACAAEK4FDAELCyAACw8AIAAoAgAoAgAgARDCCQstAQF/AkAgAC0AAEEBRw0AIAAgAUEAEIYFIgJFDQAgAEF/NgIEIAIgARCLBQsLMwACQCABQX9GDQAgAC0AAEEBcUUNACAAQX82AgQgACABQQEQhgUiAEUNACAAIAEQigULC/4CAQd/IAFBf0YgAC0AAEEBR3IgASACS3JFBEAgAEF/NgIEIAFBCXYiA0EBaiIEIAMgAUH/A3EiBRshBwJAIAVFIAJBCXYiBiACQf8DcSIIQf8DR2siBSAHTnENACAAIAFBABCGBSIJRQ0AIAkgASACIARBCXRBAWsgAyAGRhsQngwLAkAgAyAGRiAIQf8DRnINACAAIAJBABCGBSIBRQ0AIAEgAkGAfHEgAhCeDAtBACEBQQAhAyMAQRBrIgIkACAFIAdOBEAgAkEANgIMIAJCADcCBCAAIAJBBGoQoAwEQANAIAAoAhAiBiADTQRAIAAgAkEEaiABEKEMIAAgAUEBEIkFGgUgByADQQN0IgQgACgCFGooAgAiCEwgBSAITnFFBEAgACgCFCAEaiEEAn8gASAGTwRAQdDQAEIANwMAQdDQAAwBCyAAKAIUIAFBA3RqCyAEKQIANwIAIAFBAWohAQsgA0EBaiEDDAELCwsgAkEEahAtCyACQRBqJAALC/YBAQV/QQEhBQJAIAAtAABBAUcNAEEAIQUgAkF/RiABQX9GciABIAJLcg0AIABBfzYCBCAAIAFBARCGBSEDAkAgAUEJdiIEIAJBCXYiBkYEQCADRQ0CIAMgASACEJ8MDAELIANFDQEgAyABIARBAWoiAUEJdEEBaxCfDANAIAEgBkkEQCAAIAFBCXRBARCGBSIERQ0DIARBCGohB0EAIQMDQCADQQhHBEAgByADQQN0akJ/NwMAIANBAWohAwwBCwsgBEGABDYCACABQQFqIQEMAQsLIAAgAkEBEIYFIgBFDQEgACACQYB8cSACEJ8MC0EBIQULIAULpgECA38BfiAAQQhqIgUgAUEGdkEHcSIEQQN0aiEDAkAgBCACQQZ2QQdxIgRGBEBCAiACQT9xrYZCf4VCASABQT9xrYZ8IQYgAyEBDAELIAMgAykDAEJ/IAFBP3GthkJ/hYM3AwAgBSAEQQN0aiIBIANBCGoiA0cEQCADQQAgASADaxDUDBoLQn4gAkE/ca2GIQYLIAEgASkDACAGgzcDACAAQX82AgALlgECA38CfiAAQQhqIgQgAUEGdkEHcSIFQQN0aiEDQn8hBkJ/IAFBP3GthiEHAkAgAkEGdkEHcSIBIAVGBEAgByEGIAMhAQwBCyADIAMpAwAgB4Q3AwAgBCABQQN0aiIBIANBCGoiA0YNACADQf8BIAEgA2sQ1AwaCyABIAEpAwBCAiACQT9xrYYgBnyENwMAIABBfzYCAAsbACABIAAoAhwQlgYiAUUEQCAAQQA6AAALIAELugMCBn8BfiMAQRBrIgUkACABKQIEIQkgBUEANgIMIAUgCUIgiTcCBCAFQX82AgAgBSgCCCEDIAUoAgQhBgNAIAMEQCAGIAUoAgA2AgAgBkEEaiEGIANBAWshAwwBCwsgASgCCCEGIAAoAhQhBwNAIAIgBEcEQAJ/IAQgACgCEE8EQEHQ0ABCADcDAEEADAELIAcgBEEDdGooAgQLIQMCfyADIAEoAgRPBEBB0NAAQQA2AgBB0NAADAELIAYgA0ECdGoLIAQ2AgAgBEEBaiEEDAELC0EAIQJBACEEA0AgACgCHCIGIAJLBEBBoBIgASgCCCIHIAJBAnQiCGogASgCBCIDIAJNGygCAEF/RwRAAn9BoBIgAiAESwR/IAAoAiAiAyACQcgAbGohBwJ/IAQgBk8EQEHQ0ABBAEHIABDUDBpB0NAADAELIAMgBEHIAGxqCyAHQcgAENIMGiABKAIEIQMgASgCCAUgBwsgCGogAiADTxsoAgAiAyAAKAIQTwRAQdDQAEIANwMAQdDQAAwBCyAAKAIUIANBA3RqCyAENgIEIARBAWohBAsgAkEBaiECDAELCyAFQRBqJAAL2QEBA38jAEEQayICJAAgAiAAKAIIIgM2AgwgAUEJdiEEAn8CQCADIAAoAhBPDQAgACgCFCADQQN0aiIDKAIAIARHDQAgACgCICADKAIEQcgAbGoMAQsgAkEANgIIIAIgBDYCBEEAIABBDGogAkEEaiACQQxqQQAQiAVFDQAaIAAgAigCDCIDNgIIIAAoAiBBoBIgACgCFCADQQN0aiAAKAIQIANNGygCBEHIAGxqCyEAIAJBEGokACAARQRAQQAPCyAAIAFBA3ZBOHFqKQMIIAFBP3GtiKdBAXELqAQCBn8BfiMAQRBrIgMkAAJAIAEoAgAiAkF/RgRAIAEgACgCHCEBAn8DQEF/IAFBAWsiAUEASA0BGkGgEiAAKAIgQaASIAAoAhQgAUEDdGogACgCECABTRsiAigCBCIEQcgAbGogACgCHCAETRsiBBCyBQ0ACyACKAIAQQl0IAQQpAxqCyIANgIAIABBf0chAAwBCyADQQA2AgwgAyACQQl2NgIIIABBDGogA0EIaiADQQRqQQIQiAUaAn8CfwJAIAMoAgQiAiAAKAIQTw0AIAAoAhQgAkEDdGoiAigCACADKAIIRw0AQaASIAAoAiAgAigCBCICQcgAbGogACgCHCACTRshAiABAn9BfyABKAIAQf8DaiIFQf8DcSIGQf8DRg0AGiACQQhqIgcgBkEGdiICQQN0aikDAEJ/Qn8gBUE/cSIFQQFqrYZCf4UgBUE/RhuDIQgDfyAIUEUEQEEBIQQgCHmnIAJBBnRyQT9zDAILIAJBAEwEf0F/BSAHIAJBAWsiAkEDdGopAwAhCAwBCwsLNgIAIARFDQAgASgCACAAKAIUIAMoAgRBA3RqKAIAQQl0agwBC0F/IQIDQCADIAMoAgRBAWsiBDYCBEEAIARBAEgNAhogACgCICAAKAIUIARBA3RqKAIEQcgAbGoQpAwiBEF/Rg0ACyAAKAIUIAMoAgRBA3RqKAIAQQl0IARqCyECQQELIQAgASACNgIACyADQRBqJAAgAAtBAgF/AX5BCCEBIABBCGohAANAIAFBAEwEQEEADwsgACABQQFrIgFBA3RqKQMAIgJQDQALIAJ5pyABQQZ0ckE/cwsmAQF/IAAoAgAgAEEEahCvBRogACgCCCIBBEAgACABQQFrNgIICwuBAwEIfyMAQZABayIIJAACQCAAKAIEIgJBf0cEQCACIAEoAgRLDQELAkADQAJAIAMgACgCEE8NACAFIAEoAhBPDQAgBUEDdCIHIAEoAhRqKAIAIQIgACgCFCADQQN0aiIGKAIAIQQgCEHIAGoiCSAAKAIgIAYoAgRByABsakHIABDSDBogAiAESwRAIAkQsgVFDQMLIAIgBE8EQCAIIAEoAiAgASgCFCAHaigCBEHIAGxqQcgAENIMIgJByABqIQRBACEHAkAgBCgCACIGQX9HBEAgBiACKAIASw0BCyAEQQhqIQYgAkEIaiEJQQAhAgNAIAJBCEYiBw0BIAJBA3QhBCACQQFqIQIgBCAGaikDACAEIAlqKQMAQn+Fg1ANAAsLIAdFDQMgA0EBaiEDCyAFQQFqIQUMAQsLA0AgAyAAKAIQTyIFDQIgA0EDdCEBIANBAWohAyAAKAIgIAEgACgCFGooAgRByABsahCyBQ0ACwwBC0EAIQULIAhBkAFqJAAgBQsQACAAQdsAQQBBACABEKwMCxAAIABB3ABBAUEBIAEQrAwLEAAgAEHdAEEBQQAgARCsDAsQACAAQd4AQQBBASABEKwMCwsAIAAgASACELAMC5IIARB/IwBB0ABrIgskACAALQAAQQFGBEAgAEF/NgIEIAAoAhwhCCAEKAIcIQkgC0EANgJMIAtCADcCRAJAIAJFBEAgACALQcQAahCgDEUNAQsDQCAAKAIUIREgBCgCFCEOIAQoAhAhEiAAKAIQIQwDQCARIAVBA3QiE2ohDQNAIAUgCE8gBiAJT3JFBEACfyAFIAxJIg9FBEBB0NAAQgA3AwBBAAwBCyANKAIAC0GgEiAOIAZBA3RqIAYgEk8bIhQoAgAiEEYEQCACRQRAIAUgB0sEQAJ/IA9FBEBB0NAAQgA3AwBB0NAADAELIAAoAhQgE2oLIQ0CfyAHIAxPBEBB0NAAQgA3AwBB0NAADAELIAAoAhQgB0EDdGoLIA0pAgA3AgALIAdBAWohBwsgBkEBaiEGIAVBAWohBSAKQQFqIQoMBAsCfyAPRQRAQdDQAEIANwMAIBQoAgAhEEEADAELIA0oAgALIBBJBEAgBUEBaiEFIAIgCmohCgwDBSAGQQFqIQYgAyAKaiEKDAILAAsLCwsgCCAFa0EAIAIbIApqIAkgBmtBACADG2ohDiACRQRAIAAgC0HEAGogBxChDCAHIQgLIAAgDkEBEIkFRQ0AIA4hBSAIIQYDQCAEKAIUIgxBCGshDSAAKAIUIgdBCGshDwJAA0AgDyAGQQN0aiEQA0AgBkUgCUVyDQIgECgCACIRIA0gCUEDdGooAgAiCkYEQCAHIAVBAWsiBUEDdCIKaiAHIAZBAWsiBkEDdCIMaikCADcCACALIAAoAiAgACgCFCAMaigCBEHIAGxqQQhqIAQoAiAgBCgCFCAJQQFrIglBA3RqKAIEQcgAbGpBCGogAREGACAAKAIgIAAoAhQgCmooAgRByABsakEIaiALQcAAENIMGiAAKAIgIAAoAhQgCmooAgRByABsakF/NgIADAQLIAogEUkEQCAGQQFrIQYgAkUNAiAHIAVBAWsiBUEDdGogByAGQQN0aikCADcCAAwECyAJQQFrIQkgA0UNAAsLIAcgBUEBayIFQQN0aiIHIAg2AgQgByAKNgIAIAAoAiAgCEHIAGxqIAQoAiAgDCAJQQN0aigCBEHIAGxqQcgAENIMGiAIQQFqIQgMAQsLIAZFIAJFckUEQANAIAAoAhQiASAFQQFrIgVBA3RqIAEgBkEBayIGQQN0aikCADcCACAGDQALCyADRSAJRXJFBEADQCAEKAIUIAlBAWsiCUEDdGoiASgCACECIAAoAhQgBUEBayIFQQN0aiIDIAg2AgQgAyACNgIAIAAoAiAgCEHIAGxqIAQoAiAgASgCBEHIAGxqQcgAENIMGiAIQQFqIQggCQ0ACwsgACAOQQEQiQUaCyALQcQAahAtCyALQdAAaiQACzYBAn8DQCADQQhHBEAgACADQQN0IgRqIAIgBGopAwAgASAEaikDAIQ3AwAgA0EBaiEDDAELCwskAQF/IwBBQGoiAyQAIAMgAhCxDCAAIAEgAxCwDCADQUBrJAALJAEBfyMAQUBqIgMkACADIAEQsQwgACADIAIQsAwgA0FAayQACzcBAn8DQCADQQhGRQRAIAAgA0EDdCIEaiACIARqKQMAIAEgBGopAwCDNwMAIANBAWohAwwBCwsLMQECfwNAIAJBCEZFBEAgACACQQN0IgNqIAEgA2opAwBCf4U3AwAgAkEBaiECDAELCwu4AQIFfwF+IwBBEGsiAiQAIAApAgQhByACQQA2AgwgAiAHQiCJNwIEIwBBEGsiBCQAIARBDGohAyABKAIAIQUgAigCBCEGIAIoAgghAUEAIQACQAJAA0AgACABRwRAIAUgBiAAQQxsaigCAEYEQCADDQMMBAUgAEEBaiEADAILAAsLDAELIAMgADYCAAsgACABSSEAIAQoAgwhASACKAIEIARBEGokACACQRBqJAAgAUEMbGpBACAAGwuiAgEEfyAALQAMQQFHBEBBAA8LAkAgAQRAIAAoAhggAUEBdiABaksNAQtBEEEgIAAoAhAiAiABIAEgAkkbQQF0QQhqIgFna0EAIAEbIgF0IgMQ5gwiAkUEQCAAQQA6AAxBAA8LIAFBG00EQCACQQAgAxDUDBoLIABCADcCECAAKAIYIQMgAEF/IAF0QX9zNgIYIAFBH0sEf0H/////BwUgAUECdEGQxgBqKAIACyEEIAAoAiAhBSAAIAI2AiAgACAENgIcIAAgAUEBdDsBDgJAIANFDQAgA0EBaiEDQQAhAQNAIAEgA0YNASAFIAFBBHRqIgIoAgQiBEEBcQRAIAAgAiAEQQJ2IAJBCGoQMRoLIAFBAWohAQwACwALIAUQ5wwLQQELbwEBfwJAIAEoAgwgACABKAIEa0kNACABKAIIIABrQQxJDQACQCABKAIMIABBBGoiACABKAIEa0kNACABKAIIIABrQQhJDQAgASAAQQhqIAAvAAAiAEEIdCAAQQh2ckH//wNxQQR0EJMEIQILCyACC8kCAgR/AX4jAEEQayIEJAAgBEEANgIMIARBADYCDAJAIABBEGoQ+QMgASgCAGoiBkEASA0AIAEoAgQiA0UNACAGIAMoAAAiA0EYdCADQYD+A3FBCHRyIANBCHZBgP4DcSADQRh2cnJPDQAgBCAGNgIMQQEhBQsCQAJAIAUEQCAAKALIICIFQQpJDQELIAAgACgCBEEBajYCCAwBCyAAIAApAwAiBzcDoCAgACAFQQFqNgLIICAAQaggaiIDIAAoAgg2AgAgACAFQRRsaiIFQdwgaiAAQbAgaiIGKAIANgIAIAVBzCBqIAc3AgAgBUHUIGogAykCADcCACAEIAEgBCgCDBDVBiAEKQMAIQcgBiAEKAIMNgIAIAAgAjYCrCAgA0EANgIAIAAgBzcDoCAgACADKAIANgIIIAAgACkDoCA3AwALIARBEGokAAsgACAALQC1IEUEQCAAEPEDIABBAToAtSALIABBADYCFAtBACABLQAARQRAIAFBAToAACABIABBqCJqELoMCyAAIAIpAwA3A6giIABBsCJqIAIpAwg3AwAgASAAQagiahC6DAtPACABLQAARQRAIAFBAToAACABIABBqCJqELoMCyABIAIQugwgASADELoMIABBsCJqIAQpAwg3AwAgACAEKQMANwOoIiABIABBqCJqELoMCxwAIAAgASACIAMgBBC4DCAAIAEgBSAGIAcQuAwLZAEBfCABKwMAIgIgACsDCGMEQCAAIAI5AwggASsDACECCyAAKwMYIAJjBEAgACACOQMYCyABKwMIIgIgACsDEGMEQCAAIAI5AxAgASsDCCECCyAAKwMgIAJjBEAgACACOQMgCws4AQJ/QQEhAgJAIAAtABRBAUcNACAAQRRqIgMgASAAKAIEayIAEOABDQAgAyAAEI4BQQAhAgsgAgsjACABIAAvAAEiAEEIdCAAQQh2ckH//wNxEL0MIAFBATYCTAsPACAAKAJEQQxqIAEQjgELJQAgAkUgAUF/RnJFBEAgACgCSEEMaiABIAEgAmpBAWsQ4gEaCwtBAQF/IABBA2oiAiAALwABIgBBCHQgAEEIdnJB//8DcUEGbGohAANAIAAgAkcEQCACIAEQwAwgAkEGaiECDAELCwsjACABIAAvAAIiAEEIdCAAQQh2ckH//wNxEL0MIAFBAjYCTAt4AQJ/IABBA2oiAiAALwABIgBBCHQgAEEIdnJB//8DcUEKbGohAwNAIAIgA0cEQCABQQA2AkwgAiABEMAMIAEgAigABiIAQRh0IABBgP4DcUEIdHIgAEEIdkGA/gNxIABBGHZyciABKAJMEL4MIAJBCmohAgwBCwsLogEBBn8CQCADRQ0AIAAtAABBAXFFDQAgAEF/NgIEIAIoAgAiBSEEA0AgA0UNASAAIAUgARCGBSIGQQEgARtFDQEgBUGAfHFBgARqIQggBkEARyABckEBcyEJIAQhBwNAIAcgBSIESw0CIAkgBEF/RnJFBEAgBiAEEIoFCyACQQhqIQIgA0EBayIDRQ0BIAQhByAIIAIoAgAiBUsNAAsMAAsACwstAQF/IABBBmtBBkkgAEGJAmsiAUEJTUEAQQEgAXRBvwZxG3JFBEBBAA8LQQELdQEDfyAAKAIEIQQCQCAAQQFBARCCAiIDRQ0AIANBHDoAACAAQQJBARCCAiIDRQ0AIANBADsAAEEBIQILIAIEfyAAQQFBABCCAiICBH8gAkETOgAAQQEFQQALBUEACyICBEAgACAEQQFqIAFBAEEAEP8ICyACC0sBAX8CQCAAIAEtAAhBARCCAiICRQ0AQQAhAANAIAAgAS0ACE8NASAAIAJqIAEoAgAgAGotAAA6AAAgAEEBaiEADAALAAsgAkEARwtQACAAIAIQygwEfyAAQQJBASABQf8BSxtBABCCAiIABH8gAUGAAk8EfyAAQQw6AAAgAUGAAmshASAAQQFqBSAACyABOgAAQQEFQQALBUEACwt1AAJ/IAEoAgRBEkYEQEEAIAAgAigCBBDIDEUNARogACABKAIEIAIoAghBAhDJDA8LQQAiAiAAIAEtAAhBARCCAiIARQ0AGgN/IAEtAAggAk0Ef0EBBSAAIAJqIAEoAgAgAmotAAA6AAAgAkEBaiECDAELCwsLCQAgACABEMoMC5wBAQN/IAAoAgQhBgJAIABBAUEBEIICIgVFDQAgBUEdOgAAIABBBEEBEIICIgVFDQAgBUEANgAAQQEhBAsgBAR/IABBAkEBIAFB/wFLG0EAEIICIgQEfyABQYACTwR/IARBDDoAACABQYACayEBIARBAWoFIAQLIAE6AABBAQVBAAsFQQALIgEEQCAAIAZBAWogAiADQQAQ/QgLIAELYwICfwF+AkAgAEEBQQEQggIiAkUNACACQRw6AAAgAEECQQEQggIiAkUNACACIAFBCHQgAUGA/gNxQQh2cjsAAEEBIQMgAa0iBMMgBFENACAAIAAoAhhBCHI2AhhBACEDCyADC10BAX8CQAJAAkACQCABKAIEIgNBpAJrDgIBAgALIANBEUcNAiAAQREgAigCEEECEMkMDwsgAEGkAiACKAIMQQIQyQwPCyAAQaUCIAIoAghBAhDJDA8LIAAgARDFDAugAQEBfyAAQQVqIQMCQAJAAkACQAJAIAAtAARBAWsOBAABAgMECyABIANqIAI6AAAPCyADIAFBAXRqIAJBCHQgAkGA/gNxQQh2cjsAAA8LIAMgAUEDbGoiACACOgACIAAgAkEIdjoAASAAIAJBEHY6AAAPCyADIAFBAnRqIAJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyNgAACwuaAQEFfwJAIANFDQAgAC0AAEEBcUUNACAAQX82AgQgAigCACEFA0AgA0UNASAAIAUgARCGBSIGQQEgARtFDQEgBUGAfHEiB0GABGohCCAGQQBHIAFyQQFzIQkDQCAJIAVBf0ZyRQRAIAYgBSABEIcFCyACIARqIQIgA0EBayIDRQ0BIAcgAigCACIFSw0BIAUgCEkNAAsMAAsACwsHACAAQRRqC9ECAQV/IAAtAAxBAUcEQEEADwsCQCABBEAgACgCGCABQQF2IAFqSw0BC0EgQSAgACgCECICIAEgASACSRtBAXRBCGoiAWdrQQAgARsiBHQQ5gwiAkUEQCAAQQA6AAxBAA8LIAJBASAEdCIFQQV0aiEDIAIhAQNAIAEgA0YEQCAAQgA3AhAgACgCGCEDIAAgBUEBazYCGCADQQFqQQAhASAEQR9LBH9B/////wcFIARBAnRBkMYAaigCAAshBUEAIAMbIQYgACgCICEDIAAgAjYCICAAIAU2AhwgACAEQQF0OwEOA0AgASAGRgRAIAMQ5wwMBAsgAyABQQV0aiICKAIQIgRBAXEEQCAAIAIgBEECdiACQRRqEJYDCyABQQFqIQEMAAsABSABQgA3AgAgAUIANwIYIAFCADcCECABQgA3AgggAUEgaiEBDAELAAsAC0EBCyoAIAAgASkCADcCACAAIAEpAgg3AgggACABKQIUNwIQIAAgASgCHDYCGAsEABAACzMBAX8gAgRAIAAhAwNAIAMgAS0AADoAACADQQFqIQMgAUEBaiEBIAJBAWsiAg0ACwsgAAtLAQF/IAAgAUkEQCAAIAEgAhDSDA8LIAIEQCAAIAJqIQMgASACaiEBA0AgA0EBayIDIAFBAWsiAS0AADoAACACQQFrIgINAAsLIAALKQEBfyACBEAgACEDA0AgAyABOgAAIANBAWohAyACQQFrIgINAAsLIAALWQEBfyAAIAAoAkgiAUEBayABcjYCSCAAKAIAIgFBCHEEQCAAIAFBIHI2AgBBfw8LIABCADcCBCAAIAAoAiwiATYCHCAAIAE2AhQgACABIAAoAjBqNgIQQQALpAEDAXwBfgF/IAC9IgJCNIinQf8PcSIDQbIITQR8IANB/QdNBEAgAEQAAAAAAAAAAKIPCwJ8IACZIgBEAAAAAAAAMEOgRAAAAAAAADDDoCAAoSIBRAAAAAAAAOA/ZARAIAAgAaBEAAAAAAAA8L+gDAELIAAgAaAiACABRAAAAAAAAOC/ZUUNABogAEQAAAAAAADwP6ALIgCaIAAgAkIAUxsFIAALC7IDAQN/IwBBEGsiBiQAIAYgAzYCDCMAQaABayIEJAAgBCAAIARBngFqIAEbIgU2ApQBIAQgAUEBayIAQQAgACABTRs2ApgBIARBAEGQARDUDCIAQX82AkwgAEGBATYCJCAAQX82AlAgACAAQZ8BajYCLCAAIABBlAFqNgJUIAVBADoAAEEAIQQjAEHQAWsiASQAIAEgAzYCzAEgAUGgAWoiA0EAQSgQ1AwaIAEgASgCzAE2AsgBAkBBACACIAFByAFqIAFB0ABqIAMQ2wxBAEgNACAAKAJMQQBIIAAgACgCACIFQV9xNgIAAn8CQAJAIAAoAjBFBEAgAEHQADYCMCAAQQA2AhwgAEIANwMQIAAoAiwhBCAAIAE2AiwMAQsgACgCEA0BC0F/IAAQ1QwNARoLIAAgAiABQcgBaiABQdAAaiABQaABahDbDAshAiAEBH8gAEEAQQAgACgCJBEEABogAEEANgIwIAAgBDYCLCAAQQA2AhwgACgCFBogAEIANwMQQQAFIAILGiAAIAAoAgAgBUEgcXI2AgANAAsgAUHQAWokACAAQaABaiQAIAZBEGokAAuAAgEDfwJ/AkACQAJAIAEiA0H/AXEiAQRAIABBA3EEQANAIAAtAAAiAkUgASACRnINBSAAQQFqIgBBA3ENAAsLQYCChAggACgCACICayACckGAgYKEeHFBgIGChHhHDQEgAUGBgoQIbCEEA0BBgIKECCACIARzIgFrIAFyQYCBgoR4cUGAgYKEeEcNAiAAKAIEIQIgAEEEaiIBIQAgAkGAgoQIIAJrckGAgYKEeHFBgIGChHhGDQALDAILIAAQ2QwgAGoMAwsgACEBCwNAIAEiAC0AACICRQ0BIABBAWohASACIANB/wFxRw0ACwsgAAsiAEEAIAAtAAAgA0H/AXFGGwt9AQN/AkACQCAAIgFBA3FFDQAgAS0AAEUEQEEADwsDQCABQQFqIgFBA3FFDQEgAS0AAA0ACwwBCwNAIAEiAkEEaiEBQYCChAggAigCACIDayADckGAgYKEeHFBgIGChHhGDQALA0AgAiIBQQFqIQIgAS0AAA0ACwsgASAAawt/AgF/AX4gAL0iA0I0iKdB/w9xIgJB/w9HBHwgAkUEQCABIABEAAAAAAAAAABhBH9BAAUgAEQAAAAAAADwQ6IgARDaDCEAIAEoAgBBQGoLNgIAIAAPCyABIAJB/gdrNgIAIANC/////////4eAf4NCgICAgICAgPA/hL8FIAALC6sUAhJ/AX4jAEFAaiIGJAAgBiABNgI8IAZBJ2ohFCAGQShqIQ8CQAJAAkACQANAQQAhBQNAIAEhCyAFIAxB/////wdzSg0CIAUgDGohDAJAAkACQAJAIAEiBS0AACIJBEADQAJAAkAgCUH/AXEiAUUEQCAFIQEMAQsgAUElRw0BIAUhCQNAIAktAAFBJUcEQCAJIQEMAgsgBUEBaiEFIAktAAIgCUECaiIBIQlBJUYNAAsLIAUgC2siBSAMQf////8HcyIVSg0JIAAEQCAAIAsgBRDcDAsgBQ0HIAYgATYCPCABQQFqIQVBfyEOAkAgASwAAUEwayIHQQlLDQAgAS0AAkEkRw0AIAFBA2ohBUEBIRAgByEOCyAGIAU2AjxBACEKAkAgBSwAACIJQSBrIgFBH0sEQCAFIQcMAQsgBSEHQQEgAXQiAUGJ0QRxRQ0AA0AgBiAFQQFqIgc2AjwgASAKciEKIAUsAAEiCUEgayIBQSBPDQEgByEFQQEgAXQiAUGJ0QRxDQALCwJAIAlBKkYEQAJ/AkAgBywAAUEwayIBQQlLDQAgBy0AAkEkRw0AAn8gAEUEQCAEIAFBAnRqQQo2AgBBAAwBCyADIAFBA3RqKAIACyENIAdBA2ohAUEBDAELIBANBiAHQQFqIQEgAEUEQCAGIAE2AjxBACEQQQAhDQwDCyACIAIoAgAiBUEEajYCACAFKAIAIQ1BAAshECAGIAE2AjwgDUEATg0BQQAgDWshDSAKQYDAAHIhCgwBCyAGQTxqEN0MIg1BAEgNCiAGKAI8IQELQQAhBUF/IQgCf0EAIAEtAABBLkcNABogAS0AAUEqRgRAAn8CQCABLAACQTBrIgdBCUsNACABLQADQSRHDQAgAUEEaiEBAn8gAEUEQCAEIAdBAnRqQQo2AgBBAAwBCyADIAdBA3RqKAIACwwBCyAQDQYgAUECaiEBQQAgAEUNABogAiACKAIAIgdBBGo2AgAgBygCAAshCCAGIAE2AjwgCEEATgwBCyAGIAFBAWo2AjwgBkE8ahDdDCEIIAYoAjwhAUEBCyERA0AgBSESQRwhByABIhYsAAAiBUH7AGtBRkkNCyABQQFqIQEgBSASQTpsakHPxgBqLQAAIgVBAWtBCEkNAAsgBiABNgI8AkAgBUEbRwRAIAVFDQwgDkEATgRAIABFBEAgBCAOQQJ0aiAFNgIADAwLIAYgAyAOQQN0aikDADcDMAwCCyAARQ0IIAZBMGogBSACEN4MDAELIA5BAE4NC0EAIQUgAEUNCAsgAC0AAEEgcQ0LIApB//97cSIJIAogCkGAwABxGyEKQQAhDkHYHSETIA8hBwJAAkACfwJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkAgFiwAACIFQVNxIAUgBUEPcUEDRhsgBSASGyIFQdgAaw4hBBYWFhYWFhYWEBYJBhAQEBYGFhYWFgIFAxYWChYBFhYEAAsCQCAFQcEAaw4HEBYLFhAQEAALIAVB0wBGDQsMFQsgBikDMCEXQdgdDAULQQAhBQJAAkACQAJAAkACQAJAIBJB/wFxDggAAQIDBBwFBhwLIAYoAjAgDDYCAAwbCyAGKAIwIAw2AgAMGgsgBigCMCAMrDcDAAwZCyAGKAIwIAw7AQAMGAsgBigCMCAMOgAADBcLIAYoAjAgDDYCAAwWCyAGKAIwIAysNwMADBULQQggCCAIQQhNGyEIIApBCHIhCkH4ACEFCyAPIQEgBikDMCIXUEUEQCAFQSBxIQsDQCABQQFrIgEgF6dBD3FB4MoAai0AACALcjoAACAXQg9WIBdCBIghFw0ACwsgASELIApBCHFFIAYpAzBQcg0DIAVBBHZB2B1qIRNBAiEODAMLIA8hASAGKQMwIhdQRQRAA0AgAUEBayIBIBenQQdxQTByOgAAIBdCB1YgF0IDiCEXDQALCyABIQsgCkEIcUUNAiAIIA8gAWsiAUEBaiABIAhIGyEIDAILIAYpAzAiF0IAUwRAIAZCACAXfSIXNwMwQQEhDkHYHQwBCyAKQYAQcQRAQQEhDkHZHQwBC0HaHUHYHSAKQQFxIg4bCyETIBcgDxDfDCELCyARIAhBAEhxDREgCkH//3txIAogERshCiAGKQMwIhdCAFIgCHJFBEAgDyELQQAhCAwOCyAIIBdQIA8gC2tqIgEgASAISBshCAwNCyAGKQMwIRcMCwsCf0H/////ByAIIAhB/////wdPGyIKIgVBAEchBwJAAkACQCAGKAIwIgFBrh4gARsiCyIBQQNxRSAFRXINAANAIAEtAABFDQIgBUEBayIFQQBHIQcgAUEBaiIBQQNxRQ0BIAUNAAsLIAdFDQEgAS0AAEUgBUEESXJFBEADQEGAgoQIIAEoAgAiB2sgB3JBgIGChHhxQYCBgoR4Rw0CIAFBBGohASAFQQRrIgVBA0sNAAsLIAVFDQELA0AgASABLQAARQ0CGiABQQFqIQEgBUEBayIFDQALC0EACyIBIAtrIAogARsiASALaiEHIAhBAE4EQCAJIQogASEIDAwLIAkhCiABIQggBy0AAA0PDAsLIAYpAzAiF1BFDQFCACEXDAkLIAgEQCAGKAIwDAILQQAhBSAAQSAgDUEAIAoQ4AwMAgsgBkEANgIMIAYgFz4CCCAGIAZBCGoiBTYCMEF/IQggBQshCUEAIQUDQAJAIAkoAgAiC0UNACAGQQRqIAsQ5AwiC0EASA0PIAsgCCAFa0sNACAJQQRqIQkgBSALaiIFIAhJDQELC0E9IQcgBUEASA0MIABBICANIAUgChDgDCAFRQRAQQAhBQwBC0EAIQcgBigCMCEJA0AgCSgCACILRQ0BIAZBBGoiCCALEOQMIgsgB2oiByAFSw0BIAAgCCALENwMIAlBBGohCSAFIAdLDQALCyAAQSAgDSAFIApBgMAAcxDgDCANIAUgBSANSBshBQwICyARIAhBAEhxDQlBPSEHIAAgBisDMCANIAggCiAFEOEMIgVBAE4NBwwKCyAFLQABIQkgBUEBaiEFDAALAAsgAA0JIBBFDQNBASEFA0AgBCAFQQJ0aigCACIABEAgAyAFQQN0aiAAIAIQ3gxBASEMIAVBAWoiBUEKRw0BDAsLC0EBIQwgBUEKTw0JA0AgBCAFQQJ0aigCAA0BIAVBAWoiBUEKRw0ACwwJC0EcIQcMBgsgBiAXPAAnQQEhCCAUIQsgCSEKCyAIIAcgC2siCSAIIAlKGyIIIA5B/////wdzSg0DQT0hByANIAggDmoiASABIA1IGyIFIBVKDQQgAEEgIAUgASAKEOAMIAAgEyAOENwMIABBMCAFIAEgCkGAgARzEOAMIABBMCAIIAlBABDgDCAAIAsgCRDcDCAAQSAgBSABIApBgMAAcxDgDCAGKAI8IQEMAQsLC0EAIQwMAwtBPSEHC0HY1QAgBzYCAAtBfyEMCyAGQUBrJAAgDAvCAQEDfyAALQAAQSBxRQRAAkAgAiAAKAIQIgMEfyADBSAAENUMDQEgACgCEAsgACgCFCIEa0sEQCAAIAEgAiAAKAIkEQQAGgwBCwJAAkAgAkUgACgCUEEASHINACACIQMDQCABIANqIgVBAWstAABBCkcEQCADQQFrIgMNAQwCCwsgACABIAMgACgCJBEEACADSQ0CIAIgA2shAiAAKAIUIQQMAQsgASEFCyAEIAUgAhDSDBogACAAKAIUIAJqNgIUCwsLbwEFfyAAKAIAIgMsAABBMGsiAUEJSwRAQQAPCwNAQX8hBCACQcyZs+YATQRAQX8gASACQQpsIgVqIAEgBUH/////B3NLGyEECyAAIANBAWoiBTYCACADLAABIAQhAiAFIQNBMGsiAUEKSQ0ACyACC7oCAAJAAkACQAJAAkACQAJAAkACQAJAAkAgAUEJaw4SAAgJCggJAQIDBAoJCgoICQUGBwsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACEOIMCw8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAAt/AgF+A38CQCAAQoCAgIAQVARAIAAhAgwBCwNAIAFBAWsiASAAIABCCoAiAkIKfn2nQTByOgAAIABC/////58BViACIQANAAsLIAJQRQRAIAKnIQMDQCABQQFrIgEgAyADQQpuIgRBCmxrQTByOgAAIANBCUsgBCEDDQALCyABC2wBAX8jAEGAAmsiBSQAIARBgMAEcSACIANMckUEQCAFIAEgAiADayIDQYACIANBgAJJIgEbENQMGiABRQRAA0AgACAFQYACENwMIANBgAJrIgNB/wFLDQALCyAAIAUgAxDcDAsgBUGAAmokAAucGAMSfwF8A34jAEGwBGsiDCQAIAxBADYCLAJAIAG9IhlCAFMEQEEBIRBB4h0hEyABmiIBvSEZ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c2l4AHNldmVuAGVpZ2h0AG5pbmUAY29sb24Ac2VtaWNvbG9uAGxlc3MAZXF1YWwAZ3JlYXRlcgBxdWVzdGlvbgBhdABBAEIAQwBEAEUARgBHAEgASQBKAEsATABNAE4ATwBQAFEAUgBTAFQAVQBWAFcAWABZAFoAYnJhY2tldGxlZnQAYmFja3NsYXNoAGJyYWNrZXRyaWdodABhc2NpaWNpcmN1bQB1bmRlcnNjb3JlAGdyYXZlAGEAYgBjAGQAZQBmAGcAaABpAGoAawBsAG0AbgBvAHAAcQByAHMAdAB1AHYAdwB4AHkAegBicmFjZWxlZnQAYmFyAGJyYWNlcmlnaHQAYXNjaWl0aWxkZQBBZGllcmVzaXMAQXJpbmcAQ2NlZGlsbGEARWFjdXRlAE50aWxkZQBPZGllcmVzaXMAVWRpZXJlc2lzAGFhY3V0ZQBhZ3JhdmUAYWNpcmN1bWZsZXgAYWRpZXJlc2lzAGF0aWxkZQBhcmluZwBjY2VkaWxsYQBlYWN1dGUAZWdyYXZlAGVjaXJjdW1mbGV4AGVkaWVyZXNpcwBpYWN1dGUAaWdyYXZlAGljaXJjdW1mbGV4AGlkaWVyZXNpcwBudGlsZGUAb2FjdXRlAG9ncmF2ZQBvY2lyY3VtZmxleABvZGllcmVzaXMAb3RpbGRlAHVhY3V0ZQB1Z3JhdmUAdWNpcmN1bWZsZXgAdWRpZXJlc2lzAGRhZ2dlcgBkZWdyZWUAY2VudABzdGVybGluZwBzZWN0aW9uAGJ1bGxldABwYXJhZ3JhcGgAZ2VybWFuZGJscwByZWdpc3RlcmVkAGNvcHlyaWdodAB0cmFkZW1hcmsAYWN1dGUAZGllcmVzaXMAbm90ZXF1YWwAQUUAT3NsYXNoAGluZmluaXR5AHBsdXNtaW51cwBsZXNzZXF1YWwAZ3JlYXRlcmVxdWFsAHllbgBtdQBwYXJ0aWFsZGlmZgBzdW1tYXRpb24AcHJvZHVjdABwaQBpbnRlZ3JhbABvcmRmZW1pbmluZQBvcmRtYXNjdWxpbmUAT21lZ2EAYWUAb3NsYXNoAHF1ZXN0aW9uZG93bgBleGNsYW1kb3duAGxvZ2ljYWxub3QAcmFkaWNhbABmbG9yaW4AYXBwcm94ZXF1YWwARGVsdGEAZ3VpbGxlbW90bGVmdABndWlsbGVtb3RyaWdodABlbGxpcHNpcwBub25icmVha2luZ3NwYWNlAEFncmF2ZQBBdGlsZGUAT3RpbGRlAE9FAG9lAGVuZGFzaABlbWRhc2gAcXVvdGVkYmxsZWZ0AHF1b3RlZGJscmlnaHQAcXVvdGVsZWZ0AHF1b3RlcmlnaHQAZGl2aWRlAGxvemVuZ2UAeWRpZXJlc2lzAFlkaWVyZXNpcwBmcmFjdGlvbgBjdXJyZW5jeQBndWlsc2luZ2xsZWZ0AGd1aWxzaW5nbHJpZ2h0AGZpAGZsAGRhZ2dlcmRibABwZXJpb2RjZW50ZXJlZABxdW90ZXNpbmdsYmFzZQBxdW90ZWRibGJhc2UAcGVydGhvdXNhbmQAQWNpcmN1bWZsZXgARWNpcmN1bWZsZXgAQWFjdXRlAEVkaWVyZXNpcwBFZ3JhdmUASWFjdXRlAEljaXJjdW1mbGV4AElkaWVyZXNpcwBJZ3JhdmUAT2FjdXRlAE9jaXJjdW1mbGV4AGFwcGxlAE9ncmF2ZQBVYWN1dGUAVWNpcmN1bWZsZXgAVWdyYXZlAGRvdGxlc3NpAGNpcmN1bWZsZXgAdGlsZGUAbWFjcm9uAGJyZXZlAGRvdGFjY2VudAByaW5nAGNlZGlsbGEAaHVuZ2FydW1sYXV0AG9nb25lawBjYXJvbgBMc2xhc2gAbHNsYXNoAFNjYXJvbgBzY2Fyb24AWmNhcm9uAHpjYXJvbgBicm9rZW5iYXIARXRoAGV0aABZYWN1dGUAeWFjdXRlAFRob3JuAHRob3JuAG1pbnVzAG11bHRpcGx5AG9uZXN1cGVyaW9yAHR3b3N1cGVyaW9yAHRocmVlc3VwZXJpb3IAb25laGFsZgBvbmVxdWFydGVyAHRocmVlcXVhcnRlcnMAZnJhbmMAR2JyZXZlAGdicmV2ZQBJZG90YWNjZW50AFNjZWRpbGxhAHNjZWRpbGxhAENhY3V0ZQBjYWN1dGUAQ2Nhcm9uAGNjYXJvbgBkY3JvYXQAQZQuC4YICAAAAA4AAAAfAAAAJQAAACwAAAA1AAAAQAAAAEcAAABPAAAAWQAAAGUAAABvAAAAegAAAIMAAACIAAAAjgAAAJUAAACcAAAAogAAAKcAAACrAAAArwAAALUAAAC6AAAAvwAAAMMAAADJAAAAzwAAANQAAADaAAAA5AAAAOkAAADvAAAA9wAAAAABAAADAQAABQEAAAcBAAAJAQAACwEAAA0BAAAPAQAAEQEAABMBAAAVAQAAFwEAABkBAAAbAQAAHQEAAB8BAAAhAQAAIwEAACUBAAAnAQAAKQEAACsBAAAtAQAALwEAADEBAAAzAQAANQEAADcBAABDAQAATQEAAFoBAABmAQAAcQEAAHcBAAB5AQAAewEAAH0BAAB/AQAAgQEAAIMBAACFAQAAhwEAAIkBAACLAQAAjQEAAI8BAACRAQAAkwEAAJUBAACXAQAAmQEAAJsBAACdAQAAnwEAAKEBAACjAQAApQEAAKcBAACpAQAAqwEAALUBAAC5AQAAxAEAAM8BAADZAQAA3wEAAOgBAADvAQAA9gEAAAACAAAKAgAAEQIAABgCAAAkAgAALgIAADUCAAA7AgAARAIAAEsCAABSAgAAXgIAAGgCAABvAgAAdgIAAIICAACMAgAAkwIAAJoCAAChAgAArQIAALcCAAC+AgAAxQIAAMwCAADYAgAA4gIAAOkCAADwAgAA9QIAAP4CAAAGAwAADQMAABcDAAAiAwAALQMAADcDAABBAwAARwMAAFADAABZAwAAXAMAAGMDAABsAwAAdgMAAIADAACNAwAAkQMAAJQDAACgAwAAqgMAALIDAAC1AwAAvgMAAMoDAADXAwAA3QMAAOADAADnAwAA9AMAAP8DAAAKBAAAEgQAABkEAAAlBAAAKwQAADkEAABIBAAAUQQAAGIEAABpBAAAcAQAAHcEAAB6BAAAfQQAAIQEAACLBAAAmAQAAKYEAACwBAAAuwQAAMIEAADKBAAA1AQAAN4EAADnBAAA8AQAAP4EAAANBQAAEAUAABMFAAAdBQAALAUAADsFAABIBQAAVAUAAGAFAABsBQAAcwUAAH0FAACEBQAAiwUAAJcFAAChBQAAqAUAAK8FAAC7BQAAwQUAAMgFAADPBQAA2wUAAOIFAADrBQAA9gUAAPwFAAADBgAACQYAABMGAAAYBgAAIAYAAC0GAAA0BgAAOgYAAEEGAABIBgAATwYAAFYGAABdBgAAZAYAAG4GAAByBgAAdgYAAH0GAACEBgAAigYAAJAGAACWBgAAnwYAAKsGAAC3BgAAxQYAAM0GAADYBgAA5gYAAOwGAADzBgAA+gYAAAUHAAAOBwAAFwcAAB4HAAAlBwAALAcAADMHAAA6BwBBpDYLrRF/AAAAAAAAAIAAAAD/AAAAAQAAAAABAAB/AQAAAgAAAIABAABPAgAAAwAAAFACAACvAgAABAAAALACAAD/AgAABQAAAAADAABvAwAABgAAAHADAAD/AwAABwAAAAAEAAD/BAAACQAAAAAFAAAvBQAACQAAADAFAACPBQAACgAAAJAFAAD/BQAACwAAAAAGAAD/BgAADQAAAAAHAABPBwAARwAAAFAHAAB/BwAADQAAAIAHAAC/BwAASAAAAMAHAAD/BwAADgAAAAAJAAB/CQAADwAAAIAJAAD/CQAAEAAAAAAKAAB/CgAAEQAAAIAKAAD/CgAAEgAAAAALAAB/CwAAEwAAAIALAAD/CwAAFAAAAAAMAAB/DAAAFQAAAIAMAAD/DAAAFgAAAAANAAB/DQAAFwAAAIANAAD/DQAASQAAAAAOAAB/DgAAGAAAAIAOAAD/DgAAGQAAAAAPAAD/DwAARgAAAAAQAACfEAAASgAAAKAQAAD/EAAAGgAAAAARAAD/EQAAHAAAAAASAAB/EwAASwAAAIATAACfEwAASwAAAKATAAD/EwAATAAAAAAUAAB/FgAATQAAAIAWAACfFgAATgAAAKAWAAD/FgAATwAAAAAXAAAfFwAAVAAAACAXAAA/FwAAVAAAAEAXAABfFwAAVAAAAGAXAAB/FwAAVAAAAIAXAAD/FwAAUAAAAAAYAACvGAAAUQAAAAAZAABPGQAAXQAAAFAZAAB/GQAAXgAAAIAZAADfGQAAXwAAAOAZAAD/GQAAUAAAAAAaAAAfGgAAYAAAAAAbAAB/GwAAGwAAAIAbAAC/GwAAcAAAAAAcAABPHAAAcQAAAFAcAAB/HAAAcgAAAAAdAAB/HQAABAAAAIAdAAC/HQAABAAAAMAdAAD/HQAABgAAAAAeAAD/HgAAHQAAAAAfAAD/HwAAHgAAAAAgAABvIAAAHwAAAHAgAACfIAAAIAAAAKAgAADPIAAAIQAAANAgAAD/IAAAIgAAAAAhAABPIQAAIwAAAFAhAACPIQAAJAAAAJAhAAD/IQAAJQAAAAAiAAD/IgAAJgAAAAAjAAD/IwAAJwAAAAAkAAA/JAAAKAAAAEAkAABfJAAAKQAAAGAkAAD/JAAAKgAAAAAlAAB/JQAAKwAAAIAlAACfJQAALAAAAKAlAAD/JQAALQAAAAAmAAD/JgAALgAAAAAnAAC/JwAALwAAAMAnAADvJwAAJgAAAPAnAAD/JwAAJQAAAAAoAAD/KAAAUgAAAAApAAB/KQAAJQAAAIApAAD/KQAAJgAAAAAqAAD/KgAAJgAAAAArAAD/KwAAJQAAAAAsAABfLAAAYQAAAGAsAAB/LAAAHQAAAIAsAAD/LAAACAAAAAAtAAAvLQAAGgAAADAtAAB/LQAAYgAAAIAtAADfLQAASwAAAOAtAAD/LQAACQAAAAAuAAB/LgAAHwAAAIAuAAD/LgAAOwAAAAAvAADfLwAAOwAAAPAvAAD/LwAAOwAAAAAwAAA/MAAAMAAAAEAwAACfMAAAMQAAAKAwAAD/MAAAMgAAAAAxAAAvMQAAMwAAADAxAACPMQAANAAAAJAxAACfMQAAOwAAAKAxAAC/MQAAMwAAAMAxAADvMQAAPQAAAPAxAAD/MQAAMgAAAAAyAAD/MgAANgAAAAAzAAD/MwAANwAAAAA0AAC/TQAAOwAAAMBNAAD/TQAAYwAAAABOAAD/nwAAOwAAAACgAACPpAAAUwAAAJCkAADPpAAAUwAAAAClAAA/pgAADAAAAECmAACfpgAACQAAAACnAAAfpwAABQAAACCnAAD/pwAAHQAAAACoAAAvqAAAZAAAAECoAAB/qAAANQAAAICoAADfqAAAcwAAAACpAAAvqQAAdAAAADCpAABfqQAAdQAAAACqAABfqgAAdgAAAACsAACv1wAAOAAAAADYAAD/3wAAOQAAAADgAAD/+AAAPAAAAAD5AAD/+gAAPQAAAAD7AABP+wAAPgAAAFD7AAD//QAAPwAAAAD+AAAP/gAAWwAAABD+AAAf/gAAQQAAACD+AAAv/gAAQAAAADD+AABP/gAAQQAAAFD+AABv/gAAQgAAAHD+AAD//gAAQwAAAAD/AADv/wAARAAAAPD/AAD//wAARQAAAAAAAQB/AAEAZQAAAIAAAQD/AAEAZQAAAAABAQA/AQEAZQAAAEABAQCPAQEAZgAAAJABAQDPAQEAdwAAANABAQD/AQEAeAAAAIACAQCfAgEAeQAAAKACAQDfAgEAeQAAAAADAQAvAwEAVQAAADADAQBPAwEAVgAAAIADAQCfAwEAZwAAAKADAQDfAwEAaAAAAAAEAQBPBAEAVwAAAFAEAQB/BAEAaQAAAIAEAQCvBAEAagAAAAAIAQA/CAEAawAAAAAJAQAfCQEAOgAAACAJAQA/CQEAeQAAAAAKAQBfCgEAbAAAAAAgAQD/IwEAbgAAAAAkAQB/JAEAbgAAAADQAQD/0AEAWAAAAADRAQD/0QEAWAAAAADSAQBP0gEAWAAAAADTAQBf0wEAbQAAAGDTAQB/0wEAbwAAAADUAQD/1wEAWQAAAADwAQAv8AEAegAAADDwAQCf8AEAegAAAAAAAgDfpgIAOwAAAAD4AgAf+gIAPQAAAAAADgB/AA4AXAAAAAABDgDvAQ4AWwAAAAAADwD9/w8AWgAAAAAAEAD9/xAAWgAAAAAAAAABAAAAAgAAAAMAAAAHAAAADQAAAB8AAAA9AAAAfwAAAPsAAAD9AQAA/QMAAPcHAAD9DwAA/x8AAP0/AADtfwAA8f8AAP//AQD7/wMA//8HAP3/DwD3/x8A/f8/APH/fwD9//8A2f//Afv//wPZ//8Hx///D/3//x/d//8/////fxkACwAZGRkAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAGQAKChkZGQMKBwABAAkLGAAACQYLAAALAAYZAAAAGRkZAEHhxwALIQ4AAAAAAAAAABkACw0ZGRkADQAAAgAJDgAAAAkADgAADgBBm8gACwEMAEGnyAALFRMAAAAAEwAAAAAJDAAAAAAADAAADABB1cgACwEQAEHhyAALFQ8AAAAEDwAAAAAJEAAAAAAAEAAAEABBj8kACwESAEGbyQALHhEAAAAAEQAAAAAJEgAAAAAAEgAAEgAAGgAAABoaGgBB0skACw4aAAAAGhoaAAAAAAAACQBBg8oACwEUAEGPygALFRcAAAAAFwAAAAAJFAAAAAAAFAAAFABBvcoACwEWAEHJygALJxUAAAAAFQAAAAAJFgAAAAAAFgAAFgAAMDEyMzQ1Njc4OUFCQ0RFRgBBjMsACwLoAwBBmMwAC0VfAAAAYAAAAGEAAAAPAAAAYgAAAGMAAABkAAAAEQAAABIAAABlAAAAZgAAAGcAAABoAAAAaQAAAGoAAABrAAAAbAAAAG0AQfTMAAtFDAAAAA0AAAAOAAAADwAAABAAAABuAAAAbwAAABEAAAASAAAAcAAAABMAAABxAAAAFAAAAHIAAABzAAAAdAAAAHUAAAB2AEHYzQALCnAlAADoAwAA6AMAQezNAAsBAQBBgs4ACxGAPwAAgD8AAAEAAAAAAAAAAQBBpM4ACwT/////AEG0zgALAgQmAEHIzgALAsQLAEHYzgALEXcAAAB4AAAAeQAAAHoAAAB7AEGAzwALywFyYXZhRVNBQlREQkNDTEJDIEZGQzJGRkNwYW1jUkxPQ0xBUENyYXZjIHR2Y0dJU0RUREJFQ0xCRUNTQkVtZ3BmcmF2ZnBzYWdGRURHZnlsZ1NPUEdCVVNHcmF2Z3htZGhkYWVoYWVoaHh0bWhSQVZIRlRTSm5yZWthY29sSFNUTEhUQU1weGFtR1JFTWF0ZW1SQVZNVExDUHRzb3BwZXJweGlic1RBVFMgR1ZTWE1EVmFlaHZ4dG12R1JPVlJBVlZlbWFuMi9TT5AtAQ==");lXt={subset:sXt},g_={Subset:"SUBSET"}});var aEe={};yt(aEe,{WorkerUrl:()=>CXt});var CXt;var nEe=P(()=>{YdA();j6();qt();CXt=import.meta.url?new URL(import.meta.url):void 0;typeof window>"u"&&typeof self<"u"&&(self.onmessage=async(A)=>{switch(A.data.command){case g_.Subset:let e=await f8(A.data.arrayBuffer,A.data.codePoints);self.postMessage(e,{transfer:[e]});break}})});var oEe={};yt(oEe,{Commands:()=>g_,subsetToBase64:()=>uEe,subsetToBinary:()=>f8,toBase64:()=>l_});var sEe=P(()=>{YdA();j6();qt()});var lEe={};yt(lEe,{decodePngMetadata:()=>cEe,encodePngMetadata:()=>c_});var HdA=P(()=>{KdA();j6();qt()});var BEe=wu(function(CEe,JdA){/*!
|
||
|
||
pica
|
||
https://github.com/nodeca/pica
|
||
|
||
*/(function(A){if(typeof CEe==="object"&&typeof JdA<"u")JdA.exports=A();else if(typeof define==="function"&&define.amd)define([],A);else{var e;if(typeof window<"u")e=window;else if(typeof global<"u")e=global;else if(typeof self<"u")e=self;else e=this;e.pica=A()}})(function(){var A,e,t;return function(){function r(i,u,a){function n(l,g){if(!u[l]){if(!i[l]){var C=oD;if(!g&&C)return C(l,!0);if(o)return o(l,!0);var B=Error("Cannot find module '"+l+"'");throw B.code="MODULE_NOT_FOUND",B}var E=u[l]={exports:{}};i[l][0].call(E.exports,function(d){var I=i[l][1][d];return n(I||d)},E,E.exports,r,i,u,a)}return u[l].exports}for(var o=oD,s=0;s<a.length;s++)n(a[s]);return n}return r}()({1:[function(r,i,u){var a=r("inherits"),n=r("multimath"),o=r("./mm_unsharp_mask"),s=r("./mm_resize");function l(g){var C=g||[],B={js:C.indexOf("js")>=0,wasm:C.indexOf("wasm")>=0};n.call(this,B),this.features={js:B.js,wasm:B.wasm&&this.has_wasm()},this.use(o),this.use(s)}a(l,n),l.prototype.resizeAndUnsharp=function(C,B){var E=this.resize(C,B);if(C.unsharpAmount)this.unsharp_mask(E,C.toWidth,C.toHeight,C.unsharpAmount,C.unsharpRadius,C.unsharpThreshold);return E},i.exports=l},{"./mm_resize":4,"./mm_unsharp_mask":9,inherits:19,multimath:20}],2:[function(r,i,u){function a(s){return s<0?0:s>255?255:s}function n(s,l,g,C,B,E){var d,I,h,Q,p,m,f,D,w,b,F,v=0,S=0;for(w=0;w<C;w++){p=0;for(b=0;b<B;b++){m=E[p++],f=E[p++],D=v+m*4|0,d=I=h=Q=0;for(;f>0;f--)F=E[p++],Q=Q+F*s[D+3]|0,h=h+F*s[D+2]|0,I=I+F*s[D+1]|0,d=d+F*s[D]|0,D=D+4|0;l[S+3]=a(Q+8192>>14),l[S+2]=a(h+8192>>14),l[S+1]=a(I+8192>>14),l[S]=a(d+8192>>14),S=S+C*4|0}S=(w+1)*4|0,v=(w+1)*g*4|0}}function o(s,l,g,C,B,E){var d,I,h,Q,p,m,f,D,w,b,F,v=0,S=0;for(w=0;w<C;w++){p=0;for(b=0;b<B;b++){m=E[p++],f=E[p++],D=v+m*4|0,d=I=h=Q=0;for(;f>0;f--)F=E[p++],Q=Q+F*s[D+3]|0,h=h+F*s[D+2]|0,I=I+F*s[D+1]|0,d=d+F*s[D]|0,D=D+4|0;l[S+3]=a(Q+8192>>14),l[S+2]=a(h+8192>>14),l[S+1]=a(I+8192>>14),l[S]=a(d+8192>>14),S=S+C*4|0}S=(w+1)*4|0,v=(w+1)*g*4|0}}i.exports={convolveHorizontally:n,convolveVertically:o}},{}],3:[function(r,i,u){i.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAEXA2AAAGAGf39/f39/AGAHf39/f39/fwACDwEDZW52Bm1lbW9yeQIAAAMEAwABAgYGAX8AQQALB1cFEV9fd2FzbV9jYWxsX2N0b3JzAAAIY29udm9sdmUAAQpjb252b2x2ZUhWAAIMX19kc29faGFuZGxlAwAYX193YXNtX2FwcGx5X2RhdGFfcmVsb2NzAAAK7AMDAwABC8YDAQ9/AkAgA0UNACAERQ0AA0AgDCENQQAhE0EAIQcDQCAHQQJqIQYCfyAHQQF0IAVqIgcuAQIiFEUEQEGAwAAhCEGAwAAhCUGAwAAhCkGAwAAhCyAGDAELIBIgBy4BAGohCEEAIQsgFCEHQQAhDiAGIQlBACEPQQAhEANAIAUgCUEBdGouAQAiESAAIAhBAnRqKAIAIgpBGHZsIBBqIRAgCkH/AXEgEWwgC2ohCyAKQRB2Qf8BcSARbCAPaiEPIApBCHZB/wFxIBFsIA5qIQ4gCEEBaiEIIAlBAWohCSAHQQFrIgcNAAsgC0GAQGshCCAOQYBAayEJIA9BgEBrIQogEEGAQGshCyAGIBRqCyEHIAEgDUECdGogCUEOdSIGQf8BIAZB/wFIGyIGQQAgBkEAShtBCHRBgP4DcSAKQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EQdEGAgPwHcSALQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EYdHJyIAhBDnUiBkH/ASAGQf8BSBsiBkEAIAZBAEobcjYCACADIA1qIQ0gE0EBaiITIARHDQALIAxBAWoiDCACbCESIAMgDEcNAAsLCx4AQQAgAiADIAQgBSAAEAEgAkEAIAQgBSAGIAEQAQs="},{}],4:[function(r,i,u){i.exports={name:"resize",fn:r("./resize"),wasm_fn:r("./resize_wasm"),wasm_src:r("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(r,i,u){var a=r("./resize_filter_gen"),n=r("./convolve").convolveHorizontally,o=r("./convolve").convolveVertically;function s(l,g,C){var B=3,E=g*C*4|0;while(B<E)l[B]=255,B=B+4|0}i.exports=function(g){var{src:C,width:B,height:E,toWidth:d,toHeight:I}=g,h=g.scaleX||g.toWidth/g.width,Q=g.scaleY||g.toHeight/g.height,p=g.offsetX||0,m=g.offsetY||0,f=g.dest||new Uint8Array(d*I*4),D=typeof g.quality>"u"?3:g.quality,w=g.alpha||!1,b=a(D,B,d,h,p),F=a(D,E,I,Q,m),v=new Uint8Array(d*E*4);if(n(C,v,B,E,d,b),o(v,f,E,d,I,F),!w)s(f,d,I);return f}},{"./convolve":2,"./resize_filter_gen":6}],6:[function(r,i,u){var a=r("./resize_filter_info"),n=14;function o(s){return Math.round(s*((1<<n)-1))}i.exports=function(l,g,C,B,E){var d=a[l].filter,I=1/B,h=Math.min(1,B),Q=a[l].win/h,p,m,f,D,w,b,F,v,S,x,k,T,R,L,M,U,Y,H=Math.floor((Q+1)*2),J=new Int16Array((H+2)*C),K=0,O=!J.subarray||!J.set;for(p=0;p<C;p++){m=(p+0.5)*I+E,f=Math.max(0,Math.floor(m-Q)),D=Math.min(g-1,Math.ceil(m+Q)),w=D-f+1,b=new Float32Array(w),F=new Int16Array(w),v=0;for(S=f,x=0;S<=D;S++,x++)k=d((S+0.5-m)*h),v+=k,b[x]=k;T=0;for(x=0;x<b.length;x++)R=b[x]/v,T+=R,F[x]=o(R);F[C>>1]+=o(1-T),L=0;while(L<F.length&&F[L]===0)L++;if(L<F.length){M=F.length-1;while(M>0&&F[M]===0)M--;if(U=f+L,Y=M-L+1,J[K++]=U,J[K++]=Y,!O)J.set(F.subarray(L,M+1),K),K+=Y;else for(x=L;x<=M;x++)J[K++]=F[x]}else J[K++]=0,J[K++]=0}return J}},{"./resize_filter_info":7}],7:[function(r,i,u){i.exports=[{win:0.5,filter:function(n){return n>=-0.5&&n<0.5?1:0}},{win:1,filter:function(n){if(n<=-1||n>=1)return 0;if(n>-0.00000011920929&&n<0.00000011920929)return 1;var o=n*Math.PI;return Math.sin(o)/o*(0.54+0.46*Math.cos(o/1))}},{win:2,filter:function(n){if(n<=-2||n>=2)return 0;if(n>-0.00000011920929&&n<0.00000011920929)return 1;var o=n*Math.PI;return Math.sin(o)/o*Math.sin(o/2)/(o/2)}},{win:3,filter:function(n){if(n<=-3||n>=3)return 0;if(n>-0.00000011920929&&n<0.00000011920929)return 1;var o=n*Math.PI;return Math.sin(o)/o*Math.sin(o/3)/(o/3)}}]},{}],8:[function(r,i,u){var a=r("./resize_filter_gen");function n(g,C,B){var E=3,d=C*B*4|0;while(E<d)g[E]=255,E=E+4|0}function o(g){return new Uint8Array(g.buffer,0,g.byteLength)}var s=!0;try{s=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1}catch(g){}function l(g,C,B){if(s){C.set(o(g),B);return}for(var E=B,d=0;d<g.length;d++){var I=g[d];C[E++]=I&255,C[E++]=I>>8&255}}i.exports=function(C){var{src:B,width:E,height:d,toWidth:I,toHeight:h}=C,Q=C.scaleX||C.toWidth/C.width,p=C.scaleY||C.toHeight/C.height,m=C.offsetX||0,f=C.offsetY||0,D=C.dest||new Uint8Array(I*h*4),w=typeof C.quality>"u"?3:C.quality,b=C.alpha||!1,F=a(w,E,I,Q,m),v=a(w,d,h,p,f),S=0,x=this.__align(S+Math.max(B.byteLength,D.byteLength)),k=this.__align(x+d*I*4),T=this.__align(k+F.byteLength),R=T+v.byteLength,L=this.__instance("resize",R),M=new Uint8Array(this.__memory.buffer),U=new Uint32Array(this.__memory.buffer),Y=new Uint32Array(B.buffer);U.set(Y),l(F,M,k),l(v,M,T);var H=L.exports.convolveHV||L.exports._convolveHV;H(k,T,x,E,d,I,h);var J=new Uint32Array(D.buffer);if(J.set(new Uint32Array(this.__memory.buffer,0,h*I)),!b)n(D,I,h);return D}},{"./resize_filter_gen":6}],9:[function(r,i,u){i.exports={name:"unsharp_mask",fn:r("./unsharp_mask"),wasm_fn:r("./unsharp_mask_wasm"),wasm_src:r("./unsharp_mask_wasm_base64")}},{"./unsharp_mask":10,"./unsharp_mask_wasm":11,"./unsharp_mask_wasm_base64":12}],10:[function(r,i,u){var a=r("glur/mono16");function n(o,s,l){var g=s*l,C=new Uint16Array(g),B,E,d,I;for(var h=0;h<g;h++)B=o[4*h],E=o[4*h+1],d=o[4*h+2],I=B>=E&&B>=d?B:E>=d&&E>=B?E:d,C[h]=I<<8;return C}i.exports=function(s,l,g,C,B,E){var d,I,h,Q,p;if(C===0||B<0.5)return;if(B>2)B=2;var m=n(s,l,g),f=new Uint16Array(m);a(f,l,g,B);var D=C/100*4096+0.5|0,w=E<<8,b=l*g;for(var F=0;F<b;F++)if(d=m[F],Q=d-f[F],Math.abs(Q)>=w)I=d+(D*Q+2048>>12),I=I>65280?65280:I,I=I<0?0:I,d=d!==0?d:1,h=(I<<12)/d|0,p=F*4,s[p]=s[p]*h+2048>>12,s[p+1]=s[p+1]*h+2048>>12,s[p+2]=s[p+2]*h+2048>>12}},{"glur/mono16":18}],11:[function(r,i,u){i.exports=function(n,o,s,l,g,C){if(l===0||g<0.5)return;if(g>2)g=2;var B=o*s,E=B*4,d=B*2,I=B*2,h=Math.max(o,s)*4,Q=32,p=0,m=E,f=m+d,D=f+I,w=D+I,b=w+h,F=this.__instance("unsharp_mask",E+d+I*2+h+Q,{exp:Math.exp}),v=new Uint32Array(n.buffer),S=new Uint32Array(this.__memory.buffer);S.set(v);var x=F.exports.hsv_v16||F.exports._hsv_v16;x(p,m,o,s),x=F.exports.blurMono16||F.exports._blurMono16,x(m,f,D,w,b,o,s,g),x=F.exports.unsharp||F.exports._unsharp,x(p,p,m,f,o,s,l,C),v.set(new Uint32Array(this.__memory.buffer,0,B))}},{}],12:[function(r,i,u){i.exports="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"},{}],13:[function(r,i,u){var a=100;function n(o,s){this.create=o,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=s||2000}n.prototype.acquire=function(){var o=this,s;if(this.available.length!==0)s=this.available.pop();else s=this.create(),s.id=this.lastId++,s.release=function(){return o.release(s)};return this.acquired[s.id]=s,s},n.prototype.release=function(o){var s=this;if(delete this.acquired[o.id],o.lastUsed=Date.now(),this.available.push(o),this.timeoutId===0)this.timeoutId=setTimeout(function(){return s.gc()},a)},n.prototype.gc=function(){var o=this,s=Date.now();if(this.available=this.available.filter(function(l){if(s-l.lastUsed>o.idle)return l.destroy(),!1;return!0}),this.available.length!==0)this.timeoutId=setTimeout(function(){return o.gc()},a);else this.timeoutId=0},i.exports=n},{}],14:[function(r,i,u){var a=2;i.exports=function(o,s,l,g,C,B){var E=l/o,d=g/s,I=(2*B+a+1)/C;if(I>0.5)return[[l,g]];var h=Math.ceil(Math.log(Math.min(E,d))/Math.log(I));if(h<=1)return[[l,g]];var Q=[];for(var p=0;p<h;p++){var m=Math.round(Math.pow(Math.pow(o,h-p-1)*Math.pow(l,p+1),1/h)),f=Math.round(Math.pow(Math.pow(s,h-p-1)*Math.pow(g,p+1),1/h));Q.push([m,f])}return Q}},{}],15:[function(r,i,u){var a=0.00001;function n(s){var l=Math.round(s);if(Math.abs(s-l)<a)return l;return Math.floor(s)}function o(s){var l=Math.round(s);if(Math.abs(s-l)<a)return l;return Math.ceil(s)}i.exports=function(l){var g=l.toWidth/l.width,C=l.toHeight/l.height,B=n(l.srcTileSize*g)-2*l.destTileBorder,E=n(l.srcTileSize*C)-2*l.destTileBorder;if(B<1||E<1)throw Error("Internal error in pica: target tile width/height is too small.");var d,I,h,Q,p,m,f=[],D;for(Q=0;Q<l.toHeight;Q+=E)for(h=0;h<l.toWidth;h+=B){if(d=h-l.destTileBorder,d<0)d=0;if(p=h+B+l.destTileBorder-d,d+p>=l.toWidth)p=l.toWidth-d;if(I=Q-l.destTileBorder,I<0)I=0;if(m=Q+E+l.destTileBorder-I,I+m>=l.toHeight)m=l.toHeight-I;D={toX:d,toY:I,toWidth:p,toHeight:m,toInnerX:h,toInnerY:Q,toInnerWidth:B,toInnerHeight:E,offsetX:d/g-n(d/g),offsetY:I/C-n(I/C),scaleX:g,scaleY:C,x:n(d/g),y:n(I/C),width:o(p/g),height:o(m/C)},f.push(D)}return f}},{}],16:[function(r,i,u){function a(n){return Object.prototype.toString.call(n)}i.exports.isCanvas=function(o){var s=a(o);return s==="[object HTMLCanvasElement]"||s==="[object OffscreenCanvas]"||s==="[object Canvas]"},i.exports.isImage=function(o){return a(o)==="[object HTMLImageElement]"},i.exports.isImageBitmap=function(o){return a(o)==="[object ImageBitmap]"},i.exports.limiter=function(o){var s=0,l=[];function g(){if(s<o&&l.length)s++,l.shift()()}return function(B){return new Promise(function(E,d){l.push(function(){B().then(function(I){E(I),s--,g()},function(I){d(I),s--,g()})}),g()})}},i.exports.cib_quality_name=function(o){switch(o){case 0:return"pixelated";case 1:return"low";case 2:return"medium"}return"high"},i.exports.cib_support=function(o){return Promise.resolve().then(function(){if(typeof createImageBitmap>"u")return!1;var s=o(100,100);return createImageBitmap(s,0,0,100,100,{resizeWidth:10,resizeHeight:10,resizeQuality:"high"}).then(function(l){var g=l.width===10;return l.close(),s=null,g})}).catch(function(){return!1})},i.exports.worker_offscreen_canvas_support=function(){return new Promise(function(o,s){if(typeof OffscreenCanvas>"u"){o(!1);return}function l(B){if(typeof createImageBitmap>"u"){B.postMessage(!1);return}Promise.resolve().then(function(){var E=new OffscreenCanvas(10,10),d=E.getContext("2d");return d.rect(0,0,1,1),createImageBitmap(E,0,0,1,1)}).then(function(){return B.postMessage(!0)},function(){return B.postMessage(!1)})}var g=btoa("(".concat(l.toString(),")(self);")),C=new Worker("data:text/javascript;base64,".concat(g));C.onmessage=function(B){return o(B.data)},C.onerror=s}).then(function(o){return o},function(){return!1})},i.exports.can_use_canvas=function(o){var s=!1;try{var l=o(2,1),g=l.getContext("2d"),C=g.createImageData(2,1);if(C.data[0]=12,C.data[1]=23,C.data[2]=34,C.data[3]=255,C.data[4]=45,C.data[5]=56,C.data[6]=67,C.data[7]=255,g.putImageData(C,0,0),C=null,C=g.getImageData(0,0,2,1),C.data[0]===12&&C.data[1]===23&&C.data[2]===34&&C.data[3]===255&&C.data[4]===45&&C.data[5]===56&&C.data[6]===67&&C.data[7]===255)s=!0}catch(B){}return s},i.exports.cib_can_use_region=function(){return new Promise(function(o){if(typeof createImageBitmap>"u"){o(!1);return}var s=new Image;s.src="data:image/jpeg;base64,/9j/4QBiRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAYAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAAITAAMAAAABAAEAAAAAAAAAAABIAAAAAQAAAEgAAAAB/9sAQwAEAwMEAwMEBAMEBQQEBQYKBwYGBgYNCQoICg8NEBAPDQ8OERMYFBESFxIODxUcFRcZGRsbGxAUHR8dGh8YGhsa/9sAQwEEBQUGBQYMBwcMGhEPERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoa/8IAEQgAAQACAwERAAIRAQMRAf/EABQAAQAAAAAAAAAAAAAAAAAAAAf/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAF/P//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAQUCf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQMBAT8Bf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQIBAT8Bf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEABj8Cf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAT8hf//aAAwDAQACAAMAAAAQH//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQMBAT8Qf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQIBAT8Qf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAT8Qf//Z",s.onload=function(){createImageBitmap(s,0,0,s.width,s.height).then(function(l){if(l.width===s.width&&l.height===s.height)o(!0);else o(!1)},function(){return o(!1)})},s.onerror=function(){return o(!1)}})}},{}],17:[function(r,i,u){i.exports=function(){var a=r("./mathlib"),n;onmessage=function(s){var l=s.data.opts,g=!1;if(!l.src&&l.srcBitmap){var C=new OffscreenCanvas(l.width,l.height),B=C.getContext("2d",{alpha:Boolean(l.alpha)});B.drawImage(l.srcBitmap,0,0),l.src=B.getImageData(0,0,l.width,l.height).data,C.width=C.height=0,C=null,l.srcBitmap.close(),l.srcBitmap=null}if(!n)n=new a(s.data.features);var E=n.resizeAndUnsharp(l);if(g){var d=new ImageData(new Uint8ClampedArray(E),l.toWidth,l.toHeight),I=new OffscreenCanvas(l.toWidth,l.toHeight),h=I.getContext("2d",{alpha:Boolean(l.alpha)});h.putImageData(d,0,0),createImageBitmap(I).then(function(Q){postMessage({bitmap:Q},[Q])})}else postMessage({data:E},[E.buffer])}}},{"./mathlib":1}],18:[function(r,i,u){var a,n,o,s,l,g,C,B;function E(h){if(h<0.5)h=0.5;var Q=Math.exp(0.527076)/h,p=Math.exp(-Q),m=Math.exp(-2*Q),f=(1-p)*(1-p)/(1+2*Q*p-m);return a=f,n=f*(Q-1)*p,o=f*(Q+1)*p,s=-f*m,l=2*p,g=-m,C=(a+n)/(1-l-g),B=(o+s)/(1-l-g),new Float32Array([a,n,o,s,l,g,C,B])}function d(h,Q,p,m,f,D){var w,b,F,v,S,x,k,T,R,L,M,U,Y,H;for(R=0;R<D;R++){x=R*f,k=R,T=0,w=h[x],S=w*m[6],v=S,M=m[0],U=m[1],Y=m[4],H=m[5];for(L=0;L<f;L++)b=h[x],F=b*M+w*U+v*Y+S*H,S=v,v=F,w=b,p[T]=v,T++,x++;x--,T--,k+=D*(f-1),w=h[x],S=w*m[7],v=S,b=w,M=m[2],U=m[3];for(L=f-1;L>=0;L--)F=b*M+w*U+v*Y+S*H,S=v,v=F,w=b,b=h[x],Q[k]=p[T]+v,x--,T--,k-=D}}function I(h,Q,p,m){if(!m)return;var f=new Uint16Array(h.length),D=new Float32Array(Math.max(Q,p)),w=E(m);d(h,f,D,w,Q,p,m),d(f,h,D,w,p,Q,m)}i.exports=I},{}],19:[function(r,i,u){if(typeof Object.create==="function")i.exports=function(n,o){if(o)n.super_=o,n.prototype=Object.create(o.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})};else i.exports=function(n,o){if(o){n.super_=o;var s=function(){};s.prototype=o.prototype,n.prototype=new s,n.prototype.constructor=n}}},{}],20:[function(r,i,u){var a=r("object-assign"),n=r("./lib/base64decode"),o=r("./lib/wa_detect"),s={js:!0,wasm:!0};function l(g){if(!(this instanceof l))return new l(g);var C=a({},s,g||{});if(this.options=C,this.__cache={},this.__init_promise=null,this.__modules=C.modules||{},this.__memory=null,this.__wasm={},this.__isLE=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1,!this.options.js&&!this.options.wasm)throw Error('mathlib: at least "js" or "wasm" should be enabled')}l.prototype.has_wasm=o,l.prototype.use=function(g){if(this.__modules[g.name]=g,this.options.wasm&&this.has_wasm()&&g.wasm_fn)this[g.name]=g.wasm_fn;else this[g.name]=g.fn;return this},l.prototype.init=function(){if(this.__init_promise)return this.__init_promise;if(!this.options.js&&this.options.wasm&&!this.has_wasm())return Promise.reject(Error(`mathlib: only "wasm" was enabled, but it's not supported`));var g=this;return this.__init_promise=Promise.all(Object.keys(g.__modules).map(function(C){var B=g.__modules[C];if(!g.options.wasm||!g.has_wasm()||!B.wasm_fn)return null;if(g.__wasm[C])return null;return WebAssembly.compile(g.__base64decode(B.wasm_src)).then(function(E){g.__wasm[C]=E})})).then(function(){return g}),this.__init_promise},l.prototype.__base64decode=n,l.prototype.__reallocate=function(C){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(C/65536)}),this.__memory;var B=this.__memory.buffer.byteLength;if(B<C)this.__memory.grow(Math.ceil((C-B)/65536));return this.__memory},l.prototype.__instance=function(C,B,E){if(B)this.__reallocate(B);if(!this.__wasm[C]){var d=this.__modules[C];this.__wasm[C]=new WebAssembly.Module(this.__base64decode(d.wasm_src))}if(!this.__cache[C]){var I={memoryBase:0,memory:this.__memory,tableBase:0,table:new WebAssembly.Table({initial:0,element:"anyfunc"})};this.__cache[C]=new WebAssembly.Instance(this.__wasm[C],{env:a(I,E||{})})}return this.__cache[C]},l.prototype.__align=function(C,B){B=B||8;var E=C%B;return C+(E?B-E:0)},i.exports=l},{"./lib/base64decode":21,"./lib/wa_detect":22,"object-assign":23}],21:[function(r,i,u){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";i.exports=function(o){var s=o.replace(/[\r\n=]/g,""),l=s.length,g=new Uint8Array(l*3>>2),C=0,B=0;for(var E=0;E<l;E++){if(E%4===0&&E)g[B++]=C>>16&255,g[B++]=C>>8&255,g[B++]=C&255;C=C<<6|a.indexOf(s.charAt(E))}var d=l%4*6;if(d===0)g[B++]=C>>16&255,g[B++]=C>>8&255,g[B++]=C&255;else if(d===18)g[B++]=C>>10&255,g[B++]=C>>2&255;else if(d===12)g[B++]=C>>4&255;return g}},{}],22:[function(r,i,u){var a;i.exports=function(){if(typeof a<"u")return a;if(a=!1,typeof WebAssembly>"u")return a;try{var o=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),s=new WebAssembly.Module(o),l=new WebAssembly.Instance(s,{});if(l.exports.test(4)!==0)a=!0;return a}catch(g){}return a}},{}],23:[function(r,i,u){var a=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function s(g){if(g===null||g===void 0)throw TypeError("Object.assign cannot be called with null or undefined");return Object(g)}function l(){try{if(!Object.assign)return!1;var g=new String("abc");if(g[5]="de",Object.getOwnPropertyNames(g)[0]==="5")return!1;var C={};for(var B=0;B<10;B++)C["_"+String.fromCharCode(B)]=B;var E=Object.getOwnPropertyNames(C).map(function(I){return C[I]});if(E.join("")!=="0123456789")return!1;var d={};if("abcdefghijklmnopqrst".split("").forEach(function(I){d[I]=I}),Object.keys(Object.assign({},d)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(I){return!1}}i.exports=l()?Object.assign:function(g,C){var B,E=s(g),d;for(var I=1;I<arguments.length;I++){B=Object(arguments[I]);for(var h in B)if(n.call(B,h))E[h]=B[h];if(a){d=a(B);for(var Q=0;Q<d.length;Q++)if(o.call(B,d[Q]))E[d[Q]]=B[d[Q]]}}return E}},{}],24:[function(r,i,u){var a=arguments[3],n=arguments[4],o=arguments[5],s=JSON.stringify;i.exports=function(l,g){var C,B=Object.keys(o);for(var E=0,d=B.length;E<d;E++){var I=B[E],h=o[I].exports;if(h===l||h&&h.default===l){C=I;break}}if(!C){C=Math.floor(Math.pow(16,8)*Math.random()).toString(16);var Q={};for(var E=0,d=B.length;E<d;E++){var I=B[E];Q[I]=I}n[C]=["function(require,module,exports){"+l+"(self); }",Q]}var p=Math.floor(Math.pow(16,8)*Math.random()).toString(16),m={};m[C]=C,n[p]=["function(require,module,exports){var f = require("+s(C)+");(f.default ? f.default : f)(self);}",m];var f={};D(p);function D(x){f[x]=!0;for(var k in n[x][1]){var T=n[x][1][k];if(!f[T])D(T)}}var w="("+a+")({"+Object.keys(f).map(function(x){return s(x)+":["+n[x][0]+","+s(n[x][1])+"]"}).join(",")+"},{},["+s(p)+"])",b=window.URL||window.webkitURL||window.mozURL||window.msURL,F=new Blob([w],{type:"text/javascript"});if(g&&g.bare)return F;var v=b.createObjectURL(F),S=new Worker(v);return S.objectURL=v,S}},{}],"/index.js":[function(r,i,u){function a(L,M){return g(L)||l(L,M)||o(L,M)||n()}function n(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function o(L,M){if(!L)return;if(typeof L==="string")return s(L,M);var U=Object.prototype.toString.call(L).slice(8,-1);if(U==="Object"&&L.constructor)U=L.constructor.name;if(U==="Map"||U==="Set")return Array.from(L);if(U==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(U))return s(L,M)}function s(L,M){if(M==null||M>L.length)M=L.length;for(var U=0,Y=Array(M);U<M;U++)Y[U]=L[U];return Y}function l(L,M){var U=L==null?null:typeof Symbol<"u"&&L[Symbol.iterator]||L["@@iterator"];if(U==null)return;var Y=[],H=!0,J=!1,K,O;try{for(U=U.call(L);!(H=(K=U.next()).done);H=!0)if(Y.push(K.value),M&&Y.length===M)break}catch(_){J=!0,O=_}finally{try{if(!H&&U.return!=null)U.return()}finally{if(J)throw O}}return Y}function g(L){if(Array.isArray(L))return L}var C=r("object-assign"),B=r("webworkify"),E=r("./lib/mathlib"),d=r("./lib/pool"),I=r("./lib/utils"),h=r("./lib/worker"),Q=r("./lib/stepper"),p=r("./lib/tiler"),m={},f=!1;try{if(typeof navigator<"u"&&navigator.userAgent)f=navigator.userAgent.indexOf("Safari")>=0}catch(L){}var D=1;if(typeof navigator<"u")D=Math.min(navigator.hardwareConcurrency||1,4);var w={tile:1024,concurrency:D,features:["js","wasm","ww"],idle:2000,createCanvas:function(M,U){var Y=document.createElement("canvas");return Y.width=M,Y.height=U,Y}},b={quality:3,alpha:!1,unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},F=!1,v=!1,S=!1,x=!1,k=!1;function T(){return{value:B(h),destroy:function(){if(this.value.terminate(),typeof window<"u"){var M=window.URL||window.webkitURL||window.mozURL||window.msURL;if(M&&M.revokeObjectURL&&this.value.objectURL)M.revokeObjectURL(this.value.objectURL)}}}}function R(L){if(!(this instanceof R))return new R(L);this.options=C({},w,L||{});var M="lk_".concat(this.options.concurrency);if(this.__limit=m[M]||I.limiter(this.options.concurrency),!m[M])m[M]=this.__limit;this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}R.prototype.init=function(){var L=this;if(this.__initPromise)return this.__initPromise;if(typeof ImageData<"u"&&typeof Uint8ClampedArray<"u")try{new ImageData(new Uint8ClampedArray(400),10,10),F=!0}catch(_){}if(typeof ImageBitmap<"u")if(ImageBitmap.prototype&&ImageBitmap.prototype.close)v=!0;else this.debug("ImageBitmap does not support .close(), disabled");var M=this.options.features.slice();if(M.indexOf("all")>=0)M=["cib","wasm","js","ww"];if(this.__requested_features=M,this.__mathlib=new E(M),M.indexOf("ww")>=0){if(typeof window<"u"&&"Worker"in window)try{var U=r("webworkify")(function(){});U.terminate(),this.features.ww=!0;var Y="wp_".concat(JSON.stringify(this.options));if(m[Y])this.__workersPool=m[Y];else this.__workersPool=new d(T,this.options.idle),m[Y]=this.__workersPool}catch(_){}}var H=this.__mathlib.init().then(function(_){C(L.features,_.features)}),J;if(!v)J=Promise.resolve(!1);else J=I.cib_support(this.options.createCanvas).then(function(_){if(L.features.cib&&M.indexOf("cib")<0){L.debug("createImageBitmap() resize supported, but disabled by config");return}if(M.indexOf("cib")>=0)L.features.cib=_});S=I.can_use_canvas(this.options.createCanvas);var K;if(v&&F&&M.indexOf("ww")!==-1)K=I.worker_offscreen_canvas_support();else K=Promise.resolve(!1);K=K.then(function(_){x=_});var O=I.cib_can_use_region().then(function(_){k=_});return this.__initPromise=Promise.all([H,J,K,O]).then(function(){return L}),this.__initPromise},R.prototype.__invokeResize=function(L,M){var U=this;return M.__mathCache=M.__mathCache||{},Promise.resolve().then(function(){if(!U.features.ww)return{data:U.__mathlib.resizeAndUnsharp(L,M.__mathCache)};return new Promise(function(Y,H){var J=U.__workersPool.acquire();if(M.cancelToken)M.cancelToken.catch(function(O){return H(O)});J.value.onmessage=function(O){if(J.release(),O.data.err)H(O.data.err);else Y(O.data)};var K=[];if(L.src)K.push(L.src.buffer);if(L.srcBitmap)K.push(L.srcBitmap);J.value.postMessage({opts:L,features:U.__requested_features,preload:{wasm_nodule:U.__mathlib.__}},K)})})},R.prototype.__extractTileData=function(L,M,U,Y,H){if(this.features.ww&&x&&(I.isCanvas(M)||k))return this.debug("Create tile for OffscreenCanvas"),createImageBitmap(Y.srcImageBitmap||M,L.x,L.y,L.width,L.height).then(function(O){return H.srcBitmap=O,H});if(I.isCanvas(M)){if(!Y.srcCtx)Y.srcCtx=M.getContext("2d",{alpha:Boolean(U.alpha)});return this.debug("Get tile pixel data"),H.src=Y.srcCtx.getImageData(L.x,L.y,L.width,L.height).data,H}this.debug("Draw tile imageBitmap/image to temporary canvas");var J=this.options.createCanvas(L.width,L.height),K=J.getContext("2d",{alpha:Boolean(U.alpha)});return K.globalCompositeOperation="copy",K.drawImage(Y.srcImageBitmap||M,L.x,L.y,L.width,L.height,0,0,L.width,L.height),this.debug("Get tile pixel data"),H.src=K.getImageData(0,0,L.width,L.height).data,J.width=J.height=0,H},R.prototype.__landTileData=function(L,M,U){var Y;if(this.debug("Convert raw rgba tile result to ImageData"),M.bitmap)return U.toCtx.drawImage(M.bitmap,L.toX,L.toY),null;if(F)Y=new ImageData(new Uint8ClampedArray(M.data),L.toWidth,L.toHeight);else if(Y=U.toCtx.createImageData(L.toWidth,L.toHeight),Y.data.set)Y.data.set(M.data);else for(var H=Y.data.length-1;H>=0;H--)Y.data[H]=M.data[H];if(this.debug("Draw tile"),f)U.toCtx.putImageData(Y,L.toX,L.toY,L.toInnerX-L.toX,L.toInnerY-L.toY,L.toInnerWidth+0.00001,L.toInnerHeight+0.00001);else U.toCtx.putImageData(Y,L.toX,L.toY,L.toInnerX-L.toX,L.toInnerY-L.toY,L.toInnerWidth,L.toInnerHeight);return null},R.prototype.__tileAndResize=function(L,M,U){var Y=this,H={srcCtx:null,srcImageBitmap:null,isImageBitmapReused:!1,toCtx:null},J=function(O){return Y.__limit(function(){if(U.canceled)return U.cancelToken;var _={width:O.width,height:O.height,toWidth:O.toWidth,toHeight:O.toHeight,scaleX:O.scaleX,scaleY:O.scaleY,offsetX:O.offsetX,offsetY:O.offsetY,quality:U.quality,alpha:U.alpha,unsharpAmount:U.unsharpAmount,unsharpRadius:U.unsharpRadius,unsharpThreshold:U.unsharpThreshold};return Y.debug("Invoke resize math"),Promise.resolve(_).then(function(z){return Y.__extractTileData(O,L,U,H,z)}).then(function(z){return Y.debug("Invoke resize math"),Y.__invokeResize(z,U)}).then(function(z){if(U.canceled)return U.cancelToken;return H.srcImageData=null,Y.__landTileData(O,z,H)})})};return Promise.resolve().then(function(){if(H.toCtx=M.getContext("2d",{alpha:Boolean(U.alpha)}),I.isCanvas(L))return null;if(I.isImageBitmap(L))return H.srcImageBitmap=L,H.isImageBitmapReused=!0,null;if(I.isImage(L)){if(!v)return null;return Y.debug("Decode image via createImageBitmap"),createImageBitmap(L).then(function(K){H.srcImageBitmap=K}).catch(function(K){return null})}throw Error('Pica: ".from" should be Image, Canvas or ImageBitmap')}).then(function(){if(U.canceled)return U.cancelToken;Y.debug("Calculate tiles");var K=p({width:U.width,height:U.height,srcTileSize:Y.options.tile,toWidth:U.toWidth,toHeight:U.toHeight,destTileBorder:U.__destTileBorder}),O=K.map(function(z){return J(z)});function _(z){if(z.srcImageBitmap){if(!z.isImageBitmapReused)z.srcImageBitmap.close();z.srcImageBitmap=null}}return Y.debug("Process tiles"),Promise.all(O).then(function(){return Y.debug("Finished!"),_(H),M},function(z){throw _(H),z})})},R.prototype.__processStages=function(L,M,U,Y){var H=this;if(Y.canceled)return Y.cancelToken;var J=L.shift(),K=a(J,2),O=K[0],_=K[1],z=L.length===0;Y=C({},Y,{toWidth:O,toHeight:_,quality:z?Y.quality:Math.min(1,Y.quality)});var j;if(!z)j=this.options.createCanvas(O,_);return this.__tileAndResize(M,z?U:j,Y).then(function(){if(z)return U;return Y.width=O,Y.height=_,H.__processStages(L,j,U,Y)}).then(function(q){if(j)j.width=j.height=0;return q})},R.prototype.__resizeViaCreateImageBitmap=function(L,M,U){var Y=this,H=M.getContext("2d",{alpha:Boolean(U.alpha)});return this.debug("Resize via createImageBitmap()"),createImageBitmap(L,{resizeWidth:U.toWidth,resizeHeight:U.toHeight,resizeQuality:I.cib_quality_name(U.quality)}).then(function(J){if(U.canceled)return U.cancelToken;if(!U.unsharpAmount)return H.drawImage(J,0,0),J.close(),H=null,Y.debug("Finished!"),M;Y.debug("Unsharp result");var K=Y.options.createCanvas(U.toWidth,U.toHeight),O=K.getContext("2d",{alpha:Boolean(U.alpha)});O.drawImage(J,0,0),J.close();var _=O.getImageData(0,0,U.toWidth,U.toHeight);return Y.__mathlib.unsharp_mask(_.data,U.toWidth,U.toHeight,U.unsharpAmount,U.unsharpRadius,U.unsharpThreshold),H.putImageData(_,0,0),K.width=K.height=0,_=O=K=H=null,Y.debug("Finished!"),M})},R.prototype.resize=function(L,M,U){var Y=this;this.debug("Start resize...");var H=C({},b);if(!isNaN(U))H=C(H,{quality:U});else if(U)H=C(H,U);if(H.toWidth=M.width,H.toHeight=M.height,H.width=L.naturalWidth||L.width,H.height=L.naturalHeight||L.height,M.width===0||M.height===0)return Promise.reject(Error("Invalid output size: ".concat(M.width,"x").concat(M.height)));if(H.unsharpRadius>2)H.unsharpRadius=2;if(H.canceled=!1,H.cancelToken)H.cancelToken=H.cancelToken.then(function(K){throw H.canceled=!0,K},function(K){throw H.canceled=!0,K});var J=3;return H.__destTileBorder=Math.ceil(Math.max(J,2.5*H.unsharpRadius|0)),this.init().then(function(){if(H.canceled)return H.cancelToken;if(Y.features.cib)return Y.__resizeViaCreateImageBitmap(L,M,H);if(!S){var K=Error("Pica: cannot use getImageData on canvas, make sure fingerprinting protection isn't enabled");throw K.code="ERR_GET_IMAGE_DATA",K}var O=Q(H.width,H.height,H.toWidth,H.toHeight,Y.options.tile,H.__destTileBorder);return Y.__processStages(O,L,M,H)})},R.prototype.resizeBuffer=function(L){var M=this,U=C({},b,L);return this.init().then(function(){return M.__mathlib.resizeAndUnsharp(U)})},R.prototype.toBlob=function(L,M,U){return M=M||"image/png",new Promise(function(Y){if(L.toBlob){L.toBlob(function(_){return Y(_)},M,U);return}if(L.convertToBlob){Y(L.convertToBlob({type:M,quality:U}));return}var H=atob(L.toDataURL(M,U).split(",")[1]),J=H.length,K=new Uint8Array(J);for(var O=0;O<J;O++)K[O]=H.charCodeAt(O);Y(new Blob([K],{type:M}))})},R.prototype.debug=function(){},i.exports=R},{"./lib/mathlib":1,"./lib/pool":13,"./lib/stepper":14,"./lib/tiler":15,"./lib/utils":16,"./lib/worker":17,"object-assign":23,webworkify:24}]},{},[])("/index.js")})});function EEe(A,e){var t={};return e.forEach(function(r){if(Object.prototype.hasOwnProperty.call(A,r))t[r]=A[r]}),t}function EXt(A){return EEe(A,["alpha","unsharpAmount","unsharpRadius","unsharpThreshold","cancelToken"])}function dEe(A){var e={exports:{}};return A(e,e.exports),e.exports}function C_(A){throw Error('Could not dynamically require "'+A+'". Please configure the dynamicRequireTargets option of @rollup/plugin-commonjs appropriately for this require call to behave properly.')}function hEe(A){return this._getUint8Array(A.blob).then(function(e){if(A.is_jpeg=B_.is_jpeg(e),!A.is_jpeg)return Promise.resolve(A);A.orig_blob=A.blob;try{var t,r;if(B_.jpeg_exif_tags_each(e,function(u){if(u.ifd===0&&u.tag===274&&Array.isArray(u.value))return A.orientation=u.value[0]||1,t=u.is_big_endian,r=u.data_offset,!1}),r){var i=t?new Uint8Array([0,1]):new Uint8Array([1,0]);A.blob=new Blob([e.slice(0,r),i,e.slice(r+2)],{type:"image/jpeg"})}}catch(u){}return A})}function QEe(A){if(!A.is_jpeg)return Promise.resolve(A);var e=A.orientation-1;if(!e)return Promise.resolve(A);var t;if(e&4)t=this.pica.options.createCanvas(A.out_canvas.height,A.out_canvas.width);else t=this.pica.options.createCanvas(A.out_canvas.width,A.out_canvas.height);var r=t.getContext("2d");if(r.save(),e&1)r.transform(-1,0,0,1,t.width,0);if(e&2)r.transform(-1,0,0,-1,t.width,t.height);if(e&4)r.transform(0,1,1,0,0,0);return r.drawImage(A.out_canvas,0,0),r.restore(),A.out_canvas.width=A.out_canvas.height=0,A.out_canvas=t,Promise.resolve(A)}function pEe(A){if(!A.is_jpeg)return Promise.resolve(A);return Promise.all([this._getUint8Array(A.blob),this._getUint8Array(A.out_blob)]).then(function(e){var t=e[0],r=e[1];if(!B_.is_jpeg(t))return Promise.resolve(A);var i=[];return B_.jpeg_segments_each(t,function(u){if(u.code===218)return!1;i.push(u)}),i=i.filter(function(u){if(u.code===226)return!1;if(u.code>=224&&u.code<240)return!0;if(u.code===254)return!0;return!1}).map(function(u){return t.slice(u.offset,u.offset+u.length)}),A.out_blob=new Blob([r.slice(0,2)].concat(i).concat([r.slice(20)]),{type:"image/jpeg"}),A})}function hXt(A){A.before("_blob_to_image",hEe),A.after("_transform",QEe),A.after("_create_blob",pEe)}function z0(A){if(!(this instanceof z0))return new z0(A);A=A||{},this.pica=A.pica||IEe({}),this.initialized=!1,this.utils=OdA}var BXt=function(e){var t;for(var r=1;r<arguments.length;r++){t=Object(arguments[r]);for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i))e[i]=t[i]}return e},dXt,IXt,OdA,IEe,B_,QXt,pXt,fXt,mXt,DXt,yXt,wXt;var fEe=P(()=>{/*! image-blob-reduce 3.0.1 https://github.com/nodeca/image-blob-reduce @license MIT */dXt=EEe,IXt=EXt,OdA={assign:BXt,pick:dXt,pick_pica_resize_options:IXt};/*!
|
||
|
||
pica
|
||
https://github.com/nodeca/pica
|
||
|
||
*/IEe=dEe(function(A,e){(function(t){A.exports=t()})(function(){return function(){function t(r,i,u){function a(s,l){if(!i[s]){if(!r[s]){var g=typeof C_=="function"&&C_;if(!l&&g)return g(s,!0);if(n)return n(s,!0);var C=Error("Cannot find module '"+s+"'");throw C.code="MODULE_NOT_FOUND",C}var B=i[s]={exports:{}};r[s][0].call(B.exports,function(E){var d=r[s][1][E];return a(d||E)},B,B.exports,t,r,i,u)}return i[s].exports}for(var n=typeof C_=="function"&&C_,o=0;o<u.length;o++)a(u[o]);return a}return t}()({1:[function(t,r,i){var u=t("inherits"),a=t("multimath"),n=t("./mm_unsharp_mask"),o=t("./mm_resize");function s(l){var g=l||[],C={js:g.indexOf("js")>=0,wasm:g.indexOf("wasm")>=0};a.call(this,C),this.features={js:C.js,wasm:C.wasm&&this.has_wasm()},this.use(n),this.use(o)}u(s,a),s.prototype.resizeAndUnsharp=function(g,C){var B=this.resize(g,C);if(g.unsharpAmount)this.unsharp_mask(B,g.toWidth,g.toHeight,g.unsharpAmount,g.unsharpRadius,g.unsharpThreshold);return B},r.exports=s},{"./mm_resize":4,"./mm_unsharp_mask":9,inherits:19,multimath:20}],2:[function(t,r,i){function u(o){return o<0?0:o>255?255:o}function a(o,s,l,g,C,B){var E,d,I,h,Q,p,m,f,D,w,b,F=0,v=0;for(D=0;D<g;D++){Q=0;for(w=0;w<C;w++){p=B[Q++],m=B[Q++],f=F+p*4|0,E=d=I=h=0;for(;m>0;m--)b=B[Q++],h=h+b*o[f+3]|0,I=I+b*o[f+2]|0,d=d+b*o[f+1]|0,E=E+b*o[f]|0,f=f+4|0;s[v+3]=u(h+8192>>14),s[v+2]=u(I+8192>>14),s[v+1]=u(d+8192>>14),s[v]=u(E+8192>>14),v=v+g*4|0}v=(D+1)*4|0,F=(D+1)*l*4|0}}function n(o,s,l,g,C,B){var E,d,I,h,Q,p,m,f,D,w,b,F=0,v=0;for(D=0;D<g;D++){Q=0;for(w=0;w<C;w++){p=B[Q++],m=B[Q++],f=F+p*4|0,E=d=I=h=0;for(;m>0;m--)b=B[Q++],h=h+b*o[f+3]|0,I=I+b*o[f+2]|0,d=d+b*o[f+1]|0,E=E+b*o[f]|0,f=f+4|0;s[v+3]=u(h+8192>>14),s[v+2]=u(I+8192>>14),s[v+1]=u(d+8192>>14),s[v]=u(E+8192>>14),v=v+g*4|0}v=(D+1)*4|0,F=(D+1)*l*4|0}}r.exports={convolveHorizontally:a,convolveVertically:n}},{}],3:[function(t,r,i){r.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAEXA2AAAGAGf39/f39/AGAHf39/f39/fwACDwEDZW52Bm1lbW9yeQIAAAMEAwABAgYGAX8AQQALB1cFEV9fd2FzbV9jYWxsX2N0b3JzAAAIY29udm9sdmUAAQpjb252b2x2ZUhWAAIMX19kc29faGFuZGxlAwAYX193YXNtX2FwcGx5X2RhdGFfcmVsb2NzAAAK7AMDAwABC8YDAQ9/AkAgA0UNACAERQ0AA0AgDCENQQAhE0EAIQcDQCAHQQJqIQYCfyAHQQF0IAVqIgcuAQIiFEUEQEGAwAAhCEGAwAAhCUGAwAAhCkGAwAAhCyAGDAELIBIgBy4BAGohCEEAIQsgFCEHQQAhDiAGIQlBACEPQQAhEANAIAUgCUEBdGouAQAiESAAIAhBAnRqKAIAIgpBGHZsIBBqIRAgCkH/AXEgEWwgC2ohCyAKQRB2Qf8BcSARbCAPaiEPIApBCHZB/wFxIBFsIA5qIQ4gCEEBaiEIIAlBAWohCSAHQQFrIgcNAAsgC0GAQGshCCAOQYBAayEJIA9BgEBrIQogEEGAQGshCyAGIBRqCyEHIAEgDUECdGogCUEOdSIGQf8BIAZB/wFIGyIGQQAgBkEAShtBCHRBgP4DcSAKQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EQdEGAgPwHcSALQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EYdHJyIAhBDnUiBkH/ASAGQf8BSBsiBkEAIAZBAEobcjYCACADIA1qIQ0gE0EBaiITIARHDQALIAxBAWoiDCACbCESIAMgDEcNAAsLCx4AQQAgAiADIAQgBSAAEAEgAkEAIAQgBSAGIAEQAQs="},{}],4:[function(t,r,i){r.exports={name:"resize",fn:t("./resize"),wasm_fn:t("./resize_wasm"),wasm_src:t("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(t,r,i){var u=t("./resize_filter_gen"),a=t("./convolve").convolveHorizontally,n=t("./convolve").convolveVertically;function o(s,l,g){var C=3,B=l*g*4|0;while(C<B)s[C]=255,C=C+4|0}r.exports=function(l){var{src:g,width:C,height:B,toWidth:E,toHeight:d}=l,I=l.scaleX||l.toWidth/l.width,h=l.scaleY||l.toHeight/l.height,Q=l.offsetX||0,p=l.offsetY||0,m=l.dest||new Uint8Array(E*d*4),f=typeof l.quality>"u"?3:l.quality,D=l.alpha||!1,w=u(f,C,E,I,Q),b=u(f,B,d,h,p),F=new Uint8Array(E*B*4);if(a(g,F,C,B,E,w),n(F,m,B,E,d,b),!D)o(m,E,d);return m}},{"./convolve":2,"./resize_filter_gen":6}],6:[function(t,r,i){var u=t("./resize_filter_info"),a=14;function n(o){return Math.round(o*((1<<a)-1))}r.exports=function(s,l,g,C,B){var E=u[s].filter,d=1/C,I=Math.min(1,C),h=u[s].win/I,Q,p,m,f,D,w,b,F,v,S,x,k,T,R,L,M,U,Y=Math.floor((h+1)*2),H=new Int16Array((Y+2)*g),J=0,K=!H.subarray||!H.set;for(Q=0;Q<g;Q++){p=(Q+0.5)*d+B,m=Math.max(0,Math.floor(p-h)),f=Math.min(l-1,Math.ceil(p+h)),D=f-m+1,w=new Float32Array(D),b=new Int16Array(D),F=0;for(v=m,S=0;v<=f;v++,S++)x=E((v+0.5-p)*I),F+=x,w[S]=x;k=0;for(S=0;S<w.length;S++)T=w[S]/F,k+=T,b[S]=n(T);b[g>>1]+=n(1-k),R=0;while(R<b.length&&b[R]===0)R++;if(R<b.length){L=b.length-1;while(L>0&&b[L]===0)L--;if(M=m+R,U=L-R+1,H[J++]=M,H[J++]=U,!K)H.set(b.subarray(R,L+1),J),J+=U;else for(S=R;S<=L;S++)H[J++]=b[S]}else H[J++]=0,H[J++]=0}return H}},{"./resize_filter_info":7}],7:[function(t,r,i){r.exports=[{win:0.5,filter:function(a){return a>=-0.5&&a<0.5?1:0}},{win:1,filter:function(a){if(a<=-1||a>=1)return 0;if(a>-0.00000011920929&&a<0.00000011920929)return 1;var n=a*Math.PI;return Math.sin(n)/n*(0.54+0.46*Math.cos(n/1))}},{win:2,filter:function(a){if(a<=-2||a>=2)return 0;if(a>-0.00000011920929&&a<0.00000011920929)return 1;var n=a*Math.PI;return Math.sin(n)/n*Math.sin(n/2)/(n/2)}},{win:3,filter:function(a){if(a<=-3||a>=3)return 0;if(a>-0.00000011920929&&a<0.00000011920929)return 1;var n=a*Math.PI;return Math.sin(n)/n*Math.sin(n/3)/(n/3)}}]},{}],8:[function(t,r,i){var u=t("./resize_filter_gen");function a(l,g,C){var B=3,E=g*C*4|0;while(B<E)l[B]=255,B=B+4|0}function n(l){return new Uint8Array(l.buffer,0,l.byteLength)}var o=!0;try{o=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1}catch(l){}function s(l,g,C){if(o){g.set(n(l),C);return}for(var B=C,E=0;E<l.length;E++){var d=l[E];g[B++]=d&255,g[B++]=d>>8&255}}r.exports=function(g){var{src:C,width:B,height:E,toWidth:d,toHeight:I}=g,h=g.scaleX||g.toWidth/g.width,Q=g.scaleY||g.toHeight/g.height,p=g.offsetX||0,m=g.offsetY||0,f=g.dest||new Uint8Array(d*I*4),D=typeof g.quality>"u"?3:g.quality,w=g.alpha||!1,b=u(D,B,d,h,p),F=u(D,E,I,Q,m),v=0,S=this.__align(v+Math.max(C.byteLength,f.byteLength)),x=this.__align(S+E*d*4),k=this.__align(x+b.byteLength),T=k+F.byteLength,R=this.__instance("resize",T),L=new Uint8Array(this.__memory.buffer),M=new Uint32Array(this.__memory.buffer),U=new Uint32Array(C.buffer);M.set(U),s(b,L,x),s(F,L,k);var Y=R.exports.convolveHV||R.exports._convolveHV;Y(x,k,S,B,E,d,I);var H=new Uint32Array(f.buffer);if(H.set(new Uint32Array(this.__memory.buffer,0,I*d)),!w)a(f,d,I);return f}},{"./resize_filter_gen":6}],9:[function(t,r,i){r.exports={name:"unsharp_mask",fn:t("./unsharp_mask"),wasm_fn:t("./unsharp_mask_wasm"),wasm_src:t("./unsharp_mask_wasm_base64")}},{"./unsharp_mask":10,"./unsharp_mask_wasm":11,"./unsharp_mask_wasm_base64":12}],10:[function(t,r,i){var u=t("glur/mono16");function a(n,o,s){var l=o*s,g=new Uint16Array(l),C,B,E,d;for(var I=0;I<l;I++)C=n[4*I],B=n[4*I+1],E=n[4*I+2],d=C>=B&&C>=E?C:B>=E&&B>=C?B:E,g[I]=d<<8;return g}r.exports=function(o,s,l,g,C,B){var E,d,I,h,Q;if(g===0||C<0.5)return;if(C>2)C=2;var p=a(o,s,l),m=new Uint16Array(p);u(m,s,l,C);var f=g/100*4096+0.5|0,D=B<<8,w=s*l;for(var b=0;b<w;b++)if(E=p[b],h=E-m[b],Math.abs(h)>=D)d=E+(f*h+2048>>12),d=d>65280?65280:d,d=d<0?0:d,E=E!==0?E:1,I=(d<<12)/E|0,Q=b*4,o[Q]=o[Q]*I+2048>>12,o[Q+1]=o[Q+1]*I+2048>>12,o[Q+2]=o[Q+2]*I+2048>>12}},{"glur/mono16":18}],11:[function(t,r,i){r.exports=function(a,n,o,s,l,g){if(s===0||l<0.5)return;if(l>2)l=2;var C=n*o,B=C*4,E=C*2,d=C*2,I=Math.max(n,o)*4,h=32,Q=0,p=B,m=p+E,f=m+d,D=f+d,w=D+I,b=this.__instance("unsharp_mask",B+E+d*2+I+h,{exp:Math.exp}),F=new Uint32Array(a.buffer),v=new Uint32Array(this.__memory.buffer);v.set(F);var S=b.exports.hsv_v16||b.exports._hsv_v16;S(Q,p,n,o),S=b.exports.blurMono16||b.exports._blurMono16,S(p,m,f,D,w,n,o,l),S=b.exports.unsharp||b.exports._unsharp,S(Q,Q,p,m,n,o,s,g),F.set(new Uint32Array(this.__memory.buffer,0,C))}},{}],12:[function(t,r,i){r.exports="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"},{}],13:[function(t,r,i){var u=100;function a(n,o){this.create=n,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=o||2000}a.prototype.acquire=function(){var n=this,o;if(this.available.length!==0)o=this.available.pop();else o=this.create(),o.id=this.lastId++,o.release=function(){return n.release(o)};return this.acquired[o.id]=o,o},a.prototype.release=function(n){var o=this;if(delete this.acquired[n.id],n.lastUsed=Date.now(),this.available.push(n),this.timeoutId===0)this.timeoutId=setTimeout(function(){return o.gc()},u)},a.prototype.gc=function(){var n=this,o=Date.now();if(this.available=this.available.filter(function(s){if(o-s.lastUsed>n.idle)return s.destroy(),!1;return!0}),this.available.length!==0)this.timeoutId=setTimeout(function(){return n.gc()},u);else this.timeoutId=0},r.exports=a},{}],14:[function(t,r,i){var u=2;r.exports=function(n,o,s,l,g,C){var B=s/n,E=l/o,d=(2*C+u+1)/g;if(d>0.5)return[[s,l]];var I=Math.ceil(Math.log(Math.min(B,E))/Math.log(d));if(I<=1)return[[s,l]];var h=[];for(var Q=0;Q<I;Q++){var p=Math.round(Math.pow(Math.pow(n,I-Q-1)*Math.pow(s,Q+1),1/I)),m=Math.round(Math.pow(Math.pow(o,I-Q-1)*Math.pow(l,Q+1),1/I));h.push([p,m])}return h}},{}],15:[function(t,r,i){var u=0.00001;function a(o){var s=Math.round(o);if(Math.abs(o-s)<u)return s;return Math.floor(o)}function n(o){var s=Math.round(o);if(Math.abs(o-s)<u)return s;return Math.ceil(o)}r.exports=function(s){var l=s.toWidth/s.width,g=s.toHeight/s.height,C=a(s.srcTileSize*l)-2*s.destTileBorder,B=a(s.srcTileSize*g)-2*s.destTileBorder;if(C<1||B<1)throw Error("Internal error in pica: target tile width/height is too small.");var E,d,I,h,Q,p,m=[],f;for(h=0;h<s.toHeight;h+=B)for(I=0;I<s.toWidth;I+=C){if(E=I-s.destTileBorder,E<0)E=0;if(Q=I+C+s.destTileBorder-E,E+Q>=s.toWidth)Q=s.toWidth-E;if(d=h-s.destTileBorder,d<0)d=0;if(p=h+B+s.destTileBorder-d,d+p>=s.toHeight)p=s.toHeight-d;f={toX:E,toY:d,toWidth:Q,toHeight:p,toInnerX:I,toInnerY:h,toInnerWidth:C,toInnerHeight:B,offsetX:E/l-a(E/l),offsetY:d/g-a(d/g),scaleX:l,scaleY:g,x:a(E/l),y:a(d/g),width:n(Q/l),height:n(p/g)},m.push(f)}return m}},{}],16:[function(t,r,i){function u(a){return Object.prototype.toString.call(a)}r.exports.isCanvas=function(n){var o=u(n);return o==="[object HTMLCanvasElement]"||o==="[object OffscreenCanvas]"||o==="[object Canvas]"},r.exports.isImage=function(n){return u(n)==="[object HTMLImageElement]"},r.exports.isImageBitmap=function(n){return u(n)==="[object ImageBitmap]"},r.exports.limiter=function(n){var o=0,s=[];function l(){if(o<n&&s.length)o++,s.shift()()}return function(C){return new Promise(function(B,E){s.push(function(){C().then(function(d){B(d),o--,l()},function(d){E(d),o--,l()})}),l()})}},r.exports.cib_quality_name=function(n){switch(n){case 0:return"pixelated";case 1:return"low";case 2:return"medium"}return"high"},r.exports.cib_support=function(n){return Promise.resolve().then(function(){if(typeof createImageBitmap>"u")return!1;var o=n(100,100);return createImageBitmap(o,0,0,100,100,{resizeWidth:10,resizeHeight:10,resizeQuality:"high"}).then(function(s){var l=s.width===10;return s.close(),o=null,l})}).catch(function(){return!1})},r.exports.worker_offscreen_canvas_support=function(){return new Promise(function(n,o){if(typeof OffscreenCanvas>"u"){n(!1);return}function s(C){if(typeof createImageBitmap>"u"){C.postMessage(!1);return}Promise.resolve().then(function(){var B=new OffscreenCanvas(10,10),E=B.getContext("2d");return E.rect(0,0,1,1),createImageBitmap(B,0,0,1,1)}).then(function(){return C.postMessage(!0)},function(){return C.postMessage(!1)})}var l=btoa("(".concat(s.toString(),")(self);")),g=new Worker("data:text/javascript;base64,".concat(l));g.onmessage=function(C){return n(C.data)},g.onerror=o}).then(function(n){return n},function(){return!1})},r.exports.can_use_canvas=function(n){var o=!1;try{var s=n(2,1),l=s.getContext("2d"),g=l.createImageData(2,1);if(g.data[0]=12,g.data[1]=23,g.data[2]=34,g.data[3]=255,g.data[4]=45,g.data[5]=56,g.data[6]=67,g.data[7]=255,l.putImageData(g,0,0),g=null,g=l.getImageData(0,0,2,1),g.data[0]===12&&g.data[1]===23&&g.data[2]===34&&g.data[3]===255&&g.data[4]===45&&g.data[5]===56&&g.data[6]===67&&g.data[7]===255)o=!0}catch(C){}return o},r.exports.cib_can_use_region=function(){return new Promise(function(n){if(typeof createImageBitmap>"u"){n(!1);return}var o=new Image;o.src="data:image/jpeg;base64,/9j/4QBiRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAYAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAAITAAMAAAABAAEAAAAAAAAAAABIAAAAAQAAAEgAAAAB/9sAQwAEAwMEAwMEBAMEBQQEBQYKBwYGBgYNCQoICg8NEBAPDQ8OERMYFBESFxIODxUcFRcZGRsbGxAUHR8dGh8YGhsa/9sAQwEEBQUGBQYMBwcMGhEPERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoa/8IAEQgAAQACAwERAAIRAQMRAf/EABQAAQAAAAAAAAAAAAAAAAAAAAf/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAF/P//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAQUCf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQMBAT8Bf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQIBAT8Bf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEABj8Cf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAT8hf//aAAwDAQACAAMAAAAQH//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQMBAT8Qf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQIBAT8Qf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAT8Qf//Z",o.onload=function(){createImageBitmap(o,0,0,o.width,o.height).then(function(s){if(s.width===o.width&&s.height===o.height)n(!0);else n(!1)},function(){return n(!1)})},o.onerror=function(){return n(!1)}})}},{}],17:[function(t,r,i){r.exports=function(){var u=t("./mathlib"),a;onmessage=function(o){var s=o.data.opts,l=!1;if(!s.src&&s.srcBitmap){var g=new OffscreenCanvas(s.width,s.height),C=g.getContext("2d",{alpha:Boolean(s.alpha)});C.drawImage(s.srcBitmap,0,0),s.src=C.getImageData(0,0,s.width,s.height).data,g.width=g.height=0,g=null,s.srcBitmap.close(),s.srcBitmap=null,l=!0}if(!a)a=new u(o.data.features);var B=a.resizeAndUnsharp(s);if(l){var E=new ImageData(new Uint8ClampedArray(B),s.toWidth,s.toHeight),d=new OffscreenCanvas(s.toWidth,s.toHeight),I=d.getContext("2d",{alpha:Boolean(s.alpha)});I.putImageData(E,0,0),createImageBitmap(d).then(function(h){postMessage({bitmap:h},[h])})}else postMessage({data:B},[B.buffer])}}},{"./mathlib":1}],18:[function(t,r,i){var u,a,n,o,s,l,g,C;function B(I){if(I<0.5)I=0.5;var h=Math.exp(0.527076)/I,Q=Math.exp(-h),p=Math.exp(-2*h),m=(1-Q)*(1-Q)/(1+2*h*Q-p);return u=m,a=m*(h-1)*Q,n=m*(h+1)*Q,o=-m*p,s=2*Q,l=-p,g=(u+a)/(1-s-l),C=(n+o)/(1-s-l),new Float32Array([u,a,n,o,s,l,g,C])}function E(I,h,Q,p,m,f){var D,w,b,F,v,S,x,k,T,R,L,M,U,Y;for(T=0;T<f;T++){S=T*m,x=T,k=0,D=I[S],v=D*p[6],F=v,L=p[0],M=p[1],U=p[4],Y=p[5];for(R=0;R<m;R++)w=I[S],b=w*L+D*M+F*U+v*Y,v=F,F=b,D=w,Q[k]=F,k++,S++;S--,k--,x+=f*(m-1),D=I[S],v=D*p[7],F=v,w=D,L=p[2],M=p[3];for(R=m-1;R>=0;R--)b=w*L+D*M+F*U+v*Y,v=F,F=b,D=w,w=I[S],h[x]=Q[k]+F,S--,k--,x-=f}}function d(I,h,Q,p){if(!p)return;var m=new Uint16Array(I.length),f=new Float32Array(Math.max(h,Q)),D=B(p);E(I,m,f,D,h,Q),E(m,I,f,D,Q,h)}r.exports=d},{}],19:[function(t,r,i){if(typeof Object.create==="function")r.exports=function(a,n){if(n)a.super_=n,a.prototype=Object.create(n.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})};else r.exports=function(a,n){if(n){a.super_=n;var o=function(){};o.prototype=n.prototype,a.prototype=new o,a.prototype.constructor=a}}},{}],20:[function(t,r,i){var u=t("object-assign"),a=t("./lib/base64decode"),n=t("./lib/wa_detect"),o={js:!0,wasm:!0};function s(l){if(!(this instanceof s))return new s(l);var g=u({},o,l||{});if(this.options=g,this.__cache={},this.__init_promise=null,this.__modules=g.modules||{},this.__memory=null,this.__wasm={},this.__isLE=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1,!this.options.js&&!this.options.wasm)throw Error('mathlib: at least "js" or "wasm" should be enabled')}s.prototype.has_wasm=n,s.prototype.use=function(l){if(this.__modules[l.name]=l,this.options.wasm&&this.has_wasm()&&l.wasm_fn)this[l.name]=l.wasm_fn;else this[l.name]=l.fn;return this},s.prototype.init=function(){if(this.__init_promise)return this.__init_promise;if(!this.options.js&&this.options.wasm&&!this.has_wasm())return Promise.reject(Error(`mathlib: only "wasm" was enabled, but it's not supported`));var l=this;return this.__init_promise=Promise.all(Object.keys(l.__modules).map(function(g){var C=l.__modules[g];if(!l.options.wasm||!l.has_wasm()||!C.wasm_fn)return null;if(l.__wasm[g])return null;return WebAssembly.compile(l.__base64decode(C.wasm_src)).then(function(B){l.__wasm[g]=B})})).then(function(){return l}),this.__init_promise},s.prototype.__base64decode=a,s.prototype.__reallocate=function(g){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(g/65536)}),this.__memory;var C=this.__memory.buffer.byteLength;if(C<g)this.__memory.grow(Math.ceil((g-C)/65536));return this.__memory},s.prototype.__instance=function(g,C,B){if(C)this.__reallocate(C);if(!this.__wasm[g]){var E=this.__modules[g];this.__wasm[g]=new WebAssembly.Module(this.__base64decode(E.wasm_src))}if(!this.__cache[g]){var d={memoryBase:0,memory:this.__memory,tableBase:0,table:new WebAssembly.Table({initial:0,element:"anyfunc"})};this.__cache[g]=new WebAssembly.Instance(this.__wasm[g],{env:u(d,B||{})})}return this.__cache[g]},s.prototype.__align=function(g,C){C=C||8;var B=g%C;return g+(B?C-B:0)},r.exports=s},{"./lib/base64decode":21,"./lib/wa_detect":22,"object-assign":23}],21:[function(t,r,i){var u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";r.exports=function(n){var o=n.replace(/[\r\n=]/g,""),s=o.length,l=new Uint8Array(s*3>>2),g=0,C=0;for(var B=0;B<s;B++){if(B%4===0&&B)l[C++]=g>>16&255,l[C++]=g>>8&255,l[C++]=g&255;g=g<<6|u.indexOf(o.charAt(B))}var E=s%4*6;if(E===0)l[C++]=g>>16&255,l[C++]=g>>8&255,l[C++]=g&255;else if(E===18)l[C++]=g>>10&255,l[C++]=g>>2&255;else if(E===12)l[C++]=g>>4&255;return l}},{}],22:[function(t,r,i){var u;r.exports=function(){if(typeof u<"u")return u;if(u=!1,typeof WebAssembly>"u")return u;try{var n=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),o=new WebAssembly.Module(n),s=new WebAssembly.Instance(o,{});if(s.exports.test(4)!==0)u=!0;return u}catch(l){}return u}},{}],23:[function(t,r,i){var u=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function o(l){if(l===null||l===void 0)throw TypeError("Object.assign cannot be called with null or undefined");return Object(l)}function s(){try{if(!Object.assign)return!1;var l=new String("abc");if(l[5]="de",Object.getOwnPropertyNames(l)[0]==="5")return!1;var g={};for(var C=0;C<10;C++)g["_"+String.fromCharCode(C)]=C;var B=Object.getOwnPropertyNames(g).map(function(d){return g[d]});if(B.join("")!=="0123456789")return!1;var E={};if("abcdefghijklmnopqrst".split("").forEach(function(d){E[d]=d}),Object.keys(Object.assign({},E)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(d){return!1}}r.exports=s()?Object.assign:function(l,g){var C,B=o(l),E;for(var d=1;d<arguments.length;d++){C=Object(arguments[d]);for(var I in C)if(a.call(C,I))B[I]=C[I];if(u){E=u(C);for(var h=0;h<E.length;h++)if(n.call(C,E[h]))B[E[h]]=C[E[h]]}}return B}},{}],24:[function(t,r,i){var u=arguments[3],a=arguments[4],n=arguments[5],o=JSON.stringify;r.exports=function(s,l){var g,C=Object.keys(n);for(var B=0,E=C.length;B<E;B++){var d=C[B],I=n[d].exports;if(I===s||I&&I.default===s){g=d;break}}if(!g){g=Math.floor(Math.pow(16,8)*Math.random()).toString(16);var h={};for(var B=0,E=C.length;B<E;B++){var d=C[B];h[d]=d}a[g]=["function(require,module,exports){"+s+"(self); }",h]}var Q=Math.floor(Math.pow(16,8)*Math.random()).toString(16),p={};p[g]=g,a[Q]=["function(require,module,exports){var f = require("+o(g)+");(f.default ? f.default : f)(self);}",p];var m={};f(Q);function f(S){m[S]=!0;for(var x in a[S][1]){var k=a[S][1][x];if(!m[k])f(k)}}var D="("+u+")({"+Object.keys(m).map(function(S){return o(S)+":["+a[S][0]+","+o(a[S][1])+"]"}).join(",")+"},{},["+o(Q)+"])",w=window.URL||window.webkitURL||window.mozURL||window.msURL,b=new Blob([D],{type:"text/javascript"});if(l&&l.bare)return b;var F=w.createObjectURL(b),v=new Worker(F);return v.objectURL=F,v}},{}],"/index.js":[function(t,r,i){function u(R,L){return l(R)||s(R,L)||n(R,L)||a()}function a(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function n(R,L){if(!R)return;if(typeof R==="string")return o(R,L);var M=Object.prototype.toString.call(R).slice(8,-1);if(M==="Object"&&R.constructor)M=R.constructor.name;if(M==="Map"||M==="Set")return Array.from(R);if(M==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(M))return o(R,L)}function o(R,L){if(L==null||L>R.length)L=R.length;for(var M=0,U=Array(L);M<L;M++)U[M]=R[M];return U}function s(R,L){var M=R==null?null:typeof Symbol<"u"&&R[Symbol.iterator]||R["@@iterator"];if(M==null)return;var U=[],Y=!0,H=!1,J,K;try{for(M=M.call(R);!(Y=(J=M.next()).done);Y=!0)if(U.push(J.value),L&&U.length===L)break}catch(O){H=!0,K=O}finally{try{if(!Y&&M.return!=null)M.return()}finally{if(H)throw K}}return U}function l(R){if(Array.isArray(R))return R}var g=t("object-assign"),C=t("webworkify"),B=t("./lib/mathlib"),E=t("./lib/pool"),d=t("./lib/utils"),I=t("./lib/worker"),h=t("./lib/stepper"),Q=t("./lib/tiler"),p={},m=!1;try{if(typeof navigator<"u"&&navigator.userAgent)m=navigator.userAgent.indexOf("Safari")>=0}catch(R){}var f=1;if(typeof navigator<"u")f=Math.min(navigator.hardwareConcurrency||1,4);var D={tile:1024,concurrency:f,features:["js","wasm","ww"],idle:2000,createCanvas:function(L,M){var U=document.createElement("canvas");return U.width=L,U.height=M,U}},w={quality:3,alpha:!1,unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},b=!1,F=!1,v=!1,S=!1,x=!1;function k(){return{value:C(I),destroy:function(){if(this.value.terminate(),typeof window<"u"){var L=window.URL||window.webkitURL||window.mozURL||window.msURL;if(L&&L.revokeObjectURL&&this.value.objectURL)L.revokeObjectURL(this.value.objectURL)}}}}function T(R){if(!(this instanceof T))return new T(R);this.options=g({},D,R||{});var L="lk_".concat(this.options.concurrency);if(this.__limit=p[L]||d.limiter(this.options.concurrency),!p[L])p[L]=this.__limit;this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}T.prototype.init=function(){var R=this;if(this.__initPromise)return this.__initPromise;if(typeof ImageData<"u"&&typeof Uint8ClampedArray<"u")try{new ImageData(new Uint8ClampedArray(400),10,10),b=!0}catch(O){}if(typeof ImageBitmap<"u")if(ImageBitmap.prototype&&ImageBitmap.prototype.close)F=!0;else this.debug("ImageBitmap does not support .close(), disabled");var L=this.options.features.slice();if(L.indexOf("all")>=0)L=["cib","wasm","js","ww"];if(this.__requested_features=L,this.__mathlib=new B(L),L.indexOf("ww")>=0){if(typeof window<"u"&&"Worker"in window)try{var M=t("webworkify")(function(){});M.terminate(),this.features.ww=!0;var U="wp_".concat(JSON.stringify(this.options));if(p[U])this.__workersPool=p[U];else this.__workersPool=new E(k,this.options.idle),p[U]=this.__workersPool}catch(O){}}var Y=this.__mathlib.init().then(function(O){g(R.features,O.features)}),H;if(!F)H=Promise.resolve(!1);else H=d.cib_support(this.options.createCanvas).then(function(O){if(R.features.cib&&L.indexOf("cib")<0){R.debug("createImageBitmap() resize supported, but disabled by config");return}if(L.indexOf("cib")>=0)R.features.cib=O});v=d.can_use_canvas(this.options.createCanvas);var J;if(F&&b&&L.indexOf("ww")!==-1)J=d.worker_offscreen_canvas_support();else J=Promise.resolve(!1);J=J.then(function(O){S=O});var K=d.cib_can_use_region().then(function(O){x=O});return this.__initPromise=Promise.all([Y,H,J,K]).then(function(){return R}),this.__initPromise},T.prototype.__invokeResize=function(R,L){var M=this;return L.__mathCache=L.__mathCache||{},Promise.resolve().then(function(){if(!M.features.ww)return{data:M.__mathlib.resizeAndUnsharp(R,L.__mathCache)};return new Promise(function(U,Y){var H=M.__workersPool.acquire();if(L.cancelToken)L.cancelToken.catch(function(K){return Y(K)});H.value.onmessage=function(K){if(H.release(),K.data.err)Y(K.data.err);else U(K.data)};var J=[];if(R.src)J.push(R.src.buffer);if(R.srcBitmap)J.push(R.srcBitmap);H.value.postMessage({opts:R,features:M.__requested_features,preload:{wasm_nodule:M.__mathlib.__}},J)})})},T.prototype.__extractTileData=function(R,L,M,U,Y){if(this.features.ww&&S&&(d.isCanvas(L)||x))return this.debug("Create tile for OffscreenCanvas"),createImageBitmap(U.srcImageBitmap||L,R.x,R.y,R.width,R.height).then(function(K){return Y.srcBitmap=K,Y});if(d.isCanvas(L)){if(!U.srcCtx)U.srcCtx=L.getContext("2d",{alpha:Boolean(M.alpha)});return this.debug("Get tile pixel data"),Y.src=U.srcCtx.getImageData(R.x,R.y,R.width,R.height).data,Y}this.debug("Draw tile imageBitmap/image to temporary canvas");var H=this.options.createCanvas(R.width,R.height),J=H.getContext("2d",{alpha:Boolean(M.alpha)});return J.globalCompositeOperation="copy",J.drawImage(U.srcImageBitmap||L,R.x,R.y,R.width,R.height,0,0,R.width,R.height),this.debug("Get tile pixel data"),Y.src=J.getImageData(0,0,R.width,R.height).data,H.width=H.height=0,Y},T.prototype.__landTileData=function(R,L,M){var U;if(this.debug("Convert raw rgba tile result to ImageData"),L.bitmap)return M.toCtx.drawImage(L.bitmap,R.toX,R.toY),null;if(b)U=new ImageData(new Uint8ClampedArray(L.data),R.toWidth,R.toHeight);else if(U=M.toCtx.createImageData(R.toWidth,R.toHeight),U.data.set)U.data.set(L.data);else for(var Y=U.data.length-1;Y>=0;Y--)U.data[Y]=L.data[Y];if(this.debug("Draw tile"),m)M.toCtx.putImageData(U,R.toX,R.toY,R.toInnerX-R.toX,R.toInnerY-R.toY,R.toInnerWidth+0.00001,R.toInnerHeight+0.00001);else M.toCtx.putImageData(U,R.toX,R.toY,R.toInnerX-R.toX,R.toInnerY-R.toY,R.toInnerWidth,R.toInnerHeight);return null},T.prototype.__tileAndResize=function(R,L,M){var U=this,Y={srcCtx:null,srcImageBitmap:null,isImageBitmapReused:!1,toCtx:null},H=function(K){return U.__limit(function(){if(M.canceled)return M.cancelToken;var O={width:K.width,height:K.height,toWidth:K.toWidth,toHeight:K.toHeight,scaleX:K.scaleX,scaleY:K.scaleY,offsetX:K.offsetX,offsetY:K.offsetY,quality:M.quality,alpha:M.alpha,unsharpAmount:M.unsharpAmount,unsharpRadius:M.unsharpRadius,unsharpThreshold:M.unsharpThreshold};return U.debug("Invoke resize math"),Promise.resolve(O).then(function(_){return U.__extractTileData(K,R,M,Y,_)}).then(function(_){return U.debug("Invoke resize math"),U.__invokeResize(_,M)}).then(function(_){if(M.canceled)return M.cancelToken;return Y.srcImageData=null,U.__landTileData(K,_,Y)})})};return Promise.resolve().then(function(){if(Y.toCtx=L.getContext("2d",{alpha:Boolean(M.alpha)}),d.isCanvas(R))return null;if(d.isImageBitmap(R))return Y.srcImageBitmap=R,Y.isImageBitmapReused=!0,null;if(d.isImage(R)){if(!F)return null;return U.debug("Decode image via createImageBitmap"),createImageBitmap(R).then(function(J){Y.srcImageBitmap=J}).catch(function(J){return null})}throw Error('Pica: ".from" should be Image, Canvas or ImageBitmap')}).then(function(){if(M.canceled)return M.cancelToken;U.debug("Calculate tiles");var J=Q({width:M.width,height:M.height,srcTileSize:U.options.tile,toWidth:M.toWidth,toHeight:M.toHeight,destTileBorder:M.__destTileBorder}),K=J.map(function(_){return H(_)});function O(_){if(_.srcImageBitmap){if(!_.isImageBitmapReused)_.srcImageBitmap.close();_.srcImageBitmap=null}}return U.debug("Process tiles"),Promise.all(K).then(function(){return U.debug("Finished!"),O(Y),L},function(_){throw O(Y),_})})},T.prototype.__processStages=function(R,L,M,U){var Y=this;if(U.canceled)return U.cancelToken;var H=R.shift(),J=u(H,2),K=J[0],O=J[1],_=R.length===0;U=g({},U,{toWidth:K,toHeight:O,quality:_?U.quality:Math.min(1,U.quality)});var z;if(!_)z=this.options.createCanvas(K,O);return this.__tileAndResize(L,_?M:z,U).then(function(){if(_)return M;return U.width=K,U.height=O,Y.__processStages(R,z,M,U)}).then(function(j){if(z)z.width=z.height=0;return j})},T.prototype.__resizeViaCreateImageBitmap=function(R,L,M){var U=this,Y=L.getContext("2d",{alpha:Boolean(M.alpha)});return this.debug("Resize via createImageBitmap()"),createImageBitmap(R,{resizeWidth:M.toWidth,resizeHeight:M.toHeight,resizeQuality:d.cib_quality_name(M.quality)}).then(function(H){if(M.canceled)return M.cancelToken;if(!M.unsharpAmount)return Y.drawImage(H,0,0),H.close(),Y=null,U.debug("Finished!"),L;U.debug("Unsharp result");var J=U.options.createCanvas(M.toWidth,M.toHeight),K=J.getContext("2d",{alpha:Boolean(M.alpha)});K.drawImage(H,0,0),H.close();var O=K.getImageData(0,0,M.toWidth,M.toHeight);return U.__mathlib.unsharp_mask(O.data,M.toWidth,M.toHeight,M.unsharpAmount,M.unsharpRadius,M.unsharpThreshold),Y.putImageData(O,0,0),J.width=J.height=0,O=K=J=Y=null,U.debug("Finished!"),L})},T.prototype.resize=function(R,L,M){var U=this;this.debug("Start resize...");var Y=g({},w);if(!isNaN(M))Y=g(Y,{quality:M});else if(M)Y=g(Y,M);if(Y.toWidth=L.width,Y.toHeight=L.height,Y.width=R.naturalWidth||R.width,Y.height=R.naturalHeight||R.height,L.width===0||L.height===0)return Promise.reject(Error("Invalid output size: ".concat(L.width,"x").concat(L.height)));if(Y.unsharpRadius>2)Y.unsharpRadius=2;if(Y.canceled=!1,Y.cancelToken)Y.cancelToken=Y.cancelToken.then(function(J){throw Y.canceled=!0,J},function(J){throw Y.canceled=!0,J});var H=3;return Y.__destTileBorder=Math.ceil(Math.max(H,2.5*Y.unsharpRadius|0)),this.init().then(function(){if(Y.canceled)return Y.cancelToken;if(U.features.cib)return U.__resizeViaCreateImageBitmap(R,L,Y);if(!v){var J=Error("Pica: cannot use getImageData on canvas, make sure fingerprinting protection isn't enabled");throw J.code="ERR_GET_IMAGE_DATA",J}var K=h(Y.width,Y.height,Y.toWidth,Y.toHeight,U.options.tile,Y.__destTileBorder);return U.__processStages(K,R,L,Y)})},T.prototype.resizeBuffer=function(R){var L=this,M=g({},w,R);return this.init().then(function(){return L.__mathlib.resizeAndUnsharp(M)})},T.prototype.toBlob=function(R,L,M){return L=L||"image/png",new Promise(function(U){if(R.toBlob){R.toBlob(function(O){return U(O)},L,M);return}if(R.convertToBlob){U(R.convertToBlob({type:L,quality:M}));return}var Y=atob(R.toDataURL(L,M).split(",")[1]),H=Y.length,J=new Uint8Array(H);for(var K=0;K<H;K++)J[K]=Y.charCodeAt(K);U(new Blob([J],{type:L}))})},T.prototype.debug=function(){},r.exports=T},{"./lib/mathlib":1,"./lib/pool":13,"./lib/stepper":14,"./lib/tiler":15,"./lib/utils":16,"./lib/worker":17,"object-assign":23,webworkify:24}]},{},[])("/index.js")})}),B_=dEe(function(A){function e(n,o){var s=Error(n);return s.code=o,s}function t(n){var o=n.toString(16).toUpperCase();for(var s=2-o.length;s>0;s--)o="0"+o;return"0x"+o}function r(n){try{return unescape(encodeURIComponent(n))}catch(o){return n}}function i(n){try{return decodeURIComponent(escape(n))}catch(o){return n}}function u(n){return Object.prototype.toString.call(n)==="[object Uint8Array]"}function a(n,o,s){this.input=n.subarray(o,s),this.start=o;var l=String.fromCharCode.apply(null,this.input.subarray(0,4));if(l!=="II*\x00"&&l!=="MM\x00*")throw e("invalid TIFF signature","EBADDATA");this.big_endian=l[0]==="M"}a.prototype.each=function(n){this.aborted=!1;var o=this.read_uint32(4);this.ifds_to_read=[{id:0,offset:o}];while(this.ifds_to_read.length>0&&!this.aborted){var s=this.ifds_to_read.shift();if(!s.offset)continue;this.scan_ifd(s.id,s.offset,n)}},a.prototype.filter=function(n){var o={};o.ifd0={id:0,entries:[]},this.each(function(C){if(n(C)===!1&&!C.is_subifd_link)return;if(C.is_subifd_link&&C.count!==1&&C.format!==4)return;if(!o["ifd"+C.ifd])o["ifd"+C.ifd]={id:C.ifd,entries:[]};o["ifd"+C.ifd].entries.push(C)}),delete o.ifd1;var s=8;Object.keys(o).forEach(function(C){s+=2,o[C].entries.forEach(function(B){s+=12+(B.data_length>4?Math.ceil(B.data_length/2)*2:0)}),s+=4}),this.output=new Uint8Array(s),this.output[0]=this.output[1]=(this.big_endian?"M":"I").charCodeAt(0),this.write_uint16(2,42);var l=8,g=this;if(this.write_uint32(4,l),Object.keys(o).forEach(function(C){o[C].written_offset=l;var B=l,E=B+2+o[C].entries.length*12+4;l=E,g.write_uint16(B,o[C].entries.length),o[C].entries.sort(function(I,h){return I.tag-h.tag}).forEach(function(I,h){var Q=B+2+h*12;if(g.write_uint16(Q,I.tag),g.write_uint16(Q+2,I.format),g.write_uint32(Q+4,I.count),I.is_subifd_link){if(o["ifd"+I.tag])o["ifd"+I.tag].link_offset=Q+8}else if(I.data_length<=4)g.output.set(g.input.subarray(I.data_offset-g.start,I.data_offset-g.start+4),Q+8);else g.write_uint32(Q+8,l),g.output.set(g.input.subarray(I.data_offset-g.start,I.data_offset-g.start+I.data_length),l),l+=Math.ceil(I.data_length/2)*2});var d=o["ifd"+(o[C].id+1)];if(d)d.link_offset=E-4}),Object.keys(o).forEach(function(C){if(o[C].written_offset&&o[C].link_offset)g.write_uint32(o[C].link_offset,o[C].written_offset)}),this.output.length!==l)throw e("internal error: incorrect buffer size allocated");return this.output},a.prototype.read_uint16=function(n){var o=this.input;if(n+2>o.length)throw e("unexpected EOF","EBADDATA");return this.big_endian?o[n]*256+o[n+1]:o[n]+o[n+1]*256},a.prototype.read_uint32=function(n){var o=this.input;if(n+4>o.length)throw e("unexpected EOF","EBADDATA");return this.big_endian?o[n]*16777216+o[n+1]*65536+o[n+2]*256+o[n+3]:o[n]+o[n+1]*256+o[n+2]*65536+o[n+3]*16777216},a.prototype.write_uint16=function(n,o){var s=this.output;if(this.big_endian)s[n]=o>>>8&255,s[n+1]=o&255;else s[n]=o&255,s[n+1]=o>>>8&255},a.prototype.write_uint32=function(n,o){var s=this.output;if(this.big_endian)s[n]=o>>>24&255,s[n+1]=o>>>16&255,s[n+2]=o>>>8&255,s[n+3]=o&255;else s[n]=o&255,s[n+1]=o>>>8&255,s[n+2]=o>>>16&255,s[n+3]=o>>>24&255},a.prototype.is_subifd_link=function(n,o){return n===0&&o===34665||n===0&&o===34853||n===34665&&o===40965},a.prototype.exif_format_length=function(n){switch(n){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},a.prototype.exif_format_read=function(n,o){var s;switch(n){case 1:case 2:return s=this.input[o],s;case 6:return s=this.input[o],s|(s&128)*33554430;case 3:return s=this.read_uint16(o),s;case 8:return s=this.read_uint16(o),s|(s&32768)*131070;case 4:return s=this.read_uint32(o),s;case 9:return s=this.read_uint32(o),s|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}},a.prototype.scan_ifd=function(n,o,s){var l=this.read_uint16(o);o+=2;for(var g=0;g<l;g++){var C=this.read_uint16(o),B=this.read_uint16(o+2),E=this.read_uint32(o+4),d=this.exif_format_length(B),I=E*d,h=I<=4?o+8:this.read_uint32(o+8),Q=!1;if(h+I>this.input.length)throw e("unexpected EOF","EBADDATA");var p=[],m=h;for(var f=0;f<E;f++,m+=d){var D=this.exif_format_read(B,m);if(D===null){p=null;break}p.push(D)}if(Array.isArray(p)&&B===2){try{p=i(String.fromCharCode.apply(null,p))}catch(b){p=null}if(p&&p[p.length-1]==="\x00")p=p.slice(0,-1)}if(this.is_subifd_link(n,C)){if(Array.isArray(p)&&Number.isInteger(p[0])&&p[0]>0)this.ifds_to_read.push({id:C,offset:p[0]}),Q=!0}var w={is_big_endian:this.big_endian,ifd:n,tag:C,format:B,count:E,entry_offset:o+this.start,data_length:I,data_offset:h+this.start,value:p,is_subifd_link:Q};if(s(w)===!1){this.aborted=!0;return}o+=12}if(n===0)this.ifds_to_read.push({id:1,offset:this.read_uint32(o)})},A.exports.is_jpeg=function(n){return n.length>=4&&n[0]===255&&n[1]===216&&n[2]===255},A.exports.jpeg_segments_each=function(n,o){if(!u(n))throw e("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof o!=="function")throw e("Invalid argument (on_segment), Function expected","EINVAL");if(!A.exports.is_jpeg(n))throw e("Unknown file format","ENOTJPEG");var s=0,l=n.length,g=!1;for(;;){var C,B;if(s+1>=l)throw e("Unexpected EOF","EBADDATA");var E=n[s],d=n[s+1];if(E===255&&d===255)C=255,B=1;else if(E===255&&d!==0){if(C=d,B=2,208<=C&&C<=217||C===1);else{if(s+3>=l)throw e("Unexpected EOF","EBADDATA");if(B+=n[s+2]*256+n[s+3],B<2)throw e("Invalid segment length","EBADDATA");if(s+B-1>=l)throw e("Unexpected EOF","EBADDATA")}if(g)if(C>=208&&C<=215);else g=!1;if(C===218)g=!0}else if(g)for(var I=s+1;;I++){if(I>=l)throw e("Unexpected EOF","EBADDATA");if(n[I]===255){if(I+1>=l)throw e("Unexpected EOF","EBADDATA");if(n[I+1]!==0){C=0,B=I-s;break}}}else throw e("Unexpected byte at segment start: "+t(E)+" (offset "+t(s)+")","EBADDATA");if(o({code:C,offset:s,length:B})===!1)break;if(C===217)break;s+=B}},A.exports.jpeg_segments_filter=function(n,o){if(!u(n))throw e("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof o!=="function")throw e("Invalid argument (on_segment), Function expected","EINVAL");var s=[],l=0;A.exports.jpeg_segments_each(n,function(B){var E=o(B);if(u(E))s.push({data:E}),l+=E.length;else if(Array.isArray(E))E.filter(u).forEach(function(I){s.push({data:I}),l+=I.length});else if(E!==!1){var d={start:B.offset,end:B.offset+B.length};if(s.length>0&&s[s.length-1].end===d.start)s[s.length-1].end=d.end;else s.push(d);l+=B.length}});var g=new Uint8Array(l),C=0;return s.forEach(function(B){var E=B.data||n.subarray(B.start,B.end);g.set(E,C),C+=E.length}),g},A.exports.jpeg_exif_tags_each=function(n,o){if(!u(n))throw e("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof o!=="function")throw e("Invalid argument (on_exif_entry), Function expected","EINVAL");A.exports.jpeg_segments_each(n,function(s){if(s.code===218)return!1;if(s.code===225&&s.length>=10&&n[s.offset+4]===69&&n[s.offset+5]===120&&n[s.offset+6]===105&&n[s.offset+7]===102&&n[s.offset+8]===0&&n[s.offset+9]===0)return new a(n,s.offset+10,s.offset+s.length).each(o),!1})},A.exports.jpeg_exif_tags_filter=function(n,o){if(!u(n))throw e("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof o!=="function")throw e("Invalid argument (on_exif_entry), Function expected","EINVAL");var s=!1;return A.exports.jpeg_segments_filter(n,function(l){if(s)return;if(l.code===218)s=!0;if(l.code===225&&l.length>=10&&n[l.offset+4]===69&&n[l.offset+5]===120&&n[l.offset+6]===105&&n[l.offset+7]===102&&n[l.offset+8]===0&&n[l.offset+9]===0){var g=new a(n,l.offset+10,l.offset+l.length).filter(o);if(!g)return!1;var C=new Uint8Array(10);return C.set(n.slice(l.offset,l.offset+10)),C[2]=g.length+8>>>8&255,C[3]=g.length+8&255,s=!0,[C,g]}})},A.exports.jpeg_add_comment=function(n,o){var s=!1,l=0;return A.exports.jpeg_segments_filter(n,function(g){if(l++,l===1&&g.code===216)return;if(l===2&&g.code===224)return;if(s)return;o=r(o);var C=new Uint8Array(5+o.length),B=0;return C[B++]=255,C[B++]=254,C[B++]=o.length+3>>>8&255,C[B++]=o.length+3&255,o.split("").forEach(function(E){C[B++]=E.charCodeAt(0)&255}),C[B++]=0,s=!0,[C,n.subarray(g.offset,g.offset+g.length)]})}});QXt=hEe,pXt=QEe,fXt=pEe,mXt=hXt,DXt={jpeg_patch_exif:QXt,jpeg_rotate_canvas:pXt,jpeg_attach_orig_segments:fXt,assign:mXt};z0.prototype.use=function(A){var e=[this].concat(Array.prototype.slice.call(arguments,1));return A.apply(A,e),this};z0.prototype.init=function(){this.use(DXt.assign)};z0.prototype.toBlob=function(A,e){var t=OdA.assign({max:1/0},e),r={blob:A,opts:t};if(!this.initialized)this.init(),this.initialized=!0;return Promise.resolve(r).then(this._blob_to_image).then(this._calculate_size).then(this._transform).then(this._cleanup).then(this._create_blob).then(function(i){return i.out_canvas.width=i.out_canvas.height=0,i.out_blob})};z0.prototype.toCanvas=function(A,e){var t=OdA.assign({max:1/0},e),r={blob:A,opts:t};if(!this.initialized)this.init(),this.initialized=!0;return Promise.resolve(r).then(this._blob_to_image).then(this._calculate_size).then(this._transform).then(this._cleanup).then(function(i){return i.out_canvas})};z0.prototype.before=function(A,e){if(!this[A])throw Error('Method "'+A+'" does not exist');if(typeof e!=="function")throw Error('Invalid argument "fn", function expected');var t=this[A],r=this;return this[A]=function(i){return e.call(r,i).then(function(u){return t.call(r,u)})},this};z0.prototype.after=function(A,e){if(!this[A])throw Error('Method "'+A+'" does not exist');if(typeof e!=="function")throw Error('Invalid argument "fn", function expected');var t=this[A],r=this;return this[A]=function(i){return t.call(r,i).then(function(u){return e.call(r,u)})},this};z0.prototype._blob_to_image=function(A){var e=window.URL||window.webkitURL||window.mozURL||window.msURL;return A.image=document.createElement("img"),A.image_url=e.createObjectURL(A.blob),A.image.src=A.image_url,new Promise(function(t,r){A.image.onerror=function(){r(Error("ImageBlobReduce: failed to create Image() from blob"))},A.image.onload=function(){t(A)}})};z0.prototype._calculate_size=function(A){var e=A.opts.max/Math.max(A.image.width,A.image.height);if(e>1)e=1;return A.transform_width=Math.max(Math.round(A.image.width*e),1),A.transform_height=Math.max(Math.round(A.image.height*e),1),A.scale_factor=e,Promise.resolve(A)};z0.prototype._transform=function(A){A.out_canvas=this.pica.options.createCanvas(A.transform_width,A.transform_height),A.transform_width=null,A.transform_height=null;var e={alpha:A.blob.type==="image/png"};return this.utils.assign(e,this.utils.pick_pica_resize_options(A.opts)),this.pica.resize(A.image,A.out_canvas,e).then(function(){return A})};z0.prototype._cleanup=function(A){A.image.src="",A.image=null;var e=window.URL||window.webkitURL||window.mozURL||window.msURL;if(e.revokeObjectURL)e.revokeObjectURL(A.image_url);return A.image_url=null,Promise.resolve(A)};z0.prototype._create_blob=function(A){return this.pica.toBlob(A.out_canvas,A.blob.type).then(function(e){return A.out_blob=e,A})};z0.prototype._getUint8Array=function(A){if(A.arrayBuffer)return A.arrayBuffer().then(function(e){return new Uint8Array(e)});return new Promise(function(e,t){var r=new FileReader;r.readAsArrayBuffer(A),r.onload=function(){e(new Uint8Array(r.result))},r.onerror=function(){t(Error("ImageBlobReduce: failed to load data from input blob")),r.abort()},r.onabort=function(){t(Error("ImageBlobReduce: failed to load data from input blob (aborted)"))}})};z0.pica=IEe;yXt=z0,wXt=yXt});function P1(A){return A*Math.PI/180}function R9(A){return A*180/Math.PI}function JXt(A){return Math.abs(Math.sin(2*A))<0.0001}function Oo(A,e,t=0,r=0){return[A-t,e-r]}function Mt(A,e=[0,0]){return Oo(A[0]-e[0],A[1]-e[1])}function Eo(A,e){return A[0]*e[1]-e[0]*A[1]}function xIA(A,e){return A[0]*e[0]+A[1]*e[1]}function J1(A,e){return[A[0]+e[0],A[1]+e[1]]}function S8(A,e){return[A[0]-e[0],A[1]-e[1]]}function ba(A,e){return Oo(A[0]*e,A[1]*e)}function OXt(A){return A[0]*A[0]+A[1]*A[1]}function PXt(A){return Math.sqrt(OXt(A))}function X(A,e){return[A,e]}function SIA(A){return A.length===2?X(A[0],A[1]):void 0}function Xr(A,e=X(0,0)){return X(e[0]+A[0],e[1]+A[1])}function _Xt(A){return Array.isArray(A)&&A.length===2&&typeof A[0]=="number"&&!isNaN(A[0])&&typeof A[1]=="number"&&!isNaN(A[1])}function nB(A,e){let t=Math.abs;return t(A[0]-e[0])<0.0001&&t(A[1]-e[1])<0.0001}function ye([A,e],[t,r],i){return X((A-t)*Math.cos(i)-(e-r)*Math.sin(i)+t,(A-t)*Math.sin(i)+(e-r)*Math.cos(i)+r)}function k_(A,e=[0,0]){return X(A[0]+e[0],A[1]+e[1])}function z8(A,e){return X((A[0]+e[0])/2,(A[1]+e[1])/2)}function Li(A,e){return Math.hypot(e[0]-A[0],e[1]-A[1])}function L8(A,e){let t=e[0]-A[0],r=e[1]-A[1];return t*t+r*r}function iIA(A,e){return[A,e]}function WXt(A,e){let t=A[1][1]-A[0][1],r=A[0][0]-A[1][0],i=e[1][1]-e[0][1],u=e[0][0]-e[1][0],a=t*u-i*r;if(a!==0){let n=t*A[0][0]+r*A[0][1],o=i*e[0][0]+u*e[0][1];return X((n*u-o*r)/a,(t*o-i*n)/a)}return null}function _t(A,e){return[A,e]}function R8(A,e){let t=WXt(iIA(A[0],A[1]),iIA(e[0],e[1]));return!t||!e2(t,e)||!e2(t,A)?null:t}function uIA(A,e){return[A,e]}function qXt(A,e){return[_t(A[0],X(A[1][0],A[0][1])),_t(X(A[1][0],A[0][1]),A[1]),_t(A[1],X(A[0][0],A[1][1])),_t(X(A[0][0],A[1][1]),A[0])].map((t)=>R8(e,t)).filter((t)=>!!t)}function Yh(A,e,t,r){return[A,e,t,r]}function DEe(A,e,t,r=0.000001){return[(A(e+r,t)-A(e-r,t))/(2*r),(A(e,t+r)-A(e,t-r))/(2*r)]}function zXt(A,e,t,r=0.001,i=10){let u=1/0,a=0;for(;u>=r;){if(a>=i)return null;let n=A(e,t),o=[DEe((d,I)=>A(d,I)[0],e,t),DEe((d,I)=>A(d,I)[1],e,t)],s=[[-n[0]],[-n[1]]],l=o[0][0]*o[1][1]-o[0][1]*o[1][0];if(l===0)return null;let g=[[o[1][1]/l,-o[0][1]/l],[-o[1][0]/l,o[0][0]/l]],C=[[g[0][0]*s[0][0]+g[0][1]*s[1][0]],[g[1][0]*s[0][0]+g[1][1]*s[1][0]]];e=e+C[0][0],t=t+C[1][0];let[B,E]=A(e,t);u=Math.max(Math.abs(B),Math.abs(E)),a+=1}return[e,t]}function oIe(A,e){let t=VXt(A);if(qXt(uIA(X(t[0],t[1]),X(t[2],t[3])),e).length===0)return[];let r=(n)=>X(e[0][0]+n*(e[1][0]-e[0][0]),e[0][1]+n*(e[1][1]-e[0][1])),i=[[0.5,0],[0.2,0],[0.8,0]],u=([n,o])=>{let s=zXt((C,B)=>{let E=F8(A,C),d=r(B);return[E[0]-d[0],E[1]-d[1]]},n,o);if(!s)return null;let[l,g]=s;return l<0||l>1||g<0||g>1?null:F8(A,l)},a=u(i[0]);return a?[a]:(a=u(i[1]),a?[a]:(a=u(i[2]),a?[a]:[]))}function ZXt(A,e,t=0.001){let r=(o,s,l,g=t)=>{let C=o,B=s,E;for(;B-C>g;)E=(B+C)/2,l(E-g)<l(E+g)?B=E:C=E;return E},i=0;for(let o=1/0,s=0;s<30;s++){let l=Li(e,F8(A,s/30));l<o&&(o=l,i=s)}let u=Math.max((i-1)/30,0),a=Math.min((i+1)/30,1),n=r(u,a,(o)=>Li(e,F8(A,o)));return n?F8(A,n):null}function sIe(A,e){let t=ZXt(A,e);return t?Li(e,t):0}function VXt(A){let[e,t,r,i]=A,u=[e[0],t[0],r[0],i[0]],a=[e[1],t[1],r[1],i[1]];return[Math.min(...u),Math.min(...a),Math.max(...u),Math.max(...a)]}function yEe(...A){return lIe(A)}function F_(A){return lIe(A)}function lIe(A){return XXt(A)?A:[...A,A[0]]}function XXt(A){return nB(A[0],A[A.length-1])}function Z0(A,e){return Sg([A,e])}function c9([A,e,t],r){let i=(l,g,C)=>(l[0]-C[0])*(g[1]-C[1])-(g[0]-C[0])*(l[1]-C[1]),u=i(r,A,e),a=i(r,e,t),n=i(r,t,A),o=u<0||a<0||n<0,s=u>0||a>0||n>0;return!(o&&s)}function fn(A,e){if(!A)throw Error(e)}function oa(A,e,t,r){return A?(A?.addEventListener?.(e,t,r),()=>{A?.removeEventListener?.(e,t,r)}):()=>{}}function DIe(A,e=!0){let t=A.length;if(t<4)return"";let r=A[0],i=A[1],u=A[2],a=`M${r[0].toFixed(2)},${r[1].toFixed(2)} Q${i[0].toFixed(2)},${i[1].toFixed(2)} ${E_(i[0],u[0]).toFixed(2)},${E_(i[1],u[1]).toFixed(2)} T`;for(let n=2,o=t-1;n<o;n++)r=A[n],i=A[n+1],a+=`${E_(r[0],i[0]).toFixed(2)},${E_(r[1],i[1]).toFixed(2)} `;return e&&(a+="Z"),a}function pQe(A,e,t){return{center:A,halfWidth:e,halfHeight:t}}function mir({center:A,halfWidth:e,halfHeight:t},[r,i]){let[u,a]=A,n=r[0]-u,o=r[1]-a,s=i[0]-u,l=i[1]-a,g=Math.pow(s-n,2)/Math.pow(e,2)+Math.pow(l-o,2)/Math.pow(t,2),C=2*(n*(s-n)/Math.pow(e,2)+o*(l-o)/Math.pow(t,2)),B=Math.pow(n,2)/Math.pow(e,2)+Math.pow(o,2)/Math.pow(t,2)-1,E=(-C+Math.sqrt(Math.pow(C,2)-4*g*B))/(2*g),d=(-C-Math.sqrt(Math.pow(C,2)-4*g*B))/(2*g),I=[X(n+E*(s-n)+u,o+E*(l-o)+a),X(n+d*(s-n)+u,o+d*(l-o)+a)].filter((h)=>!isNaN(h[0])&&!isNaN(h[1]));return I.length===2&&nB(I[0],I[1])?[I[0]]:I}function fQe(A,e=0){let t=Gc(Math.min(A.width,A.height),A);if(t<=0){let g=uIA(X(A.x-e,A.y-e),X(A.x+A.width+e,A.y+A.height+e)),C=_t(X(g[0][0]+t,g[0][1]),X(g[1][0]-t,g[0][1])),B=_t(X(g[1][0],g[0][1]+t),X(g[1][0],g[1][1]-t)),E=_t(X(g[0][0]+t,g[1][1]),X(g[1][0]-t,g[1][1])),d=_t(X(g[0][0],g[1][1]-t),X(g[0][0],g[0][1]+t));return[[C,B,E,d],[]]}let r=X(A.x+A.width/2,A.y+A.height/2),i=uIA(X(A.x,A.y),X(A.x+A.width,A.y+A.height)),u=_t(X(i[0][0]+t,i[0][1]),X(i[1][0]-t,i[0][1])),a=_t(X(i[1][0],i[0][1]+t),X(i[1][0],i[1][1]-t)),n=_t(X(i[0][0]+t,i[1][1]),X(i[1][0]-t,i[1][1])),o=_t(X(i[0][0],i[1][1]-t),X(i[0][0],i[0][1]+t)),s=[ba(p0(Mt(X(i[0][0]-e,i[0][1]-e),r)),e),ba(p0(Mt(X(i[1][0]+e,i[0][1]-e),r)),e),ba(p0(Mt(X(i[1][0]+e,i[1][1]+e),r)),e),ba(p0(Mt(X(i[0][0]-e,i[1][1]+e),r)),e)],l=[Yh(Xr(s[0],o[1]),Xr(s[0],X(o[1][0]+0.6666666666666666*(i[0][0]-o[1][0]),o[1][1]+0.6666666666666666*(i[0][1]-o[1][1]))),Xr(s[0],X(u[0][0]+0.6666666666666666*(i[0][0]-u[0][0]),u[0][1]+0.6666666666666666*(i[0][1]-u[0][1]))),Xr(s[0],u[0])),Yh(Xr(s[1],u[1]),Xr(s[1],X(u[1][0]+0.6666666666666666*(i[1][0]-u[1][0]),u[1][1]+0.6666666666666666*(i[0][1]-u[1][1]))),Xr(s[1],X(a[0][0]+0.6666666666666666*(i[1][0]-a[0][0]),a[0][1]+0.6666666666666666*(i[0][1]-a[0][1]))),Xr(s[1],a[0])),Yh(Xr(s[2],a[1]),Xr(s[2],X(a[1][0]+0.6666666666666666*(i[1][0]-a[1][0]),a[1][1]+0.6666666666666666*(i[1][1]-a[1][1]))),Xr(s[2],X(n[1][0]+0.6666666666666666*(i[1][0]-n[1][0]),n[1][1]+0.6666666666666666*(i[1][1]-n[1][1]))),Xr(s[2],n[1])),Yh(Xr(s[3],n[0]),Xr(s[3],X(n[0][0]+0.6666666666666666*(i[0][0]-n[0][0]),n[0][1]+0.6666666666666666*(i[1][1]-n[0][1]))),Xr(s[3],X(o[0][0]+0.6666666666666666*(i[0][0]-o[0][0]),o[0][1]+0.6666666666666666*(i[1][1]-o[0][1]))),Xr(s[3],o[0]))];return[[_t(l[0][3],l[1][0]),_t(l[1][3],l[2][0]),_t(l[2][3],l[3][0]),_t(l[3][3],l[0][0])],l]}function mQe(A,e=0){let[t,r,i,u,a,n,o,s]=JQe(A),l=Gc(Math.abs(t-o),A),g=Gc(Math.abs(u-r),A);if(A.roundness?.type==null){let[p,m,f,D]=[X(A.x+t,A.y+r-e),X(A.x+i+e,A.y+u),X(A.x+a,A.y+n+e),X(A.x+o-e,A.y+s)],w=_t(X(p[0]+l,p[1]+g),X(m[0]-l,m[1]-g)),b=_t(X(m[0]-l,m[1]+g),X(f[0]+l,f[1]-g)),F=_t(X(f[0]-l,f[1]-g),X(D[0]+l,D[1]+g)),v=_t(X(D[0]+l,D[1]-g),X(p[0]-l,p[1]+g));return[[w,b,F,v],[]]}let C=X(A.x+A.width/2,A.y+A.height/2),[B,E,d,I]=[X(A.x+t,A.y+r),X(A.x+i,A.y+u),X(A.x+a,A.y+n),X(A.x+o,A.y+s)],h=[ba(p0(Mt(E,C)),e),ba(p0(Mt(d,C)),e),ba(p0(Mt(I,C)),e),ba(p0(Mt(B,C)),e)],Q=[Yh(Xr(h[0],X(E[0]-l,E[1]-g)),Xr(h[0],E),Xr(h[0],E),Xr(h[0],X(E[0]-l,E[1]+g))),Yh(Xr(h[1],X(d[0]+l,d[1]-g)),Xr(h[1],d),Xr(h[1],d),Xr(h[1],X(d[0]-l,d[1]-g))),Yh(Xr(h[2],X(I[0]+l,I[1]+g)),Xr(h[2],I),Xr(h[2],I),Xr(h[2],X(I[0]+l,I[1]-g))),Yh(Xr(h[3],X(B[0]-l,B[1]+g)),Xr(h[3],B),Xr(h[3],B),Xr(h[3],X(B[0]+l,B[1]+g)))];return[[_t(Q[0][3],Q[1][0]),_t(Q[1][3],Q[2][0]),_t(Q[2][3],Q[3][0]),_t(Q[3][3],Q[0][0])],Q]}function Tir(A){let e=RhA(A),t=new Path2D(e);return TQe.set(A,t),t}function Yir(A){return TQe.get(A)}function RhA(A){let e=A.simulatePressure?A.points:A.points.length?A.points.map(([r,i],u)=>[r,i,A.pressures[u]]):[[0,0,0.5]],t={simulatePressure:A.simulatePressure,size:A.strokeWidth*4.25,thinning:0.6,smoothing:0.5,streamline:0.5,easing:(r)=>Math.sin(r*Math.PI/2),last:!!A.lastCommittedPoint};return Kir(nBe(e,t))}function REe(A,e){return[(A[0]+e[0])/2,(A[1]+e[1])/2]}function Kir(A){if(!A.length)return"";let e=A.length-1;return A.reduce((t,r,i,u)=>(i===e?t.push(r,REe(r,u[0]),"L",u[0],"Z"):t.push(r,REe(r,u[i+1])),t),["M",A[0],"Q"]).join(" ").replace(Hir,"$1")}function Oir(A){let e=A.roughness,t=Math.max(A.width,A.height),r=Math.min(A.width,A.height);return r>=20&&t>=50||r>=15&&A.roundness&&QW(A.type)||Nr(A)&&t>=50?e:Math.min(e/(t<10?3:2),2.5)}function P4e(A){let e=[];for(let t of A.childNodes)if(t.nodeType===3){let r=t.textContent?.trim();r&&e.push({type:"text",value:r})}else if(t instanceof HTMLImageElement){let r=t.getAttribute("src");r&&r.startsWith("http")&&e.push({type:"imageUrl",value:r})}else e=e.concat(P4e(t));return e}function dde(A){return[Math.min(A[0][0],A[1][0]),Math.min(A[0][1],A[1][1]),Math.max(A[0][0],A[1][0]),Math.max(A[0][1],A[1][1])]}function _ar(A,e){return A[0]<=e[2]&&A[2]>=e[0]&&A[1]<=e[3]&&A[3]>=e[1]}function Ide(A,e){let t=Mt(A[1],A[0]),r=Mt(e,A[0]),i=Eo(t,r);return Math.abs(i)<War}function eIA(A,e){let t=Mt(A[1],A[0]),r=Mt(e,A[0]);return Eo(t,r)<0}function hde(A,e){return Ide(A,e[0])||Ide(A,e[1])||(eIA(A,e[0])?!eIA(A,e[1]):eIA(A,e[1]))}function qar(A,e){return _ar(dde(A),dde(e))&&hde(A,e)&&hde(e,A)}function xQA(A,e,t){let r=UEe(e,t),i=UEe(A,t);return r.some((u)=>i.some((a)=>qar(u,a)))}var IIA,vde,iIe,uIe,C4e,bXt=(A,e)=>e.reduce((t,r)=>((r in A)&&(t[r]=A[r]),t),{}),kde=5,n2=5,vXt=4,B9=4,E9=1,tB,rB=(A,e)=>e.map((t)=>ua[A][t]),zr,Fde,hIA,QIA,pIA,xde,Sde,kXt=(A)=>[zr.cyan[A],zr.blue[A],zr.violet[A],zr.grape[A],zr.pink[A],zr.green[A],zr.teal[A],zr.yellow[A],zr.orange[A],zr.red[A]],Lde=(A,e,t)=>`#${(16777216+(A<<16)+(e<<8)+t).toString(16).slice(1)}`,BB,fIA,FXt,x9,xXt,Rde,mIA,Nde=()=>navigator.brave?.isBrave?.name==="isBrave",J_,Gde="Excalidraw",SXt=36,$1=10,H8=8,Ude=5,DIA=1,Mde=30,z1,Tde="red",iu,Jh,o2,K8,Js,s2,d9="Xiaolai",x8="Segoe UI Emoji",aa,I9,Yde=(A)=>{switch(A){case aa.Excalifont:return[d9,x8];default:return[x8]}},$r,Zu,yIA=1,wd=20,Oh,S9="left",J8="top",Z1=2,w_,LXt=0.00001,Hde,O8="#ffffff",Kde="#1e1e1e",Jde="#a2f1a6",P8=20,Ode=5,l2,Xt,RXt,O_,Fg,P_,Pde=500,_de=300,Wde=500,qde=100,_8=0.1,__=0.1,W_=30,zde=300,q_="invert(93%) hue-rotate(180deg)",wIA,Zde=730,Vde=1000,jde=500,Xde=1229,m8=2,z_,g2=10,$de=1440,bIA=4194304,wi="http://www.w3.org/2000/svg",W8,pn=5,NXt=0.7,GXt=11,Ul,D9,UXt=20,PdA=0.25,MXt=32,mn,AIe,Z_,Ta,q8="library",c2="search",Kc,vIA,On,L9,kIA="Untitled",A2,Rg=1,ho,FIA=0.3,b_="element",TXt,eIe,YXt,EB=()=>({showWelcomeScreen:!1,theme:$r.LIGHT,collaborators:new Map,currentChartType:"bar",currentItemBackgroundColor:Ta.backgroundColor,currentItemEndArrowhead:"arrow",currentItemFillStyle:Ta.fillStyle,currentItemFontFamily:Oh,currentItemFontSize:wd,currentItemOpacity:Ta.opacity,currentItemRoughness:Ta.roughness,currentItemStartArrowhead:null,currentItemStrokeColor:Ta.strokeColor,currentItemRoundness:"round",currentItemArrowType:ho.round,currentItemStrokeStyle:Ta.strokeStyle,currentItemStrokeWidth:Ta.strokeWidth,currentItemTextAlign:S9,currentHoveredFontFamily:null,cursorButton:"up",activeEmbeddable:null,newElement:null,editingTextElement:null,editingGroupId:null,editingLinearElement:null,activeTool:{type:"selection",customType:null,locked:Ta.locked,lastActiveTool:null},penMode:!1,penDetected:!1,errorMessage:null,exportBackground:!0,exportScale:YXt,exportEmbedScene:!1,exportWithDarkMode:!1,fileHandle:null,gridSize:P8,gridStep:Ode,gridModeEnabled:!1,isBindingEnabled:!0,defaultSidebarDockedPreference:!1,isLoading:!1,isResizing:!1,isRotating:!1,lastPointerDownWith:"mouse",multiElement:null,name:null,contextMenu:null,openMenu:null,openPopup:null,openSidebar:null,openDialog:null,pasteDialog:{shown:!1,data:null},previousSelectedElementIds:{},resizingElement:null,scrolledOutside:!1,scrollX:0,scrollY:0,selectedElementIds:{},hoveredElementIds:{},selectedGroupIds:{},selectedElementsAreBeingDragged:!1,selectionElement:null,shouldCacheIgnoreZoom:!1,stats:{open:!1,panels:A2.generalStats|A2.elementProperties},startBoundElement:null,suggestedBindings:[],frameRendering:{enabled:!0,clip:!0,name:!0,outline:!0},frameToHighlight:null,editingFrame:null,elementsToHighlight:null,toast:null,viewBackgroundColor:zr.white,zenModeEnabled:!1,zoom:{value:1},viewModeEnabled:!1,pendingImageElementId:null,showHyperlinkPopup:!1,selectedLinearElement:null,snapLines:[],originSnapOffset:{x:0,y:0},objectsSnapModeEnabled:!1,userToFollow:null,followedBy:new Set,isCropping:!1,croppingElementId:null,searchMatches:[]}),HXt,tIe=(A,e)=>{let t={};for(let r of Object.keys(A))if(HXt[r]?.[e]){let i=A[r];t[r]=i}return t},rIe=(A)=>tIe(A,"export"),KXt=(A)=>tIe(A,"server"),dB=({activeTool:A})=>A.type==="eraser",C2=({activeTool:A})=>A.type==="hand",Vr=(A,e,t)=>Math.min(Math.max(A,e),t),IB=(A,e,t="round")=>{let r=Math.pow(10,e);return Math[t]((A+Number.EPSILON)*r)/r},aIe=(A,e,t="round")=>{let r=1/e;return Math[t](A*r)/r},E_=(A,e)=>(A+e)/2,f9=(A)=>typeof A=="number"&&Number.isFinite(A),mEe=(A,e,t=0.0001)=>Math.abs(A-e)<t,v_=(A)=>A<0?A+2*Math.PI:A>=2*Math.PI?A-2*Math.PI:A,p0=(A)=>{let e=PXt(A);return e===0?Oo(0,0):Oo(A[0]/e,A[1]/e)},Uh=(A,e,t)=>k_(e,ba(Mt(A,e),t)),nIe=(A,e,t)=>e[0]<=Math.max(A[0],t[0])&&e[0]>=Math.min(A[0],t[0])&&e[1]<=Math.max(A[1],t[1])&&e[1]>=Math.min(A[1],t[1]),e2=(A,e,t=0.0001)=>{let r=LIA(A,e);return r===0?!0:r<t},LIA=(A,e)=>{let[t,r]=A,[[i,u],[a,n]]=e,o=t-i,s=r-u,l=a-i,g=n-u,C=o*l+s*g,B=l*l+g*g,E=-1;B!==0&&(E=C/B);let d,I;E<0?(d=i,I=u):E>1?(d=a,I=n):(d=i+E*l,I=u+E*g);let h=t-d,Q=r-I;return Math.sqrt(h*h+Q*Q)},F8=(A,e)=>X((1-e)**3*A[0][0]+3*(1-e)**2*e*A[1][0]+3*(1-e)*e**2*A[2][0]+e**3*A[3][0],(1-e)**3*A[0][1]+3*(1-e)**2*e*A[1][1]+3*(1-e)*e**2*A[2][1]+e**3*A[3][1]),wEe=(A,e)=>{let t=A[0],r=A[1],i=!1;for(let u=0,a=e.length-1;u<e.length;a=u++){let n=e[u][0],o=e[u][1],s=e[a][0],l=e[a][1];(o>r&&l<=r||o<=r&&l>r)&&t<(s-n)*(r-o)/(l-o)+n&&(i=!i)}return i},jXt=(A,e,t=0.0001)=>{let r=!1;for(let i=0,u=e.length-1;i<u;i++)if(e2(A,_t(e[i],e[i+1]),t)){r=!0;break}return r},x_=([A,e],[t,r])=>A<=t?e>=t:A>=t?r>=A:!1,S_=([A,e],[t,r])=>{let i=Math.max(A,t),u=Math.min(e,r);return i<=u?Sg([i,u]):null},d_=(A,[e,t])=>A>=e&&A<=t,bEe=null,RIA=()=>{if(bEe)return bEe;let A=new Date,e=A.getFullYear(),t=`${A.getMonth()+1}`.padStart(2,"0"),r=`${A.getDate()}`.padStart(2,"0"),i=`${A.getHours()}`.padStart(2,"0"),u=`${A.getMinutes()}`.padStart(2,"0");return`${e}-${t}-${r}-${i}${u}`},N9=(A)=>A.charAt(0).toUpperCase()+A.slice(1),gIe=(A)=>A instanceof HTMLElement&&A.className.includes("ToolIcon"),V_=(A)=>A instanceof HTMLElement&&A.dataset.type==="wysiwyg"||A instanceof HTMLBRElement||A instanceof HTMLInputElement||A instanceof HTMLTextAreaElement||A instanceof HTMLSelectElement,cIe=(A)=>V_(A)||A instanceof Element&&!!A.closest("label, button"),Ap=(A)=>A instanceof HTMLElement&&A.dataset.type==="wysiwyg"||A instanceof HTMLBRElement||A instanceof HTMLTextAreaElement||A instanceof HTMLInputElement&&(A.type==="text"||A.type==="number"||A.type==="password"),B2=({fontFamily:A})=>{for(let[e,t]of Object.entries(aa))if(t===A)return`${e}${Yde(t).map((r)=>`, ${r}`).join("")}`;return x8},cu=({fontSize:A,fontFamily:e})=>`${A}px ${B2({fontFamily:e})}`,E2=(A,e)=>{let t=0,r=null,i=(...u)=>{r=u,clearTimeout(t),t=window.setTimeout(()=>{r=null,A(...u)},e)};return i.flush=()=>{if(clearTimeout(t),r){let u=r;r=null,A(...u)}},i.cancel=()=>{r=null,clearTimeout(t)},i},Z8=(A,e)=>{let t=null,r=null,i=null,u=(n)=>{t=window.requestAnimationFrame(()=>{t=null,A(...n),r=null,i&&(r=i,i=null,u(r))})},a=(...n)=>{if(Qr.MODE==="test"){A(...n);return}r=n,t===null?u(r):e?.trailing&&(i=n)};return a.flush=()=>{t!==null&&(cancelAnimationFrame(t),t=null),r&&(A(...i||r),r=i=null)},a.cancel=()=>{r=i=null,t!==null&&(cancelAnimationFrame(t),t=null)},a},ep=(A)=>1-Math.pow(1-A,4),vEe=(A,e,t)=>(e-A)*ep(t)+A,CIe=({fromValues:A,toValues:e,onStep:t,duration:r=250,interpolateValue:i,onStart:u,onEnd:a,onCancel:n})=>{let o=!1,s=0,l;function g(C){if(o)return;l===void 0&&(l=C,u?.());let B=Math.min(C-l,r),E=ep(B/r),d={};if(Object.keys(A).forEach((I)=>{let h=I,Q=(e[h]-A[h])*E+A[h];d[h]=Q}),t(d),B<r){let I=B/r,h={};Object.keys(A).forEach((Q)=>{let p=Q,m=A[p],f=e[p],D;D=i?i(m,f,I,p):vEe(m,f,I),D==null&&(D=vEe(m,f,I)),h[p]=D}),t(h),s=window.requestAnimationFrame(g)}else t(e),a?.()}return s=window.requestAnimationFrame(g),()=>{n?.(),o=!0,window.cancelAnimationFrame(s)}},BIe=(A,e)=>{if(!A.length||e<1)return[];let t=0,r=0,i=Array(Math.ceil(A.length/e));for(;t<A.length;)i[r++]=A.slice(t,t+=e);return i},f0=(A,e)=>Math.abs(A-e),un=(A,e)=>e.type==="custom"?{...A.activeTool,type:"custom",customType:e.customType,locked:e.locked??A.activeTool.locked}:{...A.activeTool,lastActiveTool:e.lastActiveToolBeforeEraser===void 0?A.activeTool.lastActiveTool:e.lastActiveToolBeforeEraser,type:e.type,customType:null,locked:e.locked??A.activeTool.locked},Fe=(A)=>(A=A.replace(/\bAlt\b/i,"Alt").replace(/\bShift\b/i,"Shift").replace(/\b(Enter|Return)\b/i,"Enter"),BB?A.replace(/\bCtrlOrCmd\b/gi,"Cmd").replace(/\bAlt\b/i,"Option"):A.replace(/\bCtrlOrCmd\b/gi,"Ctrl")),Ru=({clientX:A,clientY:e},{zoom:t,offsetLeft:r,offsetTop:i,scrollX:u,scrollY:a})=>{let n=(A-r)/t.value-u,o=(e-i)/t.value-a;return{x:n,y:o}},Mc=({sceneX:A,sceneY:e},{zoom:t,offsetLeft:r,offsetTop:i,scrollX:u,scrollY:a})=>{let n=(A+u)*t.value+r,o=(e+a)*t.value+i;return{x:n,y:o}},V8=(A)=>getComputedStyle(document.documentElement).getPropertyValue(`--${A}`),$Xt="A-Za-zÀ-ÖØ-öø-ʸ̀-ࠀ-Ⰰ-﷾--",A$t="֑-߿יִ-﷽ﹰ-ﻼ",e$t,EIe=(A)=>e$t.test(A),Nc=(A)=>{let[e,t]=A;return{x:e,y:t}},NIA=(A)=>{if(A?.name==="AbortError"){console.warn(A);return}throw A},GIA=(A,e,t=0)=>{t<0&&(t=A.length+t),t=Math.min(A.length,Math.max(t,0));let r=t-1;for(;++r<A.length;)if(e(A[r],r,A))return r;return-1},tp=(A,e,t=A.length-1)=>{t<0&&(t=A.length+t),t=Math.min(A.length-1,Math.max(t,0));let r=t+1;for(;--r>-1;)if(e(A[r],r,A))return r;return-1},Rc=(A)=>{let e=A.length===5&&A.substr(4,1)==="0",t=A.length===9&&A.substr(7,2)==="00";return e||t||A===zr.transparent},_dA=(A)=>A.fillStyle!=="solid"||Rc(A.backgroundColor),dIe=()=>{let A,e,t=new Promise((r,i)=>{A=r,e=i});return t.resolve=A,t.reject=e,t},IIe=(A)=>{let e=A.parentElement;for(;e;){if(e===document.body)return document;let{overflowY:t}=window.getComputedStyle(e);if(e.scrollHeight>e.clientHeight&&(t==="auto"||t==="scroll"||t==="overlay"))return e;e=e.parentElement}return document},hIe=(A)=>{let e=A.parentElement;for(;e;){if(e.tabIndex>-1){e.focus();return}e=e.parentElement}},t$t=(A)=>Array.from(A).map((e)=>`0${e.toString(16)}`.slice(-2)).join(""),G9=()=>bd()?1:Date.now(),ar=(A)=>A instanceof Map?A:A.reduce((e,t)=>(e.set(typeof t=="string"?t:t.id,t),e),new Map),QIe=(A)=>A.reduce((e,t,r)=>(e.set(t.id,[t,r]),e),new Map),Nh=(A,e)=>A.reduce((t,r)=>(t[e?e(r):String(r)]=r,t),{}),pIe=(A)=>A.reduce((e,t,r)=>{let i={...t,prev:null,next:null};if(r!==0){let u=e[r-1];if(i.prev=u,u.next=i,r===A.length-1){let a=e[0];i.next=a,a.prev=i}}return e.push(i),e},[]),bd=()=>Qr.MODE==="test",UIA=()=>Qr.MODE==="development",r$t=()=>typeof process<"u"&&!0,MIA=(A,e)=>new CustomEvent(A,{detail:{nativeEvent:e},cancelable:!0}),j8=(A,e)=>{let t=!1;for(let r in e){let i=e[r];if(typeof i<"u"){if(A[r]===i&&(typeof i!="object"||i===null))continue;t=!0}}return t?{...A,...e}:A},fIe=()=>{try{return window.self===window.top?"top":"iframe"}catch{return"iframe"}},U9=(A)=>!!A&&typeof A=="object"&&("then"in A)&&("catch"in A)&&("finally"in A),j_=(A)=>{let e=A?.querySelectorAll("button, a, input, select, textarea, div[tabindex], label[tabindex]");return e?Array.from(e).filter((t)=>t.tabIndex>-1&&!t.disabled):[]},kEe=(A,e)=>Array.isArray(A)&&Array.isArray(e)&&A.length===0&&e.length===0?!0:A===e,Po=(A,e,t,r=!1)=>{let i=Object.keys(A),u=Object.keys(e);if(i.length!==u.length)return r&&console.warn("%cisShallowEqual: objects don't have same properties ->","color: #8B4000",A,e),!1;if(t&&Array.isArray(t)){for(let a of t)if(!(A[a]===e[a]||kEe(A[a],e[a])))return r&&console.warn(`%cisShallowEqual: ${a} not equal ->`,"color: #8B4000",A[a],e[a]),!1;return!0}return i.every((a)=>{let n=t?.[a],o=n?n(A[a],e[a]):A[a]===e[a]||kEe(A[a],e[a]);return!o&&r&&console.warn(`%cisShallowEqual: ${a} not equal ->`,"color: #8B4000",A[a],e[a]),o})},X8=(A,e,{checkForDefaultPrevented:t=!0}={})=>function(r){if(A?.(r),!t||!r?.defaultPrevented)return e?.(r)},rp=(A,e,t)=>{if(!e)return A;if(t)return console.error(e),A;throw Error(e)},mIe=(A)=>{let e,t,r=function(i){let u=Object.entries(i);if(e){let n=!0;for(let[o,s]of u)if(e.get(o)!==s){n=!1;break}if(n)return t}let a=A(i);return e=new Map(u),t=a,a};return r.clear=()=>{e=void 0,t=void 0},r},TIA=(A,e)=>A instanceof Set||A instanceof Map?A.has(e):("includes"in A)?A.includes(e):A.hasOwnProperty(e),vd=(A)=>JSON.parse(JSON.stringify(A)),M9=(A,e)=>Po(A,e)?A:e,YIA=(A)=>A.replace(/\r?\n|\r/g,`
|
||
`),Sg=(A)=>A,t2=async(A,...e)=>new Promise((t)=>{t(A(...e))}),i$t=(...A)=>Math.max(...A.map((e)=>e?1:0))>0,FEe=class{constructor(A,e){UA(this,"pool"),UA(this,"entries",{}),this.pool=new uIe.default(A,e)}all(){let A=(e)=>{if(e.data.result){let[t,r]=e.data.result;this.entries[t]=r}};return this.pool.addEventListener("fulfilled",A),this.pool.start().then(()=>(setTimeout(()=>{this.pool.removeEventListener("fulfilled",A)}),Object.values(this.entries)))}},f_=(A)=>A.replace(/"/g,"""),HIA=(A)=>Array.isArray(A)?A:[A],Ng=(A)=>!!A&&A.type==="image"&&!!A.fileId,Ri=(A)=>!!A&&A.type==="image",_s=(A)=>!!A&&A.type==="embeddable",Ph=(A)=>!!A&&A.type==="iframe",xg=(A)=>!!A&&(A.type==="iframe"||A.type==="embeddable"),Et=(A)=>A!=null&&A.type==="text",KIA=(A)=>A!=null&&A.type==="frame",$8=(A)=>A!=null&&A.type==="magicframe",nr=(A)=>A!=null&&(A.type==="frame"||A.type==="magicframe"),Tc=(A)=>A!=null&&u$t(A.type),u$t=(A)=>A==="freedraw",Nr=(A)=>A!=null&&X_(A.type),Kr=(A)=>A!=null&&A.type==="arrow",ft=(A)=>Kr(A)&&A.elbowed,X_=(A)=>A==="arrow"||A==="line",oB=(A,e=!0)=>A!=null&&(!A.locked||e===!0)&&JIA(A.type),JIA=(A)=>A==="arrow",Yc=(A,e=!0)=>A!=null&&(!A.locked||e===!0)&&(A.type==="rectangle"||A.type==="diamond"||A.type==="ellipse"||A.type==="image"||A.type==="iframe"||A.type==="embeddable"||A.type==="frame"||A.type==="magicframe"||A.type==="text"&&!A.containerId),a$t=(A)=>A!=null&&(A.type==="rectangle"||A.type==="diamond"||A.type==="image"||A.type==="iframe"||A.type==="embeddable"||A.type==="frame"||A.type==="magicframe"||A.type==="text"&&!A.containerId),ip=(A,e=!0)=>A!=null&&(!A.locked||e===!0)&&(A.type==="rectangle"||A.type==="diamond"||A.type==="ellipse"||Kr(A)),OIA=(A)=>{let e=A?.type;if(!e)return!1;switch(e){case"text":case"diamond":case"rectangle":case"iframe":case"embeddable":case"ellipse":case"arrow":case"freedraw":case"line":case"frame":case"magicframe":case"image":case"selection":return!0;default:return rp(e,null),!1}},AS=(A)=>A.type==="rectangle"||A.type==="ellipse"||A.type==="diamond",Yl=(A)=>ip(A)&&!!A.boundElements?.some(({type:e})=>e==="text"),Tu=(A)=>A!==null&&("containerId"in A)&&A.containerId!==null&&Et(A),d2=(A)=>A==="rectangle"||A==="embeddable"||A==="iframe"||A==="image",yIe=(A)=>A==="line"||A==="arrow"||A==="diamond",wIe=(A,e)=>!!((A===mn.ADAPTIVE_RADIUS||A===mn.LEGACY)&&d2(e.type)||A===mn.PROPORTIONAL_RADIUS&&yIe(e.type)),bIe=(A)=>yIe(A.type)?{type:mn.PROPORTIONAL_RADIUS}:d2(A.type)?{type:mn.ADAPTIVE_RADIUS}:null,L_=(A)=>Object.hasOwn(A,"fixedPoint")&&A.fixedPoint!=null,m0=(A,e,t)=>{let r=A.split(`
|
||
`).map((a)=>a||" ").join(`
|
||
`),i=parseFloat(e),u=s$t(r,i,t);return{width:AW(r,e),height:u}},vIe,PIA=(A,e)=>{let t=l$t(A);return t===0?m0(vIe.split("").join(`
|
||
`),A,e).width+pn*2:t+pn*2},$_=(A,e)=>m0("",A,e).width+pn*2,kIe=()=>AW(vIe,cu({fontSize:wd,fontFamily:Oh}))>0,I2=(A)=>YIA(A).replace(/\t/g," "),_IA=(A)=>I2(A).split(`
|
||
`),n$t=(A)=>{let e=_IA(A.text).length;return A.height/e/A.fontSize},T9=(A,e)=>A*e,WIA=(A,e)=>T9(A,e)+pn*2,WdA,o$t=class{constructor(){UA(this,"canvas"),this.canvas=document.createElement("canvas")}getLineWidth(A,e){let t=this.canvas.getContext("2d");t.font=e;let r=t.measureText(A).width;return bd()?r*10:r}},r2=(A,e)=>(WdA||(WdA=new o$t),WdA.getLineWidth(A,e)),AW=(A,e)=>{let t=_IA(A),r=0;return t.forEach((i)=>{r=Math.max(r,r2(i,e))}),r},s$t=(A,e,t)=>{let r=_IA(A).length;return T9(e,t)*r},eS,l$t=(A)=>{let e=eS.getCache(A);if(!e)return 0;let t=e.filter((r)=>r!==void 0);return Math.max(...t)},qdA,I_,zdA,g$t=(A)=>(qdA||(qdA=ru.class(...Object.values(Mh))),qdA.test(A)),c$t=()=>{if(!I_)try{I_=B$t()}catch{I_=C$t()}return I_},qIA=()=>(zdA||(zdA=E$t()),zdA),Lc,Mh,Vm,C$t=()=>ru.or(qIA(),rn.On(Lc.HYPHEN,Lc.WHITESPACE,Mh.CHAR)),B$t=()=>ru.or(qIA(),rn.Before(Lc.WHITESPACE).Build(),rn.After(Lc.WHITESPACE,Lc.HYPHEN).Build(),rn.Before(Mh.CHAR,Mh.CURRENCY).NotPrecededBy(Lc.OPENING,Mh.OPENING).Build(),rn.After(Mh.CHAR).NotFollowedBy(Lc.HYPHEN,Lc.CLOSING,Mh.CLOSING).Build(),rn.BeforeMany(Mh.OPENING).NotPrecededBy(Lc.OPENING).Build(),rn.AfterMany(Mh.CLOSING).NotFollowedBy(Lc.CLOSING).Build(),rn.AfterMany(Lc.CLOSING).FollowedBy(Lc.OPENING).Build()),E$t=()=>ru.group(ru.or(Vm.FLAG,ru.and(Vm.MOST,Vm.JOINER,ru.build(`(?:${Vm.ZWJ.source}(?:${Vm.FLAG.source}|${Vm.ANY.source}${Vm.JOINER.source}))*`)))),ru,rn,d$t=(A)=>{let e=c$t();return A.normalize("NFC").split(e).filter(Boolean)},up=(A,e,t)=>{if(!Number.isFinite(t)||t<0)return A;let r=[],i=A.split(`
|
||
`);for(let u of i){if(r2(u,e)<=t){r.push(u);continue}let a=I$t(u,e,t);r.push(...a)}return r.join(`
|
||
`)},I$t=(A,e,t)=>{let r=[],i=d$t(A)[Symbol.iterator](),u="",a=0,n=i.next();for(;!n.done;){let o=n.value,s=u+o,l=p$t(o)?a+eS.calculate(o,e):r2(s,e);if(/\s/.test(o)||l<=t){u=s,a=l,n=i.next();continue}if(u)r.push(u.trimEnd()),u="",a=0;else{let g=h$t(o,e,t),C=g[g.length-1]??"",B=g.slice(0,-1);r.push(...B),u=C,a=r2(C,e),n=i.next()}}if(u){let o=Q$t(u,e,t);r.push(o)}return r},h$t=(A,e,t)=>{if(qIA().test(A))return[A];f$t(A);let r=[],i=Array.from(A),u="",a=0;for(let n of i){let o=eS.calculate(n,e),s=a+o;if(s<=t){u=u+n,a=s;continue}u&&r.push(u),u=n,a=o}return u&&r.push(u),r},Q$t=(A,e,t)=>{if(!(r2(A,e)>t))return A;let[,r,i]=A.match(/^(.+?)(\s+)$/)??[A,A.trimEnd(),""],u=r2(r,e);for(let a of Array.from(i)){let n=eS.calculate(a,e),o=u+n;if(o>t)break;r=r+a,u=o}return r},p$t=(A)=>A.codePointAt(0)!==void 0&&A.codePointAt(1)===void 0,f$t=(A)=>{if((Qr.MODE===Js.TEST||Qr.DEV)&&/\s/.test(A))throw Error("Word should not contain any whitespaces!")},Ys=class{},na,aB=(A)=>"var(--icon-fill-color)",FIe=(A)=>A===$r.LIGHT?ua.white:"#1e1e1e",ge=(A,e=512)=>{let{width:t=512,height:r=t,mirror:i,style:u,...a}=typeof e=="number"?{width:e}:e;return N("svg",{"aria-hidden":"true",focusable:"false",role:"img",viewBox:`0 0 ${t} ${r}`,className:Re({"rtl-mirror":i}),style:u,...a,children:typeof A=="string"?N("path",{fill:"currentColor",d:A}):A})},ct,Yr,Cyi,eW,xIe,SIe,LIe,tS,tW,RIe,NIe,GIe,Byi,m$t,D$t,y$t,w$t,b$t,v$t,UIe,y9,zIA,k$t,F$t,ZIA,VIA,MIe,ap,TIe,rW,iW,uW,jIA,rS,aW,YIe,XIA,$IA,HIe,KIe,JIe,nW,OIe,PIe,oW,Eyi,_Ie,sW,AhA,WIe,dyi,Iyi,qIe,hyi,ehA,thA,zIe,ZIe,Qyi,pyi,fyi,myi,Dyi,VIe,jIe,rhA,ihA,uhA,ahA,nhA,ohA,shA,lhA,XIe,$Ie,ghA,chA,ChA,yyi,wyi,h2,byi,vyi,kyi,BhA,EhA,Ahe,ehe,the,rhe,dhA,ihe,uhe,Fyi,ahe,nhe,ohe,she,lhe,ghe,che,Che,Bhe,Ehe,dhe,Ihe,hhe,Qhe,phe,fhe,mhe,Dhe,yhe,whe,bhe,vhe,khe,iS,x$t,N8,R_,Fhe,xhe,She,Lhe,Rhe,Nhe,IhA,Ghe,xyi,hhA,QhA,lW,Uhe,Mhe,Syi,Lyi,The,Yhe,Hhe,Khe,phA,fhA,uS,mhA,DhA,Ryi,Nyi,Jhe,gW,Ohe,Phe,_he,np,Whe,qhe,zhe,yhA,Zhe,Vhe,jhe,Xhe,whA,cW,$he,AQe,eQe,tQe,rQe,Gyi,iQe,uQe,aQe,nQe,oQe,sQe,bhA,lQe,gQe,vhA,khA,N_,jm,FhA="local:",S$t,aS,O1,L$t,cQe,CQe,xEe,R$t=class{constructor(A){UA(this,"instance"),UA(this,"debounceTerminate"),this.instance=new Worker(A,{type:"module"})}},N$t=class A{constructor(e,t){UA(this,"idleWorkers",new Set),UA(this,"workerUrl"),UA(this,"workerTTL"),this.workerUrl=e,this.workerTTL=t.ttl||1000}static create(e,t={}){if(!e)throw new cQe;if(!import.meta.url||e.toString()===import.meta.url)throw new CQe;return new A(e,t)}async postMessage(e,t){let r,i=Array.from(this.idleWorkers).shift();return i?(this.idleWorkers.delete(i),r=i):r=await this.createWorker(),new Promise((u,a)=>{r.instance.onmessage=this.onMessageHandler(r,u),r.instance.onerror=this.onErrorHandler(r,a),r.instance.postMessage(e,t),r.debounceTerminate(()=>a(Error(`Active worker did not respond for ${this.workerTTL}ms!`)))})}async clear(){for(let e of this.idleWorkers)e.debounceTerminate.cancel(),e.instance.terminate();this.idleWorkers.clear()}async createWorker(){let e=new R$t(this.workerUrl);return e.debounceTerminate=E2((t)=>{e.instance.terminate(),this.idleWorkers.has(e)?(this.idleWorkers.delete(e),console.debug("Job finished! Idle worker has been released from the pool.")):t?t():console.error("Worker has been terminated!")},this.workerTTL),e}onMessageHandler(e,t){return(r)=>{e.debounceTerminate(),this.idleWorkers.add(e),t(r.data)}}onErrorHandler(e,t){return(r)=>{e.debounceTerminate(()=>t(r)),e.debounceTerminate.flush(),this.clear()}}},SEe,G$t=async(A,e)=>{let{Commands:t,subsetToBase64:r,toBase64:i}=await M$t();return SEe?t2(async()=>{try{let u=await T$t(),a=A.slice(0),n=await u.postMessage({command:t.Subset,arrayBuffer:a,codePoints:e},{transfer:[a]});return i(n)}catch(u){return SEe=!1,r$t()&&(u instanceof cQe||u instanceof CQe)||console.error("Failed to use workers for subsetting, falling back to the main thread.",u),r(A,e)}}):r(A,e)},ZdA=null,VdA=null,U$t=async()=>(ZdA||(ZdA=Promise.resolve().then(() => (nEe(),aEe))),ZdA),M$t=async()=>(VdA||(VdA=Promise.resolve().then(() => (sEe(),oEe))),VdA),jdA=null,T$t=()=>(jdA||(jdA=t2(async()=>{let{WorkerUrl:A}=await U$t();return N$t.create(A)})),jdA),BQe=class A{constructor(e,t,r){UA(this,"urls"),UA(this,"fontFace"),this.urls=A.createUrls(t);let i=this.urls.map((u)=>`url(${u}) ${A.getFormat(u)}`).join(", ");this.fontFace=new FontFace(e,i,{display:"swap",style:"normal",weight:"400",...r})}toCSS(e){if(!this.getUnicodeRangeRegex().test(e))return;let t=Array.from(e).map((r)=>r.codePointAt(0));return this.getContent(t).then((r)=>`@font-face { font-family: ${this.fontFace.family}; src: url(${r}); }`)}async getContent(e){let t=0,r=[];for(;t<this.urls.length;){let i=this.urls[t];try{let u=await this.fetchFont(i);return await G$t(u,e)}catch(u){r.push(`"${i.toString()}" returned error "${u}"`)}t++}return console.error(`Failed to fetch font family "${this.fontFace.family}"`,JSON.stringify(r,void 0,2)),this.urls.length?this.urls[this.urls.length-1].toString():""}fetchFont(e){return t2(async()=>{let t=await fetch(e,{cache:"force-cache",headers:{Accept:"font/woff2"}});if(!t.ok){let r=e instanceof URL?e.toString():"dataurl";throw Error(`Failed to fetch "${r}": ${t.statusText}`)}return await t.arrayBuffer()})}getUnicodeRangeRegex(){let e=this.fontFace.unicodeRange.split(/,\s*/).map((t)=>{let[r,i]=t.replace("U+","").split("-");return i?`\\u{${r}}-\\u{${i}}`:`\\u{${r}}`}).join("");return new RegExp(`[${e}]`,"u")}static createUrls(e){if(e.startsWith("data"))return[e];if(e.startsWith(FhA))return[];if(e.startsWith("http"))return[new URL(e)];let t=e.replace(/^\/+/,""),r=[];if(typeof window.EXCALIDRAW_ASSET_PATH=="string"){let i=this.normalizeBaseUrl(window.EXCALIDRAW_ASSET_PATH);r.push(new URL(t,i))}else Array.isArray(window.EXCALIDRAW_ASSET_PATH)&&window.EXCALIDRAW_ASSET_PATH.forEach((i)=>{let u=this.normalizeBaseUrl(i);r.push(new URL(t,u))});return r.push(new URL(t,A.ASSETS_FALLBACK_URL)),r}static getFormat(e){if(!(e instanceof URL))return"";try{let t=new URL(e).pathname.split(".");return t.length===1?"":`format('${t.pop()}')`}catch{return""}}static normalizeBaseUrl(e){let t=e;return/^\.?\//.test(t)&&(t=new URL(t.replace(/^\.?\/+/,""),window?.location?.origin).toString()),t=`${t.replace(/\/+$/,"")}/`,t}},Y$t,H$t="./fonts/Cascadia/CascadiaCode-Regular.woff2",K$t,J$t="./fonts/ComicShanns/ComicShanns-Regular-279a7b317d12eb88de06167bd672b4b4.woff2",O$t="./fonts/ComicShanns/ComicShanns-Regular-fcb0fc02dcbee4c9846b3e2508668039.woff2",P$t="./fonts/ComicShanns/ComicShanns-Regular-dc6a8806fa96795d7b3be5026f989a17.woff2",_$t="./fonts/ComicShanns/ComicShanns-Regular-6e066e8de2ac57ea9283adb9c24d7f0c.woff2",W$t,q$t,z$t="./fonts/Excalifont/Excalifont-Regular-a88b72a24fb54c9f94e3b5fdaa7481c9.woff2",Z$t="./fonts/Excalifont/Excalifont-Regular-be310b9bcd4f1a43f571c46df7809174.woff2",V$t="./fonts/Excalifont/Excalifont-Regular-b9dcf9d2e50a1eaf42fc664b50a3fd0d.woff2",j$t="./fonts/Excalifont/Excalifont-Regular-41b173a47b57366892116a575a43e2b6.woff2",X$t="./fonts/Excalifont/Excalifont-Regular-3f2c5db56cc93c5a6873b1361d730c16.woff2",$$t="./fonts/Excalifont/Excalifont-Regular-349fac6ca4700ffec595a7150a0d1e1d.woff2",AAr="./fonts/Excalifont/Excalifont-Regular-623ccf21b21ef6b3a0d87738f77eb071.woff2",eAr,tAr,rAr="./fonts/Liberation/LiberationSans-Regular.woff2",iAr,uAr="./fonts/Lilita/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYEF8RXi4EwQ.woff2",aAr="./fonts/Lilita/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYE98RXi4EwSsbg.woff2",nAr,oAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTQ3j6zbXWjgeg.woff2",sAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTo3j6zbXWjgevT5.woff2",lAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTA3j6zbXWjgevT5.woff2",gAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTk3j6zbXWjgevT5.woff2",cAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTs3j6zbXWjgevT5.woff2",CAr,BAr="./fonts/Virgil/Virgil-Regular.woff2",EAr,dAr="./fonts/Xiaolai/Xiaolai-Regular-09850c4077f3fffe707905872e0e2460.woff2",IAr="./fonts/Xiaolai/Xiaolai-Regular-7eb9fffd1aa890d07d0f88cc82e6cfe4.woff2",hAr="./fonts/Xiaolai/Xiaolai-Regular-60a3089806700d379f11827ee9843b6b.woff2",QAr="./fonts/Xiaolai/Xiaolai-Regular-6fe5c5973cc06f74b2387a631ea36b88.woff2",pAr="./fonts/Xiaolai/Xiaolai-Regular-b96d9226ce77ec94ceca043d712182e6.woff2",fAr="./fonts/Xiaolai/Xiaolai-Regular-6ae5b42180ad70b971c91e7eefb8eba2.woff2",mAr="./fonts/Xiaolai/Xiaolai-Regular-a4c34be6d42152e64b0df90bc4607f64.woff2",DAr="./fonts/Xiaolai/Xiaolai-Regular-c69f61a4ab18d0488c8d1fc12e7028e8.woff2",yAr="./fonts/Xiaolai/Xiaolai-Regular-e3fcf5180fd466c8915c4e8069491054.woff2",wAr="./fonts/Xiaolai/Xiaolai-Regular-c1f94158256bb1f3bf665b053d895af9.woff2",bAr="./fonts/Xiaolai/Xiaolai-Regular-544fc28abe2c5c30e62383fd4dac255f.woff2",vAr="./fonts/Xiaolai/Xiaolai-Regular-7197d6fda6cba7c3874c53d6381ca239.woff2",kAr="./fonts/Xiaolai/Xiaolai-Regular-70c2eb8d64e71a42a834eb857ea9df51.woff2",FAr="./fonts/Xiaolai/Xiaolai-Regular-069e77aac84590e2e991d0a0176d34f2.woff2",xAr="./fonts/Xiaolai/Xiaolai-Regular-41521fade99856108931b4768b1b2648.woff2",SAr="./fonts/Xiaolai/Xiaolai-Regular-a004ddfcb26e67bd6e678c8ed19e25ce.woff2",LAr="./fonts/Xiaolai/Xiaolai-Regular-04b718e5623574919c8b0dea5f301444.woff2",RAr="./fonts/Xiaolai/Xiaolai-Regular-7e4bde7e9c7f84cd34d8a845e384c746.woff2",NAr="./fonts/Xiaolai/Xiaolai-Regular-23686f7f29da6e8008c36dd3a80c83d6.woff2",GAr="./fonts/Xiaolai/Xiaolai-Regular-69c09cc5fa3e55c74fc4821f76909cc3.woff2",UAr="./fonts/Xiaolai/Xiaolai-Regular-25b7f38e18f035f96cb5e547bd2bd08c.woff2",MAr="./fonts/Xiaolai/Xiaolai-Regular-ba3de316d63c7e339987b16f41a0b879.woff2",TAr="./fonts/Xiaolai/Xiaolai-Regular-12b52b58eb3df36804b9a654ec9ee194.woff2",YAr="./fonts/Xiaolai/Xiaolai-Regular-b1220a3c61f85cc0408deedb4c5f57a2.woff2",HAr="./fonts/Xiaolai/Xiaolai-Regular-4535823663ad81405188a528d8f2b1a2.woff2",KAr="./fonts/Xiaolai/Xiaolai-Regular-3eaa538115d76932653c21d8dc28f207.woff2",JAr="./fonts/Xiaolai/Xiaolai-Regular-7e929f262f30c8ee78bf398150b1a7cd.woff2",OAr="./fonts/Xiaolai/Xiaolai-Regular-73e309718fd16cea44b4d54a33581811.woff2",PAr="./fonts/Xiaolai/Xiaolai-Regular-9eb5a99df4e76ac3363453ac9ca288b1.woff2",_Ar="./fonts/Xiaolai/Xiaolai-Regular-3e63ed8162808a9e425ed80a8bc79114.woff2",WAr="./fonts/Xiaolai/Xiaolai-Regular-cb17fc3db95f6d139afc9d31a8e93293.woff2",qAr="./fonts/Xiaolai/Xiaolai-Regular-c8b71798409ccc126ee264a00aadcf21.woff2",zAr="./fonts/Xiaolai/Xiaolai-Regular-11c345711937f0ba4b8f7b6b919c8440.woff2",ZAr="./fonts/Xiaolai/Xiaolai-Regular-e480d9c614742d05f0e78f274f1e69e6.woff2",VAr="./fonts/Xiaolai/Xiaolai-Regular-95429962233afd82db1c27df1500a28c.woff2",jAr="./fonts/Xiaolai/Xiaolai-Regular-2cf96d082d35ea3d8106851223ad0d16.woff2",XAr="./fonts/Xiaolai/Xiaolai-Regular-2d43040e86ff03ba677f6f9c04cd0805.woff2",$Ar="./fonts/Xiaolai/Xiaolai-Regular-2a26d20a23b00898ce82f09d2ee47c3f.woff2",Aer="./fonts/Xiaolai/Xiaolai-Regular-a365e82ed54697a52f27adcea1315fe8.woff2",eer="./fonts/Xiaolai/Xiaolai-Regular-f5d079153c99a25b9be5b8583c4cc8a7.woff2",ter="./fonts/Xiaolai/Xiaolai-Regular-10a7ae9a371830a80c3d844acf1c02d7.woff2",rer="./fonts/Xiaolai/Xiaolai-Regular-e4bca6cfa53e499cae0a6be4894a90e9.woff2",ier="./fonts/Xiaolai/Xiaolai-Regular-60a41c7e1c68f22424e6d22df544bc82.woff2",uer="./fonts/Xiaolai/Xiaolai-Regular-7ab2bed91166a9dca83a5ebfbe2a7f38.woff2",aer="./fonts/Xiaolai/Xiaolai-Regular-670ba603758d94268e8606f240a42e12.woff2",ner="./fonts/Xiaolai/Xiaolai-Regular-e656f091b9dc4709722c9f4b84d3c797.woff2",oer="./fonts/Xiaolai/Xiaolai-Regular-15dc6d811c9cd078f9086a740d5a1038.woff2",ser="./fonts/Xiaolai/Xiaolai-Regular-f0f13b5c60e0af5553bd359f5513be1b.woff2",ler="./fonts/Xiaolai/Xiaolai-Regular-8c2f33cee3993174f7e87c28e4bf42ee.woff2",ger="./fonts/Xiaolai/Xiaolai-Regular-761d05e3cd968cf574166867998ef06a.woff2",cer="./fonts/Xiaolai/Xiaolai-Regular-642b26e2e5f5fb780b51b593dbc8c851.woff2",Cer="./fonts/Xiaolai/Xiaolai-Regular-5572b3513ba8df57a3d5d7303ee6b11b.woff2",Ber="./fonts/Xiaolai/Xiaolai-Regular-3c9de2ae0ea4bc91a510942dfa4be8d2.woff2",Eer="./fonts/Xiaolai/Xiaolai-Regular-671a2c20b1eb9e4ef8a192833940e319.woff2",der="./fonts/Xiaolai/Xiaolai-Regular-4dc6d5f188d5c96d44815cd1e81aa885.woff2",Ier="./fonts/Xiaolai/Xiaolai-Regular-ce4884f96f11589608b76b726a755803.woff2",her="./fonts/Xiaolai/Xiaolai-Regular-8f476c4c99813d57cbe6eca4727388ad.woff2",Qer="./fonts/Xiaolai/Xiaolai-Regular-5935a5775af3d5c6307ac667bd9ae74e.woff2",per="./fonts/Xiaolai/Xiaolai-Regular-79f007c1c6d07557120982951ea67998.woff2",fer="./fonts/Xiaolai/Xiaolai-Regular-bafff7a14c27403dcc6cf1432e8ea836.woff2",mer="./fonts/Xiaolai/Xiaolai-Regular-543fa46ace099a7099dad69123399400.woff2",Der="./fonts/Xiaolai/Xiaolai-Regular-4ddc14ed3eb0c3e46364317dfc0144a3.woff2",yer="./fonts/Xiaolai/Xiaolai-Regular-0fa55a080fcd0f9dc2e0b0058b793df8.woff2",wer="./fonts/Xiaolai/Xiaolai-Regular-66493ba5a8367f2928812f446f47b56a.woff2",ber="./fonts/Xiaolai/Xiaolai-Regular-57862b464a55b18c7bf234ce22907d73.woff2",ver="./fonts/Xiaolai/Xiaolai-Regular-8d3bcabb847b56243b16afe62adaaf21.woff2",ker="./fonts/Xiaolai/Xiaolai-Regular-2b77e8ebfb2367ab2662396a60e7d320.woff2",Fer="./fonts/Xiaolai/Xiaolai-Regular-0b5d723fdc4e249c140f0909e87d03b4.woff2",xer="./fonts/Xiaolai/Xiaolai-Regular-cdbce89e82cc1ab53a2decbf5819278f.woff2",Ser="./fonts/Xiaolai/Xiaolai-Regular-739bc1a567439c7cffcd1614644593d2.woff2",Ler="./fonts/Xiaolai/Xiaolai-Regular-72252d73220fa3cd856677888cee1635.woff2",Rer="./fonts/Xiaolai/Xiaolai-Regular-08e0dc436ad0ad61ba5558db0674d762.woff2",Ner="./fonts/Xiaolai/Xiaolai-Regular-cf6ff4e0f491ca0cf3038187a997b9b4.woff2",Ger="./fonts/Xiaolai/Xiaolai-Regular-9cfb2a77a4e45025105ad29a1748b90d.woff2",Uer="./fonts/Xiaolai/Xiaolai-Regular-450da755d5bcb70906e1295e559b9602.woff2",Mer="./fonts/Xiaolai/Xiaolai-Regular-0986d134c05864f5025962eef9f994a0.woff2",Ter="./fonts/Xiaolai/Xiaolai-Regular-1ee544f0f1dac422545c505baa788992.woff2",Yer="./fonts/Xiaolai/Xiaolai-Regular-4806e761d750087c2d734fc64596eaff.woff2",Her="./fonts/Xiaolai/Xiaolai-Regular-33432927cd87d40cfe393c7482bf221f.woff2",Ker="./fonts/Xiaolai/Xiaolai-Regular-be549ab72f0719d606a5c01e2c0219b6.woff2",Jer="./fonts/Xiaolai/Xiaolai-Regular-019d66dcad46dc156b162d267f981c20.woff2",Oer="./fonts/Xiaolai/Xiaolai-Regular-b5c1596551c256e0e9cf02028595b092.woff2",Per="./fonts/Xiaolai/Xiaolai-Regular-e5f453bb04da18eed01675eeebd88bf8.woff2",_er="./fonts/Xiaolai/Xiaolai-Regular-cf2cc71752631e579e35b0e423bf2638.woff2",Wer="./fonts/Xiaolai/Xiaolai-Regular-6f3256af8454371776bc46670d33cc65.woff2",qer="./fonts/Xiaolai/Xiaolai-Regular-23f228f3999c01983860012330e4be08.woff2",zer="./fonts/Xiaolai/Xiaolai-Regular-21430ee05a1248901da8d0de08744d47.woff2",Zer="./fonts/Xiaolai/Xiaolai-Regular-5330a2119a716e4e7224ed108b085dac.woff2",Ver="./fonts/Xiaolai/Xiaolai-Regular-cd145ce4a0ea18469358df53c207bc1b.woff2",jer="./fonts/Xiaolai/Xiaolai-Regular-36925dfe329a45086cbb7fc5c20d45ac.woff2",Xer="./fonts/Xiaolai/Xiaolai-Regular-4bfaa8ffa64c5ee560aa2daba7c9cbd3.woff2",$er="./fonts/Xiaolai/Xiaolai-Regular-112c051027b2d766c19a519f6ee1f4f7.woff2",Atr="./fonts/Xiaolai/Xiaolai-Regular-5b0ed6971aaab9c8ad563230bd5471a7.woff2",etr="./fonts/Xiaolai/Xiaolai-Regular-98f2ad84457de7f3740d9920b8fa8667.woff2",ttr="./fonts/Xiaolai/Xiaolai-Regular-733171b4ffcd17ea1fe1c0ba627173bf.woff2",rtr="./fonts/Xiaolai/Xiaolai-Regular-684d65f1793cac449dde5d59cb3c47fb.woff2",itr="./fonts/Xiaolai/Xiaolai-Regular-cbaaefaaf326668277aa24dfa93c4d28.woff2",utr="./fonts/Xiaolai/Xiaolai-Regular-58fd02350d0bc52cf1ca3bb32ce9766e.woff2",atr="./fonts/Xiaolai/Xiaolai-Regular-7ccce86603f80a099ddb0cb21d4ae3e3.woff2",ntr="./fonts/Xiaolai/Xiaolai-Regular-3717077e38f98d89eae729b6c14e56dc.woff2",otr="./fonts/Xiaolai/Xiaolai-Regular-dbea1af6dcd9860be40c3d18254338f5.woff2",str="./fonts/Xiaolai/Xiaolai-Regular-4a0fdb40036e87b40aa08dd30584cb85.woff2",ltr="./fonts/Xiaolai/Xiaolai-Regular-0f626226ba1272e832aea87bafd9720e.woff2",gtr="./fonts/Xiaolai/Xiaolai-Regular-938d90c10ff8c20386af7f242c05d6b0.woff2",ctr="./fonts/Xiaolai/Xiaolai-Regular-b6d128682ee29e471486354d486a1b90.woff2",Ctr="./fonts/Xiaolai/Xiaolai-Regular-e51ef413167c6e14e0c0fdcc585f2fc9.woff2",Btr="./fonts/Xiaolai/Xiaolai-Regular-9d81066dd2b337c938df6e90380a00dc.woff2",Etr="./fonts/Xiaolai/Xiaolai-Regular-20e7bf72fa05de9adf7dbcc7bf51dde6.woff2",dtr="./fonts/Xiaolai/Xiaolai-Regular-4095eb84ef3874e2600247bee0b04026.woff2",Itr="./fonts/Xiaolai/Xiaolai-Regular-4ee10ae43505e2e0bc62656ced49c0fa.woff2",htr="./fonts/Xiaolai/Xiaolai-Regular-7494dc504ae00ee9cd0505f990f88c5d.woff2",Qtr="./fonts/Xiaolai/Xiaolai-Regular-8de5b863cb50dfefdd07cb11c774d579.woff2",ptr="./fonts/Xiaolai/Xiaolai-Regular-3e1f8f654357353bf0e04ba5c34b5f7f.woff2",ftr="./fonts/Xiaolai/Xiaolai-Regular-2e33e8dc771ef5e1d9127d60a6b73679.woff2",mtr="./fonts/Xiaolai/Xiaolai-Regular-173945821411c09f70c95f98d590e697.woff2",Dtr="./fonts/Xiaolai/Xiaolai-Regular-b358f7a51ece39a3247942b1feabdb29.woff2",ytr="./fonts/Xiaolai/Xiaolai-Regular-23ad2d71b280f00b1363b95b7bea94eb.woff2",wtr="./fonts/Xiaolai/Xiaolai-Regular-5882ffa04f32584d26109137e2da4352.woff2",btr="./fonts/Xiaolai/Xiaolai-Regular-a203b91dad570bf05a58c3c3ddb529bf.woff2",vtr="./fonts/Xiaolai/Xiaolai-Regular-bd77e3c7f9e0b072d96af37f73d1aa32.woff2",ktr="./fonts/Xiaolai/Xiaolai-Regular-5a45d991244d4c7140217e1e5f5ca4f4.woff2",Ftr="./fonts/Xiaolai/Xiaolai-Regular-f56414bf9bced67990def8660e306759.woff2",xtr="./fonts/Xiaolai/Xiaolai-Regular-583d166e56ba0de4b77eabb47ef67839.woff2",Str="./fonts/Xiaolai/Xiaolai-Regular-7f855356ab893b0d2b9c1c83b8116f0e.woff2",Ltr="./fonts/Xiaolai/Xiaolai-Regular-b57aaedfd8ebdf3931f25119dc6a5eb2.woff2",Rtr="./fonts/Xiaolai/Xiaolai-Regular-b6fd38ca30869792244804b04bc058da.woff2",Ntr="./fonts/Xiaolai/Xiaolai-Regular-452225341522a7942f0f6aab1a5c91a3.woff2",Gtr="./fonts/Xiaolai/Xiaolai-Regular-866fa7613df6b3fd272bcfd4530c0bb9.woff2",Utr="./fonts/Xiaolai/Xiaolai-Regular-52a84a22fd1369bffeaf21da2d6158dc.woff2",Mtr="./fonts/Xiaolai/Xiaolai-Regular-829615148e6357d826b9242eb7fbbd1e.woff2",Ttr="./fonts/Xiaolai/Xiaolai-Regular-c99eda15fc26a2941579560f76c3a5cf.woff2",Ytr="./fonts/Xiaolai/Xiaolai-Regular-395c35dd584b56b0789f58a0559beaf1.woff2",Htr="./fonts/Xiaolai/Xiaolai-Regular-203b0e569e3b14aac86a003dc3fa523e.woff2",Ktr="./fonts/Xiaolai/Xiaolai-Regular-51a0e808bbc8361236ac521a119758a3.woff2",Jtr="./fonts/Xiaolai/Xiaolai-Regular-6e092f71c1e634059ada0e52abadce67.woff2",Otr="./fonts/Xiaolai/Xiaolai-Regular-0f7fb1e0d5015bb1371343153ecf7ce3.woff2",Ptr="./fonts/Xiaolai/Xiaolai-Regular-d0cf73942fea1c74edbdf0b3011f4656.woff2",_tr="./fonts/Xiaolai/Xiaolai-Regular-968cffdc8ee679da094e77ebf50f58ef.woff2",Wtr="./fonts/Xiaolai/Xiaolai-Regular-7a07ddc0f0c0f5f4a9bad6ee3dda66b5.woff2",qtr="./fonts/Xiaolai/Xiaolai-Regular-ec181b795ac1fb5a50d700b6e996d745.woff2",ztr="./fonts/Xiaolai/Xiaolai-Regular-cfb211578629b7e8153b37240de6a9d5.woff2",Ztr="./fonts/Xiaolai/Xiaolai-Regular-59e9ff77b0efaf684bc09274fb6908c9.woff2",Vtr="./fonts/Xiaolai/Xiaolai-Regular-2adbc89c11e65905393d3dfc468b9d5b.woff2",jtr="./fonts/Xiaolai/Xiaolai-Regular-70e811fd7994e61f408c923de6ddd078.woff2",Xtr="./fonts/Xiaolai/Xiaolai-Regular-c4a687ac4f0c2766eefc9f77ed99cddf.woff2",$tr="./fonts/Xiaolai/Xiaolai-Regular-51502f1206be09c565f1547c406e9558.woff2",Arr="./fonts/Xiaolai/Xiaolai-Regular-1fdc0c67ed57263a80fd108c1f6ccf24.woff2",err="./fonts/Xiaolai/Xiaolai-Regular-e11567fd2accf9957cd0d3c2be937d87.woff2",trr="./fonts/Xiaolai/Xiaolai-Regular-20cc1bbf50e7efb442756cb605672c1f.woff2",rrr="./fonts/Xiaolai/Xiaolai-Regular-5d2898fbc097a7e24c6f38d80587621e.woff2",irr="./fonts/Xiaolai/Xiaolai-Regular-ac9ceb44437becc3e9c4dbfebab7fc2d.woff2",urr="./fonts/Xiaolai/Xiaolai-Regular-c16ed9740b85badf16e86ea782a3062f.woff2",arr="./fonts/Xiaolai/Xiaolai-Regular-aa0d470430e6391eca720c7cfa44446f.woff2",nrr="./fonts/Xiaolai/Xiaolai-Regular-f2b54d4e7be0eaefe1c2c56836fa5368.woff2",orr="./fonts/Xiaolai/Xiaolai-Regular-99a16ef6a64934d5781933dbd9c46b2e.woff2",srr="./fonts/Xiaolai/Xiaolai-Regular-c40533fdf4cc57177b12803598af7e59.woff2",lrr="./fonts/Xiaolai/Xiaolai-Regular-91ddb2969bf2d31ba02ad82998d1314c.woff2",grr="./fonts/Xiaolai/Xiaolai-Regular-774d4f764a1299da5d28ec2f2ffe0d69.woff2",crr="./fonts/Xiaolai/Xiaolai-Regular-7718fe60986d8b42b1be9c5ace5ccf25.woff2",Crr="./fonts/Xiaolai/Xiaolai-Regular-aa5c9ca6cf4fba00433b7aa3fa10671a.woff2",Brr="./fonts/Xiaolai/Xiaolai-Regular-4f50e5136e136527280bc902c5817561.woff2",Err="./fonts/Xiaolai/Xiaolai-Regular-093b9ef39a46ceae95a1df18a0a3a326.woff2",drr="./fonts/Xiaolai/Xiaolai-Regular-a0ca5df4258213d7fc9fce80f65ce760.woff2",Irr="./fonts/Xiaolai/Xiaolai-Regular-d2666cbed13462c5dc36fa2f15c202ca.woff2",hrr="./fonts/Xiaolai/Xiaolai-Regular-1e6fd68f1f3902ce48ce8c69df385622.woff2",Qrr="./fonts/Xiaolai/Xiaolai-Regular-87599f94b6cc129d505b375798d0d751.woff2",prr="./fonts/Xiaolai/Xiaolai-Regular-06c77b8c66e51ed6c63ccb502dd8b8af.woff2",frr="./fonts/Xiaolai/Xiaolai-Regular-13ae07ed2e272d26d59bc0691cd7117a.woff2",mrr="./fonts/Xiaolai/Xiaolai-Regular-353f33792a8f60dc69323ddf635a269e.woff2",Drr="./fonts/Xiaolai/Xiaolai-Regular-0facdf1ea213ba40261022f5d5ed4493.woff2",yrr="./fonts/Xiaolai/Xiaolai-Regular-f8ee5d36068a42b51d0e4a1116cfcec1.woff2",wrr="./fonts/Xiaolai/Xiaolai-Regular-79d494361ae093b69e74ee9dbe65bfd4.woff2",brr="./fonts/Xiaolai/Xiaolai-Regular-74e2263a91439c25b91d5132ce9f4d62.woff2",vrr="./fonts/Xiaolai/Xiaolai-Regular-ee8bae97908d5147b423f77ad0d3c1bb.woff2",krr="./fonts/Xiaolai/Xiaolai-Regular-56467a5c8840c4d23a60b2f935114848.woff2",Frr="./fonts/Xiaolai/Xiaolai-Regular-145aa02cdd91946e67dc934e1acffe75.woff2",xrr="./fonts/Xiaolai/Xiaolai-Regular-54acdfc2166ad7fcbd074f75fd4a56ba.woff2",Srr="./fonts/Xiaolai/Xiaolai-Regular-29cec36cd205b211da97acabaa62f055.woff2",Lrr="./fonts/Xiaolai/Xiaolai-Regular-3756e81d3e149cf6099163ee79944fec.woff2",Rrr="./fonts/Xiaolai/Xiaolai-Regular-8e9f97f01034820170065b2921b4fb5e.woff2",Nrr="./fonts/Xiaolai/Xiaolai-Regular-13d2887ec8ee73c43acdabc52a05af7b.woff2",Grr="./fonts/Xiaolai/Xiaolai-Regular-72536a3d71b694a0d53dd90ddceae41e.woff2",Urr="./fonts/Xiaolai/Xiaolai-Regular-603aefd23e350ba7eb124273e3c9bcf1.woff2",Mrr="./fonts/Xiaolai/Xiaolai-Regular-095c169f3314805276f603a362766abd.woff2",Trr="./fonts/Xiaolai/Xiaolai-Regular-9544732d2e62d1a429674f8ee41b5d3a.woff2",Yrr="./fonts/Xiaolai/Xiaolai-Regular-d3716376641d615e2995605b29bca7b6.woff2",Hrr="./fonts/Xiaolai/Xiaolai-Regular-5a1ce3117cfe90c48e8fb4a9a00f694d.woff2",Krr="./fonts/Xiaolai/Xiaolai-Regular-b7d203b051eff504ff59ddca7576b6a9.woff2",Jrr="./fonts/Xiaolai/Xiaolai-Regular-4a38cc3e9cf104e69ba246d37f8cf135.woff2",Orr="./fonts/Xiaolai/Xiaolai-Regular-982b630266d87db93d2539affb1275c6.woff2",Prr="./fonts/Xiaolai/Xiaolai-Regular-9592bfc861f07bcb8d75c196b370e548.woff2",_rr="./fonts/Xiaolai/Xiaolai-Regular-a7accba310e821da5505f71c03b76bdb.woff2",Wrr="./fonts/Xiaolai/Xiaolai-Regular-dac48066b5883d8b4551fc584f0c2a3e.woff2",qrr="./fonts/Xiaolai/Xiaolai-Regular-a1f916d6039285c4ffb900cd654e418f.woff2",zrr="./fonts/Xiaolai/Xiaolai-Regular-95bfd249da4902577b4b7d76ebdd0b44.woff2",Zrr="./fonts/Xiaolai/Xiaolai-Regular-93fc8f28a33234bcadf1527cafabd502.woff2",Vrr="./fonts/Xiaolai/Xiaolai-Regular-903bb6865f3452e2fda42e3a25547bc5.woff2",jrr="./fonts/Xiaolai/Xiaolai-Regular-4aca6a43e59aceee2166b0c7e4e85ef1.woff2",Xrr="./fonts/Xiaolai/Xiaolai-Regular-24476a126f129212beb33f66853ea151.woff2",$rr="./fonts/Xiaolai/Xiaolai-Regular-1b611157cd46bb184d4fa4dae2d6a2b8.woff2",Air="./fonts/Xiaolai/Xiaolai-Regular-56a32a7689abd0326e57c10c6c069bb4.woff2",eir="./fonts/Xiaolai/Xiaolai-Regular-3cc70dbb64df5b21f1326cc24dee2195.woff2",tir="./fonts/Xiaolai/Xiaolai-Regular-f6032fc06eb20480f096199713f70885.woff2",rir="./fonts/Xiaolai/Xiaolai-Regular-e2ead7ea7da0437f085f42ffc05f8d13.woff2",iir="./fonts/Xiaolai/Xiaolai-Regular-97f7f48ce90c9429bf32ae51469db74d.woff2",uir="./fonts/Xiaolai/Xiaolai-Regular-24a21c1e4449222e8d1898d69ff3a404.woff2",air="./fonts/Xiaolai/Xiaolai-Regular-726303e0774b4e678bff8c2deb6ca603.woff2",nir="./fonts/Xiaolai/Xiaolai-Regular-5a7fac4b8b23a6e4e5ba0c9bf1756c91.woff2",oir="./fonts/Xiaolai/Xiaolai-Regular-2b7441d46298788ac94e610ffcc709b6.woff2",sir,Y1=class A{constructor(e){UA(this,"scene"),UA(this,"getSceneFamilies",()=>A.getUniqueFamilies(this.scene.getNonDeletedElements())),UA(this,"onLoaded",(t)=>{let r=!0;for(let a of t){let n=`${a.family}-${a.style}-${a.weight}-${a.unicodeRange}`;A.loadedFontsCache.has(n)||(A.loadedFontsCache.add(n),r=!1)}if(r)return;let i=!1,u=this.scene.getNonDeletedElementsMap();for(let a of this.scene.getNonDeletedElements())if(Et(a)){i=!0,na.delete(a),eS.clearCache(cu(a));let n=Qo(a,u);n&&na.delete(n)}i&&this.scene.triggerUpdate()}),UA(this,"loadSceneFonts",async()=>{let t=this.getSceneFamilies(),r=A.getCharsPerFamily(this.scene.getNonDeletedElements());return A.loadFontFaces(t,r)}),this.scene=e}static get registered(){return A._registered?A._initialized||(A._registered=new Map([...A.init().entries(),...A._registered.entries()])):A._registered=A.init(),A._registered}get registered(){return A.registered}static async generateFontFaceDeclarations(e){let t=A.getUniqueFamilies(e),r=A.getCharsPerFamily(e),i=t.find((o)=>Yde(o).includes(d9));if(i){let o=A.getCharacters(r,i);if(g$t(o)){let s=I9[d9];r[s]=new Set(o),t.unshift(I9[d9])}}let u=A.fontFacesStylesGenerator(t,r),a=3,n=await new FEe(u,a).all();return Array.from(new Set(n))}static async loadFontFaces(e,t){for(let{fontFaces:u,metadata:a}of A.registered.values())if(!a.local)for(let{fontFace:n}of u)window.document.fonts.has(n)||window.document.fonts.add(n);let r=A.fontFacesLoader(e,t);return(await new FEe(r,10).all()).flat().filter(Boolean)}static*fontFacesLoader(e,t){for(let[r,i]of e.entries()){let u=cu({fontFamily:i,fontSize:16}),a=A.getCharacters(t,i);window.document.fonts.check(u,a)||(yield t2(async()=>{try{let n=await window.document.fonts.load(u,a);return[r,n]}catch(n){console.error(`Failed to load font "${u}" from urls "${A.registered.get(i)?.fontFaces.map((o)=>o.urls)}"`,n)}}))}}static*fontFacesStylesGenerator(e,t){for(let[r,i]of e.entries()){let{fontFaces:u,metadata:a}=A.registered.get(i)??{};if(!Array.isArray(u)){console.error(`Couldn't find registered fonts for font-family "${i}"`,A.registered);continue}if(!a?.local)for(let[n,o]of u.entries())yield t2(async()=>{try{let s=A.getCharacters(t,i),l=await o.toCSS(s);return l?[r*1e4+n,l]:void 0}catch(s){console.error(`Couldn't transform font-face to css for family "${o.fontFace.family}"`,s)}})}}static register(e,t,...r){let i=aa[e]??I9[e];return this.registered.get(i)||this.registered.set(i,{metadata:t,fontFaces:r.map(({uri:u,descriptors:a})=>new Y$t(e,u,a))}),this.registered}static init(){let e={registered:new Map},t=(r,...i)=>{let u=aa[r]??I9[r],a=N_[u]??N_[aa.Excalifont];A.register.call(e,r,a,...i)};return t("Cascadia",...K$t),t("Comic Shanns",...W$t),t("Excalifont",...eAr),t("Helvetica",...tAr),t("Liberation Sans",...iAr),t("Lilita One",...nAr),t("Nunito",...CAr),t("Virgil",...EAr),t(d9,...sir),t(x8,...q$t),A._initialized=!0,e.registered}static getUniqueFamilies(e){return Array.from(e.reduce((t,r)=>(Et(r)&&t.add(r.fontFamily),t),new Set))}static getCharsPerFamily(e){let t={};for(let r of e)if(Et(r))for(let i of r.originalText)t[r.fontFamily]||(t[r.fontFamily]=new Set),t[r.fontFamily].add(i);return t}static getCharacters(e,t){return e[t]?Array.from(e[t]).join(""):""}static getAllFamilies(){return Array.from(A.registered.keys())}},kd,EQe=(A,e,t)=>{let{unitsPerEm:r,ascender:i,descender:u}=kd.registered.get(A)?.metadata.metrics||N_[aa.Virgil].metrics,a=e/r,n=(t-a*i+a*u)/2;return a*i+n},op=(A)=>{let{lineHeight:e}=kd.registered.get(A)?.metadata.metrics||N_[aa.Excalifont].metrics;return e},dQe=(A)=>{let{angle:e,width:t,height:r,x:i,y:u}=A,a=i+t/2,n=u+r/2,o=X(a,n),s;return A.type==="diamond"?s=yEe(ye(X(a,u),o,e),ye(X(i+t,n),o,e),ye(X(a,u+r),o,e),ye(X(i,n),o,e)):s=yEe(ye(X(i,u),o,e),ye(X(i+t,u),o,e),ye(X(i+t,u+r),o,e),ye(X(i,u+r),o,e)),{type:"polygon",data:s}},IQe=(A,e,t=10)=>{let[r,i,u,a,n,o]=Rr(A,e,!0);r-=t,u+=t,i-=t,a+=t;let s=X(n,o),l=ye(X(r,i),s,A.angle),g=ye(X(u,i),s,A.angle),C=ye(X(r,a),s,A.angle),B=ye(X(u,a),s,A.angle);return{type:"polygon",data:[l,g,B,C]}},lir=(A)=>{let{width:e,height:t,angle:r,x:i,y:u}=A;return{type:"ellipse",data:{center:X(i+e/2,u+t/2),angle:r,halfWidth:e/2,halfHeight:t/2}}},sp=(A)=>{if(!A)return[];for(let e of A.sets)if(e.type==="path")return e.ops;return A.sets[0].ops},gir=(A,e=X(0,0),t,r)=>{let i=(o)=>ye(X(o[0]+e[0],o[1]+e[1]),r,t),u=sp(A),a=[],n=X(0,0);for(let o of u){if(o.op==="move"){let s=SIA(o.data);fn(s!=null,"Ops data is not a point"),n=i(s)}if(o.op==="bcurveTo"){let s=i(X(o.data[0],o.data[1])),l=i(X(o.data[2],o.data[3])),g=i(X(o.data[4],o.data[5]));a.push(Yh(n,s,l,g)),n=g}}return{type:"polycurve",data:a}},cir=(A)=>{let e=A[0],t=[];for(let r=1;r<A.length;r++){let i=A[r];t.push(_t(e,i)),e=i}return t},Cir=(A,e,t=!1)=>{let r=(u)=>ye(Xr(J1(Mt(u),Oo(A.x,A.y))),e,A.angle),i=cir(A.points.map((u)=>r(u)));return t?{type:"polygon",data:F_(i.flat())}:{type:"polyline",data:i}},Bir=(A,e,t=X(0,0),r,i)=>{let u=(l)=>ye(X(l[0]+t[0],l[1]+t[1]),i,r);if(A.roundness===null)return{type:"polygon",data:F_(A.points.map((l)=>u(l)))};let a=sp(e),n=[],o=!1;for(let l of a)l.op==="move"?(o=!o,o&&n.push(X(l.data[0],l.data[1]))):l.op==="bcurveTo"?o&&(n.push(X(l.data[0],l.data[1])),n.push(X(l.data[2],l.data[3])),n.push(X(l.data[4],l.data[5]))):l.op==="lineTo"&&o&&n.push(X(l.data[0],l.data[1]));let s=NBe(n,10,5).map((l)=>u(l));return{type:"polygon",data:F_(s)}},Eir=(A,e)=>{let{angle:t,halfWidth:r,halfHeight:i,center:u}=e,a=r,n=i,o=J1(Mt(A),ba(Mt(u),-1)),[s,l]=ye(Xr(o),X(0,0),-t),g=Math.abs(s),C=Math.abs(l),B=0.707,E=0.707;for(let h=0;h<3;h++){let Q=a*B,p=n*E,m=(a*a-n*n)*B**3/a,f=(n*n-a*a)*E**3/n,D=Q-m,w=p-f,b=g-m,F=C-f,v=Math.hypot(w,D),S=Math.hypot(F,b);B=Math.min(1,Math.max(0,(b*v/S+m)/a)),E=Math.min(1,Math.max(0,(F*v/S+f)/n));let x=Math.hypot(E,B);B/=x,E/=x}let[d,I]=[a*B*Math.sign(s),n*E*Math.sign(l)];return Li(X(s,l),X(d,I))},dir=(A,e,t=0.0001)=>Eir(A,e)<=t,Iir=(A,e)=>{let{center:t,angle:r,halfWidth:i,halfHeight:u}=e,a=J1(Mt(A),ba(Mt(t),-1)),[n,o]=ye(Xr(a),X(0,0),-r);return n/i*(n/i)+o/u*(o/u)<=1},aIA=(A,e,t=0)=>{switch(e.type){case"polygon":return jXt(A,e.data,t);case"ellipse":return dir(A,e.data,t);case"line":return e2(A,e.data,t);case"polyline":return QQe(A,e.data,t);case"curve":return hQe(A,e.data,t);case"polycurve":return hir(A,e.data,t);default:throw Error(`shape ${e} is not implemented`)}},G8=(A,e)=>{switch(e.type){case"polygon":return wEe(A,e.data);case"line":return!1;case"curve":return!1;case"ellipse":return Iir(A,e.data);case"polyline":{let t=F_(e.data.flat());return wEe(A,t)}case"polycurve":return!1;default:throw Error(`shape ${e} is not implemented`)}},hir=(A,e,t)=>e.some((r)=>hQe(A,r,t)),Qir=(A)=>{let[e,t,r,i]=A;return(u,a)=>Math.pow(1-u,3)*i[a]+3*u*Math.pow(1-u,2)*r[a]+3*Math.pow(u,2)*(1-u)*t[a]+e[a]*Math.pow(u,3)},pir=(A,e=10)=>{let t=Qir(A),r=[t(0,0),t(0,1)],i=[],u=0,a=1/e;for(let n=0;n<e;n++)if(u+=a,u<=1){let o=X(t(u,0),t(u,1));i.push(_t(r,o)),r=o}return i},hQe=(A,e,t)=>QQe(A,pir(e),t),QQe=(A,e,t=0.0001)=>e.some((r)=>e2(A,r,t)),fir=(A,e)=>{let{halfWidth:t,halfHeight:r,center:i}=e,u=t,a=r,n=J1(Mt(A),ba(Mt(i),-1)),o=Math.abs(n[0]),s=Math.abs(n[1]),l=0.707,g=0.707;for(let E=0;E<3;E++){let d=u*l,I=a*g,h=(u*u-a*a)*l**3/u,Q=(a*a-u*u)*g**3/a,p=d-h,m=I-Q,f=o-h,D=s-Q,w=Math.hypot(m,p),b=Math.hypot(D,f);l=Math.min(1,Math.max(0,(f*w/b+h)/u)),g=Math.min(1,Math.max(0,(D*w/b+Q)/a));let F=Math.hypot(g,l);l/=F,g/=F}let[C,B]=[u*l*Math.sign(n[0]),a*g*Math.sign(n[1])];return Li(Xr(n),X(C,B))},nIA=(A)=>{if(A.type==="arrow")return!1;let e=!Rc(A.backgroundColor)||Yl(A)||xg(A)||Et(A);return A.type==="line"?e&&fd(A.points):A.type==="freedraw"?e&&fd(A.points):e||Ri(A)},Q2=({x:A,y:e,element:t,shape:r,threshold:i=10,frameNameBound:u=null})=>{let a=nIA(t)?G8(X(A,e),r)||aIA(X(A,e),r,i):aIA(X(A,e),r,i);return!a&&u&&(a=G8(X(A,e),{type:"polygon",data:dQe(u).data})),a},CW=(A,e,t,r,i=0)=>{let[u,a,n,o]=sB(t,r);return u-=i,a-=i,n+=i,o+=i,nIe(X(u,a),X(A,e),X(n,o))},DQe=(A,e)=>!Q2(A)&&!xhA(A.x,A.y,ShA(A.element,e))&&CW(A.x,A.y,A.element,e),xhA=(A,e,t)=>!!t&&G8(X(A,e),t),yQe=(A,e,t=0)=>{switch(A.type){case"rectangle":case"image":case"text":case"iframe":case"embeddable":case"frame":case"magicframe":return Dir(A,e,t);case"diamond":return yir(A,e,t);case"ellipse":return wir(A,e,t);default:throw Error(`Unimplemented element type '${A.type}'`)}},Dir=(A,e,t=0)=>{let r=X(A.x+A.width/2,A.y+A.height/2),i=ye(e[0],r,-A.angle),u=ye(e[1],r,-A.angle),[a,n]=fQe(A,t);return[...a.map((o)=>R8(_t(i,u),o)).filter((o)=>o!=null).map((o)=>ye(o,r,A.angle)),...n.flatMap((o)=>oIe(o,_t(i,u))).filter((o)=>o!=null).map((o)=>ye(o,r,A.angle))].filter((o,s,l)=>l.findIndex((g)=>nB(o,g))===s)},yir=(A,e,t=0)=>{let r=X(A.x+A.width/2,A.y+A.height/2),i=ye(e[0],r,-A.angle),u=ye(e[1],r,-A.angle),[a,n]=mQe(A,t);return[...a.map((o)=>R8(_t(i,u),o)).filter((o)=>o!=null).map((o)=>ye(o,r,A.angle)),...n.flatMap((o)=>oIe(o,_t(i,u))).filter((o)=>o!=null).map((o)=>ye(o,r,A.angle))].filter((o,s,l)=>l.findIndex((g)=>nB(o,g))===s)},wir=(A,e,t=0)=>{let r=X(A.x+A.width/2,A.y+A.height/2),i=ye(e[0],r,-A.angle),u=ye(e[1],r,-A.angle);return mir(pQe(r,A.width/2+t,A.height/2+t),iIA(i,u)).map((a)=>ye(a,r,A.angle))},hi,PA,bir,vir=(A)=>/^[a-z]$/.test(A.toLowerCase()),BW=(A,e)=>{if(e===A.key.toLowerCase())return!0;let t=bir.get(e);return!!(t&&!vir(A.key)&&A.code===t)},Y9=(A)=>A===PA.ARROW_LEFT||A===PA.ARROW_RIGHT||A===PA.ARROW_DOWN||A===PA.ARROW_UP,EW=(A)=>A.altKey,H9=(A)=>A.shiftKey,w9=(A)=>A.shiftKey,dW,wQe=(A)=>dW.find((e,t)=>e.numericKey!=null&&A===e.numericKey.toString()||e.key&&(typeof e.key=="string"?e.key===A:e.key.includes(A)))?.value||null,pd=(A,e)=>{switch(A.type){case"rectangle":case"diamond":case"frame":case"magicframe":case"embeddable":case"image":case"iframe":case"text":case"selection":return dQe(A);case"arrow":case"line":{let t=na.get(A)?.[0]??na.generateElementShape(A,null)[0],[,,,,r,i]=Rr(A,e);return nIA(A)?Bir(A,t,X(A.x,A.y),A.angle,X(r,i)):gir(t,X(A.x,A.y),A.angle,X(r,i))}case"ellipse":return lir(A);case"freedraw":{let[,,,,t,r]=Rr(A,e);return Cir(A,X(t,r),nIA(A))}}},ShA=(A,e)=>{let t=Gr(A,e);return t?A.type==="arrow"?pd({...t,...ht.getBoundTextElementPosition(A,t,e)},e):pd(t,e):null},bQe=(A,e)=>{let t=na.generateElementShape(A,null);if(!t)return null;let r=sp(t[0]),i=X(0,0),u=0,a=1/0,n=null;for(;u<r.length;){let{op:o,data:s}=r[u];if(o==="move"&&(fn(_Xt(s),"The returned ops is not compatible with a point"),i=s),o==="bcurveTo"){let l=i,g=X(s[0],s[1]),C=X(s[2],s[3]),B=X(s[4],s[5]),E=Li(B,e);E<a&&(a=E,n=[l,g,C,B]),i=B}u++}return n},vQe=(A,e,t,r,i)=>{let u=(o,s)=>Math.pow(1-o,3)*r[s]+3*o*Math.pow(1-o,2)*t[s]+3*Math.pow(o,2)*(1-o)*e[s]+A[s]*Math.pow(o,3),a=u(i,0),n=u(i,1);return X(a,n)},kir=(A,e)=>{let t=bQe(A,e);if(!t)return[];let r=[],i=1;for(;i>0;){let u=vQe(t[0],t[1],t[2],t[3],i);r.push(X(u[0],u[1])),i-=0.05}return r.length&&nB(r.at(-1),e)&&r.push(X(e[0],e[1])),r},kQe=(A,e)=>{let t=[];t[0]=0;let r=kir(A,e),i=0,u=0;for(;i<r.length-1;){let a=Li(r[i],r[i+1]);u+=a,t.push(u),i++}return t},Fir=(A,e)=>kQe(A,e).at(-1),xir=(A,e,t)=>{let r=kQe(A,e),i=r.length-1,u=r.at(-1),a=t*u,n=0,o=i,s=0;for(;n<o;)s=Math.floor(n+(o-n)/2),r[s]<a?n=s+1:o=s;return r[s]>a&&s--,r[s]===a?s/i:1-(s+(a-r[s])/(r[s+1]-r[s]))/i},iB=(A,e)=>{let t={minX:A.x,minY:A.y,maxX:A.x+A.width,maxY:A.y+A.height,midX:A.x+A.width/2,midY:A.y+A.height/2},r=X(t.midX,t.midY),[i,u]=ye(X(t.minX,t.minY),r,A.angle),[a,n]=ye(X(t.maxX,t.minY),r,A.angle),[o,s]=ye(X(t.maxX,t.maxY),r,A.angle),[l,g]=ye(X(t.minX,t.maxY),r,A.angle),C=[Math.min(i,a,o,l),Math.min(u,n,s,g),Math.max(i,a,o,l),Math.max(u,n,s,g)];if(e){let[B,E,d,I]=e;return[C[0]-I,C[1]-B,C[2]+E,C[3]+d]}return C},b9=(A,e)=>A[0]>e[0]&&A[0]<e[2]&&A[1]>e[1]&&A[1]<e[3],Gc=(A,e)=>{if(e.roundness?.type===mn.PROPORTIONAL_RADIUS||e.roundness?.type===mn.LEGACY)return A*PdA;if(e.roundness?.type===mn.ADAPTIVE_RADIUS){let t=e.roundness?.value??MXt,r=t/PdA;return A<=r?A*PdA:t}return 0},fd=(A,e=1)=>{if(A.length>=3){let[t,r]=[A[0],A[A.length-1]];return Li(t,r)<=H8/e}return!1},Bo=10,FQe=(A,e,t,r,i,u,a)=>{let{width:n,height:o}=md(A),s=t/n,l=r/o,g=(A.crop?.x??0)/s,C=(A.crop?.y??0)/l,B=ye(X(i,u),X(A.x+A.width/2,A.y+A.height/2),-A.angle);i=B[0],u=B[1];let{width:E,height:d}=A,I=A.crop??{x:0,y:0,width:t,height:r,naturalWidth:t,naturalHeight:r},h=I.height,Q=I.width,p=A.scale[0]===-1,m=A.scale[1]===-1,f=u-A.y,D=i-A.x;e.includes("n")&&(d=Vr(A.height-f,Bo,m?o-C:A.height+C)),e.includes("s")&&(f=u-A.y-A.height,d=Vr(A.height+f,Bo,m?A.height+C:o-C)),e.includes("e")&&(D=i-A.x-A.width,E=Vr(A.width+D,Bo,p?A.width+g:n-g)),e.includes("w")&&(E=Vr(A.width-D,Bo,p?n-g:A.width+g));let w=(v)=>{v.height=d*l,v.width=E*s};w(I);let b=(v,S)=>{w(S),v.includes("n")&&(m||(S.y+=h-S.height)),v.includes("s")&&m&&(S.y+=h-S.height),v.includes("e")&&p&&(S.x+=Q-S.width),v.includes("w")&&(p||(S.x+=Q-S.width))};switch(e){case"n":{if(a){let v=g+A.width/2,S=n-g-A.width/2,x=Math.min(v,S)*2;E=Vr(d*a,Bo,x),d=E/a}b(e,I),a&&(I.x+=(Q-I.width)/2);break}case"s":{if(a){let v=g+A.width/2,S=n-g-A.width/2,x=Math.min(v,S)*2;E=Vr(d*a,Bo,x),d=E/a}b(e,I),a&&(I.x+=(Q-I.width)/2);break}case"w":{if(a){let v=C+A.height/2,S=o-C-A.height/2,x=Math.min(v,S)*2;d=Vr(E/a,Bo,x),E=d*a}b(e,I),a&&(I.y+=(h-I.height)/2);break}case"e":{if(a){let v=C+A.height/2,S=o-C-A.height/2,x=Math.min(v,S)*2;d=Vr(E/a,Bo,x),E=d*a}b(e,I),a&&(I.y+=(h-I.height)/2);break}case"ne":{if(a)if(D>-f){let v=m?o-C:C+A.height;d=Vr(E/a,Bo,v),E=d*a}else{let v=p?g+A.width:n-g;E=Vr(d*a,Bo,v),d=E/a}b(e,I);break}case"nw":{if(a)if(D<f){let v=m?o-C:C+A.height;d=Vr(E/a,Bo,v),E=d*a}else{let v=p?n-g:g+A.width;E=Vr(d*a,Bo,v),d=E/a}b(e,I);break}case"se":{if(a)if(D>f){let v=m?C+A.height:o-C;d=Vr(E/a,Bo,v),E=d*a}else{let v=p?g+A.width:n-g;E=Vr(d*a,Bo,v),d=E/a}b(e,I);break}case"sw":{if(a)if(-D>f){let v=m?C+A.height:o-C;d=Vr(E/a,Bo,v),E=d*a}else{let v=p?n-g:g+A.width;E=Vr(d*a,Bo,v),d=E/a}b(e,I);break}default:break}let F=Sir(A,e,E,d,!!a);return mEe(I.width,I.naturalWidth)&&mEe(I.height,I.naturalHeight)&&(I=null),{x:F[0],y:F[1],width:E,height:d,crop:I}},Sir=(A,e,t,r,i)=>{let[u,a,n,o]=_1(A,A.width,A.height,!0),s=X(u,a),l=X(n,o),g=z8(s,l),[C,B,E,d]=_1(A,t,r,!0),I=E-C,h=d-B,Q=[...s];if(["n","w","nw"].includes(e)&&(Q=[l[0]-Math.abs(I),l[1]-Math.abs(h)]),e==="ne"){let b=[s[0],l[1]];Q=[b[0],b[1]-Math.abs(h)]}if(e==="sw"){let b=[l[0],s[1]];Q=[b[0]-Math.abs(I),b[1]]}i&&(["s","n"].includes(e)&&(Q[0]=g[0]-I/2),["e","w"].includes(e)&&(Q[1]=g[1]-h/2));let p=A.angle,m=ye(Q,g,p),f=[Q[0]+Math.abs(I)/2,Q[1]+Math.abs(h)/2],D=ye(f,g,p);Q=ye(m,D,-p);let w=[...Q];return w[0]+=A.x-C,w[1]+=A.y-B,w},Lir=(A,e)=>{if(A.crop){let{width:t,height:r}=md(A),[i,u,a,n,o,s]=Rr(A,e),l=Mt(ye(X(i,u),X(o,s),A.angle)),g=Mt(ye(X(a,u),X(o,s),A.angle)),C=p0(S8(g,l)),B=Mt(ye(X(i,n),X(o,s),A.angle)),E=S8(B,l),d=p0(E),{cropX:I,cropY:h}=Rir(A.crop,A.scale),Q=J1(J1(l,ba(C,-I*t/A.crop.naturalWidth)),ba(d,-h*r/A.crop.naturalHeight)),p=Xr(J1(J1(Q,ba(C,t/2)),ba(d,r/2))),m=ye(Xr(Q),p,-A.angle);return{...A,x:m[0],y:m[1],width:t,height:r,crop:null}}return A},md=(A)=>{if(A.crop){let e=A.width/(A.crop.width/A.crop.naturalWidth),t=A.height/(A.crop.height/A.crop.naturalHeight);return{width:e,height:t}}return{width:A.width,height:A.height}},Rir=(A,e)=>{let{x:t,y:r}=A,i=e[0]===-1,u=e[1]===-1;return i&&(t=A.naturalWidth-Math.abs(t)-A.width),u&&(r=A.naturalHeight-Math.abs(r)-A.height),{cropX:t,cropY:r}},xQe=(A,e=!1)=>{let t=A.crop;if(!t)return null;let r=A.scale[0]===-1,i=A.scale[1]===-1,{x:u,y:a}=t;if(r&&(u=t.naturalWidth-t.width-t.x),i&&(a=t.naturalHeight-t.height-t.y),e)return{x:u,y:a};let{width:n,height:o}=md(A);return{x:u/(t.naturalWidth/n),y:a/(t.naturalHeight/o)}},SQe="invert(100%) hue-rotate(180deg) saturate(1.25)",Nir,LQe=(A,e)=>Ng(A)&&!e.imageCache.has(A.fileId),RQe=(A,e,t)=>t.theme===$r.DARK&&Ng(A)&&!LQe(A,e)&&e.imageCache.get(A.fileId)?.mimeType!==Xt.svg,IW=(A)=>{switch(A.type){case"freedraw":return A.strokeWidth*12;case"text":return A.fontSize/2;default:return 20}},LhA=(A,e,t,r,i=1)=>{let u=(e?.opacity??100)*A.opacity/1e4*i;return(t.has(A.id)||r&&r.some((a)=>a.id===A.id)||e&&t.has(e.id))&&(u*=UXt/100),u},Gir=(A,e,t)=>{let r=IW(A),[i,u,a,n]=Rr(A,e),o=Nr(A)||Tc(A)?f0(i,a):A.width,s=Nr(A)||Tc(A)?f0(u,n):A.height,l=o*window.devicePixelRatio+r*2,g=s*window.devicePixelRatio+r*2,C=t.value;return(l*C>32767||g*C>32767)&&(C=Math.min(32767/l,32767/g)),l*g*C*C>16777216&&(C=Math.sqrt(16777216/(l*g))),l=Math.floor(l*C),g=Math.floor(g*C),{width:l,height:g,scale:C}},NQe=(A,e,t,r,i)=>{let u=document.createElement("canvas"),a=u.getContext("2d"),n=IW(A),{width:o,height:s,scale:l}=Gir(A,e,t);if(!o||!s)return null;u.width=o,u.height=s;let g=-100,C=0;if(Nr(A)||Tc(A)){let[h,Q]=Rr(A,e);g=A.x>h?f0(A.x,h)*window.devicePixelRatio*l:0,C=A.y>Q?f0(A.y,Q)*window.devicePixelRatio*l:0,a.translate(g,C)}a.save(),a.translate(n*l,n*l),a.scale(window.devicePixelRatio*l,window.devicePixelRatio*l);let B=xc.canvas(u);RQe(A,r,i)&&(a.filter=SQe),m_(A,B,a,r,i),a.restore();let E=Gr(A,e),d=document.createElement("canvas"),I=d.getContext("2d");if(Kr(A)&&E){let[h,Q,p,m]=Rr(A,e),f=Math.max(f0(h,p),f0(Q,m));d.width=f*window.devicePixelRatio*l+n*l*10,d.height=f*window.devicePixelRatio*l+n*l*10,I.translate(d.width/2,d.height/2),I.rotate(A.angle),I.drawImage(u,-u.width/2,-u.height/2,u.width,u.height);let[,,,,D,w]=Rr(E,e);I.rotate(-A.angle);let b=(d.width-u.width)/2,F=(d.height-u.height)/2,v=d.width/2-(D-h)*window.devicePixelRatio*l-b-n*l,S=d.height/2-(w-Q)*window.devicePixelRatio*l-F-n*l;I.translate(-v,-S),I.clearRect(-(E.width/2+pn)*window.devicePixelRatio*l,-(E.height/2+pn)*window.devicePixelRatio*l,(E.width+pn*2)*window.devicePixelRatio*l,(E.height+pn*2)*window.devicePixelRatio*l)}return{element:A,canvas:u,theme:i.theme,scale:l,zoomValue:t.value,canvasOffsetX:g,canvasOffsetY:C,boundTextElementVersion:Gr(A,e)?.version||null,containingFrameOpacity:Ps(A,e)?.opacity||100,boundTextCanvas:d,angle:A.angle,imageCrop:Ri(A)?A.crop:null}},Uir=14,GQe,UQe,Mir=(A,e)=>{e.fillStyle="#E7E7E7",e.fillRect(0,0,A.width,A.height);let t=Math.min(A.width,A.height),r=Math.min(t,Math.min(t*0.4,100));e.drawImage(A.status==="error"?UQe:GQe,A.width/2-r/2,A.height/2-r/2,r,r)},m_=(A,e,t,r,i)=>{switch(A.type){case"rectangle":case"iframe":case"embeddable":case"diamond":case"ellipse":{t.lineJoin="round",t.lineCap="round",e.draw(na.get(A));break}case"arrow":case"line":{t.lineJoin="round",t.lineCap="round",na.get(A).forEach((u)=>{e.draw(u)});break}case"freedraw":{t.save(),t.fillStyle=A.strokeColor;let u=Yir(A),a=na.get(A);a&&e.draw(a),t.fillStyle=A.strokeColor,t.fill(u),t.restore();break}case"image":{let u=Ng(A)?r.imageCache.get(A.fileId)?.image:void 0;if(u!=null&&!(u instanceof Promise)){A.roundness&&t.roundRect&&(t.beginPath(),t.roundRect(0,0,A.width,A.height,Gc(Math.min(A.width,A.height),A)),t.clip());let{x:a,y:n,width:o,height:s}=A.crop?A.crop:{x:0,y:0,width:u.naturalWidth,height:u.naturalHeight};t.drawImage(u,a,n,o,s,0,0,A.width,A.height)}else Mir(A,t);break}default:if(Et(A)){let u=EIe(A.text),a=u&&!t.canvas.isConnected;a&&document.body.appendChild(t.canvas),t.canvas.setAttribute("dir",u?"rtl":"ltr"),t.save(),t.font=cu(A),t.fillStyle=A.strokeColor,t.textAlign=A.textAlign;let n=A.text.replace(/\r\n?/g,`
|
||
`).split(`
|
||
`),o=A.textAlign==="center"?A.width/2:A.textAlign==="right"?A.width:0,s=T9(A.fontSize,A.lineHeight),l=EQe(A.fontFamily,A.fontSize,s);for(let g=0;g<n.length;g++)t.fillText(n[g],o,g*s+l);t.restore(),a&&t.canvas.remove()}else throw Error(`Unimplemented type ${A.type}`)}},oIA,LEe=(A,e,t,r)=>{let i=t?r.zoom:Nir.zoom,u=oIA.get(A),a=u&&u.zoomValue!==i.value&&!r?.shouldCacheIgnoreZoom,n=Gr(A,e),o=n?.version||null,s=Ri(A)?A.crop:null,l=Ps(A,e)?.opacity||100;if(!u||a||u.theme!==r.theme||u.boundTextElementVersion!==o||u.imageCrop!==s||u.containingFrameOpacity!==l||Kr(A)&&n&&A.angle!==u.angle){let g=NQe(A,e,i,t,r);return g?(oIA.set(A,g),g):null}return u},XdA=(A,e,t,r,i)=>{let u=A.element,a=IW(u),n=A.scale,[o,s,l,g]=Rr(u,i),C=((o+l)/2+r.scrollX)*window.devicePixelRatio,B=((s+g)/2+r.scrollY)*window.devicePixelRatio;e.save(),e.scale(1/window.devicePixelRatio,1/window.devicePixelRatio);let E=Gr(u,i);if(Kr(u)&&E){let d=(A.boundTextCanvas.width-A.canvas.width)/2,I=(A.boundTextCanvas.height-A.canvas.height)/2;e.translate(C,B),e.drawImage(A.boundTextCanvas,-(l-o)/2*window.devicePixelRatio-d/n-a,-(g-s)/2*window.devicePixelRatio-I/n-a,A.boundTextCanvas.width/n,A.boundTextCanvas.height/n)}else if(e.translate(C,B),e.rotate(u.angle),"scale"in A.element&&!LQe(u,t)&&e.scale(A.element.scale[0],A.element.scale[1]),e.translate(-C,-B),e.drawImage(A.canvas,(o+r.scrollX)*window.devicePixelRatio-a*A.scale/A.scale,(s+r.scrollY)*window.devicePixelRatio-a*A.scale/A.scale,A.canvas.width/A.scale,A.canvas.height/A.scale),Qr.VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX==="true"&&Yl(u)){let d=Gr(u,i),I=n4e(u);e.strokeStyle="#c92a2a",e.lineWidth=3,e.strokeRect((I.x+r.scrollX)*window.devicePixelRatio,(I.y+r.scrollY)*window.devicePixelRatio,gB(u,d)*window.devicePixelRatio,W9(u,d)*window.devicePixelRatio)}e.restore()},MQe=(A,e,t,r)=>{e.save(),e.translate(A.x+t.scrollX,A.y+t.scrollY),e.fillStyle="rgba(0, 0, 200, 0.04)";let i=0.5/t.zoom.value;e.fillRect(i,i,A.width,A.height),e.lineWidth=1/t.zoom.value,e.strokeStyle=r,e.strokeRect(i,i,A.width,A.height),e.restore()},K1=(A,e,t,r,i,u,a)=>{let n=a.openDialog?.name==="elementLinkSelector"&&!a.selectedElementIds[A.id]&&!a.hoveredElementIds[A.id];switch(i.globalAlpha=LhA(A,Ps(A,e),u.elementsPendingErasure,u.pendingFlowchartNodes,n?FIA:1),A.type){case"magicframe":case"frame":{a.frameRendering.enabled&&a.frameRendering.outline&&(i.save(),i.translate(A.x+a.scrollX,A.y+a.scrollY),i.fillStyle="rgba(0, 0, 200, 0.04)",i.lineWidth=Zu.strokeWidth/a.zoom.value,i.strokeStyle=Zu.strokeColor,$8(A)&&(i.strokeStyle=a.theme===$r.LIGHT?"#7affd7":"#1d8264"),Zu.radius&&i.roundRect?(i.beginPath(),i.roundRect(0,0,A.width,A.height,Zu.radius/a.zoom.value),i.stroke(),i.closePath()):i.strokeRect(0,0,A.width,A.height),i.restore());break}case"freedraw":{if(na.generateElementShape(A,null),u.isExporting){let[o,s,l,g]=Rr(A,e),C=(o+l)/2+a.scrollX,B=(s+g)/2+a.scrollY,E=(l-o)/2-(A.x-o),d=(g-s)/2-(A.y-s);i.save(),i.translate(C,B),i.rotate(A.angle),i.translate(-E,-d),m_(A,r,i,u,a),i.restore()}else{let o=LEe(A,t,u,a);if(!o)return;XdA(o,i,u,a,t)}break}case"rectangle":case"diamond":case"ellipse":case"line":case"arrow":case"image":case"text":case"iframe":case"embeddable":{if(na.generateElementShape(A,u),u.isExporting){let[o,s,l,g]=Rr(A,e),C=(o+l)/2+a.scrollX,B=(s+g)/2+a.scrollY,E=(l-o)/2-(A.x-o),d=(g-s)/2-(A.y-s);if(Et(A)){let h=Qo(A,e);if(Kr(h)){let Q=ht.getBoundTextElementPosition(h,A,e);E=(l-o)/2-(Q.x-o),d=(g-s)/2-(Q.y-s)}}i.save(),i.translate(C,B),RQe(A,u,a)&&(i.filter="none");let I=Gr(A,e);if(Kr(A)&&I){let h=document.createElement("canvas"),Q=h.getContext("2d"),p=Math.max(f0(o,l),f0(s,g)),m=IW(A);h.width=p*a.exportScale+m*10*a.exportScale,h.height=p*a.exportScale+m*10*a.exportScale,Q.translate(h.width/2,h.height/2),Q.scale(a.exportScale,a.exportScale),E=A.width/2-(A.x-o),d=A.height/2-(A.y-s),Q.rotate(A.angle);let f=xc.canvas(h);Q.translate(-E,-d),m_(A,f,Q,u,a),Q.translate(E,d),Q.rotate(-A.angle);let[,,,,D,w]=Rr(I,e),b=(o+l)/2-D,F=(s+g)/2-w;Q.translate(-b,-F),Q.clearRect(-I.width/2,-I.height/2,I.width,I.height),i.scale(1/a.exportScale,1/a.exportScale),i.drawImage(h,-h.width/2,-h.height/2,h.width,h.height)}else i.rotate(A.angle),A.type==="image"&&i.scale(A.scale[0],A.scale[1]),i.translate(-E,-d),m_(A,r,i,u,a);i.restore()}else{let o=LEe(A,t,u,a);if(!o)return;let s=i.imageSmoothingEnabled;if(!a?.shouldCacheIgnoreZoom&&(!A.angle||JXt(A.angle))&&(i.imageSmoothingEnabled=!1),A.id===a.croppingElementId&&Ri(o.element)&&o.element.crop!==null){i.save(),i.globalAlpha=0.1;let l=NQe(Lir(o.element,e),t,a.zoom,u,a);l&&XdA(l,i,u,a,t),i.restore()}XdA(o,i,u,a,t),i.imageSmoothingEnabled=s}break}default:throw Error(`Unimplemented type ${A.type}`)}i.globalAlpha=1},TQe,Hir,p2=(A)=>A==="rectangle"||A==="iframe"||A==="embeddable"||A==="ellipse"||A==="diamond"||A==="line"||A==="freedraw",hW=(A)=>A!=="image"&&A!=="frame"&&A!=="magicframe",NhA=(A)=>A==="rectangle"||A==="iframe"||A==="embeddable"||A==="ellipse"||A==="diamond"||A==="freedraw"||A==="arrow"||A==="line",GhA=(A)=>A==="rectangle"||A==="iframe"||A==="embeddable"||A==="ellipse"||A==="diamond"||A==="arrow"||A==="line",QW=(A)=>A==="rectangle"||A==="iframe"||A==="embeddable"||A==="line"||A==="diamond"||A==="image",UhA=(A)=>A==="arrow",nS=(A)=>A==="arrow",wa,Io,Hs,Ks,h_=(A,e)=>{let t=R9(Math.atan2(e[1]-A[1],e[0]-A[0]));return t>=315||t<45?Ks:t>=45&&t<135?wa:t>=135&&t<225?Io:Hs},i2=(A)=>{let[e,t]=A,r=Math.abs(e),i=Math.abs(t);return e>i?wa:e<=-i?Hs:t>r?Io:Ks},U8=(A,e)=>i2(Mt(A,e)),Th=(A,e)=>Hh(U8(A,e)),va=(A,e)=>A[0]===e[0]&&A[1]===e[1],Hh=(A)=>va(A,wa)||va(A,Hs),MhA=(A,e,t)=>{let r=HhA(e);if(A.type==="diamond"){if(t[0]<A.x)return Hs;if(t[1]<A.y)return Ks;if(t[0]>A.x+A.width)return wa;if(t[1]>A.y+A.height)return Io;let o=ye(Uh(X(A.x+A.width/2,A.y),r,2),r,A.angle),s=ye(Uh(X(A.x+A.width,A.y+A.height/2),r,2),r,A.angle),l=ye(Uh(X(A.x+A.width/2,A.y+A.height),r,2),r,A.angle),g=ye(Uh(X(A.x,A.y+A.height/2),r,2),r,A.angle);return c9([o,s,r],t)?h_(o,s):c9([s,l,r],t)?h_(s,l):c9([l,g,r],t)?h_(l,g):h_(g,o)}let i=Uh(X(e[0],e[1]),r,2),u=Uh(X(e[2],e[1]),r,2),a=Uh(X(e[0],e[3]),r,2),n=Uh(X(e[2],e[3]),r,2);return c9([i,u,r],t)?Ks:c9([u,n,r],t)?wa:c9([n,a,r],t)?Io:Hs},YQe=(A)=>[A[0]===0?0:A[0]>0?-1:1,A[1]===0?0:A[1]>0?-1:1],Jir=(A)=>[8,8+A],HQe=(A)=>[1.5,6+A],kg=(A,e=!1)=>{let t={seed:A.seed,strokeLineDash:A.strokeStyle==="dashed"?Jir(A.strokeWidth):A.strokeStyle==="dotted"?HQe(A.strokeWidth):void 0,disableMultiStroke:A.strokeStyle!=="solid",strokeWidth:A.strokeStyle!=="solid"?A.strokeWidth+0.5:A.strokeWidth,fillWeight:A.strokeWidth/2,hachureGap:A.strokeWidth*4,roughness:Oir(A),stroke:A.strokeColor,preserveVertices:e||A.roughness<AIe.cartoonist};switch(A.type){case"rectangle":case"iframe":case"embeddable":case"diamond":case"ellipse":return t.fillStyle=A.fillStyle,t.fill=Rc(A.backgroundColor)?void 0:A.backgroundColor,A.type==="ellipse"&&(t.curveFitting=1),t;case"line":case"freedraw":return fd(A.points)&&(t.fillStyle=A.fillStyle,t.fill=A.backgroundColor==="transparent"?void 0:A.backgroundColor),t;case"arrow":return t;default:throw Error(`Unimplemented type ${A.type}`)}},NEe=(A,e,t)=>xg(A)&&(e||_s(A)&&t?.get(A.id)!==!0)&&Rc(A.backgroundColor)&&Rc(A.strokeColor)?{...A,roughness:0,backgroundColor:"#d3d3d3",fillStyle:"solid"}:Ph(A)?{...A,strokeColor:Rc(A.strokeColor)?"#000000":A.strokeColor,backgroundColor:Rc(A.backgroundColor)?"#f4f4f6":A.backgroundColor}:A,GEe=(A,e,t,r,i,u,a)=>{let n=YEe(A,e,t,r);if(n===null)return[];let o=(s,l)=>{if(s===null)return[];let[,,g,C,B,E]=s;return[i.line(g,C,B,E,l)]};switch(r){case"dot":case"circle":case"circle_outline":{let[s,l,g]=n;return delete u.strokeLineDash,[i.circle(s,l,g,{...u,fill:r==="circle_outline"?a:A.strokeColor,fillStyle:"solid",stroke:A.strokeColor,roughness:Math.min(0.5,u.roughness||0)})]}case"triangle":case"triangle_outline":{let[s,l,g,C,B,E]=n;return delete u.strokeLineDash,[i.polygon([[s,l],[g,C],[B,E],[s,l]],{...u,fill:r==="triangle_outline"?a:A.strokeColor,fillStyle:"solid",roughness:Math.min(1,u.roughness||0)})]}case"diamond":case"diamond_outline":{let[s,l,g,C,B,E,d,I]=n;return delete u.strokeLineDash,[i.polygon([[s,l],[g,C],[B,E],[d,I],[s,l]],{...u,fill:r==="diamond_outline"?a:A.strokeColor,fillStyle:"solid",roughness:Math.min(1,u.roughness||0)})]}case"crowfoot_one":return o(n,u);case"bar":case"arrow":case"crowfoot_many":case"crowfoot_one_or_many":default:{let[s,l,g,C,B,E]=n;if(A.strokeStyle==="dotted"){let d=HQe(A.strokeWidth-1);u.strokeLineDash=[d[0],d[1]-1]}else delete u.strokeLineDash;return u.roughness=Math.min(1,u.roughness||0),[i.line(g,C,s,l,u),i.line(B,E,s,l,u),...r==="crowfoot_one_or_many"?o(YEe(A,e,t,"crowfoot_one"),u):[]]}}},Pir=(A,e,{isExporting:t,canvasBackgroundColor:r,embedsValidationStatus:i})=>{switch(A.type){case"rectangle":case"iframe":case"embeddable":{let u;if(A.roundness){let{width:a,height:n}=A,o=Gc(Math.min(a,n),A);u=e.path(`M ${o} 0 L ${a-o} 0 Q ${a} 0, ${a} ${o} L ${a} ${n-o} Q ${a} ${n}, ${a-o} ${n} L ${o} ${n} Q 0 ${n}, 0 ${n-o} L 0 ${o} Q 0 0, ${o} 0`,kg(NEe(A,t,i),!0))}else u=e.rectangle(0,0,A.width,A.height,kg(NEe(A,t,i),!1));return u}case"diamond":{let u,[a,n,o,s,l,g,C,B]=JQe(A);if(A.roundness){let E=Gc(Math.abs(a-C),A),d=Gc(Math.abs(s-n),A);u=e.path(`M ${a+E} ${n+d} L ${o-E} ${s-d}
|
||
C ${o} ${s}, ${o} ${s}, ${o-E} ${s+d}
|
||
L ${l+E} ${g-d}
|
||
C ${l} ${g}, ${l} ${g}, ${l-E} ${g-d}
|
||
L ${C+E} ${B+d}
|
||
C ${C} ${B}, ${C} ${B}, ${C+E} ${B-d}
|
||
L ${a-E} ${n+d}
|
||
C ${a} ${n}, ${a} ${n}, ${a+E} ${n+d}`,kg(A,!0))}else u=e.polygon([[a,n],[o,s],[l,g],[C,B]],kg(A));return u}case"ellipse":return e.ellipse(A.width/2,A.height/2,A.width,A.height,kg(A));case"line":case"arrow":{let u,a=kg(A),n=A.points.length?A.points:[X(0,0)];if(ft(A)?n.every((o)=>Math.abs(o[0])<=1e6&&Math.abs(o[1])<=1e6)?u=[e.path(_ir(n,16),kg(A,!0))]:(console.error("Elbow arrow with extreme point positions detected. Arrow not rendered.",A.id,JSON.stringify(n)),u=[]):A.roundness?u=[e.curve(n,a)]:a.fill?u=[e.polygon(n,a)]:u=[e.linearPath(n,a)],A.type==="arrow"){let{startArrowhead:o=null,endArrowhead:s="arrow"}=A;if(o!==null){let l=GEe(A,u,"start",o,e,a,r);u.push(...l)}if(s!==null){let l=GEe(A,u,"end",s,e,a,r);u.push(...l)}}return u}case"freedraw":{let u;if(Tir(A),fd(A.points)){let a=RBe(A.points,0.75);u=e.curve(a,{...kg(A),stroke:"none"})}else u=null;return u}case"frame":case"magicframe":case"text":case"image":return null;default:return rp(A,`generateElementShape(): Unimplemented type ${A?.type}`),null}},_ir=(A,e)=>{let t=[];for(let i=1;i<A.length-1;i+=1){let u=A[i-1],a=A[i+1],n=A[i],o=Th(n,u),s=Th(a,n),l=Math.min(e,Li(A[i],a)/2,Li(A[i],u)/2);o?u[0]<n[0]?t.push([A[i][0]-l,A[i][1]]):t.push([A[i][0]+l,A[i][1]]):u[1]<n[1]?t.push([A[i][0],A[i][1]-l]):t.push([A[i][0],A[i][1]+l]),t.push(A[i]),s?a[0]<n[0]?t.push([A[i][0]-l,A[i][1]]):t.push([A[i][0]+l,A[i][1]]):a[1]<n[1]?t.push([A[i][0],A[i][1]-l]):t.push([A[i][0],A[i][1]+l])}let r=[`M ${A[0][0]} ${A[0][1]}`];for(let i=0;i<t.length;i+=3)r.push(`L ${t[i][0]} ${t[i][1]}`),r.push(`Q ${t[i+1][0]} ${t[i+1][1]}, ${t[i+2][0]} ${t[i+2][1]}`);return r.push(`L ${A[A.length-1][0]} ${A[A.length-1][1]}`),r.join(" ")},u2=(A)=>{let e=A.map((r)=>r[0]),t=A.map((r)=>r[1]);return{width:Math.max(...e)-Math.min(...e),height:Math.max(...t)-Math.min(...t)}},G_=(A,e,t,r)=>{let i=t.map((C)=>C[A]),u=Math.max(...i),a=Math.min(...i),n=u-a,o=n===0?1:e/n,s=1/0,l=t.map((C)=>{let B=C[A]*o,E=[...C];return E[A]=B,B<s&&(s=B),E});if(!r||l.length===2)return l;let g=a-s;return l.map((C)=>C.map((B,E)=>E===A?B+g:B))},KQe=class A{static getBounds(e,t){let r=A.boundsCache.get(e);if(r?.version&&r.version===e.version&&!Tu(e))return r.bounds;let i=A.calculateBounds(e,t);return A.boundsCache.set(e,{version:e.version,bounds:i}),i}static calculateBounds(e,t){let r,[i,u,a,n,o,s]=Rr(e,t);if(Tc(e)){let[l,g,C,B]=ThA(e.points.map(([E,d])=>ye(X(E,d),X(o-e.x,s-e.y),e.angle)));return[l+e.x,g+e.y,C+e.x,B+e.y]}else if(Nr(e))r=Xir(e,o,s,t);else if(e.type==="diamond"){let[l,g]=ye(X(o,u),X(o,s),e.angle),[C,B]=ye(X(o,n),X(o,s),e.angle),[E,d]=ye(X(i,s),X(o,s),e.angle),[I,h]=ye(X(a,s),X(o,s),e.angle),Q=Math.min(l,C,E,I),p=Math.min(g,B,d,h),m=Math.max(l,C,E,I),f=Math.max(g,B,d,h);r=[Q,p,m,f]}else if(e.type==="ellipse"){let l=(a-i)/2,g=(n-u)/2,C=Math.cos(e.angle),B=Math.sin(e.angle),E=Math.hypot(l*C,g*B),d=Math.hypot(g*C,l*B);r=[o-E,s-d,o+E,s+d]}else{let[l,g]=ye(X(i,u),X(o,s),e.angle),[C,B]=ye(X(i,n),X(o,s),e.angle),[E,d]=ye(X(a,n),X(o,s),e.angle),[I,h]=ye(X(a,u),X(o,s),e.angle),Q=Math.min(l,C,E,I),p=Math.min(g,B,d,h),m=Math.max(l,C,E,I),f=Math.max(g,B,d,h);r=[Q,p,m,f]}return r}},Wir,Rr=(A,e,t=!1)=>{if(Tc(A))return zir(A);if(Nr(A))return ht.getElementAbsoluteCoords(A,e,t);if(Et(A)){let r=e?Qo(A,e):null;if(Kr(r)){let{x:i,y:u}=ht.getBoundTextElementPosition(r,A,e);return[i,u,i+A.width,u+A.height,i+A.width/2,u+A.height/2]}}return[A.x,A.y,A.x+A.width,A.y+A.height,A.x+A.width/2,A.y+A.height/2]},UEe=(A,e)=>{let[t,r,i,u,a,n]=Rr(A,e),o=X(a,n);if(Nr(A)||Tc(A)){let h=[],Q=0;for(;Q<A.points.length-1;)h.push(_t(ye(X(A.points[Q][0]+A.x,A.points[Q][1]+A.y),o,A.angle),ye(X(A.points[Q+1][0]+A.x,A.points[Q+1][1]+A.y),o,A.angle))),Q++;return h}let[s,l,g,C,B,E,d,I]=[[t,r],[i,r],[t,u],[i,u],[a,r],[a,u],[t,n],[i,n]].map((h)=>ye(h,o,A.angle));return A.type==="diamond"?[_t(B,d),_t(B,I),_t(E,d),_t(E,I)]:A.type==="ellipse"?[_t(B,d),_t(B,I),_t(E,d),_t(E,I),_t(B,d),_t(B,I),_t(E,d),_t(E,I)]:[_t(s,l),_t(g,C),_t(s,g),_t(l,C),_t(s,I),_t(g,I),_t(l,d),_t(C,d)]},JQe=(A)=>{let e=Math.floor(A.width/2)+1,t=0,r=A.width,i=Math.floor(A.height/2)+1,u=e,a=A.height;return[e,t,r,i,u,a,0,i]},MEe=(A,e,t,r,i)=>{let u=1-A;return Math.pow(u,3)*e+3*Math.pow(u,2)*A*t+3*u*Math.pow(A,2)*r+Math.pow(A,3)*i},TEe=(A,e,t,r)=>{let i=e-A,u=t-e,a=r-t,n=3*i-6*u+3*a,o=6*u-6*i,s=3*i,l=o*o-4*n*s;if(!(l>=0))return!1;let g=null,C=null,B=1/0,E=1/0;return n===0?B=E=-s/o:(B=(-o+Math.sqrt(l))/(2*n),E=(-o-Math.sqrt(l))/(2*n)),B>=0&&B<=1&&(g=MEe(B,A,e,t,r)),E>=0&&E<=1&&(C=MEe(E,A,e,t,r)),[g,C]},qir=(A,e,t,r)=>{let i=TEe(A[0],e[0],t[0],r[0]),u=TEe(A[1],e[1],t[1],r[1]),a=Math.min(A[0],r[0]),n=Math.max(A[0],r[0]);if(i){let l=i.filter((g)=>g!==null);a=Math.min(a,...l),n=Math.max(n,...l)}let o=Math.min(A[1],r[1]),s=Math.max(A[1],r[1]);if(u){let l=u.filter((g)=>g!==null);o=Math.min(o,...l),s=Math.max(s,...l)}return[a,o,n,s]},pW=(A,e)=>{let t=X(0,0),{minX:r,minY:i,maxX:u,maxY:a}=A.reduce((n,{op:o,data:s})=>{if(o==="move"){let l=SIA(s);fn(l!=null,"Op data is not a point"),t=l}else if(o==="bcurveTo"){let l=X(s[0],s[1]),g=X(s[2],s[3]),C=X(s[4],s[5]),B=e?e(l):l,E=e?e(g):g,d=e?e(C):C,I=e?e(t):t;t=C;let[h,Q,p,m]=qir(I,B,E,d);n.minX=Math.min(n.minX,h),n.minY=Math.min(n.minY,Q),n.maxX=Math.max(n.maxX,p),n.maxY=Math.max(n.maxY,m)}return n},{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0});return[r,i,u,a]},ThA=(A)=>{let e=1/0,t=1/0,r=-1/0,i=-1/0;for(let[u,a]of A)e=Math.min(e,u),t=Math.min(t,a),r=Math.max(r,u),i=Math.max(i,a);return[e,t,r,i]},zir=(A)=>{let[e,t,r,i]=ThA(A.points),u=e+A.x,a=t+A.y,n=r+A.x,o=i+A.y;return[u,a,n,o,(u+n)/2,(a+o)/2]},Zir=(A)=>{switch(A){case"arrow":return 25;case"diamond":case"diamond_outline":return 12;case"crowfoot_many":case"crowfoot_one":case"crowfoot_one_or_many":return 20;default:return 15}},Vir=(A)=>{switch(A){case"bar":return 90;case"arrow":return 20;default:return 25}},YEe=(A,e,t,r)=>{if(e.length<1)return null;let i=sp(e[0]);if(i.length<1)return null;let u=t==="start"?1:i.length-1,a=i[u].data;fn(a.length===6,"Op data length is not 6");let n=X(a[4],a[5]),o=X(a[2],a[3]),s=X(a[0],a[1]),l=i[u-1],g=X(0,0);if(l.op==="move"){let T=SIA(l.data);fn(T!=null,"Op data is not a point"),g=T}else l.op==="bcurveTo"&&(g=X(l.data[4],l.data[5]));let C=(T,R)=>Math.pow(1-T,3)*n[R]+3*T*Math.pow(1-T,2)*o[R]+3*Math.pow(T,2)*(1-T)*s[R]+g[R]*Math.pow(T,3),[B,E]=t==="start"?g:n,[d,I]=[C(0.3,0),C(0.3,1)],h=Math.hypot(B-d,E-I),Q=(B-d)/h,p=(E-I)/h,m=Zir(r),f=0;{let[T,R]=t==="end"?A.points[A.points.length-1]:A.points[0],[L,M]=A.points.length>1?t==="end"?A.points[A.points.length-2]:A.points[1]:[0,0];f=Math.hypot(T-L,R-M)}let D=Math.min(m,f*(r==="diamond"||r==="diamond_outline"?0.25:0.5)),w=B-Q*D,b=E-p*D;if(r==="dot"||r==="circle"||r==="circle_outline"){let T=Math.hypot(b-E,w-B)+A.strokeWidth-2;return[B,E,T]}let F=Vir(r);if(r==="crowfoot_many"||r==="crowfoot_one_or_many"){let[T,R]=ye(X(B,E),X(w,b),P1(-F)),[L,M]=ye(X(B,E),X(w,b),P1(F));return[w,b,T,R,L,M]}let[v,S]=ye(X(w,b),X(B,E),-F*Math.PI/180),[x,k]=ye(X(w,b),X(B,E),P1(F));if(r==="diamond"||r==="diamond_outline"){let T,R;if(t==="start"){let[L,M]=A.points.length>1?A.points[1]:[0,0];[T,R]=ye(X(B+D*2,E),X(B,E),Math.atan2(M-E,L-B))}else{let[L,M]=A.points.length>1?A.points[A.points.length-2]:[0,0];[T,R]=ye(X(B-D*2,E),X(B,E),Math.atan2(E-M,B-L))}return[B,E,v,S,T,R,x,k]}return[B,E,v,S,x,k]},jir=(A)=>{let e=xc.generator(),t=kg(A),r=A.roundness?"curve":t.fill?"polygon":"linearPath";return e[r](A.points,t)},Xir=(A,e,t,r)=>{let i=Gr(A,r);if(A.points.length<2){let[s,l]=A.points[0],[g,C]=ye(X(A.x+s,A.y+l),X(e,t),A.angle),B=[g,C,g,C];if(i){let E=ht.getMinMaxXYWithBoundText(A,r,[g,C,g,C],i);B=[E[0],E[1],E[2],E[3]]}return B}let u=na.get(A)?.[0]??jir(A),a=sp(u),n=pW(a,([s,l])=>ye(X(A.x+s,A.y+l),X(e,t),A.angle)),o=[n[0],n[1],n[2],n[3]];if(i){let s=ht.getMinMaxXYWithBoundText(A,r,o,i);o=[s[0],s[1],s[2],s[3]]}return o},sB=(A,e)=>Wir.getBounds(A,e),Pi=(A,e)=>{if(!A.length)return[0,0,0,0];let t=1/0,r=-1/0,i=1/0,u=-1/0,a=e||ar(A);return A.forEach((n)=>{let[o,s,l,g]=sB(n,a);t=Math.min(t,o),i=Math.min(i,s),r=Math.max(r,l),u=Math.max(u,g)}),[t,i,r,u]},YhA=(A,e)=>{let[t,r,i,u]=Pi(A);return[t+e.x,r+e.y,i+e.x,u+e.y]},_1=(A,e,t,r)=>{if(!(Nr(A)||Tc(A)))return[A.x,A.y,A.x+e,A.y+t];let i=G_(0,e,G_(1,t,A.points,r),r),u;if(Tc(A))u=ThA(i);else{let l=xc.generator(),g=A.roundness?l.curve(i,kg(A)):l.linearPath(i,kg(A)),C=sp(g);u=pW(C)}let[a,n,o,s]=u;return[a+A.x,n+A.y,o+A.x,s+A.y]},HEe=(A,e)=>{let t=xc.generator(),r=A.roundness==null?t.linearPath(e,kg(A)):t.curve(e,kg(A)),i=sp(r),[u,a,n,o]=pW(i);return[u+A.x,a+A.y,n+A.x,o+A.y]},$ir=(A,e)=>{if(!A.length)return[0,0,0,0];let t=1/0,r=A[0],i=ar(A);return A.forEach((u)=>{let[a,n,o,s]=sB(u,i),l=Li(X((a+o)/2,(n+s)/2),X(e.x,e.y));l<t&&(t=l,r=u)}),sB(r,i)},Jc=(A)=>{let[e,t,r,i]=Pi(A);return{minX:e,minY:t,maxX:r,maxY:i,width:r-e,height:i-t,midX:(e+r)/2,midY:(t+i)/2}},OQe=({scrollX:A,scrollY:e,width:t,height:r,zoom:i})=>[-A,-e,-A+t/i.value,-e+r/i.value],HhA=(A)=>X(A[0]+(A[2]-A[0])/2,A[1]+(A[3]-A[1])/2),Aur=(A,e)=>{if(A==null||e==null)return!1;let[t,r,i,u]=A,[a,n,o,s]=e;return t<o&&i>a&&r<s&&u>n},fW=(A,e)=>{switch(A.type){case"rectangle":case"image":case"text":case"iframe":case"embeddable":case"frame":case"magicframe":return eur(A,e);case"diamond":return tur(A,e);case"ellipse":return rur(A,e)}},eur=(A,e)=>{let t=X(A.x+A.width/2,A.y+A.height/2),r=ye(e,t,-A.angle),[i,u]=fQe(A);return Math.min(...i.map((a)=>LIA(r,a)),...u.map((a)=>sIe(a,r)).filter((a)=>a!==null))},tur=(A,e)=>{let t=X(A.x+A.width/2,A.y+A.height/2),r=ye(e,t,-A.angle),[i,u]=mQe(A);return Math.min(...i.map((a)=>LIA(r,a)),...u.map((a)=>sIe(a,r)).filter((a)=>a!==null))},rur=(A,e)=>{let t=X(A.x+A.width/2,A.y+A.height/2);return fir(ye(e,t,-A.angle),pQe(t,A.width/2,A.height/2))},PQe=(A)=>!A[PA.CTRL_OR_CMD],V1=(A)=>A.isBindingEnabled,Lu=5,mW=10,DW=4,iur=(A,e)=>{let t=[];return e.forEach((r)=>{let i=A.getNonDeletedElement(r);i!=null&&t.push(i)}),t},oS=(A,e,t,r,i)=>{let u=new Set,a=new Set;KEe(A,e,t,"start",u,a,r),KEe(A,t,e,"end",u,a,r);let n=Array.from(a).filter((o)=>!u.has(o));iur(i,n).forEach((o)=>{Se(o,{boundElements:o.boundElements?.filter((s)=>s.type!=="arrow"||s.id!==A.id)})})},KEe=(A,e,t,r,i,u,a)=>{if(e!=="keep"){if(e===null){let n=sur(A,r);n!=null&&u.add(n);return}qQe(A)?(t==null||(t==="keep"?!WQe(A,e,r):r==="start"||t.id!==e.id))&&(lB(A,e,r,a),i.add(e.id)):(lB(A,e,r,a),i.add(e.id))}},uur=(A,e,t,r)=>{let i=zQe(A,e,t),u=e==="start"?A.startBinding?.elementId:A.endBinding?.elementId;if(u){let a=t.get(u);if(Yc(a)&&D_(a,i,t,r))return a}return null},_Qe=(A,e,t)=>["start","end"].map((r)=>uur(A,r,e,t)),aur=(A,e,t,r,i,u)=>{let a=A.points.length-1,n=t.findIndex((g)=>g===0)>-1,o=t.findIndex((g)=>g===a)>-1,s=n?e?h9(A,"start",r,i,u):null:ft(A)?"keep":h9(A,"start",r,i,u),l=o?e?h9(A,"end",r,i,u):null:ft(A)?"keep":h9(A,"end",r,i,u);return[s,l]},nur=(A,e,t,r,i)=>{if(ft(A))return["keep","keep"];let[u,a]=_Qe(A,e,i),n=u&&r?h9(A,"start",e,t,i):null,o=a&&r?h9(A,"end",e,t,i):null;return[n,o]},sS=(A,e,t,r,i,u,a)=>{A.forEach((n)=>{let[o,s]=u?.length?aur(n,i,u??[],e,t,a):nur(n,e,t,i,a);oS(n,o,s,e,r)})},yW=(A,e,t)=>A.length>50?[]:A.filter(Nr).flatMap((r)=>_Qe(r,e,t)).filter((r)=>r!==null).filter((r)=>A.filter((i)=>i.id===r?.id).length===0),wW=(A,e,t,r,i)=>{e.startBoundElement!=null&&lB(A,e.startBoundElement,"start",r);let u=Hc(t,i,r,e.zoom,ft(A),ft(A));u!==null&&(WQe(A,u,"end")||lB(A,u,"end",r))},our=(A,e)=>{let t=A.gap,r=K9(e,e.width,e.height);return t>r&&(t=mW+DW),{...A,gap:t}},lB=(A,e,t,r)=>{if(!Kr(A))return;let i={elementId:e.id,...ft(A)?{...lS(A,e,t,r),focus:0,gap:0}:{...our(cur(A,e,t,r),e)}};Se(A,{[t==="start"?"startBinding":"endBinding"]:i}),ar(e.boundElements||[]).has(A.id)||Se(e,{boundElements:(e.boundElements||[]).concat({id:A.id,type:"arrow"})})},WQe=(A,e,t)=>{let r=A[t==="start"?"endBinding":"startBinding"];return KhA(A,r?.elementId,e)},KhA=(A,e,t)=>e===t.id&&qQe(A),qQe=(A)=>A.points.length<3,sur=(A,e)=>{let t=e==="start"?"startBinding":"endBinding",r=A[t];return r==null?null:(Se(A,{[t]:null}),r.elementId)},Hc=(A,e,t,r,i,u)=>{if(u){let a=!1,n=gur(e,(s)=>Yc(s,!1)&&D_(s,A,t,r,(i||!_dA(s))&&!nr(s))).filter((s)=>a?!1:(_dA(s)||(a=!0),!0));if(!n||n.length===0)return null;if(n.length===1)return n[0];let o=n.filter((s)=>D_(s,A,t,r,!1));return o.length===1?o[0]:n.sort((s,l)=>l.width**2+l.height**2-(s.width**2+s.height**2)).pop()}return lur(e,(a)=>Yc(a,!1)&&D_(a,A,t,r,(i||!_dA(a))&&!nr(a)))},lur=(A,e)=>{let t=null;for(let r=A.length-1;r>=0;--r){let i=A[r];if(!i.isDeleted&&e(i)){t=i;break}}return t},gur=(A,e)=>{let t=[];for(let r=A.length-1;r>=0;--r){let i=A[r];i.isDeleted||e(i)&&t.push(i)}return t},cur=(A,e,t,r)=>{let i=t==="start"?-1:1,u=i===-1?0:A.points.length-1,a=u-i,n=ht.getPointAtIndexGlobalCoordinates(A,u,r),o=ht.getPointAtIndexGlobalCoordinates(A,a,r);return{focus:fur(e,o,n),gap:Math.max(1,fW(e,n))}},Os=(A,e,t)=>{let{newSize:r,simultaneouslyUpdated:i}=t??{},u=Bur(i);Yc(A)&&bW(e,A,(a)=>{if(!Nr(a)||a.isDeleted||!Cur(a,A))return;let n=a.startBinding?e.get(a.startBinding.elementId):null,o=a.endBinding?e.get(a.endBinding.elementId):null,s=null,l=null;n&&o&&(s=sB(n,e),l=sB(o,e));let g={startBinding:JEe(A,a.startBinding,r),endBinding:JEe(A,a.endBinding,r)};if(u.has(a.id)){Se(a,g,!0);return}let C=vW(e,a,(E,d)=>{if(E&&Yc(E)&&(d==="startBinding"||d==="endBinding")&&(A.id===a[d]?.elementId||A.id===a[d==="startBinding"?"endBinding":"startBinding"]?.elementId&&!Aur(s,l))){let I=pur(a,d,g[d],E,e);if(I)return{index:d==="startBinding"?0:a.points.length-1,point:I}}return null}).filter((E)=>E!==null);ht.movePoints(a,C,{...A.id===a.startBinding?.elementId?{startBinding:g.startBinding}:{},...A.id===a.endBinding?.elementId?{endBinding:g.endBinding}:{}});let B=Gr(a,e);B&&!B.isDeleted&&_9(a,e,!1)})},Cur=(A,e)=>A.startBinding?.elementId===e.id||A.endBinding?.elementId===e.id,Bur=(A)=>new Set((A||[]).map((e)=>e.id)),Eur=(A,e,t,r,i,u,a)=>{let n=i2(Mt(e,A));return!t||!r?n:dur(u,t,i,a)?MhA(t,r,A):i2(Mt(A,X(t.x+t.width/2,t.y+t.height/2)))},dur=(A,e,t,r)=>{let i=fW(e,A),u=K9(e,e.width,e.height,r);return i>u?null:i},v9=(A,e,t)=>{let r=e&&iB(e),i=A.points[t==="start"?0:A.points.length-1],u=X(A.x+i[0],A.y+i[1]),a=a$t(e)?hur(e,u):u;if(e&&r){let n=HhA(r),o=yQe(e,_t(n,Xr(ba(p0(Mt(a,n)),Math.max(e.width,e.height)),n)))[0],s=Li(a,n),l=Math.max(Li(o??a,n),0.0001),g=IB(s/l,6);switch(!0){case g>0.9:return s-l>Lu||L8(a,o)<0.0001?a:Xr(ba(p0(Mt(a,o??n)),g>1?Lu:-Lu),o??n);default:return Iur(a,e,r)}}return a},Iur=(A,e,t)=>{let r=HhA(t),i=i2(Mt(A,r));switch(!0){case va(i,Ks):return ye(X((t[0]+t[2])/2+0.1,t[1]),r,e.angle);case va(i,wa):return ye(X(t[2],(t[1]+t[3])/2+0.1),r,e.angle);case va(i,Io):return ye(X((t[0]+t[2])/2-0.1,t[3]),r,e.angle);default:return ye(X(t[0],(t[1]+t[3])/2-0.1),r,e.angle)}},hur=(A,e)=>{let t=X(A.x+A.width/2,A.y+A.height/2),r=ye(e,t,-A.angle);return r[0]<A.x&&r[1]<A.y?r[1]-A.y>-Lu?ye(X(A.x-Lu,A.y),t,A.angle):ye(X(A.x,A.y-Lu),t,A.angle):r[0]<A.x&&r[1]>A.y+A.height?r[0]-A.x>-Lu?ye(X(A.x,A.y+A.height+Lu),t,A.angle):ye(X(A.x-Lu,A.y+A.height),t,A.angle):r[0]>A.x+A.width&&r[1]>A.y+A.height?r[0]-A.x<A.width+Lu?ye(X(A.x+A.width,A.y+A.height+Lu),t,A.angle):ye(X(A.x+A.width+Lu,A.y+A.height),t,A.angle):r[0]>A.x+A.width&&r[1]<A.y?r[0]-A.x<A.width+Lu?ye(X(A.x+A.width,A.y-Lu),t,A.angle):ye(X(A.x+A.width+Lu,A.y),t,A.angle):e},Qur=(A,e,t=0.05)=>{let{x:r,y:i,width:u,height:a,angle:n}=A,o=X(r+u/2-0.1,i+a/2-0.1),s=ye(e,o,-n),l=Vr(t*a,5,80),g=Vr(t*u,5,80);return s[0]<=r+u/2&&s[1]>o[1]-l&&s[1]<o[1]+l?ye(X(r-Lu,o[1]),o,n):s[1]<=i+a/2&&s[0]>o[0]-g&&s[0]<o[0]+g?ye(X(o[0],i-Lu),o,n):s[0]>=r+u/2&&s[1]>o[1]-l&&s[1]<o[1]+l?ye(X(r+u+Lu,o[1]),o,n):s[1]>=i+a/2&&s[0]>o[0]-g&&s[0]<o[0]+g?ye(X(o[0],i+a+Lu),o,n):e},pur=(A,e,t,r,i)=>{if(t==null||t.elementId!==r.id&&A.points.length>2)return null;let u=e==="startBinding"?-1:1,a=u===-1?0:A.points.length-1;if(ft(A)&&L_(t)){let g=kW(t.fixedPoint)??lS(A,r,e==="startBinding"?"start":"end",i).fixedPoint,C=X(r.x+r.width/2,r.y+r.height/2),B=X(r.x+g[0]*r.width,r.y+g[1]*r.height),E=ye(B,C,r.angle);return ht.pointFromAbsoluteCoords(A,E,i)}let n=a-u,o=ht.getPointAtIndexGlobalCoordinates(A,n,i),s=mur(r,t.focus,o),l;if(t.gap===0)l=s;else{let g=ht.getPointAtIndexGlobalCoordinates(A,a,i),C=X(r.x+r.width/2,r.y+r.height/2),B=Li(o,g)+Li(o,C)+Math.max(r.width,r.height)*2,E=yQe(r,_t(o,Xr(ba(p0(Mt(s,o)),B),o)),t.gap).sort((d,I)=>L8(d,o)-L8(I,o));E.length>1?l=E[0]:E.length===1?l=s:l=g}return ht.pointFromAbsoluteCoords(A,l,i)},lS=(A,e,t,r)=>{let i=[e.x,e.y,e.x+e.width,e.y+e.height],u=v9(A,e,t),a=X(i[0]+(i[2]-i[0])/2,i[1]+(i[3]-i[1])/2),n=ye(u,a,-e.angle);return{fixedPoint:kW([(n[0]-e.x)/e.width,(n[1]-e.y)/e.height])}},JEe=(A,e,t)=>{if(e==null||t==null)return e;let{width:r,height:i}=t,{width:u,height:a}=A,n=Math.max(1,Math.min(K9(A,r,i),e.gap*(r<i?r/u:i/a)));return{...e,gap:n}},h9=(A,e,t,r,i)=>Hc(zQe(A,e,t),r,t,i,ft(A),ft(A)),zQe=(A,e,t)=>{let r=e==="start"?0:-1;return Nc(ht.getPointAtIndexGlobalCoordinates(A,r,t))},JhA=(A,e,t,r)=>{let i=new Set,u=new Set,a=r==="duplicatesServeAsOld",n=new Map([...t].map(([o,s])=>[s,o]));e.forEach((o)=>{let{boundElements:s}=o;if(s!=null&&s.length>0&&(s.forEach((l)=>{a&&!t.has(l.id)&&i.add(l.id)}),u.add(t.get(o.id))),oB(o)){if(o.startBinding!=null){let{elementId:l}=o.startBinding;a&&!t.has(l)&&u.add(l)}if(o.endBinding!=null){let{elementId:l}=o.endBinding;a&&!t.has(l)&&u.add(l)}(o.startBinding!=null||o.endBinding!=null)&&i.add(t.get(o.id))}}),A.filter(({id:o})=>i.has(o)).forEach((o)=>{let{startBinding:s,endBinding:l}=o;Se(o,{startBinding:OEe(s,t),endBinding:OEe(l,t)})}),A.filter(({id:o})=>u.has(o)).forEach((o)=>{let s=n.get(o.id),l=A.find(({id:g})=>g===s)?.boundElements;l&&l.length>0&&Se(o,{boundElements:l.map((g)=>t.has(g.id)?{id:t.get(g.id),type:g.type}:g)})})},OEe=(A,e)=>A==null?null:{...A,elementId:e.get(A.elementId)??A.elementId},OhA=(A,e)=>{let t=ar(A);for(let r of e)Q9.unbindAffected(t,r,Se),p9.unbindAffected(t,r,Se)},M8=(A,e,t=[])=>{if(!A)return null;let r=A.filter((i)=>!e.has(i.id));return r.push(...t.map((i)=>({id:i.id,type:i.type}))),r},D_=(A,{x:e,y:t},r,i,u)=>{let a=K9(A,A.width,A.height,i),n=pd(A,r);return aIA(X(e,t),n,a)||u===!0&&b9(X(e,t),iB(A))},K9=(A,e,t,r)=>{let i=r?.value&&r.value<1?r.value:1,u=(A.type==="diamond"?1/Math.sqrt(2):1)*Math.min(e,t);return Math.max(16,Math.min(0.25*u,32),mW/i+DW)},fur=(A,e,t)=>{let r=X(A.x+A.width/2,A.y+A.height/2);if(nB(e,t))return 0;let i=ye(e,r,-A.angle),u=ye(t,r,-A.angle),a=Math.sign(Eo(Mt(u,e),Mt(u,r)))*-1,n=_t(u,Xr(ba(p0(Mt(u,i)),Math.max(A.width*2,A.height*2)),u)),o=A.type==="diamond"?[_t(X(A.x+A.width/2,A.y),X(A.x+A.width/2,A.y+A.height)),_t(X(A.x,A.y+A.height/2),X(A.x+A.width,A.y+A.height/2))]:[_t(X(A.x,A.y),X(A.x+A.width,A.y+A.height)),_t(X(A.x+A.width,A.y),X(A.x,A.y+A.height))],s=A.type==="diamond"?[_t(X(A.x+A.width/2,A.y-A.height),X(A.x+A.width/2,A.y+A.height*2)),_t(X(A.x-A.width,A.y+A.height/2),X(A.x+A.width*2,A.y+A.height/2))]:[_t(X(A.x-A.width,A.y-A.height),X(A.x+A.width*2,A.y+A.height*2)),_t(X(A.x+A.width*2,A.y-A.height),X(A.x-A.width,A.y+A.height*2))];return[R8(n,s[0]),R8(n,s[1])].filter((l)=>l!==null).sort((l,g)=>L8(l,t)-L8(g,t)).map((l,g)=>a*Li(r,l)/(A.type==="diamond"?Li(o[g][0],o[g][1])/2:Math.sqrt(A.width**2+A.height**2)/2)).sort((l,g)=>Math.abs(l)-Math.abs(g))[0]??0},mur=(A,e,t)=>{let r=X(A.x+A.width/2,A.y+A.height/2);if(e===0)return r;let i=(A.type==="diamond"?[X(A.x,A.y+A.height/2),X(A.x+A.width/2,A.y),X(A.x+A.width,A.y+A.height/2),X(A.x+A.width/2,A.y+A.height)]:[X(A.x,A.y),X(A.x+A.width,A.y),X(A.x+A.width,A.y+A.height),X(A.x,A.y+A.height)]).map((a)=>Xr(ba(Mt(a,r),Math.abs(e)),r)).map((a)=>ye(a,r,A.angle)),u=[Eo(Mt(t,i[0]),Mt(i[1],i[0]))>0&&(e>0?Eo(Mt(t,i[1]),Mt(i[2],i[1]))<0:Eo(Mt(t,i[3]),Mt(i[0],i[3]))<0),Eo(Mt(t,i[1]),Mt(i[2],i[1]))>0&&(e>0?Eo(Mt(t,i[2]),Mt(i[3],i[2]))<0:Eo(Mt(t,i[0]),Mt(i[1],i[0]))<0),Eo(Mt(t,i[2]),Mt(i[3],i[2]))>0&&(e>0?Eo(Mt(t,i[3]),Mt(i[0],i[3]))<0:Eo(Mt(t,i[1]),Mt(i[2],i[1]))<0),Eo(Mt(t,i[3]),Mt(i[0],i[3]))>0&&(e>0?Eo(Mt(t,i[0]),Mt(i[1],i[0]))<0:Eo(Mt(t,i[2]),Mt(i[3],i[2]))<0)];return u[0]?e>0?i[1]:i[0]:u[1]?e>0?i[2]:i[1]:u[2]?e>0?i[3]:i[2]:e>0?i[0]:i[3]},Dur,bW=(A,e,t)=>{Yc(e)&&(e.boundElements?.slice()??[]).forEach(({id:r})=>{t(A.get(r),"boundElements",r)})},vW=(A,e,t)=>{let r=[];if(e.frameId){let i=e.frameId;r.push(t(A.get(i),"frameId",i))}if(Tu(e)){let i=e.containerId;r.push(t(A.get(i),"containerId",i))}if(Kr(e)){if(e.startBinding){let i=e.startBinding.elementId;r.push(t(A.get(i),"startBinding",i))}if(e.endBinding){let i=e.endBinding.elementId;r.push(t(A.get(i),"endBinding",i))}}return r},Q9=class{static unbindAffected(A,e,t){e&&vW(A,e,(r)=>{!r||r.isDeleted||bW(A,r,(i,u,a)=>{a===e.id&&t(r,{boundElements:M8(r.boundElements,new Set([a]))})})})}},p9=class{static unbindAffected(A,e,t){e&&bW(A,e,(r)=>{!r||r.isDeleted||vW(A,r,(i,u,a)=>{a===e.id&&t(r,{[u]:null})})})}},sIA=(A,e)=>{let[t,r]=kW(A);return ye(X(e.x+e.width*t,e.y+e.height*r),X(e.x+e.width/2,e.y+e.height/2),e.angle)},yur=(A,e)=>{let t=A.startBinding&&e.get(A.startBinding.elementId),r=A.endBinding&&e.get(A.endBinding.elementId),i=t&&A.startBinding?sIA(A.startBinding.fixedPoint,t):X(A.x+A.points[0][0],A.y+A.points[0][1]),u=r&&A.endBinding?sIA(A.endBinding.fixedPoint,r):X(A.x+A.points[A.points.length-1][0],A.y+A.points[A.points.length-1][1]);return[i,u]},wur=(A,e)=>{let[t,r]=yur(A,e);return[ht.pointFromAbsoluteCoords(A,t,e),ht.pointFromAbsoluteCoords(A,r,e)]},kW=(A)=>A&&(Math.abs(A[0]-0.5)<0.0001||Math.abs(A[1]-0.5)<0.0001)?A.map((e)=>Math.abs(e-0.5)<0.0001?0.5001:e):A,bur=(A,e)=>{let[t,r,i,u]=e,{x:a,y:n}=Mc({sceneX:t,sceneY:r},A),{x:o,y:s}=Mc({sceneX:i,sceneY:u},A);return o-a>A.width||s-n>A.height},PhA=({scenePoint:A,viewportDimensions:e,zoom:t,offsets:r})=>{let i=(e.width-(r?.right??0))/2/t.value-A.x;i+=(r?.left??0)/2/t.value;let u=(e.height-(r?.bottom??0))/2/t.value-A.y;return u+=(r?.top??0)/2/t.value,{scrollX:i,scrollY:u}},J9=(A,e)=>{if(A=snr(A),!A.length)return{scrollX:0,scrollY:0};let[t,r,i,u]=Pi(A);bur(e,[t,r,i,u])&&([t,r,i,u]=$ir(A,Ru({clientX:e.scrollX,clientY:e.scrollY},e)));let a=(t+i)/2,n=(r+u)/2;return PhA({scenePoint:{x:a,y:n},viewportDimensions:{width:e.width,height:e.height},zoom:e.zoom})},Fd=(A)=>Vr(IB(A,6),__,W_),vur=(A)=>Vr(Math.round(A),1,100),_hA=(A)=>Vr(Math.round(A),1,100),WhA=(A,e,t)=>{let r=t.reduce((i,u)=>(u.groupIds.includes(A)&&(i[u.id]=!0),i),{});return Object.keys(r).length<2?e.selectedGroupIds[A]||e.editingGroupId===A?{selectedElementIds:e.selectedElementIds,selectedGroupIds:{...e.selectedGroupIds,[A]:!1},editingGroupId:null}:e:{editingGroupId:e.editingGroupId,selectedGroupIds:{...e.selectedGroupIds,[A]:!0},selectedElementIds:{...e.selectedElementIds,...r}}},V0,qhA=(A,e)=>zhA(A,e)!=null,zhA=(A,e)=>e.groupIds.filter((t)=>t!==A.editingGroupId).find((t)=>A.selectedGroupIds[t]),lp=(A)=>Object.entries(A.selectedGroupIds).filter(([e,t])=>t).map(([e,t])=>e),ZhA=(A,e)=>{let t={...e,selectedGroupIds:{}};for(let r of A){let i=r.groupIds;if(e.editingGroupId){let u=i.indexOf(e.editingGroupId);u>-1&&(i=i.slice(0,u))}if(i.length>0){let u=i[i.length-1];t={...t,...WhA(u,t,A)}}}return t.selectedGroupIds},ZQe=(A,e)=>({...A,editingGroupId:e.groupIds.length?e.groupIds[0]:null,selectedGroupIds:{},selectedElementIds:{[e.id]:!0}}),O9=(A,e)=>A.groupIds.includes(e),Yu=(A,e)=>{let t=[];for(let r of A.values())O9(r,e)&&t.push(r);return t},VQe=(A,e)=>A.groupIds.find((t)=>e[t]),kur=(A,e,t)=>{let r=[...A],i=e?A.indexOf(e):-1,u=i>-1?i:A.length;for(let a=0;a<u;a++)r[a]=t(r[a]);return r},jQe=(A,e,t)=>{let r=[...A],i=t?r.indexOf(t):-1,u=i>-1?i:r.length;return r.splice(u,0,e),r},XQe=(A,e)=>A.filter((t)=>!e[t]),gS=(A,e)=>{let t=new Map;return A.forEach((r)=>{let i=r.groupIds.length===0?r.id:r.groupIds[r.groupIds.length-1],u=t.get(i)||[],a=Gr(r,e);a&&u.push(a),t.set(i,[...u,r])}),Array.from(t.values())},Fur=(A)=>{let e=new Set;for(let[,t]of A)if(!t.isDeleted)for(let r of t.groupIds??[])e.add(r);return e},VhA=(A)=>{let e=A.flatMap((i)=>i.groupIds),t=new Map,r=0;for(let i of e)t.set(i,(t.get(i)??0)+1),t.get(i)>r&&(r=t.get(i));return r===A.length},f2=(A)=>A.groupIds.length>0,xur=8,PEe=99999,FW=(A)=>xur/A,Gl=class{},xd,P9=(A)=>A.props.gridModeEnabled??A.state.gridModeEnabled,_h=({event:A,app:e,selectedElements:t})=>A?e.state.objectsSnapModeEnabled&&!A[PA.CTRL_OR_CMD]||!e.state.objectsSnapModeEnabled&&A[PA.CTRL_OR_CMD]&&!P9(e):t.length===1&&t[0].type==="arrow"?!1:e.state.objectsSnapModeEnabled,Sur=(A,e,t=0.01)=>Math.abs(A-e)<=t,T8=(A,e,{omitCenter:t,boundingBoxCorners:r,dragOffset:i}={omitCenter:!1,boundingBoxCorners:!1})=>{let u=[];if(A.length===1){let a=A[0],[n,o,s,l,g,C]=Rr(a,e);i&&(n+=i.x,s+=i.x,g+=i.x,o+=i.y,l+=i.y,C+=i.y);let B=(s-n)/2,E=(l-o)/2;if((a.type==="diamond"||a.type==="ellipse")&&!r){let d=ye(X(n,o+E),X(g,C),a.angle),I=ye(X(n+B,o),X(g,C),a.angle),h=ye(X(s,o+E),X(g,C),a.angle),Q=ye(X(n+B,l),X(g,C),a.angle),p=X(g,C);u=t?[d,I,h,Q]:[d,I,h,Q,p]}else{let d=ye(X(n,o),X(g,C),a.angle),I=ye(X(s,o),X(g,C),a.angle),h=ye(X(n,l),X(g,C),a.angle),Q=ye(X(s,l),X(g,C),a.angle),p=X(g,C);u=t?[d,I,h,Q]:[d,I,h,Q,p]}}else if(A.length>1){let[a,n,o,s]=YhA(A,i??{x:0,y:0}),l=o-a,g=s-n,C=X(a,n),B=X(o,n),E=X(a,s),d=X(o,s),I=X(a+l/2,n+g/2);u=t?[C,B,E,d]:[C,B,E,d,I]}return u.map((a)=>X(ya(a[0]),ya(a[1])))},$Qe=(A,e,t,r)=>{let i=e.filter((u)=>nr(u)).map((u)=>u.id);return A1e(A,e,t,r).filter((u)=>!(u.frameId&&i.includes(u.frameId)))},A4e=(A,e,t,r)=>{let i=$Qe(A,e,t,r),u=gS(i,r).filter((g)=>!(g.length===1&&Tu(g[0]))).map((g)=>Pi(g).map((C)=>ya(C))),a=u.sort((g,C)=>g[0]-C[0]),n=[],o=0;A:for(let g=0;g<a.length;g++){let C=a[g];for(let B=g+1;B<a.length;B++){if(++o>PEe)break A;let E=a[B],[,d,I,h]=C,[Q,p,,m]=E;I<Q&&x_(Z0(d,h),Z0(p,m))&&n.push({startBounds:C,endBounds:E,startSide:[X(I,d),X(I,h)],endSide:[X(Q,p),X(Q,m)],length:Q-I,overlap:S_(Z0(d,h),Z0(p,m))})}}let s=u.sort((g,C)=>g[1]-C[1]),l=[];o=0;A:for(let g=0;g<s.length;g++){let C=s[g];for(let B=g+1;B<s.length;B++){if(++o>PEe)break A;let E=s[B],[d,,I,h]=C,[Q,p,m]=E;h<p&&x_(Z0(d,I),Z0(Q,m))&&l.push({startBounds:C,endBounds:E,startSide:[X(d,h),X(I,h)],endSide:[X(Q,p),X(m,p)],length:p-h,overlap:S_(Z0(d,I),Z0(Q,m))})}}return{horizontalGaps:n,verticalGaps:l}},_Ee=(A,e,t,r,i,u,a)=>{if(!_h({app:t,event:r,selectedElements:A}))return[];if(A.length===0)return[];let n=xd.getVisibleGaps();if(n){let{horizontalGaps:o,verticalGaps:s}=n,[l,g,C,B]=YhA(A,e).map((I)=>ya(I)),E=(l+C)/2,d=(g+B)/2;for(let I of o){if(!x_(Z0(g,B),I.overlap))continue;let h=I.startSide[0][0]+I.length/2,Q=ya(h-E);if(I.length>C-l&&Math.abs(Q)<=a.x){Math.abs(Q)<a.x&&(i.length=0),a.x=Math.abs(Q);let F={type:"gap",direction:"center_horizontal",gap:I,offset:Q};i.push(F);continue}let[,,p]=I.endBounds,m=l-p,f=ya(I.length-m);if(Math.abs(f)<=a.x){Math.abs(f)<a.x&&(i.length=0),a.x=Math.abs(f);let F={type:"gap",direction:"side_right",gap:I,offset:f};i.push(F);continue}let[D,,,]=I.startBounds,w=D-C,b=ya(w-I.length);if(Math.abs(b)<=a.x){Math.abs(b)<a.x&&(i.length=0),a.x=Math.abs(b);let F={type:"gap",direction:"side_left",gap:I,offset:b};i.push(F);continue}}for(let I of s){if(!x_(Z0(l,C),I.overlap))continue;let h=I.startSide[0][1]+I.length/2,Q=ya(h-d);if(I.length>B-g&&Math.abs(Q)<=a.y){Math.abs(Q)<a.y&&(u.length=0),a.y=Math.abs(Q);let F={type:"gap",direction:"center_vertical",gap:I,offset:Q};u.push(F);continue}let[,p,,]=I.startBounds,m=p-B,f=ya(m-I.length);if(Math.abs(f)<=a.y){Math.abs(f)<a.y&&(u.length=0),a.y=Math.abs(f);let F={type:"gap",direction:"side_top",gap:I,offset:f};u.push(F);continue}let[,,,D]=I.endBounds,w=ya(g-D),b=I.length-w;if(Math.abs(b)<=a.y){Math.abs(b)<a.y&&(u.length=0),a.y=Math.abs(b);let F={type:"gap",direction:"side_bottom",gap:I,offset:b};u.push(F);continue}}}},e4e=(A,e,t,r)=>{let i=$Qe(A,e,t,r);return gS(i,r).filter((u)=>!(u.length===1&&Tu(u[0]))).flatMap((u)=>T8(u,r))},k9=(A,e,t,r,i,u,a)=>{if(!_h({app:t,event:r,selectedElements:A})||A.length===0&&e.length===0)return[];let n=xd.getReferenceSnapPoints();if(n)for(let o of e)for(let s of n){let l=s[0]-o[0],g=s[1]-o[1];Math.abs(l)<=a.x&&(Math.abs(l)<a.x&&(i.length=0),i.push({type:"point",points:[o,s],offset:l}),a.x=Math.abs(l)),Math.abs(g)<=a.y&&(Math.abs(g)<a.y&&(u.length=0),u.push({type:"point",points:[o,s],offset:g}),a.y=Math.abs(g))}},t4e=(A,e,t,r,i)=>{let u=t.state,a=Jr(A,u);if(!_h({app:t,event:r,selectedElements:a})||a.length===0)return{snapOffset:{x:0,y:0},snapLines:[]};e.x=ya(e.x),e.y=ya(e.y);let n=[],o=[],s=FW(u.zoom.value),l={x:s,y:s},g=T8(a,i,{dragOffset:e});k9(a,g,t,r,n,o,l),_Ee(a,e,t,r,n,o,l);let C={x:n[0]?.offset??0,y:o[0]?.offset??0};l.x=0,l.y=0,n.length=0,o.length=0;let B={x:ya(e.x+C.x),y:ya(e.y+C.y)};k9(a,T8(a,i,{dragOffset:B}),t,r,n,o,l),_Ee(a,B,t,r,n,o,l);let E=jhA(n,o),d=Rur(a,B,[...n,...o].filter((I)=>I.type==="gap"));return{snapOffset:C,snapLines:[...E,...d]}},ya=(A)=>Math.round(A*1e6)/1e6,WEe=(A)=>{let e=new Map;for(let t of A){let r=t.join(",");e.has(r)||e.set(r,t)}return Array.from(e.values())},jhA=(A,e)=>{let t={},r={};if(A.length>0){for(let i of A)if(i.type==="point"){let u=ya(i.points[0][0]);t[u]||(t[u]=[]),t[u].push(...i.points.map((a)=>X(ya(a[0]),ya(a[1]))))}}if(e.length>0){for(let i of e)if(i.type==="point"){let u=ya(i.points[0][1]);r[u]||(r[u]=[]),r[u].push(...i.points.map((a)=>X(ya(a[0]),ya(a[1]))))}}return Object.entries(t).map(([i,u])=>({type:"points",points:WEe(u.map((a)=>X(Number(i),a[1])).sort((a,n)=>a[1]-n[1]))})).concat(Object.entries(r).map(([i,u])=>({type:"points",points:WEe(u.map((a)=>X(a[0],Number(i))).sort((a,n)=>a[0]-n[0]))})))},Lur=(A)=>{let e=new Map;for(let t of A){let r=t.points.flat().map((i)=>[ya(i)]).join(",");e.has(r)||e.set(r,t)}return Array.from(e.values())},Rur=(A,e,t)=>{let[r,i,u,a]=YhA(A,e),n=[];for(let o of t){let[s,l,g,C]=o.gap.startBounds,[B,E,d,I]=o.gap.endBounds,h=S_(Z0(i,a),o.gap.overlap),Q=S_(Z0(r,u),o.gap.overlap);switch(o.direction){case"center_horizontal":{if(h){let p=(h[0]+h[1])/2;n.push({type:"gap",direction:"horizontal",points:[X(o.gap.startSide[0][0],p),X(r,p)]},{type:"gap",direction:"horizontal",points:[X(u,p),X(o.gap.endSide[0][0],p)]})}break}case"center_vertical":{if(Q){let p=(Q[0]+Q[1])/2;n.push({type:"gap",direction:"vertical",points:[X(p,o.gap.startSide[0][1]),X(p,i)]},{type:"gap",direction:"vertical",points:[X(p,a),X(p,o.gap.endSide[0][1])]})}break}case"side_right":{if(h){let p=(h[0]+h[1])/2;n.push({type:"gap",direction:"horizontal",points:[X(g,p),X(B,p)]},{type:"gap",direction:"horizontal",points:[X(d,p),X(r,p)]})}break}case"side_left":{if(h){let p=(h[0]+h[1])/2;n.push({type:"gap",direction:"horizontal",points:[X(u,p),X(s,p)]},{type:"gap",direction:"horizontal",points:[X(g,p),X(B,p)]})}break}case"side_top":{if(Q){let p=(Q[0]+Q[1])/2;n.push({type:"gap",direction:"vertical",points:[X(p,a),X(p,l)]},{type:"gap",direction:"vertical",points:[X(p,C),X(p,E)]})}break}case"side_bottom":{if(Q){let p=(Q[0]+Q[1])/2;n.push({type:"gap",direction:"vertical",points:[X(p,C),X(p,E)]},{type:"gap",direction:"vertical",points:[X(p,I),X(p,i)]})}break}}}return Lur(n.map((o)=>({...o,points:o.points.map((s)=>X(ya(s[0]),ya(s[1])))})))},XhA=(A,e,t,r,i,u)=>{if(!_h({event:r,selectedElements:A,app:t})||A.length===0||A.length===1&&!Sur(A[0].angle,0))return{snapOffset:{x:0,y:0},snapLines:[]};let[a,n,o,s]=Pi(e);u&&(u.includes("e")?o+=i.x:u.includes("w")&&(a+=i.x),u.includes("n")?n+=i.y:u.includes("s")&&(s+=i.y));let l=[];if(u)switch(u){case"e":{l.push(X(o,n),X(o,s));break}case"w":{l.push(X(a,n),X(a,s));break}case"n":{l.push(X(a,n),X(o,n));break}case"s":{l.push(X(a,s),X(o,s));break}case"ne":{l.push(X(o,n));break}case"nw":{l.push(X(a,n));break}case"se":{l.push(X(o,s));break}case"sw":{l.push(X(a,s));break}}let g=FW(t.state.zoom.value),C={x:g,y:g},B=[],E=[];k9(e,l,t,r,B,E,C);let d={x:B[0]?.offset??0,y:E[0]?.offset??0};C.x=0,C.y=0,B.length=0,E.length=0;let[I,h,Q,p]=Pi(A).map((D)=>ya(D)),m=[X(I,h),X(I,p),X(Q,h),X(Q,p)];k9(A,m,t,r,B,E,C);let f=jhA(B,E);return{snapOffset:d,snapLines:f}},r4e=(A,e,t,r,i,u)=>{if(!_h({event:t,selectedElements:[A],app:e}))return{snapOffset:{x:0,y:0},snapLines:[]};let a=[X(r.x+i.x,r.y+i.y)],n=FW(e.state.zoom.value),o={x:n,y:n},s=[],l=[];k9([A],a,e,t,s,l,o);let g={x:s[0]?.offset??0,y:l[0]?.offset??0};o.x=0,o.y=0,s.length=0,l.length=0;let C=T8([A],u,{boundingBoxCorners:!0,omitCenter:!0});k9([A],C,e,t,s,l,o);let B=jhA(s,l);return{snapOffset:g,snapLines:B}},i4e=(A,e,t,r,i)=>{if(!_h({event:r,selectedElements:[],app:e}))return{originOffset:{x:0,y:0},snapLines:[]};let u=A1e(A,[],e.state,i),a=FW(e.state.zoom.value),n={x:a,y:a},o=[],s=[];for(let l of u){let g=T8([l],i);for(let C of g){let B=C[0]-t.x;Math.abs(B)<=Math.abs(n.x)&&(Math.abs(B)<Math.abs(n.x)&&(s.length=0),s.push({type:"pointer",points:[C,X(C[0],t.y)],direction:"vertical"}),n.x=B);let E=C[1]-t.y;Math.abs(E)<=Math.abs(n.y)&&(Math.abs(E)<Math.abs(n.y)&&(o.length=0),o.push({type:"pointer",points:[C,X(t.x,C[1])],direction:"horizontal"}),n.y=E)}}return{originOffset:{x:s.length>0?s[0].points[0][0]-t.x:0,y:o.length>0?o[0].points[0][1]-t.y:0},snapLines:[...s,...o]}},u4e=(A)=>A===On.rectangle||A===On.ellipse||A===On.diamond||A===On.frame||A===On.magicframe||A===On.image||A===On.text,Dn=(A,e,t)=>t?[Math.round(A/t)*t,Math.round(e/t)*t]:[A,e],U1,tn=class A{constructor(e){UA(this,"elementId"),UA(this,"selectedPointsIndices"),UA(this,"pointerDownState"),UA(this,"isDragging"),UA(this,"lastUncommittedPoint"),UA(this,"pointerOffset"),UA(this,"startBindingElement"),UA(this,"endBindingElement"),UA(this,"hoverPointIndex"),UA(this,"segmentMidPointHoveredCoords"),UA(this,"elbowed"),this.elementId=e.id,nB(e.points[0],X(0,0))||console.error("Linear element is not normalized",Error().stack),this.selectedPointsIndices=null,this.lastUncommittedPoint=null,this.isDragging=!1,this.pointerOffset={x:0,y:0},this.startBindingElement="keep",this.endBindingElement="keep",this.pointerDownState={prevSelectedPointsIndices:null,lastClickedPoint:-1,lastClickedIsEndPoint:!1,origin:null,segmentMidpoint:{value:null,index:null,added:!1}},this.hoverPointIndex=-1,this.segmentMidPointHoveredCoords=null,this.elbowed=ft(e)&&e.elbowed}static getElement(e,t){return t.get(e)||null}static handleBoxSelection(e,t,r,i){if(!t.editingLinearElement||!t.selectionElement)return!1;let{editingLinearElement:u}=t,{selectedPointsIndices:a,elementId:n}=u,o=A.getElement(n,i);if(!o)return!1;let[s,l,g,C]=Rr(t.selectionElement,i),B=A.getPointsGlobalCoordinates(o,i).reduce((E,d,I)=>((d[0]>=s&&d[0]<=g&&d[1]>=l&&d[1]<=C||e.shiftKey&&a?.includes(I))&&E.push(I),E),[]).filter((E)=>!(ft(o)&&E!==0&&E!==o.points.length-1));r({editingLinearElement:{...u,selectedPointsIndices:B.length?B:null}})}static handlePointDragging(e,t,r,i,u,a,n){if(!a)return!1;let{elementId:o}=a,s=n.getNonDeletedElementsMap(),l=A.getElement(o,s);if(!l||ft(l)&&!a.pointerDownState.lastClickedIsEndPoint&&a.pointerDownState.lastClickedPoint!==0)return!1;let g=ft(l)?a.selectedPointsIndices?.reduce((E,d)=>d===0?[0,E[1]]:[E[0],l.points.length-1],[!1,!1]).filter((E)=>typeof E=="number"):a.selectedPointsIndices,C=ft(l)?a.pointerDownState.lastClickedPoint>0?l.points.length-1:0:a.pointerDownState.lastClickedPoint,B=l.points[C];if(g&&B){if(w9(e)&&g.length===1&&l.points.length>1){let E=g[0],d=l.points[E===0?1:E-1],[I,h]=A._getShiftLockedDelta(l,s,d,X(r,i),e[PA.CTRL_OR_CMD]?null:t.getEffectiveGridSize());A.movePoints(l,[{index:E,point:X(I+d[0],h+d[1]),isDragging:E===C}])}else{let E=A.createPointAt(l,s,r-a.pointerOffset.x,i-a.pointerOffset.y,e[PA.CTRL_OR_CMD]?null:t.getEffectiveGridSize()),d=E[0]-B[0],I=E[1]-B[1];A.movePoints(l,g.map((h)=>{let Q=h===C?A.createPointAt(l,s,r-a.pointerOffset.x,i-a.pointerOffset.y,e[PA.CTRL_OR_CMD]?null:t.getEffectiveGridSize()):X(l.points[h][0]+d,l.points[h][1]+I);return{index:h,point:Q,isDragging:h===C}}))}if(Gr(l,s)&&_9(l,s,!1),oB(l,!1)){let E=[];g[0]===0&&E.push(Nc(A.getPointGlobalCoordinates(l,l.points[0],s)));let d=g[g.length-1];d===l.points.length-1&&E.push(Nc(A.getPointGlobalCoordinates(l,l.points[d],s))),E.length&&u(l,E)}return!0}return!1}static handlePointerUp(e,t,r,i){let u=i.getNonDeletedElementsMap(),a=i.getNonDeletedElements(),{elementId:n,selectedPointsIndices:o,isDragging:s,pointerDownState:l}=t,g=A.getElement(n,u);if(!g)return t;let C={};if(s&&o){for(let B of o)if(B===0||B===g.points.length-1){fd(g.points,r.zoom.value)&&A.movePoints(g,[{index:B,point:B===0?g.points[g.points.length-1]:g.points[0]}]);let E=V1(r)?Hc(Nc(A.getPointAtIndexGlobalCoordinates(g,B,u)),a,u,r.zoom,ft(g),ft(g)):null;C[B===0?"startBindingElement":"endBindingElement"]=E}}return{...t,...C,selectedPointsIndices:s||e.shiftKey?!s&&e.shiftKey&&l.prevSelectedPointsIndices?.includes(l.lastClickedPoint)?o&&o.filter((B)=>B!==l.lastClickedPoint):o:o?.includes(l.lastClickedPoint)?[l.lastClickedPoint]:o,isDragging:!1,pointerOffset:{x:0,y:0}}}static isSegmentTooShort(e,t,r,i,u){if(ft(e))return i>=0&&i<e.points.length?Li(t,r)*u.value<A.POINT_HANDLE_SIZE/2:!1;let a=Li(t,r);return e.points.length>2&&e.roundness&&(a=Fir(e,r)),a*u.value<A.POINT_HANDLE_SIZE*4}static getSegmentMidPoint(e,t,r,i,u){let a=z8(t,r);if(e.points.length>2&&e.roundness){let n=bQe(e,e.points[i]);if(n){let o=xir(e,e.points[i],0.5);a=A.getPointGlobalCoordinates(e,vQe(n[0],n[1],n[2],n[3],o),u)}}return a}static getSegmentMidPointIndex(e,t,r,i){let u=A.getElement(e.elementId,i);if(!u)return-1;let a=A.getEditorMidPoints(u,i,t),n=0;for(;n<a.length;){if(A.arePointsEqual(r,a[n]))return n+1;n++}return-1}static handlePointerDown(e,t,r,i,u,a){let n=t.state,o=a.getNonDeletedElementsMap(),s=a.getNonDeletedElements(),l={didAddPoint:!1,hitElement:null,linearElementEditor:null};if(!u)return l;let{elementId:g}=u,C=A.getElement(g,o);if(!C)return l;let B=A.getSegmentMidpointHitCoords(u,i,n,o),E=null;if(B)E=A.getSegmentMidPointIndex(u,n,B,o);else if(e.altKey&&n.editingLinearElement)return u.lastUncommittedPoint==null&&(Se(C,{points:[...C.points,A.createPointAt(C,o,i.x,i.y,e[PA.CTRL_OR_CMD]?null:t.getEffectiveGridSize())]}),l.didAddPoint=!0),r.shouldCaptureIncrement(),l.linearElementEditor={...u,pointerDownState:{prevSelectedPointsIndices:u.selectedPointsIndices,lastClickedPoint:-1,lastClickedIsEndPoint:!1,origin:{x:i.x,y:i.y},segmentMidpoint:{value:B,index:E,added:!1}},selectedPointsIndices:[C.points.length-1],lastUncommittedPoint:null,endBindingElement:Hc(i,s,o,t.state.zoom,u.elbowed)},l.didAddPoint=!0,l;let d=A.getPointIndexUnderCursor(C,o,n.zoom,i.x,i.y);if(d>=0||B)l.hitElement=C;else{let{startBindingElement:b,endBindingElement:F}=u;V1(n)&&oB(C)&&oS(C,b,F,o,a)}let[I,h,Q,p]=Rr(C,o),m=(I+Q)/2,f=(h+p)/2,D=d>-1&&ye(X(C.x+C.points[d][0],C.y+C.points[d][1]),X(m,f),C.angle),w=d>-1||e.shiftKey?e.shiftKey||u.selectedPointsIndices?.includes(d)?Nur([...u.selectedPointsIndices||[],d]):[d]:null;return l.linearElementEditor={...u,pointerDownState:{prevSelectedPointsIndices:u.selectedPointsIndices,lastClickedPoint:d,lastClickedIsEndPoint:d===C.points.length-1,origin:{x:i.x,y:i.y},segmentMidpoint:{value:B,index:E,added:!1}},selectedPointsIndices:w,pointerOffset:D?{x:i.x-D[0],y:i.y-D[1]}:{x:0,y:0}},l}static arePointsEqual(e,t){return!e&&!t?!0:!e||!t?!1:nB(e,t)}static handlePointerMove(e,t,r,i,u){let a=i.state;if(!a.editingLinearElement)return null;let{elementId:n,lastUncommittedPoint:o}=a.editingLinearElement,s=A.getElement(n,u);if(!s)return a.editingLinearElement;let{points:l}=s,g=l[l.length-1];if(!e.altKey)return g===o&&A.deletePoints(s,[l.length-1]),{...a.editingLinearElement,lastUncommittedPoint:null};let C;if(w9(e)&&l.length>=2){let B=l[l.length-2],[E,d]=A._getShiftLockedDelta(s,u,B,X(t,r),e[PA.CTRL_OR_CMD]?null:i.getEffectiveGridSize());C=X(E+B[0],d+B[1])}else C=A.createPointAt(s,u,t-a.editingLinearElement.pointerOffset.x,r-a.editingLinearElement.pointerOffset.y,e[PA.CTRL_OR_CMD]||ft(s)?null:i.getEffectiveGridSize());return g===o?A.movePoints(s,[{index:s.points.length-1,point:C}]):A.addPoints(s,[{point:C}]),{...a.editingLinearElement,lastUncommittedPoint:s.points[s.points.length-1]}}static getPointGlobalCoordinates(e,t,r){let[i,u,a,n]=Rr(e,r),o=(i+a)/2,s=(u+n)/2,{x:l,y:g}=e;return ye(X(l+t[0],g+t[1]),X(o,s),e.angle)}static getPointsGlobalCoordinates(e,t){let[r,i,u,a]=Rr(e,t),n=(r+u)/2,o=(i+a)/2;return e.points.map((s)=>{let{x:l,y:g}=e;return ye(X(l+s[0],g+s[1]),X(n,o),e.angle)})}static getPointAtIndexGlobalCoordinates(e,t,r){let i=t<0?e.points.length+t:t,[u,a,n,o]=Rr(e,r),s=(u+n)/2,l=(a+o)/2,g=e.points[i],{x:C,y:B}=e;return g?ye(X(C+g[0],B+g[1]),X(s,l),e.angle):ye(X(C,B),X(s,l),e.angle)}static pointFromAbsoluteCoords(e,t,r){if(ft(e))return X(t[0]-e.x,t[1]-e.y);let[i,u,a,n]=Rr(e,r),o=(i+a)/2,s=(u+n)/2,[l,g]=ye(X(t[0],t[1]),X(o,s),-e.angle);return X(l-e.x,g-e.y)}static getPointIndexUnderCursor(e,t,r,i,u){let a=A.getPointsGlobalCoordinates(e,t),n=a.length;for(;--n>-1;){let o=a[n];if(Li(X(i,u),X(o[0],o[1]))*r.value<A.POINT_HANDLE_SIZE+1)return n}return-1}static createPointAt(e,t,r,i,u){let a=Dn(r,i,u),[n,o,s,l]=Rr(e,t),g=(n+s)/2,C=(o+l)/2,[B,E]=ye(X(a[0],a[1]),X(g,C),-e.angle);return X(B-e.x,E-e.y)}static getNormalizedPoints(e){let{points:t}=e,r=t[0][0],i=t[0][1];return{points:t.map((u)=>X(u[0]-r,u[1]-i)),x:e.x+r,y:e.y+i}}static normalizePoints(e){Se(e,A.getNormalizedPoints(e))}static duplicateSelectedPoints(e,t){fn(e.editingLinearElement,"Not currently editing a linear element");let{selectedPointsIndices:r,elementId:i}=e.editingLinearElement,u=A.getElement(i,t);fn(u,"The linear element does not exist in the provided Scene"),fn(r!=null,"There are no selected points to duplicate");let{points:a}=u,n=[],o=!1,s=-1,l=a.reduce((g,C,B)=>{if(++s,g.push(C),r.includes(B)){let E=a[B+1];E||(o=!0),g.push(E?X((C[0]+E[0])/2,(C[1]+E[1])/2):X(C[0],C[1])),n.push(s+1),++s}return g},[]);if(Se(u,{points:l}),o){let g=u.points[u.points.length-1];A.movePoints(u,[{index:u.points.length-1,point:X(g[0]+30,g[1]+30)}])}return{...e,editingLinearElement:{...e.editingLinearElement,selectedPointsIndices:n}}}static deletePoints(e,t){let r=0,i=0;if(t.includes(0)){let a=e.points.find((n,o)=>!t.includes(o));a&&(r=a[0],i=a[1])}let u=e.points.reduce((a,n,o)=>(t.includes(o)||a.push(a.length?X(n[0]-r,n[1]-i):X(0,0)),a),[]);A._updatePoints(e,u,r,i)}static addPoints(e,t){let r=[...e.points,...t.map((i)=>i.point)];A._updatePoints(e,r,0,0)}static movePoints(e,t,r){let{points:i}=e,[u,a]=t.find(({index:l})=>l===0)?.point??X(0,0),[n,o]=X(u-i[0][0],a-i[0][1]),s=ft(e)?[t.find((l)=>l.index===0)?.point??i[0],t.find((l)=>l.index===i.length-1)?.point??i[i.length-1]]:i.map((l,g)=>{let C=t.find((B)=>B.index===g)?.point??l;return X(C[0]-n,C[1]-o)});A._updatePoints(e,s,n,o,r,{isDragging:t.reduce((l,g)=>l||g.isDragging===!0,!1)})}static shouldAddMidpoint(e,t,r,i){let u=A.getElement(e.elementId,i);if(u&&ft(u)||!u)return!1;let{segmentMidpoint:a}=e.pointerDownState;if(a.added||a.value===null||a.index===null||e.pointerDownState.origin===null)return!1;let n=e.pointerDownState.origin,o=Li(X(n.x,n.y),X(t.x,t.y));return!(!r.editingLinearElement&&o<$1/r.zoom.value)}static addMidpoint(e,t,r,i,u){let a=A.getElement(e.elementId,u);if(!a)return;let{segmentMidpoint:n}=e.pointerDownState,o={pointerDownState:e.pointerDownState,selectedPointsIndices:e.selectedPointsIndices},s=A.createPointAt(a,u,t.x,t.y,i&&!ft(a)?r.getEffectiveGridSize():null),l=[...a.points.slice(0,n.index),s,...a.points.slice(n.index)];return Se(a,{points:l}),o.pointerDownState={...e.pointerDownState,segmentMidpoint:{...e.pointerDownState.segmentMidpoint,added:!0},lastClickedPoint:n.index},o.selectedPointsIndices=[n.index],o}static _updatePoints(e,t,r,i,u,a){if(ft(e)){let n={};u?.startBinding!==void 0&&(n.startBinding=u.startBinding!==null&&L_(u.startBinding)?u.startBinding:null),u?.endBinding!==void 0&&(n.endBinding=u.endBinding!==null&&L_(u.endBinding)?u.endBinding:null),n.points=Array.from(t),Se(e,n,!0,{isDragging:a?.isDragging})}else{let n=HEe(e,t),o=HEe(e,e.points),s=(n[0]+n[2])/2,l=(n[1]+n[3])/2,g=(o[0]+o[2])/2,C=(o[1]+o[3])/2,B=g-s,E=C-l,d=ye(X(r,i),X(B,E),e.angle);Se(e,{...u,points:t,x:e.x+d[0],y:e.y+d[1]})}}static _getShiftLockedDelta(e,t,r,i,u){let a=A.getPointGlobalCoordinates(e,r,t);if(ft(e))return[i[0]-a[0],i[1]-a[1]];let[n,o]=Dn(i[0],i[1],u),{width:s,height:l}=Aq(a[0],a[1],n,o);return ye(X(s,l),X(0,0),-e.angle)}static moveFixedSegment(e,t,r,i,u){let a=A.getElement(e.elementId,u);if(!a||!ft(a))return e;if(t&&t>0&&t<a.points.length){let n=Hh(i2(Mt(a.points[t],a.points[t-1]))),o=(a.fixedSegments??[]).reduce((C,B)=>(C[B.index]=B,C),{});o[t]={index:t,start:X(n?a.points[t-1][0]:r-a.x,n?i-a.y:a.points[t-1][1]),end:X(n?a.points[t][0]:r-a.x,n?i-a.y:a.points[t][1])};let s=Object.values(o).sort((C,B)=>C.index-B.index),l=s.map((C)=>C.index).reduce((C,B)=>B<t?C+1:C,0);Se(a,{fixedSegments:s});let g=X(a.x+(a.fixedSegments[l].start[0]+a.fixedSegments[l].end[0])/2,a.y+(a.fixedSegments[l].start[1]+a.fixedSegments[l].end[1])/2);return{...e,segmentMidPointHoveredCoords:g,pointerDownState:{...e.pointerDownState,segmentMidpoint:{added:!1,index:a.fixedSegments[l].index,value:g}}}}return e}static deleteFixedSegment(e,t){Se(e,{fixedSegments:e.fixedSegments?.filter((r)=>r.index!==t)}),Se(e,{},!0)}},ht,Nur=(A)=>{let e=[...new Set(A.filter((t)=>t!==null&&t!==-1))];return e=e.sort((t,r)=>t-r),e.length?e:null},a2,cS=(A,e)=>{let t=a2[A]||(a2[A]={height:e});return t.height=e,t},$hA=(A)=>{a2[A]&&delete a2[A]},a4e=(A)=>a2[A]?.height??null,j0=(A,e,t,r=!0)=>{let i,u={x:A.x,y:A.y,text:A.text,width:A.width,height:A.height,angle:e?.angle??A.angle};u.text=A.text,(e||!A.autoResize)&&(i=e?gB(e,A):A.width,u.text=up(A.originalText,cu(A),i));let a=m0(u.text,cu(A),A.lineHeight);if(A.autoResize&&(u.width=a.width),u.height=a.height,e){let n=W9(e,A),o=gB(e,A);if(!Kr(e)&&a.height>n){let C=j1(a.height,e.type);Se(e,{height:C},r),cS(e.id,C)}if(a.width>o){let C=j1(a.width,e.type);Se(e,{width:C},r)}let s={...A,...u},{x:l,y:g}=CS(e,s,t);u.x=l,u.y=g}Se(A,u,r)},AQA=(A,e,t)=>{let r=ar(A);e.forEach((i)=>{let u=t.get(i.id),a=Dd(i);if(a){let n=t.get(a);if(n){let o=r.get(u);o&&Se(o,{boundElements:(i.boundElements||[]).filter((l)=>l.id!==n&&l.id!==a).concat({type:"text",id:n})});let s=r.get(n);s&&Et(s)&&Se(s,{containerId:o?u:null})}}})},_9=(A,e,t,r=!1)=>{if(!Dd(A))return;$hA(A.id);let i=Gr(A,e);if(i&&i.text){if(!A)return;let{text:u,height:a,width:n}=i,o=gB(A,i),s=W9(A,i),l=A.height;if(r||t!=="n"&&t!=="s"){u&&(u=up(i.originalText,cu(i),o));let g=m0(u,cu(i),i.lineHeight);a=g.height,n=g.width}if(a>s){l=j1(a,A.type);let g=l-A.height,C=!Kr(A)&&(t==="ne"||t==="nw"||t==="n")?A.y-g:A.y;Se(A,{height:l,y:C})}Se(i,{text:u,width:n,height:a}),Kr(A)||Se(i,CS(A,i,e))}},CS=(A,e,t)=>{if(Kr(A))return ht.getBoundTextElementPosition(A,e,t);let r=n4e(A),i=W9(A,e),u=gB(A,e),a,n;return e.verticalAlign===Ul.TOP?n=r.y:e.verticalAlign===Ul.BOTTOM?n=r.y+(i-e.height):n=r.y+(i/2-e.height/2),e.textAlign===D9.LEFT?a=r.x:e.textAlign===D9.RIGHT?a=r.x+(u-e.width):a=r.x+(u/2-e.width/2),{x:a,y:n}},Dd=(A)=>A?.boundElements?.length&&A?.boundElements?.find((e)=>e.type==="text")?.id||null,Gr=(A,e)=>{if(!A)return null;let t=Dd(A);return t&&e.get(t)||null},Qo=(A,e)=>A&&A.containerId&&e.get(A.containerId)||null,xW=(A,e,t)=>{if(!Kr(A))return{x:A.x+A.width/2,y:A.y+A.height/2};let r=ht.getPointsGlobalCoordinates(A,t);if(r.length%2===1){let a=Math.floor(A.points.length/2),n=ht.getPointGlobalCoordinates(A,A.points[a],t);return{x:n[0],y:n[1]}}let i=A.points.length/2-1,u=ht.getEditorMidPoints(A,t,e)[i];return u||(u=ht.getSegmentMidPoint(A,r[i],r[i+1],i+1,t)),{x:u[0],y:u[1]}},n4e=(A)=>{let e=pn,t=pn;return A.type==="ellipse"&&(e+=A.width/2*(1-Math.sqrt(2)/2),t+=A.height/2*(1-Math.sqrt(2)/2)),A.type==="diamond"&&(e+=A.width/4,t+=A.height/4),{x:A.x+e,y:A.y+t}},o4e=(A,e)=>!e||Kr(e)?A.angle:e.angle,s4e=(A,e)=>A.some((t)=>{if(Tu(t)){let r=Qo(t,e);return!Kr(r)}return!1}),l4e=(A,e)=>A.some((t)=>{if(Tu(t)){let r=Qo(t,e);return!Kr(r)}return Et(t)}),Gur,g4e=(A)=>Gur.has(A.type),j1=(A,e)=>{A=Math.ceil(A);let t=pn*2;return e==="ellipse"?Math.round((A+t)/Math.sqrt(2)*2):e==="arrow"?A+t*8:e==="diamond"?2*(A+t):A+t},gB=(A,e)=>{let{width:t}=A;if(Kr(A)){let r=(e?.fontSize??wd)*GXt;return Math.max(NXt*t,r)}return A.type==="ellipse"?Math.round(t/2*Math.sqrt(2))-pn*2:A.type==="diamond"?Math.round(t/2)-pn*2:t-pn*2},W9=(A,e)=>{let{height:t}=A;return Kr(A)?t-pn*8*2<=0?e.height:t:A.type==="ellipse"?Math.round(t/2*Math.sqrt(2))-pn*2:A.type==="diamond"?Math.round(t/2)-pn*2:t-pn*2},c4e=(A,e=`
|
||
|
||
`)=>A.reduce((t,r)=>(Et(r)&&t.push(r.text),t),[]).join(e),Ml=(A)=>(A=A.trim(),A&&C4e.sanitizeUrl(f_(A))),eQA=(A)=>!!(A?.includes(location.origin)||A?.startsWith("/")),tQA=(A)=>{if(A=Ml(A),A.startsWith("/"))return`${location.origin}${A}`;try{new URL(A)}catch{return"about:blank"}return A},U_,at=(A)=>(U_=U_.concat(A),A),B4e='<svg viewBox="0 0 24 24" stroke-width="1" width="28" height="28" xmlns="http://www.w3.org/2000/svg">',Uur='<path d="M6.164 11.755a5.314 5.314 0 0 1-4.932-5.298 5.314 5.314 0 0 1 5.311-5.311 5.314 5.314 0 0 1 5.307 5.113l8.773 8.773a3.322 3.322 0 0 1 0 4.696l-.895.895a3.322 3.322 0 0 1-4.696 0l-8.868-8.868Z" style="fill:#fff"/>',E4e='<path stroke="#1b1b1f" fill="#fff" d="m7.868 11.113 7.773 7.774a2.359 2.359 0 0 0 1.667.691 2.368 2.368 0 0 0 2.357-2.358c0-.625-.248-1.225-.69-1.667L11.201 7.78 9.558 9.469l-1.69 1.643v.001Zm10.273 3.606-3.333 3.333m-3.25-6.583 2 2m-7-7 3 3M3.664 3.625l1 1M2.529 6.922l1.407-.144m5.735-2.932-1.118.866M4.285 9.823l.758-1.194m1.863-6.207-.13 1.408"/>',Mur,Tur,Oc=(A)=>{A&&(A.style.cursor="")},Cu=(A,e)=>{A&&(A.style.cursor=e)},hd,qEe,rQA=(A,e)=>{let t=()=>{let r=e===$r.DARK;hd=document.createElement("canvas"),hd.theme=e,hd.height=20,hd.width=20;let i=hd.getContext("2d");i.lineWidth=1,i.beginPath(),i.arc(hd.width/2,hd.height/2,5,0,2*Math.PI),i.fillStyle=r?ua.black:ua.white,i.fill(),i.strokeStyle=r?ua.white:ua.black,i.stroke(),qEe=hd.toDataURL(Xt.svg)};(!hd||hd.theme!==e)&&t(),Cu(A,`url(${qEe}) 10 10, auto`)},hB=(A,e)=>{if(A)if(e.activeTool.type==="selection")Oc(A);else if(C2(e))A.style.cursor=iu.GRAB;else if(dB(e))rQA(A,e.theme);else if(e.activeTool.type==="laser"){let t=e.theme===$r.LIGHT?Mur:Tur;A.style.cursor=`url(${t}), auto`}else["image","custom"].includes(e.activeTool.type)?e.activeTool.type!=="image"&&(A.style.cursor=iu.AUTO):A.style.cursor=iu.CROSSHAIR},Yur,Hur=0,QB=()=>Math.floor(Yur.next()*2147483648),Lg=()=>bd()?`id${Hur++}`:fa(),cB=(A,{x:e,y:t,strokeColor:r=Ta.strokeColor,backgroundColor:i=Ta.backgroundColor,fillStyle:u=Ta.fillStyle,strokeWidth:a=Ta.strokeWidth,strokeStyle:n=Ta.strokeStyle,roughness:o=Ta.roughness,opacity:s=Ta.opacity,width:l=0,height:g=0,angle:C=0,groupIds:B=[],frameId:E=null,index:d=null,roundness:I=null,boundElements:h=null,link:Q=null,locked:p=Ta.locked,...m})=>((e<-1e6||e>1e6||t<-1e6||t>1e6||l<-1e6||l>1e6||g<-1e6||g>1e6)&&console.error("New element size or position is too large",{x:e,y:t,width:l,height:g,points:m.points}),{id:m.id||Lg(),type:A,x:e,y:t,width:l,height:g,angle:C,strokeColor:r,backgroundColor:i,fillStyle:u,strokeWidth:a,strokeStyle:n,roughness:o,opacity:s,groupIds:B,frameId:E,index:d,roundness:I,seed:m.seed??QB(),version:m.version||1,versionNonce:m.versionNonce??0,isDeleted:!1,boundElements:h,updated:G9(),link:Q,locked:p,customData:m.customData}),pB=(A)=>cB(A.type,A),iQA=(A)=>cB("embeddable",A),d4e=(A)=>({...cB("iframe",A)}),SW=(A)=>Tr({...cB("frame",A),type:"frame",name:A?.name||null},{}),LW=(A)=>Tr({...cB("magicframe",A),type:"magicframe",name:A?.name||null},{}),I4e=(A,e)=>({x:A.textAlign==="center"?e.width/2:A.textAlign==="right"?e.width:0,y:A.verticalAlign==="middle"?e.height/2:0}),Tl=(A)=>{let e=A.fontFamily||Oh,t=A.fontSize||wd,r=A.lineHeight||op(e),i=I2(A.text),u=m0(i,cu({fontFamily:e,fontSize:t}),r),a=A.textAlign||S9,n=A.verticalAlign||J8,o=I4e({textAlign:a,verticalAlign:n},u),s={...cB("text",A),text:i,fontSize:t,fontFamily:e,textAlign:a,verticalAlign:n,x:A.x-o.x,y:A.y-o.y,width:u.width,height:u.height,containerId:A.containerId||null,originalText:A.originalText??i,autoResize:A.autoResize??!0,lineHeight:r};return Tr(s,{})},Kur=(A,e,t)=>{let{width:r,height:i}=m0(t,cu(A),A.lineHeight);A.autoResize||(r=A.width);let{textAlign:u,verticalAlign:a}=A,n,o;if(u==="center"&&a===Ul.MIDDLE&&!A.containerId&&A.autoResize){let s=m0(A.text,cu(A),A.lineHeight),l=I4e(A,{width:r-s.width,height:i-s.height});n=A.x-l.x,o=A.y-l.y}else{let[s,l,g,C]=Rr(A,e),[B,E,d,I]=_1(A,r,i,!1),h=(s-B)/2,Q=(l-E)/2,p=(g-d)/2,m=(C-I)/2;[n,o]=Jur({s:!0,e:u==="center"||u==="left",w:u==="center"||u==="right"},A.x,A.y,A.angle,h,Q,p,m)}return{width:r,height:i,x:Number.isFinite(n)?n:A.x,y:Number.isFinite(o)?o:A.y}},Jur=(A,e,t,r,i,u,a,n)=>{let o=Math.cos(r),s=Math.sin(r);return A.e&&A.w?e+=i+a:A.e?(e+=i*(1+o),t+=i*s,e+=a*(1-o),t+=a*-s):A.w&&(e+=i*(1-o),t+=i*-s,e+=a*(1+o),t+=a*s),A.n&&A.s?t+=u+n:A.n?(e+=u*s,t+=u*(1-o),e+=n*-s,t+=n*(1+o)):A.s&&(e+=u*-s,t+=u*(1+o),e+=n*s,t+=n*(1-o)),[e,t]},uQA=(A,e,t,r=A.text)=>{if(A.isDeleted)return;(e||!A.autoResize)&&(r=up(r,cu(A),e?gB(e,A):A.width));let i=Kur(A,t,r);return{text:r,...i}},h4e=(A)=>({...cB(A.type,A),points:A.points||[],pressures:A.pressures||[],simulatePressure:A.simulatePressure,lastCommittedPoint:null}),W1=(A)=>({...cB(A.type,A),points:A.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:null,endArrowhead:null}),RW=(A)=>A.elbowed?{...cB(A.type,A),points:A.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:A.startArrowhead||null,endArrowhead:A.endArrowhead||null,elbowed:!0,fixedSegments:A.fixedSegments||[],startIsSpecial:!1,endIsSpecial:!1}:{...cB(A.type,A),points:A.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:A.startArrowhead||null,endArrowhead:A.endArrowhead||null,elbowed:!1},aQA=(A)=>({...cB("image",A),strokeColor:"transparent",status:A.status??"pending",fileId:A.fileId??null,scale:A.scale??[1,1],crop:A.crop??null}),M_=(A,e=0)=>{if(A==null||typeof A!="object")return A;let t=Object.prototype.toString.call(A);if(t==="[object Object]"){let r=typeof A.constructor=="function"?Object.create(Object.getPrototypeOf(A)):{};for(let i in A)if(A.hasOwnProperty(i)){if(e===0&&(i==="shape"||i==="canvas"))continue;r[i]=M_(A[i],e+1)}return r}if(Array.isArray(A)){let r=A.length,i=Array(r);for(;r--;)i[r]=M_(A[r],e+1);return i}return Qr.DEV&&t!=="[object Object]"&&t!=="[object Array]"&&t.startsWith("[object ")&&console.warn(`_deepCloneElement: unexpected object type ${t}. This value will not be cloned!`),A},gp=(A)=>M_(A),Q4e=(A,e)=>{Object.defineProperty(A,TXt,{value:e,writable:!1,enumerable:!1})},T_=()=>Lg(),nQA=(A,e,t,r)=>{let i=gp(t);return bd()&&Q4e(i,t.id),i.id=T_(),i.boundElements=null,i.updated=G9(),i.seed=QB(),i.groupIds=kur(i.groupIds,A,(u)=>(e.has(u)||e.set(u,T_()),e.get(u))),r&&(i=Object.assign(i,r)),i},oQA=(A,e)=>{let t=[],r=ar(A),i=new Map,u=(n)=>{if(i.has(n))return i.get(n);if(r.has(n)){let o=T_();return i.set(n,o),o}return null},a=new Map;for(let n of A){let o=M_(n);if(o.id=u(n.id),bd()&&Q4e(o,n.id),e?.randomizeSeed&&(o.seed=QB(),DS(o)),o.groupIds&&(o.groupIds=o.groupIds.map((s)=>(a.has(s)||a.set(s,T_()),a.get(s)))),"containerId"in o&&o.containerId){let s=u(o.containerId);o.containerId=s}if("boundElements"in o&&o.boundElements&&(o.boundElements=o.boundElements.reduce((s,l)=>{let g=u(l.id);return g&&s.push({...l,id:g}),s},[])),"endBinding"in o&&o.endBinding){let s=u(o.endBinding.elementId);o.endBinding=s?{...o.endBinding,elementId:s}:null}if("startBinding"in o&&o.startBinding){let s=u(o.startBinding.elementId);o.startBinding=s?{...o.startBinding,elementId:s}:null}o.frameId&&(o.frameId=u(o.frameId)),t.push(o)}return t},NW=(A,{shouldThrow:e=!1,includeBoundTextValidation:t=!1,ignoreLogs:r,reconciliationContext:i})=>{let u=[],a=(o)=>`${o?.index}:${o?.id}:${o?.type}:${o?.isDeleted}:${o?.version}:${o?.versionNonce}`,n=A.map((o)=>o.index);for(let[o,s]of n.entries()){let l=n[o-1],g=n[o+1];if(lIA(s,l,g)||u.push(`Fractional indices invariant has been compromised: "${a(A[o-1])}", "${a(A[o])}", "${a(A[o+1])}"`),t&&Yl(A[o])){let C=A[o],B=Gr(C,ar(A));B&&B.index<=C.index&&u.push(`Fractional indices invariant for bound elements has been compromised: "${a(B)}", "${a(C)}"`)}}if(u.length){let o=new L$t,s=[];if(i&&(s.push("Additional reconciliation context:"),s.push(i.localElements.map((l)=>a(l))),s.push(i.remoteElements.map((l)=>a(l)))),r||console.error(u.join(`
|
||
|
||
`),o.stack,A.map((l)=>a(l)),...s),e)throw o}},p4e=(A)=>A.sort((e,t)=>zEe(e)&&zEe(t)?e.index<t.index?-1:e.index>t.index?1:e.id<t.id?-1:1:1),CB=(A,e)=>{try{let t=Our(A,e),r=f4e(A,t),i=A.map((u)=>r.has(u)?{...u,...r.get(u)}:u);NW(i,{includeBoundTextValidation:!1,shouldThrow:!0,ignoreLogs:!0});for(let[u,a]of r)Se(u,a,!1)}catch{Sd(A)}return A},Sd=(A)=>{let e=Pur(A),t=f4e(A,e);for(let[r,i]of t)Se(r,i,!1);return A},Our=(A,e)=>{let t=[],r=0;for(;r<A.length;)if(e.has(A[r].id)){let i=[r-1,r];for(;++r<A.length&&e.has(A[r].id);)i.push(r);i.push(r),t.push(i)}else r++;return t},Pur=(A)=>{let e=[],t,r,i=-1,u=0,a=(s)=>{let l=A[i]?A[i].index:void 0,g=A[s-1]?.index;return!l&&g||l&&g&&g>l?[g,s-1]:[l,i]},n=(s)=>{let l=A[u]?A[u].index:void 0;if(l&&s<u)return[l,u];let g=u;for(;++g<A.length;){let C=A[g]?.index;if(!l&&C||l&&C&&C>l)return[C,g]}return[void 0,g]},o=0;for(;o<A.length;){let s=A[o].index;if([t,i]=a(o),[r,u]=n(o),lIA(s,t,r))o++;else{let l=[i,o];for(;++o<A.length;){let g=A[o].index,[C,B]=a(o),[E,d]=n(o);if(lIA(g,C,E))break;[t,i]=[C,B],[r,u]=[E,d],l.push(o)}l.push(u),e.push(l)}}return e},lIA=(A,e,t)=>A?e&&t?e<A&&A<t:!e&&t?A<t:e&&!t?e<A:!!A:!1,f4e=(A,e)=>{let t=new Map;for(let r of e){let i=r.shift(),u=r.pop(),a=o_(A[i]?.index,A[u]?.index,r.length);for(let n=0;n<r.length;n++){let o=A[r[n]];t.set(o,{index:a[n]})}}return t},zEe=(A)=>!!A.index,Qn=class A{constructor(e,t){this.deleted=e,this.inserted=t}static create(e,t,r,i){let u=r&&i!=="inserted"?r(e):e,a=r&&i!=="deleted"?r(t):t;return new A(u,a)}static calculate(e,t,r,i){if(e===t)return A.empty();let u={},a={};for(let s of this.distinctKeysIterator("full",e,t))u[s]=e[s],a[s]=t[s];let[n,o]=i?i(u,a):[u,a];return A.create(n,o,r)}static empty(){return new A({},{})}static isEmpty(e){return!Object.keys(e.deleted).length&&!Object.keys(e.inserted).length}static mergeObjects(e,t,r){let i={...e};for(let u of Object.keys(r))delete i[u];return{...i,...t}}static mergeArrays(e,t,r,i){return Object.values(A.mergeObjects(Nh(e??[],i),Nh(t??[],i),Nh(r??[],i)))}static diffObjects(e,t,r,i){if(!(!e[r]&&!t[r])&&(typeof e[r]=="object"||typeof t[r]=="object")){let u=e[r]??{},a=t[r]??{},n=A.getLeftDifferences(u,a).reduce((s,l)=>(s[l]=i(u[l]),s),{}),o=A.getRightDifferences(u,a).reduce((s,l)=>(s[l]=i(a[l]),s),{});Object.keys(n).length||Object.keys(o).length?(Reflect.set(e,r,n),Reflect.set(t,r,o)):(Reflect.deleteProperty(e,r),Reflect.deleteProperty(t,r))}}static diffArrays(e,t,r,i){if(!(!e[r]&&!t[r])&&(Array.isArray(e[r])||Array.isArray(t[r]))){let u=Array.isArray(e[r])?e[r]:[],a=Array.isArray(t[r])?t[r]:[],n=Nh(A.getLeftDifferences(Nh(u,i),Nh(a,i))),o=Nh(A.getRightDifferences(Nh(u,i),Nh(a,i)));if(Object.keys(n).length||Object.keys(o).length){let s=u.filter((g)=>n[i?i(g):String(g)]),l=a.filter((g)=>o[i?i(g):String(g)]);Reflect.set(e,r,s),Reflect.set(t,r,l)}else Reflect.deleteProperty(e,r),Reflect.deleteProperty(t,r)}}static isLeftDifferent(e,t,r=!1){return!!this.distinctKeysIterator("left",e,t,r).next().value}static isRightDifferent(e,t,r=!1){return!!this.distinctKeysIterator("right",e,t,r).next().value}static getLeftDifferences(e,t,r=!1){return Array.from(this.distinctKeysIterator("left",e,t,r))}static getRightDifferences(e,t,r=!1){return Array.from(this.distinctKeysIterator("right",e,t,r))}static*distinctKeysIterator(e,t,r,i=!1){if(t===r)return;let u=[];e==="left"?u=Object.keys(t):e==="right"?u=Object.keys(r):e==="full"?u=Array.from(new Set([...Object.keys(t),...Object.keys(r)])):rp(e,`Unknown distinctKeysIterator's join param "${e}"`,!0);for(let a of u){let n=t[a],o=r[a];if(n!==o){if(!i&&typeof n=="object"&&typeof o=="object"&&n!==null&&o!==null&&Po(n,o))continue;yield a}}}},ZEe=class A{constructor(e){this.delta=e}static calculate(e,t){let r=Qn.calculate(e,t,void 0,A.postProcess);return new A(r)}static empty(){return new A(Qn.create({},{}))}inverse(){let e=Qn.create(this.delta.inserted,this.delta.deleted);return new A(e)}applyTo(e,t){try{let{selectedElementIds:r={},selectedGroupIds:i={}}=this.delta.deleted,{selectedElementIds:u={},selectedGroupIds:a={},selectedLinearElementId:n,editingLinearElementId:o,...s}=this.delta.inserted,l=Qn.mergeObjects(e.selectedElementIds,u,r),g=Qn.mergeObjects(e.selectedGroupIds,a,i),C=n&&t.has(n)?new ht(t.get(n)):null,B=o&&t.has(o)?new ht(t.get(o)):null,E={...e,...s,selectedElementIds:l,selectedGroupIds:g,selectedLinearElement:typeof n<"u"?C:e.selectedLinearElement,editingLinearElement:typeof o<"u"?B:e.editingLinearElement},d=this.filterInvisibleChanges(e,E,t);return[E,d]}catch(r){if(console.error("Couldn't apply appstate change",r),Qr.DEV||Qr.MODE===Js.TEST)throw r;return[e,!1]}}isEmpty(){return Qn.isEmpty(this.delta)}static postProcess(e,t){try{Qn.diffObjects(e,t,"selectedElementIds",(r)=>!0),Qn.diffObjects(e,t,"selectedGroupIds",(r)=>r??!1)}catch(r){if(console.error("Couldn't postprocess appstate change deltas."),Qr.DEV||Qr.MODE===Js.TEST)throw r}finally{return[e,t]}}filterInvisibleChanges(e,t,r){let i=Y_(e),u=Y_(t),a=Qn.isRightDifferent(A.stripElementsProps(i),A.stripElementsProps(u)),n=Qn.isRightDifferent(A.stripStandaloneProps(i),A.stripStandaloneProps(u));if(!a&&!n)return!1;let o={value:a};if(n){let s=Qn.getRightDifferences(A.stripStandaloneProps(i),A.stripStandaloneProps(u)),l=new Set;(s.includes("editingGroupId")||s.includes("selectedGroupIds"))&&(l=Fur(r));for(let g of s)switch(g){case"selectedElementIds":t[g]=A.filterSelectedElements(t[g],r,o);break;case"selectedGroupIds":t[g]=A.filterSelectedGroups(t[g],l,o);break;case"croppingElementId":{let d=t[g],I=d&&r.get(d);I&&!I.isDeleted?o.value=!0:t[g]=null;break}case"editingGroupId":let C=t[g];C?l.has(C)?o.value=!0:t[g]=null:o.value=!0;break;case"selectedLinearElementId":case"editingLinearElementId":let B=A.convertToAppStateKey(g),E=t[B];if(!E)o.value=!0;else{let d=r.get(E.elementId);d&&!d.isDeleted?o.value=!0:t[B]=null}break;default:rp(g,`Unknown ObservedElementsAppState's key "${g}"`,!0)}}return o.value}static convertToAppStateKey(e){switch(e){case"selectedLinearElementId":return"selectedLinearElement";case"editingLinearElementId":return"editingLinearElement"}}static filterSelectedElements(e,t,r){let i=Object.keys(e);if(!i.length)return r.value=!0,e;let u={...e};for(let a of i){let n=t.get(a);n&&!n.isDeleted?r.value=!0:delete u[a]}return u}static filterSelectedGroups(e,t,r){if(!Object.keys(e).length)return r.value=!0,e;let i={...e};for(let u of Object.keys(i))t.has(u)?r.value=!0:delete i[u];return i}static stripElementsProps(e){let{editingGroupId:t,selectedGroupIds:r,selectedElementIds:i,editingLinearElementId:u,selectedLinearElementId:a,croppingElementId:n,...o}=e;return o}static stripStandaloneProps(e){let{name:t,viewBackgroundColor:r,...i}=e;return i}},H1=class A{constructor(e,t,r){this.added=e,this.removed=t,this.updated=r}static create(e,t,r,i={shouldRedistribute:!1}){let u;if(i.shouldRedistribute){let a=new Map,n=new Map,o=new Map,s=[...e,...t,...r];for(let[l,g]of s)this.satisfiesAddition(g)?a.set(l,g):this.satisfiesRemoval(g)?n.set(l,g):o.set(l,g);u=new A(a,n,o)}else u=new A(e,t,r);return(Qr.DEV||Qr.MODE===Js.TEST)&&(A.validate(u,"added",this.satisfiesAddition),A.validate(u,"removed",this.satisfiesRemoval),A.validate(u,"updated",this.satisfiesUpdate)),u}static validate(e,t,r){for(let[i,u]of e[t].entries())if(!r(u))throw console.error(`Broken invariant for "${t}" delta, element "${i}", delta:`,u),Error(`ElementsChange invariant broken for element "${i}".`)}static calculate(e,t){if(e===t)return A.empty();let r=new Map,i=new Map,u=new Map;for(let a of e.values())if(!t.get(a.id)){let n={...a,isDeleted:!1},o={isDeleted:!0},s=Qn.create(n,o,A.stripIrrelevantProps);i.set(a.id,s)}for(let a of t.values()){let n=e.get(a.id);if(!n){let o={isDeleted:!0},s={...a,isDeleted:!1},l=Qn.create(o,s,A.stripIrrelevantProps);r.set(a.id,l);continue}if(n.versionNonce!==a.versionNonce){let o=Qn.calculate(n,a,A.stripIrrelevantProps,A.postProcess);if(typeof n.isDeleted=="boolean"&&typeof a.isDeleted=="boolean"&&n.isDeleted!==a.isDeleted){n.isDeleted&&!a.isDeleted?r.set(a.id,o):i.set(a.id,o);continue}Qn.isEmpty(o)||u.set(a.id,o)}}return A.create(r,i,u)}static empty(){return A.create(new Map,new Map,new Map)}inverse(){let e=(u)=>{let a=new Map;for(let[n,o]of u.entries())a.set(n,Qn.create(o.inserted,o.deleted));return a},t=e(this.added),r=e(this.removed),i=e(this.updated);return A.create(r,t,i)}isEmpty(){return this.added.size===0&&this.removed.size===0&&this.updated.size===0}applyLatestChanges(e){let t=(n)=>(o)=>{let s={};for(let l of Object.keys(o))switch(l){case"boundElements":s[l]=o[l];break;default:s[l]=n[l]}return s},r=(n)=>{let o=new Map;for(let[s,l]of n.entries()){let g=e.get(s);if(g){let C=Qn.create(l.deleted,l.inserted,t(g),"inserted");o.set(s,C)}else o.set(s,l)}return o},i=r(this.added),u=r(this.removed),a=r(this.updated);return A.create(i,u,a,{shouldRedistribute:!0})}applyTo(e,t){let r=Sg(new Map(e)),i,u={containsVisibleDifference:!1,containsZindexDifference:!1};try{let a=A.createApplier(r,t,u),n=a(this.added),o=a(this.removed),s=a(this.updated),l=this.resolveConflicts(e,r);i=new Map([...n,...o,...s,...l])}catch(a){if(console.error("Couldn't apply elements change",a),Qr.DEV||Qr.MODE===Js.TEST)throw a;return[e,!0]}try{A.redrawTextBoundingBoxes(r,i),r=A.reorderElements(r,i,u),A.redrawBoundArrows(r,i)}catch(a){if(console.error("Couldn't mutate elements after applying elements change",a),Qr.DEV||Qr.MODE===Js.TEST)throw a}finally{return[r,u.containsVisibleDifference]}}static applyDelta(e,t,r={containsVisibleDifference:!0,containsZindexDifference:!0}){let{boundElements:i,...u}=t.inserted;if(t.deleted.boundElements?.length||t.inserted.boundElements?.length){let a=Qn.mergeArrays(e.boundElements,t.inserted.boundElements,t.deleted.boundElements,(n)=>n.id);Object.assign(u,{boundElements:a})}if(Ri(e)){let a=t;(a.deleted.crop||a.inserted.crop)&&Object.assign(u,{crop:a.inserted.crop??null})}if(!r.containsVisibleDifference){let{index:a,...n}=u,o=A.checkForVisibleDifference(e,n);r.containsVisibleDifference=o}return r.containsZindexDifference||(r.containsZindexDifference=t.deleted.index!==t.inserted.index),Tr(e,u)}static checkForVisibleDifference(e,t){return e.isDeleted&&t.isDeleted!==!1?!1:e.isDeleted&&t.isDeleted===!1||e.isDeleted===!1&&t.isDeleted?!0:Qn.isRightDifferent(e,t)}resolveConflicts(e,t){let r=new Map,i=(s,l)=>{let g=t.get(s.id);if(!g)return;let C;e.get(s.id)===g?C=Tr(g,l):C=Se(g,l),r.set(C.id,C),t.set(C.id,C)};for(let[s]of this.removed)A.unbindAffected(e,t,s,i);for(let[s]of this.added)A.rebindAffected(e,t,s,i);for(let[s]of Array.from(this.updated).filter(([l,g])=>Object.keys({...g.deleted,...g.inserted}).find((C)=>Dur.has(C)))){let l=t.get(s);!l||l.isDeleted||A.rebindAffected(e,t,s,i)}let u=new Map(Array.from(e).filter(([s])=>r.has(s))),{added:a,removed:n,updated:o}=A.calculate(u,r);for(let[s,l]of a)this.added.set(s,l);for(let[s,l]of n)this.removed.set(s,l);for(let[s,l]of o)this.updated.set(s,l);return r}static unbindAffected(e,t,r,i){let u=()=>e.get(r),a=()=>t.get(r);Q9.unbindAffected(t,u(),i),Q9.unbindAffected(t,a(),i),p9.unbindAffected(t,u(),i),p9.unbindAffected(t,a(),i)}static rebindAffected(e,t,r,i){let u=()=>e.get(r),a=()=>t.get(r);Q9.unbindAffected(t,u(),i),Q9.rebindAffected(t,a(),i),p9.unbindAffected(t,u(),(n,o)=>{Et(n)&&i(n,o)}),p9.rebindAffected(t,a(),i)}static redrawTextBoundingBoxes(e,t){let r=new Map;for(let i of t.values()){if(Tu(i)){let{containerId:u}=i,a=u?e.get(u):void 0;a&&r.set(a.id,{container:a,boundText:i})}if(Yl(i)){let u=Dd(i),a=u?e.get(u):void 0;a&&r.set(i.id,{container:i,boundText:a})}}for(let{container:i,boundText:u}of r.values())i.isDeleted||u.isDeleted||j0(u,i,e,!1)}static redrawBoundArrows(e,t){for(let r of t.values())!r.isDeleted&&Yc(r)&&Os(r,e,{changedElements:t})}static reorderElements(e,t,r){if(!r.containsZindexDifference)return e;let i=Array.from(e.values()),u=p4e([...i]),a=Qn.getRightDifferences(i,u,!0).reduce((n,o)=>{let s=i[Number(o)];return s&&t.has(s.id)&&n.set(s.id,s),n},new Map);return!r.containsVisibleDifference&&a.size&&(r.containsVisibleDifference=!0),ar(CB(u,a))}static postProcess(e,t){try{Qn.diffArrays(e,t,"boundElements",(r)=>r.id)}catch(r){if(console.error("Couldn't postprocess elements change deltas."),Qr.DEV||Qr.MODE===Js.TEST)throw r}finally{return[e,t]}}static stripIrrelevantProps(e){let{id:t,updated:r,version:i,versionNonce:u,seed:a,...n}=e;return n}},VEe,fB=class{constructor(){UA(this,"subscribers",[])}on(...A){let e=A.flat().filter((t)=>typeof t=="function");return this.subscribers.push(...e),()=>this.off(e)}once(...A){let e=A.flat().filter((r)=>typeof r=="function");e.push(()=>t());let t=this.on(...e);return t}off(...A){let e=A.flat();this.subscribers=this.subscribers.filter((t)=>!e.includes(t))}trigger(...A){for(let e of this.subscribers)e(...A);return this}clear(){this.subscribers=[]}},m4e="__observedAppState",Y_=(A)=>{let e={name:A.name,editingGroupId:A.editingGroupId,viewBackgroundColor:A.viewBackgroundColor,selectedElementIds:A.selectedElementIds,selectedGroupIds:A.selectedGroupIds,editingLinearElementId:A.editingLinearElement?.elementId||null,selectedLinearElementId:A.selectedLinearElement?.elementId||null,croppingElementId:A.croppingElementId};return Reflect.defineProperty(e,m4e,{value:!0,enumerable:!1}),e},_ur=(A)=>!!Reflect.get(A,m4e),be,Wur=class{constructor(A,e){this.elementsChange=A,this.appStateChange=e}},D4e=class{constructor(){UA(this,"onStoreIncrementEmitter",new fB),UA(this,"scheduledActions",new Set),UA(this,"_snapshot",jEe.empty()),UA(this,"shouldCaptureIncrement",()=>{this.scheduleAction(be.IMMEDIATELY)}),UA(this,"shouldUpdateSnapshot",()=>{this.scheduleAction(be.NEVER)}),UA(this,"scheduleAction",(A)=>{this.scheduledActions.add(A),this.satisfiesScheduledActionsInvariant()}),UA(this,"commit",(A,e)=>{try{this.scheduledActions.has(be.IMMEDIATELY)?this.captureIncrement(A,e):this.scheduledActions.has(be.NEVER)&&this.updateSnapshot(A,e)}finally{this.satisfiesScheduledActionsInvariant(),this.scheduledActions=new Set}}),UA(this,"captureIncrement",(A,e)=>{let t=this.snapshot,r=this.snapshot.maybeClone(A,e);if(t!==r){let i=r.meta.didElementsChange?VEe.calculate(t.elements,r.elements):VEe.empty(),u=r.meta.didAppStateChange?ZEe.calculate(t.appState,r.appState):ZEe.empty();(!i.isEmpty()||!u.isEmpty())&&this.onStoreIncrementEmitter.trigger(new Wur(i,u)),this.snapshot=r}}),UA(this,"updateSnapshot",(A,e)=>{let t=this.snapshot.maybeClone(A,e);this.snapshot!==t&&(this.snapshot=t)}),UA(this,"filterUncomittedElements",(A,e)=>{for(let[t,r]of A.entries()){if(!e.get(t))continue;let i=this.snapshot.elements.get(t);i?i.version<r.version&&e.set(t,i):e.delete(t)}return e}),UA(this,"clear",()=>{this.snapshot=jEe.empty(),this.scheduledActions=new Set}),UA(this,"satisfiesScheduledActionsInvariant",()=>{if(!(this.scheduledActions.size>=0&&this.scheduledActions.size<=3)){let A=`There can be at most three store actions scheduled at the same time, but there are "${this.scheduledActions.size}".`;if(console.error(A,this.scheduledActions.values()),Qr.DEV||Qr.MODE===Js.TEST)throw Error(A)}})}get snapshot(){return this._snapshot}set snapshot(A){this._snapshot=A}},jEe=class A{constructor(e,t,r={didElementsChange:!1,didAppStateChange:!1,isEmpty:!1}){this.elements=e,this.appState=t,this.meta=r}static empty(){return new A(new Map,Y_(EB()),{didElementsChange:!1,didAppStateChange:!1,isEmpty:!0})}isEmpty(){return this.meta.isEmpty}maybeClone(e,t){let r=this.maybeCreateElementsSnapshot(e),i=this.maybeCreateAppStateSnapshot(t),u=!1,a=!1;return this.elements!==r&&(u=!0),this.appState!==i&&(a=!0),!u&&!a?this:new A(r,i,{didElementsChange:u,didAppStateChange:a})}maybeCreateAppStateSnapshot(e){if(!e)return this.appState;let t=_ur(e)?e:Y_(e);return this.detectChangedAppState(t)?t:this.appState}detectChangedAppState(e){return!Po(this.appState,e,{selectedElementIds:Po,selectedGroupIds:Po})}maybeCreateElementsSnapshot(e){return e?this.detectChangedElements(e)?this.createElementsSnapshot(e):this.elements:this.elements}detectChangedElements(e){if(this.elements===e)return!1;if(this.elements.size!==e.size)return!0;let t=Array.from(e.keys());for(let r=t.length-1;r>=0;r--){let i=this.elements.get(t[r]),u=e.get(t[r]);if(!i||!u||i.id!==u.id||i.versionNonce!==u.versionNonce)return!0}return!1}createElementsSnapshot(e){let t=new Map;for(let[r,i]of this.elements.entries())e.get(r)?t.set(r,i):t.set(r,Tr(i,{isDeleted:!0}));for(let[r,i]of e.entries()){let u=t.get(r);(!u||u&&u.versionNonce!==i.versionNonce)&&t.set(r,gp(i))}return t}},Qd,qur,zur,Zur,XEe,Vur,$Ee,jur,Xur,$ur,Ade,ede,Aar,gIA,tde,m9=(A)=>`<html><body>${A}</body></html>`,m2=(A)=>{if(!A)return null;if(Qd.has(A))return Qd.get(A);let e=A,t=tde.has(cIA(A,tde)||""),r="generic",i={w:560,h:840},u=A.match(qur);if(u?.[2]){let o=u[3]?`&start=${u[3]}`:"",s=A.includes("shorts");switch(r="video",u[1]){case"embed/":case"watch?v=":case"shorts/":A=`https://www.youtube.com/embed/${u[2]}?enablejsapi=1${o}`;break;case"playlist?list=":case"embed/videoseries?list=":A=`https://www.youtube.com/embed/videoseries?list=${u[2]}&enablejsapi=1${o}`;break;default:A=`https://www.youtube.com/embed/${u[2]}?enablejsapi=1${o}`;break}return i=s?{w:315,h:560}:{w:560,h:315},Qd.set(e,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}}let a=A.match(zur);if(a?.[1]){let o=a?.[1],s=/^\d+$/.test(o)?void 0:URIError("Invalid embed link format");return r="video",A=`https://player.vimeo.com/video/${o}?api=1`,i={w:560,h:315},Qd.set(e,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,error:s,sandbox:{allowSameOrigin:t}}}if(A.match(Zur))return r="generic",A=`https://www.figma.com/embed?embed_host=share&url=${encodeURIComponent(A)}`,i={w:550,h:550},Qd.set(e,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}};let n=A.match(Xur);if(n)return A=n[1]==="embed"?n[0]:n[0].replace("/v","/embed"),Qd.set(e,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}};if($Ee.test(A)){let o=A.match($Ee)[1],s=f_(`https://twitter.com/x/status/${o}`),l={type:"document",srcdoc:(g)=>m9(`<blockquote class="twitter-tweet" data-dnt="true" data-theme="${g}"><a href="${s}"></a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"><\/script>`),intrinsicSize:{w:480,h:480},sandbox:{allowSameOrigin:t}};return Qd.set(e,l),l}if(ede.test(A)){let[,o,s,l]=A.match(ede),g=f_(`https://reddit.com/r/${o}/comments/${s}/${l}`),C={type:"document",srcdoc:(B)=>m9(`<blockquote class="reddit-embed-bq" data-embed-theme="${B}"><a href="${g}"></a><br></blockquote><script async="" src="https://embed.reddit.com/widgets.js" charset="UTF-8"><\/script>`),intrinsicSize:{w:480,h:480},sandbox:{allowSameOrigin:t}};return Qd.set(e,C),C}if(XEe.test(A)){let[,o,s]=A.match(XEe),l=f_(`https://gist.github.com/${o}/${s}`),g={type:"document",srcdoc:()=>m9(`
|
||
<script src="${l}.js"><\/script>
|
||
<style type="text/css">
|
||
* { margin: 0px; }
|
||
table, .gist { height: 100%; }
|
||
.gist .gist-file { height: calc(100vh - 2px); padding: 0px; display: grid; grid-template-rows: 1fr auto; }
|
||
</style>
|
||
`),intrinsicSize:{w:550,h:720},sandbox:{allowSameOrigin:t}};return Qd.set(A,g),g}return Qd.set(A,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}},y4e=(A)=>{let e;Ph(A)?e="IFrame element":e=!A.link||A?.link===""?"Empty Web-Embed":A.link;let t=Math.max(Math.min(A.width/2,A.width/e.length),A.width/30),r=aa.Helvetica,i=cu({fontSize:t,fontFamily:r});return Tl({x:A.x+A.width/2,y:A.y+A.height/2,strokeColor:A.strokeColor!=="transparent"?A.strokeColor:"black",backgroundColor:"transparent",fontFamily:r,fontSize:t,text:up(e,i,A.width-20),textAlign:"center",verticalAlign:Ul.MIDDLE,angle:A.angle??0})},Oyi,cIA=(A,e)=>{try{let{hostname:t}=new URL(A),r=t.replace(/^www\./,"");if(e instanceof Set){if(gIA.has(r))return r;let u=r.replace(/^([^.]+)/,"*");return gIA.has(u)?u:null}let i=e.replace(/^www\./,"");if(r===i)return i}catch{}return null},w4e=(A)=>{let e=A.match(jur);if(e&&e.length===2)return e[1];let t=A.match(Aar);if(t&&t.length===2)return t[1];let r=A.match(Vur);if(r&&r.length===2)return r[1];if(Ade.test(A))return`https://giphy.com/embed/${Ade.exec(A)[1]}`;let i=A.match($ur);return i&&i.length===2?i[1]:A},BS=(A,e)=>{if(!A)return!1;if(e!=null)if(typeof e=="function"){let t=e(A);if(typeof t=="boolean")return t}else{if(typeof e=="boolean")return e;if(e instanceof RegExp)return e.test(A);if(Array.isArray(e)){for(let t of e)if(t instanceof RegExp){if(A.match(t))return!0}else if(cIA(A,t))return!0;return!1}}return!!cIA(A,gIA)},D8=(A,e,t)=>{if(typeof t>"u")return A.draw(e);let r={sets:e.sets,shape:e.shape,options:{...e.options,fixedDecimalPlaceDigits:t}};return A.draw(r)},y8=(A,e,t,r,i)=>{if(!r.enabled||!r.clip)return null;let u=Ps(A,i);if(u){let a=e.ownerDocument.createElementNS(wi,"g");return a.setAttributeNS(wi,"clip-path",`url(#${u.id})`),t.forEach((n)=>a.appendChild(n)),a}return null},y_=(A,e,t,r,i,u,a,n)=>{let o={x:u,y:a},[s,l,g,C]=Rr(A,e),B=(g-s)/2-(A.x-s),E=(C-l)/2-(A.y-l);if(Et(A)){let p=Qo(A,e);if(Kr(p)){let[m,f,D,w]=Rr(p,e),b=ht.getBoundTextElementPosition(p,A,e);B=(D-m)/2-(b.x-m),E=(w-f)/2-(b.y-f),u=u+b.x-A.x,a=a+b.y-A.y}}let d=180*A.angle/Math.PI,I=r;if(A.link){let p=r.ownerDocument.createElementNS(wi,"a");p.setAttribute("href",Ml(A.link)),I.appendChild(p),I=p}let h=(p,m)=>{bd()&&p.setAttribute("data-id",m.id),I.appendChild(p)},Q=(Ps(A,e)?.opacity??100)*A.opacity/1e4;switch(A.type){case"selection":throw Error("Selection rendering is not supported for SVG");case"rectangle":case"diamond":case"ellipse":{let p=na.generateElementShape(A,null),m=D8(t,p,m8);Q!==1&&(m.setAttribute("stroke-opacity",`${Q}`),m.setAttribute("fill-opacity",`${Q}`)),m.setAttribute("stroke-linecap","round"),m.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`);let f=y8(A,I,[m],n.frameRendering,e);h(f||m,A);break}case"iframe":case"embeddable":{let p=na.generateElementShape(A,n),m=D8(t,p,m8),f=A.opacity/100;f!==1&&(m.setAttribute("stroke-opacity",`${f}`),m.setAttribute("fill-opacity",`${f}`)),m.setAttribute("stroke-linecap","round"),m.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`),h(m,A);let D=y4e(A);y_(D,e,t,I,i,D.x+o.x-A.x,D.y+o.y-A.y,n);let w=D8(t,p,m8);for(w.setAttribute("stroke-linecap","round"),w.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`);w.firstChild;)w.removeChild(w.firstChild);let b=Gc(Math.min(A.width,A.height),A),F=m2(tQA(A.link||""));if(n.renderEmbeddables===!1||F?.type==="document"){let v=r.ownerDocument.createElementNS(wi,"a");v.setAttribute("href",Ml(A.link||"")),v.setAttribute("target","_blank"),v.setAttribute("rel","noopener noreferrer"),v.style.borderRadius=`${b}px`,w.appendChild(v)}else{let v=r.ownerDocument.createElementNS(wi,"foreignObject");v.style.width=`${A.width}px`,v.style.height=`${A.height}px`,v.style.border="none";let S=v.ownerDocument.createElementNS(wi,"div");S.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),S.style.width="100%",S.style.height="100%";let x=S.ownerDocument.createElement("iframe");x.src=F?.link??"",x.style.width="100%",x.style.height="100%",x.style.border="none",x.style.borderRadius=`${b}px`,x.style.top="0",x.style.left="0",x.allowFullscreen=!0,S.appendChild(x),v.appendChild(S),w.appendChild(v)}h(w,A);break}case"line":case"arrow":{let p=Gr(A,e),m=r.ownerDocument.createElementNS(wi,"mask");if(p){m.setAttribute("id",`mask-${A.id}`);let w=r.ownerDocument.createElementNS(wi,"rect");u=u||0,a=a||0,w.setAttribute("x","0"),w.setAttribute("y","0"),w.setAttribute("fill","#fff"),w.setAttribute("width",`${A.width+100+u}`),w.setAttribute("height",`${A.height+100+a}`),m.appendChild(w);let b=r.ownerDocument.createElementNS(wi,"rect"),F=ht.getBoundTextElementPosition(A,p,e),v=u+F.x-A.x,S=a+F.y-A.y;b.setAttribute("x",v.toString()),b.setAttribute("y",S.toString()),b.setAttribute("fill","#000"),b.setAttribute("width",`${p.width}`),b.setAttribute("height",`${p.height}`),b.setAttribute("opacity","1"),m.appendChild(b)}let f=r.ownerDocument.createElementNS(wi,"g");p&&f.setAttribute("mask",`url(#mask-${A.id})`),f.setAttribute("stroke-linecap","round"),na.generateElementShape(A,n).forEach((w)=>{let b=D8(t,w,m8);Q!==1&&(b.setAttribute("stroke-opacity",`${Q}`),b.setAttribute("fill-opacity",`${Q}`)),b.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`),A.type==="line"&&fd(A.points)&&A.backgroundColor!=="transparent"&&b.setAttribute("fill-rule","evenodd"),f.appendChild(b)});let D=y8(A,I,[f,m],n.frameRendering,e);D?(h(D,A),I.appendChild(D)):(h(f,A),I.append(m));break}case"freedraw":{let p=na.generateElementShape(A,n),m=p?D8(t,p,m8):r.ownerDocument.createElementNS(wi,"g");Q!==1&&(m.setAttribute("stroke-opacity",`${Q}`),m.setAttribute("fill-opacity",`${Q}`)),m.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`),m.setAttribute("stroke","none");let f=r.ownerDocument.createElementNS(wi,"path");f.setAttribute("fill",A.strokeColor),f.setAttribute("d",RhA(A)),m.appendChild(f);let D=y8(A,I,[m],n.frameRendering,e);h(D||m,A);break}case"image":{let p=Math.round(A.width),m=Math.round(A.height),f=Ng(A)&&i[A.fileId];if(f){let{reuseImages:D=!0}=n,w=`image-${f.id}`,{width:b,height:F}=A;A.crop&&({width:b,height:F}=md(A),w=`image-crop-${f.id}-${s1e(`${b}x${F}`)}`),D||(w=`image-${A.id}`);let v=r.querySelector(`#${w}`);if(!v){v=r.ownerDocument.createElementNS(wi,"symbol"),v.id=w;let U=r.ownerDocument.createElementNS(wi,"image");U.setAttribute("href",f.dataURL),U.setAttribute("preserveAspectRatio","none"),A.crop||!D?(U.setAttribute("width",`${b}`),U.setAttribute("height",`${F}`)):(U.setAttribute("width","100%"),U.setAttribute("height","100%")),v.appendChild(U),(I.querySelector("defs")||I).prepend(v)}let S=r.ownerDocument.createElementNS(wi,"use");S.setAttribute("href",`#${w}`),n.exportWithDarkMode&&f.mimeType!==Xt.svg&&S.setAttribute("filter",SQe);let x=0,k=0;if(A.crop){let{width:U,height:Y}=md(A);x=A.crop.x/(A.crop.naturalWidth/U),k=A.crop.y/(A.crop.naturalHeight/Y)}let T=B+x,R=E+k;S.setAttribute("width",`${p+x}`),S.setAttribute("height",`${m+k}`),S.setAttribute("opacity",`${Q}`),(A.scale[0]!==1||A.scale[1]!==1)&&S.setAttribute("transform",`translate(${T} ${R}) scale(${A.scale[0]} ${A.scale[1]}) translate(${-T} ${-R})`);let L=r.ownerDocument.createElementNS(wi,"g");if(A.crop){let U=r.ownerDocument.createElementNS(wi,"mask");U.setAttribute("id",`mask-image-crop-${A.id}`),U.setAttribute("fill","#fff");let Y=r.ownerDocument.createElementNS(wi,"rect");Y.setAttribute("x",`${x}`),Y.setAttribute("y",`${k}`),Y.setAttribute("width",`${p}`),Y.setAttribute("height",`${m}`),U.appendChild(Y),I.appendChild(U),L.setAttribute("mask",`url(#${U.id})`)}if(L.appendChild(S),L.setAttribute("transform",`translate(${u-x} ${a-k}) rotate(${d} ${T} ${R})`),A.roundness){let U=r.ownerDocument.createElementNS(wi,"clipPath");U.id=`image-clipPath-${A.id}`;let Y=r.ownerDocument.createElementNS(wi,"rect"),H=Gc(Math.min(A.width,A.height),A);Y.setAttribute("width",`${A.width}`),Y.setAttribute("height",`${A.height}`),Y.setAttribute("rx",`${H}`),Y.setAttribute("ry",`${H}`),U.appendChild(Y),h(U,A),L.setAttributeNS(wi,"clip-path",`url(#${U.id})`)}let M=y8(A,I,[L],n.frameRendering,e);h(M||L,A)}break}case"frame":case"magicframe":{if(n.frameRendering.enabled&&n.frameRendering.outline){let p=document.createElementNS(wi,"rect");p.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`),p.setAttribute("width",`${A.width}px`),p.setAttribute("height",`${A.height}px`),p.setAttribute("rx",Zu.radius.toString()),p.setAttribute("ry",Zu.radius.toString()),p.setAttribute("fill","none"),p.setAttribute("stroke",Zu.strokeColor),p.setAttribute("stroke-width",Zu.strokeWidth.toString()),h(p,A)}break}default:if(Et(A)){let p=r.ownerDocument.createElementNS(wi,"g");Q!==1&&(p.setAttribute("stroke-opacity",`${Q}`),p.setAttribute("fill-opacity",`${Q}`)),p.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`);let m=A.text.replace(/\r\n?/g,`
|
||
`).split(`
|
||
`),f=T9(A.fontSize,A.lineHeight),D=A.textAlign==="center"?A.width/2:A.textAlign==="right"?A.width:0,w=EQe(A.fontFamily,A.fontSize,f),b=EIe(A.text)?"rtl":"ltr",F=A.textAlign==="center"?"middle":A.textAlign==="right"||b==="rtl"?"end":"start";for(let S=0;S<m.length;S++){let x=r.ownerDocument.createElementNS(wi,"text");x.textContent=m[S],x.setAttribute("x",`${D}`),x.setAttribute("y",`${S*f+w}`),x.setAttribute("font-family",B2(A)),x.setAttribute("font-size",`${A.fontSize}px`),x.setAttribute("fill",A.strokeColor),x.setAttribute("text-anchor",F),x.setAttribute("style","white-space: pre;"),x.setAttribute("direction",b),x.setAttribute("dominant-baseline","alphabetic"),p.appendChild(x)}let v=y8(A,I,[p],n.frameRendering,e);h(v||p,A)}else throw Error(`Unimplemented type ${A.type}`)}},ear=(A,e,t,r,i,u)=>{r&&(A.filter((a)=>!xg(a)).forEach((a)=>{if(!a.isDeleted){if(Et(a)&&a.containerId&&e.has(a.containerId))return;try{y_(a,e,t,r,i,a.x+u.offsetX,a.y+u.offsetY,u);let n=Gr(a,e);n&&y_(n,e,t,r,i,n.x+u.offsetX,n.y+u.offsetY,u)}catch(n){console.error(n)}}}),A.filter((a)=>xg(a)).forEach((a)=>{if(!a.isDeleted)try{y_(a,e,t,r,i,a.x+u.offsetX,a.y+u.offsetY,u)}catch(n){console.error(n)}}))},rde=500,GW=(A)=>{let e=A.extensions?.reduce((r,i)=>(r.push(Xt[i]),r),[]),t=A.extensions?.reduce((r,i)=>i==="jpg"?r.concat(".jpg",".jpeg"):r.concat(`.${i}`),[]);return eEe({description:A.description,extensions:t,mimeTypes:e,multiple:A.multiple??!1,legacySetup:(r,i,u)=>{let a=E2(i,rde),n=()=>{o(),document.addEventListener("keyup",a),document.addEventListener("pointerup",a),a()},o=()=>{if(u.files?.length){let l=A.multiple?[...u.files]:u.files[0];r(l)}};requestAnimationFrame(()=>{window.addEventListener("focus",n)});let s=window.setInterval(()=>{o()},rde);return(l)=>{clearInterval(s),a.cancel(),window.removeEventListener("focus",n),document.removeEventListener("keyup",a),document.removeEventListener("pointerup",a),l&&(console.warn("Opening the file was canceled (legacy-fs)."),l(new aS))}}})},ES=(A,e)=>tEe(A,{fileName:`${e.name}.${e.extension}`,description:e.description,extensions:[`.${e.extension}`],mimeTypes:e.mimeTypes},e.fileHandle),tar=(A,e)=>{let t={};for(let r of A)!r.isDeleted&&"fileId"in r&&r.fileId&&e[r.fileId]&&(t[r.fileId]=e[r.fileId]);return t},UW=(A,e,t,r)=>{let i={type:Fg.excalidraw,version:W8.excalidraw,source:P_,elements:r==="local"?g1e(A):lnr(A),appState:r==="local"?rIe(e):KXt(e),files:r==="local"?tar(A,t):void 0};return JSON.stringify(i,null,2)},sQA=async(A,e,t,r=e.name||kIA)=>{let i=UW(A,e,t,"local"),u=new Blob([i],{type:Xt.excalidraw});return{fileHandle:await ES(u,{name:r,extension:"excalidraw",description:"Excalidraw file",fileHandle:uq(e.fileHandle)?null:e.fileHandle})}},b4e=async(A,e)=>{let t=await GW({description:"Excalidraw files"});return VQA(await nq(t),A,e,t.handle)},rar=(A)=>A?.type===Fg.excalidraw&&(!A.elements||Array.isArray(A.elements)&&(!A.appState||typeof A.appState=="object")),v4e=(A)=>typeof A=="object"&&A&&A.type===Fg.excalidrawLibrary&&(A.version===1||A.version===2),lQA=(A)=>{let e={type:Fg.excalidrawLibrary,version:W8.excalidrawLibrary,source:P_,libraryItems:A};return JSON.stringify(e,null,2)},k4e=async(A)=>{let e=lQA(A);await ES(new Blob([e],{type:Xt.excalidrawlib}),{name:"library",extension:"excalidrawlib",description:"Excalidraw library file"})},gQA=(A)=>new Promise((e,t)=>{let r=new Image;r.onload=()=>{e(r)},r.onerror=(i)=>{t(i)},r.src=A}),cQA=async({fileIds:A,files:e,imageCache:t})=>{let r=new Map,i=new Map;return await Promise.all(A.reduce((u,a)=>{let n=e[a];return n&&!r.has(a)?(r.set(a,!0),u.concat((async()=>{try{if(n.mimeType===Xt.binary)throw Error("Only images can be added to ImageCache");let o=gQA(n.dataURL),s={image:o,mimeType:n.mimeType};t.set(a,s);let l=await o;t.set(a,{...s,image:l})}catch{i.set(a,!0)}})())):u},[])),{imageCache:t,updatedFiles:r,erroredFiles:i}},CQA=(A)=>A.filter((e)=>Ng(e)),iar=(A)=>A?.nodeName.toLowerCase()==="svg",BQA=(A)=>{let e=new DOMParser().parseFromString(A,Xt.svg),t=e.querySelector("svg");if(e.querySelector("parsererror")||!iar(t))throw Error("Invalid SVG");{t.hasAttribute("xmlns")||t.setAttribute("xmlns",wi);let r=t.getAttribute("width"),i=t.getAttribute("height");(r?.includes("%")||r==="auto")&&(r=null),(i?.includes("%")||i==="auto")&&(i=null);let u=t.getAttribute("viewBox");if(!r||!i){if(r=r||"50",i=i||"50",u){let a=u.match(/\d+ +\d+ +(\d+(?:\.\d+)?) +(\d+(?:\.\d+)?)/);a&&([,r,i]=a)}t.setAttribute("width",r),t.setAttribute("height",i)}return u||t.setAttribute("viewBox",`0 0 ${r} ${i}`),t.outerHTML}},F4e,x4e,MW=([A,e,t,r],i,u)=>{let a=Uir,n=a/u.zoom.value,o=a/u.zoom.value,s=a/u.zoom.value,l=(A+t)/2,g=(e+r)/2,C=(a-8)/(2*u.zoom.value),B=4/u.zoom.value,E=t+B-C,d=e-B-s+C,[I,h]=ye(X(E+n/2,d+o/2),X(l,g),i);return[I-n/2,h-o/2,n,o]},EQA=(A,e,t,[r,i])=>{let u=4/t.zoom.value,[a,n,o,s]=Rr(A,e),[l,g,C,B]=MW([a,n,o,s],A.angle,t);return r>l-u&&r<l+u+C&&i>g-u&&i<g+B+u},TW=(A,e,t,[r,i],u)=>!A.link||t.selectedElementIds[A.id]?!1:!u&&t.viewModeEnabled&&CW(r,i,A,e)?!0:EQA(A,e,t,X(r,i)),dS=(A,e,t,r,i=!0)=>{A.beginPath(),A.arc(e,t,r,0,Math.PI*2),A.fill(),i&&A.stroke()},YW=(A,e)=>[A.width/e,A.height/e],HW=({canvas:A,scale:e,normalizedWidth:t,normalizedHeight:r,theme:i,isExporting:u,viewBackgroundColor:a})=>{let n=A.getContext("2d");return n.setTransform(1,0,0,1,0,0),n.scale(e,e),u&&i===$r.DARK&&(n.filter=q_),typeof a=="string"?((a==="transparent"||a.length===5||a.length===9||/(hsla|rgba)\(/.test(a))&&n.clearRect(0,0,t,r),n.save(),n.fillStyle=a,n.fillRect(0,0,t,r),n.restore()):n.clearRect(0,0,t,r),n},dQA=(A,e)=>{let t=window.location.href;try{let r=new URL(t);return r.searchParams.set(b_,A),Ml(r.toString())}catch(r){console.error(r)}return Ml(t)},IQA=(A,e)=>{if(A.length>0&&IS(A)){if(A.length===1)return{id:A[0].id,type:"element"};if(A.length>1){let t=Object.keys(e.selectedGroupIds)[0];return t?{id:t,type:"group"}:{id:A[0].groupIds[0],type:"group"}}}return null},IS=(A)=>!!(A.length===1||A.length>1&&VhA(A)),q9=(A)=>{try{let e=new URL(A);return e.searchParams.has(b_)&&e.host===window.location.host}catch{return!1}},S4e=(A)=>{try{let{searchParams:e}=new URL(A);if(e.has(b_))return e.get(b_)}catch{}return null},Q_,uar=(A,e,t,r,i,u,a,n)=>{let o=r%e-e,s=i%e-e,l=e*u.value,g=1/u.value;A.save(),u.value===1&&A.translate(o%1?0:0.5,s%1?0:0.5);for(let C=o;C<o+a+e*2;C+=e){let B=t>1&&Math.round(C-r)%(t*e)===0;if(!B&&l<10)continue;let E=Math.min(1/u.value,B?4:1);A.lineWidth=E;let d=[E*3,g+(E+g)];A.beginPath(),A.setLineDash(B?[]:d),A.strokeStyle=B?Q_.Bold:Q_.Regular,A.moveTo(C,s-e),A.lineTo(C,Math.ceil(s+n+e*2)),A.stroke()}for(let C=s;C<s+n+e*2;C+=e){let B=t>1&&Math.round(C-i)%(t*e)===0;if(!B&&l<10)continue;let E=Math.min(1/u.value,B?4:1);A.lineWidth=E;let d=[E*3,g+(E+g)];A.beginPath(),A.setLineDash(B?[]:d),A.strokeStyle=B?Q_.Bold:Q_.Regular,A.moveTo(o-e,C),A.lineTo(Math.ceil(o+a+e*2),C),A.stroke()}A.restore()},ide=(A,e,t,r)=>{e.translate(A.x+r.scrollX,A.y+r.scrollY),e.beginPath(),e.roundRect?e.roundRect(0,0,A.width,A.height,Zu.radius/r.zoom.value):e.rect(0,0,A.width,A.height),e.clip(),e.translate(-(A.x+r.scrollX),-(A.y+r.scrollY))},ude,ade=(A,e,t,r)=>{if(A.link&&!t.selectedElementIds[A.id]){let[i,u,a,n]=Rr(A,r),[o,s,l,g]=MW([i,u,a,n],A.angle,t),C=o+l/2,B=s+g/2;e.save(),e.translate(t.scrollX+C,t.scrollY+B),e.rotate(A.angle);let E=q9(A.link)?"elementLink":"regularLink",d=ude[E];if(!d||d.zoom!==t.zoom.value){d=Object.assign(document.createElement("canvas"),{zoom:t.zoom.value}),d.width=l*window.devicePixelRatio*t.zoom.value,d.height=g*window.devicePixelRatio*t.zoom.value,ude[E]=d;let I=d.getContext("2d");I.scale(window.devicePixelRatio*t.zoom.value,window.devicePixelRatio*t.zoom.value),I.fillStyle="#fff",I.fillRect(0,0,l,g),E==="elementLink"?I.drawImage(x4e,0,0,l,g):I.drawImage(F4e,0,0,l,g),I.restore()}e.drawImage(d,o-C,s-B,l,g),e.restore()}},L4e=({canvas:A,rc:e,elementsMap:t,allElementsMap:r,visibleElements:i,scale:u,appState:a,renderConfig:n})=>{if(A===null)return;let{renderGrid:o=!0,isExporting:s}=n,[l,g]=YW(A,u),C=HW({canvas:A,scale:u,normalizedWidth:l,normalizedHeight:g,theme:a.theme,isExporting:s,viewBackgroundColor:a.viewBackgroundColor});C.scale(a.zoom.value,a.zoom.value),o&&uar(C,a.gridSize,a.gridStep,a.scrollX,a.scrollY,a.zoom,l/a.zoom.value,g/a.zoom.value);let B=new Set;i.forEach((d)=>{d.groupIds.length>0&&a.frameToHighlight&&a.selectedElementIds[d.id]&&(Kh(d,a.frameToHighlight,t)||d.groupIds.find((I)=>B.has(I)))&&d.groupIds.forEach((I)=>B.add(I))});let E=new Map;i.filter((d)=>!xg(d)).forEach((d)=>{try{let I=d.frameId||a.frameToHighlight?.id;if(Et(d)&&d.containerId&&t.has(d.containerId))return;if(C.save(),I&&a.frameRendering.enabled&&a.frameRendering.clip){let Q=BIA(d,t,a);Q&&Qde(d,Q,a,t,E)&&ide(Q,C,n,a),K1(d,t,r,e,C,n,a)}else K1(d,t,r,e,C,n,a);let h=Gr(d,t);h&&K1(h,t,r,e,C,n,a),C.restore(),s||ade(d,C,a,t)}catch(I){console.error(I,d.id,d.x,d.y,d.width,d.height)}}),i.filter((d)=>xg(d)).forEach((d)=>{try{let I=()=>{if(K1(d,t,r,e,C,n,a),xg(d)&&(s||_s(d)&&n.embedsValidationStatus.get(d.id)!==!0)&&d.width&&d.height){let h=y4e(d);K1(h,t,r,e,C,n,a)}s||ade(d,C,a,t)};if((d.frameId||a.frameToHighlight?.id)&&a.frameRendering.enabled&&a.frameRendering.clip){C.save();let h=BIA(d,t,a);h&&Qde(d,h,a,t,E)&&ide(h,C,n,a),I(),C.restore()}else I()}catch(I){console.error(I)}}),n.pendingFlowchartNodes?.forEach((d)=>{try{K1(d,t,r,e,C,n,a)}catch(I){console.error(I)}})},hQA,QQA=(A,e)=>{if(e){hQA(A);return}L4e(A)},aar=(A,e)=>{if(A.width<=e)return A;let t=document.createElement("canvas").getContext("2d");t.font=cu({fontFamily:A.fontFamily,fontSize:A.fontSize});let r=A.text;if(t.measureText(r).width>e)for(let i=r.length;i>0;i--){let u=`${r.slice(0,i)}...`;if(t.measureText(u).width<=e){r=u;break}}return Tr(A,{text:r,width:e})},nar=(A,e)=>{let t=[];for(let r of A){if(nr(r)){let i=Tl({x:r.x,y:r.y-Zu.nameOffsetY,fontFamily:aa.Helvetica,fontSize:Zu.nameFontSize,lineHeight:Zu.nameLineHeight,strokeColor:e.exportWithDarkMode?Zu.nameColorDarkTheme:Zu.nameColorLightTheme,text:GQA(r)});i.y-=i.height,i=aar(i,r.width),t.push(i)}t.push(r)}return t},R4e=(A,e)=>(e=e||EB().frameRendering,{enabled:A?!0:e.enabled,outline:A?!1:e.outline,name:A?!1:e.name,clip:A?!0:e.clip}),N4e=({elements:A,exportingFrame:e,frameRendering:t,exportWithDarkMode:r})=>{let i;return e?i=jW(A,e):t.enabled&&t.name?i=nar(A,{exportWithDarkMode:r}):i=A,i},pQA=async(A,e,t,{exportBackground:r,exportPadding:i=g2,viewBackgroundColor:u,exportingFrame:a},n=(s,l)=>{let g=document.createElement("canvas");return g.width=s*e.exportScale,g.height=l*e.exportScale,{canvas:g,scale:e.exportScale}},o=async()=>{await kd.loadElementsFonts(A)})=>{await o();let s=R4e(a??null,e.frameRendering??null);a&&(s.clip=!1);let l=N4e({elements:A,exportingFrame:a,exportWithDarkMode:e.exportWithDarkMode,frameRendering:s});a&&(i=0);let[g,C,B,E]=fQA(a?[a]:ZW(l),i),{canvas:d,scale:I=1}=n(B,E),h=EB(),{imageCache:Q}=await cQA({imageCache:new Map,fileIds:CQA(l).map((p)=>p.fileId),files:t});return QQA({canvas:d,rc:xc.canvas(d),elementsMap:Sg(ar(l)),allElementsMap:Sg(ar(Sd(A))),visibleElements:l,scale:I,appState:{...e,frameRendering:s,viewBackgroundColor:r?u:null,scrollX:-g+i,scrollY:-C+i,zoom:h.zoom,shouldCacheIgnoreZoom:!1,theme:e.exportWithDarkMode?$r.DARK:$r.LIGHT},renderConfig:{canvasBackgroundColor:u,imageCache:Q,renderGrid:!1,isExporting:!0,embedsValidationStatus:new Map,elementsPendingErasure:new Set,pendingFlowchartNodes:null}}),d},w8=(A)=>document.createComment(` ${A} `),KW=async(A,e,t,r)=>{let i=R4e(r?.exportingFrame??null,e.frameRendering??null),{exportPadding:u=g2,exportWithDarkMode:a=!1,viewBackgroundColor:n,exportScale:o=1,exportEmbedScene:s}=e,{exportingFrame:l=null}=r||{},g=N4e({elements:A,exportingFrame:l,exportWithDarkMode:a,frameRendering:i});l&&(u=0);let[C,B,E,d]=fQA(l?[l]:ZW(g),u),I=-C+u,h=-B+u,Q=document.createElementNS(wi,"svg");Q.setAttribute("version","1.1"),Q.setAttribute("xmlns",wi),Q.setAttribute("viewBox",`0 0 ${E} ${d}`),Q.setAttribute("width",`${E*o}`),Q.setAttribute("height",`${d*o}`),a&&Q.setAttribute("filter",q_);let p=Q.ownerDocument.createElementNS(wi,"defs"),m=Q.ownerDocument.createElementNS(wi,"metadata");if(Q.appendChild(w8("svg-source:excalidraw")),Q.appendChild(m),Q.appendChild(p),s)try{oar({metadataElement:m,payload:UW(A,e,t||{},"local")})}catch(S){console.error(S)}let f=zW(A);if(f.length){let S=ar(A);for(let x of f){let k=Q.ownerDocument.createElementNS(wi,"clipPath");k.setAttribute("id",x.id);let[T,R,L,M]=Rr(x,S),U=(L-T)/2-(x.x-T),Y=(M-R)/2-(x.y-R),H=Q.ownerDocument.createElementNS(wi,"rect");H.setAttribute("transform",`translate(${x.x+I} ${x.y+h}) rotate(${x.angle} ${U} ${Y})`),H.setAttribute("width",`${x.width}`),H.setAttribute("height",`${x.height}`),l||(H.setAttribute("rx",`${Zu.radius}`),H.setAttribute("ry",`${Zu.radius}`)),k.appendChild(H),p.appendChild(k)}}let D=r?.skipInliningFonts?[]:await kd.generateFontFaceDeclarations(A),w=`
|
||
`,b=Q.ownerDocument.createElementNS(wi,"style");if(b.classList.add("style-fonts"),b.appendChild(document.createTextNode(`${w}${D.join(w)}`)),p.appendChild(b),e.exportBackground&&n){let S=Q.ownerDocument.createElementNS(wi,"rect");S.setAttribute("x","0"),S.setAttribute("y","0"),S.setAttribute("width",`${E}`),S.setAttribute("height",`${d}`),S.setAttribute("fill",n),Q.appendChild(S)}let F=xc.svg(Q),v=r?.renderEmbeddables??!1;return ear(g,Sg(ar(g)),F,Q,t||{},{offsetX:I,offsetY:h,isExporting:!0,exportWithDarkMode:a,renderEmbeddables:v,frameRendering:i,canvasBackgroundColor:n,embedsValidationStatus:v?new Map(g.filter((S)=>nr(S)).map((S)=>[S.id,!0])):new Map,reuseImages:r?.reuseImages??!0}),Q},oar=({payload:A,metadataElement:e})=>{let t=y1e(JSON.stringify(b1e({text:A})),!0);e.appendChild(w8(`payload-type:${Xt.excalidraw}`)),e.appendChild(w8("payload-version:2")),e.appendChild(w8("payload-start")),e.appendChild(document.createTextNode(t)),e.appendChild(w8("payload-end"))},sar=({svg:A})=>{if(A.includes(`payload-type:${Xt.excalidraw}`)){let e=A.match(/<!-- payload-start -->\s*(.+?)\s*<!-- payload-end -->/);if(!e)throw Error("INVALID");let t=(A.match(/<!-- payload-version:(\d+) -->/)?.[1]||"1")!=="1";try{let r=w1e(e[1],t),i=JSON.parse(r);if(!("encoded"in i)){if("type"in i&&i.type===Fg.excalidraw)return r;throw Error("FAILED")}return v1e(i)}catch(r){throw console.error(r),Error("FAILED")}}throw Error("INVALID")},fQA=(A,e)=>{let[t,r,i,u]=Pi(A),a=f0(t,i)+e*2,n=f0(r,u)+e*2;return[t,r,a,n]},G4e=(A,e,t)=>{let[,,r,i]=fQA(A,e).map((u)=>Math.trunc(u*t));return[r,i]},lar=class{constructor(A){this.scoreFunction=A,UA(this,"content",[])}sinkDown(A){let e=this.content[A];for(;A>0;){let t=(A+1>>1)-1,r=this.content[t];if(this.scoreFunction(e)<this.scoreFunction(r))this.content[t]=e,this.content[A]=r,A=t;else break}}bubbleUp(A){let e=this.content.length,t=this.content[A],r=this.scoreFunction(t);for(;;){let i=A+1<<1,u=i-1,a=null,n=0;if(u<e){let o=this.content[u];n=this.scoreFunction(o),n<r&&(a=u)}if(i<e){let o=this.content[i];this.scoreFunction(o)<(a===null?r:n)&&(a=i)}if(a!==null)this.content[A]=this.content[a],this.content[a]=t,A=a;else break}}push(A){this.content.push(A),this.sinkDown(this.content.length-1)}pop(){if(this.content.length===0)return null;let A=this.content[0],e=this.content.pop();return this.content.length>0&&(this.content[0]=e,this.bubbleUp(0)),A}remove(A){if(this.content.length===0)return;let e=this.content.indexOf(A),t=this.content.pop();e<this.content.length&&(this.content[e]=t,this.scoreFunction(t)<this.scoreFunction(A)?this.sinkDown(e):this.bubbleUp(e))}size(){return this.content.length}rescoreElement(A){this.sinkDown(this.content.indexOf(A))}},mQA=1,gu=40,gar=(A,e)=>{let t=A.fixedSegments?A.fixedSegments.slice():null;if(t){let r=[];A.points.map((a)=>X(A.x+a[0],A.y+a[1])).forEach((a,n,o)=>{if(n<2)return r.push(a);let s=U8(a,o[n-1]),l=U8(o[n-1],o[n-2]);if(va(s,l)){let g=t?.findIndex((B)=>B.index===n-1)??-1,C=t?.findIndex((B)=>B.index===n)??-1;C!==-1&&(t[C].start=X(o[n-2][0]-A.x,o[n-2][1]-A.y)),g!==-1&&t.splice(g,1),r.splice(-1,1),t.forEach((B)=>{B.index>n-1&&(B.index-=1)})}return r.push(a)});let i=[];r.forEach((a,n,o)=>{if(n<3)return i.push(a);if(Li(o[n-2],o[n-1])<mQA){let s=t?.findIndex((C)=>C.index===n-2)??-1,l=t?.findIndex((C)=>C.index===n-1)??-1;l!==-1&&t.splice(l,1),s!==-1&&t.splice(s,1),i.splice(-2,2),t.forEach((C)=>{C.index>n-2&&(C.index-=2)});let g=Th(a,o[n-1]);return i.push(X(g?a[0]:o[n-2][0],g?o[n-2][1]:a[1]))}i.push(a)});let u=t.filter((a)=>a.index!==1&&a.index!==i.length-1);return u.length===0?X1(wQA(bQA(yQA(A,DQA(A,e,i.map((a)=>X(a[0]-A.x,a[1]-A.y)),A.startBinding&&F9(A.startBinding.elementId,e),A.endBinding&&F9(A.endBinding.elementId,e)))??[])),u,null,null):(Qr.DEV&&fn(vQA(i),"Invalid elbow points with fixed segments"),X1(i,u,A.startIsSpecial,A.endIsSpecial))}return{x:A.x,y:A.y,points:A.points,fixedSegments:A.fixedSegments,startIsSpecial:A.startIsSpecial,endIsSpecial:A.endIsSpecial}},car=(A,e,t)=>{let r=e.map((b)=>b.index),i=(A.fixedSegments?.map((b)=>b.index)??[]).findIndex((b)=>!r.includes(b));if(i===-1||!A.fixedSegments?.[i])return{points:A.points};let u=A.fixedSegments[i].index,a=A.fixedSegments[i-1],n=A.fixedSegments[i+1],o=A.x+(a?a.end[0]:0),s=A.y+(a?a.end[1]:0),l=a?null:A.startBinding,g=n?null:A.endBinding,{startHeading:C,endHeading:B,startGlobalPoint:E,endGlobalPoint:d,hoveredStartElement:I,hoveredEndElement:h,...Q}=DQA({x:o,y:s,startBinding:l,endBinding:g,startArrowhead:null,endArrowhead:null,points:A.points},t,[X(0,0),X(A.x+(n?.start[0]??A.points[A.points.length-1][0])-o,A.y+(n?.start[1]??A.points[A.points.length-1][1])-s)],l&&F9(l.elementId,t),g&&F9(g.elementId,t),{isDragging:!1}),{points:p}=X1(wQA(bQA(yQA(A,{startHeading:C,endHeading:B,startGlobalPoint:E,endGlobalPoint:d,hoveredStartElement:I,hoveredEndElement:h,...Q})??[])),e,null,null),m=[];if(a)for(let b=0;b<a.index;b++)m.push(X(A.x+A.points[b][0],A.y+A.points[b][1]));if(p.forEach((b)=>{m.push(X(A.x+(a?a.end[0]:0)+b[0],A.y+(a?a.end[1]:0)+b[1]))}),n)for(let b=n.index;b<A.points.length;b++)m.push(X(A.x+A.points[b][0],A.y+A.points[b][1]));let f=(n?.index??A.points.length)-(a?.index??0)-1,D=e.map((b)=>b.index>u?{...b,index:b.index-f+(p.length-1)}:b),w=m.flatMap((b,F)=>{let v=m[F-1],S=m[F+1];if(v&&S){let x=U8(b,v),k=U8(S,b);if(va(x,k))return D.forEach((T)=>{T.index>F&&(T.index-=1)}),[];if(va(x,YQe(k)))return D.forEach((T)=>{T.index>F&&(T.index+=1)}),[b,b]}return[b]});return X1(w,D,!1,!1)},Car=(A,e,t,r,i,u)=>{let a=e.map((f,D)=>A.fixedSegments==null||A.fixedSegments[D]===void 0||A.fixedSegments[D].index!==f.index||(f.start[0]!==A.fixedSegments[D].start[0]&&f.end[0]!==A.fixedSegments[D].end[0])!=(f.start[1]!==A.fixedSegments[D].start[1]&&f.end[1]!==A.fixedSegments[D].end[1])?D:null).filter((f)=>f!==null).shift();if(a==null)return{points:A.points};let n=A.fixedSegments?.findIndex((f)=>f.index===1)??-1,o=A.fixedSegments?.findIndex((f)=>f.index===A.points.length-1)??-1,s=Li(e[a].start,e[a].end),l=s<gu+5;if(n===-1&&e[a].index===1&&i){let f=Hh(t),D=(f?va(t,wa):va(t,Io))?l?s/2:gu:l?-s/2:-gu;e[a].start=X(e[a].start[0]+(f?D:0),e[a].start[1]+(f?0:D))}if(o===-1&&e[a].index===A.points.length-1&&u){let f=Hh(r),D=(f?va(r,wa):va(r,Io))?l?s/2:gu:l?-s/2:-gu;e[a].end=X(e[a].end[0]+(f?D:0),e[a].end[1]+(f?0:D))}let g=e.map((f)=>({...f,start:X(A.x+f.start[0],A.y+f.start[1]),end:X(A.x+f.end[0],A.y+f.end[1])})),C=A.points.map((f,D)=>X(A.x+f[0],A.y+f[1])),B=g[a].index-1,E=g[a].index,d=g[a].start,I=g[a].end,h=C[B-1]&&!nB(C[B],C[B-1])?Th(C[B-1],C[B]):void 0,Q=C[E+1]&&!nB(C[E],C[E+1])?Th(C[E+1],C[E]):void 0;if(h!==void 0){let f=h?1:0;C[B-1][f]=d[f]}if(C[B]=d,C[E]=I,Q!==void 0){let f=Q?1:0;C[E+1][f]=I[f]}let p=g.findIndex((f)=>f.index===B);if(p!==-1){let f=Th(g[p].end,g[p].start)?1:0;g[p].start[f]=d[f],g[p].end=d}let m=g.findIndex((f)=>f.index===E+1);if(m!==-1){let f=Th(g[m].end,g[m].start)?1:0;g[m].end[f]=I[f],g[m].start=I}if(n===-1&&B===0){let f=i?Hh(t):Th(C[1],C[0]);C.unshift(X(f?d[0]:A.x+A.points[0][0],f?A.y+A.points[0][1]:d[1])),i&&C.unshift(X(A.x+A.points[0][0],A.y+A.points[0][1]));for(let D of g)D.index+=i?2:1}if(o===-1&&E===A.points.length-1){let f=Hh(r);C.push(X(f?I[0]:A.x+A.points[A.points.length-1][0],f?A.y+A.points[A.points.length-1][1]:I[1])),u&&C.push(X(A.x+A.points[A.points.length-1][0],A.y+A.points[A.points.length-1][1]))}return X1(C,g.map((f)=>({...f,start:X(f.start[0]-A.x,f.start[1]-A.y),end:X(f.end[0]-A.x,f.end[1]-A.y)})),!1,!1)},Bar=(A,e,t,r,i,u,a,n,o)=>{let s=A.startIsSpecial??null,l=A.endIsSpecial??null,g=e.map((I,h)=>h===0?X(A.x+I[0],A.y+I[1]):h===e.length-1?X(A.x+I[0],A.y+I[1]):X(A.x+A.points[h][0],A.y+A.points[h][1])),C=t.map((I)=>({...I,start:X(A.x+(I.start[0]-e[0][0]),A.y+(I.start[1]-e[0][1])),end:X(A.x+(I.end[0]-e[0][0]),A.y+(I.end[1]-e[0][1]))})),B=[],E=2+(s?1:0),d=2+(l?1:0);for(;B.length+E<g.length-d;)B.push(g[B.length+E]);{let I=g[s?2:1],h=g[s?3:2],Q=Hh(r),p=Hh(i2(Mt(I,h)));if(n&&Q===p){let m=Q?va(r,wa):va(r,Io);if(B.unshift(X(p?u[0]+(m?gu:-gu):h[0],p?h[1]:u[1]+(m?gu:-gu))),B.unshift(X(Q?u[0]+(m?gu:-gu):u[0],Q?u[1]:u[1]+(m?gu:-gu))),!s){s=!0;for(let f of C)f.index>1&&(f.index+=1)}}else if(B.unshift(X(p?u[0]:I[0],p?I[1]:u[1])),s){s=!1;for(let m of C)m.index>1&&(m.index-=1)}B.unshift(u)}{let I=g[g.length-(l?3:2)],h=g[g.length-(l?4:3)],Q=Hh(i),p=Th(h,I);if(o&&Q===p){let m=Q?va(i,wa):va(i,Io);B.push(X(p?a[0]+(m?gu:-gu):h[0],p?h[1]:a[1]+(m?gu:-gu))),B.push(X(Q?a[0]+(m?gu:-gu):a[0],Q?a[1]:a[1]+(m?gu:-gu))),l||(l=!0)}else B.push(X(p?a[0]:I[0],p?I[1]:a[1])),l&&(l=!1)}return B.push(a),X1(B,C.map(({index:I})=>({index:I,start:B[I-1],end:B[I]})).map((I)=>({...I,start:X(I.start[0]-u[0],I.start[1]-u[1]),end:X(I.end[0]-u[0],I.end[1]-u[1])})),s,l)},xu=1e6,JW=(A,e,t,r)=>{if(A.points.length<2)return{points:t.points??A.points};(A.x<-xu||A.x>xu||A.y<-xu||A.y>xu||A.x+(t?.points?.[t?.points?.length-1]?.[0]??0)<-xu||A.x+(t?.points?.[t?.points?.length-1]?.[0]??0)>xu||A.y+(t?.points?.[t?.points?.length-1]?.[1]??0)<-xu||A.y+(t?.points?.[t?.points?.length-1]?.[1]??0)>xu||A.x+(A?.points?.[A?.points?.length-1]?.[0]??0)<-xu||A.x+(A?.points?.[A?.points?.length-1]?.[0]??0)>xu||A.y+(A?.points?.[A?.points?.length-1]?.[1]??0)<-xu||A.y+(A?.points?.[A?.points?.length-1]?.[1]??0)>xu)&&console.error("Elbow arrow (or update) is outside reasonable bounds (> 1e6)",{arrow:A,updates:t}),A.x=Vr(A.x,-xu,xu),A.y=Vr(A.y,-xu,xu),t.points&&(t.points=t.points.map(([h,Q])=>X(Vr(h,-xu,xu),Vr(Q,-xu,xu)))),Qr.PROD||(fn(!t.points||t.points.length>=2,"Updated point array length must match the arrow point length, contain exactly the new start and end points or not be specified at all (i.e. you can't add new points between start and end manually to elbow arrows)"),fn(!A.fixedSegments||A.fixedSegments.map((h)=>h.start[0]===h.end[0]||h.start[1]===h.end[1]).every(Boolean),"Fixed segments must be either horizontal or vertical"),fn(!t.fixedSegments||t.fixedSegments.map((h)=>h.start[0]===h.end[0]||h.start[1]===h.end[1]).every(Boolean),"Updates to fixed segments must be either horizontal or vertical"),fn(A.points.slice(1).map((h,Q)=>h[0]===A.points[Q][0]||h[1]===A.points[Q][1]),"Elbow arrow segments must be either horizontal or vertical"));let i=t.points?t.points&&t.points.length===2?A.points.map((h,Q)=>Q===0?t.points[0]:Q===A.points.length-1?t.points[1]:h):t.points.slice():A.points.slice(),u=typeof t.startBinding<"u"?t.startBinding:A.startBinding,a=typeof t.endBinding<"u"?t.endBinding:A.endBinding,n=u&&F9(u.elementId,e),o=a&&F9(a.elementId,e);if(e.size===0&&vQA(i)||n?.id!==u?.elementId||o?.id!==a?.elementId)return X1(i.map((h)=>X(A.x+h[0],A.y+h[1])),A.fixedSegments,A.startIsSpecial,A.endIsSpecial);let{startHeading:s,endHeading:l,startGlobalPoint:g,endGlobalPoint:C,hoveredStartElement:B,hoveredEndElement:E,...d}=DQA({x:A.x,y:A.y,startBinding:u,endBinding:a,startArrowhead:A.startArrowhead,endArrowhead:A.endArrowhead,points:A.points},e,i,n,o,r),I=t.fixedSegments??A.fixedSegments??[];return!t.points&&!t.fixedSegments&&!t.startBinding&&!t.endBinding?gar(A,e):t.startBinding===A.startBinding&&t.endBinding===A.endBinding&&(t.points??[]).every((h,Q)=>nB(h,A.points[Q]??X(1/0,1/0)))?{}:I.length===0?X1(wQA(bQA(yQA(A,{startHeading:s,endHeading:l,startGlobalPoint:g,endGlobalPoint:C,hoveredStartElement:B,hoveredEndElement:E,...d})??[])),I,null,null):(A.fixedSegments?.length??0)>I.length?car(A,I,e):t.points?t.points&&t.fixedSegments?t:Bar(A,i,I,s,l,g,C,B,E):Car(A,I,s,l,B,E)},DQA=(A,e,t,r,i,u)=>{let a=k_(t[0],Oo(A.x,A.y)),n=k_(t[t.length-1],Oo(A.x,A.y)),o=r,s=i;if(u?.isDragging){let w=Array.from(e.values());o=lde(a,e,w,u?.zoom)||r,s=lde(n,e,w,u?.zoom)||i}let l=ode({...A,elbowed:!0,points:t},"start",A.startBinding?.fixedPoint,a,r,o,u?.isDragging),g=ode({...A,elbowed:!0,points:t},"end",A.endBinding?.fixedPoint,n,i,s,u?.isDragging),C=sde(l,g,e,o,a),B=sde(g,l,e,s,n),E=[l[0]-2,l[1]-2,l[0]+2,l[1]+2],d=[g[0]-2,g[1]-2,g[0]+2,g[1]+2],I=o?iB(o,M1(C,A.startArrowhead?Lu*6:Lu*2,1)):E,h=s?iB(s,M1(B,A.endArrowhead?Lu*6:Lu*2,1)):d,Q=b9(l,s?iB(s,M1(B,gu,gu)):d)||b9(g,o?iB(o,M1(C,gu,gu)):E),p=U4e(Q?[E,d]:[I,h]),m=Iar(Q?E:I,Q?d:h,p,Q?M1(C,!o&&!s?0:gu,0):M1(C,!o&&!s?0:gu-(A.startArrowhead?Lu*6:Lu*2),gu),Q?M1(B,!o&&!s?0:gu,0):M1(B,!o&&!s?0:gu-(A.endArrowhead?Lu*6:Lu*2),gu),Q,o&&iB(o),s&&iB(s)),f=nde(m[0],C,l),D=nde(m[1],B,g);return{dynamicAABBs:m,startDonglePosition:f,startGlobalPoint:l,startHeading:C,endDonglePosition:D,endGlobalPoint:g,endHeading:B,commonBounds:p,hoveredStartElement:o,hoveredEndElement:s,boundsOverlap:Q,startElementBounds:I,endElementBounds:h}},yQA=(A,e)=>{let{dynamicAABBs:t,startDonglePosition:r,startGlobalPoint:i,startHeading:u,endDonglePosition:a,endGlobalPoint:n,endHeading:o,commonBounds:s,hoveredEndElement:l}=e,g=har(t,r||i,u,a||n,o,s),C=r&&p_(r,g),B=a&&p_(a,g),E=p_(n,g);E&&l&&(E.closed=!0);let d=p_(i,g);d&&A.startBinding&&(d.closed=!0);let I=C&&B&&(b9(C.pos,t[1])||b9(B.pos,t[0])),h=Ear(C||d,B||E,g,u||wa,o||wa,I?[]:t);if(h){let Q=h.map((p)=>[p.pos[0],p.pos[1]]);return C&&Q.unshift(i),B&&Q.push(n),Q}return null},M1=(A,e,t)=>{switch(A){case Ks:return[e,t,t,t];case wa:return[t,e,t,t];case Io:return[t,t,e,t]}return[t,t,t,e]},Ear=(A,e,t,r,i,u)=>{let a=$dA(A.pos,e.pos),n=new lar((o)=>o.f);for(n.push(A);n.size()>0;){let o=n.pop();if(!o||o.closed)continue;if(o===e)return dar(A,o);o.closed=!0;let s=par(o.addr,t);for(let l=0;l<4;l++){let g=s[l];if(!g||g.closed)continue;let C=Uh(g.pos,o.pos,0.5);if(i$t(...u.map((p)=>b9(C,p))))continue;let B=far(l),E=o.parent?i2(Mt(o.pos,o.parent.pos)):r,d=YQe(E);if(va(d,B)||gde(A.addr,g.addr)&&va(B,r)||gde(e.addr,g.addr)&&va(B,i))continue;let I=E!==B,h=o.g+$dA(g.pos,o.pos)+(I?Math.pow(a,3):0),Q=g.visited;if(!Q||h<g.g){let p=Qar(g,e,B,i);g.visited=!0,g.parent=o,g.h=$dA(e.pos,g.pos)+p*Math.pow(a,2),g.g=h,g.f=g.g+g.h,Q?n.rescoreElement(g):n.push(g)}}}return null},dar=(A,e)=>{let t=e,r=[];for(;t.parent;)r.unshift(t),t=t.parent;return r.unshift(A),r},$dA=(A,e)=>Math.abs(A[0]-e[0])+Math.abs(A[1]-e[1]),Iar=(A,e,t,r,i,u,a,n)=>{let o=a??A,s=n??e,[l,g,C,B]=r??[0,0,0,0],[E,d,I,h]=i??[0,0,0,0],Q=[A[0]>e[2]?A[1]>e[3]||A[3]<e[1]?Math.min((o[0]+s[2])/2,A[0]-B):(o[0]+s[2])/2:A[0]>e[0]?A[0]-B:t[0]-B,A[1]>e[3]?A[0]>e[2]||A[2]<e[0]?Math.min((o[1]+s[3])/2,A[1]-l):(o[1]+s[3])/2:A[1]>e[1]?A[1]-l:t[1]-l,A[2]<e[0]?A[1]>e[3]||A[3]<e[1]?Math.max((o[2]+s[0])/2,A[2]+g):(o[2]+s[0])/2:A[2]<e[2]?A[2]+g:t[2]+g,A[3]<e[1]?A[0]>e[2]||A[2]<e[0]?Math.max((o[3]+s[1])/2,A[3]+C):(o[3]+s[1])/2:A[3]<e[3]?A[3]+C:t[3]+C],p=[e[0]>A[2]?e[1]>A[3]||e[3]<A[1]?Math.min((s[0]+o[2])/2,e[0]-h):(s[0]+o[2])/2:e[0]>A[0]?e[0]-h:t[0]-h,e[1]>A[3]?e[0]>A[2]||e[2]<A[0]?Math.min((s[1]+o[3])/2,e[1]-E):(s[1]+o[3])/2:e[1]>A[1]?e[1]-E:t[1]-E,e[2]<A[0]?e[1]>A[3]||e[3]<A[1]?Math.max((s[2]+o[0])/2,e[2]+d):(s[2]+o[0])/2:e[2]<A[2]?e[2]+d:t[2]+d,e[3]<A[1]?e[0]>A[2]||e[2]<A[0]?Math.max((s[3]+o[1])/2,e[3]+I):(s[3]+o[1])/2:e[3]<A[3]?e[3]+I:t[3]+I],m=U4e([Q,p]);if(!u&&Q[2]-Q[0]+p[2]-p[0]>m[2]-m[0]+0.00000000001&&Q[3]-Q[1]+p[3]-p[1]>m[3]-m[1]+0.00000000001){let[f,D]=[(p[0]+p[2])/2,(p[1]+p[3])/2];if(e[0]>A[2]&&A[1]>e[3]){let w=Q[2]+(p[0]-Q[2])/2,b=p[3]+(Q[1]-p[3])/2;return Eo(Oo(A[2]-f,A[1]-D),Oo(A[0]-f,A[3]-D))>0?[[Q[0],Q[1],w,Q[3]],[w,p[1],p[2],p[3]]]:[[Q[0],b,Q[2],Q[3]],[p[0],p[1],p[2],b]]}else if(A[2]<e[0]&&A[3]<e[1]){let w=Q[2]+(p[0]-Q[2])/2,b=Q[3]+(p[1]-Q[3])/2;return Eo(Oo(A[0]-f,A[1]-D),Oo(A[2]-f,A[3]-D))>0?[[Q[0],Q[1],Q[2],b],[p[0],b,p[2],p[3]]]:[[Q[0],Q[1],w,Q[3]],[w,p[1],p[2],p[3]]]}else if(A[0]>e[2]&&A[3]<e[1]){let w=p[2]+(Q[0]-p[2])/2,b=Q[3]+(p[1]-Q[3])/2;return Eo(Oo(A[2]-f,A[1]-D),Oo(A[0]-f,A[3]-D))>0?[[w,Q[1],Q[2],Q[3]],[p[0],p[1],w,p[3]]]:[[Q[0],Q[1],Q[2],b],[p[0],b,p[2],p[3]]]}else if(A[0]>e[2]&&A[1]>e[3]){let w=p[2]+(Q[0]-p[2])/2,b=p[3]+(Q[1]-p[3])/2;return Eo(Oo(A[0]-f,A[1]-D),Oo(A[2]-f,A[3]-D))>0?[[w,Q[1],Q[2],Q[3]],[p[0],p[1],w,p[3]]]:[[Q[0],b,Q[2],Q[3]],[p[0],p[1],p[2],b]]}}return[Q,p]},har=(A,e,t,r,i,u)=>{let a=new Set,n=new Set;t===Hs||t===wa?n.add(e[1]):a.add(e[0]),i===Hs||i===wa?n.add(r[1]):a.add(r[0]),A.forEach((l)=>{a.add(l[0]),a.add(l[2]),n.add(l[1]),n.add(l[3])}),a.add(u[0]),a.add(u[2]),n.add(u[1]),n.add(u[3]);let o=Array.from(n).sort((l,g)=>l-g),s=Array.from(a).sort((l,g)=>l-g);return{row:o.length,col:s.length,data:o.flatMap((l,g)=>s.map((C,B)=>({f:0,g:0,h:0,closed:!1,visited:!1,parent:null,addr:[B,g],pos:[C,l]})))}},nde=(A,e,t)=>{switch(e){case Ks:return X(t[0],A[1]);case wa:return X(A[2],t[1]);case Io:return X(t[0],A[3])}return X(A[0],t[1])},Qar=(A,e,t,r)=>{if(r===wa)switch(t){case wa:return A.pos[0]>=e.pos[0]?4:A.pos[1]===e.pos[1]?0:2;case Ks:return A.pos[1]>e.pos[1]&&A.pos[0]<e.pos[0]?1:3;case Io:return A.pos[1]<e.pos[1]&&A.pos[0]<e.pos[0]?1:3;case Hs:return A.pos[1]===e.pos[1]?4:2}else if(r===Hs)switch(t){case wa:return A.pos[1]===e.pos[1]?4:2;case Ks:return A.pos[1]>e.pos[1]&&A.pos[0]>e.pos[0]?1:3;case Io:return A.pos[1]<e.pos[1]&&A.pos[0]>e.pos[0]?1:3;case Hs:return A.pos[0]<=e.pos[0]?4:A.pos[1]===e.pos[1]?0:2}else if(r===Ks)switch(t){case wa:return A.pos[1]>e.pos[1]&&A.pos[0]<e.pos[0]?1:3;case Ks:return A.pos[1]>=e.pos[1]?4:A.pos[0]===e.pos[0]?0:2;case Io:return A.pos[0]===e.pos[0]?4:2;case Hs:return A.pos[1]>e.pos[1]&&A.pos[0]>e.pos[0]?1:3}else if(r===Io)switch(t){case wa:return A.pos[1]<e.pos[1]&&A.pos[0]<e.pos[0]?1:3;case Ks:return A.pos[0]===e.pos[0]?4:2;case Io:return A.pos[1]<=e.pos[1]?4:A.pos[0]===e.pos[0]?0:2;case Hs:return A.pos[1]<e.pos[1]&&A.pos[0]>e.pos[0]?1:3}return 0},par=([A,e],t)=>[b8([A,e-1],t),b8([A+1,e],t),b8([A,e+1],t),b8([A-1,e],t)],b8=([A,e],t)=>A<0||A>=t.col||e<0||e>=t.row?null:t.data[e*t.col+A]??null,p_=(A,e)=>{for(let t=0;t<e.col;t++)for(let r=0;r<e.row;r++){let i=b8([t,r],e);if(i&&A[0]===i.pos[0]&&A[1]===i.pos[1])return i}return null},U4e=(A)=>[Math.min(...A.map((e)=>e[0])),Math.min(...A.map((e)=>e[1])),Math.max(...A.map((e)=>e[2])),Math.max(...A.map((e)=>e[3]))],F9=(A,e)=>{let t=e.get(A);return t&&Yc(t)?t:null},X1=(A,e,t,r)=>{let i=A[0][0],u=A[0][1],a=A.map((n)=>k_(n,ba(Mt(A[0]),-1)));return(i<-xu||i>xu||u<-xu||u>xu||i+a[a.length-1][0]<-xu||u+a[a.length-1][0]>xu||i+a[a.length-1][1]<-xu||u+a[a.length-1][1]>xu)&&console.error("Elbow arrow normalization is outside reasonable bounds (> 1e6)",{x:i,y:u,points:a,...u2(a)}),a=a.map(([n,o])=>X(Vr(n,-1e6,1e6),Vr(o,-1e6,1e6))),{points:a,x:Vr(i,-1e6,1e6),y:Vr(u,-1e6,1e6),fixedSegments:(e?.length??0)>0?e:null,...u2(a),startIsSpecial:t,endIsSpecial:r}},wQA=(A)=>{if(A.length>1){let e=Math.abs(A[0][1]-A[1][1])<Math.abs(A[0][0]-A[1][0]);return A.filter((t,r)=>{if(r===0||r===A.length-1)return!0;let i=A[r+1],u=Math.abs(t[1]-i[1])<Math.abs(t[0]-i[0]);return e===u?(e=u,!1):(e=u,!0)})}return A},bQA=(A)=>A.length>=4?A.filter((e,t)=>{if(t===0||t===A.length-1)return!0;let r=A[t-1];return Li(r,e)>mQA}):A,far=(A)=>{switch(A){case 0:return Ks;case 1:return wa;case 2:return Io}return Hs},ode=(A,e,t,r,i,u,a)=>{if(a){if(u){let n=v9(A,u,e);return Qur(u,n)}return r}if(i){let n=sIA(t||[0,0],i);return Math.abs(fW(i,n)-Lu)>0.01?v9(A,i,e):n}return r},sde=(A,e,t,r,i)=>Eur(A,e,r,r&&iB(r,Array(4).fill(fW(r,A))),t,i),lde=(A,e,t,r)=>Hc(Nc(A),t,e,r,!0,!0),gde=(A,e)=>A[0]===e[0]&&A[1]===e[1],vQA=(A,e=mQA)=>A.slice(1).map((t,r)=>Math.abs(t[0]-A[r][0])<e||Math.abs(t[1]-A[r][1])<e).every(Boolean),mar,Dar=(A)=>Object.keys(aa).includes(A)?aa[A]:Oh,C9=(A,e)=>{if(!e)return null;let t=e.focus||0;return ft(A)?L_(e)?{...e,focus:t,fixedPoint:kW(e.fixedPoint??[0,0])}:null:{...e,focus:t}},T1=(A,e)=>{let t={type:e.type||A.type,version:A.version||1,versionNonce:A.versionNonce??0,index:A.index??null,isDeleted:A.isDeleted??!1,id:A.id||Lg(),fillStyle:A.fillStyle||Ta.fillStyle,strokeWidth:A.strokeWidth||Ta.strokeWidth,strokeStyle:A.strokeStyle??Ta.strokeStyle,roughness:A.roughness??Ta.roughness,opacity:A.opacity==null?Ta.opacity:A.opacity,angle:A.angle||0,x:e.x??A.x??0,y:e.y??A.y??0,strokeColor:A.strokeColor||Ta.strokeColor,backgroundColor:A.backgroundColor||Ta.backgroundColor,width:A.width||0,height:A.height||0,seed:A.seed??1,groupIds:A.groupIds??[],frameId:A.frameId??null,roundness:A.roundness?A.roundness:A.strokeSharpness==="round"?{type:d2(A.type)?mn.LEGACY:mn.PROPORTIONAL_RADIUS}:null,boundElements:A.boundElementIds?A.boundElementIds.map((r)=>({type:"arrow",id:r})):A.boundElements??[],updated:A.updated??G9(),link:A.link?Ml(A.link):null,locked:A.locked??!1};return(("customData"in A)||("customData"in e))&&(t.customData=("customData"in e)?e.customData:A.customData),{...A,...t,...TQA(t),...e}},yar=(A)=>{switch(A={...A},A.type){case"text":delete A.rawText;let e=A.fontSize,t=A.fontFamily;if("font"in A){let[l,g]=A.font.split(" ");e=parseFloat(l),t=Dar(g)}let r=typeof A.text=="string"&&A.text||"",i=A.lineHeight||(A.height?n$t(A):op(A.fontFamily));return A=T1(A,{fontSize:e,fontFamily:t,text:r,textAlign:A.textAlign||S9,verticalAlign:A.verticalAlign||J8,containerId:A.containerId??null,originalText:A.originalText||r,autoResize:A.autoResize??!0,lineHeight:i}),!r&&!A.isDeleted&&(A={...A,originalText:r,isDeleted:!0},A=DS(A)),A;case"freedraw":return T1(A,{points:A.points,lastCommittedPoint:null,simulatePressure:A.simulatePressure,pressures:A.pressures});case"image":return T1(A,{status:A.status||"pending",fileId:A.fileId,scale:A.scale||[1,1],crop:A.crop??null});case"line":case"draw":let{startArrowhead:u=null,endArrowhead:a=null}=A,n=A.x,o=A.y,s=!Array.isArray(A.points)||A.points.length<2?[X(0,0),X(A.width,A.height)]:A.points;return(s[0][0]!==0||s[0][1]!==0)&&({points:s,x:n,y:o}=ht.getNormalizedPoints(A)),T1(A,{type:A.type==="draw"?"line":A.type,startBinding:C9(A,A.startBinding),endBinding:C9(A,A.endBinding),lastCommittedPoint:null,startArrowhead:u,endArrowhead:a,points:s,x:n,y:o,...u2(s)});case"arrow":{let{startArrowhead:l=null,endArrowhead:g="arrow"}=A,C=A.x,B=A.y,E=!Array.isArray(A.points)||A.points.length<2?[X(0,0),X(A.width,A.height)]:A.points;(E[0][0]!==0||E[0][1]!==0)&&({points:E,x:C,y:B}=ht.getNormalizedPoints(A));let d={type:A.type,startBinding:C9(A,A.startBinding),endBinding:C9(A,A.endBinding),lastCommittedPoint:null,startArrowhead:l,endArrowhead:g,points:E,x:C,y:B,elbowed:A.elbowed,...u2(E)};return ft(A)?T1(A,{...d,elbowed:!0,startBinding:C9(A,A.startBinding),endBinding:C9(A,A.endBinding),fixedSegments:A.fixedSegments,startIsSpecial:A.startIsSpecial,endIsSpecial:A.endIsSpecial}):T1(A,d)}case"ellipse":case"rectangle":case"diamond":case"iframe":case"embeddable":return T1(A,{});case"magicframe":case"frame":return T1(A,{name:A.name??null})}return null},war=(A,e)=>{if(A.boundElements){let t=A.boundElements.slice(),r=new Set;A.boundElements=t.reduce((i,u)=>{let a=e.get(u.id);if(a&&!r.has(u.id)){if(r.add(u.id),a.isDeleted)return i;i.push(u),Et(a)&&!a.containerId&&(a.containerId=A.id)}return i},[])}},bar=(A,e)=>{let t=A.containerId?e.get(A.containerId):null;if(!t){A.containerId=null;return}if(!A.isDeleted&&t.boundElements&&!t.boundElements.find((r)=>r.id===A.id)){let r=(t.boundElements||(t.boundElements=[])).slice();r.push({type:"text",id:A.id}),t.boundElements=r}},kar=(A,e)=>{A.frameId&&(e.get(A.frameId)||(A.frameId=null))},OW=(A,e,t)=>{let r=new Set,i=e?ar(e):null,u=Sd((A||[]).reduce((n,o)=>{if(o.type!=="selection"&&!y2(o)){let s=yar(o);if(s){let l=i?.get(o.id);l&&l.version>s.version&&(s=DS(s,l.version)),r.has(s.id)&&(s={...s,id:Lg()}),r.add(s.id),n.push(s)}}return n},[]));if(!t?.repairBindings)return u;let a=ar(u);for(let n of u)n.frameId&&kar(n,a),Et(n)&&n.containerId?bar(n,a):n.boundElements&&war(n,a),t.refreshDimensions&&Et(n)&&Object.assign(n,uQA(n,Qo(n,a),a)),Nr(n)&&(n.startBinding&&(!a.has(n.startBinding.elementId)||!Kr(n))&&(n.startBinding=null),n.endBinding&&(!a.has(n.endBinding.elementId)||!Kr(n))&&(n.endBinding=null));return u.map((n)=>{if(ft(n)&&n.startBinding==null&&n.endBinding==null&&!vQA(n.points))return{...n,...JW(n,a,{points:[X(0,0),n.points[n.points.length-1]]}),index:n.index};if(ft(n)&&n.startBinding&&n.endBinding&&n.startBinding.elementId===n.endBinding.elementId&&n.points.length>1&&n.points.some(([o,s])=>Math.abs(o)>1e6||Math.abs(s)>1e6)){console.error("Fixing self-bound elbow arrow",n.id);let o=a.get(n.startBinding.elementId);return o?{...n,x:o.x+o.width/2,y:o.y-5,width:o.width,height:o.height,points:[X(0,0),X(0,-10),X(o.width/2+5,-10),X(o.width/2+5,o.height/2+5)]}:(console.error("Bound element not found",n.startBinding.elementId),n)}return n})},Far=(A,e,t)=>{let r=e[A];return r!==void 0?r:t[A]},cde,M4e=(A,e)=>{A=A||{};let t=EB(),r={};for(let i of Object.keys(cde))if(i in A){let[u,a]=cde[i](A,t);r[u]=a}for(let[i,u]of Object.entries(t)){let a=A[i],n=e?e[i]:void 0;r[i]=a!==void 0?a:n!==void 0?n:u}return{...r,cursorButton:e?.cursorButton||"up",penDetected:e?.penDetected??(A.penMode?A.penDetected??!1:!1),activeTool:{...un(t,r.activeTool.type&&mar[r.activeTool.type]?r.activeTool:{type:"selection"}),lastActiveTool:null,locked:r.activeTool.locked??!1},zoom:{value:Fd(f9(A.zoom)?A.zoom:A.zoom?.value??t.zoom.value)},openSidebar:typeof A.openSidebar=="string"?{name:Kc.name}:r.openSidebar,gridSize:vur(f9(A.gridSize)?A.gridSize:P8),gridStep:_hA(f9(A.gridStep)?A.gridStep:Ode),editingFrame:null}},hS=(A,e,t,r)=>({elements:OW(A?.elements,t,r),appState:M4e(A?.appState,e||null),files:A?.files||{}}),Cde=(A)=>{let e=OW(fu(A.elements),null);return e.length?{...A,elements:e}:null},PW=(A=[],e)=>{let t=[];for(let r of A)if(Array.isArray(r)){let i=Cde({status:e,elements:r,id:Lg(),created:Date.now()});i&&t.push(i)}else{let i=r,u=Cde({...i,id:i.id||Lg(),status:i.status||e,created:i.created||Date.now()});u&&t.push(u)}return t},uB=32,Su=12,q1=256,T4e=50,Xm="NOT_SPREADSHEET",Y8="VALID_SPREADSHEET",v8=(A)=>{let e=/^([-+]?)[$€£¥₩]?([-+]?)([\d.,]+)[%]?$/.exec(A);return e?parseFloat(`${(e[1]||e[2])+e[3]}`.replace(/,/g,"")):null},AIA=(A,e)=>A.slice(1).every((t)=>v8(t[e])!==null),Bde=(A)=>{let e=A[0].length;if(e>2)return{type:Xm,reason:"More than 2 columns"};if(e===1){if(!AIA(A,0))return{type:Xm,reason:"Value is not numeric"};let o=v8(A[0][0])===null,s=(o?A.slice(1):A).map((l)=>v8(l[0]));return s.length<2?{type:Xm,reason:"Less than two rows"}:{type:Y8,spreadsheet:{title:o?A[0][0]:null,labels:null,values:s}}}let t=AIA(A,0),r=AIA(A,1);if(!t&&!r)return{type:Xm,reason:"Value is not numeric"};let[i,u]=r?[0,1]:[1,0],a=v8(A[0][u])===null,n=a?A.slice(1):A;return n.length<2?{type:Xm,reason:"Less than 2 rows"}:{type:Y8,spreadsheet:{title:a?A[0][u]:null,labels:n.map((o)=>o[i]),values:n.map((o)=>v8(o[u]))}}},xar=(A)=>{let e=[];for(let t=0;t<A[0].length;t++){let r=[];for(let i=0;i<A.length;i++)r.push(A[i][t]);e.push(r)}return e},Sar=(A)=>{let e=A.trim().split(`
|
||
`).map((i)=>i.trim().split("\t"));if(e.length&&e[0].length!==2&&(e=A.trim().split(`
|
||
`).map((i)=>i.trim().split(","))),e.length===0)return{type:Xm,reason:"No values"};let t=e[0].length;if(!e.every((i)=>i.length===t))return{type:Xm,reason:"All rows don't have same number of columns"};let r=Bde(e);if(r.type!==Y8){let i=Bde(xar(e));if(i.type===Y8)return i}return r},H_,Uc,Y4e=(A)=>{let e=(uB+Su)*A.values.length+Su,t=q1+Su*2;return{chartWidth:e,chartHeight:t}},Lar=(A,e,t,r,i)=>A.labels?.map((u,a)=>Tl({groupIds:[r],backgroundColor:i,...Uc,text:u.length>8?`${u.slice(0,5)}...`:u,x:e+a*(uB+Su)+Su*2,y:t+Su/2,width:uB,angle:5.87,fontSize:16,textAlign:"center",verticalAlign:"top"}))||[],Rar=(A,e,t,r,i)=>{let u=Tl({groupIds:[r],backgroundColor:i,...Uc,x:e-Su,y:t-Su,text:"0",textAlign:"right"}),a=Tl({groupIds:[r],backgroundColor:i,...Uc,x:e-Su,y:t-q1-u.height/2,text:Math.max(...A.values).toLocaleString(),textAlign:"right"});return[u,a]},Nar=(A,e,t,r,i)=>{let{chartWidth:u,chartHeight:a}=Y4e(A),n=W1({backgroundColor:i,groupIds:[r],...Uc,type:"line",x:e,y:t,width:u,points:[X(0,0),X(u,0)]}),o=W1({backgroundColor:i,groupIds:[r],...Uc,type:"line",x:e,y:t,height:a,points:[X(0,0),X(0,-a)]}),s=W1({backgroundColor:i,groupIds:[r],...Uc,type:"line",x:e,y:t-q1-Su,strokeStyle:"dotted",width:u,opacity:T4e,points:[X(0,0),X(u,0)]});return[n,o,s]},H4e=(A,e,t,r,i,u)=>{let{chartWidth:a,chartHeight:n}=Y4e(A),o=A.title?Tl({backgroundColor:i,groupIds:[r],...Uc,text:A.title,x:e+a/2,y:t-q1-Su*2-wd,roundness:null,textAlign:"center"}):null,s=u?pB({backgroundColor:i,groupIds:[r],...Uc,type:"rectangle",x:e,y:t-n,width:a,height:n,strokeColor:zr.black,fillStyle:"solid",opacity:6}):null;return[...s?[s]:[],...o?[o]:[],...Lar(A,e,t,r,i),...Rar(A,e,t,r,i),...Nar(A,e,t,r,i)]},Gar=(A,e,t)=>{let r=Math.max(...A.values),i=Lg(),u=H_[Math.floor(Math.random()*H_.length)];return[...A.values.map((a,n)=>{let o=a/r*q1;return pB({backgroundColor:u,groupIds:[i],...Uc,type:"rectangle",x:e+n*(uB+Su)+Su,y:t-o-Su,width:uB,height:o})}),...H4e(A,e,t,i,u,Qr.DEV)]},Uar=(A,e,t)=>{let r=Math.max(...A.values),i=Lg(),u=H_[Math.floor(Math.random()*H_.length)],a=0,n=[];for(let d of A.values){let I=a*(uB+Su),h=-(d/r)*q1;n.push([I,h]),a++}let o=Math.max(...n.map((d)=>d[0])),s=Math.max(...n.map((d)=>d[1])),l=Math.min(...n.map((d)=>d[0])),g=Math.min(...n.map((d)=>d[1])),C=W1({backgroundColor:u,groupIds:[i],...Uc,type:"line",x:e+Su+uB/2,y:t-Su,height:s-g,width:o-l,strokeWidth:2,points:n}),B=A.values.map((d,I)=>{let h=I*(uB+Su)+Su/2,Q=-(d/r)*q1+Su/2;return pB({backgroundColor:u,groupIds:[i],...Uc,fillStyle:"solid",strokeWidth:2,type:"ellipse",x:e+h+uB/2,y:t+Q-Su*2,width:Su,height:Su})}),E=A.values.map((d,I)=>{let h=I*(uB+Su)+Su/2,Q=d/r*q1+Su/2+Su;return W1({backgroundColor:u,groupIds:[i],...Uc,type:"line",x:e+h+uB/2+Su/2,y:t-Q,height:Q,strokeStyle:"dotted",opacity:T4e,points:[X(0,0),X(0,Q)]})});return[...H4e(A,e,t,i,u,Qr.DEV),C,...E,...B]},K4e=(A,e,t,r)=>A==="line"?Uar(e,t,r):Gar(e,t,r),_yi,_W,WW,Mar=(A)=>!!([Fg.excalidraw,Fg.excalidrawClipboard,Fg.excalidrawClipboardWithAPI].includes(A?.type)&&Array.isArray(A.elements)),J4e=({types:A,files:e})=>{!A&&!e&&console.warn("createPasteEvent: no types or files provided");let t=new ClipboardEvent("paste",{clipboardData:new DataTransfer});if(A)for(let[r,i]of Object.entries(A)){if(typeof i!="string"){e=e||[],e.push(i);continue}try{if(t.clipboardData?.setData(r,i),t.clipboardData?.getData(r)!==i)throw Error(`Failed to set "${r}" as clipboardData item`)}catch(u){throw Error(u.message)}}if(e){let r=-1;for(let i of e){r++;try{if(t.clipboardData?.items.add(i),t.clipboardData?.files[r]!==i)throw Error(`Failed to set file "${i.name}" as clipboardData item`)}catch(u){throw Error(u.message)}}}return t},Tar=({elements:A,files:e})=>{let t=ar(A),r=new Set(A.filter((n)=>nr(n))),i=!1,u=A.reduce((n,o)=>(Ng(o)&&(i=!0,e&&e[o.fileId]&&(n[o.fileId]=e[o.fileId])),n),{});i&&!e&&console.warn("copyToClipboard: attempting to file element(s) without providing associated `files` object.");let a={type:Fg.excalidrawClipboard,elements:A.map((n)=>{if(Ps(n,t)&&!r.has(Ps(n,t))){let o=gp(n);return Se(o,{frameId:null}),o}return n}),files:e?u:void 0};return JSON.stringify(a)},O4e=async(A,e,t)=>{await z9(Tar({elements:A,files:e}),t)},Yar=(A)=>{let e=Sar(A);return e.type===Y8?{spreadsheet:e.spreadsheet}:null},Har=(A)=>{let e=A.clipboardData?.getData(Xt.html);if(!e)return null;try{let t=new DOMParser().parseFromString(e,Xt.html),r=P4e(t.body);if(r.length)return{type:"mixedContent",value:r}}catch(t){console.error(`error in parseHTMLFromPaste: ${t.message}`)}return null},_4e=async()=>{let A={},e;try{e=await navigator.clipboard?.read()}catch(t){try{if(navigator.clipboard?.readText){console.warn(`navigator.clipboard.readText() failed (${t.message}). Failling back to navigator.clipboard.read()`);let r=await navigator.clipboard?.readText();if(r)return{[Xt.text]:r}}}catch(r){if(navigator.clipboard?.read)console.warn(`navigator.clipboard.readText() failed (${r.message}). Failling back to navigator.clipboard.read()`);else{if(r.name==="DataError")return console.warn(`navigator.clipboard.read() error, clipboard is probably empty: ${r.message}`),A;throw r}}throw t}for(let t of e)for(let r of t.types)if(TIA(RXt,r))try{if(r===Xt.text||r===Xt.html)A[r]=await(await t.getType(r)).text();else if(B1e(r)){let i=await t.getType(r),u=k8(i,r,void 0);A[r]=u}else throw new xEe(`Unsupported clipboard type: ${r}`)}catch(i){console.warn(i instanceof xEe?i.message:`Cannot retrieve ${r} from clipboardItem: ${i.message}`)}return Object.keys(A).length===0&&console.warn("No clipboard data found from clipboard.read()."),A},Kar=async(A,e=!1)=>{try{let t=!e&&A&&Har(A);return t?t.value.every((r)=>r.type==="text")?{type:"text",value:A.clipboardData?.getData(Xt.text)||t.value.map((r)=>r.value).join(`
|
||
`).trim()}:t:{type:"text",value:(A.clipboardData?.getData(Xt.text)||"").trim()}}catch{return{type:"text",value:""}}},kQA=async(A,e=!1)=>{let t=await Kar(A,e);if(t.type==="mixedContent")return{mixedContent:t.value};try{let r=!e&&Yar(t.value);if(r)return r}catch(r){console.error(r)}try{let r=JSON.parse(t.value),i=r.type===Fg.excalidrawClipboardWithAPI;if(Mar(r))return{elements:r.elements,files:r.files,text:e?JSON.stringify(r.elements,null,2):void 0,programmaticAPI:i}}catch{}return{text:t.value}},W4e=async(A)=>{try{await navigator.clipboard.write([new window.ClipboardItem({[Xt.png]:A})])}catch(e){if(U9(A))await navigator.clipboard.write([new window.ClipboardItem({[Xt.png]:await A})]);else throw e}},z9=async(A,e)=>{if(_W)try{await navigator.clipboard.writeText(A||"");return}catch(t){console.error(t)}try{if(e){if(e.clipboardData?.setData(Xt.text,A||""),e.clipboardData?.getData(Xt.text)!==A)throw Error("Failed to setData on clipboardEvent");return}}catch(t){console.error(t)}if(!Jar(A))throw Error("Error copying to clipboard.")},Jar=(A)=>{A||(A=" ");let e=document.documentElement.getAttribute("dir")==="rtl",t=document.createElement("textarea");t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[e?"right":"left"]="-9999px";let r=window.pageYOffset||document.documentElement.scrollTop;t.style.top=`${r}px`,t.style.fontSize="12pt",t.setAttribute("readonly",""),t.value=A,document.body.appendChild(t);let i=!1;try{t.select(),t.setSelectionRange(0,t.value.length),i=document.execCommand("copy")}catch(u){console.error(u)}return t.remove(),i},qW=({elements:A,appState:e,files:t,maxWidthOrHeight:r,getDimensions:i,exportPadding:u,exportingFrame:a})=>{let{elements:n,appState:o}=hS({elements:A,appState:e},null,null),{exportBackground:s,viewBackgroundColor:l}=o;return pQA(n,{...o,offsetTop:0,offsetLeft:0,width:0,height:0},t||{},{exportBackground:s,exportPadding:u,viewBackgroundColor:l,exportingFrame:a},(g,C)=>{let B=document.createElement("canvas");if(r){typeof i=="function"&&console.warn("`getDimensions()` is ignored when `maxWidthOrHeight` is supplied.");let d=Math.max(g,C),I=r<d?r/d:e?.exportScale??1;return B.width=g*I,B.height=C*I,{canvas:B,scale:I}}let E=i?.(g,C)||{width:g,height:C};return B.width=E.width,B.height=E.height,{canvas:B,scale:E.scale??1}})},QS=async({elements:A,appState:e=EB(),files:t={},exportPadding:r,renderEmbeddables:i,exportingFrame:u,skipInliningFonts:a,reuseImages:n})=>{let{elements:o,appState:s}=hS({elements:A,appState:e},null,null),l={...s,exportPadding:r};return KW(o,l,t,{exportingFrame:u,renderEmbeddables:i,skipInliningFonts:a,reuseImages:n})},Oar=(A)=>A.type==="diamond"?[X(A.width/2,0),X(A.width,A.height/2),X(A.width/2,A.height),X(0,A.height/2)]:[X(0,0),X(0+A.width,0),X(0+A.width,A.height),X(0,A.height)],Par=(A)=>Nr(A)||Tc(A)?A.points:Oar(A),Ede=(A)=>{let e=A.reduce((t,[r,i])=>(t.minY=Math.min(t.minY,i),t.minX=Math.min(t.minX,r),t.maxX=Math.max(t.maxX,r),t.maxY=Math.max(t.maxY,i),t),{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0,cx:0,cy:0});return e.cx=(e.maxX+e.minX)/2,e.cy=(e.maxY+e.minY)/2,e},q4e=(A)=>{let e=Par(A),{cx:t,cy:r}=Ede(e),i=X(t,r),u=e.map((l)=>ye(l,i,A.angle)),{minX:a,minY:n,maxX:o,maxY:s}=Ede(u);return[a+A.x,n+A.y,o+A.x,s+A.y]},CIA=(A,e,t=!1)=>{let r=q4e(A),i=e[0]<=r[0]&&e[2]>=r[2]&&e[1]<=r[1]&&e[3]>=r[3];return t?i?!0:r[0]<=e[0]&&r[2]>=e[2]&&r[1]<=e[1]&&r[3]>=e[3]:i},z4e=(A,e)=>{let t=q4e(A);return(d_(t[0],Z0(e[0],e[2]))||d_(e[0],Z0(t[0],t[2])))&&(d_(t[1],Z0(e[1],e[3]))||d_(e[1],Z0(t[1],t[3])))},Z4e=({elements:A,bounds:e,type:t,errorMargin:r=0})=>{OIA(e)&&(e=sB(e,ar(A)));let i=[e[0]-r,e[1]-r,e[2]+r,e[3]+r],u=new Set;for(let a of A){if(u.has(a.id))continue;if(t==="overlap"?z4e(a,i):t==="inside"?CIA(a,i):CIA(a,i,!0)){if(u.add(a.id),a.boundElements)for(let n of a.boundElements)u.add(n.id);Et(a)&&a.containerId&&u.add(a.containerId),Kr(a)&&(a.startBinding&&u.add(a.startBinding.elementId),a.endBinding&&u.add(a.endBinding?.elementId))}}return A.filter((a)=>u.has(a.id))},War=0.000001,FQA=(A,e,t)=>{let r=ar(A);for(let i of e)if(i.frameId){let u=t.get(i.id),a=t.get(i.frameId);if(u){let n=r.get(u);n&&Se(n,{frameId:a??i.frameId},!1)}}},V4e=(A,e,t)=>VW($W(A,e,t,!1)).filter((r)=>!nr(r)&&!r.frameId||r.frameId===e.id),SQA=(A,e,t)=>$W([e],A,t).some((r)=>r.id===e.id),Z9=(A,e,t)=>{let[r,i,u,a]=Rr(e,t),[n,o,s,l]=Pi(A);return r<=n&&i<=o&&u>=s&&a>=l},Kh=(A,e,t)=>Z9([A],e,t)||xQA(A,e,t)||SQA(A,e,t),LQA=(A,e,t)=>{let[r,i,u,a]=Rr(e,t);return nIe(X(r,i),X(A.x,A.y),X(u,a))},j4e=(A)=>{let e=new Map;for(let t of A){let r=nr(t)?t.id:t.frameId;r&&!e.has(r)&&e.set(r,mB(A,r))}return e},mB=(A,e)=>{let t=[];for(let r of A.values())r.frameId===e&&t.push(r);return t},zW=(A)=>A.filter((e)=>nr(e)),ZW=(A)=>{let e=ar(zW(A));return A.filter((t)=>e.has(t.id)||!t.frameId||!e.has(t.frameId))},pS=(A,e,t,r)=>{let i=mB(A,e.id),u=new Set(i),a=new Set([...V4e(A,e,r),...i.filter((C)=>SQA(C,e,r))]),n=i.filter((C)=>!a.has(C)),o=new Set(Array.from(a).flatMap((C)=>C.groupIds));for(let C of n)if(!xQA(C,e,r))C.groupIds.length===0&&u.delete(C);else if(C.groupIds.length>0)for(let B of C.groupIds)o.add(B);for(let C of n)if(C.groupIds.length>0){let B=!0;for(let E of C.groupIds)o.has(E)&&(B=!1);B&&u.delete(C)}let s=Array.from(a).filter((C)=>C.groupIds.length===0);for(let C of s)u.add(C);let l=Array.from(a).filter((C)=>C.groupIds.length>0),g=ZhA(l,t);for(let[C,B]of Object.entries(g))if(B){let E=Yu(A,C);if(Z9(E,e,r))for(let d of E)u.add(d)}return[...u].filter((C)=>!(Et(C)&&C.containerId))},X4e=(A,e,t)=>zar(VW(A,V4e(A,e,t)),e,t),zar=(A,e,t)=>{let r=[],i=new Map;for(let u of A){let a=!1;if(u.groupIds.length>0){if(u.groupIds.some((n)=>i.get(n)))a=!0;else{let n=new Set(u.groupIds.flatMap((o)=>Yu(t,o)));a=!Z9(Array.from(n),e,t)}u.groupIds.forEach((n)=>{i.set(n,a)})}a||r.push(u)}return r},Ps=(A,e)=>A.frameId&&e.get(A.frameId)||null,$4e=(A,e)=>{let t=new Set,r=ar(A);A=VW(A);for(let a of A)nr(a)&&a.id!==e.id&&t.add(a.id);let i=new Set,u=[];for(let a of A)if(!(nr(a)||a.frameId&&t.has(a.frameId)))if(a.groupIds.length){let n=a.groupIds.at(-1);if(!i.has(n)){i.add(n);let o=Yu(A,n);if(o.some((s)=>Kh(s,e,r)))for(let s of o)u.push(s)}}else Kh(a,e,r)&&u.push(a);return u},V9=(A,e,t,r)=>{let i=ar(A),u=new Map;for(let s of A.values())s.frameId===t.id&&u.set(s.id,!0);let a=new Set(e.map((s)=>s.id)),n=[],o=new Set;for(let s of e)nr(s)&&s.id!==t.id&&o.add(s.id);for(let s of VW(A,e)){if(nr(s)||s.frameId&&o.has(s.frameId)||s.frameId&&r.selectedElementIds[s.id]&&r.selectedElementIds[s.frameId])continue;u.has(s.id)||n.push(s);let l=Gr(s,i);l&&!a.has(l.id)&&!u.has(l.id)&&n.push(l)}for(let s of n)Se(s,{frameId:t.id},!1);return A},fS=(A,e)=>{let t=new Map,r=new Map;for(let i of A)if(i.frameId){t.set(i.id,i);let u=r.get(i.frameId)||[];u.push(i);let a=Gr(i,e);a&&(t.set(a.id,a),u.push(a)),r.set(i.frameId,u)}for(let[,i]of t)Se(i,{frameId:null},!1)},RQA=(A,e)=>{let t=mB(A,e.id);return fS(t,ar(A)),A},NQA=(A,e,t,r)=>V9(RQA(A,t),e,t,r.state).slice(),D2=(A,e,t)=>{let r=t.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,elements:A}),i=new Set(r);if(e.editingGroupId)for(let n of r)n.groupIds.length===0?i.add(n):n.groupIds.flatMap((o)=>Yu(A,o)).forEach((o)=>i.add(o));let u=new Set,a=ar(A);return i.forEach((n)=>{n.frameId&&!nr(n)&&!mS(n,a,e)&&u.add(n)}),u.size>0&&fS(u,a),A},VW=(A,e)=>{let t=new Set,r=e||A;for(let a of r.values()){let n=a.groupIds[a.groupIds.length-1];n&&t.add(n)}let i=new Set;for(let a of t)Yu(A,a).some((n)=>nr(n))&&i.add(a);let u=[];for(let a of r.values())i.has(a.groupIds[a.groupIds.length-1])||u.push(a);return u},BIA=(A,e,t)=>{let r=Et(A)&&Qo(A,e)||A;return r.frameId&&t.selectedElementIds[r.id]&&t.selectedElementIds[r.frameId]?Ps(r,e):t.selectedElementIds[r.id]&&t.selectedElementsAreBeingDragged?t.frameToHighlight:Ps(r,e)},mS=(A,e,t,r)=>{let i=r?.targetFrame??BIA(A,e,t);if(!i)return!1;let u=Et(A)&&Qo(A,e)||A,a=(o)=>{r?.checkedGroups&&u.groupIds.forEach((s)=>{r.checkedGroups?.set(s,o)})};if(!t.selectedElementIds[u.id]||!t.selectedElementsAreBeingDragged||t.selectedElementIds[u.id]&&t.selectedElementIds[i.id])return!0;if(u.groupIds.length===0)return Kh(u,i,e);for(let o of u.groupIds)if(r?.checkedGroups?.has(o))return r.checkedGroups.get(o);let n=new Set(u.groupIds.filter((o)=>r?.checkedGroups?!r.checkedGroups.has(o):!0).flatMap((o)=>Yu(e,o)));if(t.editingGroupId&&t.selectedElementsAreBeingDragged){let o=new Set(Jr(e,t));if(t.frameToHighlight!==null)return!0;o.forEach((s)=>{n.delete(s)})}for(let o of n)if(nr(o))return a(!1),!1;for(let o of n)if(Kh(o,i,e))return a(!0),!0;return!1},Qde=(A,e,t,r,i)=>{if(!t.frameRendering||!t.frameRendering.clip)return!1;let u=xQA(A,e,r)||SQA(A,e,r);if(u){for(let a of A.groupIds)i?.set(a,!0);return!0}if(!u&&A.groupIds.length>0&&!Z9([A],e,r)){let a=!1;if(t.selectedElementsAreBeingDragged)a=mS(A,r,t,{targetFrame:e,checkedGroups:i});else{a=A.frameId===e.id;for(let n of A.groupIds)i?.set(n,a)}for(let n of A.groupIds)i?.set(n,a);return a}return!1},GQA=(A)=>A.name===null?KIA(A)?"Frame":"AI Frame":A.name,jW=(A,e)=>Z4e({elements:A,bounds:e,type:"overlap"}).filter((t)=>!t.frameId||t.frameId===e.id),UQA=(A)=>{let e=ar(A);return A.length>1&&A.some((t)=>t.frameId&&e.has(t.frameId))},XW=(A)=>{let e=new Set;return A.forEach((t)=>{nr(t)&&e.add(t.id)}),A.filter((t)=>!(t.frameId&&e.has(t.frameId)))},$W=(A,e,t,r=!0)=>{let[i,u,a,n]=Rr(e,t),o=A.filter((s)=>{let[l,g,C,B]=sB(s,t),E=Ps(s,t);if(E){let[d,I,h,Q]=sB(E,t);l=Math.max(d,l),g=Math.max(I,g),C=Math.min(h,C),B=Math.min(Q,B)}return s.locked===!1&&s.type!=="selection"&&!Tu(s)&&i<=l&&u<=g&&a>=C&&n>=B});return o=r?XW(o):o,o=o.filter((s)=>{let l=Ps(s,t);return l?Kh(s,l,t):!0}),o},A1e=(A,e,t,r)=>{let i=new Set(e.map((u)=>u.id));return A.filter((u)=>{let a=yS(u,t.width,t.height,t,r);return!i.has(u.id)&&a})},yn,e1e=(A,e,t)=>{let r=Array.from(new Set(Jr(A,e).map((i)=>t(i))));return r.length===1?r[0]:null},Jr=(A,e,t)=>{let r=new Set,i=[];for(let u of A.values()){if(e.selectedElementIds[u.id]){i.push(u),r.add(u.id);continue}if(t?.includeBoundTextElement&&Tu(u)&&e.selectedElementIds[u?.containerId]){i.push(u),r.add(u.id);continue}}if(t?.includeElementsInFrames){let u=[];return i.forEach((a)=>{nr(a)&&mB(A,a.id).forEach((n)=>!r.has(n.id)&&u.push(n)),u.push(a)}),u}return i},MQA=(A,e)=>e.editingTextElement?[e.editingTextElement]:e.newElement?[e.newElement]:Jr(A,e,{includeBoundTextElement:!0}),Ni=(A,e)=>Po(e.selectedElementIds,A)?e.selectedElementIds:A,pde=(A)=>{let e=new Map,t=[];for(let r of A)r.isDeleted||(t.push(r),e.set(r.id,r));return{elementsMap:e,elements:t}},Zar,Var=(A)=>{let e=["includeBoundTextElement","includeElementsInFrames"],t="";for(let r of e)t+=`${r}:${A[r]?"1":"0"}`;return t},fde=(A)=>typeof A=="string",EIA=class A{constructor(){UA(this,"callbacks",new Set),UA(this,"nonDeletedElements",[]),UA(this,"nonDeletedElementsMap",Sg(new Map)),UA(this,"elements",[]),UA(this,"nonDeletedFramesLikes",[]),UA(this,"frames",[]),UA(this,"elementsMap",Sg(new Map)),UA(this,"selectedElementsCache",{selectedElementIds:null,elements:null,cache:new Map}),UA(this,"sceneNonce"),UA(this,"insertElement",(e)=>{let t=e.frameId?this.getElementIndex(e.frameId):this.elements.length;this.insertElementAtIndex(e,t)}),UA(this,"insertElements",(e)=>{if(!e.length)return;let t=e[0]?.frameId?this.getElementIndex(e[0].frameId):this.elements.length;this.insertElementsAtIndex(e,t)}),UA(this,"getContainerElement",(e)=>e&&e.containerId&&this.getElement(e.containerId)||null),UA(this,"getElementsFromId",(e)=>{let t=this.getNonDeletedElementsMap(),r=t.get(e);return r?[r]:Yu(t,e)})}static mapElementToScene(e,t){fde(e)?this.sceneMapById.set(e,t):(this.sceneMapByElement.set(e,t),this.sceneMapById.set(e.id,t))}static getScene(e){return fde(e)?this.sceneMapById.get(e)||null:this.sceneMapByElement.get(e)||null}getSceneNonce(){return this.sceneNonce}getNonDeletedElementsMap(){return this.nonDeletedElementsMap}getElementsIncludingDeleted(){return this.elements}getElementsMapIncludingDeleted(){return this.elementsMap}getNonDeletedElements(){return this.nonDeletedElements}getFramesIncludingDeleted(){return this.frames}getSelectedElements(e){let t=Var(e),r=e?.elements||this.nonDeletedElements;if(this.selectedElementsCache.elements===r&&this.selectedElementsCache.selectedElementIds===e.selectedElementIds){let u=this.selectedElementsCache.cache.get(t);if(u)return u}else e?.elements==null&&this.selectedElementsCache.cache.clear();let i=Jr(r,{selectedElementIds:e.selectedElementIds},e);return e?.elements==null&&(this.selectedElementsCache.selectedElementIds=e.selectedElementIds,this.selectedElementsCache.elements=this.nonDeletedElements,this.selectedElementsCache.cache.set(t,i)),i}getNonDeletedFramesLikes(){return this.nonDeletedFramesLikes}getElement(e){return this.elementsMap.get(e)||null}getNonDeletedElement(e){let t=this.getElement(e);return t&&iq(t)?t:null}mapElements(e){let t=!1,r=this.elements.map((i)=>{let u=e(i);return u!==i&&(t=!0),u});return t&&this.replaceAllElements(r),t}replaceAllElements(e){let t=e instanceof Array?e:Array.from(e.values()),r=[];Zar(t),this.elements=Sd(t),this.elementsMap.clear(),this.elements.forEach((u)=>{nr(u)&&r.push(u),this.elementsMap.set(u.id,u),A.mapElementToScene(u,this)});let i=pde(this.elements);this.nonDeletedElements=i.elements,this.nonDeletedElementsMap=i.elementsMap,this.frames=r,this.nonDeletedFramesLikes=pde(this.frames).elements,this.triggerUpdate()}triggerUpdate(){this.sceneNonce=QB();for(let e of Array.from(this.callbacks))e()}onUpdate(e){if(this.callbacks.has(e))throw Error();return this.callbacks.add(e),()=>{if(!this.callbacks.has(e))throw Error();this.callbacks.delete(e)}}destroy(){this.elements=[],this.nonDeletedElements=[],this.nonDeletedFramesLikes=[],this.frames=[],this.elementsMap.clear(),this.selectedElementsCache.selectedElementIds=null,this.selectedElementsCache.elements=null,this.selectedElementsCache.cache.clear(),A.sceneMapById.forEach((e,t)=>{e===this&&A.sceneMapById.delete(t)}),this.callbacks.clear()}insertElementAtIndex(e,t){if(!Number.isFinite(t)||t<0)throw Error("insertElementAtIndex can only be called with index >= 0");let r=[...this.elements.slice(0,t),e,...this.elements.slice(t)];CB(r,ar([e])),this.replaceAllElements(r)}insertElementsAtIndex(e,t){if(!e.length)return;if(!Number.isFinite(t)||t<0)throw Error("insertElementAtIndex can only be called with index >= 0");let r=[...this.elements.slice(0,t),...e,...this.elements.slice(t)];CB(r,ar(e)),this.replaceAllElements(r)}getElementIndex(e){return this.elements.findIndex((t)=>t.id===e)}},jar,yd,Se=(A,e,t=!0,r)=>{let i=!1,{points:u,fixedSegments:a,fileId:n,startBinding:o,endBinding:s}=e;if(ft(A)&&(Object.keys(e).length===0||typeof u<"u"||typeof a<"u"||typeof o<"u"||typeof s<"u")){let l=Sg(yd.getScene(A)?.getNonDeletedElementsMap()??new Map);e={...e,angle:0,...JW({...A,x:e.x||A.x,y:e.y||A.y},l,{fixedSegments:a,points:u,startBinding:o,endBinding:s},{isDragging:r?.isDragging})}}else typeof u<"u"&&(e={...u2(u),...e});for(let l in e){let g=e[l];if(typeof g<"u"){if(A[l]===g&&(typeof g!="object"||g===null||l==="groupIds"||l==="scale"))continue;if(l==="scale"){let C=A[l],B=g;if(C[0]===B[0]&&C[1]===B[1])continue}else if(l==="points"){let C=A[l],B=g;if(C.length===B.length){let E=!1,d=C.length;for(;--d;){let I=C[d],h=B[d];if(I[0]!==h[0]||I[1]!==h[1]){E=!0;break}}if(!E)continue}}A[l]=g,i=!0}}return i&&((typeof e.height<"u"||typeof e.width<"u"||typeof n<"u"||typeof u<"u")&&na.delete(A),A.version++,A.versionNonce=QB(),A.updated=G9(),t&&yd.getScene(A)?.triggerUpdate()),A},Tr=(A,e,t=!1)=>{let r=!1;for(let i in e){let u=e[i];if(typeof u<"u"){if(A[i]===u&&(typeof u!="object"||u===null))continue;r=!0}}return!r&&!t?A:{...A,...e,updated:G9(),version:A.version+1,versionNonce:QB()}},DS=(A,e)=>(A.version=(e??A.version)+1,A.versionNonce=QB(),A.updated=G9(),A),y2=(A)=>Nr(A)||Tc(A)?A.points.length<2:A.width===0&&A.height===0,yS=(A,e,t,r,i)=>{let[u,a,n,o]=sB(A,i),s=Ru({clientX:r.offsetLeft,clientY:r.offsetTop},r),l=Ru({clientX:r.offsetLeft+e,clientY:r.offsetTop+t},r);return s.x<=n&&s.y<=o&&l.x>=u&&l.y>=a},wS=(A,e,t,r,i,u)=>{let[a,n,o,s]=Pi(A,i),l=Ru({clientX:r.offsetLeft+(u?.left||0),clientY:r.offsetTop+(u?.top||0)},r),g=Ru({clientX:r.offsetLeft+e-(u?.right||0),clientY:r.offsetTop+t-(u?.bottom||0)},r);return a>=l.x&&n>=l.y&&o<=g.x&&s<=g.y},mde=(A,e,t)=>{let r=Math.abs(e),i=Math.abs(t);if(A==="line"||A==="arrow"||A==="freedraw"){let u=Math.round(Math.atan(i/r)/z1)*z1;u===0?t=0:u===Math.PI/2?e=0:t=r*Math.tan(u)*Math.sign(t)||t}else A!=="selection"&&(t=r*Math.sign(t));return{width:e,height:t}},Aq=(A,e,t,r)=>{let i=t-A,u=r-e,a=Math.round(Math.atan(u/i)/z1)*z1;if(a===0)u=0;else if(a===Math.PI/2)i=0;else{let n=Math.tan(a),o=-1,s=e-n*A,l=-1/n,g=-1,C=r-l*t,B=(o*C-g*s)/(n*g-l*o),E=(s*l-C*n)/(n*g-l*o);i=B-A,u=E-e}return{width:i,height:u}},TQA=(A)=>{let e={width:A.width,height:A.height,x:A.x,y:A.y};if(A.width<0){let t=Math.abs(A.width);e.width=t,e.x=A.x-t}if(A.height<0){let t=Math.abs(A.height);e.height=t,e.y=A.y-t}return e},Dde,Xar=16,t1e,yde,tIA,Gh=(A,e,t,r,i,u,a)=>{let[n,o]=ye(X(A+t/2,e+r/2),X(i,u),a);return[n-t/2,o-r/2,t,r]},YQA=(A)=>!(A.viewport.isMobile||A.isTouchScreen&&(FXt||mIA)),j9=(A)=>YQA(A)?t1e:{},eq=([A,e,t,r,i,u],a,n,o,s={},l=4,g=Z1)=>{let C=Dde[o],B=C/n.value,E=C/n.value,d=C/n.value,I=C/n.value,h=t-A,Q=r-e,p=l/n.value,m=(C-g*2)/(2*n.value),f={nw:s.nw?void 0:Gh(A-p-d+m,e-p-I+m,B,E,i,u,a),ne:s.ne?void 0:Gh(t+p-m,e-p-I+m,B,E,i,u,a),sw:s.sw?void 0:Gh(A-p-d+m,r+p-m,B,E,i,u,a),se:s.se?void 0:Gh(t+p-m,r+p-m,B,E,i,u,a),rotation:s.rotation?void 0:Gh(A+h/2-B/2,e-p-I+m-Xar/n.value,B,E,i,u,a)},D=5*Dde.mouse/n.value;return Math.abs(h)>D&&(s.n||(f.n=Gh(A+h/2-B/2,e-p-I+m,B,E,i,u,a)),s.s||(f.s=Gh(A+h/2-B/2,r+p-m,B,E,i,u,a))),Math.abs(Q)>D&&(s.w||(f.w=Gh(A-p-d+m,e+Q/2-E/2,B,E,i,u,a)),s.e||(f.e=Gh(t+p-m,e+Q/2-E/2,B,E,i,u,a))),f},HQA=(A,e,t,r="mouse",i=t1e)=>{if(A.locked||ft(A))return{};if(A.type==="freedraw"||Nr(A)){if(A.points.length===2){let[,a]=A.points;a[0]===0||a[1]===0?i=tIA:a[0]>0&&a[1]<0?i=yde:a[0]>0&&a[1]>0?i=tIA:a[0]<0&&a[1]>0?i=yde:a[0]<0&&a[1]<0&&(i=tIA)}}else nr(A)&&(i={...i,rotation:!0});let u=Nr(A)?Z1+8:Ri(A)?0:Z1;return eq(Rr(A,t,!0),A.angle,e,r,i,u,Ri(A)?0:void 0)},KQA=(A,e)=>{if(e.editingLinearElement)return!1;if(A.length>1)return!0;let t=A[0];return ft(t)?!1:Nr(t)?t.points.length>2:!0},dIA=(A,e,t)=>e>=A[0]&&e<=A[0]+A[2]&&t>=A[1]&&t<=A[1]+A[3],$ar=(A,e,t,r,i,u,a,n)=>{if(!t.selectedElementIds[A.id])return!1;let{rotation:o,...s}=HQA(A,u,e,a,j9(n));if(o&&dIA(o,r,i))return"rotation";let l=Object.keys(s).filter((g)=>{let C=s[g];return C?dIA(C,r,i):!1});if(l.length>0)return l[0];if(YQA(n)){let[g,C,B,E,d,I]=Rr(A,e);if(!(Nr(A)&&A.points.length<=2)){let h=Ri(A)?0:w_/u.value,Q=w_/u.value,p=r1e(X(g-h,C-h),X(B+h,E+h),X(d,I),A.angle);for(let[m,f]of Object.entries(p))if(e2(X(r,i),f,Q))return m}}return!1},JQA=(A,e,t,r,i,u,a,n)=>A.reduce((o,s)=>{if(o)return o;let l=$ar(s,a,e,t,r,i,u,n);return l?{element:s,transformHandleType:l}:null},null),OQA=([A,e,t,r],i,u,a,n,o)=>{let s=eq([A,e,t,r,(A+t)/2,(e+r)/2],0,a,n,j9(o)),l=Object.keys(s).find((g)=>{let C=s[g];return C&&dIA(C,i,u)});if(l)return l;if(YQA(o)){let g=(A+t)/2,C=(e+r)/2,B=w_/a.value,E=r1e(X(A-B,e-B),X(t+B,r+B),X(g,C),0);for(let[d,I]of Object.entries(E))if(e2(X(i,u),I,B))return d}return!1},rIA,Anr=(A,e)=>{let t=rIA.indexOf(A);if(t>=0){let r=Math.round(e/(Math.PI/4));A=rIA[(t+r)%rIA.length]}return A},PQA=(A)=>{let{element:e,transformHandleType:t}=A,r=e&&Math.sign(e.height)*Math.sign(e.width)===-1,i=null;switch(t){case"n":case"s":i="ns";break;case"w":case"e":i="ew";break;case"nw":case"se":r?i="nesw":i="nwse";break;case"ne":case"sw":r?i="nwse":i="nesw";break;case"rotation":return"grab"}return i&&e&&(i=Anr(i,e.angle)),i?`${i}-resize`:""},r1e=([A,e],[t,r],i,u)=>{let a=ye(X(A,e),i,u),n=ye(X(t,e),i,u),o=ye(X(A,r),i,u),s=ye(X(t,r),i,u);return{n:[a,n],e:[n,s],s:[s,o],w:[o,a]}},i1e=(A,e,t,r,i,u,a,n,o,s,l,g)=>{if(t.length===1){let[C]=t;if(e==="rotation")ft(C)||(enr(C,r,i,o,s,u),Os(C,r));else{if(Et(C)&&e)return tnr(A,C,r,e,a,o,s),Os(C,r),!0;if(e){let B=t[0].id,E=r.get(B),d=A.get(B);if(E&&d){let{nextWidth:I,nextHeight:h}=anr(E,d,r,A,e,o,s,{shouldMaintainAspectRatio:n,shouldResizeFromCenter:a});X9(I,h,E,d,r,A,e,{shouldMaintainAspectRatio:n,shouldResizeFromCenter:a})}}}return!0}else if(t.length>1){if(e==="rotation")return rnr(A,t,r,i,o,s,u,l,g),!0;if(e){let{nextWidth:C,nextHeight:B,flipByX:E,flipByY:d,originalBoundingBox:I}=nnr(t,A,r,e,o,s,{shouldMaintainAspectRatio:n,shouldResizeFromCenter:a});return WQA(t,r,e,i,A,{shouldResizeFromCenter:a,shouldMaintainAspectRatio:n,flipByX:E,flipByY:d,nextWidth:C,nextHeight:B,originalBoundingBox:I}),!0}}return!1},enr=(A,e,t,r,i,u)=>{let[a,n,o,s]=Rr(A,e),l=(a+o)/2,g=(n+s)/2,C;nr(A)?C=0:(C=5*Math.PI/2+Math.atan2(i-g,r-l),u&&(C=C+z1/2,C=C-C%z1),C=v_(C));let B=Dd(A);if(Se(A,{angle:C}),B){let E=t.getElement(B);E&&!Kr(A)&&Se(E,{angle:C})}},tq=(A,e,t,r)=>Nr(A)||Tc(A)?{points:G_(0,e,G_(1,t,A.points,r),r)}:{},_QA=(A,e,t)=>{let r=A.width;if(Tu(A)){let u=Qo(A,e);u&&(r=gB(u,A))}let i=A.fontSize*(t/r);return i<yIA?null:{size:i}},tnr=(A,e,t,r,i,u,a)=>{let[n,o,s,l,g,C]=Rr(e,t),[B,E]=ye(X(u,a),X(g,C),-e.angle),d=0,I=0;r!=="e"&&r!=="w"&&(r.includes("e")&&(d=(B-n)/(s-n)),r.includes("w")&&(d=(s-B)/(s-n)),r.includes("n")&&(I=(l-E)/(l-o)),r.includes("s")&&(I=(E-o)/(l-o)));let h=Math.max(d,I);if(h>0){let Q=e.width*h,p=e.height*h,m=_QA(e,t,Q);if(m===null)return;let f=[n,o],D=[s,l],w=[g,C],b=X(n,o);if(["n","w","nw"].includes(r)&&(b=X(D[0]-Math.abs(Q),D[1]-Math.abs(p))),r==="ne"){let R=[f[0],D[1]];b=X(R[0],R[1]-Math.abs(p))}if(r==="sw"){let R=[D[0],f[1]];b=X(R[0]-Math.abs(Q),R[1])}["s","n"].includes(r)&&(b[0]=w[0]-Q/2),["e","w"].includes(r)&&(b[1]=w[1]-p/2),i&&(b[0]=w[0]-Math.abs(Q)/2,b[1]=w[1]-Math.abs(p)/2);let F=e.angle,v=ye(b,X(g,C),F),S=X(b[0]+Math.abs(Q)/2,b[1]+Math.abs(p)/2),x=ye(S,X(g,C),F);b=ye(v,x,-F);let[k,T]=b;Se(e,{fontSize:m.size,width:Q,height:p,x:k,y:T})}if(r==="e"||r==="w"){let Q=A.get(e.id),[p,m,f,D]=_1(Q,Q.width,Q.height,!0),w=X(p,m),b=X(f,D),F=z8(w,b),v=ye(X(u,a),F,-Q.angle),[S,,x]=_1(e,e.width,e.height,!0),k=x-S,T=b[0]-w[0],R=$_(cu({fontSize:e.fontSize,fontFamily:e.fontFamily}),e.lineHeight),L=T/k;r.includes("e")&&(L=(v[0]-w[0])/k),r.includes("w")&&(L=(b[0]-v[0])/k);let M=e.width*L<R?R:e.width*L,U=up(e.originalText,cu(e),Math.abs(M)),Y=m0(U,cu(e),e.lineHeight),H=Y.height,[J,K,O,_]=_1(Q,M,H,!0),z=O-J,j=_-K,q=[...w];["n","w","nw"].includes(r)&&(q=[b[0]-Math.abs(z),w[1]]);let CA=Q.angle,tA=ye(q,F,CA),lA=X(q[0]+Math.abs(z)/2,q[1]+Math.abs(j)/2),gA=ye(lA,F,CA);q=ye(tA,gA,-CA);let aA={width:Math.abs(M),height:Math.abs(Y.height),x:q[0],y:q[1],text:U,autoResize:!1};Se(e,aA)}},rnr=(A,e,t,r,i,u,a,n,o)=>{let s=5*Math.PI/2+Math.atan2(u-o,i-n);a&&(s+=z1/2,s-=s%z1);for(let l of e)if(!nr(l)){let[g,C,B,E]=Rr(l,t),d=(g+B)/2,I=(C+E)/2,h=A.get(l.id)?.angle??l.angle,[Q,p]=ye(X(d,I),X(n,o),s+h-l.angle);ft(l)?Se(l,{points:wur(l,t)}):Se(l,{x:l.x+(Q-d),y:l.y+(p-I),angle:v_(s+h)},!1),Os(l,t,{simultaneouslyUpdated:e});let m=Gr(l,t);m&&!Kr(l)&&Se(m,{x:m.x+(Q-d),y:m.y+(p-I),angle:v_(s+h)},!1)}r.triggerUpdate()},u1e=(A,e,t,r,i)=>{let[u,a,n,o]=e.length===1?Rr(e[0],t):Pi(e),s=(u+n)/2,l=(a+o)/2,g=e.length===1?e[0].angle:0;switch([r,i]=ye(X(r,i),X(s,l),-g),A){case"n":return ye(X(r-(u+n)/2,i-a),X(0,0),g);case"s":return ye(X(r-(u+n)/2,i-o),X(0,0),g);case"w":return ye(X(r-u,i-(a+o)/2),X(0,0),g);case"e":return ye(X(r-n,i-(a+o)/2),X(0,0),g);case"nw":return ye(X(r-u,i-a),X(0,0),g);case"ne":return ye(X(r-n,i-a),X(0,0),g);case"sw":return ye(X(r-u,i-o),X(0,0),g);case"se":return ye(X(r-n,i-o),X(0,0),g);default:return[0,0]}},a1e=(A,e)=>{let[,[t,r]]=e.points;return A==="nw"&&(t<0||r<0)||A==="ne"&&t>=0||A==="sw"&&t<=0||A==="se"&&(t>0||r>0)?"end":"origin"},inr=(A,e,t)=>{if(t)return"center";if(e)switch(A){case"n":return"south-side";case"e":return"west-side";case"s":return"north-side";case"w":return"east-side";case"ne":return"bottom-left";case"nw":return"bottom-right";case"se":return"top-left";case"sw":return"top-right"}return["e","se","s"].includes(A)?"top-left":["n","nw","w"].includes(A)?"bottom-right":A==="ne"?"bottom-left":"top-right"},unr=(A,e,t,r,i,u,a,n,o)=>{let s=inr(a,n,o),[l,g]=A;switch(s){case"top-left":return{x:l+(e-r)/2+(r-e)/2*Math.cos(u)+(t-i)/2*Math.sin(u),y:g+(t-i)/2+(r-e)/2*Math.sin(u)+(i-t)/2*Math.cos(u)};case"top-right":return{x:l+(e-r)/2*(Math.cos(u)+1)+(t-i)/2*Math.sin(u),y:g+(t-i)/2+(e-r)/2*Math.sin(u)+(i-t)/2*Math.cos(u)};case"bottom-left":return{x:l+(e-r)/2*(1-Math.cos(u))+(i-t)/2*Math.sin(u),y:g+(t-i)/2*(Math.cos(u)+1)+(r-e)/2*Math.sin(u)};case"bottom-right":return{x:l+(e-r)/2*(Math.cos(u)+1)+(i-t)/2*Math.sin(u),y:g+(t-i)/2*(Math.cos(u)+1)+(e-r)/2*Math.sin(u)};case"center":return{x:l-(r-e)/2,y:g-(i-t)/2};case"east-side":return{x:l+(e-r)/2*(Math.cos(u)+1),y:g+(e-r)/2*Math.sin(u)+(t-i)/2};case"west-side":return{x:l+(e-r)/2*(1-Math.cos(u)),y:g+(r-e)/2*Math.sin(u)+(t-i)/2};case"north-side":return{x:l+(e-r)/2+(t-i)/2*Math.sin(u),y:g+(i-t)/2*(Math.cos(u)-1)};case"south-side":return{x:l+(e-r)/2+(i-t)/2*Math.sin(u),y:g+(t-i)/2*(Math.cos(u)+1)}}},X9=(A,e,t,r,i,u,a,{shouldInformMutation:n=!0,shouldMaintainAspectRatio:o=!1,shouldResizeFromCenter:s=!1}={})=>{let l={},g=Gr(t,i);if(g){let d=u.get(g.id);if(d&&(l={fontSize:d.fontSize}),o){let I={...t,width:A,height:e},h=_QA(g,i,gB(I,g));if(h===null)return;l={fontSize:h.size}}else{let I=PIA(cu(g),g.lineHeight),h=WIA(g.fontSize,g.lineHeight);A=Math.max(A,I),e=Math.max(e,h)}}let C=tq(r,A,e,!0),B=X(r.x,r.y);if(Nr(r)){let[d,I]=sB(r,u);B=X(d,I)}let E=unr(B,r.width,r.height,A,e,r.angle,a,o,s);if(Nr(r)&&C.points){let d=r.x-B[0],I=r.y-B[1];E.x+=d,E.y+=I;let h=C.points[0][0],Q=C.points[0][1];E.x+=h,E.y+=Q,C.points=C.points.map((p)=>X(p[0]-h,p[1]-Q))}if(A<0&&(E.x=E.x+A),e<0&&(E.y=E.y+e),"scale"in t&&"scale"in r&&Se(t,{scale:[(Math.sign(A)||r.scale[0])*r.scale[0],(Math.sign(e)||r.scale[1])*r.scale[1]]}),Kr(t)&&g&&o){let d=A/t.width*g.fontSize;if(d<yIA)return;l.fontSize=d}if(A!==0&&e!==0&&Number.isFinite(E.x)&&Number.isFinite(E.y)){let d={...E,width:Math.abs(A),height:Math.abs(e),...C};Se(t,d,n),Os(t,i,{newSize:{width:A,height:e}}),g&&l!=null&&Se(g,{fontSize:l.fontSize}),_9(t,i,a,o)}},anr=(A,e,t,r,i,u,a,{shouldMaintainAspectRatio:n=!1,shouldResizeFromCenter:o=!1}={})=>{let[s,l,g,C]=_1(e,e.width,e.height,!0),B=X(s,l),E=X(g,C),d=z8(B,E),I=ye(X(u,a),d,-e.angle),[h,Q,p,m]=_1(A,A.width,A.height,!0),f=p-h,D=m-Q,w=E[0]-B[0],b=E[1]-B[1],F=w/f,v=b/D;i.includes("e")&&(F=(I[0]-B[0])/f),i.includes("s")&&(v=(I[1]-B[1])/D),i.includes("w")&&(F=(E[0]-I[0])/f),i.includes("n")&&(v=(E[1]-I[1])/D);let S=A.width*F,x=A.height*v;if(o&&(S=2*S-e.width,x=2*x-e.height),n){let k=Math.abs(S)/e.width,T=Math.abs(x)/e.height;if(i.length===1&&(x*=k,S*=T),i.length===2){let R=Math.max(k,T);S=e.width*R*Math.sign(S),x=e.height*R*Math.sign(x)}}return{nextWidth:S,nextHeight:x}},nnr=(A,e,t,r,i,u,{shouldMaintainAspectRatio:a=!1,shouldResizeFromCenter:n=!1}={})=>{let o=A.map((k)=>e.get(k.id)),s=o.reduce((k,T)=>{if(!Nr(T))return k;let R=Dd(T);if(!R)return k;let L=e.get(R)??null;return Tu(L)?[...k,{...L,...ht.getBoundTextElementPosition(T,L,t)}]:k},[]),l=Jc(o.map((k)=>k).concat(s)),{minX:g,minY:C,maxX:B,maxY:E,midX:d,midY:I}=l,h=B-g,Q=E-C,p={ne:[g,E],se:[g,C],sw:[B,C],nw:[B,E],e:[g,C+Q/2],w:[B,C+Q/2],n:[g+h/2,E],s:[g+h/2,C]},[m,f]=n?[d,I]:p[r],D=n?2:1,w=Math.max(Math.abs(i-m)/h||0,Math.abs(u-f)/Q||0)*D,b=r.includes("e")||r.includes("w")?Math.abs(i-m)*D:h,F=r.includes("n")||r.includes("s")?Math.abs(u-f)*D:Q;a&&(b=h*w*Math.sign(i-m),F=Q*w*Math.sign(u-f));let v={ne:[i<m,u>f],se:[i<m,u<f],sw:[i>m,u<f],nw:[i>m,u>f],e:[i<m,!1],w:[i>m,!1],n:[!1,u>f],s:[!1,u<f]},[S,x]=v[r].map((k)=>k);return{originalBoundingBox:l,nextWidth:b,nextHeight:F,flipByX:S,flipByY:x}},WQA=(A,e,t,r,i,{shouldMaintainAspectRatio:u=!1,shouldResizeFromCenter:a=!1,flipByX:n=!1,flipByY:o=!1,nextHeight:s,nextWidth:l,originalBoundingBox:g}={})=>{if(l===void 0&&s===void 0&&n===void 0&&o===void 0||s===0||l===0)return;i||(i=e);let C=A.reduce((D,w)=>{let b=i.get(w.id);return b&&D.push({orig:b,latest:w}),D},[]),B;if(g)B=g;else{let D=C.reduce((w,{orig:b})=>{if(!Nr(b))return w;let F=Dd(b);if(!F)return w;let v=i.get(F)??null;return Tu(v)?[...w,{...v,...ht.getBoundTextElementPosition(b,v,e)}]:w},[]);B=Jc(C.map(({orig:w})=>w).concat(D))}let{minX:E,minY:d,maxX:I,maxY:h,midX:Q,midY:p}=B,m=I-E,f=h-d;if(l===void 0&&s===void 0&&(l=m,s=f),u&&(l===void 0?l=s*(m/f):s===void 0?s=l*(f/m):Math.abs(l/s-m/f)>0.001&&(l=s*(m/f))),l&&s){let D=t.includes("e")||t.includes("w")?Math.abs(l)/m:1,w=t.includes("n")||t.includes("s")?Math.abs(s)/f:1,b;t.length===1?b=t.includes("e")||t.includes("w")?D:w:b=Math.max(Math.abs(l)/m||0,Math.abs(s)/f||0);let F={ne:[E,h],se:[E,d],sw:[I,d],nw:[I,h],e:[E,d+f/2],w:[I,d+f/2],n:[E+m/2,h],s:[E+m/2,d]},[v,S]=a?[Q,p]:F[t],x=u||C.some((M)=>M.latest.angle!==0||Et(M.latest)||f2(M.latest));x&&(D=b,w=b);let[k,T]=[n?-1:1,o?-1:1],R=[];for(let{orig:M,latest:U}of C){if(Et(M)&&Tu(M))continue;let Y=M.width*D,H=M.height*w,J=v_(M.angle*k*T),K=Nr(M)||Tc(M),O=M.x-v,_=M.y-S,z=n&&!K?Y:0,j=o&&!K?H:0,q=v+k*(O*D+z),CA=S+T*(_*w+j),tA=tq(M,Y*k,H*T,!1),lA={x:q,y:CA,width:Y,height:H,angle:J,...tA};if(ft(M)&&(M.startBinding&&(lA.startBinding={...M.startBinding,fixedPoint:[n?-M.startBinding.fixedPoint[0]+1:M.startBinding.fixedPoint[0],o?-M.startBinding.fixedPoint[1]+1:M.startBinding.fixedPoint[1]]}),M.endBinding&&(lA.endBinding={...M.endBinding,fixedPoint:[n?-M.endBinding.fixedPoint[0]+1:M.endBinding.fixedPoint[0],o?-M.endBinding.fixedPoint[1]+1:M.endBinding.fixedPoint[1]]}),M.fixedSegments&&tA.points&&(lA.fixedSegments=M.fixedSegments.map((aA)=>({...aA,start:tA.points[aA.index-1],end:tA.points[aA.index]})))),Ri(M)&&(lA.scale=[M.scale[0]*k,M.scale[1]*T]),Et(M)){let aA=_QA(M,e,Y);if(!aA)return;lA.fontSize=aA.size}let gA=i.get(Dd(M)??"");if(gA)if(x){let aA=gA.fontSize*b;if(aA<yIA)return;lA.boundTextFontSize=aA}else lA.boundTextFontSize=gA.fontSize;R.push({element:U,update:lA})}let L=R.map(({element:M})=>M);for(let{element:M,update:{boundTextFontSize:U,...Y}}of R){let{width:H,height:J,angle:K}=Y;Se(M,Y,!1,{isDragging:!0}),Os(M,e,{simultaneouslyUpdated:L,newSize:{width:H,height:J}});let O=Gr(M,e);O&&U&&(Se(O,{fontSize:U,angle:Nr(M)?void 0:K},!1),_9(M,e,t,!0))}r.triggerUpdate()}},n1e=(A,e,t,r,i,u)=>{if(e.length===1&&ft(e[0])&&(e[0].startBinding||e[0].endBinding))return;let a=e.filter((g)=>{if(ft(g)&&g.startBinding&&g.endBinding){let C=e.find((E)=>E.id===g.startBinding?.elementId),B=e.find((E)=>E.id===g.endBinding?.elementId);return C&&B}return!0}),n=new Set(a),o=a.filter((g)=>nr(g)).map((g)=>g.id);if(o.length>0)for(let g of r.getNonDeletedElements())g.frameId!==null&&o.includes(g.frameId)&&n.add(g);let s=Pi(Array.from(n).map((g)=>A.originalElements.get(g.id)??g)),l=onr(s,t,i,u);n.forEach((g)=>{if(wde(A,g,l),!Kr(g)){let C=Gr(g,r.getNonDeletedElementsMap());C&&wde(A,C,l),Os(g,r.getElementsMapIncludingDeleted(),{simultaneouslyUpdated:Array.from(n)})}})},onr=(A,e,t,r)=>{let[i,u]=A,a=i+e.x+t.x,n=u+e.y+t.y;if(t.x===0||t.y===0){let[o,s]=Dn(i+e.x,u+e.y,r);t.x===0&&(a=o),t.y===0&&(n=s)}return{x:a-i,y:n-u}},wde=(A,e,t)=>{let r=A.originalElements.get(e.id)??e,i=r.x+t.x,u=r.y+t.y;Se(e,{x:i,y:u})},o1e=(A,e,t)=>{let[r,i]=Pi(A);return[e-r,t-i]},qQA=({newElement:A,elementType:e,originX:t,originY:r,x:i,y:u,width:a,height:n,shouldMaintainAspectRatio:o,shouldResizeFromCenter:s,zoom:l,widthAspectRatio:g=null,originOffset:C=null,informMutation:B=!0})=>{o&&A.type!=="selection"&&(g?n=a/g:(Math.abs(u-r)>Math.abs(i-t)?{width:a,height:n}=mde(e,n,i<t?-a:a):{width:a,height:n}=mde(e,a,u<r?-n:n),n<0&&(n=-n)));let E=i<t?t-a:t,d=u<r?r-n:r;s&&(a+=a,n+=n,E=t-a/2,d=r-n/2);let I=null;if(Et(A)){n=A.height;let h=$_(cu({fontSize:A.fontSize,fontFamily:A.fontFamily}),A.lineHeight);a=Math.max(a,h),Math.abs(i-t)>SXt/l&&(I={autoResize:!1}),d=r,s&&(E=t-a/2)}if(a!==0&&n!==0){let h=null;Ri(A)&&(h={initialWidth:a,initialHeight:n}),Se(A,{x:E+(C?.x??0),y:d+(C?.y??0),width:a,height:n,...I,...h},B)}},rq=(A,e)=>!!(!A.viewModeEnabled&&A.openDialog?.name!=="elementLinkSelector"&&(A.activeTool.type!=="custom"&&(A.editingTextElement||A.activeTool.type!=="selection"&&A.activeTool.type!=="eraser"&&A.activeTool.type!=="hand"&&A.activeTool.type!=="laser")||Jr(e,A).length)),s1e=(A)=>{let e=5381;for(let t=0;t<A.length;t++){let r=A.charCodeAt(t);e=(e<<5)+e+r}return e>>>0},snr=(A)=>A.filter((e)=>!e.isDeleted&&!y2(e)),fu=(A)=>A.filter((e)=>!e.isDeleted),iq=(A)=>!A.isDeleted,l1e=(A)=>fu(A).map((e)=>X_(e.type)?{...e,lastCommittedPoint:null}:e),lnr=(A)=>l1e(A),g1e=(A)=>l1e(A),c1e=async(A)=>{let e;if(A.type===Xt.png)try{return await(await Promise.resolve().then(() => (HdA(),lEe))).decodePngMetadata(A)}catch(t){throw t.message==="INVALID"?new O1("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):new O1("Error: cannot restore image")}else if("text"in Blob?e=await A.text():e=await new Promise((t)=>{let r=new FileReader;r.readAsText(A,"utf8"),r.onloadend=()=>{r.readyState===FileReader.DONE&&t(r.result)}}),A.type===Xt.svg)try{return sar({svg:e})}catch(t){throw t.message==="INVALID"?new O1("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):new O1("Error: cannot restore image")}return e},zQA=(A)=>A&&A.name.match(/\.(json|excalidraw|png|svg)$/)?.[1]||null,C1e=(A)=>A==="png"||A==="svg",uq=(A)=>{let e=zQA(A);return e==="png"||e==="svg"},B1e=(A)=>!!A&&Object.values(l2).includes(A),cp=(A)=>{let{type:e}=A||{};return B1e(e)},ZQA=async(A,e,t,r)=>{let i=await c1e(A),u;try{try{u=JSON.parse(i)}catch(a){throw cp(A)?new O1("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):a}if(rar(u))return{type:Xt.excalidraw,data:hS({elements:g1e(u.elements||[]),appState:{theme:e?.theme,fileHandle:r||A.handle||null,...rIe(u.appState||{}),...e?J9(u.elements||[],e):{}},files:u.files},e,t,{repairBindings:!0,refreshDimensions:!1})};if(v4e(u))return{type:Xt.excalidrawlib,data:u};throw Error("Error: invalid file")}catch(a){throw a instanceof O1?a:Error("Error: invalid file")}},VQA=async(A,e,t,r)=>{let i=await ZQA(A,e,t,r);if(i.type!==Xt.excalidraw)throw Error("Error: invalid file");return i.data},jQA=(A,e="unpublished")=>{let t=JSON.parse(A);if(!v4e(t))throw Error("Invalid library");let r=t.libraryItems||t.library;return PW(r,e)},E1e=async(A,e="unpublished")=>jQA(await c1e(A),e),$9=async(A)=>new Promise(async(e,t)=>{try{U9(A)&&(A=await A),A.toBlob((r)=>{if(!r)return t(new S$t("Error: Canvas too big","CANVAS_POSSIBLY_TOO_BIG"));e(r)})}catch(r){t(r)}}),d1e=async(A)=>{try{let e=await window.crypto.subtle.digest("SHA-1",await $m(A));return t$t(new Uint8Array(e))}catch(e){return console.error(e),fa(40)}},XQA=async(A)=>new Promise((e,t)=>{let r=new FileReader;r.onload=()=>{let i=r.result;e(i)},r.onerror=(i)=>t(i),r.readAsDataURL(A)}),I1e=(A,e)=>`data:${e};base64,${y1e(K_(A),!0)}`,h1e=(A,e="")=>{let t=A.indexOf(","),r=atob(A.slice(t+1)),i=A.slice(0,t).split(":")[1].split(";")[0],u=new ArrayBuffer(r.length),a=new Uint8Array(u);for(let n=0;n<r.length;n++)a[n]=r.charCodeAt(n);return new File([u],e,{type:i})},Q1e=(A)=>w1e(A.slice(A.indexOf(",")+1)),aq=async(A,e)=>{if(A.type===Xt.svg)return A;let[t,r]=await Promise.all([Promise.resolve().then(() => yu(BEe(),1)).then((u)=>u.default),Promise.resolve().then(() => (fEe(),{})).then((u)=>wXt)]),i=r({pica:t({features:["js","wasm"]})});if(e.outputType){let{outputType:u}=e;i._create_blob=function(a){return this.pica.toBlob(a.out_canvas,u,0.8).then((n)=>(a.out_blob=n,a))}}if(!cp(A))throw Error("Error: unsupported file type",{cause:"UNSUPPORTED"});return new File([await i.toBlob(A,{max:e.maxWidthOrHeight,alpha:!0})],A.name,{type:e.outputType||A.type})},$QA=(A,e="")=>new File([new TextEncoder().encode(A)],e,{type:Xt.svg}),p1e=async(A,e="")=>{let t;try{t=await fetch(A)}catch{throw Error("Error: failed to fetch image",{cause:"FETCH_ERROR"})}if(!t.ok)throw Error("Error: failed to fetch image",{cause:"FETCH_ERROR"});let r=await t.blob();if(r.type&&cp(r)){let i=e||r.name||"";return new File([r],i,{type:r.type})}throw Error("Error: unsupported file type",{cause:"UNSUPPORTED"})},f1e=async(A)=>{let e=A.dataTransfer.files.item(0),t=await gnr(A);return{file:e?await nq(e):null,fileHandle:t}},gnr=async(A)=>{if(Rh)try{return await A.dataTransfer.items[0].getAsFileSystemHandle()||null}catch(e){return console.warn(e.name,e.message),null}return null},bde=(A)=>{let e=null,t=`${[...new Uint8Array(A).slice(0,8)].join(" ")} `,r={png:"137 80 78 71 13 10 26 10 ",jpg:"255 216 255 ",gif:"71 73 70 56 57 97 "};return t===r.png?e=Xt.png:t.startsWith(r.jpg)?e=Xt.jpg:t.startsWith(r.gif)&&(e=Xt.gif),e},k8=(A,e,t)=>new File([A],t||"",{type:e}),nq=async(A)=>{if(A.type){if(cp(A)){let e=await $m(A),t=bde(e);t&&t!==A.type&&(A=k8(e,t,A.name))}}else if(A?.name?.endsWith(".excalidrawlib"))A=k8(await $m(A),Xt.excalidrawlib,A.name);else if(A?.name?.endsWith(".excalidraw"))A=k8(await $m(A),Xt.excalidraw,A.name);else{let e=await $m(A),t=bde(e);t&&(A=k8(e,t,A.name))}return A},$m=(A)=>("arrayBuffer"in A)?A.arrayBuffer():new Promise((e,t)=>{let r=new FileReader;r.onload=(i)=>{if(!i.target?.result)return t(Error("Couldn't convert blob to ArrayBuffer"));e(i.target.result)},r.readAsArrayBuffer(A)}),K_=(A)=>{let e=typeof A=="string"?new TextEncoder().encode(A):A instanceof Uint8Array?A:new Uint8Array(A),t="";for(let r of e)t+=String.fromCharCode(r);return t},m1e=(A)=>{let e=new ArrayBuffer(A.length),t=new Uint8Array(e);for(let r=0,i=A.length;r<i;r++)t[r]=A.charCodeAt(r);return e},D1e=(A)=>new TextDecoder("utf-8").decode(m1e(A)),y1e=(A,e=!1)=>e?window.btoa(A):window.btoa(K_(A)),w1e=(A,e=!1)=>e?window.atob(A):D1e(window.atob(A)),b1e=({text:A,compress:e})=>{let t;if(e!==!1)try{t=K_(QCe(A))}catch(r){console.error("encode: cannot deflate",r)}return{version:"1",encoding:"bstring",compressed:!!t,encoded:t||K_(A)}},v1e=(A)=>{let e;switch(A.encoding){case"bstring":e=A.compressed?A.encoded:D1e(A.encoded);break;default:throw Error(`decode: unknown encoding "${A.encoding}"`)}return A.compressed?pCe(new Uint8Array(m1e(e)),{to:"string"}):e},gEe=async(A)=>{let e=IIA.default(new Uint8Array(await $m(A))).find((t)=>t.name==="tEXt");return e?FP.decode(e.data):null},c_=async({blob:A,metadata:e})=>{let t=IIA.default(new Uint8Array(await $m(A))),r=FP.encode(Xt.excalidraw,JSON.stringify(b1e({text:e,compress:!0})));return t.splice(-1,0,r),new Blob([vde.default(t)],{type:Xt.png})},cEe=async(A)=>{let e=await gEe(A);if(e?.keyword===Xt.excalidraw)try{let t=JSON.parse(e.text);if(!("encoded"in t)){if("type"in t&&t.type===Fg.excalidraw)return e.text;throw Error("FAILED")}return v1e(t)}catch(t){throw console.error(t),Error("FAILED")}throw Error("INVALID")};var KdA=P(()=>{j6();qt();Vge();fCe();L1();nd();B8();B8();oBe();c8();fe();L1();Be();B8();L1();nd();rEe();IIA=yu(Oge(),1),vde=yu(Ace(),1),iIe=yu(i9(),1),uIe=yu(vCe(),1),C4e=yu(MBe(),1),tB=[0,2,4,6,8],zr={transparent:"transparent",black:"#1e1e1e",white:"#ffffff",gray:rB("gray",tB),red:rB("red",tB),pink:rB("pink",tB),grape:rB("grape",tB),violet:rB("violet",tB),blue:rB("blue",tB),cyan:rB("cyan",tB),teal:rB("teal",tB),green:rB("green",tB),yellow:rB("yellow",tB),orange:rB("orange",tB),bronze:["#f8f1ee","#eaddd7","#d2bab0","#a18072","#846358"]},Fde=bXt(zr,["cyan","blue","violet","grape","pink","green","teal","yellow","orange","red"]),hIA=[zr.black,zr.red[B9],zr.green[B9],zr.blue[B9],zr.yellow[B9]],QIA=[zr.transparent,zr.red[E9],zr.green[E9],zr.blue[E9],zr.yellow[E9]],pIA=[zr.white,"#f8f9fa","#f5faff","#fffce8","#fdf8f6"],xde={transparent:zr.transparent,white:zr.white,gray:zr.gray,black:zr.black,bronze:zr.bronze,...Fde},Sde={transparent:zr.transparent,white:zr.white,gray:zr.gray,black:zr.black,bronze:zr.bronze,...Fde},BB=/Mac|iPod|iPhone|iPad/.test(navigator.platform),fIA=/^Win/.test(navigator.platform),FXt=/\b(android)\b/i.test(navigator.userAgent),x9="netscape"in window&&navigator.userAgent.indexOf("rv:")>1&&navigator.userAgent.indexOf("Gecko")>1,xXt=navigator.userAgent.indexOf("Chrome")!==-1,Rde=!xXt&&navigator.userAgent.indexOf("Safari")!==-1,mIA=/iPad|iPhone/.test(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document,J_=typeof window<"u"&&"ResizeObserver"in window,z1=Math.PI/12,iu={TEXT:"text",CROSSHAIR:"crosshair",GRABBING:"grabbing",GRAB:"grab",POINTER:"pointer",MOVE:"move",AUTO:""},Jh={MAIN:0,WHEEL:1,SECONDARY:2,TOUCH:-1,ERASER:5},o2={enabled:"all",disabled:"none",inheritFromUI:"var(--ui-pointerEvents)"},K8={UNSTARTED:-1,ENDED:0,PLAYING:1,PAUSED:2,BUFFERING:3,CUED:5},Js={TEST:"test",DEVELOPMENT:"development"},s2={SHAPE_ACTIONS_MENU:"App-menu__left",ZOOM_ACTIONS:"zoom-actions",SEARCH_MENU_INPUT_WRAPPER:"layer-ui__search-inputWrapper"},aa={Virgil:1,Helvetica:2,Cascadia:3,Excalifont:5,Nunito:6,"Lilita One":7,"Comic Shanns":8,"Liberation Sans":9},I9={[d9]:100,[x8]:1000},$r={LIGHT:"light",DARK:"dark"},Zu={strokeColor:"#bbb",strokeWidth:2,strokeStyle:"solid",fillStyle:"solid",roughness:0,roundness:null,backgroundColor:"transparent",radius:8,nameOffsetY:3,nameColorLightTheme:"#999999",nameColorDarkTheme:"#7a7a7a",nameFontSize:14,nameLineHeight:1.25},Oh=aa.Excalifont,w_=2*Z1,Hde=2*w_-LXt,l2={svg:"image/svg+xml",png:"image/png",jpg:"image/jpeg",gif:"image/gif",webp:"image/webp",bmp:"image/bmp",ico:"image/x-icon",avif:"image/avif",jfif:"image/jfif"},Xt={text:"text/plain",html:"text/html",json:"application/json",excalidraw:"application/vnd.excalidraw+json",excalidrawlib:"application/vnd.excalidrawlib+json","excalidraw.svg":"image/svg+xml","excalidraw.png":"image/png",binary:"application/octet-stream",...l2},RXt=[Xt.text,Xt.html,...Object.values(l2)],O_={png:"png",svg:"svg",clipboard:"clipboard"},Fg={excalidraw:"excalidraw",excalidrawClipboard:"excalidraw/clipboard",excalidrawLibrary:"excalidrawlib",excalidrawClipboardWithAPI:"excalidraw-api/clipboard"},P_=window.EXCALIDRAW_EXPORT_SOURCE||window.location.origin,wIA={canvasActions:{changeViewBackgroundColor:!0,clearCanvas:!0,export:{saveFileToDisk:!0},loadScene:!0,saveToActiveFile:!0,toggleTheme:null,saveAsImage:!0},tools:{image:!0}},z_=[1,2,3],W8={excalidraw:2,excalidrawLibrary:2},Ul={TOP:"top",MIDDLE:"middle",BOTTOM:"bottom"},D9={LEFT:"left",CENTER:"center",RIGHT:"right"},mn={LEGACY:1,PROPORTIONAL_RADIUS:2,ADAPTIVE_RADIUS:3},AIe={architect:0,artist:1,cartoonist:2},Z_={thin:1,bold:2,extraBold:4},Ta={strokeColor:zr.black,backgroundColor:zr.transparent,fillStyle:"solid",strokeWidth:2,strokeStyle:"solid",roughness:AIe.artist,opacity:100,locked:!1},Kc={name:"default",defaultTab:q8},vIA=new Set(["iframe","embeddable","image"]),On={selection:"selection",rectangle:"rectangle",diamond:"diamond",ellipse:"ellipse",arrow:"arrow",line:"line",freedraw:"freedraw",text:"text",image:"image",eraser:"eraser",hand:"hand",frame:"frame",magicframe:"magicframe",embeddable:"embeddable",laser:"laser"},L9={OAI_API_KEY:"excalidraw-oai-api-key",MERMAID_TO_EXCALIDRAW:"mermaid-to-excalidraw",PUBLISH_LIBRARY:"publish-library-data"},A2={generalStats:1,elementProperties:2},ho={sharp:"sharp",round:"round",elbow:"elbow"},TXt=Symbol.for("__test__originalId__"),eIe=((A)=>(A.ACTIVE="active",A.AWAY="away",A.IDLE="idle",A))(eIe||{}),YXt=z_.includes(devicePixelRatio)?devicePixelRatio:1,HXt=((A)=>A)({showWelcomeScreen:{browser:!0,export:!1,server:!1},theme:{browser:!0,export:!1,server:!1},collaborators:{browser:!1,export:!1,server:!1},currentChartType:{browser:!0,export:!1,server:!1},currentItemBackgroundColor:{browser:!0,export:!1,server:!1},currentItemEndArrowhead:{browser:!0,export:!1,server:!1},currentItemFillStyle:{browser:!0,export:!1,server:!1},currentItemFontFamily:{browser:!0,export:!1,server:!1},currentItemFontSize:{browser:!0,export:!1,server:!1},currentItemRoundness:{browser:!0,export:!1,server:!1},currentItemArrowType:{browser:!0,export:!1,server:!1},currentItemOpacity:{browser:!0,export:!1,server:!1},currentItemRoughness:{browser:!0,export:!1,server:!1},currentItemStartArrowhead:{browser:!0,export:!1,server:!1},currentItemStrokeColor:{browser:!0,export:!1,server:!1},currentItemStrokeStyle:{browser:!0,export:!1,server:!1},currentItemStrokeWidth:{browser:!0,export:!1,server:!1},currentItemTextAlign:{browser:!0,export:!1,server:!1},currentHoveredFontFamily:{browser:!1,export:!1,server:!1},cursorButton:{browser:!0,export:!1,server:!1},activeEmbeddable:{browser:!1,export:!1,server:!1},newElement:{browser:!1,export:!1,server:!1},editingTextElement:{browser:!1,export:!1,server:!1},editingGroupId:{browser:!0,export:!1,server:!1},editingLinearElement:{browser:!1,export:!1,server:!1},activeTool:{browser:!0,export:!1,server:!1},penMode:{browser:!0,export:!1,server:!1},penDetected:{browser:!0,export:!1,server:!1},errorMessage:{browser:!1,export:!1,server:!1},exportBackground:{browser:!0,export:!1,server:!1},exportEmbedScene:{browser:!0,export:!1,server:!1},exportScale:{browser:!0,export:!1,server:!1},exportWithDarkMode:{browser:!0,export:!1,server:!1},fileHandle:{browser:!1,export:!1,server:!1},gridSize:{browser:!0,export:!0,server:!0},gridStep:{browser:!0,export:!0,server:!0},gridModeEnabled:{browser:!0,export:!0,server:!0},height:{browser:!1,export:!1,server:!1},isBindingEnabled:{browser:!1,export:!1,server:!1},defaultSidebarDockedPreference:{browser:!0,export:!1,server:!1},isLoading:{browser:!1,export:!1,server:!1},isResizing:{browser:!1,export:!1,server:!1},isRotating:{browser:!1,export:!1,server:!1},lastPointerDownWith:{browser:!0,export:!1,server:!1},multiElement:{browser:!1,export:!1,server:!1},name:{browser:!0,export:!1,server:!1},offsetLeft:{browser:!1,export:!1,server:!1},offsetTop:{browser:!1,export:!1,server:!1},contextMenu:{browser:!1,export:!1,server:!1},openMenu:{browser:!0,export:!1,server:!1},openPopup:{browser:!1,export:!1,server:!1},openSidebar:{browser:!0,export:!1,server:!1},openDialog:{browser:!1,export:!1,server:!1},pasteDialog:{browser:!1,export:!1,server:!1},previousSelectedElementIds:{browser:!0,export:!1,server:!1},resizingElement:{browser:!1,export:!1,server:!1},scrolledOutside:{browser:!0,export:!1,server:!1},scrollX:{browser:!0,export:!1,server:!1},scrollY:{browser:!0,export:!1,server:!1},selectedElementIds:{browser:!0,export:!1,server:!1},hoveredElementIds:{browser:!1,export:!1,server:!1},selectedGroupIds:{browser:!0,export:!1,server:!1},selectedElementsAreBeingDragged:{browser:!1,export:!1,server:!1},selectionElement:{browser:!1,export:!1,server:!1},shouldCacheIgnoreZoom:{browser:!0,export:!1,server:!1},stats:{browser:!0,export:!1,server:!1},startBoundElement:{browser:!1,export:!1,server:!1},suggestedBindings:{browser:!1,export:!1,server:!1},frameRendering:{browser:!1,export:!1,server:!1},frameToHighlight:{browser:!1,export:!1,server:!1},editingFrame:{browser:!1,export:!1,server:!1},elementsToHighlight:{browser:!1,export:!1,server:!1},toast:{browser:!1,export:!1,server:!1},viewBackgroundColor:{browser:!0,export:!0,server:!0},width:{browser:!1,export:!1,server:!1},zenModeEnabled:{browser:!0,export:!1,server:!1},zoom:{browser:!0,export:!1,server:!1},viewModeEnabled:{browser:!1,export:!1,server:!1},pendingImageElementId:{browser:!1,export:!1,server:!1},showHyperlinkPopup:{browser:!1,export:!1,server:!1},selectedLinearElement:{browser:!0,export:!1,server:!1},snapLines:{browser:!1,export:!1,server:!1},originSnapOffset:{browser:!1,export:!1,server:!1},objectsSnapModeEnabled:{browser:!0,export:!1,server:!1},userToFollow:{browser:!1,export:!1,server:!1},followedBy:{browser:!1,export:!1,server:!1},isCropping:{browser:!1,export:!1,server:!1},croppingElementId:{browser:!1,export:!1,server:!1},searchMatches:{browser:!1,export:!1,server:!1}});e$t=new RegExp(`^[^${$Xt}]*[${A$t}]`);vIe="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toLocaleUpperCase(),eS=(()=>{let A={};return{calculate:(e,t)=>{let r=e.charCodeAt(0);if(A[t]||(A[t]=[]),!A[t][r]){let i=r2(e,t);A[t][r]=i}return A[t][r]},getCache:(e)=>A[e],clearCache:(e)=>{A[e]=[]}}})(),Lc={WHITESPACE:/\s/u,HYPHEN:/-/u,OPENING:/<\(\[\{/u,CLOSING:/>\)\]\}.,:;!\?…\//u},Mh={CHAR:/\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}`'^〃〰〆#&*+-ー/\=|¦〒¬ ̄/u,OPENING:/([{〈《⦅「「『【〖〔〘〚<〝/u,CLOSING:/)]}〉》⦆」」』】〗〕〙〛>。.,、〟‥?!:;・〜〞/u,CURRENCY:/¥₩£¢$/u},Vm={FLAG:/\p{RI}\p{RI}/u,JOINER:/(?:\p{Emoji_Modifier}|\uFE0F\u20E3?|[\u{E0020}-\u{E007E}]+\u{E007F})?/u,ZWJ:/\u200D/u,ANY:/[\p{Emoji}]/u,MOST:/[\p{Extended_Pictographic}\p{Emoji_Presentation}]/u},ru={build:(A)=>new RegExp(A,"u"),join:(...A)=>A.map((e)=>e.source).join(""),and:(...A)=>ru.build(ru.join(...A)),or:(...A)=>ru.build(A.map((e)=>e.source).join("|")),group:(...A)=>ru.build(`(${ru.join(...A)})`),class:(...A)=>ru.build(`[${ru.join(...A)}]`)},rn={On:(...A)=>{let e=ru.join(...A);return ru.build(`([${e}])`)},Before:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?=[${e}])`);return rn.Chain(t)},After:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?<=[${e}])`);return rn.Chain(t)},BeforeMany:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?<![${e}])(?=[${e}])`);return rn.Chain(t)},AfterMany:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?<=[${e}])(?![${e}])`);return rn.Chain(t)},NotBefore:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?![${e}])`);return rn.Chain(t)},NotAfter:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?<![${e}])`);return rn.Chain(t)},Chain:(A)=>({Build:A,PreceededBy:(...e)=>{let t=A(),r=rn.After(...e).Build(),i=()=>ru.and(r,t);return rn.Chain(i)},FollowedBy:(...e)=>{let t=A(),r=rn.Before(...e).Build(),i=()=>ru.and(t,r);return rn.Chain(i)},NotPrecededBy:(...e)=>{let t=A(),r=rn.NotAfter(...e).Build(),i=()=>ru.and(r,t);return rn.Chain(i)},NotFollowedBy:(...e)=>{let t=A(),r=rn.NotBefore(...e).Build(),i=()=>ru.and(t,r);return rn.Chain(i)}})};UA(Ys,"rg",new Id),UA(Ys,"cache",new WeakMap),UA(Ys,"get",(A)=>Ys.cache.get(A)),UA(Ys,"set",(A,e)=>Ys.cache.set(A,e)),UA(Ys,"delete",(A)=>Ys.cache.delete(A)),UA(Ys,"destroy",()=>{Ys.cache=new WeakMap}),UA(Ys,"generateElementShape",(A,e)=>{let t=e?.isExporting?void 0:Ys.get(A);if(t!==void 0)return t;oIA.delete(A);let r=Pir(A,Ys.rg,e||{isExporting:!1,canvasBackgroundColor:zr.white,embedsValidationStatus:null});return Ys.cache.set(A,r),r});na=Ys,ct={width:24,height:24,fill:"none",strokeWidth:2,stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},Yr={width:20,height:20,fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},Cyi=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("rect",{x:3,y:8,width:18,height:4,rx:1}),N("line",{x1:12,y1:8,x2:12,y2:21}),N("path",{d:"M19 12v7a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-7"}),N("path",{d:"M7.5 8a2.5 2.5 0 0 1 0 -5a4.8 8 0 0 1 4.5 5a4.8 8 0 0 1 4.5 -5a2.5 2.5 0 0 1 0 5"})]}),ct),eW=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 19a9 9 0 0 1 9 0a9 9 0 0 1 9 0"}),N("path",{d:"M3 6a9 9 0 0 1 9 0a9 9 0 0 1 9 0"}),N("line",{x1:"3",y1:"6",x2:"3",y2:"19"}),N("line",{x1:"12",y1:"6",x2:"12",y2:"19"}),N("line",{x1:"21",y1:"6",x2:"21",y2:"19"})]}),ct),xIe=ge(cA("svg",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),N("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]}),ct),SIe=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"12",cy:"12",r:"1"}),N("circle",{cx:"12",cy:"19",r:"1"}),N("circle",{cx:"12",cy:"5",r:"1"})]}),ct),LIe=ge(cA("svg",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M9 4v6l-2 4v2h10v-2l-2 -4v-6"}),N("line",{x1:"12",y1:"16",x2:"12",y2:"21"}),N("line",{x1:"8",y1:"4",x2:"16",y2:"4"})]}),ct),tS=ge(cA("g",{children:[N("path",{d:"M13.542 8.542H6.458a2.5 2.5 0 0 0-2.5 2.5v3.75a2.5 2.5 0 0 0 2.5 2.5h7.084a2.5 2.5 0 0 0 2.5-2.5v-3.75a2.5 2.5 0 0 0-2.5-2.5Z",stroke:"currentColor",strokeWidth:"1.25"}),N("path",{d:"M10 13.958a1.042 1.042 0 1 0 0-2.083 1.042 1.042 0 0 0 0 2.083Z",stroke:"currentColor",strokeWidth:"1.25"}),N("mask",{id:"UnlockedIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:6,y:1,width:9,height:9,children:N("path",{stroke:"none",d:"M6.399 9.561V5.175c0-.93.401-1.823 1.116-2.48a3.981 3.981 0 0 1 2.693-1.028c1.01 0 1.98.37 2.694 1.027.715.658 1.116 1.55 1.116 2.481",fill:"#fff"})}),N("g",{mask:"url(#UnlockedIcon)",children:N("path",{stroke:"none",d:"M5.149 9.561v1.25h2.5v-1.25h-2.5Zm5.06-7.894V.417v1.25Zm2.559 3.508v1.25h2.5v-1.25h-2.5ZM7.648 8.51V5.175h-2.5V8.51h2.5Zm0-3.334c0-.564.243-1.128.713-1.561L6.668 1.775c-.959.883-1.52 2.104-1.52 3.4h2.5Zm.713-1.561a2.732 2.732 0 0 1 1.847-.697v-2.5c-1.31 0-2.585.478-3.54 1.358L8.36 3.614Zm1.847-.697c.71 0 1.374.26 1.847.697l1.694-1.839a5.231 5.231 0 0 0-3.54-1.358v2.5Zm1.847.697c.47.433.713.997.713 1.561h2.5c0-1.296-.56-2.517-1.52-3.4l-1.693 1.839Z",fill:"currentColor"})})]}),Yr),tW=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M13.542 8.542H6.458a2.5 2.5 0 0 0-2.5 2.5v3.75a2.5 2.5 0 0 0 2.5 2.5h7.084a2.5 2.5 0 0 0 2.5-2.5v-3.75a2.5 2.5 0 0 0-2.5-2.5Z"}),N("path",{d:"M10 13.958a1.042 1.042 0 1 0 0-2.083 1.042 1.042 0 0 0 0 2.083Z"}),N("path",{d:"M6.667 8.333V5.417C6.667 3.806 8.159 2.5 10 2.5c1.841 0 3.333 1.306 3.333 2.917v2.916"})]}),Yr),RIe=ge(cA(et,{children:[N("path",{d:"M38.5 83.5c-14-2-17.833-10.473-21-22.5C14.333 48.984 12 22 12 12.5",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"}),N("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m12.005 10.478 7.905 14.423L6 25.75l6.005-15.273Z",fill:"currentColor"}),N("path",{d:"M12.005 10.478c1.92 3.495 3.838 7 7.905 14.423m-7.905-14.423c3.11 5.683 6.23 11.368 7.905 14.423m0 0c-3.68.226-7.35.455-13.91.85m13.91-.85c-5.279.33-10.566.647-13.91.85m0 0c1.936-4.931 3.882-9.86 6.005-15.273M6 25.75c2.069-5.257 4.135-10.505 6.005-15.272",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"})]}),{width:41,height:94,fill:"none"}),NIe=ge(cA(et,{children:[N("path",{d:"M18.026 1.232c-5.268 13.125-5.548 33.555 3.285 42.311 8.823 8.75 33.31 12.304 42.422 13.523",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"}),N("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m72.181 59.247-13.058-10-2.948 13.62 16.006-3.62Z",fill:"currentColor"}),N("path",{d:"M72.181 59.247c-3.163-2.429-6.337-4.856-13.058-10m13.058 10c-5.145-3.936-10.292-7.882-13.058-10m0 0c-.78 3.603-1.563 7.196-2.948 13.62m2.948-13.62c-1.126 5.168-2.24 10.346-2.948 13.62m0 0c5.168-1.166 10.334-2.343 16.006-3.62m-16.006 3.62c5.51-1.248 11.01-2.495 16.006-3.62",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"})]}),{width:85,height:71,fill:"none"}),GIe=ge(cA(et,{children:[N("path",{d:"M1 77c14-2 31.833-11.973 35-24 3.167-12.016-6-35-9.5-43.5",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"}),N("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m24.165 1.093-2.132 16.309 13.27-4.258-11.138-12.05Z",fill:"currentColor"}),N("path",{d:"M24.165 1.093c-.522 3.953-1.037 7.916-2.132 16.309m2.131-16.309c-.835 6.424-1.68 12.854-2.13 16.308m0 0c3.51-1.125 7.013-2.243 13.27-4.257m-13.27 4.257c5.038-1.608 10.08-3.232 13.27-4.257m0 0c-3.595-3.892-7.197-7.777-11.14-12.05m11.14 12.05c-3.837-4.148-7.667-8.287-11.14-12.05",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"})]}),{width:38,height:78,fill:"none"}),Byi=ge(N("g",{fill:"currentColor",children:N("path",{d:"M39.9 32.889a.326.326 0 0 0-.279-.056c-2.094-3.083-4.774-6-7.343-8.833l-.419-.472a.212.212 0 0 0-.056-.139.586.586 0 0 0-.167-.111l-.084-.083-.056-.056c-.084-.167-.28-.278-.475-.167-.782.39-1.507.973-2.206 1.528-.92.722-1.842 1.445-2.708 2.25a8.405 8.405 0 0 0-.977 1.028c-.14.194-.028.361.14.444-.615.611-1.23 1.223-1.843 1.861a.315.315 0 0 0-.084.223c0 .083.056.166.111.194l1.09.833v.028c1.535 1.528 4.244 3.611 7.12 5.861.418.334.865.667 1.284 1 .195.223.39.473.558.695.084.11.28.139.391.055.056.056.14.111.196.167a.398.398 0 0 0 .167.056.255.255 0 0 0 .224-.111.394.394 0 0 0 .055-.167c.029 0 .028.028.056.028a.318.318 0 0 0 .224-.084l5.082-5.528a.309.309 0 0 0 0-.444Zm-14.63-1.917a.485.485 0 0 0 .111.14c.586.5 1.2 1 1.843 1.555l-2.569-1.945-.251-.166c-.056-.028-.112-.084-.168-.111l-.195-.167.056-.056.055-.055.112-.111c.866-.861 2.346-2.306 3.1-3.028-.81.805-2.43 3.167-2.095 3.944Zm8.767 6.89-2.122-1.612a44.713 44.713 0 0 0-2.625-2.5c1.145.861 2.122 1.611 2.262 1.75 1.117.972 1.06.806 1.815 1.445l.921.666a1.06 1.06 0 0 1-.251.25Zm.558.416-.056-.028c.084-.055.168-.111.252-.194l-.196.222ZM1.089 5.75c.055.361.14.722.195 1.056.335 1.833.67 3.5 1.284 4.75l.252.944c.084.361.223.806.363.917 1.424 1.25 3.602 3.11 5.947 4.889a.295.295 0 0 0 .363 0s0 .027.028.027a.254.254 0 0 0 .196.084.318.318 0 0 0 .223-.084c2.988-3.305 5.221-6.027 6.813-8.305.112-.111.14-.278.14-.417.111-.111.195-.25.307-.333.111-.111.111-.306 0-.39l-.028-.027c0-.055-.028-.139-.084-.167-.698-.666-1.2-1.138-1.731-1.638-.922-.862-1.871-1.75-3.881-3.75l-.028-.028c-.028-.028-.056-.056-.112-.056-.558-.194-1.703-.389-3.127-.639C6.087 2.223 3.21 1.723.614.944c0 0-.168 0-.196.028l-.083.084c-.028.027-.056.055-.224.11h.056-.056c.028.167.028.278.084.473 0 .055.112.5.112.555l.782 3.556Zm15.496 3.278-.335-.334c.084.112.196.195.335.334Zm-3.546 4.666-.056.056c0-.028.028-.056.056-.056Zm-2.038-10c.168.167.866.834 1.033.973-.726-.334-2.54-1.167-3.379-1.445.838.167 1.983.334 2.346.472ZM1.424 2.306c.419.722.754 3.222 1.089 5.666-.196-.778-.335-1.555-.503-2.278-.251-1.277-.503-2.416-.838-3.416.056 0 .14 0 .252.028Zm-.168-.584c-.112 0-.223-.028-.307-.028 0-.027 0-.055-.028-.055.14 0 .223.028.335.083Zm-1.089.222c0-.027 0-.027 0 0ZM39.453 1.333c.028-.11-.558-.61-.363-.639.42-.027.42-.666 0-.666-.558.028-1.144.166-1.675.25-.977.194-1.982.389-2.96.61-2.205.473-4.383.973-6.561 1.557-.67.194-1.424.333-2.066.666-.224.111-.196.333-.084.472-.056.028-.084.028-.14.056-.195.028-.363.056-.558.083-.168.028-.252.167-.224.334 0 .027.028.083.028.11-1.173 1.556-2.485 3.195-3.909 4.945-1.396 1.611-2.876 3.306-4.356 5.056-4.719 5.5-10.052 11.75-15.943 17.25a.268.268 0 0 0 0 .389c.028.027.056.055.084.055-.084.084-.168.14-.252.222-.056.056-.084.111-.084.167a.605.605 0 0 0-.111.139c-.112.111-.112.305.028.389.111.11.307.11.39-.028.029-.028.029-.056.056-.056a.44.44 0 0 1 .615 0c.335.362.67.723.977 1.028l-.698-.583c-.112-.111-.307-.083-.39.028-.113.11-.085.305.027.389l7.427 6.194c.056.056.112.056.196.056s.14-.028.195-.084l.168-.166c.028.027.083.027.111.027.084 0 .14-.027.196-.083 10.052-10.055 18.15-17.639 27.42-24.417.083-.055.111-.166.111-.25.112 0 .196-.083.251-.194 1.704-5.194 2.039-9.806 2.15-12.083v-.028c0-.028.028-.056.028-.083.028-.056.028-.084.028-.084a1.626 1.626 0 0 0-.111-1.028ZM21.472 9.5c.446-.5.893-1.028 1.34-1.5-2.876 3.778-7.65 9.583-14.408 16.5 4.607-5.083 9.242-10.333 13.068-15ZM5.193 35.778h.084-.084Zm3.462 3.194c-.027-.028-.027-.028 0-.028v.028Zm4.16-3.583c.224-.25.448-.472.699-.722 0 0 0 .027.028.027-.252.223-.475.445-.726.695Zm1.146-1.111c.14-.14.279-.334.446-.5l.028-.028c1.648-1.694 3.351-3.389 5.082-5.111l.028-.028c.419-.333.921-.694 1.368-1.028a379.003 379.003 0 0 0-6.952 6.695ZM24.794 6.472c-.921 1.195-1.954 2.778-2.82 4.028-2.736 3.944-11.532 13.583-11.727 13.75a1976.983 1976.983 0 0 1-8.042 7.639l-.167.167c-.14-.167-.14-.417.028-.556C14.49 19.861 22.03 10.167 25.074 5.917c-.084.194-.14.36-.28.555Zm4.83 5.695c-1.116-.64-1.646-1.64-1.34-2.611l.084-.334c.028-.083.084-.194.14-.277.307-.5.754-.917 1.257-1.167.027 0 .055 0 .083-.028-.028-.056-.028-.139-.028-.222.028-.167.14-.278.335-.278.335 0 1.369.306 1.76.639.111.083.223.194.335.305.14.167.363.445.474.667.056.028.112.306.196.445.056.222.111.472.084.694-.028.028 0 .194-.028.194a2.668 2.668 0 0 1-.363 1.028c-.028.028-.028.056-.056.084l-.028.027c-.14.223-.335.417-.53.556-.643.444-1.369.583-2.095.389 0 0-.195-.084-.28-.111Zm8.154-.834a39.098 39.098 0 0 1-.893 3.167c0 .028-.028.083 0 .111-.056 0-.084.028-.14.056-2.206 1.61-4.356 3.305-6.506 5.028 1.843-1.64 3.686-3.306 5.613-4.945.558-.5.949-1.139 1.06-1.861l.28-1.667v-.055c.14-.334.67-.195.586.166Z",fill:"currentColor"})}),{width:40,height:40,fill:"none"}),m$t=ge(cA("g",{stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 6l4.153 11.793a0.365 .365 0 0 0 .331 .207a0.366 .366 0 0 0 .332 -.207l2.184 -4.793l4.787 -1.994a0.355 .355 0 0 0 .213 -.323a0.355 .355 0 0 0 -.213 -.323l-11.787 -4.36z"}),N("path",{d:"M13.5 13.5l4.5 4.5"})]}),{fill:"none",width:22,height:22,strokeWidth:1.25}),D$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"})]}),ct),y$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10.5 20.4l-6.9 -6.9c-.781 -.781 -.781 -2.219 0 -3l6.9 -6.9c.781 -.781 2.219 -.781 3 0l6.9 6.9c.781 .781 .781 2.219 0 3l-6.9 6.9c-.781 .781 -2.219 .781 -3 0z"})]}),ct),w$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"12",cy:"12",r:"9"})]}),ct),b$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"5",y1:"12",x2:"19",y2:"12"}),N("line",{x1:"15",y1:"16",x2:"19",y2:"12"}),N("line",{x1:"15",y1:"8",x2:"19",y2:"12"})]}),ct),v$t=ge(N("path",{d:"M4.167 10h11.666",strokeWidth:"1.5"}),Yr),UIe=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M20 17v-12c0 -1.121 -.879 -2 -2 -2s-2 .879 -2 2v12l2 2l2 -2z"}),N("path",{d:"M16 7h4"}),N("path",{d:"M18 19h-13a2 2 0 1 1 0 -4h4a2 2 0 1 0 0 -4h-3"})]}),ct),y9=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{clipRule:"evenodd",d:"m7.643 15.69 7.774-7.773a2.357 2.357 0 1 0-3.334-3.334L4.31 12.357a3.333 3.333 0 0 0-.977 2.357v1.953h1.953c.884 0 1.732-.352 2.357-.977Z"}),N("path",{d:"m11.25 5.417 3.333 3.333"})]}),Yr),zIA=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"20",x2:"7",y2:"20"}),N("line",{x1:"14",y1:"20",x2:"21",y2:"20"}),N("line",{x1:"6.9",y1:"15",x2:"13.8",y2:"15"}),N("line",{x1:"10.2",y1:"6.3",x2:"16",y2:"20"}),N("polyline",{points:"5 20 11 4 13 4 20 20"})]}),ct),k$t=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M12.5 6.667h.01"}),N("path",{d:"M4.91 2.625h10.18a2.284 2.284 0 0 1 2.285 2.284v10.182a2.284 2.284 0 0 1-2.284 2.284H4.909a2.284 2.284 0 0 1-2.284-2.284V4.909a2.284 2.284 0 0 1 2.284-2.284Z"}),N("path",{d:"m3.333 12.5 3.334-3.333c.773-.745 1.726-.745 2.5 0l4.166 4.166"}),N("path",{d:"m11.667 11.667.833-.834c.774-.744 1.726-.744 2.5 0l1.667 1.667"})]}),Yr),F$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M19 20h-10.5l-4.21 -4.3a1 1 0 0 1 0 -1.41l10 -10a1 1 0 0 1 1.41 0l5 5a1 1 0 0 1 0 1.41l-9.2 9.3"}),N("path",{d:"M18 13.3l-6.3 -6.3"})]}),ct),ZIA=ge(N("path",{strokeWidth:"1.25",d:"M10 4.167v11.666M4.167 10h11.666"}),Yr),VIA=ge(N("path",{d:"M5 10h10",strokeWidth:"1.25"}),Yr),MIe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M21 21l-6 -6"}),N("path",{d:"M3.268 12.043a7.017 7.017 0 0 0 6.634 4.957a7.012 7.012 0 0 0 7.043 -6.131a7 7 0 0 0 -5.314 -7.672a7.021 7.021 0 0 0 -8.241 4.403"}),N("path",{d:"M3 4v4h4"})]}),ct),ap=ge(N("path",{strokeWidth:"1.25",d:"M3.333 5.833h13.334M8.333 9.167v5M11.667 9.167v5M4.167 5.833l.833 10c0 .92.746 1.667 1.667 1.667h6.666c.92 0 1.667-.746 1.667-1.667l.833-10M7.5 5.833v-2.5c0-.46.373-.833.833-.833h3.334c.46 0 .833.373.833.833v2.5"}),Yr),TIe=ge(cA("g",{strokeWidth:"1.25",children:[N("polyline",{points:"12 16 18 10 12 4"}),N("polyline",{points:"8 4 2 10 8 16"})]}),Yr),rW=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M14.375 6.458H8.958a2.5 2.5 0 0 0-2.5 2.5v5.417a2.5 2.5 0 0 0 2.5 2.5h5.417a2.5 2.5 0 0 0 2.5-2.5V8.958a2.5 2.5 0 0 0-2.5-2.5Z"}),N("path",{clipRule:"evenodd",d:"M11.667 3.125c.517 0 .986.21 1.325.55.34.338.55.807.55 1.325v1.458H8.333c-.485 0-.927.185-1.26.487-.343.312-.57.75-.609 1.24l-.005 5.357H5a1.87 1.87 0 0 1-1.326-.55 1.87 1.87 0 0 1-.549-1.325V5c0-.518.21-.987.55-1.326.338-.34.807-.549 1.325-.549h6.667Z"})]}),Yr),iW=ge(N("path",{clipRule:"evenodd",d:"M10 2.5h.328a6.25 6.25 0 0 0 6.6 10.372A7.5 7.5 0 1 1 10 2.493V2.5Z",stroke:"currentColor"}),Yr),uW=ge(N("g",{stroke:"currentColor",strokeLinejoin:"round",children:N("path",{d:"M10 12.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM10 4.167V2.5M14.167 5.833l1.166-1.166M15.833 10H17.5M14.167 14.167l1.166 1.166M10 15.833V17.5M5.833 14.167l-1.166 1.166M5 10H3.333M5.833 5.833 4.667 4.667"})}),{...Yr,strokeWidth:1.5}),jIA=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"6",x2:"20",y2:"6"}),N("line",{x1:"4",y1:"12",x2:"20",y2:"12"}),N("line",{x1:"4",y1:"18",x2:"20",y2:"18"})]}),ct),rS=ge(N("path",{strokeWidth:"1.25",d:"M3.333 14.167v1.666c0 .92.747 1.667 1.667 1.667h10c.92 0 1.667-.746 1.667-1.667v-1.666M5.833 9.167 10 13.333l4.167-4.166M10 3.333v10"}),Yr),aW=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"12",cy:"12",r:"9"}),N("line",{x1:"12",y1:"17",x2:"12",y2:"17.01"}),N("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),ct),YIe=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"12",cy:"12",r:"9"}),N("line",{x1:"12",y1:"17",x2:"12",y2:"17.01"}),N("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),ct),XIA=ge(N("path",{strokeWidth:"1.25",d:"M9.167 5.833H5.833c-1.254 0-2.5 1.282-2.5 2.5v5.834c0 1.283 1.252 2.5 2.5 2.5h5.834c1.251 0 2.5-1.25 2.5-2.5v-3.334M8.333 11.667l8.334-8.334M12.5 3.333h4.167V7.5"}),Yr),$IA=ge(N("path",{d:"M7.5 15.833c-3.583 1.167-3.583-2.083-5-2.5m10 4.167v-2.917c0-.833.083-1.166-.417-1.666 2.334-.25 4.584-1.167 4.584-5a3.833 3.833 0 0 0-1.084-2.667 3.5 3.5 0 0 0-.083-2.667s-.917-.25-2.917 1.084a10.25 10.25 0 0 0-5.166 0C5.417 2.333 4.5 2.583 4.5 2.583a3.5 3.5 0 0 0-.083 2.667 3.833 3.833 0 0 0-1.084 2.667c0 3.833 2.25 4.75 4.584 5-.5.5-.5 1-.417 1.666V17.5",strokeWidth:"1.25"}),Yr),HIe=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M7.5 10.833a.833.833 0 1 0 0-1.666.833.833 0 0 0 0 1.666ZM12.5 10.833a.833.833 0 1 0 0-1.666.833.833 0 0 0 0 1.666ZM6.25 6.25c2.917-.833 4.583-.833 7.5 0M5.833 13.75c2.917.833 5.417.833 8.334 0"}),N("path",{d:"M12.917 14.167c0 .833 1.25 2.5 1.666 2.5 1.25 0 2.361-1.39 2.917-2.5.556-1.39.417-4.861-1.25-9.584-1.214-.846-2.5-1.116-3.75-1.25l-.833 2.084M7.083 14.167c0 .833-1.13 2.5-1.526 2.5-1.191 0-2.249-1.39-2.778-2.5-.529-1.39-.397-4.861 1.19-9.584 1.157-.846 2.318-1.116 3.531-1.25l.833 2.084"})]}),Yr),KIe=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 4l11.733 16h4.267l-11.733 -16z"}),N("path",{d:"M4 20l6.768 -6.768m2.46 -2.46l6.772 -6.772"})]}),ct),JIe=ge(N("polyline",{fill:"none",stroke:"currentColor",points:"20 6 9 17 4 12"}),{width:24,height:24}),nW=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M8.333 11.667a2.917 2.917 0 0 0 4.167 0l3.333-3.334a2.946 2.946 0 1 0-4.166-4.166l-.417.416"}),N("path",{d:"M11.667 8.333a2.917 2.917 0 0 0-4.167 0l-3.333 3.334a2.946 2.946 0 0 0 4.166 4.166l.417-.416"})]}),Yr),OIe=ge("M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM224 416c-35.346 0-64-28.654-64-64 0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64zm96-304.52V212c0 6.627-5.373 12-12 12H76c-6.627 0-12-5.373-12-12V108c0-6.627 5.373-12 12-12h228.52c3.183 0 6.235 1.264 8.485 3.515l3.48 3.48A11.996 11.996 0 0 1 320 111.48z",{width:448,height:512}),PIe=ge("M252 54L203 8a28 27 0 00-20-8H28C12 0 0 12 0 27v195c0 15 12 26 28 26h204c15 0 28-11 28-26V73a28 27 0 00-8-19zM130 213c-21 0-37-16-37-36 0-19 16-35 37-35 20 0 37 16 37 35 0 20-17 36-37 36zm56-169v56c0 4-4 6-7 6H44c-4 0-7-2-7-6V42c0-4 3-7 7-7h133l4 2 3 2a7 7 0 012 5z M296 201l87 95-188 205-78 9c-10 1-19-8-18-20l9-84zm141-14l-41-44a31 31 0 00-46 0l-38 41 87 95 38-42c13-14 13-36 0-50z",{width:448,height:512}),oW=ge(N("path",{d:"m9.257 6.351.183.183H15.819c.34 0 .727.182 1.051.506.323.323.505.708.505 1.05v5.819c0 .316-.183.7-.52 1.035-.337.338-.723.522-1.037.522H4.182c-.352 0-.74-.181-1.058-.5-.318-.318-.499-.705-.499-1.057V5.182c0-.351.181-.736.5-1.054.32-.321.71-.503 1.057-.503H6.53l2.726 2.726Z",strokeWidth:"1.25"}),Yr),Eyi=ge("M384 112v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h80c0-35.29 28.71-64 64-64s64 28.71 64 64h80c26.51 0 48 21.49 48 48zM192 40c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24m96 114v-20a6 6 0 0 0-6-6H102a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h180a6 6 0 0 0 6-6z",{width:384,height:512}),_Ie=ge("M204.3 5C104.9 24.4 24.8 104.3 5.2 203.4c-37 187 131.7 326.4 258.8 306.7 41.2-6.4 61.4-54.6 42.5-91.7-23.1-45.4 9.9-98.4 60.9-98.4h79.7c35.8 0 64.8-29.6 64.9-65.3C511.5 97.1 368.1-26.9 204.3 5zM96 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm32-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"),sW=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 16l1.465 1.638a2 2 0 1 1 -3.015 .099l1.55 -1.737z"}),N("path",{d:"M13.737 9.737c2.299 -2.3 3.23 -5.095 2.081 -6.245c-1.15 -1.15 -3.945 -.217 -6.244 2.082c-2.3 2.299 -3.231 5.095 -2.082 6.244c1.15 1.15 3.946 .218 6.245 -2.081z"}),N("path",{d:"M7.492 11.818c.362 .362 .768 .676 1.208 .934l6.895 4.047c1.078 .557 2.255 -.075 3.692 -1.512c1.437 -1.437 2.07 -2.614 1.512 -3.692c-.372 -.718 -1.72 -3.017 -4.047 -6.895a6.015 6.015 0 0 0 -.934 -1.208"})]}),ct),AhA=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15 8h.01"}),N("path",{d:"M12 20h-5a3 3 0 0 1 -3 -3v-10a3 3 0 0 1 3 -3h10a3 3 0 0 1 3 3v5"}),N("path",{d:"M4 15l4 -4c.928 -.893 2.072 -.893 3 0l4 4"}),N("path",{d:"M14 14l1 -1c.617 -.593 1.328 -.793 2.009 -.598"}),N("path",{d:"M19 16v6"}),N("path",{d:"M22 19l-3 3l-3 -3"})]}),ct),WIe=ge("M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z",{width:512,height:512}),dyi=ge("M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z",{width:448,height:512}),Iyi=ge("M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z",{width:448,height:512}),qIe=ge("M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"),hyi=ge("M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"),ehA=ge(N("path",{d:"M7.5 10.833 4.167 7.5 7.5 4.167M4.167 7.5h9.166a3.333 3.333 0 0 1 0 6.667H12.5",strokeWidth:"1.25"}),Yr),thA=ge(N("path",{d:"M12.5 10.833 15.833 7.5 12.5 4.167M15.833 7.5H6.667a3.333 3.333 0 1 0 0 6.667H7.5",strokeWidth:"1.25"}),Yr),zIe=ge("M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zM262.655 90c-54.497 0-89.255 22.957-116.549 63.758-3.536 5.286-2.353 12.415 2.715 16.258l34.699 26.31c5.205 3.947 12.621 3.008 16.665-2.122 17.864-22.658 30.113-35.797 57.303-35.797 20.429 0 45.698 13.148 45.698 32.958 0 14.976-12.363 22.667-32.534 33.976C247.128 238.528 216 254.941 216 296v4c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12v-1.333c0-28.462 83.186-29.647 83.186-106.667 0-58.002-60.165-102-116.531-102zM256 338c-25.365 0-46 20.635-46 46 0 25.364 20.635 46 46 46s46-20.636 46-46c0-25.365-20.635-46-46-46z",{mirror:!0}),ZIe=ge(N("path",{d:"M5 12.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM15 7.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM15 17.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM7.25 8.917l5.5-2.834M7.25 11.083l5.5 2.834",strokeWidth:"1.5"}),Yr),Qyi=ge("M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"),pyi=ge("M16 5l-1.42 1.42-1.59-1.59V16h-1.98V4.83L9.42 6.42 8 5l4-4 4 4zm4 5v11c0 1.1-.9 2-2 2H6c-1.11 0-2-.9-2-2V10c0-1.11.89-2 2-2h3v2H6v11h12V10h-3V8h3c1.1 0 2 .89 2 2z",{width:24,height:24}),fyi=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 9h-1a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-8a2 2 0 0 0 -2 -2h-1"}),N("path",{d:"M12 14v-11"}),N("path",{d:"M9 6l3 -3l3 3"})]}),ct),myi=ge(cA(et,{children:[N("path",{fill:"currentColor",d:"M40 5.6v6.1l-4.1.7c-8.9 1.4-16.5 6.9-20.6 15C13 32 10.9 43 12.4 43c.4 0 2.4-1.3 4.4-3 5-3.9 12.1-7 18.2-7.7l5-.6v12.8l11.2-11.3L62.5 22 51.2 10.8 40-.5v6.1zm10.2 22.6L44 34.5v-6.8l-6.9.6c-3.9.3-9.8 1.7-13.2 3.1-3.5 1.4-6.5 2.4-6.7 2.2-.9-1 3-7.5 6.4-10.8C28 18.6 34.4 16 40.1 16c3.7 0 3.9-.1 3.9-3.2V9.5l6.2 6.3 6.3 6.2-6.3 6.2z"}),N("path",{stroke:"currentColor",fill:"currentColor",d:"M0 36v20h48v-6.2c0-6 0-6.1-2-4.3-1.1 1-2 2.9-2 4.2V52H4V34c0-17.3-.1-18-2-18s-2 .7-2 20z"})]}),{width:64,height:64}),Dyi=ge(N("path",{stroke:"currentColor",strokeWidth:"40",fill:"currentColor",d:"M148 560a318 318 0 0 0 522 110 316 316 0 0 0 0-450 316 316 0 0 0-450 0c-11 11-21 22-30 34v4h47c25 0 46 21 46 46s-21 45-46 45H90c-13 0-25-6-33-14-9-9-14-20-14-33V156c0-25 20-45 45-45s45 20 45 45v32l1 1a401 401 0 0 1 623 509l212 212a42 42 0 0 1-59 59L698 757A401 401 0 0 1 65 570a42 42 0 0 1 83-10z"}),{width:1024}),VIe=cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 10l0 10"}),N("path",{d:"M12 10l4 4"}),N("path",{d:"M12 10l-4 4"}),N("path",{d:"M4 4l16 0"})]}),jIe=cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 5l0 14"}),N("path",{d:"M16 9l-4 -4"}),N("path",{d:"M8 9l4 -4"})]}),rhA=ge(jIe,ct),ihA=ge(jIe,{...ct,style:{transform:"rotate(180deg)"}}),uhA=ge(VIe,ct),ahA=ge(VIe,{...ct,style:{transform:"rotate(180deg)"}}),nhA=ge(cA(et,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M3.333 3.333h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M13.542 6.458h-.417c-.92 0-1.667.747-1.667 1.667v7.083c0 .92.746 1.667 1.667 1.667h.417c.92 0 1.666-.746 1.666-1.667V8.125c0-.92-.746-1.667-1.666-1.667ZM6.875 6.458h-.417c-.92 0-1.666.747-1.666 1.667v3.75c0 .92.746 1.667 1.666 1.667h.417c.92 0 1.667-.746 1.667-1.667v-3.75c0-.92-.747-1.667-1.667-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),ohA=ge(cA(et,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M3.333 16.667h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M6.875 3.125h-.417c-.92 0-1.666.746-1.666 1.667v7.083c0 .92.746 1.667 1.666 1.667h.417c.92 0 1.667-.746 1.667-1.667V4.792c0-.92-.747-1.667-1.667-1.667ZM13.542 5.817h-.417c-.92 0-1.667.747-1.667 1.667v4.391c0 .92.746 1.667 1.667 1.667h.417c.92 0 1.666-.746 1.666-1.667V7.484c0-.92-.746-1.667-1.666-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),shA=ge(cA(et,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M3.333 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M15.208 4.792H8.125c-.92 0-1.667.746-1.667 1.666v.417c0 .92.747 1.667 1.667 1.667h7.083c.92 0 1.667-.747 1.667-1.667v-.417c0-.92-.746-1.666-1.667-1.666ZM12.516 11.458H8.125c-.92 0-1.667.746-1.667 1.667v.417c0 .92.747 1.666 1.667 1.666h4.391c.92 0 1.667-.746 1.667-1.666v-.417c0-.92-.746-1.667-1.667-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),lhA=ge(cA(et,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M16.667 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M11.875 4.792H4.792c-.92 0-1.667.746-1.667 1.666v.417c0 .92.746 1.667 1.667 1.667h7.083c.92 0 1.667-.747 1.667-1.667v-.417c0-.92-.746-1.666-1.667-1.666ZM11.683 11.458H7.292c-.92 0-1.667.746-1.667 1.667v.417c0 .92.746 1.666 1.667 1.666h4.39c.921 0 1.667-.746 1.667-1.666v-.417c0-.92-.746-1.667-1.666-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),XIe=ge(cA(et,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M16.667 3.333v13.334M3.333 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M14.375 10.208v-.416c0-.92-.746-1.667-1.667-1.667H7.292c-.92 0-1.667.746-1.667 1.667v.416c0 .92.746 1.667 1.667 1.667h5.416c.92 0 1.667-.746 1.667-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),$Ie=ge(cA(et,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M3.333 3.333h13.334M3.333 16.667h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M10.208 5.625h-.416c-.92 0-1.667.746-1.667 1.667v5.416c0 .92.746 1.667 1.667 1.667h.416c.92 0 1.667-.746 1.667-1.667V7.292c0-.92-.746-1.667-1.667-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),ghA=ge(cA("g",{stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M1.667 10h2.916",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M8.333 10h3.334",strokeLinejoin:"round"}),N("path",{d:"M15.417 10h2.916",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M6.875 4.792h-.417c-.92 0-1.666.746-1.666 1.666v7.084c0 .92.746 1.666 1.666 1.666h.417c.92 0 1.667-.746 1.667-1.666V6.458c0-.92-.747-1.666-1.667-1.666ZM13.542 6.458h-.417c-.92 0-1.667.747-1.667 1.667v3.75c0 .92.746 1.667 1.667 1.667h.417c.92 0 1.666-.746 1.666-1.667v-3.75c0-.92-.746-1.667-1.666-1.667Z"})]}),Yr),chA=ge(cA("g",{stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M10 18.333v-2.916",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M10 11.667V8.333",strokeLinejoin:"round"}),N("path",{d:"M10 4.583V1.667",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M4.792 13.125v.417c0 .92.746 1.666 1.666 1.666h7.084c.92 0 1.666-.746 1.666-1.666v-.417c0-.92-.746-1.667-1.666-1.667H6.458c-.92 0-1.666.746-1.666 1.667ZM6.458 6.458v.417c0 .92.747 1.667 1.667 1.667h3.75c.92 0 1.667-.747 1.667-1.667v-.417c0-.92-.746-1.666-1.667-1.666h-3.75c-.92 0-1.667.746-1.667 1.666Z"})]}),Yr),ChA=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"9",cy:"7",r:"4"}),N("path",{d:"M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2"}),N("path",{d:"M16 3.13a4 4 0 0 1 0 7.75"}),N("path",{d:"M21 21v-2a4 4 0 0 0 -3 -3.85"})]}),ct),yyi=ge("M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm115.7 272l-176 101c-15.8 8.8-35.7-2.5-35.7-21V152c0-18.4 19.8-29.8 35.7-21l176 107c16.4 9.2 16.4 32.9 0 42z"),wyi=ge("M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm96 328c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h160c8.8 0 16 7.2 16 16v160z"),h2=ge(cA(et,{children:[N("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:N("path",{d:"M15 5 5 15M5 5l10 10"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),byi=ge("M464 0c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48H176c-26.51 0-48-21.49-48-48V48c0-26.51 21.49-48 48-48h288M176 416c-44.112 0-80-35.888-80-80V128H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48v-48H176z",{mirror:!0}),vyi=ge("M11.553 22.894a.998.998 0 00.894 0s3.037-1.516 5.465-4.097C19.616 16.987 21 14.663 21 12V5a1 1 0 00-.649-.936l-8-3a.998.998 0 00-.702 0l-8 3A1 1 0 003 5v7c0 2.663 1.384 4.987 3.088 6.797 2.428 2.581 5.465 4.097 5.465 4.097zm-1.303-8.481l6.644-6.644a.856.856 0 111.212 1.212l-7.25 7.25a.856.856 0 01-1.212 0l-3.75-3.75a.856.856 0 111.212-1.212l3.144 3.144z",{width:24}),kyi=ge("M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm32-48h224V288l-23.5-23.5c-4.7-4.7-12.3-4.7-17 0L176 352l-39.5-39.5c-4.7-4.7-12.3-4.7-17 0L80 352v64zm48-240c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z",{width:384,height:512}),BhA=gi(({theme:A})=>ge(cA(et,{children:[N("path",{d:"M25 26H111V111H25",fill:aB(A)}),N("path",{d:"M25 111C25 80.2068 25 49.4135 25 26M25 26C48.6174 26 72.2348 26 111 26H25ZM25 26C53.3671 26 81.7343 26 111 26H25ZM111 26C111 52.303 111 78.606 111 111V26ZM111 26C111 51.2947 111 76.5893 111 111V26ZM111 111C87.0792 111 63.1585 111 25 111H111ZM111 111C87.4646 111 63.9293 111 25 111H111ZM25 111C25 81.1514 25 51.3028 25 26V111Z",stroke:aB(A),strokeWidth:"2"}),N("path",{d:"M100 100H160V160H100",fill:aB(A)}),N("path",{d:"M100 160C100 144.106 100 128.211 100 100M100 100C117.706 100 135.412 100 160 100H100ZM100 100C114.214 100 128.428 100 160 100H100ZM160 100C160 120.184 160 140.369 160 160V100ZM160 100C160 113.219 160 126.437 160 160V100ZM160 160C145.534 160 131.068 160 100 160H160ZM160 160C143.467 160 126.934 160 100 160H160ZM100 160C100 143.661 100 127.321 100 100V160Z",stroke:aB(A),strokeWidth:"2"}),cA("g",{fill:FIe(A),stroke:aB(A),strokeWidth:"6",children:[N("rect",{x:"2.5",y:"2.5",width:"30",height:"30"}),N("rect",{x:"2.5",y:"149.5",width:"30",height:"30"}),N("rect",{x:"147.5",y:"149.5",width:"30",height:"30"}),N("rect",{x:"147.5",y:"2.5",width:"30",height:"30"})]})]}),{width:182,height:182,mirror:!0})),EhA=gi(({theme:A})=>ge(cA(et,{children:[N("path",{d:"M25 26H111V111H25",fill:aB(A)}),N("path",{d:"M25 111C25 80.2068 25 49.4135 25 26M25 26C48.6174 26 72.2348 26 111 26H25ZM25 26C53.3671 26 81.7343 26 111 26H25ZM111 26C111 52.303 111 78.606 111 111V26ZM111 26C111 51.2947 111 76.5893 111 111V26ZM111 111C87.0792 111 63.1585 111 25 111H111ZM111 111C87.4646 111 63.9293 111 25 111H111ZM25 111C25 81.1514 25 51.3028 25 26V111Z",stroke:aB(A),strokeWidth:"2"}),N("path",{d:"M100 100H160V160H100",fill:aB(A)}),N("path",{d:"M100 160C100 144.106 100 128.211 100 100M100 100C117.706 100 135.412 100 160 100H100ZM100 100C114.214 100 128.428 100 160 100H100ZM160 100C160 120.184 160 140.369 160 160V100ZM160 100C160 113.219 160 126.437 160 160V100ZM160 160C145.534 160 131.068 160 100 160H160ZM160 160C143.467 160 126.934 160 100 160H160ZM100 160C100 143.661 100 127.321 100 100V160Z",stroke:aB(A),strokeWidth:"2"}),cA("g",{fill:FIe(A),stroke:aB(A),strokeWidth:"6",children:[N("rect",{x:"2.5",y:"2.5",width:"30",height:"30"}),N("rect",{x:"78.5",y:"149.5",width:"30",height:"30"}),N("rect",{x:"147.5",y:"149.5",width:"30",height:"30"}),N("rect",{x:"147.5",y:"78.5",width:"30",height:"30"}),N("rect",{x:"105.5",y:"2.5",width:"30",height:"30"}),N("rect",{x:"2.5",y:"102.5",width:"30",height:"30"})]})]}),{width:182,height:182,mirror:!0})),Ahe=ge(N("g",{strokeWidth:1.25,children:N("path",{d:"M5.879 2.625h8.242a3.27 3.27 0 0 1 3.254 3.254v8.242a3.27 3.27 0 0 1-3.254 3.254H5.88a3.27 3.27 0 0 1-3.254-3.254V5.88A3.27 3.27 0 0 1 5.88 2.626l-.001-.001ZM4.518 16.118l7.608-12.83m.198 13.934 5.051-9.897M2.778 9.675l9.348-6.387m-7.608 12.83 12.857-8.793"})}),Yr),ehe=ge(cA(et,{children:[N("path",{d:"M5.879 2.625h8.242a3.254 3.254 0 0 1 3.254 3.254v8.242a3.254 3.254 0 0 1-3.254 3.254H5.88a3.254 3.254 0 0 1-3.254-3.254V5.88a3.254 3.254 0 0 1 3.254-3.254Z",stroke:"currentColor",strokeWidth:"1.25"}),N("mask",{id:"FillHachureIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:2,y:2,width:16,height:16,children:N("path",{d:"M5.879 2.625h8.242a3.254 3.254 0 0 1 3.254 3.254v8.242a3.254 3.254 0 0 1-3.254 3.254H5.88a3.254 3.254 0 0 1-3.254-3.254V5.88a3.254 3.254 0 0 1 3.254-3.254Z",fill:"currentColor",stroke:"currentColor",strokeWidth:"1.25"})}),N("g",{mask:"url(#FillHachureIcon)",children:N("path",{d:"M2.258 15.156 15.156 2.258M7.324 20.222 20.222 7.325m-20.444 5.35L12.675-.222m-8.157 18.34L17.416 5.22",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})})]}),Yr),the=ge(cA(et,{children:[cA("g",{clipPath:"url(#a)",children:[N("path",{d:"M5.879 2.625h8.242a3.254 3.254 0 0 1 3.254 3.254v8.242a3.254 3.254 0 0 1-3.254 3.254H5.88a3.254 3.254 0 0 1-3.254-3.254V5.88a3.254 3.254 0 0 1 3.254-3.254Z",stroke:"currentColor",strokeWidth:"1.25"}),N("mask",{id:"FillCrossHatchIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:-1,y:-1,width:22,height:22,children:N("path",{d:"M2.426 15.044 15.044 2.426M7.383 20 20 7.383M0 12.617 12.617 0m-7.98 17.941L17.256 5.324m-2.211 12.25L2.426 4.956M20 12.617 7.383 0m5.234 20L0 7.383m17.941 7.98L5.324 2.745",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),N("g",{mask:"url(#FillCrossHatchIcon)",children:N("path",{d:"M14.121 2H5.88A3.879 3.879 0 0 0 2 5.879v8.242A3.879 3.879 0 0 0 5.879 18h8.242A3.879 3.879 0 0 0 18 14.121V5.88A3.879 3.879 0 0 0 14.121 2Z",fill:"currentColor"})})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),rhe=ge(cA(et,{children:[N("g",{clipPath:"url(#a)",children:N("path",{d:"M4.91 2.625h10.18a2.284 2.284 0 0 1 2.285 2.284v10.182a2.284 2.284 0 0 1-2.284 2.284H4.909a2.284 2.284 0 0 1-2.284-2.284V4.909a2.284 2.284 0 0 1 2.284-2.284Z",stroke:"currentColor",strokeWidth:"1.25"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),{...Yr,fill:"currentColor"}),dhA=ge(N(et,{children:N("path",{d:"M4.167 10h11.666",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),Yr),ihe=ge(N("path",{d:"M5 10h10",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"}),Yr),uhe=ge(N("path",{d:"M5 10h10",stroke:"currentColor",strokeWidth:"3.75",strokeLinecap:"round",strokeLinejoin:"round"}),Yr),Fyi=gi(({theme:A})=>ge(N("path",{d:"M6 10H34",stroke:aB(A),strokeWidth:2,fill:"none",strokeLinecap:"round"}),{width:40,height:20})),ahe=ge(cA("g",{strokeWidth:"2",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 12h2"}),N("path",{d:"M17 12h2"}),N("path",{d:"M11 12h2"})]}),ct),nhe=ge(cA("g",{strokeWidth:"2",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 12v.01"}),N("path",{d:"M8 12v.01"}),N("path",{d:"M12 12v.01"}),N("path",{d:"M16 12v.01"}),N("path",{d:"M20 12v.01"})]}),ct),ohe=ge(N("path",{d:"M2.5 12.038c1.655-.885 5.9-3.292 8.568-4.354 2.668-1.063.101 2.821 1.32 3.104 1.218.283 5.112-1.814 5.112-1.814",strokeWidth:"1.25"}),Yr),she=ge(N("path",{d:"M2.5 12.563c1.655-.886 5.9-3.293 8.568-4.355 2.668-1.062.101 2.822 1.32 3.105 1.218.283 5.112-1.814 5.112-1.814m-13.469 2.23c2.963-1.586 6.13-5.62 7.468-4.998 1.338.623-1.153 4.11-.132 5.595 1.02 1.487 6.133-1.43 6.133-1.43",strokeWidth:"1.25"}),Yr),lhe=ge(N("path",{d:"M2.5 11.936c1.737-.879 8.627-5.346 10.42-5.268 1.795.078-.418 5.138.345 5.736.763.598 3.53-1.789 4.235-2.147M2.929 9.788c1.164-.519 5.47-3.28 6.987-3.114 1.519.165 1 3.827 2.121 4.109 1.122.281 3.839-2.016 4.606-2.42",strokeWidth:"1.25"}),Yr),ghe=ge(cA("svg",{strokeWidth:"1.5",children:[N("path",{d:"M3.33334 9.99998V6.66665C3.33334 6.04326 3.33403 4.9332 3.33539 3.33646C4.95233 3.33436 6.06276 3.33331 6.66668 3.33331H10"}),N("path",{d:"M13.3333 3.33331V3.34331"}),N("path",{d:"M16.6667 3.33331V3.34331"}),N("path",{d:"M16.6667 6.66669V6.67669"}),N("path",{d:"M16.6667 10V10.01"}),N("path",{d:"M3.33334 13.3333V13.3433"}),N("path",{d:"M16.6667 13.3333V13.3433"}),N("path",{d:"M3.33334 16.6667V16.6767"}),N("path",{d:"M6.66666 16.6667V16.6767"}),N("path",{d:"M10 16.6667V16.6767"}),N("path",{d:"M13.3333 16.6667V16.6767"}),N("path",{d:"M16.6667 16.6667V16.6767"})]}),Yr),che=ge(cA("g",{strokeWidth:"1.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 12v-4a4 4 0 0 1 4 -4h4"}),N("line",{x1:"16",y1:"4",x2:"16",y2:"4.01"}),N("line",{x1:"20",y1:"4",x2:"20",y2:"4.01"}),N("line",{x1:"20",y1:"8",x2:"20",y2:"8.01"}),N("line",{x1:"20",y1:"12",x2:"20",y2:"12.01"}),N("line",{x1:"4",y1:"16",x2:"4",y2:"16.01"}),N("line",{x1:"20",y1:"16",x2:"20",y2:"16.01"}),N("line",{x1:"4",y1:"20",x2:"4",y2:"20.01"}),N("line",{x1:"8",y1:"20",x2:"8",y2:"20.01"}),N("line",{x1:"12",y1:"20",x2:"12",y2:"20.01"}),N("line",{x1:"16",y1:"20",x2:"16",y2:"20.01"}),N("line",{x1:"20",y1:"20",x2:"20",y2:"20.01"})]}),ct),Che=ge(cA("g",{stroke:"currentColor",opacity:0.3,strokeWidth:2,children:[N("path",{d:"M12 12l9 0"}),N("path",{d:"M3 9l6 6"}),N("path",{d:"M3 15l6 -6"})]}),ct),Bhe=gi(({flip:A=!1})=>ge(cA("g",{transform:A?"translate(40, 0) scale(-1, 1)":"",stroke:"currentColor",strokeWidth:2,fill:"none",children:[N("path",{d:"M34 10H6M34 10L27 5M34 10L27 15"}),N("path",{d:"M27.5 5L34.5 10L27.5 15"})]}),{width:40,height:20})),Ehe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"currentColor",transform:A?"translate(40, 0) scale(-1, 1)":"",children:[N("path",{d:"M32 10L6 10",strokeWidth:2}),N("circle",{r:"4",transform:"matrix(-1 0 0 1 30 10)"})]}),{width:40,height:20})),dhe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"none",transform:A?"translate(40, 0) scale(-1, 1)":"",strokeWidth:2,children:[N("path",{d:"M26 10L6 10"}),N("circle",{r:"4",transform:"matrix(-1 0 0 1 30 10)"})]}),{width:40,height:20})),Ihe=gi(({flip:A=!1})=>ge(N("g",{transform:A?"translate(40, 0) scale(-1, 1)":"",children:N("path",{d:"M34 10H5.99996M34 10L34 5M34 10L34 15",stroke:"currentColor",strokeWidth:2,fill:"none"})}),{width:40,height:20})),hhe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"currentColor",transform:A?"translate(40, 0) scale(-1, 1)":"",children:[N("path",{d:"M32 10L6 10",strokeWidth:2}),N("path",{d:"M27.5 5.5L34.5 10L27.5 14.5L27.5 5.5"})]}),{width:40,height:20})),Qhe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"none",transform:A?"translate(40, 0) scale(-1, 1)":"",strokeWidth:2,strokeLinejoin:"round",children:[N("path",{d:"M6,9.5H27"}),N("path",{d:"M27,5L34,10L27,14Z",fill:"none"})]}),{width:40,height:20})),phe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"currentColor",transform:A?"translate(40, 0) scale(-1, 1)":"",strokeLinejoin:"round",strokeWidth:2,children:[N("path",{d:"M6,9.5H20"}),N("path",{d:"M27,5L34,10L27,14L20,9.5Z"})]}),{width:40,height:20})),fhe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"none",transform:A?"translate(40, 0) scale(-1, 1)":"",strokeLinejoin:"round",strokeWidth:2,children:[N("path",{d:"M6,9.5H20"}),N("path",{d:"M27,5L34,10L27,14L20,9.5Z"})]}),{width:40,height:20})),mhe=gi(({flip:A=!1})=>ge(N("g",{stroke:"currentColor",fill:"none",transform:A?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:N("path",{d:"M34,10 H6 M15,10 L7,5 M15,10 L7,15"})}),{width:40,height:20})),Dhe=gi(({flip:A=!1})=>ge(N("g",{stroke:"currentColor",fill:"none",transform:A?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:N("path",{d:"M34,10 H6 M15,10 L15,15 L15,5"})}),{width:40,height:20})),yhe=gi(({flip:A=!1})=>ge(N("g",{stroke:"currentColor",fill:"none",transform:A?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:N("path",{d:"M34,10 H6 M15,10 L15,16 L15,4 M15,10 L7,5 M15,10 L7,15"})}),{width:40,height:20})),whe=ge(cA(et,{children:[N("g",{clipPath:"url(#a)",children:N("path",{d:"M14.167 6.667a3.333 3.333 0 0 0-3.334-3.334H9.167a3.333 3.333 0 0 0 0 6.667h1.666a3.333 3.333 0 0 1 0 6.667H9.167a3.333 3.333 0 0 1-3.334-3.334",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),bhe=ge(cA(et,{children:[N("g",{clipPath:"url(#a)",children:N("path",{d:"M5 16.667V3.333L10 15l5-11.667v13.334",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),vhe=ge(cA(et,{children:[N("g",{clipPath:"url(#a)",children:N("path",{d:"M5.833 3.333v13.334h8.334",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),khe=ge(N(et,{children:N("path",{d:"m1.667 3.333 6.666 13.334M8.333 3.333 1.667 16.667M11.667 3.333v13.334h6.666",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),Yr),iS=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 7v-2h13v2"}),N("path",{d:"M10 5v14"}),N("path",{d:"M12 19h-4"}),N("path",{d:"M15 13v-1h6v1"}),N("path",{d:"M18 12v7"}),N("path",{d:"M17 19h2"})]}),ct),x$t=ge(N(et,{children:cA("g",{stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M7 12h10"}),N("path",{d:"M7 5v14"}),N("path",{d:"M17 5v14"}),N("path",{d:"M15 19h4"}),N("path",{d:"M15 5h4"}),N("path",{d:"M5 19h4"}),N("path",{d:"M5 5h4"})]})}),ct),N8=ge(N(et,{children:N("g",{stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:N("path",{d:"M5.833 16.667v-10a3.333 3.333 0 0 1 3.334-3.334h1.666a3.333 3.333 0 0 1 3.334 3.334v10M5.833 10.833h8.334"})})}),Yr),R_=ge(cA(et,{children:[N("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:N("path",{d:"M5.833 6.667 2.5 10l3.333 3.333M14.167 6.667 17.5 10l-3.333 3.333M11.667 3.333 8.333 16.667"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Yr),Fhe=ge(cA("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),N("line",{x1:"4",y1:"12",x2:"12",y2:"12"}),N("line",{x1:"4",y1:"16",x2:"16",y2:"16"})]}),ct),xhe=ge(cA("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),N("line",{x1:"8",y1:"12",x2:"16",y2:"12"}),N("line",{x1:"6",y1:"16",x2:"18",y2:"16"})]}),ct),She=ge(cA("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),N("line",{x1:"10",y1:"12",x2:"20",y2:"12"}),N("line",{x1:"8",y1:"16",x2:"20",y2:"16"})]}),ct),Lhe=gi(({theme:A})=>ge(cA("g",{strokeWidth:"1.5",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"4",x2:"20",y2:"4"}),N("rect",{x:"9",y:"8",width:"6",height:"12",rx:"2"})]}),ct)),Rhe=gi(({theme:A})=>ge(cA("g",{strokeWidth:"2",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"20",x2:"20",y2:"20"}),N("rect",{x:"9",y:"4",width:"6",height:"12",rx:"2"})]}),ct)),Nhe=gi(({theme:A})=>ge(cA("g",{strokeWidth:"1.5",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"12",x2:"9",y2:"12"}),N("line",{x1:"15",y1:"12",x2:"20",y2:"12"}),N("rect",{x:"9",y:"6",width:"6",height:"12",rx:"2"})]}),ct)),IhA=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M21 19h-18l9 -15"}),N("path",{d:"M20.615 15.171h.015"}),N("path",{d:"M19.515 11.771h.015"}),N("path",{d:"M17.715 8.671h.015"}),N("path",{d:"M15.415 5.971h.015"})]}),ct),Ghe=ge(N("path",{d:"M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zM393.4 288H328v112c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V288h-65.4c-14.3 0-21.4-17.2-11.3-27.3l105.4-105.4c6.2-6.2 16.4-6.2 22.6 0l105.4 105.4c10.1 10.1 2.9 27.3-11.3 27.3z",fill:"currentColor"}),{width:640,height:512}),xyi=ge(N("path",{d:"M480 416C497.7 416 512 430.3 512 448C512 465.7 497.7 480 480 480H150.6C133.7 480 117.4 473.3 105.4 461.3L25.37 381.3C.3786 356.3 .3786 315.7 25.37 290.7L258.7 57.37C283.7 32.38 324.3 32.38 349.3 57.37L486.6 194.7C511.6 219.7 511.6 260.3 486.6 285.3L355.9 416H480zM265.4 416L332.7 348.7L195.3 211.3L70.63 336L150.6 416L265.4 416z"})),hhA=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 13v-7.5a1.5 1.5 0 0 1 3 0v6.5"}),N("path",{d:"M11 5.5v-2a1.5 1.5 0 1 1 3 0v8.5"}),N("path",{d:"M14 5.5a1.5 1.5 0 0 1 3 0v6.5"}),N("path",{d:"M17 7.5a1.5 1.5 0 0 1 3 0v8.5a6 6 0 0 1 -6 6h-2h.208a6 6 0 0 1 -5.012 -2.7a69.74 69.74 0 0 1 -.196 -.3c-.312 -.479 -1.407 -2.388 -3.286 -5.728a1.5 1.5 0 0 1 .536 -2.022a1.867 1.867 0 0 1 2.28 .28l1.47 1.47"})]}),ct),QhA=ge(cA(et,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"}),N("path",{d:"M7 11l5 5l5 -5"}),N("path",{d:"M12 4l0 12"})]}),ct),lW=ge(cA(et,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 8m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z"}),N("path",{d:"M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2"})]}),ct),Uhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M7 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),N("path",{d:"M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),N("path",{d:"M9.15 14.85l8.85 -10.85"}),N("path",{d:"M6 4l8.85 10.85"})]}),ct),Mhe=ge(cA(et,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"}),N("path",{d:"M12 17l0 .01"}),N("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),ct),Syi=ge(cA(et,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M7 4v16l13 -8z"})]}),ct),Lyi=ge(cA(et,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M17 4h-10a3 3 0 0 0 -3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3 -3v-10a3 3 0 0 0 -3 -3z",strokeWidth:"0",fill:"currentColor"})]}),ct),The=ge(cA(et,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 12l5 5l10 -10"})]}),ct),Yhe=ge(cA(et,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10.24 3.957l-8.422 14.06a1.989 1.989 0 0 0 1.7 2.983h16.845a1.989 1.989 0 0 0 1.7 -2.983l-8.423 -14.06a1.989 1.989 0 0 0 -3.4 0z"}),N("path",{d:"M12 9v4"}),N("path",{d:"M12 17h.01"})]}),ct),Hhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M11 7l6 6"}),N("path",{d:"M4 16l11.7 -11.7a1 1 0 0 1 1.4 0l2.6 2.6a1 1 0 0 1 0 1.4l-11.7 11.7h-4v-4z"})]}),ct),Khe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 3l-4 7h8z"}),N("path",{d:"M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),N("path",{d:"M4 14m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z"})]}),ct),phA=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 7l16 0"}),N("path",{d:"M4 17l16 0"}),N("path",{d:"M7 4l0 16"}),N("path",{d:"M17 4l0 16"})]}),ct),fhA=ge(N("path",{fill:"currentColor",d:"M407.48,111.18C335.587,108.103 269.573,152.338 245.08,220C220.587,152.338 154.573,108.103 82.68,111.18C80.285,168.229 107.577,222.632 154.74,254.82C178.908,271.419 193.35,298.951 193.27,328.27L193.27,379.13L296.9,379.13L296.9,328.27C296.816,298.953 311.255,271.42 335.42,254.82C382.596,222.644 409.892,168.233 407.48,111.18Z"})),uS=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M4.16602 10H15.8327"}),N("path",{d:"M12.5 13.3333L15.8333 10"}),N("path",{d:"M12.5 6.66666L15.8333 9.99999"})]}),Yr),mhA=ge(cA("g",{fill:"none",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",transform:"rotate(90 10 10)",children:[N("path",{clipRule:"evenodd",d:"m9.644 13.69 7.774-7.773a2.357 2.357 0 0 0-3.334-3.334l-7.773 7.774L8 12l1.643 1.69Z"}),N("path",{d:"m13.25 3.417 3.333 3.333M10 10l2-2M5 15l3-3M2.156 17.894l1-1M5.453 19.029l-.144-1.407M2.377 11.887l.866 1.118M8.354 17.273l-1.194-.758M.953 14.652l1.408.13"})]}),20),DhA=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z"}),N("path",{d:"M6 21l15 -15l-3 -3l-15 15l3 3"}),N("path",{d:"M15 6l3 3"}),N("path",{d:"M9 3a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"}),N("path",{d:"M19 13a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"})]}),ct),Ryi=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z"}),N("path",{d:"M6 21l15 -15l-3 -3l-15 15l3 3"}),N("path",{d:"M15 6l3 3"}),N("path",{d:"M9 3a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"}),N("path",{d:"M19 13a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"})]}),ct),Nyi=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M11.217 19.384a3.501 3.501 0 0 0 6.783 -1.217v-5.167l-6 -3.35"}),N("path",{d:"M5.214 15.014a3.501 3.501 0 0 0 4.446 5.266l4.34 -2.534v-6.946"}),N("path",{d:"M6 7.63c-1.391 -.236 -2.787 .395 -3.534 1.689a3.474 3.474 0 0 0 1.271 4.745l4.263 2.514l6 -3.348"}),N("path",{d:"M12.783 4.616a3.501 3.501 0 0 0 -6.783 1.217v5.067l6 3.45"}),N("path",{d:"M18.786 8.986a3.501 3.501 0 0 0 -4.446 -5.266l-4.34 2.534v6.946"}),N("path",{d:"M18 16.302c1.391 .236 2.787 -.395 3.534 -1.689a3.474 3.474 0 0 0 -1.271 -4.745l-4.308 -2.514l-5.955 3.42"})]}),ct),Jhe=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2"}),N("path",{d:"M4 16v2a2 2 0 0 0 2 2h2"}),N("path",{d:"M16 4h2a2 2 0 0 1 2 2v2"}),N("path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2"})]}),ct),gW=ge(cA("g",{stroke:"currentColor",fill:"none",strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0"}),N("path",{d:"M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6"})]}),ct),Ohe=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10.585 10.587a2 2 0 0 0 2.829 2.828"}),N("path",{d:"M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87"}),N("path",{d:"M3 3l18 18"})]}),ct),Phe=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15.5 13a3.5 3.5 0 0 0 -3.5 3.5v1a3.5 3.5 0 0 0 7 0v-1.8"}),N("path",{d:"M8.5 13a3.5 3.5 0 0 1 3.5 3.5v1a3.5 3.5 0 0 1 -7 0v-1.8"}),N("path",{d:"M17.5 16a3.5 3.5 0 0 0 0 -7h-.5"}),N("path",{d:"M19 9.3v-2.8a3.5 3.5 0 0 0 -7 0"}),N("path",{d:"M6.5 16a3.5 3.5 0 0 1 0 -7h.5"}),N("path",{d:"M5 9.3v-2.8a3.5 3.5 0 0 1 7 0v10"})]}),ct),_he=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15.5 13a3.5 3.5 0 0 0 -3.5 3.5v1a3.5 3.5 0 0 0 7 0v-1.8"}),N("path",{d:"M8.5 13a3.5 3.5 0 0 1 3.5 3.5v1a3.5 3.5 0 0 1 -7 0v-1.8"}),N("path",{d:"M17.5 16a3.5 3.5 0 0 0 0 -7h-.5"}),N("path",{d:"M19 9.3v-2.8a3.5 3.5 0 0 0 -7 0"}),N("path",{d:"M6.5 16a3.5 3.5 0 0 1 0 -7h.5"}),N("path",{d:"M5 9.3v-2.8a3.5 3.5 0 0 1 7 0v10"})]}),ct),np=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0"}),N("path",{d:"M21 21l-6 -6"})]}),ct),Whe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M20.984 12.53a9 9 0 1 0 -7.552 8.355"}),N("path",{d:"M12 7v5l3 3"}),N("path",{d:"M19 16l-2 3h4l-2 3"})]}),ct),qhe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M9 2m0 3a3 3 0 0 1 3 -3h0a3 3 0 0 1 3 3v5a3 3 0 0 1 -3 3h0a3 3 0 0 1 -3 -3z"}),N("path",{d:"M5 10a7 7 0 0 0 14 0"}),N("path",{d:"M8 21l8 0"}),N("path",{d:"M12 17l0 4"})]}),ct),zhe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 3l18 18"}),N("path",{d:"M9 5a3 3 0 0 1 6 0v5a3 3 0 0 1 -.13 .874m-2 2a3 3 0 0 1 -3.87 -2.872v-1"}),N("path",{d:"M5 10a7 7 0 0 0 10.846 5.85m2 -2a6.967 6.967 0 0 0 1.152 -3.85"}),N("path",{d:"M8 21l8 0"}),N("path",{d:"M12 17l0 4"})]}),ct),yhA=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11"})]}),ct),Zhe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 8m0 1a1 1 0 0 1 1 -1h6a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-6a1 1 0 0 1 -1 -1z"}),N("path",{d:"M12 20v.01"}),N("path",{d:"M16 20v.01"}),N("path",{d:"M8 20v.01"}),N("path",{d:"M4 20v.01"}),N("path",{d:"M4 16v.01"}),N("path",{d:"M4 12v.01"}),N("path",{d:"M4 8v.01"}),N("path",{d:"M4 4v.01"}),N("path",{d:"M8 4v.01"}),N("path",{d:"M12 4v.01"}),N("path",{d:"M16 4v.01"}),N("path",{d:"M20 4v.01"}),N("path",{d:"M20 8v.01"}),N("path",{d:"M20 12v.01"}),N("path",{d:"M20 16v.01"}),N("path",{d:"M20 20v.01"})]}),ct),Vhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 3v18"}),N("path",{d:"M19 21v-18"}),N("path",{d:"M5 7h14"}),N("path",{d:"M5 15h14"}),N("path",{d:"M8 13v4"}),N("path",{d:"M11 13v4"}),N("path",{d:"M16 13v4"}),N("path",{d:"M14 5v4"}),N("path",{d:"M11 5v4"}),N("path",{d:"M8 5v4"}),N("path",{d:"M3 21h18"})]}),ct),jhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 12l18 0"}),N("path",{d:"M7 16l10 0l-10 5l0 -5"}),N("path",{d:"M7 8l10 0l-10 -5l0 5"})]}),ct),Xhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 3l0 18"}),N("path",{d:"M16 7l0 10l5 0l-5 -10"}),N("path",{d:"M8 7l0 10l-5 0l5 -10"})]}),ct),whA=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 3m0 2a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2z"}),N("path",{d:"M19 6h1a2 2 0 0 1 2 2a5 5 0 0 1 -5 5l-5 0v2"}),N("path",{d:"M10 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z"})]}),ct),cW=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15 15m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0"}),N("path",{d:"M22 22l-3 -3"}),N("path",{d:"M6 18h-1a2 2 0 0 1 -2 -2v-1"}),N("path",{d:"M3 11v-1"}),N("path",{d:"M3 6v-1a2 2 0 0 1 2 -2h1"}),N("path",{d:"M10 3h1"}),N("path",{d:"M15 3h1a2 2 0 0 1 2 2v1"})]}),ct),$he=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M14 3v4a1 1 0 0 0 1 1h4"}),N("path",{d:"M5 12v-7a2 2 0 0 1 2 -2h7l5 5v4"}),N("path",{d:"M4 20.25c0 .414 .336 .75 .75 .75h1.25a1 1 0 0 0 1 -1v-1a1 1 0 0 0 -1 -1h-1a1 1 0 0 1 -1 -1v-1a1 1 0 0 1 1 -1h1.25a.75 .75 0 0 1 .75 .75"}),N("path",{d:"M10 15l2 6l2 -6"}),N("path",{d:"M20 15h-1a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h1v-3"})]}),ct),AQe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M14 3v4a1 1 0 0 0 1 1h4"}),N("path",{d:"M5 12v-7a2 2 0 0 1 2 -2h7l5 5v4"}),N("path",{d:"M20 15h-1a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h1v-3"}),N("path",{d:"M5 18h1.5a1.5 1.5 0 0 0 0 -3h-1.5v6"}),N("path",{d:"M11 21v-6l3 6v-6"})]}),ct),eQe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 13v-8a2 2 0 0 1 2 -2h1a2 2 0 0 1 2 2v8a2 2 0 0 0 6 0v-8a2 2 0 0 1 2 -2h1a2 2 0 0 1 2 2v8a8 8 0 0 1 -16 0"}),N("path",{d:"M4 8l5 0"}),N("path",{d:"M15 8l4 0"})]}),ct),tQe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 14c.83 .642 2.077 1.017 3.5 1c1.423 .017 2.67 -.358 3.5 -1c.83 -.642 2.077 -1.017 3.5 -1c1.423 -.017 2.67 .358 3.5 1"}),N("path",{d:"M8 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2"}),N("path",{d:"M12 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2"}),N("path",{d:"M3 10h14v5a6 6 0 0 1 -6 6h-2a6 6 0 0 1 -6 -6v-5z"}),N("path",{d:"M16.746 16.726a3 3 0 1 0 .252 -5.555"})]}),ct),rQe=ge(cA("g",{stroke:"currentColor",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 5a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-16a1 1 0 0 1-1-1v-10zM7 20h10M9 16v4M15 16v4"})]}),{...ct,strokeWidth:1.5}),Gyi=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2"}),N("path",{d:"M21 12h-13l3 -3"}),N("path",{d:"M11 15l-3 -3"})]}),ct),iQe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M2 8a4 4 0 0 1 4 -4h12a4 4 0 0 1 4 4v8a4 4 0 0 1 -4 4h-12a4 4 0 0 1 -4 -4v-8z"}),N("path",{d:"M10 9l5 3l-5 3z"})]}),ct),uQe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 6h18"}),N("path",{d:"M3 12h18"}),N("path",{d:"M3 18h18"}),N("path",{d:"M6 3v18"}),N("path",{d:"M12 3v18"}),N("path",{d:"M18 3v18"})]}),ct),aQe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M17 3m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z"}),N("path",{d:"M3 17m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z"}),N("path",{d:"M17 5c-6.627 0 -12 5.373 -12 12"})]}),ct),nQe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 18l12 -12"}),N("path",{d:"M18 10v-4h-4"})]}),ct),oQe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4,19L10,19C11.097,19 12,18.097 12,17L12,9C12,7.903 12.903,7 14,7L21,7"}),N("path",{d:"M18 4l3 3l-3 3"})]}),ct),sQe=ge(cA("g",{children:[N("path",{d:"M16,12L20,9L16,6"}),N("path",{d:"M6 20c0 -6.075 4.925 -11 11 -11h3"})]}),ct),bhA=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 9l6 6l6 -6"})]}),ct),lQe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 15l6 -6l6 6"})]}),ct),gQe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 15l6 -6l6 6"})]}),ct),vhA=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 5v10a1 1 0 0 0 1 1h10"}),N("path",{d:"M5 8h10a1 1 0 0 1 1 1v10"})]}),ct),khA=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),N("path",{d:"M19 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),N("path",{d:"M5 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),N("path",{d:"M19 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),N("path",{d:"M5 7l0 10"}),N("path",{d:"M7 5l10 0"}),N("path",{d:"M7 19l10 0"}),N("path",{d:"M19 7l0 10"})]}),ct),N_={[aa.Excalifont]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},icon:y9},[aa.Nunito]:{metrics:{unitsPerEm:1000,ascender:1011,descender:-353,lineHeight:1.35},icon:N8},[aa["Lilita One"]]:{metrics:{unitsPerEm:1000,ascender:923,descender:-220,lineHeight:1.15},icon:x$t},[aa["Comic Shanns"]]:{metrics:{unitsPerEm:1000,ascender:750,descender:-250,lineHeight:1.25},icon:R_},[aa.Virgil]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},icon:y9,deprecated:!0},[aa.Helvetica]:{metrics:{unitsPerEm:2048,ascender:1577,descender:-471,lineHeight:1.15},icon:N8,deprecated:!0,local:!0},[aa.Cascadia]:{metrics:{unitsPerEm:2048,ascender:1900,descender:-480,lineHeight:1.2},icon:R_,deprecated:!0},[aa["Liberation Sans"]]:{metrics:{unitsPerEm:2048,ascender:1854,descender:-434,lineHeight:1.15},serverSide:!0},[I9.Xiaolai]:{metrics:{unitsPerEm:1000,ascender:880,descender:-144,lineHeight:1.15},fallback:!0},[I9["Segoe UI Emoji"]]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},local:!0,fallback:!0}},jm={LATIN:"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD",LATIN_EXT:"U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF",CYRILIC_EXT:"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F",CYRILIC:"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116",VIETNAMESE:"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB"},S$t=class extends Error{constructor(A="Couldn't export canvas.",e="CANVAS_ERROR"){super(),this.name=e,this.message=A}},aS=class extends DOMException{constructor(A="Request Aborted"){super(A,"AbortError")}},O1=class extends Error{constructor(A="Image Scene Data Error",e="IMAGE_SCENE_DATA_ERROR"){super(A);UA(this,"code"),this.name="EncodingError",this.code=e}},L$t=class extends Error{constructor(){super(...arguments);UA(this,"code","ELEMENT_HAS_INVALID_INDEX")}},cQe=class extends Error{constructor(A="Worker URL is not defined!",e="WORKER_URL_NOT_DEFINED"){super(A);UA(this,"code"),this.name="WorkerUrlNotDefinedError",this.code=e}},CQe=class extends Error{constructor(A="Worker has to be in a separate chunk!",e="WORKER_IN_THE_MAIN_CHUNK"){super(A);UA(this,"code"),this.name="WorkerInTheMainChunkError",this.code=e}},xEe=class extends Error{constructor(A){super(A),this.name="ExcalidrawError"}},SEe=typeof Worker<"u";UA(BQe,"ASSETS_FALLBACK_URL",`https://esm.sh/${Qr.PKG_NAME?`${Qr.PKG_NAME}@${Qr.PKG_VERSION}`:"@excalidraw/excalidraw"}/dist/prod/`);Y$t=BQe,K$t=[{uri:H$t}],W$t=[{uri:J$t,descriptors:{unicodeRange:"U+20-7e,U+a1-a6,U+a8,U+ab-ac,U+af-b1,U+b4,U+b8,U+bb-bc,U+bf-cf,U+d1-d7,U+d9-de,U+e0-ef,U+f1-f7,U+f9-ff,U+131,U+152-153,U+2c6,U+2da,U+2dc,U+2013-2014,U+2018-201a,U+201c-201d,U+2020-2022,U+2026,U+2039-203a,U+2044,U+20ac,U+2191,U+2193,U+2212"}},{uri:O$t,descriptors:{unicodeRange:"U+100-10f,U+112-125,U+128-130,U+134-137,U+139-13c,U+141-148,U+14c-151,U+154-161,U+164-165,U+168-17f,U+1bf,U+1f7,U+218-21b,U+237,U+1e80-1e85,U+1ef2-1ef3,U+a75b"}},{uri:P$t,descriptors:{unicodeRange:"U+2c7,U+2d8-2d9,U+2db,U+2dd,U+315,U+2190,U+2192,U+2200,U+2203-2204,U+2264-2265,U+f6c3"}},{uri:_$t,descriptors:{unicodeRange:"U+3bb"}}],q$t=[{uri:FhA}],eAr=[{uri:z$t,descriptors:{unicodeRange:"U+20-7e,U+a0-a3,U+a5-a6,U+a8-ab,U+ad-b1,U+b4,U+b6-b8,U+ba-ff,U+131,U+152-153,U+2bc,U+2c6,U+2da,U+2dc,U+304,U+308,U+2013-2014,U+2018-201a,U+201c-201e,U+2020,U+2022,U+2024-2026,U+2030,U+2039-203a,U+20ac,U+2122,U+2212"}},{uri:Z$t,descriptors:{unicodeRange:"U+100-130,U+132-137,U+139-149,U+14c-151,U+154-17e,U+192,U+1fc-1ff,U+218-21b,U+237,U+1e80-1e85,U+1ef2-1ef3,U+2113"}},{uri:V$t,descriptors:{unicodeRange:"U+400-45f,U+490-491,U+2116"}},{uri:j$t,descriptors:{unicodeRange:"U+37e,U+384-38a,U+38c,U+38e-393,U+395-3a1,U+3a3-3a8,U+3aa-3cf,U+3d7"}},{uri:X$t,descriptors:{unicodeRange:"U+2c7,U+2d8-2d9,U+2db,U+2dd,U+302,U+306-307,U+30a-30c,U+326-328,U+212e,U+2211,U+fb01-fb02"}},{uri:$$t,descriptors:{unicodeRange:"U+462-463,U+472-475,U+4d8-4d9,U+4e2-4e3,U+4e6-4e9,U+4ee-4ef"}},{uri:AAr,descriptors:{unicodeRange:"U+300-301,U+303"}}],tAr=[{uri:FhA}],iAr=[{uri:rAr}],nAr=[{uri:aAr,descriptors:{unicodeRange:jm.LATIN_EXT}},{uri:uAr,descriptors:{unicodeRange:jm.LATIN}}],CAr=[{uri:gAr,descriptors:{unicodeRange:jm.CYRILIC_EXT,weight:"500"}},{uri:lAr,descriptors:{unicodeRange:jm.CYRILIC,weight:"500"}},{uri:cAr,descriptors:{unicodeRange:jm.VIETNAMESE,weight:"500"}},{uri:sAr,descriptors:{unicodeRange:jm.LATIN_EXT,weight:"500"}},{uri:oAr,descriptors:{unicodeRange:jm.LATIN,weight:"500"}}],EAr=[{uri:BAr}],sir=[{uri:dAr,descriptors:{unicodeRange:"U+f9b8-fa6d,U+fe32,U+fe45-fe4f,U+ff02-ff0b,U+ff0d-ff1e,U+ff20-ff2a"}},{uri:IAr,descriptors:{unicodeRange:"U+20dd-20de,U+25ef,U+ff2b-ffbe,U+ffc2-ffc7,U+ffca-ffcf,U+ffd2-ffd7,U+ffda-ffdc,U+ffe0-ffe6,U+ffe8-ffee"}},{uri:hAr,descriptors:{unicodeRange:"U+d7eb-d7fb,U+f900-f9b7"}},{uri:QAr,descriptors:{unicodeRange:"U+d6f2-d7a3,U+d7b0-d7c6,U+d7cb-d7ea"}},{uri:pAr,descriptors:{unicodeRange:"U+d609-d6f1"}},{uri:fAr,descriptors:{unicodeRange:"U+d520-d608"}},{uri:mAr,descriptors:{unicodeRange:"U+d437-d51f"}},{uri:DAr,descriptors:{unicodeRange:"U+d34e-d436"}},{uri:yAr,descriptors:{unicodeRange:"U+d265-d34d"}},{uri:wAr,descriptors:{unicodeRange:"U+d17c-d264"}},{uri:bAr,descriptors:{unicodeRange:"U+d093-d17b"}},{uri:vAr,descriptors:{unicodeRange:"U+cfaa-d092"}},{uri:kAr,descriptors:{unicodeRange:"U+cec1-cfa9"}},{uri:FAr,descriptors:{unicodeRange:"U+cdd8-cec0"}},{uri:xAr,descriptors:{unicodeRange:"U+ccf1-cdd7"}},{uri:SAr,descriptors:{unicodeRange:"U+cc08-ccf0"}},{uri:LAr,descriptors:{unicodeRange:"U+cb43-cc07"}},{uri:RAr,descriptors:{unicodeRange:"U+ca83-cb42"}},{uri:NAr,descriptors:{unicodeRange:"U+c9a1-ca82"}},{uri:GAr,descriptors:{unicodeRange:"U+c8b8-c9a0"}},{uri:UAr,descriptors:{unicodeRange:"U+c7cf-c8b7"}},{uri:MAr,descriptors:{unicodeRange:"U+c6e6-c7ce"}},{uri:TAr,descriptors:{unicodeRange:"U+c5fd-c6e5"}},{uri:YAr,descriptors:{unicodeRange:"U+c514-c5fc"}},{uri:HAr,descriptors:{unicodeRange:"U+c42b-c513"}},{uri:KAr,descriptors:{unicodeRange:"U+c341-c34e,U+c350-c42a"}},{uri:JAr,descriptors:{unicodeRange:"U+c258-c340"}},{uri:OAr,descriptors:{unicodeRange:"U+c16f-c257"}},{uri:PAr,descriptors:{unicodeRange:"U+c086-c16e"}},{uri:_Ar,descriptors:{unicodeRange:"U+bf9d-c085"}},{uri:WAr,descriptors:{unicodeRange:"U+beb4-bf9c"}},{uri:qAr,descriptors:{unicodeRange:"U+bdcb-beb3"}},{uri:zAr,descriptors:{unicodeRange:"U+bce2-bdca"}},{uri:ZAr,descriptors:{unicodeRange:"U+bbf9-bce1"}},{uri:VAr,descriptors:{unicodeRange:"U+bb10-bbf8"}},{uri:jAr,descriptors:{unicodeRange:"U+ba27-bb0f"}},{uri:XAr,descriptors:{unicodeRange:"U+b93e-ba26"}},{uri:$Ar,descriptors:{unicodeRange:"U+b855-b93d"}},{uri:Aer,descriptors:{unicodeRange:"U+b76c-b854"}},{uri:eer,descriptors:{unicodeRange:"U+b683-b76b"}},{uri:ter,descriptors:{unicodeRange:"U+b59a-b682"}},{uri:rer,descriptors:{unicodeRange:"U+b4b1-b599"}},{uri:ier,descriptors:{unicodeRange:"U+11fb-11ff,U+b3cd-b4b0"}},{uri:uer,descriptors:{unicodeRange:"U+11e6-11fa,U+b2f9-b3cc"}},{uri:aer,descriptors:{unicodeRange:"U+11d1-11e5,U+b225-b2f8"}},{uri:ner,descriptors:{unicodeRange:"U+11bc-11d0,U+b151-b224"}},{uri:oer,descriptors:{unicodeRange:"U+11a7-11bb,U+b07d-b150"}},{uri:ser,descriptors:{unicodeRange:"U+1191-11a6,U+afaa-b07c"}},{uri:ler,descriptors:{unicodeRange:"U+117c-1190,U+aed6-afa9"}},{uri:ger,descriptors:{unicodeRange:"U+1167-117b,U+ae02-aed5"}},{uri:cer,descriptors:{unicodeRange:"U+1152-115e,U+1160-1166,U+ad2d-ae01"}},{uri:Cer,descriptors:{unicodeRange:"U+113d-1151,U+ac59-ad2c"}},{uri:Ber,descriptors:{unicodeRange:"U+1100-113c,U+9f95-9f98,U+9f9c-9f9e,U+9fa1-9fce,U+9fd0,U+a960-a97c,U+ac00-ac58"}},{uri:Eer,descriptors:{unicodeRange:"U+9771-9772,U+9775,U+9777-977b,U+977d-9784,U+9786-978a,U+978c,U+978e-9790,U+9793,U+9795-9797,U+9799-979f,U+97a1-97a2,U+97a4-97aa,U+97ac,U+97ae,U+97b0-97b1,U+97b3,U+97b5-97e5,U+97e8,U+97ee-97f2,U+97f4,U+97f7-982d"}},{uri:der,descriptors:{unicodeRange:"U+9491,U+9496,U+9498,U+94c7,U+94cf,U+94d3-94d4,U+94da,U+94e6,U+94fb,U+951c,U+9520,U+9527,U+9533,U+953d,U+9543,U+9548,U+954b,U+9555,U+955a,U+9560,U+956e,U+9574-9575,U+9577-957e,U+9580-95e7,U+95ec,U+95ff,U+9607,U+9613,U+9618,U+961b,U+961e,U+9620,U+9623-9629,U+962b-962d,U+962f-9630,U+9637-963a,U+963e,U+9641,U+9643,U+964a,U+964e-964f,U+9651-9653,U+9656-965a,U+965c-965e,U+9660,U+9663,U+9665-9666,U+966b,U+966d-9671,U+9673,U+9678-9684,U+9687,U+9689-968a,U+968c,U+968e,U+9691-9693"}},{uri:Ier,descriptors:{unicodeRange:"U+923c-9273,U+9275-928d,U+928f-92ad,U+92af-92c7,U+92c9-92ee"}},{uri:her,descriptors:{unicodeRange:"U+9159,U+915b-915c,U+915f-9160,U+9166-9168,U+916b,U+916d,U+9173,U+917a-917c,U+9180-9184,U+9186,U+9188,U+918a,U+918e-918f,U+9193-9199,U+919c-91a1,U+91a4-91a9,U+91ab-91ac,U+91b0-91b3,U+91b6-91b9,U+91bb-91c6,U+91c8,U+91cb,U+91d0,U+91d2-91db,U+91dd-923b"}},{uri:Qer,descriptors:{unicodeRange:"U+902b-902c,U+9030-9034,U+9037,U+9039-903a,U+903d,U+903f-9040,U+9043,U+9045-9046,U+9048-904c,U+904e,U+9054-9056,U+9059-905a,U+905c-9061,U+9064,U+9066-9067,U+9069-906c,U+906f-9073,U+9076-907c,U+907e,U+9081,U+9084-9087,U+9089-908a,U+908c-9090,U+9092,U+9094,U+9096,U+9098,U+909a,U+909c,U+909e-90a0,U+90a4-90a5,U+90a7-90a9,U+90ab,U+90ad,U+90b2,U+90b7,U+90bc-90bd,U+90bf-90c0,U+90c2-90c3,U+90c6,U+90c8-90c9,U+90cb-90cd,U+90d2,U+90d4-90d6,U+90d8-90da,U+90de-90e0,U+90e3-90e5,U+90e9-90ea,U+90ec,U+90ee,U+90f0-90f3,U+90f5-90f7,U+90f9-90fc,U+90ff-9101,U+9103,U+9105-9118,U+911a-911d,U+911f-9121,U+9124-912e,U+9130,U+9132-9138,U+913a-9142,U+9144-9145,U+9147-9148,U+9151,U+9153-9156,U+9158"}},{uri:per,descriptors:{unicodeRange:"U+8f03-8f65,U+8f6a,U+8f80,U+8f8c,U+8f92,U+8f9d,U+8fa0-8fa2,U+8fa4-8fa7,U+8faa,U+8fac-8faf,U+8fb2-8fb5,U+8fb7-8fb8,U+8fba-8fbc,U+8fbf-8fc0,U+8fc3,U+8fc6,U+8fc9-8fcd,U+8fcf,U+8fd2,U+8fd6-8fd7,U+8fda,U+8fe0-8fe1,U+8fe3,U+8fe7,U+8fec,U+8fef,U+8ff1-8ff2,U+8ff4-8ff6,U+8ffa-8ffc,U+8ffe-8fff,U+9007-9008,U+900c,U+900e,U+9013,U+9015,U+9018-9019,U+901c,U+9023-9025,U+9027-902a"}},{uri:fer,descriptors:{unicodeRange:"U+8d03-8d1c,U+8d20,U+8d51-8d52,U+8d57,U+8d5f,U+8d65,U+8d68-8d6a,U+8d6c,U+8d6e-8d6f,U+8d71-8d72,U+8d78-8d80,U+8d82-8d83,U+8d86-8d89,U+8d8c-8d90,U+8d92-8d93,U+8d95-8d9e,U+8da0-8da2,U+8da4-8db0,U+8db2,U+8db6-8db7,U+8db9,U+8dbb,U+8dbd,U+8dc0-8dc2,U+8dc5,U+8dc7-8dca,U+8dcd,U+8dd0,U+8dd2-8dd5,U+8dd8-8dd9,U+8ddc,U+8de0-8de2,U+8de5-8de7,U+8de9,U+8ded-8dee,U+8df0-8df2,U+8df4,U+8df6,U+8dfc,U+8dfe-8e04,U+8e06-8e08,U+8e0b,U+8e0d-8e0e,U+8e10-8e13,U+8e15-8e1c,U+8e20-8e21,U+8e24-8e28,U+8e2b,U+8e2d,U+8e30,U+8e32-8e34,U+8e36-8e38,U+8e3b-8e3c,U+8e3e-8e3f,U+8e43,U+8e45-8e46"}},{uri:mer,descriptors:{unicodeRange:"U+8bea,U+8c09,U+8c1e,U+8c38-8c40,U+8c42-8c45,U+8c48,U+8c4a-8c4b,U+8c4d-8c54,U+8c56-8c59,U+8c5b-8c60,U+8c63-8c69,U+8c6c-8c72,U+8c74-8c77,U+8c7b-8c81,U+8c83-8c84,U+8c86-8c88,U+8c8b,U+8c8d-8c93,U+8c95-8c97,U+8c99-8d02"}},{uri:Der,descriptors:{unicodeRange:"U+8a64-8a78,U+8a7a-8a88,U+8a8b-8a92,U+8a94-8b06,U+8b08-8b1b"}},{uri:yer,descriptors:{unicodeRange:"U+8987-89c0,U+89c3,U+89cd,U+89d3-89d5,U+89d7-89d9,U+89db,U+89dd,U+89df-89e2,U+89e4,U+89e7-89ea,U+89ec-89ee,U+89f0-89f2,U+89f4-89ff,U+8a01-8a06,U+8a08-8a3d,U+8a3f-8a47,U+8a49-8a63"}},{uri:wer,descriptors:{unicodeRange:"U+87e3-87e4,U+87e6-87e9,U+87eb-87ed,U+87ef-87f8,U+87fa-87fd,U+87ff-8802,U+8804-8809,U+880b-8812,U+8814,U+8817-881a,U+881c-8820,U+8823-8831,U+8833-8838,U+883a-883b,U+883d-883f,U+8841-8843,U+8846-884b,U+884e-8853,U+8855-8856,U+8858,U+885a-8860,U+8866-8867,U+886a,U+886d,U+886f,U+8871,U+8873-8876,U+8878-887c,U+8880,U+8883,U+8886-8887,U+8889-888a,U+888c,U+888e-8891,U+8893-8895,U+8897-889b,U+889d-88a1,U+88a3,U+88a5-88aa,U+88ac,U+88ae-88b0,U+88b2-88b6,U+88b8-88bb"}},{uri:ber,descriptors:{unicodeRange:"U+86e7-86e8,U+86ea-86ec,U+86ef,U+86f5-86f7,U+86fa-86fd,U+86ff,U+8701,U+8704-8706,U+870b-870c,U+870e-8711,U+8714,U+8716,U+8719,U+871b,U+871d,U+871f-8720,U+8724,U+8726-8728,U+872a-872d,U+872f-8730,U+8732-8733,U+8735-8736,U+8738-873a,U+873c-873d,U+8740-8746,U+874a-874b,U+874d,U+874f-8752,U+8754-8756,U+8758,U+875a-875f,U+8761-8762,U+8766-876d,U+876f,U+8771-8773,U+8775,U+8777-877a,U+877f-8781,U+8784,U+8786-8787,U+8789-878a,U+878c,U+878e-8792,U+8794-8796,U+8798-879e,U+87a0-87a7,U+87a9-87aa,U+87ae,U+87b0-87b2,U+87b4,U+87b6-87b9,U+87bb-87bc,U+87be-87bf,U+87c1-87c5,U+87c7-87c9,U+87cc-87d0,U+87d4-87da,U+87dc-87df,U+87e1-87e2"}},{uri:ver,descriptors:{unicodeRange:"U+8604,U+8606-8610,U+8612-8615,U+8617-8626,U+8628,U+862a-8637,U+8639-863b,U+863d-864c,U+8652-8653,U+8655-8659,U+865b-865d,U+865f-8661,U+8663-866a,U+866d,U+866f-8670,U+8672-8678,U+8683-8689,U+868e-8692,U+8694,U+8696-869b,U+869e-86a2,U+86a5-86a6,U+86ab,U+86ad-86ae,U+86b2-86b3,U+86b7-86b9,U+86bb-86bf,U+86c1-86c3,U+86c5,U+86c8,U+86cc-86cd,U+86d2-86d3,U+86d5-86d7,U+86da,U+86dc-86dd,U+86e0-86e3,U+86e5-86e6"}},{uri:ker,descriptors:{unicodeRange:"U+8456,U+8458,U+845d-8460,U+8462,U+8464-8468,U+846a,U+846e-8470,U+8472,U+8474,U+8477,U+8479,U+847b-8481,U+8483-8486,U+848a,U+848d,U+848f-8496,U+8498,U+849a-849b,U+849d-84a0,U+84a2-84ae,U+84b0-84b1,U+84b3,U+84b5-84b7,U+84bb-84bc,U+84be,U+84c0,U+84c2-84c3,U+84c5-84c8,U+84cb-84cc,U+84ce-84cf,U+84d2,U+84d4-84d5,U+84d7-84dc,U+84de,U+84e1-84e2,U+84e4,U+84e7-84eb,U+84ed-84ef,U+84f1-84fb,U+84fd-84fe,U+8500-850b,U+850d-8510,U+8512,U+8514-8516,U+8518-8519,U+851b-851e,U+8520,U+8522-852a,U+852d-8536,U+853e-8542,U+8544-8547,U+854b-854f"}},{uri:Fer,descriptors:{unicodeRange:"U+82c2-82c3,U+82c5-82c6,U+82c9,U+82d0,U+82d6,U+82d9-82da,U+82dd,U+82e2,U+82e7-82ea,U+82ec-82ee,U+82f0,U+82f2-82f3,U+82f5-82f6,U+82f8,U+82fa,U+82fc-8300,U+830a-830b,U+830d,U+8310,U+8312-8313,U+8316,U+8318-8319,U+831d-8326,U+8329-832a,U+832e,U+8330,U+8332,U+8337,U+833b,U+833d-833f,U+8341-8342,U+8344-8345,U+8348,U+834a-834e,U+8353,U+8355-8359,U+835d,U+8362,U+8370-8376,U+8379-837a,U+837e-8384,U+8387-8388,U+838a-838d,U+838f-8391,U+8394-8397,U+8399-839a,U+839d,U+839f,U+83a1-83a7,U+83ac-83af,U+83b5,U+83bb,U+83be-83bf,U+83c2-83c4,U+83c6,U+83c8-83c9,U+83cb,U+83cd-83ce,U+83d0-83d3,U+83d5,U+83d7,U+83d9-83db,U+83de,U+83e2-83e4,U+83e6-83e8,U+83eb-83ef,U+83f3-83f7,U+83fa-83fc,U+83fe-8400,U+8402,U+8405,U+8407-840a,U+8410,U+8412-8417,U+8419-841b,U+841e-8423,U+8429-8430,U+8432-8437,U+8439-843b,U+843e-8445,U+8447-8450,U+8452-8455"}},{uri:xer,descriptors:{unicodeRange:"U+81a4-81a5,U+81a7,U+81a9,U+81ab-81b2,U+81b4-81b9,U+81bc-81bf,U+81c4-81c5,U+81c7-81c9,U+81cb,U+81cd-81e2,U+81e4-81e6,U+81e8-81e9,U+81eb,U+81ee-81f2,U+81f5-81fa,U+81fd,U+81ff,U+8203,U+8207-820b,U+820e-820f,U+8211,U+8213,U+8215-821a,U+821d,U+8220,U+8224-8227,U+8229,U+822e,U+8232,U+823a,U+823c-823d,U+823f-8243,U+8245-8246,U+8248,U+824a,U+824c-824e,U+8250-8257,U+8259,U+825b-825e,U+8260-8267,U+8269-826d,U+8271,U+8275-8278,U+827b-827c,U+8280-8281,U+8283,U+8285-8287,U+8289,U+828c,U+8290,U+8293-8296,U+829a-829b,U+829e,U+82a0,U+82a2-82a3,U+82a7,U+82b2,U+82b5-82b6,U+82ba-82bc,U+82bf-82c0"}},{uri:Ser,descriptors:{unicodeRange:"U+8059,U+805b-8068,U+806b-8070,U+8072-807e,U+8081-8082,U+8085,U+8088,U+808a,U+808d-8092,U+8094-8095,U+8097,U+8099,U+809e,U+80a3,U+80a6-80a8,U+80ac,U+80b0,U+80b3,U+80b5-80b6,U+80b8-80b9,U+80bb,U+80c5,U+80c7-80cb,U+80cf-80d5,U+80d8,U+80df-80e0,U+80e2-80e3,U+80e6,U+80ee,U+80f5,U+80f7,U+80f9,U+80fb,U+80fe-8101,U+8103-8105,U+8107-8108,U+810b-810c,U+8115,U+8117,U+8119,U+811b-811d,U+811f-812b,U+812d-812e,U+8130,U+8133-8135,U+8137,U+8139-813d,U+813f-8145,U+8147,U+8149,U+814d-814f,U+8152,U+8156-8158,U+815b-815f,U+8161-8164,U+8166,U+8168,U+816a-816c,U+816f,U+8172-8173,U+8175-8178,U+8181,U+8183-8187,U+8189,U+818b-818e,U+8190,U+8192-8197,U+8199-819a,U+819e-81a2"}},{uri:Ler,descriptors:{unicodeRange:"U+7f3c-7f41,U+7f43,U+7f46-7f4f,U+7f52-7f53,U+7f56,U+7f59,U+7f5b-7f5e,U+7f60,U+7f63-7f67,U+7f6b-7f6d,U+7f6f-7f70,U+7f73,U+7f75-7f78,U+7f7a-7f7d,U+7f7f-7f80,U+7f82-7f89,U+7f8b,U+7f8d,U+7f8f-7f93,U+7f95-7f99,U+7f9b-7f9c,U+7fa0,U+7fa2-7fa3,U+7fa5-7fa6,U+7fa8-7fae,U+7fb1,U+7fb3-7fb7,U+7fba-7fbb,U+7fbe,U+7fc0,U+7fc2-7fc4,U+7fc6-7fc9,U+7fcb,U+7fcd,U+7fcf-7fd3,U+7fd6-7fd7,U+7fd9-7fde,U+7fe2-7fe4,U+7fe7-7fe8,U+7fea-7fed,U+7fef,U+7ff2,U+7ff4-7ffa,U+7ffd-7fff,U+8002,U+8007-800a,U+800e-800f,U+8011,U+8013,U+801a-801b,U+801d-801f,U+8021,U+8023-8024,U+802b-8030,U+8032,U+8034,U+8039-803a,U+803c,U+803e,U+8040-8041,U+8044-8045,U+8047-8049,U+804e-8051,U+8053,U+8055-8057"}},{uri:Rer,descriptors:{unicodeRange:"U+7cd8,U+7cda-7cdb,U+7cdd-7cde,U+7ce1-7ce7,U+7ce9-7cee,U+7cf0-7cf7,U+7cf9-7cfa,U+7cfc-7d09,U+7d0b-7d1f,U+7d21,U+7d23-7d26,U+7d28-7d2a,U+7d2c-7d2e,U+7d30-7d6d,U+7d6f-7d76,U+7d78-7d94"}},{uri:Ner,descriptors:{unicodeRange:"U+7afe,U+7b00-7b02,U+7b05,U+7b07,U+7b09,U+7b0c-7b0e,U+7b10,U+7b12-7b13,U+7b16-7b18,U+7b1a,U+7b1c-7b1d,U+7b1f,U+7b21-7b23,U+7b27,U+7b29,U+7b2d,U+7b2f-7b30,U+7b32,U+7b34-7b37,U+7b39,U+7b3b,U+7b3d,U+7b3f-7b44,U+7b46,U+7b48,U+7b4a,U+7b4d-7b4e,U+7b53,U+7b55,U+7b57,U+7b59,U+7b5c,U+7b5e-7b5f,U+7b61,U+7b63-7b6d,U+7b6f-7b70,U+7b73-7b74,U+7b76,U+7b78,U+7b7a,U+7b7c-7b7d,U+7b7f,U+7b81-7b84,U+7b86-7b8c,U+7b8e-7b8f,U+7b91-7b93,U+7b96,U+7b98-7b9b,U+7b9e-7ba0,U+7ba3-7ba5,U+7bae-7bb0,U+7bb2-7bb3,U+7bb5-7bb7,U+7bb9-7bc0,U+7bc2-7bc5,U+7bc8-7bcb,U+7bcd-7bd0,U+7bd2,U+7bd4-7bd8,U+7bdb-7bdc,U+7bde-7be0,U+7be2-7be4,U+7be7-7be9,U+7beb-7bed,U+7bef-7bf0,U+7bf2-7bf6,U+7bf8-7bfb,U+7bfd,U+7bff-7c06,U+7c08-7c0a,U+7c0d-7c0e,U+7c10-7c13"}},{uri:Ger,descriptors:{unicodeRange:"U+7a10-7a13,U+7a15-7a16,U+7a18-7a19,U+7a1b-7a1d,U+7a1f,U+7a21-7a22,U+7a24-7a32,U+7a34-7a36,U+7a38,U+7a3a,U+7a3e,U+7a40-7a45,U+7a47-7a50,U+7a52-7a56,U+7a58-7a6f,U+7a71-7a73,U+7a75,U+7a7b-7a7e,U+7a82,U+7a85,U+7a87,U+7a89-7a8c,U+7a8e-7a90,U+7a93-7a94,U+7a99-7a9b,U+7a9e,U+7aa1-7aa4,U+7aa7,U+7aa9-7aab,U+7aae-7ab2,U+7ab4-7abe,U+7ac0-7aca,U+7acc-7ad5,U+7ad7-7ad8,U+7ada-7add,U+7ae1-7ae2,U+7ae4,U+7ae7-7aec,U+7aee,U+7af0-7af8,U+7afb-7afc"}},{uri:Uer,descriptors:{unicodeRange:"U+790d-7912,U+7914-791d,U+791f-7923,U+7925-7933,U+7935-7939,U+793d,U+793f,U+7942-7945,U+7947,U+794a-7952,U+7954-7955,U+7958-7959,U+7961,U+7963-7964,U+7966,U+7969-796c,U+796e,U+7970-7976,U+7979,U+797b-797f,U+7982-7983,U+7986-7989,U+798b-798e,U+7990-7999,U+799b-79a6,U+79a8-79b2,U+79b4-79b8,U+79bc,U+79bf,U+79c2,U+79c4-79c5,U+79c7-79c8,U+79ca,U+79cc,U+79ce-79d0,U+79d3-79d4,U+79d6-79d7,U+79d9-79de,U+79e0-79e2,U+79e5,U+79e8,U+79ea,U+79ec,U+79ee,U+79f1-79f7,U+79f9-79fa,U+79fc,U+79fe-79ff,U+7a01,U+7a04-7a05,U+7a07-7a0a,U+7a0c,U+7a0f"}},{uri:Mer,descriptors:{unicodeRange:"U+77d8-77da,U+77dd-77e1,U+77e4,U+77e6,U+77e8,U+77ea,U+77ef-77f2,U+77f4-77f5,U+77f7,U+77f9-77fc,U+7803-7808,U+780a-780b,U+780e-7810,U+7813,U+7815,U+7819,U+781b,U+781e,U+7820-7822,U+7824,U+7828,U+782a-782b,U+782e-782f,U+7831-7833,U+7835-7836,U+783d,U+783f,U+7841-7844,U+7846,U+7848-784b,U+784d,U+784f,U+7851,U+7853-7854,U+7858-785c,U+785e-7869,U+786f-7876,U+7878-787b,U+787d-7886,U+7888,U+788a-788b,U+788f-7890,U+7892,U+7894-7896,U+7899,U+789d-789e,U+78a0,U+78a2,U+78a4,U+78a6,U+78a8-78af,U+78b5-78b8,U+78ba-78bd,U+78bf-78c0,U+78c2-78c4,U+78c6-78c8,U+78cc-78cf,U+78d1-78d3,U+78d6-78d8,U+78da-78e7,U+78e9-78eb,U+78ed-78f1,U+78f3,U+78f5-78f6,U+78f8-78f9,U+78fb-7900,U+7902-7904,U+7906-790c"}},{uri:Ter,descriptors:{unicodeRange:"U+76af-76b0,U+76b3,U+76b5-76be,U+76c0-76c1,U+76c3-76c4,U+76c7,U+76c9,U+76cb-76cc,U+76d3,U+76d5,U+76d9-76da,U+76dc-76de,U+76e0-76e4,U+76e6-76ed,U+76f0,U+76f3,U+76f5-76f7,U+76fa-76fb,U+76fd,U+76ff-7703,U+7705-7706,U+770a,U+770c,U+770e-7718,U+771b-771e,U+7721,U+7723-7725,U+7727,U+772a-772c,U+772e,U+7730-7734,U+7739,U+773b,U+773d-773f,U+7742,U+7744-7746,U+7748-774f,U+7752-7759,U+775c-7760,U+7764,U+7767,U+7769-776a,U+776d-7778,U+777a-777c,U+7781-7783,U+7786-778b,U+778f-7790,U+7793-779e,U+77a1,U+77a3-77a4,U+77a6,U+77a8,U+77ab,U+77ad-77af,U+77b1-77b2,U+77b4,U+77b6-77ba,U+77bc,U+77be,U+77c0-77cc,U+77ce-77d6"}},{uri:Yer,descriptors:{unicodeRange:"U+7589-758a,U+758c-758e,U+7590,U+7593,U+7595,U+7598,U+759b-759c,U+759e,U+75a2,U+75a6-75aa,U+75ad,U+75b6-75b7,U+75ba-75bb,U+75bf-75c1,U+75c6,U+75cb-75cc,U+75ce-75d1,U+75d3,U+75d7,U+75d9-75da,U+75dc-75dd,U+75df-75e1,U+75e5,U+75e9,U+75ec-75ef,U+75f2-75f3,U+75f5-75f8,U+75fa-75fb,U+75fd-75fe,U+7602,U+7604,U+7606-7609,U+760b,U+760d-760f,U+7611-7614,U+7616,U+761a,U+761c-761e,U+7621,U+7623,U+7627-7628,U+762c,U+762e-762f,U+7631-7632,U+7636-7637,U+7639-763b,U+763d,U+7641-7642,U+7644-764b,U+764e-7653,U+7655,U+7657-765b,U+765d,U+765f-7662,U+7664-766a,U+766c-766e,U+7670-7677,U+7679-767a,U+767c,U+767f-7681,U+7683,U+7685,U+7689-768a,U+768c-768d,U+768f-7690,U+7692,U+7694-7695,U+7697-7698,U+769a-76a3,U+76a5-76ad"}},{uri:Her,descriptors:{unicodeRange:"U+7492-749b,U+749d,U+749f-74a6,U+74aa-74b9,U+74bb-74d1,U+74d3-74db,U+74dd,U+74df,U+74e1,U+74e5,U+74e7-74ed,U+74f0-74f3,U+74f5,U+74f8-74fe,U+7500-7503,U+7505-750c,U+750e,U+7510,U+7512,U+7514-7517,U+751b,U+751d-751e,U+7520-7524,U+7526-7527,U+752a,U+752e,U+7534,U+7536,U+7539,U+753c-753d,U+753f,U+7541-7544,U+7546-7547,U+7549-754a,U+754d,U+7550-7553,U+7555-7558,U+755d-7564,U+7567-7569,U+756b-7571,U+7573,U+7575-7577,U+757a-757e,U+7580-7582,U+7584-7585,U+7587-7588"}},{uri:Ker,descriptors:{unicodeRange:"U+7372-737d,U+737f-7383,U+7385-7386,U+7388,U+738a,U+738c-738d,U+738f-7390,U+7392-7395,U+7397-739a,U+739c-739e,U+73a0-73a1,U+73a3-73a8,U+73aa,U+73ac-73ad,U+73b1,U+73b4-73b6,U+73b8-73b9,U+73bc-73bf,U+73c1,U+73c3-73c7,U+73cb-73cc,U+73ce,U+73d2-73d8,U+73da-73dd,U+73df,U+73e1-73e4,U+73e6,U+73e8,U+73ea-73ec,U+73ee-73f1,U+73f3-7402,U+7404,U+7407-7408,U+740b-740e,U+7411-7419,U+741c-7421,U+7423-7424,U+7427,U+7429,U+742b,U+742d,U+742f,U+7431-7432,U+7437-743b,U+743d-7440,U+7442-7454,U+7456,U+7458,U+745d,U+7460-746c,U+746e-746f,U+7471-7475,U+7478-747d,U+747f,U+7482,U+7484-7486,U+7488-748a,U+748c-748d,U+748f,U+7491"}},{uri:Jer,descriptors:{unicodeRange:"U+7054-705d,U+705f-706a,U+706e,U+7071-7074,U+7077,U+7079-707b,U+707d,U+7081-7084,U+7086-7088,U+708b-708d,U+708f-7091,U+7093,U+7097-7098,U+709a-709b,U+709e-70aa,U+70b0,U+70b2,U+70b4-70b6,U+70ba,U+70be-70bf,U+70c4-70c7,U+70c9,U+70cb-70d7,U+70da,U+70dc-70de,U+70e0-70e3,U+70e5,U+70ea,U+70ee,U+70f0-70f6,U+70f8,U+70fa-70fc,U+70fe-7108,U+710b-710f,U+7111-7112,U+7114,U+7117,U+711b-7125,U+7127-712e,U+7132-7135,U+7137-7144,U+7146-7149,U+714b,U+714d,U+714f-715b,U+715d,U+715f-7163,U+7165,U+7169-716d,U+716f-7171,U+7174-7177"}},{uri:Oer,descriptors:{unicodeRange:"U+722e-722f,U+7232-7234,U+723a,U+723c,U+723e,U+7240-7246,U+7249-724b,U+724e-7251,U+7253-7255,U+7257-7258,U+725a,U+725c,U+725e,U+7260,U+7263-7265,U+7268,U+726a-726d,U+7270-7271,U+7273-7274,U+7276-7278,U+727b-727d,U+7282-7283,U+7285-7289,U+728c,U+728e,U+7290-7291,U+7293-729e,U+72a0-72ab,U+72ae,U+72b1-72b3,U+72b5,U+72ba-72c0,U+72c5-72c7,U+72c9-72cc,U+72cf,U+72d1,U+72d3-72d6,U+72d8,U+72da-72dd,U+72df,U+72e2-72e7,U+72ea-72eb,U+72f5-72f6,U+72f9,U+72fd-7300,U+7302,U+7304-7309,U+730b-730d,U+730f-7312,U+7314,U+7318-731a,U+731f-7320,U+7323-7324,U+7326-7328,U+732d,U+732f-7330,U+7332-7333,U+7335-7336,U+733a-733d,U+7340-734c,U+734e-734f,U+7351,U+7353-7356,U+7358-735f,U+7361-736b,U+736e,U+7370-7371"}},{uri:Per,descriptors:{unicodeRange:"U+6ec5-6ec6,U+6ec8-6eca,U+6ecc-6ece,U+6ed0,U+6ed2,U+6ed6,U+6ed8-6ed9,U+6edb-6edd,U+6ee3,U+6ee7,U+6eea-6ef3,U+6ef5-6ef8,U+6efa-6f01,U+6f03-6f05,U+6f07-6f08,U+6f0a-6f0e,U+6f10-6f12,U+6f16-6f1f,U+6f21-6f23,U+6f25-6f28,U+6f2c,U+6f2e,U+6f30,U+6f32,U+6f34-6f35,U+6f37-6f3d,U+6f3f-6f45,U+6f48-6f4a,U+6f4c,U+6f4e-6f57,U+6f59-6f5b,U+6f5d,U+6f5f-6f61,U+6f63-6f65,U+6f67-6f6c,U+6f6f-6f71,U+6f73,U+6f75-6f77,U+6f79,U+6f7b,U+6f7d-6f83,U+6f85-6f87,U+6f8a-6f8b,U+6f8f-6f9b,U+6f9d-6fa0,U+6fa2-6fa6,U+6fa8-6fb1"}},{uri:_er,descriptors:{unicodeRange:"U+6d73,U+6d75-6d76,U+6d79-6d7b,U+6d7d-6d81,U+6d83-6d84,U+6d86-6d87,U+6d8a-6d8b,U+6d8d,U+6d8f-6d90,U+6d92,U+6d96-6d9a,U+6d9c,U+6da2,U+6da5,U+6dac-6dad,U+6db0-6db1,U+6db3-6db4,U+6db6-6db7,U+6db9-6dbe,U+6dc1-6dc3,U+6dc8-6dca,U+6dcd-6dd0,U+6dd2-6dd5,U+6dd7,U+6dda-6ddc,U+6ddf,U+6de2-6de3,U+6de5,U+6de7-6dea,U+6ded,U+6def-6df0,U+6df2,U+6df4-6df6,U+6df8,U+6dfa,U+6dfd-6e04,U+6e06-6e09,U+6e0b,U+6e0f,U+6e12-6e13,U+6e15,U+6e18-6e19,U+6e1b-6e1c,U+6e1e-6e1f,U+6e22,U+6e26-6e28,U+6e2a,U+6e2c,U+6e2e,U+6e30-6e31,U+6e33,U+6e35-6e37,U+6e39,U+6e3b-6e42,U+6e45-6e4c,U+6e4f-6e52,U+6e55,U+6e57,U+6e59-6e5a,U+6e5c-6e5e,U+6e60-6e6a,U+6e6c-6e6d,U+6e6f-6e7d,U+6e80-6e82,U+6e84,U+6e87-6e88,U+6e8a-6e8e,U+6e91-6e97,U+6e99-6e9b,U+6e9d-6e9e,U+6ea0-6ea1,U+6ea3-6ea4,U+6ea6,U+6ea8-6ea9,U+6eab-6eae,U+6eb0,U+6eb3,U+6eb5,U+6eb8-6eb9,U+6ebc,U+6ebe-6ec0,U+6ec3-6ec4"}},{uri:Wer,descriptors:{unicodeRange:"U+6bbb-6bbe,U+6bc0,U+6bc3-6bc4,U+6bc6-6bca,U+6bcc,U+6bce,U+6bd0-6bd1,U+6bd8,U+6bda,U+6bdc-6be0,U+6be2-6be9,U+6bec-6bee,U+6bf0-6bf2,U+6bf4,U+6bf6-6bf8,U+6bfa-6bfc,U+6bfe-6c04,U+6c08-6c0c,U+6c0e,U+6c12,U+6c17,U+6c1c-6c1e,U+6c20,U+6c23,U+6c25,U+6c2b-6c2d,U+6c31,U+6c33,U+6c36-6c37,U+6c39-6c3c,U+6c3e-6c3f,U+6c43-6c45,U+6c48,U+6c4b-6c4f,U+6c51-6c53,U+6c56,U+6c58-6c5a,U+6c62-6c63,U+6c65-6c67,U+6c6b-6c6f,U+6c71,U+6c73,U+6c75,U+6c77-6c78,U+6c7a-6c7c,U+6c7f-6c80,U+6c84,U+6c87,U+6c8a-6c8b,U+6c8d-6c8e,U+6c91-6c92,U+6c95-6c98,U+6c9a,U+6c9c-6c9e,U+6ca0,U+6ca2,U+6ca8,U+6cac,U+6caf-6cb0,U+6cb4-6cb7,U+6cba,U+6cc0-6cc3,U+6cc6-6cc8,U+6ccb,U+6ccd-6ccf,U+6cd1-6cd2,U+6cd8-6cda,U+6cdc-6cdd,U+6cdf,U+6ce4,U+6ce6-6ce7,U+6ce9,U+6cec-6ced,U+6cf2,U+6cf4,U+6cf9,U+6cff-6d00,U+6d02-6d03,U+6d05-6d06,U+6d08-6d0a,U+6d0d,U+6d0f-6d11,U+6d13-6d16,U+6d18,U+6d1c-6d1d,U+6d1f-6d24,U+6d26,U+6d28-6d29,U+6d2c-6d2d,U+6d2f-6d30,U+6d34,U+6d36-6d38,U+6d3a,U+6d3f-6d40,U+6d42,U+6d44,U+6d49,U+6d4c,U+6d50,U+6d55-6d58,U+6d5b,U+6d5d,U+6d5f,U+6d61-6d62,U+6d64-6d65,U+6d67-6d68,U+6d6b-6d6d,U+6d70-6d72"}},{uri:qer,descriptors:{unicodeRange:"U+6967-696a,U+696c-696d,U+696f-6970,U+6972-6976,U+697a-697b,U+697d-697f,U+6981,U+6983,U+6985,U+698a-698c,U+698e-6993,U+6996-6997,U+6999-699a,U+699d-69a6,U+69a9-69aa,U+69ac,U+69ae-69b0,U+69b2-69b3,U+69b5-69b6,U+69b8-69ba,U+69bc-69c0,U+69c2-69c9,U+69cb,U+69cd,U+69cf,U+69d1-69d3,U+69d5-69da,U+69dc-69de,U+69e1-69ec,U+69ee-69f1,U+69f3-69fc,U+69fe,U+6a00-6a09,U+6a0b-6a16,U+6a19-6a1e,U+6a20,U+6a22-6a27,U+6a29,U+6a2b-6a2e,U+6a30,U+6a32-6a34,U+6a36-6a3c,U+6a3f-6a43,U+6a45-6a46,U+6a48-6a4a"}},{uri:zer,descriptors:{unicodeRange:"U+6830-6831,U+6834-6836,U+683a-683b,U+683f,U+6847,U+684b,U+684d,U+684f,U+6852,U+6856-685f,U+686a,U+686c-6873,U+6875,U+6878-6880,U+6882,U+6884,U+6887-688e,U+6890-6892,U+6894-6896,U+6898-68a1,U+68a3-68a5,U+68a9-68ac,U+68ae,U+68b1-68b2,U+68b4,U+68b6-68bf,U+68c1,U+68c3-68c8,U+68ca,U+68cc,U+68ce-68d1,U+68d3-68d4,U+68d6-68d7,U+68d9,U+68db-68df,U+68e1-68e2,U+68e4-68ed,U+68ef,U+68f2-68f4,U+68f6-68f8,U+68fb,U+68fd-6900,U+6902-6904,U+6906-690a,U+690c,U+690f,U+6911,U+6913-691e,U+6921-6923,U+6925-692c,U+692e-692f,U+6931-6933,U+6935-6938,U+693a-693c,U+693e,U+6940-6941,U+6943-6953,U+6955-6956,U+6958-6959,U+695b-695c,U+695f,U+6961-6962,U+6964-6965"}},{uri:Zer,descriptors:{unicodeRange:"U+66b8,U+66ba-66bd,U+66bf-66d8,U+66da,U+66de-66e5,U+66e7-66e8,U+66ea-66ef,U+66f1,U+66f5-66f6,U+66f8,U+66fa-66fb,U+66fd,U+6701-6707,U+670c,U+670e-670f,U+6711-6713,U+6716,U+6718-671a,U+671c,U+671e,U+6720-6725,U+6727,U+6729,U+672e,U+6730,U+6732-6733,U+6736-6739,U+673b-673c,U+673e-673f,U+6741,U+6744-6745,U+6747,U+674a-674b,U+674d,U+6752,U+6754-6755,U+6757-675b,U+675d,U+6762-6764,U+6766-6767,U+676b-676c,U+676e,U+6771,U+6774,U+6776,U+6778-677b,U+677d,U+6780,U+6782-6783,U+6785-6786,U+6788,U+678a,U+678c-678f,U+6791-6794,U+6796,U+6799,U+679b,U+679f-67a1,U+67a4,U+67a6,U+67a9,U+67ac,U+67ae,U+67b1-67b2,U+67b4,U+67b9-67c0,U+67c2,U+67c5-67ce,U+67d5-67d7,U+67db,U+67df,U+67e1,U+67e3-67e4,U+67e6-67e8,U+67ea-67eb,U+67ed-67ee,U+67f2,U+67f5-67fc,U+67fe,U+6801-6804,U+6806,U+680d,U+6810,U+6812,U+6814-6815,U+6818-681c,U+681e-6820,U+6822-6828,U+682b-682f"}},{uri:Ver,descriptors:{unicodeRange:"U+6569-656a,U+656d-656f,U+6571,U+6573,U+6575-6576,U+6578-6586,U+6588-658a,U+658d-658f,U+6592,U+6594-6596,U+6598,U+659a,U+659d-659e,U+65a0,U+65a2-65a3,U+65a6,U+65a8,U+65aa,U+65ac,U+65ae,U+65b1-65b8,U+65ba-65bb,U+65be-65c0,U+65c2,U+65c7-65ca,U+65cd,U+65d0-65d1,U+65d3-65d5,U+65d8-65df,U+65e1,U+65e3-65e4,U+65ea-65eb,U+65f2-65f5,U+65f8-65f9,U+65fb-65ff,U+6601,U+6604-6605,U+6607-6609,U+660b,U+660d,U+6610-6612,U+6616-6618,U+661a-661c,U+661e,U+6621-6624,U+6626,U+6629-662c,U+662e,U+6630,U+6632-6633,U+6637-663b,U+663d,U+663f-6640,U+6642,U+6644-664a,U+664d-664e,U+6650-6651,U+6658-6659,U+665b-665e,U+6660,U+6662-6663,U+6665,U+6667,U+6669-666d,U+6671-6673,U+6675,U+6678-6679,U+667b-667d,U+667f-6681,U+6683,U+6685-6686,U+6688-668b,U+668d-6690,U+6692-6695,U+6698-669c,U+669e-66a6,U+66a9-66ad,U+66af-66b3,U+66b5-66b7"}},{uri:jer,descriptors:{unicodeRange:"U+5f30,U+5f32-5f38,U+5f3b,U+5f3d-5f3f,U+5f41-5f4f,U+5f51,U+5f54,U+5f59-5f5c,U+5f5e-5f60,U+5f63,U+5f65,U+5f67-5f68,U+5f6b,U+5f6e-5f6f,U+5f72,U+5f74-5f76,U+5f78,U+5f7a,U+5f7d-5f7f,U+5f83,U+5f86,U+5f8d-5f8f,U+5f91,U+5f93-5f94,U+5f96,U+5f9a-5f9b,U+5f9d-5fa0,U+5fa2-5fa7,U+5fa9,U+5fab-5fac,U+5faf-5fb4,U+5fb6,U+5fb8-5fbb,U+5fbe-5fc2,U+5fc7-5fc8,U+5fca-5fcb,U+5fce,U+5fd3-5fd5,U+5fda-5fdc,U+5fde-5fdf,U+5fe2-5fe3,U+5fe5-5fe6,U+5fe8-5fe9,U+5fec,U+5fef-5ff0,U+5ff2-5ff4,U+5ff6-5ff7,U+5ff9-5ffa,U+5ffc,U+6007-6009,U+600b-600c,U+6010-6011,U+6013,U+6017-6018,U+601a,U+601e-601f,U+6022-6024,U+602c-602e,U+6030-6034,U+6036-603a,U+603d-603e,U+6040,U+6044-604a,U+604c,U+604e-604f,U+6051,U+6053-6054,U+6056-6058,U+605b-605c,U+605e-6061,U+6065-6066,U+606e,U+6071-6072,U+6074-6075,U+6077,U+607e,U+6080-6082,U+6085-6088,U+608a-608b,U+608e-6091,U+6093,U+6095,U+6097-6099,U+609c,U+609e,U+60a1-60a2,U+60a4-60a5,U+60a7,U+60a9-60aa,U+60ae,U+60b0,U+60b3,U+60b5-60b7,U+60b9-60ba,U+60bd-60c4,U+60c7-60c9,U+60cc"}},{uri:Xer,descriptors:{unicodeRange:"U+635a-635d,U+6360,U+6364-6366,U+6368,U+636a-636c,U+636f-6370,U+6372-6375,U+6378-6379,U+637c-637f,U+6381,U+6383-6386,U+638b,U+638d,U+6391,U+6393-6395,U+6397,U+6399-639f,U+63a1,U+63a4,U+63a6,U+63ab,U+63af,U+63b1-63b2,U+63b5-63b6,U+63b9,U+63bb,U+63bd,U+63bf-63c3,U+63c5,U+63c7-63c8,U+63ca-63cc,U+63d1,U+63d3-63d5,U+63d7-63dd,U+63df,U+63e2,U+63e4-63e8,U+63eb-63ec,U+63ee-63f1,U+63f3,U+63f5,U+63f7,U+63f9-63fc,U+63fe,U+6403-6404,U+6406-640a,U+640d-640e,U+6411-6412,U+6415-641a,U+641d,U+641f,U+6422-6425,U+6427-6429,U+642b,U+642e-6433,U+6435-6439,U+643b-643c,U+643e,U+6440,U+6442-6443,U+6449,U+644b-6451,U+6453,U+6455-6457,U+6459-645d,U+645f-6466,U+6468,U+646a-646c,U+646e-6477,U+647b-6481,U+6483,U+6486,U+6488-648f"}},{uri:$er,descriptors:{unicodeRange:"U+61c5-61c7,U+61c9,U+61cc-61d0,U+61d3,U+61d5-61e5,U+61e7-61f4,U+61f6-61fe,U+6200-6205,U+6207,U+6209,U+6213-6214,U+6219,U+621c-621e,U+6220,U+6223,U+6226-6229,U+622b,U+622d,U+622f-6232,U+6235-6236,U+6238-623c,U+6242,U+6244-6246,U+624a,U+624f-6250,U+6255-6257,U+6259-625a,U+625c-6262,U+6264-6265,U+6268,U+6271-6272,U+6274-6275,U+6277-6278,U+627a-627b,U+627d,U+6281-6283,U+6285-6288,U+628b-6290,U+6294,U+6299,U+629c-629e,U+62a3,U+62a6-62a7,U+62a9-62aa,U+62ad-62b0,U+62b2-62b4,U+62b6-62b8,U+62ba,U+62be,U+62c0-62c1,U+62c3,U+62cb,U+62cf,U+62d1,U+62d5,U+62dd-62de,U+62e0-62e1,U+62e4,U+62ea-62eb,U+62f0,U+62f2,U+62f5,U+62f8-62fb,U+6300,U+6303-6306,U+630a-630d,U+630f-6310,U+6312-6315,U+6317-6319,U+631c,U+6326-6327,U+6329,U+632c-632e,U+6330-6331,U+6333-6338,U+633b-633c,U+633e-6341,U+6344,U+6347-6348,U+634a,U+6351-6354,U+6356-6359"}},{uri:Atr,descriptors:{unicodeRange:"U+5dd0-5dda,U+5ddc,U+5ddf-5de0,U+5de3-5de4,U+5dea,U+5dec-5ded,U+5df0,U+5df5-5df6,U+5df8-5dfc,U+5dff-5e00,U+5e04,U+5e07,U+5e09-5e0b,U+5e0d-5e0e,U+5e12-5e13,U+5e17,U+5e1e-5e25,U+5e28-5e2c,U+5e2f-5e30,U+5e32-5e36,U+5e39-5e3a,U+5e3e-5e41,U+5e43,U+5e46-5e4b,U+5e4d-5e53,U+5e56-5e5a,U+5e5c-5e5d,U+5e5f-5e60,U+5e63-5e71,U+5e75,U+5e77,U+5e79,U+5e7e,U+5e81-5e83,U+5e85,U+5e88-5e89,U+5e8c-5e8e,U+5e92,U+5e98,U+5e9b,U+5e9d,U+5ea1-5ea4,U+5ea8-5eac,U+5eae-5eb2,U+5eb4,U+5eba-5ebd,U+5ebf-5ec8,U+5ecb-5ed0,U+5ed4-5ed5,U+5ed7-5eda,U+5edc-5ee7,U+5ee9,U+5eeb-5ef3,U+5ef5,U+5ef8-5ef9,U+5efb-5efd,U+5f05-5f07,U+5f09,U+5f0c-5f0e,U+5f10,U+5f12,U+5f14,U+5f16,U+5f19-5f1a,U+5f1c-5f1e,U+5f21-5f24,U+5f28,U+5f2b-5f2c,U+5f2e"}},{uri:etr,descriptors:{unicodeRange:"U+60cd-60d0,U+60d2-60d4,U+60d6-60d7,U+60d9,U+60db,U+60de,U+60e1-60e5,U+60ea,U+60f1-60f2,U+60f5,U+60f7-60f8,U+60fb-60ff,U+6102-6105,U+6107,U+610a-610c,U+6110-6114,U+6116-6119,U+611b-611e,U+6121-6122,U+6125,U+6128-612a,U+612c-613e,U+6140-6147,U+6149,U+614b,U+614d,U+614f-6150,U+6152-6154,U+6156-615c,U+615e-6161,U+6163-6166,U+6169-616f,U+6171-6174,U+6176,U+6178-618a,U+618c-618d,U+618f-6193,U+6195-619c,U+619e-61a6,U+61aa-61ab,U+61ad-61b6,U+61b8-61bd,U+61bf-61c1,U+61c3-61c4"}},{uri:ttr,descriptors:{unicodeRange:"U+5cf4-5cfa,U+5cfc-5d01,U+5d04-5d05,U+5d08-5d0d,U+5d0f-5d13,U+5d15,U+5d17-5d1a,U+5d1c-5d1d,U+5d1f-5d23,U+5d25,U+5d28,U+5d2a-5d2c,U+5d2f-5d33,U+5d35-5d3c,U+5d3f-5d46,U+5d48-5d49,U+5d4d-5d57,U+5d59-5d5a,U+5d5c,U+5d5e-5d68,U+5d6a,U+5d6d-5d6e,U+5d70-5d73,U+5d75-5d81,U+5d83-5d98,U+5d9a-5d9c,U+5d9e-5db6,U+5db8-5dc4,U+5dc6-5dcc,U+5dce-5dcf"}},{uri:rtr,descriptors:{unicodeRange:"U+5b52,U+5b56,U+5b5e,U+5b60-5b61,U+5b67-5b68,U+5b6b,U+5b6d-5b6f,U+5b72,U+5b74,U+5b76-5b79,U+5b7b-5b7c,U+5b7e-5b7f,U+5b82,U+5b86,U+5b8a,U+5b8d-5b8e,U+5b90-5b92,U+5b94,U+5b96,U+5b9f,U+5ba7-5ba9,U+5bac-5baf,U+5bb1-5bb2,U+5bb7,U+5bba-5bbc,U+5bc0-5bc1,U+5bc3,U+5bc8-5bcb,U+5bcd-5bcf,U+5bd1,U+5bd4-5bdc,U+5be0,U+5be2-5be3,U+5be6-5be7,U+5be9-5bed,U+5bef,U+5bf1-5bf7,U+5bfd-5bfe,U+5c00,U+5c02-5c03,U+5c05,U+5c07-5c08,U+5c0b-5c0e,U+5c10,U+5c12-5c13,U+5c17,U+5c19,U+5c1b,U+5c1e-5c21,U+5c23,U+5c26,U+5c28-5c2b,U+5c2d-5c30,U+5c32-5c33,U+5c35-5c37,U+5c43-5c44,U+5c46-5c47,U+5c4c-5c4d,U+5c52-5c54,U+5c56-5c58,U+5c5a-5c5d,U+5c5f,U+5c62,U+5c64,U+5c67-5c6d,U+5c70,U+5c72-5c78,U+5c7b-5c7e,U+5c80,U+5c83-5c87,U+5c89-5c8b,U+5c8e-5c8f,U+5c92-5c93,U+5c95,U+5c9d-5ca1,U+5ca4-5ca8,U+5caa,U+5cae-5cb0,U+5cb2,U+5cb4,U+5cb6,U+5cb9-5cbc,U+5cbe,U+5cc0,U+5cc2-5cc3,U+5cc5-5cca,U+5ccc-5cd1,U+5cd3-5cd8,U+5cda-5ce0,U+5ce2-5ce3,U+5ce7,U+5ce9,U+5ceb-5cec,U+5cee-5cef,U+5cf1-5cf3"}},{uri:itr,descriptors:{unicodeRange:"U+593b,U+593d-5940,U+5943,U+5945-5946,U+594a,U+594c-594d,U+5950,U+5952-5953,U+5959,U+595b-595f,U+5961,U+5963-5964,U+5966-5972,U+5975,U+5977,U+597a-597c,U+597e-5980,U+5985,U+5989,U+598b-598c,U+598e-5991,U+5994-5995,U+5998,U+599a-599d,U+599f-59a2,U+59a6-59a7,U+59ac-59ad,U+59b0-59b1,U+59b3-59b8,U+59ba,U+59bc-59bd,U+59bf-59c5,U+59c7-59c9,U+59cc-59cf,U+59d5-59d6,U+59d9,U+59db,U+59de-59e2,U+59e4,U+59e6-59e7,U+59e9-59eb,U+59ed-59f8,U+59fa,U+59fc-59fe,U+5a00,U+5a02,U+5a0a-5a0b,U+5a0d-5a10,U+5a12,U+5a14-5a17,U+5a19-5a1b,U+5a1d-5a1e,U+5a21-5a22,U+5a24,U+5a26-5a28,U+5a2a-5a30,U+5a33,U+5a35,U+5a37-5a3b,U+5a3d-5a3f,U+5a41-5a45,U+5a47-5a48,U+5a4b-5a54,U+5a56-5a59,U+5a5b-5a61,U+5a63-5a66,U+5a68-5a69,U+5a6b-5a73,U+5a78-5a79,U+5a7b-5a7e,U+5a80-5a90"}},{uri:utr,descriptors:{unicodeRange:"U+5a91,U+5a93-5a99,U+5a9c-5aa9,U+5aab-5ab1,U+5ab4,U+5ab6-5ab7,U+5ab9-5abd,U+5abf-5ac0,U+5ac3-5ac8,U+5aca-5acb,U+5acd-5ad1,U+5ad3,U+5ad5,U+5ad7,U+5ad9-5adb,U+5add-5adf,U+5ae2,U+5ae4-5ae5,U+5ae7-5ae8,U+5aea,U+5aec-5af0,U+5af2-5b08,U+5b0a-5b15,U+5b18-5b31,U+5b33,U+5b35-5b36,U+5b38-5b3f,U+5b41-5b4f"}},{uri:atr,descriptors:{unicodeRange:"U+5843,U+5845-584b,U+584e-5850,U+5852-5853,U+5855-5857,U+5859-585d,U+585f-5864,U+5866-586a,U+586d-587d,U+587f,U+5882,U+5884,U+5886-5888,U+588a-5891,U+5894-5898,U+589b-589d,U+58a0-58a7,U+58aa-58bb,U+58bd-58c0,U+58c2-58c4,U+58c6-58d0,U+58d2-58d4,U+58d6-58e3,U+58e5-58ea,U+58ed,U+58ef,U+58f1-58f2,U+58f4-58f5,U+58f7-58f8,U+58fa-5901,U+5903,U+5905-5906,U+5908-590c,U+590e,U+5910-5913,U+5917-5918,U+591b,U+591d-591e,U+5920-5923,U+5926,U+5928,U+592c,U+5930,U+5932-5933,U+5935-5936"}},{uri:ntr,descriptors:{unicodeRange:"U+56d0-56d3,U+56d5-56d6,U+56d8-56d9,U+56dc,U+56e3,U+56e5-56ea,U+56ec,U+56ee-56ef,U+56f2-56f3,U+56f6-56f8,U+56fb-56fc,U+5700-5702,U+5705,U+5707,U+570b-571b,U+571d-571e,U+5720-5722,U+5724-5727,U+572b,U+5731-5732,U+5734-5738,U+573c-573d,U+573f,U+5741,U+5743-5746,U+5748-5749,U+574b,U+5752-5756,U+5758-5759,U+5762-5763,U+5765,U+5767,U+576c,U+576e,U+5770-5772,U+5774-5775,U+5778-577a,U+577d-5781,U+5787-578a,U+578d-5791,U+5794-579a,U+579c-579f,U+57a5,U+57a8,U+57aa,U+57ac,U+57af-57b1,U+57b3,U+57b5-57b7,U+57b9-57c1,U+57c4-57ca,U+57cc-57cd,U+57d0-57d1,U+57d3,U+57d6-57d7,U+57db-57dc,U+57de,U+57e1-57e3,U+57e5-57ec,U+57ee,U+57f0-57f3,U+57f5-57f7,U+57fb-57fc,U+57fe-57ff,U+5801,U+5803-5805,U+5808-580a,U+580c,U+580e-5810,U+5812-5814,U+5816-5818,U+581a-581d,U+581f,U+5822-5823,U+5825-5829,U+582b-582f,U+5831-5834,U+5836-5842"}},{uri:otr,descriptors:{unicodeRange:"U+55f9-55fc,U+55ff,U+5602-5607,U+560a-560b,U+560d,U+5610-5617,U+5619-561a,U+561c-561d,U+5620-5622,U+5625-5626,U+5628-562b,U+562e-5630,U+5633,U+5635,U+5637-5638,U+563a,U+563c-563e,U+5640-564b,U+564f-5653,U+5655-5656,U+565a-565b,U+565d-5661,U+5663,U+5665-5667,U+566d-5670,U+5672-5675,U+5677-567a,U+567d-5684,U+5687-568d,U+5690-5692,U+5694-56a2,U+56a4-56ae,U+56b0-56b6,U+56b8-56bb,U+56bd-56c9,U+56cb-56cf"}},{uri:str,descriptors:{unicodeRange:"U+5286-5287,U+5289-528f,U+5291-5292,U+5294-529a,U+529c,U+52a4-52a7,U+52ae-52b0,U+52b4-52bd,U+52c0-52c2,U+52c4-52c6,U+52c8,U+52ca,U+52cc-52cf,U+52d1,U+52d3-52d5,U+52d7,U+52d9-52de,U+52e0-52e3,U+52e5-52ef,U+52f1-52f8,U+52fb-52fd,U+5301-5304,U+5307,U+5309-530c,U+530e,U+5311-5314,U+5318,U+531b-531c,U+531e-531f,U+5322,U+5324-5325,U+5327-5329,U+532b-532d,U+532f-5338,U+533c-533d,U+5340,U+5342,U+5344,U+5346,U+534b-534d,U+5350,U+5354,U+5358-5359,U+535b,U+535d,U+5365,U+5368,U+536a,U+536c-536d,U+5372,U+5376,U+5379,U+537b-537e,U+5380-5381,U+5383,U+5387-5388,U+538a,U+538e-5394,U+5396-5397,U+5399,U+539b-539c,U+539e,U+53a0-53a1,U+53a4,U+53a7,U+53aa-53ad,U+53af-53b5,U+53b7-53ba,U+53bc-53be,U+53c0,U+53c3-53c7,U+53ce-53d0,U+53d2-53d3,U+53d5,U+53da,U+53dc-53de,U+53e1-53e2,U+53e7,U+53f4,U+53fa,U+53fe-5400,U+5402,U+5405,U+5407,U+540b,U+5414,U+5418-541a,U+541c,U+5422,U+5424-5425,U+542a,U+5430,U+5433,U+5436-5437,U+543a"}},{uri:ltr,descriptors:{unicodeRange:"U+5101-5105,U+5108-510a,U+510c-5111,U+5113-5120,U+5122-513e,U+5142,U+5147,U+514a,U+514c,U+514e-5150,U+5152-5153,U+5157-5159,U+515b,U+515d-5161,U+5163-5164,U+5166-5167,U+5169-516a,U+516f,U+5172,U+517a,U+517e-517f,U+5183-5184,U+5186-5187,U+518a-518b,U+518e-5191,U+5193-5194,U+5198,U+519a,U+519d-519f,U+51a1,U+51a3,U+51a6-51aa,U+51ad-51ae,U+51b4,U+51b8-51ba,U+51be-51bf,U+51c1-51c3,U+51c5,U+51c8,U+51ca,U+51cd-51ce,U+51d0,U+51d2-51da,U+51dc,U+51de-51df,U+51e2-51e3,U+51e5-51ea,U+51ec,U+51ee,U+51f1-51f2,U+51f4,U+51f7,U+51fe,U+5204-5205,U+5209,U+520b-520c,U+520f-5210,U+5213-5215,U+521c,U+521e-521f,U+5221-5223,U+5225-5227,U+522a,U+522c,U+522f,U+5231-5232,U+5234-5235,U+523c,U+523e,U+5244-5249,U+524b,U+524e-524f,U+5252-5253,U+5255,U+5257-525b,U+525d,U+525f-5260,U+5262-5264,U+5266,U+5268,U+526b-526e,U+5270-5271,U+5273-527c,U+527e,U+5280,U+5283-5285"}},{uri:gtr,descriptors:{unicodeRange:"U+543d,U+543f,U+5441-5442,U+5444-5445,U+5447,U+5449,U+544c-544f,U+5451,U+545a,U+545d-5461,U+5463,U+5465,U+5467,U+5469-5470,U+5474,U+5479-547a,U+547e-547f,U+5481,U+5483,U+5485,U+5487-548a,U+548d,U+5491,U+5493,U+5497-5498,U+549c,U+549e-54a2,U+54a5,U+54ae,U+54b0,U+54b2,U+54b5-54b7,U+54b9-54ba,U+54bc,U+54be,U+54c3,U+54c5,U+54ca-54cb,U+54d6,U+54d8,U+54db,U+54e0-54e4,U+54eb-54ec,U+54ef-54f1,U+54f4-54f9,U+54fb,U+54fe,U+5500,U+5502-5505,U+5508,U+550a-550e,U+5512-5513,U+5515-551a,U+551c-551f,U+5521,U+5525-5526,U+5528-5529,U+552b,U+552d,U+5532,U+5534-5536,U+5538-553b,U+553d,U+5540,U+5542,U+5545,U+5547-5548,U+554b-554f,U+5551-5554,U+5557-555b,U+555d-5560,U+5562-5563,U+5568-5569,U+556b,U+556f-5574,U+5579-557a,U+557d,U+557f,U+5585-5586,U+558c-558e,U+5590,U+5592-5593,U+5595-5597,U+559a-559b,U+559e,U+55a0-55a6,U+55a8-55b0,U+55b2,U+55b4,U+55b6,U+55b8,U+55ba,U+55bc,U+55bf-55c3,U+55c6-55c8,U+55ca-55cb,U+55ce-55d0,U+55d5,U+55d7-55db,U+55de,U+55e0,U+55e2,U+55e7,U+55e9,U+55ed-55ee,U+55f0-55f1,U+55f4,U+55f6,U+55f8"}},{uri:ctr,descriptors:{unicodeRange:"U+4fe0,U+4fe2,U+4fe4-4fe5,U+4fe7,U+4feb-4fec,U+4ff0,U+4ff2,U+4ff4-4ff7,U+4ff9,U+4ffb-4ffd,U+4fff-500b,U+500e,U+5010-5011,U+5013,U+5015-5017,U+501b,U+501d-501e,U+5020,U+5022-5024,U+5027,U+502b,U+502f-5039,U+503b,U+503d,U+503f-5042,U+5044-5046,U+5049-504b,U+504d,U+5050-5054,U+5056-5059,U+505b,U+505d-5064,U+5066-506b,U+506d-5075,U+5078-507a,U+507c-507d,U+5081-5084,U+5086-5087,U+5089-508c,U+508e-50a2,U+50a4,U+50a6,U+50aa-50ab,U+50ad-50b1,U+50b3-50b9,U+50bc-50ce,U+50d0-50d5,U+50d7-50d9,U+50db-50e5,U+50e8-50eb,U+50ef-50f2,U+50f4,U+50f6-50fa,U+50fc-5100"}},{uri:Ctr,descriptors:{unicodeRange:"U+49d5-4a77"}},{uri:Btr,descriptors:{unicodeRange:"U+4dac-4dad,U+4daf-4db5,U+4e02,U+4e04-4e06,U+4e0f,U+4e12,U+4e17,U+4e1f-4e21,U+4e23,U+4e26,U+4e29,U+4e2e-4e2f,U+4e31,U+4e33,U+4e35,U+4e37,U+4e3c,U+4e40-4e42,U+4e44,U+4e46,U+4e4a,U+4e51,U+4e55,U+4e57,U+4e5a-4e5b,U+4e62-4e65,U+4e67-4e68,U+4e6a-4e6f,U+4e72,U+4e74-4e7d,U+4e7f-4e85,U+4e87,U+4e8a,U+4e90,U+4e96-4e97,U+4e99,U+4e9c-4e9e,U+4ea3,U+4eaa,U+4eaf-4eb1,U+4eb4,U+4eb6-4eb9,U+4ebc-4ebe,U+4ec8,U+4ecc,U+4ecf-4ed0,U+4ed2,U+4eda-4edc,U+4ee0,U+4ee2,U+4ee6-4ee7,U+4ee9,U+4eed-4eef,U+4ef1,U+4ef4,U+4ef8-4efa,U+4efc,U+4efe,U+4f00,U+4f02-4f08,U+4f0b-4f0c,U+4f12-4f16,U+4f1c-4f1d,U+4f21,U+4f23,U+4f28-4f29,U+4f2c-4f2e,U+4f31,U+4f33,U+4f35,U+4f37,U+4f39,U+4f3b,U+4f3e-4f42,U+4f44-4f45,U+4f47-4f4c,U+4f52,U+4f54,U+4f56,U+4f61-4f62,U+4f66,U+4f68,U+4f6a-4f6b,U+4f6d-4f6e,U+4f71-4f72,U+4f75,U+4f77-4f7a,U+4f7d,U+4f80-4f82,U+4f85-4f87,U+4f8a,U+4f8c,U+4f8e,U+4f90,U+4f92-4f93,U+4f95-4f96,U+4f98-4f9a,U+4f9c,U+4f9e-4f9f,U+4fa1-4fa2,U+4fa4,U+4fab,U+4fad,U+4fb0-4fb4,U+4fb6-4fbe,U+4fc0-4fc2,U+4fc6-4fc9,U+4fcb-4fcd,U+4fd2-4fd6,U+4fd9,U+4fdb"}},{uri:Etr,descriptors:{unicodeRange:"U+4933-49d4"}},{uri:dtr,descriptors:{unicodeRange:"U+487a-4932"}},{uri:Itr,descriptors:{unicodeRange:"U+47d2-4879,U+2ce7c,U+2ce88,U+2ce93"}},{uri:htr,descriptors:{unicodeRange:"U+4756-47d1,U+2ca02,U+2ca0e,U+2ca7d,U+2caa9,U+2cb29,U+2cb2e,U+2cb31,U+2cb38-2cb39,U+2cb3f,U+2cb41,U+2cb4e,U+2cb5a,U+2cb64,U+2cb69,U+2cb6c,U+2cb6f,U+2cb76,U+2cb78,U+2cb7c,U+2cbb1,U+2cbbf-2cbc0,U+2cbce,U+2cc5f,U+2ccf5-2ccf6,U+2ccfd,U+2ccff,U+2cd02-2cd03,U+2cd0a,U+2cd8b,U+2cd8d,U+2cd8f-2cd90,U+2cd9f-2cda0,U+2cda8,U+2cdad-2cdae,U+2cdd5,U+2ce18,U+2ce1a,U+2ce23,U+2ce26,U+2ce2a"}},{uri:Qtr,descriptors:{unicodeRange:"U+46c3-4755,U+2c488,U+2c494,U+2c497,U+2c542,U+2c613,U+2c618,U+2c621,U+2c629,U+2c62b-2c62d,U+2c62f,U+2c642,U+2c64a-2c64b,U+2c72c,U+2c72f,U+2c79f,U+2c7c1,U+2c7fd,U+2c8d9,U+2c8de,U+2c8e1,U+2c8f3,U+2c907,U+2c90a,U+2c91d"}},{uri:ptr,descriptors:{unicodeRange:"U+4629-46c2,U+2bdf7,U+2be29,U+2c029-2c02a,U+2c0a9,U+2c0ca,U+2c1d5,U+2c1d9,U+2c1f9,U+2c27c,U+2c288,U+2c2a4,U+2c317,U+2c35b,U+2c361,U+2c364"}},{uri:ftr,descriptors:{unicodeRange:"U+458e-4628,U+2b7a9,U+2b7c5,U+2b7e6,U+2b7f9,U+2b806,U+2b80a,U+2b81c,U+2b8b8,U+2bac7,U+2bb5f,U+2bb62,U+2bb7c,U+2bb83,U+2bc1b,U+2bd77,U+2bd87"}},{uri:mtr,descriptors:{unicodeRange:"U+4449-4511,U+2afa2,U+2b127-2b128,U+2b137-2b138,U+2b1ed"}},{uri:Dtr,descriptors:{unicodeRange:"U+439b-4448,U+2a437,U+2a5f1,U+2a602,U+2a61a,U+2a6b2,U+2a7dd,U+2a8fb,U+2a917,U+2aa30,U+2aa36,U+2aa58"}},{uri:ytr,descriptors:{unicodeRange:"U+4275-430d,U+298c6,U+29a72,U+29d98,U+29ddb,U+29e15,U+29e3d,U+29e49"}},{uri:wtr,descriptors:{unicodeRange:"U+4132-41de,U+28bef,U+28c47,U+28c4f,U+28c51,U+28c54,U+28d10,U+28d71,U+28dfb,U+28e1f,U+28e36,U+28e89,U+28e99,U+28eeb,U+28f32,U+28ff8,U+292a0"}},{uri:btr,descriptors:{unicodeRange:"U+41df-4274,U+292b1,U+29490,U+295cf,U+2967f,U+296f0,U+29719,U+29750"}},{uri:vtr,descriptors:{unicodeRange:"U+408e-4131,U+285c8-285c9,U+28678,U+28695,U+286d7,U+286fa,U+287e0,U+28946,U+28949,U+2896b,U+28987-28988,U+289ba-289bb,U+28a1e,U+28a29,U+28a43,U+28a71,U+28a99,U+28acd,U+28add,U+28ae4,U+28b49,U+28bc1"}},{uri:ktr,descriptors:{unicodeRange:"U+3e83-3f2f,U+27139,U+273da-273db,U+273fe,U+27410,U+27449,U+27614-27615,U+27631,U+27684,U+27693,U+2770e,U+27723,U+27752"}},{uri:Ftr,descriptors:{unicodeRange:"U+3f30-3fdb,U+27985,U+27a84,U+27bb3,U+27bbe,U+27bc7,U+27cb8,U+27da0,U+27e10"}},{uri:xtr,descriptors:{unicodeRange:"U+3fdc-408d,U+27fb7,U+27ff9,U+2808a,U+280bb,U+2815d,U+28277,U+28282,U+282e2,U+282f3,U+283cd,U+28408,U+2840c,U+28455,U+28468,U+2856b"}},{uri:Str,descriptors:{unicodeRange:"U+3dd2-3e82,U+26a58,U+26a8c,U+26ab7,U+26aff,U+26b5c,U+26c21,U+26c29,U+26c73,U+26cdd,U+26e40,U+26e65,U+26f94,U+26ff6-26ff8,U+270f4,U+2710d"}},{uri:Ltr,descriptors:{unicodeRange:"U+3d34-3dd1,U+2648d,U+26676,U+2667e,U+266b0,U+2671d,U+2677c,U+267cc,U+268dd,U+268ea,U+26951,U+2696f,U+269dd,U+269fa,U+26a1e"}},{uri:Rtr,descriptors:{unicodeRange:"U+3c76-3d33,U+25d0a,U+25da1,U+25e2e,U+25e56,U+25e62,U+25e65,U+25ec2,U+25ed7-25ed8,U+25ee8,U+25f23,U+25f5c,U+25fd4,U+25fe0,U+25ffb,U+2600c,U+26017,U+26060,U+260ed,U+26221,U+26270,U+26286,U+2634c,U+26402"}},{uri:Ntr,descriptors:{unicodeRange:"U+3bda-3c75,U+25771,U+257a9,U+257b4,U+259c4,U+259d4,U+25ae3-25ae4,U+25af1,U+25bb2,U+25c14,U+25c4b,U+25c64"}},{uri:Gtr,descriptors:{unicodeRange:"U+3b25-3bd9,U+2504a,U+25055,U+25122,U+2512b,U+251a9,U+251cd,U+251e5,U+2521e,U+2524c,U+2542e,U+2548e,U+254d9,U+2550e,U+25532,U+25562,U+255a7-255a8"}},{uri:Utr,descriptors:{unicodeRange:"U+3a6b-3b24,U+24896,U+249db,U+24a4d,U+24a7d,U+24ac9,U+24b56,U+24b6f,U+24c16,U+24d14,U+24dea,U+24e0e,U+24e37,U+24e6a,U+24e8b,U+24eaa"}},{uri:Mtr,descriptors:{unicodeRange:"U+39a9-3a6a,U+24096,U+24103,U+241ac,U+241c6,U+241fe,U+243bc,U+243f8,U+244d3,U+24629,U+246a5,U+247f1"}},{uri:Ttr,descriptors:{unicodeRange:"U+38e3-39a8,U+23a98,U+23c7f,U+23c97-23c98,U+23cfe,U+23d00,U+23d0e,U+23d40,U+23dd3,U+23df9-23dfa,U+23e23,U+23f7e"}},{uri:Ytr,descriptors:{unicodeRange:"U+3760-382a,U+22ab8,U+22b43,U+22b46,U+22b4f-22b50,U+22ba6,U+22bca,U+22c1d,U+22c24,U+22c55,U+22d4c,U+22de1"}},{uri:Htr,descriptors:{unicodeRange:"U+382b-38e2,U+231b6,U+231c3-231c4,U+231f5,U+23350,U+23372,U+233d0,U+233d2-233d3,U+233d5,U+233da,U+233df,U+233e4,U+2344a-2344b,U+23451,U+23465,U+234e4,U+2355a,U+23594,U+235c4,U+235cb,U+23638-2363a,U+23647,U+2370c,U+2371c,U+2373f,U+23763-23764,U+237e7,U+237ff,U+23824,U+2383d"}},{uri:Ktr,descriptors:{unicodeRange:"U+3698-375f,U+22218,U+2231e,U+223ad,U+224dc,U+226f3,U+2285b,U+228ab,U+2298f"}},{uri:Jtr,descriptors:{unicodeRange:"U+35e6-3697,U+21c56,U+21cde,U+21d2d,U+21d45,U+21d62,U+21d78,U+21d92,U+21d9c,U+21da1,U+21db7,U+21de0,U+21e33-21e34,U+21f1e,U+21f76,U+21ffa,U+2217b"}},{uri:Otr,descriptors:{unicodeRange:"U+3444-350e,U+20ad3,U+20b1d,U+20b9f,U+20c41,U+20cbf,U+20cd0,U+20d45,U+20de1,U+20e64,U+20e6d,U+20e95,U+20e9d,U+20ea2,U+20f5f,U+210c1,U+21201,U+2123d,U+21255,U+21274,U+2127b"}},{uri:Ptr,descriptors:{unicodeRange:"U+350f-35e5,U+212d7,U+212e4,U+212fd,U+2131b,U+21336,U+21344,U+2139a,U+213c4,U+21413,U+2146d-2146e,U+215d7,U+21647,U+216b4,U+21706,U+21742,U+218bd,U+219c3"}},{uri:_tr,descriptors:{unicodeRange:"U+336d-3443,U+2032b,U+20371,U+20381,U+203f9,U+2044a,U+20509,U+20547,U+205d6,U+20628,U+20676,U+2074f,U+20779,U+20807,U+2083a,U+20895,U+208b9,U+2097c,U+2099d"}},{uri:Wtr,descriptors:{unicodeRange:"U+328b-336c,U+2000b,U+20089,U+200a2,U+200a4,U+20164,U+201a2,U+20213"}},{uri:qtr,descriptors:{unicodeRange:"U+3192-31ba,U+31c0-31e3,U+31f0-321e,U+3220-328a,U+1f250-1f251"}},{uri:ztr,descriptors:{unicodeRange:"U+2f74-2fd5,U+3000,U+3003-3007,U+3012-3013,U+3018-301c,U+3020-3029,U+302f-303f,U+3041-3096,U+3099-30a1"}},{uri:Ztr,descriptors:{unicodeRange:"U+30a2-30ff,U+3105-312f,U+3131-318e,U+3190-3191"}},{uri:Vtr,descriptors:{unicodeRange:"U+4e36,U+4ea0,U+4f74,U+4f91,U+4f94,U+4fc5,U+507e,U+50ed,U+5182,U+51f5,U+525e,U+5282,U+52f9,U+5326,U+537a,U+53a3,U+5423,U+5459,U+54b4,U+54d9,U+55c9,U+57f4,U+580b,U+5902,U+5925,U+5a08,U+5ab5,U+5b84,U+5be4,U+5c22,U+5cb5,U+5cbd,U+5d3e,U+5e31,U+5e5e,U+5e80,U+5ee8,U+5f82,U+5fc9,U+5fed,U+600a,U+605d,U+609b,U+609d,U+60dd,U+6243,U+6322,U+63ce,U+640c,U+643f,U+6445,U+64d7,U+6534,U+6549,U+656b,U+6603,U+674c,U+680a,U+6864,U+69d4,U+6a65,U+6c2a,U+6c46,U+6c5c,U+6d0e,U+6d48,U+6e2b,U+6eb2,U+6eb7,U+6f89,U+706c,U+70b1,U+7113,U+71d4,U+727f,U+72f3,U+7303,U+7321,U+736c,U+736f,U+74a9,U+74de,U+750d,U+7513,U+7592,U+75c4,U+7605,U+760a,U+761b,U+7625,U+762d,U+7643,U+7707,U+7747,U+77b5,U+7839,U+784e,U+78a5,U+7924,U+793b,U+798a,U+7a03,U+7a06,U+7a78,U+7a80,U+7aad,U+7ba8,U+7be5,U+7cc8,U+7ec1,U+7f0b,U+7f0f,U+7f12,U+7f68,U+7f9d,U+8025,U+809c,U+80ad,U+80b7,U+80e8,U+811e,U+8204,U+8223,U+822d,U+823b,U+824b,U+825a,U+827d,U+827f,U+828f,U+82c8,U+8307,U+831b,U+8347,U+837d,U+839b,U+83a9,U+83f9,U+84b9,U+8579,U+864d,U+867f,U+86b0,U+86d1,U+86d8,U+86f2,U+8764,U+8770,U+8788,U+8797,U+87ac-87ad,U+87b5,U+881b,U+8844,U+88bc,U+88fc,U+8930,U+89cf,U+89d6,U+8ba0,U+8bd4,U+8c02,U+8c2b,U+8c85,U+8e23,U+8f81-8f82,U+8fd5,U+90b6,U+90db,U+914e,U+9164,U+91ad,U+943e,U+94b7-94b8,U+94eb,U+950d,U+9514,U+9516,U+9518,U+9529,U+9538,U+953f,U+954e,U+955f,U+95fc,U+9667,U+96b3,U+9792,U+97b2,U+98a1,U+9969,U+9987,U+9998,U+9a80,U+9a92,U+9a96,U+9adf,U+9cb4,U+9cbd,U+9cd0,U+9cd4,U+9e31,U+9e3a,U+9e71,U+9ee5,U+9eea,U+9ef9,U+9fa0"}},{uri:jtr,descriptors:{unicodeRange:"U+4e0c,U+4e28,U+4e3f,U+4ec2,U+502e,U+50ba,U+5155,U+5181,U+522d,U+5281,U+5290,U+5369,U+53b6,U+54d5,U+54dc,U+54ff,U+552a,U+553c,U+5588,U+55b5,U+5686,U+570a,U+5776,U+5786,U+57a4,U+5820,U+5865,U+58bc,U+5b32,U+5b65,U+5c1c,U+5c66,U+5c6e,U+5c8d,U+5ddb,U+5f2a,U+5f50,U+5f61,U+6067,U+614a,U+615d,U+619d,U+61d4,U+620b,U+6224-6225,U+6343,U+63ad,U+63f2,U+640b,U+6420,U+6434,U+6496,U+64d0,U+6509,U+652e,U+67a8,U+6833,U+6844,U+684a,U+6920,U+6957,U+6971,U+6a8e,U+6a91,U+6aa0,U+6b43,U+6bea,U+6bf5,U+6c15,U+6cd0,U+6ee0,U+6f24,U+6f2d,U+70c0,U+721d,U+728b,U+72c3,U+72e8,U+730a,U+7338-7339,U+734d,U+746d,U+752f,U+754e,U+770d,U+7735,U+778d,U+77a2,U+77e7,U+7857,U+786d,U+78c9,U+78f2,U+791e,U+7953,U+7b58,U+7b9d,U+7bda,U+7cd7,U+7f32-7f33,U+8022,U+8028-8029,U+8035,U+804d,U+8080,U+80c2,U+80e9,U+80ec,U+80f2,U+810e,U+8221,U+8274,U+82b0,U+82e0,U+83b0,U+8487-8488,U+848e,U+84cd,U+84d0,U+8539,U+857a,U+85a8,U+85b7,U+867c,U+871e,U+8723,U+877e,U+878b,U+8793,U+8803,U+88d2,U+8966,U+89cc,U+89eb,U+8b26,U+8c8a,U+8c98,U+8d33,U+8d47,U+8d55,U+8dbc,U+8e40,U+8e94,U+8f77,U+8f79,U+9058,U+91a2,U+91b5,U+928e,U+9494,U+94b6,U+94de,U+94f4,U+94f9,U+950a,U+950e,U+951e,U+952b,U+953c,U+953e,U+9544,U+9561,U+9564,U+9569,U+95f6,U+9603,U+960d,U+963d,U+9674,U+9794,U+97ab,U+98a5,U+9a9f,U+9ab1,U+9ad1,U+9b0f,U+9b2f,U+9c92,U+9c95,U+9cba,U+9cbc,U+9cc6,U+9ccb,U+9cd8,U+9e32,U+9e38,U+9e5b,U+9e7e,U+9eb4,U+9efb-9efc,U+9f3d"}},{uri:Xtr,descriptors:{unicodeRange:"U+2e3b,U+2e80-2e99,U+2e9b-2ef3,U+2f00-2f73,U+ffffd"}},{uri:$tr,descriptors:{unicodeRange:"U+4e69,U+4f1b,U+4f67,U+4f7e,U+4fdc,U+50e6,U+5196,U+5202,U+5233,U+523f,U+52a2,U+536e,U+5476,U+54ad,U+54cf,U+5537,U+561e,U+56dd,U+56df,U+5709,U+572c,U+57cf,U+57f8,U+580d,U+5881,U+589a,U+5941,U+59b2,U+5c25,U+5d24,U+5d74,U+5e42,U+5e8b,U+5eb3,U+5ed2,U+5fad,U+6003,U+603c,U+6083,U+6100,U+6126,U+6206,U+62ca,U+638e,U+63b4,U+6426,U+646d,U+6535,U+65c4,U+66db,U+6715,U+6769,U+6798,U+67c3,U+6861,U+698d,U+69ca,U+69ed,U+69f2,U+69ff,U+6a18,U+6b39,U+6bb3,U+6c0d,U+6cb2,U+6cd6,U+6cf7,U+6cfa,U+6d33,U+6e16,U+6e53-6e54,U+6ebb,U+6fb6,U+709d,U+72ad,U+72f7,U+72fb,U+7313,U+739f,U+74ba,U+754b,U+755b,U+758b,U+75ac,U+75d6,U+7617,U+7635,U+7640,U+76a4,U+76b2,U+775a,U+77bd,U+781f,U+79b3,U+7b2b,U+7b31,U+7b3e,U+7b6e,U+7b9c,U+7c0b,U+7c9e,U+7cc1,U+7ce8,U+7ea5,U+7f21,U+7f27,U+7f74,U+7fb0,U+8031,U+8071,U+80ea,U+8114,U+8160,U+81a6,U+81c1,U+829f,U+82a4,U+82fb,U+831a,U+8333,U+836c,U+83b6,U+83f8,U+8411,U+841c,U+8489,U+848c,U+85a4,U+8627,U+8629,U+866e,U+86b5,U+872e,U+8731,U+877b,U+877d,U+87ea,U+8813,U+8816,U+8864,U+88ce,U+88e5,U+897b,U+89cb,U+89f3,U+8bfc,U+8c35,U+8d46,U+8d4d,U+8dba,U+8e3a,U+8f75,U+8f7e,U+8fd3,U+9161,U+9179,U+917e,U+91a3,U+94ac,U+94d7,U+94e5,U+952a,U+952c,U+9545,U+9565,U+9568,U+956a,U+961d,U+96e0,U+972a,U+9730,U+989f,U+98e7,U+990d,U+9967,U+9993,U+9aa3,U+9ac0,U+9ae1,U+9aeb,U+9af9,U+9c86,U+9c8b,U+9ca0-9ca1,U+9ca3,U+9ce2,U+9e48,U+9e6a,U+9e87,U+9ee2,U+9ee9,U+9f17,U+9f19,U+9f2c,U+9f80"}},{uri:Arr,descriptors:{unicodeRange:"U+4ef3,U+50d6,U+50ec,U+51ab,U+51b1,U+52d6,U+54a9,U+54da,U+55be,U+55cd,U+564d,U+572f,U+574c,U+576b,U+57d8,U+57fd,U+5844,U+59d2,U+5ae0,U+5b16,U+5b37,U+5b5b,U+5b80,U+5d1e,U+5d6b,U+5efe,U+5f11,U+5f56,U+5f58,U+5f73,U+5f8c,U+5fc4,U+5fe4,U+602b,U+6106,U+610d,U+63de,U+63f8,U+641b,U+64e4,U+6634,U+676a,U+67b5,U+681d,U+6883,U+69b1,U+69e0,U+6b37,U+6b9b,U+6d7c,U+6ed7,U+6f36,U+6f72,U+6f8c,U+7035,U+7039,U+7173,U+7178,U+7228,U+728f,U+72b4,U+72ef,U+72f4,U+7331,U+7481,U+74e0,U+7540,U+75c3,U+75e6,U+763c,U+764d,U+76cd,U+7704,U+7743,U+7780,U+7847,U+786a,U+78b9,U+7962,U+7a02,U+7aac,U+7ab3,U+7b0a,U+7b4c,U+7b7b,U+7bfc,U+7c0f,U+7c16,U+7c40,U+7ca2,U+7cc7,U+7cf8,U+7d77,U+7e3b,U+7ea1,U+7ea9,U+7ef2,U+7f02,U+7f07,U+7f0c,U+7f23,U+7f2f,U+7fbc,U+8016,U+8020,U+812c,U+8136,U+8182,U+822f,U+8233,U+825f,U+8268,U+8284,U+8288,U+8291,U+8308,U+8311,U+835b,U+836d,U+83dd,U+8406,U+840f,U+845c,U+84b4,U+84e3,U+850c,U+855e,U+863c,U+86ba,U+86c4,U+86de,U+86f1,U+873e,U+87bd,U+87db,U+880a,U+883c,U+887f,U+88f0,U+890a,U+892b,U+895e,U+89ef,U+8a48,U+8bdc,U+8c18,U+8c33,U+8c94,U+8db1,U+8dcf,U+8dd6,U+8de3,U+8e6f,U+8e90,U+8f7a,U+8fb6,U+902d,U+90be,U+91af,U+936a,U+948b,U+94d8,U+9513,U+953a,U+956c,U+963c,U+9654,U+966c,U+9688,U+97b4,U+996b,U+9a75,U+9a7a,U+9aba,U+9aed,U+9b08,U+9b43,U+9c8e,U+9c94,U+9c9a,U+9e2b,U+9e36,U+9e4b,U+9e4e,U+9e55,U+9e63,U+9e68-9e69,U+9ebd,U+9ec9,U+9f0d,U+9f37,U+9f51"}},{uri:err,descriptors:{unicodeRange:"U+50a7,U+5240,U+5261,U+52ac,U+531a,U+5363,U+5432,U+5452,U+5456,U+5472,U+5478,U+553f,U+5575,U+5581,U+55cc,U+55fe,U+5601,U+572e,U+57d2,U+57ef,U+581e,U+5924,U+5981,U+5997,U+59a3,U+5aaa,U+5ab8,U+5b34,U+5d5d,U+5def,U+5e11,U+5e91,U+5ed1,U+5ef4,U+5f40,U+600d,U+6019,U+601b,U+605a,U+6092,U+60ab,U+6217,U+623d,U+6369,U+65d2,U+6661,U+670a,U+6753,U+67a7,U+6855,U+68f9,U+6939,U+696e,U+6980,U+6a7c,U+6aab,U+6b82,U+6bf3,U+6bf9,U+6c05,U+6c19-6c1a,U+6ca9,U+6cf6,U+6d1a,U+6dab,U+6f74,U+7085,U+7198,U+71b5,U+7256,U+725d,U+727e,U+72fa,U+7322,U+738e,U+73e5,U+750f,U+755a,U+7594,U+75b3,U+760c,U+7615,U+7630,U+763f,U+77ec,U+7817,U+78a1,U+78d9,U+7905,U+7b2a,U+7b2e,U+7b62,U+7b85,U+7bcc,U+7bea,U+7c26,U+7c74,U+7c9c-7c9d,U+7e47,U+7e9b,U+7e9f,U+7ee0,U+7ee8,U+7ef1,U+7f01,U+7f11,U+7f17,U+7f36,U+7f7e,U+7fee,U+802a,U+80cd,U+8112,U+8169,U+8234,U+8279,U+8298,U+82ca,U+82d8,U+82e1,U+83c0,U+83d4,U+83df,U+8401,U+8451,U+845a,U+8476,U+8478,U+84ba,U+84bd,U+84e0,U+851f,U+8548,U+8556,U+8585,U+868d,U+86e9,U+86f4,U+86f8,U+8765,U+8785,U+87ab,U+87ee,U+8832,U+8872,U+88b7,U+88e2-88e3,U+89da,U+8bce,U+8bd3,U+8bd6,U+8bf9,U+8c16,U+8c73,U+8d5c,U+8dde,U+8f6d,U+8f94,U+8fe8,U+9011,U+915e,U+9185,U+918c,U+94ab,U+94d1,U+94f3,U+9515,U+951d,U+9558,U+9567,U+96ce,U+96e9,U+9785,U+9878,U+987c,U+9883,U+98d1,U+9954,U+9963,U+9a93,U+9ac1,U+9acc,U+9b1f,U+9b49,U+9b4d,U+9b51,U+9ca7,U+9cae,U+9cce,U+9cd3,U+9e37,U+9e39,U+9e41,U+9e46,U+9f22,U+9f2f,U+9f39,U+9f85"}},{uri:trr,descriptors:{unicodeRange:"U+4e5c,U+4edf,U+4f25,U+4f32,U+4f5e,U+4f76,U+4faa,U+4fe6,U+5028,U+5048,U+5250,U+535f,U+538d,U+53c1,U+5412,U+5443,U+54d4,U+54dd,U+5541,U+5550,U+5577,U+55dd,U+55f3,U+560f,U+562c,U+5657-5658,U+5664,U+56af,U+575c,U+577c,U+57b2,U+57da,U+5800,U+5a62,U+5aeb,U+5c3b,U+5ca3,U+5d26,U+5d9d,U+5f01,U+5fb5,U+5fdd,U+5ff8,U+6029,U+6041,U+6079,U+60b1,U+6222,U+629f,U+6332,U+63bc,U+63e0,U+6485,U+65ab,U+65c3,U+65c6,U+668c,U+669d,U+66be,U+67fd,U+6800,U+68fc,U+690b,U+6924,U+6978,U+69a7,U+6a3e,U+6a50,U+6a5b,U+6a97,U+6b24,U+6b8d,U+6baa,U+6c10,U+6c54,U+6ceb,U+6d04,U+6d4d,U+6eb1,U+6ebd,U+7110,U+71b3,U+71f9,U+7230,U+728d,U+7292,U+72b8,U+72d2,U+7360,U+73a2,U+7511,U+75a0,U+75c8,U+779f,U+7826,U+7877,U+7a39,U+7aa8,U+7ae6,U+7b04,U+7b0f,U+7baa,U+7bac,U+7c1f,U+7ccd,U+7ecb,U+7ed4,U+7ed7,U+7efb,U+7f0d,U+7f5f,U+7faf,U+7fd5,U+7fe5,U+8027,U+80bc,U+80dd,U+80fc,U+8132,U+815a,U+8167,U+816d,U+81ca,U+8228,U+82a1,U+82a9,U+82ab,U+82cc,U+8351,U+8368,U+83b8,U+83d8,U+83ea,U+83f0,U+8497,U+84c1,U+858f,U+85ff,U+867b,U+86a8-86a9,U+870a,U+8722,U+876e,U+877c,U+87e5,U+8888,U+88df,U+8919,U+8bcc,U+8bdf,U+8be8,U+8bee,U+8c20,U+8c2f,U+8d36,U+8df8,U+8e05,U+8e2f,U+8f9a,U+9021,U+908b,U+90b4,U+90ba,U+90d0,U+90eb,U+90fe,U+91aa,U+933e,U+9486-9487,U+948d,U+9490,U+94ad,U+94bd,U+94d6,U+94d9,U+9507,U+9546,U+955e,U+956b,U+95e9,U+9604,U+960b,U+9612,U+9615,U+9617,U+96b9,U+989a-989b,U+989e,U+9a78,U+9a7d,U+9aa0,U+9aa2,U+9ac2,U+9b23,U+9b3b,U+9c82,U+9cca,U+9cd9,U+9e28,U+9e5a,U+9e5e,U+9e6c,U+9efe,U+9f0b"}},{uri:rrr,descriptors:{unicodeRange:"U+4e47,U+4e8d,U+4f65,U+4f89,U+50ee,U+520e,U+5416,U+5454,U+54bb,U+54c2,U+54d3,U+54de,U+5591,U+55e5,U+560c,U+566b,U+5769,U+578c,U+5793,U+57e4,U+5889,U+593c,U+59ab,U+5ad4,U+5ad8,U+5af1,U+5b53,U+5ba5,U+5c59,U+5c63,U+5d5b,U+5e0f,U+5e14,U+5edb,U+5fbc,U+6004,U+60ad,U+610e,U+61b7,U+624c,U+634c,U+647a,U+64ba,U+65f0,U+6600,U+66f7,U+67e2,U+67f0,U+680c,U+686b,U+6874,U+691f,U+6989,U+6a17,U+6b81,U+6b84,U+6c06-6c07,U+6c3d,U+6d07,U+6d27,U+6d2b,U+6d91,U+6e6b,U+6e8f,U+6fde,U+70bb,U+723b,U+726e,U+72b0,U+72ce,U+72f2,U+7301,U+731e,U+737e,U+7477,U+748e,U+74ff,U+7633,U+7654,U+771a,U+7726,U+7765,U+7768,U+781c,U+7829,U+78d4,U+7913,U+7957,U+79d5,U+79eb,U+7a70,U+7a86,U+7b25,U+7b38,U+7b47,U+7b72,U+7ba6-7ba7,U+7dae,U+7ee1,U+7efe,U+7f26,U+7f31,U+7f35,U+801c,U+8043,U+809f,U+80ab,U+80d7,U+8118,U+8188,U+81cc,U+823e,U+8244,U+824f,U+82b4,U+82c1,U+82e4,U+82f4,U+8306,U+833a,U+835c,U+839c,U+83b3,U+83bc,U+846d,U+867a,U+868b,U+8734,U+87ca,U+886e,U+887e,U+88a2,U+88c9,U+8921,U+8bb5,U+8bf3,U+8c04,U+8c17,U+8c1d,U+8c25,U+8c36,U+8c55,U+8c78,U+8d3d,U+8d40,U+8d59,U+8d67,U+8d91,U+8dbf,U+8deb-8dec,U+8dfd,U+8e14,U+8e41,U+8f8e,U+900b,U+9044,U+9062,U+90cf,U+9123,U+9146,U+9162,U+9172,U+918d,U+9190,U+92c8,U+93ca,U+948c,U+94aa,U+94b2,U+94c8,U+94ca,U+94d5,U+94df,U+94e9-94ea,U+94f7,U+94fc-94fd,U+951b,U+954f,U+9554,U+9559,U+9566,U+9571-9572,U+95f1,U+9608,U+960f,U+97af,U+988f,U+98d5,U+992e,U+9955,U+9ab0,U+9b32,U+9c90,U+9c9e,U+9ca5,U+9ca9,U+9cad,U+9cb1,U+9cc3,U+9e47,U+9ee7,U+9f87"}},{uri:irr,descriptors:{unicodeRange:"U+4e93,U+4ec4,U+4ef5,U+4f27,U+4f7b,U+4fe3,U+5080,U+5121,U+51eb,U+5208,U+52f0,U+53f5,U+5453,U+5466,U+54a6,U+54bf,U+54d0,U+5533,U+5549,U+5556,U+556d,U+558f,U+55f2,U+55f5,U+5627,U+567b,U+56d4,U+571c,U+5739,U+57b4,U+5807,U+58c5,U+59a4,U+59af,U+59d8,U+5a09,U+5a0c,U+5a4a,U+5ad2,U+5b6c,U+5ca2,U+5cac,U+5d03,U+5d6c,U+5db7,U+5ebe,U+5f2d,U+5fea,U+6042,U+6120,U+6175,U+6221,U+623e,U+6339,U+638a,U+643d,U+64b8,U+64e2,U+66e9,U+67b3,U+67c1,U+67d2,U+6832,U+6877,U+68f0,U+6934,U+6966,U+6987,U+6998,U+69c1,U+69ce,U+6a3d,U+6a84,U+6aa9,U+6b87,U+6bd6,U+6c16,U+6c18,U+6cd4,U+6cee,U+6de0,U+6e0c,U+6ecf,U+6f4b,U+70b7,U+7168,U+72d9,U+7352,U+73b3,U+73d0,U+7441,U+74d2,U+75a5,U+75e7-75e8,U+7610,U+7619,U+765e,U+772d,U+7812,U+782c,U+784c,U+7850,U+7856,U+789b,U+78f4,U+7a51,U+7b15,U+7b1e,U+7b24,U+7b5a,U+7bb8,U+7bc1,U+7bd9,U+7ed0,U+7ee6,U+7efa,U+7f1b,U+7f1f,U+7f22,U+7f45,U+7f71,U+7fa7,U+7fbf,U+7ff3,U+8052,U+80b1,U+80db,U+80f4,U+81bb,U+81ec,U+8202,U+8210,U+8249,U+828a,U+828e,U+82e3,U+8315,U+8369,U+8378,U+83a8,U+83aa,U+83b4,U+83e1,U+84fc,U+8538,U+853b,U+859c,U+85ae,U+86b4,U+86c9,U+86cf,U+8725,U+879f,U+87b3,U+887d,U+88fe,U+8a8a,U+8ba7,U+8c07,U+8c14,U+8c30,U+8c47,U+8db5,U+8dd7,U+8e1f,U+8e69,U+8e70,U+8e85,U+8f78,U+8f87,U+8f8b,U+8f8f,U+90c4,U+9143,U+917d,U+948f,U+94cd,U+94d2,U+94ef,U+954a,U+9609-960a,U+96d2,U+9708,U+9765,U+97ea,U+9880,U+98a7,U+996c,U+9980,U+9991,U+9a88,U+9ab6,U+9afb,U+9b47,U+9c87,U+9c9b,U+9cb5,U+9cc7,U+9e2c,U+9e42,U+9e58,U+9ecd,U+9ecf,U+9f8a,U+9f8c"}},{uri:urr,descriptors:{unicodeRange:"U+4ebb,U+4edd,U+4fa9,U+502c,U+50a5,U+51c7,U+51fc,U+523d,U+5241,U+530f,U+5464,U+549d,U+54a3,U+5514,U+5527,U+555c,U+556e,U+5576,U+55b1,U+55b9,U+55eb,U+5624,U+564c,U+5671,U+5685,U+568f,U+56d7,U+56e1,U+57a1,U+57d9,U+5942,U+5a67,U+5c50,U+5c7a,U+5c98,U+5d06,U+5d27,U+5d6f,U+5df3,U+5dfd,U+5e19,U+5ea0,U+5eb9,U+5eea,U+5ffe,U+600f,U+606b,U+6215,U+622c,U+6266,U+62bb,U+62bf,U+6308,U+6387,U+63b8,U+63c4,U+63c6,U+63f6,U+6441,U+6555,U+659b,U+6677,U+66a7,U+6775,U+678b,U+679e,U+6840,U+6849,U+6860,U+68c2,U+6910,U+6a28,U+6a2f,U+6a79,U+6b92-6b93,U+6bc2,U+6bfd,U+6c29,U+6c32,U+6c86,U+6cc5,U+6d0c,U+6d60,U+6da0,U+6ddd,U+6e86,U+6ed3,U+6edf,U+6fb9,U+6fd1,U+6fef,U+7023,U+7080,U+70ca,U+712f,U+7145,U+7284,U+732c,U+73c8,U+73d9,U+740a,U+7457,U+7596,U+759d,U+75a3,U+75d8,U+75e3-75e4,U+75ff,U+7622,U+7688,U+76b4,U+76e5,U+7818,U+7887,U+789a,U+78b2,U+7b08,U+7b33,U+7c2a,U+7ccc,U+7ea8,U+7ec0,U+7fe6,U+8012,U+8084,U+8093,U+80e4,U+80ef,U+8297,U+82a8,U+82be,U+8331,U+8366,U+83c5,U+83fd,U+8473,U+84a1,U+84ca,U+84d1,U+857b,U+85c1,U+85d3,U+8605,U+8662,U+86aa,U+86b1,U+86d4,U+86ed,U+86f3,U+8709,U+8748,U+874c,U+8763,U+89c7,U+89de,U+89e5,U+8a3e,U+8ba6,U+8c00,U+8c21,U+8c49,U+8c7a,U+8d30,U+8df9,U+8e51,U+8e59,U+8f6b,U+8f73,U+8ff3,U+9016,U+9026,U+902f,U+9099,U+909b,U+90c7,U+914a,U+91ae,U+91ba,U+9495,U+94a3,U+94af,U+94ba,U+94bf,U+94cc,U+94e1,U+94f0,U+9531,U+955d,U+95f3,U+9697,U+96bc,U+975b,U+977c,U+98a2,U+998a,U+9994-9995,U+9a9b,U+9ab7,U+9ac5,U+9c91,U+9ccf,U+9cd5,U+9e29,U+9edc,U+9edf,U+9f83,U+9f88-9f89"}},{uri:arr,descriptors:{unicodeRange:"U+4ee8,U+4f22,U+4f43,U+4f57,U+4f5d,U+4f6f,U+4ff8,U+502d,U+507b,U+5345,U+53df,U+53fb,U+544b,U+5482,U+54a7,U+54cc,U+550f,U+5544,U+5555,U+5594,U+55e8,U+55ec,U+55ef,U+564e,U+56f9,U+5704,U+576d,U+5785,U+57ad,U+5914,U+5958,U+599e,U+59aa,U+59be,U+5a06,U+5abe,U+5ae1,U+5b40,U+5bee,U+5cbf,U+5cc4,U+5ccb,U+5d47,U+603f,U+6078,U+607d,U+607f,U+608c,U+609a,U+60fa,U+61ff,U+621b,U+622e,U+626a,U+6371,U+63ae,U+63cd,U+63d6,U+6410,U+6414,U+6421,U+6448,U+64d8,U+6710,U+6748,U+6772,U+680e,U+6954,U+69ab,U+6c68,U+6c8f,U+6ca4,U+6d2e,U+6e4e,U+6e98,U+6fe0,U+7094,U+70e9,U+7116,U+7119,U+723f,U+73c9,U+74e4,U+753e,U+7548,U+75bd,U+75cd,U+7618,U+7634,U+76c5,U+76f1,U+7708,U+7719,U+777e,U+7791,U+77b3,U+7823,U+7827,U+7830,U+7889,U+7893,U+7949,U+795c,U+79e3,U+7a14,U+7a88,U+7a95,U+7aa0,U+7afd,U+7b90,U+7bd1,U+7bfe,U+7da6,U+7ec2,U+7eef,U+7f03-7f04,U+7f08,U+7f58,U+7f61,U+7f9f,U+8174,U+8200,U+828d,U+82c4,U+82d5,U+82dc,U+82f7,U+832d,U+835a,U+840b,U+8438,U+852b,U+869d,U+86ac,U+86d0,U+86f0,U+8782,U+87a8,U+87d1-87d2,U+87e0,U+8839,U+8913,U+891b,U+8934,U+8941,U+89ca,U+89ce,U+8a07,U+8ba3,U+8bc5,U+8bcb,U+8bdb,U+8c11,U+8c15,U+8c29,U+8c32,U+8dc4,U+8dce,U+8ddb,U+8dfa,U+8e09,U+8e1d,U+8e39,U+8e42,U+8e49,U+8e4b,U+8e8f,U+8f71-8f72,U+9004,U+9036,U+9097,U+90dc,U+90e2,U+90e6,U+90ef,U+9104,U+919a,U+91b4,U+938f,U+9497,U+950f,U+9557,U+9562-9563,U+9573,U+9606,U+9649,U+972d,U+973e,U+97a3,U+97eb,U+988c,U+9894,U+98a6,U+9974,U+9977,U+997d,U+9a90,U+9a9d,U+9aef,U+9ca2,U+9ccd,U+9cdf,U+9e20,U+9e4c,U+9e6b,U+9f3e"}},{uri:nrr,descriptors:{unicodeRange:"U+4ede,U+4ee1,U+4eeb,U+4fda,U+4ffe,U+5025,U+506c,U+50f3,U+5106,U+520d,U+525c,U+52ad,U+530d,U+5310,U+539d,U+53a9,U+53fc,U+5421,U+5477,U+54e7,U+551b,U+5530,U+557e,U+5599,U+55c4,U+55d1,U+55d4,U+55df,U+55e4,U+55ea,U+5623,U+562d,U+5654,U+56eb,U+56f5,U+57a7,U+57d5,U+57dd,U+584d,U+5880,U+58ec,U+59dd,U+5a32,U+5a55,U+5a75,U+5b51,U+5b71,U+5b73,U+5cd2,U+5ce4,U+5e5b,U+5e96,U+5fd2,U+607b,U+61d1,U+634b,U+636d,U+63b3,U+63ff,U+64c0,U+661d,U+6657,U+66dc,U+67a5,U+6841,U+6867,U+6901,U+699b,U+6a47,U+6b46,U+6c21,U+6c24,U+6c35,U+6c4a,U+6c94,U+6ca3,U+6d39,U+6d63,U+6d6f,U+6d94,U+705e,U+71e7,U+726f,U+72cd,U+72de,U+72f0,U+7325,U+7350,U+7391,U+741a,U+757f,U+7583,U+75b1,U+75b4,U+75b8,U+75c2,U+75f1,U+766f,U+7699,U+7751,U+789c,U+7a17,U+7be6,U+7cb2,U+7ea3,U+7eb0,U+7ebe,U+7eeb,U+7f25,U+7f2c,U+7fb8,U+8026,U+8037,U+8153,U+8171,U+8191,U+8214,U+821b,U+8222,U+826e,U+82eb,U+830c,U+8314,U+8334,U+83d6,U+8418,U+843c,U+84ff,U+8564,U+8572,U+8616,U+866c,U+8693,U+86a3,U+86a7,U+86af,U+86b6,U+86c6,U+86ca,U+8708,U+870d,U+8759,U+8760,U+87af,U+87c6,U+8869,U+88c6,U+89d0,U+8b07,U+8baa-8bab,U+8bc2,U+8be4,U+8bf0,U+8c2a,U+8c62,U+8c89,U+8d49,U+8d6d,U+8d84,U+8d94,U+8db8,U+8dc6,U+8e2e,U+8e3d,U+8e47,U+8e7f,U+9005,U+9051,U+907d,U+9082,U+9088,U+90b0,U+90d3,U+9150,U+949c,U+94a4,U+94b9,U+94cb,U+94e0,U+9509,U+9512,U+951f,U+9534,U+9552-9553,U+965f,U+96b0,U+9791,U+9889,U+9990,U+9a9c,U+9aa7,U+9c88,U+9cb2-9cb3,U+9cb6-9cb7,U+9cc5,U+9cdc,U+9e22,U+9e2a,U+9e57,U+9e67,U+9e73,U+9e82,U+9eb8,U+9ee0,U+9f9b"}},{uri:orr,descriptors:{unicodeRange:"U+4eb5,U+4f09,U+4f5a,U+4f8f,U+4fce,U+4fdf,U+4fea,U+4ff3,U+500c,U+500f,U+504e,U+5088,U+52be,U+5420,U+5457,U+5499,U+549b,U+54c6,U+54d2,U+558b,U+559f,U+55bd,U+55d6,U+565c,U+567c,U+568e,U+5768,U+577b,U+57a9,U+57ed,U+59f9,U+5a11,U+5a40,U+5ae6,U+5b6a,U+5b93,U+5bb8,U+5c15,U+5c99,U+5c9c,U+5cc1,U+5d2e,U+5d4b,U+5d99,U+5e54,U+5e61,U+5fcf-5fd1,U+6002,U+6006,U+6014,U+60af,U+60c6,U+60da,U+60f4,U+621f,U+62c8,U+631b,U+631e,U+63e9,U+64b5,U+655d,U+6619,U+6635,U+6641,U+67ad,U+67b0,U+67b7,U+67e9,U+684e,U+688f,U+695d,U+696b,U+69b7,U+6a58,U+6c26,U+6d35,U+6d43,U+6d9e,U+6dd9,U+6dec,U+6e11,U+6e6e,U+6e9f,U+6ec2,U+6ee2,U+6ef9,U+6f09,U+6f66,U+6f8d,U+6fc2,U+6fc9,U+729f,U+72c8,U+73de,U+7430,U+7566,U+7579,U+75c9,U+75e2,U+75fc,U+762a,U+7638,U+7678,U+76c2,U+76f9,U+778c,U+77cd,U+77dc,U+7800,U+781d,U+782d,U+783b-783c,U+78a3,U+78ec,U+7980,U+7a23,U+7b95,U+7bdd,U+7c0c,U+7c41,U+7c91,U+7cb3,U+7cc5,U+7ecc,U+7f19,U+7fca,U+8006,U+8069,U+807f,U+80bd,U+80ed,U+814b,U+8198,U+82cb,U+82d2,U+834f,U+8360,U+847a,U+84d6,U+84e5,U+8537,U+85d0,U+8671,U+86a4,U+86ce,U+86f9,U+8703,U+8707,U+8737,U+873b,U+8815,U+8936,U+8bc3,U+8bcf,U+8bd2,U+8bd8,U+8be9,U+8c0c,U+8c0f,U+8c4c,U+8d45,U+8d5d,U+8d73,U+8e31,U+8e6d,U+8e76,U+8fe4,U+9041,U+90d7,U+9169,U+92ae,U+94a1,U+94c4,U+94c9,U+94db,U+94e7,U+9503,U+9506,U+9517,U+9528,U+9537,U+9542,U+9549,U+95fe,U+9616,U+961a,U+96c9,U+96f3,U+9701,U+970e,U+9739,U+9753,U+9798,U+98d2-98d3,U+98d9-98da,U+9968,U+996f,U+9984,U+9997,U+9acb,U+9b03,U+9c85,U+9ca8,U+9cab,U+9e49,U+9e51,U+9e66,U+9f10"}},{uri:srr,descriptors:{unicodeRange:"U+4e15,U+4e1e,U+4e2b,U+4eb3,U+4ec9,U+4f0e,U+4f64,U+501c,U+50a9,U+510b,U+51a2,U+51bc,U+527d,U+52d0,U+53fd,U+5429,U+542e,U+5486,U+54af,U+5506,U+5511,U+5522,U+552c,U+556c,U+55b3,U+55d2,U+55e6,U+55fd,U+561f,U+5639,U+5659,U+5662,U+5693,U+572a,U+5892,U+598a,U+5992,U+59a9,U+5a20,U+5ae3,U+5b17,U+5b7d,U+5d34,U+5d3d,U+5d4a,U+5d82,U+5e1a-5e1b,U+5ea5,U+5f0b,U+5f77,U+5fd6,U+5fff,U+6026,U+6035,U+6063,U+60b4,U+60bb,U+60ee,U+612b,U+6194,U+61ca,U+61e6,U+61f5,U+620a,U+6248,U+62a1,U+62d7,U+6376,U+637b,U+652b,U+65bc,U+65cc,U+65ce,U+65d6,U+664c,U+665f,U+6666,U+6684,U+66b9,U+6773,U+6777,U+6787,U+67de,U+6845,U+693d,U+6994,U+6a35,U+6d54,U+6d5c,U+6d8e,U+6dd6,U+6eb4,U+6f2a,U+6f78,U+704f,U+70ec,U+7118,U+714a,U+7172,U+71b9,U+724d,U+728a,U+7337,U+733e,U+7396,U+73b7,U+73cf,U+7428,U+742c,U+742e,U+74ee,U+74f4,U+7525,U+753a,U+7572,U+75d4,U+765c,U+768e,U+7762,U+777d,U+77fd,U+7825,U+7837,U+78b4,U+795f,U+79ed,U+7a1e,U+7b06,U+7b20,U+7ba9,U+7bab,U+7c7c,U+7cbd,U+7cdc,U+7ec9,U+7ef6,U+7f30,U+7f42,U+7f44,U+7f54,U+7f94,U+8004,U+800b,U+8019,U+809b,U+80ae,U+80c4,U+80f1,U+8146,U+816e,U+817c,U+81c0,U+81fc,U+81fe,U+822b,U+830f,U+832f,U+8340,U+8365,U+8385,U+8392,U+83a0,U+8424,U+84af,U+869c,U+8713,U+8717-8718,U+87c0,U+87cb,U+87fe,U+8821,U+8902,U+89d1,U+8bb9,U+8c12,U+8d32,U+8d53,U+8df7,U+8e7c,U+8f7c,U+8f95,U+8fab,U+9052,U+905b,U+9095,U+909d,U+90c5,U+911e,U+9122,U+916a,U+919b,U+948e,U+9492,U+949a,U+94b5,U+94bc,U+94c6,U+94f1,U+9502,U+9511,U+9536,U+956f-9570,U+9602,U+9621,U+9631,U+998b,U+99a5,U+9a81,U+9a9e,U+9ebe,U+9f8b"}},{uri:lrr,descriptors:{unicodeRange:"U+4f2b,U+4f3d,U+4fac,U+5043,U+5055,U+5140,U+5156,U+51cb,U+5243,U+531d,U+536f,U+53a5,U+53ae,U+53f1,U+541d,U+5431,U+547b,U+5492,U+5494,U+54a4,U+54aa,U+54ce,U+54fd,U+5509,U+5520,U+553e,U+557b,U+55c5,U+55e1,U+55f7,U+5608,U+5636,U+563b,U+5773,U+57a0,U+5811,U+587e,U+58d5,U+59e3,U+5a29,U+5a6a,U+5a76,U+5a7a,U+5ac9,U+5b62,U+5b95,U+5c49,U+5c8c,U+5cab,U+5cb7,U+5d02,U+5d58,U+5e44,U+5e7a,U+5eff,U+5f29,U+5f89,U+5f9c,U+5fa8,U+6005,U+6043,U+60b8,U+60d8,U+60ec,U+60f0,U+6115,U+618e,U+630e,U+637a,U+6390,U+63ac,U+63b0,U+64de,U+6525,U+6538,U+65ee-65ef,U+6631,U+6636,U+6654,U+677c,U+67b8,U+67d8,U+683e,U+6886,U+68b5,U+692d,U+6963,U+6979,U+6988,U+6b59,U+6b9a,U+6c69,U+6c74,U+6cae,U+6ce0,U+6cef,U+6d95,U+6dc5,U+6dde,U+6de6,U+6dfc,U+6ea7,U+6f15,U+6f29,U+7096,U+70c3,U+7131,U+715c,U+7166,U+7266,U+7317,U+731d,U+7329,U+73e9,U+7425,U+7455,U+7490,U+74ef,U+7519,U+75b5,U+75b9,U+75de,U+7656,U+7663,U+7691,U+7729,U+77fe,U+783e,U+787c,U+795a,U+7a79,U+7abf,U+7b3a,U+7b4f,U+7b60,U+7b75,U+7b8d,U+7bb4,U+7bd3,U+7be1,U+7cbc,U+7edb,U+7f1c,U+7f8c,U+7fb2,U+7fb9,U+7fce,U+7ff1,U+810d,U+81c6,U+82a5,U+82aa,U+82de,U+8317,U+8343,U+835e,U+8364,U+836a,U+853a,U+8543,U+854a,U+8559,U+8568,U+85b0,U+85b9,U+864f,U+86e4,U+8715,U+8845,U+8884,U+88e8,U+88f1,U+8983,U+8be1,U+8c1f,U+8c27,U+8c5a,U+8c82,U+8d58,U+8dbe,U+8f98,U+9035,U+9074,U+90a1,U+9149,U+9157,U+93d6,U+949d,U+94c2,U+94e3-94e4,U+95eb,U+95f0,U+9611,U+9619,U+9642,U+968d,U+9706,U+970f,U+97ed,U+988a,U+9893,U+98e8,U+9a77,U+9a87,U+9aa1,U+9abc,U+9cdd,U+9e2f,U+9e33,U+9e44,U+9e5c,U+9e9d,U+9edd"}},{uri:grr,descriptors:{unicodeRange:"U+4f58,U+4f6c,U+4f70,U+4fd0,U+5014,U+51bd,U+524c,U+5315,U+5323,U+535e,U+540f,U+542d,U+545b,U+548e,U+549a,U+54ab,U+54fc,U+5567,U+556a,U+5600,U+5618,U+563f,U+5669,U+56f1,U+56ff,U+573b,U+574d,U+579b,U+57b8,U+57c2,U+586c,U+58f9,U+595a,U+598d,U+5993,U+5996,U+59d7,U+5b7a,U+5ba6,U+5c4e,U+5c96,U+5ce5,U+5eb6,U+5f08,U+5f99,U+602f,U+6059,U+606c,U+607a,U+60ed,U+61a9,U+620c,U+6249,U+62a8,U+62c4,U+62ed,U+62fd,U+6342,U+6345,U+6396,U+63a3,U+6402,U+6413,U+642a,U+6487,U+64a9,U+64ac,U+64ae,U+64b7,U+659f,U+65a1,U+667e,U+66f3,U+67e0,U+69db,U+69df,U+6aac,U+6b86,U+6c50,U+6c5e,U+6c76,U+6c85,U+6c8c,U+6cde,U+6d19,U+6d52,U+6da7,U+6db8,U+6e1a,U+6e25,U+6e4d,U+6e5f,U+6ec1,U+6f31,U+6f7a,U+6fa7,U+6fe1,U+701b,U+70ab,U+70f7,U+717d,U+71a8,U+7252,U+72c4,U+72e1,U+7315,U+736d,U+73ae,U+73c0,U+73c2,U+740f,U+75a4,U+7600-7601,U+768b,U+76bf,U+76d4,U+7728,U+772f,U+776c,U+77a0,U+77b0,U+77f8,U+783a,U+78d0,U+78fa,U+7977,U+7a37,U+7a92,U+7afa,U+7b71,U+7b94,U+7cef,U+7f28,U+7fe1,U+808b,U+80e5,U+80eb,U+8110,U+8113,U+812f,U+814c,U+81c3,U+8235,U+82d4,U+8309,U+83c1,U+8431,U+8469,U+84bf,U+84d3,U+84df,U+84e6,U+8511,U+8638,U+86c0,U+86db,U+86fe,U+8757,U+8822,U+8882,U+8885,U+8892,U+88f3,U+892a,U+8ba5,U+8bd9,U+8be0,U+8be7,U+8bfd,U+8c1a,U+8d4a,U+8d4e,U+8d66,U+8dda,U+8e0c,U+8e52,U+8e74,U+8e87,U+8f76,U+8fc2,U+8fe6,U+900d,U+9068,U+90ac,U+90b3,U+90b8,U+90e7,U+9119,U+9131,U+915a,U+916e,U+94b4,U+94d0,U+94e2,U+94ec,U+94ff,U+9522,U+9535,U+9556,U+965b,U+96f9,U+9774,U+9981,U+998d,U+998f,U+9a6e,U+9a7f,U+9a8a,U+9b13,U+9c9f,U+9e3e,U+9e43,U+9e6d,U+9e8b,U+9e92,U+9edb,U+9eef"}},{uri:crr,descriptors:{unicodeRange:"U+4e10,U+4e56,U+4e98,U+4ec3,U+4f3a,U+4f5f,U+4f88,U+4f97,U+4fa5,U+4fe8,U+504c,U+5197,U+52fa,U+5364,U+53e8,U+5406,U+543c,U+545c,U+5471,U+5480,U+5495,U+54b3,U+54df,U+54e6,U+54ee,U+557c,U+5583,U+55dc,U+55e3,U+566c,U+592f,U+5944,U+5983,U+59ca,U+59e5,U+5a13,U+5a7f,U+5b09,U+5bd0,U+5e4c,U+5eb5,U+5f1b,U+5f3c,U+608d,U+60cb,U+61a7,U+61ac,U+61cb,U+6233,U+62a0,U+62e7,U+62ee,U+62f4,U+62f7,U+634e,U+6382,U+63c9,U+63ea,U+6400,U+645e,U+6482,U+6556,U+6593,U+6615,U+664f,U+66e6,U+672d,U+675e,U+67da,U+6805,U+6808,U+6868,U+68a2,U+695e,U+69ad,U+6a80,U+6a90,U+6b83,U+6be1,U+6c30,U+6cad,U+6cb1,U+6cf1,U+6d31,U+6d93,U+6dae,U+6dbf,U+6dc6-6dc7,U+6e0d,U+6e32,U+6e3a,U+6e85,U+6eba,U+6f3e,U+6f5e,U+6f7c,U+6fee,U+71ee,U+722a,U+72b7,U+72e9,U+73ba,U+73d1,U+7409,U+7435-7436,U+7459-745a,U+747e,U+7487,U+74e2,U+7504,U+752c-752d,U+7599,U+759f,U+75a1,U+75ca,U+75f0,U+761f,U+7629,U+777f,U+7785,U+77a5,U+77bf,U+78d5,U+7934,U+7940,U+79a7,U+7b19,U+7c38,U+7c95,U+7cb1,U+7ce0,U+7eca,U+7ef7,U+7f2b,U+7f81,U+7fcc,U+8046,U+8148,U+8165,U+819b,U+81ba,U+828b,U+82ae,U+82b7,U+82d3,U+8301,U+830e,U+831c,U+8338,U+837c,U+8393,U+8398,U+83ba,U+83e0,U+83e9,U+853c,U+8654,U+86df,U+8712,U+873f,U+874e,U+8783,U+8859,U+88a4,U+8925,U+8bb7,U+8bff,U+8c19,U+8c1b,U+8c24,U+8c2c,U+8d61,U+8db4,U+8e6c,U+8f8a,U+8fe5,U+8ff8,U+901e,U+90f4,U+912f,U+9163,U+9170,U+91dc,U+949b,U+94a8,U+94b3,U+94c0,U+94e8,U+9525,U+9530,U+9539,U+954c-954d,U+9550,U+955b,U+962a,U+9685,U+96cc,U+9776,U+988d,U+9975,U+9985,U+9a6f,U+9aa5,U+9ab8,U+9c7f,U+9ca4,U+9cb8,U+9e25,U+9e35,U+9e4a"}},{uri:Crr,descriptors:{unicodeRange:"U+4ea2,U+4ea5,U+4f36,U+4f84,U+4f8d,U+501a,U+5029,U+516e,U+51a5,U+51c4,U+51f8,U+5201,U+527f,U+5321,U+5352,U+5366,U+53e9,U+54c7,U+5632,U+5676,U+56b7,U+56bc,U+56da,U+56e4,U+5703,U+5729,U+5742,U+57a2-57a3,U+5815,U+58d1,U+5919,U+592d,U+5955,U+5a05,U+5a25,U+5a34,U+5b70,U+5b75,U+5bdd,U+5bf0,U+5c41,U+5c79,U+5c91,U+5c94,U+5ce6,U+5ced,U+5d69,U+5dc5,U+5e16,U+5e27,U+5f27,U+5f95,U+5ffb,U+6020,U+604d,U+6055,U+60e6,U+60eb,U+6123,U+618b,U+61a8,U+620d,U+62c7,U+62ce,U+62d9,U+631f,U+634d,U+6452,U+6479,U+64ce,U+64d2,U+655b,U+660a,U+6726,U+67c4,U+6809,U+6853,U+68e3,U+68f1,U+68fa,U+693f,U+6942,U+6995,U+69a8,U+69b4,U+6a71,U+6b89,U+6bcb,U+6bd3,U+6bd9,U+6c40,U+6cf8,U+6cfe,U+6d85,U+6da3,U+6daa,U+6e0e,U+6e43-6e44,U+6f88,U+7078,U+7099,U+70bd,U+70d9,U+70fd,U+7109,U+7184,U+7239,U+733f,U+73f2,U+748b,U+749c,U+749e,U+759a,U+75d2,U+75eb,U+7620,U+766b,U+7693,U+76cf,U+7738,U+773a,U+776b,U+778e,U+77aa,U+7852,U+78be,U+7948,U+795b,U+7960,U+796f,U+79ba,U+7a20,U+7a96,U+7aa5,U+7b03,U+7b28,U+7b50,U+7b77,U+7bc6,U+7bf1,U+7c27,U+7d0a,U+7ead,U+7ec5,U+7ee2,U+7ef0,U+7efd,U+7f0e,U+7f2e,U+7f79,U+7f9a,U+8098,U+80da,U+80e7,U+80f0,U+80f3,U+80fa,U+818a,U+81e7,U+8237-8238,U+8299,U+82b8,U+82ce,U+837b,U+83bd,U+83cf,U+8426,U+8475,U+85c9,U+85d5,U+85dc,U+85e9,U+871a,U+8747,U+8749,U+888d,U+8910,U+891a,U+8bb4,U+8be3,U+8bec,U+8bf2,U+8c06,U+8c0d,U+8d31,U+8d48,U+8de4,U+8e1e,U+8e4a,U+8e66,U+8f84,U+8f97,U+9083,U+90e1,U+9165,U+91c9,U+94b0,U+94f5,U+9504,U+9532,U+956d,U+95f5,U+95fa,U+9668,U+9698,U+96bd,U+9704,U+9773,U+9890,U+996a,U+997a,U+9a74,U+9a8b,U+9cc4,U+9ccc"}},{uri:Brr,descriptors:{unicodeRange:"U+4ea8,U+4f1e,U+4f51,U+4f63,U+4f7c,U+4f83,U+4fa0,U+4fd1,U+4ffa,U+5018,U+5026,U+508d,U+50bb,U+50f5,U+50fb,U+5162,U+5319,U+5320,U+538c,U+5413,U+541f,U+5475,U+54bd,U+54d1,U+5589,U+5598,U+575f,U+57ae,U+57e0,U+5937,U+5974,U+5978,U+59ae,U+5a1f,U+5a49,U+5ab3,U+5b99,U+5b9b,U+5ba0,U+5be1,U+5be5,U+5c09,U+5c27,U+5de2,U+5e9a,U+5f26,U+5f8a,U+5f98,U+6021,U+606d,U+60bc,U+60d5,U+60e7,U+611a,U+614c,U+6254,U+626f,U+6292,U+6296,U+62b9,U+62e2,U+631a,U+631d,U+6320,U+6346,U+63ba,U+6467,U+64bc,U+658b,U+663c,U+6643,U+6652,U+6656,U+6687,U+66d9,U+66dd,U+66f0,U+673d,U+67ab,U+6816-6817,U+68a7,U+68ad,U+68cd,U+68e0,U+6986,U+69fd,U+6b47,U+6bd7,U+6c1f,U+6c2e-6c2f,U+6cbe,U+6de4,U+6e1d,U+6e83,U+6e9c,U+6ed4-6ed5,U+6f4d,U+70f9,U+7130,U+716e,U+718f,U+71ac,U+71e5,U+72fc,U+731c,U+7334,U+73ca,U+7422,U+7426,U+745f,U+7470,U+75af,U+75f4,U+762b,U+763e,U+7696,U+7737,U+7741,U+77a7,U+77bb,U+77ee,U+785d,U+788c,U+78ca,U+7901,U+796d,U+7985,U+79fd,U+7a3c,U+7a57,U+7a74,U+7b5b,U+7caa,U+7cb9,U+7cd5,U+7eac,U+7eb6,U+7ed1,U+7ee5,U+7f20,U+7f2a,U+7f38,U+7f69,U+7fa1,U+8018,U+8038,U+803f,U+804b,U+80a2,U+80be,U+80d6,U+817a,U+81fb,U+820c,U+82ad,U+82af,U+82bd,U+8327,U+8354,U+835f,U+8367,U+836b,U+840c,U+841d,U+8471,U+849c,U+84b2,U+84c9,U+8517,U+851a,U+8549,U+8681,U+8721,U+8776,U+88d9,U+88f9,U+89c5,U+8c1c,U+8c34,U+8d81,U+8d9f,U+8e0a,U+8e72,U+8eb2,U+8fed,U+901b,U+902e,U+906e,U+9091,U+90aa,U+90af,U+915d,U+9171,U+946b,U+9489,U+9499,U+94a5,U+9508,U+9524,U+952d,U+9551,U+9576,U+95f7,U+9600,U+96b6,U+96c0,U+9756,U+97f6,U+98a0,U+98a4,U+997f,U+9a73,U+9a86,U+9ad3,U+9e3d,U+9ed4"}},{uri:Err,descriptors:{unicodeRange:"U+4e4d,U+4e5e,U+4ec7,U+4ed5,U+50da,U+50e7,U+515c,U+51a4,U+51ff,U+5203,U+5254,U+5300,U+533e,U+5375,U+53ee,U+5435,U+543b,U+5455,U+548b,U+548f,U+54d7,U+54fa,U+5578,U+5587,U+55a7,U+560e,U+5760,U+576f,U+5777,U+5830,U+58a9,U+5962,U+59e8,U+5a07,U+5a23,U+5a3c,U+5b5a,U+5bb5,U+5bc5,U+5bde,U+5c7f,U+5cb1,U+5ce8,U+5cea,U+5d29,U+5d4c,U+5e18,U+5f57,U+5f5d,U+5f87,U+5ff1,U+6016,U+601c,U+6064,U+6177,U+61d2,U+625b,U+62e3,U+62f1,U+634f,U+63a0,U+6401,U+6405,U+6495,U+64c2,U+6512,U+6577,U+6590,U+65a7,U+65a9,U+65f7,U+6627,U+6655,U+6714,U+6795,U+67d1,U+67ff,U+68b3,U+68d5,U+68d8,U+6930,U+6960,U+6977,U+69bb,U+69d0,U+6a31,U+6b7c,U+6bb4,U+6c22,U+6c72,U+6c79,U+6c7e,U+6c81,U+6c93,U+6ca5,U+6cbc,U+6ce3,U+6cfb,U+6d3c,U+6da9,U+6df3,U+6e2d,U+6eaf,U+6ec7,U+6f13,U+6f33,U+6f62,U+6fa1,U+7011,U+707c,U+708a,U+70c1,U+70d8,U+70eb,U+711a,U+7194,U+7281,U+7316,U+7357,U+7384,U+7405,U+742a,U+745b,U+7574,U+7578,U+75ea,U+7682,U+7792,U+77d7,U+77e9,U+77eb,U+77f6,U+780c,U+78c5,U+7941,U+79e4,U+7a1a,U+7a9c,U+7ad6,U+7b5d,U+7bf7,U+7c07,U+7c3f,U+7c9f,U+7ca5,U+7cdf,U+7e82,U+7eab,U+7ece,U+7eda,U+7f09,U+7f15,U+7f9e,U+7fdf,U+7fe9,U+803b,U+803d,U+80aa,U+80b4,U+813e,U+8155,U+817b,U+819d,U+821c,U+82b9,U+82df,U+82ef,U+8304,U+83b9,U+8446,U+853d,U+85af,U+85fb,U+8650,U+865e,U+86d9,U+86ee,U+8700,U+8862,U+889c,U+88d4,U+88f8,U+895f,U+8a79,U+8bb3,U+8bb6,U+8bc0,U+8beb,U+8bf5,U+8c23,U+8c79,U+8d1e,U+8dcb,U+8e29,U+8e44,U+8e81,U+8eac,U+8eaf,U+8f8d,U+9050,U+90f8,U+914b,U+948a,U+94be,U+94ee,U+950c,U+9540,U+962e,U+9647,U+9661,U+9699,U+96cf,U+9716,U+9761,U+97a0,U+97e7,U+9a7c,U+9a8f,U+9ae6,U+9cd6,U+9e26"}},{uri:drr,descriptors:{unicodeRange:"U+4fa3,U+4fae,U+4fd8,U+4fef,U+50a3,U+5189,U+5195,U+51db,U+51f3,U+51f9,U+5220,U+5228,U+5288,U+52ff,U+532e,U+533f,U+5351,U+53db,U+53ed,U+5450,U+5484,U+5490,U+54c9,U+54e9,U+5501,U+5507,U+5543,U+55d3,U+56a3,U+575e,U+589f,U+5984,U+59ec,U+5a04,U+5a36,U+5a77,U+5a9a-5a9b,U+5ab2,U+5ac2,U+5ad6,U+5bc7,U+5c2c,U+5c34,U+5c51,U+5cd9,U+5d0e,U+5deb,U+5e3c,U+5e87,U+5ed3,U+5f13,U+5f64,U+5fe1,U+606a,U+6096,U+60df,U+60f6,U+60f9,U+6151,U+620e,U+6241,U+6252,U+6273,U+627c,U+6289,U+62c2,U+62cc,U+62ef,U+6361,U+6363,U+63b7,U+63e3,U+6518,U+66ae,U+6756,U+6789,U+6813,U+6829,U+6862,U+6866,U+6893,U+6897,U+690e,U+6984,U+69cc,U+6a1f,U+6a44,U+6a59,U+6ba1,U+6c13,U+6c90,U+6ca6,U+6cbd,U+6ccc,U+6cd3,U+6cd7,U+6d4a,U+6d4f,U+6d5a,U+6d9f,U+6da1,U+6dcc,U+6ea5,U+6ee4,U+6ee6,U+6f2f,U+6f8e,U+701a,U+7095,U+709c,U+70af,U+70db,U+70e8,U+714e,U+715e,U+71a0,U+71ce,U+7235,U+7280,U+72d0,U+72f8,U+73ab,U+7410,U+745c,U+7480,U+74a7-74a8,U+74e3,U+75ae,U+75f9,U+76b1,U+76ce,U+7736,U+77e2-77e3,U+781a,U+789f,U+797a,U+79be,U+79c3,U+79c6,U+79f8,U+7a8d,U+7a98,U+7aa6,U+7aff,U+7b1b,U+7cd9,U+7d6e,U+7ede,U+7eee,U+7f00,U+7f24,U+7f2d,U+7fd8,U+800d,U+8116,U+8151,U+81b3,U+8205,U+82c7,U+82db,U+832c,U+8335,U+8339,U+8386,U+846b,U+8587,U+8611,U+8682,U+868a,U+868c,U+8774,U+88d8,U+88f4,U+8912,U+8b6c,U+8bbd,U+8c0e,U+8c41,U+8d26,U+8d3b-8d3c,U+8d50,U+8dea,U+8e35,U+8f99,U+8fe2,U+8fe9,U+9017,U+914c,U+916f,U+9175-9176,U+918b,U+94a0,U+94ae,U+94ce,U+94f2,U+951a,U+952f,U+9541,U+9640,U+9672,U+968b,U+96cd,U+96ef,U+9713,U+97ec,U+9885,U+9992,U+9a6d,U+9a79,U+9a85,U+9cbb,U+9cd7,U+9cde,U+9e93,U+9f9f"}},{uri:Irr,descriptors:{unicodeRange:"U+4e11,U+4ed7,U+4fcf,U+4fe9,U+4fed,U+50ac,U+50b2,U+5112,U+5180,U+5188,U+51f6,U+522e,U+5265,U+52cb,U+52df,U+5349,U+5367,U+5378,U+537f,U+5395,U+5398,U+53d4,U+543e,U+5440,U+5446,U+54b8,U+5565-5566,U+5580,U+55bb,U+56ca,U+572d,U+573e,U+574e,U+5782-5784,U+58f3,U+5938-5939,U+5948,U+594e,U+5a1c,U+5a74,U+5ae9,U+5b55,U+5b5c,U+5bb0,U+5bd3,U+5bf8,U+5c3f,U+5d14,U+5d2d,U+5df7,U+5dfe,U+5e05-5e06,U+5e1c,U+5e62,U+5e7b,U+5e7d,U+5ed6,U+5f2f,U+5f66,U+5f6c,U+5fa1,U+604b,U+609f,U+60a6,U+60e8,U+6101,U+6124,U+6127,U+6148,U+61be,U+6247,U+62d8,U+62da,U+633d,U+635e,U+6367,U+6380,U+638f,U+63a9,U+63fd,U+641c,U+64e6,U+655e,U+6572,U+6591,U+65a5,U+6691,U+6735,U+67a2-67a3,U+67ef,U+680b,U+6876,U+6905,U+6a0a,U+6a61,U+6b79,U+6bb7,U+6bbf,U+6c41,U+6c55,U+6c83,U+6c9b,U+6ca7,U+6cfc,U+6d46,U+6d51,U+6d74,U+6d9d,U+6daf,U+6dc0,U+6deb,U+6e17,U+6e24,U+6e89,U+6ea2,U+6ef4,U+6f6d,U+707f,U+70b3,U+70e4,U+70ef,U+710a,U+722c,U+725f,U+7261,U+72ee,U+72f1,U+730e,U+732b,U+7433,U+7538,U+75bc,U+7624,U+7709,U+7750,U+7779,U+7802,U+7898,U+78a7,U+78b1,U+78cb,U+78f7,U+7984,U+7a83,U+7aed,U+7b3c,U+7b4b,U+7c92,U+7c98,U+7ca4,U+7eb9,U+7ee3,U+7ef3,U+7ef5,U+7f05,U+7f55,U+7f62,U+7fc1,U+7fd4,U+7fe0,U+8042,U+806a,U+80a0,U+80a4,U+80c3,U+8102,U+8106,U+814a,U+8154,U+8247,U+8258,U+82cd,U+8328,U+832b,U+8389,U+83ca,U+845b,U+846c,U+84b8,U+8574,U+859b,U+8680,U+8695,U+86c7,U+8702,U+886c,U+8896,U+88b1,U+88e4,U+8bc8,U+8c10,U+8c26,U+8c28,U+8c2d,U+8d4c,U+8d63,U+8f67,U+8f74,U+8fc4,U+9006,U+9063,U+90a2,U+90b1,U+90c1,U+9177,U+9189,U+9493,U+949e,U+94fe,U+9610,U+961c,U+96a7,U+96fe,U+978d,U+97f5,U+9888,U+997c,U+9a84,U+9b3c,U+9b44-9b45,U+9b54,U+9e64,U+9f0e,U+9f9a"}},{uri:hrr,descriptors:{unicodeRange:"U+4e19,U+4e38,U+4e53,U+4e7e,U+4e9f,U+4ec6,U+4f50,U+4fde,U+502a,U+5154,U+517d,U+51d1,U+51f0,U+5239,U+5256,U+52c9,U+52fe,U+5308,U+532a,U+535c,U+5384,U+53a2,U+53a8,U+53c9,U+53e0,U+5496,U+54ac,U+54c0,U+54c4,U+54e8,U+5561,U+5582,U+561b,U+5631,U+566a,U+5764,U+576a,U+5792,U+57ab,U+584c,U+5885,U+58f6,U+59a8,U+5acc,U+5bc2,U+5c38-5c39,U+5c60,U+5c6f,U+5c82,U+5c90,U+5d16,U+5dcd,U+5e37,U+5e90,U+5eb8,U+5f6a,U+5fcc,U+6012,U+6068,U+6073,U+607c,U+6094,U+6109,U+621a,U+626e,U+6284,U+62d0,U+62e6,U+62fe,U+6321,U+6328,U+632b,U+6349,U+6454,U+65ed,U+660f,U+6674,U+66a8,U+6749,U+674f,U+6760,U+67af,U+6850,U+6854,U+6869,U+68a8,U+68d2,U+68f5,U+6912,U+6b49,U+6b6a,U+6bef,U+6c28,U+6c5d,U+6c82,U+6cab,U+6cb8,U+6cc4,U+6cf5,U+6d47,U+6d78,U+6da4,U+6dc4,U+6dcb,U+6df9,U+6e0a,U+6e23,U+6e5b,U+6eb6,U+6f06,U+6f47,U+6f84,U+6f9c,U+6fd2,U+7076,U+70ac,U+7199,U+723d,U+72ac,U+72ed,U+7476,U+7529,U+752b,U+754f,U+7554,U+75d5,U+7626,U+76ef,U+7720,U+7766,U+7784,U+77ac,U+780d,U+7838,U+7845,U+786b,U+78b3,U+7978,U+79b9,U+79c9,U+79e7,U+7a3d,U+7a84,U+7a9f,U+7b0b,U+7b52,U+7c7d,U+7f1a,U+7fc5,U+7ff0,U+804a,U+8086-8087,U+808c,U+809a,U+80ba,U+810a,U+8180,U+818f,U+81c2,U+81ed,U+8231,U+8292,U+829c,U+82a6,U+82d1,U+8346,U+838e,U+839e,U+83c7,U+83f1,U+8403,U+840e,U+8513,U+857e,U+85e4,U+867e,U+871c,U+87ba,U+87f9,U+884d,U+8944,U+8a93,U+8c05,U+8d2c,U+8d2e,U+8d42-8d43,U+8dfb,U+8e22,U+8eba,U+8f69,U+8f9c,U+8fa3,U+8fa8,U+8fb1,U+900a,U+9038,U+903b,U+9042,U+904f,U+90b5,U+90dd,U+9102,U+9187,U+94a7,U+94c5,U+9523,U+95f8,U+95fd,U+960e,U+964b-964c,U+96c1,U+9709,U+971c,U+97ad,U+9882,U+9965,U+9976,U+9988,U+99a8,U+9a82,U+9a9a,U+9b41,U+9c8d,U+9e45,U+9e70,U+9e9f,U+9f3b,U+9f7f"}},{uri:Qrr,descriptors:{unicodeRange:"U+4e08,U+4e18,U+4e1b,U+4e22,U+4e27,U+4e32,U+4e52,U+4e73,U+4ead,U+4ed4,U+4ed9,U+4ef0,U+4fa6,U+5076,U+5179,U+51bb,U+51c9,U+51ef,U+51fd,U+524a,U+526a,U+529d,U+52ab,U+5306,U+5339,U+53d9,U+540a,U+5410,U+541e,U+5439,U+54b1,U+54ed,U+5564,U+558a,U+55b7,U+5634,U+574a,U+5751,U+57a6,U+57cb,U+57d4,U+5824,U+582a,U+5835,U+5858,U+5893,U+58e4,U+5951,U+5986,U+59da,U+59fb,U+59ff,U+5a03,U+5a46,U+5ac1,U+5b5d,U+5bfa,U+5c18,U+5c3a,U+5c48,U+5c4f,U+5c61,U+5cb3,U+5d1b,U+5e15,U+5e3d,U+5e99,U+5e9e,U+5eca,U+5f0a,U+5f17-5f18,U+5f25,U+5f7c,U+5fcd,U+6028,U+60a0,U+60ac,U+60d1,U+614e,U+6155,U+6168,U+61c8,U+6208,U+6212,U+6251,U+629a-629b,U+62ab-62ac,U+62fc,U+6323,U+632a,U+63d2,U+643a,U+6491-6492,U+649e,U+64b0,U+64c5,U+659c,U+6614,U+662d,U+6664,U+6670,U+6676,U+6746,U+67cf,U+67d4,U+682a,U+6843,U+6846,U+68da,U+6b3a,U+6b67,U+6c27,U+6c5b,U+6c64,U+6c70,U+6caa,U+6cca,U+6ce1,U+6d12,U+6d45,U+6dd1,U+6dd8,U+6e34,U+6e7f,U+6ee5,U+6f02,U+7092,U+70c2,U+70e6,U+7115,U+7237,U+7272,U+727a,U+72c2,U+739b,U+73b2,U+743c,U+751c,U+758f,U+75b2,U+7686,U+76c6,U+76d2,U+76fc,U+775b,U+77a9,U+7816,U+788e,U+7897,U+78b0,U+79bd,U+7a0d,U+7a91,U+7a9d,U+7ae3,U+7bad,U+7cca,U+7d2b,U+7eb1,U+7f06,U+7f14,U+7f1d,U+7f50,U+7ffc,U+8036,U+80bf,U+80c1,U+80ce,U+80f8,U+8109,U+810f,U+8170,U+8179,U+819c,U+821f,U+8230,U+8236,U+8273,U+829d,U+82f9,U+8305,U+8350,U+83b2,U+83cc,U+8404,U+840d,U+8427,U+8482,U+8679,U+8854,U+886b,U+8bbc,U+8be6,U+8c31,U+8c6b,U+8d4b,U+8dcc,U+8e2a,U+8e48,U+8f90,U+8fb0,U+9022,U+903c,U+903e,U+9065,U+916c,U+917f,U+94a9,U+94c3,U+94dd,U+94ed,U+9510,U+953b,U+96c7,U+970d,U+9738,U+9877,U+987d,U+989c,U+98d8,U+9a70,U+9a91,U+9aa4,U+9b42,U+9b4f,U+9e2d,U+9e3f,U+9e7f,U+9f20"}},{uri:prr,descriptors:{unicodeRange:"U+4e59,U+4ed3,U+4f0f,U+4f38,U+4f69,U+4fa7,U+4faf,U+4ff1,U+5077,U+5085,U+5144,U+5151,U+51af,U+51b6,U+51cc,U+523a,U+5251,U+5269,U+5272,U+52d8,U+5353,U+5389,U+53f9,U+5401,U+5415,U+541b,U+54f2,U+5524,U+554a,U+559d,U+5609,U+5740,U+575d,U+5806,U+5821,U+586b,U+5915,U+594f,U+5960,U+5999,U+59a5,U+59b9,U+59c6,U+59d1,U+59dc,U+5b5f,U+5b64,U+5b87,U+5bb4,U+5bbf,U+5c16,U+5c1d,U+5c3e,U+5c9a,U+5ca9,U+5cad,U+5cfb,U+5de1,U+5de7,U+5de9,U+5ef7,U+5f04,U+5f70,U+5f79,U+5fc6,U+602a,U+6050,U+6052,U+6070,U+6084,U+60b2,U+60dc,U+60e9,U+6167,U+6170,U+61c2,U+6270,U+6291,U+62b1,U+62bc,U+62dc,U+62df,U+62f3,U+6324,U+633a,U+6377,U+6398,U+63cf,U+640f,U+642c-642d,U+6458,U+6478,U+6500,U+654c,U+6566,U+658c,U+65c1,U+65cb,U+65e8,U+65ec,U+6696-6697,U+6734,U+679a,U+679d,U+67dc,U+67f3-67f4,U+680f,U+683d,U+684c,U+68af,U+699c,U+6bc1,U+6c0f,U+6c1b,U+6c57,U+6c6a,U+6d3d,U+6d6e,U+6d82,U+6db5,U+6dee,U+6e58,U+6eaa,U+6ecb,U+6ede,U+6ee9,U+6f0f,U+6f20,U+6f58,U+704c,U+7070,U+70b8,U+718a,U+7238,U+7262,U+7275,U+72b9,U+72d7,U+72e0,U+741b,U+7434,U+7483,U+74f6-74f7,U+75ab,U+764c,U+7761,U+7855,U+7891,U+78c1,U+79d2,U+7a00,U+7a3b,U+7c97,U+7ea4,U+7eb2,U+7ed2,U+7eea,U+7ef8,U+7f18,U+7fbd,U+8000,U+8010,U+8096,U+809d,U+80a9,U+817f,U+81e3,U+8206,U+8212,U+82ac,U+8302,U+8361,U+8377,U+83f2,U+8461,U+848b,U+84ec,U+8521,U+85aa,U+8870,U+8877,U+8881,U+888b,U+88ad,U+88c2,U+8986,U+8bd1,U+8bf1,U+8d24,U+8d2a,U+8d3e-8d3f,U+8d41,U+8d56,U+8d64,U+8d6b,U+8e0f,U+8f70,U+8f85,U+8f88,U+8fa9,U+9003,U+901d,U+90b9,U+90ce,U+94a6,U+94f8,U+9505,U+95ea,U+95ef,U+95f2,U+95f9,U+9601,U+9605,U+9634,U+966a,U+9677,U+9690,U+9694,U+96d5,U+971e,U+9896-9897,U+9972,U+9a71,U+9a76,U+9a7e,U+9e1f,U+9e23"}},{uri:frr,descriptors:{unicodeRange:"U+4e01,U+4e43,U+4ea6,U+4ef2,U+4eff,U+4f26,U+4f2a,U+4f2f,U+4f5b,U+4fa8,U+4fca,U+4fd7,U+5021,U+504f,U+5141,U+51c0,U+51dd,U+51e4,U+51ed,U+5200,U+5237,U+5427,U+5448,U+54a8,U+5706,U+5708,U+5723,U+575b,U+57c3,U+5899,U+58a8,U+58c1,U+5976,U+5988,U+59bb,U+59d0,U+59d3,U+5a18,U+5a31,U+5a92,U+5b54,U+5b85,U+5baa-5bab,U+5bc4,U+5bd2,U+5be8,U+5bff,U+5c65,U+5d07,U+5e1d,U+5e78,U+5e7c,U+5f03,U+5f1f,U+5f39,U+5f6d,U+5f92,U+5faa,U+5fbd,U+5fe7,U+5ffd,U+60a8,U+60ef,U+6108,U+6162,U+622a,U+6234,U+626b,U+626d,U+62c6,U+62d2,U+62d4,U+62d6,U+62e8,U+6316,U+6355,U+63ed,U+6447,U+64a4,U+65f1,U+6606,U+6628,U+664b,U+6668,U+6682,U+66f9,U+66fc,U+66ff,U+6717,U+6740,U+676d,U+67aa,U+67ec,U+67f1,U+6842,U+6851,U+695a,U+6982,U+6a2a,U+6b20,U+6b23,U+6b32,U+6b96,U+6bc5,U+6beb,U+6c60,U+6c9f,U+6cea,U+6cf3,U+6d1e,U+6d53,U+6d66,U+6d69,U+6d8c,U+6d9b,U+6db2,U+6de1,U+6dfb,U+6e14,U+6ed1,U+6eda,U+6ee8,U+6f2b,U+706d,U+7089,U+708e,U+70ad-70ae,U+70e7,U+7126,U+714c,U+71c3,U+71d5,U+7206,U+7259,U+731b,U+73a9,U+73bb,U+74dc,U+7532,U+7545,U+755c,U+75c7,U+7687,U+76d7,U+76f2,U+788d,U+78e8,U+79e6,U+79e9,U+7a3f,U+7a46,U+7a97,U+7af9,U+7bee,U+7c4d,U+7c89,U+7cd6,U+7eb5,U+7ebd,U+7ed8,U+8017,U+8033,U+80c0,U+80de,U+80f6,U+8138,U+817e,U+81a8,U+820d,U+827e,U+82b3,U+82d7,U+83b1,U+84c4,U+84dd,U+8584,U+864e,U+865a,U+866b,U+86cb,U+88d5,U+89e6,U+8bca,U+8bde,U+8bfa,U+8c0a,U+8c37,U+8c46,U+8c6a,U+8c8c,U+8d1d,U+8d29,U+8d4f,U+8d54,U+8d5a,U+8d60,U+8d62,U+8f7f,U+8f96,U+8f9e-8f9f,U+8fc1,U+8fdf,U+8fea,U+8ff7,U+9012,U+906d,U+9075,U+90a6,U+90bb,U+90ca,U+9178,U+9192,U+91ca,U+94bb,U+94dc,U+94fa,U+9501,U+950b,U+9521,U+955c,U+963b,U+9655,U+9675-9676,U+9887,U+9891,U+9971,U+9a97,U+9ece,U+9ed8"}},{uri:mrr,descriptors:{unicodeRange:"U+4e1d,U+4e39,U+4e4c,U+4e4f,U+4e54,U+4e58,U+4e95,U+4ea1,U+4eab,U+4eae,U+4ec1,U+4f10,U+4f19,U+4f30,U+4f34,U+4fb5,U+503e,U+518c,U+5192,U+51a0,U+51ac,U+51b0,U+51e1,U+5211,U+5242,U+52a3,U+52b2,U+52c3,U+52c7,U+52d2,U+52e4,U+5377,U+539a,U+53a6,U+53e5,U+5417,U+5510,U+552f,U+5531,U+574f-5750,U+5761,U+5851,U+5854,U+58ee,U+593a,U+5949,U+5954,U+5a5a,U+5b8b,U+5bbd,U+5c04,U+5c0a,U+5c4b,U+5ce1,U+5cf0,U+5e10,U+5e8a,U+5e9f,U+5ec9,U+5f31,U+5f84,U+5fd8-5fd9,U+5fe0,U+6015,U+6062,U+6069,U+6076,U+6089,U+60a3,U+60ca,U+620f,U+624e,U+6263,U+6298,U+62a2,U+62bd,U+6311,U+6350,U+6389,U+638c,U+63f4,U+6446,U+644a,U+6469,U+64cd,U+654f,U+6562,U+656c,U+65d7,U+65e6,U+65fa,U+660c,U+6653,U+66b4,U+670b,U+672b,U+676f-6770,U+6881,U+6885,U+68a6,U+68cb,U+68ee,U+6b8a,U+6c88-6c89,U+6cc9,U+6ce5,U+6d01,U+6d17,U+6d1b,U+6d59,U+6d6a,U+6da8,U+6df7,U+6e10,U+6e20-6e21,U+6f5c,U+706f,U+70bc,U+719f,U+7267,U+732a,U+73cd,U+7518,U+756a,U+7586,U+7591,U+75db,U+76c8,U+76d0,U+76d6,U+76d8,U+76df,U+76fe,U+77db,U+7801,U+786c,U+795d,U+7965,U+79cb,U+7a77,U+7a7f,U+7aef,U+7b11,U+7bb1,U+7bc7,U+7ea0,U+7eaf,U+7ed5,U+7edc,U+7f13,U+7f29,U+7f34,U+7f8a,U+7ffb,U+8015,U+8058,U+805a,U+8083,U+80af,U+80c6,U+80cc,U+811a,U+8150,U+82e5,U+8336,U+8352,U+83ab,U+8428,U+8463,U+852c,U+8861,U+89c8,U+8bcd,U+8bd7,U+8bda,U+8be2,U+8bef,U+8bf8,U+8c0b,U+8c13,U+8d34,U+8d3a,U+8d74,U+8d76,U+8da3,U+8dd1,U+8ddd,U+8ddf,U+8df3,U+8f68,U+8f6f,U+8f7d,U+8f91,U+8f9b,U+8fbd,U+8fc8,U+8fd4,U+8feb,U+8ff9,U+900f,U+9057,U+907f-9080,U+90d1,U+90ed,U+91ce,U+9519,U+9526,U+95ed,U+9614,U+9635,U+9644,U+9686,U+96c5,U+96ea,U+9707,U+9732,U+9759,U+978b,U+9876,U+9881,U+9910,U+996e,U+9970,U+9c81,U+9e21,U+9ebb,U+9f84"}},{uri:Drr,descriptors:{unicodeRange:"U+4e3d,U+4e4e,U+4e71,U+4e8f,U+4ed8,U+4eea,U+4f0a,U+4f0d,U+4f11,U+4f1f,U+4f24,U+4f3c,U+4f73,U+4fc4,U+500d,U+5012,U+501f,U+503a,U+505c,U+507f,U+50a8,U+514d,U+5178,U+517c,U+51b2,U+51b7,U+520a,U+5238,U+523b,U+52b1,U+535a,U+5371,U+5385,U+53eb-53ec,U+53f3,U+53f6,U+5409,U+542b,U+542f,U+5434,U+5462,U+5473,U+547c,U+54c8,U+54ea,U+56fa,U+5733,U+5757,U+5766,U+5802,U+585e,U+590f,U+591c,U+591f,U+5947,U+594b,U+5987,U+5a01,U+5b59,U+5b63,U+5b88,U+5b97,U+5b9c,U+5bbe,U+5bfb,U+5c01,U+5c1a,U+5c24,U+5c3c,U+5c97,U+5c9b,U+5cb8,U+5de6,U+5e01,U+5e2e,U+5e45,U+5e55,U+5e84,U+5ef6,U+5f02,U+5f52,U+5f69,U+5f7b,U+5f90,U+5fae,U+6000,U+600e,U+6025,U+60e0,U+6276,U+6297,U+62b5,U+62cd,U+62d3,U+62e5,U+62e9,U+62ff,U+6302,U+632f,U+63e1,U+6444,U+64ad,U+653b,U+6551,U+6563,U+65a4,U+65e7,U+6620,U+667a,U+66f2,U+671d,U+6731,U+6742,U+675f,U+6768,U+677e-677f,U+6790,U+67b6,U+67d3,U+6863,U+68b0,U+68c9,U+690d,U+6b8b,U+6bcd,U+6bd2,U+6bd5,U+6c38,U+6c61,U+6cbf,U+6cdb,U+6cf0,U+6d2a,U+6d89,U+6da6,U+6f6e,U+6fb3,U+7075,U+707e,U+70df,U+7164,U+7236,U+725b,U+7389,U+73e0,U+745e,U+74e6,U+751a,U+7537,U+75be,U+76ae,U+76db,U+793c,U+7956,U+7981,U+79d8,U+79df,U+79fb,U+7adf,U+7ae5,U+7b14,U+7b26,U+7b54,U+7b79,U+7d2f,U+7eb8,U+7eba,U+7ec6,U+7ee9,U+7eff,U+7f5a,U+7f6a,U+7f72,U+8089,U+80a5,U+80e1,U+8111,U+8131,U+821e,U+822c,U+8270,U+8499,U+8651,U+867d,U+8840,U+8857,U+8863,U+88c1,U+89c9,U+89d2,U+8a89,U+8bed,U+8bfe,U+8c01,U+8c22,U+8d21,U+8d25,U+8d2f,U+8d5e,U+8d75,U+8d8b,U+8dc3,U+8de8,U+8df5,U+8f6e,U+8f86,U+8f89,U+8fc5,U+8ff0,U+8ffd,U+9014,U+904d,U+90ae,U+9274,U+949f,U+952e,U+969c,U+96c4,U+96e8,U+96f6-96f7,U+97e9,U+987f,U+996d,U+9a7b,U+9aa8,U+9c7c,U+9c9c,U+9e4f,U+9f13,U+9f50"}},{uri:yrr,descriptors:{unicodeRange:"U+4e13,U+4e16,U+4e1c,U+4e24,U+4e3e,U+4e49,U+4e61,U+4e66,U+4e89,U+4e8c,U+4e94,U+4e9b,U+4ea4,U+4eac,U+4ebf,U+4eca,U+4ef6-4ef7,U+4efb,U+4f18,U+4f20,U+4f46,U+4f7f,U+4fe1,U+503c,U+505a,U+5146,U+5148,U+515a,U+5171,U+5177,U+519b,U+51b3,U+51c6,U+51e0,U+5212,U+521b,U+522b,U+529e,U+52bf,U+534e-534f,U+5355,U+5357,U+5382,U+539f,U+53bb,U+53bf,U+53c2,U+53c8,U+53ca,U+53d6-53d8,U+53e3,U+53ea,U+53f0,U+540d,U+5411,U+56db,U+56de,U+56e0,U+56e2,U+578b,U+57ce,U+57fa,U+589e,U+5904,U+5934,U+5982,U+5b89,U+5b8c,U+5bfc,U+5c06,U+5c11,U+5c40,U+5c71,U+5e38,U+5e72,U+5e76,U+5e7f,U+5e94,U+5e9c,U+5f0f,U+5f15,U+5f20,U+5f3a,U+5f62,U+5f88,U+5fc5,U+5fd7,U+5feb,U+601d,U+6027,U+60c5,U+60f3,U+610f,U+6216,U+6218,U+624b,U+624d,U+6279,U+628a,U+6295,U+6301,U+6307,U+636e,U+63a5,U+63a8,U+652f,U+6536,U+653e,U+6548,U+6559,U+6570,U+65bd,U+65e0,U+6602,U+660e,U+6613,U+66f4,U+6700,U+670d,U+671f,U+672f,U+6743,U+674e,U+6751,U+6761,U+6784,U+6797,U+679c,U+67e5,U+6807,U+6837,U+683c,U+6b21,U+6b63-6b65,U+6bcf,U+6bd4,U+6c42,U+6c5f,U+6ca1,U+6cbb,U+6d3b,U+6d41,U+6d88,U+6df1,U+70b9,U+7136,U+7269,U+7279,U+7531,U+754c,U+767e,U+76ca,U+76f8,U+770b,U+7740,U+7814,U+79ef,U+7a0b,U+7a0e,U+7a76,U+7b80,U+7cbe,U+7cfb,U+7e41,U+7ea7,U+7ec4,U+7ec7,U+7ed3,U+7ed9,U+7edf,U+7f8e,U+8001,U+804c,U+8054,U+80b2,U+81f3,U+8425,U+8868,U+88ab,U+897f,U+89c1-89c2,U+89c4,U+89c6,U+89e3,U+8ba1,U+8ba4,U+8bae,U+8bb0,U+8bba,U+8bc1,U+8c03,U+8d28,U+8d39,U+8def,U+8f66,U+8f6c,U+8fd0-8fd1,U+9020,U+9053,U+90a3,U+90fd,U+91cc,U+9500,U+9547,U+95e8,U+95f4,U+961f,U+9645,U+9662,U+96be,U+96c6,U+9700,U+9769,U+97e6,U+9875,U+9879,U+9886,U+9898,U+98ce,U+9996,U+2b5af,U+2cc56,U+2e9f5,U+30edd-30ede"}},{uri:wrr,descriptors:{unicodeRange:"U+4e03,U+4e30,U+4e34,U+4e45,U+4e60,U+4e70,U+4e88,U+4e91-4e92,U+4ea9,U+4eb2,U+4ec0,U+4ecb,U+4ecd,U+4ee4,U+4fee,U+5019,U+5047,U+50cf,U+5145,U+516d,U+5170,U+5175,U+5199,U+51cf,U+51fb,U+521a,U+5224,U+5267,U+52aa,U+5347-5348,U+534a,U+5356,U+5361,U+536b,U+5370,U+538b,U+53e4,U+53e6,U+5403,U+5426,U+5428,U+542c,U+5438,U+5668,U+56ed,U+56f4,U+56fe,U+57df,U+592a,U+5957,U+5b69,U+5b81,U+5b8f,U+5b98,U+5b9d,U+5ba1,U+5ba4,U+5bb3,U+5bc6,U+5bdf,U+5c3d,U+5c5e,U+5c81,U+5ddd,U+5de8,U+5dee,U+5e0c,U+5e86,U+5e8f,U+5e93,U+5e95,U+5e97,U+5ea7,U+5ead,U+5eb7,U+5f55,U+5f81,U+5f85,U+5ff5,U+6001,U+613f,U+6258,U+6267,U+6269,U+626c,U+627e,U+62db,U+62ec,U+6325,U+635f,U+6362,U+6388,U+6392,U+63a2,U+63a7,U+63aa,U+641e,U+6545,U+6597,U+65e2,U+65e9,U+661f,U+665a,U+666e-666f,U+66fe,U+6728,U+67d0,U+6811,U+6838,U+6865,U+697c,U+6b22,U+6b27,U+6b4c,U+6b62,U+6b66,U+6b7b,U+6bdb,U+6c47,U+6c49,U+6c7d,U+6c99,U+6cfd,U+6d0b,U+6d25,U+6d32,U+6d3e,U+6d4b,U+6e29,U+6e56,U+6e7e,U+6f14,U+6fc0,U+706b,U+70c8,U+7247,U+72af,U+72b6,U+72ec,U+732e,U+73ed,U+7403,U+7533,U+753b,U+7559,U+7565,U+7597,U+767b,U+773c,U+7763,U+77ed,U+77ff,U+7968,U+798f,U+79bb,U+79c0-79c1,U+7ad9,U+7ae0,U+7b51,U+7b7e,U+7cae,U+7d22,U+7ea2,U+7eb3,U+7eb7,U+7ec3,U+7ec8,U+7ecd,U+7edd,U+7efc,U+7f16,U+7f3a,U+7f51,U+7f57,U+7f6e,U+80dc,U+822a,U+8239,U+826f,U+82cf,U+82e6,U+8349,U+8363,U+83dc,U+8457,U+85cf,U+878d,U+8865,U+8a00,U+8b66,U+8ba2,U+8ba8,U+8bad,U+8bb2,U+8bc9,U+8bd5,U+8bfb,U+8d2b,U+8d35,U+8d37,U+8f7b,U+8f93,U+8fce,U+8fdd,U+9000-9002,U+9010,U+9047,U+9093,U+9152,U+9488,U+94a2,U+9633,U+9636,U+963f,U+9646,U+9648,U+964d,U+9664,U+9669,U+9760,U+97f3,U+987a,U+987e,U+9884,U+98de,U+9986,U+9ed1"}},{uri:brr,descriptors:{unicodeRange:"U+4e14,U+4e25,U+4e48,U+4e50,U+4e5d,U+4e9a,U+4ec5,U+4efd,U+4f17,U+4f4e-4f4f,U+4f55,U+4f59,U+4f60,U+4f8b,U+4f9b,U+4f9d,U+4fbf,U+4fc3,U+5065,U+513f,U+5149,U+514b,U+516b,U+5174,U+517b,U+518d,U+51b5,U+5207,U+5217-5219,U+521d,U+526f,U+529f,U+52a9,U+52b3,U+5305,U+533b,U+5343,U+5360,U+5373-5374,U+5386,U+53cb-53cd,U+53f2,U+53f7,U+544a,U+5468,U+547d,U+54cd,U+552e,U+5584,U+56f0,U+571f,U+5747,U+575a,U+57f9,U+5883,U+58eb,U+58f0,U+5907,U+590d,U+592e,U+5931,U+5956,U+5965,U+5973,U+5979,U+59cb,U+5b57-5b58,U+5b83,U+5ba2-5ba3,U+5bb9,U+5bcc,U+5c42,U+5c45,U+5c4a,U+5dde,U+5df1,U+5df4,U+5e03,U+5e08,U+5e26,U+5e2d,U+5f71,U+5f80,U+5f8b,U+5fb7,U+606f,U+611f,U+6237,U+623f,U+6253,U+627f,U+6293,U+62a4,U+62c5,U+62c9,U+6309,U+6574,U+6599,U+65ad,U+65af,U+65c5,U+65cf,U+6625,U+663e,U+671b,U+672a,U+6750,U+6781,U+6821,U+6839,U+6848,U+68c0,U+6a21,U+6b3e,U+6bb5,U+6c14,U+6cb3,U+6cb9,U+6ce8,U+6e05,U+6e2f,U+6e38,U+6e90,U+6ee1,U+70ed,U+7167,U+7231,U+7248,U+724c,U+7387,U+738b,U+73af,U+7530,U+75c5,U+767d,U+76d1,U+76f4,U+771f,U+77e5,U+77f3,U+7834,U+7840,U+786e,U+793a,U+795e,U+79f0,U+7a33,U+7a7a,U+7a81,U+7ade,U+7b56,U+7b97,U+7c73,U+7c7b,U+7d20,U+7d27,U+7ea6,U+7eaa,U+7ebf,U+7ee7,U+7eed,U+7ef4,U+7fa4,U+8003,U+80a1,U+81f4,U+8272,U+827a,U+8282,U+82b1,U+82f1,U+8303,U+836f,U+83b7,U+843d,U+88c5,U+8ba9,U+8baf,U+8bb8,U+8bbf,U+8bc4,U+8bc6,U+8bdd,U+8be5,U+8bf7,U+8c08,U+8c61,U+8d1f,U+8d22-8d23,U+8d27,U+8d2d,U+8d38,U+8d5b,U+8d70,U+8d85,U+8d8a,U+8db3,U+8eab,U+8f83,U+8fb9,U+8fdc,U+8fde,U+9009,U+901f,U+914d,U+91c7,U+94b1,U+94c1,U+94f6,U+95fb,U+9632,U+9650,U+968f,U+9752,U+975e,U+987b,U+989d,U+98df,U+9999,U+9a6c,U+9a8c,U+9ec4,U+9feb-9fec"}},{uri:vrr,descriptors:{unicodeRange:"U+98fb-990c,U+990e-990f,U+9911-992d,U+992f-9953,U+9956-9962,U+9964,U+9966,U+9973,U+9978-9979,U+997b,U+997e,U+9982-9983,U+9989,U+998c,U+998e,U+999a-99a4,U+99a6-99a7,U+99a9-99c8"}},{uri:krr,descriptors:{unicodeRange:"U+8e4c-8e50,U+8e53-8e58,U+8e5a-8e65,U+8e67-8e68,U+8e6a-8e6b,U+8e6e,U+8e71,U+8e73,U+8e75,U+8e77-8e7b,U+8e7d-8e7e,U+8e80,U+8e82-8e84,U+8e86,U+8e88-8e8e,U+8e91-8e93,U+8e95-8e9b,U+8e9d,U+8e9f-8eaa,U+8ead-8eae,U+8eb0-8eb1,U+8eb3-8eb9,U+8ebb-8ecd,U+8ecf-8f02"}},{uri:Frr,descriptors:{unicodeRange:"U+2e3a,U+3001-3002,U+3008-3011,U+3014-3017,U+301d-301f,U+4dae,U+4e00,U+4e07,U+4e09-4e0b,U+4e0d-4e0e,U+4e1a,U+4e2a,U+4e2d,U+4e3a-4e3b,U+4e4b,U+4e5f,U+4e86,U+4e8b,U+4e8e,U+4ea7,U+4eba,U+4ece,U+4ed1,U+4ed6,U+4ee3,U+4ee5,U+4eec,U+4f01,U+4f1a,U+4f4d,U+4f53,U+4f5c,U+4fdd,U+5143,U+5165,U+5168,U+516c,U+5173,U+5176,U+5185,U+519c,U+51fa,U+5206,U+5229,U+5230,U+5236,U+524d,U+529b,U+52a0-52a1,U+52a8,U+5316-5317,U+533a,U+5341,U+5362,U+53d1,U+53ef,U+53f8,U+5404,U+5408,U+540c,U+540e,U+5458,U+548c,U+54c1,U+54e5,U+5546,U+559c,U+56fd,U+5728,U+5730,U+573a,U+5916,U+591a,U+5927,U+5929,U+592b,U+597d,U+59d4,U+5b50,U+5b66,U+5b9a,U+5b9e,U+5bb6,U+5bf9,U+5c0f,U+5c14,U+5c31,U+5c55,U+5de5,U+5df2,U+5e02,U+5e73-5e74,U+5ea6,U+5efa,U+5f00,U+5f53,U+5f97,U+5fc3,U+603b,U+6210-6211,U+6240,U+6280,U+62a5,U+63d0,U+6539,U+653f,U+6587,U+65b0,U+65b9,U+65e5,U+65f6,U+662f,U+6708-6709,U+672c,U+673a,U+675c,U+6765,U+6c11,U+6c34,U+6cd5,U+6ce2,U+6d4e,U+6d77,U+73b0,U+7406,U+751f,U+7528,U+7535,U+7684,U+76ee,U+793e,U+79cd,U+79d1,U+7acb,U+7b2c,U+7b49,U+7ba1,U+7ecf,U+8005,U+800c,U+80fd,U+81ea,U+884c,U+8981,U+8bbe,U+8bf4,U+8d44,U+8d77,U+8fbe,U+8fc7,U+8fd8-8fd9,U+8fdb,U+901a,U+90e8,U+91cd,U+91cf,U+91d1,U+9485,U+957f,U+95ee,U+9762,U+9ad8,U+9ea6,U+9f99,U+9fcf,U+9fd4,U+9fed,U+fe10-fe19,U+fe30-fe31,U+fe33-fe44,U+ff01,U+ff0c,U+ff1f,U+2b4e7,U+2b7f7,U+2b7fc,U+2cb2d,U+2cb3b,U+2cb4a,U+2cb5b,U+2cb73"}},{uri:xrr,descriptors:{unicodeRange:"U+6490,U+6493-6494,U+6497-6498,U+649a-649d,U+649f-64a3,U+64a5-64a8,U+64aa-64ab,U+64af,U+64b1-64b4,U+64b6,U+64b9,U+64bb,U+64bd-64bf,U+64c1,U+64c3-64c4,U+64c6-64cc,U+64cf,U+64d1,U+64d3-64d6,U+64d9-64dd,U+64df-64e1,U+64e3,U+64e5,U+64e7-64ff,U+6501-6508,U+650a-6511,U+6513-6517,U+6519-6524,U+6526-652a,U+652c-652d,U+6530-6533,U+6537,U+653a,U+653c-653d,U+6540-6544,U+6546-6547,U+654a-654b,U+654d-654e,U+6550,U+6552-6554,U+6557-6558,U+655a,U+655c,U+655f-6561,U+6564-6565,U+6567-6568"}},{uri:Srr,descriptors:{unicodeRange:"U+9695-9696,U+969a-969b,U+969d-96a6,U+96a8-96af,U+96b1-96b2,U+96b4-96b5,U+96b7-96b8,U+96ba-96bb,U+96bf,U+96c2-96c3,U+96c8,U+96ca-96cb,U+96d0-96d1,U+96d3-96d4,U+96d6-96df,U+96e1-96e7,U+96eb-96ee,U+96f0-96f2,U+96f4-96f5,U+96f8,U+96fa-96fd,U+96ff,U+9702-9703,U+9705,U+970a-970c,U+9710-9712,U+9714-9715,U+9717-971b,U+971d,U+971f-9729,U+972b-972c,U+972e-972f,U+9731,U+9733-9737,U+973a-973d,U+973f-9751,U+9754-9755,U+9757-9758,U+975a,U+975c-975d,U+975f,U+9763-9764,U+9766-9768,U+976a-9770"}},{uri:Lrr,descriptors:{unicodeRange:"U+6af0-6b1f,U+6b25-6b26,U+6b28-6b31,U+6b33-6b36,U+6b38,U+6b3b-6b3d,U+6b3f-6b42,U+6b44-6b45,U+6b48,U+6b4a-6b4b,U+6b4d-6b58,U+6b5a-6b61,U+6b68-6b69,U+6b6b-6b78,U+6b7a,U+6b7d-6b80,U+6b85,U+6b88,U+6b8c,U+6b8e-6b91,U+6b94-6b95,U+6b97-6b99,U+6b9c-6ba0,U+6ba2-6ba9,U+6bab-6bb2,U+6bb6,U+6bb8-6bba"}},{uri:Rrr,descriptors:{unicodeRange:"U+430e-439a,U+29e8a,U+29ec4,U+29edb,U+29ee9,U+29f7e,U+29f83,U+29f8c,U+29fce,U+2a01a,U+2a02f,U+2a082,U+2a0f9,U+2a190,U+2a38c"}},{uri:Nrr,descriptors:{unicodeRange:"U+92ef-933d,U+933f-9369,U+936b-9388"}},{uri:Grr,descriptors:{unicodeRange:"U+4512-458d,U+2b300,U+2b363,U+2b36f,U+2b372,U+2b37d,U+2b404,U+2b410,U+2b413,U+2b461,U+2b4ef,U+2b4f6,U+2b4f9,U+2b50d-2b50e,U+2b536,U+2b5ae,U+2b5b3,U+2b5e7,U+2b5f4,U+2b61c-2b61d,U+2b626-2b628,U+2b62a,U+2b62c,U+2b695-2b696,U+2b6ad,U+2b6ed"}},{uri:Urr,descriptors:{unicodeRange:"U+88bd-88c0,U+88c3-88c4,U+88c7-88c8,U+88ca-88cd,U+88cf-88d1,U+88d3,U+88d6-88d7,U+88da-88de,U+88e0-88e1,U+88e6-88e7,U+88e9-88ef,U+88f2,U+88f5-88f7,U+88fa-88fb,U+88fd,U+88ff-8901,U+8903-8909,U+890b-890f,U+8911,U+8914-8918,U+891c-8920,U+8922-8924,U+8926-8929,U+892c-892f,U+8931-8933,U+8935,U+8937-8940,U+8942-8943,U+8945-895d,U+8960-8965,U+8967-897a,U+897c-897e,U+8980,U+8982,U+8984-8985"}},{uri:Mrr,descriptors:{unicodeRange:"U+4b0b-4ba0"}},{uri:Trr,descriptors:{unicodeRange:"U+7179,U+717b-717c,U+717e-7183,U+7185-7189,U+718b-718e,U+7190-7193,U+7195-7197,U+719a-719e,U+71a1-71a7,U+71a9-71ab,U+71ad-71b2,U+71b4,U+71b6-71b8,U+71ba-71c2,U+71c4-71cd,U+71cf-71d3,U+71d6-71df,U+71e1-71e4,U+71e6,U+71e8-71ed,U+71ef-71f8,U+71fa-7205,U+7207-721c,U+721e-7227,U+7229,U+722b,U+722d"}},{uri:Yrr,descriptors:{unicodeRange:"U+982e-9874,U+988b,U+988e,U+9892,U+9895,U+9899,U+98a3,U+98a8-98cd,U+98cf-98d0,U+98d4,U+98d6-98d7,U+98db-98dd,U+98e0-98e6,U+98e9-98fa"}},{uri:Hrr,descriptors:{unicodeRange:"U+7c14-7c15,U+7c17-7c1e,U+7c20-7c25,U+7c28-7c29,U+7c2b-7c37,U+7c39-7c3e,U+7c42-7c4c,U+7c4e-7c72,U+7c75-7c7a,U+7c7e-7c88,U+7c8a-7c90,U+7c93-7c94,U+7c96,U+7c99-7c9b,U+7ca0-7ca1,U+7ca3,U+7ca6-7ca9,U+7cab-7cad,U+7caf-7cb0,U+7cb4-7cb8,U+7cba-7cbb,U+7cbf-7cc0,U+7cc2-7cc4,U+7cc6,U+7cc9,U+7ccb,U+7cce-7cd4"}},{uri:Krr,descriptors:{unicodeRange:"U+7d95-7da5,U+7da7-7dad,U+7daf-7e2a"}},{uri:Jrr,descriptors:{unicodeRange:"U+4a78-4b0a"}},{uri:Orr,descriptors:{unicodeRange:"U+9b30-9b31,U+9b33-9b3a,U+9b3d-9b40,U+9b46,U+9b4a-9b4c,U+9b4e,U+9b50,U+9b52-9b53,U+9b55-9bcf"}},{uri:Prr,descriptors:{unicodeRange:"U+6a4b-6a4f,U+6a51-6a57,U+6a5a,U+6a5c-6a60,U+6a62-6a64,U+6a66-6a70,U+6a72-6a78,U+6a7a-6a7b,U+6a7d-6a7f,U+6a81-6a83,U+6a85-6a8d,U+6a8f,U+6a92-6a96,U+6a98-6a9f,U+6aa1-6aa8,U+6aaa,U+6aad-6aef"}},{uri:_rr,descriptors:{unicodeRange:"U+99c9-9a53"}},{uri:Wrr,descriptors:{unicodeRange:"U+8550-8555,U+8557-8558,U+855a-855d,U+855f-8563,U+8565-8567,U+8569-8571,U+8573,U+8575-8578,U+857c-857d,U+857f-8583,U+8586,U+8588-858e,U+8590-859a,U+859d-85a3,U+85a5-85a7,U+85a9,U+85ab-85ad,U+85b1-85b6,U+85b8,U+85ba-85c0,U+85c2-85c8,U+85ca-85ce,U+85d1-85d2,U+85d4,U+85d6-85db,U+85dd-85e3,U+85e5-85e8,U+85ea-85fa,U+85fc-85fe,U+8600-8603"}},{uri:qrr,descriptors:{unicodeRange:"U+6fb2,U+6fb4-6fb5,U+6fb7-6fb8,U+6fba-6fbf,U+6fc1,U+6fc3-6fc8,U+6fca-6fd0,U+6fd3-6fdd,U+6fdf,U+6fe2-6fed,U+6ff0-7010,U+7012-7019,U+701c-7022,U+7024-7034,U+7036-7038,U+703a-704b,U+704d-704e,U+7050-7053"}},{uri:zrr,descriptors:{unicodeRange:"U+4ba1-4c2c"}},{uri:Zrr,descriptors:{unicodeRange:"U+9a54-9a6b,U+9a72,U+9a83,U+9a89,U+9a8d-9a8e,U+9a94-9a95,U+9a99,U+9aa6,U+9aa9-9aaf,U+9ab2-9ab5,U+9ab9,U+9abb,U+9abd-9abf,U+9ac3-9ac4,U+9ac6-9aca,U+9acd-9ad0,U+9ad2,U+9ad4-9ad7,U+9ad9-9ade,U+9ae0,U+9ae2-9ae5,U+9ae7-9aea,U+9aec,U+9aee,U+9af0-9af8,U+9afa,U+9afc-9b02,U+9b04-9b07,U+9b09-9b0e,U+9b10-9b12,U+9b14-9b1e,U+9b20-9b22,U+9b24-9b2e"}},{uri:Vrr,descriptors:{unicodeRange:"U+9d1a-9da1"}},{uri:jrr,descriptors:{unicodeRange:"U+9e13-9e1e,U+9e24,U+9e27,U+9e2e,U+9e30,U+9e34,U+9e3b-9e3c,U+9e40,U+9e4d,U+9e50,U+9e52-9e54,U+9e56,U+9e59,U+9e5d,U+9e5f-9e62,U+9e65,U+9e6e-9e6f,U+9e72,U+9e74-9e7d,U+9e80-9e81,U+9e83-9e86,U+9e89-9e8a,U+9e8c-9e91,U+9e94-9e9c,U+9e9e,U+9ea0-9ea5,U+9ea7-9eb3,U+9eb5-9eb7,U+9eb9-9eba,U+9ebc,U+9ebf-9ec3,U+9ec5-9ec8,U+9eca-9ecc,U+9ed0,U+9ed2-9ed3,U+9ed5-9ed7,U+9ed9-9eda,U+9ede,U+9ee1,U+9ee3-9ee4,U+9ee6,U+9ee8,U+9eeb-9eee,U+9ef0-9ef8"}},{uri:Xrr,descriptors:{unicodeRange:"U+8b1c-8b25,U+8b27-8b65,U+8b67-8b6b,U+8b6d-8b9f,U+8bac,U+8bb1,U+8bbb,U+8bc7,U+8bd0"}},{uri:$rr,descriptors:{unicodeRange:"U+4cad-4d2f"}},{uri:Air,descriptors:{unicodeRange:"U+9c4b-9c7b,U+9c7d-9c7e,U+9c80,U+9c83-9c84,U+9c89-9c8a,U+9c8c,U+9c8f,U+9c93,U+9c96-9c99,U+9c9d,U+9caa,U+9cac,U+9caf,U+9cb9,U+9cbe-9cc2,U+9cc8-9cc9,U+9cd1-9cd2,U+9cda-9cdb,U+9ce0-9ce1,U+9ce3-9d19"}},{uri:eir,descriptors:{unicodeRange:"U+9389-938e,U+9390-93c9,U+93cb-93d5,U+93d7-9410"}},{uri:tir,descriptors:{unicodeRange:"U+20a0-20b5,U+20b9-20ba,U+20bc-20bd,U+4e2c,U+5107,U+5216,U+5293,U+54f3,U+5523,U+5819,U+5adc,U+5c88,U+5e3b,U+5fee,U+62f6,U+63be,U+6484,U+6499,U+67d9,U+67dd,U+6d5e,U+6f46,U+717a,U+71e0,U+72c1,U+73e7,U+75b0,U+7603,U+7722,U+7809,U+7811,U+7946,U+7967,U+799a,U+7b45,U+7ba2,U+8014,U+80d9,U+8159,U+817d,U+81a3,U+81aa,U+8201,U+833c,U+836e,U+83e5,U+8459,U+84f0,U+8729,U+8753,U+87d3,U+89dc,U+8bf6,U+8c2e,U+8e2c,U+8e9c,U+8e9e,U+8ece,U+8fee,U+9139,U+914f,U+9174,U+9191,U+960c,U+9622,U+9a98,U+9b48,U+9ca6,U+9cb0,U+9da2-9e12,U+9e88,U+9f44,U+9f86"}},{uri:rir,descriptors:{unicodeRange:"U+9bd0-9c4a"}},{uri:iir,descriptors:{unicodeRange:"U+4c2d-4cac"}},{uri:uir,descriptors:{unicodeRange:"U+4d30-4dab"}},{uri:air,descriptors:{unicodeRange:"U+9411-943d,U+943f-946a,U+946c-9484"}},{uri:nir,descriptors:{unicodeRange:"U+9efa,U+9efd,U+9eff-9f0a,U+9f0c,U+9f0f,U+9f11-9f12,U+9f14-9f16,U+9f18,U+9f1a-9f1f,U+9f21,U+9f23-9f2b,U+9f2d-9f2e,U+9f30-9f36,U+9f38,U+9f3a,U+9f3c,U+9f3f-9f43,U+9f45-9f4f,U+9f52-9f7e,U+9f81-9f82,U+9f8d-9f94"}},{uri:oir,descriptors:{unicodeRange:"U+7e2b-7e3a,U+7e3c-7e40,U+7e42-7e46,U+7e48-7e81,U+7e83-7e9a,U+7e9c-7e9e,U+7eae,U+7eb4,U+7ebb-7ebc,U+7ed6,U+7ee4,U+7eec,U+7ef9,U+7f0a,U+7f10,U+7f1e,U+7f37,U+7f39,U+7f3b"}}];UA(Y1,"loadedFontsCache",new Set),UA(Y1,"_registered"),UA(Y1,"_initialized",!1),UA(Y1,"loadElementsFonts",async(A)=>{let e=Y1.getUniqueFamilies(A),t=Y1.getCharsPerFamily(A);return Y1.loadFontFaces(e,t)});kd=Y1;hi={EQUAL:"Equal",MINUS:"Minus",NUM_ADD:"NumpadAdd",NUM_SUBTRACT:"NumpadSubtract",NUM_ZERO:"Numpad0",BRACKET_RIGHT:"BracketRight",BRACKET_LEFT:"BracketLeft",ONE:"Digit1",TWO:"Digit2",THREE:"Digit3",NINE:"Digit9",QUOTE:"Quote",ZERO:"Digit0",SLASH:"Slash",C:"KeyC",D:"KeyD",H:"KeyH",V:"KeyV",Z:"KeyZ",Y:"KeyY",R:"KeyR",S:"KeyS"},PA={ARROW_DOWN:"ArrowDown",ARROW_LEFT:"ArrowLeft",ARROW_RIGHT:"ArrowRight",ARROW_UP:"ArrowUp",PAGE_UP:"PageUp",PAGE_DOWN:"PageDown",BACKSPACE:"Backspace",ALT:"Alt",CTRL_OR_CMD:BB?"metaKey":"ctrlKey",DELETE:"Delete",ENTER:"Enter",ESCAPE:"Escape",QUESTION_MARK:"?",SPACE:" ",TAB:"Tab",CHEVRON_LEFT:"<",CHEVRON_RIGHT:">",PERIOD:".",COMMA:",",SUBTRACT:"-",SLASH:"/",A:"a",C:"c",D:"d",E:"e",F:"f",G:"g",H:"h",I:"i",L:"l",O:"o",P:"p",Q:"q",R:"r",S:"s",T:"t",V:"v",X:"x",Y:"y",Z:"z",K:"k",W:"w",0:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9"},bir=new Map([[PA.Z,hi.Z],[PA.Y,hi.Y]]),dW=[{icon:m$t,value:"selection",key:PA.V,numericKey:PA[1],fillable:!0},{icon:D$t,value:"rectangle",key:PA.R,numericKey:PA[2],fillable:!0},{icon:y$t,value:"diamond",key:PA.D,numericKey:PA[3],fillable:!0},{icon:w$t,value:"ellipse",key:PA.O,numericKey:PA[4],fillable:!0},{icon:b$t,value:"arrow",key:PA.A,numericKey:PA[5],fillable:!0},{icon:v$t,value:"line",key:PA.L,numericKey:PA[6],fillable:!0},{icon:y9,value:"freedraw",key:[PA.P,PA.X],numericKey:PA[7],fillable:!1},{icon:zIA,value:"text",key:PA.T,numericKey:PA[8],fillable:!1},{icon:k$t,value:"image",key:null,numericKey:PA[9],fillable:!1},{icon:F$t,value:"eraser",key:PA.E,numericKey:PA[0],fillable:!1}],Nir=EB(),GQe=document.createElement("img");GQe.src=`data:${Xt.svg},${encodeURIComponent('<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="image" class="svg-inline--fa fa-image fa-w-16" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="#888" d="M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z"></path></svg>')}`;UQe=document.createElement("img");UQe.src=`data:${Xt.svg},${encodeURIComponent('<svg viewBox="0 0 668 668" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2"><path d="M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48ZM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56ZM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48Z" style="fill:#888;fill-rule:nonzero" transform="matrix(.81709 0 0 .81709 124.825 145.825)"/><path d="M256 8C119.034 8 8 119.033 8 256c0 136.967 111.034 248 248 248s248-111.034 248-248S392.967 8 256 8Zm130.108 117.892c65.448 65.448 70 165.481 20.677 235.637L150.47 105.216c70.204-49.356 170.226-44.735 235.638 20.676ZM125.892 386.108c-65.448-65.448-70-165.481-20.677-235.637L361.53 406.784c-70.203 49.356-170.226 44.736-235.638-20.676Z" style="fill:#888;fill-rule:nonzero" transform="matrix(.30366 0 0 .30366 506.822 60.065)"/></svg>')}`;oIA=new WeakMap,TQe=new WeakMap([]);Hir=/(\s?[A-Z]?,?-?[0-9]*\.[0-9]{0,2})(([0-9]|e|-)*)/g;wa=[1,0],Io=[0,1],Hs=[-1,0],Ks=[0,-1];UA(KQe,"boundsCache",new WeakMap);Wir=KQe,Dur=new Set(["boundElements","frameId","containerId","startBinding","endBinding"]);UA(Q9,"rebindAffected",(A,e,t)=>{!e||e.isDeleted||vW(A,e,(r,i)=>{if(!r||r.isDeleted){t(e,{[i]:null});return}i!=="frameId"&&(r.boundElements?.find((u)=>u.id===e.id)||(Kr(e)&&t(r,{boundElements:M8(r.boundElements,new Set,Array(e))}),Et(e)&&(r.boundElements?.find((u)=>u.type==="text")?t(e,{[i]:null}):t(r,{boundElements:M8(r.boundElements,new Set,Array(e))}))))})});UA(p9,"rebindAffected",(A,e,t)=>{!e||e.isDeleted||bW(A,e,(r,i,u)=>{if(!r||r.isDeleted){t(e,{boundElements:M8(e.boundElements,new Set([u]))});return}Et(r)&&((e.boundElements?.slice()??[]).reverse().find((a)=>a.type==="text")?.id===r.id?r.containerId!==e.id&&t(r,{containerId:e.id}):(r.containerId!==null&&t(r,{containerId:null}),t(e,{boundElements:M8(e.boundElements,new Set([r.id]))})))})});V0=function(){let A=null,e=null,t=null,r=(u,a,n,o)=>{if(t!==void 0&&a===e&&u===A&&n.editingGroupId===t?.editingGroupId)return t;let s={};for(let C of u){let B=C.groupIds;if(n.editingGroupId){let E=B.indexOf(n.editingGroupId);E>-1&&(B=B.slice(0,E))}if(B.length>0){let E=B[B.length-1];s[E]=!0}}let l={},g=a.reduce((C,B)=>{if(B.isDeleted)return C;let E=B.groupIds.find((d)=>s[d]);return E&&(C[B.id]=!0,Array.isArray(l[E])?l[E].push(B.id):l[E]=[B.id]),C},{});for(let C of Object.keys(l))l[C].length<2&&s[C]&&(s[C]=!1);return e=a,A=u,t={editingGroupId:n.editingGroupId,selectedGroupIds:s,selectedElementIds:Ni({...n.selectedElementIds,...g},o)},t},i=(u,a,n,o)=>{let s=o?o.scene.getSelectedElements({selectedElementIds:u.selectedElementIds,elements:a}):Jr(a,u);return s.length?r(s,a,u,n):{selectedGroupIds:{},editingGroupId:null,selectedElementIds:Ni(u.selectedElementIds,n)}};return i.clearCache=()=>{e=null,A=null,t=null},i}();UA(Gl,"referenceSnapPoints",null),UA(Gl,"visibleGaps",null),UA(Gl,"setReferenceSnapPoints",(A)=>{Gl.referenceSnapPoints=A}),UA(Gl,"getReferenceSnapPoints",()=>Gl.referenceSnapPoints),UA(Gl,"setVisibleGaps",(A)=>{Gl.visibleGaps=A}),UA(Gl,"getVisibleGaps",()=>Gl.visibleGaps),UA(Gl,"destroy",()=>{Gl.referenceSnapPoints=null,Gl.visibleGaps=null});xd=Gl,U1={version:null,points:[],zoom:null};UA(tn,"POINT_HANDLE_SIZE",10),UA(tn,"getEditorMidPoints",(A,e,t)=>{let r=Gr(A,e);return!ft(A)&&!t.editingLinearElement&&A.points.length>2&&!r?[]:(U1.version===A.version&&U1.zoom===t.zoom.value||tn.updateEditorMidPointsCache(A,e,t),U1.points)}),UA(tn,"updateEditorMidPointsCache",(A,e,t)=>{let r=tn.getPointsGlobalCoordinates(A,e),i=0,u=[];for(;i<r.length-1;){if(tn.isSegmentTooShort(A,A.points[i],A.points[i+1],i,t.zoom)){u.push(null),i++;continue}let a=tn.getSegmentMidPoint(A,r[i],r[i+1],i+1,e);u.push(a),i++}U1.points=u,U1.version=A.version,U1.zoom=t.zoom.value}),UA(tn,"getSegmentMidpointHitCoords",(A,e,t,r)=>{let{elementId:i}=A,u=tn.getElement(i,r);if(!u)return null;let a=tn.getPointIndexUnderCursor(u,r,t.zoom,e.x,e.y);if(!ft(u)&&a>=0||tn.getPointsGlobalCoordinates(u,r).length>=3&&!t.editingLinearElement&&!ft(u))return null;let n=(tn.POINT_HANDLE_SIZE+1)/t.zoom.value,o=A.segmentMidPointHoveredCoords;if(o&&Li(X(o[0],o[1]),X(e.x,e.y))<=n)return o;let s=0,l=tn.getEditorMidPoints(u,r,t);for(;s<l.length;){if(l[s]!==null&&Li(l[s],X(e.x,e.y))<=n)return l[s];s++}return null}),UA(tn,"getBoundTextElementPosition",(A,e,t)=>{let r=tn.getPointsGlobalCoordinates(A,t);r.length<2&&Se(e,{isDeleted:!0});let i=0,u=0;if(A.points.length%2===1){let a=Math.floor(A.points.length/2),n=tn.getPointGlobalCoordinates(A,A.points[a],t);i=n[0]-e.width/2,u=n[1]-e.height/2}else{let a=A.points.length/2-1,n=U1.points[a];A.points.length===2&&(n=z8(r[0],r[1])),(!n||U1.version!==A.version)&&(n=tn.getSegmentMidPoint(A,r[a],r[a+1],a+1,t)),i=n[0]-e.width/2,u=n[1]-e.height/2}return{x:i,y:u}}),UA(tn,"getMinMaxXYWithBoundText",(A,e,t,r)=>{let[i,u,a,n]=t,o=(i+a)/2,s=(u+n)/2,{x:l,y:g}=tn.getBoundTextElementPosition(A,r,e),C=l+r.width,B=g+r.height,E=X(o,s),d=ye(X(i,u),E,A.angle),I=ye(X(a,u),E,A.angle),h=ye(X(l,g),E,-A.angle),Q=ye(X(C,g),E,-A.angle),p=ye(X(l,B),E,-A.angle),m=ye(X(C,B),E,-A.angle);return d[0]<I[0]&&d[1]>=I[1]?(i=Math.min(i,p[0]),a=Math.max(a,Math.max(Q[0],m[0])),u=Math.min(u,h[1]),n=Math.max(n,m[1])):d[0]>=I[0]&&d[1]>I[1]?(i=Math.min(i,m[0]),a=Math.max(a,Math.max(h[0],Q[0])),u=Math.min(u,p[1]),n=Math.max(n,Q[1])):d[0]>=I[0]?(i=Math.min(i,Q[0]),a=Math.max(a,p[0]),u=Math.min(u,m[1]),n=Math.max(n,h[1])):d[1]<=I[1]&&(i=Math.min(i,Math.min(Q[0],h[0])),a=Math.max(a,m[0]),u=Math.min(u,Q[1]),n=Math.max(n,p[1])),[i,u,a,n,o,s]}),UA(tn,"getElementAbsoluteCoords",(A,e,t=!1)=>{let r,i,u,a,n;if(A.points.length<2||!na.get(A)){let{minX:g,minY:C,maxX:B,maxY:E}=A.points.reduce((d,[I,h])=>(d.minY=Math.min(d.minY,h),d.minX=Math.min(d.minX,I),d.maxX=Math.max(d.maxX,I),d.maxY=Math.max(d.maxY,h),d),{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0});i=g+A.x,u=C+A.y,a=B+A.x,n=E+A.y}else{let g=na.generateElementShape(A,null),C=sp(g[0]),[B,E,d,I]=pW(C);i=B+A.x,u=E+A.y,a=d+A.x,n=I+A.y}let o=(i+a)/2,s=(u+n)/2;if(r=[i,u,a,n,o,s],!t)return r;let l=Gr(A,e);return l&&(r=tn.getMinMaxXYWithBoundText(A,e,[i,u,a,n],l)),r});ht=tn,a2={},Gur=new Set(["rectangle","ellipse","diamond","arrow"]),U_=[],Mur=`data:${Xt.svg},${encodeURIComponent(`${B4e}${E4e}</svg>`)}`,Tur=`data:${Xt.svg},${encodeURIComponent(`${B4e}${Uur}${E4e}</svg>`)}`,Yur=new a8(Date.now());UA(H1,"satisfiesAddition",({deleted:A,inserted:e})=>A.isDeleted===!0&&!e.isDeleted),UA(H1,"satisfiesRemoval",({deleted:A,inserted:e})=>!A.isDeleted&&e.isDeleted===!0),UA(H1,"satisfiesUpdate",({deleted:A,inserted:e})=>!!A.isDeleted==!!e.isDeleted),UA(H1,"createApplier",(A,e,t)=>{let r=H1.createGetter(A,e,t);return(i)=>Array.from(i.entries()).reduce((u,[a,n])=>{let o=r(a,n.inserted);if(o){let s=H1.applyDelta(o,n,t);A.set(s.id,s),u.set(s.id,s)}return u},new Map)}),UA(H1,"createGetter",(A,e,t)=>(r,i)=>{let u=A.get(r);return u||(u=e.get(r),u&&(t.containsZindexDifference=!0,(i.isDeleted===!1||i.isDeleted!==!0&&u.isDeleted===!1)&&(t.containsVisibleDifference=!0))),u});VEe=H1,be={IMMEDIATELY:"IMMEDIATELY",NEVER:"NEVER",EVENTUALLY:"EVENTUALLY"},Qd=new Map,qur=/^(?:http(?:s)?:\/\/)?(?:www\.)?youtu(?:be\.com|\.be)\/(embed\/|watch\?v=|shorts\/|playlist\?list=|embed\/videoseries\?list=)?([a-zA-Z0-9_-]+)(?:\?t=|&t=|\?start=|&start=)?([a-zA-Z0-9_-]+)?[^\s]*$/,zur=/^(?:http(?:s)?:\/\/)?(?:(?:w){3}\.)?(?:player\.)?vimeo\.com\/(?:video\/)?([^?\s]+)(?:\?.*)?$/,Zur=/^https:\/\/(?:www\.)?figma\.com/,XEe=/^https:\/\/gist\.github\.com\/([\w_-]+)\/([\w_-]+)/,Vur=/^<script[\s\S]*?\ssrc=["'](https:\/\/gist\.github\.com\/.*?)\.js["']/i,$Ee=/(?:https?:\/\/)?(?:(?:w){3}\.)?(?:twitter|x)\.com\/[^/]+\/status\/(\d+)/,jur=/^<blockquote[\s\S]*?\shref=["'](https?:\/\/(?:twitter|x)\.com\/[^"']*)/i,Xur=/^https:\/\/(?:www\.)?val\.town\/(v|embed)\/[a-zA-Z_$][0-9a-zA-Z_$]+\.[a-zA-Z_$][0-9a-zA-Z_$]+/,$ur=/^<(?:iframe|blockquote)[\s\S]*?\s(?:src|href)=["']([^"']*)["'][\s\S]*?>$/i,Ade=/giphy.com\/(?:clips|embed|gifs)\/[a-zA-Z0-9]*?-?([a-zA-Z0-9]+)(?:[^a-zA-Z0-9]|$)/,ede=/^(?:http(?:s)?:\/\/)?(?:www\.)?reddit\.com\/r\/([a-zA-Z0-9_]+)\/comments\/([a-zA-Z0-9_]+)\/([a-zA-Z0-9_]+)\/?(?:\?[^#\s]*)?(?:#[^\s]*)?$/,Aar=/^<blockquote[\s\S]*?\shref=["'](https?:\/\/(?:www\.)?reddit\.com\/[^"']*)/i,gIA=new Set(["youtube.com","youtu.be","vimeo.com","player.vimeo.com","figma.com","link.excalidraw.com","gist.github.com","twitter.com","x.com","*.simplepdf.eu","stackblitz.com","val.town","giphy.com","reddit.com"]),tde=new Set(["youtube.com","youtu.be","vimeo.com","player.vimeo.com","figma.com","twitter.com","x.com","*.simplepdf.eu","stackblitz.com","reddit.com"]),Oyi=at({name:"setEmbeddableAsActiveTool",trackEvent:{category:"toolbar"},target:"Tool",label:"toolBar.embeddable",perform:(A,e,t,r)=>{let i=un(e,{type:"embeddable"});return hB(r.canvas,{...e,activeTool:i}),{elements:A,appState:{...e,activeTool:un(e,{type:"embeddable"})},captureUpdate:be.EVENTUALLY}}}),F4e=document.createElement("img");F4e.src=`data:${Xt.svg}, ${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#1971c2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></svg>')}`;x4e=document.createElement("img");x4e.src=`data:${Xt.svg}, ${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#1971c2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-arrow-big-right-line"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M12 9v-3.586a1 1 0 0 1 1.707 -.707l6.586 6.586a1 1 0 0 1 0 1.414l-6.586 6.586a1 1 0 0 1 -1.707 -.707v-3.586h-6v-6h6z" /><path d="M3 9v6" /></svg>')}`;Q_={Bold:"#dddddd",Regular:"#e5e5e5"},ude={regularLink:null,elementLink:null},hQA=Z8((A)=>{L4e(A)},{trailing:!0}),mar={selection:!0,text:!0,rectangle:!0,diamond:!0,ellipse:!0,line:!0,image:!0,arrow:!0,freedraw:!0,eraser:!1,custom:!0,frame:!0,embeddable:!0,hand:!0,laser:!1,magicframe:!1},cde={isSidebarDocked:(A,e)=>["defaultSidebarDockedPreference",A.isSidebarDocked??Far("defaultSidebarDockedPreference",A,e)]},H_=kXt(vXt),Uc={fillStyle:"hachure",fontFamily:Oh,fontSize:wd,opacity:100,roughness:1,strokeColor:zr.black,roundness:null,strokeStyle:"solid",strokeWidth:1,verticalAlign:Ul.MIDDLE,locked:!1},_yi="clipboard"in navigator&&"readText"in navigator.clipboard,_W="clipboard"in navigator&&"writeText"in navigator.clipboard,WW="clipboard"in navigator&&"write"in navigator.clipboard&&"ClipboardItem"in window&&"toBlob"in HTMLCanvasElement.prototype;yn=function(){let A=null,e=null,t=null,r=(i,u)=>(t!=null&&i===A&&u.selectedElementIds===e||(t=i.some((a)=>u.selectedElementIds[a.id]),A=i,e=u.selectedElementIds),t);return r.clearCache=()=>{A=null,e=null,t=null},r}(),Zar=iIe.default((A)=>{(Qr.DEV||Qr.MODE===Js.TEST||window?.DEBUG_FRACTIONAL_INDICES)&&NW(A,{shouldThrow:Qr.DEV||Qr.MODE===Js.TEST,includeBoundTextValidation:!0})},60000,{leading:!0,trailing:!1});UA(EIA,"sceneMapByElement",new WeakMap),UA(EIA,"sceneMapById",new Map);jar=EIA,yd=jar,Dde={mouse:8,pen:16,touch:28},t1e={e:!0,s:!0,n:!0,w:!0},yde={e:!0,s:!0,n:!0,w:!0,nw:!0,se:!0},tIA={e:!0,s:!0,n:!0,w:!0},rIA=["ns","nesw","ew","nwse"]});var A4A,e4A,t4A,r4A,i4A,u4A,a4A,n4A,o4A,s4A,l4A,g4A,c4A,C4A,B4A,E4A,d4A,I4A,h4A,Q4A,p4A,f4A,m4A,D4A,y4A,w4A,b4A,v4A,k4A,F4A,x4A,S4A,L4A,R4A,N4A,bS;var G4A=P(()=>{A4A={paste:"Paste",pasteAsPlaintext:"Paste as plaintext",pasteCharts:"Paste charts",selectAll:"Select all",multiSelect:"Add element to selection",moveCanvas:"Move canvas",cut:"Cut",copy:"Copy",copyAsPng:"Copy to clipboard as PNG",copyAsSvg:"Copy to clipboard as SVG",copyText:"Copy to clipboard as text",copySource:"Copy source to clipboard",convertToCode:"Convert to code",bringForward:"Bring forward",sendToBack:"Send to back",bringToFront:"Bring to front",sendBackward:"Send backward",delete:"Delete",copyStyles:"Copy styles",pasteStyles:"Paste styles",stroke:"Stroke",changeStroke:"Change stroke color",background:"Background",changeBackground:"Change background color",fill:"Fill",strokeWidth:"Stroke width",strokeStyle:"Stroke style",strokeStyle_solid:"Solid",strokeStyle_dashed:"Dashed",strokeStyle_dotted:"Dotted",sloppiness:"Sloppiness",opacity:"Opacity",textAlign:"Text align",edges:"Edges",sharp:"Sharp",round:"Round",arrowheads:"Arrowheads",arrowhead_none:"None",arrowhead_arrow:"Arrow",arrowhead_bar:"Bar",arrowhead_circle:"Circle",arrowhead_circle_outline:"Circle (outline)",arrowhead_triangle:"Triangle",arrowhead_triangle_outline:"Triangle (outline)",arrowhead_diamond:"Diamond",arrowhead_diamond_outline:"Diamond (outline)",arrowhead_crowfoot_many:"Crow's foot (many)",arrowhead_crowfoot_one:"Crow's foot (one)",arrowhead_crowfoot_one_or_many:"Crow's foot (one or many)",more_options:"More options",arrowtypes:"Arrow type",arrowtype_sharp:"Sharp arrow",arrowtype_round:"Curved arrow",arrowtype_elbowed:"Elbow arrow",fontSize:"Font size",fontFamily:"Font family",addWatermark:'Add "Made with Excalidraw"',handDrawn:"Hand-drawn",normal:"Normal",code:"Code",small:"Small",medium:"Medium",large:"Large",veryLarge:"Very large",solid:"Solid",hachure:"Hachure",zigzag:"Zigzag",crossHatch:"Cross-hatch",thin:"Thin",bold:"Bold",left:"Left",center:"Center",right:"Right",extraBold:"Extra bold",architect:"Architect",artist:"Artist",cartoonist:"Cartoonist",fileTitle:"File name",colorPicker:"Color picker",canvasColors:"Used on canvas",canvasBackground:"Canvas background",drawingCanvas:"Drawing canvas",clearCanvas:"Clear canvas",layers:"Layers",actions:"Actions",language:"Language",liveCollaboration:"Live collaboration...",duplicateSelection:"Duplicate",untitled:"Untitled",name:"Name",yourName:"Your name",madeWithExcalidraw:"Made with Excalidraw",group:"Group selection",ungroup:"Ungroup selection",collaborators:"Collaborators",toggleGrid:"Toggle grid",addToLibrary:"Add to library",removeFromLibrary:"Remove from library",libraryLoadingMessage:"Loading library…",libraries:"Browse libraries",loadingScene:"Loading scene…",loadScene:"Load scene from file",align:"Align",alignTop:"Align top",alignBottom:"Align bottom",alignLeft:"Align left",alignRight:"Align right",centerVertically:"Center vertically",centerHorizontally:"Center horizontally",distributeHorizontally:"Distribute horizontally",distributeVertically:"Distribute vertically",flipHorizontal:"Flip horizontal",flipVertical:"Flip vertical",viewMode:"View mode",share:"Share",showStroke:"Show stroke color picker",showBackground:"Show background color picker",showFonts:"Show font picker",toggleTheme:"Toggle light/dark theme",theme:"Theme",personalLib:"Personal Library",excalidrawLib:"Excalidraw Library",decreaseFontSize:"Decrease font size",increaseFontSize:"Increase font size",unbindText:"Unbind text",bindText:"Bind text to the container",createContainerFromText:"Wrap text in a container",link:{edit:"Edit link",editEmbed:"Edit embeddable link",create:"Add link",label:"Link",labelEmbed:"Link & embed",empty:"No link is set",hint:"Type or paste your link here",goToElement:"Go to target element"},lineEditor:{edit:"Edit line",editArrow:"Edit arrow"},elementLock:{lock:"Lock",unlock:"Unlock",lockAll:"Lock all",unlockAll:"Unlock all"},statusPublished:"Published",sidebarLock:"Keep sidebar open",selectAllElementsInFrame:"Select all elements in frame",removeAllElementsFromFrame:"Remove all elements from frame",eyeDropper:"Pick color from canvas",textToDiagram:"Text to diagram",prompt:"Prompt",followUs:"Follow us",discordChat:"Discord chat",zoomToFitViewport:"Zoom to fit in viewport",zoomToFitSelection:"Zoom to fit selection",zoomToFit:"Zoom to fit all elements",installPWA:"Install Excalidraw locally (PWA)",autoResize:"Enable text auto-resizing",imageCropping:"Image cropping",unCroppedDimension:"Uncropped dimension",copyElementLink:"Copy link to object",linkToElement:"Link to object",wrapSelectionInFrame:"Wrap selection in frame"},e4A={title:"Link to object",desc:"Click on a shape on canvas or paste a link.",notFound:"Linked object wasn't found on canvas."},t4A={noItems:"No items added yet...",hint_emptyLibrary:"Select an item on canvas to add it here, or install a library from the public repository, below.",hint_emptyPrivateLibrary:"Select an item on canvas to add it here."},r4A={title:"Find on canvas",noMatch:"No matches found...",singleResult:"result",multipleResults:"results",placeholder:"Find text on canvas..."},i4A={clearReset:"Reset the canvas",exportJSON:"Export to file",exportImage:"Export image...",export:"Save to...",copyToClipboard:"Copy to clipboard",copyLink:"Copy link",save:"Save to current file",saveAs:"Save as",load:"Open",getShareableLink:"Get shareable link",close:"Close",selectLanguage:"Select language",scrollBackToContent:"Scroll back to content",zoomIn:"Zoom in",zoomOut:"Zoom out",resetZoom:"Reset zoom",menu:"Menu",done:"Done",edit:"Edit",undo:"Undo",redo:"Redo",resetLibrary:"Reset library",createNewRoom:"Create new room",fullScreen:"Full screen",darkMode:"Dark mode",lightMode:"Light mode",systemMode:"System mode",zenMode:"Zen mode",objectsSnapMode:"Snap to objects",exitZenMode:"Exit zen mode",cancel:"Cancel",clear:"Clear",remove:"Remove",embed:"Toggle embedding",publishLibrary:"Publish",submit:"Submit",confirm:"Confirm",embeddableInteractionButton:"Click to interact"},u4A={clearReset:"This will clear the whole canvas. Are you sure?",couldNotCreateShareableLink:"Couldn't create shareable link.",couldNotCreateShareableLinkTooBig:"Couldn't create shareable link: the scene is too big",couldNotLoadInvalidFile:"Couldn't load invalid file",importBackendFailed:"Importing from backend failed.",cannotExportEmptyCanvas:"Cannot export empty canvas.",couldNotCopyToClipboard:"Couldn't copy to clipboard.",decryptFailed:"Couldn't decrypt data.",uploadedSecurly:"The upload has been secured with end-to-end encryption, which means that Excalidraw server and third parties can't read the content.",loadSceneOverridePrompt:"Loading external drawing will replace your existing content. Do you wish to continue?",collabStopOverridePrompt:`Stopping the session will overwrite your previous, locally stored drawing. Are you sure?
|
||
|
||
(If you want to keep your local drawing, simply close the browser tab instead.)`,errorAddingToLibrary:"Couldn't add item to the library",errorRemovingFromLibrary:"Couldn't remove item from the library",confirmAddLibrary:"This will add {{numShapes}} shape(s) to your library. Are you sure?",imageDoesNotContainScene:"This image does not seem to contain any scene data. Have you enabled scene embedding during export?",cannotRestoreFromImage:"Scene couldn't be restored from this image file",invalidSceneUrl:"Couldn't import scene from the supplied URL. It's either malformed, or doesn't contain valid Excalidraw JSON data.",resetLibrary:"This will clear your library. Are you sure?",removeItemsFromsLibrary:"Delete {{count}} item(s) from library?",invalidEncryptionKey:"Encryption key must be of 22 characters. Live collaboration is disabled.",collabOfflineWarning:`No internet connection available.
|
||
Your changes will not be saved!`},a4A={unsupportedFileType:"Unsupported file type.",imageInsertError:"Couldn't insert image. Try again later...",fileTooBig:"File is too big. Maximum allowed size is {{maxSize}}.",svgImageInsertError:"Couldn't insert SVG image. The SVG markup looks invalid.",failedToFetchImage:"Failed to fetch image.",cannotResolveCollabServer:"Couldn't connect to the collab server. Please reload the page and try again.",importLibraryError:"Couldn't load library",saveLibraryError:"Couldn't save library to storage. Please save your library to a file locally to make sure you don't lose changes.",collabSaveFailed:"Couldn't save to the backend database. If problems persist, you should save your file locally to ensure you don't lose your work.",collabSaveFailed_sizeExceeded:"Couldn't save to the backend database, the canvas seems to be too big. You should save the file locally to ensure you don't lose your work.",imageToolNotSupported:"Images are disabled.",brave_measure_text_error:{line1:"Looks like you are using Brave browser with the <bold>Aggressively Block Fingerprinting</bold> setting enabled.",line2:"This could result in breaking the <bold>Text Elements</bold> in your drawings.",line3:"We strongly recommend disabling this setting. You can follow <link>these steps</link> on how to do so.",line4:"If disabling this setting doesn't fix the display of text elements, please open an <issueLink>issue</issueLink> on our GitHub, or write us on <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Embeddable elements cannot be added to the library.",iframe:"IFrame elements cannot be added to the library.",image:"Support for adding images to the library coming soon!"},asyncPasteFailedOnRead:"Couldn't paste (couldn't read from system clipboard).",asyncPasteFailedOnParse:"Couldn't paste.",copyToSystemClipboardFailed:"Couldn't copy to clipboard."},n4A={selection:"Selection",image:"Insert image",rectangle:"Rectangle",diamond:"Diamond",ellipse:"Ellipse",arrow:"Arrow",line:"Line",freedraw:"Draw",text:"Text",library:"Library",lock:"Keep selected tool active after drawing",penMode:"Pen mode - prevent touch",link:"Add / Update link for a selected shape",eraser:"Eraser",frame:"Frame tool",magicframe:"Wireframe to code",embeddable:"Web Embed",laser:"Laser pointer",hand:"Hand (panning tool)",extraTools:"More tools",mermaidToExcalidraw:"Mermaid to Excalidraw"},o4A={rectangle:"Rectangle",diamond:"Diamond",ellipse:"Ellipse",arrow:"Arrow",line:"Line",freedraw:"Freedraw",text:"Text",image:"Image",group:"Group",frame:"Frame",magicframe:"Wireframe to code",embeddable:"Web Embed",selection:"Selection",iframe:"IFrame"},s4A={canvasActions:"Canvas actions",selectedShapeActions:"Selected shape actions",shapes:"Shapes"},l4A={dismissSearch:"Escape to dismiss search",canvasPanning:"To move canvas, hold mouse wheel or spacebar while dragging, or use the hand tool",linearElement:"Click to start multiple points, drag for single line",arrowTool:"Click to start multiple points, drag for single line. Press {{arrowShortcut}} again to change arrow type.",freeDraw:"Click and drag, release when you're finished",text:"Tip: you can also add text by double-clicking anywhere with the selection tool",embeddable:"Click-drag to create a website embed",text_selected:"Double-click or press ENTER to edit text",text_editing:"Press Escape or CtrlOrCmd+ENTER to finish editing",linearElementMulti:"Click on last point or press Escape or Enter to finish",lockAngle:"You can constrain angle by holding SHIFT",resize:`You can constrain proportions by holding SHIFT while resizing,
|
||
hold ALT to resize from the center`,resizeImage:`You can resize freely by holding SHIFT,
|
||
hold ALT to resize from the center`,rotate:"You can constrain angles by holding SHIFT while rotating",lineEditor_info:"Hold CtrlOrCmd and Double-click or press CtrlOrCmd + Enter to edit points",lineEditor_pointSelected:`Press Delete to remove point(s),
|
||
CtrlOrCmd+D to duplicate, or drag to move`,lineEditor_nothingSelected:`Select a point to edit (hold SHIFT to select multiple),
|
||
or hold Alt and click to add new points`,placeImage:"Click to place the image, or click and drag to set its size manually",publishLibrary:"Publish your own library",bindTextToElement:"Press enter to add text",createFlowchart:"Hold CtrlOrCmd and Arrow key to create a flowchart",deepBoxSelect:"Hold CtrlOrCmd to deep select, and to prevent dragging",eraserRevert:"Hold Alt to revert the elements marked for deletion",firefox_clipboard_write:'This feature can likely be enabled by setting the "dom.events.asyncClipboard.clipboardItem" flag to "true". To change the browser flags in Firefox, visit the "about:config" page.',disableSnapping:"Hold CtrlOrCmd to disable snapping",enterCropEditor:"Double click the image or press ENTER to crop the image",leaveCropEditor:"Click outside the image or press ENTER or ESCAPE to finish cropping"},g4A={cannotShowPreview:"Cannot show preview",canvasTooBig:"The canvas may be too big.",canvasTooBigTip:"Tip: try moving the farthest elements a bit closer together."},c4A={headingMain:"Encountered an error. Try <button>reloading the page</button>.",clearCanvasMessage:"If reloading doesn't work, try <button>clearing the canvas</button>.",clearCanvasCaveat:" This will result in loss of work ",trackedToSentry:"The error with identifier {{eventId}} was tracked on our system.",openIssueMessage:"We were very cautious not to include your scene information on the error. If your scene is not private, please consider following up on our <button>bug tracker</button>. Please include information below by copying and pasting into the GitHub issue.",sceneContent:"Scene content:"},C4A={or:"Or"},B4A={desc_intro:"Invite people to collaborate on your drawing.",desc_privacy:"Don't worry, the session is end-to-end encrypted, and fully private. Not even our server can see what you draw.",button_startSession:"Start session",button_stopSession:"Stop session",desc_inProgressIntro:"Live-collaboration session is now in progress.",desc_shareLink:"Share this link with anyone you want to collaborate with:",desc_exitSession:"Stopping the session will disconnect you from the room, but you'll be able to continue working with the scene, locally. Note that this won't affect other people, and they'll still be able to collaborate on their version.",shareTitle:"Join a live collaboration session on Excalidraw"},E4A={title:"Error"},d4A={disk_title:"Save to disk",disk_details:"Export the scene data to a file from which you can import later.",disk_button:"Save to file",link_title:"Shareable link",link_details:"Export as a read-only link.",link_button:"Export to Link",excalidrawplus_description:"Save the scene to your Excalidraw+ workspace.",excalidrawplus_button:"Export",excalidrawplus_exportError:"Couldn't export to Excalidraw+ at this moment..."},I4A={blog:"Read our blog",click:"click",deepSelect:"Deep select",deepBoxSelect:"Deep select within box, and prevent dragging",createFlowchart:"Create a flowchart from a generic element",navigateFlowchart:"Navigate a flowchart",curvedArrow:"Curved arrow",curvedLine:"Curved line",documentation:"Documentation",doubleClick:"double-click",drag:"drag",editor:"Editor",editLineArrowPoints:"Edit line/arrow points",editText:"Edit text / add label",github:"Found an issue? Submit",howto:"Follow our guides",or:"or",preventBinding:"Prevent arrow binding",tools:"Tools",shortcuts:"Keyboard shortcuts",textFinish:"Finish editing (text editor)",textNewLine:"Add new line (text editor)",title:"Help",view:"View",zoomToFit:"Zoom to fit all elements",zoomToSelection:"Zoom to selection",toggleElementLock:"Lock/unlock selection",movePageUpDown:"Move page up/down",movePageLeftRight:"Move page left/right",cropStart:"Crop image",cropFinish:"Finish image cropping"},h4A={title:"Clear canvas"},Q4A={title:"Publish library",itemName:"Item name",authorName:"Author name",githubUsername:"GitHub username",twitterUsername:"Twitter username",libraryName:"Library name",libraryDesc:"Library description",website:"Website",placeholder:{authorName:"Your name or username",libraryName:"Name of your library",libraryDesc:"Description of your library to help people understand its usage",githubHandle:"GitHub handle (optional), so you can edit the library once submitted for review",twitterHandle:"Twitter username (optional), so we know who to credit when promoting over Twitter",website:"Link to your personal website or elsewhere (optional)"},errors:{required:"Required",website:"Enter a valid URL"},noteDescription:"Submit your library to be included in the <link>public library repository</link> for other people to use in their drawings.",noteGuidelines:"The library needs to be manually approved first. Please read the <link>guidelines</link> before submitting. You will need a GitHub account to communicate and make changes if requested, but it is not strictly required.",noteLicense:"By submitting, you agree the library will be published under the <link>MIT License</link>, which in short means anyone can use them without restrictions.",noteItems:"Each library item must have its own name so it's filterable. The following library items will be included:",atleastOneLibItem:"Please select at least one library item to get started",republishWarning:"Note: some of the selected items are marked as already published/submitted. You should only resubmit items when updating an existing library or submission."},p4A={title:"Library submitted",content:"Thank you {{authorName}}. Your library has been submitted for review. You can track the status <link>here</link>"},f4A={resetLibrary:"Reset library",removeItemsFromLib:"Remove selected items from library"},m4A={header:"Export image",label:{withBackground:"Background",onlySelected:"Only selected",darkMode:"Dark mode",embedScene:"Embed scene",scale:"Scale",padding:"Padding"},tooltip:{embedScene:`Scene data will be saved into the exported PNG/SVG file so that the scene can be restored from it.
|
||
Will increase exported file size.`},title:{exportToPng:"Export to PNG",exportToSvg:"Export to SVG",copyPngToClipboard:"Copy PNG to clipboard"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copy to clipboard"}},D4A={tooltip:"Your drawings are end-to-end encrypted so Excalidraw's servers will never see them.",link:"Blog post on end-to-end encryption in Excalidraw"},y4A={angle:"Angle",shapes:"Shapes",height:"Height",scene:"Scene",selected:"Selected",storage:"Storage",fullTitle:"Canvas & Shape properties",title:"Properties",generalStats:"General",elementProperties:"Shape properties",total:"Total",version:"Version",versionCopy:"Click to copy",versionNotAvailable:"Version not available",width:"Width"},w4A={addedToLibrary:"Added to library",copyStyles:"Copied styles.",copyToClipboard:"Copied to clipboard.",copyToClipboardAsPng:`Copied {{exportSelection}} to clipboard as PNG
|
||
({{exportColorScheme}})`,copyToClipboardAsSvg:`Copied {{exportSelection}} to clipboard as SVG
|
||
({{exportColorScheme}})`,fileSaved:"File saved.",fileSavedToFilename:"Saved to {filename}",canvas:"canvas",selection:"selection",pasteAsSingleElement:`Use {{shortcut}} to paste as a single element,
|
||
or paste into an existing text editor`,unableToEmbed:"Embedding this url is currently not allowed. Raise an issue on GitHub to request the url whitelisted",unrecognizedLinkFormat:"The link you embedded does not match the expected format. Please try to paste the 'embed' string provided by the source site",elementLinkCopied:"Link copied to clipboard"},b4A={transparent:"Transparent",black:"Black",white:"White",red:"Red",pink:"Pink",grape:"Grape",violet:"Violet",gray:"Gray",blue:"Blue",cyan:"Cyan",teal:"Teal",green:"Green",yellow:"Yellow",orange:"Orange",bronze:"Bronze"},v4A={app:{center_heading:"All your data is saved locally in your browser.",center_heading_plus:"Did you want to go to the Excalidraw+ instead?",menuHint:"Export, preferences, languages, ..."},defaults:{menuHint:"Export, preferences, and more...",center_heading:"Diagrams. Made. Simple.",toolbarHint:"Pick a tool & Start drawing!",helpHint:"Shortcuts & help"}},k4A={mostUsedCustomColors:"Most used custom colors",colors:"Colors",shades:"Shades",hexCode:"Hex code",noShades:"No shades available for this color"},F4A={action:{exportToImage:{title:"Export as image",button:"Export as image",description:"Export the scene data as an image from which you can import later."},saveToDisk:{title:"Save to disk",button:"Save to disk",description:"Export the scene data to a file from which you can import later."},excalidrawPlus:{title:"Excalidraw+",button:"Export to Excalidraw+",description:"Save the scene to your Excalidraw+ workspace."}},modal:{loadFromFile:{title:"Load from file",button:"Load from file",description:"Loading from a file will <bold>replace your existing content</bold>.<br></br>You can back up your drawing first using one of the options below."},shareableLink:{title:"Load from link",button:"Replace my content",description:"Loading external drawing will <bold>replace your existing content</bold>.<br></br>You can back up your drawing first by using one of the options below."}}},x4A={title:"Mermaid to Excalidraw",button:"Insert",description:"Currently only <flowchartLink>Flowchart</flowchartLink>,<sequenceLink> Sequence, </sequenceLink> and <classLink>Class </classLink>Diagrams are supported. The other types will be rendered as image in Excalidraw.",syntax:"Mermaid Syntax",preview:"Preview"},S4A={placeholder:"Quick search"},L4A={badge:{old:"old"},sceneFonts:"In this scene",availableFonts:"Available fonts",empty:"No fonts found"},R4A={empty:"No users found",hint:{text:"Click on user to follow",followStatus:"You're currently following this user",inCall:"User is in a voice call",micMuted:"User's microphone is muted",isSpeaking:"User is speaking"}},N4A={title:"Command palette",shortcuts:{select:"Select",confirm:"Confirm",close:"Close"},recents:"Recently used",search:{placeholder:"Search menus, commands, and discover hidden gems",noMatch:"No matching commands..."},itemNotAvailable:"Command is not available...",shortcutHint:"For Command palette, use {{shortcut}}"},bS={labels:A4A,elementLink:e4A,library:t4A,search:r4A,buttons:i4A,alerts:u4A,errors:a4A,toolBar:n4A,element:o4A,headings:s4A,hints:l4A,canvasError:g4A,errorSplash:c4A,shareDialog:C4A,roomDialog:B4A,errorDialog:E4A,exportDialog:d4A,helpDialog:I4A,clearCanvasDialog:h4A,publishDialog:Q4A,publishSuccessDialog:p4A,confirmDialog:f4A,imageExportDialog:m4A,encrypted:D4A,stats:y4A,toast:w4A,colors:b4A,welcomeScreen:v4A,colorPicker:k4A,overwriteConfirm:F4A,mermaid:x4A,quickSearch:S4A,fontList:L4A,userList:R4A,commandPalette:N4A}});var U4A=100,M4A=36,oq;var T4A=P(()=>{oq={"ar-SA":94,"az-AZ":17,"bg-BG":71,"bn-BD":52,"ca-ES":83,"cs-CZ":86,"da-DK":61,"de-DE":100,"el-GR":80,en:U4A,"es-ES":96,"eu-ES":97,"fa-IR":84,"fi-FI":76,"fr-FR":99,"gl-ES":86,"he-IL":77,"hi-IN":76,"hu-HU":76,"id-ID":91,"it-IT":98,"ja-JP":90,kaa:M4A,"kab-KAB":76,"kk-KZ":18,"km-KH":83,"ko-KR":100,"ku-TR":87,"lt-LT":48,"lv-LV":77,"mr-IN":98,"my-MM":35,"nb-NO":93,"nl-NL":75,"nn-NO":67,"oc-FR":92,"pa-IN":78,"pl-PL":99,"pt-BR":91,"pt-PT":83,"ro-RO":99,"ru-RU":92,"si-LK":7,"sk-SK":100,"sl-SI":100,"sv-SE":100,"ta-IN":81,"th-TH":44,"tr-TR":87,"uk-UA":93,"vi-VN":49,"zh-CN":100,"zh-HK":22,"zh-TW":100}});var _1e=wu(function(i5){function z4A(A,e){var t=A.length;A.push(e);A:for(;0<t;){var r=t-1>>>1,i=A[r];if(0<Cq(i,e))A[r]=e,A[t]=i,t=r;else break A}}function DB(A){return A.length===0?null:A[0]}function Iq(A){if(A.length===0)return null;var e=A[0],t=A.pop();if(t!==e){A[0]=t;A:for(var r=0,i=A.length,u=i>>>1;r<u;){var a=2*(r+1)-1,n=A[a],o=a+1,s=A[o];if(0>Cq(n,t))o<i&&0>Cq(s,n)?(A[r]=s,A[o]=t,r=o):(A[r]=n,A[a]=t,r=a);else if(o<i&&0>Cq(s,t))A[r]=s,A[o]=t,r=o;else break A}}return e}function Cq(A,e){var t=A.sortIndex-e.sortIndex;return t!==0?t:A.id-e.id}if(typeof performance==="object"&&typeof performance.now==="function")Z4A=performance,i5.unstable_now=function(){return Z4A.now()};else Bq=Date,V4A=Bq.now(),i5.unstable_now=function(){return Bq.now()-V4A};var Z4A,Bq,V4A,Ld=[],Cp=[],Dnr=1,Pc=null,X0=3,hq=!1,b2=!1,SS=!1,H1e=typeof setTimeout==="function"?setTimeout:null,K1e=typeof clearTimeout==="function"?clearTimeout:null,Y1e=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function j4A(A){for(var e=DB(Cp);e!==null;){if(e.callback===null)Iq(Cp);else if(e.startTime<=A)Iq(Cp),e.sortIndex=e.expirationTime,z4A(Ld,e);else break;e=DB(Cp)}}function $4A(A){if(SS=!1,j4A(A),!b2)if(DB(Ld)!==null)b2=!0,e1A(A1A);else{var e=DB(Cp);e!==null&&t1A($4A,e.startTime-A)}}function A1A(A,e){b2=!1,SS&&(SS=!1,K1e(LS),LS=-1),hq=!0;var t=X0;try{j4A(e);for(Pc=DB(Ld);Pc!==null&&(!(Pc.expirationTime>e)||A&&!P1e());){var r=Pc.callback;if(typeof r==="function"){Pc.callback=null,X0=Pc.priorityLevel;var i=r(Pc.expirationTime<=e);e=i5.unstable_now(),typeof i==="function"?Pc.callback=i:Pc===DB(Ld)&&Iq(Ld),j4A(e)}else Iq(Ld);Pc=DB(Ld)}if(Pc!==null)var u=!0;else{var a=DB(Cp);a!==null&&t1A($4A,a.startTime-e),u=!1}return u}finally{Pc=null,X0=t,hq=!1}}var Qq=!1,Eq=null,LS=-1,J1e=5,O1e=-1;function P1e(){return i5.unstable_now()-O1e<J1e?!1:!0}function q4A(){if(Eq!==null){var A=i5.unstable_now();O1e=A;var e=!0;try{e=Eq(!0,A)}finally{e?xS():(Qq=!1,Eq=null)}}else Qq=!1}var xS;if(typeof Y1e==="function")xS=function(){Y1e(q4A)};else if(typeof MessageChannel<"u")dq=new MessageChannel,X4A=dq.port2,dq.port1.onmessage=q4A,xS=function(){X4A.postMessage(null)};else xS=function(){H1e(q4A,0)};var dq,X4A;function e1A(A){Eq=A,Qq||(Qq=!0,xS())}function t1A(A,e){LS=H1e(function(){A(i5.unstable_now())},e)}i5.unstable_IdlePriority=5;i5.unstable_ImmediatePriority=1;i5.unstable_LowPriority=4;i5.unstable_NormalPriority=3;i5.unstable_Profiling=null;i5.unstable_UserBlockingPriority=2;i5.unstable_cancelCallback=function(A){A.callback=null};i5.unstable_continueExecution=function(){b2||hq||(b2=!0,e1A(A1A))};i5.unstable_forceFrameRate=function(A){0>A||125<A?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):J1e=0<A?Math.floor(1000/A):5};i5.unstable_getCurrentPriorityLevel=function(){return X0};i5.unstable_getFirstCallbackNode=function(){return DB(Ld)};i5.unstable_next=function(A){switch(X0){case 1:case 2:case 3:var e=3;break;default:e=X0}var t=X0;X0=e;try{return A()}finally{X0=t}};i5.unstable_pauseExecution=function(){};i5.unstable_requestPaint=function(){};i5.unstable_runWithPriority=function(A,e){switch(A){case 1:case 2:case 3:case 4:case 5:break;default:A=3}var t=X0;X0=A;try{return e()}finally{X0=t}};i5.unstable_scheduleCallback=function(A,e,t){var r=i5.unstable_now();switch(typeof t==="object"&&t!==null?(t=t.delay,t=typeof t==="number"&&0<t?r+t:r):t=r,A){case 1:var i=-1;break;case 2:i=250;break;case 5:i=1073741823;break;case 4:i=1e4;break;default:i=5000}return i=t+i,A={id:Dnr++,callback:e,priorityLevel:A,startTime:t,expirationTime:i,sortIndex:-1},t>r?(A.sortIndex=t,z4A(Cp,A),DB(Ld)===null&&A===DB(Cp)&&(SS?(K1e(LS),LS=-1):SS=!0,t1A($4A,t-r))):(A.sortIndex=i,z4A(Ld,A),b2||hq||(b2=!0,e1A(A1A))),A};i5.unstable_shouldYield=P1e;i5.unstable_wrapCallback=function(A){var e=X0;return function(){var t=X0;X0=e;try{return A.apply(this,arguments)}finally{X0=t}}}});var z2e=wu(function(W2e,q2e){(function(){var A=this,e={};if(typeof W2e<"u")q2e.exports=e;else A.fuzzy=e;e.simpleFilter=function(t,r){return r.filter(function(i){return e.test(t,i)})},e.test=function(t,r){return e.match(t,r)!==null},e.match=function(t,r,i){i=i||{};var u=0,a=[],n=r.length,o=0,s=0,l=i.pre||"",g=i.post||"",C=i.caseSensitive&&r||r.toLowerCase(),B;t=i.caseSensitive&&t||t.toLowerCase();for(var E=0;E<n;E++){if(B=r[E],C[E]===t[u])B=l+B+g,u+=1,s+=1+s;else s=0;o+=s,a[a.length]=B}if(u===t.length)return o=C===t?1/0:o,{rendered:a.join(""),score:o};return null},e.filter=function(t,r,i){if(!r||r.length===0)return[];if(typeof t!=="string")return r;return i=i||{},r.reduce(function(u,a,n,o){var s=a;if(i.extract)s=i.extract(a);var l=e.match(t,s,i);if(l!=null)u[u.length]={string:l.rendered,score:l.score,index:n,original:a};return u},[]).sort(function(u,a){var n=a.score-u.score;if(n)return n;return u.index-a.index})}})()});var j2e=wu(function(Jlr){fe();function Rlr(A,e){return A===e&&(A!==0||1/A===1/e)||A!==A&&e!==e}var Nlr=typeof Object.is==="function"?Object.is:Rlr,Glr=we,Ulr=le,Mlr=Ii,Tlr=N1;function Ylr(A,e){var t=e(),r=Glr({inst:{value:t,getSnapshot:e}}),i=r[0].inst,u=r[1];return Mlr(function(){i.value=t,i.getSnapshot=e,PfA(i)&&u({inst:i})},[A,t,e]),Ulr(function(){return PfA(i)&&u({inst:i}),A(function(){PfA(i)&&u({inst:i})})},[A]),Tlr(t),t}function PfA(A){var e=A.getSnapshot;A=A.value;try{var t=e();return!Nlr(A,t)}catch(r){return!0}}function Hlr(A,e){return e()}var Klr=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?Hlr:Ylr;Jlr.useSyncExternalStore=Q8!==void 0?Q8:Klr});var FDe=wu(function(Rvi,kDe){var Xgr="Expected a function",bDe=NaN,$gr="[object Symbol]",Acr=/^\s+|\s+$/g,ecr=/^[-+]0x[0-9a-f]+$/i,tcr=/^0b[01]+$/i,rcr=/^0o[0-7]+$/i,icr=parseInt,ucr=typeof global=="object"&&global&&global.Object===Object&&global,acr=typeof self=="object"&&self&&self.Object===Object&&self,ncr=ucr||acr||Function("return this")(),ocr=Object.prototype,scr=ocr.toString,{max:lcr,min:gcr}=Math,s3A=function(){return ncr.Date.now()};function ccr(A,e,t){var r,i,u,a,n,o,s=0,l=!1,g=!1,C=!0;if(typeof A!="function")throw TypeError(Xgr);if(e=vDe(e)||0,l3A(t))l=!!t.leading,g="maxWait"in t,u=g?lcr(vDe(t.maxWait)||0,e):u,C="trailing"in t?!!t.trailing:C;function B(D){var w=r,b=i;return r=i=void 0,s=D,a=A.apply(b,w),a}function E(D){return s=D,n=setTimeout(h,e),l?B(D):a}function d(D){var w=D-o,b=D-s,F=e-w;return g?gcr(F,u-b):F}function I(D){var w=D-o,b=D-s;return o===void 0||w>=e||w<0||g&&b>=u}function h(){var D=s3A();if(I(D))return Q(D);n=setTimeout(h,d(D))}function Q(D){if(n=void 0,C&&r)return B(D);return r=i=void 0,a}function p(){if(n!==void 0)clearTimeout(n);s=0,r=o=i=n=void 0}function m(){return n===void 0?a:Q(s3A())}function f(){var D=s3A(),w=I(D);if(r=arguments,i=this,o=D,w){if(n===void 0)return E(o);if(g)return n=setTimeout(h,e),B(o)}if(n===void 0)n=setTimeout(h,e);return a}return f.cancel=p,f.flush=m,f}function l3A(A){var e=typeof A;return!!A&&(e=="object"||e=="function")}function Ccr(A){return!!A&&typeof A=="object"}function Bcr(A){return typeof A=="symbol"||Ccr(A)&&scr.call(A)==$gr}function vDe(A){if(typeof A=="number")return A;if(Bcr(A))return bDe;if(l3A(A)){var e=typeof A.valueOf=="function"?A.valueOf():A;A=l3A(e)?e+"":e}if(typeof A!="string")return A===0?A:+A;A=A.replace(Acr,"");var t=tcr.test(A);return t||rcr.test(A)?icr(A.slice(2),t?2:8):ecr.test(A)?bDe:+A}kDe.exports=ccr});var aye={};yt(aye,{alerts:()=>UDe,buttons:()=>GDe,canvasError:()=>KDe,clearCanvasDialog:()=>qDe,colorPicker:()=>rye,colors:()=>eye,confirmDialog:()=>VDe,default:()=>fcr,encrypted:()=>XDe,errorDialog:()=>PDe,errorSplash:()=>JDe,errors:()=>MDe,exportDialog:()=>_De,headings:()=>YDe,helpDialog:()=>WDe,hints:()=>HDe,imageExportDialog:()=>jDe,labels:()=>RDe,library:()=>NDe,mermaid:()=>uye,overwriteConfirm:()=>iye,publishDialog:()=>zDe,publishSuccessDialog:()=>ZDe,roomDialog:()=>ODe,stats:()=>$De,toast:()=>Aye,toolBar:()=>TDe,welcomeScreen:()=>tye});var RDe,NDe,GDe,UDe,MDe,TDe,YDe,HDe,KDe,JDe,ODe,PDe,_De,WDe,qDe,zDe,ZDe,VDe,jDe,XDe,$De,Aye,eye,tye,rye,iye,uye,fcr;var nye=P(()=>{qt();RDe={paste:"لصق",pasteAsPlaintext:"اللصق كنص عادي",pasteCharts:"لصق الرسوم البيانية",selectAll:"تحديد الكل",multiSelect:"إضافة عنصر للتحديد",moveCanvas:"نقل لوح الرسم",cut:"قص",copy:"نسخ",copyAsPng:"نسخ إلى الحافظة بصيغة PNG",copyAsSvg:"نسخ إلى الحافظة بصيغة SVG",copyText:"نسخ إلى الحافظة كنص",copySource:"",convertToCode:"",bringForward:"جلب للأمام",sendToBack:"أرسل للخلف",bringToFront:"أحضر للأمام",sendBackward:"أرسل للخلف",delete:"حذف",copyStyles:"نسخ الأنماط",pasteStyles:"لصق الأنماط",stroke:"الخط",background:"الخلفية",fill:"التعبئة",strokeWidth:"سُمك الخط",strokeStyle:"نمط الخط",strokeStyle_solid:"متصل",strokeStyle_dashed:"متقطع",strokeStyle_dotted:"منقط",sloppiness:"الإمالة",opacity:"الشفافية",textAlign:"محاذاة النص",edges:"الحواف",sharp:"حادة",round:"دائرية",arrowheads:"رؤوس الأسهم",arrowhead_none:"لا شيء",arrowhead_arrow:"سهم",arrowhead_bar:"شريط",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"مثلث",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"حجم الخط",fontFamily:"نوع الخط",addWatermark:'إضافة "مصنوعة بواسطة Excalidraw"',handDrawn:"رسم باليد",normal:"عادي",code:"رمز",small:"صغير",medium:"متوسط",large:"كبير",veryLarge:"كبير جدا",solid:"كامل",hachure:"خطوط",zigzag:"متعرج",crossHatch:"خطوط متقطعة",thin:"نحيف",bold:"داكن",left:"الـيسار",center:"وسط",right:"يمين",extraBold:"عريض",architect:"معماري",artist:"رسام",cartoonist:"كرتوني",fileTitle:"إسم الملف",colorPicker:"منتقي اللون",canvasColors:"تستخدم على القماش",canvasBackground:"خلفية اللوحة",drawingCanvas:"لوحة الرسم",layers:"الطبقات",actions:"الإجراءات",language:"اللغة",liveCollaboration:"التعاون المباشر...",duplicateSelection:"تكرار",untitled:"غير معنون",name:"الاسم",yourName:"اسمك",madeWithExcalidraw:"مصنوعة بواسطة Excalidraw",group:"تحديد مجموعة",ungroup:"إلغاء تحديد مجموعة",collaborators:"المتعاونون",showGrid:"إظهار الشبكة",addToLibrary:"أضف إلى المكتبة",removeFromLibrary:"حذف من المكتبة",libraryLoadingMessage:"جارٍ تحميل المكتبة…",libraries:"تصفح المكتبات",loadingScene:"جاري تحميل المشهد…",align:"محاذاة",alignTop:"محاذاة إلى اﻷعلى",alignBottom:"محاذاة إلى اﻷسفل",alignLeft:"محاذاة إلى اليسار",alignRight:"محاذاة إلى اليمين",centerVertically:"توسيط عمودي",centerHorizontally:"توسيط أفقي",distributeHorizontally:"التوزيع الأفقي",distributeVertically:"التوزيع عمودياً",flipHorizontal:"قلب عامودي",flipVertical:"قلب أفقي",viewMode:"نمط العرض",share:"مشاركة",showStroke:"إظهار منتقي لون الخط",showBackground:"إظهار منتقي لون الخلفية",toggleTheme:"غير النمط",personalLib:"المكتبة الشخصية",excalidrawLib:"مكتبتنا",decreaseFontSize:"تصغير حجم الخط",increaseFontSize:"تكبير حجم الخط",unbindText:"فك ربط النص",bindText:"ربط النص بالحاوية",createContainerFromText:"نص مغلف في حاوية",link:{edit:"تعديل الرابط",editEmbed:"تحرير الرابط وإدراجه",create:"إنشاء رابط",createEmbed:"إنشاء رابط و إدراجه",label:"رابط",labelEmbed:"رابط و إدراج",empty:"لم يتم تعيين رابط"},lineEditor:{edit:"تحرير السطر",exit:"الخروج من المُحرر"},elementLock:{lock:"قفل",unlock:"فتح",lockAll:"قفل الكل",unlockAll:"فتح الكل"},statusPublished:"نُشر",sidebarLock:"إبقاء الشريط الجانبي مفتوح",selectAllElementsInFrame:"تحديد جميع العناصر في الإطار",removeAllElementsFromFrame:"إزالة جميع العناصر من الإطار",eyeDropper:"اختيار اللون من القماش",textToDiagram:"",prompt:""},NDe={noItems:"لا توجد عناصر أضيفت بعد...",hint_emptyLibrary:"حدد عنصر على القماش لإضافته هنا، أو تثبيت مكتبة من المستودع العام أدناه.",hint_emptyPrivateLibrary:"حدد عنصر على القماش لإضافته هنا."},GDe={clearReset:"إعادة تعيين اللوحة",exportJSON:"صدر الملف",exportImage:"تصدير الصورة...",export:"حفظ إلى...",copyToClipboard:"نسخ إلى الحافظة",save:"احفظ للملف الحالي",saveAs:"حفظ كـ",load:"فتح",getShareableLink:"احصل على رابط المشاركة",close:"غلق",selectLanguage:"اختر اللغة",scrollBackToContent:"الرجوع إلى المحتوى",zoomIn:"تكبير",zoomOut:"تصغير",resetZoom:"إعادة تعيين الشاشة",menu:"القائمة",done:"تم",edit:"تعديل",undo:"تراجع",redo:"إعادة تنفيذ",resetLibrary:"إعادة ضبط المكتبة",createNewRoom:"إنشاء غرفة جديدة",fullScreen:"شاشة كاملة",darkMode:"الوضع المظلم",lightMode:"الوضع المضيء",zenMode:"وضع التأمل",objectsSnapMode:"التقط إلى العناصر",exitZenMode:"إلغاء الوضع الليلى",cancel:"إلغاء",clear:"مسح",remove:"إزالة",embed:"تبديل الإدراج",publishLibrary:"انشر",submit:"أرسل",confirm:"تأكيد",embeddableInteractionButton:"اضغط للتفاعل"},UDe={clearReset:"هذا سيُزيل كامل اللوحة. هل أنت متأكد؟",couldNotCreateShareableLink:"تعذر إنشاء رابطة المشاركة.",couldNotCreateShareableLinkTooBig:"تعذر إنشاء رابط قابل للمشاركة: المشهد كبير جدًا",couldNotLoadInvalidFile:"تعذر التحميل، الملف غير صالح",importBackendFailed:"فشل الاستيراد من الخادوم.",cannotExportEmptyCanvas:"لا يمكن تصدير لوحة فارغة.",couldNotCopyToClipboard:"تعذر النسخ إلى الحافظة.",decryptFailed:"تعذر فك تشفير البيانات.",uploadedSecurly:"تم تأمين التحميل بتشفير النهاية إلى النهاية، مما يعني أن خادوم Excalidraw والأطراف الثالثة لا يمكنها قراءة المحتوى.",loadSceneOverridePrompt:"تحميل الرسم الخارجي سيحل محل المحتوى الموجود لديك. هل ترغب في المتابعة؟",collabStopOverridePrompt:`إيقاف الجلسة سيؤدي إلى الكتابة فوق رسومك السابقة المخزنة داخليا. هل أنت متأكد؟
|
||
|
||
(إذا كنت ترغب في الاحتفاظ برسمك المخزن داخليا، ببساطة أغلق علامة تبويب المتصفح بدلاً من ذلك.)`,errorAddingToLibrary:"تعذر إضافة العنصر للمكتبة",errorRemovingFromLibrary:"تعذر إزالة العنصر من المكتبة",confirmAddLibrary:"هذا سيضيف {{numShapes}} شكل إلى مكتبتك. هل أنت متأكد؟",imageDoesNotContainScene:"يبدو أن هذه الصورة لا تحتوي على أي بيانات مشهد. هل قمت بتمكين تضمين المشهد أثناء التصدير؟",cannotRestoreFromImage:"تعذر استعادة المشهد من ملف الصورة",invalidSceneUrl:"تعذر استيراد المشهد من عنوان URL المتوفر. إما أنها مشوهة، أو لا تحتوي على بيانات Excalidraw JSON صالحة.",resetLibrary:"هذا سوف يمسح مكتبتك. هل أنت متأكد؟",removeItemsFromsLibrary:"حذف {{count}} عنصر (عناصر) من المكتبة؟",invalidEncryptionKey:"مفتاح التشفير يجب أن يكون من 22 حرفاً. التعاون المباشر معطل.",collabOfflineWarning:`لا يوجد اتصال بالانترنت.
|
||
لن يتم حفظ التغييرات التي قمت بها!`},MDe={unsupportedFileType:"نوع الملف غير مدعوم.",imageInsertError:"تعذر إدراج الصورة. حاول مرة أخرى لاحقاً...",fileTooBig:"الملف كبير جداً. الحد الأقصى المسموح به للحجم هو {{maxSize}}.",svgImageInsertError:"تعذر إدراج صورة SVG. يبدو أن ترميز SVG غير صحيح.",failedToFetchImage:"",invalidSVGString:"SVG غير صالح.",cannotResolveCollabServer:"تعذر الاتصال بخادم التعاون. الرجاء إعادة تحميل الصفحة والمحاولة مرة أخرى.",importLibraryError:"تعذر تحميل المكتبة",collabSaveFailed:"تعذر الحفظ في قاعدة البيانات. إذا استمرت المشاكل، يفضل أن تحفظ ملفك محليا كي لا تفقد عملك.",collabSaveFailed_sizeExceeded:"تعذر الحفظ في قاعدة البيانات، يبدو أن القماش كبير للغاية، يفضّل حفظ الملف محليا كي لا تفقد عملك.",imageToolNotSupported:"",brave_measure_text_error:{line1:"يبدو أنك تستخدم متصفح Brave مع إعداد <bold>حظر صارم لتتبع البصمة</bold>.",line2:"قد يؤدي هذا إلى كسر <bold>عناصر النص</bold> في الرسومات الخاصة بك.",line3:"من المستحسن إلغاء تفعيل هذا الإعداد. يمكنك اتباع <link>هذه الخطوات</link> لفعل ذلك.",line4:"إذا لم يصلح تعطيل هذا الإعداد طريقة عرض النصوص، الرجاء كتابة <issueLink>بلاغ</issueLink> على حسابنا في GitHub، أو راسلنا على <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"لا يمكن إضافة العناصر القابلة للتضمين في المكتبة.",iframe:"",image:"سوف يتم دعم إضافة صور إلى المكتبة قريباً!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},TDe={selection:"تحديد",image:"إدراج صورة",rectangle:"مستطيل",diamond:"مضلع",ellipse:"دائرة",arrow:"سهم",line:"خط",freedraw:"رسم",text:"نص",library:"مكتبة",lock:"الحفاظ على أداة التحديد نشطة بعد الرسم",penMode:"وضع القلم - امنع اللمس",link:"إضافة/تحديث الرابط للشكل المحدد",eraser:"ممحاة",frame:"أداة الإطار",magicframe:"",embeddable:"تضمين ويب",laser:"مؤشر ليزر",hand:"يد (أداة الإزاحة)",extraTools:"المزيد من أﻷدوات",mermaidToExcalidraw:"",magicSettings:""},YDe={canvasActions:"إجراءات اللوحة",selectedShapeActions:"إجراءات الشكل المحدد",shapes:"الأشكال"},HDe={canvasPanning:"لتحريك القماش، اضغط على عجلة الفأرة أو مفتاح المسافة أثناء السحب، أو استخدم أداة اليد",linearElement:"انقر لبدء نقاط متعددة، اسحب لخط واحد",freeDraw:"انقر واسحب، افرج عند الانتهاء",text:"نصيحة: يمكنك أيضًا إضافة نص بالنقر المزدوج في أي مكان بأداة الاختيار",embeddable:"اضغط مع السحب لإنشاء موقع ويب مضمّن",text_selected:"انقر نقراً مزدوجاً أو اضغط ادخال لتعديل النص",text_editing:"اضغط على Esc أو (Ctrl أو Cmd) + Enter لإنهاء التعديل",linearElementMulti:"انقر فوق النقطة الأخيرة أو اضغط على Esc أو Enter للإنهاء",lockAngle:"يمكنك تقييد الزاوية بالضغط على SHIFT",resize:`يمكنك تقييد النسب بالضغط على SHIFT أثناء تغيير الحجم،
|
||
اضغط على ALT لتغيير الحجم من المركز`,resizeImage:`يمكنك تغيير الحجم بحرية بالضغط بأستمرار على SHIFT،
|
||
اضغط بأستمرار على ALT أيضا لتغيير الحجم من المركز`,rotate:"يمكنك تقييد الزوايا من خلال الضغط على SHIFT أثناء الدوران",lineEditor_info:"اضغط على مفتاح (Ctrl أو Cmd) و انقر بشكل مزدوج، أو اضغط على مفتاحي (Ctrl أو Cmd) و (Enter) لتعديل النقاط",lineEditor_pointSelected:"اضغط على حذف لإزالة النقطة (النِّقَاط)، Ctrl/Cmd+D للتكرار، أو اسحب للانتقال",lineEditor_nothingSelected:`اختر نقطة لتعديلها (اضغط على SHIFT لتحديد عدة نِقَاط),
|
||
أو اضغط على ALT و انقر بالفأرة لإضافة نِقَاط جديدة`,placeImage:"انقر لوضع الصورة، أو انقر واسحب لتعيين حجمها يدوياً",publishLibrary:"نشر مكتبتك",bindTextToElement:"اضغط على إدخال لإضافة نص",deepBoxSelect:"اضغط على Ctrl\\Cmd للاختيار العميق، ولمنع السحب",eraserRevert:"اضغط على Alt لاستعادة العناصر المعلَّمة للحذف",firefox_clipboard_write:'يمكن على الأرجح تمكين هذه الميزة عن طريق تعيين علم "dom.events.asyncClipboard.clipboardItem" إلى "true". لتغيير أعلام المتصفح في Firefox، قم بزيارة صفحة "about:config".',disableSnapping:"اضغط على Ctrl أو Cmd لتعطيل الالتقاط"},KDe={cannotShowPreview:"تعذر عرض المعاينة",canvasTooBig:"قد تكون اللوحة كبيرة جداً.",canvasTooBigTip:"نصيحة: حاول تحريك العناصر البعيدة بشكل أقرب قليلاً."},JDe={headingMain:"حدث خطأ. حاول <button>تحديث الصفحة</button>.",clearCanvasMessage:"إذا لم تعمل إعادة التحميل، حاول مرة أخرى ",clearCanvasCaveat:" هذا سيؤدي إلى فقدان العمل ",trackedToSentry:"تم تتبع الخطأ في المعرف {{eventId}} على نظامنا.",openIssueMessage:"حرصنا على عدم إضافة معلومات المشهد في بلاغ الخطأ. في حال كون مشهدك لا يحمل أي معلومات خاصة نرجو المتابعة على <button>نظام تتبع الأخطاء</button>. نرجو إضافة المعلومات أدناه بنسخها ولصقها في محتوى البلاغ على GitHub.",sceneContent:"محتوى المشهد:"},ODe={desc_intro:"يمكنك دعوة الآخرين لمشاركتك نفس الجلسة التي تعمل عليها.",desc_privacy:"لا تقلق، الجلسة تستخدم التشفير من النهاية إلى النهاية، لذلك فإن أي شيء ترسمه سيبقى خاصاً. لن يتمكن حتى الخادوم الخاص بنا من رؤية ما توصلت إليه.",button_startSession:"بدء الجلسة",button_stopSession:"إيقاف الجلسة",desc_inProgressIntro:"تجري الآن المشاركة الحية.",desc_shareLink:"شارك هذا الرابط مع أي شخص تريده أن يشاركك الجلسة:",desc_exitSession:"إيقاف الجلسة سيؤدي إلى قطع الاتصال الخاص بك من الغرفة، ولكن ستتمكن من مواصلة العمل مع المشهد، محليا. لاحظ أن هذا لن يؤثر على الأشخاص الآخرين، و سيظلون قادرين على التعاون في إصدارهم.",shareTitle:"الانضمام إلى جلسة تعاون حية على Excalidraw"},PDe={title:"خطأ"},_De={disk_title:"حفظ الملف للجهاز",disk_details:"تصدير بيانات المشهد إلى ملف يمكنك الاستيراد منه لاحقاً.",disk_button:"إحفظ لملف",link_title:"رابط قابل للمشاركة",link_details:"صدر الملف للمشاهدة فقط.",link_button:"التصدير كرابط",excalidrawplus_description:"حفظ المشهد إلى مساحة العمل +Excalidraw الخاصة بك.",excalidrawplus_button:"تصدير",excalidrawplus_exportError:"تعذر التصدير إلى +Excalidraw في الوقت الحالي..."},WDe={blog:"اقرأ مدونتنا",click:"انقر",deepSelect:"تحديد عميق",deepBoxSelect:"تحديد عميق داخل المربع، ومنع السحب",curvedArrow:"سهم مائل",curvedLine:"خط مائل",documentation:"دليل الاستخدام",doubleClick:"انقر مرتين",drag:"اسحب",editor:"المحرر",editLineArrowPoints:"تحرير سطر/نقاط سهم",editText:"تعديل النص / إضافة تسمية",github:"عثرت على مشكلة؟ إرسال",howto:"اتبع التعليمات",or:"أو",preventBinding:"منع ارتبط السهم",tools:"الأدوات",shortcuts:"اختصارات لوحة المفاتيح",textFinish:"إنهاء التعديل (محرر النص)",textNewLine:"أضف سطر جديد (محرر نص)",title:"المساعدة",view:"عرض",zoomToFit:"تكبير للملائمة",zoomToSelection:"تكبير للعنصر المحدد",toggleElementLock:"إغلاق/فتح المحدد",movePageUpDown:"نقل الصفحة أعلى/أسفل",movePageLeftRight:"نقل الصفحة يسار/يمين"},qDe={title:"مسح اللوحة"},zDe={title:"نشر المكتبة",itemName:"إسم العنصر",authorName:"إسم المؤلف",githubUsername:"اسم المستخدم في جيت هب",twitterUsername:"اسم المستخدم في تويتر",libraryName:"اسم المكتبة",libraryDesc:"وصف المكتبة",website:"الموقع",placeholder:{authorName:"اسمك أو اسم المستخدم",libraryName:"اسم مكتبتك",libraryDesc:"وصف مكتبتك لمساعدة الناس على فهم استخدامها",githubHandle:"معالج GitHub (اختياري)، حتى تتمكن من تحرير المكتبة عند إرسالها للمراجعة",twitterHandle:"اسم مستخدم تويتر (اختياري)، حتى نعرف من الذي سيتم الإشارة إليه عند الترويج عبر تويتر",website:"رابط إلى موقعك الشخصي أو في مكان آخر (اختياري)"},errors:{required:"مطلوب",website:"أدخل عنوان URL صالح"},noteDescription:"تقديم مكتبتك لتضمينها في مستودع المكتبة العامة <link></link> لأشخاص آخرين لاستخدامها في رسومهم.",noteGuidelines:"تحتاج المكتبة إلى الموافقة أولا. يرجى قراءة <link>المعايير</link> قبل تقديمها. سوف تحتاج إلى حساب GitHub للتواصل وإجراء التغييرات عند الطلب، ولكن ليس مطلوبا بشكل صارم.",noteLicense:"تقديمك يعني موافقتك على نشر المكتبة المقدمة تحت <link>MIT ترخيص</link>، ما يعني أن لأي أحد الحق في استخدامها دون قيود.",noteItems:"يجب أن يكون لكل عنصر مكتبة اسمه الخاص حتى يكون قابلاً للتصفية. سيتم تضمين عناصر المكتبة التالية:",atleastOneLibItem:"يرجى تحديد عنصر مكتبة واحد على الأقل للبدء",republishWarning:"ملاحظة: بعض العناصر المحددة معينة على أنه نشرها أو تقديمها من قبل. يجب عليك فقط إعادة إرسال العناصر عند تحديث مكتبة موجودة أو إرسالها."},ZDe={title:"تم إرسال المكتبة",content:"شكرا لك {{authorName}}. لقد تم إرسال مكتبتك للمراجعة. يمكنك تتبع الحالة"},VDe={resetLibrary:"إعادة ضبط المكتبة",removeItemsFromLib:"إزالة العناصر المحددة من المكتبة"},jDe={header:"تصدير الصورة",label:{withBackground:"الخلفية",onlySelected:"المحدد فقط",darkMode:"الوضع الداكن",embedScene:"تضمين المشهد",scale:"الحجم",padding:"الهوامش"},tooltip:{embedScene:`سيتم حفظ بيانات المشهد في ملف PNG/SVG المصدّر بحيث يمكن استعادة المشهد منه.
|
||
سيزيد حجم الملف المصدر.`},title:{exportToPng:"تصدير بصيغة PNG",exportToSvg:"تصدير بصيغة SVG",copyPngToClipboard:"نسخ الـ PNG إلى الحافظة"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"نسخ إلى الحافظة"}},XDe={tooltip:"رسوماتك مشفرة من النهاية إلى النهاية حتى أن خوادم Excalidraw لن تراها أبدا.",link:"مشاركة المدونة في التشفير من النهاية إلى النهاية في Excalidraw"},$De={angle:"الزاوية",element:"عنصر",elements:"العناصر",height:"الارتفاع",scene:"المشهد",selected:"المحدد",storage:"التخزين",title:"إحصائيات للمهووسين",total:"المجموع",version:"الإصدار",versionCopy:"انقر للنسخ",versionNotAvailable:"الإصدار غير متوفر",width:"العرض"},Aye={addedToLibrary:"تمت الاضافة الى المكتبة!",copyStyles:"نسخت الانماط.",copyToClipboard:"نسخ إلى الحافظة.",copyToClipboardAsPng:`تم نسخ {{exportSelection}} إلى الحافظة بصيغة PNG
|
||
({{exportColorScheme}})`,fileSaved:"تم حفظ الملف.",fileSavedToFilename:"حفظ باسم {filename}",canvas:"لوحة الرسم",selection:"العنصر المحدد",pasteAsSingleElement:`استخدم {{shortcut}} للصق كعنصر واحد،
|
||
أو لصق في محرر نص موجود`,unableToEmbed:"تضمين هذا الرابط غير مسموح حاليًا. افتح بلاغاً على GitHub لطلب عنوان Url القائمة البيضاء",unrecognizedLinkFormat:"الرابط الذي ضمنته لا يتطابق مع التنسيق المتوقع. الرجاء محاولة لصق النص 'المضمن' المُزوَد من موقع المصدر"},eye={transparent:"شفاف",black:"أسود",white:"أبيض",red:"أحمر",pink:"وردي",grape:"عنبي",violet:"بنفسجي",gray:"رمادي",blue:"أزرق",cyan:"سماوي",teal:"أزرق مخضر",green:"أخضر",yellow:"أصفر",orange:"برتقالي",bronze:"برونزي"},tye={app:{center_heading:"جميع بياناتك محفوظة محليا في المتصفح الخاص بك.",center_heading_plus:"هل تريد الذهاب إلى Excalidraw+ بدلاً من ذلك؟",menuHint:"التصدير والتفضيلات واللغات ..."},defaults:{menuHint:"التصدير والتفضيلات وغيرها...",center_heading:"الرسم البياني التصويري. بشكل مبسط.",toolbarHint:"اختر أداة و ابدأ الرسم!",helpHint:"الاختصارات و المساعدة"}},rye={mostUsedCustomColors:"الألوان المخصصة الأكثر استخداما",colors:"الألوان",shades:"الدرجات",hexCode:"رمز Hex",noShades:"لا تتوفر درجات لهذا اللون"},iye={action:{exportToImage:{title:"تصدير كصورة",button:"تصدير كصورة",description:"تصدير بيانات المشهد إلى ملف يمكنك الاستيراد منه لاحقاً."},saveToDisk:{title:"حفظ الملف للجهاز",button:"حفظ الملف للجهاز",description:"تصدير بيانات المشهد إلى ملف يمكنك الاستيراد منه لاحقاً."},excalidrawPlus:{title:"Excalidraw+",button:"تصدير إلى Excalidraw+",description:"حفظ المشهد إلى مساحة العمل +Excalidraw الخاصة بك."}},modal:{loadFromFile:{title:"تحميل من ملف",button:"تحميل من ملف",description:"سيتم التحميل من الملف <bold>استبدال المحتوى الموجود</bold>.<br></br>يمكنك النسخ الاحتياطي لرسمك أولاً باستخدام أحد الخيارات أدناه."},shareableLink:{title:"تحميل من رابط",button:"استبدال محتواي",description:"سيتسبب تحميل رسمة خارجية <bold>باستبدال محتواك الموجود حالياً</bold>.<br></br>بإمكانك إجراء النسخ الاحتياطي لرسمتك الحالية باستخدام أحد الخيارات أدناه."}}},uye={title:"",button:"",description:"",syntax:"",preview:""},fcr={labels:RDe,library:NDe,buttons:GDe,alerts:UDe,errors:MDe,toolBar:TDe,headings:YDe,hints:HDe,canvasError:KDe,errorSplash:JDe,roomDialog:ODe,errorDialog:PDe,exportDialog:_De,helpDialog:WDe,clearCanvasDialog:qDe,publishDialog:zDe,publishSuccessDialog:ZDe,confirmDialog:VDe,imageExportDialog:jDe,encrypted:XDe,stats:$De,toast:Aye,colors:eye,welcomeScreen:tye,colorPicker:rye,overwriteConfirm:iye,mermaid:uye}});var Gye={};yt(Gye,{alerts:()=>gye,buttons:()=>lye,canvasError:()=>dye,clearCanvasDialog:()=>mye,colorPicker:()=>Lye,colors:()=>xye,confirmDialog:()=>wye,default:()=>mcr,encrypted:()=>vye,errorDialog:()=>Qye,errorSplash:()=>Iye,errors:()=>cye,exportDialog:()=>pye,headings:()=>Bye,helpDialog:()=>fye,hints:()=>Eye,imageExportDialog:()=>bye,labels:()=>oye,library:()=>sye,mermaid:()=>Nye,overwriteConfirm:()=>Rye,publishDialog:()=>Dye,publishSuccessDialog:()=>yye,roomDialog:()=>hye,stats:()=>kye,toast:()=>Fye,toolBar:()=>Cye,welcomeScreen:()=>Sye});var oye,sye,lye,gye,cye,Cye,Bye,Eye,dye,Iye,hye,Qye,pye,fye,mye,Dye,yye,wye,bye,vye,kye,Fye,xye,Sye,Lye,Rye,Nye,mcr;var Uye=P(()=>{qt();oye={paste:"Yapışdır",pasteAsPlaintext:"Düz mətn kimi yapışdırın",pasteCharts:"Diaqramları yapışdırın",selectAll:"Hamısını seç",multiSelect:"Seçimə element əlavə edin",moveCanvas:"Kanvası köçürün",cut:"Kəs",copy:"Kopyala",copyAsPng:"PNG olaraq panoya kopyala",copyAsSvg:"SVG olaraq panoya kopyala",copyText:"Mətn olaraq panoya kopyala",copySource:"",convertToCode:"",bringForward:"Önə daşı",sendToBack:"Geriyə göndərin",bringToFront:"Önə gətirin",sendBackward:"Geriyə göndərin",delete:"Sil",copyStyles:"Stilləri kopyalayın",pasteStyles:"Stilləri yapışdırın",stroke:"Strok rəngi",background:"Arxa fon",fill:"Doldur",strokeWidth:"Strok eni",strokeStyle:"Strok stili",strokeStyle_solid:"Solid",strokeStyle_dashed:"Kəsik",strokeStyle_dotted:"Nöqtəli",sloppiness:"Səliqəsizlik",opacity:"Şəffaflıq",textAlign:"Mətni uyğunlaşdır",edges:"Kənarlar",sharp:"Kəskin",round:"Dəyirmi",arrowheads:"Ox ucları",arrowhead_none:"Heç biri",arrowhead_arrow:"Ox",arrowhead_bar:"Çubuq",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Üçbucaq",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Şrift ölçüsü",fontFamily:"Şrift qrupu",addWatermark:'"Made with Excalidraw" əlavə et',handDrawn:"Əllə çəkilmiş",normal:"Normal",code:"Kod",small:"Kiçik",medium:"Orta",large:"Böyük",veryLarge:"Çox böyük",solid:"Solid",hachure:"Ştrix",zigzag:"Ziqzaq",crossHatch:"Çarpaz dəlik",thin:"İncə",bold:"Qalın",left:"Sol",center:"Mərkəz",right:"Sağ",extraBold:"Ekstra qalın",architect:"Memar",artist:"Rəssam",cartoonist:"Karikaturaçı",fileTitle:"Fayl adı",colorPicker:"Rəng seçən",canvasColors:"Kanvas üzərində istifadə olunur",canvasBackground:"Kanvas arxa fonu",drawingCanvas:"Kanvas çəkmək",layers:"Qatlar",actions:"Hərəkətlər",language:"Dil",liveCollaboration:"Canlı əməkdaşlıq...",duplicateSelection:"Dublikat",untitled:"Başlıqsız",name:"Ad",yourName:"Adınız",madeWithExcalidraw:"Excalidraw ilə hazırlanmışdır",group:"Qrup şəklində seçim",ungroup:"Qrupsuz seçim",collaborators:"",showGrid:"",addToLibrary:"",removeFromLibrary:"",libraryLoadingMessage:"",libraries:"",loadingScene:"",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},sye={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},lye={clearReset:"",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"",selectLanguage:"",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"",done:"",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},gye={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},cye={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Cye={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},Bye={canvasActions:"",selectedShapeActions:"",shapes:""},Eye={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},dye={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},Iye={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},hye={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},Qye={title:""},pye={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},fye={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},mye={title:""},Dye={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},yye={title:"",content:""},wye={resetLibrary:"",removeItemsFromLib:""},bye={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},vye={tooltip:"",link:""},kye={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},Fye={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},xye={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},Sye={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},Lye={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Rye={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Nye={title:"",button:"",description:"",syntax:"",preview:""},mcr={labels:oye,library:sye,buttons:lye,alerts:gye,errors:cye,toolBar:Cye,headings:Bye,hints:Eye,canvasError:dye,errorSplash:Iye,roomDialog:hye,errorDialog:Qye,exportDialog:pye,helpDialog:fye,clearCanvasDialog:mye,publishDialog:Dye,publishSuccessDialog:yye,confirmDialog:wye,imageExportDialog:bye,encrypted:vye,stats:kye,toast:Fye,colors:xye,welcomeScreen:Sye,colorPicker:Lye,overwriteConfirm:Rye,mermaid:Nye}});var lwe={};yt(lwe,{alerts:()=>Hye,buttons:()=>Yye,canvasError:()=>_ye,clearCanvasDialog:()=>jye,colorPicker:()=>nwe,colors:()=>uwe,confirmDialog:()=>Awe,default:()=>Dcr,encrypted:()=>twe,errorDialog:()=>zye,errorSplash:()=>Wye,errors:()=>Kye,exportDialog:()=>Zye,headings:()=>Oye,helpDialog:()=>Vye,hints:()=>Pye,imageExportDialog:()=>ewe,labels:()=>Mye,library:()=>Tye,mermaid:()=>swe,overwriteConfirm:()=>owe,publishDialog:()=>Xye,publishSuccessDialog:()=>$ye,roomDialog:()=>qye,stats:()=>rwe,toast:()=>iwe,toolBar:()=>Jye,welcomeScreen:()=>awe});var Mye,Tye,Yye,Hye,Kye,Jye,Oye,Pye,_ye,Wye,qye,zye,Zye,Vye,jye,Xye,$ye,Awe,ewe,twe,rwe,iwe,uwe,awe,nwe,owe,swe,Dcr;var gwe=P(()=>{qt();Mye={paste:"Постави",pasteAsPlaintext:"Постави като обикновен текст",pasteCharts:"Постави графики",selectAll:"Маркирай всичко",multiSelect:"Добави елемент към селекция",moveCanvas:"Премести платно",cut:"Изрежи",copy:"Копирай",copyAsPng:"Копиране в клипборда",copyAsSvg:"Копирано в клипборда като SVG",copyText:"",copySource:"",convertToCode:"",bringForward:"Преместване напред",sendToBack:"Изнасяне назад",bringToFront:"Изнасяне отпред",sendBackward:"Изпрати отзад",delete:"Изтрий",copyStyles:"Копирайте стилове",pasteStyles:"Постави стилове",stroke:"Щрих",background:"Фон",fill:"Наситеност",strokeWidth:"Ширина на щриха",strokeStyle:"Стил на линия",strokeStyle_solid:"Плътен",strokeStyle_dashed:"Пунктир",strokeStyle_dotted:"Пунктирано",sloppiness:"Небрежност",opacity:"Прозрачност",textAlign:"Подравняване на текста",edges:"Крайща",sharp:"Остър",round:"Закръглено",arrowheads:"Стрелки",arrowhead_none:"Без",arrowhead_arrow:"Стрелка",arrowhead_bar:"Връх на стрелката",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Триъгълник",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Размер на шрифта",fontFamily:"Семейство шрифтове",addWatermark:'Добави "Направено с Excalidraw"',handDrawn:"Нарисувано на ръка",normal:"Нормален",code:"Код",small:"Малък",medium:"Среден",large:"Голям",veryLarge:"Много голям",solid:"Солиден",hachure:"Хералдика",zigzag:"Зигзаг",crossHatch:"Двойно-пресечено",thin:"Тънък",bold:"Ясно очертан",left:"Ляво",center:"Център",right:"Дясно",extraBold:"Много ясно очертан",architect:"Архитект",artist:"Художник",cartoonist:"Карикатурист",fileTitle:"Име на файл",colorPicker:"Избор на цвят",canvasColors:"Използван на платно",canvasBackground:"Фон на платно",drawingCanvas:"Платно за рисуване",layers:"Слоеве",actions:"Действия",language:"Език",liveCollaboration:"",duplicateSelection:"Дублирай",untitled:"Неозаглавено",name:"Име",yourName:"Вашето име",madeWithExcalidraw:"Направено с Excalidraw",group:"Групирай селекцията",ungroup:"Спри групирането на селекцията",collaborators:"Сътрудници",showGrid:"Показване на мрежа",addToLibrary:"Добавяне към библиотеката",removeFromLibrary:"Премахване от библиотеката",libraryLoadingMessage:"Зареждане на библиотеката…",libraries:"Разглеждане на библиотеките",loadingScene:"Зареждане на сцена…",align:"Подравняване",alignTop:"Подравняване отгоре",alignBottom:"Подравняване отдолу",alignLeft:"Подравняване отляво",alignRight:"Подравняване отдясно",centerVertically:"Центрирай вертикално",centerHorizontally:"Центрирай хоризонтално",distributeHorizontally:"Разпредели хоризонтално",distributeVertically:"Разпредели вертикално",flipHorizontal:"Хоризонтално обръщане",flipVertical:"Вертикално обръщане",viewMode:"Изглед",share:"Сподели",showStroke:"",showBackground:"",toggleTheme:"Включи тема",personalLib:"Лична Библиотека",excalidrawLib:"Excalidraw Библиотека",decreaseFontSize:"Намали размера на шрифта",increaseFontSize:"Увеличи размера на шрифта",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Редактирай линк",editEmbed:"",create:"",createEmbed:"",label:"Линк",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"Заключи",unlock:"Отключи",lockAll:"Заключи всички",unlockAll:"Отключи всички"},statusPublished:"Публикувани",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"Избери цвят от платното",textToDiagram:"",prompt:""},Tye={noItems:"Няма добавени неща все още...",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},Yye={clearReset:"Нулиране на платно",exportJSON:"",exportImage:"",export:"Запази на...",copyToClipboard:"Копиране в клипборда",save:"Запази към текущ файл",saveAs:"Запиши като",load:"Отвори",getShareableLink:"Получаване на връзка за споделяне",close:"Затвори",selectLanguage:"Избор на език",scrollBackToContent:"Превъртете обратно към съдържанието",zoomIn:"Приближаване",zoomOut:"Отдалечаване",resetZoom:"Стандартен мащаб",menu:"Меню",done:"Завършено",edit:"Редактиране",undo:"Отмяна",redo:"Повтори",resetLibrary:"Нулиране на библиотеката",createNewRoom:"Създай нова стая",fullScreen:"На цял екран",darkMode:"Тъмен режим",lightMode:"Светъл режим",zenMode:"Режим Zen",objectsSnapMode:"",exitZenMode:"Спиране на Zen режим",cancel:"Отмени",clear:"Изчисти",remove:"Премахване",embed:"",publishLibrary:"Публикувай",submit:"Изпрати",confirm:"Потвърждаване",embeddableInteractionButton:""},Hye={clearReset:"Това ще изчисти цялото платно. Сигурни ли сте?",couldNotCreateShareableLink:"Връзката не може да бъде създадена.",couldNotCreateShareableLinkTooBig:"Не може да се създаде връзка за споделяне: сцената е твърде голяма",couldNotLoadInvalidFile:"Невалиден файл не може да се зареди",importBackendFailed:"Импортирането от бекенд не беше успешно.",cannotExportEmptyCanvas:"Не може да се експортира празно платно.",couldNotCopyToClipboard:"Не можем да копираме в клипбоарда.",decryptFailed:"Данните не можаха да се дешифрират.",uploadedSecurly:"Качването е защитено с криптиране от край до край, което означава, че сървърът Excalidraw и трети страни не могат да четат съдържанието.",loadSceneOverridePrompt:"Зареждането на външна рисунка ще презапише настоящото ви съдържание. Желаете ли да продължите?",collabStopOverridePrompt:`Прекратяването на сесията ще презапише предишната, локално запазена, рисунка. Сигурни ли сте?
|
||
|
||
(Ако искате да продължите с локалната рисунка, просто затворете таба на браузъра.)`,errorAddingToLibrary:"Не можем да заредим от библиотеката",errorRemovingFromLibrary:"Не можем да премахнем елемент от библиотеката",confirmAddLibrary:"Ще се добавят {{numShapes}} фигура(и) във вашата библиотека. Сигурни ли сте?",imageDoesNotContainScene:"",cannotRestoreFromImage:"Не може да бъде възстановена сцена от този файл",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"Изтрий {{count}} елемент(а) от библиотеката?",invalidEncryptionKey:"",collabOfflineWarning:""},Kye={unsupportedFileType:"Този файлов формат не се поддържа.",imageInsertError:"",fileTooBig:"Файлът е твърде голям. Максималния допустим размер е {{maxSize}}.",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"Невалиден SVG.",cannotResolveCollabServer:"",importLibraryError:"Не можем да заредим библиотеката",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"Силно препоръчваме да изключите тази настройка. Можете да следвате <link>тези стъпки</link> за това как да го направите.",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Jye={selection:"Селекция",image:"Вмъкване на изображение",rectangle:"Правоъгълник",diamond:"Диамант",ellipse:"Елипс",arrow:"Стрелка",line:"Линия",freedraw:"Рисуване",text:"Текст",library:"Библиотека",lock:"Поддържайте избрания инструмент активен след рисуване",penMode:"",link:"",eraser:"Гума",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"Още инструменти",mermaidToExcalidraw:"",magicSettings:""},Oye={canvasActions:"Действия по платното",selectedShapeActions:"Избрани действия",shapes:"Фигури"},Pye={canvasPanning:"",linearElement:"Кликнете, за да стартирате няколко точки, плъзнете за една линия",freeDraw:"Натиснете и влачете, пуснете като сте готови",text:"Подсказка: Можете също да добавите текст като натиснете някъде два път с инструмента за селекция",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"Кликнете върху последната точка или натиснете Escape или Enter, за да завършите",lockAngle:"Можете да ограничите ъгъла, като задържите SHIFT",resize:`Може да ограничите при преоразмеряване като задържите SHIFT,
|
||
задръжте ALT за преоразмерите през центъра`,resizeImage:"",rotate:"Можете да ограничите ъглите, като държите SHIFT, докато се въртите",lineEditor_info:"",lineEditor_pointSelected:"Натиснете Delete за да изтриете точка(и), CtrlOrCmd+D за дуплициране, или извлачете за да преместите",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"Натиснете Enter, за да добавите",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},_ye={cannotShowPreview:"Невъзможност за показване на preview",canvasTooBig:"Платното е твърде голямо.",canvasTooBigTip:"Подсказка: пробвайте да приближите далечните елементи по-близко."},Wye={headingMain:"Среща грешка. Опитайте <button>презареждане на страницата.</button>",clearCanvasMessage:"Ако презареждането не работи, опитайте <button>изчистване на платното.</button>",clearCanvasCaveat:" Това ще доведе до загуба на работа ",trackedToSentry:"Грешката с идентификатор {{eventId}} беше проследен в нашата система.",openIssueMessage:"Бяхме много предпазливи да не включите информацията за вашата сцена при грешката. Ако сцената ви не е частна, моля, помислете за последващи действия на нашата <button>тракер за грешки.</button> Моля, включете информация по-долу, като я копирате и добавите в GitHub.",sceneContent:"Съдържание на сцената:"},qye={desc_intro:"Можете да поканите хора на текущата си сцена да си сътрудничат с вас.",desc_privacy:"Не се притеснявайте, сесията използва криптиране от край до край, така че каквото нарисувате ще остане частно. Дори нашият сървър няма да може да види какво предлагате.",button_startSession:"Стартирайте сесията",button_stopSession:"Стоп на сесията",desc_inProgressIntro:"Сесията за сътрудничество на живо е в ход.",desc_shareLink:"Споделете тази връзка с всеки, с когото искате да си сътрудничите:",desc_exitSession:"Спирането на сесията ще ви изключи от стаята, но ще можете да продължите да работите със сцената, локално. Имайте предвид, че това няма да засегне други хора и те все още ще могат да си сътрудничат с тяхната версия.",shareTitle:""},zye={title:"Грешка"},Zye={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"Експорт",excalidrawplus_exportError:""},Vye={blog:"Прочетете нашия блог",click:"клик",deepSelect:"",deepBoxSelect:"",curvedArrow:"Извита стрелка",curvedLine:"Извита линия",documentation:"Документация",doubleClick:"двойно-щракване",drag:"плъзнете",editor:"Редактор",editLineArrowPoints:"",editText:"",github:"Намерихте проблем? Изпратете",howto:"Следвайте нашите ръководства",or:"или",preventBinding:"Спри прилепяне на стрелките",tools:"Инструменти",shortcuts:"Клавиши за бърз достъп",textFinish:"Завърши редактиране (текстов редактор)",textNewLine:"Добави нова линия (текстов редактор)",title:"Помощ",view:"Преглед",zoomToFit:"Приближи докато се виждат всички елементи",zoomToSelection:"Приближи селекцията",toggleElementLock:"Заключи/Отключи селекция",movePageUpDown:"Премести страница нагоре/надолу",movePageLeftRight:"Премести страница наляво/надясно"},jye={title:"Изчисти платното"},Xye={title:"Публикувай библиотека",itemName:"Име",authorName:"Авторско име",githubUsername:"GitHub потребителско име",twitterUsername:"Twitter потребителско име",libraryName:"Име на библиотеката",libraryDesc:"Описание на библиотеката",website:"Уебсайт",placeholder:{authorName:"Името или потребителското Ви име",libraryName:"Име на библиотеката Ви",libraryDesc:"Описание на библиотеката ви, за да помогнете на хората да разберат приложенията ѝ",githubHandle:"",twitterHandle:"",website:""},errors:{required:"Задължително",website:"Въведете валиден URL адрес"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},$ye={title:"",content:""},Awe={resetLibrary:"Нулирай библиотека",removeItemsFromLib:""},ewe={header:"",label:{withBackground:"Фон",onlySelected:"Само избраното",darkMode:"Тъмен режим",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"Изнасяне в PNG",exportToSvg:"Изнасяне в SVG",copyPngToClipboard:"Копирай PNG в клипборда"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Копиране в клипборда"}},twe={tooltip:"Вашите рисунки са криптирани от край до край, така че сървърите на Excalidraw няма да могат да ги виждат.",link:""},rwe={angle:"Ъгъл",element:"Елемент",elements:"Елементи",height:"Височина",scene:"Сцена",selected:"Селектирано",storage:"Съхранение на данни",title:"Статистика за хакери",total:"Общо",version:"Версия",versionCopy:"Настисни за да копираш",versionNotAvailable:"Версията не е налична",width:"Широчина"},iwe={addedToLibrary:"Добавена към библиотеката",copyStyles:"Копирани стилове.",copyToClipboard:"Копирано в клипборда.",copyToClipboardAsPng:`Копира {{exportSelection}} в клипборда като PNG
|
||
({{exportColorScheme}})`,fileSaved:"Файлът е запазен.",fileSavedToFilename:"Запазен към {filename}",canvas:"платно",selection:"селекция",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},uwe={transparent:"Прозрачен",black:"Черен",white:"Бял",red:"Червен",pink:"Розов",grape:"Грозде",violet:"Виолетово",gray:"Сив",blue:"Син",cyan:"Синьозелено",teal:"Тъмно синьо-зелено",green:"Зелено",yellow:"Жълто",orange:"Оранжево",bronze:"Бронзово"},awe={app:{center_heading:"Всичките Ви данни са запазени локално в браузъра Ви.",center_heading_plus:"",menuHint:"Експорт, предпочитания, езици, ..."},defaults:{menuHint:"Експорт, предпочитания, и още...",center_heading:"Диаграми. Направени. Просто.",toolbarHint:"Изберете инструмент & Започнете да рисувате!",helpHint:"Преки пътища & помощ"}},nwe={mostUsedCustomColors:"Най-често използвани цветове",colors:"Цветове",shades:"Нюанси",hexCode:"Шестнадесетичен код",noShades:""},owe={action:{exportToImage:{title:"Изнеси като изображение",button:"Изнеси като изображение",description:""},saveToDisk:{title:"Запази към диск",button:"Запази към диск",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Експортирай към Excalidraw+",description:"Запази сцената към Excalidraw+ работното място."}},modal:{loadFromFile:{title:"Зареди от файл",button:"Зареди от файл",description:""},shareableLink:{title:"Зареди от линк",button:"Замени моето съдържание",description:""}}},swe={title:"",button:"",description:"",syntax:"",preview:""},Dcr={labels:Mye,library:Tye,buttons:Yye,alerts:Hye,errors:Kye,toolBar:Jye,headings:Oye,hints:Pye,canvasError:_ye,errorSplash:Wye,roomDialog:qye,errorDialog:zye,exportDialog:Zye,helpDialog:Vye,clearCanvasDialog:jye,publishDialog:Xye,publishSuccessDialog:$ye,confirmDialog:Awe,imageExportDialog:ewe,encrypted:twe,stats:rwe,toast:iwe,colors:uwe,welcomeScreen:awe,colorPicker:nwe,overwriteConfirm:owe,mermaid:swe}});var Ywe={};yt(Ywe,{alerts:()=>Ewe,buttons:()=>Bwe,canvasError:()=>pwe,clearCanvasDialog:()=>bwe,colorPicker:()=>Uwe,colors:()=>Nwe,confirmDialog:()=>Fwe,default:()=>ycr,encrypted:()=>Swe,errorDialog:()=>Dwe,errorSplash:()=>fwe,errors:()=>dwe,exportDialog:()=>ywe,headings:()=>hwe,helpDialog:()=>wwe,hints:()=>Qwe,imageExportDialog:()=>xwe,labels:()=>cwe,library:()=>Cwe,mermaid:()=>Twe,overwriteConfirm:()=>Mwe,publishDialog:()=>vwe,publishSuccessDialog:()=>kwe,roomDialog:()=>mwe,stats:()=>Lwe,toast:()=>Rwe,toolBar:()=>Iwe,welcomeScreen:()=>Gwe});var cwe,Cwe,Bwe,Ewe,dwe,Iwe,hwe,Qwe,pwe,fwe,mwe,Dwe,ywe,wwe,bwe,vwe,kwe,Fwe,xwe,Swe,Lwe,Rwe,Nwe,Gwe,Uwe,Mwe,Twe,ycr;var Hwe=P(()=>{qt();cwe={paste:"পেস্ট করুন",pasteAsPlaintext:"প্লেইনটেক্সট হিসাবে পেস্ট করুন",pasteCharts:"চার্ট পেস্ট করুন",selectAll:"সবটা সিলেক্ট করুন",multiSelect:"একাধিক সিলেক্ট করুন",moveCanvas:"ক্যানভাস সরান",cut:"কাট করুন",copy:"কপি করুন",copyAsPng:"পীএনজী ছবির মতন কপি করুন",copyAsSvg:"এসভীজী ছবির মতন কপি করুন",copyText:"লিখিত তথ্যের মতন কপি করুন",copySource:"",convertToCode:"",bringForward:"অধিকতর সামনে আনুন",sendToBack:"অধিকতর পিছনে নিয়ে যান",bringToFront:"সবার সামনে আনুন",sendBackward:"সবার পিছনে নিয়ে যান",delete:"মুছা",copyStyles:"ডিজাইন কপি করুন",pasteStyles:"ডিজাইন পেস্ট করুন",stroke:"রেখাংশ",background:"পটভূমি",fill:"রং",strokeWidth:"রেখাংশের বেধ",strokeStyle:"রেখাংশের ডিজাইন",strokeStyle_solid:"পুরু",strokeStyle_dashed:"পাতলা",strokeStyle_dotted:"বিন্দুবিন্দু",sloppiness:"ভ্রান্তি",opacity:"দৃশ্যমানতা",textAlign:"লেখ অনুভূমি",edges:"কোণ",sharp:"তীক্ষ্ণ",round:"গোল",arrowheads:"তীরের শীর্ষভাগ",arrowhead_none:"কিছু না",arrowhead_arrow:"তীর",arrowhead_bar:"রেখাংশ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"ত্রিভূজ",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"লেখনীর মাত্রা",fontFamily:"লেখনীর হরফ",addWatermark:"এক্সক্যালিড্র দ্বারা প্রস্তুত",handDrawn:"হাতে আঁকা",normal:"স্বাভাবিক",code:"কোড",small:"ছোট",medium:"মাঝারি",large:"বড়",veryLarge:"অনেক বড়",solid:"দৃঢ়",hachure:"ভ্রুলেখা",zigzag:"আঁকাবাঁকা",crossHatch:"ক্রস হ্যাচ",thin:"পাতলা",bold:"পুরু",left:"বাম",center:"কেন্দ্র",right:"ডান",extraBold:"অতি পুরু",architect:"স্থপতি",artist:"শিল্পী",cartoonist:"চিত্রকার",fileTitle:"ফাইলের নাম",colorPicker:"রং পছন্দ করুন",canvasColors:"ক্যানভাসের রং",canvasBackground:"ক্যানভাসের পটভূমি",drawingCanvas:"ব্যবহৃত ক্যানভাস",layers:"মাত্রা",actions:"ক্রিয়া",language:"ভাষা",liveCollaboration:"সরাসরি পারস্পরিক সহযোগিতা...",duplicateSelection:"সদৃশ সিলেক্ট",untitled:"অনামী",name:"নাম",yourName:"আপনার নাম",madeWithExcalidraw:"এক্সক্যালিড্র দ্বারা তৈরি",group:"দল গঠন করুন",ungroup:"দল বিভেদ করুন",collaborators:"সহযোগী",showGrid:"গ্রিড দেখান",addToLibrary:"সংগ্রহে যোগ করুন",removeFromLibrary:"সংগ্রহ থেকে বের করুন",libraryLoadingMessage:"সংগ্রহ তৈরি হচ্ছে",libraries:"সংগ্রহ দেখুন",loadingScene:"দৃশ্য তৈরি হচ্ছে",align:"পংক্তিবিন্যাস",alignTop:"উপর পংক্তি",alignBottom:"নিম্ন পংক্তি",alignLeft:"বাম পংক্তি",alignRight:"ডান পংক্তি",centerVertically:"উলম্ব কেন্দ্রিত",centerHorizontally:"অনুভূমিক কেন্দ্রিত",distributeHorizontally:"অনুভূমিকভাবে বিতরণ করুন",distributeVertically:"উল্লম্বভাবে বিতরণ করুন",flipHorizontal:"অনুভূমিক আবর্তন",flipVertical:"উলম্ব আবর্তন",viewMode:"দৃশ্য",share:"ভাগ করুন",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"লেখনীর মাত্রা কমান",increaseFontSize:"লেখনীর মাত্রা বাড়ান",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"লিঙ্ক সংশোধন",editEmbed:"",create:"লিঙ্ক তৈরী",createEmbed:"",label:"লিঙ্ক নামকরণ",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"আবদ্ধ করুন",unlock:"বিচ্ছিন্ন করুন",lockAll:"সব আবদ্ধ করুন",unlockAll:"সব বিচ্ছিন্ন করুন"},statusPublished:"প্রকাশিত",sidebarLock:"লক",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},Cwe={noItems:"সংগ্রহে কিছু যোগ করা হয়নি",hint_emptyLibrary:"এখানে যোগ করার জন্য ক্যানভাসে একটি বস্তু নির্বাচন করুন, অথবা নীচে, প্রকাশ্য সংগ্রহশালা থেকে একটি সংগ্রহ ইনস্টল করুন৷",hint_emptyPrivateLibrary:"এখানে যোগ করার জন্য ক্যানভাসে একটি বস্তু নির্বাচন করুন"},Bwe={clearReset:"ক্যানভাস সাফ করুন",exportJSON:"জেসন নিবদ্ধ করুন",exportImage:"",export:"",copyToClipboard:"ক্লিপবোর্ডে কপি করুন",save:"জমা করুন",saveAs:"অন্যভাবে জমা করুন",load:"",getShareableLink:"ভাগযোগ্য লিঙ্ক পান",close:"বন্ধ করুন",selectLanguage:"ভাষা চিহ্নিত করুন",scrollBackToContent:"বিষয়বস্তুতে ফেরত যান",zoomIn:"বড় করুন",zoomOut:"ছোট করুন",resetZoom:"স্বাভাবিক করুন",menu:"তালিকা",done:"সম্পন্ন",edit:"সংশোধন করুন",undo:"ফেরত যান",redo:"পুনরায় করুন",resetLibrary:"সংগ্রহ সাফ করুন",createNewRoom:"নতুন রুম বানান",fullScreen:"পূর্ণস্ক্রীন",darkMode:"ডার্ক মোড",lightMode:"লাইট মোড",zenMode:"জেন মোড",objectsSnapMode:"",exitZenMode:"জেন মোড বন্ধ করুন",cancel:"বাতিল",clear:"সাফ",remove:"বিয়োগ",embed:"",publishLibrary:"সংগ্রহ প্রকাশ করুন",submit:"জমা করুন",confirm:"নিশ্চিত করুন",embeddableInteractionButton:""},Ewe={clearReset:"এটি পুরো ক্যানভাস সাফ করবে। আপনি কি নিশ্চিত?",couldNotCreateShareableLink:"ভাগ করা যায় এমন লিঙ্ক তৈরি করা যায়নি।",couldNotCreateShareableLinkTooBig:"ভাগ করা যায় এমন লিঙ্ক তৈরি করা যায়নি: দৃশ্যটি খুব বড়",couldNotLoadInvalidFile:"অবৈধ ফাইল লোড করা যায়নি",importBackendFailed:"ব্যাকেন্ড থেকে আপলোড ব্যর্থ হয়েছে।",cannotExportEmptyCanvas:"খালি ক্যানভাস নিবদ্ধ করা যাবে না।",couldNotCopyToClipboard:"ক্লিপবোর্ডে কপি করা যায়নি।",decryptFailed:"তথ্য ডিক্রিপ্ট করা যায়নি।",uploadedSecurly:"আপলোডটি এন্ড-টু-এন্ড এনক্রিপশনের মাধ্যমে সুরক্ষিত করা হয়েছে, যার অর্থ হল এক্সক্যালিড্র সার্ভার এবং তৃতীয় পক্ষের দ্বারা পড়তে পারা সম্ভব নয়।",loadSceneOverridePrompt:"বাহ্যিক অঙ্কন লোড করা আপনার বিদ্যমান দৃশ্য প্রতিস্থাপন করবে। আপনি কি অবিরত করতে চান?",collabStopOverridePrompt:`অধিবেশন বন্ধ করা আপনার পূর্ববর্তী, স্থানীয়ভাবে সঞ্চিত অঙ্কন ওভাররাইট করবে। আপনি কি নিশ্চিত?
|
||
|
||
(যদি আপনি আপনার স্থানীয় অঙ্কন রাখতে চান, তাহলে শুধু ব্রাউজার ট্যাবটি বন্ধ করুন।)`,errorAddingToLibrary:"বস্তুটি সংগ্রহে যোগ করা যায়নি",errorRemovingFromLibrary:"বস্তুটি সংগ্রহ থেকে বিয়োগ করা যায়নি",confirmAddLibrary:"এটি আপনার সংগ্রহে {{numShapes}} আকার(গুলি) যোগ করবে। আপনি কি নিশ্চিত?",imageDoesNotContainScene:"এই ছবিতে কোনো দৃশ্যের তথ্য আছে বলে মনে হয় না৷ আপনি কি নিবদ্ধ করার সময় দৃশ্য এমবেডিং করতে সক্ষম?",cannotRestoreFromImage:"এই ফাইল থেকে দৃশ্য পুনরুদ্ধার করা যায়নি",invalidSceneUrl:"সরবরাহ করা লিঙ্ক থেকে দৃশ্য লোড করা যায়নি৷ এটি হয় বিকৃত, অথবা বৈধ এক্সক্যালিড্র জেসন তথ্য নেই৷",resetLibrary:"এটি আপনার সংগ্রহ পরিষ্কার করবে। আপনি কি নিশ্চিত?",removeItemsFromsLibrary:"সংগ্রহ থেকে {{count}} বস্তু বিয়োগ করা হবে। আপনি কি নিশ্চিত?",invalidEncryptionKey:"অবৈধ এনক্রীপশন কী।",collabOfflineWarning:""},dwe={unsupportedFileType:"অসমর্থিত ফাইল।",imageInsertError:"ছবি সন্নিবেশ করা যায়নি। পরে আবার চেষ্টা করুন...",fileTooBig:"ফাইলটি খুব বড়। সর্বাধিক অনুমোদিত আকার হল {{maxSize}}৷",svgImageInsertError:"এসভীজী ছবি সন্নিবেশ করা যায়নি। এসভীজী মার্কআপটি অবৈধ মনে হচ্ছে৷",failedToFetchImage:"",invalidSVGString:"এসভীজী মার্কআপটি অবৈধ মনে হচ্ছে৷",cannotResolveCollabServer:"কোল্যাব সার্ভারের সাথে সংযোগ করা যায়নি। পৃষ্ঠাটি পুনরায় লোড করে আবার চেষ্টা করুন।",importLibraryError:"সংগ্রহ লোড করা যায়নি",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Iwe={selection:"বাছাই",image:"চিত্র সন্নিবেশ",rectangle:"আয়তক্ষেত্র",diamond:"রুহিতন",ellipse:"উপবৃত্ত",arrow:"তীর",line:"রেখা",freedraw:"কলম",text:"লেখা",library:"সংগ্রহ",lock:"আঁকার পরে নির্বাচিত টুল সক্রিয় রাখুন",penMode:"",link:"একটি নির্বাচিত আকৃতির জন্য লিঙ্ক যোগ বা আপডেট করুন",eraser:"ঝাড়ন",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},hwe={canvasActions:"ক্যানভাস কার্যকলাপ",selectedShapeActions:"বাছাই করা আকার(গুলি)র কার্যকলাপ",shapes:"আকার(গুলি)"},Qwe={canvasPanning:"",linearElement:"একাধিক বিন্দু শুরু করতে ক্লিক করুন, একক লাইনের জন্য টেনে আনুন",freeDraw:"ক্লিক করুন এবং টেনে আনুন, আপনার কাজ শেষ হলে ছেড়ে দিন",text:"বিশেষ্য: আপনি নির্বাচন টুলের সাথে যে কোনো জায়গায় ডাবল-ক্লিক করে পাঠ্য যোগ করতে পারেন",embeddable:"",text_selected:"লেখা সম্পাদনা করতে ডাবল-ক্লিক করুন বা এন্টার টিপুন",text_editing:"লেখা সম্পাদনা শেষ করতে এসকেপ বা কন্ট্রোল/কম্যান্ড যোগে এন্টার টিপুন",linearElementMulti:"শেষ বিন্দুতে ক্লিক করুন অথবা শেষ করতে এসকেপ বা এন্টার টিপুন",lockAngle:"ঘোরানোর সময় আপনি শিফ্ট ধরে রেখে কোণ সীমাবদ্ধ করতে পারেন",resize:`আপনি আকার পরিবর্তন করার সময় শিফ্ট ধরে রেখে অনুপাতকে সীমাবদ্ধ করতে পারেন,
|
||
কেন্দ্র থেকে আকার পরিবর্তন করতে অল্ট ধরে রাখুন`,resizeImage:"আপনি শিফ্ট ধরে রেখে অবাধে আকার পরিবর্তন করতে পারেন, কেন্দ্র থেকে আকার পরিবর্তন করতে অল্ট ধরুন",rotate:"আপনি ঘোরানোর সময় শিফ্ট ধরে রেখে কোণগুলিকে সীমাবদ্ধ করতে পারেন",lineEditor_info:"",lineEditor_pointSelected:"বিন্দু(গুলি) মুছতে ডিলিট টিপুন, কন্ট্রোল/কম্যান্ড যোগে ডি টিপুন নকল করতে অথবা সরানোর জন্য টানুন",lineEditor_nothingSelected:`সম্পাদনা করার জন্য একটি বিন্দু নির্বাচন করুন (একাধিক নির্বাচন করতে শিফ্ট ধরে রাখুন),
|
||
অথবা অল্ট ধরে রাখুন এবং নতুন বিন্দু যোগ করতে ক্লিক করুন`,placeImage:"ছবিটি স্থাপন করতে ক্লিক করুন, অথবা নিজে আকার সেট করতে ক্লিক করুন এবং টেনে আনুন",publishLibrary:"আপনার নিজস্ব সংগ্রহ প্রকাশ করুন",bindTextToElement:"লেখা যোগ করতে এন্টার টিপুন",deepBoxSelect:"",eraserRevert:"মুছে ফেলার জন্য চিহ্নিত উপাদানগুলিকে ফিরিয়ে আনতে অল্ট ধরে রাখুন",firefox_clipboard_write:"",disableSnapping:""},pwe={cannotShowPreview:"প্রিভিউ দেখাতে অপারগ",canvasTooBig:"ক্যানভাস অনেক বড়।",canvasTooBigTip:"বিশেষ্য: দূরতম উপাদানগুলোকে একটু কাছাকাছি নিয়ে যাওয়ার চেষ্টা করুন।"},fwe={headingMain:"একটি ত্রুটির সম্মুখীন হয়েছে৷ চেষ্টা করুন <button>পৃষ্ঠাটি পুনরায় লোড করার।</button>",clearCanvasMessage:"যদি পুনরায় লোড করা কাজ না করে, চেষ্টা করুন <button>ক্যানভাস পরিষ্কার করার।</button>",clearCanvasCaveat:" এর ফলে কাজের ক্ষতি হবে ",trackedToSentry:"ত্রুটি {{eventId}} আমাদের সিস্টেমে ট্র্যাক করা হয়েছিল।",openIssueMessage:"আমরা ত্রুটিতে আপনার দৃশ্যের তথ্য অন্তর্ভুক্ত না করার জন্য খুব সতর্ক ছিলাম। আপনার দৃশ্য ব্যক্তিগত না হলে, আমাদের অনুসরণ করার কথা বিবেচনা করুন <button>ত্রুটি ইতিবৃত্ত।</button> অনুগ্রহ করে GitHub ইস্যুতে অনুলিপি এবং পেস্ট করে নীচের তথ্য অন্তর্ভুক্ত করুন।",sceneContent:"দৃশ্য বিষয়বস্তু:"},mwe={desc_intro:"আপনি আপনার সাথে সহযোগিতা করার জন্য আপনার বর্তমান দৃশ্যে লোকেদের আমন্ত্রণ জানাতে পারেন৷",desc_privacy:"চিন্তা করবেন না, সেশনটি এন্ড-টু-এন্ড এনক্রিপশন ব্যবহার করে, তাই আপনি যা আঁকবেন তা গোপন থাকবে। এমনকি আমাদের সার্ভার আপনি যা নিয়ে এসেছেন তা দেখতে সক্ষম হবে না।",button_startSession:"সেশন শুরু করুন",button_stopSession:"সেশন বন্ধ করুন",desc_inProgressIntro:"লাইভ-সহযোগীতার সেশন এখন চলছে।",desc_shareLink:"আপনি যার সাথে সহযোগিতা করতে চান তাদের সাথে এই লিঙ্কটি ভাগ করুন: ",desc_exitSession:"অধিবেশন বন্ধ করা আপনাকে রুম থেকে সংযোগ বিচ্ছিন্ন করবে, কিন্তু আপনি স্থানীয়ভাবে দৃশ্যের সাথে কাজ চালিয়ে যেতে সক্ষম হবেন। মনে রাখবেন যে এটি অন্য লোকেদের প্রভাবিত করবে না এবং তারা এখনও তাদের সংস্করণে সহযোগিতা করতে সক্ষম হবে।",shareTitle:"এক্সক্যালিড্র লাইভ সহযোগিতা সেশনে যোগ দিন"},Dwe={title:"ত্রুটি"},ywe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"নিবদ্ধ",excalidrawplus_exportError:""},wwe={blog:"",click:"ক্লিক",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"অথবা",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},bwe={title:""},vwe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},kwe={title:"",content:""},Fwe={resetLibrary:"",removeItemsFromLib:""},xwe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Swe={tooltip:"",link:""},Lwe={angle:"কোণ",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:"প্রস্থ"},Rwe={addedToLibrary:"সংগ্রহশালায় যুক্ত হয়েছে",copyStyles:"",copyToClipboard:"ক্লিপবোর্ডে কপি করা হয়েছে।",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"বাছাই",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},Nwe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},Gwe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},Uwe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Mwe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Twe={title:"",button:"",description:"",syntax:"",preview:""},ycr={labels:cwe,library:Cwe,buttons:Bwe,alerts:Ewe,errors:dwe,toolBar:Iwe,headings:hwe,hints:Qwe,canvasError:pwe,errorSplash:fwe,roomDialog:mwe,errorDialog:Dwe,exportDialog:ywe,helpDialog:wwe,clearCanvasDialog:bwe,publishDialog:vwe,publishSuccessDialog:kwe,confirmDialog:Fwe,imageExportDialog:xwe,encrypted:Swe,stats:Lwe,toast:Rwe,colors:Nwe,welcomeScreen:Gwe,colorPicker:Uwe,overwriteConfirm:Mwe,mermaid:Twe}});var B6e={};yt(B6e,{alerts:()=>Pwe,buttons:()=>Owe,canvasError:()=>Zwe,clearCanvasDialog:()=>e6e,colorPicker:()=>g6e,colors:()=>s6e,confirmDialog:()=>i6e,default:()=>wcr,encrypted:()=>a6e,errorDialog:()=>Xwe,errorSplash:()=>Vwe,errors:()=>_we,exportDialog:()=>$we,headings:()=>qwe,helpDialog:()=>A6e,hints:()=>zwe,imageExportDialog:()=>u6e,labels:()=>Kwe,library:()=>Jwe,mermaid:()=>C6e,overwriteConfirm:()=>c6e,publishDialog:()=>t6e,publishSuccessDialog:()=>r6e,roomDialog:()=>jwe,stats:()=>n6e,toast:()=>o6e,toolBar:()=>Wwe,welcomeScreen:()=>l6e});var Kwe,Jwe,Owe,Pwe,_we,Wwe,qwe,zwe,Zwe,Vwe,jwe,Xwe,$we,A6e,e6e,t6e,r6e,i6e,u6e,a6e,n6e,o6e,s6e,l6e,g6e,c6e,C6e,wcr;var E6e=P(()=>{qt();Kwe={paste:"Enganxa",pasteAsPlaintext:"Enganxar com a text pla",pasteCharts:"Enganxa els diagrames",selectAll:"Selecciona-ho tot",multiSelect:"Afegeix un element a la selecció",moveCanvas:"Mou el llenç",cut:"Retalla",copy:"Copia",copyAsPng:"Copia al porta-retalls com a PNG",copyAsSvg:"Copia al porta-retalls com a SVG",copyText:"Copia al porta-retalls com a text",copySource:"Copia l'origen al porta-retalls",convertToCode:"",bringForward:"Porta endavant",sendToBack:"Envia enrere",bringToFront:"Porta al davant",sendBackward:"Envia al fons",delete:"Elimina",copyStyles:"Copia els estils",pasteStyles:"Enganxa els estils",stroke:"Color del traç",background:"Color del fons",fill:"Estil del fons",strokeWidth:"Amplada del traç",strokeStyle:"Estil del traç",strokeStyle_solid:"Sòlid",strokeStyle_dashed:"Guions",strokeStyle_dotted:"Punts",sloppiness:"Estil del traç",opacity:"Opacitat",textAlign:"Alineació del text",edges:"Vores",sharp:"Agut",round:"Arrodonit",arrowheads:"Puntes de fletxa",arrowhead_none:"Cap",arrowhead_arrow:"Fletxa",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triangle",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Mida de lletra",fontFamily:"Tipus de lletra",addWatermark:"Afegeix-hi «Fet amb Excalidraw»",handDrawn:"Dibuixat a mà",normal:"Normal",code:"Codi",small:"Petit",medium:"Mitjà",large:"Gran",veryLarge:"Molt gran",solid:"Sòlid",hachure:"Ratlletes",zigzag:"",crossHatch:"Ratlletes creuades",thin:"Fi",bold:"Negreta",left:"Esquerra",center:"Centre",right:"Dreta",extraBold:"Extra negreta",architect:"Arquitecte",artist:"Artista",cartoonist:"Dibuixant",fileTitle:"Nom del fitxer",colorPicker:"Selector de colors",canvasColors:"Usat al llenç",canvasBackground:"Fons del llenç",drawingCanvas:"Llenç de dibuix",layers:"Capes",actions:"Accions",language:"Llengua",liveCollaboration:"Col·laboració en directe...",duplicateSelection:"Duplica",untitled:"Sense títol",name:"Nom",yourName:"El vostre nom",madeWithExcalidraw:"Fet amb Excalidraw",group:"Agrupa la selecció",ungroup:"Desagrupa la selecció",collaborators:"Col·laboradors",showGrid:"Mostra la graella",addToLibrary:"Afegir a la biblioteca",removeFromLibrary:"Eliminar de la biblioteca",libraryLoadingMessage:"S'està carregant la biblioteca…",libraries:"Explora les biblioteques",loadingScene:"S'està carregant l'escena…",align:"Alinea",alignTop:"Alinea a la part superior",alignBottom:"Alinea a la part inferior",alignLeft:"Alinea a l’esquerra",alignRight:"Alinea a la dreta",centerVertically:"Centra verticalment",centerHorizontally:"Centra horitzontalment",distributeHorizontally:"Distribueix horitzontalment",distributeVertically:"Distribueix verticalment",flipHorizontal:"Capgira horitzontalment",flipVertical:"Capgira verticalment",viewMode:"Mode de visualització",share:"Comparteix",showStroke:"Mostra el selector de color del traç",showBackground:"Mostra el selector de color de fons",toggleTheme:"Activa o desactiva el tema",personalLib:"Biblioteca personal",excalidrawLib:"Biblioteca d'Excalidraw",decreaseFontSize:"Redueix la mida de la lletra",increaseFontSize:"Augmenta la mida de la lletra",unbindText:"Desvincular el text",bindText:"Ajusta el text al contenidor",createContainerFromText:"",link:{edit:"Edita l'enllaç",editEmbed:"Edita l'enllaç i incrusta-ho",create:"Crea un enllaç",createEmbed:"",label:"Enllaç",labelEmbed:"",empty:"No s'ha definit cap enllaç"},lineEditor:{edit:"Editar línia",exit:"Sortir de l'editor de línia"},elementLock:{lock:"Bloca",unlock:"Desbloca",lockAll:"Bloca-ho tot",unlockAll:"Desbloca-ho tot"},statusPublished:"Publicat",sidebarLock:"Manté la barra lateral oberta",selectAllElementsInFrame:"Selecciona tots els elements del marc",removeAllElementsFromFrame:"Eliminat tots els elements del marc",eyeDropper:"",textToDiagram:"",prompt:""},Jwe={noItems:"Encara no s'hi han afegit elements...",hint_emptyLibrary:"Trieu un element o un llenç per a afegir-lo aquí, o instal·leu una biblioteca del repositori públic, més avall.",hint_emptyPrivateLibrary:"Trieu un element o un llenç per a afegir-lo aquí."},Owe={clearReset:"Neteja el llenç",exportJSON:"Exporta a un fitxer",exportImage:"Exporta la imatge...",export:"Guardar a...",copyToClipboard:"Copia al porta-retalls",save:"Desa al fitxer actual",saveAs:"Anomena i desa",load:"Obrir",getShareableLink:"Obté l'enllaç per a compartir",close:"Tanca",selectLanguage:"Trieu la llengua",scrollBackToContent:"Torna al contingut",zoomIn:"Apropa't",zoomOut:"Allunya't",resetZoom:"Restableix el zoom",menu:"Menú",done:"Fet",edit:"Edita",undo:"Desfés",redo:"Refés",resetLibrary:"Restableix la biblioteca",createNewRoom:"Crea una sala nova",fullScreen:"Pantalla completa",darkMode:"Mode fosc",lightMode:"Mode clar",zenMode:"Mode zen",objectsSnapMode:"",exitZenMode:"Surt de mode zen",cancel:"Cancel·la",clear:"Neteja",remove:"Suprimeix",embed:"",publishLibrary:"Publica",submit:"Envia",confirm:"Confirma",embeddableInteractionButton:"Feu clic per interactuar"},Pwe={clearReset:"S'esborrarà tot el llenç. N'esteu segur?",couldNotCreateShareableLink:"No s'ha pogut crear un enllaç per a compartir.",couldNotCreateShareableLinkTooBig:"No s’ha pogut crear un enllaç per a compartir: l’escena és massa gran",couldNotLoadInvalidFile:"No s'ha pogut carregar un fitxer no vàlid",importBackendFailed:"Importació fallida.",cannotExportEmptyCanvas:"No es pot exportar un llenç buit.",couldNotCopyToClipboard:"No s'ha pogut copiar al porta-retalls.",decryptFailed:"No s'ha pogut desencriptar.",uploadedSecurly:"La càrrega s'ha assegurat amb xifratge punta a punta, cosa que significa que el servidor Excalidraw i tercers no poden llegir el contingut.",loadSceneOverridePrompt:"Si carregas aquest dibuix extern, substituirá el que tens. Vols continuar?",collabStopOverridePrompt:`Aturar la sessió provocarà la sobreescriptura del dibuix previ, que hi ha desat en l'emmagatzematge local. N'esteu segur?
|
||
|
||
(Si voleu conservar el dibuix local, tanqueu la pentanya del navegador en comptes d'aturar la sessió).`,errorAddingToLibrary:"No s'ha pogut afegir l'element a la biblioteca",errorRemovingFromLibrary:"No s'ha pogut eliminar l'element de la biblioteca",confirmAddLibrary:"Això afegirà {{numShapes}} forma(es) a la vostra biblioteca. Estàs segur?",imageDoesNotContainScene:"Aquesta imatge no sembla contenir cap dada d'escena. Heu activat l'incrustació de l'escena durant l'exportació?",cannotRestoreFromImage:"L’escena no s’ha pogut restaurar des d’aquest fitxer d’imatge",invalidSceneUrl:"No s'ha pogut importar l'escena des de l'adreça URL proporcionada. Està malformada o no conté dades Excalidraw JSON vàlides.",resetLibrary:"Això buidarà la biblioteca. N'esteu segur?",removeItemsFromsLibrary:"Suprimir {{count}} element(s) de la biblioteca?",invalidEncryptionKey:"La clau d'encriptació ha de tenir 22 caràcters. La col·laboració en directe està desactivada.",collabOfflineWarning:`Sense connexió a internet disponible.
|
||
Els vostres canvis no seran guardats!`},_we={unsupportedFileType:"Tipus de fitxer no suportat.",imageInsertError:"No s'ha pogut insertar la imatge, torneu-ho a provar més tard...",fileTooBig:"El fitxer és massa gros. La mida màxima permesa és {{maxSize}}.",svgImageInsertError:"No ha estat possible inserir la imatge SVG. Les marques SVG semblen invàlides.",failedToFetchImage:"",invalidSVGString:"SVG no vàlid.",cannotResolveCollabServer:"No ha estat possible connectar amb el servidor collab. Si us plau recarregueu la pàgina i torneu a provar.",importLibraryError:"No s'ha pogut carregar la biblioteca",collabSaveFailed:"No s'ha pogut desar a la base de dades de fons. Si els problemes persisteixen, hauríeu de desar el fitxer localment per assegurar-vos que no perdeu el vostre treball.",collabSaveFailed_sizeExceeded:"No s'ha pogut desar a la base de dades de fons, sembla que el llenç és massa gran. Hauríeu de desar el fitxer localment per assegurar-vos que no perdeu el vostre treball.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"No s'ha pogut enganxar.",copyToSystemClipboardFailed:""},Wwe={selection:"Selecció",image:"Insereix imatge",rectangle:"Rectangle",diamond:"Rombe",ellipse:"El·lipse",arrow:"Fletxa",line:"Línia",freedraw:"Dibuix",text:"Text",library:"Biblioteca",lock:"Mantenir activa l'eina seleccionada desprès de dibuixar",penMode:"Mode de llapis - evita tocar",link:"Afegeix / actualitza l'enllaç per a la forma seleccionada",eraser:"Esborrador",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Mà (eina de desplaçament)",extraTools:"",mermaidToExcalidraw:"De Mermaid a Excalidraw",magicSettings:"Preferències d'IA"},qwe={canvasActions:"Accions del llenç",selectedShapeActions:"Accions per a les formes seleccionades",shapes:"Formes"},zwe={canvasPanning:"Per moure el llenç, manteniu premuda la roda del ratolí o la barra espaiadora mentre arrossegueu o utilitzeu l'eina manual",linearElement:"Feu clic per a dibuixar múltiples punts; arrossegueu per a una sola línia",freeDraw:"Feu clic i arrossegueu, deixeu anar per a finalitzar",text:"Consell: també podeu afegir text fent doble clic en qualsevol lloc amb l'eina de selecció",embeddable:"",text_selected:"Feu doble clic o premeu Retorn per a editar el text",text_editing:"Premeu Escapada o Ctrl+Retorn (o Ordre+Retorn) per a finalitzar l'edició",linearElementMulti:"Feu clic a l'ultim punt, o pitgeu Esc o Retorn per a finalitzar",lockAngle:"Per restringir els angles, mantenir premut el majúscul (SHIFT)",resize:"Per restringir les proporcions mentres es canvia la mida, mantenir premut el majúscul (SHIFT); per canviar la mida des del centre, mantenir premut ALT",resizeImage:`Podeu redimensionar lliurement prement MAJÚSCULA;
|
||
per a redimensionar des del centre, premeu ALT`,rotate:"Per restringir els angles mentre gira, mantenir premut el majúscul (SHIFT)",lineEditor_info:"Mantingueu premut Ctrl o Cmd i feu doble clic o premeu Ctrl o Cmd + Retorn per editar els punts",lineEditor_pointSelected:"Premeu Suprimir per a eliminar el(s) punt(s), CtrlOrCmd+D per a duplicar-lo, o arrossegueu-lo per a moure'l",lineEditor_nothingSelected:`Seleccioneu un punt per a editar-lo (premeu SHIFT si voleu
|
||
selecció múltiple), o manteniu Alt i feu clic per a afegir més punts`,placeImage:"Feu clic per a col·locar la imatge o clic i arrossegar per a establir-ne la mida manualment",publishLibrary:"Publiqueu la vostra pròpia llibreria",bindTextToElement:"Premeu enter per a afegir-hi text",deepBoxSelect:"Manteniu CtrlOrCmd per a selecció profunda, i per a evitar l'arrossegament",eraserRevert:"Mantingueu premuda Alt per a revertir els elements seleccionats per a esborrar",firefox_clipboard_write:'És probable que aquesta funció es pugui activar posant la marca "dom.events.asyncClipboard.clipboardItem" a "true". Per canviar les marques del navegador al Firefox, visiteu la pàgina "about:config".',disableSnapping:""},Zwe={cannotShowPreview:"No es pot mostrar la previsualització",canvasTooBig:"Pot ser que el llenç sigui massa gran.",canvasTooBigTip:"Consell: proveu d’acostar una mica els elements més allunyats."},Vwe={headingMain:"S'ha produït un error. Proveu <button>recarregar la pàgina.</button>",clearCanvasMessage:"Si la recàrrega no funciona, proveu <button>esborrar el llenç.</button>",clearCanvasCaveat:" Això resultarà en la pèrdua de feina ",trackedToSentry:"L'error amb l'identificador {{eventId}} s'ha rastrejat en el nostre sistema.",openIssueMessage:"Anàvem amb molta cura de no incloure la informació de la vostra escena en l'error. Si l'escena no és privada, podeu fer-ne el seguiment al nostre <button>rastrejador d'errors.</button> Incloeu la informació a continuació copiant i enganxant a GitHub Issues.",sceneContent:"Contingut de l'escena:"},jwe={desc_intro:"Podeu convidar persones a la vostra escena actual a col·laborar amb vós.",desc_privacy:"No us preocupeu, la sessió utilitza el xifratge de punta a punta, de manera que qualsevol cosa que dibuixeu romandrà privada. Ni tan sols el nostre servidor podrà veure què feu.",button_startSession:"Inicia la sessió",button_stopSession:"Atura la sessió",desc_inProgressIntro:"La sessió de col·laboració en directe està en marxa.",desc_shareLink:"Comparteix aquest enllaç amb qualsevol persona amb qui vulgueu col·laborar:",desc_exitSession:"Si atureu la sessió, us desconectareu de la sala, però podreu continuar treballant amb el dibuix localment. Tingues en compte que això no afectarà a altres persones, i encara podran col·laborar en la seva versió.",shareTitle:"Uniu-vos a una sessió de col·laboració en directe a Excalidraw"},Xwe={title:"Error"},$we={disk_title:"Desa al disc",disk_details:"Exporta les dades de l'escena a un fitxer que després podreu importar.",disk_button:"Desa en un fitxer",link_title:"Enllaç per a compartir",link_details:"Exporta com a un enllaç de només lectura.",link_button:"Exporta a un enllaç",excalidrawplus_description:"Desa l'escena en el vostre espai de treball Excalidraw+.",excalidrawplus_button:"Exporta",excalidrawplus_exportError:"No és possible exportar a Excalidraw+ ara mateix..."},A6e={blog:"Llegiu el nostre blog",click:"clic",deepSelect:"Selecció profunda",deepBoxSelect:"Seleccioneu profundament dins del quadre i eviteu arrossegar",curvedArrow:"Fletxa corba",curvedLine:"Línia corba",documentation:"Documentació",doubleClick:"doble clic",drag:"arrossega",editor:"Editor",editLineArrowPoints:"",editText:"",github:"Hi heu trobat un problema? Informeu-ne",howto:"Seguiu les nostres guies",or:"o",preventBinding:"Prevenir vinculació de la fletxa",tools:"Eines",shortcuts:"Dreceres de teclat",textFinish:"Finalitza l'edició (editor de text)",textNewLine:"Afegeix una línia nova (editor de text)",title:"Ajuda",view:"Visualització",zoomToFit:"Zoom per veure tots els elements",zoomToSelection:"Zoom per veure la selecció",toggleElementLock:"Blocar/desblocar la selecció",movePageUpDown:"Mou la pàgina cap amunt/a baix",movePageLeftRight:"Mou la pàgina cap a l'esquerra/dreta"},e6e={title:"Neteja el llenç"},t6e={title:"Publica la biblioteca",itemName:"Nom de l'element",authorName:"Nom de l'autor/a",githubUsername:"Nom d'usuari de GitHub",twitterUsername:"Nom d'usuari de Twitter",libraryName:"Nom de la biblioteca",libraryDesc:"Descripció de la biblioteca",website:"Lloc web",placeholder:{authorName:"Nom o usuari",libraryName:"Nom de la vostra biblioteca",libraryDesc:"Descripció de la biblioteca per a ajudar a la gent a entendre'n el funcionament",githubHandle:"Identificador de GitHub (opcional), per tal que pugueu editar la biblioteca una vegada enviada per a ser revisada",twitterHandle:"Usuari de twitter (opcional), per tal que puguem donar-vos crèdit quan fem la promoció a Twitter",website:"Enllaç al vostre lloc web personal o a qualsevol altre (opcional)"},errors:{required:"Requerit",website:"Introduïu una URL vàlida"},noteDescription:"Envieu la vostra biblioteca perquè sigui inclosa al <link>repositori públic</link>per tal que altres persones puguin fer-ne ús en els seus dibuixos.",noteGuidelines:"La biblioteca ha de ser aprovada manualment. Si us plau, llegiu les <link>directrius</link> abans d'enviar-hi res. Necessitareu un compte de GitHub per a comunicar i fer-hi canvis si cal, però no és requisit imprescindible.",noteLicense:"Quan l'envieu, accepteu que la biblioteca sigui publicada sota la <link>llicència MIT, </link>que, en resum, vol dir que qualsevol persona pot fer-ne ús sense restriccions.",noteItems:"Cada element de la biblioteca ha de tenir el seu propi nom per tal que sigui filtrable. S'hi inclouran els elements següents:",atleastOneLibItem:"Si us plau, seleccioneu si més no un element de la biblioteca per a començar",republishWarning:"Nota: alguns dels elements seleccionats s'han marcat com a publicats/enviats. Només hauríeu de reenviar elements quan actualitzeu una biblioteca existent."},r6e={title:"Biblioteca enviada",content:"Gràcies, {{authorName}}. La vostra biblioteca ha estat enviada per a ser revisada. Podeu comprovar-ne l'estat<link>aquí</link>"},i6e={resetLibrary:"Restableix la biblioteca",removeItemsFromLib:"Suprimeix els elements seleccionats de la llibreria"},u6e={header:"",label:{withBackground:"",onlySelected:"Només els seleccionats",darkMode:"Mode fosc",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"Exporta a PNG",exportToSvg:"Exporta a SVG",copyPngToClipboard:"Copia el PNG al porta-retalls"},button:{exportToPng:"PNG",exportToSvg:"",copyPngToClipboard:""}},a6e={tooltip:"Els vostres dibuixos estan xifrats de punta a punta de manera que els servidors d’Excalidraw no els veuran mai.",link:"Article del blog sobre encriptació d'extrem a extrem a Excalidraw"},n6e={angle:"Angle",element:"Element",elements:"Elements",height:"Altura",scene:"Escena",selected:"Seleccionat",storage:"Emmagatzematge",title:"Estadístiques per nerds",total:"Total",version:"Versió",versionCopy:"Feu clic per a copiar",versionNotAvailable:"Versió no disponible",width:"Amplada"},o6e={addedToLibrary:"Afegit a la biblioteca",copyStyles:"S'han copiat els estils.",copyToClipboard:"S'ha copiat al porta-retalls.",copyToClipboardAsPng:`S'ha copiat {{exportSelection}} al porta-retalls en format PNG
|
||
({{exportColorScheme}})`,fileSaved:"S'ha desat el fitxer.",fileSavedToFilename:"S'ha desat a {filename}",canvas:"el llenç",selection:"la selecció",pasteAsSingleElement:`Fer servir {{shortcut}} per enganxar com un sol element,
|
||
o enganxeu-lo en un editor de text existent`,unableToEmbed:"",unrecognizedLinkFormat:""},s6e={transparent:"Transparent",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"Verd",yellow:"Groc",orange:"Taronja",bronze:"Bronze"},l6e={app:{center_heading:"Totes les vostres dades es guarden localment al vostre navegador.",center_heading_plus:"Vols anar a Excalidraw+ en comptes?",menuHint:"Exportar, preferències, llenguatges..."},defaults:{menuHint:"Exportar, preferències i més...",center_heading:"Diagrames. Fer. Simple.",toolbarHint:"Selecciona una eina i comença a dibuixar!",helpHint:"Dreceres i ajuda"}},g6e={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},c6e={action:{exportToImage:{title:"Exporta com a imatge",button:"Exporta com a imatge",description:""},saveToDisk:{title:"Desa al disc",button:"Desa al disc",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"Carrega des d'un fitxer",button:"Carrega des d'un fitxer",description:""},shareableLink:{title:"Carrega des d'un enllaç",button:"",description:""}}},C6e={title:"De Mermaid a Excalidraw",button:"Insereix",description:"",syntax:"Sintaxi de Mermaid",preview:"Previsualització"},wcr={labels:Kwe,library:Jwe,buttons:Owe,alerts:Pwe,errors:_we,toolBar:Wwe,headings:qwe,hints:zwe,canvasError:Zwe,errorSplash:Vwe,roomDialog:jwe,errorDialog:Xwe,exportDialog:$we,helpDialog:A6e,clearCanvasDialog:e6e,publishDialog:t6e,publishSuccessDialog:r6e,confirmDialog:i6e,imageExportDialog:u6e,encrypted:a6e,stats:n6e,toast:o6e,colors:s6e,welcomeScreen:l6e,colorPicker:g6e,overwriteConfirm:c6e,mermaid:C6e}});var O6e={};yt(O6e,{alerts:()=>Q6e,buttons:()=>h6e,canvasError:()=>y6e,clearCanvasDialog:()=>x6e,colorPicker:()=>H6e,colors:()=>T6e,confirmDialog:()=>R6e,default:()=>bcr,encrypted:()=>G6e,errorDialog:()=>v6e,errorSplash:()=>w6e,errors:()=>p6e,exportDialog:()=>k6e,headings:()=>m6e,helpDialog:()=>F6e,hints:()=>D6e,imageExportDialog:()=>N6e,labels:()=>d6e,library:()=>I6e,mermaid:()=>J6e,overwriteConfirm:()=>K6e,publishDialog:()=>S6e,publishSuccessDialog:()=>L6e,roomDialog:()=>b6e,stats:()=>U6e,toast:()=>M6e,toolBar:()=>f6e,welcomeScreen:()=>Y6e});var d6e,I6e,h6e,Q6e,p6e,f6e,m6e,D6e,y6e,w6e,b6e,v6e,k6e,F6e,x6e,S6e,L6e,R6e,N6e,G6e,U6e,M6e,T6e,Y6e,H6e,K6e,J6e,bcr;var P6e=P(()=>{qt();d6e={paste:"Vložit",pasteAsPlaintext:"Vložit jako prostý text",pasteCharts:"Vložit grafy",selectAll:"Vybrat vše",multiSelect:"Přidat prvek do výběru",moveCanvas:"Posunout plátno",cut:"Vyjmout",copy:"Kopírovat",copyAsPng:"Zkopírovat do schránky jako PNG",copyAsSvg:"Zkopírovat do schránky jako SVG",copyText:"Zkopírovat do schránky jako text",copySource:"",convertToCode:"",bringForward:"Přenést blíž",sendToBack:"Přenést do pozadí",bringToFront:"Přenést do popředí",sendBackward:"Přenést dál",delete:"Smazat",copyStyles:"Kopírovat styly",pasteStyles:"Vložit styly",stroke:"Obrys",background:"Pozadí",fill:"Výplň",strokeWidth:"Tloušťka tahu",strokeStyle:"Styl tahu",strokeStyle_solid:"Plný",strokeStyle_dashed:"Čárkovaný",strokeStyle_dotted:"Tečkovaný",sloppiness:"Stylizace",opacity:"Průhlednost",textAlign:"Zarovnání textu",edges:"Hrany",sharp:"Ostré",round:"Zaoblené",arrowheads:"Styl šipky",arrowhead_none:"Žádný",arrowhead_arrow:"Šipka",arrowhead_bar:"Kóta",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trojúhelník",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Velikost písma",fontFamily:"Písmo",addWatermark:'Přidat "Vyrobeno s Excalidraw"',handDrawn:"Od ruky",normal:"Normální",code:"Kód",small:"Malé",medium:"Střední",large:"Velké",veryLarge:"Velmi velké",solid:"Plný",hachure:"Hachure",zigzag:"Klikatě",crossHatch:"Křížový šrafování",thin:"Tenký",bold:"Tlustý",left:"Vlevo",center:"Na střed",right:"Vpravo",extraBold:"Extra tlustý",architect:"Architekt",artist:"Umělec",cartoonist:"Kartoonista",fileTitle:"Název souboru",colorPicker:"Výběr barvy",canvasColors:"Použito na plátně",canvasBackground:"Pozadí plátna",drawingCanvas:"Kreslicí plátno",layers:"Vrstvy",actions:"Akce",language:"Jazyk",liveCollaboration:"Živá spolupráce...",duplicateSelection:"Duplikovat",untitled:"Bez názvu",name:"Název",yourName:"Vaše jméno",madeWithExcalidraw:"Vytvořeno v Excalidraw",group:"Sloučit výběr do skupiny",ungroup:"Zrušit sloučení skupiny",collaborators:"Spolupracovníci",showGrid:"Zobrazit mřížku",addToLibrary:"Přidat do knihovny",removeFromLibrary:"Odebrat z knihovny",libraryLoadingMessage:"Načítání knihovny…",libraries:"Procházet knihovny",loadingScene:"Načítání scény…",align:"Zarovnání",alignTop:"Zarovnat nahoru",alignBottom:"Zarovnat dolů",alignLeft:"Zarovnat vlevo",alignRight:"Zarovnejte vpravo",centerVertically:"Vycentrovat svisle",centerHorizontally:"Vycentrovat vodorovně",distributeHorizontally:"Rozložit horizontálně",distributeVertically:"Rozložit svisle",flipHorizontal:"Převrátit vodorovně",flipVertical:"Převrátit svisle",viewMode:"Náhled",share:"Sdílet",showStroke:"Zobrazit výběr barvy",showBackground:"Zobrazit výběr barev pozadí",toggleTheme:"Přepnout tmavý řežim",personalLib:"Osobní knihovna",excalidrawLib:"Exkalidraw knihovna",decreaseFontSize:"Zmenšit písmo",increaseFontSize:"Zvětšit písmo",unbindText:"Zrušit vazbu textu",bindText:"Vázat text s kontejnerem",createContainerFromText:"Zabalit text do kontejneru",link:{edit:"Upravit odkaz",editEmbed:"",create:"Vytvořit odkaz",createEmbed:"",label:"Odkaz",labelEmbed:"",empty:""},lineEditor:{edit:"Upravit čáru",exit:"Ukončit editor řádků"},elementLock:{lock:"Uzamknout",unlock:"Odemknout",lockAll:"Uzamknout vše",unlockAll:"Odemknout vše"},statusPublished:"Zveřejněno",sidebarLock:"Ponechat postranní panel otevřený",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"Vyberte barvu z plátna",textToDiagram:"",prompt:""},I6e={noItems:"Dosud neexistují žádné položky...",hint_emptyLibrary:"Vyberte položku na plátně a přidejte ji sem nebo nainstalujte knihovnu z veřejného úložiště níže.",hint_emptyPrivateLibrary:"Vyberte položku na plátně a přidejte ji sem."},h6e={clearReset:"Resetovat plátno",exportJSON:"Exportovat do souboru",exportImage:"Exportovat obrázek...",export:"Uložit jako...",copyToClipboard:"Kopírovat do schránky",save:"Uložit do aktuálního souboru",saveAs:"Uložit jako",load:"Otevřít",getShareableLink:"Získat odkaz pro sdílení",close:"Zavřít",selectLanguage:"Zvolit jazyk",scrollBackToContent:"Přejít zpět na obsah",zoomIn:"Přiblížit",zoomOut:"Oddálit",resetZoom:"Resetovat přiblížení",menu:"Menu",done:"Hotovo",edit:"Upravit",undo:"Zpět",redo:"Znovu",resetLibrary:"Obnovit knihovnu",createNewRoom:"Vytvořit novou místnost",fullScreen:"Celá obrazovka",darkMode:"Tmavý režim",lightMode:"Světlý režim",zenMode:"Zen mód",objectsSnapMode:"",exitZenMode:"Opustit zen mód",cancel:"Zrušit",clear:"Vyčistit",remove:"Odstranit",embed:"",publishLibrary:"Zveřejnit",submit:"Odeslat",confirm:"Potvrdit",embeddableInteractionButton:""},Q6e={clearReset:"Toto vymaže celé plátno. Jste si jisti?",couldNotCreateShareableLink:"Nepodařilo se vytvořit sdílitelný odkaz.",couldNotCreateShareableLinkTooBig:"Nepodařilo se vytvořit sdílený odkaz: scéna je příliš velká",couldNotLoadInvalidFile:"Nepodařilo se načíst neplatný soubor",importBackendFailed:"Import z backendu se nezdařil.",cannotExportEmptyCanvas:"Nelze exportovat prázdné plátno.",couldNotCopyToClipboard:"Nelze zkopírovat do schránky.",decryptFailed:"Nelze dešifrovat data.",uploadedSecurly:"Nahrávání je zabezpečeno koncovým šifrováním, což znamená, že server Excalidraw ani třetí strany nemohou obsah přečíst.",loadSceneOverridePrompt:"Načítání externího výkresu nahradí váš existující obsah. Přejete si pokračovat?",collabStopOverridePrompt:`Zastavení relace přepíše vaše předchozí, lokálně uložené kresby. Jste si jisti?
|
||
|
||
(Pokud chcete zachovat místní kresbu, jednoduše zavřete kartu prohlížeče)`,errorAddingToLibrary:"Položku nelze přidat do knihovny",errorRemovingFromLibrary:"Položku nelze odstranit z knihovny",confirmAddLibrary:"Tímto přidáte {{numShapes}} tvarů do tvé knihovny. Jste si jisti?",imageDoesNotContainScene:"Zdá se, že tento obrázek neobsahuje žádná data o scéně. Zapnuli jste při exportu vkládání scény?",cannotRestoreFromImage:"Scénu nelze obnovit z tohoto souboru obrázku",invalidSceneUrl:"Nelze importovat scénu z zadané URL. Je buď poškozená, nebo neobsahuje platná JSON data Excalidraw.",resetLibrary:"Tímto vymažete vaši knihovnu. Jste si jisti?",removeItemsFromsLibrary:"Smazat {{count}} položek z knihovny?",invalidEncryptionKey:"Šifrovací klíč musí mít 22 znaků. Live spolupráce je zakázána.",collabOfflineWarning:`Není k dispozici žádné internetové připojení.
|
||
Vaše změny nebudou uloženy!`},p6e={unsupportedFileType:"Nepodporovaný typ souboru.",imageInsertError:"Nelze vložit obrázek. Zkuste to později...",fileTooBig:"Soubor je příliš velký. Maximální povolená velikost je {{maxSize}}.",svgImageInsertError:"Nelze vložit SVG obrázek. Značení SVG je neplatné.",failedToFetchImage:"",invalidSVGString:"Neplatný SVG.",cannotResolveCollabServer:"Nelze se připojit ke sdílenému serveru. Prosím obnovte stránku a zkuste to znovu.",importLibraryError:"Nelze načíst knihovnu",collabSaveFailed:"Nelze uložit do databáze na serveru. Pokud problémy přetrvávají, měli byste uložit soubor lokálně, abyste se ujistili, že neztratíte svou práci.",collabSaveFailed_sizeExceeded:"Nelze uložit do databáze na serveru, plátno se zdá být příliš velké. Měli byste uložit soubor lokálně, abyste se ujistili, že neztratíte svou práci.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Vypadá to, že používáte Brave prohlížeč s povoleným nastavením <bold>Aggressively Block Fingerprinting</bold>.",line2:"To by mohlo vést k narušení <bold>Textových elementů</bold> ve vašich výkresech.",line3:"Důrazně doporučujeme zakázat toto nastavení. Můžete sledovat <link>tyto kroky</link> jak to udělat.",line4:"Pokud vypnutí tohoto nastavení neopravuje zobrazení textových prvků, prosím, otevřete <issueLink>problém</issueLink> na našem GitHubu, nebo nám napište na <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},f6e={selection:"Výběr",image:"Vložit obrázek",rectangle:"Obdélník",diamond:"Diamant",ellipse:"Elipsa",arrow:"Šipka",line:"Čára",freedraw:"Kreslení",text:"Text",library:"Knihovna",lock:"Po kreslení ponechat vybraný nástroj aktivní",penMode:"Režim Pera - zabránit dotyku",link:"Přidat/aktualizovat odkaz pro vybraný tvar",eraser:"Guma",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Ruka (nástroj pro posouvání)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},m6e={canvasActions:"Akce plátna",selectedShapeActions:"Akce vybraného tvaru",shapes:"Tvary"},D6e={canvasPanning:"Chcete-li přesunout plátno, podržte kolečko nebo mezerník při tažení nebo použijte nástroj Ruka",linearElement:"Kliknutím pro více bodů, táhnutím pro jednu čáru",freeDraw:"Klikněte a táhněte, pro ukončení pusťte",text:"Tip: Text můžete také přidat dvojitým kliknutím kdekoli pomocí nástroje pro výběr",embeddable:"",text_selected:"Dvojklikem nebo stisknutím klávesy ENTER upravíte text",text_editing:"Stiskněte Escape nebo Ctrl/Cmd+ENTER pro dokončení úprav",linearElementMulti:"Klikněte na poslední bod nebo stiskněte Escape anebo Enter pro dokončení",lockAngle:"Úhel můžete omezit podržením SHIFT",resize:`Můžete omezit proporce podržením SHIFT při změně velikosti,
|
||
podržte ALT pro změnu velikosti od středu`,resizeImage:`Můžete volně změnit velikost podržením SHIFT,
|
||
podržením klávesy ALT změníte velikosti od středu`,rotate:"Úhly můžete omezit podržením SHIFT při otáčení",lineEditor_info:"Podržte Ctrl/Cmd a dvakrát klikněte nebo stiskněte Ctrl/Cmd + Enter pro úpravu bodů",lineEditor_pointSelected:`Stisknutím tlačítka Delete odstraňte bod(y),
|
||
Ctrl/Cmd+D pro duplicitu nebo táhnutím pro přesun`,lineEditor_nothingSelected:`Vyberte bod, který chcete upravit (podržením klávesy SHIFT vyberete více položek),
|
||
nebo podržením klávesy Alt a kliknutím přidáte nové body`,placeImage:"Kliknutím umístěte obrázek, nebo klepnutím a přetažením ručně nastavíte jeho velikost",publishLibrary:"Publikovat vlastní knihovnu",bindTextToElement:"Stiskněte Enter pro přidání textu",deepBoxSelect:"Podržte Ctrl/Cmd pro hluboký výběr a pro zabránění táhnutí",eraserRevert:"Podržením klávesy Alt vrátíte prvky označené pro smazání",firefox_clipboard_write:'Tato funkce může být povolena nastavením vlajky "dom.events.asyncClipboard.clipboardItem" na "true". Chcete-li změnit vlajky prohlížeče ve Firefoxu, navštivte stránku "about:config".',disableSnapping:""},y6e={cannotShowPreview:"Náhled nelze zobrazit",canvasTooBig:"Plátno je možná příliš velké.",canvasTooBigTip:"Tip: zkus posunout nejvzdálenější prvky trochu blíže k sobě."},w6e={headingMain:"Chyba. Zkuste <button>znovu načíst stránku</button>.",clearCanvasMessage:"Pokud opětovné načtení nefunguje, zkuste <button>vymazat plátno</button>.",clearCanvasCaveat:" To povede ke ztrátě dat ",trackedToSentry:"Chyba identifikátoru {{eventId}} byl zaznamenán v našem systému.",openIssueMessage:"Byli jsme velmi opatrní, abychom neuváděli informace o Vaší scéně. Pokud vaše scéna není soukromá, zvažte prosím sledování na našem <button>bug trackeru</button>. Uveďte prosím níže uvedené informace kopírováním a vložením do problému na GitHubu.",sceneContent:"Obsah scény:"},b6e={desc_intro:"Můžete pozvat lidi na vaši aktuální scénu ke spolupráci s vámi.",desc_privacy:"Nebojte se, relace používá end-to-end šifrování, takže cokoliv nakreslíte zůstane soukromé. Ani náš server nebude schopen vidět, s čím budete pracovat.",button_startSession:"Zahájit relaci",button_stopSession:"Ukončit relaci",desc_inProgressIntro:"Živá spolupráce právě probíhá.",desc_shareLink:"Sdílejte tento odkaz s každým, s kým chcete spolupracovat:",desc_exitSession:"Zastavením relace se odpojíte od místnosti, ale budete moci pokračovat v práci s touto scénou lokálně. Všimněte si, že to nebude mít vliv na ostatní lidi a budou stále moci spolupracovat na jejich verzi.",shareTitle:"Připojte se k aktivní spolupráci na Excalidraw"},v6e={title:"Chyba"},k6e={disk_title:"Uložit na disk",disk_details:"Exportovat data scény do souboru, ze kterého můžete importovat později.",disk_button:"Uložit do souboru",link_title:"Odkaz pro sdílení",link_details:"Exportovat jako odkaz pouze pro čtení.",link_button:"Exportovat do odkazu",excalidrawplus_description:"Uložit scénu do vašeho pracovního prostoru Excalidraw+.",excalidrawplus_button:"Exportovat",excalidrawplus_exportError:"Export do Excalidraw+ se v tuto chvíli nezdařil..."},F6e={blog:"Přečtěte si náš blog",click:"kliknutí",deepSelect:"Hluboký výběr",deepBoxSelect:"Hluboký výběr uvnitř boxu a zabránění táhnnutí",curvedArrow:"Zakřivená šipka",curvedLine:"Zakřivená čára",documentation:"Dokumentace",doubleClick:"dvojklik",drag:"tažení",editor:"Editor",editLineArrowPoints:"Upravit body linií/šipek",editText:"Upravit text / přidat popis",github:"Našel jsi problém? Nahlaš ho",howto:"Sledujte naše návody",or:"nebo",preventBinding:"Zabránit vázání šipky",tools:"Nástroje",shortcuts:"Klávesové zkratky",textFinish:"Dokončit úpravy (textový editor)",textNewLine:"Přidat nový řádek (textový editor)",title:"Nápověda",view:"Zobrazení",zoomToFit:"Přiblížit na zobrazení všech prvků",zoomToSelection:"Přiblížit na výběr",toggleElementLock:"Zamknout/odemknout výběr",movePageUpDown:"Posunout stránku nahoru/dolů",movePageLeftRight:"Přesunout stránku doleva/doprava"},x6e={title:"Vymazat plátno"},S6e={title:"Publikovat knihovnu",itemName:"Název položky",authorName:"Jméno autora",githubUsername:"GitHub uživatelské jméno",twitterUsername:"Twitter uživatelské jméno",libraryName:"Název knihovny",libraryDesc:"Popis knihovny",website:"Webová stránka",placeholder:{authorName:"Jméno nebo uživatelské jméno",libraryName:"Název vaší knihovny",libraryDesc:"Popis Vaší knihovny, který pomůže lidem pochopit její využití",githubHandle:"Github uživatelské jméno (nepovinné), abyste mohli upravovat knihovnu poté co je odeslána ke kontrole",twitterHandle:"Twitter uživatelské jméno (nepovinné), abychom věděli koho označit při propagaci na Twitteru",website:"Odkaz na Vaši osobní webovou stránku nebo jinam (nepovinné)"},errors:{required:"Povinné",website:"Zadejte platnou URL adresu"},noteDescription:"Odešlete svou knihovnu, pro zařazení do <link>veřejného úložiště knihoven</link>, odkud ji budou moci při kreslení využít i ostatní uživatelé.",noteGuidelines:"Knihovna musí být nejdříve ručně schválena. Přečtěte si prosím <link>pokyny</link>",noteLicense:"Odesláním souhlasíte s tím, že knihovna bude zveřejněna pod <link>MIT licencí</link>, stručně řečeno, kdokoli ji může používat bez omezení.",noteItems:"Každá položka knihovny musí mít svůj vlastní název, aby byla filtrovatelná. Následující položky knihovny budou zahrnuty:",atleastOneLibItem:"Vyberte alespoň jednu položku knihovny, kterou chcete začít",republishWarning:"Poznámka: některé z vybraných položek jsou označeny jako již zveřejněné/odeslané. Položky byste měli znovu odeslat pouze při aktualizaci existující knihovny nebo podání."},L6e={title:"Knihovna byla odeslána",content:"Děkujeme vám {{authorName}}. Vaše knihovna byla odeslána k posouzení. Stav můžete sledovat <link>zde</link>"},R6e={resetLibrary:"Resetovat knihovnu",removeItemsFromLib:"Odstranit vybrané položky z knihovny"},N6e={header:"Exportovat obrázek",label:{withBackground:"Pozadí",onlySelected:"Pouze vybrané",darkMode:"Tmavý režim",embedScene:"Vložit scénu",scale:"Měřítko",padding:"Odsazení"},tooltip:{embedScene:`Data scény budou uložena do exportovaného souboru PNG/SVG tak, aby z něj mohla být scéna obnovena.
|
||
Zvýší se velikost exportovaného souboru.`},title:{exportToPng:"Exportovat do PNG",exportToSvg:"Exportovat do SVG",copyPngToClipboard:"Kopírovat PNG do schránky"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopírovat do schránky"}},G6e={tooltip:"Vaše kresby jsou end-to-end šifrované, takže servery Excalidraw je nikdy neuvidí.",link:"Blog příspěvek na end-to-end šifrování v Excalidraw"},U6e={angle:"Úhel",element:"Prvek",elements:"Prvky",height:"Výška",scene:"Scéna",selected:"Vybráno",storage:"Úložiště",title:"Statistika pro nerdy",total:"Celkem",version:"Verze",versionCopy:"Kliknutím zkopírujete",versionNotAvailable:"Verze není k dispozici",width:"Šířka"},M6e={addedToLibrary:"Přidáno do knihovny",copyStyles:"Styly byly zkopírovány.",copyToClipboard:"Zkopírováno do schránky.",copyToClipboardAsPng:`{{exportSelection}} zkopírován do schránky jako PNG
|
||
({{exportColorScheme}})`,fileSaved:"Soubor byl uložen.",fileSavedToFilename:"Uloženo do {filename}",canvas:"plátno",selection:"výběr",pasteAsSingleElement:`Pomocí {{shortcut}} vložte jako jeden prvek,
|
||
nebo vložte do existujícího textového editoru`,unableToEmbed:"",unrecognizedLinkFormat:""},T6e={transparent:"Průhledná",black:"Černá",white:"Bílá",red:"Červená",pink:"Růžová",grape:"Vínová",violet:"Fialová",gray:"Šedá",blue:"Modrá",cyan:"Azurová",teal:"Modrozelená",green:"Zelená",yellow:"Žlutá",orange:"Oranžová",bronze:"Bronzová"},Y6e={app:{center_heading:"Všechna vaše data jsou uložena lokálně ve vašem prohlížeči.",center_heading_plus:"Chcete místo toho přejít na Excalidraw+?",menuHint:"Export, nastavení, jazyky, ..."},defaults:{menuHint:"Export, nastavení a další...",center_heading:"Diagramy. Vytvořeny. Jednoduše.",toolbarHint:"Vyberte nástroj a začněte kreslit!",helpHint:"Zkratky a pomoc"}},H6e={mostUsedCustomColors:"Nejpoužívanější vlastní barvy",colors:"Barvy",shades:"Stíny",hexCode:"Hex kód",noShades:"Pro tuto barvu nejsou k dispozici žádné odstíny"},K6e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},J6e={title:"",button:"",description:"",syntax:"",preview:""},bcr={labels:d6e,library:I6e,buttons:h6e,alerts:Q6e,errors:p6e,toolBar:f6e,headings:m6e,hints:D6e,canvasError:y6e,errorSplash:w6e,roomDialog:b6e,errorDialog:v6e,exportDialog:k6e,helpDialog:F6e,clearCanvasDialog:x6e,publishDialog:S6e,publishSuccessDialog:L6e,confirmDialog:R6e,imageExportDialog:N6e,encrypted:G6e,stats:U6e,toast:M6e,colors:T6e,welcomeScreen:Y6e,colorPicker:H6e,overwriteConfirm:K6e,mermaid:J6e}});var h9e={};yt(h9e,{alerts:()=>z6e,buttons:()=>q6e,canvasError:()=>$6e,clearCanvasDialog:()=>u9e,colorPicker:()=>E9e,colors:()=>C9e,confirmDialog:()=>o9e,default:()=>vcr,encrypted:()=>l9e,errorDialog:()=>t9e,errorSplash:()=>A9e,errors:()=>Z6e,exportDialog:()=>r9e,headings:()=>j6e,helpDialog:()=>i9e,hints:()=>X6e,imageExportDialog:()=>s9e,labels:()=>_6e,library:()=>W6e,mermaid:()=>I9e,overwriteConfirm:()=>d9e,publishDialog:()=>a9e,publishSuccessDialog:()=>n9e,roomDialog:()=>e9e,stats:()=>g9e,toast:()=>c9e,toolBar:()=>V6e,welcomeScreen:()=>B9e});var _6e,W6e,q6e,z6e,Z6e,V6e,j6e,X6e,$6e,A9e,e9e,t9e,r9e,i9e,u9e,a9e,n9e,o9e,s9e,l9e,g9e,c9e,C9e,B9e,E9e,d9e,I9e,vcr;var Q9e=P(()=>{qt();_6e={paste:"Indsæt",pasteAsPlaintext:"Indsæt som klartekst",pasteCharts:"Indsæt diagrammer",selectAll:"Marker alle",multiSelect:"Tilføj element til markering",moveCanvas:"Flyt lærred",cut:"Klip",copy:"Kopier",copyAsPng:"Kopier til klippebord som PNG",copyAsSvg:"Kopier til klippebord som SVG",copyText:"Kopiér til udklipsholder som tekst",copySource:"Kopiér kilde til udklipsholder",convertToCode:"Konvertér til kode",bringForward:"Flyt fremad",sendToBack:"Placer bagest",bringToFront:"Placer forrest",sendBackward:"Send bagud",delete:"Fjern",copyStyles:"Kopier stil",pasteStyles:"Indsæt stil",stroke:"Linje",background:"Baggrund",fill:"Udfyld",strokeWidth:"Linjebredde",strokeStyle:"Linjeform",strokeStyle_solid:"Solid",strokeStyle_dashed:"Stiplet",strokeStyle_dotted:"Prikket",sloppiness:"Sjuskethed",opacity:"Gennemsigtighed",textAlign:"Tekstjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilehoveder",arrowhead_none:"Ingen",arrowhead_arrow:"Pil",arrowhead_bar:"Bjælke",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trekant",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Skriftstørrelse",fontFamily:"Skrifttypefamilie",addWatermark:'Tilføj "Lavet med Excalidraw"',handDrawn:"Hånd-tegnet",normal:"Normal",code:"Kode",small:"Lille",medium:"Mellem",large:"Stor",veryLarge:"Meget stor",solid:"Solid",hachure:"Skravering",zigzag:"Zigzag",crossHatch:"Krydsskravering",thin:"Tynd",bold:"Fed",left:"Venstre",center:"Centrere",right:"Højre",extraBold:"Extra fed",architect:"Arkitekt",artist:"Kunstner",cartoonist:"Tegneserietegner",fileTitle:"Filnavn",colorPicker:"Farvevælger",canvasColors:"Brugt på lærred",canvasBackground:"Lærredsbaggrund",drawingCanvas:"Tegnelærred",layers:"Lag",actions:"Handlinger",language:"Sprog",liveCollaboration:"Live samarbejde...",duplicateSelection:"Duplikér",untitled:"Unavngivet",name:"Navn",yourName:"Dit navn",madeWithExcalidraw:"Fremstillet med Excalidraw",group:"Grupper valgte",ungroup:"Opløs gruppe",collaborators:"Deltagere",showGrid:"Vis gitter",addToLibrary:"Føj til Bibliotek",removeFromLibrary:"Fjern fra biblioteket",libraryLoadingMessage:"Indlæser bibliotek…",libraries:"Gennemse biblioteker",loadingScene:"Indlæser scene…",align:"Justér",alignTop:"Juster til top",alignBottom:"Juster til bund",alignLeft:"Venstrejusteret",alignRight:"Juster højre",centerVertically:"Center vertikalt",centerHorizontally:"Vandret centreret",distributeHorizontally:"Distribuer vandret",distributeVertically:"Distribuer lodret",flipHorizontal:"Spejlvend horisontalt",flipVertical:"Vend lodret",viewMode:"Visningstilstand",share:"Del",showStroke:"Vis stregfarve-vælger",showBackground:"Vis baggrundsfarve-vælger",toggleTheme:"Skift tema",personalLib:"Personligt bibliotek",excalidrawLib:"Excalidraw Bibliotek",decreaseFontSize:"Gør skriften mindre",increaseFontSize:"Gør skriften større",unbindText:"Frigør tekst",bindText:"Bind tekst til beholderen",createContainerFromText:"Ombryd tekst i en beholder",link:{edit:"Redigér link",editEmbed:"Redigér link & indlejret",create:"Link oprettet",createEmbed:"Opret link & indlejret",label:"Links",labelEmbed:"Link & indlejret",empty:"Intet link angivet"},lineEditor:{edit:"Rediger Linje",exit:"Afslut linjeeditor"},elementLock:{lock:"Lås",unlock:"Lås op",lockAll:"Lås alle",unlockAll:"Lås alle op"},statusPublished:"Udgiver",sidebarLock:"Hold sidepanel åben",selectAllElementsInFrame:"Vælg alle elementer i rammen",removeAllElementsFromFrame:"Fjern alle elementer fra ramme",eyeDropper:"Vælg farve fra lærred",textToDiagram:"Tekst til diagram",prompt:"Prompt"},W6e={noItems:"Ingen varer tilføjet endnu...",hint_emptyLibrary:"Vælg et element på lærred for at tilføje det her, eller installer et bibliotek fra det offentlige arkiv, nedenfor.",hint_emptyPrivateLibrary:"Vælg et element på lærred for at tilføje det her."},q6e={clearReset:"Nulstil lærredet",exportJSON:"Eksportér til fil",exportImage:"Eksporter billede...",export:"Gem til...",copyToClipboard:"Kopier til klippebord",save:"Gem til nuværende fil",saveAs:"Gem som",load:"Åbn",getShareableLink:"Lav et delbart link",close:"Luk",selectLanguage:"Vælg sprog",scrollBackToContent:"Scroll tilbage til indhold",zoomIn:"Zoom ind",zoomOut:"Zoom ud",resetZoom:"Nulstil zoom",menu:"Menu",done:"Færdig",edit:"Rediger",undo:"Fortryd",redo:"Gendan",resetLibrary:"Nulstil bibliotek",createNewRoom:"Opret nyt rum",fullScreen:"Fuld skærm",darkMode:"Mørk tilstand",lightMode:"Lys baggrund",zenMode:"Zentilstand",objectsSnapMode:"Fastgør til objekter",exitZenMode:"Stop zentilstand",cancel:"Annuller",clear:"Ryd",remove:"Fjern",embed:"Slå indlejring til/fra",publishLibrary:"Publicér",submit:"Gem",confirm:"Bekræft",embeddableInteractionButton:"Klik for at interagere"},z6e={clearReset:"Dette vil rydde hele lærredet. Er du sikker?",couldNotCreateShareableLink:"Kunne ikke oprette delbart link.",couldNotCreateShareableLinkTooBig:"Kunne ikke oprette delbart link: scenen er for stor",couldNotLoadInvalidFile:"Kunne ikke indlæse ugyldig fil",importBackendFailed:"Import fra backend mislykkedes.",cannotExportEmptyCanvas:"Kan ikke eksportere tomt lærred.",couldNotCopyToClipboard:"Kunne ikke kopiere til udklipsholderen.",decryptFailed:"Kunne ikke dekryptere data.",uploadedSecurly:"Upload er blevet sikret med ende-til-ende kryptering, hvilket betyder, at Excalidraw server og tredjeparter ikke kan læse indholdet.",loadSceneOverridePrompt:"Indlæsning af ekstern tegning erstatter dit eksisterende indhold. Ønsker du at fortsætte?",collabStopOverridePrompt:`Stopper sessionen vil overskrive din tidligere, lokalt gemte tegning. Er du sikker?
|
||
|
||
(Hvis du ønsker at beholde din lokale tegning, skal du blot lukke browserfanen i stedet.)`,errorAddingToLibrary:"Kunne ikke tilføje element til biblioteket",errorRemovingFromLibrary:"Kunne ikke fjerne element fra biblioteket",confirmAddLibrary:"Dette vil tilføje {{numShapes}} form(er) til dit bibliotek. Er du sikker?",imageDoesNotContainScene:"Dette billede synes ikke at indeholde scene data. Har du aktiveret scene indlejring under eksport?",cannotRestoreFromImage:"Scene kunne ikke gendannes fra denne billedfil",invalidSceneUrl:"Kunne ikke importere scene fra den angivne URL. Det er enten misdannet eller indeholder ikke gyldige Excalidraw JSON data.",resetLibrary:"Dette vil rydde hele lærredet. Er du sikker?",removeItemsFromsLibrary:"Slet {{count}} vare(r) fra biblioteket?",invalidEncryptionKey:"Krypteringsnøglen skal være på 22 tegn. Live-samarbejde er deaktiveret.",collabOfflineWarning:`Ingen internetforbindelse tilgængelig.
|
||
Dine ændringer vil ikke blive gemt!`},Z6e={unsupportedFileType:"Filtypen er ikke understøttet.",imageInsertError:"Billedet kunne ikke indsættes. Prøv igen senere...",fileTooBig:"Filen er for stor. Maksimal tilladt størrelse er {{maxSize}}.",svgImageInsertError:"Kunne ikke indsætte SVG-billede. SVG-markup'en ser ugyldig ud.",failedToFetchImage:"Dataene blev ikke hentet.",invalidSVGString:"Ugyldig SVG.",cannotResolveCollabServer:"Kunne ikke oprette forbindelse til samarbejdsserveren. Genindlæs siden og prøv igen.",importLibraryError:"Biblioteket kunne ikke indlæses",collabSaveFailed:"Kunne ikke gemme i databasen. Hvis problemerne fortsætter, bør du gemme din fil lokalt for at sikre, at du ikke mister dit arbejde.",collabSaveFailed_sizeExceeded:"Kunne ikke gemme i databasen, lærredet lader til at være for stort. Du bør gemme filen lokalt for at sikre, at du ikke mister dit arbejde.",imageToolNotSupported:"Billeder er deaktiveret.",brave_measure_text_error:{line1:"Det ser ud til, at du bruger Brave browser med indstillingen <bold>Aggressively Block Fingerprinting</bold> aktiveret.",line2:"Dette kan resultere i brud på <bold>tekstelementerne</bold> i dine tegninger.",line3:"Vi anbefaler kraftigt at deaktivere denne indstilling. Du kan følge <link>disse trin</link> om, hvordan du gør det.",line4:"Hvis deaktivering af denne indstilling ikke løser visning af tekstelementer, åbn venligst et <issueLink>issue</issueLink> på vores GitHub, eller skriv os på <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Indlejringselementer kan ikke tilføjes til biblioteket.",iframe:"IFrame elementer kan ikke tilføjes til biblioteket.",image:"Understøttelse af at tilføje billeder til biblioteket kommer snart!"},asyncPasteFailedOnRead:"Kunne ikke indsætte (kan ikke læse fra systemets udklipsholder).",asyncPasteFailedOnParse:"Kunne ikke indsætte.",copyToSystemClipboardFailed:"Kunne ikke kopiere til udklipsholderen."},V6e={selection:"&Udvalg",image:"Indsæt billeder",rectangle:"Rektangler",diamond:"Diamanter",ellipse:"Ellipser",arrow:"Pile",line:"Linje",freedraw:"Tegn",text:"Tekster",library:"~Bibliotek",lock:"Behold valgte værktøj aktiv efter tegning",penMode:"Pen-tilstand - forhindrer berøring",link:"Tilføj/ Opdater link for en valgt form",eraser:"Slet",frame:"Rammeværktøj",magicframe:"Wireframe til kode",embeddable:"Web-indlejring",laser:"Lasermarkør",hand:"Hånd (panorering værktøj)",extraTools:"Flere værktøjer",mermaidToExcalidraw:"Mermaid til Excalidraw",magicSettings:"AI indstillinger"},j6e={canvasActions:"Lærred handlinger",selectedShapeActions:"Valgte figurhandlinger",shapes:"Former"},X6e={canvasPanning:"For at flytte lærred, hold musehjulet eller mellemrumstasten mens du trækker, eller brug håndværktøjet",linearElement:"Klik for at starte flere punkter, træk for enkelt linje",freeDraw:"Klik og træk, slip når du er færdig",text:"Tip: du kan også tilføje tekst ved at dobbeltklikke hvor som helst med det valgte værktøj",embeddable:"Klik på træk for at oprette en hjemmeside indlejret",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},$6e={cannotShowPreview:"Kan ikke vise forhåndsvisning",canvasTooBig:"Lærredet kan være for stort.",canvasTooBigTip:"Tip: Prøv at flytte de fjerneste elementer lidt tættere sammen."},A9e={headingMain:"Der opstod en fejl. Prøv <button>at genindlæse siden</button>.",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"<button></button> Kopiere og indsæt venligst oplysningerne nedenfor i et GitHub problem.",sceneContent:"Scene indhold:"},e9e={desc_intro:"Du kan invitere folk til din nuværende scene, så de kan samarbejde med dig.",desc_privacy:"Bare rolig, sessionen bruger end-to-end kryptering, så uanset hvad du tegner vil det forblive privat. Ikke engang vores server vil kunne se, hvad du kommer op med.",button_startSession:"Start session",button_stopSession:"Stop session",desc_inProgressIntro:"Live-samarbejde session er nu begyndt.",desc_shareLink:"Del dette link med enhver, du ønsker at samarbejde med:",desc_exitSession:"",shareTitle:""},t9e={title:"Fejl"},r9e={disk_title:"Gem til disk",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},i9e={blog:"Læs vores blog",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},u9e={title:""},a9e={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},n9e={title:"",content:""},o9e={resetLibrary:"",removeItemsFromLib:""},s9e={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},l9e={tooltip:"",link:""},g9e={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"Statistik for nørder",total:"",version:"",versionCopy:"Klik for at kopiere",versionNotAvailable:"",width:"Bredde"},c9e={addedToLibrary:"",copyStyles:"Kopieret stilarter.",copyToClipboard:"Kopieret til klippebord.",copyToClipboardAsPng:`Kopieret {{exportSelection}} til klippebord som PNG
|
||
({{exportColorScheme}})`,fileSaved:"Fil gemt.",fileSavedToFilename:"Gemt som {filename}",canvas:"canvas",selection:"markering",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},C9e={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},B9e={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},E9e={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},d9e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},I9e={title:"",button:"",description:"",syntax:"",preview:""},vcr={labels:_6e,library:W6e,buttons:q6e,alerts:z6e,errors:Z6e,toolBar:V6e,headings:j6e,hints:X6e,canvasError:$6e,errorSplash:A9e,roomDialog:e9e,errorDialog:t9e,exportDialog:r9e,helpDialog:i9e,clearCanvasDialog:u9e,publishDialog:a9e,publishSuccessDialog:n9e,confirmDialog:o9e,imageExportDialog:s9e,encrypted:l9e,stats:g9e,toast:c9e,colors:C9e,welcomeScreen:B9e,colorPicker:E9e,overwriteConfirm:d9e,mermaid:I9e}});var q9e={};yt(q9e,{alerts:()=>D9e,buttons:()=>m9e,canvasError:()=>k9e,clearCanvasDialog:()=>N9e,colorPicker:()=>P9e,colors:()=>J9e,confirmDialog:()=>M9e,default:()=>kcr,encrypted:()=>Y9e,errorDialog:()=>S9e,errorSplash:()=>F9e,errors:()=>y9e,exportDialog:()=>L9e,headings:()=>b9e,helpDialog:()=>R9e,hints:()=>v9e,imageExportDialog:()=>T9e,labels:()=>p9e,library:()=>f9e,mermaid:()=>W9e,overwriteConfirm:()=>_9e,publishDialog:()=>G9e,publishSuccessDialog:()=>U9e,roomDialog:()=>x9e,stats:()=>H9e,toast:()=>K9e,toolBar:()=>w9e,welcomeScreen:()=>O9e});var p9e,f9e,m9e,D9e,y9e,w9e,b9e,v9e,k9e,F9e,x9e,S9e,L9e,R9e,N9e,G9e,U9e,M9e,T9e,Y9e,H9e,K9e,J9e,O9e,P9e,_9e,W9e,kcr;var z9e=P(()=>{qt();p9e={paste:"Einfügen",pasteAsPlaintext:"Als reinen Text einfügen",pasteCharts:"Diagramme einfügen",selectAll:"Alle auswählen",multiSelect:"Element zur Auswahl hinzufügen",moveCanvas:"Leinwand verschieben",cut:"Ausschneiden",copy:"Kopieren",copyAsPng:"In Zwischenablage kopieren (PNG)",copyAsSvg:"In Zwischenablage kopieren (SVG)",copyText:"In die Zwischenablage als Text kopieren",copySource:"Quelle in Zwischenablage kopieren",convertToCode:"In Code konvertieren",bringForward:"Nach vorne",sendToBack:"In den Hintergrund",bringToFront:"In den Vordergrund",sendBackward:"Nach hinten",delete:"Löschen",copyStyles:"Formatierung kopieren",pasteStyles:"Formatierung übernehmen",stroke:"Strich",background:"Hintergrund",fill:"Füllung",strokeWidth:"Strichstärke",strokeStyle:"Konturstil",strokeStyle_solid:"Durchgezogen",strokeStyle_dashed:"Gestrichelt",strokeStyle_dotted:"Gepunktet",sloppiness:"Sauberkeit",opacity:"Deckkraft",textAlign:"Textausrichtung",edges:"Kanten",sharp:"Scharf",round:"Rund",arrowheads:"Pfeilspitzen",arrowhead_none:"Keine",arrowhead_arrow:"Pfeil",arrowhead_bar:"Balken",arrowhead_circle:"Kreis",arrowhead_circle_outline:"Kreis (Umrandung)",arrowhead_triangle:"Dreieck",arrowhead_triangle_outline:"Dreieck (Umrandung)",arrowhead_diamond:"Raute",arrowhead_diamond_outline:"Raute (Umrandung)",fontSize:"Schriftgröße",fontFamily:"Schriftfamilie",addWatermark:'"Made with Excalidraw" hinzufügen',handDrawn:"Handgezeichnet",normal:"Normal",code:"Code",small:"Klein",medium:"Mittel",large:"Groß",veryLarge:"Sehr groß",solid:"Deckend",hachure:"Schraffiert",zigzag:"Zickzack",crossHatch:"Kreuzschraffiert",thin:"Dünn",bold:"Fett",left:"Links",center:"Zentriert",right:"Rechts",extraBold:"Extra Fett",architect:"Architekt",artist:"Künstler",cartoonist:"Karikaturist",fileTitle:"Dateiname",colorPicker:"Farbauswähler",canvasColors:"Auf Leinwand verwendet",canvasBackground:"Zeichenflächenhintergrund",drawingCanvas:"Leinwand",layers:"Ebenen",actions:"Aktionen",language:"Sprache",liveCollaboration:"Live-Zusammenarbeit...",duplicateSelection:"Duplizieren",untitled:"Unbenannt",name:"Name",yourName:"Dein Name",madeWithExcalidraw:"Made with Excalidraw",group:"Auswahl gruppieren",ungroup:"Gruppierung aufheben",collaborators:"Mitarbeitende",showGrid:"Raster anzeigen",addToLibrary:"Zur Bibliothek hinzufügen",removeFromLibrary:"Aus Bibliothek entfernen",libraryLoadingMessage:"Lade Bibliothek…",libraries:"Bibliotheken durchsuchen",loadingScene:"Lade Zeichnung…",align:"Ausrichten",alignTop:"Obere Kanten",alignBottom:"Untere Kanten",alignLeft:"Linke Kanten",alignRight:"Rechte Kanten",centerVertically:"Vertikal zentrieren",centerHorizontally:"Horizontal zentrieren",distributeHorizontally:"Horizontal verteilen",distributeVertically:"Vertikal verteilen",flipHorizontal:"Horizontal spiegeln",flipVertical:"Vertikal spiegeln",viewMode:"Ansichtsmodus",share:"Teilen",showStroke:"Auswahl für Strichfarbe anzeigen",showBackground:"Hintergrundfarbe auswählen",toggleTheme:"Design umschalten",personalLib:"Persönliche Bibliothek",excalidrawLib:"Excalidraw Bibliothek",decreaseFontSize:"Schriftgröße verkleinern",increaseFontSize:"Schrift vergrößern",unbindText:"Text lösen",bindText:"Text an Container binden",createContainerFromText:"Text in Container einbetten",link:{edit:"Link bearbeiten",editEmbed:"Link bearbeiten & einbetten",create:"Link erstellen",createEmbed:"Link erstellen & einbetten",label:"Link",labelEmbed:"Verlinken & einbetten",empty:"Kein Link festgelegt"},lineEditor:{edit:"Linie bearbeiten",exit:"Linieneditor verlassen"},elementLock:{lock:"Sperren",unlock:"Entsperren",lockAll:"Alle sperren",unlockAll:"Alle entsperren"},statusPublished:"Veröffentlicht",sidebarLock:"Seitenleiste offen lassen",selectAllElementsInFrame:"Alle Elemente im Rahmen auswählen",removeAllElementsFromFrame:"Alle Elemente aus dem Rahmen entfernen",eyeDropper:"Farbe von der Zeichenfläche auswählen",textToDiagram:"Text zu Diagramm",prompt:"Eingabe"},f9e={noItems:"Noch keine Elemente hinzugefügt...",hint_emptyLibrary:"Wähle ein Element auf der Zeichenfläche, um es hier hinzuzufügen. Oder installiere eine Bibliothek aus dem öffentlichen Verzeichnis.",hint_emptyPrivateLibrary:"Wähle ein Element von der Zeichenfläche, um es hier hinzuzufügen."},m9e={clearReset:"Zeichenfläche löschen & Hintergrundfarbe zurücksetzen",exportJSON:"In Datei exportieren",exportImage:"Exportiere Bild...",export:"Speichern als...",copyToClipboard:"In Zwischenablage kopieren",save:"In aktueller Datei speichern",saveAs:"Speichern unter",load:"Öffnen",getShareableLink:"Teilbaren Link erhalten",close:"Schließen",selectLanguage:"Sprache auswählen",scrollBackToContent:"Zurück zum Inhalt",zoomIn:"Vergrößern",zoomOut:"Verkleinern",resetZoom:"Zoom zurücksetzen",menu:"Menü",done:"Fertig",edit:"Bearbeiten",undo:"Rückgängig machen",redo:"Wiederholen",resetLibrary:"Bibliothek zurücksetzen",createNewRoom:"Neuen Raum erstellen",fullScreen:"Vollbildanzeige",darkMode:"Dunkles Design",lightMode:"Helles Design",zenMode:"Zen-Modus",objectsSnapMode:"Einrasten an Objekten",exitZenMode:"Zen-Modus verlassen",cancel:"Abbrechen",clear:"Löschen",remove:"Entfernen",embed:"Einbettung umschalten",publishLibrary:"Veröffentlichen",submit:"Absenden",confirm:"Bestätigen",embeddableInteractionButton:"Klicken, um zu interagieren"},D9e={clearReset:"Dies wird die ganze Zeichenfläche löschen. Bist du dir sicher?",couldNotCreateShareableLink:"Konnte keinen teilbaren Link erstellen.",couldNotCreateShareableLinkTooBig:"Konnte keinen teilbaren Link erstellen: Die Zeichnung ist zu groß",couldNotLoadInvalidFile:"Ungültige Datei konnte nicht geladen werden",importBackendFailed:"Import vom Server ist fehlgeschlagen.",cannotExportEmptyCanvas:"Leere Zeichenfläche kann nicht exportiert werden.",couldNotCopyToClipboard:"Kopieren in die Zwischenablage fehlgeschlagen.",decryptFailed:"Daten konnten nicht entschlüsselt werden.",uploadedSecurly:"Der Upload wurde mit Ende-zu-Ende-Verschlüsselung gespeichert. Weder Excalidraw noch Dritte können den Inhalt einsehen.",loadSceneOverridePrompt:"Das Laden einer externen Zeichnung ersetzt den vorhandenen Inhalt. Möchtest du fortfahren?",collabStopOverridePrompt:`Das Stoppen der Sitzung wird deine vorherige, lokal gespeicherte Zeichnung überschreiben. Bist du dir sicher?
|
||
|
||
(Wenn du deine lokale Zeichnung behalten möchtest, schließe stattdessen den Browser-Tab.)`,errorAddingToLibrary:"Das Element konnte nicht zur Bibliothek hinzugefügt werden",errorRemovingFromLibrary:"Das Element konnte nicht aus der Bibliothek entfernt werden",confirmAddLibrary:"Dies fügt {{numShapes}} Form(en) zu deiner Bibliothek hinzu. Bist du dir sicher?",imageDoesNotContainScene:"Dieses Bild scheint keine Szenendaten zu enthalten. Hast Du das Einbetten der Szene während des Exports aktiviert?",cannotRestoreFromImage:"Die Zeichnung konnte aus dieser Bilddatei nicht wiederhergestellt werden",invalidSceneUrl:"Die Szene konnte nicht von der angegebenen URL importiert werden. Sie ist entweder fehlerhaft oder enthält keine gültigen Excalidraw JSON-Daten.",resetLibrary:"Dieses löscht deine Bibliothek. Bist du sicher?",removeItemsFromsLibrary:"{{count}} Element(e) aus der Bibliothek löschen?",invalidEncryptionKey:"Verschlüsselungsschlüssel muss 22 Zeichen lang sein. Die Live-Zusammenarbeit ist deaktiviert.",collabOfflineWarning:`Keine Internetverbindung verfügbar.
|
||
Deine Änderungen werden nicht gespeichert!`},y9e={unsupportedFileType:"Nicht unterstützter Dateityp.",imageInsertError:"Das Bild konnte nicht eingefügt werden. Versuche es später erneut...",fileTooBig:"Die Datei ist zu groß. Die maximal zulässige Größe ist {{maxSize}}.",svgImageInsertError:"SVG-Bild konnte nicht eingefügt werden. Das SVG-Markup sieht ungültig aus.",failedToFetchImage:"Bild konnte nicht abgerufen werden.",invalidSVGString:"Ungültige SVG.",cannotResolveCollabServer:"Konnte keine Verbindung zum Collab-Server herstellen. Bitte lade die Seite neu und versuche es erneut.",importLibraryError:"Bibliothek konnte nicht geladen werden",collabSaveFailed:"Keine Speicherung in der Backend-Datenbank möglich. Wenn die Probleme weiterhin bestehen, solltest Du Deine Datei lokal speichern, um sicherzustellen, dass Du Deine Arbeit nicht verlierst.",collabSaveFailed_sizeExceeded:"Keine Speicherung in der Backend-Datenbank möglich, die Zeichenfläche scheint zu groß zu sein. Du solltest Deine Datei lokal speichern, um sicherzustellen, dass Du Deine Arbeit nicht verlierst.",imageToolNotSupported:"Bilder sind deaktiviert.",brave_measure_text_error:{line1:"Sieht so aus, als ob Du den Brave-Browser verwendest und die <bold>aggressive Blockierung von Fingerabdrücken</bold> aktiviert hast.",line2:"Dies könnte dazu führen, dass die <bold>Textelemente</bold> in Ihren Zeichnungen zerstört werden.",line3:"Wir empfehlen dringend, diese Einstellung zu deaktivieren. Dazu kannst Du <link>diesen Schritten</link> folgen.",line4:"Wenn die Deaktivierung dieser Einstellung die fehlerhafte Anzeige von Textelementen nicht behebt, öffne bitte ein <issueLink>Ticket</issueLink> auf unserem GitHub oder schreibe uns auf <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Einbettbare Elemente können der Bibliothek nicht hinzugefügt werden.",iframe:"IFrame-Elemente können nicht zur Bibliothek hinzugefügt werden.",image:"Unterstützung für das Hinzufügen von Bildern in die Bibliothek kommt bald!"},asyncPasteFailedOnRead:"Einfügen fehlgeschlagen (konnte aus der Zwischenablage des Systems nicht gelesen werden).",asyncPasteFailedOnParse:"Einfügen fehlgeschlagen.",copyToSystemClipboardFailed:"Kopieren in die Zwischenablage fehlgeschlagen."},w9e={selection:"Auswahl",image:"Bild einfügen",rectangle:"Rechteck",diamond:"Raute",ellipse:"Ellipse",arrow:"Pfeil",line:"Linie",freedraw:"Zeichnen",text:"Text",library:"Bibliothek",lock:"Ausgewähltes Werkzeug nach Zeichnen aktiv lassen",penMode:"Stift-Modus - Berührung verhindern",link:"Link für ausgewählte Form hinzufügen / aktualisieren",eraser:"Radierer",frame:"Rahmenwerkzeug",magicframe:"Wireframe zu Code",embeddable:"Web-Einbettung",laser:"Laserpointer",hand:"Hand (Schwenkwerkzeug)",extraTools:"Weitere Werkzeuge",mermaidToExcalidraw:"Mermaid zu Excalidraw",magicSettings:"KI-Einstellungen"},b9e={canvasActions:"Aktionen für Zeichenfläche",selectedShapeActions:"Aktionen für Auswahl",shapes:"Formen"},v9e={canvasPanning:"Um die Zeichenfläche zu verschieben, halte das Mausrad oder die Leertaste während des Ziehens, oder verwende das Hand-Werkzeug",linearElement:"Klicken für Linie mit mehreren Punkten, Ziehen für einzelne Linie",freeDraw:"Klicke und ziehe. Lass los, wenn du fertig bist",text:"Tipp: Du kannst auch Text hinzufügen, indem du mit dem Auswahlwerkzeug auf eine beliebige Stelle doppelklickst",embeddable:"Klicken und ziehen, um eine Webseiten-Einbettung zu erstellen",text_selected:"Doppelklicken oder Eingabetaste drücken, um Text zu bearbeiten",text_editing:"Drücke Escape oder CtrlOrCmd+Eingabetaste, um die Bearbeitung abzuschließen",linearElementMulti:"Zum Beenden auf den letzten Punkt klicken oder Escape oder Eingabe drücken",lockAngle:"Du kannst Winkel einschränken, indem du SHIFT gedrückt hältst",resize:"Du kannst die Proportionen einschränken, indem du SHIFT während der Größenänderung gedrückt hältst. Halte ALT gedrückt, um die Größe vom Zentrum aus zu ändern",resizeImage:"Du kannst die Größe frei ändern, indem du SHIFT gedrückt hältst; halte ALT, um die Größe vom Zentrum aus zu ändern",rotate:"Du kannst Winkel einschränken, indem du SHIFT während der Drehung gedrückt hältst",lineEditor_info:"CtrlOrCmd halten und Doppelklick oder CtrlOrCmd + Eingabe drücken, um Punkte zu bearbeiten",lineEditor_pointSelected:"Drücke Löschen, um Punkt(e) zu entfernen, CtrlOrCmd+D zum Duplizieren oder ziehe zum Verschieben",lineEditor_nothingSelected:`Wähle einen zu bearbeitenden Punkt (halte SHIFT gedrückt um mehrere Punkte auszuwählen),
|
||
oder halte Alt gedrückt und klicke um neue Punkte hinzuzufügen`,placeImage:"Klicken, um das Bild zu platzieren oder klicken und ziehen um seine Größe manuell zu setzen",publishLibrary:"Veröffentliche deine eigene Bibliothek",bindTextToElement:"Zum Hinzufügen Eingabetaste drücken",deepBoxSelect:"Halte CtrlOrCmd gedrückt, um innerhalb der Gruppe auszuwählen, und um Ziehen zu vermeiden",eraserRevert:"Halte Alt gedrückt, um die zum Löschen markierten Elemente zurückzusetzen",firefox_clipboard_write:'Diese Funktion kann wahrscheinlich aktiviert werden, indem die Einstellung "dom.events.asyncClipboard.clipboardItem" auf "true" gesetzt wird. Um die Browsereinstellungen in Firefox zu ändern, besuche die Seite "about:config".',disableSnapping:"Halte CtrlOrCmd gedrückt, um das Einrasten zu deaktivieren"},k9e={cannotShowPreview:"Vorschau kann nicht angezeigt werden",canvasTooBig:"Die Leinwand ist möglicherweise zu groß.",canvasTooBigTip:"Tipp: Schiebe die am weitesten entfernten Elemente ein wenig näher zusammen."},F9e={headingMain:"Es ist ein Fehler aufgetreten. Versuche <button>die Seite neu zu laden.</button>",clearCanvasMessage:"Wenn das Neuladen nicht funktioniert, versuche <button>die Zeichenfläche zu löschen.</button>",clearCanvasCaveat:" Dies wird zum Verlust von Daten führen ",trackedToSentry:"Der Fehler mit der Kennung {{eventId}} wurde in unserem System registriert.",openIssueMessage:"Wir waren sehr vorsichtig und haben deine Zeichnungsinformationen nicht in die Fehlerinformationen aufgenommen. Wenn deine Zeichnung nicht privat ist, unterstütze uns bitte über unseren <button>Bug-Tracker</button>. Bitte teile die unten stehenden Informationen mit uns im GitHub Issue (Kopieren und Einfügen).",sceneContent:"Zeichnungsinhalt:"},x9e={desc_intro:"Du kannst Leute zu deiner aktuellen Zeichnung einladen um mit ihnen zusammenzuarbeiten.",desc_privacy:"Keine Sorge, die Sitzung nutzt eine Ende-zu-Ende-Verschlüsselung. Alles was du zeichnest, bleibt privat. Auch unser Server sieht nicht, was du dir einfallen lässt.",button_startSession:"Sitzung starten",button_stopSession:"Sitzung beenden",desc_inProgressIntro:"Die Live-Sitzung wird nun ausgeführt.",desc_shareLink:"Teile diesen Link mit allen, mit denen du zusammenarbeiten möchtest:",desc_exitSession:"Wenn du die Sitzung beendest, wird deine Verbindung zum Raum getrennt. Du kannst jedoch lokal weiter an der Zeichnung arbeiten. Beachte, dass dies keine Auswirkungen auf andere hat und diese weiterhin gemeinsam an ihrer Version arbeiten können.",shareTitle:"An einer Live-Kollaborationssitzung auf Excalidraw teilnehmen"},S9e={title:"Fehler"},L9e={disk_title:"Auf Festplatte speichern",disk_details:"Exportiere die Zeichnungsdaten in eine Datei, die Du später importieren kannst.",disk_button:"Als Datei speichern",link_title:"Teilbarer Link",link_details:"Als schreibgeschützten Link exportieren.",link_button:"Als Link exportieren",excalidrawplus_description:"Speichere die Szene in deinem Excalidraw+ Arbeitsbereich.",excalidrawplus_button:"Exportieren",excalidrawplus_exportError:"Konnte nicht nach Excalidraw+ exportieren..."},R9e={blog:"Lies unseren Blog",click:"klicken",deepSelect:"Auswahl innerhalb der Gruppe",deepBoxSelect:"Auswahl innerhalb der Gruppe, und Ziehen vermeiden",curvedArrow:"Gebogener Pfeil",curvedLine:"Gebogene Linie",documentation:"Dokumentation",doubleClick:"doppelklicken",drag:"ziehen",editor:"Editor",editLineArrowPoints:"Linien-/Pfeil-Punkte bearbeiten",editText:"Text bearbeiten / Label hinzufügen",github:"Ein Problem gefunden? Informiere uns",howto:"Folge unseren Anleitungen",or:"oder",preventBinding:"Pfeil-Bindung verhindern",tools:"Werkzeuge",shortcuts:"Tastaturkürzel",textFinish:"Bearbeitung beenden (Texteditor)",textNewLine:"Neue Zeile hinzufügen (Texteditor)",title:"Hilfe",view:"Ansicht",zoomToFit:"Zoomen um alle Elemente einzupassen",zoomToSelection:"Auf Auswahl zoomen",toggleElementLock:"Auswahl sperren/entsperren",movePageUpDown:"Seite nach oben/unten verschieben",movePageLeftRight:"Seite nach links/rechts verschieben"},N9e={title:"Zeichenfläche löschen"},G9e={title:"Bibliothek veröffentlichen",itemName:"Elementname",authorName:"Name des Autors",githubUsername:"GitHub-Benutzername",twitterUsername:"Twitter-Benutzername",libraryName:"Name der Bibliothek",libraryDesc:"Beschreibung der Bibliothek",website:"Webseite",placeholder:{authorName:"Dein Name oder Benutzername",libraryName:"Name deiner Bibliothek",libraryDesc:"Beschreibung deiner Bibliothek, um anderen Nutzern bei der Verwendung zu helfen",githubHandle:"GitHub-Handle (optional), damit du die Bibliothek bearbeiten kannst, wenn sie zur Überprüfung eingereicht wurde",twitterHandle:"Twitter-Benutzername (optional), damit wir wissen, wen wir bei Werbung über Twitter nennen können",website:"Link zu deiner persönlichen Webseite oder zu anderer Seite (optional)"},errors:{required:"Erforderlich",website:"Gültige URL eingeben"},noteDescription:"Sende deine Bibliothek ein, um in die <link>öffentliche Bibliotheks-Repository aufgenommen zu werden</link>damit andere Nutzer sie in ihren Zeichnungen verwenden können.",noteGuidelines:"Die Bibliothek muss zuerst manuell freigegeben werden. Bitte lies die <link>Richtlinien</link> vor dem Absenden. Du benötigst ein GitHub-Konto, um zu kommunizieren und Änderungen vorzunehmen, falls erforderlich, aber es ist nicht unbedingt erforderlich.",noteLicense:"Mit dem Absenden stimmst du zu, dass die Bibliothek unter der <link>MIT-Lizenz, </link>die zusammengefasst beinhaltet, dass jeder sie ohne Einschränkungen nutzen kann.",noteItems:"Jedes Bibliothekselement muss einen eigenen Namen haben, damit es gefiltert werden kann. Die folgenden Bibliothekselemente werden hinzugefügt:",atleastOneLibItem:"Bitte wähle mindestens ein Bibliothekselement aus, um zu beginnen",republishWarning:"Hinweis: Einige der ausgewählten Elemente sind bereits als veröffentlicht/eingereicht markiert. Du solltest Elemente nur erneut einreichen, wenn Du eine existierende Bibliothek oder Einreichung aktualisierst."},U9e={title:"Bibliothek übermittelt",content:"Vielen Dank {{authorName}}. Deine Bibliothek wurde zur Überprüfung eingereicht. Du kannst den Status verfolgen<link>hier</link>"},M9e={resetLibrary:"Bibliothek zurücksetzen",removeItemsFromLib:"Ausgewählte Elemente aus der Bibliothek entfernen"},T9e={header:"Bild exportieren",label:{withBackground:"Hintergrund",onlySelected:"Nur ausgewählte",darkMode:"Dunkler Modus",embedScene:"Szene einbetten",scale:"Skalierung",padding:"Abstand"},tooltip:{embedScene:`Die Zeichnungsdaten werden in der exportierten PNG/SVG-Datei gespeichert, sodass das Dokument später weiter bearbeitet werden kann.
|
||
Dieses wird die exportierte Datei vergrößern.`},title:{exportToPng:"Als PNG exportieren",exportToSvg:"Als SVG exportieren",copyPngToClipboard:"PNG in die Zwischenablage kopieren"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"In Zwischenablage kopieren"}},Y9e={tooltip:"Da deine Zeichnungen Ende-zu-Ende verschlüsselt werden, sehen auch unsere Excalidraw-Server sie niemals.",link:"Blogbeitrag über Ende-zu-Ende-Verschlüsselung in Excalidraw"},H9e={angle:"Winkel",element:"Element",elements:"Elemente",height:"Höhe",scene:"Zeichnung",selected:"Ausgewählt",storage:"Speicher",title:"Statistiken für Nerds",total:"Gesamt",version:"Version",versionCopy:"Zum Kopieren klicken",versionNotAvailable:"Version nicht verfügbar",width:"Breite"},K9e={addedToLibrary:"Zur Bibliothek hinzugefügt",copyStyles:"Formatierungen kopiert.",copyToClipboard:"In die Zwischenablage kopiert.",copyToClipboardAsPng:`{{exportSelection}} als PNG in die Zwischenablage kopiert
|
||
({{exportColorScheme}})`,fileSaved:"Datei gespeichert.",fileSavedToFilename:"Als {filename} gespeichert",canvas:"Zeichenfläche",selection:"Auswahl",pasteAsSingleElement:`Verwende {{shortcut}} , um als einzelnes Element
|
||
einzufügen oder in einen existierenden Texteditor einzufügen`,unableToEmbed:"Einbetten dieser URL ist derzeit nicht zulässig. Erstelle einen Issue auf GitHub, um die URL freigeben zu lassen",unrecognizedLinkFormat:"Der Link, den Du eingebettet hast, stimmt nicht mit dem erwarteten Format überein. Bitte versuche den 'embed' String einzufügen, der von der Quellseite zur Verfügung gestellt wird"},J9e={transparent:"Transparent",black:"Schwarz",white:"Weiß",red:"Rot",pink:"Pink",grape:"Traube",violet:"Violett",gray:"Grau",blue:"Blau",cyan:"Cyan",teal:"Blaugrün",green:"Grün",yellow:"Gelb",orange:"Orange",bronze:"Bronze"},O9e={app:{center_heading:"Alle Daten werden lokal in Deinem Browser gespeichert.",center_heading_plus:"Möchtest du stattdessen zu Excalidraw+ gehen?",menuHint:"Exportieren, Einstellungen, Sprachen, ..."},defaults:{menuHint:"Exportieren, Einstellungen und mehr...",center_heading:"Diagramme. Einfach. Gemacht.",toolbarHint:"Wähle ein Werkzeug & beginne zu zeichnen!",helpHint:"Kurzbefehle & Hilfe"}},P9e={mostUsedCustomColors:"Beliebteste benutzerdefinierte Farben",colors:"Farben",shades:"Schattierungen",hexCode:"Hex-Code",noShades:"Keine Schattierungen für diese Farbe verfügbar"},_9e={action:{exportToImage:{title:"Als Bild exportieren",button:"Als Bild exportieren",description:"Exportiere die Zeichnungsdaten als ein Bild, von dem Du später importieren kannst."},saveToDisk:{title:"Auf Festplatte speichern",button:"Auf Festplatte speichern",description:"Exportiere die Zeichnungsdaten in eine Datei, von der Du später importieren kannst."},excalidrawPlus:{title:"Excalidraw+",button:"Export nach Excalidraw+",description:"Speichere die Szene in deinem Excalidraw+-Arbeitsbereich."}},modal:{loadFromFile:{title:"Aus Datei laden",button:"Aus Datei laden",description:"Das Laden aus einer Datei wird <bold>Deinen vorhandenen Inhalt ersetzen</bold>.<br></br>Du kannst Deine Zeichnung zuerst mit einer der folgenden Optionen sichern."},shareableLink:{title:"Aus Link laden",button:"Meinen Inhalt ersetzen",description:"Das Laden einer externen Zeichnung wird <bold>Deinen vorhandenen Inhalt ersetzen</bold>.<br></br>Du kannst Deine Zeichnung zuerst mit einer der folgenden Optionen sichern."}}},W9e={title:"Mermaid zu Excalidraw",button:"Einfügen",description:"Derzeit werden nur <flowchartLink>Flussdiagramme</flowchartLink>, <sequenceLink>Sequenzdiagramme</sequenceLink> und <classLink>Klassendiagramme</classLink> unterstützt. Die anderen Typen werden als Bild in Excalidraw dargestellt.",syntax:"Mermaid-Syntax",preview:"Vorschau"},kcr={labels:p9e,library:f9e,buttons:m9e,alerts:D9e,errors:y9e,toolBar:w9e,headings:b9e,hints:v9e,canvasError:k9e,errorSplash:F9e,roomDialog:x9e,errorDialog:S9e,exportDialog:L9e,helpDialog:R9e,clearCanvasDialog:N9e,publishDialog:G9e,publishSuccessDialog:U9e,confirmDialog:M9e,imageExportDialog:T9e,encrypted:Y9e,stats:H9e,toast:K9e,colors:J9e,welcomeScreen:O9e,colorPicker:P9e,overwriteConfirm:_9e,mermaid:W9e}});var m5e={};yt(m5e,{alerts:()=>X9e,buttons:()=>j9e,canvasError:()=>r5e,clearCanvasDialog:()=>s5e,colorPicker:()=>Q5e,colors:()=>I5e,confirmDialog:()=>c5e,default:()=>Fcr,encrypted:()=>B5e,errorDialog:()=>a5e,errorSplash:()=>i5e,errors:()=>$9e,exportDialog:()=>n5e,headings:()=>e5e,helpDialog:()=>o5e,hints:()=>t5e,imageExportDialog:()=>C5e,labels:()=>Z9e,library:()=>V9e,mermaid:()=>f5e,overwriteConfirm:()=>p5e,publishDialog:()=>l5e,publishSuccessDialog:()=>g5e,roomDialog:()=>u5e,stats:()=>E5e,toast:()=>d5e,toolBar:()=>A5e,welcomeScreen:()=>h5e});var Z9e,V9e,j9e,X9e,$9e,A5e,e5e,t5e,r5e,i5e,u5e,a5e,n5e,o5e,s5e,l5e,g5e,c5e,C5e,B5e,E5e,d5e,I5e,h5e,Q5e,p5e,f5e,Fcr;var D5e=P(()=>{qt();Z9e={paste:"Επικόλληση",pasteAsPlaintext:"Επικόλληση ως απλό κείμενο",pasteCharts:"Επικόλληση γραφημάτων",selectAll:"Επιλογή όλων",multiSelect:"Προσθέστε το στοιχείο στην επιλογή",moveCanvas:"Μετακίνηση καμβά",cut:"Αποκοπή",copy:"Αντιγραφή",copyAsPng:"Αντιγραφή στο πρόχειρο ως PNG",copyAsSvg:"Αντιγραφή στο πρόχειρο ως SVG",copyText:"Αντιγραφή στο πρόχειρο ως κείμενο",copySource:"",convertToCode:"",bringForward:"Στο προσκήνιο",sendToBack:"Ένα επίπεδο πίσω",bringToFront:"Ένα επίπεδο μπροστά",sendBackward:"Στο παρασκήνιο",delete:"Διαγραφή",copyStyles:"Αντιγραφή εμφάνισης",pasteStyles:"Επικόλληση εμφάνισης",stroke:"Μολυβιά",background:"Φόντο",fill:"Γέμισμα",strokeWidth:"Πάχος μολυβιάς",strokeStyle:"Στυλ περιγράμματος",strokeStyle_solid:"Συμπαγής",strokeStyle_dashed:"Διακεκομμένη με παύλες",strokeStyle_dotted:"Διακεκομμένη με τελείες",sloppiness:"Ακαταστασία",opacity:"Διαφάνεια",textAlign:"Στοίχιση κειμένου",edges:"Άκρες",sharp:"Οξύ",round:"Στρογγυλό",arrowheads:"Σύμβολα βελών",arrowhead_none:"Κανένα",arrowhead_arrow:"Βέλος",arrowhead_bar:"Μπάρα",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Τρίγωνο",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Μέγεθος γραμματοσειράς",fontFamily:"Γραμματοσειρά",addWatermark:'Προσθήκη "Φτιαγμένο με Excalidraw"',handDrawn:"Σχεδιασμένο στο χέρι",normal:"Κανονική",code:"Κώδικας",small:"Μικρό",medium:"Μεσαίο",large:"Μεγάλο",veryLarge:"Πολύ μεγάλο",solid:"Συμπαγής",hachure:"Εκκόλαψη",zigzag:"",crossHatch:"Διασταυρούμενη εκκόλαψη",thin:"Λεπτή",bold:"Έντονη",left:"Αριστερά",center:"Κέντρο",right:"Δεξιά",extraBold:"Πολύ έντονη",architect:"Αρχιτέκτονας",artist:"Καλλιτέχνης",cartoonist:"Σκιτσογράφος",fileTitle:"Όνομα αρχείου",colorPicker:"Επιλογή Χρώματος",canvasColors:"Χρησιμοποείται στον καμβά",canvasBackground:"Φόντο καμβά",drawingCanvas:"Σχεδίαση καμβά",layers:"Στρώματα",actions:"Ενέργειες",language:"Γλώσσα",liveCollaboration:"Live συνεργασία...",duplicateSelection:"Δημιουργία αντιγράφου",untitled:"Χωρίς τίτλο",name:"Όνομα",yourName:"Το όνομά σου",madeWithExcalidraw:"Φτιαγμένο με Excalidraw",group:"Δημιουργία ομάδας από επιλογή",ungroup:"Κατάργηση ομάδας από επιλογή",collaborators:"Συνεργάτες",showGrid:"Προβολή πλέγματος",addToLibrary:"Προσθήκη στη βιβλιοθήκη",removeFromLibrary:"Αφαίρεση από τη βιβλιοθήκη",libraryLoadingMessage:"Φόρτωση βιβλιοθήκης…",libraries:"Άλλες βιβλιοθήκες",loadingScene:"Φόρτωση σκηνής…",align:"Στοίχιση",alignTop:"Στοίχιση πάνω",alignBottom:"Στοίχιση κάτω",alignLeft:"Στοίχιση αριστερά",alignRight:"Στοίχιση δεξιά",centerVertically:"Κέντρο κάθετα",centerHorizontally:"Κέντρο οριζόντια",distributeHorizontally:"Οριζόντια κατανομή",distributeVertically:"Κατακόρυφη κατανομή",flipHorizontal:"Οριζόντια αναστροφή",flipVertical:"Κατακόρυφη αναστροφή",viewMode:"Λειτουργία προβολής",share:"Κοινοποίηση",showStroke:"Εμφάνιση επιλογέα χρωμάτων πινελιάς",showBackground:"Εμφάνιση επιλογέα χρώματος φόντου",toggleTheme:"Εναλλαγή θέματος",personalLib:"Προσωπική Βιβλιοθήκη",excalidrawLib:"Βιβλιοθήκη Excalidraw",decreaseFontSize:"Μείωση μεγέθους γραμματοσειράς",increaseFontSize:"Αύξηση μεγέθους γραμματοσειράς",unbindText:"Αποσύνδεση κειμένου",bindText:"Δέσμευση κειμένου στο δοχείο",createContainerFromText:"",link:{edit:"Επεξεργασία συνδέσμου",editEmbed:"",create:"Δημιουργία συνδέσμου",createEmbed:"",label:"Σύνδεσμος",labelEmbed:"",empty:""},lineEditor:{edit:"Επεξεργασία γραμμής",exit:"Έξοδος επεξεργαστή κειμένου"},elementLock:{lock:"Κλείδωμα",unlock:"Ξεκλείδωμα",lockAll:"Κλείδωμα όλων",unlockAll:"Ξεκλείδωμα όλων"},statusPublished:"Δημοσιευμένο",sidebarLock:"Κρατήστε την πλαϊνή μπάρα ανοιχτή",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},V9e={noItems:"Δεν έχουν προστεθεί αντικείμενα ακόμη...",hint_emptyLibrary:"Επιλέξτε ένα στοιχείο στον καμβά για να το προσθέσετε εδώ, ή εγκαταστήστε μια βιβλιοθήκη από το δημόσιο αποθετήριο, παρακάτω.",hint_emptyPrivateLibrary:"Επιλέξτε ένα στοιχείο στον καμβά για να το προσθέσετε εδώ."},j9e={clearReset:"Επαναφορά του καμβά",exportJSON:"Εξαγωγή σε αρχείο",exportImage:"Εξαγωγή εικόνας...",export:"Αποθήκευση ως...",copyToClipboard:"Αντιγραφή στο πρόχειρο",save:"Αποθήκευση στο τρέχον αρχείο",saveAs:"Αποθήκευση ως",load:"Άνοιγμα",getShareableLink:"Δημόσιος σύνδεσμος",close:"Κλείσιμο",selectLanguage:"Επιλογή γλώσσας",scrollBackToContent:"Μετακινηθείτε πίσω στο περιεχόμενο",zoomIn:"Μεγέθυνση",zoomOut:"Σμίκρυνση",resetZoom:"Επαναφορά μεγέθυνσης",menu:"Μενού",done:"Τέλος",edit:"Επεξεργασία",undo:"Αναίρεση",redo:"Επαναφορά",resetLibrary:"Καθαρισμός βιβλιοθήκης",createNewRoom:"Δημιουργία νέου χώρου",fullScreen:"Πλήρης οθόνη",darkMode:"Σκοτεινή λειτουργία",lightMode:"Φωτεινή λειτουργία",zenMode:"Λειτουργία Zεν",objectsSnapMode:"",exitZenMode:"Έξοδος από την λειτουργία Zen",cancel:"Ακύρωση",clear:"Καθαρισμός",remove:"Κατάργηση",embed:"",publishLibrary:"Δημοσίευση",submit:"Υποβολή",confirm:"Επιβεβαίωση",embeddableInteractionButton:""},X9e={clearReset:"Αυτό θα σβήσει ολόκληρο τον καμβά. Είσαι σίγουρος;",couldNotCreateShareableLink:"Δεν ήταν δυνατή η δημιουργία συνδέσμου κοινής χρήσης.",couldNotCreateShareableLinkTooBig:"Δεν ήταν δυνατή η δημιουργία κοινόχρηστου συνδέσμου: η σκηνή είναι πολύ μεγάλη",couldNotLoadInvalidFile:"Δεν μπόρεσε να ανοίξει εσφαλμένο αρχείο",importBackendFailed:"Η εισαγωγή από το backend απέτυχε.",cannotExportEmptyCanvas:"Δεν είναι δυνατή η εξαγωγή κενού καμβά.",couldNotCopyToClipboard:"Αδυναμία αντιγραφής στο πρόχειρο.",decryptFailed:"Δεν ήταν δυνατή η αποκρυπτογράφηση δεδομένων.",uploadedSecurly:"Η μεταφόρτωση έχει εξασφαλιστεί με κρυπτογράφηση από άκρο σε άκρο, πράγμα που σημαίνει ότι ο διακομιστής Excalidraw και τρίτα μέρη δεν μπορούν να διαβάσουν το περιεχόμενο.",loadSceneOverridePrompt:"Η φόρτωση εξωτερικού σχεδίου θα αντικαταστήσει το υπάρχον περιεχόμενο. Επιθυμείτε να συνεχίσετε;",collabStopOverridePrompt:`Η διακοπή της συνεδρίας θα αντικαταστήσει το προηγούμενο, τοπικά αποθηκευμένο σχέδιο. Είστε σίγουροι?
|
||
|
||
(Αν θέλετε να διατηρήσετε το τοπικό σας σχέδιο, απλά κλείστε την καρτέλα του προγράμματος περιήγησης.)`,errorAddingToLibrary:"Αδυναμία προσθήκης αντικειμένου στη βιβλιοθήκη",errorRemovingFromLibrary:"Αδυναμία αφαίρεσης αντικειμένου από τη βιβλιοθήκη",confirmAddLibrary:"Αυτό θα προσθέσει {{numShapes}} σχήμα(τα) στη βιβλιοθήκη σας. Είστε σίγουροι;",imageDoesNotContainScene:"Αυτή η εικόνα δεν φαίνεται να περιέχει δεδομένα σκηνής. Έχετε ενεργοποιήσει την ενσωμάτωση σκηνής κατά την εξαγωγή;",cannotRestoreFromImage:"Η σκηνή δεν ήταν δυνατό να αποκατασταθεί από αυτό το αρχείο εικόνας",invalidSceneUrl:"Δεν ήταν δυνατή η εισαγωγή σκηνής από το URL που δώσατε. Είτε έχει λάθος μορφή, είτε δεν περιέχει έγκυρα δεδομένα JSON Excalidraw.",resetLibrary:"Αυτό θα καθαρίσει τη βιβλιοθήκη σας. Είστε σίγουροι;",removeItemsFromsLibrary:"Διαγραφή {{count}} αντικειμένου(ων) από τη βιβλιοθήκη;",invalidEncryptionKey:"Το κλειδί κρυπτογράφησης πρέπει να είναι 22 χαρακτήρες. Η ζωντανή συνεργασία είναι απενεργοποιημένη.",collabOfflineWarning:`Δεν υπάρχει διαθέσιμη σύνδεση στο internet.
|
||
Οι αλλαγές σας δεν θα αποθηκευτούν!`},$9e={unsupportedFileType:"Μη υποστηριζόμενος τύπος αρχείου.",imageInsertError:"Αδυναμία εισαγωγής εικόνας. Προσπαθήστε ξανά αργότερα...",fileTooBig:"Το αρχείο είναι πολύ μεγάλο. Το μέγιστο επιτρεπόμενο μέγεθος είναι {{maxSize}}.",svgImageInsertError:"Αδυναμία εισαγωγής εικόνας SVG. Η σήμανση της SVG δεν φαίνεται έγκυρη.",failedToFetchImage:"",invalidSVGString:"Μη έγκυρο SVG.",cannotResolveCollabServer:"Αδυναμία σύνδεσης με τον διακομιστή συνεργασίας. Παρακαλώ ανανεώστε τη σελίδα και προσπαθήστε ξανά.",importLibraryError:"Αδυναμία φόρτωσης βιβλιοθήκης",collabSaveFailed:"Η αποθήκευση στη βάση δεδομένων δεν ήταν δυνατή. Αν το προβλήματα παραμείνει, θα πρέπει να αποθηκεύσετε το αρχείο σας τοπικά για να βεβαιωθείτε ότι δεν χάνετε την εργασία σας.",collabSaveFailed_sizeExceeded:"Η αποθήκευση στη βάση δεδομένων δεν ήταν δυνατή, ο καμβάς φαίνεται να είναι πολύ μεγάλος. Θα πρέπει να αποθηκεύσετε το αρχείο τοπικά για να βεβαιωθείτε ότι δεν θα χάσετε την εργασία σας.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},A5e={selection:"Επιλογή",image:"Εισαγωγή εικόνας",rectangle:"Ορθογώνιο",diamond:"Ρόμβος",ellipse:"Έλλειψη",arrow:"Βέλος",line:"Γραμμή",freedraw:"Σχεδίαση",text:"Κείμενο",library:"Βιβλιοθήκη",lock:"Κράτησε επιλεγμένο το εργαλείο μετά το σχέδιο",penMode:"Λειτουργία μολυβιού - αποτροπή αφής",link:"Προσθήκη/ Ενημέρωση συνδέσμου για ένα επιλεγμένο σχήμα",eraser:"Γόμα",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},e5e={canvasActions:"Ενέργειες καμβά",selectedShapeActions:"Επιλεγμένες ενέργειες σχήματος",shapes:"Σχήματα"},t5e={canvasPanning:"",linearElement:"Κάνε κλικ για να ξεκινήσεις πολλαπλά σημεία, σύρε για μια γραμμή",freeDraw:"Κάντε κλικ και σύρτε, απελευθερώσατε όταν έχετε τελειώσει",text:"Tip: μπορείτε επίσης να προσθέστε κείμενο με διπλό-κλικ οπουδήποτε με το εργαλείο επιλογών",embeddable:"",text_selected:"Κάντε διπλό κλικ ή πατήστε ENTER για να επεξεργαστείτε το κείμενο",text_editing:"Πατήστε Escape ή CtrlOrCmd+ENTER για να ολοκληρώσετε την επεξεργασία",linearElementMulti:"Κάνε κλικ στο τελευταίο σημείο ή πάτησε Escape ή Enter για να τελειώσεις",lockAngle:"Μπορείτε να περιορίσετε τη γωνία κρατώντας πατημένο το SHIFT",resize:`Μπορείς να περιορίσεις τις αναλογίες κρατώντας το SHIFT ενώ αλλάζεις μέγεθος,
|
||
κράτησε πατημένο το ALT για αλλαγή μεγέθους από το κέντρο`,resizeImage:`Μπορείτε να αλλάξετε το μέγεθος ελεύθερα κρατώντας πατημένο το SHIFT,
|
||
κρατήστε πατημένο το ALT για να αλλάξετε το μέγεθος από το κέντρο`,rotate:"Μπορείς να περιορίσεις τις γωνίες κρατώντας πατημένο το πλήκτρο SHIFT κατά την περιστροφή",lineEditor_info:"Κρατήστε πατημένο Ctrl ή Cmd και πατήστε το πλήκτρο Ctrl ή Cmd + Enter για επεξεργασία σημείων",lineEditor_pointSelected:`Πατήστε Διαγραφή για αφαίρεση σημείου(ων),
|
||
CtrlOrCmd+D για αντιγραφή, ή σύρετε για μετακίνηση`,lineEditor_nothingSelected:`Επιλέξτε ένα σημείο για να επεξεργαστείτε (κρατήστε πατημένο το SHIFT για να επιλέξετε πολλαπλά),
|
||
ή κρατήστε πατημένο το Alt και κάντε κλικ για να προσθέσετε νέα σημεία`,placeImage:"Κάντε κλικ για να τοποθετήσετε την εικόνα ή κάντε κλικ και σύρετε για να ορίσετε το μέγεθός της χειροκίνητα",publishLibrary:"Δημοσιεύστε τη δική σας βιβλιοθήκη",bindTextToElement:"Πατήστε Enter για προσθήκη κειμένου",deepBoxSelect:"Κρατήστε πατημένο το CtrlOrCmd για να επιλέξετε βαθιά, και να αποτρέψετε τη μεταφορά",eraserRevert:"Κρατήστε πατημένο το Alt για να επαναφέρετε τα στοιχεία που σημειώθηκαν για διαγραφή",firefox_clipboard_write:'Αυτή η επιλογή μπορεί πιθανώς να ενεργοποιηθεί αλλάζοντας την ρύθμιση "dom.events.asyncClipboard.clipboardItem" σε "true". Για να αλλάξετε τις ρυθμίσεις του προγράμματος περιήγησης στο Firefox, επισκεφθείτε τη σελίδα "about:config".',disableSnapping:""},r5e={cannotShowPreview:"Αδυναμία εμφάνισης προεπισκόπησης",canvasTooBig:"Ο καμβάς μπορεί να είναι μεγάλος.",canvasTooBigTip:"Συμβουλή: προσπαθήστε να μετακινήσετε τα πιο απομακρυσμένα στοιχεία λίγο πιο κοντά μαζί."},i5e={headingMain:"Συνέβη κάποιο σφάλμα. Προσπάθησε <button>φόρτωσε ξανά την σελίδα.</button>",clearCanvasMessage:"Εάν το παραπάνω δεν δουλέψει, προσπάθησε <button>καθαρίσετε τον κανβά.</button>",clearCanvasCaveat:" Αυτό θα προκαλέσει απώλεια της δουλειάς σου ",trackedToSentry:"Το σφάλμα με αναγνωριστικό {{eventId}} παρακολουθήθηκε στο σύστημά μας.",openIssueMessage:"Ήμασταν πολύ προσεκτικοί για να μην συμπεριλάβουμε τις πληροφορίες της σκηνής σου στο σφάλμα. Αν η σκηνή σου δεν είναι ιδιωτική, παρακαλώ σκέψου να ακολουθήσεις το δικό μας <button>ανιχνευτής σφαλμάτων.</button> Παρακαλώ να συμπεριλάβετε τις παρακάτω πληροφορίες, αντιγράφοντας και επικολλώντας το ζήτημα στο GitHub.",sceneContent:"Περιεχόμενο σκηνής:"},u5e={desc_intro:"Μπορείς να προσκαλέσεις άλλους να δουλέψουν μαζί σου.",desc_privacy:"Μην ανησυχείς, η συνεδρία χρησιμοποιεί κρυπτογράφηση από σημείο σε σημείο, άρα οτιδήποτε κάνεις θα παραμείνει ανοιχτό μόνο σε εσένα. Ούτε οι μηχανές μας μπορούν να δουν τι κάνεις.",button_startSession:"Έναρξη Συνεδρίας",button_stopSession:"Τερματισμός Συνεδρίας",desc_inProgressIntro:"Η ζωντανή συνεργασία με άλλους είναι σε ενεργή.",desc_shareLink:"Μοιραστείτε τον σύνδεσμο με όποιον θέλετε να δουλέψετε μαζί:",desc_exitSession:"Η διακοπή θα σας αποσυνδέσει από το δωμάτιο, αλλά θα μπορείτε να συνεχίσετε να δουλεύετε στον πίνακα, τοπικά. Σημειώσατε ότι αυτό δεν θα επηρεάσει τον πίνακα άλλων, και θα μπορούν ακόμα να συνεισφέρουν στην δική τους έκδοση.",shareTitle:"Συμμετάσχετε σε μια ζωντανή συνεδρία συνεργασίας για το Excalidraw"},a5e={title:"Σφάλμα"},n5e={disk_title:"Αποθήκευση στο δίσκο",disk_details:"Εξαγωγή δεδομένων σκηνής σε ένα αρχείο από το οποίο μπορείτε να εισάγετε αργότερα.",disk_button:"Αποθήκευση σε αρχείο",link_title:"Κοινόχρηστος σύνδεσμος",link_details:"Εξαγωγή ως σύνδεσμο μόνο για ανάγνωση.",link_button:"Εξαγωγή σε Σύνδεση",excalidrawplus_description:"Αποθηκεύστε τη σκηνή στο χώρο εργασίας σας Excalidraw+.",excalidrawplus_button:"Εξαγωγή",excalidrawplus_exportError:"Δεν ήταν δυνατή η εξαγωγή στο Excalidraw+ αυτή τη στιγμή..."},o5e={blog:"Διαβάστε το Blog μας",click:"κλικ",deepSelect:"Βαθιά επιλογή",deepBoxSelect:"Βαθιά επιλογή μέσα στο πλαίσιο και αποτροπή συρσίματος",curvedArrow:"Κυρτό βέλος",curvedLine:"Κυρτή γραμμή",documentation:"Εγχειρίδιο",doubleClick:"διπλό κλικ",drag:"σύρε",editor:"Επεξεργαστής",editLineArrowPoints:"",editText:"",github:"Βρήκατε πρόβλημα; Υποβάλετε το",howto:"Ακολουθήστε τους οδηγούς μας",or:"ή",preventBinding:"Αποτροπή δέσμευσης βέλων",tools:"Εργαλεία",shortcuts:"Συντομεύσεις πληκτρολογίου",textFinish:"Ολοκλήρωση επεξεργασίας (επεξεργαστής κειμένου)",textNewLine:"Προσθήκη νέας γραμμής (επεξεργαστής κειμένου)",title:"Βοήθεια",view:"Προβολή",zoomToFit:"Zoom ώστε να χωρέσουν όλα τα στοιχεία",zoomToSelection:"Ζουμ στην επιλογή",toggleElementLock:"Κλείδωμα/Ξεκλείδωμα επιλογής",movePageUpDown:"Μετακίνηση σελίδας πάνω/κάτω",movePageLeftRight:"Μετακίνηση σελίδας αριστερά/δεξιά"},s5e={title:"Καθαρισμός καμβά"},l5e={title:"Δημοσίευση βιβλιοθήκης",itemName:"Όνομα αντικειμένου",authorName:"Όνομα δημιουργού",githubUsername:"GitHub username",twitterUsername:"Twitter username",libraryName:"Όνομα βιβλιοθήκης",libraryDesc:"Περιγραφή βιβλιοθήκης",website:"Ιστοσελίδα",placeholder:{authorName:"Όνομα ή όνομα χρήστη",libraryName:"Όνομα της βιβλιοθήκης σας",libraryDesc:"Περιγραφή της βιβλιοθήκης σας ώστε να βοηθήσει το κοινό να κατανοήσει τη χρήση της",githubHandle:"Όνομα χρήστη στο GitHub (προαιρετικό), ώστε να μπορείτε να επεξεργαστείτε τη βιβλιοθήκη αφού υποβληθεί για αξιολόγηση",twitterHandle:"Όνομα χρήστη Twitter (προαιρετικό), ώστε να γνωρίζουμε σε ποιον/η να δώσουμε εύσημα κατά την προώθηση μέσω Twitter",website:"Σύνδεσμος για την προσωπική σας ιστοσελίδα ή αλλού (προαιρετικό)"},errors:{required:"Απαιτείται",website:"Εισάγετε μια έγκυρη διεύθυνση URL"},noteDescription:"Υποβάλετε τη βιβλιοθήκη σας για να συμπεριληφθεί στο <link>δημόσιο αποθετήριο βιβλιοθήκης</link>ώστε να χρησιμοποιηθεί από άλλα άτομα στα σχέδιά τους.",noteGuidelines:"Η βιβλιοθήκη πρέπει πρώτα να εγκριθεί χειροκίνητα. Παρακαλώ διαβάστε τους <link>οδηγίες</link> πριν την υποβολή. Θα χρειαστείτε έναν λογαριασμό GitHub για την επικοινωνία και για να προβείτε σε αλλαγές εφ' όσον χρειαστεί, αλλά δεν είναι αυστηρή απαίτηση.",noteLicense:"Με την υποβολή, συμφωνείτε ότι η βιβλιοθήκη θα δημοσιευθεί υπό την <link>Άδεια MIT, </link>που εν συντομία σημαίνει ότι ο καθένας μπορεί να τα χρησιμοποιήσει χωρίς περιορισμούς.",noteItems:"Κάθε αντικείμενο της βιβλιοθήκης πρέπει να έχει το δικό του όνομα ώστε να μπορεί να φιλτραριστεί. Θα συμπεριληφθούν τα ακόλουθα αντικείμενα βιβλιοθήκης:",atleastOneLibItem:"Παρακαλώ επιλέξτε τουλάχιστον ένα αντικείμενο βιβλιοθήκης για να ξεκινήσετε",republishWarning:"Σημείωση: μερικά από τα επιλεγμένα αντικέιμενα έχουν ήδη επισημανθεί ως δημοσιευμένα/υποβεβλημένα. Θα πρέπει να υποβάλετε αντικείμενα εκ νέου μόνο για να ενημερώσετε μία ήδη υπάρχουσα βιβλιοθήκη ή υποβολή."},g5e={title:"Η βιβλιοθήκη υποβλήθηκε",content:"Ευχαριστούμε {{authorName}}. Η βιβλιοθήκη σας έχει υποβληθεί για αξιολόγηση. Μπορείτε να παρακολουθείτε τη διαδικασία<link>εδώ</link>"},c5e={resetLibrary:"Καθαρισμός βιβλιοθήκης",removeItemsFromLib:"Αφαίρεση επιλεγμένων αντικειμένων από τη βιβλιοθήκη"},C5e={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},B5e={tooltip:"Τα σχέδιά σου είναι κρυπτογραφημένα από άκρο σε άκρο, έτσι δεν θα είναι ποτέ ορατά μέσα από τους διακομιστές του Excalidraw.",link:"Blog post στην κρυπτογράφηση end-to-end στο Excalidraw"},E5e={angle:"Γωνία",element:"Στοιχείο",elements:"Στοιχεία",height:"Ύψος",scene:"Σκηνή",selected:"Επιλεγμένα",storage:"Χώρος",title:"Στατιστικά για σπασίκλες",total:"Σύνολο ",version:"Έκδοση",versionCopy:"Κάνε κλικ για αντιγραφή",versionNotAvailable:"Έκδοση μη διαθέσιμη",width:"Πλάτος"},d5e={addedToLibrary:"Προστέθηκε στη βιβλιοθήκη",copyStyles:"Αντιγράφηκαν στυλ.",copyToClipboard:"Αντιγράφηκε στο πρόχειρο.",copyToClipboardAsPng:`Αντιγράφηκε {{exportSelection}} στο πρόχειρο ως PNG
|
||
({{exportColorScheme}})`,fileSaved:"Το αρχείο αποθηκεύτηκε.",fileSavedToFilename:"Αποθηκεύτηκε στο {filename}",canvas:"καμβάς",selection:"επιλογή",pasteAsSingleElement:`Χρησιμοποίησε το {{shortcut}} για να επικολλήσεις ως ένα μόνο στοιχείο,
|
||
ή να επικολλήσεις σε έναν υπάρχοντα επεξεργαστή κειμένου`,unableToEmbed:"",unrecognizedLinkFormat:""},I5e={transparent:"Διαφανές",black:"Μαύρο",white:"Λευκό",red:"Κόκκινο",pink:"Ροζ",grape:"Σταφυλί",violet:"Βιολετί",gray:"Γκρι",blue:"Μπλε",cyan:"Κυανό",teal:"Τιρκουάζ",green:"Πράσινο",yellow:"Κίτρινο",orange:"Πορτοκαλί",bronze:"Χαλκινο"},h5e={app:{center_heading:"Όλα τα δεδομένα σας αποθηκεύονται τοπικά στο πρόγραμμα περιήγησης.",center_heading_plus:"Μήπως θέλατε να πάτε στο Excalidraw+;",menuHint:"Εξαγωγή, προτιμήσεις, γλώσσες, ..."},defaults:{menuHint:"Εξαγωγή, προτιμήσεις και άλλες επιλογές...",center_heading:"Διαγράμματα. Εύκολα. Γρήγορα.",toolbarHint:"Επιλέξτε ένα εργαλείο και ξεκινήστε να σχεδιάζεται!",helpHint:"Συντομεύσεις και βοήθεια"}},Q5e={mostUsedCustomColors:"Πιο χρησιμοποιούμενα χρώματα",colors:"Χρώματα",shades:"Αποχρώσεις",hexCode:"Κωδικός Hex",noShades:"Δεν υπάρχουν διαθέσιμες αποχρώσεις για αυτό το χρώμα"},p5e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},f5e={title:"",button:"",description:"",syntax:"",preview:""},Fcr={labels:Z9e,library:V9e,buttons:j9e,alerts:X9e,errors:$9e,toolBar:A5e,headings:e5e,hints:t5e,canvasError:r5e,errorSplash:i5e,roomDialog:u5e,errorDialog:a5e,exportDialog:n5e,helpDialog:o5e,clearCanvasDialog:s5e,publishDialog:l5e,publishSuccessDialog:g5e,confirmDialog:c5e,imageExportDialog:C5e,encrypted:B5e,stats:E5e,toast:d5e,colors:I5e,welcomeScreen:h5e,colorPicker:Q5e,overwriteConfirm:p5e,mermaid:f5e}});var y5e={};yt(y5e,{alerts:()=>u4A,buttons:()=>i4A,canvasError:()=>g4A,clearCanvasDialog:()=>h4A,colorPicker:()=>k4A,colors:()=>b4A,commandPalette:()=>N4A,confirmDialog:()=>f4A,default:()=>bS,element:()=>o4A,elementLink:()=>e4A,encrypted:()=>D4A,errorDialog:()=>E4A,errorSplash:()=>c4A,errors:()=>a4A,exportDialog:()=>d4A,fontList:()=>L4A,headings:()=>s4A,helpDialog:()=>I4A,hints:()=>l4A,imageExportDialog:()=>m4A,labels:()=>A4A,library:()=>t4A,mermaid:()=>x4A,overwriteConfirm:()=>F4A,publishDialog:()=>Q4A,publishSuccessDialog:()=>p4A,quickSearch:()=>S4A,roomDialog:()=>B4A,search:()=>r4A,shareDialog:()=>C4A,stats:()=>y4A,toast:()=>w4A,toolBar:()=>n4A,userList:()=>R4A,welcomeScreen:()=>v4A});var w5e=P(()=>{G4A();qt()});var $5e={};yt($5e,{alerts:()=>F5e,buttons:()=>k5e,canvasError:()=>N5e,clearCanvasDialog:()=>H5e,colorPicker:()=>V5e,colors:()=>z5e,confirmDialog:()=>O5e,default:()=>xcr,encrypted:()=>_5e,errorDialog:()=>M5e,errorSplash:()=>G5e,errors:()=>x5e,exportDialog:()=>T5e,headings:()=>L5e,helpDialog:()=>Y5e,hints:()=>R5e,imageExportDialog:()=>P5e,labels:()=>b5e,library:()=>v5e,mermaid:()=>X5e,overwriteConfirm:()=>j5e,publishDialog:()=>K5e,publishSuccessDialog:()=>J5e,roomDialog:()=>U5e,stats:()=>W5e,toast:()=>q5e,toolBar:()=>S5e,welcomeScreen:()=>Z5e});var b5e,v5e,k5e,F5e,x5e,S5e,L5e,R5e,N5e,G5e,U5e,M5e,T5e,Y5e,H5e,K5e,J5e,O5e,P5e,_5e,W5e,q5e,z5e,Z5e,V5e,j5e,X5e,xcr;var Abe=P(()=>{qt();b5e={paste:"Pegar",pasteAsPlaintext:"Pegar como texto sin formato",pasteCharts:"Pegar gráficos",selectAll:"Seleccionar todo",multiSelect:"Añadir elemento a la selección",moveCanvas:"Mover el lienzo",cut:"Cortar",copy:"Copiar",copyAsPng:"Copiar al portapapeles como PNG",copyAsSvg:"Copiar al portapapeles como SVG",copyText:"Copiar al portapapeles como texto",copySource:"Copiar fuente al portapapeles",convertToCode:"Convertir a código",bringForward:"Traer hacia delante",sendToBack:"Enviar al fondo",bringToFront:"Traer al frente",sendBackward:"Enviar atrás",delete:"Borrar",copyStyles:"Copiar estilos",pasteStyles:"Pegar estilos",stroke:"Trazo",background:"Fondo",fill:"Rellenar",strokeWidth:"Grosor del trazo",strokeStyle:"Estilo del trazo",strokeStyle_solid:"Sólido",strokeStyle_dashed:"Discontinua",strokeStyle_dotted:"Punteado",sloppiness:"Estilo de trazo",opacity:"Opacidad",textAlign:"Alineado de texto",edges:"Bordes",sharp:"Afilado",round:"Redondo",arrowheads:"Puntas de flecha",arrowhead_none:"Ninguna",arrowhead_arrow:"Flecha",arrowhead_bar:"Barra",arrowhead_circle:"Círculo",arrowhead_circle_outline:"Círculo (contorno)",arrowhead_triangle:"Triángulo",arrowhead_triangle_outline:"Triángulo (contorno)",arrowhead_diamond:"Diamante",arrowhead_diamond_outline:"Diamante (contorno)",fontSize:"Tamaño de la fuente",fontFamily:"Tipo de fuente",addWatermark:'Agregar "Hecho con Excalidraw"',handDrawn:"Dibujado a mano",normal:"Normal",code:"Código",small:"Pequeña",medium:"Mediana",large:"Grande",veryLarge:"Muy grande",solid:"Sólido",hachure:"Folleto",zigzag:"Zigzag",crossHatch:"Rayado transversal",thin:"Fino",bold:"Grueso",left:"Izquierda",center:"Centrado",right:"Derecha",extraBold:"Extra negrita",architect:"Arquitecto",artist:"Artista",cartoonist:"Caricatura",fileTitle:"Nombre del archivo",colorPicker:"Selector de color",canvasColors:"Usado en lienzo",canvasBackground:"Fondo del lienzo",drawingCanvas:"Lienzo de dibujo",layers:"Capas",actions:"Acciones",language:"Idioma",liveCollaboration:"Colaboración en directo...",duplicateSelection:"Duplicar",untitled:"Sin título",name:"Nombre",yourName:"Tu nombre",madeWithExcalidraw:"Hecho con Excalidraw",group:"Agrupar selección",ungroup:"Desagrupar selección",collaborators:"Colaboradores",showGrid:"Mostrar cuadrícula",addToLibrary:"Añadir a la biblioteca",removeFromLibrary:"Eliminar de la biblioteca",libraryLoadingMessage:"Cargando biblioteca…",libraries:"Explorar bibliotecas",loadingScene:"Cargando escena…",align:"Alinear",alignTop:"Alineación superior",alignBottom:"Alineación inferior",alignLeft:"Alinear a la izquierda",alignRight:"Alinear a la derecha",centerVertically:"Centrar verticalmente",centerHorizontally:"Centrar horizontalmente",distributeHorizontally:"Distribuir horizontalmente",distributeVertically:"Distribuir verticalmente",flipHorizontal:"Girar horizontalmente",flipVertical:"Girar verticalmente",viewMode:"Modo presentación",share:"Compartir",showStroke:"Mostrar selector de color de trazo",showBackground:"Mostrar el selector de color de fondo",toggleTheme:"Cambiar tema",personalLib:"Biblioteca personal",excalidrawLib:"Biblioteca Excalidraw",decreaseFontSize:"Disminuir tamaño de letra",increaseFontSize:"Aumentar el tamaño de letra",unbindText:"Desvincular texto",bindText:"Vincular texto al contenedor",createContainerFromText:"Envolver el texto en un contenedor",link:{edit:"Editar enlace",editEmbed:"Editar enlace e incrustar",create:"Crear enlace",createEmbed:"Crear enlace e incrustar",label:"Enlace",labelEmbed:"Enlazar e incrustar",empty:"No se ha establecido un enlace"},lineEditor:{edit:"Editar línea",exit:"Salir del editor en línea"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear todo",unlockAll:"Desbloquear todo"},statusPublished:"Publicado",sidebarLock:"Mantener barra lateral abierta",selectAllElementsInFrame:"Seleccionar todos los elementos en el marco",removeAllElementsFromFrame:"Eliminar todos los elementos del marco",eyeDropper:"Seleccionar un color del lienzo",textToDiagram:"Texto a diagrama",prompt:"Sugerencia"},v5e={noItems:"No hay elementos añadidos todavía...",hint_emptyLibrary:"Seleccione un elemento en el lienzo para añadirlo aquí, o instale una biblioteca del repositorio público, a continuación.",hint_emptyPrivateLibrary:"Seleccione un elemento del lienzo para añadirlo aquí."},k5e={clearReset:"Limpiar lienzo y reiniciar el color de fondo",exportJSON:"Exportar a archivo",exportImage:"Exportar imagen...",export:"Guardar en...",copyToClipboard:"Copiar al portapapeles",save:"Guardar en archivo actual",saveAs:"Guardar como",load:"Abrir",getShareableLink:"Obtener enlace para compartir",close:"Cerrar",selectLanguage:"Elegir idioma",scrollBackToContent:"Volver al contenido",zoomIn:"Acercarse",zoomOut:"Alejarse",resetZoom:"Restablecer zoom",menu:"Menú",done:"Hecho",edit:"Editar",undo:"Deshacer",redo:"Rehacer",resetLibrary:"Reiniciar biblioteca",createNewRoom:"Crear nueva sala",fullScreen:"Pantalla completa",darkMode:"Modo oscuro",lightMode:"Modo claro",zenMode:"Modo Zen",objectsSnapMode:"Ajustar a los objetos",exitZenMode:"Salir del modo Zen",cancel:"Cancelar",clear:"Borrar",remove:"Eliminar",embed:"",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:"Pulsa para interactuar"},F5e={clearReset:"Esto limpiará todo el lienzo. Estás seguro?",couldNotCreateShareableLink:"No se pudo crear un enlace para compartir.",couldNotCreateShareableLinkTooBig:"No se pudo crear el enlace para compartir: la escena es demasiado grande",couldNotLoadInvalidFile:"No se pudo cargar el archivo no válido",importBackendFailed:"La importación falló.",cannotExportEmptyCanvas:"No se puede exportar un lienzo vació",couldNotCopyToClipboard:"No se pudo copiar al portapapeles.",decryptFailed:"No se pudieron descifrar los datos.",uploadedSecurly:"La carga ha sido asegurada con cifrado de principio a fin, lo que significa que el servidor de Excalidraw y terceros no pueden leer el contenido.",loadSceneOverridePrompt:"Si carga este dibujo externo, reemplazará el que tiene. ¿Desea continuar?",collabStopOverridePrompt:`Detener la sesión sobrescribirá su dibujo anterior almacenado localmente. ¿Está seguro?
|
||
|
||
(Si desea mantener su dibujo local, simplemente cierre la pestaña del navegador.)`,errorAddingToLibrary:"No se pudo agregar el elemento a la biblioteca",errorRemovingFromLibrary:"No se pudo quitar el elemento de la biblioteca",confirmAddLibrary:"Esto añadirá {{numShapes}} forma(s) a tu biblioteca. ¿Estás seguro?",imageDoesNotContainScene:"Esta imagen no parece contener datos de escena. ¿Ha habilitado la inserción de la escena durante la exportación?",cannotRestoreFromImage:"No se pudo restaurar la escena desde este archivo de imagen",invalidSceneUrl:"No se ha podido importar la escena desde la URL proporcionada. Está mal formada, o no contiene datos de Excalidraw JSON válidos.",resetLibrary:"Esto borrará tu biblioteca. ¿Estás seguro?",removeItemsFromsLibrary:"¿Eliminar {{count}} elemento(s) de la biblioteca?",invalidEncryptionKey:"La clave de cifrado debe tener 22 caracteres. La colaboración en vivo está deshabilitada.",collabOfflineWarning:`No hay conexión a internet disponible.
|
||
¡No se guardarán los cambios!`},x5e={unsupportedFileType:"Tipo de archivo no admitido.",imageInsertError:"No se pudo insertar la imagen. Inténtelo de nuevo más tarde...",fileTooBig:"Archivo demasiado grande. El tamaño máximo permitido es {{maxSize}}.",svgImageInsertError:"No se pudo insertar la imagen SVG. El código SVG parece inválido.",failedToFetchImage:"Error al obtener la imagen.",invalidSVGString:"SVG no válido.",cannotResolveCollabServer:"No se pudo conectar al servidor colaborador. Por favor, vuelva a cargar la página y vuelva a intentarlo.",importLibraryError:"No se pudo cargar la librería",collabSaveFailed:"No se pudo guardar en la base de datos del backend. Si los problemas persisten, debería guardar su archivo localmente para asegurarse de que no pierde su trabajo.",collabSaveFailed_sizeExceeded:"No se pudo guardar en la base de datos del backend, el lienzo parece ser demasiado grande. Debería guardar el archivo localmente para asegurarse de que no pierde su trabajo.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Parece que estás usando el navegador Brave con el ajuste <bold>Forzar el bloqueo de huellas digitales</bold> habilitado.",line2:"Esto podría resultar en errores en los <bold>Elementos de Texto</bold> en tus dibujos.",line3:"Recomendamos fuertemente deshabilitar esta configuración. Puedes seguir <link>estos pasos</link> sobre cómo hacerlo.",line4:""},libraryElementTypeError:{embeddable:"",iframe:"Los elementos IFrame no se pueden agregar a la biblioteca.",image:""},asyncPasteFailedOnRead:"No se pudo pegar (no se pudo leer desde el portapapeles del sistema).",asyncPasteFailedOnParse:"No se pudo pegar.",copyToSystemClipboardFailed:"No se pudo copiar al portapapeles."},S5e={selection:"Selección",image:"Insertar imagen",rectangle:"Rectángulo",diamond:"Diamante",ellipse:"Elipse",arrow:"Flecha",line:"Línea",freedraw:"Dibujar",text:"Texto",library:"Biblioteca",lock:"Mantener la herramienta seleccionada activa después de dibujar",penMode:"Modo Lápiz - previene toque",link:"Añadir/Actualizar enlace para una forma seleccionada",eraser:"Borrar",frame:"",magicframe:"Esquema a código",embeddable:"Incrustar Web",laser:"Puntero láser",hand:"Mano (herramienta de panoramización)",extraTools:"Más herramientas",mermaidToExcalidraw:"Mermaid a Excalidraw",magicSettings:"Ajustes AI"},L5e={canvasActions:"Acciones del lienzo",selectedShapeActions:"Acciones de la forma seleccionada",shapes:"Formas"},R5e={canvasPanning:"Para mover el lienzo, mantenga la rueda del ratón o la barra espaciadora mientras arrastra o utilice la herramienta de mano",linearElement:"Haz clic para dibujar múltiples puntos, arrastrar para solo una línea",freeDraw:"Haz clic y arrastra, suelta al terminar",text:"Consejo: también puedes añadir texto haciendo doble clic en cualquier lugar con la herramienta de selección",embeddable:"Haga clic y arrastre para crear un sitio web incrustado",text_selected:"Doble clic o pulse ENTER para editar el texto",text_editing:"Pulse Escape o Ctrl/Cmd + ENTER para terminar de editar",linearElementMulti:"Haz clic en el último punto o presiona Escape o Enter para finalizar",lockAngle:"Puedes restringir el ángulo manteniendo presionado el botón SHIFT",resize:`Para mantener las proporciones mantén SHIFT presionado mientras modificas el tamaño,
|
||
mantén presionado ALT para modificar el tamaño desde el centro`,resizeImage:`Puede redimensionar libremente pulsando SHIFT,
|
||
pulse ALT para redimensionar desde el centro`,rotate:"Puedes restringir los ángulos manteniendo presionado SHIFT mientras giras",lineEditor_info:"Mantenga pulsado CtrlOrCmd y haga doble click o presione CtrlOrCmd + Enter para editar puntos",lineEditor_pointSelected:"Presione Suprimir para eliminar el/los punto(s), CtrlOrCmd+D para duplicarlo, o arrástrelo para moverlo",lineEditor_nothingSelected:`Seleccione un punto a editar (mantenga MAYÚSCULAS para seleccionar múltiples),
|
||
o mantenga pulsado Alt y haga click para añadir nuevos puntos`,placeImage:"Haga clic para colocar la imagen o haga click y arrastre para establecer su tamaño manualmente",publishLibrary:"Publica tu propia biblioteca",bindTextToElement:"Presione Entrar para agregar",deepBoxSelect:"Mantén CtrlOrCmd para seleccionar en profundidad, y para evitar arrastrar",eraserRevert:"Mantenga pulsado Alt para revertir los elementos marcados para su eliminación",firefox_clipboard_write:'Esta característica puede ser habilitada estableciendo la bandera "dom.events.asyncClipboard.clipboardItem" a "true". Para cambiar las banderas del navegador en Firefox, visite la página "about:config".',disableSnapping:"Mantén pulsado CtrlOrCmd para desactivar el ajuste"},N5e={cannotShowPreview:"No se puede mostrar la vista previa",canvasTooBig:"El lienzo podría ser demasiado grande.",canvasTooBigTip:"Sugerencia: intenta acercar un poco más los elementos más lejanos."},G5e={headingMain:"Se encontró un error. Intente <button>recargando la página.</button>",clearCanvasMessage:"Si la recarga no funciona, intente <button>limpiando el lienzo.</button>",clearCanvasCaveat:" Esto provocará la pérdida de su trabajo ",trackedToSentry:"El error con el identificador {{eventId}} fue rastreado en nuestro sistema.",openIssueMessage:"Fuimos muy cautelosos de no incluir la información de tu escena en el error. Si tu escena no es privada, por favor considera seguir nuestro <button>rastreador de errores.</button> Por favor, incluya la siguiente información copiándola y pegándola en el issue de GitHub.",sceneContent:"Contenido de la escena:"},U5e={desc_intro:"Puede invitar a otras personas a tu actual escena para que colaboren contigo.",desc_privacy:"No te preocupes, la sesión usa encriptación de punta a punta, por lo que todo lo que se dibuje se mantendrá privadamente. Ni siquiera nuestro servidor podrá ver lo que haces.",button_startSession:"Iniciar sesión",button_stopSession:"Detener sesión",desc_inProgressIntro:"La sesión de colaboración en vivo está ahora en progreso.",desc_shareLink:"Comparte este enlace con cualquier persona con quien quieras colaborar:",desc_exitSession:"Detener la sesión te desconectará de la sala, pero podrás seguir trabajando con la escena en su computadora, esto es de modo local. Ten en cuenta que esto no afectará a otras personas, y que las mismas seguirán siendo capaces de colaborar en tu escena.",shareTitle:"Únase a una sesión colaborativa en vivo en Excalidraw"},M5e={title:"Error"},T5e={disk_title:"Guardar en disco",disk_details:"Exportar los datos de la escena a un archivo desde el cual pueda importar más tarde.",disk_button:"Guardar en archivo",link_title:"Enlace para compartir",link_details:"Exportar como enlace de sólo lectura.",link_button:"Exportar a Link",excalidrawplus_description:"Guarde la escena en su espacio de trabajo de Excalidraw+.",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"No se pudo exportar a Excalidraw+ en este momento..."},Y5e={blog:"Lea nuestro blog",click:"click",deepSelect:"Selección profunda",deepBoxSelect:"Seleccione en profundidad dentro de la caja, y evite arrastrar",curvedArrow:"Flecha curva",curvedLine:"Línea curva",documentation:"Documentación",doubleClick:"doble clic",drag:"arrastrar",editor:"Editor",editLineArrowPoints:"Editar puntos de línea/flecha",editText:"Editar texto / añadir etiqueta",github:"¿Ha encontrado un problema? Envíelo",howto:"Siga nuestras guías",or:"o",preventBinding:"Evitar enlace de flechas",tools:"Herramientas",shortcuts:"Atajos del teclado",textFinish:"Finalizar edición (editor de texto)",textNewLine:"Añadir nueva linea (editor de texto)",title:"Ayuda",view:"Vista",zoomToFit:"Ajustar la vista para mostrar todos los elementos",zoomToSelection:"Ampliar selección",toggleElementLock:"Bloquear/desbloquear selección",movePageUpDown:"Mover página hacia arriba/abajo",movePageLeftRight:"Mover página hacia la izquierda/derecha"},H5e={title:"Borrar lienzo"},K5e={title:"Publicar biblioteca",itemName:"Nombre del artículo",authorName:"Nombre del autor",githubUsername:"Nombre de usuario de GitHub",twitterUsername:"Nombre de usuario de Twitter",libraryName:"Nombre de la biblioteca",libraryDesc:"Descripción de la biblioteca",website:"Sitio Web",placeholder:{authorName:"Nombre o nombre de usuario",libraryName:"Nombre de tu biblioteca",libraryDesc:"Descripción de su biblioteca para ayudar a la gente a entender su uso",githubHandle:"Nombre de usuario de GitHub (opcional), así podrá editar la biblioteca una vez enviada para su revisión",twitterHandle:"Nombre de usuario de Twitter (opcional), así sabemos a quién acreditar cuando se promociona en Twitter",website:"Enlace a su sitio web personal o en cualquier otro lugar (opcional)"},errors:{required:"Requerido",website:"Introduce una URL válida"},noteDescription:"Envía tu biblioteca para ser incluida en el <link>repositorio de librería pública</link>para que otras personas utilicen en sus dibujos.",noteGuidelines:"La biblioteca debe ser aprobada manualmente primero. Por favor, lea la <link>pautas</link> antes de enviar. Necesitará una cuenta de GitHub para comunicarse y hacer cambios si se solicita, pero no es estrictamente necesario.",noteLicense:"Al enviar, usted acepta que la biblioteca se publicará bajo el <link>Licencia MIT </link>que en breve significa que cualquiera puede utilizarlos sin restricciones.",noteItems:"Cada elemento de la biblioteca debe tener su propio nombre para que sea filtrable. Los siguientes elementos de la biblioteca serán incluidos:",atleastOneLibItem:"Por favor, seleccione al menos un elemento de la biblioteca para empezar",republishWarning:"Nota: algunos de los elementos seleccionados están marcados como ya publicados/enviados. Sólo debería volver a enviar elementos cuando se actualice una biblioteca o envío."},J5e={title:"Biblioteca enviada",content:"Gracias {{authorName}}. Su biblioteca ha sido enviada para ser revisada. Puede seguir el estado<link>aquí</link>"},O5e={resetLibrary:"Reiniciar biblioteca",removeItemsFromLib:"Eliminar elementos seleccionados de la biblioteca"},P5e={header:"Exportar imagen",label:{withBackground:"Fondo",onlySelected:"Sólo seleccionados",darkMode:"Modo oscuro",embedScene:"Incrustar escena",scale:"Escalar",padding:"Espaciado"},tooltip:{embedScene:""},title:{exportToPng:"Exportar a PNG",exportToSvg:"Exportar a SVG",copyPngToClipboard:"Copiar PNG al portapapeles"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiar al portapapeles"}},_5e={tooltip:"Tus dibujos están cifrados de punto a punto, por lo que los servidores de Excalidraw nunca los verán.",link:"Entrada en el blog sobre cifrado de extremo a extremo"},W5e={angle:"Ángulo",element:"Elemento",elements:"Elementos",height:"Alto",scene:"Escena",selected:"Seleccionado",storage:"Almacenamiento",title:"Estadísticas para nerds",total:"Total",version:"Versión",versionCopy:"Click para copiar",versionNotAvailable:"Versión no disponible",width:"Ancho"},q5e={addedToLibrary:"Añadido a la biblioteca",copyStyles:"Estilos copiados.",copyToClipboard:"Copiado en el portapapeles.",copyToClipboardAsPng:`Copiado {{exportSelection}} al portapapeles como PNG
|
||
({{exportColorScheme}})`,fileSaved:"Archivo guardado.",fileSavedToFilename:"Guardado en {filename}",canvas:"lienzo",selection:"selección",pasteAsSingleElement:`Usa {{shortcut}} para pegar como un solo elemento,
|
||
o pegar en un editor de texto existente`,unableToEmbed:"",unrecognizedLinkFormat:""},z5e={transparent:"Transparente",black:"Negro",white:"Blanco",red:"Rojo",pink:"Rosa",grape:"Uva",violet:"Violeta",gray:"Gris",blue:"Azul",cyan:"Cian",teal:"Turquesa",green:"Verde",yellow:"Amarillo",orange:"Naranja",bronze:"Bronce"},Z5e={app:{center_heading:"Toda su información es guardada localmente en su navegador.",center_heading_plus:"¿Quieres ir a Excalidraw+?",menuHint:"Exportar, preferencias, idiomas, ..."},defaults:{menuHint:"Exportar, preferencias y más...",center_heading:"Diagramas. Hecho. Simplemente.",toolbarHint:"¡Elige una herramienta y empieza a dibujar!",helpHint:"Atajos y ayuda"}},V5e={mostUsedCustomColors:"Colores personalizados más utilizados",colors:"Colores",shades:"",hexCode:"Código Hexadecimal",noShades:""},j5e={action:{exportToImage:{title:"Exportar como imagen",button:"Exportar como imagen",description:""},saveToDisk:{title:"Guardar en el disco",button:"Guardar en el disco",description:"Exporta los datos de la escena a un archivo desde el cual podrás importar más tarde."},excalidrawPlus:{title:"",button:"Exportar a Excalidraw+",description:""}},modal:{loadFromFile:{title:"Cargar desde un archivo",button:"Cargar desde un archivo",description:""},shareableLink:{title:"Cargar desde un enlace",button:"Reemplazar mi contenido",description:"Cargar un dibujo externo <bold>reemplazará tu contenido existente</bold>.<br></br>Puedes primero hacer una copia de seguridad de tu dibujo usando una de las opciones de abajo."}}},X5e={title:"Mermaid a Excalidraw",button:"Insertar",description:"Actualmente sólo <flowchartLink>Flowchart</flowchartLink>,<sequenceLink> Secuencia, </sequenceLink> y <classLink>Class </classLink>Diagramas son soportados. Los otros tipos se renderizarán como imagen en Excalidraw.",syntax:"Sintaxis Mermaid",preview:"Vista previa"},xcr={labels:b5e,library:v5e,buttons:k5e,alerts:F5e,errors:x5e,toolBar:S5e,headings:L5e,hints:R5e,canvasError:N5e,errorSplash:G5e,roomDialog:U5e,errorDialog:M5e,exportDialog:T5e,helpDialog:Y5e,clearCanvasDialog:H5e,publishDialog:K5e,publishSuccessDialog:J5e,confirmDialog:O5e,imageExportDialog:P5e,encrypted:_5e,stats:W5e,toast:q5e,colors:z5e,welcomeScreen:Z5e,colorPicker:V5e,overwriteConfirm:j5e,mermaid:X5e}});var kbe={};yt(kbe,{alerts:()=>ibe,buttons:()=>rbe,canvasError:()=>sbe,clearCanvasDialog:()=>Ebe,colorPicker:()=>wbe,colors:()=>Dbe,confirmDialog:()=>hbe,default:()=>Scr,encrypted:()=>pbe,errorDialog:()=>cbe,errorSplash:()=>lbe,errors:()=>ube,exportDialog:()=>Cbe,headings:()=>nbe,helpDialog:()=>Bbe,hints:()=>obe,imageExportDialog:()=>Qbe,labels:()=>ebe,library:()=>tbe,mermaid:()=>vbe,overwriteConfirm:()=>bbe,publishDialog:()=>dbe,publishSuccessDialog:()=>Ibe,roomDialog:()=>gbe,stats:()=>fbe,toast:()=>mbe,toolBar:()=>abe,welcomeScreen:()=>ybe});var ebe,tbe,rbe,ibe,ube,abe,nbe,obe,sbe,lbe,gbe,cbe,Cbe,Bbe,Ebe,dbe,Ibe,hbe,Qbe,pbe,fbe,mbe,Dbe,ybe,wbe,bbe,vbe,Scr;var Fbe=P(()=>{qt();ebe={paste:"Itsatsi",pasteAsPlaintext:"Itsatsi testu arrunt gisa",pasteCharts:"Itsatsi grafikoak",selectAll:"Hautatu dena",multiSelect:"Gehitu elementua hautapenera",moveCanvas:"Mugitu oihala",cut:"Ebaki",copy:"Kopiatu",copyAsPng:"Kopiatu arbelera PNG gisa",copyAsSvg:"Kopiatu arbelera SVG gisa",copyText:"Kopiatu arbelera testu gisa",copySource:"Kopiatu iturria arbelean",convertToCode:"Bihurtu kodea",bringForward:"Ekarri aurrerago",sendToBack:"Eraman atzera",bringToFront:"Ekarri aurrera",sendBackward:"Eraman atzerago",delete:"Ezabatu",copyStyles:"Kopiatu estiloak",pasteStyles:"Itsatsi estiloak",stroke:"Marra",background:"Atzeko planoa",fill:"Bete",strokeWidth:"Marraren zabalera",strokeStyle:"Marraren estiloa",strokeStyle_solid:"Solidoa",strokeStyle_dashed:"Marratua",strokeStyle_dotted:"Puntukatua",sloppiness:"Marraren trazoa",opacity:"Opakotasuna",textAlign:"Testuaren lerrokapena",edges:"Ertzak",sharp:"Ertz bizia",round:"Borobildua",arrowheads:"Gezi-puntak",arrowhead_none:"Bat ere ez",arrowhead_arrow:"Gezia",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Hirukia",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Letra-tamaina",fontFamily:"Letra-tipoa",addWatermark:'Gehitu "Excalidraw bidez egina"',handDrawn:"Eskuz marraztua",normal:"Normala",code:"Kodea",small:"Txikia",medium:"Ertaina",large:"Handia",veryLarge:"Oso handia",solid:"Solidoa",hachure:"Itzalduna",zigzag:"Sigi-saga",crossHatch:"Marraduna",thin:"Mehea",bold:"Lodia",left:"Ezkerrean",center:"Erdian",right:"Eskuinean",extraBold:"Oso lodia",architect:"Arkitektoa",artist:"Artista",cartoonist:"Marrazkilaria",fileTitle:"Fitxategi izena",colorPicker:"Kolore-hautatzailea",canvasColors:"Oihalean erabilita",canvasBackground:"Oihalaren atzeko planoa",drawingCanvas:"Marrazteko oihala",layers:"Geruzak",actions:"Ekintzak",language:"Hizkuntza",liveCollaboration:"Zuzeneko elkarlana...",duplicateSelection:"Bikoiztu",untitled:"Izengabea",name:"Izena",yourName:"Zure izena",madeWithExcalidraw:"Excalidraw bidez egina",group:"Hautapena taldea bihurtu",ungroup:"Desegin hautapenaren taldea",collaborators:"Kolaboratzaileak",showGrid:"Erakutsi sareta",addToLibrary:"Gehitu liburutegira",removeFromLibrary:"Kendu liburutegitik",libraryLoadingMessage:"Liburutegia kargatzen…",libraries:"Arakatu liburutegiak",loadingScene:"Eszena kargatzen…",align:"Lerrokatu",alignTop:"Lerrokatu goian",alignBottom:"Lerrokatu behean",alignLeft:"Lerrokatu ezkerrean",alignRight:"Lerrokatu eskuinean",centerVertically:"Erdiratu bertikalki",centerHorizontally:"Erdiratu horizontalki",distributeHorizontally:"Banandu horizontalki",distributeVertically:"Banandu bertikalki",flipHorizontal:"Irauli horizontalki",flipVertical:"Irauli bertikalki",viewMode:"Ikuspegia",share:"Partekatu",showStroke:"Erakutsi marraren kolore-hautatzailea",showBackground:"Erakutsi atzeko planoaren kolore-hautatzailea",toggleTheme:"Aldatu gaia",personalLib:"Liburutegi pertsonala",excalidrawLib:"Excalidraw liburutegia",decreaseFontSize:"Txikitu letra tamaina",increaseFontSize:"Handitu letra tamaina",unbindText:"Askatu testua",bindText:"Lotu testua edukiontziari",createContainerFromText:"Bilatu testua edukiontzi batean",link:{edit:"Editatu esteka",editEmbed:"Editatu esteka eta kapsulatu",create:"Sortu esteka",createEmbed:"Sortu esteka eta kapsulatu",label:"Esteka",labelEmbed:"Esteka eta kapsula",empty:"Ez da estekarik ezarri"},lineEditor:{edit:"Editatu lerroa",exit:"Irten lerro-editoretik"},elementLock:{lock:"Blokeatu",unlock:"Desblokeatu",lockAll:"Blokeatu guztiak",unlockAll:"Desblokeatu guztiak"},statusPublished:"Argitaratua",sidebarLock:"Mantendu alboko barra irekita",selectAllElementsInFrame:"Hautatu markoko elementu guztiak",removeAllElementsFromFrame:"Kendu markoko elementu guztiak",eyeDropper:"Aukeratu kolorea oihaletik",textToDiagram:"Testutik diagramara",prompt:""},tbe={noItems:"Oraindik ez da elementurik gehitu...",hint_emptyLibrary:"Hautatu oihaleko elementu bat hemen gehitzeko, edo instalatu liburutegi bat beheko biltegi publikotik.",hint_emptyPrivateLibrary:"Hautatu oihaleko elementu bat hemen gehitzeko."},rbe={clearReset:"Garbitu oihala",exportJSON:"Esportatu fitxategira",exportImage:"Esportatu irudia...",export:"Gorde hemen...",copyToClipboard:"Kopiatu arbelera",save:"Gorde uneko fitxategian",saveAs:"Gorde honela",load:"Ireki",getShareableLink:"Lortu partekatzeko esteka",close:"Itxi",selectLanguage:"Hautatu hizkuntza",scrollBackToContent:"Joan atzera edukira",zoomIn:"Handiagotu",zoomOut:"Txikiagotu",resetZoom:"Leheneratu zooma",menu:"Menua",done:"Egina",edit:"Editatu",undo:"Desegin",redo:"Berregin",resetLibrary:"Leheneratu liburutegia",createNewRoom:"Sortu gela berria",fullScreen:"Pantaila osoa",darkMode:"Modu iluna",lightMode:"Modu argia",zenMode:"Zen modua",objectsSnapMode:"Atxiki objektuei",exitZenMode:"Irten Zen modutik",cancel:"Utzi",clear:"Garbitu",remove:"Kendu",embed:"Aldatu kapsulatzea",publishLibrary:"Argitaratu",submit:"Bidali",confirm:"Bai",embeddableInteractionButton:"Egin klik elkar eragiteko"},ibe={clearReset:"Honek oihal osoa garbituko du. Ziur zaude?",couldNotCreateShareableLink:"Ezin izan da partekatzeko estekarik sortu.",couldNotCreateShareableLinkTooBig:"Ezin izan da partekatzeko estekarik sortu: eszena handiegia da",couldNotLoadInvalidFile:"Ezin izan da kargatu, fitxategiak ez du balio",importBackendFailed:"Inportazioak huts egin du.",cannotExportEmptyCanvas:"Ezin izan da oihal hutsa esportatu.",couldNotCopyToClipboard:"Ezin izan da arbelean kopiatu.",decryptFailed:"Ezin izan da deszifratu.",uploadedSecurly:"Kargatzea muturretik muturrerako zifratze bidez ziurtatu da, hau da, Excalidraw zerbitzariak eta hirugarrenek ezin dutela edukia irakurri.",loadSceneOverridePrompt:"Kanpoko marrazkia kargatzeak lehendik duzun edukia ordezkatuko du. Jarraitu nahi duzu?",collabStopOverridePrompt:`Saioa gelditzeak lokalean gordetako zure aurreko marrazkia gainidatziko du. Ziur zaude?
|
||
|
||
(Zure marrazki lokala mantendu nahi baduzu, itxi arakatzailearen fitxa.)`,errorAddingToLibrary:"Ezin izan da elementua liburutegian gehitu",errorRemovingFromLibrary:"Ezin izan da elementua liburutegitik kendu",confirmAddLibrary:"Honek {{numShapes}} forma gehituko ditu zure liburutegian. Ziur zaude?",imageDoesNotContainScene:"Irudi honek ez dirudi eszena daturik duenik. Eszena kapsulatzea gaitu al duzu esportazioan?",cannotRestoreFromImage:"Ezin izan da eszena leheneratu irudi fitxategi honetatik",invalidSceneUrl:"Ezin izan da eszena inportatu emandako URLtik. Gaizki eratuta dago edo ez du baliozko Excalidraw JSON daturik.",resetLibrary:"Honek zure liburutegia garbituko du. Ziur zaude?",removeItemsFromsLibrary:"Liburutegitik {{count}} elementu ezabatu?",invalidEncryptionKey:"Enkriptazio-gakoak 22 karaktere izan behar ditu. Zuzeneko lankidetza desgaituta dago.",collabOfflineWarning:`Ez dago Interneteko konexiorik.
|
||
Zure aldaketak ez dira gordeko!`},ube={unsupportedFileType:"Onartu gabeko fitxategi mota.",imageInsertError:"Ezin izan da irudia txertatu. Saiatu berriro geroago...",fileTooBig:"Fitxategia handiegia da. Onartutako gehienezko tamaina {{maxSize}} da.",svgImageInsertError:"Ezin izan da SVG irudia txertatu. SVG markak baliogabea dirudi.",failedToFetchImage:"Ezin izan da irudia eskuratu.",invalidSVGString:"SVG baliogabea.",cannotResolveCollabServer:"Ezin izan da elkarlaneko zerbitzarira konektatu. Mesedez, berriro kargatu orria eta saiatu berriro.",importLibraryError:"Ezin izan da liburutegia kargatu",collabSaveFailed:"Ezin izan da backend datu-basean gorde. Arazoak jarraitzen badu, zure fitxategia lokalean gorde beharko zenuke zure lana ez duzula galtzen ziurtatzeko.",collabSaveFailed_sizeExceeded:"Ezin izan da backend datu-basean gorde, ohiala handiegia dela dirudi. Fitxategia lokalean gorde beharko zenuke zure lana galtzen ez duzula ziurtatzeko.",imageToolNotSupported:"Irudiak desgaituta daude.",brave_measure_text_error:{line1:"Brave arakatzailea erabiltzen ari zarela dirudi <bold>Blokeatu hatz-markak erasokorki</bold> ezarpena gaituta.",line2:"Honek zure marrazkietako <bold>Testu-elementuak</bold> hautsi ditzake.",line3:"Ezarpen hau desgaitzea gomendatzen dugu. <link>urrats hauek</link> jarrai ditzakezu hori nola egin jakiteko.",line4:"Ezarpen hau desgaituz gero, testu-elementuen bistaratzea konpontzen ez bada, ireki <issueLink>arazo</issueLink> gure GitHub-en edo idatzi iezaguzu <discordLink>Discord</discordLink> helbidera"},libraryElementTypeError:{embeddable:"Kapsulatutako elementuak ezin dira liburutegira gehitu.",iframe:"IFrame elementuak ezin dira liburutegira gehitu.",image:"Laster egongo da irudiak liburutegian gehitzeko laguntza!"},asyncPasteFailedOnRead:"Ezin izan da itsatsi (ezin izan da sistemaren arbeletik irakurri).",asyncPasteFailedOnParse:"Ezin izan da itsatsi.",copyToSystemClipboardFailed:"Ezin izan da arbelean kopiatu."},abe={selection:"Hautapena",image:"Txertatu irudia",rectangle:"Laukizuzena",diamond:"Diamantea",ellipse:"Elipsea",arrow:"Gezia",line:"Lerroa",freedraw:"Marraztu",text:"Testua",library:"Liburutegia",lock:"Mantendu aktibo hautatutako tresna marraztu ondoren",penMode:"Luma modua - ukipena saihestu",link:"Gehitu / Eguneratu esteka hautatutako forma baterako",eraser:"Borragoma",frame:"Marko tresna",magicframe:"Wireframe kodetzeko",embeddable:"Web kapsulatzea",laser:"Laser punteroa",hand:"Eskua (panoratze tresna)",extraTools:"Tresna gehiago",mermaidToExcalidraw:"",magicSettings:"AI ezarpenak"},nbe={canvasActions:"Canvas ekintzak",selectedShapeActions:"Hautatutako formaren ekintzak",shapes:"Formak"},obe={canvasPanning:"Oihala mugitzeko, eutsi saguaren gurpila edo zuriune-barra arrastatzean, edo erabili esku tresna",linearElement:"Egin klik hainbat puntu hasteko, arrastatu lerro bakarrerako",freeDraw:"Egin klik eta arrastatu, askatu amaitutakoan",text:"Aholkua: testua gehitu dezakezu edozein lekutan klik bikoitza eginez hautapen tresnarekin",embeddable:"Egin klik eta arrastatu webgunea kapsulatzeko",text_selected:"Egin klik bikoitza edo sakatu SARTU testua editatzeko",text_editing:"Sakatu Esc edo Ctrl+SARTU editatzen amaitzeko",linearElementMulti:"Egin klik azken puntuan edo sakatu Esc edo Sartu amaitzeko",lockAngle:"SHIFT sakatuta angelua mantendu dezakezu",resize:`Proportzioak mantendu ditzakezu SHIFT sakatuta tamaina aldatzen duzun bitartean.
|
||
sakatu ALT erditik tamaina aldatzeko`,resizeImage:`Tamaina libreki alda dezakezu SHIFT sakatuta,
|
||
sakatu ALT erditik tamaina aldatzeko`,rotate:"Angeluak mantendu ditzakezu SHIFT sakatuta biratzen duzun bitartean",lineEditor_info:"Eutsi sakatuta Ctrl edo Cmd eta egin klik bikoitza edo sakatu Ctrl edo Cmd + Sartu puntuak editatzeko",lineEditor_pointSelected:`Sakatu Ezabatu puntuak kentzeko,
|
||
Ktrl+D bikoizteko, edo arrastatu mugitzeko`,lineEditor_nothingSelected:`Hautatu editatzeko puntu bat (SHIFT sakatuta anitz hautatzeko),
|
||
edo eduki Alt sakatuta eta egin klik puntu berriak gehitzeko`,placeImage:"Egin klik irudia kokatzeko, edo egin klik eta arrastatu bere tamaina eskuz ezartzeko",publishLibrary:"Argitaratu zure liburutegia",bindTextToElement:"Sakatu Sartu testua gehitzeko",deepBoxSelect:"Eutsi Ctrl edo Cmd sakatuta aukeraketa sakona egiteko eta arrastatzea saihesteko",eraserRevert:"Eduki Alt sakatuta ezabatzeko markatutako elementuak leheneratzeko",firefox_clipboard_write:'Ezaugarri hau "dom.events.asyncClipboard.clipboardItem" marka "true" gisa ezarrita gaitu daiteke. Firefox-en arakatzailearen banderak aldatzeko, bisitatu "about:config" orrialdera.',disableSnapping:"Eduki sakatuta Ctrl edo Cmd tekla atxikipena desgaitzeko"},sbe={cannotShowPreview:"Ezin da oihala aurreikusi",canvasTooBig:"Agian oihala handiegia da.",canvasTooBigTip:"Aholkua: saiatu urrunen dauden elementuak pixka bat hurbiltzen."},lbe={headingMain:"Errore bat aurkitu da. Saiatu <button>orria birkargatzen.</button>",clearCanvasMessage:"Birkargatzea ez bada burutzen, saiatu <button>oihala garbitzen.</button>",clearCanvasCaveat:" Honen ondorioz lana galduko da ",trackedToSentry:"Identifikatzailearen errorea {{eventId}} gure sistemak behatu du.",openIssueMessage:"Oso kontuz ibili gara zure eszenaren informazioa errorean ez sartzeko. Zure eszena pribatua ez bada, kontuan hartu gure <button>erroreen jarraipena egitea.</button> Sartu beheko informazioa kopiatu eta itsatsi bidez GitHub issue-n.",sceneContent:"Eszenaren edukia:"},gbe={desc_intro:"Jendea zure uneko eszenara gonbida dezakezu zurekin elkarlanean aritzeko.",desc_privacy:"Ez kezkatu, saioak muturretik muturrerako enkriptatzea erabiltzen du, beraz, marrazten duzuna pribatua izango da. Gure zerbitzariak ere ezingo du ikusi zer egiten duzun.",button_startSession:"Hasi saioa",button_stopSession:"Itxi saioa",desc_inProgressIntro:"Zuzeneko lankidetza saioa abian da.",desc_shareLink:"Partekatu esteka hau elkarlanean aritu nahi duzun edonorekin:",desc_exitSession:"Saioa ixteak aretotik deskonektatuko zaitu, baina eszenarekin lanean jarraitu ahal izango duzu lokalean. Kontuan izan honek ez diela beste pertsonei eragingo, eta euren bertsioan elkarlanean aritu ahal izango dira.",shareTitle:"Sartu Excalidraw-en zuzeneko lankidetza-saio batean"},cbe={title:"Errorea"},Cbe={disk_title:"Gorde diskoan",disk_details:"Esportatu eszenaren datuak geroago inportatu ahal izango duzun fitxategi batan.",disk_button:"Gorde fitxategian",link_title:"Partekatzeko esteka",link_details:"Esportatu irakurtzeko soilik moduko esteka.",link_button:"Esportatu esteka",excalidrawplus_description:"Gorde eszena zure Excalidraw+ laneko areara.",excalidrawplus_button:"Esportatu",excalidrawplus_exportError:"Une honetan ezin izan da esportatu Excalidraw+era..."},Bbe={blog:"Irakurri gure bloga",click:"sakatu",deepSelect:"Hautapen sakona",deepBoxSelect:"Hautapen sakona egin laukizuzen bidez, eta saihestu arrastatzea",curvedArrow:"Gezi kurbatua",curvedLine:"Lerro kurbatua",documentation:"Dokumentazioa",doubleClick:"klik bikoitza",drag:"arrastatu",editor:"Editorea",editLineArrowPoints:"Editatu lerroak/gezi-puntuak",editText:"Editatu testua / gehitu etiketa",github:"Arazorik izan al duzu? Eman horren berri",howto:"Jarraitu gure gidak",or:"edo",preventBinding:"Saihestu gezien gainjartzea",tools:"Tresnak",shortcuts:"Laster-teklak",textFinish:"Bukatu edizioa (testu editorea)",textNewLine:"Gehitu lerro berri bat (testu editorea)",title:"Laguntza",view:"Bistaratu",zoomToFit:"Egin zoom elementu guztiak ikusteko",zoomToSelection:"Zooma hautapenera",toggleElementLock:"Blokeatu/desbloketatu hautapena",movePageUpDown:"Mugitu orria gora/behera",movePageLeftRight:"Mugitu orria ezker/eskuin"},Ebe={title:"Garbitu oihala"},dbe={title:"Argitaratu liburutegia",itemName:"Elementuaren izena",authorName:"Egilearen izena",githubUsername:"GitHub-eko erabiltzaile-izena",twitterUsername:"Twitter-eko erabiltzaile-izena",libraryName:"Liburutegiaren izena",libraryDesc:"Liburutegiaren deskripzioa",website:"Webgunea",placeholder:{authorName:"Zure izena edo erabiltzaile-izena",libraryName:"Zure liburutegiaren izena",libraryDesc:"Zure liburutegiaren deskripzioa laguntzeko jendeari ulertzen haren erabilpena",githubHandle:"GitHub heldulekua (aukerakoa), liburutegia editatu ahal izateko berrikustera bidalitakoan",twitterHandle:"Twitter-eko erabiltzaile-izena (aukerakoa), badakigu nori kreditatu behar dugun Twitter bidez sustatzeko",website:"Estekatu zure webgunera edo nahi duzun tokira (aukerakoa)"},errors:{required:"Beharrezkoa",website:"Sartu baliozko URL bat"},noteDescription:"Bidali zure liburutegira sartu ahal izateko <link>zure liburutegiko biltegian</link>beste jendeak bere marrazkietan erabili ahal izateko.",noteGuidelines:"Liburutegia eskuz onartu behar da. Irakurri <link>gidalerroak</link> bidali aurretik. GitHub kontu bat edukitzea komeni da komunikatzeko eta aldaketak egin ahal izateko, baina ez da guztiz beharrezkoa.",noteLicense:"Bidaltzen baduzu, onartzen duzu liburutegia <link>MIT lizentziarekin argitaratuko dela, </link>zeinak, laburbilduz, esan nahi du edozeinek erabiltzen ahal duela murrizketarik gabe.",noteItems:"Liburutegiko elementu bakoitzak bere izena eduki behar du iragazi ahal izateko. Liburutegiko hurrengo elementuak barne daude:",atleastOneLibItem:"Hautatu gutxienez liburutegiko elementu bat gutxienez hasi ahal izateko",republishWarning:"Oharra: hautatutako elementu batzuk dagoeneko argitaratuta/bidalita bezala markatuta daude. Elementuak berriro bidali behar dituzu lehendik dagoen liburutegi edo bidalketa eguneratzen duzunean."},Ibe={title:"Liburutegia bidali da",content:"Eskerrik asko {{authorName}}. Zure liburutegia bidali da berrikustera. Jarraitu dezakezu haren egoera<link>hemen</link>"},hbe={resetLibrary:"Leheneratu liburutegia",removeItemsFromLib:"Kendu hautatutako elementuak liburutegitik"},Qbe={header:"Esportatu irudia",label:{withBackground:"Atzeko planoa",onlySelected:"Hautapena soilik",darkMode:"Modu iluna",embedScene:"Txertatu eszena",scale:"Eskala",padding:"Betegarria"},tooltip:{embedScene:`Eszenaren datuak esportatutako PNG/SVG fitxategian gordeko dira, eszena bertatik berrezartzeko.
|
||
Esportatutako fitxategien tamaina handituko da.`},title:{exportToPng:"Esportatu PNG gisa",exportToSvg:"Esportatu SVG gisa",copyPngToClipboard:"Kopiatu PNG arbelera"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopiatu arbelean"}},pbe={tooltip:"Zure marrazkiak muturretik muturrera enkriptatu dira, beraz Excalidraw-ren zerbitzariek ezingo dituzte ikusi.",link:"Excalidraw-ren muturretik muturrerako enkriptatzearen gaineko mezua blogean"},fbe={angle:"Angelua",element:"Elementua",elements:"Elementuak",height:"Altuera",scene:"Eszena",selected:"Hautatua",storage:"Biltegia",title:"Datuak",total:"Guztira",version:"Bertsioa",versionCopy:"Klikatu kopiatzeko",versionNotAvailable:"Bertsio ez eskuragarria",width:"Zabalera"},mbe={addedToLibrary:"Liburutegira gehitu da",copyStyles:"Estiloak kopiatu dira.",copyToClipboard:"Arbelean kopiatu da.",copyToClipboardAsPng:`{{exportSelection}} kopiatu da arbelean PNG gisa
|
||
({{exportColorScheme}})`,fileSaved:"Fitxategia gorde da.",fileSavedToFilename:"{filename}-n gorde da",canvas:"oihala",selection:"hautapena",pasteAsSingleElement:`Erabili {{shortcut}} elementu bakar gisa itsasteko,
|
||
edo itsatsi lehendik dagoen testu-editore batean`,unableToEmbed:"Url hau txertatzea ez da une honetan onartzen. Sortu issue bat GitHub-en Urla zerrenda zurian sartzea eskatzeko",unrecognizedLinkFormat:"Kapsulatu duzun esteka ez dator bat espero den formatuarekin. Mesedez, saiatu iturburu-guneak emandako 'kapsulatu' katea itsasten"},Dbe={transparent:"Gardena",black:"Beltza",white:"Zuria",red:"Gorria",pink:"Arrosa",grape:"Mahats kolorea",violet:"Bioleta",gray:"Grisa",blue:"Urdina",cyan:"Ziana",teal:"Berde urdinxka",green:"Berdea",yellow:"Horia",orange:"Laranja",bronze:"Brontzea"},ybe={app:{center_heading:"Zure datu guztiak lokalean gordetzen dira zure nabigatzailean.",center_heading_plus:"Horren ordez Excalidraw+-era joan nahi al zenuen?",menuHint:"Esportatu, hobespenak, hizkuntzak..."},defaults:{menuHint:"Esportatu, hobespenak eta gehiago...",center_heading:"Diagramak. Egina. Sinplea.",toolbarHint:"Aukeratu tresna bat eta hasi marrazten!",helpHint:"Lasterbideak eta laguntza"}},wbe={mostUsedCustomColors:"Gehien erabilitako kolore pertsonalizatuak",colors:"Koloreak",shades:"Ñabardurak",hexCode:"Hez kodea",noShades:"Kolore honetarako ez dago ñabardurarik eskuragarri"},bbe={action:{exportToImage:{title:"Esportatu irudi gisa",button:"Esportatu irudi gisa",description:"Esportatu eszenaren datuak geroago inportatu ahal izango duzun irudi gisa."},saveToDisk:{title:"Gorde diskoan",button:"Gorde diskoan",description:"Esportatu eszenaren datuak geroago inportatu ahal izango duzun fitxategi batan."},excalidrawPlus:{title:"Excalidraw+",button:"Esportatu Excalidraw+ra",description:"Gorde eszena zure Excalidraw+ laneko areara."}},modal:{loadFromFile:{title:"Fitxategitik kargatu",button:"Fitxategitik kargatu",description:"Fitxategi batetik kargatzeak <bold>lehendik duzun edukia ordezkatuko du</bold>.<br></br>Lehenengo marrazkiaren babeskopia egin dezakezu beheko aukeretako bat erabiliz."},shareableLink:{title:"Estekatik kargatu",button:"Ordeztu nire edukia",description:"Kanpoko irudi bat kargatzeak <bold>lehendik duzun edukia ordezkatuko du</bold>.<br></br>. Zure marrazkiaren babeskopia egin dezakezu lehenik beheko aukeretako bat erabiliz."}}},vbe={title:"",button:"Txertatu",description:"",syntax:"",preview:"Aurrebista"},Scr={labels:ebe,library:tbe,buttons:rbe,alerts:ibe,errors:ube,toolBar:abe,headings:nbe,hints:obe,canvasError:sbe,errorSplash:lbe,roomDialog:gbe,errorDialog:cbe,exportDialog:Cbe,helpDialog:Bbe,clearCanvasDialog:Ebe,publishDialog:dbe,publishSuccessDialog:Ibe,confirmDialog:hbe,imageExportDialog:Qbe,encrypted:pbe,stats:fbe,toast:mbe,colors:Dbe,welcomeScreen:ybe,colorPicker:wbe,overwriteConfirm:bbe,mermaid:vbe}});var rve={};yt(rve,{alerts:()=>Rbe,buttons:()=>Lbe,canvasError:()=>Tbe,clearCanvasDialog:()=>Pbe,colorPicker:()=>Ave,colors:()=>Xbe,confirmDialog:()=>qbe,default:()=>Lcr,encrypted:()=>Zbe,errorDialog:()=>Kbe,errorSplash:()=>Ybe,errors:()=>Nbe,exportDialog:()=>Jbe,headings:()=>Ube,helpDialog:()=>Obe,hints:()=>Mbe,imageExportDialog:()=>zbe,labels:()=>xbe,library:()=>Sbe,mermaid:()=>tve,overwriteConfirm:()=>eve,publishDialog:()=>_be,publishSuccessDialog:()=>Wbe,roomDialog:()=>Hbe,stats:()=>Vbe,toast:()=>jbe,toolBar:()=>Gbe,welcomeScreen:()=>$be});var xbe,Sbe,Lbe,Rbe,Nbe,Gbe,Ube,Mbe,Tbe,Ybe,Hbe,Kbe,Jbe,Obe,Pbe,_be,Wbe,qbe,zbe,Zbe,Vbe,jbe,Xbe,$be,Ave,eve,tve,Lcr;var ive=P(()=>{qt();xbe={paste:"جای گذاری",pasteAsPlaintext:"جایگذاری به عنوان متن ساده",pasteCharts:"قراردادن نمودارها",selectAll:"انتخاب همه",multiSelect:"یک ایتم به انتخاب شده ها اضافه کنید.",moveCanvas:"جابجایی بوم",cut:"بریدن",copy:"کپی",copyAsPng:"کپی در حافطه موقت به صورت PNG",copyAsSvg:"کپی در حافطه موقت به صورت SVG",copyText:"کپی در حافطه موقت به صورت متن",copySource:"",convertToCode:"",bringForward:"جلو آوردن",sendToBack:"پس فرستادن",bringToFront:"جلو آوردن",sendBackward:"پس فرستادن",delete:"حذف",copyStyles:"کپی سبک",pasteStyles:"جای گذاری سبک",stroke:"حاشیه",background:"پس زمینه",fill:"رنگ آمیزی",strokeWidth:"ضخامت حاشیه",strokeStyle:"استایل حاشیه",strokeStyle_solid:"یکدست",strokeStyle_dashed:"خط چین",strokeStyle_dotted:"نقطه چین",sloppiness:"دقت",opacity:"شفافیت",textAlign:"چیدمان متن",edges:"لبه ها",sharp:"تیز",round:"دور",arrowheads:"سر پیکان",arrowhead_none:"هیچ کدام",arrowhead_arrow:"پیکان",arrowhead_bar:"میله ای",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"مثلث",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"اندازه قلم",fontFamily:"نوع قلم",addWatermark:'"ساخته شده با Excalidraw" را اضافه کن',handDrawn:"دست نویس",normal:"عادی",code:"کد",small:"کوچک",medium:"متوسط",large:"بزرگ",veryLarge:"بسیار بزرگ",solid:"توپر",hachure:"هاشور",zigzag:"زیگزاگ",crossHatch:"هاشور متقاطع",thin:"نازک",bold:"ضخیم",left:"چپ",center:"وسط",right:"راست",extraBold:"خیلی ضخیم",architect:"معمار",artist:"هنرمند",cartoonist:"کارتونیست",fileTitle:"نام فایل",colorPicker:"انتخابگر رنگ",canvasColors:"رنگ های بوم",canvasBackground:"بوم",drawingCanvas:"بوم نقاشی",layers:"لایه ها",actions:"عملیات",language:"زبان",liveCollaboration:"همکاری آنلاین...",duplicateSelection:"تکرار",untitled:"بدون عنوان",name:"نام",yourName:"نام شما",madeWithExcalidraw:"ساخته شده با Excalidraw",group:"گروهبندی انتخابها",ungroup:"حذف گروهبندی انتخابها",collaborators:"همکاران",showGrid:"نمایش گرید",addToLibrary:"افزودن به کتابخانه",removeFromLibrary:"حذف از کتابخانه",libraryLoadingMessage:"بارگذاری کتابخانه…",libraries:"مرور کردن کتابخانه ها",loadingScene:"باگذاری صحنه…",align:"تراز",alignTop:"تراز به بالا",alignBottom:"تراز به پایین",alignLeft:"تراز به چپ",alignRight:"تراز به راست",centerVertically:"وسط قرار دادن به صورت عمودی",centerHorizontally:"وسط قرار دادن به صورت افقی",distributeHorizontally:"توزیع کردن به صورت افقی",distributeVertically:"توزیع کردن به صورت عمودی",flipHorizontal:"چرخش افقی",flipVertical:"چرخش عمودی",viewMode:"حالت نمایش",share:"اشتراکگذاری",showStroke:"نمایش انتخاب کننده رنگ حاشیه",showBackground:"نمایش انتخاب کننده رنگ پس زمینه",toggleTheme:"تغییر تم",personalLib:"کتابخانه شخصی",excalidrawLib:"کتابخانه",decreaseFontSize:"کاهش اندازه فونت",increaseFontSize:"افزایش دادن اندازه فونت",unbindText:"بازکردن نوشته",bindText:"بستن نوشته",createContainerFromText:"متن را در یک جایگاه بپیچید",link:{edit:"ویرایش لینک",editEmbed:"",create:"ایجاد پیوند",createEmbed:"",label:"لینک",labelEmbed:"",empty:""},lineEditor:{edit:"ویرایش لینک",exit:"خروج از ویرایشگر"},elementLock:{lock:"قفل",unlock:"باز کردن",lockAll:"قفل همه",unlockAll:"باز کردن قفل همه"},statusPublished:"منتشر شده",sidebarLock:"باز نگه داشتن سایدبار",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"انتخاب رنگ از کرباس",textToDiagram:"",prompt:""},Sbe={noItems:"آیتمی به اینجا اضافه نشده...",hint_emptyLibrary:"یک آیتم روی بوم را برای اضافه شده به اینجا انتخاب کنید، یا یک کتابخانه از مخزن عمومی در بخش پایین را نصب کنید.",hint_emptyPrivateLibrary:"یک آیتم روی بوم را برای اضافه شدن به اینجا انتخاب کنید."},Lbe={clearReset:"پاکسازی بوم نقاشی",exportJSON:"خروجی در فایل",exportImage:"خروجی گرفتن از تصویر...",export:"ذخیره در...",copyToClipboard:"کپی در حافظه موقت",save:"ذخیره در همین فایل",saveAs:"ذخیره با نام",load:"باز کردن",getShareableLink:"دریافت لینک قابل اشتراک",close:"بستن",selectLanguage:"انتخاب زبان",scrollBackToContent:"به محتوا بروید",zoomIn:"بزرگ نمایی",zoomOut:"کوچک نمایی",resetZoom:"اندازه اصلی",menu:"فهرست",done:"انجام شد",edit:"ویرایش",undo:"بازگرد",redo:"از سر",resetLibrary:"تنظیم مجدد کتابخانه",createNewRoom:"ایجاد یک اتاق جدید",fullScreen:"تمامصفحه",darkMode:"حالت تیره",lightMode:"حالت روشن",zenMode:"حالت ذن",objectsSnapMode:"",exitZenMode:"خروج از حالت تمرکز",cancel:"لغو",clear:"پاک کردن",remove:"پاک کردن",embed:"",publishLibrary:"انتشار",submit:"ارسال",confirm:"تایید",embeddableInteractionButton:""},Rbe={clearReset:"این کار کل صفحه را پاک میکند. آیا مطمئنید؟",couldNotCreateShareableLink:"عدم توانایی در ساخت یک لینک قابل اشتراک.",couldNotCreateShareableLinkTooBig:"لینک قابل اشتراک گذاری ایجاد نشد: محتوای صحنه بسیار بزرگ است",couldNotLoadInvalidFile:"عدم توانایی در بازگذاری فایل نامعتبر",importBackendFailed:"بارگیری از پشت صحنه با شکست مواجه شد.",cannotExportEmptyCanvas:"بوم خالی قابل تبدیل نیست.",couldNotCopyToClipboard:"به کلیپ بورد کپی نشد.",decryptFailed:"رمزگشایی داده ها امکان پذیر نیست.",uploadedSecurly:"آپلود با رمزگذاری دو طرفه انجام میشود، به این معنی که سرور Excalidraw و اشخاص ثالث نمی توانند مطالب شما را بخوانند.",loadSceneOverridePrompt:"بارگزاری یک طرح خارجی محتوای فعلی رو از بین میبرد. آیا میخواهید ادامه دهید؟",collabStopOverridePrompt:`با توقف بوم نقاشی، نقشه قبلی و ذخیره شده محلی شما را بازنویسی می کند. مطمئنی؟
|
||
|
||
(اگر می خواهید نقاشی محلی خود را حفظ کنید، به سادگی برگه مرورگر را ببندید.)`,errorAddingToLibrary:"مورد به کتابخانه اضافه نشد",errorRemovingFromLibrary:"مورد از کتابخانه حذف نشد",confirmAddLibrary:"{{numShapes}} از اشکال به کتابخانه شما اضافه خواهد شد. مطمئن هستید؟",imageDoesNotContainScene:"به نظر نمی رسد این تصویر حاوی داده های بوم نقاشی باشد. آیا جاسازی صحنه را در حین خروجی فعال کرده اید?",cannotRestoreFromImage:"صحنه را نمی توان از این فایل تصویری بازیابی کرد",invalidSceneUrl:"بوم نقاشی از آدرس ارائه شده وارد نشد. این یا نادرست است، یا حاوی داده Excalidraw JSON معتبر نیست.",resetLibrary:"ین کار کل صفحه را پاک میکند. آیا مطمئنید?",removeItemsFromsLibrary:"حذف {{count}} آیتم(ها) از کتابخانه?",invalidEncryptionKey:"کلید رمزگذاری باید 22 کاراکتر باشد. همکاری زنده غیرفعال است.",collabOfflineWarning:`اتصال به اینترنت در دسترس نیست.
|
||
تغییرات شما ذخیره نمی شود!`},Nbe={unsupportedFileType:"نوع فایل پشتیبانی نشده.",imageInsertError:"عکس ارسال نشد. بعداً دوباره تلاش کنید...",fileTooBig:"فایل خیلی بزرگ است حداکثر اندازه مجاز {{maxSize}}.",svgImageInsertError:"تصویر SVG وارد نشد. نشانه گذاری SVG نامعتبر به نظر می رسد.",failedToFetchImage:"",invalidSVGString:"SVG نادرست.",cannotResolveCollabServer:"به سرور collab متصل نشد. لطفا صفحه را مجددا بارگذاری کنید و دوباره تلاش کنید.",importLibraryError:"دادهها بارگذاری نشدند",collabSaveFailed:"در پایگاه داده باطن ذخیره نشد. اگر مشکلات همچنان ادامه داشت، باید فایل خود را به صورت محلی ذخیره کنید تا مطمئن شوید کار خود را از دست نمی دهید.",collabSaveFailed_sizeExceeded:"در پایگاه داده بکند ذخیره نشد. اگر مشکلات همچنان ادامه داشت، باید فایل خود را به صورت محلی ذخیره کنید تا مطمئن شوید کار خود را از دست نمی دهید.",imageToolNotSupported:"",brave_measure_text_error:{line1:"به نظر میرسد از مرورگر Brave با تنظیم <bold> مسدود کردن شدید اثرانگشت</bold> استفاده میکنید.",line2:"این می تواند منجر به شکستن <bold>عناصر متن</bold> در نقاشی های شما شود.",line3:"اکیداً توصیه می کنیم این تنظیم را غیرفعال کنید. برای نحوه انجام این کار میتوانید <link>این مراحل</link> را دنبال کنید.",line4:"اگر غیرفعال کردن این تنظیم نمایش عناصر متنی را برطرف نکرد، لطفاً یک <issueLink>مشکل</issueLink> را در GitHub ما باز کنید یا برای ما در <discordLink>Discord</discordLink> بنویسید."},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Gbe={selection:"گزینش",image:"وارد کردن تصویر",rectangle:"مستطیل",diamond:"لوزی",ellipse:"بیضی",arrow:"پیکان",line:"خط",freedraw:"کشیدن",text:"متن",library:"کتابخانه",lock:"ابزار انتخاب شده را بعد از کشیدن نگه دار",penMode:"حالت قلم - جلوگیری از تماس",link:"افزودن/بهروزرسانی پیوند برای شکل انتخابی",eraser:"پاک کن",frame:"",magicframe:"",embeddable:"",laser:"",hand:"دست (ابزار پانینگ)",extraTools:"ابزارهای بیشتر",mermaidToExcalidraw:"",magicSettings:""},Ube={canvasActions:"عملیات روی بوم",selectedShapeActions:"عملیات روی شکل انتخاب شده",shapes:"شکلها"},Mbe={canvasPanning:"برای حرکت دادن بوم، چرخ ماوس یا فاصله را در حین کشیدن نگه دارید یا از ابزار دستی استفاده کنید",linearElement:"برای چند نقطه کلیک و برای یک خط بکشید",freeDraw:"کلیک کنید و بکشید و وقتی کار تمام شد رها کنید",text:"نکته: با برنامه انتخاب شده شما میتوانید با دوبار کلیک کردن هرکجا میخواید متن اظاف کنید",embeddable:"",text_selected:"دوبار کلیک کنید یا Enter را فشار دهید تا نقاط را ویرایش کنید",text_editing:"Escape یا CtrlOrCmd+ENTER را فشار دهید تا ویرایش تمام شود",linearElementMulti:"روی آخرین نقطه کلیک کنید یا کلید ESC را بزنید یا کلید Enter را بزنید برای اتمام کار",lockAngle:"با نگه داشتن SHIFT هنگام چرخش می توانید زاویه ها را محدود کنید",resize:"می توانید با نگه داشتن SHIFT در هنگام تغییر اندازه، نسبت ها را محدود کنید،ALT را برای تغییر اندازه از مرکز نگه دارید",resizeImage:`با نگه داشتن SHIFT می توانید آزادانه اندازه را تغییر دهید،
|
||
برای تغییر اندازه از مرکز، ALT را نگه دارید`,rotate:"با نگه داشتن SHIFT هنگام چرخش می توانید زاویه ها را محدود کنید",lineEditor_info:"CtrlOrCmd را نگه دارید و دوبار کلیک کنید یا CtrlOrCmd + Enter را فشار دهید تا نقاط را ویرایش کنید.",lineEditor_pointSelected:"برای حذف نقطه Delete برای کپی زدن Ctrl یا Cmd+D را بزنید و یا برای جابجایی بکشید",lineEditor_nothingSelected:`یک نقطه را برای ویرایش انتخاب کنید (SHIFT را برای انتخاب چندگانه نگه دارید)،
|
||
یا Alt را نگه دارید و برای افزودن نقاط جدید کلیک کنید`,placeImage:"برای قرار دادن تصویر کلیک کنید، یا کلیک کنید و بکشید تا اندازه آن به صورت دستی تنظیم شود",publishLibrary:"کتابخانه خود را منتشر کنید",bindTextToElement:"برای افزودن اینتر را بزنید",deepBoxSelect:"CtrlOrCmd را برای انتخاب عمیق و جلوگیری از کشیدن نگه دارید",eraserRevert:"Alt را نگه دارید تا عناصر علامت گذاری شده برای حذف برگردند",firefox_clipboard_write:'احتمالاً میتوان این ویژگی را با تنظیم پرچم «dom.events.asyncClipboard.clipboardItem» روی «true» فعال کرد. برای تغییر پرچم های مرورگر در فایرفاکس، از صفحه "about:config" دیدن کنید.',disableSnapping:""},Tbe={cannotShowPreview:"پیش نمایش نشان داده نمی شود",canvasTooBig:"بوم نقاشی بسیار بزرگ است.",canvasTooBigTip:"نکته: سعی کنید دورترین عناصر را کمی به همدیگر نزدیک کنید."},Ybe={headingMain:"",clearCanvasMessage:"اگر بازنشانی صفحه مشکل را حل نکرد این را امتحان کنید ",clearCanvasCaveat:" این باعث میشود کارهای شما ذخیره نشود ",trackedToSentry:"",openIssueMessage:"",sceneContent:"محتوای صحنه:"},Hbe={desc_intro:"می توانید افرادی را به صحنه فعلی خود دعوت کنید تا با شما همکاری کنند.",desc_privacy:"نگران نباشید، این جلسه از رمزگذاری دوطرفه استفاده می کند، پس هر چیزی بکشید خصوصی خواهد ماند. حتی سرور ما نمیتواند ببیند چیزی که شما طراحی میکنید.",button_startSession:"شروع جلسه",button_stopSession:"پایان جلسه",desc_inProgressIntro:"جلسه همکاری آنلاین در حال انجام است.",desc_shareLink:"این لینک را با هر کسی که می خواهید با او همکاری کنید به اشتراک بگذارید:",desc_exitSession:"با پایان دادن جلسه، شما از اتاق حذف میکند، اما می توانید به صورت محلی کار خود را با بوم ادامه دهید. توجه داشته باشید که این مورد بر سایر افراد تأثیر نمی گذارد و همچنان می توانند در نسخه خود همکاری کنند.",shareTitle:"به یک جلسه همکاری زنده در Excalidraw بپیوندید"},Kbe={title:"خطا"},Jbe={disk_title:"ذخیره در دیسک",disk_details:"داده های صحنه را به فایلی که بعداً می توانید از آن وارد کنید صادر کنید.",disk_button:"ذخیره در فایل",link_title:"لینک قابل اشتراکگذاری",link_details:"خروجی به عنوان یک پیوند فقط خواندنی.",link_button:"خروجی در فایل",excalidrawplus_description:"صحنه را در فضای کاری Excalidraw+ خود ذخیره کنید.",excalidrawplus_button:"خروجی گرفتن",excalidrawplus_exportError:"در حال حاضر نمیتوان به Excalidraw+ صادر کرد..."},Obe={blog:"بلاگ ما را بخوانید",click:"کلیک",deepSelect:"انتخاب عمیق",deepBoxSelect:"انتخاب عمیق در کادر، و جلوگیری از کشیدن",curvedArrow:"فلش خمیده",curvedLine:"منحنی",documentation:"مستندات",doubleClick:"دابل کلیک",drag:"کشیدن",editor:"ویرایشگر",editLineArrowPoints:"نقاط خط/پیکان را ویرایش کنید",editText:"ویرایش متن / افزودن برچسب",github:"اشکالی می بینید؟ گزارش دهید",howto:"راهنمای ما را دنبال کنید",or:"یا",preventBinding:"مانع شدن از چسبیدن فلش ها",tools:"ابزار",shortcuts:"میانبرهای صفحه کلید",textFinish:"پایان ویرایش (ویرایشگر متن)",textNewLine:"افزودن خط جدید (ویرایشگر متن)",title:"راهنما",view:"مشاهده",zoomToFit:"بزرگنمایی برای دیدن تمام آیتم ها",zoomToSelection:"بزرگنمایی قسمت انتخاب شده",toggleElementLock:"قفل/بازکردن انتخاب شده ها",movePageUpDown:"حرکت صفحه به بالا/پایین",movePageLeftRight:"حرکت صفحه به چپ/راست"},Pbe={title:"پاک کردن بوم"},_be={title:"انتشار کتابخانه",itemName:"نام آیتم",authorName:"نام نویسنده",githubUsername:"نام کاربری گیت هاب",twitterUsername:"نام کاربری توییتر",libraryName:"نام کتابخانه",libraryDesc:"توضیحات کتابخانه",website:"تارنما",placeholder:{authorName:"نام یا نام کاربری شما",libraryName:"اسم کتابخانه",libraryDesc:"شرحی از کتابخانه شما برای کمک به مردم برای درک استفاده از آن",githubHandle:"دسته GitHub (اختیاری)، بنابراین می توانید پس از ارسال برای بررسی، کتابخانه را ویرایش کنید",twitterHandle:"نام کاربری توییتر (اختیاری)، بنابراین می دانیم هنگام تبلیغ در توییتر به چه کسی اعتبار دهیم",website:"پیوند به وب سایت شخصی شما یا هر جای دیگر (اختیاری)"},errors:{required:"لازم",website:"وارد کردن آدرس درست"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"هر مورد کتابخانه باید نام خاص خود را داشته باشد تا قابل فیلتر باشد. اقلام کتابخانه زیر شامل خواهد شد:",atleastOneLibItem:"لطفاً حداقل یک مورد از کتابخانه را برای شروع انتخاب کنید",republishWarning:"توجه: برخی از موارد انتخاب شده به عنوان قبلاً منتشر شده/ارسال شده علامت گذاری شده اند. شما فقط باید هنگام بهروزرسانی یک کتابخانه موجود یا ارسال، موارد را دوباره ارسال کنید."},Wbe={title:"کتابخانه ارسال شد",content:"تشکر از شما {{authorName}}. کتابخانه شما برای بررسی ارسال شده است. می توانید وضعیت را پیگیری کنید"},qbe={resetLibrary:"تنظیم مجدد کتابخانه",removeItemsFromLib:"موارد انتخاب شده از موارد پسندیده حذف شوند"},zbe={header:"",label:{withBackground:"پس زمینه",onlySelected:"",darkMode:"حالت تیره",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"کپی در کلیپبورد"}},Zbe={tooltip:"شما در یک محیط رمزگزاری شده دو طرفه در حال طراحی هستید پس Excalidraw هرگز طرح های شما را نمیبند.",link:"پست وبلاگ در مورد رمزگذاری سرتاسر در Excalidraw"},Vbe={angle:"زاویه",element:"اِلمان",elements:"اِلمان ها",height:"ارتفاع",scene:"صحنه",selected:"انتخاب شده",storage:"حافظه",title:"آمار برای نردها",total:"مجموع",version:"نسخه",versionCopy:"برای کپی کردن کلیک کنید",versionNotAvailable:"نسخه غیرقابل دسترس",width:"عرض"},jbe={addedToLibrary:"به مجموعه اضافه شد",copyStyles:"کپی سبک.",copyToClipboard:"در کلیپبورد کپی شد.",copyToClipboardAsPng:`کپی {{exportSelection}} در کلیپبورد به عنوان PNG
|
||
({{exportColorScheme}})`,fileSaved:"فایل ذخیره شد.",fileSavedToFilename:"ذخیره در {filename}",canvas:"بوم",selection:"انتخاب",pasteAsSingleElement:`از {{shortcut}} برای چسباندن به عنوان یک عنصر استفاده کنید،
|
||
یا در یک ویرایشگر متن موجود جایگذاری کنید`,unableToEmbed:"",unrecognizedLinkFormat:""},Xbe={transparent:"شفاف",black:"سیاه",white:"سفید",red:"قرمز",pink:"صورتی",grape:"یاقوتی",violet:"بنفش",gray:"خاکستری",blue:"آبی",cyan:"فیروزهای",teal:"سبزآبی",green:"سبز",yellow:"زرد",orange:"نارنجی",bronze:"برنزی"},$be={app:{center_heading:"تمام داده های شما به صورت محلی در مرورگر شما ذخیره می شود.",center_heading_plus:"آیا میخواهید به جای آن به Excalidraw+ بروید؟",menuHint:"خروجی، ترجیحات، زبان ها، ..."},defaults:{menuHint:"خروجی، ترجیحات، وبیشتر ...",center_heading:"نمودارها .ساخته شده. ساده.",toolbarHint:"ابزاری را انتخاب کنید و نقاشی را شروع کنید!",helpHint:"میانبرها و راهنما"}},Ave={mostUsedCustomColors:"",colors:"رنگها",shades:"جلوهها",hexCode:"کدِ هگز",noShades:""},eve={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"ذخیره در دیسک",button:"ذخیره در دیسک",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"بارگذاری از فایل",button:"بارگذاری از فایل",description:""},shareableLink:{title:"",button:"",description:""}}},tve={title:"",button:"",description:"",syntax:"",preview:"پیشنمایش"},Lcr={labels:xbe,library:Sbe,buttons:Lbe,alerts:Rbe,errors:Nbe,toolBar:Gbe,headings:Ube,hints:Mbe,canvasError:Tbe,errorSplash:Ybe,roomDialog:Hbe,errorDialog:Kbe,exportDialog:Jbe,helpDialog:Obe,clearCanvasDialog:Pbe,publishDialog:_be,publishSuccessDialog:Wbe,confirmDialog:qbe,imageExportDialog:zbe,encrypted:Zbe,stats:Vbe,toast:jbe,colors:Xbe,welcomeScreen:$be,colorPicker:Ave,overwriteConfirm:eve,mermaid:tve}});var Lve={};yt(Lve,{alerts:()=>ove,buttons:()=>nve,canvasError:()=>Cve,clearCanvasDialog:()=>Qve,colorPicker:()=>Fve,colors:()=>vve,confirmDialog:()=>mve,default:()=>Rcr,encrypted:()=>yve,errorDialog:()=>dve,errorSplash:()=>Bve,errors:()=>sve,exportDialog:()=>Ive,headings:()=>gve,helpDialog:()=>hve,hints:()=>cve,imageExportDialog:()=>Dve,labels:()=>uve,library:()=>ave,mermaid:()=>Sve,overwriteConfirm:()=>xve,publishDialog:()=>pve,publishSuccessDialog:()=>fve,roomDialog:()=>Eve,stats:()=>wve,toast:()=>bve,toolBar:()=>lve,welcomeScreen:()=>kve});var uve,ave,nve,ove,sve,lve,gve,cve,Cve,Bve,Eve,dve,Ive,hve,Qve,pve,fve,mve,Dve,yve,wve,bve,vve,kve,Fve,xve,Sve,Rcr;var Rve=P(()=>{qt();uve={paste:"Liitä",pasteAsPlaintext:"Liitä pelkkänä tekstinä",pasteCharts:"Liitä kaaviot",selectAll:"Valitse kaikki",multiSelect:"Lisää kohde valintaan",moveCanvas:"Siirrä piirtoaluetta",cut:"Leikkaa",copy:"Kopioi",copyAsPng:"Kopioi leikepöydälle PNG-tiedostona",copyAsSvg:"Kopioi leikepöydälle SVG-tiedostona",copyText:"Kopioi tekstinä",copySource:"",convertToCode:"",bringForward:"Tuo eteenpäin",sendToBack:"Vie taakse",bringToFront:"Tuo eteen",sendBackward:"Vie taaksepäin",delete:"Poista",copyStyles:"Kopioi tyyli",pasteStyles:"Liitä tyyli",stroke:"Piirto",background:"Tausta",fill:"Täyttö",strokeWidth:"Viivan leveys",strokeStyle:"Viivan tyyli",strokeStyle_solid:"Yhtenäinen",strokeStyle_dashed:"Katkoviiva",strokeStyle_dotted:"Pisteviiva",sloppiness:"Viivan tarkkuus",opacity:"Peittävyys",textAlign:"Tekstin tasaus",edges:"Reunat",sharp:"Terävä",round:"Pyöristetty",arrowheads:"Nuolenkärjet",arrowhead_none:"Ei mitään",arrowhead_arrow:"Nuoli",arrowhead_bar:"Tasapää",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Kolmio",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Kirjasinkoko",fontFamily:"Kirjasintyyppi",addWatermark:'Lisää "Tehty Excalidrawilla"',handDrawn:"Käsinpiirretty",normal:"Tavallinen",code:"Koodi",small:"Pieni",medium:"Keskikoko",large:"Suuri",veryLarge:"Erittäin suuri",solid:"Yhtenäinen",hachure:"Vinoviivoitus",zigzag:"",crossHatch:"Ristiviivoitus",thin:"Ohut",bold:"Lihavoitu",left:"Vasen",center:"Keskitä",right:"Oikea",extraBold:"Erittäin lihavoitu",architect:"Arkkitehti",artist:"Taiteilija",cartoonist:"Sarjakuva",fileTitle:"Tiedostonimi",colorPicker:"Värin valinta",canvasColors:"Käytössä piirtoalueella",canvasBackground:"Piirtoalueen tausta",drawingCanvas:"Piirtoalue",layers:"Tasot",actions:"Toiminnot",language:"Kieli",liveCollaboration:"Live Yhteistyö...",duplicateSelection:"Monista",untitled:"Nimetön",name:"Nimi",yourName:"Nimesi",madeWithExcalidraw:"Tehty Excalidrawilla",group:"Ryhmitä valinta",ungroup:"Pura valittu ryhmä",collaborators:"Yhteistyökumppanit",showGrid:"Näytä ruudukko",addToLibrary:"Lisää kirjastoon",removeFromLibrary:"Poista kirjastosta",libraryLoadingMessage:"Ladataan kirjastoa…",libraries:"Selaa kirjastoja",loadingScene:"Ladataan työtä…",align:"Tasaa",alignTop:"Tasaa ylös",alignBottom:"Tasaa alas",alignLeft:"Tasaa vasemmalle",alignRight:"Tasaa oikealle",centerVertically:"Keskitä pystysuunnassa",centerHorizontally:"Keskitä vaakasuunnassa",distributeHorizontally:"Jaa vaakasuunnassa",distributeVertically:"Jaa pystysuunnassa",flipHorizontal:"Käännä vaakasuunnassa",flipVertical:"Käännä pystysuunnassa",viewMode:"Katselutila",share:"Jaa",showStroke:"Näytä viivan värin valitsin",showBackground:"Näytä taustavärin valitsin",toggleTheme:"Vaihda teema",personalLib:"Oma kirjasto",excalidrawLib:"Excalidraw kirjasto",decreaseFontSize:"Pienennä kirjasinkokoa",increaseFontSize:"Kasvata kirjasinkokoa",unbindText:"Irroita teksti",bindText:"Kiinnitä teksti säiliöön",createContainerFromText:"",link:{edit:"Muokkaa linkkiä",editEmbed:"",create:"Luo linkki",createEmbed:"",label:"Linkki",labelEmbed:"",empty:""},lineEditor:{edit:"Muokkaa riviä",exit:"Poistu rivieditorista"},elementLock:{lock:"Lukitse",unlock:"Poista lukitus",lockAll:"Lukitse kaikki",unlockAll:"Poista lukitus kaikista"},statusPublished:"Julkaistu",sidebarLock:"Pidä sivupalkki avoinna",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},ave={noItems:"Kirjastossa ei ole vielä yhtään kohdetta...",hint_emptyLibrary:"Valitse lisättävä kohde piirtoalueelta, tai asenna alta julkinen kirjasto.",hint_emptyPrivateLibrary:"Valitse lisättävä kohde piirtoalueelta."},nve={clearReset:"Tyhjennä piirtoalue",exportJSON:"Vie tiedostoon",exportImage:"Vie kuva...",export:"Tallenna nimellä...",copyToClipboard:"Kopioi leikepöydälle",save:"Tallenna nykyiseen tiedostoon",saveAs:"Tallenna nimellä",load:"Avaa",getShareableLink:"Hae jaettava linkki",close:"Sulje",selectLanguage:"Valitse kieli",scrollBackToContent:"Näytä sisältö",zoomIn:"Lähennä",zoomOut:"Loitonna",resetZoom:"Nollaa suurennuksen taso",menu:"Valikko",done:"Valmis",edit:"Muokkaa",undo:"Kumoa",redo:"Tee uudelleen",resetLibrary:"Tyhjennä kirjasto",createNewRoom:"Luo huone",fullScreen:"Koko näyttö",darkMode:"Tumma tila",lightMode:"Vaalea tila",zenMode:"Zen-tila",objectsSnapMode:"",exitZenMode:"Poistu zen-tilasta",cancel:"Peruuta",clear:"Pyyhi",remove:"Poista",embed:"",publishLibrary:"Julkaise",submit:"Lähetä",confirm:"Vahvista",embeddableInteractionButton:""},ove={clearReset:"Tämä tyhjentää koko piirtoalueen. Jatketaanko?",couldNotCreateShareableLink:"Jaettavan linkin luominen epäonnistui.",couldNotCreateShareableLinkTooBig:"Jaettavaa linkkiä ei voitu luoda: teos on liian suuri",couldNotLoadInvalidFile:"Virheellistä tiedostoa ei voitu avata",importBackendFailed:"Palvelimelta tuonti epäonnistui.",cannotExportEmptyCanvas:"Tyhjää piirtoaluetta ei voi viedä.",couldNotCopyToClipboard:"Leikepöydälle vieminen epäonnistui.",decryptFailed:"Salauksen purkaminen epäonnistui.",uploadedSecurly:"Lähetys on turvattu päästä-päähän-salauksella. Excalidrawin palvelin ja kolmannet osapuolet eivät voi lukea sisältöä.",loadSceneOverridePrompt:"Ulkopuolisen piirroksen lataaminen korvaa nykyisen sisältösi. Jatketaanko?",collabStopOverridePrompt:`Istunnon lopettaminen korvaa aiemman, paikallisesti tallennetun piirustuksen. Jatketaanko?
|
||
|
||
(Jos haluat säilyttää paikallisesti tallennetun piirustuksen, sulje selaimen välilehti lopettamisen sijaan.)`,errorAddingToLibrary:"Kohdetta ei voitu lisätä kirjastoon",errorRemovingFromLibrary:"Kohdetta ei voitu poistaa kirjastosta",confirmAddLibrary:"Tämä lisää {{numShapes}} muotoa kirjastoosi. Jatketaanko?",imageDoesNotContainScene:"Tämä kuva ei näytä sisältävän piirrostietoja. Oletko ottanut käyttöön piirroksen tallennuksen viennin aikana?",cannotRestoreFromImage:"Teosta ei voitu palauttaa tästä kuvatiedostosta",invalidSceneUrl:"Teosta ei voitu tuoda annetusta URL-osoitteesta. Tallenne on vioittunut, tai osoitteessa ei ole Excalidraw JSON-dataa.",resetLibrary:"Tämä tyhjentää kirjastosi. Jatketaanko?",removeItemsFromsLibrary:"Poista {{count}} kohdetta kirjastosta?",invalidEncryptionKey:"Salausavaimen on oltava 22 merkkiä pitkä. Live-yhteistyö ei ole käytössä.",collabOfflineWarning:`Internet-yhteyttä ei ole saatavilla.
|
||
Muutoksiasi ei tallenneta!`},sve={unsupportedFileType:"Tiedostotyyppiä ei tueta.",imageInsertError:"Kuvan lisääminen epäonnistui. Yritä myöhemmin uudelleen...",fileTooBig:"Tiedosto on liian suuri. Suurin sallittu koko on {{maxSize}}.",svgImageInsertError:"SVG- kuvaa ei voitu lisätä. Tiedoston SVG-sisältö näyttää virheelliseltä.",failedToFetchImage:"",invalidSVGString:"Virheellinen SVG.",cannotResolveCollabServer:"Yhteyden muodostaminen collab-palvelimeen epäonnistui. Virkistä sivu ja yritä uudelleen.",importLibraryError:"Kokoelman lataaminen epäonnistui",collabSaveFailed:"Ei voitu tallentaan palvelimen tietokantaan. Jos ongelmia esiintyy, sinun kannatta tallentaa tallentaa tiedosto paikallisesti varmistaaksesi, että et menetä työtäsi.",collabSaveFailed_sizeExceeded:"Ei voitu tallentaan palvelimen tietokantaan. Jos ongelmia esiintyy, sinun kannatta tallentaa tallentaa tiedosto paikallisesti varmistaaksesi, että et menetä työtäsi.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},lve={selection:"Valinta",image:"Lisää kuva",rectangle:"Suorakulmio",diamond:"Vinoneliö",ellipse:"Soikio",arrow:"Nuoli",line:"Viiva",freedraw:"Piirrä",text:"Teksti",library:"Kirjasto",lock:"Pidä valittu työkalu aktiivisena piirron jälkeen",penMode:"Kynätila - estä kosketus",link:"Lisää/päivitä linkki valitulle muodolle",eraser:"Poistotyökalu",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Käsi (panning-työkalu)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},gve={canvasActions:"Piirtoalueen toiminnot",selectedShapeActions:"Valitun muodon toiminnot",shapes:"Muodot"},cve={canvasPanning:"Piirtoalueen liikuttamiseksi pidä hiiren pyörää tai välilyöntiä pohjassa tai käytä käsityökalua",linearElement:"Klikkaa piirtääksesi useampi piste, raahaa piirtääksesi yksittäinen viiva",freeDraw:"Paina ja raahaa, päästä irti kun olet valmis",text:"Vinkki: voit myös lisätä tekstiä kaksoisnapsauttamalla mihin tahansa valintatyökalulla",embeddable:"",text_selected:"Kaksoisnapsauta tai paina ENTER muokataksesi tekstiä",text_editing:"Paina Escape tai CtrlOrCmd+ENTER lopettaaksesi muokkaamisen",linearElementMulti:"Lopeta klikkaamalla viimeistä pistettä, painamalla Escape- tai Enter-näppäintä",lockAngle:"Voit rajoittaa kulmaa pitämällä SHIFT-näppäintä alaspainettuna",resize:"Voit rajoittaa mittasuhteet pitämällä SHIFT-näppäintä alaspainettuna kun muutat kokoa, pidä ALT-näppäintä alaspainettuna muuttaaksesi kokoa keskipisteen suhteen",resizeImage:"Voit muuttaa kokoa vapaasti pitämällä SHIFTiä pohjassa, pidä ALT pohjassa muuttaaksesi kokoa keskipisteen ympäri",rotate:"Voit rajoittaa kulman pitämällä SHIFT pohjassa pyörittäessäsi",lineEditor_info:"Pidä CtrlOrCmd pohjassa ja kaksoisnapsauta tai paina CtrlOrCmd + Enter muokataksesi pisteitä",lineEditor_pointSelected:"Poista piste(et) painamalla delete, monista painamalla CtrlOrCmd+D, tai liikuta raahaamalla",lineEditor_nothingSelected:"Valitse muokattava piste (monivalinta pitämällä SHIFT pohjassa), tai paina Alt ja klikkaa lisätäksesi uusia pisteitä",placeImage:"Klikkaa asettaaksesi kuvan, tai klikkaa ja raahaa asettaaksesi sen koon manuaalisesti",publishLibrary:"Julkaise oma kirjasto",bindTextToElement:"Lisää tekstiä painamalla enter",deepBoxSelect:"Käytä syvävalintaa ja estä raahaus painamalla CtrlOrCmd",eraserRevert:"Pidä Alt alaspainettuna, kumotaksesi merkittyjen elementtien poistamisen",firefox_clipboard_write:'Tämä ominaisuus voidaan todennäköisesti ottaa käyttöön asettamalla "dom.events.asyncClipboard.clipboardItem" kohta "true":ksi. Vaihtaaksesi selaimen kohdan Firefoxissa, käy "about:config" sivulla.',disableSnapping:""},Cve={cannotShowPreview:"Esikatselua ei voitu näyttää",canvasTooBig:"Piirtoalue saattaa olla liian suuri.",canvasTooBigTip:"Vinkki: yritä siirtää kaukaisimpia elementtejä hieman lähemmäs toisiaan."},Bve={headingMain:"Tapahtui virhe. Yritä <button>sivun lataamista uudelleen.</button>",clearCanvasMessage:"Mikäli sivun lataaminen uudelleen ei auta, yritä <button>tyhjentää piirtoalue.</button>",clearCanvasCaveat:" Tämä johtaa työn menetykseen ",trackedToSentry:"Virhe tunnisteella {{eventId}} tallennettiin järjestelmäämme.",openIssueMessage:"Olimme varovaisia emmekä sisällyttäneet tietoa piirroksestasi virheeseen. Mikäli piirroksesi ei ole yksityinen, harkitsethan kertovasi meille <button>virheenseurantajärjestelmässämme.</button> Sisällytä alla olevat tiedot kopioimalla ne GitHub-ongelmaan.",sceneContent:"Piirroksen tiedot:"},Eve={desc_intro:"Voit kutsua ihmisiä piirrokseesi tekemään yhteistyötä kanssasi.",desc_privacy:"Älä huoli, istunto käyttää päästä-päähän-salausta, joten mitä tahansa piirrätkin, se pysyy salassa. Edes palvelimemme eivät näe mitä keksit.",button_startSession:"Aloita istunto",button_stopSession:"Lopeta istunto",desc_inProgressIntro:"Jaettu istunto on nyt käynnissä.",desc_shareLink:"Jaa tämä linkki kenelle tahansa, jonka kanssa haluat tehdä yhteistyötä:",desc_exitSession:"Istunnon pysäyttäminen katkaisee yhteyden huoneeseen, mutta voit vielä jatkaa työskentelyä paikallisesti. Huomaa, että tämä ei vaikuta muihin käyttäjiin ja he voivat jatkaa oman versionsa parissa työskentelyä.",shareTitle:"Liity Excalidraw live-yhteistyöistuntoon"},dve={title:"Virhe"},Ive={disk_title:"Tallenna levylle",disk_details:"Vie työn tiedot tiedostoon, josta sen voi tuoda myöhemmin.",disk_button:"Tallenna tiedostoon",link_title:"Jaettava linkki",link_details:"Vie vain luku -linkkinä.",link_button:"Vie linkkinä",excalidrawplus_description:"Tallenna teos Excalidraw+ tilaan.",excalidrawplus_button:"Vie",excalidrawplus_exportError:"Ei voitu viedä Excalidraw+-palveluun tällä hetkellä..."},hve={blog:"Lue blogiamme",click:"klikkaa",deepSelect:"Syvävalinta",deepBoxSelect:"Käytä syvävalintaa ja estä raahaus",curvedArrow:"Kaareva nuoli",curvedLine:"Kaareva viiva",documentation:"Käyttöohjeet",doubleClick:"kaksoisnapsautus",drag:"vedä",editor:"Muokkausohjelma",editLineArrowPoints:"",editText:"",github:"Löysitkö ongelman? Kerro meille",howto:"Seuraa oppaitamme",or:"tai",preventBinding:"Estä nuolten kiinnitys",tools:"Työkalut",shortcuts:"Pikanäppäimet",textFinish:"Lopeta muokkaus (tekstieditori)",textNewLine:"Lisää uusi rivi (tekstieditori)",title:"Ohjeet",view:"Näkymä",zoomToFit:"Näytä kaikki elementit",zoomToSelection:"Näytä valinta",toggleElementLock:"Lukitse / poista lukitus valinta",movePageUpDown:"Siirrä sivua ylös/alas",movePageLeftRight:"Siirrä sivua vasemmalle/oikealle"},Qve={title:"Pyyhi piirtoalue"},pve={title:"Julkaise kirjasto",itemName:"Kohteen nimi",authorName:"Tekijän nimi",githubUsername:"GitHub-käyttäjätunnus",twitterUsername:"Twitter-käyttäjätunnus",libraryName:"Kirjaston nimi",libraryDesc:"Kirjaston kuvaus",website:"Verkkosivu",placeholder:{authorName:"Nimesi tai käyttäjänimesi",libraryName:"Kirjastosi nimi",libraryDesc:"Kirjaston kuvaus, joka auttaa ihmisiä ymmärtämään sen käyttötarkoitukset",githubHandle:"GitHub-tunnuksesi (valinnainen), jotta voit muokata kirjastoa sen jälkeen kun se on lähetetty tarkastettavaksi",twitterHandle:"Twitter-tunnus (valinnainen), jotta tiedämme ketä kiittää kun viestimme Twitterissä",website:"Linkki henkilökohtaiselle verkkosivustollesi tai muualle (valinnainen)"},errors:{required:"Pakollinen",website:"Syötä oikeamuotoinen URL-osoite"},noteDescription:"Lähetä kirjastosi, jotta se voidaan sisällyttää <link>julkisessa kirjastolistauksessa</link>muiden käyttöön omissa piirrustuksissaan.",noteGuidelines:"Kirjasto on ensin hyväksyttävä manuaalisesti. Ole hyvä ja lue <link>ohjeet</link> ennen lähettämistä. Tarvitset GitHub-tilin, jotta voit viestiä ja tehdä muutoksia pyydettäessä, mutta se ei ole ehdottoman välttämätöntä.",noteLicense:"Lähettämällä hyväksyt että kirjasto julkaistaan <link>MIT-lisenssin </link>alla, mikä lyhyesti antaa muiden käyttää sitä ilman rajoituksia.",noteItems:"Jokaisella kirjaston kohteella on oltava oma nimensä suodatusta varten. Seuraavat kirjaston kohteet sisältyvät:",atleastOneLibItem:"Valitse vähintään yksi kirjaston kohde aloittaaksesi",republishWarning:"Huom! Osa valituista kohteista on merkitty jo julkaistu/lähetetyiksi. Lähetä kohteita uudelleen vain päivitettäessä olemassa olevaa kirjastoa tai ehdotusta."},fve={title:"Kirjasto lähetetty",content:"Kiitos {{authorName}}. Kirjastosi on lähetetty tarkistettavaksi. Voit seurata sen tilaa<link>täällä</link>"},mve={resetLibrary:"Tyhjennä kirjasto",removeItemsFromLib:"Poista valitut kohteet kirjastosta"},Dve={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},yve={tooltip:"Piirroksesi ovat päästä-päähän-salattuja, joten Excalidrawin palvelimet eivät koskaan näe niitä.",link:"Blogiartikkeli päästä päähän -salauksesta Excalidraw:ssa"},wve={angle:"Kulma",element:"Elementti",elements:"Elementit",height:"Korkeus",scene:"Teos",selected:"Valitut",storage:"Tallennustila",title:"Tilastoja nörteille",total:"Yhteensä",version:"Versio",versionCopy:"Klikkaa kopioidaksesi",versionNotAvailable:"Versio ei saatavilla",width:"Leveys"},bve={addedToLibrary:"Lisätty kirjastoon",copyStyles:"Tyylit kopioitiin.",copyToClipboard:"Kopioitiin leikepöydälle.",copyToClipboardAsPng:`Kopioitiin {{exportSelection}} leikepöydälle PNG:nä
|
||
({{exportColorScheme}})`,fileSaved:"Tiedosto tallennettu.",fileSavedToFilename:"Tallennettiin kohteeseen {filename}",canvas:"piirtoalue",selection:"valinta",pasteAsSingleElement:`Käytä {{shortcut}} liittääksesi yhtenä elementtinä,
|
||
tai liittääksesi olemassa olevaan tekstieditoriin`,unableToEmbed:"",unrecognizedLinkFormat:""},vve={transparent:"Läpinäkyvä",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},kve={app:{center_heading:"Kaikki tietosi on tallennettu paikallisesti selaimellesi.",center_heading_plus:"Haluatko sen sijaan mennä Excalidraw+:aan?",menuHint:"Vie, asetukset, kielet, ..."},defaults:{menuHint:"Vie, asetukset ja lisää...",center_heading:"Kaaviot. Tehty. Yksinkertaiseksi.",toolbarHint:"Valitse työkalu ja aloita piirtäminen!",helpHint:"Pikanäppäimet & ohje"}},Fve={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},xve={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Sve={title:"",button:"",description:"",syntax:"",preview:""},Rcr={labels:uve,library:ave,buttons:nve,alerts:ove,errors:sve,toolBar:lve,headings:gve,hints:cve,canvasError:Cve,errorSplash:Bve,roomDialog:Eve,errorDialog:dve,exportDialog:Ive,helpDialog:hve,clearCanvasDialog:Qve,publishDialog:pve,publishSuccessDialog:fve,confirmDialog:mve,imageExportDialog:Dve,encrypted:yve,stats:wve,toast:bve,colors:vve,welcomeScreen:kve,colorPicker:Fve,overwriteConfirm:xve,mermaid:Sve}});var nke={};yt(nke,{alerts:()=>Mve,buttons:()=>Uve,canvasError:()=>Jve,clearCanvasDialog:()=>zve,colorPicker:()=>ike,colors:()=>tke,confirmDialog:()=>jve,default:()=>Ncr,encrypted:()=>$ve,errorDialog:()=>_ve,errorSplash:()=>Ove,errors:()=>Tve,exportDialog:()=>Wve,headings:()=>Hve,helpDialog:()=>qve,hints:()=>Kve,imageExportDialog:()=>Xve,labels:()=>Nve,library:()=>Gve,mermaid:()=>ake,overwriteConfirm:()=>uke,publishDialog:()=>Zve,publishSuccessDialog:()=>Vve,roomDialog:()=>Pve,stats:()=>Ake,toast:()=>eke,toolBar:()=>Yve,welcomeScreen:()=>rke});var Nve,Gve,Uve,Mve,Tve,Yve,Hve,Kve,Jve,Ove,Pve,_ve,Wve,qve,zve,Zve,Vve,jve,Xve,$ve,Ake,eke,tke,rke,ike,uke,ake,Ncr;var oke=P(()=>{qt();Nve={paste:"Coller",pasteAsPlaintext:"Coller comme texte brut",pasteCharts:"Coller les graphiques",selectAll:"Tout sélectionner",multiSelect:"Ajouter l'élément à la sélection",moveCanvas:"Déplacer le canevas",cut:"Couper",copy:"Copier",copyAsPng:"Copier dans le presse-papier en PNG",copyAsSvg:"Copier dans le presse-papier en SVG",copyText:"Copier dans le presse-papier en tant que texte",copySource:"Copier la source dans le presse-papiers",convertToCode:"Convertir en code",bringForward:"Envoyer vers l'avant",sendToBack:"Déplacer à l'arrière-plan",bringToFront:"Mettre au premier plan",sendBackward:"Reculer d'un plan",delete:"Supprimer",copyStyles:"Copier les styles",pasteStyles:"Coller les styles",stroke:"Trait",background:"Arrière-plan",fill:"Remplissage",strokeWidth:"Largeur du contour",strokeStyle:"Style du trait",strokeStyle_solid:"Continu",strokeStyle_dashed:"Tirets",strokeStyle_dotted:"Pointillés",sloppiness:"Style de tracé",opacity:"Transparence",textAlign:"Alignement du texte",edges:"Angles",sharp:"Pointus",round:"Arrondis",arrowheads:"Extrémités",arrowhead_none:"Sans",arrowhead_arrow:"Flèche",arrowhead_bar:"Barre",arrowhead_circle:"Cercle",arrowhead_circle_outline:"Contour du cercle",arrowhead_triangle:"Triangle",arrowhead_triangle_outline:"Triangle (contour)",arrowhead_diamond:"Losange",arrowhead_diamond_outline:"",fontSize:"Taille de la police",fontFamily:"Police",addWatermark:'Ajouter "Réalisé avec Excalidraw"',handDrawn:"À main levée",normal:"Normale",code:"Code",small:"Petite",medium:"Moyenne",large:"Grande",veryLarge:"Très grande",solid:"Solide",hachure:"Hachures",zigzag:"Zigzag",crossHatch:"Hachures croisées",thin:"Fine",bold:"Épaisse",left:"À gauche",center:"Au centre",right:"À droite",extraBold:"Très épaisse",architect:"Architecte",artist:"Artiste",cartoonist:"Caricaturiste",fileTitle:"Nom du fichier",colorPicker:"Sélecteur de couleur",canvasColors:"Utilisé sur la zone de dessin",canvasBackground:"Arrière-plan du canevas",drawingCanvas:"Zone de dessin",layers:"Disposition",actions:"Actions",language:"Langue",liveCollaboration:"Collaboration en direct...",duplicateSelection:"Dupliquer",untitled:"Sans-titre",name:"Nom",yourName:"Votre nom",madeWithExcalidraw:"Fait avec Excalidraw",group:"Grouper la sélection",ungroup:"Dégrouper la sélection",collaborators:"Collaborateurs",showGrid:"Afficher la grille",addToLibrary:"Ajouter à la bibliothèque",removeFromLibrary:"Supprimer de la bibliothèque",libraryLoadingMessage:"Chargement de la bibliothèque…",libraries:"Parcourir les bibliothèques",loadingScene:"Chargement de la scène…",align:"Alignement",alignTop:"Aligner en haut",alignBottom:"Aligner en bas",alignLeft:"Aligner à gauche",alignRight:"Aligner à droite",centerVertically:"Centrer verticalement",centerHorizontally:"Centrer horizontalement",distributeHorizontally:"Répartir horizontalement",distributeVertically:"Répartir verticalement",flipHorizontal:"Retourner horizontalement",flipVertical:"Retourner verticalement",viewMode:"Mode présentation",share:"Partager",showStroke:"Afficher le sélecteur de couleur de trait",showBackground:"Afficher le sélecteur de couleur de fond",toggleTheme:"Changer le thème",personalLib:"Bibliothèque personnelle",excalidrawLib:"Bibliothèque Excalidraw",decreaseFontSize:"Diminuer la taille de police",increaseFontSize:"Augmenter la taille de la police",unbindText:"Dissocier le texte",bindText:"Associer le texte au conteneur",createContainerFromText:"Encadrer le texte dans un conteneur",link:{edit:"Modifier le lien",editEmbed:"Éditer le lien & intégrer",create:"Ajouter un lien",createEmbed:"Créer un lien & intégrer",label:"Lien",labelEmbed:"Lier & intégrer",empty:"Aucun lien défini"},lineEditor:{edit:"Modifier la ligne",exit:"Quitter l'éditeur de ligne"},elementLock:{lock:"Verrouiller",unlock:"Déverrouiller",lockAll:"Tout verrouiller",unlockAll:"Tout déverrouiller"},statusPublished:"Publié",sidebarLock:"Maintenir la barre latérale ouverte",selectAllElementsInFrame:"Sélectionner tous les éléments du cadre",removeAllElementsFromFrame:"Supprimer tous les éléments du cadre",eyeDropper:"Choisir la couleur depuis la toile",textToDiagram:"Texte vers Diagramme",prompt:"Consignes"},Gve={noItems:"Aucun élément n'a encore été ajouté ...",hint_emptyLibrary:"Sélectionnez un élément sur le canevas pour l'ajouter ici ou installez une bibliothèque depuis le dépôt public, ci-dessous.",hint_emptyPrivateLibrary:"Sélectionnez un élément sur le canevas pour l'ajouter ici."},Uve={clearReset:"Réinitialiser le canevas",exportJSON:"Exporter comme fichier",exportImage:"Exporter l'image...",export:"Enregistrer sous...",copyToClipboard:"Copier dans le presse-papier",save:"Enregistrer dans le fichier actuel",saveAs:"Enregistrer sous",load:"Ouvrir",getShareableLink:"Obtenir un lien de partage",close:"Fermer",selectLanguage:"Choisir une langue",scrollBackToContent:"Revenir au contenu",zoomIn:"Zoomer",zoomOut:"Dézoomer",resetZoom:"Réinitialiser le zoom",menu:"Menu",done:"Terminé",edit:"Modifier",undo:"Annuler",redo:"Rétablir",resetLibrary:"Réinitialiser la bibliothèque",createNewRoom:"Créer une nouvelle salle",fullScreen:"Plein écran",darkMode:"Mode sombre",lightMode:"Mode clair",zenMode:"Mode zen",objectsSnapMode:"Aimanter aux objets",exitZenMode:"Quitter le mode zen",cancel:"Annuler",clear:"Effacer",remove:"Supprimer",embed:"Activer/Désactiver l'intégration",publishLibrary:"Publier",submit:"Envoyer",confirm:"Confirmer",embeddableInteractionButton:"Cliquez pour interagir"},Mve={clearReset:"L'intégralité du canevas va être effacée. Êtes-vous sûr ?",couldNotCreateShareableLink:"Impossible de créer un lien de partage.",couldNotCreateShareableLinkTooBig:"Impossible de créer un lien de partage : la scène est trop volumineuse",couldNotLoadInvalidFile:"Impossible de charger un fichier invalide",importBackendFailed:"L'importation depuis le serveur a échoué.",cannotExportEmptyCanvas:"Impossible d'exporter un canevas vide.",couldNotCopyToClipboard:"Impossible de copier dans le presse-papiers.",decryptFailed:"Les données n'ont pas pu être déchiffrées.",uploadedSecurly:"Le téléchargement a été sécurisé avec un chiffrement de bout en bout, ce qui signifie que ni Excalidraw ni personne d'autre ne peut en lire le contenu.",loadSceneOverridePrompt:"Le chargement d'un dessin externe remplacera votre contenu actuel. Souhaitez-vous continuer ?",collabStopOverridePrompt:`Arrêter la session écrasera votre précédent dessin stocké localement. Êtes-vous sûr·e ?
|
||
|
||
(Si vous voulez garder votre dessin local, fermez simplement l'onglet du navigateur à la place.)`,errorAddingToLibrary:"Impossible d'ajouter l'élément à la bibliothèque",errorRemovingFromLibrary:"Impossible de retirer l'élément de la bibliothèque",confirmAddLibrary:"Cela va ajouter {{numShapes}} forme(s) à votre bibliothèque. Êtes-vous sûr·e ?",imageDoesNotContainScene:"Cette image ne semble pas contenir de données de scène. Avez-vous activé l'intégration de scène lors de l'exportation ?",cannotRestoreFromImage:"Impossible de restaurer la scène depuis ce fichier image",invalidSceneUrl:"Impossible d'importer la scène depuis l'URL fournie. Elle est soit incorrecte, soit ne contient pas de données JSON Excalidraw valides.",resetLibrary:"Cela va effacer votre bibliothèque. Êtes-vous sûr·e ?",removeItemsFromsLibrary:"Supprimer {{count}} élément(s) de la bibliothèque ?",invalidEncryptionKey:"La clé de chiffrement doit comporter 22 caractères. La collaboration en direct est désactivée.",collabOfflineWarning:`Aucune connexion internet disponible.
|
||
Vos modifications ne seront pas enregistrées !`},Tve={unsupportedFileType:"Type de fichier non supporté.",imageInsertError:"Impossible d'insérer l'image. Réessayez plus tard...",fileTooBig:"Le fichier est trop volumineux. La taille maximale autorisée est de {{maxSize}}.",svgImageInsertError:"Impossible d'insérer l'image SVG. Le balisage SVG semble invalide.",failedToFetchImage:"Échec de récupération de l'image.",invalidSVGString:"SVG invalide.",cannotResolveCollabServer:"Impossible de se connecter au serveur collaboratif. Veuillez recharger la page et réessayer.",importLibraryError:"Impossible de charger la bibliothèque",collabSaveFailed:"Impossible d'enregistrer dans la base de données en arrière-plan. Si des problèmes persistent, vous devriez enregistrer votre fichier localement pour vous assurer de ne pas perdre votre travail.",collabSaveFailed_sizeExceeded:"Impossible d'enregistrer dans la base de données en arrière-plan, le tableau semble trop grand. Vous devriez enregistrer le fichier localement pour vous assurer de ne pas perdre votre travail.",imageToolNotSupported:"Les images sont désactivées.",brave_measure_text_error:{line1:"On dirait que vous utilisez le navigateur Brave avec l'option <bold>Bloquer agressivement le fichage</bold> activée.",line2:"Cela pourrait entraîner des problèmes avec les <bold>Éléments Textuels</bold> dans vos dessins.",line3:"Nous recommandons fortement de désactiver cette option. Vous pouvez suivre <link>ces instructions</link> pour savoir comment faire.",line4:"Si désactiver cette option de résout pas le problème d'affichage des éléments textuels, veuillez ouvrir un <issueLink>ticket</issueLink> sur notre GitHub, ou écrivez-nous sur notre <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Les éléments intégrés ne peuvent pas être ajoutés à la librairie.",iframe:"",image:"Le support pour l'ajout d'images à la librairie arrive bientôt !"},asyncPasteFailedOnRead:"Impossible de coller (impossible de lire le presse-papiers système).",asyncPasteFailedOnParse:"Impossible de coller.",copyToSystemClipboardFailed:"Échec de la copie dans le presse-papiers."},Yve={selection:"Sélection",image:"Insérer une image",rectangle:"Rectangle",diamond:"Losange",ellipse:"Ellipse",arrow:"Flèche",line:"Ligne",freedraw:"Dessiner",text:"Texte",library:"Bibliothèque",lock:"Garder l'outil sélectionné actif après le dessin",penMode:"Mode stylo - évite le toucher",link:"Ajouter/mettre à jour le lien pour une forme sélectionnée",eraser:"Gomme",frame:"Outil de cadre",magicframe:"",embeddable:"Intégration Web",laser:"Pointeur laser",hand:"Mains (outil de déplacement de la vue)",extraTools:"Plus d'outils",mermaidToExcalidraw:"De Mermaid à Excalidraw",magicSettings:"Paramètres IA"},Hve={canvasActions:"Actions du canevas",selectedShapeActions:"Actions pour la forme sélectionnée",shapes:"Formes"},Kve={canvasPanning:"Pour déplacer la zone de dessin, maintenez la molette de la souris enfoncée ou la barre d'espace tout en faisant glisser, ou utiliser l'outil main.",linearElement:"Cliquez pour démarrer plusieurs points, faites glisser pour une seule ligne",freeDraw:"Cliquez et faites glissez, relâchez quand vous avez terminé",text:"Astuce : vous pouvez aussi ajouter du texte en double-cliquant n'importe où avec l'outil de sélection",embeddable:"Cliquez et glissez pour créer une intégration de site web",text_selected:"Double-cliquez ou appuyez sur ENTRÉE pour modifier le texte",text_editing:"Appuyez sur ÉCHAP ou Ctrl/Cmd+ENTRÉE pour terminer l'édition",linearElementMulti:"Cliquez sur le dernier point ou appuyez sur Échap ou Entrée pour terminer",lockAngle:"Vous pouvez restreindre l'angle en maintenant MAJ",resize:"Vous pouvez conserver les proportions en maintenant la touche MAJ pendant le redimensionnement, maintenez la touche ALT pour redimensionner par rapport au centre",resizeImage:`Vous pouvez redimensionner librement en maintenant SHIFT,
|
||
maintenez ALT pour redimensionner depuis le centre`,rotate:"Vous pouvez restreindre les angles en maintenant MAJ pendant la rotation",lineEditor_info:"Maintenez CtrlOrCmd et Double-cliquez ou appuyez sur CtrlOrCmd + Entrée pour modifier les points",lineEditor_pointSelected:"Appuyer sur Suppr. pour supprimer des points, Ctrl ou Cmd+D pour dupliquer, ou faire glisser pour déplacer",lineEditor_nothingSelected:`Sélectionner un point pour éditer (maintenir la touche MAJ pour en sélectionner plusieurs),
|
||
ou maintenir la touche Alt enfoncée et cliquer pour ajouter de nouveaux points`,placeImage:"Cliquez pour placer l'image, ou cliquez et faites glisser pour définir sa taille manuellement",publishLibrary:"Publier votre propre bibliothèque",bindTextToElement:"Appuyer sur Entrée pour ajouter du texte",deepBoxSelect:"Maintenir Ctrl ou Cmd pour sélectionner dans les groupes et empêcher le déplacement",eraserRevert:"Maintenez Alt enfoncé pour annuler les éléments marqués pour suppression",firefox_clipboard_write:`Cette fonctionnalité devrait pouvoir être activée en définissant l'option "dom.events.asyncClipboard.clipboard.clipboardItem" à "true". Pour modifier les paramètres du navigateur dans Firefox, visitez la page "about:config".`,disableSnapping:"Maintenez CtrlOuCmd pour désactiver l'aimantation"},Jve={cannotShowPreview:"Impossible d’afficher l’aperçu",canvasTooBig:"Le canevas est peut-être trop grand.",canvasTooBigTip:"Astuce : essayez de rapprocher un peu les éléments les plus éloignés."},Ove={headingMain:"Une erreur est survenue. Essayez <button>de recharger la page.</button>",clearCanvasMessage:"Si le rechargement ne résout pas l'erreur, essayez <button>effacement du canevas.</button>",clearCanvasCaveat:" Cela entraînera une perte du travail ",trackedToSentry:"L'erreur avec l'identifiant {{eventId}} a été enregistrée dans notre système.",openIssueMessage:"Nous avons fait très attention à ne pas inclure les informations de votre scène dans l'erreur. Si votre scène n'est pas privée, veuillez envisager de poursuivre sur notre <button>outil de suivi des bugs.</button> Veuillez inclure les informations ci-dessous en les copiant-collant dans le ticket GitHub.",sceneContent:"Contenu de la scène :"},Pve={desc_intro:"Vous pouvez inviter des personnes à collaborer avec vous sur votre scène actuelle.",desc_privacy:"Pas d'inquiétude, la session utilise le chiffrement de bout en bout, donc tout ce que vous dessinez restera privé. Même notre serveur ne pourra voir ce que vous faites.",button_startSession:"Démarrer la session",button_stopSession:"Arrêter la session",desc_inProgressIntro:"La session de collaboration en direct est maintenant en cours.",desc_shareLink:"Partagez ce lien avec les personnes avec lesquelles vous souhaitez collaborer :",desc_exitSession:"Arrêter la session vous déconnectera de la salle, mais vous pourrez continuer à travailler avec la scène, localement. Notez que cela n'affectera pas les autres personnes, et ils pourront toujours collaborer sur leur version.",shareTitle:"Rejoindre une session de collaboration en direct sur Excalidraw"},_ve={title:"Erreur"},Wve={disk_title:"Enregistrer sur le disque",disk_details:"Exporter les données de la scène comme un fichier que vous pourrez importer ultérieurement.",disk_button:"Enregistrer comme fichier",link_title:"Lien partageable",link_details:"Exporter comme un lien en lecture seule.",link_button:"Exporter comme lien",excalidrawplus_description:"Enregistrer la scène dans votre espace de travail Excalidraw+.",excalidrawplus_button:"Exporter",excalidrawplus_exportError:"Impossible d'exporter vers Excalidraw+ pour le moment..."},qve={blog:"Lire notre blog",click:"clic",deepSelect:"Sélection dans les groupes",deepBoxSelect:"Sélectionner dans les groupes, et empêcher le déplacement",curvedArrow:"Flèche courbée",curvedLine:"Ligne courbée",documentation:"Documentation",doubleClick:"double-clic",drag:"glisser",editor:"Éditeur",editLineArrowPoints:"Modifier les points de ligne/flèche",editText:"Modifier le texte / ajouter un libellé",github:"Problème trouvé ? Soumettre",howto:"Suivez nos guides",or:"ou",preventBinding:"Empêcher la liaison de flèche",tools:"Outils",shortcuts:"Raccourcis clavier",textFinish:"Terminer l'édition (éditeur de texte)",textNewLine:"Ajouter une nouvelle ligne (éditeur de texte)",title:"Aide",view:"Affichage",zoomToFit:"Zoomer pour voir tous les éléments",zoomToSelection:"Zoomer sur la sélection",toggleElementLock:"Verrouiller/déverrouiller la sélection",movePageUpDown:"Déplacer la page vers le haut/bas",movePageLeftRight:"Déplacer la page vers la gauche/droite"},zve={title:"Effacer la zone de dessin"},Zve={title:"Publier la bibliothèque",itemName:"Nom de l’élément",authorName:"Nom de l'auteur",githubUsername:"Nom d'utilisateur GitHub",twitterUsername:"Nom d'utilisateur Twitter",libraryName:"Nom de la bibliothèque",libraryDesc:"Description de la bibliothèque",website:"Site web",placeholder:{authorName:"Votre nom ou nom d'utilisateur",libraryName:"Nom de votre bibliothèque",libraryDesc:"Description de votre bibliothèque pour aider les gens à comprendre son usage",githubHandle:"Nom d'utilisateur GitHub (optionnel), pour que tu puisses modifier la bibliothèque une fois soumise pour vérification",twitterHandle:"Nom d'utilisateur Twitter (optionnel), pour savoir qui créditer lors de la promotion sur Twitter",website:"Lien vers votre site web personnel ou autre (optionnel)"},errors:{required:"Requis",website:"Entrer une URL valide"},noteDescription:"Soumets ta bibliothèque pour l'inclure au <link>dépôt de bibliothèque publique</link>pour permettre son utilisation par autrui dans leurs dessins.",noteGuidelines:"La bibliothèque doit d'abord être approuvée manuellement. Veuillez lire les <link>lignes directrices</link> avant de la soumettre. Vous aurez besoin d'un compte GitHub pour communiquer et apporter des modifications si demandé, mais ce n'est pas obligatoire.",noteLicense:"En soumettant, vous acceptez que la bibliothèque soit publiée sous la <link>Licence MIT, </link>ce qui en gros signifie que tout le monde peut l'utiliser sans restrictions.",noteItems:"Chaque élément de la bibliothèque doit avoir son propre nom afin qu'il soit filtrable. Les éléments de bibliothèque suivants seront inclus :",atleastOneLibItem:"Veuillez sélectionner au moins un élément de bibliothèque pour commencer",republishWarning:"Remarque : certains des éléments sélectionnés sont marqués comme étant déjà publiés/soumis. Vous devez uniquement resoumettre des éléments lors de la mise à jour d'une bibliothèque ou d'une soumission existante."},Vve={title:"Bibliothèque soumise",content:"Merci {{authorName}}. Votre bibliothèque a été soumise pour examen. Vous pouvez suivre le statut<link>ici</link>"},jve={resetLibrary:"Réinitialiser la bibliothèque",removeItemsFromLib:"Enlever les éléments sélectionnés de la bibliothèque"},Xve={header:"Exporter l'image",label:{withBackground:"Fond",onlySelected:"Uniquement la sélection",darkMode:"Mode sombre",embedScene:"Intégrer la scène",scale:"Échelle",padding:"Marge interne"},tooltip:{embedScene:`Les données de la scène seront sauvegardées dans le fichier PNG/SVG exporté afin que la scène puisse être restaurée depuis celui-ci.
|
||
Cela augmentera la taille du fichier exporté.`},title:{exportToPng:"Exporter en PNG",exportToSvg:"Exporter en SVG",copyPngToClipboard:"Copier le PNG dans le presse-papier"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copier dans le presse-papier"}},$ve={tooltip:"Vos dessins sont chiffrés de bout en bout, les serveurs d'Excalidraw ne les verront jamais.",link:"Article de blog sur le chiffrement de bout en bout dans Excalidraw"},Ake={angle:"Angle",element:"Élément",elements:"Éléments",height:"Hauteur",scene:"Scène",selected:"Sélection",storage:"Stockage",title:"Stats pour les nerds",total:"Total",version:"Version",versionCopy:"Cliquer pour copier",versionNotAvailable:"Version non disponible",width:"Largeur"},eke={addedToLibrary:"Ajouté à la bibliothèque",copyStyles:"Styles copiés.",copyToClipboard:"Copié dans le presse-papier.",copyToClipboardAsPng:`{{exportSelection}} copié dans le presse-papier en PNG
|
||
({{exportColorScheme}})`,fileSaved:"Fichier enregistré.",fileSavedToFilename:"Enregistré sous {filename}",canvas:"canevas",selection:"sélection",pasteAsSingleElement:`Utiliser {{shortcut}} pour coller comme un seul élément,
|
||
ou coller dans un éditeur de texte existant`,unableToEmbed:"Intégrer cet URL n'est actuellement pas autorisé. Ouvrez un ticket sur GitHub pour demander son ajout à la liste blanche",unrecognizedLinkFormat:"Le lien que vous avez intégré ne correspond pas au format attendu. Veuillez essayer de coller la chaîne d'intégration fournie par le site source"},tke={transparent:"Transparent",black:"Noir",white:"Blanc",red:"Rouge",pink:"Rose",grape:"Mauve",violet:"Violet",gray:"Gris",blue:"Bleu",cyan:"Cyan",teal:"Turquoise",green:"Vert",yellow:"Jaune",orange:"Orange",bronze:"Bronze"},rke={app:{center_heading:"Toutes vos données sont sauvegardées en local dans votre navigateur.",center_heading_plus:"Vouliez-vous plutôt aller à Excalidraw+ à la place ?",menuHint:"Exportation, préférences, langues, ..."},defaults:{menuHint:"Exportation, préférences et plus...",center_heading:"Diagrammes. Rendus. Simples.",toolbarHint:"Choisissez un outil et commencez à dessiner !",helpHint:"Raccourcis et aide"}},ike={mostUsedCustomColors:"Couleurs personnalisées les plus fréquemment utilisées",colors:"Couleurs",shades:"Nuances",hexCode:"Code hex",noShades:"Aucune nuance disponible pour cette couleur"},uke={action:{exportToImage:{title:"Exporter en image",button:"Exporter en image",description:"Exporter les données de la scène comme une image que vous pourrez importer ultérieurement."},saveToDisk:{title:"Sauvegarder sur le disque",button:"Sauvegarder sur le disque",description:"Exporter les données de la scène comme un fichier que vous pourrez importer ultérieurement."},excalidrawPlus:{title:"Excalidraw+",button:"Exporter vers Excalidraw+",description:"Enregistrer la scène dans votre espace de travail Excalidraw+."}},modal:{loadFromFile:{title:"Charger depuis un fichier",button:"Charger depuis un fichier",description:"Charger depuis un fichier va <bold>remplacer votre contenu existant</bold>.<br></br>Vous pouvez d'abord sauvegarder votre dessin en utilisant l'une des options ci-dessous."},shareableLink:{title:"Charger depuis un lien",button:"Remplacer mon contenu",description:"Charger un dessin externe va <bold>remplacer votre contenu existant</bold>.<br></br>Vous pouvez d'abord sauvegarder votre dessin en utilisant l'une des options ci-dessous."}}},ake={title:"De Mermaid à Excalidraw",button:"Insérer",description:"",syntax:"Syntaxe Mermaid",preview:"Prévisualisation"},Ncr={labels:Nve,library:Gve,buttons:Uve,alerts:Mve,errors:Tve,toolBar:Yve,headings:Hve,hints:Kve,canvasError:Jve,errorSplash:Ove,roomDialog:Pve,errorDialog:_ve,exportDialog:Wve,helpDialog:qve,clearCanvasDialog:zve,publishDialog:Zve,publishSuccessDialog:Vve,confirmDialog:jve,imageExportDialog:Xve,encrypted:$ve,stats:Ake,toast:eke,colors:tke,welcomeScreen:rke,colorPicker:ike,overwriteConfirm:uke,mermaid:ake}});var Uke={};yt(Uke,{alerts:()=>cke,buttons:()=>gke,canvasError:()=>Ike,clearCanvasDialog:()=>Dke,colorPicker:()=>Rke,colors:()=>Ske,confirmDialog:()=>bke,default:()=>Gcr,encrypted:()=>kke,errorDialog:()=>pke,errorSplash:()=>hke,errors:()=>Cke,exportDialog:()=>fke,headings:()=>Eke,helpDialog:()=>mke,hints:()=>dke,imageExportDialog:()=>vke,labels:()=>ske,library:()=>lke,mermaid:()=>Gke,overwriteConfirm:()=>Nke,publishDialog:()=>yke,publishSuccessDialog:()=>wke,roomDialog:()=>Qke,stats:()=>Fke,toast:()=>xke,toolBar:()=>Bke,welcomeScreen:()=>Lke});var ske,lke,gke,cke,Cke,Bke,Eke,dke,Ike,hke,Qke,pke,fke,mke,Dke,yke,wke,bke,vke,kke,Fke,xke,Ske,Lke,Rke,Nke,Gke,Gcr;var Mke=P(()=>{qt();ske={paste:"Pegar",pasteAsPlaintext:"Pegar coma texto sen formato",pasteCharts:"Pegar gráficos",selectAll:"Seleccionar todo",multiSelect:"Engadir elemento á selección",moveCanvas:"Mover o lenzo",cut:"Cortar",copy:"Copiar",copyAsPng:"Copiar no portapapeis como PNG",copyAsSvg:"Copiar no portapapeis como SVG",copyText:"Copia no portapapeis como texto",copySource:"",convertToCode:"",bringForward:"Traer cara adiante",sendToBack:"Enviar cara atrás",bringToFront:"Traer á fronte",sendBackward:"Enviar ao fondo",delete:"Borrar",copyStyles:"Copiar estilo",pasteStyles:"Pegar estilo",stroke:"Trazo",background:"Fondo",fill:"Recheo",strokeWidth:"Largo do trazo",strokeStyle:"Estilo do trazo",strokeStyle_solid:"Sólido",strokeStyle_dashed:"Liña de trazos",strokeStyle_dotted:"Liña de puntos",sloppiness:"Estilo de trazo",opacity:"Opacidade",textAlign:"Aliñar texto",edges:"Bordos",sharp:"Agudo",round:"Redondo",arrowheads:"Puntas de frecha",arrowhead_none:"Ningunha",arrowhead_arrow:"Frecha",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triángulo",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tamaño da fonte",fontFamily:"Tipo de fonte",addWatermark:'Engadir "Feito con Excalidraw"',handDrawn:"Debuxado a man",normal:"Normal",code:"Código",small:"Pequeno",medium:"Mediano",large:"Grande",veryLarge:"Moi grande",solid:"Sólido",hachure:"Folleto",zigzag:"Zigzag",crossHatch:"Raiado transversal",thin:"Estreito",bold:"Groso",left:"Esquerda",center:"Centrado",right:"Dereita",extraBold:"Moi groso",architect:"Arquitecto",artist:"Artista",cartoonist:"Caricatura",fileTitle:"Nome do arquivo",colorPicker:"Selector de cor",canvasColors:"Usado en lenzo",canvasBackground:"Fondo do lenzo",drawingCanvas:"Lenzo de debuxo",layers:"Capas",actions:"Accións",language:"Idioma",liveCollaboration:"Colaboración en directo...",duplicateSelection:"Duplicar",untitled:"Sen título",name:"Nome",yourName:"O teu nome",madeWithExcalidraw:"Feito con Excalidraw",group:"Agrupar selección",ungroup:"Desagrupar selección",collaborators:"Colaboradores",showGrid:"Mostrar cuadrícula",addToLibrary:"Engadir á biblioteca",removeFromLibrary:"Eliminar da biblioteca",libraryLoadingMessage:"Cargando biblioteca…",libraries:"Explorar bibliotecas",loadingScene:"Cargando escena…",align:"Aliñamento",alignTop:"Aliñamento superior",alignBottom:"Aliñamento inferior",alignLeft:"Aliñar a esquerda",alignRight:"Aliñar a dereita",centerVertically:"Centrar verticalmente",centerHorizontally:"Centrar horizontalmente",distributeHorizontally:"Distribuír horizontalmente",distributeVertically:"Distribuír verticalmente",flipHorizontal:"Virar horizontalmente",flipVertical:"Virar verticalmente",viewMode:"Modo de visualización",share:"Compartir",showStroke:"Mostrar selector de cores do trazo",showBackground:"Mostrar selector de cores do fondo",toggleTheme:"Alternar tema",personalLib:"Biblioteca Persoal",excalidrawLib:"Biblioteca Excalidraw",decreaseFontSize:"Diminuír tamaño da fonte",increaseFontSize:"Aumentar o tamaño da fonte",unbindText:"Desvincular texto",bindText:"Ligar o texto ao contedor",createContainerFromText:"Envolver o texto nun contedor",link:{edit:"Editar ligazón",editEmbed:"",create:"Crear ligazón",createEmbed:"",label:"Ligazón",labelEmbed:"",empty:""},lineEditor:{edit:"Editar liña",exit:"Saír do editor de liñas"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear todo",unlockAll:"Desbloquear todo"},statusPublished:"Publicado",sidebarLock:"Manter a barra lateral aberta",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},lke={noItems:"Aínda non hai elementos engadidos...",hint_emptyLibrary:"Seleccione un elemento no lenzo para engadilo aquí, ou instale unha biblioteca dende o repositorio público, como se detalla a continuación.",hint_emptyPrivateLibrary:"Seleccione un elemento do lenzo para engadilo aquí."},gke={clearReset:"Limpar o lenzo",exportJSON:"Exportar a arquivo",exportImage:"Exportar imaxe...",export:"Gardar en...",copyToClipboard:"Copiar ao portapapeis",save:"Gardar no ficheiro actual",saveAs:"Gardar como",load:"Abrir",getShareableLink:"Obter unha ligazón que se poida compartir",close:"Pechar",selectLanguage:"Seleccionar idioma",scrollBackToContent:"Volver ao contido",zoomIn:"Ampliar",zoomOut:"Reducir",resetZoom:"Reiniciar zoom",menu:"Menú",done:"Feito",edit:"Editar",undo:"Desfacer",redo:"Refacer",resetLibrary:"Reiniciar biblioteca",createNewRoom:"Crear nova sala",fullScreen:"Pantalla completa",darkMode:"Modo escuro",lightMode:"Modo claro",zenMode:"Modo zen",objectsSnapMode:"",exitZenMode:"Saír do modo zen",cancel:"Cancelar",clear:"Limpar",remove:"Eliminar",embed:"",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:"Faga clic para interactuar"},cke={clearReset:"Isto limpará todo o lenzo. Estás seguro?",couldNotCreateShareableLink:"Non se puido crear unha ligazón para compartir.",couldNotCreateShareableLinkTooBig:"Non se puido crear a ligazón para compartir: a escena é demasiado grande",couldNotLoadInvalidFile:"Non se puido cargar o ficheiro non válido",importBackendFailed:"A importación dende o backend fallou.",cannotExportEmptyCanvas:"Non se pode exportar un lenzo baleiro.",couldNotCopyToClipboard:"Non se puido copiar ao portapapeis.",decryptFailed:"Non se poideron descifrar os datos.",uploadedSecurly:"A carga foi asegurada con cifrado de extremo a extremo, o que significa que o servidor de Excalidraw e terceiros non poden ler o contido.",loadSceneOverridePrompt:"A carga dun debuxo externo substituirá o contido existente. Desexa continuar?",collabStopOverridePrompt:`Deter a sesión, sobrescribirá o seu debuxo local previamente almacenado. Está seguro?
|
||
|
||
(Se quere manter o seu debuxo local, simplemente peche a lapela do navegador.)`,errorAddingToLibrary:"Non se puido engadir o elemento á biblioteca",errorRemovingFromLibrary:"Non se puido eliminar o elemento da biblioteca",confirmAddLibrary:"Isto engadirá {{numShapes}} forma(s) a túa biblioteca. Estás seguro?",imageDoesNotContainScene:"Esta imaxe non parece conter ningún dato da escena. Activou a inserción de escenas durante a exportación?",cannotRestoreFromImage:"Non se puido restaurar a escena dende este arquivo de imaxe",invalidSceneUrl:"Non se puido importar a escena dende a URL proporcionada. Ou ben está malformada ou non contén un JSON con información válida para Excalidraw.",resetLibrary:"Isto limpará a súa biblioteca. Está seguro?",removeItemsFromsLibrary:"Eliminar {{count}} elemento(s) da biblioteca?",invalidEncryptionKey:"A clave de cifrado debe ter 22 caracteres. A colaboración en directo está desactivada.",collabOfflineWarning:`Non hai conexión a Internet dispoñible.
|
||
Os teus cambios non serán gardados!`},Cke={unsupportedFileType:"Tipo de ficheiro non soportado.",imageInsertError:"Non se puido inserir a imaxe. Probe de novo máis tarde...",fileTooBig:"O ficheiro é demasiado grande. O tamaño máximo permitido é {{maxSize}}.",svgImageInsertError:"Non se puido inserir como imaxe SVG. O marcado SVG semella inválido.",failedToFetchImage:"",invalidSVGString:"SVG inválido.",cannotResolveCollabServer:"Non se puido conectar ao servidor de colaboración. Por favor recargue a páxina e probe de novo.",importLibraryError:"Non se puido cargar a biblioteca",collabSaveFailed:"Non se puido gardar na base de datos. Se o problema persiste, deberías gardar o teu arquivo de maneira local para asegurarte de non perdelo teu traballo.",collabSaveFailed_sizeExceeded:"Non se puido gardar na base de datos, o lenzo semella demasiado grande. Deberías gardar o teu arquivo de maneira local para asegurarte de non perdelo teu traballo.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Bke={selection:"Selección",image:"Inserir imaxe",rectangle:"Rectángulo",diamond:"Diamante",ellipse:"Elipse",arrow:"Frecha",line:"Liña",freedraw:"Debuxar",text:"Texto",library:"Biblioteca",lock:"Manter a ferramenta seleccionada activa despois de debuxar",penMode:"Modo lapis - evitar o contacto",link:"Engadir/ Actualizar ligazón para a forma seleccionada",eraser:"Goma de borrar",frame:"",magicframe:"",embeddable:"Inserir na web",laser:"Punteiro láser",hand:"Man (ferramenta de desprazamento)",extraTools:"Máis ferramentas",mermaidToExcalidraw:"",magicSettings:""},Eke={canvasActions:"Accións do lenzo",selectedShapeActions:"Accións da forma seleccionada",shapes:"Formas"},dke={canvasPanning:"Para mover o lenzo, manteña pulsada a roda do rato ou a barra de espazo mentres arrastra, ou utilice a ferramenta da man",linearElement:"Faga clic para iniciar varios puntos, arrastre para unha sola liña",freeDraw:"Fai clic e arrastra, solta cando acabes",text:"Consello: tamén podes engadir texto facendo dobre-clic en calquera lugar coa ferramenta de selección",embeddable:"Faga clic e arrastre para crear un sitio web embebido",text_selected:"Dobre-clic ou prema ENTER para editar o texto",text_editing:"Prema Escape ou CtrlOrCmd+ENTER para finalizar a edición",linearElementMulti:"Faga clic no último punto ou prema Escape ou Enter para rematar",lockAngle:"Pode reducir o ángulo mantendo SHIFT",resize:`Pode reducir as proporcións mantendo SHIFT mentres axusta o tamaño,
|
||
manteña ALT para axustalo dende o centro`,resizeImage:`Pode axustar o tamaño libremente mantendo SHIFT,
|
||
manteña ALT para axustalo dende o centro`,rotate:"Podes reducir os ángulos mantendo SHIFT mentres os rotas",lineEditor_info:"Manteña pulsado CtrlOrCmd e faga dobre clic ou prema CtrlOrCmd + Enter para editar puntos",lineEditor_pointSelected:`Prema Suprimir para eliminar o(s) punto(s)
|
||
CtrlOrCmd+D para duplicalos, ou arrastre para movelos`,lineEditor_nothingSelected:`Seleccione un punto para editar (manteña pulsado SHIFT para selección múltiple),
|
||
ou manteña pulsado Alt e faga clic para engadir novos puntos`,placeImage:"Faga clic para colocar a imaxe, ou faga clic e arrastre para establecer o seu tamaño manualmente",publishLibrary:"Publica a túa propia biblioteca",bindTextToElement:"Prema a tecla enter para engadir texto",deepBoxSelect:"Manteña pulsado CtrlOrCmd para seleccionar en profundidade e evitar o arrastre",eraserRevert:"Manteña pulsado Alt para reverter os elementos marcados para a súa eliminación",firefox_clipboard_write:'Esta función pódese activar establecendo a opción "dom.events.asyncClipboard.clipboardItem" a "true". Para cambiar as opcións do navegador en Firefox, visita a páxina "about:config".',disableSnapping:""},Ike={cannotShowPreview:"Non se pode mostrar a vista previa",canvasTooBig:"Pode que o lenzo sexa demasiado grande.",canvasTooBigTip:"Consello: Probe a acercar un pouco os elementos máis afastados."},hke={headingMain:"Atopouse un erro. Probe <button>recargando a páxina.</button>",clearCanvasMessage:"Se recargar non funcionou, probe <button>limpando o lenzo.</button>",clearCanvasCaveat:" Isto resultará nunha perda do seu traballo ",trackedToSentry:"O erro con identificador {{eventId}} foi rastrexado no noso sistema.",openIssueMessage:"Fomos moi cautelosos de non incluír a información da súa escena no erro. Se a súa escena non é privada, por favor, considere o seguimento do noso <button>rastrexador de erros.</button> Por favor inclúa a seguinte información copiándoa e pegándoa na issue de Github.",sceneContent:"Contido da escena:"},Qke={desc_intro:"Podes invitar xente a colaborar contigo na túa escena actual.",desc_privacy:"Non te preocupes, a sesión usa cifrado de punto a punto, polo que calquera cousa que debuxes mantense privada. Nin tan sequera o noso servidor será capaz de ver o que fas.",button_startSession:"Comezar sesión",button_stopSession:"Rematar sesión",desc_inProgressIntro:"A sesión de colaboración en directo está agora en progreso.",desc_shareLink:"Comparte esta ligazón con calquera que queiras colaborar:",desc_exitSession:"Deter a sesión desconectarao da sala, pero poderá seguir traballando coa escena de maneira local. Teña en conta que isto non afectará a outras persoas, que poderán seguir colaborando na súa versión.",shareTitle:"Únase a unha sesión de colaboración en directo en Excalidraw"},pke={title:"Erro"},fke={disk_title:"Gardar no disco",disk_details:"Exporte os datos da escena a un ficheiro que poderás importar máis tarde.",disk_button:"Gardar nun ficheiro",link_title:"Ligazón para compartir",link_details:"Exportar como unha ligazón de só lectura.",link_button:"Exportar a unha ligazón",excalidrawplus_description:"Garde a escena no seu espazo de traballo en Excalidraw+.",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"Non se puido exportar a Excalidraw+ neste momento..."},mke={blog:"Le o noso blog",click:"clic",deepSelect:"Selección en profundidade",deepBoxSelect:"Selección en profundidade dentro da caixa, evitando o arrastre",curvedArrow:"Frecha curva",curvedLine:"Liña curva",documentation:"Documentación",doubleClick:"dobre-clic",drag:"arrastrar",editor:"Editor",editLineArrowPoints:"",editText:"",github:"Encontrou un problema? Envíeo",howto:"Sigue as nosas normas",or:"ou",preventBinding:"Evitar a unión de frechas",tools:"Ferramentas",shortcuts:"Atallos de teclado",textFinish:"Rematar de editar (editor de texto)",textNewLine:"Engadir unha nova liña (editor de texto)",title:"Axuda",view:"Vista",zoomToFit:"Zoom que se axuste a todos os elementos",zoomToSelection:"Zoom á selección",toggleElementLock:"Bloquear/desbloquear selección",movePageUpDown:"Mover páxina cara enriba/abaixo",movePageLeftRight:"Mover páxina cara a esquerda/dereita"},Dke={title:"Limpar lenzo"},yke={title:"Publicar biblioteca",itemName:"Nome do elemento",authorName:"Nome do autor",githubUsername:"Nome de usuario en Github",twitterUsername:"Nome de usuario en Twitter",libraryName:"Nome da biblioteca",libraryDesc:"Descrición da biblioteca",website:"Páxina web",placeholder:{authorName:"O seu nome ou nome de usuario",libraryName:"Nome da súa biblioteca",libraryDesc:"Descrición da súa biblioteca para axudar a xente a entender o seu uso",githubHandle:"Nome de usuario de GitHub (opcional), así poderás editar a biblioteca unha vez enviada para a súa revisión",twitterHandle:"Nome de usuario en Twitter(opcional), así sabemos a quen darlle crédito cando se lle de promoción a través de Twitter",website:"Ligazón ao teu sitio web persoal ou a outro sitio (opcional)"},errors:{required:"Obrigatorio",website:"Introduza unha URL válida"},noteDescription:"Envíe a súa biblioteca para que sexa incluída no <link>repositorio público de bibliotecas</link>para que outra xente a poida usar nos seus debuxos.",noteGuidelines:"A biblioteca necesita ser aprobada manualmente primeiro. Por favor, lea as <link>normas</link> antes de ser enviado. Necesitarás unha conta de GitHub para comunicarte ou facer cambios se se solicitan, pero non é estritamente necesario.",noteLicense:"Ao enviar, estás de acordo con que a biblioteca sexa publicada baixo a <link>Licenza MIT, </link>o cal significa que, en resumo, calquera pode usalo sen restricións.",noteItems:"Cada elemento da biblioteca debe ter o seu nome propio para que se poida filtrar. Os seguintes elementos da biblioteca serán incluídos:",atleastOneLibItem:"Por favor seleccione polo menos un elemento da biblioteca para comezar",republishWarning:"Nota: algúns dos elementos seleccionados están marcados como xa publicados/enviados. Só deberías reenviar elementos cando se actualice unha biblioteca ou envío."},wke={title:"Biblioteca enviada",content:"Grazas {{authorName}}. A súa biblioteca foi enviada para ser revisada. Pode seguir o estado<link>aquí</link>"},bke={resetLibrary:"Restablecer biblioteca",removeItemsFromLib:"Eliminar os elementos seleccionados da biblioteca"},vke={header:"Exportar imaxe",label:{withBackground:"Fondo",onlySelected:"",darkMode:"Modo escuro",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"Exportar a PNG",exportToSvg:"Exportar a SVG",copyPngToClipboard:"Copiar PNG ao portapapeis"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiar ao portapapeis"}},kke={tooltip:"Os teus debuxos están cifrados de punto a punto, polo que os servidores de Excalidraw nunca os verán.",link:"Entrada do blog acerca do cifrado de punto a punto en Excalidraw"},Fke={angle:"Ángulo",element:"Elemento",elements:"Elementos",height:"Alto",scene:"Escena",selected:"Seleccionado",storage:"Almacenamento",title:"Estadísticas para nerds",total:"Total",version:"Versión",versionCopy:"Faga clic para copiar",versionNotAvailable:"Versión non dispoñible",width:"Ancho"},xke={addedToLibrary:"Engadido á biblioteca",copyStyles:"Estilos copiados.",copyToClipboard:"Copiado ao portapapeis.",copyToClipboardAsPng:`Copiar {{exportSelection}} ao portapapeis como PNG
|
||
({{exportColorScheme}})`,fileSaved:"Ficheiro gardado.",fileSavedToFilename:"Gardado en {filename}",canvas:"lenzo",selection:"selección",pasteAsSingleElement:`Usa {{shortcut}} para pegar como un único elemento
|
||
ou pega nun editor de texto existente`,unableToEmbed:"",unrecognizedLinkFormat:""},Ske={transparent:"Transparente",black:"Negro",white:"Branco",red:"Vermello",pink:"Rosa",grape:"Uva",violet:"Violeta",gray:"Gris",blue:"Azul",cyan:"",teal:"",green:"Verde",yellow:"Marelo",orange:"Laranxa",bronze:"Bronce"},Lke={app:{center_heading:"Toda a información é gardada de maneira local no seu navegador.",center_heading_plus:"Queres ir a Excalidraw+ no seu lugar?",menuHint:"Exportar, preferencias, idiomas, ..."},defaults:{menuHint:"Exportar, preferencias, e máis...",center_heading:"Diagramas. Feito. Sinxelo.",toolbarHint:"Escolle unha ferramenta & Comeza a debuxar!",helpHint:"Atallos & axuda"}},Rke={mostUsedCustomColors:"",colors:"Cores",shades:"",hexCode:"",noShades:""},Nke={action:{exportToImage:{title:"Exportar como imaxe",button:"Exportar como imaxe",description:""},saveToDisk:{title:"Gardar no disco",button:"Gardar no disco",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Exportar a Excalidraw+",description:""}},modal:{loadFromFile:{title:"Cargar dende arquivo",button:"Cargar dende arquivo",description:""},shareableLink:{title:"Cargar dende un enlace",button:"Substituír o meu contido",description:""}}},Gke={title:"",button:"",description:"",syntax:"",preview:""},Gcr={labels:ske,library:lke,buttons:gke,alerts:cke,errors:Cke,toolBar:Bke,headings:Eke,hints:dke,canvasError:Ike,errorSplash:hke,roomDialog:Qke,errorDialog:pke,exportDialog:fke,helpDialog:mke,clearCanvasDialog:Dke,publishDialog:yke,publishSuccessDialog:wke,confirmDialog:bke,imageExportDialog:vke,encrypted:kke,stats:Fke,toast:xke,colors:Ske,welcomeScreen:Lke,colorPicker:Rke,overwriteConfirm:Nke,mermaid:Gke}});var gFe={};yt(gFe,{alerts:()=>Kke,buttons:()=>Hke,canvasError:()=>Wke,clearCanvasDialog:()=>Xke,colorPicker:()=>oFe,colors:()=>aFe,confirmDialog:()=>eFe,default:()=>Ucr,encrypted:()=>rFe,errorDialog:()=>Zke,errorSplash:()=>qke,errors:()=>Jke,exportDialog:()=>Vke,headings:()=>Pke,helpDialog:()=>jke,hints:()=>_ke,imageExportDialog:()=>tFe,labels:()=>Tke,library:()=>Yke,mermaid:()=>lFe,overwriteConfirm:()=>sFe,publishDialog:()=>$ke,publishSuccessDialog:()=>AFe,roomDialog:()=>zke,stats:()=>iFe,toast:()=>uFe,toolBar:()=>Oke,welcomeScreen:()=>nFe});var Tke,Yke,Hke,Kke,Jke,Oke,Pke,_ke,Wke,qke,zke,Zke,Vke,jke,Xke,$ke,AFe,eFe,tFe,rFe,iFe,uFe,aFe,nFe,oFe,sFe,lFe,Ucr;var cFe=P(()=>{qt();Tke={paste:"הדבק",pasteAsPlaintext:"הדבק ללא עיצוב",pasteCharts:"הדבק גרפים",selectAll:"בחר הכל",multiSelect:"הוסף רכיב לבחירה",moveCanvas:"הזז את הקנבס",cut:"גזור",copy:"העתק",copyAsPng:"העתק ללוח כ PNG",copyAsSvg:"העתק ללוח כ SVG",copyText:"העתק ללוח כטקסט",copySource:"",convertToCode:"",bringForward:"הבא שכבה קדימה",sendToBack:"שלח אחורה",bringToFront:"העבר לחזית",sendBackward:"העבר שכבה אחורה",delete:"מחק",copyStyles:"העתק סגנון",pasteStyles:"הדבק סגנון",stroke:"קו מתאר",background:"רקע",fill:"מילוי",strokeWidth:"עובי קו מתאר",strokeStyle:"סגנון קו המתאר",strokeStyle_solid:"מלא",strokeStyle_dashed:"מקווקו",strokeStyle_dotted:"מנוקד",sloppiness:"רישול",opacity:"אטימות",textAlign:"יישור טקסט",edges:"קצוות",sharp:"חד",round:"עגול",arrowheads:"ראשי חצים",arrowhead_none:"ללא",arrowhead_arrow:"חץ",arrowhead_bar:"קצה אנכי",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"משולש",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"גודל גופן",fontFamily:"גופן",addWatermark:'הוסף "נוצר באמצעות Excalidraw"',handDrawn:"ציור יד",normal:"רגיל",code:"קוד",small:"קטן",medium:"בינוני",large:"גדול",veryLarge:"גדול מאוד",solid:"מוצק",hachure:"קווים מקבילים קצרים להצגת כיוון וחדות שיפוע במפה",zigzag:"זיגזג",crossHatch:"קווים מוצלבים שתי וערב",thin:"דק",bold:"מודגש",left:"שמאל",center:"מרכז",right:"ימין",extraBold:"מודגש במיוחד",architect:"ארכיטקט",artist:"אמן",cartoonist:"קריקטוריסט",fileTitle:"שם קובץ",colorPicker:"בוחר צבעים",canvasColors:"בשימוש בקנבס",canvasBackground:"רקע קנבס",drawingCanvas:"קנבס ציור",layers:"שכבות",actions:"פעולות",language:"שפה",liveCollaboration:"התחל שיתוף חי...",duplicateSelection:"שכפל",untitled:"ללא כותרת",name:"שם",yourName:"שמך",madeWithExcalidraw:"נוצר באמצעות Excalidraw",group:"קבץ",ungroup:"פרק קבוצה",collaborators:"שותפים",showGrid:"הצג רשת",addToLibrary:"הוסף לספריה",removeFromLibrary:"הסר מספריה",libraryLoadingMessage:"טוען ספריה…",libraries:"עיין בספריות",loadingScene:"טוען תצוגה…",align:"יישר",alignTop:"יישר למעלה",alignBottom:"יישר למטה",alignLeft:"יישר לשמאל",alignRight:"יישר לימין",centerVertically:"מרכז אנכית",centerHorizontally:"מרכז אופקית",distributeHorizontally:"חלוקה אופקית",distributeVertically:"חלוקה אנכית",flipHorizontal:"הפוך אופקית",flipVertical:"הפוך אנכית",viewMode:"מצב תצוגה",share:"שתף",showStroke:"הצג בוחר צבע מברשת",showBackground:"הצג בוחר צבע רקע",toggleTheme:"שינוי ערכת העיצוב",personalLib:"ספריה פרטית",excalidrawLib:"הספריה של Excalidraw",decreaseFontSize:"הקטן את גודל הגופן",increaseFontSize:"הגדל את גודל הגופן",unbindText:"ביטול קיבוע הטקסט",bindText:"קיבוע הטקסט למיכל",createContainerFromText:"ארוז טקסט במיכל",link:{edit:"עריכת קישור",editEmbed:"ערוך קישור ושבץ",create:"יצירת קישור",createEmbed:"צור קישור ושבץ",label:"קישור",labelEmbed:"קשר ושבץ",empty:"לא נקבע קישור"},lineEditor:{edit:"ערוך קו",exit:"צא מעורך הקו"},elementLock:{lock:"נעילה",unlock:"ביטול נעילה",lockAll:"לנעול הכל",unlockAll:"שחרור הכול"},statusPublished:"פורסם",sidebarLock:"שמור את סרגל הצד פתוח",selectAllElementsInFrame:"בחר את כל האלמנטים במסגרת",removeAllElementsFromFrame:"הסר את כל האלמנטים שבמסגרת",eyeDropper:"",textToDiagram:"",prompt:""},Yke={noItems:"עוד לא הוספת דברים...",hint_emptyLibrary:"בחר משהו בקנבס כדי להוסיף אותו לכאן, או שתתקין ספריה מהספריה הציבורית מטה.",hint_emptyPrivateLibrary:"בחר משהו בקנבס כדי להוסיף אותו לכאן."},Hke={clearReset:"אפס את הקנבאס",exportJSON:"ייצא לקובץ",exportImage:"ייצוא התמונה...",export:"שמור ל...",copyToClipboard:"העתק ללוח",save:"שמור לקובץ נוכחי",saveAs:"שמירה בשם",load:"פתח",getShareableLink:"קבל קישור לשיתוף",close:"סגור",selectLanguage:"בחר שפה",scrollBackToContent:"גלול בחזרה לתוכן",zoomIn:"הגדל",zoomOut:"הקטן",resetZoom:"איפוס זום",menu:"תפריט",done:"בוצע",edit:"ערוך",undo:"בטל",redo:"בצע מחדש",resetLibrary:"איפוס ספריה",createNewRoom:"צור חדר חדש",fullScreen:"מסך מלא",darkMode:"מצב כהה",lightMode:"מצב בהיר",zenMode:"מצב זן",objectsSnapMode:"",exitZenMode:"צא ממצב זן",cancel:"ביטול",clear:"ניקוי",remove:"הסר",embed:"",publishLibrary:"פרסום",submit:"שליחה",confirm:"אשר",embeddableInteractionButton:""},Kke={clearReset:"פעולה זו תנקה את כל הקנבס. אתה בטוח?",couldNotCreateShareableLink:"יצירת קישור לשיתוף נכשל.",couldNotCreateShareableLinkTooBig:"יצירת קישור לשיתוף נכשל: התצוגה גדולה מדי",couldNotLoadInvalidFile:"טעינת קובץ לא תקין נכשלה",importBackendFailed:"ייבוא מהשרת נכשל.",cannotExportEmptyCanvas:"לא ניתן לייצא קנבאס ריק.",couldNotCopyToClipboard:"לא ניתן היה להעתיק ללוח.",decryptFailed:"פיענוח ההצפנה של המידע נכשל.",uploadedSecurly:"ההעלאה אובטחה באמצעות הצפנה מקצה לקצה, פירוש הדבר שהשרת של Excalidraw וגורמי צד ג׳ לא יכולים לקרוא את התוכן.",loadSceneOverridePrompt:"טעינה של ציור חיצוני תחליף את התוכן הקיים שלך. האם תרצה להמשיך?",collabStopOverridePrompt:`עצירת השיתוף תוביל למחיקת הציור הקודם ששמור מקומית בדפדפן. האם אתה בטוח?
|
||
|
||
(אם תרצה לשמור את הציור המקומי, סגור את הטאב של הדפדפן במקום.)`,errorAddingToLibrary:"לא ניתן להוסיף פריט לספרייה",errorRemovingFromLibrary:"לא ניתן להסיר פריט מהספריה",confirmAddLibrary:"זה יוסיף {{numShapes}} צורה(ות) לספריה שלך. האם אתה בטוח?",imageDoesNotContainScene:"נראה שהתמונה לא מכילה מידע על הסצינה. האם אפשרת הטמעת מידע הסצינה בעת השמירה?",cannotRestoreFromImage:"לא הצלחנו לשחזר את הסצנה מקובץ התמונה",invalidSceneUrl:"ייבוא מידע סצנה מהקישור שסופק כשל. או שהוא משובש, או שאינו מכיל מידע של Excalidraw בפורמט JSON.",resetLibrary:"פעולה זו תנקה את כל הספריה שלך. אתה בטוח?",removeItemsFromsLibrary:"מחק {{count}} פריט(ים) מהספריה?",invalidEncryptionKey:"מפתח ההצפנה חייב להיות בן 22 תוים. השיתוף החי מנוטרל.",collabOfflineWarning:`אין חיבור זמין לאינטרנט.
|
||
השינויים שלך לא ישמרו!`},Jke={unsupportedFileType:"סוג הקובץ אינו נתמך.",imageInsertError:"לא ניתן היה להוסיף את התמונה. אנא נסה שוב מאוחר יותר...",fileTooBig:"הקובץ גדול מדי. הגודל המירבי המותר הינו {{maxSize}}.",svgImageInsertError:"לא ניתן היה להוסיף את תמונת ה-SVG. הסימונים בתוך קובץ ה-SVG עשויים להיות שגויים.",failedToFetchImage:"",invalidSVGString:"SVG שגוי.",cannotResolveCollabServer:"לא הצלחתי להתחבר לשרת השיתוף. אנא רענן את הדף ונסה שוב.",importLibraryError:"לא ניתן היה לטעון את הספריה",collabSaveFailed:"לא הצלחתי להתחבר למסד הנתונים האחורי. אם הבעיה ממשיכה, כדאי שתשמור את הקובץ מקומית כדי לוודא שלא תאבד את העבודה שלך.",collabSaveFailed_sizeExceeded:"לא הצלחתי לשמור למסד הנתונים האחורי, נראה שהקנבס שלך גדול מדי. כדאי שתשמור את הקובץ מקומית כדי לוודא שלא תאבד את העבודה שלך.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Oke={selection:"בחירה",image:"הוספת תמונה",rectangle:"מלבן",diamond:"יהלום",ellipse:"אליפסה",arrow:"חץ",line:"קו",freedraw:"צייר",text:"טקסט",library:"ספריה",lock:"השאר את הכלי הנבחר פעיל גם לאחר סיום הציור",penMode:"מצב עט - מנע נגיעה",link:"הוספה/עדכון קישור של הצורה שנבחרה",eraser:"מחק",frame:"",magicframe:"",embeddable:"",laser:"",hand:"יד (כלי הזזה)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},Pke={canvasActions:"פעולות קנבאס",selectedShapeActions:"פעולות על הצורות שנבחרו",shapes:"צורות"},_ke={canvasPanning:"כדי להזיז את הקנבס, החזק את גלגל העכבר לחוץ או את מקש הרווח לחוץ תוך כדי גרירה, או השתמש בכלי היד",linearElement:"לחץ להתחלת מספר נקודות, גרור לקו יחיד",freeDraw:"לחץ וגרור, שחרר כשסיימת",text:"טיפ: אפשר להוסיף טקסט על ידי לחיצה כפולה בכל מקום עם כלי הבחירה",embeddable:"",text_selected:"לחץ לחיצה כפולה או הקש על אנטר לעריכת הטקסט",text_editing:"כדי לסיים את העריכה לחץ על מקש Escape או על Ctrl (Cmd במחשבי אפל) ומקש Enter",linearElementMulti:"הקלק על הנקודה האחרונה או הקש Escape או Enter לסיום",lockAngle:"ניתן להגביל את הזוויות על ידי החזקה של מקש ה- SHIFT",resize:`ניתן להגביל פרופורציות על ידי לחיצה על SHIFT תוך כדי שינוי גודל,
|
||
החזק ALT בשביל לשנות גודל ביחס למרכז`,resizeImage:`אתה יכול לשנות את הגודל בחופשיות על ידי החזקת מקש SHIFT,
|
||
החזק את מקש ALT כדי לבצע שינוי גודל מהמרכז`,rotate:"ניתן להגביל זוויות על ידי לחיצה על SHIFT תוך כדי סיבוב",lineEditor_info:"החזק Ctrl / Cmd ובצע לחיצה כפולה או לחץ Ctrl / Cmd + Enter לעריכת נקודות",lineEditor_pointSelected:`לחץ Delete למחיקת נקודה/ות,
|
||
Ctrl / Cmd + D לשכפול, או גרור להזזה`,lineEditor_nothingSelected:`בחר נקודה כדי לערוך (החזק SHIFT לבחירת כמה),
|
||
או החזק Alt והקלק להוספת נקודות חדשות`,placeImage:"הקלק להנחת התמונה, או הקלק וגרור להגדרת הגודל שלו ידנית",publishLibrary:"פרסם ספריה משלך",bindTextToElement:"הקש Enter כדי להוספת טקסט",deepBoxSelect:"החזק Ctrl / Cmd לבחירה עמוקה ולמניעת גרירה",eraserRevert:"החזק Alt להחזרת רכיבים מסומנים למחיקה",firefox_clipboard_write:'יכולות זה ניתנת להפעלה על ידי שינוי הדגל של "dom.events.asyncClipboard.clipboardItem" למצב "true". כדי לשנות את הדגל בדפדפן Firefox, בקר בעמוד ״about:config״.',disableSnapping:""},Wke={cannotShowPreview:"לא ניתן להראות תצוגה מקדימה",canvasTooBig:"הקנבס עלול להיות גדול מדי.",canvasTooBigTip:"טיפ: נסה להזיז את הרכיבים הרחוקים ביותר מעט קרוב יותר האחד לשני."},qke={headingMain:"",clearCanvasMessage:"אם טעינה מחדש לא עובדת, נסה ",clearCanvasCaveat:" זה יגרום לאובדן העבודה ",trackedToSentry:"",openIssueMessage:"",sceneContent:"תוכן הקנבאס:"},zke={desc_intro:"אתה יכול להזמין אנשים לקנבאס הנוכחי שלך לעבודה משותפת.",desc_privacy:"אל דאגה, השיתוף מוצפן מקצה לקצה, כך שכל מה שתצייר ישאר פרטי. אפילו השרתים שלנו לא יוכלו לראות את מה שאתה ממציא.",button_startSession:"התחל שיתוף",button_stopSession:"הפסק שיתוף",desc_inProgressIntro:"שיתוף חי פעיל כרגע.",desc_shareLink:"שתף את הקישור עם כל מי שאתה מעוניין לעבוד אתו:",desc_exitSession:"עצירת השיתוף תנתק אותך מהחדר, אבל עדיין תוכל להמשיך לעבוד על הקנבאס, מקומית. שים לב שזה לא ישפיע על אנשים אחרים, והם עדיין יוכלו לבצע שיתוף עם הגרסה שלהם.",shareTitle:"הצטרף לשיתוף לעבודה משותפת חיה, בזמן אמת, על גבי Excalidraw"},Zke={title:"שגיאה"},Vke={disk_title:"שמור לכונן",disk_details:"ייצא מידע של הקנבאס לקובץ שתוכל לייבא אחר כך.",disk_button:"שמירה לקובץ",link_title:"קבל קישור לשיתוף",link_details:"ייצוא כקישור לקריאה בלבד.",link_button:"ייצוא לקישור",excalidrawplus_description:"שמור את הקנבאס לסביבת העבודה שלך ב- +Excalidraw.",excalidrawplus_button:"ייצוא",excalidrawplus_exportError:"לא הצלחתי לייצא ל- +Excalidraw כרגע..."},jke={blog:"קרא את הבלוג שלנו",click:"קליק",deepSelect:"בחירה עמוקה",deepBoxSelect:"בחירה עמוקה בתוך קופסה ומניעת גרירה",curvedArrow:"חץ מעוגל",curvedLine:"קו מעוגל",documentation:"תיעוד",doubleClick:"לחיצה כפולה",drag:"גרור",editor:"עורך",editLineArrowPoints:"",editText:"",github:"מצאת בעיה? דווח",howto:"עקוב אחר המדריכים שלנו",or:"או",preventBinding:"למנוע נעיצת חיצים",tools:"כלים",shortcuts:"קיצורי מקלדת",textFinish:"סיים עריכה (עורך טקסט)",textNewLine:"הוסף שורה חדשה (עורך טקסט)",title:"עזרה",view:"תצוגה",zoomToFit:"זום להתאמת כל האלמנטים למסך",zoomToSelection:"התמקד בבחירה",toggleElementLock:"נעילה/ביטול הנעילה של הרכיבים הנבחרים",movePageUpDown:"זוז עמוד למעלה/למטה",movePageLeftRight:"זוז עמוד שמאלה/ימינה"},Xke={title:"ניקוי הקנבס"},$ke={title:"פרסם ספריה",itemName:"שם הפריט",authorName:"שם היוצר",githubUsername:"שם המשתמש שלך ב-GitHub",twitterUsername:"שם המשתמש שלך ב-Twitter",libraryName:"שם הספריה",libraryDesc:"תיאור הספריה",website:"אתר",placeholder:{authorName:"שמך או שם המשתמש שלך",libraryName:"תנו שם לספריה",libraryDesc:"תיאור של הספריה שלך כדי לסייע למשתמשים להבין את השימוש בה",githubHandle:"כינוי GitHub (לא חובה), כדי שתוכל לערוך את הספרית לאחר שנשלחה לבדיקה",twitterHandle:"שם משתמש טוויטר (לא חובה), כדי שנדע למי לתת קרדיט כשאנחנו מפרסמים בטוויטר",website:"קישור לאתר הפרטי שלך או לכל מקום אחר (אופציונאלי)"},errors:{required:"נדרש",website:"הזינו כתובת URL תקינה"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"לכל פריט בסיפריה חייב להיות שם כדי שאפשר יהיה לסנן. הפריטי סיפריה הבאים יהיו כלולים:",atleastOneLibItem:"אנא בחר לפחות פריט אחד מספריה כדי להתחיל",republishWarning:"הערה: חלק מהפריטים שבחרת מסומנים ככאלו שכבר פורסמו/נשלחו. אתה צריך לשלוח פריטים מחדש כאשר אתה מעדכן ספריה או הגשה קיימים."},AFe={title:"הספריה הוגשה",content:"תודה {{authorName}}. הספריה שלך נשלחה לבחינה. תוכל לעקוב אחרי סטטוס הפרסום"},eFe={resetLibrary:"איפוס ספריה",removeItemsFromLib:"הסר את הפריטים הנבחרים מהספריה"},tFe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},rFe={tooltip:"הציורים שלך מוצפנים מקצה לקצה כך שהשרתים של Excalidraw לא יראו אותם לעולם.",link:"פוסט בבלוג על הצפנה מקצה לקצב ב-Excalidraw"},iFe={angle:"זווית",element:"רכיב",elements:"רכיבים",height:"גובה",scene:"תצוגה",selected:"נבחר",storage:"אחסון",title:"סטטיסטיקות לחנונים",total:"סה״כ",version:"גרסה",versionCopy:"לחץ להעתקה",versionNotAvailable:"הגרסה אינה זמינה",width:"רוחב"},uFe={addedToLibrary:"נוסף לספריה",copyStyles:"סגנונות הועתקו.",copyToClipboard:"הועתק ללוח.",copyToClipboardAsPng:`{{exportSelection}} הועתקה ללוח כ-PNG
|
||
({{exportColorScheme}})`,fileSaved:"קובץ נשמר.",fileSavedToFilename:"נשמר לקובץ {filename}",canvas:"קנבאס",selection:"בחירה",pasteAsSingleElement:`השתמש ב- {{shortcut}} כדי להדביק כפריט יחיד,
|
||
או הדבק לתוך עורך טקסט קיים`,unableToEmbed:"",unrecognizedLinkFormat:""},aFe={transparent:"שקוף",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},nFe={app:{center_heading:"כל המידע שלח נשמר מקומית בדפדפן.",center_heading_plus:"אתה רוצה ללכת אל Excalidraw+ במקום?",menuHint:"ייצוא, העדפות, שפות, ..."},defaults:{menuHint:"ייצוא, העדפות, ועוד...",center_heading:"איורים. נעשים. פשוטים.",toolbarHint:"בחר כלי & והתחל לצייר!",helpHint:"קיצורים & עזרה"}},oFe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},sFe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},lFe={title:"",button:"",description:"",syntax:"",preview:""},Ucr={labels:Tke,library:Yke,buttons:Hke,alerts:Kke,errors:Jke,toolBar:Oke,headings:Pke,hints:_ke,canvasError:Wke,errorSplash:qke,roomDialog:zke,errorDialog:Zke,exportDialog:Vke,helpDialog:jke,clearCanvasDialog:Xke,publishDialog:$ke,publishSuccessDialog:AFe,confirmDialog:eFe,imageExportDialog:tFe,encrypted:rFe,stats:iFe,toast:uFe,colors:aFe,welcomeScreen:nFe,colorPicker:oFe,overwriteConfirm:sFe,mermaid:lFe}});var HFe={};yt(HFe,{alerts:()=>dFe,buttons:()=>EFe,canvasError:()=>fFe,clearCanvasDialog:()=>vFe,colorPicker:()=>MFe,colors:()=>GFe,confirmDialog:()=>xFe,default:()=>Mcr,encrypted:()=>LFe,errorDialog:()=>yFe,errorSplash:()=>mFe,errors:()=>IFe,exportDialog:()=>wFe,headings:()=>QFe,helpDialog:()=>bFe,hints:()=>pFe,imageExportDialog:()=>SFe,labels:()=>CFe,library:()=>BFe,mermaid:()=>YFe,overwriteConfirm:()=>TFe,publishDialog:()=>kFe,publishSuccessDialog:()=>FFe,roomDialog:()=>DFe,stats:()=>RFe,toast:()=>NFe,toolBar:()=>hFe,welcomeScreen:()=>UFe});var CFe,BFe,EFe,dFe,IFe,hFe,QFe,pFe,fFe,mFe,DFe,yFe,wFe,bFe,vFe,kFe,FFe,xFe,SFe,LFe,RFe,NFe,GFe,UFe,MFe,TFe,YFe,Mcr;var KFe=P(()=>{qt();CFe={paste:"चिपकाएँ",pasteAsPlaintext:"सादे पाठ के रूप में चिपकाएं",pasteCharts:"चार्ट चिपकाएँ",selectAll:"सभी चुनें",multiSelect:"आकार को चयन में जोड़ें",moveCanvas:"कैनवास को स्थानांतरित करें",cut:"काटें",copy:"प्रतिलिपि",copyAsPng:"क्लिपबोर्ड पर कॉपी करें ,पीएनजी के रूप में",copyAsSvg:"क्लिपबोर्ड पर कॉपी करें,एसवीजी के रूप में",copyText:"लेखन के रूप में पटल पर कॉपी करें",copySource:"स्त्रोत को प्रति-फलक पे प्रतिलिपित करे.",convertToCode:"सांकेतिक लिपि में परिवर्तित करे",bringForward:"सामने लाएं",sendToBack:"पीछे भेजें",bringToFront:"सामने लाएँ",sendBackward:"पीचे भीजे",delete:"मिटाए",copyStyles:"कॉपी स्टाइल",pasteStyles:"स्टाइल पेस्ट करें",stroke:"रेखा",background:"पृष्ठभूमि",fill:"भरें",strokeWidth:"रेखा की चौड़ाई",strokeStyle:"स्ट्रोक का आकार",strokeStyle_solid:"ठोस",strokeStyle_dashed:"डैश",strokeStyle_dotted:"बिंदीदार",sloppiness:"बेढ़ंगापन",opacity:"अपारदर्शिता",textAlign:"टेक्स्ट संरेखन",edges:"किनारा",sharp:"नुकीला",round:"गोल",arrowheads:"तीर शीर्ष",arrowhead_none:"कोई भी नहीं",arrowhead_arrow:"तीर",arrowhead_bar:"बार",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"त्रिकोण",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"फ़ॉन्ट का आकार",fontFamily:"फ़ॉन्ट का परिवार",addWatermark:'ऐड "मेड विथ एक्सकैलिडराव"',handDrawn:"हाथ से बनाया हुआ",normal:"साधारण",code:"कोड",small:"छोटा",medium:"मध्यम",large:"बड़ा",veryLarge:"बहुत बड़ा",solid:"दृढ़",hachure:"हैशूर",zigzag:"तेढ़ी मेढ़ी",crossHatch:"क्रॉस हैच",thin:"पतला",bold:"मोटा",left:"बाएं",center:"मध्य",right:"दाएँ",extraBold:"बहुत मोटा",architect:"वास्तुकार",artist:"कलाकार",cartoonist:"व्यंग्य चित्रकार",fileTitle:"फ़ाइल का नाम",colorPicker:"रंग चयन",canvasColors:"कॅनवास पर प्रयोगित",canvasBackground:"कैनवास बैकग्राउंड",drawingCanvas:"कैनवास बना रहे हैं",layers:"परतें",actions:"कार्रवाई",language:"भाषा",liveCollaboration:"जीवंत सहयोग...",duplicateSelection:"डुप्लिकेट",untitled:"अशीर्षित",name:"नाम",yourName:"आपका नाम",madeWithExcalidraw:"मेड विथ एक्सकैलिडराव",group:"समूह चयन",ungroup:"समूह चयन असमूहीकृत करें",collaborators:"सहयोगी",showGrid:"ग्रिड दिखाएं",addToLibrary:"लाइब्रेरी से जोड़ें",removeFromLibrary:"लाइब्रेरी से निकालें",libraryLoadingMessage:"लाइब्रेरी खुल रही है",libraries:"लाइब्रेरी ब्राउज़ करें",loadingScene:"दृश्य खुल रहा है",align:"संरेखित करें",alignTop:"ऊपर संरेखित करें",alignBottom:"नीचे संरेखित करें",alignLeft:"बायें संरेखित करें",alignRight:"दायें संरेखित करें",centerVertically:"लंबवत केन्द्रित",centerHorizontally:"क्षैतिज केन्द्रित",distributeHorizontally:"क्षैतिज रूप से वितरित करें",distributeVertically:"खड़ी रूप से वितरित करें",flipHorizontal:"दायें बायें पलटे",flipVertical:"ऊपर नीचे पलटे",viewMode:"अलग अलग देखें",share:"शेयर करें",showStroke:"",showBackground:"पृष्ठभूमि रंग वरक़ दिखाये",toggleTheme:"",personalLib:"वैयक्तिक समूहकोष",excalidrawLib:"एक्सकेलीड्रॉ समूहकोष",decreaseFontSize:"आकार घटाइऐ",increaseFontSize:"फ़ॉन्ट आकार बढ़ाएँ",unbindText:"लिपि को बंधमुक्त करें",bindText:"लेखन को कोश से जोड़े",createContainerFromText:"मूलपाठ कंटेनर में मोड के दिखाए",link:{edit:"कड़ी संपादित करे",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"रेखा संपादित करे",exit:"रेखा संपादक के बाहर"},elementLock:{lock:"ताले में रखें",unlock:"ताले से बाहर",lockAll:"सब ताले के अंदर रखे",unlockAll:"सब ताले के बाहर निकाले"},statusPublished:"प्रकाशित",sidebarLock:"साइडबार खुला रखे.",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"चित्रफलक से रंग चुने",textToDiagram:"",prompt:""},BFe={noItems:"अभी तक कोई आइटम जोडा नहीं गया.",hint_emptyLibrary:"यहाँ जोड़ने के लिए पटल से एक वस्तु चुने, अथवा जन कोष से एक संग्रह नीचे स्थापित करें.",hint_emptyPrivateLibrary:"यहाँ जोड़ने के लिए पटल से एक वस्तु चुने."},EFe={clearReset:"कैनवास रीसेट करें",exportJSON:"",exportImage:"प्रतिमा निर्यात करे...",export:"यंहा सुरक्षित करे...",copyToClipboard:"क्लिपबोर्ड पर प्रतिलिपि बनाएँ",save:"",saveAs:"सेव करे इस तरह",load:"खोलें",getShareableLink:"साझा करने योग्य लिंक प्राप्त करें",close:"बंद करें",selectLanguage:"भाषा चुनें",scrollBackToContent:"सामग्री पर वापस स्क्रॉल करें",zoomIn:"बड़ा करें",zoomOut:"छोटा करें",resetZoom:"ज़ूम रीसेट करें",menu:"मेन्यू",done:"समाप्त",edit:"संशोधन करें",undo:"पूर्ववत् करें",redo:"फिर से करें",resetLibrary:"",createNewRoom:"एक नया कमरा बनाएं",fullScreen:"पूरी स्क्रीन",darkMode:"डार्क मोड",lightMode:"लाइट मोड",zenMode:"ज़ेन मोड",objectsSnapMode:"वस्तुओं से पकड़े",exitZenMode:"जेन मोड से बाहर निकलें",cancel:"",clear:"साफ़ करे",remove:"हटाएं",embed:"",publishLibrary:"प्रकाशित करें",submit:"प्रस्तुत करे",confirm:"पुष्टि करें",embeddableInteractionButton:""},dFe={clearReset:"इससे पूरा कैनवास साफ हो जाएगा। क्या आपको यकीन है?",couldNotCreateShareableLink:"साझा करने योग्य लिंक नहीं बनाया जा सका।",couldNotCreateShareableLinkTooBig:"लिंक शेयर नहीं कर सकता: दृश्य बहुत बड़ा",couldNotLoadInvalidFile:"अमान्य फ़ाइल लोड नहीं की जा सकी",importBackendFailed:"बैकएंड से आयात करना विफल रहा।",cannotExportEmptyCanvas:"खाली कैनवास निर्यात नहीं कर सकता।",couldNotCopyToClipboard:"क्लिपबोर्ड पर कॉपी नहीं किया जा सका",decryptFailed:"डेटा को डिक्रिप्ट नहीं किया जा सका।",uploadedSecurly:"अपलोड को एंड-टू-एंड एन्क्रिप्शन के साथ सुरक्षित किया गया है, जिसका मतलब है कि एक्सक्लूसिव सर्वर और थर्ड पार्टी कंटेंट नहीं पढ़ सकते हैं।",loadSceneOverridePrompt:"लोड हो रहा है बाहरी ड्राइंग आपके मौजूदा सामग्री को बदल देगा। क्या आप जारी रखना चाहते हैं?",collabStopOverridePrompt:"चालू सत्र समाप्ति से आपका संग्रहित पूर्व स्थानीय अधिलेखन नष्ट होकर पुनः अधिलेखित होगा, क्या आपको यक़ीन हैं? ( यदी आपको पूर्व स्थापित अधिलेखन सुरक्षित चाहिये तो बस ब्राउज़र टैब बंद करे)",errorAddingToLibrary:"संग्रह में जोडा न जा सका",errorRemovingFromLibrary:"संग्रह से हटाया नहीं जा सका",confirmAddLibrary:"लाइब्रेरी जोड़ें पुष्टि करें आकार संख्या",imageDoesNotContainScene:"ऐसा लगता है कि इस छवि में कोई दृश्य डेटा नहीं है। क्या आपने निर्यात के दौरान दृश्य एम्बेडिंग अनुमतित की है?",cannotRestoreFromImage:"छवि फ़ाइल बहाल दृश्य नहीं है",invalidSceneUrl:"दिये गये युआरेल से दृश्य आयात नहीं किया जा सका. यह या तो अनुचित है, या इसमें उचित Excalidraw JSON डेटा नहीं है।",resetLibrary:"यह पूरा संग्रह रिक्त करेगा. क्या आपको यक़ीन हैं?",removeItemsFromsLibrary:"{{count}} वस्तु(यें) संग्रह से हटायें?",invalidEncryptionKey:"कूटलेखन कुंजी 22 अक्षरों की होनी चाहिये, इसलिये जीवंत सहयोग अक्षम हैं",collabOfflineWarning:`कोई इंटरनेट कनेक्शन उपलब्ध नहीं है।
|
||
आपके बदलाव सहेजे नहीं जाएंगे!`},IFe={unsupportedFileType:"असमर्थित फाइल प्रकार",imageInsertError:"छवि सम्मिलित नहीं की जा सकी. पुनः प्रयत्न करे...",fileTooBig:"फ़ाइल ज़रूरत से ज़्यादा बड़ी हैं. अधिकतम अनुमित परिमाण {{maxSize}} हैं",svgImageInsertError:"एसवीजी छवि सम्मिलित नहीं कर सके, एसवीजी रचना अनुचित हैं",failedToFetchImage:"",invalidSVGString:"अनुचित SVG",cannotResolveCollabServer:"कॉलेब सर्वर से कनेक्शन नहीं हो पा रहा. कृपया पृष्ठ को पुनः लाने का प्रयास करे.",importLibraryError:"संग्रह प्रतिष्ठापित नहीं किया जा सका",collabSaveFailed:"किसी कारण वश अंदरूनी डेटाबेस में सहेजा नहीं जा सका। यदि समस्या बनी रहती है, तो किये काम को खोने न देने के लिये अपनी फ़ाइल को स्थानीय रूप से सहेजे।",collabSaveFailed_sizeExceeded:"लगता है कि पृष्ठ तल काफ़ी बड़ा है, इस्कारण अंदरूनी डेटाबेस में सहेजा नहीं जा सका। किये काम को खोने न देने के लिये अपनी फ़ाइल को स्थानीय रूप से सहेजे।",imageToolNotSupported:"प्रतिमायें अक्षम की गयी हैं",brave_measure_text_error:{line1:"लगता है कि आप Brave ब्राउज़र का उपयोग कर रहे और साथ में <bold>आक्रामक उँगलियो के छाप </bold> का चयन किया हुवा है",line2:"यह आपके चित्रों के <bold>पाठ तत्वों</bold>को खंडित कर सकता हैं",line3:"हमें आपसे ठोस आग्रह है की आप सेट्टिंग में इस विकल्प का चयन ना करे.<link> इस अनुक्रम </link> का पालन करके इसका पता लगा सकते हैं",line4:"यदि इस सेटिंग्स को अक्षम करने पर भी पृष्ठ ठीक नहीं दिखता हो तो, हमारे GitHub पर एक <issueLink>मुद्दा प्रस्तुत</issueLink> करे, या हमें <discordLink>डिस्कोर्ड</discordLink> पर लिखित सम्पर्क करें"},libraryElementTypeError:{embeddable:"",iframe:"आयफ़्रेम तत्व समूहकोष में जोडा नहीं जा सका.",image:""},asyncPasteFailedOnRead:"चिपकाया नहीं जा सका (सिस्टम क्लिपबोर्ड से पढ़ा नहीं जा सका).",asyncPasteFailedOnParse:"चिपकाया नहीं जा सका.",copyToSystemClipboardFailed:"क्लिपबोर्ड पर प्रतिलिपि नहीं बनाई जा सकी."},hFe={selection:"चयन",image:"छवि सम्मिलित करें",rectangle:"आयात",diamond:"तिर्यग्वर्ग",ellipse:"दीर्घवृत्त",arrow:"तीर",line:"रेखा",freedraw:"चित्रांतित करे",text:"पाठ",library:"लाइब्रेरी",lock:"ड्राइंग के बाद चयनित टूल को सक्रिय रखें",penMode:"पेन का मोड - स्पर्श टाले",link:"",eraser:"रबड़",frame:"",magicframe:"तारिक ढाँचें को सांकेतिक लिपि में",embeddable:"",laser:"लेसर टॉर्च",hand:"हाथ ( खिसकाने का औज़ार)",extraTools:"",mermaidToExcalidraw:"मर्मेड से एक्सकाली में",magicSettings:"कृतिम बुद्धिमत्ता सेटिंग्स"},QFe={canvasActions:"कैनवास क्रिया",selectedShapeActions:"चयनित आकृति क्रियाएं",shapes:"आकृतियाँ"},pFe={canvasPanning:"कैनवास को सरकाने के लिए, ड्रैग करते समय माउस व्हील को पकड़े रखे या स्पेसबार को दबाए रखे, अथवा हाथ वाले औज़ार का उपयोग करें",linearElement:"कई बिंदुओं को शुरू करने के लिए क्लिक करें, सिंगल लाइन के लिए खींचें",freeDraw:"क्लिक करें और खींचें। समाप्त करने के लिए, छोड़ो",text:"आप चयन टूल से कहीं भी डबल-क्लिक करके टेक्स्ट जोड़ सकते हैं",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"अंतिम बिंदु पर क्लिक करें या समाप्त होने के लिए एस्केप या एंटर दबाएं",lockAngle:"आप घूर्णन करते समय SHIFT पकड़कर कोणों को मोड़ सकते हैं",resize:`आकार बदलते समय आप SHIFT को पकड़ कर अनुपात में कमी कर सकते हैं,
|
||
केंद्र से आकार बदलने के लिए ALT दबाए रखें`,resizeImage:"",rotate:"आप घूर्णन करते समय SHIFT पकड़कर कोणों को विवश कर सकते हैं",lineEditor_info:"बिंदुओं को सम्पादित करने के लिए CtrlOrCmd को दबायें रखते हुये डबल क्लिक करे, अथवा CtrlOrCmd + Enter साथ दबाये",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"मिटाने के लिए चुने हुए चीजों को ना चुनने के लिए Alt साथ में दबाए",firefox_clipboard_write:'"dom.events.asyncClipboard.clipboardItem" फ़्लैग को "true" पर सेट करके इस सुविधा को संभवतः सक्षम किया जा सकता है। Firefox में ब्राउज़र फ़्लैग बदलने के लिए, "about:config" पृष्ठ पर जाएँ।',disableSnapping:"स्नैपिंग को निष्क्रिय करने के लिए CtrlOrCmd दबाए रखें"},fFe={cannotShowPreview:"पूर्वावलोकन नहीं दिखा सकते हैं",canvasTooBig:"कैनवास बहुत बड़ा",canvasTooBigTip:"कैनवास बहुत बड़ा टिप"},mFe={headingMain:"एक त्रुटि का सामना करना पड़ा। प्रयत्न <button>इस पृष्ठ को पुनः लोड करें</button>",clearCanvasMessage:"यदि पुनः लोड करना काम नहीं करता है, तो प्रयास करें <button>कैनवास साफ करना।</button>",clearCanvasCaveat:" इससे काम का नुकसान होगा ",trackedToSentry:"पहचानकर्ता के साथ त्रुटि {{eventId}} हमारे सिस्टम पर नज़र रखी गई थी।",openIssueMessage:"हम बहुत सतर्क थे कि त्रुटि पर आपकी दृश्य जानकारी शामिल न करें। यदि आपका दृश्य निजी नहीं है, तो कृपया हमारे बारे में विचार करें <button>बग ट्रैकर</button> कृपया GitHub मुद्दे को कॉपी और पेस्ट करके नीचे दी गई जानकारी शामिल करें।",sceneContent:"दृश्य सामग्री:"},DFe={desc_intro:"आप अपने वर्तमान दृश्य के लोगों को अपने साथ सहयोग करने के लिए आमंत्रित कर सकते हैं।",desc_privacy:"चिंता न करें, सत्र अंत-से-अंत एन्क्रिप्शन का उपयोग करता है, इसलिए आप जो भी ड्रा करेंगे वह निजी रहेगा। यहां तक कि हमारा सर्वर भी नहीं देख पाएगा कि आप क्या कर रहे हैं।",button_startSession:"सत्र प्रारंभ करें",button_stopSession:"सत्र रुकें",desc_inProgressIntro:"लाइव सहयोग सत्र अब जारी है।",desc_shareLink:"इस लिंक को आप जिस किसी के साथ भी सहयोग करना चाहते हैं, उसके साथ साझा करें",desc_exitSession:"सत्र रोकना आपको रूम से बाहर कर देगा, लेकिन आप स्थानीय स्तर पर दृश्य के साथ काम करना जारी रख पाएंगे। ध्यान दें कि यह अन्य लोगों को प्रभावित नहीं करेगा, और वे अभी भी अपने संस्करण पर सहयोग करने में सक्षम होंगे।",shareTitle:""},yFe={title:"गलती"},wFe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},bFe={blog:"हमारा ब्लॉग पढे",click:"क्लिक करें",deepSelect:"",deepBoxSelect:"",curvedArrow:"वक्र तीर",curvedLine:"वक्र रेखा",documentation:"",doubleClick:"",drag:"खींचें",editor:"संपादक",editLineArrowPoints:"रेखा/तीर बिंदु सम्पादित करे",editText:"पाठ्य सम्पादित करे/ लेबल जोड़े",github:"मुद्दा मिला? प्रस्तुत करें",howto:"हमारे गाइड का पालन करें",or:"या",preventBinding:"तीर बंधन रोकें",tools:"औज़ार",shortcuts:"कीबोर्ड के शॉर्टकट्स",textFinish:"",textNewLine:"",title:"मदद",view:"दृश्य",zoomToFit:"सभी तत्वों को फिट करने के लिए ज़ूम करें",zoomToSelection:"चयन तक ज़ूम करे",toggleElementLock:"ताले के अंदर/बाहर चुनाव",movePageUpDown:"पृष्ठ ऊपर/नीचे करे",movePageLeftRight:"पृष्ठ बायी/दायी तरफ करे"},vFe={title:""},kFe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:"मान्य URL प्रविष्ट करें"},noteDescription:"संग्रह सम्मिलित करने हेतु प्रस्तुत करें <link>सार्वजनिक संग्रहालय</link>अन्य वक्तियों को उनके चित्रकारी में उपयोग के लिये",noteGuidelines:"संग्रह को पहले स्वीकृति आवश्यक कृपया यह पढ़ें <link>दिशा-निर्देश</link>",noteLicense:"जमा करके, आप सहमत हैं कि संग्रहण को <link>MIT लाइसेंस</link> के तहत प्रकाशित किया जाएगा, जिसका संक्षिप्त अर्थ है कि कोई भी बिना किसी प्रतिबंध के उनका उपयोग कर सकता है।",noteItems:"",atleastOneLibItem:"",republishWarning:"टिप्पणी: कुछ चुने हुवे आइटम पहले ही प्रकाशित/प्रस्तुत किए जा चुके हैं। किसी प्रकाशित संग्रह को अद्यतन करते समय या पहले से प्रस्तुत आइटम को पुन्हा प्रस्तुत करते समय, आप बस उसे केवल अद्यतन करें ।"},FFe={title:"",content:"{{authorName}} धन्यवाद. आपका संग्रहण समीक्षा के लिए दर्ज हो चुका है. समीक्षा स्थिति <link>यहाँ</link>जान सकते हैं."},xFe={resetLibrary:"",removeItemsFromLib:""},SFe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},LFe={tooltip:"आपके चित्र अंत-से-अंत एन्क्रिप्टेड हैं, इसलिए एक्सक्लूसिव्रॉव के सर्वर उन्हें कभी नहीं देखेंगे।",link:""},RFe={angle:"कोण",element:"एलिमेंट",elements:"एलिमेंट",height:"ऊंचाई",scene:"दृश्य",selected:"चयनित",storage:"संग्रह",title:"बेवकूफ के लिए आँकड़े",total:"कुल",version:"संस्करण",versionCopy:"काॅपी करने के लिए क्लिक करें",versionNotAvailable:"संस्करण उपलब्ध नहीं है",width:"चौड़ाई"},NFe={addedToLibrary:"",copyStyles:"काॅपी कीए स्टाइल",copyToClipboard:"क्लिपबोर्ड में कॉपी कीए",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:`एक अवयव के रूप में चिपकाने के लिए {{shortcut}} का उपयोग करें,
|
||
या किसी मौजूदा पाठ संपादक में चिपकायें`,unableToEmbed:"",unrecognizedLinkFormat:""},GFe={transparent:"",black:"काला",white:"सफ़ेद",red:"लाल",pink:"गुलाबी",grape:"अंगूरी",violet:"जामुनी",gray:"गहरा",blue:"नीला",cyan:"आसमानी",teal:"हरा-नीला",green:"हरा",yellow:"पीला",orange:"नारंगी",bronze:"कांस्य"},UFe={app:{center_heading:"आपका सर्व डेटा ब्राउज़र के भीतर स्थानिक जगह पे सुरक्षित किया गया.",center_heading_plus:"बजाय आपको Excalidraw+ पर जाना है?",menuHint:"निर्यात, पसंद, भाषायें, ..."},defaults:{menuHint:"निर्यात, पसंद, और भी...",center_heading:"चित्रांकन। बनाया गया। सरल।",toolbarHint:"एक औजार चुने और चित्रकारी प्रारंभ करे!",helpHint:"शॉर्ट्कट और सहाय्य"}},MFe={mostUsedCustomColors:"अधिकांश उपयोगित रंग",colors:"रंग",shades:"छाया",hexCode:"हेक्स कोड",noShades:"इस रंग की कोई छाया उपलब्ध नहीं हैं"},TFe={action:{exportToImage:{title:"छवि स्वरूप में निर्यात करे",button:"छवि स्वरूप निर्यात करे",description:"दृष्य डेटा छवि स्वरूप में निर्यात करे, उस स्वरूप से आप उसे पुनः आयात कर सकते हो"},saveToDisk:{title:"डिस्क में सम्हाले",button:"डिस्क में सम्हाले",description:"दृष्य डेटा बाहरी फ़ाइल में निर्यात करे, जहाँसे आप उसे पुनः आयात कर सकते हो"},excalidrawPlus:{title:"एक्षकालीड्रॉ+",button:"एक्षकालीड्रॉ+ में निर्यात करे",description:"दृष्य को आपके एक्षकालीड्रॉ+ के कर्यस्थल में सम्हाले"}},modal:{loadFromFile:{title:"फ़ाइल से लोड करें:",button:"फ़ाइल से लोड करें:",description:"फ़ाइल से लोड करने पर <bold>यह आपके कार्य की जगह लेलेगा </bold><br></br>आपकी ड्रॉइंग निम्न दर्शित विकल्पो में से एक चुनके और उपयोग करके सम्हाल सकते हैं"},shareableLink:{title:"लिंक से लोड करें:",button:"इस जगह प्रतिस्थापित करे",description:"बाहर का चित्र लोड करने पर <bold>यह आपके कार्य की जगह लेलेगा </bold><br></br>आप आपकी ड्रॉइंग पहले निम्न दर्शित विकल्पो में से एक चुनके और उपयोग करके सम्हाल सकते हों."}}},YFe={title:"मर्मेड से एक्सकाली में",button:"अंदर डाले",description:"",syntax:"मर्मेड संरचना नियम",preview:"पूर्वावलोकन"},Mcr={labels:CFe,library:BFe,buttons:EFe,alerts:dFe,errors:IFe,toolBar:hFe,headings:QFe,hints:pFe,canvasError:fFe,errorSplash:mFe,roomDialog:DFe,errorDialog:yFe,exportDialog:wFe,helpDialog:bFe,clearCanvasDialog:vFe,publishDialog:kFe,publishSuccessDialog:FFe,confirmDialog:xFe,imageExportDialog:SFe,encrypted:LFe,stats:RFe,toast:NFe,colors:GFe,welcomeScreen:UFe,colorPicker:MFe,overwriteConfirm:TFe,mermaid:YFe}});var Exe={};yt(Exe,{alerts:()=>_Fe,buttons:()=>PFe,canvasError:()=>VFe,clearCanvasDialog:()=>txe,colorPicker:()=>cxe,colors:()=>lxe,confirmDialog:()=>uxe,default:()=>Tcr,encrypted:()=>nxe,errorDialog:()=>$Fe,errorSplash:()=>jFe,errors:()=>WFe,exportDialog:()=>Axe,headings:()=>zFe,helpDialog:()=>exe,hints:()=>ZFe,imageExportDialog:()=>axe,labels:()=>JFe,library:()=>OFe,mermaid:()=>Bxe,overwriteConfirm:()=>Cxe,publishDialog:()=>rxe,publishSuccessDialog:()=>ixe,roomDialog:()=>XFe,stats:()=>oxe,toast:()=>sxe,toolBar:()=>qFe,welcomeScreen:()=>gxe});var JFe,OFe,PFe,_Fe,WFe,qFe,zFe,ZFe,VFe,jFe,XFe,$Fe,Axe,exe,txe,rxe,ixe,uxe,axe,nxe,oxe,sxe,lxe,gxe,cxe,Cxe,Bxe,Tcr;var dxe=P(()=>{qt();JFe={paste:"Beillesztés",pasteAsPlaintext:"Beillesztés formázatlan szövegként",pasteCharts:"Grafikon beillesztése",selectAll:"Összes kijelölése",multiSelect:"Elem hozzáadása a kijelöléshez",moveCanvas:"Vászon mozgatása",cut:"Kivágás",copy:"Másolás",copyAsPng:"Vágólapra másolás mint PNG",copyAsSvg:"Vágólapra másolás mint SVG",copyText:"Vágólapra másolás szövegként",copySource:"",convertToCode:"",bringForward:"Előrébb hozás",sendToBack:"Hátraküldés",bringToFront:"Előrehozás",sendBackward:"Hátrébb küldés",delete:"Törlés",copyStyles:"Stílus másolása",pasteStyles:"Stílus beillesztése",stroke:"Körvonal",background:"Háttér",fill:"Kitöltés",strokeWidth:"Körvonal vastagsága",strokeStyle:"Körvonal stílusa",strokeStyle_solid:"Kitöltött",strokeStyle_dashed:"Szaggatott",strokeStyle_dotted:"Pontozott",sloppiness:"Stílus",opacity:"Áttetszőség",textAlign:"Szöveg igazítása",edges:"Szélek",sharp:"Éles",round:"Kerek",arrowheads:"Nyílhegyek",arrowhead_none:"Nincs",arrowhead_arrow:"Nyíl",arrowhead_bar:"Oszlop",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Háromszög",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Betűméret",fontFamily:"Betűkészlet család",addWatermark:'Add hozzá, hogy "Excalidraw-val készült"',handDrawn:"Kézzel rajzolt",normal:"Normál",code:"Kód",small:"Kicsi",medium:"Közepes",large:"Nagy",veryLarge:"Nagyon nagy",solid:"Kitöltött",hachure:"Vonalkázott",zigzag:"Cikkcakk",crossHatch:"Keresztcsíkozott",thin:"Vékony",bold:"Félkövér",left:"Bal",center:"Közép",right:"Jobb",extraBold:"Extra Félkövér",architect:"Tervezői",artist:"Művészi",cartoonist:"Karikatúrás",fileTitle:"Fájlnév",colorPicker:"Színválasztó",canvasColors:"Rajzvászonon használt",canvasBackground:"Vászon háttérszíne",drawingCanvas:"Rajzvászon",layers:"Rétegek",actions:"Műveletek",language:"Nyelv",liveCollaboration:"Élő együttműködés...",duplicateSelection:"Duplikálás",untitled:"Névtelen",name:"Név",yourName:"Neved",madeWithExcalidraw:"Excalidraw-val készült",group:"Csoportosítás",ungroup:"Csoportbontás",collaborators:"Közreműködők",showGrid:"Rács megjelenítése",addToLibrary:"Hozzáadás a könyvtárhoz",removeFromLibrary:"Eltávólítás a könyvtárból",libraryLoadingMessage:"Könyvtár betöltése…",libraries:"Könyvtárak böngészése",loadingScene:"Jelenet betöltése…",align:"Igazítás",alignTop:"Felülre igazítás",alignBottom:"Alulra igazítás",alignLeft:"Balra igazítás",alignRight:"Jobbra igazítás",centerVertically:"Függőlegesen középre igazított",centerHorizontally:"Vízszintesen középre igazított",distributeHorizontally:"Vízszintes elosztás",distributeVertically:"Függőleges elosztás",flipHorizontal:"Vízszintes tükrözés",flipVertical:"Függőleges tükrözés",viewMode:"Nézet",share:"Megosztás",showStroke:"Körvonal színválasztó megjelenítése",showBackground:"Háttérszín-választó megjelenítése",toggleTheme:"Téma váltása",personalLib:"Személyes könyvtár",excalidrawLib:"Excalidraw könyvtár",decreaseFontSize:"Betűméret csökkentése",increaseFontSize:"Betűméret növelése",unbindText:"Szövegkötés feloldása",bindText:"",createContainerFromText:"Szöveg bekeretezése",link:{edit:"Hivatkozás szerkesztése",editEmbed:"Link szerkesztése / beágyazása",create:"Hivatkozás létrehozása",createEmbed:"Link létrehozása / beágyazása",label:"Hivatkozás",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"Rögzítés",unlock:"Rögzítés feloldása",lockAll:"Összes rögzítése",unlockAll:"Összes feloldása"},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},OFe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},PFe={clearReset:"Vászon törlése",exportJSON:"Exportálás fájlba",exportImage:"Kép exportálása...",export:"Mentés másként...",copyToClipboard:"Vágólapra másolás",save:"Mentés az aktuális fájlba",saveAs:"Mentés másként",load:"Megnyitás",getShareableLink:"Megosztható link létrehozása",close:"Bezárás",selectLanguage:"Nyelv kiválasztása",scrollBackToContent:"Visszagörgetés a tartalomhoz",zoomIn:"Nagyítás",zoomOut:"Kicsinyítés",resetZoom:"Nagyítás alaphelyzetbe",menu:"Menü",done:"Kész",edit:"Szerkesztés",undo:"Vissza",redo:"Újra",resetLibrary:"Könyvtár alaphelyzetbe állítása",createNewRoom:"Új szoba létrehozása",fullScreen:"Teljes képernyő",darkMode:"Sötét mód",lightMode:"Világos mód",zenMode:"Letisztult mód",objectsSnapMode:"",exitZenMode:"Kilépés a letisztult módból",cancel:"Mégsem",clear:"Kiűrítés",remove:"Eltávolítás",embed:"",publishLibrary:"Közzététel",submit:"Elküldés",confirm:"Megerősítés",embeddableInteractionButton:""},_Fe={clearReset:"Ez a művelet törli a vászont. Biztos benne?",couldNotCreateShareableLink:"Nem sikerült megosztható linket létrehozni.",couldNotCreateShareableLinkTooBig:"Nem sikerült megosztható linket látrehozni: túl nagy a jelenet",couldNotLoadInvalidFile:"Nem sikerült betölteni a helytelen fájlt",importBackendFailed:"Nem sikerült betölteni a szerverről.",cannotExportEmptyCanvas:"Üres vászont nem lehet exportálni.",couldNotCopyToClipboard:"",decryptFailed:"Nem sikerült visszafejteni a titkosított adatot.",uploadedSecurly:"A feltöltést végpontok közötti titkosítással biztosítottuk, ami azt jelenti, hogy egy harmadik fél nem tudja megnézni a tartalmát, beleértve az Excalidraw szervereit is.",loadSceneOverridePrompt:"A betöltött külső rajz felül fogja írnia meglévőt. Szeretnéd folytatni?",collabStopOverridePrompt:`A munkamenet leállítása felül fogja írni az előzőleg helyben tárolt rajzot. Biztosan ezt akarod?
|
||
(Ha meg akarod tartani a helyben tárolt rajzot, egyszerűen csak zárd be a böngésző fület)`,errorAddingToLibrary:"A tétel nem addható hozzá a könyvtárhoz",errorRemovingFromLibrary:"A tétel nem távolítható el a könyvtárból",confirmAddLibrary:"Ez a művelet {{numShapes}} formát fog hozzáadni a könyvtáradhoz. Biztos vagy benne?",imageDoesNotContainScene:"Úgy tűnik, hogy ez a kép nem tartalmaz jelenetadatokat. Engedélyezted a jelenetbeágyazást az exportálás során?",cannotRestoreFromImage:"A jelenet visszaállítása nem sikerült ebből a kép fájlból",invalidSceneUrl:"Nem sikerült importálni a jelenetet a megadott URL-ről. Rossz formátumú, vagy nem tartalmaz érvényes Excalidraw JSON-adatokat.",resetLibrary:"Ezzel törlöd a könyvtárát. biztos vagy ebben?",removeItemsFromsLibrary:"{{count}} elemet törölsz a könyvtárból?",invalidEncryptionKey:"A titkosítási kulcsnak 22 karakterből kell állnia. Az élő együttműködés le van tiltva.",collabOfflineWarning:""},WFe={unsupportedFileType:"Nem támogatott fájltípus.",imageInsertError:"Nem sikerült beszúrni a képet. Próbáld újra később...",fileTooBig:"A fájl túl nagy. A megengedett maximális méret {{maxSize}}.",svgImageInsertError:"Nem sikerült beszúrni az SVG-képet. Az SVG szintaktika érvénytelennek tűnik.",failedToFetchImage:"",invalidSVGString:"Érvénytelen SVG.",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},qFe={selection:"Kijelölés",image:"Kép beszúrása",rectangle:"Téglalap",diamond:"Rombusz",ellipse:"Ellipszis",arrow:"Nyíl",line:"Vonal",freedraw:"Rajzolás",text:"Szöveg",library:"Könyvtár",lock:"Rajzolás után az aktív eszközt tartsa kijelölve",penMode:"",link:"Hivatkozás hozzáadása/frissítése a kiválasztott alakzathoz",eraser:"Radír",frame:"",magicframe:"",embeddable:"Weblap beágyazása",laser:"Lézermutató",hand:"",extraTools:"További eszközök",mermaidToExcalidraw:"",magicSettings:""},zFe={canvasActions:"Vászon műveletek",selectedShapeActions:"Kijelölt forma műveletei",shapes:"Alakzatok"},ZFe={canvasPanning:"",linearElement:"Kattintással görbe, az eger húzásával pedig egyenes nyilat rajzolhatsz",freeDraw:"Kattints és húzd, majd engedd el, amikor végeztél",text:"Tipp: A kijelölés eszközzel a dupla kattintás új szöveget hoz létre",embeddable:"",text_selected:"Kattints duplán, vagy nyomj entert a szöveg szerkesztéséhez",text_editing:"Nyomjd meg az Escape vagy a Ctrl/Cmd+ENTER billentyűkombinációt a szerkesztés befejezéséhez",linearElementMulti:"Kattints a következő ív pozíciójára, vagy fejezd be a nyilat az Escape vagy Enter megnyomásával",lockAngle:"A SHIFT billentyű lenyomva tartásával korlátozhatja forgatás szögét",resize:`A SHIFT billentyű lenyomva tartásával az átméretezés megtartja az arányokat,
|
||
az ALT lenyomva tartásával pedig a középpont egy helyben marad`,resizeImage:`A SHIFT billentyű lenyomva tartásával szabadon átméretezheted,
|
||
tartsd lenyomva az ALT billentyűt a középről való átméretezéshez`,rotate:"A SHIFT billentyű lenyomva tartásával korlátozhatja a szögek illesztését",lineEditor_info:"",lineEditor_pointSelected:`Nyomd meg a Törlés gombot a pont(ok) eltávolításához,
|
||
A Ctrl/Cmd+D a többszörözéshez, vagy húzással mozgathatja`,lineEditor_nothingSelected:`Válaszd ki a szerkeszteni kívánt pontot (több kijelöléséhez tartsd lenyomva a SHIFT billentyűt),
|
||
vagy Alt, és kattintson az új pontok hozzáadásához`,placeImage:"Kattints a kép elhelyezéséhez, vagy kattints és méretezd manuálisan",publishLibrary:"Tedd közzé saját könyvtáradat",bindTextToElement:"Nyomd meg az Entert szöveg hozzáadáshoz",deepBoxSelect:"Tartsd lenyomva a Ctrl/Cmd billentyűt a mély kijelöléshez és a húzás megakadályozásához",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},VFe={cannotShowPreview:"Előnézet nem jeleníthető meg",canvasTooBig:"A vászon talán túl nagy.",canvasTooBigTip:"Tipp: próbáld meg a legtávolabbi elemeket közelebb hozni egy máshoz."},jFe={headingMain:"Hiba történt. Próbáld <button>újratölteni az oldalt.</button>",clearCanvasMessage:"Ha az újratöltés nem működik, próbáld <button>letörölni a vászont.</button>",clearCanvasCaveat:" Ezzel az eddigi munka elveszik ",trackedToSentry:"A hibakód azonosítóval {{eventId}} nyomon van követve a rendszerünkben.",openIssueMessage:"Vigyáztunk arra, hogy a jelenthez tartozó információ ne jelenjen meg a hibaüzenetben. Ha a jeleneted nem bizalmas, kérjük add hozzá a <button>hibakövető rendszerünkhöz.</button> Kérjük, másolja be az alábbi információkat a GitHub problémába.",sceneContent:"Jelenet tartalma:"},XFe={desc_intro:"Meghívhat embereket a jelenlegi jelenetbe, hogy együttműködjenek önnel.",desc_privacy:"Ne aggódj, a munkamenet végpontok közötti titkosítást használ, tehát bármit rajzolsz, privát marad. Még a szerverünkről se lehet belenézni.",button_startSession:"Munkamenet indítása",button_stopSession:"Munkamenet leállítása",desc_inProgressIntro:"Az élő együttműködési munkamenet folyamatban van.",desc_shareLink:"Ossza meg ezt a linket bárkivel, akivel együtt szeretne működni:",desc_exitSession:"Az munkamenet leállítása kilépteti önt a szobából, de folytathatja a munkát a saját gépén. Vegye figyelembe, hogy ez nem érinti más emberek munkáját és ők továbbra is együttműködhetnek a saját változatukon.",shareTitle:"Csatlakozás egy élő együttműködési munkamenethez az Excalidraw-ban"},$Fe={title:"Hiba"},Axe={disk_title:"Mentés lemezre",disk_details:"Exportálja a jelenetadatokat egy fájlba, amelyből később importálhatja.",disk_button:"Mentés fájlba",link_title:"Megosztható hivatkozás",link_details:"Exportálás csak olvasható hivatkozásként.",link_button:"Exportálás hivatkozásba",excalidrawplus_description:"Mentse el a jelenetet az Excalidraw+ munkaterületére.",excalidrawplus_button:"Exportálás",excalidrawplus_exportError:"Jelenleg nem lehet exportálni az Excalidraw+-ba..."},exe={blog:"Olvasd a blogunkat",click:"kattintás",deepSelect:"Mély kijelölés",deepBoxSelect:"Mély kijelölés a dobozon belül, és a húzás megakadályozása",curvedArrow:"Ívelt nyíl",curvedLine:"Ívelt vonal",documentation:"Dokumentáció",doubleClick:"dupla kattintás",drag:"vonszolás",editor:"Szerkesztő",editLineArrowPoints:"",editText:"",github:"Hibát találtál? Küld be",howto:"Kövesd az útmutatóinkat",or:"vagy",preventBinding:"A nyíl ne ragadjon",tools:"",shortcuts:"Gyorsbillentyűk",textFinish:"Szerkesztés befejezése (szöveg)",textNewLine:"Új sor hozzáadása (szöveg)",title:"Segítség",view:"Nézet",zoomToFit:"Az összes elem látótérbe hozása",zoomToSelection:"Kijelölésre nagyítás",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},txe={title:"Rajzvászon alaphelyzetbe"},rxe={title:"Könyvtár közzététele",itemName:"Tétel neve",authorName:"Szerző neve",githubUsername:"GitHub felhasználónév",twitterUsername:"Twitter felhasználónév",libraryName:"Könyvtár neve",libraryDesc:"Könyvtár leírása",website:"Weboldal",placeholder:{authorName:"Neved vagy felhasználóneved",libraryName:"A könyvtárad neve",libraryDesc:"A könyvtárad használatát segítő leírás",githubHandle:"GitHub-handle(opcionális), így szerkesztheted a könyvtárat, miután elküldted ellenőrzésre",twitterHandle:"Twitter-felhasználónév (opcionális), így tudjuk, kinek kell jóváírni a Twitteren keresztüli reklámozást",website:"Hivatkozás személyes webhelyedre vagy máshová (nem kötelező)"},errors:{required:"Kötelező",website:"Adj meg egy érvényes URL-t"},noteDescription:"Küld be könyvtáradat, hogy bekerüljön a <link>nyilvános könyvtár tárolóba</link>hogy mások is felhasználhassák a rajzaikban.",noteGuidelines:"A könyvtárat először manuálisan kell jóváhagyni. Kérjük, olvassa el a <link>segédletet</link> benyújtása előtt. Szüksége lesz egy GitHub-fiókra a kommunikációhoz és a módosításokhoz, ha kérik, de ez nem feltétlenül szükséges.",noteLicense:"A beküldéssel elfogadja, hogy a könyvtár a következő alatt kerül közzétételre <link>MIT Licensz </link>ami röviden azt jelenti, hogy bárki korlátozás nélkül használhatja őket.",noteItems:"Minden könyvtárelemnek saját nevével kell rendelkeznie, hogy szűrhető legyen. A következő könyvtári tételek kerülnek bele:",atleastOneLibItem:"A kezdéshez válassz ki legalább egy könyvtári elemet",republishWarning:""},ixe={title:"A könyvtár beküldve",content:"Köszönjük {{authorName}}. Könyvtáradat elküldtük felülvizsgálatra. Nyomon követheted az állapotot<link>itt</link>"},uxe={resetLibrary:"Könyvtár alaphelyzetbe állítása",removeItemsFromLib:"A kiválasztott elemek eltávolítása a könyvtárból"},axe={header:"Kép exportálása",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Vágólapra másolás"}},nxe={tooltip:"A rajzaidat végpontok közötti titkosítással tároljuk, tehát az Excalidraw szervereiről se tud más belenézni.",link:"Blogbejegyzés a végpontok közötti titkosításról az Excalidraw-ban"},oxe={angle:"Szög",element:"Elem",elements:"Elemek",height:"Magasság",scene:"Jelenet",selected:"Kijelölt",storage:"Tárhely",title:"Statisztikák",total:"Összesen",version:"Verzió",versionCopy:"Kattints a másoláshoz",versionNotAvailable:"A verzió nem elérhető",width:"Szélesség"},sxe={addedToLibrary:"Könyvtárhoz adva",copyStyles:"Másolt stílusok.",copyToClipboard:"Vágólapra másolva.",copyToClipboardAsPng:`Az {{exportSelection}} PNG formátumban a vágólapra másolva
|
||
({{exportColorScheme}})`,fileSaved:"Fájl elmentve.",fileSavedToFilename:"Mentve mint {filename}",canvas:"rajzvászon",selection:"kijelölés",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},lxe={transparent:"Átlátszó",black:"Fekete",white:"Fehér",red:"Piros",pink:"Rózsaszín",grape:"",violet:"Ibolya",gray:"Szürke",blue:"Kék",cyan:"Cián",teal:"Kékes-zöld",green:"Zöld",yellow:"Sárga",orange:"Narancssárga",bronze:"Bronz"},gxe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},cxe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"Hexadecimális kód",noShades:""},Cxe={action:{exportToImage:{title:"Exportálás képként",button:"Exportálás képként",description:""},saveToDisk:{title:"Mentés a lemezre",button:"Mentés a lemezre",description:""},excalidrawPlus:{title:"Excalidraw+",button:"",description:""}},modal:{loadFromFile:{title:"Betöltés fájlból",button:"Betöltés fájlból",description:""},shareableLink:{title:"Feltöltás linkből",button:"",description:""}}},Bxe={title:"",button:"",description:"",syntax:"",preview:""},Tcr={labels:JFe,library:OFe,buttons:PFe,alerts:_Fe,errors:WFe,toolBar:qFe,headings:zFe,hints:ZFe,canvasError:VFe,errorSplash:jFe,roomDialog:XFe,errorDialog:$Fe,exportDialog:Axe,helpDialog:exe,clearCanvasDialog:txe,publishDialog:rxe,publishSuccessDialog:ixe,confirmDialog:uxe,imageExportDialog:axe,encrypted:nxe,stats:oxe,toast:sxe,colors:lxe,welcomeScreen:gxe,colorPicker:cxe,overwriteConfirm:Cxe,mermaid:Bxe}});var Pxe={};yt(Pxe,{alerts:()=>pxe,buttons:()=>Qxe,canvasError:()=>wxe,clearCanvasDialog:()=>Sxe,colorPicker:()=>Kxe,colors:()=>Yxe,confirmDialog:()=>Nxe,default:()=>Ycr,encrypted:()=>Uxe,errorDialog:()=>kxe,errorSplash:()=>bxe,errors:()=>fxe,exportDialog:()=>Fxe,headings:()=>Dxe,helpDialog:()=>xxe,hints:()=>yxe,imageExportDialog:()=>Gxe,labels:()=>Ixe,library:()=>hxe,mermaid:()=>Oxe,overwriteConfirm:()=>Jxe,publishDialog:()=>Lxe,publishSuccessDialog:()=>Rxe,roomDialog:()=>vxe,stats:()=>Mxe,toast:()=>Txe,toolBar:()=>mxe,welcomeScreen:()=>Hxe});var Ixe,hxe,Qxe,pxe,fxe,mxe,Dxe,yxe,wxe,bxe,vxe,kxe,Fxe,xxe,Sxe,Lxe,Rxe,Nxe,Gxe,Uxe,Mxe,Txe,Yxe,Hxe,Kxe,Jxe,Oxe,Ycr;var _xe=P(()=>{qt();Ixe={paste:"Tempel",pasteAsPlaintext:"Tempel sebagai teks biasa",pasteCharts:"Tempel diagram",selectAll:"Pilih semua",multiSelect:"Tambahkan elemen ke pilihan",moveCanvas:"Pindahkan kanvas",cut:"Potong",copy:"Salin",copyAsPng:"Salin ke papan klip sebagai PNG",copyAsSvg:"Salin ke papan klip sebagai SVG",copyText:"Salin ke papan klip sebagai teks",copySource:"",convertToCode:"",bringForward:"Bawa maju",sendToBack:"Kirim ke belakang",bringToFront:"Bawa ke depan",sendBackward:"Kirim mundur",delete:"Hapus",copyStyles:"Salin gaya",pasteStyles:"Tempelkan gaya",stroke:"Guratan",background:"Latar",fill:"Isian",strokeWidth:"Lebar guratan",strokeStyle:"Gaya guratan",strokeStyle_solid:"Padat",strokeStyle_dashed:"Putus-putus",strokeStyle_dotted:"Titik-titik",sloppiness:"Kecerobohan",opacity:"Keburaman",textAlign:"Perataan teks",edges:"Tepi",sharp:"Tajam",round:"Bulat",arrowheads:"Mata panah",arrowhead_none:"Tidak ada",arrowhead_arrow:"Panah",arrowhead_bar:"Batang",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Segitiga",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Ukuran font",fontFamily:"Jenis font",addWatermark:'Tambahkan "Dibuat dengan Excalidraw"',handDrawn:"Tulisan tangan",normal:"Normal",code:"Kode",small:"Kecil",medium:"Sedang",large:"Besar",veryLarge:"Sangat besar",solid:"Padat",hachure:"Garis-garis",zigzag:"Zigzag",crossHatch:"Asiran silang",thin:"Lembut",bold:"Tebal",left:"Kiri",center:"Tengah",right:"Kanan",extraBold:"Sangat tebal",architect:"Arsitek",artist:"Artis",cartoonist:"Kartunis",fileTitle:"Nama file",colorPicker:"Pilihan Warna",canvasColors:"Digunakan di kanvas",canvasBackground:"Latar Kanvas",drawingCanvas:"Kanvas",layers:"Lapisan",actions:"Aksi",language:"Bahasa",liveCollaboration:"Kolaborasi langsung...",duplicateSelection:"Duplikat",untitled:"Tanpa judul",name:"Nama",yourName:"Nama Anda",madeWithExcalidraw:"Dibuat dengan Excalidraw",group:"Kelompokan pilihan",ungroup:"Pisahkan pilihan",collaborators:"Kolaborator",showGrid:"Tampilkan grid",addToLibrary:"Tambahkan ke pustaka",removeFromLibrary:"Hapus dari pustaka",libraryLoadingMessage:"Memuat pustaka…",libraries:"Telusur pustaka",loadingScene:"Memuat pemandangan…",align:"Perataan",alignTop:"Rata atas",alignBottom:"Rata bawah",alignLeft:"Rata kiri",alignRight:"Rata kanan",centerVertically:"Pusatkan secara vertikal",centerHorizontally:"Pusatkan secara horizontal",distributeHorizontally:"Distribusikan horizontal",distributeVertically:"Distribusikan vertikal",flipHorizontal:"Balikkan horizontal",flipVertical:"Balikkan vertikal",viewMode:"Mode tampilan",share:"Bagikan",showStroke:"Tampilkan garis pengambil warna",showBackground:"Tampilkan latar pengambil warna",toggleTheme:"Ubah tema",personalLib:"Pustaka Pribadi",excalidrawLib:"Pustaka Excalidraw",decreaseFontSize:"Kecilkan ukuran font",increaseFontSize:"Besarkan ukuran font",unbindText:"Lepas teks",bindText:"Kunci teks ke kontainer",createContainerFromText:"Bungkus teks dalam kontainer",link:{edit:"Edit tautan",editEmbed:"",create:"Buat tautan",createEmbed:"",label:"Tautan",labelEmbed:"",empty:""},lineEditor:{edit:"Edit tautan",exit:"Keluar editor garis"},elementLock:{lock:"Kunci",unlock:"Lepas",lockAll:"Kunci semua",unlockAll:"Lepas semua"},statusPublished:"Telah terbit",sidebarLock:"Biarkan sidebar tetap terbuka",selectAllElementsInFrame:"Pilih semua elemen di bingkai",removeAllElementsFromFrame:"Hapus semua elemen dari bingkai",eyeDropper:"Ambil warna dari kanvas",textToDiagram:"",prompt:""},hxe={noItems:"Belum ada item yang ditambahkan...",hint_emptyLibrary:"Pilih item pada kanvas untuk menambahkan nya di sini, atau pasang pustaka dari gudang di bawah ini.",hint_emptyPrivateLibrary:"Pilih item pada kanvas untuk menambahkan nya di sini."},Qxe={clearReset:"Setel Ulang Kanvas",exportJSON:"Ekspor ke file",exportImage:"Ekspor gambar...",export:"Simpan ke...",copyToClipboard:"Salin ke Papan Klip",save:"Simpan ke file sekarang",saveAs:"Simpan sebagai",load:"Buka",getShareableLink:"Buat Tautan yang Bisa Dibagian",close:"Tutup",selectLanguage:"Pilih bahasa",scrollBackToContent:"Gulir kembali ke konten",zoomIn:"Besarkan",zoomOut:"Kecilkan",resetZoom:"Reset Pembesaran",menu:"Menu",done:"Selesai",edit:"Edit",undo:"Urungkan",redo:"Ulangi",resetLibrary:"Reset pustaka",createNewRoom:"Buat ruang baru",fullScreen:"Layar penuh",darkMode:"Mode gelap",lightMode:"Mode terang",zenMode:"Mode zen",objectsSnapMode:"",exitZenMode:"Keluar dari mode zen",cancel:"Batal",clear:"Hapus",remove:"Hapus",embed:"",publishLibrary:"Terbitkan",submit:"Kirimkan",confirm:"Konfirmasi",embeddableInteractionButton:""},pxe={clearReset:"Ini akan menghapus semua yang ada dikanvas. Apakah kamu yakin ?",couldNotCreateShareableLink:"Tidak bisa membuat tautan yang bisa dibagikan",couldNotCreateShareableLinkTooBig:"Tidak dapat membuat tautan yang dapat dibagikan: pemandangan terlalu besar",couldNotLoadInvalidFile:"Tidak dapat memuat berkas yang tidak valid",importBackendFailed:"Gagal mengimpor dari backend",cannotExportEmptyCanvas:"Tidak bisa mengekspor kanvas kosong",couldNotCopyToClipboard:"Tidak bisa menyalin ke papan klip.",decryptFailed:"Tidak dapat mengdekripsi data.",uploadedSecurly:"Pengunggahan ini telah diamankan menggunakan enkripsi end-to-end, artinya server Excalidraw dan pihak ketiga tidak data membaca nya",loadSceneOverridePrompt:"Memuat gambar external akan mengganti konten Anda yang ada. Apakah Anda ingin melanjutkan?",collabStopOverridePrompt:`Menghentikan sesi akan menimpa gambar Anda yang tersimpan secara lokal. Anda yakin?
|
||
|
||
(Jika Anda ingin menyimpan gambar lokal Anda, gantinya cukup tutup tab browser.)`,errorAddingToLibrary:"Tidak dapat menambahkan item ke pustaka",errorRemovingFromLibrary:"Tidak dapat membuang item dari pustaka",confirmAddLibrary:"Ini akan menambahkan {{numShapes}} bentuk ke pustaka Anda. Anda yakin?",imageDoesNotContainScene:"Gambar ini sepertinya tidak terdapat data pemandangan. Sudahkah Anda mengaktifkan penyematan pemandangan ketika ekspor?",cannotRestoreFromImage:"Pemandangan tidak dapat dipulihkan dari file gambar ini",invalidSceneUrl:"Tidak dapat impor pemandangan dari URL. Kemungkinan URL itu rusak atau tidak berisi data JSON Excalidraw yang valid.",resetLibrary:"Ini akan menghapus pustaka Anda. Anda yakin?",removeItemsFromsLibrary:"Hapus {{count}} item dari pustaka?",invalidEncryptionKey:"Sandi enkripsi harus 22 karakter. Kolaborasi langsung dinonaktifkan.",collabOfflineWarning:`Tidak ada koneksi internet.
|
||
Perubahan tidak akan disimpan!`},fxe={unsupportedFileType:"Tipe file tidak didukung.",imageInsertError:"Tidak dapat menyisipkan gambar. Coba lagi nanti...",fileTooBig:"File terlalu besar. Ukuran maksimum yang dibolehkan {{maxSize}}.",svgImageInsertError:"Tidak dapat menyisipkan gambar SVG. Markup SVG sepertinya tidak valid.",failedToFetchImage:"",invalidSVGString:"SVG tidak valid.",cannotResolveCollabServer:"Tidak dapat terhubung ke server kolab. Muat ulang laman dan coba lagi.",importLibraryError:"Tidak dapat memuat pustaka",collabSaveFailed:"Tidak dapat menyimpan ke dalam basis data server. Jika masih berlanjut, Anda sebaiknya simpan berkas Anda secara lokal untuk memastikan pekerjaan Anda tidak hilang.",collabSaveFailed_sizeExceeded:"Tidak dapat menyimpan ke dalam basis data server, tampaknya ukuran kanvas terlalu besar. Anda sebaiknya simpan berkas Anda secara lokal untuk memastikan pekerjaan Anda tidak hilang.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Sepertinya Anda menggunkan peramban Brave dengan pengaturan <bold>Blokir Fingerprinting yang Agresif</bold> diaktifkan.",line2:"Ini dapat membuat <bold>Elemen Teks</bold> dalam gambar mu.",line3:"Kami sangat menyarankan mematikan pengaturan ini. Anda dapat mengikuti <link>langkah-langkah ini</link> untuk melakukannya.",line4:`Jika mematikan pengaturan ini tidak membenarkan tampilan elemen teks, mohon buka
|
||
<issueLink>isu</issueLink> di GitHub kami, atau chat kami di <discordLink>Discord</discordLink>`},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},mxe={selection:"Pilihan",image:"Sisipkan gambar",rectangle:"Persegi",diamond:"Berlian",ellipse:"Elips",arrow:"Panah",line:"Garis",freedraw:"Gambar",text:"Teks",library:"Pustaka",lock:"Biarkan alat yang dipilih aktif setelah menggambar",penMode:"Mode pena - mencegah sentuhan",link:"Tambah/Perbarui tautan untuk bentuk yang dipilih",eraser:"Penghapus",frame:"Alat bingkai",magicframe:"",embeddable:"",laser:"",hand:"Tangan (alat panning)",extraTools:"Alat-alat lain",mermaidToExcalidraw:"",magicSettings:""},Dxe={canvasActions:"Opsi Kanvas",selectedShapeActions:"Opsi bentuk yang dipilih",shapes:"Bentuk"},yxe={canvasPanning:"Untuk memindahkan kanvas, tekan roda mouse atau spacebar sambil menyeret, atau menggunakan alat tangan",linearElement:"Klik untuk memulai banyak poin, seret untuk satu baris",freeDraw:"Klik dan seret, lepaskan jika Anda selesai",text:"Tip: Anda juga dapat menambahkan teks dengan klik ganda di mana saja dengan alat pemilihan",embeddable:"",text_selected:"Klik ganda atau tekan ENTER untuk edit teks",text_editing:"Tekan Escape atau CtrlAtauCmd+ENTER untuk selesai mengedit",linearElementMulti:"Klik pada titik akhir atau tekan Escape atau Enter untuk menyelesaikan",lockAngle:"Anda dapat menjaga sudut dengan menahan SHIFT",resize:`Anda dapat menjaga proposi dengan menekan SHIFT sambil mengubah ukuran,
|
||
tekan AlT untuk mengubah ukuran dari tengah`,resizeImage:`Anda dapat mengubah secara bebas dengan menekan SHIFT,
|
||
Tekan ALT untuk mengubah dari tengah`,rotate:"Anda dapat menjaga sudut dengan menahan SHIFT sambil memutar",lineEditor_info:"Tekan Ctrl/Cmd dan Dobel-klik atau tekan Ctrl/Cmd +Enter untuk mengedit poin",lineEditor_pointSelected:"Tekan Delete untuk menghapus titik, Ctrl/Cmd + D untuk menduplikasi, atau seret untuk memindahkan",lineEditor_nothingSelected:"Pilih titik untuk mengedit (tekan SHIFT untuk pilih banyak), atau tekan Alt dan klik untuk tambahkan titik baru",placeImage:"Klik untuk tempatkan gambar, atau klik dan jatuhkan untuk tetapkan ukuran secara manual",publishLibrary:"Terbitkan pustaka Anda",bindTextToElement:"Tekan enter untuk tambahkan teks",deepBoxSelect:"Tekan Ctrl atau Cmd untuk memilih yang di dalam, dan mencegah penggeseran",eraserRevert:"Tahan Alt untuk mengembalikan elemen yang ditandai untuk dihapus",firefox_clipboard_write:'Fitur ini dapat diaktifkan melalui pengaturan flag "dom.events.asyncClipboard.clipboardItem" ke "true". Untuk mengganti flag di Firefox, pergi ke laman "about:config".',disableSnapping:""},wxe={cannotShowPreview:"Tidak dapat menampilkan pratinjau",canvasTooBig:"Kanvas mungkin terlalu besar.",canvasTooBigTip:"Tip: coba pindahkan elemen-terjauh lebih dekat bersama."},bxe={headingMain:"Mengalami sebuah kesalahan. Cobalah <button>muat ulang halaman.</button>",clearCanvasMessage:"Jika memuat ulang tidak bekerja, cobalah <button>bersihkan canvas.</button>",clearCanvasCaveat:" Ini akan menghasilkan hilangnya pekerjaan ",trackedToSentry:"Kesalahan dengan pengidentifikasi {{eventId}} dilacak di sistem kami.",openIssueMessage:"Kami sangat berhati-hati untuk tidak menyertakan informasi pemandangan Anda pada kesalahan. Jika pemandangan Anda tidak bersifat pribadi, mohon pertimbangkan menindak lanjut pada <button>pelacak bug.</button> Mohon sertakan informasi dibawah ini dengan menyalin dan menempelkan di Github issue.",sceneContent:"Pemandangan konten:"},vxe={desc_intro:"Anda dapat mengundang orang ke pemandangan Anda saat ini untuk berkolaborasi dengan Anda.",desc_privacy:"Jangan khawatir, sesi menggunakan enkripsi end-to-end, sehingga apa pun yang Anda gambar akan tetap bersifat pribadi. Bahkan server kami tidak dapat melihat apa yang Anda lakukan.",button_startSession:"Mulai sesi",button_stopSession:"Hentikan sesi",desc_inProgressIntro:"Sesi kolaborasi sedang berlangsung sekarang.",desc_shareLink:"Bagikan tautan ini dengan siapa pun yang Anda inginkan untuk kolaborasi bersama:",desc_exitSession:"Menghentikan sesi akan memutuskan hubungan Anda dari ruangan, tetapi Anda dapat melanjutkan bekerja dengan pemandangan Anda secara lokal. Perhatikan bahwa ini tidak memengaruhi orang lain, dan mereka masih dapat berkolaborasi pada versi mereka.",shareTitle:"Gabung sesi kolaborasi langsung di Excalidraw"},kxe={title:"Kesalahan"},Fxe={disk_title:"Simpan ke disk",disk_details:"Ekspor data pemandangan ke file yang mana Anda dapat impor nanti.",disk_button:"Simpan ke file",link_title:"Tautan",link_details:"Ekspor sebagai tautan yang hanya dibaca.",link_button:"Ekspor ke tautan",excalidrawplus_description:"Simpan pemandangan ke ruang kerja Excalidraw+ Anda.",excalidrawplus_button:"Ekspor",excalidrawplus_exportError:"Tidak dapat ekspor ke Excalidraw+ saat ini..."},xxe={blog:"Baca blog kami",click:"klik",deepSelect:"Pilih dalam",deepBoxSelect:"Pilih dalam kotak, dan cegah penggeseran",curvedArrow:"Panah lengkung",curvedLine:"Garis lengkung",documentation:"Dokumentasi",doubleClick:"klik-ganda",drag:"seret",editor:"Editor",editLineArrowPoints:"Edit titik garis/panah",editText:"Edit teks / tambah label",github:"Menemukan masalah? Kirimkan",howto:"Ikuti panduan kami",or:"atau",preventBinding:"Cegah pengikatan panah",tools:"Alat",shortcuts:"Pintasan keyboard",textFinish:"Selesai mengedit (editor teks)",textNewLine:"Tambahkan garis baru (editor teks)",title:"Bantuan",view:"Tampilan",zoomToFit:"Perbesar agar sesuai dengan semua elemen",zoomToSelection:"Perbesar ke seleksi",toggleElementLock:"Kunci/lepas seleksi",movePageUpDown:"Pindah halaman keatas/kebawah",movePageLeftRight:"Pindah halaman kebawah/keatas"},Sxe={title:"Hapus kanvas"},Lxe={title:"Terbitkan pustaka",itemName:"Nama item",authorName:"Nama pembuat",githubUsername:"Nama pengguna github",twitterUsername:"Nama pengguna Twitter",libraryName:"Nama Pustaka",libraryDesc:"Deskripsi pustaka",website:"Situs Web",placeholder:{authorName:"Nama atau nama pengguna Anda",libraryName:"Nama dari pustaka Anda",libraryDesc:"Deskripsi pustaka Anda untuk membantu orang mengerti penggunaannya",githubHandle:"Akun GitHub (opsional), jadi Anda dapat mengubah pustaka ketika diserahkan untuk review",twitterHandle:"Nama pengguna Twitter (opsional), jadi kami tahu siapa dipuji ketika mempromosikannya melalui Twitter",website:"Hubungkan ke situs personal Anda atau lainnya (opsional)"},errors:{required:"Dibutuhkan",website:"Masukkan URL valid"},noteDescription:"Kirimkan pustaka Anda untuk disertakan di <link>repositori pustaka publik</link>untuk orang lain menggunakannya dalam gambar mereka.",noteGuidelines:"Pustaka butuh disetujui secara manual terlebih dahulu. Baca <link>pedoman</link> sebelum mengirim. Anda butuh akun GitHub untuk berkomunikasi dan membuat perubahan jika dibutuhkan, tetapi tidak wajib dibutukan.",noteLicense:"Dengan mengkirimkannya, Anda setuju pustaka akan diterbitkan dibawah <link>Lisensi MIT, </link>yang artinya siapa pun dapat menggunakannya tanpa batasan.",noteItems:"Setiap item pustaka harus memiliki nama, sehingga bisa disortir. Item pustaka di bawah ini akan dimasukan:",atleastOneLibItem:"Pilih setidaknya satu item pustaka untuk mulai",republishWarning:"Catatan: beberapa item yang dipilih telah ditandai sebagai sudah dipublikasikan/diserahkan. Anda hanya dapat menyerahkan kembali item-item ketika memperbarui pustaka atau pengumpulan."},Rxe={title:"Pustaka telah dikirm",content:"Terima kasih {{authorName}}. pustaka Anda telah diserahkan untuk ditinjau ulang. Anda dapat cek statusnya<link>di sini</link>"},Nxe={resetLibrary:"Reset pustaka",removeItemsFromLib:"Hapus item yang dipilih dari pustaka"},Gxe={header:"Ekspor gambar",label:{withBackground:"Latar",onlySelected:"Hanya yang dipilih",darkMode:"Mode gelap",embedScene:"Sematkan pemandangan",scale:"Skala",padding:"Lapisan"},tooltip:{embedScene:`Data pemandangan akan disimpan dalam file PNG/SVG yang diekspor sehingga pemandangan itu dapat dipulihkan darinya.
|
||
Akan membesarkan ukuran file yang diekspor.`},title:{exportToPng:"Ekspor ke PNG",exportToSvg:"Ekspor ke SVG",copyPngToClipboard:"Salin PNG ke papan klip"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Salin ke papan klip"}},Uxe={tooltip:"Gambar anda terenkripsi end-to-end sehingga server Excalidraw tidak akan pernah dapat melihatnya.",link:"Pos blog tentang enkripsi ujung ke ujung di Excalidraw"},Mxe={angle:"Sudut",element:"Elemen",elements:"Elemen",height:"Tinggi",scene:"Pemandangan",selected:"Terpilih",storage:"Penyimpanan",title:"Statistik untuk nerd",total:"Total",version:"Versi",versionCopy:"Klik untuk salin",versionNotAvailable:"Versi tidak tersedia",width:"Lebar"},Txe={addedToLibrary:"Tambahkan ke pustaka",copyStyles:"Gaya tersalin.",copyToClipboard:"Tersalin ke papan klip.",copyToClipboardAsPng:`Tersalin {{exportSelection}} ke clipboard sebagai PNG
|
||
({{exportColorScheme}})`,fileSaved:"File tersimpan.",fileSavedToFilename:"Disimpan ke {filename}",canvas:"kanvas",selection:"pilihan",pasteAsSingleElement:`Gunakan {{shortcut}} untuk menempelkan sebagai satu elemen,
|
||
atau tempelkan ke teks editor yang ada`,unableToEmbed:"",unrecognizedLinkFormat:""},Yxe={transparent:"Transparan",black:"Hitam",white:"Putih",red:"Merah",pink:"Pink",grape:"Ungu",violet:"Violet",gray:"Abu-abu",blue:"Biru",cyan:"Cyan",teal:"Teal",green:"Hijau",yellow:"Kuning",orange:"Jingga",bronze:"Tembaga"},Hxe={app:{center_heading:"Semua data Anda disimpan secara lokal di peramban Anda.",center_heading_plus:"Apa Anda ingin berpindah ke Excalidraw+?",menuHint:"Ekspor, preferensi, bahasa, ..."},defaults:{menuHint:"Ekspor, preferensi, dan selebihnya...",center_heading:"Diagram. Menjadi. Mudah.",toolbarHint:"Pilih alat & mulai menggambar!",helpHint:"Pintasan & bantuan"}},Kxe={mostUsedCustomColors:"Warna yang sering dipakai",colors:"Warna",shades:"Nuansa",hexCode:"Kode hexa",noShades:"Tidak ada nuansa untuk warna ini"},Jxe={action:{exportToImage:{title:"Ekspor sebagai gambar",button:"Ekspor sebagai gambar",description:"Ekspor data pemandangan sebagai gambar yang dapat anda impor nanti."},saveToDisk:{title:"Simpan ke disk",button:"Simpan ke disk",description:"Ekspor data pemandangan ke file yang dapat Anda dapat impor nanti."},excalidrawPlus:{title:"Excalidraw+",button:"Ekspor ke Excalidraw+",description:"Simpan pemandangan ke ruang kerja Excalidraw+ Anda."}},modal:{loadFromFile:{title:"Muat dari file",button:"Muat dari file",description:"Memuat dari file yang akan <bold>menggantikan konten Anda sekarang</bold>.<br></br>Anda dapat mencadangkan gambar anda dulu menggunakan opsi-opsi ini."},shareableLink:{title:"Muat dari link",button:"Ganti konten saya",description:"Memuat dari file yang akan <bold>menggantikan konten Anda sekarang</bold>.<br></br>Anda dapat mencadangkan gambar anda dulu menggunakan opsi-opsi ini."}}},Oxe={title:"",button:"",description:"",syntax:"",preview:""},Ycr={labels:Ixe,library:hxe,buttons:Qxe,alerts:pxe,errors:fxe,toolBar:mxe,headings:Dxe,hints:yxe,canvasError:wxe,errorSplash:bxe,roomDialog:vxe,errorDialog:kxe,exportDialog:Fxe,helpDialog:xxe,clearCanvasDialog:Sxe,publishDialog:Lxe,publishSuccessDialog:Rxe,confirmDialog:Nxe,imageExportDialog:Gxe,encrypted:Uxe,stats:Mxe,toast:Txe,colors:Yxe,welcomeScreen:Hxe,colorPicker:Kxe,overwriteConfirm:Jxe,mermaid:Oxe}});var Q7e={};yt(Q7e,{alerts:()=>Zxe,buttons:()=>zxe,canvasError:()=>A7e,clearCanvasDialog:()=>a7e,colorPicker:()=>d7e,colors:()=>B7e,confirmDialog:()=>s7e,default:()=>Hcr,encrypted:()=>g7e,errorDialog:()=>r7e,errorSplash:()=>e7e,errors:()=>Vxe,exportDialog:()=>i7e,headings:()=>Xxe,helpDialog:()=>u7e,hints:()=>$xe,imageExportDialog:()=>l7e,labels:()=>Wxe,library:()=>qxe,mermaid:()=>h7e,overwriteConfirm:()=>I7e,publishDialog:()=>n7e,publishSuccessDialog:()=>o7e,roomDialog:()=>t7e,stats:()=>c7e,toast:()=>C7e,toolBar:()=>jxe,welcomeScreen:()=>E7e});var Wxe,qxe,zxe,Zxe,Vxe,jxe,Xxe,$xe,A7e,e7e,t7e,r7e,i7e,u7e,a7e,n7e,o7e,s7e,l7e,g7e,c7e,C7e,B7e,E7e,d7e,I7e,h7e,Hcr;var p7e=P(()=>{qt();Wxe={paste:"Incolla",pasteAsPlaintext:"Incolla come testo normale",pasteCharts:"Incolla grafici",selectAll:"Seleziona tutto",multiSelect:"Aggiungi elemento alla selezione",moveCanvas:"Sposta tela",cut:"Taglia",copy:"Copia",copyAsPng:"Copia negli appunti come PNG",copyAsSvg:"Copia negli appunti come SVG",copyText:"Copia negli appunti come testo",copySource:"Copia sorgente negli appunti",convertToCode:"Converti in codice",bringForward:"Porta avanti",sendToBack:"Manda in fondo",bringToFront:"Porta in cima",sendBackward:"Manda dietro",delete:"Elimina",copyStyles:"Copia stili",pasteStyles:"Incolla stili",stroke:"Tratto",background:"Sfondo",fill:"Riempimento",strokeWidth:"Spessore del tratto",strokeStyle:"Stile del tratto",strokeStyle_solid:"Pieno",strokeStyle_dashed:"Tratteggiato",strokeStyle_dotted:"Punteggiato",sloppiness:"Imprecisione",opacity:"Opacità",textAlign:"Allineamento del testo",edges:"Bordi",sharp:"Acuto",round:"Rotondo",arrowheads:"Punta della freccia",arrowhead_none:"Nessuno",arrowhead_arrow:"Freccia",arrowhead_bar:"Barra",arrowhead_circle:"Cerchio",arrowhead_circle_outline:"Cerchio (contorno)",arrowhead_triangle:"Triangolo",arrowhead_triangle_outline:"Triangolo (contorno)",arrowhead_diamond:"Diamante",arrowhead_diamond_outline:"Diamante (contorno)",fontSize:"Dimensione carattere",fontFamily:"Carattere",addWatermark:'Aggiungi "Creato con Excalidraw"',handDrawn:"A mano libera",normal:"Normale",code:"Codice",small:"Piccolo",medium:"Medio",large:"Grande",veryLarge:"Molto grande",solid:"Pieno",hachure:"Tratteggio obliquo",zigzag:"Zig zag",crossHatch:"Tratteggio incrociato",thin:"Sottile",bold:"Grassetto",left:"Sinistra",center:"Centro",right:"Destra",extraBold:"Extra Grassetto",architect:"Architetto",artist:"Artista",cartoonist:"Fumettista",fileTitle:"Nome del file",colorPicker:"Selettore colore",canvasColors:"Usato su tela",canvasBackground:"Sfondo tela",drawingCanvas:"Area di disegno",layers:"Livelli",actions:"Azioni",language:"Lingua",liveCollaboration:"Collaborazione dal vivo...",duplicateSelection:"Duplica",untitled:"Senza titolo",name:"Nome",yourName:"Il vostro nome",madeWithExcalidraw:"Creato con Excalidraw",group:"Crea gruppo da selezione",ungroup:"Dividi gruppo da selezione",collaborators:"Collaboratori",showGrid:"Visualizza griglia",addToLibrary:"Aggiungi alla libreria",removeFromLibrary:"Rimuovi dalla libreria",libraryLoadingMessage:"Caricamento libreria…",libraries:"Sfoglia librerie",loadingScene:"Caricamento della scena…",align:"Allinea",alignTop:"Allinea in alto",alignBottom:"Allinea in basso",alignLeft:"Allinea a sinistra",alignRight:"Allinea a destra",centerVertically:"Centra Verticalmente",centerHorizontally:"Centra orizzontalmente",distributeHorizontally:"Distribuisci orizzontalmente",distributeVertically:"Distribuisci verticalmente",flipHorizontal:"Capovolgi orizzontalmente",flipVertical:"Capovolgi verticalmente",viewMode:"Modalità visualizzazione",share:"Condividi",showStroke:"Mostra selettore colore del tratto",showBackground:"Mostra selettore colore di sfondo",toggleTheme:"Cambia tema",personalLib:"Libreria Personale",excalidrawLib:"Libreria di Excalidraw",decreaseFontSize:"Riduci dimensione dei caratteri",increaseFontSize:"Aumenta la dimensione dei caratteri",unbindText:"Scollega testo",bindText:"Associa il testo al container",createContainerFromText:"Avvolgi il testo in un container",link:{edit:"Modifica link",editEmbed:"Modifica collegamento e incorpora",create:"Crea link",createEmbed:"Crea collegamento e incorpora",label:"Link",labelEmbed:"Collega & incorpora",empty:"Nessun collegamento impostato"},lineEditor:{edit:"Modifica linea",exit:"Esci dall'editor di linea"},elementLock:{lock:"Blocca",unlock:"Sblocca",lockAll:"Blocca tutto",unlockAll:"Sblocca tutto"},statusPublished:"Pubblicato",sidebarLock:"Mantieni aperta la barra laterale",selectAllElementsInFrame:"Seleziona tutti gli elementi nel riquadro",removeAllElementsFromFrame:"Rimuovi tutti gli elementi dal riquadro",eyeDropper:"Scegli il colore della tela",textToDiagram:"Testo a diagramma",prompt:"Prompt"},qxe={noItems:"Nessun elemento ancora aggiunto...",hint_emptyLibrary:"Seleziona un elemento sulla tela per aggiungerlo qui, o installa una libreria dal repository pubblico qui sotto.",hint_emptyPrivateLibrary:"Seleziona un elemento sulla tela per aggiungerlo qui."},zxe={clearReset:"Svuota la tela",exportJSON:"Esporta su file",exportImage:"Esporta immagine...",export:"Salva in...",copyToClipboard:"Copia negli appunti",save:"Salva sul file corrente",saveAs:"Salva con nome",load:"Apri",getShareableLink:"Ottieni link condivisibile",close:"Chiudi",selectLanguage:"Seleziona lingua",scrollBackToContent:"Scorri indietro fino al contenuto",zoomIn:"Aumenta ingrandimento",zoomOut:"Riduci ingrandimento",resetZoom:"Ripristina ingrandimento",menu:"Menù",done:"Fatto",edit:"Modifica",undo:"Annulla",redo:"Ripeti",resetLibrary:"Ripristina libreria",createNewRoom:"Crea nuova stanza",fullScreen:"Schermo intero",darkMode:"Tema scuro",lightMode:"Tema chiaro",zenMode:"Modalità Zen",objectsSnapMode:"Aggancia agli oggetti",exitZenMode:"Uscire dalla modalità zen",cancel:"Annulla",clear:"Cancella",remove:"Rimuovi",embed:"Attiva/disattiva incorporamento",publishLibrary:"Pubblica",submit:"Invia",confirm:"Conferma",embeddableInteractionButton:"Clicca per interagire"},Zxe={clearReset:"Questa azione cancellerà l'intera tela. Sei sicuro?",couldNotCreateShareableLink:"Non riesco a creare un link condivisibile.",couldNotCreateShareableLinkTooBig:"Impossibile creare il link condivisibile: la scena è troppo grande",couldNotLoadInvalidFile:"Impossibile caricare un file no valido",importBackendFailed:"Importazione dal server fallita.",cannotExportEmptyCanvas:"Non è possibile esportare una tela vuota.",couldNotCopyToClipboard:"Impossibile copiare negli appunti.",decryptFailed:"Impossibile decriptare i dati.",uploadedSecurly:"L'upload è stato protetto con la crittografia end-to-end, il che significa che il server Excalidraw e terze parti non possono leggere il contenuto.",loadSceneOverridePrompt:"Se carichi questo disegno esterno, sostituirà quello che hai. Vuoi continuare?",collabStopOverridePrompt:`Interrompere la sessione sovrascriverà il precedente disegno memorizzato localmente. Sei sicuro?
|
||
|
||
(Se vuoi mantenere il tuo disegno locale, chiudi semplicemente la scheda del browser.)`,errorAddingToLibrary:"Impossibile aggiungere l'elemento alla libreria",errorRemovingFromLibrary:"Impossibile rimuovere l'elemento dalla libreria",confirmAddLibrary:"Questo aggiungerà {{numShapes}} forma(e) alla tua libreria. Sei sicuro?",imageDoesNotContainScene:"Questa immagine pare non contenere alcuna scena. Avevi incluso la scena durante l'esportazione?",cannotRestoreFromImage:"Impossibile ripristinare la scena da questo file immagine",invalidSceneUrl:"Impossibile importare la scena dall'URL fornito. Potrebbe essere malformato o non contenere dati JSON Excalidraw validi.",resetLibrary:"Questa azione cancellerà l'intera libreria. Sei sicuro?",removeItemsFromsLibrary:"Eliminare {{count}} elementi dalla libreria?",invalidEncryptionKey:"La chiave di cifratura deve essere composta da 22 caratteri. La collaborazione live è disabilitata.",collabOfflineWarning:`Nessuna connessione internet disponibile.
|
||
Le tue modifiche non verranno salvate!`},Vxe={unsupportedFileType:"Tipo di file non supportato.",imageInsertError:"Non è stato possibile inserire l'immagine. Riprova più tardi...",fileTooBig:"Il file è troppo grande. La dimensione massima consentita è {{maxSize}}.",svgImageInsertError:"Impossibile inserire l'immagine SVG. Il markup SVG non sembra corretto.",failedToFetchImage:"Impossibile recuperare l'immagine.",invalidSVGString:"SVG non valido.",cannotResolveCollabServer:"Impossibile connettersi al server di collab. Ricarica la pagina e riprova.",importLibraryError:"Impossibile caricare la libreria",collabSaveFailed:"Impossibile salvare nel database di backend. Se i problemi persistono, dovresti salvare il tuo file localmente per assicurarti di non perdere il tuo lavoro.",collabSaveFailed_sizeExceeded:"Impossibile salvare nel database di backend, la tela sembra essere troppo grande. Dovresti salvare il file localmente per assicurarti di non perdere il tuo lavoro.",imageToolNotSupported:"Le immagini sono disabilitate.",brave_measure_text_error:{line1:"Sembra che tu stia utilizzando il browser Brave con l'impostazione <bold>Blocco aggressivo delle impronte digitali</bold> abilitata.",line2:"Ciò potrebbe causare la rottura degli <bold>Elementi di testo</bold> nei tuoi disegni.",line3:"Consigliamo vivamente di disabilitare questa impostazione. Puoi seguire <link>questi passaggi</link> su come farlo.",line4:"Se la disattivazione di questa impostazione non risolve la visualizzazione degli elementi di testo, apri un <issueLink>problema</issueLink> sul nostro GitHub o scrivici su <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Gli elementi incorporabili non possono essere aggiunti alla libreria.",iframe:"Gli elementi IFrame non possono essere aggiunti alla libreria.",image:"Il supporto per l'aggiunta d'immagini alla libreria verrà aggiunto a breve!"},asyncPasteFailedOnRead:"Impossibile incollare (non è possibile leggere dagli appunti di sistema).",asyncPasteFailedOnParse:"Impossibile incollare.",copyToSystemClipboardFailed:"Impossibile copiare negli appunti."},jxe={selection:"Selezione",image:"Inserisci immagine",rectangle:"Rettangolo",diamond:"Rombo",ellipse:"Ellisse",arrow:"Freccia",line:"Linea",freedraw:"Disegno",text:"Testo",library:"Libreria",lock:"Mantieni lo strumento selezionato attivo dopo aver disegnato",penMode:"Modalità penna - previene il tocco",link:"Aggiungi/ aggiorna il link per una forma selezionata",eraser:"Gomma",frame:"Strumento riquadro",magicframe:"",embeddable:"Incorporamento Web",laser:"Puntatore laser",hand:"Mano (strumento di panoramica)",extraTools:"Altri strumenti",mermaidToExcalidraw:"",magicSettings:"Impostazioni di IA"},Xxe={canvasActions:"Azioni sulla Tela",selectedShapeActions:"Impostazioni della forma selezionata",shapes:"Forme"},$xe={canvasPanning:"Per spostare la tela, tieni premuta la rotellina del mouse o la barra spaziatrice mentre trascini oppure usa lo strumento mano",linearElement:"Clicca per iniziare una linea in più punti, trascina per singola linea",freeDraw:"Clicca e trascina, rilascia quando avrai finito",text:"Suggerimento: puoi anche aggiungere del testo facendo doppio clic ovunque con lo strumento di selezione",embeddable:"Fare click e trascina per creare un incorporamento web",text_selected:"Fai doppio click o premi INVIO per modificare il testo",text_editing:"Premi ESC o CtrlOCmd+INVIO per completare le modifiche",linearElementMulti:"Clicca sull'ultimo punto o premi Esc o Invio per finire",lockAngle:"Puoi limitare l'angolo tenendo premuto SHIFT",resize:`Per vincolare le proporzioni, tieni premuto MAIUSC durante il ridimensionamento;
|
||
per ridimensionare dal centro, tieni premuto ALT`,resizeImage:`Puoi ridimensionare liberamente tenendo premuto SHIFT,
|
||
tieni premuto ALT per ridimensionare dal centro`,rotate:"Puoi mantenere gli angoli tenendo premuto SHIFT durante la rotazione",lineEditor_info:"Tieni premuto Ctrl o Cmd e doppio clic oppure premi Ctrl o Cmd + Invio per modificare i punti",lineEditor_pointSelected:`Premi Elimina per rimuovere il punto(i),
|
||
CtrlOCmd+D per duplicare o trascinare per spostare`,lineEditor_nothingSelected:`Seleziona un punto da modificare (tieni premuto MAIUSC per selezionare più punti),
|
||
oppure tieni premuto Alt e fai clic per aggiungere nuovi punti`,placeImage:"Fai click per posizionare l'immagine, o click e trascina per impostarne la dimensione manualmente",publishLibrary:"Pubblica la tua libreria",bindTextToElement:"Premi invio per aggiungere il testo",deepBoxSelect:"Tieni premuto CtrlOCmd per selezionare in profondità e per impedire il trascinamento",eraserRevert:"Tieni premuto Alt per ripristinare gli elementi contrassegnati per l'eliminazione",firefox_clipboard_write:'Questa funzione può essere abilitata impostando il flag "dom.events.asyncClipboard.clipboardItem" su "true". Per modificare i flag del browser in Firefox, visitare la pagina "about:config".',disableSnapping:"Tieni premuto Ctrl o Cmd per disabilitare lo snap"},A7e={cannotShowPreview:"Impossibile visualizzare l'anteprima",canvasTooBig:"La tela potrebbe essere troppo grande.",canvasTooBigTip:"Suggerimento: prova a spostare gli elementi più lontani più vicini tra loro."},e7e={headingMain:"Si è verificato un errore. Provare <button>ricaricando la pagina.</button>",clearCanvasMessage:"Se ricaricare non funziona, prova <button>pulire la tela.</button>",clearCanvasCaveat:" Questo risulterà nella perdita del lavoro ",trackedToSentry:"L'errore con identificativo {{eventId}} è stato tracciato nel nostro sistema.",openIssueMessage:"Siamo stati molto cauti nel non includere informazioni della scena nell'errore. Se la tua scena non è privata, ti preghiamo di considerare la sua inclusione nel nostro <button>bug tracker.</button> Per favore includi le informazioni riportate qui sotto copiandole e incollandole nella issue di GitHub.",sceneContent:"Contenuto della scena:"},t7e={desc_intro:"Puoi invitare persone nella tua scena attuale per collaborare con te.",desc_privacy:"Non preoccuparti, la sessione utilizza la crittografia end-to-end, quindi qualsiasi cosa disegni rimarrà privata. Nemmeno il nostro server sarà in grado di vedere cosa hai creato.",button_startSession:"Avvia sessione",button_stopSession:"Termina sessione",desc_inProgressIntro:"La sessione di collaborazione è attualmente in corso.",desc_shareLink:"Condividi questo link con chiunque desideri collaborare:",desc_exitSession:"Interrompere la sessione scollegherà la tua stanza ma potrai continuare a lavorare con la scena, localmente. Tieni presente che questo non influirà sulle altre persone, e che saranno ancora in grado di collaborare alla loro versione.",shareTitle:"Partecipa a una sessione di collaborazione live su Excalidraw"},r7e={title:"Errore"},i7e={disk_title:"Salva su disco",disk_details:"Esporta i dati della scena su file, dal quale potrai importare in seguito.",disk_button:"Salva su file",link_title:"Link condivisibile",link_details:"Esporta come link di sola lettura.",link_button:"Esporta come Link",excalidrawplus_description:"Salva la scena nel tuo spazio di lavoro Excalidraw+.",excalidrawplus_button:"Esporta",excalidrawplus_exportError:"Non è stato possibile esportare su Excalidraw+ al questo momento..."},u7e={blog:"Leggi il nostro blog",click:"click",deepSelect:"Selezione profonda",deepBoxSelect:"Seleziona in profondità all'interno della casella e previene il trascinamento",curvedArrow:"Freccia curva",curvedLine:"Linea curva",documentation:"Documentazione",doubleClick:"doppio-click",drag:"trascina",editor:"Editor",editLineArrowPoints:"Modifica punti linea/freccia",editText:"Modifica testo / aggiungi etichetta",github:"Trovato un problema? Segnalalo",howto:"Segui le nostre guide",or:"oppure",preventBinding:"Impedisci legame della freccia",tools:"Stumenti",shortcuts:"Scorciatoie da tastiera",textFinish:"Completa la modifica (editor di testo)",textNewLine:"Aggiungi nuova riga (editor di testo)",title:"Guida",view:"Vista",zoomToFit:"Adatta zoom per mostrare tutti gli elementi",zoomToSelection:"Zoom alla selezione",toggleElementLock:"Blocca/sblocca selezione",movePageUpDown:"Sposta la pagina su/giù",movePageLeftRight:"Sposta la pagina a sinistra/destra"},a7e={title:"Svuota la tela"},n7e={title:"Pubblica la libreria",itemName:"Nome dell'elemento",authorName:"Nome dell'autore",githubUsername:"Nome utente di GitHub",twitterUsername:"Nome utente di Twitter",libraryName:"Nome della libreria",libraryDesc:"Descrizione della libreria",website:"Sito Web",placeholder:{authorName:"Il tuo nome o nome utente",libraryName:"Nome della tua libreria",libraryDesc:"Descrizione della tua libreria per aiutare le persone a comprenderne lo scopo",githubHandle:"Handle di GitHub (opzionale), così che tu possa modificare la libreria una volta inviata per la revisione",twitterHandle:"Nome utente di Twitter (opzionale), così che sappiamo chi accreditare promuovendo su Twitter",website:"Link al tuo sito web personale o altro (opzionale)"},errors:{required:"Obbligatorio",website:"Inserisci un URL valido"},noteDescription:"Invia la tua libreria da includere nella <link>repository della libreria pubblica</link>perché sia usata da altri nei loro disegni.",noteGuidelines:"La libreria dev'esser prima approvata manualmente. Sei pregato di leggere le <link>linee guida</link> prima di inviarla. Necessiterai di un profilo di GitHub per comunicare ed effettuare modifiche se richiesto, ma non è strettamente necessario.",noteLicense:"Inviando, acconsenti che la libreria sarà pubblicata sotto la <link>Licenza MIT, </link>che in breve significa che chiunque possa usarla senza restrizioni.",noteItems:"Ogni elemento della libreria deve avere il proprio nome, così che sia filtrabile. Gli elementi della seguente libreria saranno inclusi:",atleastOneLibItem:"Sei pregato di selezionare almeno un elemento della libreria per iniziare",republishWarning:"Nota: alcuni degli elementi selezionati sono contrassegnati come già pubblicati/presentati. È necessario reinviare gli elementi solo quando si aggiorna una libreria o una presentazione esistente."},o7e={title:"Libreria inviata",content:"Grazie {{authorName}}. La tua libreria è stata inviata per la revisione. Puoi monitorarne lo stato<link>qui</link>"},s7e={resetLibrary:"Ripristina la libreria",removeItemsFromLib:"Rimuovi gli elementi selezionati dalla libreria"},l7e={header:"Esporta immagine",label:{withBackground:"Sfondo",onlySelected:"Solo selezionato",darkMode:"Tema scuro",embedScene:"Includi scena",scale:"Scala",padding:"Rientro"},tooltip:{embedScene:`I dati della scena saranno salvati nel file PNG/SVG esportato in modo che la scena possa essere ripristinata da esso.
|
||
Questo aumenterà la dimensione del file esportato.`},title:{exportToPng:"Esporta come PNG",exportToSvg:"Esporta come SVG",copyPngToClipboard:"Copia PNG negli appunti"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copia negli appunti"}},g7e={tooltip:"I tuoi disegni sono crittografati end-to-end in modo che i server di Excalidraw non li possano mai vedere.",link:"Articolo del blog sulla crittografia end-to-end di Excalidraw"},c7e={angle:"Angolo",element:"Elemento",elements:"Elementi",height:"Altezza",scene:"Scena",selected:"Selezionato",storage:"Memoria",title:"Statistiche per nerd",total:"Totale",version:"Versione",versionCopy:"Clicca per copiare",versionNotAvailable:"Versione non disponibile",width:"Larghezza"},C7e={addedToLibrary:"Aggiunto alla libreria",copyStyles:"Stili copiati.",copyToClipboard:"Copiato negli appunti.",copyToClipboardAsPng:`{{exportSelection}} copiato negli appunti come PNG
|
||
({{exportColorScheme}})`,fileSaved:"File salvato.",fileSavedToFilename:"Salvato in {filename}",canvas:"tela",selection:"selezione",pasteAsSingleElement:`Usa {{shortcut}} per incollare come un singolo elemento,
|
||
o incollare in un editor di testo esistente`,unableToEmbed:"Incorporare questo url non è permesso. Crea una issue su GitHub per richiedere che l'url sia autorizzato",unrecognizedLinkFormat:"Il link che hai incorporato non corrisponde al formato previsto. Prova a incollare la stringa 'embed' fornita dal sito di origine"},B7e={transparent:"Trasparente",black:"Nero",white:"Bianco",red:"Rosso",pink:"Rosa",grape:"Uva",violet:"Viola",gray:"Grigio",blue:"Blu",cyan:"Ciano",teal:"Verde acqua",green:"Verde",yellow:"Giallo",orange:"Arancio",bronze:"Bronzo"},E7e={app:{center_heading:"Tutti i tuoi dati sono salvati localmente nel browser.",center_heading_plus:"Volevi invece andare su Excalidraw+?",menuHint:"Esporta, preferenze, lingue, ..."},defaults:{menuHint:"Esporta, preferenze, e altro...",center_heading:"Diagrammi. Fatto. Semplice.",toolbarHint:"Scegli uno strumento & Inizia a disegnare!",helpHint:"Scorciatoie & aiuto"}},d7e={mostUsedCustomColors:"Colori personalizzati più utilizzati",colors:"Colori",shades:"Sfumature",hexCode:"Codice esadecimale",noShades:"Nessuna sfumatura disponibile per questo colore"},I7e={action:{exportToImage:{title:"Esporta come immagine",button:"Esporta come immagine",description:"Esporta i dati della scena come immagine, che potrai importare in seguito."},saveToDisk:{title:"Salva su disco",button:"Salva su disco",description:"Esporta i dati della scena su file, che potrai importare in seguito."},excalidrawPlus:{title:"Excalidraw+",button:"Esporta su Excalidraw+",description:"Salva la scena sul tuo spazio di lavoro Excalidraw+."}},modal:{loadFromFile:{title:"Carica da file",button:"Carica da file",description:"Il caricamento da file sostituirà <bold>il contenuto esistente</bold>.<br></br>Puoi salvare il tuo disegno prima usando una delle opzioni qui sotto."},shareableLink:{title:"Carica da link",button:"Sostituisci il mio contenuto",description:"Il caricamento da file sostituirà <bold>il contenuto esistente</bold>.<br></br>Puoi salvare il tuo disegno prima usando una delle opzioni qui sotto."}}},h7e={title:"",button:"Inserisci",description:"",syntax:"",preview:"Anteprima"},Hcr={labels:Wxe,library:qxe,buttons:zxe,alerts:Zxe,errors:Vxe,toolBar:jxe,headings:Xxe,hints:$xe,canvasError:A7e,errorSplash:e7e,roomDialog:t7e,errorDialog:r7e,exportDialog:i7e,helpDialog:u7e,clearCanvasDialog:a7e,publishDialog:n7e,publishSuccessDialog:o7e,confirmDialog:s7e,imageExportDialog:l7e,encrypted:g7e,stats:c7e,toast:C7e,colors:B7e,welcomeScreen:E7e,colorPicker:d7e,overwriteConfirm:I7e,mermaid:h7e}});var z7e={};yt(z7e,{alerts:()=>y7e,buttons:()=>D7e,canvasError:()=>F7e,clearCanvasDialog:()=>G7e,colorPicker:()=>_7e,colors:()=>O7e,confirmDialog:()=>T7e,default:()=>Kcr,encrypted:()=>H7e,errorDialog:()=>L7e,errorSplash:()=>x7e,errors:()=>w7e,exportDialog:()=>R7e,headings:()=>v7e,helpDialog:()=>N7e,hints:()=>k7e,imageExportDialog:()=>Y7e,labels:()=>f7e,library:()=>m7e,mermaid:()=>q7e,overwriteConfirm:()=>W7e,publishDialog:()=>U7e,publishSuccessDialog:()=>M7e,roomDialog:()=>S7e,stats:()=>K7e,toast:()=>J7e,toolBar:()=>b7e,welcomeScreen:()=>P7e});var f7e,m7e,D7e,y7e,w7e,b7e,v7e,k7e,F7e,x7e,S7e,L7e,R7e,N7e,G7e,U7e,M7e,T7e,Y7e,H7e,K7e,J7e,O7e,P7e,_7e,W7e,q7e,Kcr;var Z7e=P(()=>{qt();f7e={paste:"貼り付け",pasteAsPlaintext:"書式なしテキストとして貼り付け",pasteCharts:"チャートの貼り付け",selectAll:"すべて選択",multiSelect:"複数選択",moveCanvas:"キャンバスを移動",cut:"切り取り",copy:"コピー",copyAsPng:"PNGとしてクリップボードへコピー",copyAsSvg:"SVGとしてクリップボードへコピー",copyText:"テキストとしてクリップボードにコピー",copySource:"",convertToCode:"",bringForward:"前面に移動",sendToBack:"最背面に移動",bringToFront:"最前面に移動",sendBackward:"背面に移動",delete:"削除",copyStyles:"スタイルのコピー",pasteStyles:"スタイルの貼り付け",stroke:"線",background:"背景",fill:"塗りつぶし",strokeWidth:"線の太さ",strokeStyle:"線の種類",strokeStyle_solid:"実線",strokeStyle_dashed:"破線",strokeStyle_dotted:"点線",sloppiness:"ばらつき加減",opacity:"透明度",textAlign:"文字の配置",edges:"角",sharp:"四角",round:"丸",arrowheads:"線の終点",arrowhead_none:"なし",arrowhead_arrow:"矢印",arrowhead_bar:"バー",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"三角",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"フォントの大きさ",fontFamily:"フォントの種類",addWatermark:'"Made with Excalidraw"と表示',handDrawn:"手描き風",normal:"普通",code:"コード",small:"小",medium:"中",large:"大",veryLarge:"特大",solid:"ベタ塗り",hachure:"斜線",zigzag:"ジグザグ",crossHatch:"網掛け",thin:"細",bold:"太字",left:"左寄せ",center:"中央寄せ",right:"右寄せ",extraBold:"極太",architect:"正確",artist:"アート",cartoonist:"漫画風",fileTitle:"ファイル名",colorPicker:"色選択",canvasColors:"キャンバス上で使用",canvasBackground:"キャンバスの背景",drawingCanvas:"キャンバスの描画",layers:"レイヤー",actions:"操作",language:"言語",liveCollaboration:"共同編集...",duplicateSelection:"複製",untitled:"無題",name:"名前",yourName:"あなたの名前",madeWithExcalidraw:"Excalidrawで作成",group:"グループ化",ungroup:"グループ化を解除",collaborators:"共同編集者",showGrid:"グリッドを表示",addToLibrary:"ライブラリに追加",removeFromLibrary:"ライブラリから削除",libraryLoadingMessage:"ライブラリを読み込み中…",libraries:"ライブラリを参照する",loadingScene:"シーンを読み込み中…",align:"配置",alignTop:"上揃え",alignBottom:"下揃え",alignLeft:"左揃え",alignRight:"右揃え",centerVertically:"縦方向に中央揃え",centerHorizontally:"横方向に中央揃え",distributeHorizontally:"水平方向に分散配置",distributeVertically:"垂直方向に分散配置",flipHorizontal:"水平方向に反転",flipVertical:"垂直方向に反転",viewMode:"閲覧モード",share:"共有",showStroke:"ストロークカラーピッカーを表示",showBackground:"背景色ピッカーを表示",toggleTheme:"テーマの切り替え",personalLib:"個人ライブラリ",excalidrawLib:"Excalidrawライブラリ",decreaseFontSize:"フォントサイズを縮小",increaseFontSize:"フォントサイズを拡大",unbindText:"テキストのバインド解除",bindText:"テキストをコンテナにバインド",createContainerFromText:"コンテナ内でテキストを折り返す",link:{edit:"リンクを編集",editEmbed:"リンクの編集と埋め込み",create:"リンクを作成",createEmbed:"リンクの作成と埋め込み",label:"リンク",labelEmbed:"リンクと埋め込み",empty:"リンクが設定されていません"},lineEditor:{edit:"行を編集",exit:"行エディタを終了"},elementLock:{lock:"ロック",unlock:"ロック解除",lockAll:"すべてロック",unlockAll:"すべてのロックを解除"},statusPublished:"公開済み",sidebarLock:"サイドバーを開いたままにする",selectAllElementsInFrame:"フレーム内のすべての要素を選択",removeAllElementsFromFrame:"フレーム内のすべての要素を削除",eyeDropper:"キャンバスから色を選択",textToDiagram:"",prompt:""},m7e={noItems:"まだアイテムが追加されていません…",hint_emptyLibrary:"キャンバス上のアイテムを選択してここに追加するか、以下の公開リポジトリからライブラリをインストールしてください。",hint_emptyPrivateLibrary:"キャンバス上のアイテムを選択すると、ここに追加されます。"},D7e={clearReset:"キャンバスのリセット",exportJSON:"ファイルへエクスポート",exportImage:"画像のエクスポート...",export:"名前を付けて保存...",copyToClipboard:"クリップボードにコピー",save:"現在のファイルに保存",saveAs:"名前を付けて保存",load:"開く",getShareableLink:"共有URLの取得",close:"閉じる",selectLanguage:"言語の選択",scrollBackToContent:"コンテンツまでスクロールで戻る",zoomIn:"拡大",zoomOut:"縮小",resetZoom:"拡大/縮小をリセット",menu:"メニュー",done:"完了",edit:"編集",undo:"元に戻す",redo:"やり直し",resetLibrary:"ライブラリをリセット",createNewRoom:"新しい部屋を作成する",fullScreen:"フルスクリーン",darkMode:"ダークモード",lightMode:"ライトモード",zenMode:"Zenモード",objectsSnapMode:"",exitZenMode:"集中モードをやめる",cancel:"キャンセル",clear:"消去",remove:"削除",embed:"埋め込みの切り替え",publishLibrary:"公開",submit:"送信",confirm:"確認",embeddableInteractionButton:""},y7e={clearReset:"この操作によってキャンバス全体が消えます。よろしいですか?",couldNotCreateShareableLink:"共有URLを作成できませんでした。",couldNotCreateShareableLinkTooBig:"共有可能なリンクを作成できませんでした: シーンが大きすぎます",couldNotLoadInvalidFile:"無効なファイルを読み込めませんでした。",importBackendFailed:"サーバーからの読み込みに失敗しました。",cannotExportEmptyCanvas:"空のキャンバスはエクスポートできません。",couldNotCopyToClipboard:"クリップボードにコピーできませんでした。",decryptFailed:"データを復号できませんでした。",uploadedSecurly:"データのアップロードはエンドツーエンド暗号化によって保護されています。Excalidrawサーバーと第三者はデータの内容を見ることができません。",loadSceneOverridePrompt:"外部図面を読み込むと、既存のコンテンツが置き換わります。続行しますか?",collabStopOverridePrompt:`セッションを停止すると、ローカルに保存されている図が上書きされます。 本当によろしいですか?
|
||
|
||
(ローカルの図を保持したい場合は、セッションを停止せずにブラウザタブを閉じてください。)`,errorAddingToLibrary:"アイテムをライブラリに追加できませんでした",errorRemovingFromLibrary:"ライブラリからアイテムを削除できませんでした",confirmAddLibrary:"{{numShapes}} 個の図形をライブラリに追加します。よろしいですか?",imageDoesNotContainScene:"この画像にはシーンデータが含まれていないようです。エクスポート時にシーンの埋め込みを有効にしましたか?",cannotRestoreFromImage:"このイメージファイルからシーンを復元できませんでした",invalidSceneUrl:"指定された URL からシーンをインポートできませんでした。不正な形式であるか、有効な Excalidraw JSON データが含まれていません。",resetLibrary:"ライブラリを消去します。本当によろしいですか?",removeItemsFromsLibrary:"{{count}} 個のアイテムをライブラリから削除しますか?",invalidEncryptionKey:"暗号化キーは22文字でなければなりません。ライブコラボレーションは無効化されています。",collabOfflineWarning:`インターネットに接続されていません。
|
||
変更は保存されません!`},w7e={unsupportedFileType:"サポートされていないファイル形式です。",imageInsertError:"画像を挿入できませんでした。後でもう一度お試しください...",fileTooBig:"ファイルが大きすぎます。許可される最大サイズは {{maxSize}} です。",svgImageInsertError:"SVGイメージを挿入できませんでした。SVGマークアップは無効に見えます。",failedToFetchImage:"",invalidSVGString:"無効なSVGです。",cannotResolveCollabServer:"コラボレーションサーバに接続できませんでした。ページを再読み込みして、もう一度お試しください。",importLibraryError:"ライブラリを読み込めませんでした。",collabSaveFailed:"バックエンドデータベースに保存できませんでした。問題が解決しない場合は、作業を失わないようにローカルにファイルを保存してください。",collabSaveFailed_sizeExceeded:"キャンバスが大きすぎるため、バックエンドデータベースに保存できませんでした。問題が解決しない場合は、作業を失わないようにローカルにファイルを保存してください。",imageToolNotSupported:"",brave_measure_text_error:{line1:"<bold>Aggressly Block Fingerprinting</bold> の設定が有効なBraveブラウザを使用しているようです。",line2:"これにより、図面の <bold>テキスト要素</bold> が壊れる可能性があります。",line3:"この設定を無効にすることを強く推奨します。 <link>設定手順</link> をこちらから確認できます。",line4:"この設定を無効にすると、テキスト要素の表示が修正されません。 GitHub で <issueLink>Issue</issueLink> を開くか、 <discordLink>Discord</discordLink> にご記入ください"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},b7e={selection:"選択",image:"画像を挿入",rectangle:"矩形",diamond:"ひし形",ellipse:"楕円",arrow:"矢印",line:"直線",freedraw:"描画",text:"テキスト",library:"ライブラリ",lock:"描画後も使用中のツールを選択したままにする",penMode:"ペンモード - タッチ防止",link:"選択した図形のリンクを追加/更新",eraser:"消しゴム",frame:"フレームツール",magicframe:"",embeddable:"Web埋め込み",laser:"",hand:"手 (パンニングツール)",extraTools:"その他のツール",mermaidToExcalidraw:"",magicSettings:""},v7e={canvasActions:"キャンバス操作",selectedShapeActions:"選択された図形に対する操作",shapes:"図形"},k7e={canvasPanning:"キャンバスを移動するには、マウスホイールまたはスペースバーを押しながらドラッグするか、手ツールを使用します",linearElement:"クリックすると複数の頂点からなる曲線を開始、ドラッグすると直線",freeDraw:"クリックしてドラッグします。離すと終了します",text:"ヒント: 選択ツールを使用して任意の場所をダブルクリックしてテキストを追加することもできます",embeddable:"",text_selected:"テキストを編集するには、ダブルクリックまたはEnterキーを押します",text_editing:"Esc キーまたは CtrlOrCmd+ENTER キーを押して編集を終了します",linearElementMulti:"最後のポイントをクリックするか、エスケープまたはEnterを押して終了します",lockAngle:"SHIFTを押したままにすると、角度を制限することができます",resize:"サイズを変更中にSHIFTを押すと縦横比を固定できます。Altを押すと中央からサイズを変更できます",resizeImage:`SHIFTを長押しすると自由にサイズを変更できます。
|
||
中央からサイズを変更するにはALTを長押しします`,rotate:"回転中にSHIFT キーを押すと角度を制限することができます",lineEditor_info:"CtrlOrCmd を押したままダブルクリックするか、CtrlOrCmd + Enter を押して点を編集します",lineEditor_pointSelected:"Deleteキーを押すと点を削除、CtrlOrCmd+Dで複製、マウスドラッグで移動",lineEditor_nothingSelected:`編集する点を選択(SHIFTを押したままで複数選択)、
|
||
Altキーを押しながらクリックすると新しい点を追加`,placeImage:"クリックして画像を配置するか、クリックしてドラッグしてサイズを手動で設定します",publishLibrary:"自分のライブラリを公開",bindTextToElement:"Enterを押してテキストを追加",deepBoxSelect:"CtrlOrCmd を押し続けることでドラッグを抑止し、深い選択を行います",eraserRevert:"Alt を押し続けることで削除マークされた要素を元に戻す",firefox_clipboard_write:'この機能は、"dom.events.asyncClipboard.clipboardItem" フラグを "true" に設定することで有効になる可能性があります。Firefox でブラウザーの設定を変更するには、"about:config" ページを参照してください。',disableSnapping:""},F7e={cannotShowPreview:"プレビューを表示できません",canvasTooBig:"キャンバスが大きすぎます。",canvasTooBigTip:"ヒント: 最も遠い要素をもう少し近づけてみてください。"},x7e={headingMain:"エラーが発生しました。もう一度やり直してください。 <button>ページを再読み込みする。</button>",clearCanvasMessage:"再読み込みがうまくいかない場合は、 <button>キャンバスを消去しています</button>",clearCanvasCaveat:" これにより作業が失われます ",trackedToSentry:"識別子のエラー {{eventId}} が我々のシステムで追跡されました。",openIssueMessage:"エラーに関するシーン情報を含めないように非常に慎重に設定しました。もしあなたのシーンがプライベートでない場合は、私たちのフォローアップを検討してください。 <button>バグ報告</button> GitHub のIssueに以下の情報をコピーして貼り付けてください。",sceneContent:"シーンの内容:"},S7e={desc_intro:"他の人を編集中のあなたの画面に招待して共同編集することができます。",desc_privacy:"このセッションはエンドツーエンド暗号化されており、描画内容は保護されています。運営サーバーからも内容は見えません。",button_startSession:"セッションを開始する",button_stopSession:"セッションを終了する",desc_inProgressIntro:"共同編集セッションが有効になっています。",desc_shareLink:"下記URLを共同編集したい人に共有してください:",desc_exitSession:"セッションを終了するとあなたはルームから切断されますが、ローカルで作業を続けることができます。セッションを終了しても他のメンバには影響はなく、引き続き共同作業を行うことができます。",shareTitle:"Excalidrawの共同編集セッションに参加する"},L7e={title:"エラー"},R7e={disk_title:"ディスクに保存",disk_details:"シーンデータを後からインポートできるファイルにエクスポートします。",disk_button:"ファイルへ保存",link_title:"共有可能なリンク",link_details:"読み取り専用リンクとしてエクスポート",link_button:"リンクとしてエクスポート",excalidrawplus_description:"Excalidraw+ ワークスペースにシーンを保存します。",excalidrawplus_button:"エクスポート",excalidrawplus_exportError:"Excalidraw+ にエクスポートできませんでした..."},N7e={blog:"公式ブログを読む",click:"クリック",deepSelect:"深い選択",deepBoxSelect:"ボックス内の深い選択、およびドラッグの抑止",curvedArrow:"カーブした矢印",curvedLine:"曲線",documentation:"ドキュメント",doubleClick:"ダブルクリック",drag:"ドラッグ",editor:"エディタ",editLineArrowPoints:"",editText:"テキストの編集 / ラベルの追加",github:"不具合報告はこちら",howto:"ヘルプ・マニュアル",or:"または",preventBinding:"矢印を結合しない",tools:"ツール",shortcuts:"キーボードショートカット",textFinish:"編集を終了 (テキストエディタ)",textNewLine:"新しい行を追加 (テキスト)",title:"ヘルプ",view:"表示",zoomToFit:"すべての要素が収まるようにズーム",zoomToSelection:"選択要素にズーム",toggleElementLock:"選択したアイテムをロック/ロック解除",movePageUpDown:"ページを上下に移動",movePageLeftRight:"ページを左右に移動"},G7e={title:"キャンバスを消去"},U7e={title:"ライブラリを公開",itemName:"アイテム名",authorName:"作成者名",githubUsername:"GitHub ユーザ名",twitterUsername:"Twitter ユーザ名",libraryName:"ライブラリ名",libraryDesc:"ライブラリの説明",website:"Webサイト",placeholder:{authorName:"お名前またはユーザー名",libraryName:"あなたのライブラリ名",libraryDesc:"ライブラリの使い方を理解するための説明",githubHandle:"GitHubハンドル(任意)。一度レビューのために送信されると、ライブラリを編集できます",twitterHandle:"Twitterのユーザー名 (任意)。Twitterでプロモーションする際にクレジットする人を知っておくためのものです",website:"個人のウェブサイトまたは他のサイトへのリンク (任意)"},errors:{required:"必須項目",website:"有効な URL を入力してください"},noteDescription:"以下に含めるライブラリを提出してください <link>公開ライブラリのリポジトリ</link>他の人が作図に使えるようにするためです",noteGuidelines:"最初にライブラリを手動で承認する必要があります。次をお読みください <link>ガイドライン</link> 送信する前に、GitHubアカウントが必要になりますが、必須ではありません。",noteLicense:"提出することにより、ライブラリが次の下で公開されることに同意します: <link>MIT ライセンス </link>つまり誰でも制限なく使えるということです",noteItems:"各ライブラリ項目は、フィルタリングのために独自の名前を持つ必要があります。以下のライブラリアイテムが含まれます:",atleastOneLibItem:"開始するには少なくとも1つのライブラリ項目を選択してください",republishWarning:"注意: 選択された項目の中には、すでに公開/投稿済みと表示されているものがあります。既存のライブラリや投稿を更新する場合のみ、アイテムを再投稿してください。"},M7e={title:"ライブラリを送信しました",content:"{{authorName}} さん、ありがとうございます。あなたのライブラリはレビューのために提出されました。状況を追跡できます。<link>こちら</link>"},T7e={resetLibrary:"ライブラリをリセット",removeItemsFromLib:"選択したアイテムをライブラリから削除"},Y7e={header:"画像をエクスポート",label:{withBackground:"背景",onlySelected:"",darkMode:"ダークモード",embedScene:"",scale:"スケール",padding:"余白"},tooltip:{embedScene:""},title:{exportToPng:"PNG にエクスポート",exportToSvg:"SVG にエクスポート",copyPngToClipboard:"クリップボードにPNGをコピー"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"クリップボードにコピー"}},H7e={tooltip:"描画内容はエンドツーエンド暗号化が施されており、Excalidrawサーバーが内容を見ることはできません。",link:"Excalidrawのエンドツーエンド暗号化に関するブログ記事"},K7e={angle:"角度",element:"要素",elements:"要素",height:"高さ",scene:"シーン",selected:"選択済み",storage:"ストレージ",title:"詳細統計情報",total:"合計",version:"バージョン",versionCopy:"クリックしてコピー",versionNotAvailable:"利用できないバージョン",width:"幅"},J7e={addedToLibrary:"ライブラリに追加しました",copyStyles:"スタイルをコピーしました。",copyToClipboard:"クリップボードにコピー",copyToClipboardAsPng:`{{exportSelection}} を PNG 形式でクリップボードにコピーしました
|
||
({{exportColorScheme}})`,fileSaved:"ファイルを保存しました",fileSavedToFilename:"{filename} に保存しました",canvas:"キャンバス",selection:"選択",pasteAsSingleElement:`{{shortcut}} を使用して単一の要素として貼り付けるか、
|
||
既存のテキストエディタに貼り付け`,unableToEmbed:"",unrecognizedLinkFormat:""},O7e={transparent:"透明",black:"黒",white:"白",red:"赤",pink:"ピンク",grape:"グレープ",violet:"バイオレット",gray:"灰色",blue:"青",cyan:"シアン",teal:"ティール",green:"緑",yellow:"黄",orange:"オレンジ",bronze:"ブロンズ"},P7e={app:{center_heading:"すべてのデータはブラウザにローカル保存されます。",center_heading_plus:"代わりにExcalidraw+を開きますか?",menuHint:"エクスポート、設定、言語..."},defaults:{menuHint:"エクスポート、設定、その他...",center_heading:"ダイアグラムを簡単に。",toolbarHint:"ツールを選んで描き始めよう!",helpHint:"ショートカットとヘルプ"}},_7e={mostUsedCustomColors:"最も使用されているカスタム色",colors:"色",shades:"影",hexCode:"Hexコード",noShades:""},W7e={action:{exportToImage:{title:"画像としてエクスポート",button:"画像としてエクスポート",description:""},saveToDisk:{title:"ディスクに保存",button:"ディスクに保存",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Excalidraw+にエクスポート",description:"Excalidraw+ ワークスペースにシーンを保存します。"}},modal:{loadFromFile:{title:"ファイルからロード",button:"ファイルからロード",description:""},shareableLink:{title:"リンクからロード",button:"",description:""}}},q7e={title:"",button:"",description:"",syntax:"",preview:""},Kcr={labels:f7e,library:m7e,buttons:D7e,alerts:y7e,errors:w7e,toolBar:b7e,headings:v7e,hints:k7e,canvasError:F7e,errorSplash:x7e,roomDialog:S7e,errorDialog:L7e,exportDialog:R7e,helpDialog:N7e,clearCanvasDialog:G7e,publishDialog:U7e,publishSuccessDialog:M7e,confirmDialog:T7e,imageExportDialog:Y7e,encrypted:H7e,stats:K7e,toast:J7e,colors:O7e,welcomeScreen:P7e,colorPicker:_7e,overwriteConfirm:W7e,mermaid:q7e}});var D8e={};yt(D8e,{alerts:()=>$7e,buttons:()=>X7e,canvasError:()=>i8e,clearCanvasDialog:()=>l8e,colorPicker:()=>p8e,colors:()=>h8e,confirmDialog:()=>C8e,default:()=>Jcr,encrypted:()=>E8e,errorDialog:()=>n8e,errorSplash:()=>u8e,errors:()=>A8e,exportDialog:()=>o8e,headings:()=>t8e,helpDialog:()=>s8e,hints:()=>r8e,imageExportDialog:()=>B8e,labels:()=>V7e,library:()=>j7e,mermaid:()=>m8e,overwriteConfirm:()=>f8e,publishDialog:()=>g8e,publishSuccessDialog:()=>c8e,roomDialog:()=>a8e,stats:()=>d8e,toast:()=>I8e,toolBar:()=>e8e,welcomeScreen:()=>Q8e});var V7e,j7e,X7e,$7e,A8e,e8e,t8e,r8e,i8e,u8e,a8e,n8e,o8e,s8e,l8e,g8e,c8e,C8e,B8e,E8e,d8e,I8e,h8e,Q8e,p8e,f8e,m8e,Jcr;var y8e=P(()=>{qt();V7e={paste:"Qoyıw",pasteAsPlaintext:"Ápiwayı tekst retinde qoyıw",pasteCharts:"Diagrammalardı qoyıw",selectAll:"Barlıǵın tańlaw",multiSelect:"",moveCanvas:"",cut:"Qıyıw",copy:"Kóshirip alıw",copyAsPng:"Almasıw buferine PNG retinde kóshirip alıw",copyAsSvg:"Almasıw buferine SVG retinde kóshirip alıw",copyText:"Almasıw buferine tekst retinde kóshirip alıw",copySource:"",convertToCode:"",bringForward:"",sendToBack:"",bringToFront:"",sendBackward:"",delete:"Óshiriw",copyStyles:"",pasteStyles:"",stroke:"Jiyek",background:"Fon",fill:"",strokeWidth:"",strokeStyle:"",strokeStyle_solid:"",strokeStyle_dashed:"",strokeStyle_dotted:"",sloppiness:"",opacity:"",textAlign:"",edges:"Qırlar",sharp:"",round:"",arrowheads:"",arrowhead_none:"Joq",arrowhead_arrow:"Jebe",arrowhead_bar:"",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Shrift ólshemi",fontFamily:"Shrift toplamı",addWatermark:"",handDrawn:"",normal:"",code:"Kod",small:"",medium:"Ortasha",large:"Úlken",veryLarge:"Júdá úlken",solid:"",hachure:"",zigzag:"Zigzag",crossHatch:"",thin:"Jińishke",bold:"Qalıń",left:"",center:"",right:"",extraBold:"",architect:"",artist:"Súwretshi",cartoonist:"",fileTitle:"Fayl ataması",colorPicker:"Reńdi tańlaw",canvasColors:"",canvasBackground:"",drawingCanvas:"",layers:"Qatlamlar",actions:"Háreketler",language:"Til",liveCollaboration:"",duplicateSelection:"Nusqa",untitled:"Atamasız",name:"Ataması",yourName:"Atıńız",madeWithExcalidraw:"Excalidraw járdeminde islengen",group:"",ungroup:"",collaborators:"Qatnasıwshılar",showGrid:"",addToLibrary:"Kitapxanaǵa qosıw",removeFromLibrary:"Kitapxanadan alıp taslaw",libraryLoadingMessage:"Kitapxana júklenbekte…",libraries:"Kitapxanalardı kóriw",loadingScene:"Saxna júklenbekte…",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"Kóriw rejimi",share:"Bólisiw",showStroke:"",showBackground:"",toggleTheme:"Temanı ózgertiw",personalLib:"Jeke kitapxana",excalidrawLib:"Excalidraw kitapxanası",decreaseFontSize:"Shrift ólshemin kishireytiw",increaseFontSize:"Shrift ólshemin úlkeytiw",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Siltemeni ózgertiw",editEmbed:"",create:"Siltemeni jaratıw",createEmbed:"",label:"Silteme",labelEmbed:"",empty:""},lineEditor:{edit:"Qatardı ózgertiw",exit:"Qatardı ózgertiw redaktorınan shıǵıw"},elementLock:{lock:"Qulıplaw",unlock:"Qulıptan shıǵarıw",lockAll:"Barlıǵın qulıplaw",unlockAll:"Barlıǵın qulıptan shıǵarıw"},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},j7e={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},X7e={clearReset:"",exportJSON:"",exportImage:"Súwretti eksportlaw...",export:"Retinde saqlaw...",copyToClipboard:"Almasıw buferine kóshirip alındı",save:"Ámeldegi faylǵa saqlaw",saveAs:"Retinde saqlaw",load:"Ashıw",getShareableLink:"",close:"Jabıw",selectLanguage:"Tildi tańlaw",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"Menyu",done:"Tayın",edit:"Ózgertiw",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"Tolıq ekran",darkMode:"Qarańǵı tema",lightMode:"Jaqtı tema",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"Biykarlaw",clear:"Tazalaw",remove:"Óshiriw",embed:"",publishLibrary:"Jariyalaw",submit:"Jiberiw",confirm:"Tastıyıqlaw",embeddableInteractionButton:""},$7e={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"Almasıw buferine kóshirip alıw ámelge aspadı.",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},A8e={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"Jaramsız SVG.",cannotResolveCollabServer:"",importLibraryError:"Kitapxananı júklew ámelge aspadı",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},e8e={selection:"",image:"Súwret qoyıw",rectangle:"Tórt múyeshlik",diamond:"",ellipse:"",arrow:"",line:"Sızıq",freedraw:"Sızıw",text:"Tekst",library:"Kitapxana",lock:"",penMode:"",link:"",eraser:"Óshirgish",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},t8e={canvasActions:"",selectedShapeActions:"",shapes:"Figuralar"},r8e={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"Tekst qosıw ushın Enter túymesin basıń",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},i8e={cannotShowPreview:"Aldınnan kóriwdi kórsetiw múmkin emes",canvasTooBig:"",canvasTooBigTip:""},u8e={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},a8e={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},n8e={title:"Qátelik"},o8e={disk_title:"Diskke saqlaw",disk_details:"",disk_button:"Faylǵa saqlaw",link_title:"",link_details:"",link_button:"Siltemege eksportlaw",excalidrawplus_description:"",excalidrawplus_button:"Eksportlaw",excalidrawplus_exportError:""},s8e={blog:"Biziń blogtı oqıń",click:"basıw",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"Hújjetshilik",doubleClick:"",drag:"",editor:"Redaktor",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"yamasa",preventBinding:"",tools:"Ásbaplar",shortcuts:"",textFinish:"",textNewLine:"",title:"Járdem",view:"Kóriw",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},l8e={title:""},g8e={title:"",itemName:"",authorName:"Avtor atı",githubUsername:"GitHub paydalanıwshı atı",twitterUsername:"Twitter paydalanıwshı atı",libraryName:"Kitapxana ataması",libraryDesc:"",website:"Veb-sayt",placeholder:{authorName:"Atıńız yamasa paydalanıwshı atı",libraryName:"Kitapxanańız ataması",libraryDesc:"",githubHandle:"",twitterHandle:"",website:"Jeke veb-saytıńız yamasa basqa saytqa silteme (májbúriy emes)"},errors:{required:"Májbúriy",website:"Jaramlı URL mánzil kirgiziń"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},c8e={title:"Kitapxana jiberildi",content:""},C8e={resetLibrary:"Kitapxananı qayta ornatıw",removeItemsFromLib:""},B8e={header:"Súwretti eksportlaw",label:{withBackground:"Fon",onlySelected:"",darkMode:"Qarańǵı tema",embedScene:"",scale:"Kólem",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Almasıw buferine kóshirip alıw"}},E8e={tooltip:"",link:""},d8e={angle:"",element:"Element",elements:"Elementler",height:"",scene:"Saxna",selected:"Tańlandı",storage:"",title:"",total:"",version:"Versiya",versionCopy:"Kóshirip alıw ushın basıń",versionNotAvailable:"",width:"Eni"},I8e={addedToLibrary:"Kitapxanaǵa qosıldı",copyStyles:"",copyToClipboard:"Almasıw buferine kóshirip alındı.",copyToClipboardAsPng:"",fileSaved:"Fayl saqlandı.",fileSavedToFilename:"{filename} saqlandı",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},h8e={transparent:"",black:"Qara",white:"Aq",red:"Qızıl",pink:"Qızǵılt",grape:"",violet:"Qızǵılt kók",gray:"",blue:"Kók",cyan:"Kók aspan",teal:"Piruza",green:"Jasıl",yellow:"Sarı",orange:"Qızǵılt sarı",bronze:""},Q8e={app:{center_heading:"",center_heading_plus:"Excalidraw+ ge ótiwdi qáleysiz be?",menuHint:"Eksportlaw, sazlawlar, tiller, ..."},defaults:{menuHint:"Eksportlaw, sazlawlar hám basqa...",center_heading:"Diagrammalar. Ápiwayı.",toolbarHint:"",helpHint:""}},p8e={mostUsedCustomColors:"Kóp qollanılatuǵın arnawlı reńler",colors:"Reńler",shades:"",hexCode:"",noShades:""},f8e={action:{exportToImage:{title:"Súwret retinde eksportlaw",button:"Súwret retinde eksportlaw",description:""},saveToDisk:{title:"Diskke saqlaw",button:"Diskke saqlaw",description:""},excalidrawPlus:{title:"Excalidraw+",button:"",description:""}},modal:{loadFromFile:{title:"Fayldan júklew",button:"Fayldan júklew",description:""},shareableLink:{title:"Siltemeden júklew",button:"",description:""}}},m8e={title:"",button:"",description:"",syntax:"",preview:""},Jcr={labels:V7e,library:j7e,buttons:X7e,alerts:$7e,errors:A8e,toolBar:e8e,headings:t8e,hints:r8e,canvasError:i8e,errorSplash:u8e,roomDialog:a8e,errorDialog:n8e,exportDialog:o8e,helpDialog:s8e,clearCanvasDialog:l8e,publishDialog:g8e,publishSuccessDialog:c8e,confirmDialog:C8e,imageExportDialog:B8e,encrypted:E8e,stats:d8e,toast:I8e,colors:h8e,welcomeScreen:Q8e,colorPicker:p8e,overwriteConfirm:f8e,mermaid:m8e}});var X8e={};yt(X8e,{alerts:()=>k8e,buttons:()=>v8e,canvasError:()=>R8e,clearCanvasDialog:()=>Y8e,colorPicker:()=>Z8e,colors:()=>q8e,confirmDialog:()=>J8e,default:()=>Ocr,encrypted:()=>P8e,errorDialog:()=>U8e,errorSplash:()=>N8e,errors:()=>F8e,exportDialog:()=>M8e,headings:()=>S8e,helpDialog:()=>T8e,hints:()=>L8e,imageExportDialog:()=>O8e,labels:()=>w8e,library:()=>b8e,mermaid:()=>j8e,overwriteConfirm:()=>V8e,publishDialog:()=>H8e,publishSuccessDialog:()=>K8e,roomDialog:()=>G8e,stats:()=>_8e,toast:()=>W8e,toolBar:()=>x8e,welcomeScreen:()=>z8e});var w8e,b8e,v8e,k8e,F8e,x8e,S8e,L8e,R8e,N8e,G8e,U8e,M8e,T8e,Y8e,H8e,K8e,J8e,O8e,P8e,_8e,W8e,q8e,z8e,Z8e,V8e,j8e,Ocr;var $8e=P(()=>{qt();w8e={paste:"Senṭeḍ",pasteAsPlaintext:"",pasteCharts:"Senṭeḍ udlifen",selectAll:"Fren akk",multiSelect:"Rnu aferdis ɣer tefrayt",moveCanvas:"Smutti taɣzut n usuneɣ",cut:"Gzem",copy:"Nɣel",copyAsPng:"Nɣel ɣer tecfawit am PNG",copyAsSvg:"Nɣel ɣer tecfawit am SVG",copyText:"Nɣel ɣer tecfawit am uḍris",copySource:"",convertToCode:"",bringForward:"Awi ɣer sdat",sendToBack:"Awi s agilal",bringToFront:"Err ɣer deffir",sendBackward:"Awi ɣer deffir",delete:"Kkes",copyStyles:"Nɣel iɣunab",pasteStyles:"Senṭeḍ iɣunab",stroke:"Azizdew",background:"Agilal",fill:"Taččart",strokeWidth:"Tehri n yizirig",strokeStyle:"Aɣanib n tizirig",strokeStyle_solid:"Aččuran",strokeStyle_dashed:"S tjerriḍin",strokeStyle_dotted:"S tenqiḍin",sloppiness:"Astehzi",opacity:"Tiḍullest",textAlign:"Areyyec n uḍris",edges:"Leryuf",sharp:"Yemsed",round:"Imdewer",arrowheads:"Ixfawen n tenccabt",arrowhead_none:"Ulac",arrowhead_arrow:"Taneccabt",arrowhead_bar:"Afeggag",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Akerdis",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tiddi n tsefsit",fontFamily:"Tawacult n tsefsiyin",addWatermark:'Seddu "Yettwaxdem s Excalidraw"',handDrawn:"Asuneɣ s ufus",normal:"Amagnu",code:"Tangalt",small:"Meẓẓi",medium:"Alemmas",large:"Ameqran",veryLarge:"Meqqer aṭas",solid:"Aččuran",hachure:"Azerreg",zigzag:"",crossHatch:"Azerreg anmidag",thin:"Arqaq",bold:"Azuran",left:"Azelmaḍ",center:"Talemmast",right:"Ayfus",extraBold:"Azuran aṭas",architect:"Amasdag",artist:"Anaẓur",cartoonist:"Amefɣul",fileTitle:"Isem n ufaylu",colorPicker:"Amafran n yini",canvasColors:"Yettwaseqdec di teɣzut n usuneɣ",canvasBackground:"Agilal n teɣzut n usuneɣ",drawingCanvas:"Taɣzut n usuneɣ",layers:"Tissiyin",actions:"Tigawin",language:"Tutlayt",liveCollaboration:"Amɛiwen s srid...",duplicateSelection:"Sisleg",untitled:"War azwel",name:"Isem",yourName:"Isem-ik (im)",madeWithExcalidraw:"Yettwaxdem s Excalidraw",group:"Segrew tafrayt",ungroup:"Kkess asegrew i tefrayt",collaborators:"Imɛiwnen",showGrid:"Beqqeḍ aferrug",addToLibrary:"Rnu ɣer temkarḍit",removeFromLibrary:"Kkes si temkarḍit",libraryLoadingMessage:"Asali n temkarḍit…",libraries:"Snirem timkarḍiyin",loadingScene:"Asali n usayes…",align:"Reyyec",alignTop:"Areyyec uksawen",alignBottom:"Areyyec ukessar",alignLeft:"Reyyec s azelmaḍ",alignRight:"Areyyec s ayfus",centerVertically:"Di tlemmast s ibeddi",centerHorizontally:"Di tlemmast s uglawi",distributeHorizontally:"Freq s uglawi",distributeVertically:"Freq s yibeddi",flipHorizontal:"Tuttya taglawant",flipVertical:"Tuttya tubdidt",viewMode:"Askar n tmuɣli",share:"Bḍu",showStroke:"Beqqeḍ amelqaḍ n yini n yizirig",showBackground:"Beqqeḍ amelqaḍ n yini n ugilal",toggleTheme:"Snifel asentel",personalLib:"Tamkarḍit tudmawant",excalidrawLib:"Tamkarḍit n Excalidraw",decreaseFontSize:"Senqes tiddi n tsefsit",increaseFontSize:"Sali tiddi n tsefsit",unbindText:"Serreḥ iweḍris",bindText:"Arez aḍris s anagbar",createContainerFromText:"",link:{edit:"Ẓreg aseɣwen",editEmbed:"",create:"Snulfu-d aseɣwen",createEmbed:"",label:"Aseɣwen",labelEmbed:"",empty:""},lineEditor:{edit:"Ẓreg izirig",exit:"Ffeɣ seg umaẓrag n yizirig"},elementLock:{lock:"Sekkeṛ",unlock:"Serreḥ",lockAll:"Sekkeṛ akk",unlockAll:"Serreḥ akk"},statusPublished:"Yeffeɣ-d",sidebarLock:"Eǧǧ afeggag n yidis yeldi",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},b8e={noItems:"Ulac iferdisen yettwarnan yakan...",hint_emptyLibrary:"Fren aferdis di teɣzut nusuneɣ akken at-ternuḍ dagi, neɣ sbedd tamkarḍit seg usarsay azayez, ukessar-agi.",hint_emptyPrivateLibrary:"Fren aferdis di teɣzut nusuneɣ akken at-ternuḍ dagi."},v8e={clearReset:"Ales awennez n teɣzut n usuneɣ",exportJSON:"Sifeḍ afaylu",exportImage:"Sifeḍ tugna...",export:"Sekles di...",copyToClipboard:"Nɣel ɣer tecfawit",save:"Sekles deg ufaylu amiran",saveAs:"Sekles am",load:"Ldi",getShareableLink:"Awi-d aseɣwen n beṭṭu",close:"Mdel",selectLanguage:"Fren tutlayt",scrollBackToContent:"Uɣal s agbur",zoomIn:"Simɣur",zoomOut:"Simẓi",resetZoom:"Ales awennez n usemɣer",menu:"Umuɣ",done:"Ifukk",edit:"Ẓreg",undo:"Sefsex",redo:"Err-d",resetLibrary:"Ales awennez n temkarḍit",createNewRoom:"Snulfu-d taxxamt tamaynutt",fullScreen:"Agdil aččuran",darkMode:"Askar imsulles",lightMode:"Askar afaw",zenMode:"Askar Zen",objectsSnapMode:"",exitZenMode:"Ffeɣ seg uskar Zen",cancel:"Sefsex",clear:"Sfeḍ",remove:"Kkes",embed:"",publishLibrary:"Ẓreg",submit:"Azen",confirm:"Sentem",embeddableInteractionButton:""},k8e={clearReset:"Ayagi ad isfeḍ akk taɣzut n usuneɣ. Tetḥeqqeḍ?",couldNotCreateShareableLink:"D awezɣi asnulfu n useɣwen n beṭṭu.",couldNotCreateShareableLinkTooBig:"D awezɣi asnulfu n useɣwen n beṭṭu. Asayes ɣezzif aṭas",couldNotLoadInvalidFile:"D awezɣi asali n ufaylu armeɣtu",importBackendFailed:"Takterḍ seg uɣawas n deffir ur teddi ara.",cannotExportEmptyCanvas:"D awezɣi asifeḍ n teɣzut n usuneɣ tilemt.",couldNotCopyToClipboard:"Ulamek anɣal ɣer tecfawit.",decryptFailed:"D awezɣi tukksa n uwgelhen i yisefka.",uploadedSecurly:"Asili yettwasɣelles s uwgelhen ixef s ixef, ayagi yebɣa ad d-yini belli aqeddac n Excalidraw akked medden ur zmiren ara ad ɣren agbur.",loadSceneOverridePrompt:"Asali n wunuɣ uffiɣ ad isemselsi agbur-inek (m) yellan. Tebɣiḍ ad tkemmeleḍ?",collabStopOverridePrompt:`Aḥbas n tɣimit ad yesefsex unuɣ-inek (m) yettwaḥerzen yakan s wudem adigan. Tetḥeqqeḍ?
|
||
(Ma tebɣiḍ ad teǧǧeḍ unuɣ-inek (m) adigan, mdel iccer n yiminig, deg umḍiq.)`,errorAddingToLibrary:"Ulamek ara yettwarnu uferdis ɣer temkarḍit",errorRemovingFromLibrary:"Ulamek ara yettwakkes uferdis si temkarḍit",confirmAddLibrary:"Ayagi adirnu talɣa (win) {{numShapes}} ɣer temkarḍit-inek (m). Tetḥeqqeḍ?",imageDoesNotContainScene:"Tugna-agi tettban-d ur tesɛi ara isefka n usayes. Tesremdeḍ aseddu n usayes deg usifeḍ?",cannotRestoreFromImage:"Asayes ulamek ara d-yettwarr seg ufaylu-agi n tugna",invalidSceneUrl:"Ulamek taktert n usayes seg URL i d-ittunefken. Ahat mačči d tameɣtut neɣ ur tegbir ara isefka JSON n Excalidraw.",resetLibrary:"Ayagi ad isfeḍ tamkarḍit-inek•m. Tetḥeqqeḍ?",removeItemsFromsLibrary:"Ad tekkseḍ {{count}} n uferdis (en) si temkarḍit?",invalidEncryptionKey:"Tasarut n uwgelhen isefk ad tesɛu 22 n yiekkilen. Amɛiwen srid yensa.",collabOfflineWarning:`Ulac tuqqna n internet.
|
||
Ibedilen-ik ur ttwaklasen ara!`},F8e={unsupportedFileType:"Anaw n ufaylu ur yettwasefrak ara.",imageInsertError:"D awezɣi tugra n tugna. Eɛreḍ tikkelt-nniḍen ardeqqal...",fileTooBig:"Afaylu meqqer aṭas. Tiddi tafellayt yurgen d {{maxSize}}.",svgImageInsertError:"D awezɣi tugra n tugna SVG. Acraḍ SVG yettban-d d armeɣtu.",failedToFetchImage:"",invalidSVGString:"SVG armeɣtu.",cannotResolveCollabServer:"Ulamek tuqqna s aqeddac n umyalel. Ma ulac uɣilif ales asali n usebter sakin eɛreḍ tikkelt-nniḍen.",importLibraryError:"Ur d-ssalay ara tamkarḍit",collabSaveFailed:"Ulamek asekles deg uzadur n yisefka deg ugilal. Ma ikemmel wugur, isefk ad teskelseḍ afaylu s wudem adigan akken ad tetḥeqqeḍ ur tesruḥuyeḍ ara amahil-inek•inem.",collabSaveFailed_sizeExceeded:"Ulamek asekles deg uzadur n yisefka deg ugilal, taɣzut n usuneɣ tettban-d temqer aṭas. Isefk ad teskelseḍ afaylu s wudem adigan akken ad tetḥeqqeḍ ur tesruḥuyeḍ ara amahil-inek•inem.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"Ayagi yezmer ad d-iglu s truẓi n<bold>Iferdisen n uḍris</bold>deg wunuɣen-inek.",line3:"Ad k-nsemter ad tsexsiḍ aɣewwar-agi. Tzemreḍ ad tḍefreḍ<link>isurifen-agi</link> ɣef wamek ara txedmeḍ.",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},x8e={selection:"Tafrayt",image:"Ger tugna",rectangle:"Asrem",diamond:"Ameɣṛun",ellipse:"Taglayt",arrow:"Taneccabt",line:"Izirig",freedraw:"Suneɣ",text:"Aḍris",library:"Tamkarḍit",lock:"Eǧǧ afecku n tefrayt yermed mbaɛd asuneɣ",penMode:"Askar n yimru - gdel tanalit",link:"Rnu/leqqem aseɣwen i talɣa yettwafernen",eraser:"Sfeḍ",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Afus (afecku n usmutti n tmuɣli)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},S8e={canvasActions:"Tigawin n teɣzut n usuneɣ",selectedShapeActions:"Tigawin n talɣa yettwafernen",shapes:"Talɣiwin"},L8e={canvasPanning:"Akken ad tesmuttiḍ taɣzut n usuneɣ, ṭṭef ṛṛuda n umumed, neɣ seqdec afecku Afus",linearElement:"Ssit akken ad tebduḍ aṭas n tenqiḍin, zuɣer i yiwen n yizirig",freeDraw:"Ssit yerna zuɣer, serreḥ ticki tfukeḍ",text:"Tixidest: tzemreḍ daɣen ad ternuḍ aḍris s usiti snat n tikkal anida tebɣiḍ s ufecku n tefrayt",embeddable:"",text_selected:"Ssit snat n tikkal neɣ ssed taqeffalt Kcem akken ad tẓergeḍ aḍris",text_editing:"Ssit Escape neɣ CtrlOrCmd+ENTER akken ad tfakkeḍ asiẓreg",linearElementMulti:"Ssit ɣef tenqiḍt taneggarut neɣ ssed taqeffalt Escape neɣ taqeffalt Kcem akken ad tfakkeḍ",lockAngle:"Tzemreḍ ad tḥettmeḍ tiɣmert s tuṭṭfa n tqeffalt SHIFT",resize:`Tzemreḍ ad tḥettemeḍ assaɣ s tuṭṭfa n tqeffalt SHIFT mi ara tettbeddileḍ tiddi,
|
||
ma teṭṭfeḍ ALT abeddel n tiddi ad yili si tlemmast`,resizeImage:`Tzemreḍ ad talseḍ tiddi s tilelli s tuṭṭfa n SHIFT,
|
||
ṭṭef ALT akken ad talseḍ tiddi si tlemmast`,rotate:"Tzemreḍ ad tḥettemeḍ tiɣemmar s tuṭṭfa n SHIFT di tuzzya",lineEditor_info:"Ssed ɣef CtrlOrCmd yerna ssit snat n tikkal neɣ ssed ɣef CtrlOrCmd + Kcem akken ad tẓergeḍ tineqqiḍin",lineEditor_pointSelected:`Ssed taqeffalt kkes akken ad tekkseḍ tanqiḍ (tinqiḍin),
|
||
CtrlOrCmd+D akken ad tsiselgeḍ, neɣ zuɣer akken ad tesmuttiḍ`,lineEditor_nothingSelected:`Fren tanqiḍt akken ad tẓergeḍ (ṭṭef SHIFT akken ad tferneḍ aṭas),
|
||
neɣ ṭṭef Alt akken ad ternuḍ tinqiḍin timaynutin`,placeImage:"Ssit akken ad tserseḍ tugna, neɣ ssit u zuɣer akken ad tesbaduḍ tiddi-ines s ufus",publishLibrary:"Siẓreg tamkarḍit-inek•inem",bindTextToElement:"Ssed ɣef kcem akken ad ternuḍ aḍris",deepBoxSelect:"Ṭṭef CtrlOrCmd akken ad tferneḍ s telqey, yerna ad trewleḍ i uzuɣer",eraserRevert:"Ssed Alt akken ad tsefsxeḍ iferdisen yettwacerḍen i tukksa",firefox_clipboard_write:"",disableSnapping:""},R8e={cannotShowPreview:"Ulamek abeqqeḍ n teskant",canvasTooBig:"Taɣzut n usuneɣ tezmer ad tili temeqqer aṭas.",canvasTooBigTip:"Tixidest: eɛreḍ ad tesqerbeḍ ciṭ iferdisen yembaɛaden."},N8e={headingMain:"Teḍra-d tuccḍa. Eɛreḍ <button>asali n usebter tikkelt-nniḍen.</button>",clearCanvasMessage:"Ma yella tulsa n usali ur tefri ara ugur, eɛreḍ <button>asfaḍ n teɣzut n usuneɣ.</button>",clearCanvasCaveat:" Ayagi ad d-iglu s usṛuḥu n umahil ",trackedToSentry:"Tuccḍa akked umesmagi {{eventId}} tettwasekles deg unagraw-nneɣ.",openIssueMessage:"Nḥuder aṭas akken ur nseddu ara talɣut n usayes-inek (m) di tuccḍa. Ma yella asayes-inek (m) mačči d amaẓlay, ttxil-k (m) xemmem ad ḍefreḍ <button>afecku n weḍfar n yibugen.</button> Ma ulac uɣilif seddu talɣut ukessar-agi s wenɣal akked usenṭeḍ di GitHub issue.",sceneContent:"Agbur n usayes:"},G8e={desc_intro:"Tzemreḍ ad d-teɛerḍeḍ medden ɣer usayes-inek (m) amiran akken ad ttekkin yid-k.",desc_privacy:"Ur tqelliq ara, tiɣimit tsseqdac awgelhen ixef s ixef, dɣa ayen ara tsunɣeḍ ad iqqim d amaẓlay. Ula d aqeddac-nneɣ ur yezmir ara ad iwali acu txeddemeḍ.",button_startSession:"Bdu tiɣimit",button_stopSession:"Ḥbes tiɣimit",desc_inProgressIntro:"Tiɣimit n umɛawen s srid tetteddu akka tura.",desc_shareLink:"Bḍu aseɣwen-agi akked medden ukud tebɣiḍ ad temɛawaneḍ:",desc_exitSession:"Aḥbas n tɣimit ad k (m) yesenser si texxamt, maca ad tizmireḍ ad tkemmeleḍ amahil s usayes, s wudem adigan. Ẓer belli ayagi ur yettḥaz ara imdanen-nniḍen, yerna ad izmiren ad kemmelen ad mɛawanen di tsuffeɣt-nnsen.",shareTitle:"Rnu ɣer tɣimit n umɛiwen s srid n Excalidraw"},U8e={title:"Tuccḍa"},M8e={disk_title:"Sekles deg uḍebsi",disk_details:"Sekles isefka n usayes deg ufaylu ansi ara tizmireḍ ad d-tketreḍ areḍqal.",disk_button:"Sekles deg ufaylu",link_title:"Aseɣwen n beṭṭu",link_details:"Sifeḍ am useɣwen n tɣuri kan.",link_button:"Sifeḍ deg useɣwen",excalidrawplus_description:"Sekles asayes-inek•inem di tallunt n umahil Excalidraw+.",excalidrawplus_button:"Sifeḍ",excalidrawplus_exportError:"Ulamek asifeḍ ɣer Excalidraw+ akka tura..."},T8e={blog:"Ɣeṛ ablug-nneɣ",click:"ssit",deepSelect:"Afran s telqey",deepBoxSelect:"Afran s telqey s tnaka, yerna ad tyrewleḍ i uzuɣer",curvedArrow:"Taneccabt izelgen",curvedLine:"Izirig izelgen",documentation:"Tasemlit",doubleClick:"ssit snat n tikkal",drag:"zuɣer",editor:"Amaẓrag",editLineArrowPoints:"Ẓreg tinqiḍin n yizirig/taneccabt",editText:"Ẓreg aḍris/rnu tabzimt",github:"Tufiḍ-d ugur? Azen-aɣ-d",howto:"Ḍfer imniren-nneɣ",or:"neɣ",preventBinding:"Seḥbes tuqqna n tneccabin",tools:"Ifecka",shortcuts:"Inegzumen n unasiw",textFinish:"Fak asiẓreg (amaẓrag n uḍris)",textNewLine:"Rnu ajerriḍ amaynut (amaẓrag n uḍris)",title:"Tallelt",view:"Tamuɣli",zoomToFit:"Simɣur akken ad twliḍ akk iferdisen",zoomToSelection:"Simɣur ɣer tefrayt",toggleElementLock:"Sekkeṛ/kkes asekker i tefrayt",movePageUpDown:"Smutti asebter d asawen/akessar",movePageLeftRight:"Smutti asebter s azelmaḍ/ayfus"},Y8e={title:"Sfeḍ taɣzut n usuneɣ"},H8e={title:"Suffeɣ-d tamkarḍit",itemName:"Isem n uferdis",authorName:"Isem n umeskar",githubUsername:"Isem n useqdac n GitHub",twitterUsername:"Isem n useqdac n Twitter",libraryName:"Isem n temkarḍit",libraryDesc:"Aglam n temkarḍit",website:"Asmel n web",placeholder:{authorName:"Isem neɣ isem n useqdac inek•inem",libraryName:"Isem n temkarḍit-inek•inem",libraryDesc:"Aglam n temkarḍit-inek•inem akken ad tɛiwneḍ medden ad fehmen aseqdec-inec",githubHandle:"Isem n useqdac n GitHub ( d anefrunan) akken ad tizmireḍ ad tisẓrigeḍ tamkarḍit ticki tuzneḍ-tt i uselken",twitterHandle:"Isem n useqdac n Twitter (d anefrunan) akken ad nẓer anwa ara nsenmer deg udellel di Twitter",website:"Aseɣwen ɣer usmel-inek•inem neɣ wayeḍ (d anefrunan)"},errors:{required:"Yettwasra",website:"Sekcem URL ameɣtu"},noteDescription:"Azen tamkarḍit-inek•inem akken ad teddu di <link>akaram azayez n temkarḍit</link>i yimdanen-nniḍen ara isqedcen deg wunuɣen-nnsen.",noteGuidelines:"Tamkarḍit teḥwaǧ ad tettwaqbel s ufus qbel. Ma ulac uɣilif ɣer <link>iwellihen</link> send ad tazneḍ. Tesriḍ amiḍan n GitHub akken ad tmmeslayeḍ yerna ad tgeḍ ibeddilen ma yelaq, maca mačči d ayen yettwaḥetmen.",noteLicense:"Mi tuzneḍ ad tqebleḍ akken tamkarḍit ad d-teffeɣ s <link>Turagt MIT, </link>ayen yebɣan ad d-yini belli yal yiwen izmer ad ten-iseqdec war tilist.",noteItems:"Yal aferdis n temkarḍit isefk ad isɛu isem-is i yiman-is akken ad yili wamek ara yettusizdeg. Iferdisen-agi n temkarḍit ad ddun:",atleastOneLibItem:"Ma ulac uɣilif fern ma drus yiwen n uferdis n temkarḍit akken ad tebduḍ",republishWarning:"Tamawt: kra n yiferdisen yettwafernen ttwacerḍen ffeɣen-d/ttwaznen. Isefk ad talseḍ tuzzna n yiferdisen anagar mi ara tleqqemeḍ tamkarḍit neɣ tuzzna yellan."},K8e={title:"Tamkarḍit tettwazen",content:"Tanemmirt-ik•im {{authorName}}. Tamkarḍit-inek•inem tettwazen i weselken. Tzemreḍ ad tḍefreḍ aẓayer<link>dagi</link>"},J8e={resetLibrary:"Ales awennez n temkarḍit",removeItemsFromLib:"Kkes iferdisen yettafernen si temkarḍit"},O8e={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},P8e={tooltip:"Unuɣen-inek (m) ttuwgelhnen seg yixef s ixef dɣa iqeddacen n Excalidraw werǧin ad ten-walin. ",link:"Amagrad ɣef uwgelhen ixef s ixef di Excalidraw"},_8e={angle:"Tiɣmeṛt",element:"Aferdis",elements:"Iferdisen",height:"Tattayt",scene:"Asayes",selected:"Yettwafren",storage:"Aḥraz",title:"",total:"Aɣrud",version:"Alqem",versionCopy:"Sit ad tneɣleḍ",versionNotAvailable:"Ur inuḥ ulqem",width:"Tehri"},W8e={addedToLibrary:"Yettwarna ɣer temkarḍit",copyStyles:"Iɣunab yettwaneɣlen.",copyToClipboard:"Yettwaɣel ɣer tecfawit.",copyToClipboardAsPng:`{{exportSelection}} yettwanɣel ɣer tecfawit am PNG
|
||
({{exportColorScheme}})`,fileSaved:"Afaylu yettwasekles.",fileSavedToFilename:"Yettwasekles di {filename}",canvas:"taɣzut n usuneɣ",selection:"tafrayt",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},q8e={transparent:"Afrawan",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},z8e={app:{center_heading:"Akk isefka-inek•inem ttwakelsen s wudem adigan deg yiminig-inek•inem.",center_heading_plus:"Tebɣiḍ ad tedduḍ ɣer Excalidraw+ deg umḍiq?",menuHint:"Asifeḍ, ismenyifen, tutlayin, ..."},defaults:{menuHint:"Asifeḍ, ismenyifen, d wayen-nniḍen...",center_heading:"",toolbarHint:"Fren afecku tebduḍ asuneɣ!",helpHint:"Inegzumen akked tallelt"}},Z8e={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},V8e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},j8e={title:"",button:"",description:"",syntax:"",preview:""},Ocr={labels:w8e,library:b8e,buttons:v8e,alerts:k8e,errors:F8e,toolBar:x8e,headings:S8e,hints:L8e,canvasError:R8e,errorSplash:N8e,roomDialog:G8e,errorDialog:U8e,exportDialog:M8e,helpDialog:T8e,clearCanvasDialog:Y8e,publishDialog:H8e,publishSuccessDialog:K8e,confirmDialog:J8e,imageExportDialog:O8e,encrypted:P8e,stats:_8e,toast:W8e,colors:q8e,welcomeScreen:z8e,colorPicker:Z8e,overwriteConfirm:V8e,mermaid:j8e}});var vSe={};yt(vSe,{alerts:()=>rSe,buttons:()=>tSe,canvasError:()=>oSe,clearCanvasDialog:()=>BSe,colorPicker:()=>ySe,colors:()=>mSe,confirmDialog:()=>ISe,default:()=>Pcr,encrypted:()=>QSe,errorDialog:()=>gSe,errorSplash:()=>sSe,errors:()=>iSe,exportDialog:()=>cSe,headings:()=>aSe,helpDialog:()=>CSe,hints:()=>nSe,imageExportDialog:()=>hSe,labels:()=>ASe,library:()=>eSe,mermaid:()=>bSe,overwriteConfirm:()=>wSe,publishDialog:()=>ESe,publishSuccessDialog:()=>dSe,roomDialog:()=>lSe,stats:()=>pSe,toast:()=>fSe,toolBar:()=>uSe,welcomeScreen:()=>DSe});var ASe,eSe,tSe,rSe,iSe,uSe,aSe,nSe,oSe,sSe,lSe,gSe,cSe,CSe,BSe,ESe,dSe,ISe,hSe,QSe,pSe,fSe,mSe,DSe,ySe,wSe,bSe,Pcr;var kSe=P(()=>{qt();ASe={paste:"Қою",pasteAsPlaintext:"",pasteCharts:"Диаграммаларды қою",selectAll:"Бәрін таңдау",multiSelect:"",moveCanvas:"",cut:"Қию",copy:"Көшіру",copyAsPng:"",copyAsSvg:"",copyText:"",copySource:"",convertToCode:"",bringForward:"",sendToBack:"",bringToFront:"",sendBackward:"",delete:"Жою",copyStyles:"Стильдерді көшіру",pasteStyles:"Стильдерді қою",stroke:"",background:"",fill:"",strokeWidth:"",strokeStyle:"",strokeStyle_solid:"",strokeStyle_dashed:"",strokeStyle_dotted:"",sloppiness:"",opacity:"",textAlign:"",edges:"",sharp:"",round:"",arrowheads:"Нұсқар ұштары",arrowhead_none:"Жоқ",arrowhead_arrow:"Нұсқар",arrowhead_bar:"Тосқауыл",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Қаріп өлшемі",fontFamily:"Қаріп тобы",addWatermark:"",handDrawn:"",normal:"Қалыпты",code:"",small:"Кіші",medium:"Орта",large:"Үлкен",veryLarge:"Өте үлкен",solid:"",hachure:"",zigzag:"",crossHatch:"",thin:"",bold:"",left:"Солға",center:"Ортаға",right:"Оңға",extraBold:"",architect:"",artist:"",cartoonist:"",fileTitle:"Файл атауы",colorPicker:"",canvasColors:"",canvasBackground:"",drawingCanvas:"",layers:"",actions:"",language:"Тіл",liveCollaboration:"",duplicateSelection:"Көшірме",untitled:"Атауысыз",name:"",yourName:"",madeWithExcalidraw:"",group:"",ungroup:"",collaborators:"",showGrid:"",addToLibrary:"",removeFromLibrary:"",libraryLoadingMessage:"",libraries:"",loadingScene:"",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},eSe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},tSe={clearReset:"",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"Жабу",selectLanguage:"Тілді таңдау",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"Mәзір",done:"Дайын",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},rSe={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},iSe={unsupportedFileType:"",imageInsertError:"Суретті жүктеу мүмкін болмады. Кейінірек қайталап көріңіз...",fileTooBig:"Файл өте үлкен. Максималды рұқсат етілген көлем {{maxSize}}.",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},uSe={selection:"",image:"Суретті қою",rectangle:"",diamond:"",ellipse:"",arrow:"Нұсқар",line:"",freedraw:"",text:"Мәтін",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},aSe={canvasActions:"",selectedShapeActions:"",shapes:""},nSe={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},oSe={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},sSe={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},lSe={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},gSe={title:"Қате"},cSe={disk_title:"",disk_details:"Сахна деректерін кейін қайта импорттауға болатын файлға экспорттаңыз.",disk_button:"Файлға сақтау",link_title:"Ортақ сілтеме",link_details:"Тек оқуға арналған сілтеме ретінде экспорттау.",link_button:"Сілтемеге экспорттау",excalidrawplus_description:"Сахнаны өзіңіздің Excalidraw+ жұмыс кеңістігінде сақтаңыз.",excalidrawplus_button:"Экспорт",excalidrawplus_exportError:"Қазіргі уақытта Excalidraw+ үшін экспорттау мүмкін емес..."},CSe={blog:"Біздің блогты оқу",click:"шерту",deepSelect:"",deepBoxSelect:"",curvedArrow:"Майысқан нұсқар",curvedLine:"Майысқан сызық",documentation:"Құжаттама",doubleClick:"қос шерту",drag:"апару",editor:"Өңдеу",editLineArrowPoints:"",editText:"",github:"Қате таптыңыз ба? Жолдаңыз",howto:"Біздің нұсқаулықтарды орындаңыз",or:"немесе",preventBinding:"Нұсқарды байланыстыруға жол бермеу",tools:"",shortcuts:"Пернетақта пәрмендері",textFinish:"Өңдеуді аяқтау (мәтіндік редактор)",textNewLine:"Жаңа жолға көшу (мәтіндік редактор)",title:"Көмек",view:"Көру",zoomToFit:"Барлық элементтердің көлеміне сәйкес үлкейту",zoomToSelection:"Таңдалғанды үлкейту",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},BSe={title:""},ESe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},dSe={title:"",content:""},ISe={resetLibrary:"",removeItemsFromLib:""},hSe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},QSe={tooltip:"Сіздің сызбаларыңыз өтпелі шифрлеу арқылы шифрланған, сондықтан Excalidraw серверлері оларды ешқашан көрмейді.",link:"Excalidraw қолданатын өтпелі шифрлеу туралы блог жазбасы"},pSe={angle:"Бұрыш",element:"Элемент",elements:"Элементтер",height:"Биіктігі",scene:"Сахна",selected:"Таңдалды",storage:"Сақтау көлемі",title:"",total:"Барлығы",version:"Нұсқа",versionCopy:"Көшіру үшін басыңыз",versionNotAvailable:"Бұл нұсқа қолжетімсіз",width:"Ені"},fSe={addedToLibrary:"",copyStyles:"Стильдер көшірілді.",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"Файл сақталды.",fileSavedToFilename:"{filename} сақталды",canvas:"",selection:"таңдау",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},mSe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},DSe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},ySe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},wSe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},bSe={title:"",button:"",description:"",syntax:"",preview:""},Pcr={labels:ASe,library:eSe,buttons:tSe,alerts:rSe,errors:iSe,toolBar:uSe,headings:aSe,hints:nSe,canvasError:oSe,errorSplash:sSe,roomDialog:lSe,errorDialog:gSe,exportDialog:cSe,helpDialog:CSe,clearCanvasDialog:BSe,publishDialog:ESe,publishSuccessDialog:dSe,confirmDialog:ISe,imageExportDialog:hSe,encrypted:QSe,stats:pSe,toast:fSe,colors:mSe,welcomeScreen:DSe,colorPicker:ySe,overwriteConfirm:wSe,mermaid:bSe}});var tLe={};yt(tLe,{alerts:()=>LSe,buttons:()=>SSe,canvasError:()=>MSe,clearCanvasDialog:()=>OSe,colorPicker:()=>$Se,colors:()=>jSe,confirmDialog:()=>WSe,default:()=>_cr,encrypted:()=>zSe,errorDialog:()=>HSe,errorSplash:()=>TSe,errors:()=>RSe,exportDialog:()=>KSe,headings:()=>GSe,helpDialog:()=>JSe,hints:()=>USe,imageExportDialog:()=>qSe,labels:()=>FSe,library:()=>xSe,mermaid:()=>eLe,overwriteConfirm:()=>ALe,publishDialog:()=>PSe,publishSuccessDialog:()=>_Se,roomDialog:()=>YSe,stats:()=>ZSe,toast:()=>VSe,toolBar:()=>NSe,welcomeScreen:()=>XSe});var FSe,xSe,SSe,LSe,RSe,NSe,GSe,USe,MSe,TSe,YSe,HSe,KSe,JSe,OSe,PSe,_Se,WSe,qSe,zSe,ZSe,VSe,jSe,XSe,$Se,ALe,eLe,_cr;var rLe=P(()=>{qt();FSe={paste:"បិទភ្ជាប់",pasteAsPlaintext:"បិទភ្ជាប់ជាអត្ថបទធម្មតា",pasteCharts:"បិទភ្ជាប់តារាង",selectAll:"ជ្រើសរើសទាំងអស់",multiSelect:"បន្ថែមធាតុទៅលើការជ្រើសរើស",moveCanvas:"ផ្លាស់ទីបាវ",cut:"កាត់",copy:"ចម្លង",copyAsPng:"ចម្លងទៅក្តារតម្បៀតខ្ទាស់ជា PNG",copyAsSvg:"ចម្លងទៅក្តារតម្បៀតខ្ទាស់ជា SVG",copyText:"ចម្លងទៅក្តារតម្បៀតខ្ទាស់ជាអត្ថបទ",copySource:"",convertToCode:"",bringForward:"នាំយកទៅលើ",sendToBack:"នាំយកទៅក្រោយបង្អស់",bringToFront:"នាំយកទៅលើបង្អស់",sendBackward:"នាំយកទៅក្រោយ",delete:"លុប",copyStyles:"ចម្លងរចនាប័ទ្ម",pasteStyles:"បិទភ្ជាប់រចនាប័ទ្ម",stroke:"ខ្វាច់",background:"ផ្ទៃខាងក្រោយ",fill:"បំពេញ",strokeWidth:"ទទឹងខ្វាច់",strokeStyle:"រចនាប័ទ្មរបស់ខ្វាច់",strokeStyle_solid:"តាន់",strokeStyle_dashed:"ដាច់ៗ",strokeStyle_dotted:"ចំណុចៗ",sloppiness:"រចនាប័ទ្មបន្ទាត់",opacity:"ភាពច្បាស់",textAlign:"តម្រឹមអត្ថបទ",edges:"គែម",sharp:"មុត",round:"រាងមូល",arrowheads:"ក្បាលព្រួញ",arrowhead_none:"គ្មាន",arrowhead_arrow:"ព្រួញ",arrowhead_bar:"របារ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"ត្រីកោណ",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"ទំហំពុម្ពអក្សរ",fontFamily:"ក្រុមពុម្ពអក្សរ",addWatermark:'បន្ថែមវ៉ាត់ធើម៉ាក "Made with Excalidraw"',handDrawn:"គូរដោយដៃ",normal:"ធម្មតា",code:"កូដ",small:"តូច",medium:"មធ្យម",large:"ធំ",veryLarge:"ធំខ្លាំង",solid:"តាន់",hachure:"Hachure",zigzag:"Zigzag",crossHatch:"បន្ទាត់ឆ្នូតៗ",thin:"ស្តើង",bold:"ដឹត",left:"ខាងឆ្វេង",center:"កណ្ដាល",right:"នៅខាងស្ដាំ",extraBold:"ដិតបន្ថែម",architect:"ស្ថាបត្យករ",artist:"សិល្បៈករ",cartoonist:"អ្នកគំនូរជីវចល",fileTitle:"ឈ្មោះឯកសារ",colorPicker:"ឧបករណ៍ជ្រើសពណ៌",canvasColors:"ប្រើលើបាវ",canvasBackground:"ផ្ទៃខាងក្រោយបាវ",drawingCanvas:"តំបន់គំនូរ",layers:"ស្រទាប់",actions:"សកម្មភាព",language:"ភាសា",liveCollaboration:"សហការគ្នាផ្ទាល់...",duplicateSelection:"ចម្លង",untitled:"គ្មានឈ្មោះ",name:"ឈ្មោះ",yourName:"ឈ្មោះរបស់អ្នក",madeWithExcalidraw:"បង្កើតជាមួយ Excalidraw",group:"ការជ្រើសរើសជាក្រុម",ungroup:"បំបែកក្រុមការជ្រើសរើសជាក្រុម",collaborators:"អ្នកសហការ",showGrid:"បង្ហាញក្រឡាចត្រង្គ",addToLibrary:"បន្ថែមទៅបណ្ណាល័យ",removeFromLibrary:"លុបចេញពីបណ្ណាល័យ",libraryLoadingMessage:"កំពុងផ្ទុកបណ្ណាល័យ...",libraries:"រកមើលបណ្ណាល័យ",loadingScene:"កំពុងផ្ទុកស៊ីន...",align:"តម្រឹម",alignTop:"តម្រឹមផ្នែកខាងលើ",alignBottom:"តម្រឹមផ្នែកខាងក្រោម",alignLeft:"តម្រឹមឆ្វេង",alignRight:"តម្រឹមស្តាំ",centerVertically:"កណ្តាលបញ្ឈរ",centerHorizontally:"កណ្តាលផ្ដេក",distributeHorizontally:"ចែកចាយផ្ដេក",distributeVertically:"ចែកចាយបញ្ឈរ",flipHorizontal:"ត្រឡប់ដោយផ្ដេក",flipVertical:"ត្រឡប់ដោយបញ្ឈរ",viewMode:"ម៉ូដបង្ហាញ",share:"ចែករំលែក",showStroke:"បង្ហាញឧបករណ៍ជ្រើសរើសពណ៌ខ្វាច់",showBackground:"បង្ហាញឧបករណ៍ជ្រើសរើសពណ៌ផ្ទៃខាងក្រោយ",toggleTheme:"បិទ/បើកប្រធានបទ",personalLib:"បណ្ណាល័យផ្ទាល់ខ្លួន",excalidrawLib:"បណ្ណាល័យ Excalidraw",decreaseFontSize:"បន្ថយទំហំពុម្ពអក្សរ",increaseFontSize:"បង្កើនទំហំពុម្ពអក្សរ",unbindText:"ស្រាយអត្ថបទ",bindText:"ភ្ជាប់អត្ថបទទៅប្រអប់",createContainerFromText:"រុំអត្ថបទក្នុងប្រអប់មួយ",link:{edit:"កែតំណភ្ជាប់",editEmbed:"",create:"បង្កើតតំណភ្ជាប់",createEmbed:"",label:"តំណ",labelEmbed:"",empty:""},lineEditor:{edit:"កែសម្រួលបន្ទាត់",exit:"ចាកចេញពីការកែសម្រួលបន្ទាត់"},elementLock:{lock:"ចាក់សោ",unlock:"ដោះសោ",lockAll:"ចាក់សោទាំងអស់",unlockAll:"ដោះសោទាំងអស់"},statusPublished:"ត្រូវបានបោះពុម្ពផ្សាយ",sidebarLock:"ទុករបារចំហៀងបើក",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},xSe={noItems:"មិនទាន់មានធាតុបន្ថែមទេ...",hint_emptyLibrary:"ជ្រើសរើសធាតុនៅលើបាវដើម្បីបន្ថែមវានៅទីនេះ ឬដំឡើងបណ្ណាល័យពីឃ្លាំងសាធារណៈខាងក្រោម។",hint_emptyPrivateLibrary:"ជ្រើសរើសធាតុនៅលើបាវដើម្បីបន្ថែមវានៅទីនេះ"},SSe={clearReset:"កំណត់បាវឡើងវិញ",exportJSON:"នាំចេញជាឯកសារ",exportImage:"នាំរូបភាពចេញ",export:"រក្សាទុកនៅ...",copyToClipboard:"ចម្លងទៅក្តារតម្បៀតខ្ទាស់",save:"រក្សាទុកទៅឯកសារបច្ចុប្បន្ន",saveAs:"រក្សាទុកជា",load:"បើក",getShareableLink:"យកតំណដែលអាចចែករំលែកបាន",close:"បិទ",selectLanguage:"រើសភាសា",scrollBackToContent:"រំកិលត្រឡប់ទៅមាតិកាវិញ",zoomIn:"ពង្រីក",zoomOut:"បង្រួម",resetZoom:"កំណត់ការពង្រីកឡើងវិញ",menu:"ម៉ឺនុយ",done:"រួចរាល់",edit:"កែ",undo:"ត្រឡប់វិញ",redo:"ធ្វើវិញ",resetLibrary:"កំណត់បណ្ណាល័យឡើងវិញ",createNewRoom:"បង្កើតបន្ទប់ថ្មី",fullScreen:"ពេញអេក្រង់",darkMode:"ម៉ូដងងឹត",lightMode:"ម៉ូដភ្លឺ",zenMode:"ម៉ូត Zen",objectsSnapMode:"",exitZenMode:"ចេញពី zen ម៉ូត",cancel:"បោះបង់",clear:"សម្អាត",remove:"ដកចេញ",embed:"",publishLibrary:"បោះពុម្ពផ្សាយ",submit:"ដាក់ស្នើ",confirm:"បញ្ជាក់",embeddableInteractionButton:""},LSe={clearReset:"វានឹងសម្អាតបាវទាំងមូល។ តើអ្នកប្រាកដឬអត់?",couldNotCreateShareableLink:"មិនអាចបង្កើតតំណដែលអាចចែករំលែកបានទេ។",couldNotCreateShareableLinkTooBig:"មិនអាចបង្កើតតំណដែលអាចចែករំលែកបាន៖ ស៊ីនធំពេក",couldNotLoadInvalidFile:"មិនអាចផ្ទុកឯកសារមិនត្រឹមត្រូវបានទេ។",importBackendFailed:"ការនាំចូលពីម៉ាស៊ីនមេបានបរាជ័យ។",cannotExportEmptyCanvas:"មិនអាចនាំចេញបាវទទេបានទេ។",couldNotCopyToClipboard:"មិនអាចចម្លងទៅក្ដារតម្បៀតខ្ទាស់បានទេ។",decryptFailed:"មិនអាចឌិគ្រីបទិន្នន័យបានទេ។",uploadedSecurly:"ការបង្ហោះត្រូវបានការពារដោយការអ៊ិនគ្រីបពីចុងដល់ចប់ មានន័យថា ទាំងម៉ាស៊ីនមេរបស់ Excalidraw ឬភាគីទីបីមិនអាចអានខ្លឹមសារបានទេ។",loadSceneOverridePrompt:"ការផ្ទុកគំនូរខាងក្រៅនឹងជំនួសមាតិកាដែលមានស្រាប់របស់អ្នក។ តើអ្នកចង់បន្តទេ?",collabStopOverridePrompt:`ការបញ្ឈប់សម័យនឹងសរសេរជាន់លើគំនូរដែលបានរក្សាទុកនៅលើកុំព្យូទ័ររបស់អ្នកពីមុន។ តើអ្នកប្រាកដឬអត់?
|
||
|
||
(ប្រសិនបើអ្នកចង់រក្សាគំនូរដែលនៅលើកុំព្យូទ័ររបស់អ្នក គ្រាន់តែបិទផ្ទាំងកម្មវិធីរុករក។)`,errorAddingToLibrary:"មិនអាចបន្ថែមធាតុទៅបណ្ណាល័យបានទេ",errorRemovingFromLibrary:"មិនអាចលុបធាតុចេញពីបណ្ណាល័យបានទេ",confirmAddLibrary:"វានឹងបន្ថែមរូបរាង {{numShapes}} ទៅបណ្ណាល័យរបស់អ្នក។ តើអ្នកប្រាកដឬអត់?",imageDoesNotContainScene:"រូបភាពនេះហាក់ដូចជាមិនមានទិន្នន័យស៊ីនណាមួយទេ។ តើអ្នកបានបើកការបង្កប់ស៊ីននៅពេលនាំចេញទេ?",cannotRestoreFromImage:"មិនអាចស្ដារស៊ីនពីឯកសាររូបភាពនេះបានទេ",invalidSceneUrl:"មិនអាចនាំចូលស៊ីនពី URL ដែលបានផ្តល់ឱ្យទេ។ វាមានទម្រង់ខុស ឬមិនមានទិន្នន័យ Excalidraw JSON ដែលត្រឹមត្រូវ។",resetLibrary:"វានឹងសម្អាតបាវទាំងមូល។ តើអ្នកប្រាកដឬអត់?",removeItemsFromsLibrary:"តើអ្នកប្រាកដថាចង់លុប {{count}} ធាតុចេញពីបណ្ណាល័យទេ?",invalidEncryptionKey:"សោអ៊ីនគ្រីបត្រូវតែមាន 22 តួអក្សរ។ ការសហការផ្ទាល់ត្រូវបានបិទ។",collabOfflineWarning:`គ្មានការតភ្ជាប់អ៊ីនធឺណិត។
|
||
ការផ្លាស់ប្តូររបស់អ្នកនឹងមិនត្រូវបានរក្សាទុកទេ!`},RSe={unsupportedFileType:"ប្រភេទឯកសារមិនត្រូវបានគាំទ្រទេ។",imageInsertError:"មិនអាចបញ្ចូលរូបភាពបានទេ។ សូមព្យាយាមម្តងទៀតនៅពេលក្រោយ……",fileTooBig:"ឯកសារធំពេក។ ទំហំអតិបរមាដែលអនុញ្ញាតគឺ {{maxSize}}។",svgImageInsertError:"មិនអាចបញ្ចូលរូបភាព SVG បានទេ។ ស្លាក SVG ហាក់ដូចជាមិនត្រឹមត្រូវ។",failedToFetchImage:"",invalidSVGString:"SVG មិនត្រឹមត្រូវ។",cannotResolveCollabServer:"មិនអាចភ្ជាប់ទៅម៉ាស៊ីនមេសហការផ្ទាល់បានទេ។ សូមផ្ទុកទំព័រឡើងវិញ ហើយព្យាយាមម្តងទៀត។",importLibraryError:"មិនអាចផ្ទុកបណ្ណាល័យបានទេ។",collabSaveFailed:"មិនអាចរក្សាទុកទៅម៉ាស៊ីនមេបានទេ។ ប្រសិនបើបញ្ហានៅតែបន្តកើតមាន អ្នកគួរតែរក្សាទុកឯកសាររបស់អ្នកនៅលើកុំព្យូទ័ររបស់អ្នកសិន ដើម្បីធានាថាការងាររបស់អ្នកមិនបាត់បង់។",collabSaveFailed_sizeExceeded:"មិនអាចរក្សាទុកទៅម៉ាស៊ីនមេបានទេ, ផ្ទាំងបាវហាក់ដូចជាធំពេក។ អ្នកគួរតែរក្សាទុកឯកសាររបស់អ្នកនៅលើកុំព្យូទ័ររបស់អ្នកសិន ដើម្បីធានាថាការងាររបស់អ្នកមិនបាត់បង់។",imageToolNotSupported:"",brave_measure_text_error:{line1:"អ្នកហាក់ដូចជាកំពុងប្រើប្រាស់កម្មវិធីរុករកតាមអ៊ីនធឺណិត Brave ជាមួយនឹងការកំណត់ <bold>ការពារស្នាមម្រាមដៃយ៉ាងធ្ងន់ធ្ងរ</bold> ត្រូវបានបើក។",line2:"វាអាចបណ្តាលឱ្យមានការបំបែក <bold>ធាតុអត្ថបទ</bold> នៅក្នុងគំនូររបស់អ្នក។",line3:"យើងណែនាំយ៉ាងមុតមាំឱ្យបិទការកំណត់នេះ។ អ្នកអាចអនុវត្តតាម <link>ជំហានទាំងនេះ</link> ដើម្បីបិទការកំណត់នេះ។",line4:"ប្រសិនបើការបិទការកំណត់នេះមិនបានជួសជុលការបង្ហាញធាតុអត្ថបទទេ សូមដាក់ <issueLink>issue</issueLink> នៅលើ GitHub ឬរាយការណ៍នៅលើ <discordLink>Discord</discordLink> របស់យើង"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},NSe={selection:"ការជ្រើសរើស",image:"បញ្ចូលរូបភាព",rectangle:"ចតុកោណកែង",diamond:"ពេជ្រ",ellipse:"ពងក្រពើ",arrow:"ព្រួញ",line:"បន្ទាត់",freedraw:"គូរ",text:"អត្ថបទ",library:"បណ្ណាល័យ",lock:"រក្សារឧបករណ៍ដែលបានជ្រើសរើសបន្ទាប់ពីគូររួច",penMode:"របៀបប៊ិច - ជៀសវាងការប៉ះ",link:"បន្ថែម/ធ្វើបច្ចុប្បន្នភាពតំណភ្ជាប់សម្រាប់រូបរាងដែលបានជ្រើសរើស",eraser:"ជ័រលុប",frame:"",magicframe:"",embeddable:"",laser:"",hand:"ដៃ (panning tool)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},GSe={canvasActions:"សកម្មភាពបាវ",selectedShapeActions:"សកម្មភាពរបស់រាងដែលបានជ្រើសរើស",shapes:"រាង"},USe={canvasPanning:"ដើម្បីផ្លាស់ទីបាវ សូមសង្កត់កង់កណ្ដុរឬគ្រាប់ចុចspacebarខណៈពេលកំពុងអូស ឬប្រើឧបករណ៍ដៃ។",linearElement:"ចុចដើម្បីបង្កើតចំណុចច្រើន អូសដើម្បីបង្កើតបន្ទាត់មួយ",freeDraw:"ចុចហើយអូស លែងពេលរួចរាល់",text:"គន្លឹះ៖ អ្នកក៏អាចបន្ថែមអត្ថបទដោយចុចពីរដងនៅកន្លែងណាមួយដោយប្រើឧបករណ៍ជ្រើសរើស",embeddable:"",text_selected:"ចុចពីរដង ឬចុច ENTER ដើម្បីកែសម្រួលអត្ថបទ",text_editing:"ចុច Escape ឬ CtrlOrCmd +ENTER ដើម្បីបញ្ចប់ការកែសម្រួល",linearElementMulti:"ចុចលើចំណុចចុងក្រោយ ឬចុច Esc/Enter ដើម្បីបញ្ចប់",lockAngle:"អ្នកអាចសង្កត់ Shift ដើម្បីកំណត់មុំ",resize:`អ្នកអាចសង្កត់ SHIFT ដើម្បីបងំ្ខឲមានសមាមាត្រ ខណៈពេលដែលប្តូរទំហំ
|
||
សង្កត់ ALT ដើម្បីប្តូរទំហំពីកណ្តាល`,resizeImage:`អ្នកអាចប្តូរទំហំរូបភាពដោយសេរីដោយសង្កត់ SHIFT,
|
||
សង្កត់ ALT ដើម្បីប្តូរទំហំពីកណ្តាល`,rotate:"អ្នកអាចសង្កត់ Shift ខណៈពេលកំពុងបង្វិល ដើម្បីកម្រិតមុំ",lineEditor_info:"សង្កត់ CtrlOrCmd ហើយចុចពីរដង ឬចុច CtrlOrCmd + Enter ដើម្បីកែសម្រួលចំណុច",lineEditor_pointSelected:`ចុច Delete ដើម្បីលុបចំណុច(ច្រើន)
|
||
CtrlOrCmd+D ដើម្បីចម្លង, ឬអូសដើម្បីផ្លាស់ទី`,lineEditor_nothingSelected:`ជ្រើសរើសចំណុចដែលត្រូវកែសម្រួល (សង្កត់ SHIFT ដើម្បីជ្រើសរើសច្រើនចំណុច)
|
||
ឬ សង្កត់ Alt ហើយចុចដើម្បីបន្ថែមចំណុចថ្មី។`,placeImage:"ចុចដើម្បីដាក់រូបភាព ឬចុចហើយអូសដើម្បីកំណត់ទំហំរបស់រូបភាពដោយដៃ",publishLibrary:"បោះពុម្ពផ្សាយបណ្ណាល័យផ្ទាល់ខ្លួនរបស់អ្នក",bindTextToElement:"ចុច Enter ដើម្បីបន្ថែមអត្ថបទ",deepBoxSelect:"សង្កត់ CtrlOrCmd ដើម្បីជ្រើសរើសយ៉ាងជ្រៅ និងជៀសវាងការអូស",eraserRevert:"សង្កត់ Alt ដើម្បីដកការជ្រើសរើសធាតុដែលត្រូវបានសម្គាល់សម្រាប់ការលុប",firefox_clipboard_write:`បើកមុខងារនេះដោយកំណត់ទង់ "dom.events.asyncClipboard.clipboardItem" ទៅ "true"
|
||
ដើម្បីផ្លាស់ប្តូរទង់កម្មវិធីរុករកនៅក្នុង Firefox សូមចូលទៅកាន់ទំព័រ "about:config"។`,disableSnapping:""},MSe={cannotShowPreview:"មិនអាចបង្ហាញការមើលជាមុនបាន",canvasTooBig:"បាវអាចមានទំហំធំពេក។",canvasTooBigTip:"គន្លឹះ៖ ព្យាយាមផ្លាស់ទីធាតុដែលឆ្ងាយបំផុតឱ្យទៅជិតគ្នាបន្តិច។"},TSe={headingMain:"បានជួបប្រទះកំហុសមួយ។ សូមព្យាយាម <button>ផ្ទុកទំព័រឡើងវិញ</button>។",clearCanvasMessage:"ប្រសិនបើការផ្ទុកឡើងវិញមិនអាចដោះស្រាយកំហុសបានទេ សូមសាកល្បង <button>សម្អាតបាវ។</button>",clearCanvasCaveat:" នេះនឹងបណ្តាលឱ្យបាត់បង់ការងារ ",trackedToSentry:"កំហុសជាមួយលេខសម្គាល់ {{eventId}} ត្រូវបានតាមដាននៅលើប្រព័ន្ធរបស់យើង។",openIssueMessage:"យើងមានការប្រុងប្រយ័ត្នខ្លាំងណាស់ក្នុងការមិនបញ្ចូលព័ត៌មានរបស់ស៊ីនរបស់អ្នកទៅលើកំហុស។ ប្រសិនបើស៊ីនរបស់អ្នកមិនមានលក្ខណៈឯកជនទេ សូមពិចារណាបន្តទៅកាន់ <button>កម្មវិធីតាមដានកំហុសរបស់យើង។</button> សូមបញ្ចូលព័ត៌មានខាងក្រោមដោយចម្លង និងបិទភ្ជាប់វាទៅក្នុងបញ្ហារបស់ GitHub។",sceneContent:"មាតិកាបាវ៖"},YSe={desc_intro:"អ្នកអាចអញ្ជើញអ្នកដទៃឱ្យសហការជាមួយអ្នកនៅលើស៊ីនបច្ចុប្បន្ន។",desc_privacy:"កុំបារម្ភ វគ្គប្រើការអ៊ិនគ្រីបពីចុងដល់ចប់ ដូច្នេះអ្វីដែលអ្នកគូរនឹងនៅតែជាឯកជន។ សូម្បីតែម៉ាស៊ីនមេរបស់យើងក៏នឹងមិនអាចមើលឃើញអ្វីដែលអ្នកកំពុងធ្វើដែរ។",button_startSession:"ចាប់ផ្តើមវគ្គ",button_stopSession:"បញ្ឈប់វគ្គ",desc_inProgressIntro:"វគ្គសហការផ្ទាល់ឥឡូវនេះកំពុងដំណើរការ។",desc_shareLink:"ចែករំលែកតំណនេះជាមួយអ្នកដែលអ្នកចង់សហការជាមួយ៖",desc_exitSession:"ការបញ្ឈប់វគ្គនេះនឹងផ្តាច់អ្នកចេញពីបន្ទប់ ប៉ុន្តែអ្នកនឹងនៅតែអាចបន្តប្រើបាវនៅលើកុំព្យូទ័ររបស់អ្នក។ សូមចំណាំថាវានឹងមិនប៉ះពាល់ដល់អ្នកប្រើប្រាស់ផ្សេងទៀតទេ ហើយពួកគេនឹងនៅតែអាចបន្តសហការលើកំណែរបស់ពួកគេ។",shareTitle:"ចូលរួមវគ្គសហការផ្ទាល់នៅលើ Excalidraw"},HSe={title:"មានកំហុស"},KSe={disk_title:"រក្សាទុកទៅថាស",disk_details:"នាំចេញទិន្នន័យរបស់ស៊ីនជាឯកសារដែលអ្នកអាចនាំចូលនៅពេលក្រោយ។",disk_button:"រក្សាទុកក្នុងឯកសារ",link_title:"តំណដែលអាចចែករំលែកបាន",link_details:"នាំចេញជាតំណបានតែមើលឬអាន។",link_button:"នាំចេញជាតំណ",excalidrawplus_description:"រក្សាទុកស៊ីនទៅកន្លែងធ្វើការ Excalidraw+ របស់អ្នក។",excalidrawplus_button:"នាំចេញ",excalidrawplus_exportError:"មិនអាចនាំចេញទៅ Excalidraw+ បានទេនៅពេលនេះ..."},JSe={blog:"អានប្លក់របស់យើង",click:"ចុច",deepSelect:"ការជ្រើសរើសជាក្រុម",deepBoxSelect:"ជ្រើសរើសជាក្រុម និង ជៀសវាងការអូសទាញផ្លាស់ទី",curvedArrow:"ព្រួញកោង",curvedLine:"ព្រួញកោង",documentation:"ឯកសារ",doubleClick:"ចុចពីរដង",drag:"អូស",editor:"កម្មវិធីនិពន្ធ",editLineArrowPoints:"កែសម្រួលចំណុចនៃបន្ទាត់ ឬព្រួញ",editText:"បន្ថែម ឬកែសម្រួលអត្ថបទ",github:"រកឃើញបញ្ហា? ដាក់ស្នើ",howto:"ឯកសារជំនួយ",or:"ឬ",preventBinding:"ទប់ស្កាត់ការចងព្រួញ",tools:"ឧបករណ៍",shortcuts:"ផ្លូវកាត់ក្តារចុច",textFinish:"បញ្ចប់ការកែសម្រួល (កម្មវិធីនិពន្ធអត្ថបទ)",textNewLine:"ចុះបន្ទាត់ (កម្មវិធីនិពន្ធអត្ថបទ)",title:"ជំនួយ",view:"បង្ហាញ",zoomToFit:"ធ្វើមាត្រដ្ឋានឱ្យសមនឹងធាតុទាំងអស់។",zoomToSelection:"ពង្រីកទៅការជ្រើសរើស",toggleElementLock:"ចាក់សោ/ដោះសោការជ្រើសរើស",movePageUpDown:"ផ្លាស់ទីទំព័រឡើងលើ/ចុះក្រោម",movePageLeftRight:"ផ្លាស់ទីទំព័រទៅឆ្វេង/ស្ដាំ"},OSe={title:"សម្អាតបាវ"},PSe={title:"បោះពុម្ពបណ្ណាល័យ",itemName:"ឈ្មោះធាតុ",authorName:"ឈ្មោះអ្នកនិពន្ធ",githubUsername:"ឈ្មោះអ្នកប្រើ GitHub",twitterUsername:"ឈ្មោះអ្នកប្រើ Twitter",libraryName:"ឈ្មោះបណ្ណាល័យ",libraryDesc:"ការពិពណ៌នាអំពីបណ្ណាល័យ",website:"គេហទំព័រ",placeholder:{authorName:"ឈ្មោះរបស់អ្នក ឬឈ្មោះអ្នកប្រើប្រាស់",libraryName:"ឈ្មោះបណ្ណាល័យរបស់អ្នក",libraryDesc:"ការពិពណ៌នាអំពីបណ្ណាល័យរបស់អ្នក នឹងអនុញ្ញាតឱ្យអ្នកផ្សេងយល់ពីការប្រើប្រាស់របស់វា។",githubHandle:"ឈ្មោះអ្នកប្រើ GitHub (ជាជម្រើស) ដូច្នេះអ្នកអាចកែសម្រួលបណ្ណាល័យបាននៅពេលដាក់ស្នើសម្រាប់ការពិនិត្យ",twitterHandle:"ឈ្មោះអ្នកប្រើប្រាស់ Twitter (ជាជម្រើស) ដូច្នេះយើងដឹងថាអ្នកណាដែលត្រូវផ្តល់ក្រេឌីតនៅពេលផ្សព្វផ្សាយតាម Twitter",website:"ភ្ជាប់ទៅគេហទំព័រផ្ទាល់ខ្លួនរបស់អ្នក ឬគេហទំព័រផ្សេងទៀត (ជាជម្រើស)"},errors:{required:"ត្រូវបានទាមទារ",website:"សូមវាយបញ្ចូល URL ដែលត្រឹមត្រូវ"},noteDescription:"ដាក់ស្នើបណ្ណាល័យរបស់អ្នកដើម្បីដាក់បញ្ចូលក្នុង <link>ឃ្លាំងបណ្ណាល័យសាធារណៈ</link> សម្រាប់ឲ្យអ្នកផ្សេងប្រើក្នុងគំនូររបស់ពួកគេ។",noteGuidelines:"បណ្ណាល័យត្រូវតែអនុម័តដោយដៃជាមុនសិន។ សូមអាន <link>ការណែនាំ</link> មុនពេលដាក់ស្នើ។ ការប្រាស្រ័យទាក់ទងជាបន្តបន្ទាប់ និងការផ្លាស់ប្តូរបណ្ណាល័យទាមទារឱ្យអ្នកមានគណនី GitHub ប៉ុន្តែមិនត្រូវបានទាមទារយ៉ាងតឹងរ៉ឹងទេ។",noteLicense:"តាមរយៈការដាក់ស្នើ អ្នកយល់ព្រមថាបណ្ណាល័យនឹងត្រូវបានបោះពុម្ពផ្សាយក្រោម <link>អាជ្ញាប័ណ្ណ MIT</link> ដែលមានន័យយ៉ាងខ្លី អ្នកណាក៏អាចប្រើប្រាស់វាបានដោយគ្មានការរឹតត្បិត។",noteItems:"ធាតុនីមួយៗនៅក្នុងបណ្ណាល័យត្រូវតែមានឈ្មោះផ្ទាល់ខ្លួនដើម្បីយើងអាចត្រងវាបាន។ ធាតុខាងក្រោមនឹងត្រូវបានរួមបញ្ចូល:",atleastOneLibItem:"សូមជ្រើសរើសយ៉ាងហោចណាស់ធាតុបណ្ណាល័យមួយដើម្បីចាប់ផ្តើម",republishWarning:"ចំណាំ៖ ធាតុដែលត្រូវបានជ្រើសរើសមួយចំនួនត្រូវបានសម្គាល់ថាបានបោះពុម្ព/បញ្ជូនរួចរាល់ហើយ។ អ្នកគួរតែបញ្ជូនធាតុឡើងវិញនៅពេលដែលធ្វើបច្ចុប្បន្នភាពបណ្ណាល័យដែលមានស្រាប់ ឬការបញ្ជូន។"},_Se={title:"បណ្ណាល័យត្រូវបានដាក់ស្នើ",content:"សូមអរគុណ {{authorName}}។ បណ្ណាល័យរបស់អ្នកត្រូវបានបញ្ជូនមកពិនិត្យ។ សូមចុច <link>ទីនេះ</link> ដើម្បីតាមដានស្ថានភាពនៃការដាក់ស្នើនេះ។"},WSe={resetLibrary:"កំណត់បណ្ណាល័យឡើងវិញ",removeItemsFromLib:"លុបធាតុដែលបានជ្រើសរើសចេញពីបណ្ណាល័យ"},qSe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},zSe={tooltip:"គំនូររបស់អ្នកត្រូវបានអ៊ិនគ្រីបពីចុងដល់ចប់ ដូច្នេះម៉ាស៊ីនមេរបស់ Excalidraw នឹងមិនឃើញពួកវាទេ។",link:"ប្លក់ផុសលើការអ៊ិនគ្រីបពីចុងដល់ចុងក្នុង Excalidraw"},ZSe={angle:"មុំ",element:"ធាតុ",elements:"ធាតុច្រើន",height:"កម្ពស់",scene:"ស៊ីន",selected:"បានជ្រើសរើស",storage:"ការផ្ទុក",title:"ស្ថិតិសម្រាប់ nerds",total:"សរុប",version:"ជំនាន់:",versionCopy:"ចុចដើម្បីចម្លង",versionNotAvailable:"កំណែមិនអាចប្រើបាន",width:"ទទឹង"},VSe={addedToLibrary:"បានបន្ថែមទៅបណ្ណាល័យ",copyStyles:"រចនាប័ទ្មត្រូវបានចម្លង។",copyToClipboard:"បានចម្លងទៅក្ដារតម្បៀតខ្ទាស់។",copyToClipboardAsPng:`បានចម្លង {{exportSelection}} ទៅក្ដារតម្បៀតខ្ទាស់ជា PNG
|
||
({{exportColorScheme}})`,fileSaved:"ឯកសារត្រូវបានរក្សាទុក។",fileSavedToFilename:"បានរក្សាទុកនៅក្នុង {filename}",canvas:"តំបន់គំនូរ",selection:"ការជ្រើសរើស",pasteAsSingleElement:`ប្រើ {{shortcut}} ដើម្បីបិទភ្ជាប់ជាធាតុតែមួយ,
|
||
ឬបិទភ្ជាប់ទៅក្នុងកម្មវិធីនិពន្ធអត្ថបទដែលមានស្រាប់`,unableToEmbed:"",unrecognizedLinkFormat:""},jSe={transparent:"ថ្លាមើលធ្លុះ",black:"ពណ៍ខ្មៅ",white:"ពណ៌ស",red:"ពណ៌ក្រហម",pink:"ពណ៌ផ្កាឈូក",grape:"ពណ៌ទំពាំងបាយជូរ",violet:"ពណ៌ស្វាយ",gray:"ពណ៌ប្រផេះ",blue:"ពណ៌ខៀវ",cyan:"ពណ៌ផ្ទៃមេឃ",teal:"ពណ៌ខៀវបៃតង",green:"ពណ៌បៃតង",yellow:"ពណ៌លឿង",orange:"ពណ៌ទឹកក្រូច",bronze:"ពណ៌សំរិទ្ធ"},XSe={app:{center_heading:"ទិន្នន័យទាំងអស់របស់អ្នក ត្រូវបានរក្សាទុកនៅក្នុង browser របស់អ្នក ។",center_heading_plus:"តើអ្នកចង់ទៅ Excalidraw+ វិញ ឬ មែន?",menuHint:"នាំចេញ ចំណូលចិត្ត ភាសា ..."},defaults:{menuHint:"ការនាំចេញ ចំណូលចិត្ត និង ច្រើនទៀត...",center_heading:"ងាយស្រួល ។ ធ្វើ ។ ដ្យាក្រាម ។",toolbarHint:"ជ្រើសរើសឧបករណ៍មួយ និង ចាប់ផ្តើមគូរ!",helpHint:"ផ្លូវកាត់ & ជំនួយ"}},$Se={mostUsedCustomColors:"ពណ៌ផ្ទាល់ខ្លួនដែលប្រើច្រើនបំផុត",colors:"ពណ៌",shades:"ស្រមោល",hexCode:"លេខកូដ hex",noShades:"មិនមានស្រមោលសម្រាប់ពណ៌នេះទេ"},ALe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},eLe={title:"",button:"",description:"",syntax:"",preview:""},_cr={labels:FSe,library:xSe,buttons:SSe,alerts:LSe,errors:RSe,toolBar:NSe,headings:GSe,hints:USe,canvasError:MSe,errorSplash:TSe,roomDialog:YSe,errorDialog:HSe,exportDialog:KSe,helpDialog:JSe,clearCanvasDialog:OSe,publishDialog:PSe,publishSuccessDialog:_Se,confirmDialog:WSe,imageExportDialog:qSe,encrypted:zSe,stats:ZSe,toast:VSe,colors:jSe,welcomeScreen:XSe,colorPicker:$Se,overwriteConfirm:ALe,mermaid:eLe}});var SLe={};yt(SLe,{alerts:()=>nLe,buttons:()=>aLe,canvasError:()=>cLe,clearCanvasDialog:()=>hLe,colorPicker:()=>kLe,colors:()=>bLe,confirmDialog:()=>fLe,default:()=>Wcr,encrypted:()=>DLe,errorDialog:()=>ELe,errorSplash:()=>CLe,errors:()=>oLe,exportDialog:()=>dLe,headings:()=>lLe,helpDialog:()=>ILe,hints:()=>gLe,imageExportDialog:()=>mLe,labels:()=>iLe,library:()=>uLe,mermaid:()=>xLe,overwriteConfirm:()=>FLe,publishDialog:()=>QLe,publishSuccessDialog:()=>pLe,roomDialog:()=>BLe,stats:()=>yLe,toast:()=>wLe,toolBar:()=>sLe,welcomeScreen:()=>vLe});var iLe,uLe,aLe,nLe,oLe,sLe,lLe,gLe,cLe,CLe,BLe,ELe,dLe,ILe,hLe,QLe,pLe,fLe,mLe,DLe,yLe,wLe,bLe,vLe,kLe,FLe,xLe,Wcr;var LLe=P(()=>{qt();iLe={paste:"붙여넣기",pasteAsPlaintext:"일반 텍스트로 붙여넣기",pasteCharts:"차트 붙여넣기",selectAll:"전체 선택",multiSelect:"선택 영역에 추가하기",moveCanvas:"캔버스 이동",cut:"잘라내기",copy:"복사",copyAsPng:"클립보드로 PNG 이미지 복사",copyAsSvg:"클립보드로 SVG 이미지 복사",copyText:"클립보드로 텍스트 복사",copySource:"소스코드를 클립보드로 복사",convertToCode:"코드로 변환",bringForward:"앞으로 가져오기",sendToBack:"맨 뒤로 보내기",bringToFront:"맨 앞으로 가져오기",sendBackward:"뒤로 보내기",delete:"삭제",copyStyles:"스타일 복사하기",pasteStyles:"스타일 붙여넣기",stroke:"선 색상",background:"배경색",fill:"채우기",strokeWidth:"선 굵기",strokeStyle:"선",strokeStyle_solid:"실선",strokeStyle_dashed:"파선",strokeStyle_dotted:"점선",sloppiness:"대충 긋기",opacity:"불투명도",textAlign:"텍스트 정렬",edges:"가장자리",sharp:"뾰족하게",round:"둥글게",arrowheads:"화살촉",arrowhead_none:"없음",arrowhead_arrow:"화살표",arrowhead_bar:"막대",arrowhead_circle:"원",arrowhead_circle_outline:"원 (외곽선)",arrowhead_triangle:"삼각형",arrowhead_triangle_outline:"삼각형 (외곽선)",arrowhead_diamond:"마름모",arrowhead_diamond_outline:"마름모 (외곽선)",fontSize:"글자 크기",fontFamily:"글꼴",addWatermark:'"Made with Excalidraw" 추가',handDrawn:"손글씨",normal:"일반",code:"코드",small:"작게",medium:"보통",large:"크게",veryLarge:"매우 크게",solid:"단색",hachure:"평행선",zigzag:"지그재그",crossHatch:"교차선",thin:"얇게",bold:"굵게",left:"왼쪽",center:"가운데",right:"오른쪽",extraBold:"매우 굵게",architect:"건축가",artist:"예술가",cartoonist:"만화가",fileTitle:"파일 이름",colorPicker:"색상 선택기",canvasColors:"캔버스에서 사용되었음",canvasBackground:"캔버스 배경",drawingCanvas:"캔버스 그리기",layers:"레이어",actions:"동작",language:"언어",liveCollaboration:"실시간 협업...",duplicateSelection:"복제",untitled:"제목 없음",name:"이름",yourName:"이름 입력",madeWithExcalidraw:"Made with Excalidraw",group:"그룹 생성",ungroup:"그룹 해제",collaborators:"공동 작업자",showGrid:"그리드 보기",addToLibrary:"라이브러리에 추가",removeFromLibrary:"라이브러리에서 제거",libraryLoadingMessage:"라이브러리 불러오는 중…",libraries:"라이브러리 찾기",loadingScene:"화면 불러오는 중…",align:"정렬",alignTop:"상단 정렬",alignBottom:"하단 정렬",alignLeft:"왼쪽 정렬",alignRight:"오른쪽 정렬",centerVertically:"수직으로 중앙 정렬",centerHorizontally:"수평으로 중앙 정렬",distributeHorizontally:"수평으로 분배",distributeVertically:"수직으로 분배",flipHorizontal:"좌우반전",flipVertical:"상하반전",viewMode:"보기 모드",share:"공유",showStroke:"윤곽선 색상 선택기 열기",showBackground:"배경 색상 선택기 열기",toggleTheme:"테마 전환",personalLib:"개인 라이브러리",excalidrawLib:"Excalidraw 라이브러리",decreaseFontSize:"폰트 사이즈 줄이기",increaseFontSize:"폰트 사이즈 키우기",unbindText:"텍스트 분리",bindText:"텍스트를 컨테이너에 결합",createContainerFromText:"텍스트를 컨테이너에 담기",link:{edit:"링크 수정하기",editEmbed:"링크 & 임베드 수정하기",create:"링크 만들기",createEmbed:"링크 & 임베드 만들기",label:"링크",labelEmbed:"링크 & 임베드",empty:"링크를 지정하지 않았습니다"},lineEditor:{edit:"선 수정하기",exit:"선 편집기 종료"},elementLock:{lock:"잠금",unlock:"잠금 해제",lockAll:"모두 잠금",unlockAll:"모두 잠금 해제"},statusPublished:"게시됨",sidebarLock:"사이드바 유지",selectAllElementsInFrame:"프레임의 모든 요소 선택",removeAllElementsFromFrame:"프레임의 모든 요소 삭제",eyeDropper:"캔버스에서 색상 고르기",textToDiagram:"텍스트를 다이어그램으로",prompt:"프롬프트"},uLe={noItems:"추가된 아이템 없음",hint_emptyLibrary:"캔버스 위에서 아이템을 선택하여 여기에 추가를 하거나, 아래의 공용 저장소에서 라이브러리를 설치하세요.",hint_emptyPrivateLibrary:"캔버스 위에서 아이템을 선택하여 여기 추가하세요."},aLe={clearReset:"캔버스 초기화",exportJSON:"파일로 내보내기",exportImage:"이미지 내보내기",export:"다른 이름으로 저장...",copyToClipboard:"클립보드로 복사",save:"현재 파일에 저장",saveAs:"다른 이름으로 저장",load:"열기",getShareableLink:"공유 가능한 링크 생성",close:"닫기",selectLanguage:"언어 선택",scrollBackToContent:"콘텐츠 영역으로 스크롤하기",zoomIn:"확대",zoomOut:"축소",resetZoom:"확대/축소 초기화",menu:"메뉴",done:"완료",edit:"수정",undo:"실행 취소",redo:"다시 실행",resetLibrary:"라이브러리 리셋",createNewRoom:"방 만들기",fullScreen:"전체화면",darkMode:"다크 모드",lightMode:"밝은 모드",zenMode:"젠 모드",objectsSnapMode:"다른 요소들에 정렬시키기",exitZenMode:"젠 모드 종료하기",cancel:"취소",clear:"지우기",remove:"삭제",embed:"임베딩 토글",publishLibrary:"게시하기",submit:"제출",confirm:"확인",embeddableInteractionButton:"클릭하여 상호작용"},nLe={clearReset:"모든 작업 내용이 초기화됩니다. 계속하시겠습니까?",couldNotCreateShareableLink:"공유 가능한 링크를 생성할 수 없습니다.",couldNotCreateShareableLinkTooBig:"공유 가능한 링크를 생성할 수 없습니다: 화면이 너무 큽니다.",couldNotLoadInvalidFile:"유효하지 않은 파일입니다.",importBackendFailed:"서버로부터 불러 오지 못했습니다.",cannotExportEmptyCanvas:"빈 캔버스를 내보낼 수 없습니다.",couldNotCopyToClipboard:"클립보드로 복사하지 못했습니다.",decryptFailed:"데이터를 복호화하지 못했습니다.",uploadedSecurly:"업로드는 종단 간 암호화로 보호되므로 Excalidraw 서버 및 타사가 콘텐츠를 읽을 수 없습니다.",loadSceneOverridePrompt:"외부 파일을 불러 오면 기존 콘텐츠가 대체됩니다. 계속 진행할까요?",collabStopOverridePrompt:`협업 세션을 종료하면 로컬 저장소에 있는 그림이 협업 세션의 그림으로 대체됩니다. 진행하겠습니까?
|
||
|
||
(로컬 저장소에 있는 그림을 유지하려면 현재 브라우저 탭을 닫아주세요.)`,errorAddingToLibrary:"아이템을 라이브러리에 추가 할수 없습니다",errorRemovingFromLibrary:"라이브러리에서 아이템을 삭제할수 없습니다",confirmAddLibrary:"{{numShapes}}개의 모양이 라이브러리에 추가됩니다. 계속하시겠어요?",imageDoesNotContainScene:"이 이미지는 화면 데이터를 포함하고 있지 않은 것 같습니다. 내보낼 때 화면을 첨부하도록 설정하셨나요?",cannotRestoreFromImage:"이미지 파일에서 화면을 복구할 수 없었습니다",invalidSceneUrl:"제공된 URL에서 화면을 가져오는데 실패했습니다. 주소가 잘못되거나, 유효한 Excalidraw JSON 데이터를 포함하고 있지 않은 것일 수 있습니다.",resetLibrary:"당신의 라이브러리를 초기화 합니다. 계속하시겠습니까?",removeItemsFromsLibrary:"{{count}}개의 아이템을 라이브러리에서 삭제하시겠습니까?",invalidEncryptionKey:"암호화 키는 반드시 22글자여야 합니다. 실시간 협업이 비활성화됩니다.",collabOfflineWarning:`인터넷에 연결되어 있지 않습니다.
|
||
변경 사항들이 저장되지 않습니다!`},oLe={unsupportedFileType:"지원하지 않는 파일 형식 입니다.",imageInsertError:"이미지를 삽입할 수 없습니다. 나중에 다시 시도 하십시오",fileTooBig:"파일이 너무 큽니다. 최대 크기는 {{maxSize}} 입니다.",svgImageInsertError:"SVG 이미지를 삽입하지 못했습니다. SVG 문법이 유효하지 않은 것 같습니다.",failedToFetchImage:"이미지를 가져오는데 실패했습니다.",invalidSVGString:"유효하지 않은 SVG입니다.",cannotResolveCollabServer:"협업 서버에 접속하는데 실패했습니다. 페이지를 새로고침하고 다시 시도해보세요.",importLibraryError:"라이브러리를 불러오지 못했습니다.",collabSaveFailed:"데이터베이스에 저장하지 못했습니다. 문제가 계속 된다면, 작업 내용을 잃지 않도록 로컬 저장소에 저장해 주세요.",collabSaveFailed_sizeExceeded:"데이터베이스에 저장하지 못했습니다. 캔버스가 너무 큰 거 같습니다. 문제가 계속 된다면, 작업 내용을 잃지 않도록 로컬 저장소에 저장해 주세요.",imageToolNotSupported:"이미지가 비활성화 되었습니다.",brave_measure_text_error:{line1:"귀하께서는 <bold>강력한 지문 차단 설정</bold>이 활성화된 Brave browser를 사용하고 계신 것 같습니다.",line2:"이 기능으로 인해 화이트보드의 <bold>텍스트 요소들</bold>이 손상될 수 있습니다.",line3:"저희는 해당 기능을 비활성화하는 것을 강력히 권장 드립니다. 비활성화 방법에 대해서는 <link>이 게시글</link>을 참고해주세요.",line4:"만약 이 설정을 껐음에도 텍스트 요소들이 올바르게 표시되지 않는다면, 저희 Github에 <issueLink>이슈</issueLink>를 올려주시거나 <discordLink>Discord</discordLink>로 알려주세요."},libraryElementTypeError:{embeddable:"임베드 요소들은 라이브러리에 추가할 수 없습니다.",iframe:"IFrame 요소들은 라이브러리에 추가할 수 없습니다.",image:"라이브러리에 이미지 삽입 기능은 곧 지원될 예정입니다!"},asyncPasteFailedOnRead:"붙여넣는데 실패했습니다. (시스템 클립보드를 읽는데 실패했습니다)",asyncPasteFailedOnParse:"붙여넣는데 실패했습니다.",copyToSystemClipboardFailed:"클립보드로 복사하는데 실패했습니다."},sLe={selection:"선택",image:"이미지 삽입",rectangle:"사각형",diamond:"다이아몬드",ellipse:"타원",arrow:"화살표",line:"선",freedraw:"그리기",text:"텍스트",library:"라이브러리",lock:"선택된 도구 유지하기",penMode:"펜 모드 - 터치 방지",link:"선택한 도형에 대해서 링크를 추가/업데이트",eraser:"지우개",frame:"프레임 도구",magicframe:"와이어프레임을 코드로",embeddable:"웹 임베드",laser:"레이저 포인터",hand:"손 (패닝 도구)",extraTools:"다른 도구",mermaidToExcalidraw:"Mermaid에서 불러오기",magicSettings:"AI 설정"},lLe={canvasActions:"캔버스 동작",selectedShapeActions:"선택된 모양 동작",shapes:"모양"},gLe={canvasPanning:"캔버스를 옮기려면 마우스 휠이나 스페이스바를 누르고 드래그하거나, 손 도구를 사용하기",linearElement:"여러 점을 연결하려면 클릭하고, 직선을 그리려면 바로 드래그하세요.",freeDraw:"클릭 후 드래그하세요. 완료되면 놓으세요.",text:"팁: 선택 툴로 아무 곳이나 더블 클릭해 텍스트를 추가할 수도 있습니다.",embeddable:"클릭 및 드래그하여 웹사이트 임베드 만들기",text_selected:"더블 클릭 또는 ENTER를 눌러서 텍스트 수정",text_editing:"ESC나 CtrlOrCmd+ENTER를 눌러서 수정을 종료하기",linearElementMulti:"마지막 지점을 클릭하거나 Esc 또는 Enter 키를 눌러 완료하세요.",lockAngle:"SHIFT 키를 누르면서 회전하면 각도를 제한할 수 있습니다.",resize:`SHIFT 키를 누르면서 조정하면 크기의 비율이 제한됩니다.
|
||
ALT를 누르면서 조정하면 중앙을 기준으로 크기를 조정합니다.`,resizeImage:`SHIFT를 눌러서 자유롭게 크기를 변경하거나,
|
||
ALT를 눌러서 중앙을 고정하고 크기를 변경하기`,rotate:"SHIFT 키를 누르면서 회전하면 각도를 제한할 수 있습니다.",lineEditor_info:"꼭짓점을 수정하려면 CtrlOrCmd 키를 누르고 더블 클릭을 하거나 CtrlOrCmd + Enter를 누르세요.",lineEditor_pointSelected:`Delete 키로 꼭짓점을 제거하거나,
|
||
CtrlOrCmd+D 로 복제하거나, 드래그 해서 이동시키기`,lineEditor_nothingSelected:`꼭짓점을 선택해서 수정하거나 (SHIFT를 눌러서 여러개 선택),
|
||
Alt를 누르고 클릭해서 새로운 꼭짓점 추가하기`,placeImage:"클릭해서 이미지를 배치하거나, 클릭하고 드래그해서 사이즈를 조정하기",publishLibrary:"당신만의 라이브러리를 게시하기",bindTextToElement:"Enter 키를 눌러서 텍스트 추가하기",deepBoxSelect:"CtrlOrCmd 키를 눌러서 깊게 선택하고, 드래그하지 않도록 하기",eraserRevert:"Alt를 눌러서 삭제하도록 지정된 요소를 되돌리기",firefox_clipboard_write:'이 기능은 설정에서 "dom.events.asyncClipboard.clipboardItem" 플래그를 "true"로 설정하여 활성화할 수 있습니다. Firefox에서 브라우저 플래그를 수정하려면, "about:config" 페이지에 접속하세요.',disableSnapping:"CtrlOrCmd 키를 눌러서 다른 요소와의 정렬 무시하기"},cLe={cannotShowPreview:"미리보기를 볼 수 없습니다",canvasTooBig:"캔버스가 너무 큽니다.",canvasTooBigTip:"팁: 멀리 있는 요소들을 좀 더 가까이로 붙여 보세요."},CLe={headingMain:"오류가 발생했습니다. <button>페이지 새로고침</button>",clearCanvasMessage:"새로고침으로 해결되지 않을 경우, <button>캔버스 비우기</button>",clearCanvasCaveat:" 작업 내용을 잃게 됩니다 ",trackedToSentry:"오류 {{eventId}} 가 시스템에서 발견되었습니다.",openIssueMessage:"저희는 화면 정보를 오류에 포함하지 않도록 매우 주의하고 있습니다. 혹시 화면에 민감한 내용이 없다면 이곳에 업로드를 고려해주세요.<button>버그 트래커</button> 아래 정보를 GitHub 이슈에 복사 및 붙여넣기해 주세요.",sceneContent:"화면 내용:"},BLe={desc_intro:"현재 화면에 공동 작업자를 초대해 협업할 수 있습니다.",desc_privacy:"안심하세요, 세션은 종단 간 암호화를 사용하므로 당신의 작업은 비공개로 유지되며 서버조차도 작업 내용을 알 수 없습니다.",button_startSession:"세션 시작",button_stopSession:"세션 중단",desc_inProgressIntro:"실시간 협업 세션이 진행 중입니다.",desc_shareLink:"공동 작업자에게 이 링크를 공유하세요.",desc_exitSession:"세션을 중단하면 연결은 끊어지나 작업을 이어갈 수 있습니다. 이 작업은 다른 작업자에게 영향을 미치지 않으며 각자의 공동 작업은 계속 유지됩니다.",shareTitle:"Excalidraw의 실시간 협업 세션에 참가하기"},ELe={title:"오류"},dLe={disk_title:"디스크에 저장",disk_details:"나중에 다시 불러올 수 있도록 화면 데이터를 내보냅니다.",disk_button:"파일로 저장",link_title:"공유 가능한 링크 생성",link_details:"읽기 전용 링크로 내보냅니다.",link_button:"링크로 내보내기",excalidrawplus_description:"화면을 당신의 Excalidraw+ 작업 공간으로 저장합니다.",excalidrawplus_button:"내보내기",excalidrawplus_exportError:"지금은 Excalidraw+로 내보낼 수 없습니다..."},ILe={blog:"블로그 읽어보기",click:"클릭",deepSelect:"깊게 선택",deepBoxSelect:"영역을 깊게 선택하고, 드래그하지 않도록 하기",curvedArrow:"곡선 화살표",curvedLine:"곡선",documentation:"설명서",doubleClick:"더블 클릭",drag:"드래그",editor:"에디터",editLineArrowPoints:"직선 / 화살표 꼭짓점 수정",editText:"텍스트 수정 / 라벨 추가",github:"문제 제보하기",howto:"가이드 참고하기",or:"또는",preventBinding:"화살표가 붙지 않게 하기",tools:"도구",shortcuts:"키보드 단축키",textFinish:"편집 완료 (텍스트 에디터)",textNewLine:"줄바꿈(텍스트 에디터)",title:"도움말",view:"보기",zoomToFit:"모든 요소가 보이도록 확대/축소",zoomToSelection:"선택 영역으로 확대/축소",toggleElementLock:"선택한 항목을 잠금/잠금 해제",movePageUpDown:"페이지 움직이기 위/아래",movePageLeftRight:"페이지 움직이기 좌/우"},hLe={title:"캔버스 지우기"},QLe={title:"라이브러리 게시하기",itemName:"아이템 이름",authorName:"저자명",githubUsername:"깃허브 사용자이름",twitterUsername:"트위터 사용자이름",libraryName:"라이브러리 이름",libraryDesc:"라이브러리 설명",website:"웹사이트",placeholder:{authorName:"이름 또는 사용자명",libraryName:"당신의 라이브러리 이름",libraryDesc:"사람들에게 라이브러리의 용도를 알기 쉽게 설명해주세요",githubHandle:"GitHub 사용자명 (선택), 제출한 뒤에도 심사를 위해서 라이브러리를 수정할 때 사용됩니다",twitterHandle:"Twitter 사용자명 (선택), Twitter를 통해서 홍보할 때 제작자를 밝히기 위해 사용됩니다",website:"개인 웹사이트나 다른 어딘가의 링크 (선택)"},errors:{required:"필수사항",website:"유효한 URL을 입력하세요"},noteDescription:"당신의 라이브러리를 제출하여 <link>공개 라이브러리 저장소</link>에서 다른 사람들의 그림에 사용할 수 있도록 하세요.",noteGuidelines:"라이브러리는 먼저 수동으로 승인되어야 합니다. 제출하기 전에 <link>가이드라인</link>을 먼저 읽어보세요. 의견을 공유하거나 변경사항을 만들기 위해선 GitHub 계정이 필요하지만, 반드시 필요하진 않습니다.",noteLicense:"제출함으로써, 당신은 라이브러리가 <link>MIT 라이선스 </link>하에 배포됨을, 즉 아무나 제약 없이 사용할 수 있음에 동의합니다.",noteItems:"각각의 라이브러리는 분류할 수 있도록 고유한 이름을 가져야 합니다. 다음의 라이브러리 항목이 포함됩니다:",atleastOneLibItem:"최소한 하나의 라이브러리를 선택해주세요",republishWarning:"참고: 선택된 항목의 일부는 이미 제출/게시되었습니다. 기존의 라이브러리나 제출물을 업데이트하는 경우에만 제출하세요."},pLe={title:"라이브러리 제출됨",content:"{{authorName}}님 감사합니다. 당신의 라이브러리가 심사를 위해 제출되었습니다. 진행 상황을<link>여기에서 확인하실 수 있습니다.</link>"},fLe={resetLibrary:"라이브러리 리셋",removeItemsFromLib:"선택한 항목을 라이브러리에서 제거"},mLe={header:"이미지 내보내기",label:{withBackground:"배경",onlySelected:"선택한 항목만",darkMode:"다크 모드",embedScene:"화면을 담기",scale:"크기",padding:"여백"},tooltip:{embedScene:"화면 정보가 내보내는 PNG/SVG 파일에 저장되어 이후에 파일에서 화면을 복구할 수 있습니다. 파일 크기가 증가합니다."},title:{exportToPng:"PNG로 내보내기",exportToSvg:"SVG로 내보내기",copyPngToClipboard:"클립보드로 PNG 복사"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"클립보드로 복사"}},DLe={tooltip:"그림은 종단 간 암호화되므로 Excalidraw의 서버는 절대로 내용을 알 수 없습니다.",link:"Excalidraw의 종단 간 암호화에 대한 블로그 포스트"},yLe={angle:"각도",element:"요소",elements:"요소",height:"높이",scene:"화면",selected:"선택됨",storage:"저장공간",title:"덕후들을 위한 통계",total:"합계",version:"버전",versionCopy:"복사하려면 클릭",versionNotAvailable:"해당 버전 사용 불가능",width:"너비"},wLe={addedToLibrary:"라이브러리에 추가되었습니다",copyStyles:"스타일 복사.",copyToClipboard:"클립보드로 복사.",copyToClipboardAsPng:`{{exportSelection}}를 클립보드에 PNG로 복사했습니다
|
||
({{exportColorScheme}})`,fileSaved:"파일이 저장되었습니다.",fileSavedToFilename:"{filename} 로 저장되었습니다",canvas:"캔버스",selection:"선택한 요소",pasteAsSingleElement:"단일 요소로 붙여넣거나, 기존 텍스트 에디터에 붙여넣으려면 {{shortcut}} 을 사용하세요.",unableToEmbed:"이 URL의 임베딩이 허용되지 않았습니다. GitHub에 이슈를 남겨서 이 URL이 화이트리스트에 등재될 수 있도록 요청하세요",unrecognizedLinkFormat:'임베딩하려는 링크의 형식이 잘못된 것 같습니다. 원본 사이트에서 제공하는 "임베딩" 텍스트를 그대로 붙여 넣어 주세요'},bLe={transparent:"투명",black:"블랙",white:"화이트",red:"레드",pink:"핑크",grape:"그레이프",violet:"바이올렛",gray:"그레이",blue:"블루",cyan:"시안",teal:"틸",green:"그린",yellow:"옐로우",orange:"오렌지",bronze:"브론즈"},vLe={app:{center_heading:"모든 데이터는 브라우저에 안전하게 저장됩니다.",center_heading_plus:"대신 Excalidraw+로 이동하시겠습니까?",menuHint:"내보내기, 설정, 언어, ..."},defaults:{menuHint:"내보내기, 설정, 등등...",center_heading:"간단하게 만드는 다이어그램.",toolbarHint:"도구를 선택하고, 그리세요!",helpHint:"단축키 & 도움말"}},kLe={mostUsedCustomColors:"가장 많이 사용된 색상들",colors:"색상",shades:"색조",hexCode:"Hex 코드",noShades:"사용할 수 있는 색조가 없음"},FLe={action:{exportToImage:{title:"이미지로 내보내기",button:"이미지로 내보내기",description:"나중에 다시 불러올 수 있도록 화면 데이터를 이미지로 내보냅니다."},saveToDisk:{title:"디스크에 저장",button:"디스크에 저장",description:"나중에 다시 불러올 수 있도록 화면 데이터를 내보냅니다."},excalidrawPlus:{title:"Excalidraw+",button:"Excalidraw+로 내보내기",description:"화면을 당신의 Excalidraw+ 작업 공간으로 저장합니다."}},modal:{loadFromFile:{title:"파일에서 불러오기",button:"파일에서 불러오기",description:"파일을 불러오면 <bold>현재 작성된 데이터를 덮어쓰게 됩니다</bold>.<br></br>다음 옵션 중 하나를 선택하여 작업물을 백업해 둘 수 있습니다."},shareableLink:{title:"주소에서 불러오기",button:"컨텐츠를 덮어쓰기",description:"외부 작업물을 불러오면 <bold>현재 작성된 데이터를 덮어쓰게 됩니다</bold>.<br></br>다음 옵션 중 하나를 선택하여 작업물을 백업해 둘 수 있습니다."}}},xLe={title:"Mermaid에서 불러오기",button:"삽입하기",description:"지금은 <flowchartLink>순서도</flowchartLink>,<sequenceLink> 시퀀스</sequenceLink>, <classLink>클래스 </classLink>다이어그램만 지원합니다. 다른 형식들은 Excalidraw에서는 이미지로 표시됩니다.",syntax:"Mermaid 구문",preview:"미리보기"},Wcr={labels:iLe,library:uLe,buttons:aLe,alerts:nLe,errors:oLe,toolBar:sLe,headings:lLe,hints:gLe,canvasError:cLe,errorSplash:CLe,roomDialog:BLe,errorDialog:ELe,exportDialog:dLe,helpDialog:ILe,clearCanvasDialog:hLe,publishDialog:QLe,publishSuccessDialog:pLe,confirmDialog:fLe,imageExportDialog:mLe,encrypted:DLe,stats:yLe,toast:wLe,colors:bLe,welcomeScreen:vLe,colorPicker:kLe,overwriteConfirm:FLe,mermaid:xLe}});var aRe={};yt(aRe,{alerts:()=>ULe,buttons:()=>GLe,canvasError:()=>KLe,clearCanvasDialog:()=>qLe,colorPicker:()=>rRe,colors:()=>eRe,confirmDialog:()=>VLe,default:()=>qcr,encrypted:()=>XLe,errorDialog:()=>PLe,errorSplash:()=>JLe,errors:()=>MLe,exportDialog:()=>_Le,headings:()=>YLe,helpDialog:()=>WLe,hints:()=>HLe,imageExportDialog:()=>jLe,labels:()=>RLe,library:()=>NLe,mermaid:()=>uRe,overwriteConfirm:()=>iRe,publishDialog:()=>zLe,publishSuccessDialog:()=>ZLe,roomDialog:()=>OLe,stats:()=>$Le,toast:()=>ARe,toolBar:()=>TLe,welcomeScreen:()=>tRe});var RLe,NLe,GLe,ULe,MLe,TLe,YLe,HLe,KLe,JLe,OLe,PLe,_Le,WLe,qLe,zLe,ZLe,VLe,jLe,XLe,$Le,ARe,eRe,tRe,rRe,iRe,uRe,qcr;var nRe=P(()=>{qt();RLe={paste:"دانانەوە",pasteAsPlaintext:"دایبنێ وەک دەقی سادە",pasteCharts:"دانانەوەی خشتەکان",selectAll:"دیاریکردنی هەموو",multiSelect:"زیادکردنی بۆ دیاریکراوەکان",moveCanvas:"تابلۆ بجوڵێنە",cut:"بڕین",copy:"لەبەرگرتنەوە",copyAsPng:"PNGلەبەرگرتنەوە بۆ تەختەنووس وەک",copyAsSvg:"SVGلەبەرگرتنەوە بۆ تەختەنووس وەک",copyText:"لەبەرگرتنەوە بۆ تەختەنووس وەک نوسین",copySource:"",convertToCode:"",bringForward:"بهێنە پێشتر",sendToBack:"بنێرە دواوە",bringToFront:"بهێنە پێشەوە",sendBackward:"بنێرە دواتر",delete:"سڕینەوە",copyStyles:"لەبەرگرتنەوەی ستایل",pasteStyles:"دانانەوەی ستایل",stroke:"هێڵکار",background:"پاشبنەما",fill:"پڕکردنەوە",strokeWidth:"پانی هێڵکاری",strokeStyle:"ستایلی هێڵکاری",strokeStyle_solid:"سادە",strokeStyle_dashed:"پچڕ پچڕ",strokeStyle_dotted:"خاڵدار",sloppiness:"لێژی",opacity:"ڕوونی",textAlign:"ڕێکخستنی دەق",edges:"لێوارەکان",sharp:"تیژ",round:"چەماوە",arrowheads:"سەرەتیر",arrowhead_none:"هیچیان",arrowhead_arrow:"تیر",arrowhead_bar:"هێڵ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"سێگۆشە",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"قەبارەی فۆنت",fontFamily:"خێزانی فۆنت",addWatermark:'زیادبکە "Made with Excalidraw"',handDrawn:"دەست کێشراو",normal:"ئاسایی",code:"کۆد",small:"بچووک",medium:"ناوەند",large:"گهوره",veryLarge:"زۆر گهوره",solid:"سادە",hachure:"هاچور",zigzag:"زیگزاگ",crossHatch:"کرۆس هاتچ",thin:"تەنک",bold:"تۆخ",left:"چەپ",center:"ناوهند",right:"ڕاست",extraBold:"زۆر تۆخ",architect:"تەلارساز",artist:"هونەرمەند",cartoonist:"کارتۆنی",fileTitle:"ناوی فایل",colorPicker:"ڕەنگ هەڵگر",canvasColors:"بەکارهاتووە لەسەر تابلۆ",canvasBackground:"پاشبنەمای تابلۆ",drawingCanvas:"کێشانی تابلۆ",layers:"چینەکان",actions:"کردارەکان",language:"زمان",liveCollaboration:"هاوکاریکردنی زیندو...",duplicateSelection:"لەبەرگرتنەوە",untitled:"بێ ناونیشان",name:"ناو",yourName:"ناوەکەت",madeWithExcalidraw:"دروستکراوە بە Excalidraw",group:"دیاریکردنی گروپ",ungroup:"گروپی دیاریکراوەکان لابەرە",collaborators:"هاوکارەکان",showGrid:"گرید نیشانبدە",addToLibrary:"زیادکردن بۆ کتێبخانە",removeFromLibrary:"لابردن لە کتێبخانە",libraryLoadingMessage:"...بارکردنی کتێبخانە",libraries:"گەڕانی کتێبخانە",loadingScene:"...بارکردنی دیمەنەکە",align:"لاچەنکردن",alignTop:"لاچەنکردن بۆ سەرەوە",alignBottom:"لاچەنکردن بۆ خوارەوە",alignLeft:"لاچەنکردن بۆ چەپ",alignRight:"لاچەنکردن بۆ ڕاست",centerVertically:"بە ستونی ناوەند بکە",centerHorizontally:"بە ئاسۆی ناوەند بکە",distributeHorizontally:"بە ئاسۆی دابەشی بکە",distributeVertically:"بە ستونی دابەشی بکە",flipHorizontal:"هەڵگەڕانەوەی ئاسۆیی",flipVertical:"هەڵگەڕانەوەی ستونی",viewMode:"دۆخی بینین",share:"هاوبەشی پێکردن",showStroke:"ڕەنگهەڵگری هێڵکار نیشانبدە",showBackground:"ڕەنگهەڵگری باکگراوند نیشانبدە",toggleTheme:"دۆخی ڕوکار بگۆڕە",personalLib:"کتێبخانەی کەسی",excalidrawLib:"کتێبخانەی Excalidraw",decreaseFontSize:"کەمکردنەوەی قەبارەی فۆنت",increaseFontSize:"زایدکردنی قەبارەی فۆنت",unbindText:"دەقەکە جیابکەرەوە",bindText:"دەقەکە ببەستەوە بە کۆنتەینەرەکەوە",createContainerFromText:"دەق لە چوارچێوەیەکدا بپێچە",link:{edit:"دەستکاریکردنی بەستەر",editEmbed:"",create:"دروستکردنی بەستەر",createEmbed:"",label:"بەستەر",labelEmbed:"",empty:""},lineEditor:{edit:"دەستکاری کردنی دێڕ",exit:"دەرچوون لە دەستکاریکەری دێڕ"},elementLock:{lock:"قفڵکردن",unlock:"کردنەوە",lockAll:"قفڵکردنی هەموو",unlockAll:"کردنەوەی قفلی هەمووی"},statusPublished:"بڵاوکراوەتەوە",sidebarLock:"هێشتنەوەی شریتی لا بە کراوەیی",selectAllElementsInFrame:"هەموو توخمەکانی ناو چوارچێوەکە دیاری بکە",removeAllElementsFromFrame:"هەموو توخمەکانی ناو چوارچێوەکە لابەرە",eyeDropper:"ڕەنگێک لەسەر تابلۆکە هەڵبژێرە",textToDiagram:"",prompt:""},NLe={noItems:"هێشتا هیچ بڕگەیەک زیاد نەکراوە...",hint_emptyLibrary:"شتێک لەسەر تابلۆ هەڵبژێرە بۆ ئەوەی لێرە زیادی بکەیت، یان کتێبخانەیەک لە کۆگا گشتیەکەوە دابمەزرێنە، لە خوارەوە.",hint_emptyPrivateLibrary:"شتێک لەسەر تابلۆ هەڵبژێرە بۆ ئەوەی لێرە زیادی بکەیت."},GLe={clearReset:"تابلۆکە وەک سەرەتا لێبکەوە",exportJSON:"هەناردەکردن بۆ فایل",exportImage:"وێنە هەناردە بکە...",export:"پاشەکەوت بکە بۆ...",copyToClipboard:"لهبهری بگرهوه بۆ تهختهنووس",save:"پاشەکەوت بکە بۆ فایلی بەردەست",saveAs:"پاشەکەوتکردن وەک",load:"بکەرەوە",getShareableLink:"بەستەری هاوبەشیپێکردن بەدەستبهێنە",close:"داخستن",selectLanguage:"دیاریکردنی زمان",scrollBackToContent:"گەڕاندنەوە بۆ ناوەڕۆک",zoomIn:"نزیک خستنەوە",zoomOut:"دوورخستنەوە",resetZoom:"ڕێستکردنی زووم",menu:"پێڕست",done:"تەواو",edit:"دەستکاری کردن",undo:"گهڕانهوه بۆ پێشوو",redo:"گهڕانهوه بۆ داهاتوو",resetLibrary:"ڕێکخستنەوەی کتێبخانە",createNewRoom:"ژوورێکی نوێ دروست بکە",fullScreen:"پڕ بە شاشە",darkMode:"دۆخی تاریک",lightMode:"دۆخی ڕووناک",zenMode:"دۆخی زێن",objectsSnapMode:"",exitZenMode:"بەجێهێشتنی دۆخی زێن",cancel:"هەڵوەشاندنەوە",clear:"خاوێنکردنەوە",remove:"لابردن",embed:"",publishLibrary:"بڵاوکردنەوە",submit:"پێشکەشکردن",confirm:"دوپاتکردنەوە",embeddableInteractionButton:""},ULe={clearReset:"ئەمە هەموو تابلۆکە خاوێن دەکاتەوە، دڵنیایت؟",couldNotCreateShareableLink:"نەتوانرا بەستەری هاوبەشیپێکردن دروستبکرێت",couldNotCreateShareableLinkTooBig:"نەتوانرا بەستەری هاوبەشیپێکردن دروستبکرێت: دیمەنەکە زۆر گەورەیە",couldNotLoadInvalidFile:"ناتوانرا باربکرێت، فایلەکە دروستنییە",importBackendFailed:"هاوردەکردن لە پاشکۆکە سەرکەوتوو نەبوو.",cannotExportEmptyCanvas:"ناتوانرێت تابلۆی بەتاڵ هەناردەبکرێت.",couldNotCopyToClipboard:"ناتوانرا لەبەربگیرێتەوە بۆ تەختەنوس",decryptFailed:"ناتوانرا داتاکان شیبکرێتەوە",uploadedSecurly:"بارکردنەکە بە کۆدکردنی کۆتایی بۆ کۆتایی پارێزراوە، ئەمەش واتە سێرڤەری Excalidraw و لایەنی سێیەم ناتوانن ناوەڕۆکەکە بخوێننەوە.",loadSceneOverridePrompt:"بارکردنی وێنەکێشانی دەرەکی جێگەی ناوەڕۆکی بەردەستت دەگرێتەوە. دەتەوێت بەردەوام بیت؟",collabStopOverridePrompt:`وەستاندنی دانیشتنەکە وێنەکێشانی پێشووت دەنووسێتەوە کە لە ناوخۆدا هەڵگیراوە. ئایا دڵنیایت?
|
||
|
||
(ئەگەر دەتەوێت وێنەکێشانی ناوخۆیی خۆت بهێڵیتەوە، لەبری ئەوە تەنها تابی وێبگەڕەکە دابخە).`,errorAddingToLibrary:"نەیتوانی بڕگە زیاد بکات بۆ کتێبخانە",errorRemovingFromLibrary:"نەیتوانی بڕگە لە کتێبخانە بسڕێتەوە",confirmAddLibrary:"ئەمە {{numShapes}} شێوە(ەکان) زیاد دەکات بۆ کتێبخانەکەت. ئایا دڵنیایت?",imageDoesNotContainScene:"وادیارە ئەم وێنەیە هیچ داتایەکی دیمەنی تێدا نییە. ئایا دیمەنی چەسپاندنت لە کاتی هەناردەدا چالاک کردووە؟",cannotRestoreFromImage:"ناتوانرێت دیمەنەکە بگەڕێندرێتەوە لەم فایلە وێنەیە",invalidSceneUrl:'ناتوانێت دیمەنەکە هاوردە بکات لە URL ی دابینکراو. یان نادروستە، یان داتای "ئێکسکالیدراو" JSON ی دروستی تێدا نییە.',resetLibrary:"ئەمە کتێبخانەکەت خاوێن دەکاتەوە. ئایا دڵنیایت?",removeItemsFromsLibrary:"سڕینەوەی {{count}} ئایتم(ەکان) لە کتێبخانە؟",invalidEncryptionKey:"کلیلی رەمزاندن دەبێت لە 22 پیت بێت. هاوکاری ڕاستەوخۆ لە کارخراوە.",collabOfflineWarning:`هێڵی ئینتەرنێت بەردەست نییە.
|
||
گۆڕانکارییەکانت سەیڤ ناکرێن!`},MLe={unsupportedFileType:"جۆری فایلی پشتگیری نەکراو.",imageInsertError:"نەیتوانی وێنە داخڵ بکات. دواتر هەوڵ بدە",fileTooBig:"فایلەکە زۆر گەورەیە. زۆرترین قەبارەی ڕێگەپێدراو {{maxSize}}}.",svgImageInsertError:"نەیتوانی وێنەی SVG داخڵ بکات. نیشانەی ئێس ڤی جی نادروست دیارە.",failedToFetchImage:"",invalidSVGString:"ئێس ڤی جی نادروستە.",cannotResolveCollabServer:"ناتوانێت پەیوەندی بکات بە سێرڤەری کۆلاب. تکایە لاپەڕەکە دووبارە باربکەوە و دووبارە هەوڵ بدەوە.",importLibraryError:"نەیتوانی کتێبخانە بار بکات",collabSaveFailed:"نەتوانرا لە بنکەدراوەی ڕاژەدا پاشەکەوت بکرێت. ئەگەر کێشەکان بەردەوام بوون، پێویستە فایلەکەت لە ناوخۆدا هەڵبگریت بۆ ئەوەی دڵنیا بیت کە کارەکانت لەدەست نادەیت.",collabSaveFailed_sizeExceeded:"نەتوانرا لە بنکەدراوەی ڕاژەدا پاشەکەوت بکرێت، پێدەچێت تابلۆکە زۆر گەورە بێت. پێویستە فایلەکە لە ناوخۆدا هەڵبگریت بۆ ئەوەی دڵنیا بیت کە کارەکانت لەدەست نادەیت.",imageToolNotSupported:"",brave_measure_text_error:{line1:"وادیارە وێبگەڕی Brave بەکاردەهێنیت و ڕێکخستنی <bold>Aggressively Block Fingerprinting</bold> ـت چالاک کردووە.",line2:"ئەمە ئەکرێ ببێتە هۆی تێکدانی <bold>دانە دەقییەکان</bold> لە وێنەکێشانەکانتدا.",line3:"ئێمە بە توندی پێشنیاری لەکارخستنی ئەم ڕێکخستنە دەکەین. بۆ لە کارخستنی دەتوانیت بەم <link>هەنگاوانە</link>دا بڕۆیت.",line4:"ئەگەر لەکارخستنی ئەم ڕێکخستنە نەبوە هۆی چاککردنەوەی پێشاندانی دانە دەقییەکان، تکایە <issueLink>کێشە</issueLink>یەک بکەرەوە لەسەر گیتهەبەکەمان، یان بۆمان بنوسە لەسەر <discordLink>دیسکۆرد</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},TLe={selection:"دەستنیشانکردن",image:"داخڵکردنی وێنە",rectangle:"لاکێشە",diamond:"ئەڵماس",ellipse:"هێلکەیی",arrow:"تیر",line:"هێڵ",freedraw:"کێشان",text:"دەق",library:"کتێبخانە",lock:"ئامێرە دیاریکراوەکان چالاک بهێڵەوە دوای وێنەکێشان",penMode:"شێوازی قەڵەم - دەست لێدان ڕابگرە",link:"زیادکردن/ نوێکردنەوەی لینک بۆ شێوەی دیاریکراو",eraser:"سڕەر",frame:"ئامرازی چوارچێوە",magicframe:"",embeddable:"",laser:"",hand:"دەست (ئامرازی پانکردن)",extraTools:"ئامرازی زیاتر",mermaidToExcalidraw:"",magicSettings:""},YLe={canvasActions:"کردارەکانی تابلۆ",selectedShapeActions:"کردارەکانی شێوەی دەستنیشانکراو",shapes:"شێوەکان"},HLe={canvasPanning:"بۆ جوڵاندنی تابلۆ، ویلی ماوسەکەت یان دوگمەی سپەیس بگرە لەکاتی ڕاکێشاندە، یانیش ئامرازی دەستەکە بەکاربهێنە",linearElement:"کرتە بکە بۆ دەستپێکردنی چەند خاڵێک، ڕایبکێشە بۆ یەک هێڵ",freeDraw:"کرتە بکە و ڕایبکێشە، کاتێک تەواو بوویت دەست هەڵگرە",text:"زانیاری: هەروەها دەتوانیت دەق زیادبکەیت بە دوو کرتەکردن لە هەر شوێنێک لەگەڵ ئامڕازی دەستنیشانکردن",embeddable:"",text_selected:"دووجار کلیک بکە یان ENTER بکە بۆ دەستکاریکردنی دەق",text_editing:"بۆ تەواوکردنی دەستکاریکردنەکە Escape یان Ctrl/Cmd+ENTER بکە",linearElementMulti:"کلیک لەسەر کۆتا خاڵ بکە یان Escape یان Enter بکە بۆ تەواوکردن",lockAngle:"دەتوانیت گۆشە سنووردار بکەیت بە ڕاگرتنی SHIFT",resize:`دەتوانیت ڕێژەکان سنووردار بکەیت بە ڕاگرتنی SHIFT لەکاتی گۆڕینی قەبارەدا،
|
||
ALT ڕابگرە بۆ گۆڕینی قەبارە لە ناوەندەوە`,resizeImage:`دەتوانیت بە ئازادی قەبارە بگۆڕیت بە ڕاگرتنی SHIFT،
|
||
ALT ڕابگرە بۆ گۆڕینی قەبارە لە ناوەندەوە`,rotate:"دەتوانیت گۆشەکان سنووردار بکەیت بە ڕاگرتنی SHIFT لەکاتی سوڕانەوەدا",lineEditor_info:"یان Ctrl یان Cmd بگرە و دوانە کلیک بکە یانیش پەنجە بنێ بە Ctrl یان Cmd + ئینتەر بۆ دەستکاریکردنی خاڵەکان",lineEditor_pointSelected:"بۆ لابردنی خاڵەکان Delete دابگرە، Ctrl Cmd+D بکە بۆ لەبەرگرتنەوە، یان بۆ جووڵە ڕاکێشان بکە",lineEditor_nothingSelected:`خاڵێک هەڵبژێرە بۆ دەستکاریکردن (SHIFT ڕابگرە بۆ هەڵبژاردنی چەندین)،
|
||
یان Alt ڕابگرە و کلیک بکە بۆ زیادکردنی خاڵە نوێیەکان`,placeImage:"کلیک بکە بۆ دانانی وێنەکە، یان کلیک بکە و ڕایبکێشە بۆ ئەوەی قەبارەکەی بە دەستی دابنێیت",publishLibrary:"کتێبخانەی تایبەت بە خۆت بڵاوبکەرەوە",bindTextToElement:"بۆ زیادکردنی دەق enter بکە",deepBoxSelect:"CtrlOrCmd ڕابگرە بۆ هەڵبژاردنی قووڵ، و بۆ ڕێگریکردن لە ڕاکێشان",eraserRevert:"بۆ گەڕاندنەوەی ئەو توخمانەی کە بۆ سڕینەوە نیشانە کراون، Alt ڕابگرە",firefox_clipboard_write:'ئەم تایبەتمەندییە بە ئەگەرێکی زۆرەوە دەتوانرێت چالاک بکرێت بە ڕێکخستنی ئاڵای "dom.events.asyncClipboard.clipboardItem" بۆ "true". بۆ گۆڕینی ئاڵاکانی وێبگەڕ لە فایەرفۆکسدا، سەردانی لاپەڕەی "about:config" بکە.',disableSnapping:""},KLe={cannotShowPreview:"ناتوانرێ پێشبینین پیشان بدرێت",canvasTooBig:"تابلۆکە لەوانەیە زۆر گەورەبێت.",canvasTooBigTip:"زانیاری: هەوڵ بدە دوورترین توخمەکان کەمێک لە یەکتر نزیک بکەوە."},JLe={headingMain:"تووشی هەڵەیەک بوو. هەوڵ بدە <button>دووبارە بارکردنی لاپەڕەکە.</button>",clearCanvasMessage:"ئەگەر دووبارە بارکردنەوە کار ناکات، هەوڵبدە <button>خاوێنکردنەوەی تابلۆکە.</button>",clearCanvasCaveat:" ئەمە دەبێتە هۆی لەدەستدانی ئەوەی کە کردوتە ",trackedToSentry:"هەڵەکە لەگەڵ ناسێنەری {{eventId}} لەسەر سیستەمەکەمان بەدواداچوونی بۆ کرا.",openIssueMessage:"ئێمە زۆر وریا بووین کە زانیارییەکانی دیمەنەکەت لەسەر هەڵەکە نەخەینەڕوو. ئەگەر دیمەنەکەت تایبەت نییە، تکایە بیر لە بەدواداچوون بکەنەوە بۆ ئێمە <button>شوێنپێهەڵگری هەڵە.</button> تکایە ئەم زانیارییانەی خوارەوە کۆپی بکە و لە بەشی کێشەکانی Github دایبنێ.",sceneContent:"پێکهاتەی ناو دیمەنەکە:"},OLe={desc_intro:"دەتوانیت خەڵک بانگهێشت بکەیت بۆ دیمەنی ئێستات بۆ هاوکاری کردن لەگەڵت.",desc_privacy:"نیگەران مەبە، دانیشتنەکە کۆدکردنی کۆتایی بە کۆتایی بەکاردەهێنێت، بۆیە هەرچییەک بکێشیت بە تایبەتی دەمێنێتەوە. تەنانەت سێرڤەرەکەمان ناتوانێت بزانێت کە تۆ چیت دروستکردووە.",button_startSession:"دەستپێکردنی دانیشتن",button_stopSession:"وەستاندنی دانیشتن",desc_inProgressIntro:"دانیشتنی هاوکاری ڕاستەوخۆ ئێستا لە ئارادایە.",desc_shareLink:"هاوبەشکردنی ئەم لینکە لەگەڵ هەر کەسێک کە دەتەوێت هاوکاری بکەیت لەگەڵ:",desc_exitSession:"وەستاندنی دانیشتنەکە پەیوەندیت لەگەڵ ژوورەکە دەپچڕێنێت، بەڵام تۆ دەتوانیت بەردەوام بیت لە کارکردن لەگەڵ دیمەنەکە، لە ناوخۆدا. تێبینی بکە کە ئەمە کاریگەری لەسەر کەسانی تر نابێت، وە ئەوان هێشتا دەتوانن هاوکاری بکەن لەسەر وەشانەکەیان.",shareTitle:"بەشداری بکە لە دانیشتنی هاریکاری ڕاستەوخۆ لە ئێکسکالیدراو"},PLe={title:"ههڵه ڕوویدا"},_Le={disk_title:"پاشەکەوت بکە لە دیسک",disk_details:"هەناردەکردنی داتای دیمەنەکە بۆ فایلێک کە دواتر دەتوانیت لێی هاوردە بکەیت.",disk_button:"پاشەکەوت بکە بۆ فایل",link_title:"بەستەری هاوبەشیپێکردن",link_details:"ناردن وەک بەستەری تەنها-خوێندنەوە.",link_button:"هەناردەکردن بۆ بەستەر",excalidrawplus_description:"دیمەنەکە لە شوێنی کارکردنی Excalidraw+ هەڵبگرە.",excalidrawplus_button:"هەناردەکردن",excalidrawplus_exportError:"لەم ساتەدا نەتوانرا هەناردە بکرێت بۆ Excalidrow+..."},WLe={blog:"بلۆگەکەمان بخوێنەوە",click:"گرتە",deepSelect:"دەستنیشانکردنی قوڵ",deepBoxSelect:"لەناو بۆکسەکەدا بە قووڵی هەڵبژێرە، و ڕێگری لە ڕاکێشان بکە",curvedArrow:"تیری نوشتاوە",curvedLine:"هێڵی نوشتاوە",documentation:"دۆکیومێنتەیشن",doubleClick:"دوو گرتە",drag:"راکێشان",editor:"دەستکاریکەر",editLineArrowPoints:"دەستکاری خاڵەکانی هێڵ/تیر بکە",editText:"دەستکاری دەق بکە / لەیبڵێک زیاد بکە",github:"کێشەیەکت دۆزیەوە؟ پێشکەشکردن",howto:"شوێن ڕینماییەکانمان بکەوە",or:"یان",preventBinding:"ڕێگریبکە لە نوشتاناوەی تیر",tools:"ئامرازەکان",shortcuts:"کورتکراوەکانی تەختەکلیل",textFinish:"تەواوکردنی دەستکاریکردن (دەستکاریکەری دەق)",textNewLine:"زیادکردنی دێڕی نوێ (دەستکاریکەری دەق)",title:"یارماتی",view:"دیمەن",zoomToFit:"زووم بکە بۆ ئەوەی لەگەڵ هەموو توخمەکاندا بگونجێت",zoomToSelection:"زووم بکە بۆ دەستنیشانکراوەکان",toggleElementLock:"قفڵ/کردنەوەی دەستنیشانکراوەکان",movePageUpDown:"لاپەڕەکە بجوڵێنە بۆ سەرەوە/خوارەوە",movePageLeftRight:"لاپەڕەکە بجوڵێنە بۆ چەپ/ڕاست"},qLe={title:"تابلۆکە خاوێن بکەرەوە"},zLe={title:"پێشکەشکردنی کتێبخانە",itemName:"ناوی بڕگە",authorName:"ناوی نوسەر",githubUsername:"ناوی بەکارهێنەری Github",twitterUsername:"ناوی بەکارهێنەری Twitter",libraryName:"ناوی کتێبخانە",libraryDesc:"وەسفی کتێبخانە",website:"ماڵپەڕ",placeholder:{authorName:"ناوەکات یاخود ناوی بەکارهێنەر",libraryName:"ناوی کتێبخانەکەت",libraryDesc:"وەسفی کتێبخانەکەت بۆ یارمەتیدانی خەڵک بۆ تێگەیشتن لە بەکارهێنانی",githubHandle:"ناوی GitHub (ئارەزوومەندانە)، بۆیە دەتوانیت دەستکاری کتێبخانەکە بکەیت کاتێک پێشکەش دەکرێت بۆ پێداچوونەوە",twitterHandle:"ناوی بەکارهێنەری تویتەر (ئارەزوومەندانە)، بۆیە بزانین لەکاتی بانگەشەکردن لە ڕێگەی تویتەرەوە کریدت بۆ کێ بکەین",website:"لینکی ماڵپەڕی تایبەتی خۆت یان شوێنێکی تر (ئارەزومەندانە)"},errors:{required:"داواکراوە",website:"URLێکی دروست تێبنووسە"},noteDescription:"کتێبخانەکەت بنێرە بۆ ئەوەی بخرێتە ناو <link>کۆگای کتێبخانەی گشتی</link>بۆ ئەوەی کەسانی تر لە وێنەکێشانەکانیاندا بەکاری بهێنن.",noteGuidelines:"کتێبخانەکە پێویستە سەرەتا بە دەست پەسەند بکرێت. تکایە بفەرمو بە خوێندنەوەی <link>ڕێنماییەکان</link> پێش پێشکەشکردن. پێویستت بە ئەژمێری GitHub دەبێت بۆ پەیوەندیکردن و گۆڕانکاری ئەگەر داوای لێکرا، بەڵام بە توندی پێویست نییە.",noteLicense:"بە پێشکەشکردن، تۆ ڕەزامەندیت لەسەر بڵاوکردنەوەی کتێبخانەکە بەپێی <link>مۆڵەتی MIT، </link>کە بە کورتی مانای ئەوەیە کە هەرکەسێک دەتوانێت بە بێ سنوور بەکاری بهێنێت",noteItems:"هەر شتێکی کتێبخانە دەبێت ناوی تایبەتی خۆی هەبێت بۆ ئەوەی بتوانرێت فلتەر بکرێت. ئەم بابەتانەی کتێبخانانەی خوارەوە لەخۆدەگرێت:",atleastOneLibItem:"تکایە بەلایەنی کەمەوە یەک بڕگەی کتێبخانە دیاریبکە بۆ دەستپێکردن",republishWarning:"تێبینی: هەندێک لە ئایتمە دیاریکراوەکان نیشانکراون وەک ئەوەی پێشتر بڵاوکراونەتەوە/نێردراون. تەنها پێویستە شتەکان دووبارە پێشکەش بکەیتەوە لە کاتی نوێکردنەوەی کتێبخانەیەکی هەبوو یان پێشکەشکردن."},ZLe={title:"کتێبخانە پێشکەش کرا",content:"سوپاس {{authorName}}. کتێبخانەکەت پێشکەش کراوە بۆ پێداچوونەوە. دەتوانیت بەدواداچوون بۆ دۆخەکە بکەیت<link>لێرە</link>"},VLe={resetLibrary:"ڕێکخستنەوەی کتێبخانە",removeItemsFromLib:"لابردنی ئایتمە دیاریکراوەکان لە کتێبخانە"},jLe={header:"وێنە هەناردە بکە",label:{withBackground:"پاشبنەما",onlySelected:"تەنها دیاریکراوەکان",darkMode:"دۆخی تاریک",embedScene:"دیمەنەکە بەکاربهێنەرەوە",scale:"قەبارە",padding:"بۆشایی"},tooltip:{embedScene:`داتاکانی دیمەنەکە لە فایلە هەناردەکراوەکەی PNG/SVG هەڵدەگیرێن بۆ ئەوەی دیمەنەکە لێیەوە بگەڕێتەوە.
|
||
قەبارەی پەڕگەی هەناردەکراو زیاد دەکات.`},title:{exportToPng:"هەناردە بکە وەک PNG",exportToSvg:"هەناردە بکە وەک SVG",copyPngToClipboard:"لەبەربگرەوە بۆ سەر تەختەنوس"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"لهبهری بگرهوه بۆ تهختهنووس"}},XLe={tooltip:"وێنەکێشانەکانت لە کۆتاییەوە بۆ کۆتایی کۆد کراون بۆیە سێرڤەرەکانی ئێکسکالیدرا هەرگیز نایانبینن.",link:"بلۆگ پۆست لەسەر کۆدکردنی کۆتای بۆ کۆتای لە ئێکسکالیدرەو"},$Le={angle:"گۆشە",element:"توخم",elements:"توخمەکان",height:"بەرزی",scene:"دیمەنەکە",selected:"دەستنیشانکراوەکان",storage:"بیرگە",title:"ئامار بۆ نێردەکان",total:"گشتی",version:"وەشان",versionCopy:"کلیک بۆ لەبەرگرتنەوە",versionNotAvailable:"وەشان بەردەست نییە",width:"پانی"},ARe={addedToLibrary:"زیادکرا بۆ کتێبخانە",copyStyles:"ستایلی کۆپیکراو.",copyToClipboard:"لەبەرگیرایەوە بۆ تەختەنوس.",copyToClipboardAsPng:`کۆپی کراوە {{exportSelection}} بۆ کلیپبۆرد وەک PNG
|
||
({{exportColorScheme}})`,fileSaved:"فایل هەڵگیرا.",fileSavedToFilename:"هەڵگیراوە بۆ {filename}",canvas:"تابلۆ",selection:"دەستنیشانکراوەکان",pasteAsSingleElement:"بۆ دانانەوە وەکو یەک توخم یان دانانەوە بۆ نێو دەسکاریکەرێکی دەق کە بوونی هەیە {{shortcut}} بەکاربهێنە",unableToEmbed:"",unrecognizedLinkFormat:""},eRe={transparent:"ڕوون",black:"ڕەش",white:"سپی",red:"سور",pink:"پەمەیی",grape:"مێوژی",violet:"مۆری کاڵ",gray:"خۆڵەمێشی",blue:"شین",cyan:"شینی ئاسمانی",teal:"شەدری",green:"سهوز",yellow:"زەرد",orange:"پرتەقاڵی",bronze:"برۆنزی"},tRe={app:{center_heading:"هەموو داتاکانت لە ناوخۆی وێنگەڕەکەتدا پاشەکەوت کراوە.",center_heading_plus:"ویستت بڕۆیت بۆ Excalidraw+?",menuHint:"هەناردەکردن، ڕێکخستنەکان، زمانەکان، ..."},defaults:{menuHint:"هەناردەکردن، ڕێکخستنەکان، و زیاتر...",center_heading:"دایاگرامەکان. ئاسان. کراون.",toolbarHint:"ئامرازێک هەڵبگرە و دەستبکە بە کێشان!",helpHint:"قەدبڕەکان و یارمەتی"}},rRe={mostUsedCustomColors:"زۆرترین ڕەنگە باوە بەکارهاتووەکان",colors:"ڕەنگەکان",shades:"سێبەرەکان",hexCode:"کۆدی هێکس",noShades:"هیچ سێبەرێک بۆ ئەم ڕەنگە بەردەست نییە"},iRe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},uRe={title:"",button:"",description:"",syntax:"",preview:""},qcr={labels:RLe,library:NLe,buttons:GLe,alerts:ULe,errors:MLe,toolBar:TLe,headings:YLe,hints:HLe,canvasError:KLe,errorSplash:JLe,roomDialog:OLe,errorDialog:PLe,exportDialog:_Le,helpDialog:WLe,clearCanvasDialog:qLe,publishDialog:zLe,publishSuccessDialog:ZLe,confirmDialog:VLe,imageExportDialog:jLe,encrypted:XLe,stats:$Le,toast:ARe,colors:eRe,welcomeScreen:tRe,colorPicker:rRe,overwriteConfirm:iRe,mermaid:uRe}});var GRe={};yt(GRe,{alerts:()=>gRe,buttons:()=>lRe,canvasError:()=>dRe,clearCanvasDialog:()=>mRe,colorPicker:()=>LRe,colors:()=>xRe,confirmDialog:()=>wRe,default:()=>zcr,encrypted:()=>vRe,errorDialog:()=>QRe,errorSplash:()=>IRe,errors:()=>cRe,exportDialog:()=>pRe,headings:()=>BRe,helpDialog:()=>fRe,hints:()=>ERe,imageExportDialog:()=>bRe,labels:()=>oRe,library:()=>sRe,mermaid:()=>NRe,overwriteConfirm:()=>RRe,publishDialog:()=>DRe,publishSuccessDialog:()=>yRe,roomDialog:()=>hRe,stats:()=>kRe,toast:()=>FRe,toolBar:()=>CRe,welcomeScreen:()=>SRe});var oRe,sRe,lRe,gRe,cRe,CRe,BRe,ERe,dRe,IRe,hRe,QRe,pRe,fRe,mRe,DRe,yRe,wRe,bRe,vRe,kRe,FRe,xRe,SRe,LRe,RRe,NRe,zcr;var URe=P(()=>{qt();oRe={paste:"Įklijuoti",pasteAsPlaintext:"Įklijuoti kaip paprastą tekstą",pasteCharts:"Įklijuoti diagramas",selectAll:"Pažymėti viską",multiSelect:"Pridėkite elementą prie pasirinktų",moveCanvas:"Judinti drobę",cut:"Iškirpti",copy:"Kopijuoti",copyAsPng:"Kopijuoti į iškarpinę kaip PNG",copyAsSvg:"Kopijuoti į iškarpinę kaip SVG",copyText:"Kopijuoti į iškarpinę kaip tekstą",copySource:"",convertToCode:"",bringForward:"Kelti priekio link",sendToBack:"Nustumti į užnugarį",bringToFront:"Iškelti į priekį",sendBackward:"Nustumti link užnugario",delete:"Ištrinti",copyStyles:"Kopijuoti stilius",pasteStyles:"Įklijuoti stilius",stroke:"Linija",background:"Fonas",fill:"Užpildymas",strokeWidth:"Linijos storis",strokeStyle:"Linijos stilius",strokeStyle_solid:"Ištisinė",strokeStyle_dashed:"Brūkšniuota",strokeStyle_dotted:"Taškuota",sloppiness:"Netvarkingumas",opacity:"Nepermatomumas",textAlign:"Teksto lygiavimas",edges:"Kraštai",sharp:"Aštrus",round:"Užapvalintas",arrowheads:"Rodyklės viršūnės",arrowhead_none:"Jokios",arrowhead_arrow:"Rodyklė",arrowhead_bar:"Brukšnys",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trikampis",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Šrifto dydis",fontFamily:"Šriftas",addWatermark:"Sukurta su Excalidraw",handDrawn:"Ranka rašytas",normal:"Normalus",code:"Kodas",small:"Mažas",medium:"Vidutinis",large:"Didelis",veryLarge:"Labai didelis",solid:"",hachure:"",zigzag:"",crossHatch:"",thin:"Plonas",bold:"Pastorintas",left:"Kairėje",center:"Centre",right:"Dešinėje",extraBold:"Labiau pastorintas",architect:"Architektas",artist:"Menininkas",cartoonist:"Karikatūristas",fileTitle:"Failo pavadinimas",colorPicker:"Spalvos parinkiklis",canvasColors:"",canvasBackground:"Drobės fonas",drawingCanvas:"",layers:"Sluoksniai",actions:"Veiksmai",language:"Kalba",liveCollaboration:"Bendradarbiavimas gyvai...",duplicateSelection:"",untitled:"",name:"",yourName:"Jūsų vardas",madeWithExcalidraw:"Sukurta su Excalidraw",group:"Grupuoti pasirinkimą",ungroup:"Išgrupuoti pasirinkimą",collaborators:"Bendradarbiautojai",showGrid:"Rodyti tinklelį",addToLibrary:"Pridėti į biblioteką",removeFromLibrary:"Pašalinti iš bibliotekos",libraryLoadingMessage:"",libraries:"Naršyti bibliotekas",loadingScene:"",align:"Lygiuoti",alignTop:"Lygiuoti viršuje",alignBottom:"Lygiuoti apačioje",alignLeft:"Lygiuoti kairėje",alignRight:"Lygiuoti dešinėje",centerVertically:"Centruoti vertikaliai",centerHorizontally:"Centruoti horizontaliai",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"Apversti horizontaliai",flipVertical:"Apversti vertikaliai",viewMode:"",share:"Dalintis",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"Asmeninė biblioteka",excalidrawLib:"Exaclidraw biblioteka",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Redeguoti nuorodą",editEmbed:"",create:"Sukurti nuorodą",createEmbed:"",label:"Nuoroda",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"Užrakinti",unlock:"Atrakinti",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},sRe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},lRe={clearReset:"",exportJSON:"Eksportuoti į failą",exportImage:"",export:"",copyToClipboard:"Kopijuoti į iškarpinę",save:"",saveAs:"Išsaugoti kaip",load:"",getShareableLink:"Gauti nuorodą dalinimuisi",close:"Uždaryti",selectLanguage:"Pasirinkite kalbą",scrollBackToContent:"",zoomIn:"Priartinti",zoomOut:"Nutolinti",resetZoom:"",menu:"Meniu",done:"",edit:"Redaguoti",undo:"Anuliuoti",redo:"",resetLibrary:"Atstatyti biblioteką",createNewRoom:"Sukurti naują kambarį",fullScreen:"Visas ekranas",darkMode:"Tamsus režimas",lightMode:"Šviesus režimas",zenMode:"„Zen“ režimas",objectsSnapMode:"",exitZenMode:"Išeiti iš „Zen“ režimo",cancel:"Atšaukti",clear:"Išvalyti",remove:"Pašalinti",embed:"",publishLibrary:"Paskelbti",submit:"Pateikti",confirm:"Patvirtinti",embeddableInteractionButton:""},gRe={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:`Sesijos nutraukimas perrašys ankstesnį, lokaliai išsaugotą piešinį. Ar tikrai to nori?
|
||
|
||
(Jei nori išlaikyti lokalų piešinį, tiesiog uždaryk naršyklės skirtuką.)`,errorAddingToLibrary:"Nepavyko įtraukti elemento į biblioteką",errorRemovingFromLibrary:"Nepavyko pašalinti elemento iš bibliotekos",confirmAddLibrary:"Tai įtrauks {{numShapes}} figūrą/-as į tavo biblioteką. Ar tikrai to nori?",imageDoesNotContainScene:"Panašu, jog šis paveiksliukas neturi scenos duomenų. Ar yra įjuntas scenos įtraukimas ekportavimo metu?",cannotRestoreFromImage:"Nepavyko atstatyti scenos iš šio nuotraukos failo",invalidSceneUrl:"Nepavyko suimportuoti scenos iš pateiktos nuorodos (URL). Ji arba blogai suformatuota, arba savyje neturi teisingų Excalidraw JSON duomenų.",resetLibrary:"Tai išvalys tavo biblioteką. Ar tikrai to nori?",removeItemsFromsLibrary:"Ištrinti {{count}} elementą/-us iš bibliotekos?",invalidEncryptionKey:"Šifravimo raktas turi būti iš 22 simbolių. Redagavimas gyvai yra išjungtas.",collabOfflineWarning:""},cRe={unsupportedFileType:"Nepalaikomas failo tipas.",imageInsertError:"Nepyko įkelti paveiksliuko. Pabandyk vėliau...",fileTooBig:"Per didelis failas. Didžiausias leidžiamas dydis yra {{maxSize}}.",svgImageInsertError:"Nepavyko įtraukti SVG paveiksliuko. Panašu, jog SVG yra nevalidus.",failedToFetchImage:"",invalidSVGString:"Nevalidus SVG.",cannotResolveCollabServer:"Nepavyko prisijungti prie serverio bendradarbiavimui. Perkrauk puslapį ir pabandyk prisijungti dar kartą.",importLibraryError:"Nepavyko įkelti bibliotekos",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},CRe={selection:"Žymėjimas",image:"Įkelti paveiksliuką",rectangle:"Stačiakampis",diamond:"Deimantas",ellipse:"Elipsė",arrow:"Rodyklė",line:"Linija",freedraw:"Piešti",text:"Tekstas",library:"Biblioteka",lock:"Baigus piešti, išlaikyti pasirinktą įrankį",penMode:"Rašyklio režimas - neleisti prisilietimų",link:"Pridėti / Atnaujinti pasirinktos figūros nuorodą",eraser:"Trintukas",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},BRe={canvasActions:"Veiksmai su drobe",selectedShapeActions:"Veiksmai su pasirinkta figūra",shapes:"Figūros"},ERe={canvasPanning:"",linearElement:"Paspaudimai sukurs papildomus taškus, nepertraukiamas tempimas sukurs liniją",freeDraw:"Spausk ir tempk, paleisk kai norėsi pabaigti",text:"Užuomina: tekstą taip pat galima pridėti bet kur su dvigubu pelės paspaudimu, kol parinkas žymėjimo įrankis",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},dRe={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},IRe={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},hRe={desc_intro:"",desc_privacy:"",button_startSession:"Pradėti seansą",button_stopSession:"Sustabdyti seansą",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},QRe={title:"Klaida"},pRe={disk_title:"Įrašyti į diską",disk_details:"",disk_button:"Įrašyti į failą",link_title:"Nuoroda dalinimuisi",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"Eksportuoti",excalidrawplus_exportError:""},fRe={blog:"",click:"paspaudimas",deepSelect:"",deepBoxSelect:"",curvedArrow:"Banguota rodyklė",curvedLine:"Banguota linija",documentation:"Dokumentacija",doubleClick:"dvigubas paspaudimas",drag:"vilkti",editor:"Redaktorius",editLineArrowPoints:"",editText:"",github:"Radai klaidą? Pateik",howto:"Vadovaukis mūsų gidu",or:"arba",preventBinding:"",tools:"Įrankiai",shortcuts:"Spartieji klavišai",textFinish:"Baigti redagavimą (teksto redaktoriuje)",textNewLine:"Pridėti naują eilutę (tekto redaktoriuje)",title:"Pagalba",view:"",zoomToFit:"",zoomToSelection:"Priartinti iki pažymėtos vietos",toggleElementLock:"",movePageUpDown:"Pajudinti puslapį aukštyn/žemyn",movePageLeftRight:"Pajudinti puslapį kairėn/dešinėn"},mRe={title:"Išvalyti drobę"},DRe={title:"Paviešinti biblioteką",itemName:"Elemento pavadinimas",authorName:"Autoriaus vardas",githubUsername:"Github spalyvardis",twitterUsername:"Twitter slapyvardis",libraryName:"Bibliotekos pavadinimas",libraryDesc:"Bibliotekos aprašas",website:"Tinklalapis",placeholder:{authorName:"Tavo vardas arba spalyvardis",libraryName:"Tavo bibliotekos pavadinimas",libraryDesc:"Tavo bibliotekos aprašas, padėti žmonėms geriau suprasti jos paskirtį",githubHandle:"",twitterHandle:"",website:""},errors:{required:"Privalomas",website:"Įveskite teisingą nuorodą (URL)"},noteDescription:"Pateik savo biblioteką, jog ji galėtų būti įtraukta į <link></link>jog kiti žmonės galėtų tai naudoti savo piešiniuose.",noteGuidelines:"Visų pirma, biblioteka turi būti rankiniu būdu patvirtinta. Prašome paskaityti <link>gairės</link>",noteLicense:"<link>MIT licencija, </link>",noteItems:"",atleastOneLibItem:"",republishWarning:""},yRe={title:"Biblioteka pateikta",content:"Ačiū {{authorName}}. Tavo biblioteka buvo pateikta peržiūrai. Gali sekti būseną<link>čia</link>"},wRe={resetLibrary:"Atstatyti biblioteką",removeItemsFromLib:"Pašalinti pasirinktus elementus iš bibliotekos"},bRe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},vRe={tooltip:"",link:""},kRe={angle:"",element:"Elementas",elements:"Elementai",height:"Aukštis",scene:"Scena",selected:"Pasirinkta",storage:"Saugykla",title:"Informacija moksliukams",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:"Plotis"},FRe={addedToLibrary:"Pridėta į biblioteką",copyStyles:"",copyToClipboard:"Nukopijuota į iškarpinę.",copyToClipboardAsPng:"",fileSaved:"Failas išsaugotas.",fileSavedToFilename:"Išsaugota į {filename}",canvas:"drobė",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},xRe={transparent:"Permatoma",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},SRe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},LRe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},RRe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},NRe={title:"",button:"",description:"",syntax:"",preview:""},zcr={labels:oRe,library:sRe,buttons:lRe,alerts:gRe,errors:cRe,toolBar:CRe,headings:BRe,hints:ERe,canvasError:dRe,errorSplash:IRe,roomDialog:hRe,errorDialog:QRe,exportDialog:pRe,helpDialog:fRe,clearCanvasDialog:mRe,publishDialog:DRe,publishSuccessDialog:yRe,confirmDialog:wRe,imageExportDialog:bRe,encrypted:vRe,stats:kRe,toast:FRe,colors:xRe,welcomeScreen:SRe,colorPicker:LRe,overwriteConfirm:RRe,mermaid:NRe}});var lNe={};yt(lNe,{alerts:()=>HRe,buttons:()=>YRe,canvasError:()=>_Re,clearCanvasDialog:()=>jRe,colorPicker:()=>nNe,colors:()=>uNe,confirmDialog:()=>ANe,default:()=>Zcr,encrypted:()=>tNe,errorDialog:()=>zRe,errorSplash:()=>WRe,errors:()=>KRe,exportDialog:()=>ZRe,headings:()=>ORe,helpDialog:()=>VRe,hints:()=>PRe,imageExportDialog:()=>eNe,labels:()=>MRe,library:()=>TRe,mermaid:()=>sNe,overwriteConfirm:()=>oNe,publishDialog:()=>XRe,publishSuccessDialog:()=>$Re,roomDialog:()=>qRe,stats:()=>rNe,toast:()=>iNe,toolBar:()=>JRe,welcomeScreen:()=>aNe});var MRe,TRe,YRe,HRe,KRe,JRe,ORe,PRe,_Re,WRe,qRe,zRe,ZRe,VRe,jRe,XRe,$Re,ANe,eNe,tNe,rNe,iNe,uNe,aNe,nNe,oNe,sNe,Zcr;var gNe=P(()=>{qt();MRe={paste:"Ielīmēt",pasteAsPlaintext:"Ielīmēt kā vienkāršu tekstu",pasteCharts:"Ielīmēt grafikus",selectAll:"Atlasīt visu",multiSelect:"Pievienot elementu atlasei",moveCanvas:"Pārvietot tāfeli",cut:"Izgriezt",copy:"Kopēt",copyAsPng:"Kopēt starpliktuvē kā PNG",copyAsSvg:"Kopēt starpliktuvē kā SVG",copyText:"Kopēt starpliktuvē kā tekstu",copySource:"",convertToCode:"",bringForward:"Pārvietot vienu slāni augstāk",sendToBack:"Pārvietot uz zemāko slāni",bringToFront:"Pārvietot uz virsējo slāni",sendBackward:"Pārvietot par vienu slāni zemāk",delete:"Dzēst",copyStyles:"Kopēt stilus",pasteStyles:"Ielīmēt stilus",stroke:"Svītras krāsa",background:"Fona krāsa",fill:"Aizpildījums",strokeWidth:"Svītras platums",strokeStyle:"Svītras stils",strokeStyle_solid:"Vienlaidu",strokeStyle_dashed:"Raustīta līnija",strokeStyle_dotted:"Punktota līnija",sloppiness:"Precizitāte",opacity:"Necaurspīdīgums",textAlign:"Teksta līdzināšana",edges:"Malas",sharp:"Asas",round:"Apaļas",arrowheads:"Bultas",arrowhead_none:"Nekādas",arrowhead_arrow:"Bulta",arrowhead_bar:"Svītra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trijstūris",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Teksta lielums",fontFamily:"Fontu saime",addWatermark:'Pievienot "Radīts ar Excalidraw"',handDrawn:"Rokraksts",normal:"Parasts",code:"Kods",small:"Mazs",medium:"Vidējs",large:"Liels",veryLarge:"Ļoti liels",solid:"Pilns",hachure:"Svītrots",zigzag:"Zigzaglīnija",crossHatch:"Šķērssvītrots",thin:"Šaurs",bold:"Trekns",left:"Pa kreisi",center:"Vidū",right:"Pa labi",extraBold:"Īpaši trekns",architect:"Arhitekts",artist:"Mākslinieks",cartoonist:"Karikatūrists",fileTitle:"Datnes nosaukums",colorPicker:"Krāsu atlasītājs",canvasColors:"Izmantots tāfelei",canvasBackground:"Ainas fons",drawingCanvas:"Tāfele",layers:"Slāņi",actions:"Darbības",language:"Valoda",liveCollaboration:"Sadarbība tiešsaistē...",duplicateSelection:"Izveidot kopiju",untitled:"Bez nosaukuma",name:"Vārds",yourName:"Jūsu vārds",madeWithExcalidraw:"Radīts ar Excalidraw",group:"Grupēt atlasīto",ungroup:"Atgrupēt atlasīto",collaborators:"Dalībnieki",showGrid:"Rādīt režģi",addToLibrary:"Pievienot bibliotēkai",removeFromLibrary:"Izņemt no bibliotēkas",libraryLoadingMessage:"Ielādē bibliotēku…",libraries:"Apskatīt bibliotēkas",loadingScene:"Ielādē ainu…",align:"Līdzināt",alignTop:"Līdzināt augšpusē",alignBottom:"Līdzināt lejā",alignLeft:"Līdzināt pa kreisi",alignRight:"Līdzināt pa labi",centerVertically:"Centrēt vertikāli",centerHorizontally:"Centrēt horizontāli",distributeHorizontally:"Izdalīt horizontāli",distributeVertically:"Izdalīt vertikāli",flipHorizontal:"Apmest horizontāli",flipVertical:"Apmest vertikāli",viewMode:"Skata režīms",share:"Kopīgot",showStroke:"Rādīt svītras krāsas atlasītāju",showBackground:"Rādīt fona krāsas atlasītāju",toggleTheme:"Pārslēgt krāsu tēmu",personalLib:"Personīgā bibliotēka",excalidrawLib:"Excalidraw bibliotēka",decreaseFontSize:"Samazināt fonta izmēru",increaseFontSize:"Palielināt fonta izmēru",unbindText:"Atdalīt tekstu",bindText:"Piesaistīt tekstu figūrai",createContainerFromText:"Ietilpināt tekstu figurā",link:{edit:"Rediģēt saiti",editEmbed:"",create:"Izveidot saiti",createEmbed:"",label:"Saite",labelEmbed:"",empty:""},lineEditor:{edit:"Rediģēt līniju",exit:"Aizvērt līnijas redaktoru"},elementLock:{lock:"Fiksēt",unlock:"Atbrīvot",lockAll:"Fiksēt visu",unlockAll:"Atbrīvot visu"},statusPublished:"Publicēts",sidebarLock:"Paturēt atvērtu sānjoslu",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},TRe={noItems:"Neviena vienība vēl nav pievienota...",hint_emptyLibrary:"Atlasiet objektu tāfelē, lai to šeit pievienotu, vai pievienojiet publisku bibliotēku zemāk.",hint_emptyPrivateLibrary:"Atlasiet objektu tāfelē, lai to šeit pievienotu."},YRe={clearReset:"Atiestatīt tāfeli",exportJSON:"Eksportēt kā failu",exportImage:"Eksportēt attēlu...",export:"Saglabāt uz...",copyToClipboard:"Kopēt starpliktuvē",save:"Saglabāt pašreizējo datni",saveAs:"Saglabāt kā",load:"Atvērt",getShareableLink:"Iegūt kopīgošanas saiti",close:"Aizvērt",selectLanguage:"Izvēlieties valodu",scrollBackToContent:"Atgriezties pie satura",zoomIn:"Tuvināt",zoomOut:"Tālināt",resetZoom:"Atiestatīt tuvinājumu",menu:"Izvēlne",done:"Gatavs",edit:"Rediģēt",undo:"Atsaukt",redo:"Atcelt atsaukšanu",resetLibrary:"Atiestatīt bibliotēku",createNewRoom:"Izveidot jaunu telpu",fullScreen:"Pilnekrāna režīms",darkMode:"Tumšais režīms",lightMode:"Gaišais režīms",zenMode:"Zen režīms",objectsSnapMode:"",exitZenMode:"Pamest Zen režīmu",cancel:"Atcelt",clear:"Notīrīt",remove:"Noņemt",embed:"",publishLibrary:"Publicēt",submit:"Iesniegt",confirm:"Apstiprināt",embeddableInteractionButton:""},HRe={clearReset:"Šī funkcija notīrīs visu tāfeli. Vai turpināt?",couldNotCreateShareableLink:"Nevarēja izveidot kopīgojamo saiti.",couldNotCreateShareableLinkTooBig:"Nevarēja izveidot kopīgojamo saiti – aina ir par lielu",couldNotLoadInvalidFile:"Nevarēja ielādēt nederīgu datni",importBackendFailed:"Ielāde no krātuves neizdevās.",cannotExportEmptyCanvas:"Nevar eksportēt tukšu tāfeli.",couldNotCopyToClipboard:"Nevarēja nokopēt starpliktuvē.",decryptFailed:"Nevarēja atšifrēt datus.",uploadedSecurly:"Augšuplāde nodrošināta ar šifrēšanu no gala līdz galam, kas nozīmē, ka Excalidraw serveri un trešās puses nevar lasīt saturu.",loadSceneOverridePrompt:"Ārēja satura ielāde aizstās jūsu pašreizējo saturu. Vai vēlaties turpināt?",collabStopOverridePrompt:`Sesijas pārtraukšana pārrakstīs jūsu iepriekšējo zīmējumu, kas saglabāts jūsu pārlūkā. Vai turpināt?
|
||
|
||
(Ja vēlaties paturēt zīmējumu, kas saglabāts jūsu pārlūkā, vienkārši aizveriet pārlūka cilni.)`,errorAddingToLibrary:"Nevarēja pievienot vienumu bibliotēkai",errorRemovingFromLibrary:"Nevarēja izņemt vienumu no bibliotēkas",confirmAddLibrary:"Šī funkcija pievienos {{numShapes}} formu(-as) jūsu bibliotēkai. Vai turpināt?",imageDoesNotContainScene:"Šķiet, ka attēls nesatur ainas datus. Vai iespējojāt ainas iegulšanu, kad eksportējāt?",cannotRestoreFromImage:"Ainu nevarēja atgūt no attēla datnes",invalidSceneUrl:"Nevarēja importēt ainu no norādītā URL. Vai nu tas ir nederīgs, vai nesatur derīgus Excalidraw JSON datus.",resetLibrary:"Šī funkcija iztukšos bibliotēku. Vai turpināt?",removeItemsFromsLibrary:"Vai izņemt {{count}} vienumu(s) no bibliotēkas?",invalidEncryptionKey:"Šifrēšanas atslēgai jābūt 22 simbolus garai. Tiešsaistes sadarbība ir izslēgta.",collabOfflineWarning:`Nav pieejams interneta pieslēgums.
|
||
Jūsu izmaiņas netiks saglabātas!`},KRe={unsupportedFileType:"Neatbalstīts datnes veids.",imageInsertError:"Nevarēja ievietot attēlu. Mēģiniet vēlāk...",fileTooBig:"Datne ir par lielu. Lielākais atļautais izmērs ir {{maxSize}}.",svgImageInsertError:"Nevarēja ievietot SVG attēlu. Šķiet, ka SVG marķējums nav derīgs.",failedToFetchImage:"",invalidSVGString:"Nederīgs SVG.",cannotResolveCollabServer:"Nevarēja savienoties ar sadarbošanās serveri. Lūdzu, pārlādējiet lapu un mēģiniet vēlreiz.",importLibraryError:"Nevarēja ielādēt bibliotēku",collabSaveFailed:"Darbs nav saglabāts datubāzē. Ja problēma turpinās, saglabājiet datni lokālajā krātuvē, lai nodrošinātos pret darba pazaudēšanu.",collabSaveFailed_sizeExceeded:"Darbs nav saglabāts datubāzē, šķiet, ka tāfele ir pārāk liela. Saglabājiet datni lokālajā krātuvē, lai nodrošinātos pret darba pazaudēšanu.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},JRe={selection:"Atlase",image:"Ievietot attēlu",rectangle:"Taisnstūris",diamond:"Rombs",ellipse:"Elipse",arrow:"Bulta",line:"Līnija",freedraw:"Zīmēt",text:"Teksts",library:"Bibliotēka",lock:"Paturēt izvēlēto rīku pēc darbības",penMode:"Pildspalvas režīms – novērst pieskaršanos",link:"Pievienot/rediģēt atlasītās figūras saiti",eraser:"Dzēšgumija",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Roka (panoramēšanas rīks)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},ORe={canvasActions:"Tāfeles darbības",selectedShapeActions:"Izvēlētās formas darbības",shapes:"Formas"},PRe={canvasPanning:"Lai bīdītu tāfeli, turiet nospiestu ritināšanas vai atstarpes taustiņu, vai izmanto rokas rīku",linearElement:"Klikšķiniet, lai sāktu zīmēt vairākus punktus; velciet, lai zīmētu līniju",freeDraw:"Spiediet un velciet; atlaidiet, kad pabeidzat",text:"Ieteikums: lai pievienotu tekstu, varat arī jebkur dubultklikšķināt ar atlases rīku",embeddable:"",text_selected:"Dubultklikšķiniet vai spiediet ievades taustiņu, lai rediģētu tekstu",text_editing:"Spiediet iziešanas taustiņu vai CtrlOrCmd+ENTER, lai beigtu rediģēt",linearElementMulti:"Klikšķiniet uz pēdējā punkta vai spiediet izejas vai ievades taustiņu, lai pabeigtu",lockAngle:"Varat ierobežot leņķi, turot nospiestu SHIFT",resize:`Kad maināt izmēru, varat ierobežot proporcijas, turot nospiestu SHIFT,
|
||
vai arī ALT, lai mainītu izmēru ap centru`,resizeImage:`Varat brīvi mainīt izmēru, turot nospiestu SHIFT;
|
||
turiet nospiestu ALT, lai mainītu izmēru ap centru`,rotate:"Rotējot varat ierobežot leņķi, turot nospiestu SHIFT",lineEditor_info:"Turiet CtrlOrCmd un dubultklikšķiniet, vai spiediet CtrlOrCmd + Enter, lai rediģētu punktus",lineEditor_pointSelected:"Spiediet dzēšanas taustiņu, lai noņemtu punktus, – CtrlOrCmd+D, lai to kopētu, vai velciet, lai pārvietotu",lineEditor_nothingSelected:`Atlasiet punktu, lai labotu (turiet nospiestu SHIFT, lai atlasītu vairākus),
|
||
vai turiet Alt un clikšķiniet, lai pievienotu jaunus punktus`,placeImage:"Klikšķiniet, lai novietotu attēlu, vai spiediet un velciet, lai iestatītu tā izmēru",publishLibrary:"Publicēt savu bibliotēku",bindTextToElement:"Spiediet ievades taustiņu, lai pievienotu tekstu",deepBoxSelect:"Turient nospiestu Ctrl vai Cmd, lai atlasītu dziļumā un lai nepieļautu objektu pavilkšanu",eraserRevert:"Turiet Alt, lai noņemtu elementus no dzēsšanas atlases",firefox_clipboard_write:'Šis iestatījums var tikt ieslēgts ar "dom.events.asyncClipboard.clipboardItem" marķieri pārslēgtu uz "true". Lai mainītu pārlūka marķierus Firefox, apmeklē "about:config" lapu.',disableSnapping:""},_Re={cannotShowPreview:"Nevar rādīt priekšskatījumu",canvasTooBig:"Iespējams, tāfele ir par lielu.",canvasTooBigTip:"Ieteikums: mēģiniet satuvināt pašus tālākos elementus."},WRe={headingMain:"Notikusi kļūda. Mēģiniet <button>pārlādēt lapu.</button>",clearCanvasMessage:"Ja pārlādēšana nestrādā, mēģiniet <button>notīrot tāfeli.</button>",clearCanvasCaveat:" Tas novedīs pie darba zaudēšanas ",trackedToSentry:"Kļūda ar kodu {{eventId}} tika noteikta mūsu sistēmā.",openIssueMessage:"Mēs uzmanījāmies, lai neiekļautu jūsu ainas informāciju šajā kļūdā. Ja jūsu aina nav privāta, lūdzu ziņojiet par šo kļūdu mūsu <button>kļūdu uzskaitē.</button> Lūdzu, miniet sekojošo informāciju to kopējot un ielīmējot jūsu ziņojumā platformā GitHub.",sceneContent:"Ainas saturs:"},qRe={desc_intro:"Varat ielūgt cilvēkus pašreizējajā ainā, lai sadarbotos ar tiem.",desc_privacy:"Neuztraucieties, sesija izmanto šifrēšanu no gala līdz galam, tātad jūsu zīmējums paliks privāts. Pat mūsu serveri nevarēs redzēt, ar ko esat nācis klajā.",button_startSession:"Sākt sesiju",button_stopSession:"Beigt sesiju",desc_inProgressIntro:"Notiek tiešsaistes sadarbības sesija.",desc_shareLink:"Dalieties ar šo saiti ar jebkuru, ar ko vēlaties sadarboties:",desc_exitSession:"Sesijas beigšana jūs atvienos no sadarbošanās, bet jūs vēl joprojām varēsiet strādāt ar ainu savā datorā. Ievērojiet, ka šis neietekmēs citus dalībniekus, un viņi vēl joprojām varēs sadarboties savā ainas versijā.",shareTitle:"Pievienoties tiešsaistes sadarbībai programmā Excalidraw"},zRe={title:"Kļūda"},ZRe={disk_title:"Saglabāt diskā",disk_details:"Eksportēt ainas datus datnē, ko vēlāk varēsiet importēt.",disk_button:"Saglabāt datnē",link_title:"Kopīgošanas saite",link_details:"Eksportēt kā tikai lasāmu saiti.",link_button:"Eksportēt kā saiti",excalidrawplus_description:"Saglabāt ainu savā Excalidraw+ darbvietā.",excalidrawplus_button:"Eksportēt",excalidrawplus_exportError:"Pašreiz nevarēja eksportēt uz Excalidraw+..."},VRe={blog:"Lasīt mūsu blogu",click:"klikšķis",deepSelect:"Atlasīt dziļumā",deepBoxSelect:"Atlasīt dziļumā kastes ietvaros, un nepieļaut pavilkšanu",curvedArrow:"Liekta bulta",curvedLine:"Liekta līnija",documentation:"Dokumentācija",doubleClick:"dubultklikšķis",drag:"vilkt",editor:"Redaktors",editLineArrowPoints:"Rediģēt līniju/bultu punktus",editText:"Rediģēt tekstu/pievienot birku",github:"Sastapāt kļūdu? Ziņot",howto:"Sekojiet mūsu instrukcijām",or:"vai",preventBinding:"Novērst bultu piesaistīšanos",tools:"Rīki",shortcuts:"Tastatūras saīsnes",textFinish:"Pabeigt rediģēšanu (teksta redaktorā)",textNewLine:"Nākamā rindiņa (teksta redaktorā)",title:"Palīdzība",view:"Skatīt",zoomToFit:"Iestatīt mērogu, kas iekļauj visus elementus",zoomToSelection:"Iestatīt mērogu, lai rādītu atlasi",toggleElementLock:"Fiksēt/atbrīvot atlasīto",movePageUpDown:"Pārvietot lapu augšup/lejup",movePageLeftRight:"Pārvietot lapu pa labi/kreisi"},jRe={title:"Notīrīt tāfeli"},XRe={title:"Publicēt bibliotēku",itemName:"Vienuma nosaukums",authorName:"Autora vārds",githubUsername:"GitHub lietotājvārds",twitterUsername:"Twitter lietotājvārds",libraryName:"Bibliotēkas nosaukums",libraryDesc:"Bibliotēkas apraksts",website:"Mājaslapa",placeholder:{authorName:"Jūsu vārds vai lietotājvārds",libraryName:"Jūsu bibliotēkas nosaukums",libraryDesc:"Bibliotēkas apraksts, kas palīdzēs citiem saprast tās pielietojumu",githubHandle:"GitHub lietotājvārds (neobligāts), lai jūs varētu rediģēt bibliotēku pēc tās iesniegšanas izskatīšanai",twitterHandle:"Twitter lietotājvārds (neobligāts), lai mēs varētu jūs pieminēt kā autoru, kad reklamēsim bibliotēku platformā Twitter",website:"Saikne uz jūsu personīgo mājaslapu vai kādu citu lapu (neobligāta)"},errors:{required:"Obligāts",website:"Ievadiet derīgu URL"},noteDescription:"Iesniegt savu bibliotēku iekļaušanai <link>publiskajā bibliotēku datubāzē</link>, lai citi to varētu izmantot savos zīmējumos.",noteGuidelines:"Šai bibliotēkai vispirms jātiek manuāli apstiprinātai. Lūdzu, izlasiet <link>norādījumus</link> pirms iesniegšanas. Jums vajadzēs GitHub kontu, lai sazinātos un veiktu izmaiņas, ja tādas būs pieprasītas, bet tas nav absolūti nepieciešams.",noteLicense:"Iesniedzot bibliotēku, jūs piekrītat tās publicēšanai saskaņā ar <link>MIT Licenci, </link>kas īsumā nozīmē, ka jebkurš to varēs izmantot bez ierobežojumiem.",noteItems:"Katram bibliotēkas vienumam jābūt savam nosaukumam, lai to varētu atrast filtrējot. Tiks iekļauti sekojošie bibliotēkas vienumi:",atleastOneLibItem:"Lūdzu, atlasiet vismaz vienu bibliotēkas vienumu, lai sāktu darbu",republishWarning:"Ievēro: daži no atzīmētajiem objektiem jau atzīmēti kā publicēti vai iesniegti publicēšanai. Tos vajadzētu atkārtoti iesniegt tikai tad, ja vēlies labot esošo bibliotēku."},$Re={title:"Bibliotēka iesniegta",content:"Paldies, {{authorName}}! Jūsu bibliotēka iesniegta izskatīšanai. Jūs varat izsekot iesnieguma statusam<link>šeit</link>"},ANe={resetLibrary:"Atiestatīt bibliotēku",removeItemsFromLib:"Noņemt atlasītos vienumus no bibliotēkas"},eNe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},tNe={tooltip:"Jūsu zīmējumi ir šifrēti no gala līdz galam; līdz ar to Excalidraw serveri tos nekad neredzēs.",link:"Ieraksts par šifrēšanu no gala līdz galam Excalidraw blogā"},rNe={angle:"Leņķis",element:"Elements",elements:"Elementi",height:"Augstums",scene:"Aina",selected:"Atlasīti",storage:"Krātuve",title:"Statistika entuziastiem",total:"Kopā",version:"Versija",versionCopy:"Klikšķiniet, lai nokopētu",versionNotAvailable:"Versija nav pieejama",width:"Platums"},iNe={addedToLibrary:"Pievienots bibliotēkai",copyStyles:"Nokopēja stilus.",copyToClipboard:"Nokopēja starpliktuvē.",copyToClipboardAsPng:"Nokopēja {{exportSelection}} starpliktuvē kā PNG ({{exportColorScheme}})",fileSaved:"Datne saglabāta.",fileSavedToFilename:"Saglabāts kā {filename}",canvas:"tāfeli",selection:"atlasi",pasteAsSingleElement:"Izmantojiet {{shortcut}}, lai ielīmētu kā jaunu elementu, vai ielīmētu esošā teksta lauciņā",unableToEmbed:"",unrecognizedLinkFormat:""},uNe={transparent:"Caurspīdīgs",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},aNe={app:{center_heading:"Visi jūsu dati tiek glabāti uz vietas jūsu pārlūkā.",center_heading_plus:"Vai tā vietā vēlies doties uz Excalidraw+?",menuHint:"Eksportēšana, iestatījumi, valodas..."},defaults:{menuHint:"Eksportēšana, iestatījumi un vēl...",center_heading:"Diagrammas. Izveidotas. Vienkārši.",toolbarHint:"Izvēlies rīku un sāc zīmēt!",helpHint:"Īsceļi un palīdzība"}},nNe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},oNe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},sNe={title:"",button:"",description:"",syntax:"",preview:""},Zcr={labels:MRe,library:TRe,buttons:YRe,alerts:HRe,errors:KRe,toolBar:JRe,headings:ORe,hints:PRe,canvasError:_Re,errorSplash:WRe,roomDialog:qRe,errorDialog:zRe,exportDialog:ZRe,helpDialog:VRe,clearCanvasDialog:jRe,publishDialog:XRe,publishSuccessDialog:$Re,confirmDialog:ANe,imageExportDialog:eNe,encrypted:tNe,stats:rNe,toast:iNe,colors:uNe,welcomeScreen:aNe,colorPicker:nNe,overwriteConfirm:oNe,mermaid:sNe}});var YNe={};yt(YNe,{alerts:()=>ENe,buttons:()=>BNe,canvasError:()=>pNe,clearCanvasDialog:()=>bNe,colorPicker:()=>UNe,colors:()=>NNe,confirmDialog:()=>FNe,default:()=>Vcr,encrypted:()=>SNe,errorDialog:()=>DNe,errorSplash:()=>fNe,errors:()=>dNe,exportDialog:()=>yNe,headings:()=>hNe,helpDialog:()=>wNe,hints:()=>QNe,imageExportDialog:()=>xNe,labels:()=>cNe,library:()=>CNe,mermaid:()=>TNe,overwriteConfirm:()=>MNe,publishDialog:()=>vNe,publishSuccessDialog:()=>kNe,roomDialog:()=>mNe,stats:()=>LNe,toast:()=>RNe,toolBar:()=>INe,welcomeScreen:()=>GNe});var cNe,CNe,BNe,ENe,dNe,INe,hNe,QNe,pNe,fNe,mNe,DNe,yNe,wNe,bNe,vNe,kNe,FNe,xNe,SNe,LNe,RNe,NNe,GNe,UNe,MNe,TNe,Vcr;var HNe=P(()=>{qt();cNe={paste:"चिटकवा",pasteAsPlaintext:"साधा मजकूर च्या रुपात पेस्ट करा",pasteCharts:"चार्ट चिकटवा",selectAll:"समस्त निवडा",multiSelect:"निवडित तत्व जोडा",moveCanvas:"पटल हलवा",cut:"कापा",copy:"प्रतिलिपी",copyAsPng:"PNG रूपे फळी वर कॉपी करा",copyAsSvg:"SVG रूपे फळी वर कॉपी करा",copyText:"लिखित रूपे फळी वर कॉपी करा",copySource:"स्त्रोत फळी वर कॉपी करा",convertToCode:"सांकेतिक लिपित रूपांतरित करा",bringForward:"पुढे पुढे आणा",sendToBack:"सर्वात मागे करा",bringToFront:"सर्वात पुढे आणा",sendBackward:"मागे मागे करा",delete:"हटवा",copyStyles:"शैली कॉपी करा",pasteStyles:"कॉपी केलेली शैली वापरा",stroke:"रेघे चा रंग",background:"पार्श्वभूमी",fill:"भरा",strokeWidth:"रेघ रुंदी",strokeStyle:"रेघ शैली",strokeStyle_solid:"भरीव",strokeStyle_dashed:"तुटित तुटित",strokeStyle_dotted:"ठिपके ठिपके",sloppiness:"गबाळेपणा",opacity:"अपारदर्शक्ता",textAlign:"मजकूर संरेखन",edges:"किनारी",sharp:"टोचरं",round:"गोलाकार",arrowheads:"बाण टोक",arrowhead_none:"कुठलाहि नाही",arrowhead_arrow:"बाण",arrowhead_bar:"दांडुक",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"त्रिकोण",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"अक्षर आकार",fontFamily:"अक्षर समूह",addWatermark:'"एक्सकेलीड्रॉ ने बनवलेलं" जोडा',handDrawn:"हातानी बनवलेलं",normal:"सामान्य",code:"सांकेतिक लिपि",small:"छोटे",medium:"मध्यम",large:"मोठं",veryLarge:"फार मोठं",solid:"भरीव",hachure:"हैशूर रेखांकन",zigzag:"वाकडी तिकड़ी",crossHatch:"आडव्या रेघा",thin:"पातळ",bold:"जाड",left:"डावं",center:"मधे",right:"उजवं",extraBold:"जास्त जाड",architect:"वास्तुविद्याविशारद",artist:"कलाकार",cartoonist:"व्यंग्य चित्रकार",fileTitle:"फाईलचे नाव",colorPicker:"रंग निवडक",canvasColors:"कॅनवास वर वापरलेले",canvasBackground:"पटल पार्श्वभूमि",drawingCanvas:"चित्र पटल",layers:"स्तर",actions:"क्रिया",language:"भाषा",liveCollaboration:"ज्वलंत सहयोग...",duplicateSelection:"प्रतिलिपि",untitled:"अशीर्षकांकित",name:"नाव",yourName:"तुमचे नाव",madeWithExcalidraw:"एक्सकेलीड्रॉ ने बनवलेलं",group:"समूह निवड",ungroup:"समूह निवड ला रद्द करा",collaborators:"Sahayog",showGrid:"ग्रिड दाखवा",addToLibrary:"संग्रह मधे सम्मिलित करा",removeFromLibrary:"संग्रहातून काढ़ा",libraryLoadingMessage:"संग्रह लोड होत आहे…",libraries:"संग्रह देखे",loadingScene:"दृश्य लोड होत आहे…",align:"संरेखित करा",alignTop:"वर संरेखित करा",alignBottom:"खाली संरेखित करा",alignLeft:"डावा बाजूला संरेखित करा",alignRight:"उजव्या बाजूला संरेखित करा",centerVertically:"मधल्या मधे उभं संरेखित करा",centerHorizontally:"मधल्या मधे आडवं संरेखित करा",distributeHorizontally:"आडवं वितरित करा",distributeVertically:"उभं वितरित करा",flipHorizontal:"आडवं फ्लिप करा",flipVertical:"उभं फ्लिप करा",viewMode:"पहायची पद्धत",share:"सामायिक करा",showStroke:"रेघ रंग निवड यंत्र दाखवा",showBackground:"पार्श्वभूमि: रंग निवड यंत्र दाखवा",toggleTheme:"शैली बदला",personalLib:"वैयक्तिक संग्रह",excalidrawLib:"एक्सकेलीड्रॉ संग्रह",decreaseFontSize:"अक्षर आकार छोटा करा",increaseFontSize:"अक्षर आकार मोठा करा",unbindText:"लेखन संबंध संपवा",bindText:"शब्द समूह ला पात्रात घ्या",createContainerFromText:"मजकूर कंटेनर मधे मोडून दाखवा",link:{edit:"दुवा संपादन",editEmbed:"कड़ी सम्पादित करा आणि रुतवा",create:"दुवा तयार करा",createEmbed:"नवीन कड़ी बनवा आणि रुतवा",label:"दुवा",labelEmbed:"कड़ी आणि रूतवणे",empty:"कुठलिही कड़ी दिली नाही"},lineEditor:{edit:"रेघ संपादन",exit:"रेघ संपादकाबाहेर"},elementLock:{lock:"कुलूपात ठेवा",unlock:"कुलूपातून बाहेर",lockAll:"सर्व कुलूपात ठेवा",unlockAll:"सर्व कुलूपातून बाहेर"},statusPublished:"प्रकाशित करा",sidebarLock:"साइडबार उघडं ठेवा",selectAllElementsInFrame:"चौकटीतले सर्व तत्वांचे चयन करा",removeAllElementsFromFrame:"चौकटीतून सर्व काढून टाका",eyeDropper:"चित्रफलकातून रंग निवडा",textToDiagram:"",prompt:""},CNe={noItems:"अजून कोणतेही आइटम जोडलेले नाही...",hint_emptyLibrary:"पटल वर एक वस्तु निवडुन एथे जोडा, किव्हा एक संग्रह जन कोष कडुन खाली स्थापित करा.",hint_emptyPrivateLibrary:"ईथे जोडण्या साठी पटल वरून एक वस्तु निवडा."},BNe={clearReset:"पटल पुसा",exportJSON:"फ़ाइलमधे बाहेर ठेवा",exportImage:"प्रतिमा निर्यात करा...",export:"येथे सुरक्षित करा...",copyToClipboard:"फळी वर कॉपी करा",save:"वर्तमान फ़ाइल मधे जतन करा",saveAs:"ह्या नावाने जतन करा",load:"उघडा",getShareableLink:"सामायिके साठी दुवा प्राप्त करा",close:"बंद करा",selectLanguage:"भाषा निवड करा",scrollBackToContent:"पहलेचा मजकुर वर मागे स्क्रॉल करा",zoomIn:"मोठं करून पहा",zoomOut:"छोटं करून पहा",resetZoom:"छोटं मोठं करणं बंद करा",menu:"यादि",done:"झालं",edit:"संपादित करा",undo:"पूर्ववत करा",redo:"पुन्हा करा(&R)",resetLibrary:"संग्रह पुनर्स्थित करा",createNewRoom:"एक नवी खोली बनवा",fullScreen:"पूर्ण दृश्यपटल",darkMode:"अंधार स्थिथि",lightMode:"उजेड स्थिति",zenMode:"ध्यानग्र स्थिति",objectsSnapMode:"वस्तूंपासून पकड़ा",exitZenMode:"ध्यानग्र स्थितितून बाहेर",cancel:"रद्द",clear:"स्वछ",remove:"हटवा",embed:"रुतवणे उलटे करा",publishLibrary:"प्रकाशित करा",submit:"जमा करा",confirm:"पुष्टि करा",embeddableInteractionButton:"संवादा साठी क्लिक करा"},ENe={clearReset:"पटल स्वच्छ होणार, तुम्हाला खात्री आहे का?",couldNotCreateShareableLink:"सामायी करण करण्या योग्य दुवा नाही बनवता आला.",couldNotCreateShareableLinkTooBig:"सामायी करण करण्या योग्य दुवा नाही बनवता आला: दृश्य फार मोठं आहे",couldNotLoadInvalidFile:"अवैध फ़ाइल लोड करता आली नाही",importBackendFailed:"बैकएंड हून मागवणे विफल झाले.",cannotExportEmptyCanvas:"रिकामा पटल जतन करता येत नाही.",couldNotCopyToClipboard:"पटल वर कॉपी नाही झाली.",decryptFailed:"डीक्रिप्ट करता आले नाही.",uploadedSecurly:"अपलोड या टोकापासून त्या टोकापर्यंत कूटबद्धित करून सुरक्षित केले गेले आहे, हयाचा अर्थ असा की एक्सकेलीड्रॉ सर्व्हर आणि तृतीय पक्ष मजकूर वाचू शकत नाहीत.",loadSceneOverridePrompt:"बाह्य रेखाचित्र लोड केल्याने तुमची तुमचा विद्यमान मजकूर बदलेल. हे काम तुम्हाला चालू ठेवायचे आहे का?",collabStopOverridePrompt:`सत्र थांबवल्याने तुमचे पूर्वीचे, स्थानिकरित्या संग्रहित रेखाचित्र अधिलिखित होईल. तुला खात्री आहे?
|
||
|
||
(तुम्हाला तुमचे स्थानिक रेखाचित्र ठेवायचे असल्यास, त्याऐवजी फक्त ब्राउझर टॅब बंद करा.)`,errorAddingToLibrary:"संग्रहात तत्व जोडू शकलो नाही",errorRemovingFromLibrary:"संग्रहातून तत्व काढू शकलो नाही",confirmAddLibrary:"हे तुमच्या संग्राहात {{numShapes}} आकार (एक किव्हा अनेक) जोडेल. तुला खात्री आहे?",imageDoesNotContainScene:"या प्रतिमेमध्ये कोणताही दृश्य डेटा असल्याचे दिसत नाही. बाहेर जतन करताना तुम्ही दृश्य रुतवले होते का?",cannotRestoreFromImage:"प्रतिमा फ़ाइल पासून दृश्य पुनः रचित नाही झाला",invalidSceneUrl:"दिलेल्या यू-आर-एल पासून दृश्य आणू शकलो नाही. तो एकतर बरोबार नाही आहे किंवा त्यात वैध एक्सकेलीड्रॉ जेसन डेटा नाही.",resetLibrary:"पटल स्वच्छ होणार, तुम्हाला खात्री आहे का?",removeItemsFromsLibrary:"संग्रहातून {{count}} तत्व (एक किव्हा अनेक) काढू?",invalidEncryptionKey:"कूटबद्धन कुंजी 22 अक्षरांची असणे आवश्यक आहे. थेट सहयोग अक्षम केले आहे.",collabOfflineWarning:`इंटरनेट कनेक्शन उपलब्ध नाही.
|
||
तुमचे बदल जतन केले जाणार नाहीत!`},dNe={unsupportedFileType:"असमर्थित फाइल प्रकार.",imageInsertError:"प्रतिमा आत घालता येत नाही. नंतर पुन्हा प्रयत्न करा...",fileTooBig:"फाइल फार मोठी आहे. आकाराची कमाल परवानगी {{maxSize}} आहे.",svgImageInsertError:"एस-वी-जी प्रतिमा आत घालवू शकलो नाही. एस-वी-जी-मार्क-अप यंत्र अयोग्य आहे.",failedToFetchImage:"प्रतिमा आणणे नाही जमले.",invalidSVGString:"अयोग्य एस-वी-जी.",cannotResolveCollabServer:"कॉलेब-सर्वर हे पोहोचत नाही आहे. पान परत लोड करायचा प्रयत्न करावे.",importLibraryError:"संग्रह प्रतिस्थापित नाही करता आला",collabSaveFailed:"काही कारणा निमित्त आतल्या डेटाबेसमध्ये जतन करू शकत नाही। समस्या तशिस राहिल्यास, तुम्ही तुमचे काम गमावणार नाही याची खात्री करण्यासाठी तुम्ही तुमची फाइल स्थानिक जतन करावी.",collabSaveFailed_sizeExceeded:`लगता है कि पृष्ठ तल काफ़ी बड़ा है, इस्कारण अंदरूनी डेटाबेस में सहेजा नहीं जा सका। किये काम को खोने न देने के लिये अपनी फ़ाइल को स्थानीय रूप से सहेजे।
|
||
|
||
बॅकएंड डेटाबेसमध्ये जतन करू शकत नाही, कॅनव्हास खूप मोठा असल्याचे दिसते. तुम्ही तुमचे काम गमावणार नाही याची खात्री करण्यासाठी तुम्ही फाइल स्थानिक पातळीवर जतन करावी.`,imageToolNotSupported:"प्रतिमां अक्षम केली गेली आहेत.",brave_measure_text_error:{line1:"असं वाटते की तुम्हीं Brave ब्राउज़र वापरतात आहात आणि त्या बरोबार <bold>आक्रामक पद्धति चें बोटांचे ठसे </bold> हां सेटिंग्स चा विकल्प चयन केलेला आहे.",line2:"हे तुमच्या चित्रांच्या <bold>पाठ तत्वांनां </bold> खंडित करू शकतात.",line3:"तुम्हाला आमच्या कड़ून खूप आग्रह आहे की हे सेटिंग्स मधले चयन नका करु. <link>हे अनुक्रम </link> हे कसे करावे हे दाखवु शकते.",line4:"ही सेटिंग अक्षम करूनही पृष्ठ योग्यरित्या प्रदर्शित होत नसल्यास, आमच्या GitHub वर <issueLink>समस्या</issueLink> सबमिट करा, किव्हा <discordLink>डिस्कॉर्ड</discordLink> वर आम्हाला लिहा"},libraryElementTypeError:{embeddable:"रुतलेले तत्व समूह कोषात जोडले जाऊ शकत नाही.",iframe:"आयफ़्रेम तत्व समूहकोषात जोडला जाऊ शकत नाही.",image:"प्रतिमा समूह कोषात जोड़ायचे लवकरच येत आहेत!"},asyncPasteFailedOnRead:"चिटकवता नाही जमले ( सिस्टम क्लिप्बॉर्ड पासून वाचणे नाही जमले).",asyncPasteFailedOnParse:"चिटकवता नाही जमले.",copyToSystemClipboardFailed:"क्लिपबोर्ड वर प्रतिलिपि करणे नाही जमले."},INe={selection:"निवड",image:"प्रतिमा आत घाला",rectangle:"आयत",diamond:"चौकोन आकाराचा",ellipse:"अंडाकार",arrow:"बाण",line:"रेखा",freedraw:"रेखांकित करा",text:"टेक्स्ट",library:"संग्रह",lock:"निवडलेले यंत्र चित्रकरण झाल्या नंतर ही सक्रिय ठेवा",penMode:"पेन चा मोड - स्पर्श टाळा",link:"निवडलेल्या आकारासाठी दुवा जोडा/बदल करा",eraser:"खोड रबर",frame:"चौकट यंत्र",magicframe:"वायरफ़्रेम पासून सांकेतिक लिपि",embeddable:"वेब रुतवा",laser:"लेसर टॉर्च",hand:"हात ( सरकवण्या चे उपकरण)",extraTools:"आणिक यंत्रे",mermaidToExcalidraw:"मर्मेड पासून एक्सकाली मधे",magicSettings:"कृतिम बुद्दिवत्ता सेटिंग्स"},hNe={canvasActions:"पटल क्रिया",selectedShapeActions:"निवडित आकार क्रिया",shapes:"आकार"},QNe={canvasPanning:"कॅनव्हास सरकवण्या साठी, ड्रॅग करताना माउस व्हील धरा किंवा स्पेसबार दाबून ठेवा अथवा हात वालं उपकरण वापरा",linearElement:"अनेक बिंदु साठी क्लिक करा, रेघे साठी ड्रैग करा",freeDraw:"क्लिक आणि ड्रैग करा, झालं तेव्हा सोडा",text:"टीप: तुम्हीं निवड यंत्रानी कोठेही दुहेरी क्लिक करून टेक्स्ट जोडू शकता",embeddable:"वेबसाइट रुतोण्या साठी दाबून-खेचा (क्लिक-ड्रैग करा)",text_selected:"लेखन संपादन साठी दुहेरी क्लिक करा किव्हा एंटर दाबा",text_editing:"संपादन संपवायचं असल्यास एस्केप दाबा किव्हा कंट्रोल या कम्मांड बरोबार एंटर दाबा",linearElementMulti:"शेवटच्या बिंदु वर क्लिक करा किव्हा एस्केप या एंटर दाबा",lockAngle:"शिफ्ट धरून तुम्ही कोन मर्यादित करू शकता",resize:`आकार छोटा मोठा करताना SHIFT धरून तुम्ही प्रमाण मर्यादित करू शकता,
|
||
केंद्रापासून आकार छोटा मोठा करण्यासाठी ALT धरून ठेवा`,resizeImage:`SHIFT धरून तुम्ही मुक्तपणे आकार मोठा छोटा करु शकता,
|
||
केंद्रापासून आकार मोठा छोटा करण्यासाठी ALT धरून ठेवा`,rotate:"फिरवत असताना शिफ्ट धरून तुम्ही कोन मर्यादित करू शकता",lineEditor_info:"पॉइंट संपादित करण्यासाठी CtrlOrCmd दाबून ठेवुन डबल-क्लिक करा किंवा CtrlOrCmd + Enter बरोबर दाबा",lineEditor_pointSelected:`बिंदु (एक किव्हा अनेक) काढ़ण्या साठी डिलीट की दाबा,
|
||
CtrlOrCmd बरोबार D प्रति साठी,
|
||
किव्हा ड्रेग हलवण्या साठी`,lineEditor_nothingSelected:`संपादित करण्यासाठी एक बिंदू निवडा (अनेक निवडण्यासाठी SHIFT धरून ठेवा),
|
||
किंवा Alt धरून ठेवा आणि नवीन बिंदू जोडण्यासाठी क्लिक करा`,placeImage:"प्रतिमा ठेवण्यासाठी क्लिक करा, किंवा त्याचा आकार बदलण्या साठी क्लिक करा आणि ड्रॅग करा",publishLibrary:"आपला खाजगी संग्रह प्रकाशित करा",bindTextToElement:"मजकूर जोडण्यासाठी एंटर की दाबा",deepBoxSelect:"खोल निवड ह्या साठी कंट्रोल किव्हा कमांड दाबून ठेवा, आणि बाहेर खेचणे वाचवण्या साठी पण",eraserRevert:"खोडण्या साठी घेतलेल्या वस्तु ना घेण्या साठी Alt दाबून ठेवावे",firefox_clipboard_write:'हे वैशिष्ट्य "dom.events.asyncClipboard.clipboardItem" फ्लॅग "सत्य" वर सेट करून शक्यतो सक्षम केले जाऊ शकते. Firefox मध्ये ब्राउझर फ्लॅग बदलण्यासाठी, "about:config" पृष्ठावर जा.',disableSnapping:"स्नैपिंग अक्षम करण्या साठी CtrlOrCmd दाबून ठेवा"},pNe={cannotShowPreview:"पूर्वावलोकन दाखवू शकत नाही",canvasTooBig:"पटल खूप जास्त मोठा असू शकतो.",canvasTooBigTip:"टीप: दूर चा तत्व थोडं जवळ आणण्याचा प्रयत्न करावा."},fNe={headingMain:"त्रुटि आली. परत प्रयत्न करा <button>ह्या पानाला पुनः लोड करा.</button>",clearCanvasMessage:"रीलोडिंग होत नसल्यास, परत प्रयत्न करा <button>पटल स्वच्छ करित आहे.</button>",clearCanvasCaveat:" त्यामुळे केलेल्या कामाचे नुकसान होईल ",trackedToSentry:"त्रुटि क्रमांक के साथ त्रुटि {{eventId}} आमच्या प्रणाली नी निरीक्षण केले होते.",openIssueMessage:"त्रुटीत तुमची दृश्य माहिती समाविष्ट न करण्यासाठी आम्ही खूप सावध होतो. तुमचा सीन खाजगी नसल्यास, कृपया आम्हाला पुढ च्या कारवाई साठी सम्पर्क साधा <button>त्रुटि व्यवस्थापन.</button> कृपया गिटहब समस्येमध्ये कॉपी आणि पेस्ट करून खालिल माहिती समाविष्ट करा.",sceneContent:"दृश्य विषय:"},mNe={desc_intro:"तुम्ही तुमच्या सध्याच्या दृश्यासाठी लोकांना आपल्यासह सहयोग करण्यासाठी आमंत्रित करू शकता.",desc_privacy:"काळजी करू नका, सत्र या टोकापासून त्या टोकापर्यंत कूटबद्धता वापरते, त्यामुळे तुम्ही जे काही काढाल ते खाजगी राहील. तुम्ही काय घेऊन आला आहात हे आमचा सर्व्हर ही देखील पाहू शकत नाही.",button_startSession:"सत्र सुरु करा",button_stopSession:"सत्र थाम्बवा",desc_inProgressIntro:"थेट सहयोग सत्र चालू आहे.",desc_shareLink:"तुम्ही ज्यांच्याशी सहयोग करू इच्छिता त्यांच्याशी ही दुवा सामायिक करा:",desc_exitSession:"सत्र थांबवल्याने तुम्हीं खोली तून बाहेर याल, तरिही तुम्ही स्थानिक पातळीवर दृश्यासह काम करु शकाल. लक्षात ठेवा की याचा इतर लोकांवर परिणाम होणार नाही आणि ते त्यांच्या आवृत्तीवर सहयोग करित राहातील.",shareTitle:"एक्सकेलीड्रॉ वर थेट सहयोग सत्रात सामील व्हा"},DNe={title:"त्रुटि"},yNe={disk_title:"डिस्क मधे जतन करा",disk_details:"सीन डेटा बाहेर एक फ़ाइल मधे जतन करा, त्या फ़ाइल मधुम तो डेटा नंतर परत आणु शकता.",disk_button:"फ़ाइल मधे जतन करा",link_title:"सामायिके साठी दुवा",link_details:"नुसतं वाचु देणारा दुवा चा स्वरूपे बाहेर ठेवा.",link_button:"दुवा स्वरूपे बाहेर ठेवा",excalidrawplus_description:"दृश्य तुमच्या एक्सकेलीड्रॉ कार्यक्षेत्र मधे जतन करा.",excalidrawplus_button:"बाहेर ठेवा",excalidrawplus_exportError:"एक्सकेलीड्रॉ मधे बाहेर ठेवता नाही येत..."},wNe={blog:"आमचा ब्लॉग वाचा",click:"क्लिक करा",deepSelect:"खोल निवड",deepBoxSelect:"चौकट मधे खोल निवड करा आणि बाहेर ओढणे वाचवा",curvedArrow:"वक्र बाण",curvedLine:"वक्र रेघ",documentation:"कागदपत्रे",doubleClick:"दुहेरी क्लिक",drag:"ओढा",editor:"संपादक",editLineArrowPoints:"रेघ/तीर बिंदु सम्पादित करा",editText:"पाठ्य सम्पादित करा/ लेबल जोडा",github:"समस्या मिळाली? प्रस्तुत करा",howto:"आमच्या मार्गदर्शकाचे अनुसरण करा",or:"किंवा",preventBinding:"बाण बंधन होणं टाळा",tools:"अवजार",shortcuts:"कीबोर्ड शॉर्टकट",textFinish:"संपादन संपले (मजकूर संपादन)",textNewLine:"नवी ओळ जोडा (मजकूर संपादक)",title:"मदत",view:"दृश्य",zoomToFit:"सर्व तत्व दिसतील असे दृश्यरूप आकार करा",zoomToSelection:"निवडी प्रयंत दृश्यरूप आकार करा",toggleElementLock:"कुलूपातून आत/बाहेर निवड",movePageUpDown:"पान वर/खाली करा",movePageLeftRight:"पान डावी/उजवी कडे करा"},bNe={title:"पटल स्वच्छ करा"},vNe={title:"संग्रह प्रकाशित करा",itemName:"वस्तु चे नाव",authorName:"लेखक चे नाव",githubUsername:"गिटहब वापरकर्तानाव",twitterUsername:"ट्विटर वापरकर्तानाव",libraryName:"संग्रहाचे नाव",libraryDesc:"संग्रहाचे वर्णन",website:"वेबसाइट",placeholder:{authorName:"तुमचे नाव किव्हा वापरकर्तानाव",libraryName:"तुमचा संग्रहाचे नाव",libraryDesc:"तुमचा संग्रहाचे वर्णन लोकांना संग्रहा बद्दल जाणकारी देतील",githubHandle:"गिटहब हैंडल (वैकल्पिक), एकदा संग्रह पुनरावलोकना साठी जमा केल्या नंतर ही तुम्हीं सम्पादित करु शकता",twitterHandle:"ट्विटर वापरकार्यक नाव (वैकल्पिक), त्यामुळे ट्विटर वर ज़हीरांति साठी कोणाला गुण द्यायचे हे आम्हाला समजेल",website:"दुवा तुमच्या वैयक्तिक वेब-साइट किव्हा कुठे दूसरिकडे (ऐच्छिक) करावा"},errors:{required:"आवश्यक आहे",website:"वैध यू-आर-एल द्या"},noteDescription:"समाविष्ट करण्या साठी तुमचा संग्रह ह्याचात जमा करा <link>सार्वजनिक संग्रहाचे कोठार</link>इतर लोकांना त्यांच्या रेखाचित्रांमधे वापरण्यासाठी.",noteGuidelines:"संग्रहाला आधी स्वहस्ते स्वीकृती मिळणे आवश्यक आहे. कृपया हे वाचा <link>मार्गदर्शक तत्त्वे</link> जमा करण्या पूर्वी, तुमच्या जवळ एक गिटहब खाते असणे आवश्यक आहे जे संवादा साठी आणिक बदल करण्या साठी लागेल, तरी हे सर्व अगदी आवश्यक नाही आहे.",noteLicense:"जमा करताना तुम्हीं सहमति दाखवतात आहे की संग्रह ह्याचा खाली प्रकाशित होईल <link>एम-आइ-टी परवाना, </link>ज्याचा थोडक्यात अर्थ कोणीही निर्बंधांशिवाय वापरू शकतो.",noteItems:"प्रतैक संग्रहाचे नाव, नीट शोधनासाठी, असणे आवश्यक आहे. खाली दिलेल्या वस्तु समाविष्ट केल्या जातील:",atleastOneLibItem:"सुरु करण्यासाठी, कृपया करून, कमित कमी एक वस्तु तरी निवडा",republishWarning:"टीप: काही निवडक आयटम आधीच प्रकाशित/प्रस्तुत केलेले आहेत. विद्यमान लायब्ररी किंवा प्रस्तुतित आयटम अद्यावित करताना तुम्ही फक्त तो पुन्हा प्रस्तुत करा."},kNe={title:"संग्रह जमा केला",content:"धन्यवाद {{authorName}}. आपला संग्रह पुनरावलोकना साठी जमा झाला आहे. तुम्हीं स्थिति सारखी तपासू सकता<link>इकडे</link>"},FNe={resetLibrary:"संग्रह पुनर्स्थित करा",removeItemsFromLib:"निवडलेले आयटम्स संग्रहातून काढा"},xNe={header:"प्रतिमा निर्यात करा",label:{withBackground:"पार्श्वभूमि",onlySelected:"फक्त चयन केलेले",darkMode:"अंधारमय स्थिति",embedScene:"दृश्य रुतवा",scale:"क़िती पट",padding:"ग़ादी"},tooltip:{embedScene:"दृश्य डेटा निर्यात केलेल्या पी-एन-जी किव्हा एस-वी-जी फ़ाईल मधे सुरक्षीत केला जाईल, त्याने दृश्य पुनः परत आणता येईल. निर्यात केलेली फ़ाईल चा आकार त्याने वाढेल."},title:{exportToPng:"पी-एन-जी स्वरूपात बाहेर ठेवा",exportToSvg:"एस-वी-जी स्वरूपात बाहेर ठेवा",copyPngToClipboard:"पी-एन-जी रूपे फळी वर कॉपी करा"},button:{exportToPng:"पीएनजी",exportToSvg:"एसविज़ी",copyPngToClipboard:"फळी वर कॉपी करा"}},SNe={tooltip:"तुमचे चित्रे या टोकापासून त्या टोकापर्यंत कूटबद्धतित आहेत, त्या कारणांनी ऐक्सकैलिड्रॉ सर्वर्स ह्यानां ते पहाणं कधीच जमणार नाही.",link:"ब्लॉग पोस्ट ऐक्सकैलिड्रॉ मधे या टोकापासून त्या टोकापर्यंत कूटबद्धतित आहेत"},LNe={angle:"कोण",element:"वस्तु",elements:"वस्तु",height:"उंची",scene:"दृश्य",selected:"निवडलेले",storage:"साठवण",title:"अभ्यासू लोगो के लिये आंकडे",total:"योग",version:"आवृत्ती",versionCopy:"कॉपी करायला क्लिक करा",versionNotAvailable:"आवृति उपलब्ध नाही",width:"रुंदी"},RNe={addedToLibrary:"संग्रह मधे सम्मिलित",copyStyles:"कॉपी केलेली शैली.",copyToClipboard:"फळी वर कॉपी झाली.",copyToClipboardAsPng:`{{exportSelection}} फळी वर पी-एन-जी स्वरूपात कॉपी झाली
|
||
({{exportColorScheme}})`,fileSaved:"फ़ाइल जतन झाली.",fileSavedToFilename:"{filename} मधे जतन झाली",canvas:"पटल",selection:"निवड",pasteAsSingleElement:`एक घटक म्हणून चिपकावण्या साठी {{shortcut}} वापरा,
|
||
किंवा विद्यमान मजकूर संपादकात चिपकवा`,unableToEmbed:"युआरेल रूतवणे प्रतिबंधित आहेत. आपली युआरेल श्वेतसूचित आणण्या साठी कृपया एक मुद्दा ग़िटहब वर उठवा",unrecognizedLinkFormat:"जी युआरेल तुम्हीं रतवली आहे, ती आपेक्षित प्रकारे नाही आहे. कृपया स्त्रोत साइट नी 'रूतवण्या साठी दिलेलि लिपि' चिपकावण्याचा प्रयास करा"},NNe={transparent:"पारदर्शक",black:"काळा",white:"पांढरा",red:"लाल",pink:"गुलाबी",grape:"अंगूरी",violet:"जांभळा",gray:"राखाडी",blue:"निळा",cyan:"आकाशी",teal:"हिरवट निळा",green:"हिरवा",yellow:"पिवळा",orange:"केशरी",bronze:"कांस्य"},GNe={app:{center_heading:"तुमचा सर्व डेटा तुमच्या ब्राउझरमध्ये स्थानिक पातळीवर जतन केला जातो.",center_heading_plus:"त्याऐवजी तुम्हाला Excalidraw+ वर जायचे आहे का?",menuHint:"निर्यात, आवड़ी-निवडी, भाषा, ..."},defaults:{menuHint:"निर्यात, आवड़ी निवडी आणि आणकिही...",center_heading:"आकृत्या. काढणे. सोपे.",toolbarHint:"एक साधन निवडा आणि चित्रीकरण सुरु करा!",helpHint:"शॉर्टकट आणि सहाय्य"}},UNe={mostUsedCustomColors:"सर्वात जास्त वापरणीस रंग",colors:"रंग",shades:"रंगछटा",hexCode:"हेक्स कोड",noShades:"ह्या रंगाच्या छटा उपलब्ध नाहित"},MNe={action:{exportToImage:{title:"छवि स्वरूपे निर्यात करा",button:"छवि स्वरूपे निर्यात करा",description:"सीन डेटा बाहेर एक फ़ाइल मधे जतन करा, त्या फ़ाइल मधुन तो डेटा नंतर परत आणु शकता."},saveToDisk:{title:"डिस्क मधे जतन करा",button:"डिस्क मधे जतन करा",description:"सीन डेटा बाहेर एक फ़ाइल मधे जतन करा, त्या फ़ाइल मधुन तो डेटा नंतर परत आणु शकता."},excalidrawPlus:{title:"एक्षकालीड्रॉ +",button:"एक्षकाली ड्रॉ+ मधे निर्यात करा",description:"दृष्य तुमच्या एक्षकालीड्रॉ+ चा कार्यस्थल मधे जतन करा."}},modal:{loadFromFile:{title:"फ़ाइल मधुन लोड करा",button:"फ़ाइल मधुन लोड करा",description:"फ़ाइल मधुन लोड केल्या वर ते <bold>तुमचा सध्याचा कामा ठिकाणि एईल </bold><br></br> तुम्हीं तुमचं चित्र एकाधं खाली दिलेलं विकल्प निवडुन पहले सुरक्षीत करु शकता."},shareableLink:{title:"लिंक पासून लोड करा",button:"माझ सध्याचे कार्य बदला",description:"बाहरी चित्र लोड केल्या वर ते <bold>तुमचा सध्याचा कामा ठिकाणि एईल </bold><br></br> तुम्हीं तुमचं चित्र एकाधं खाली दिलेलं विकल्प निवडुन पहले सुरक्षीत करु शकता."}}},TNe={title:"मर्मेड पासून एक्सकाली मधे",button:"शिरवा",description:"",syntax:"मर्मेड संरचना नियम",preview:"पूर्वावलोकन"},Vcr={labels:cNe,library:CNe,buttons:BNe,alerts:ENe,errors:dNe,toolBar:INe,headings:hNe,hints:QNe,canvasError:pNe,errorSplash:fNe,roomDialog:mNe,errorDialog:DNe,exportDialog:yNe,helpDialog:wNe,clearCanvasDialog:bNe,publishDialog:vNe,publishSuccessDialog:kNe,confirmDialog:FNe,imageExportDialog:xNe,encrypted:SNe,stats:LNe,toast:RNe,colors:NNe,welcomeScreen:GNe,colorPicker:UNe,overwriteConfirm:MNe,mermaid:TNe}});var BGe={};yt(BGe,{alerts:()=>PNe,buttons:()=>ONe,canvasError:()=>ZNe,clearCanvasDialog:()=>eGe,colorPicker:()=>gGe,colors:()=>sGe,confirmDialog:()=>iGe,default:()=>jcr,encrypted:()=>aGe,errorDialog:()=>XNe,errorSplash:()=>VNe,errors:()=>_Ne,exportDialog:()=>$Ne,headings:()=>qNe,helpDialog:()=>AGe,hints:()=>zNe,imageExportDialog:()=>uGe,labels:()=>KNe,library:()=>JNe,mermaid:()=>CGe,overwriteConfirm:()=>cGe,publishDialog:()=>tGe,publishSuccessDialog:()=>rGe,roomDialog:()=>jNe,stats:()=>nGe,toast:()=>oGe,toolBar:()=>WNe,welcomeScreen:()=>lGe});var KNe,JNe,ONe,PNe,_Ne,WNe,qNe,zNe,ZNe,VNe,jNe,XNe,$Ne,AGe,eGe,tGe,rGe,iGe,uGe,aGe,nGe,oGe,sGe,lGe,gGe,cGe,CGe,jcr;var EGe=P(()=>{qt();KNe={paste:"ထား",pasteAsPlaintext:"",pasteCharts:"",selectAll:"အကုန်ရွေး",multiSelect:"ရွေးထားသည့်ထဲပုံထည့်",moveCanvas:"ကားချပ်ရွှေ့",cut:"",copy:"ကူး",copyAsPng:"PNG အနေဖြင့်ကူး",copyAsSvg:"SVG အနေဖြင့်ကူး",copyText:"",copySource:"",convertToCode:"",bringForward:"ရှေ့ပို့",sendToBack:"နောက်ဆုံးထား",bringToFront:"ရှေ့ဆုံးထား",sendBackward:"နောက်ပို့",delete:"ဖျက်",copyStyles:"ပုံစံကူး",pasteStyles:"ပုံစံထား",stroke:"မျဉ်း",background:"နောက်ခံ",fill:"ဖြည့်",strokeWidth:"မျဉ်းအထူ",strokeStyle:"မျဉ်းပုံစံ",strokeStyle_solid:"အပြည့်",strokeStyle_dashed:"မျဉ်းပြတ်",strokeStyle_dotted:"မျဉ်းစက်",sloppiness:"သေသပ်မှု",opacity:"ထင်ရှားမှု",textAlign:"စာသားညှိ",edges:"အစွန်း",sharp:"ထောင့်ချွန်",round:"ထောင့်ဝိုင်း",arrowheads:"မြှားခေါင်း",arrowhead_none:"ဘာမျှမရှိ",arrowhead_arrow:"မြှား",arrowhead_bar:"",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"စာလုံးအရွယ်",fontFamily:"စာလုံးပုံစံ",addWatermark:'"Excalidraw ဖြင့်ဖန်တီးသည်။" စာသားထည့်',handDrawn:"လက်ရေး",normal:"ပုံမှန်",code:"ကုဒ်",small:"အသေး",medium:"အလတ်",large:"အကြီး",veryLarge:"ပိုကြီး",solid:"အပြည့်",hachure:"မျဉ်းစောင်း",zigzag:"",crossHatch:"ဇကာကွက်",thin:"ပါး",bold:"ထူ",left:"ဘယ်",center:"အလယ်",right:"ညာ",extraBold:"ပိုထူ",architect:"ဗိသုကာ",artist:"ပန်းချီ",cartoonist:"ကာတွန်း",fileTitle:"",colorPicker:"အရောင်ရွေး",canvasColors:"",canvasBackground:"ကားချပ်နောက်ခံ",drawingCanvas:"ပုံဆွဲကားချပ်",layers:"အလွှာများ",actions:"လုပ်ဆောင်ချက်များ",language:"ဘာသာစကား",liveCollaboration:"",duplicateSelection:"ပွား",untitled:"အမည်မရှိ",name:"အမည်",yourName:"သင့်အမည်",madeWithExcalidraw:"Excalidraw ဖြင့်ဖန်တီးသည်။",group:"အုပ်စုဖွဲ့",ungroup:"အုပ်စုဖျက်သိမ်း",collaborators:"ပူးပေါင်းပါဝင်သူများ",showGrid:"",addToLibrary:"မှတ်တမ်းတင်",removeFromLibrary:"မှတ်တမ်းမှထုတ်",libraryLoadingMessage:"မှတ်တမ်းအား တင်သွင်းနေသည်…",libraries:"စာကြည့်တိုက်တွင်ရှာဖွေပါ",loadingScene:"မြင်ကွင်းဖော်နေသည်…",align:"ချိန်ညှိ",alignTop:"ထိပ်ညှိ",alignBottom:"အခြေညှိ",alignLeft:"ဘယ်ညှိ",alignRight:"ညာညှိ",centerVertically:"ဒေါင်လိုက်အလယ်ညှိ",centerHorizontally:"အလျားလိုက်အလယ်ညှိ",distributeHorizontally:"အလျားလိုက်",distributeVertically:"ထောင်လိုက်",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},JNe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},ONe={clearReset:"ကားချပ်ရှင်းလင်း",exportJSON:"",exportImage:"",export:"",copyToClipboard:"ကူးယူ",save:"",saveAs:"ပြောင်းသိမ်း",load:"",getShareableLink:"မျှဝေရန် လင့်ခ်ရယူ",close:"ပိတ်",selectLanguage:"ဘာသာစကားရွေးပါ",scrollBackToContent:"ကားချပ်ပြန်တည်",zoomIn:"ချဲ့",zoomOut:"ချုံ့",resetZoom:"ပုံမှန်ပြန်ထား",menu:"မီနူး",done:"ပြီးပြီ",edit:"ပြင်ဆင်",undo:"ပြန်ထား",redo:"ထပ်လုပ်",resetLibrary:"",createNewRoom:"အခန်းသစ်ဖွဲ့",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"ဇင်မြင်ကွင်းမှထွက်",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},PNe={clearReset:"ကားချပ်တစ်ခုလုံးရှင်းလင်းပါတော့မည်။ အတည်ပြုပါ။",couldNotCreateShareableLink:"မျှဝေရန် လင့်ခ်မရယူနိုင်သေးပါ။",couldNotCreateShareableLinkTooBig:"မြင်ကွင်းအရမ်းကြီးနေသဖြင့် မျှဝေရန် လင့်ခ်မရယူနိုင်သေးပါ။",couldNotLoadInvalidFile:"လွဲမှားနေသောဖိုင်အား တင်၍မရပါ။",importBackendFailed:"Backend မှမလုပ်ဆောင်နိုင်သေးပါ။",cannotExportEmptyCanvas:"ကားချပ်အလွတ်အားထုတ်ယူ၍မရပါ။",couldNotCopyToClipboard:"",decryptFailed:"အချက်အလက်ဖော်ယူ၍မရပါ။",uploadedSecurly:"တင်သွင်းအချက်အလက်များအား နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်စနစ်အသုံးပြု၍လုံခြုံစွာထိန်းသိမ်းထားပါသဖြင့် Excalidraw ဆာဗာနှင့်ဆက်စပ်အဖွဲ့အစည်းများပင်လျှင်မဖတ်ရှုနိုင်ပါ။",loadSceneOverridePrompt:"လက်ရှိရေးဆွဲထားသမျှအား ပြင်ပမှတင်သွင်းသောပုံနှင့်အစားထိုးပါမည်။ ဆက်လက်ဆောင်ရွက်လိုပါသလား။",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"{{numShapes}} ခုသောပုံသဏ္ဌာန်အားမှတ်တမ်းတင်ပါမည်။ အတည်ပြုပါ။",imageDoesNotContainScene:"",cannotRestoreFromImage:"ဤပုံဖြင့်မြင်ကွင်းပြန်လည်မရယူနိုင်ပါ။",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},_Ne={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},WNe={selection:"ရွေးချယ်",image:"",rectangle:"စတုဂံ",diamond:"စိန်",ellipse:"အဝိုင်း",arrow:"မြှား",line:"မျဉ်း",freedraw:"",text:"စာသား",library:"မှတ်တမ်း",lock:"ရွေးချယ်ထားသောကိရိယာကိုသာဆက်သုံး",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},qNe={canvasActions:"ကားချပ်လုပ်ဆောင်ချက်",selectedShapeActions:"ပုံသဏ္ဌာန်လုပ်ဆောင်ချက်",shapes:"ပုံသဏ္ဌာန်များ"},zNe={canvasPanning:"",linearElement:"အမှတ်များချမှတ်ရေးဆွဲရန်ကလစ်နှိပ်ပါ၊ မျဉ်းတစ်ကြောင်းတည်းအတွက် တရွတ်ဆွဲပါ။",freeDraw:"ကလစ်နှိပ်၍ တရွတ်ဆွဲပါ၊ ပြီးလျှင်လွှတ်ပါ။",text:"မှတ်ချက်။ ။မည်သည့်ကိရိယာရွေးထားသည်ဖြစ်စေ ကလစ်နှစ်ချက်နှိပ်၍စာသားထည့်နိုင်သည်",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"နောက်ဆုံးအမှတ်ပေါ်တွင်ကလစ်နှိပ်ခြင်း၊ Escape (သို့) Enter နှိပ်ခြင်းတို့ဖြင့်အဆုံးသတ်နိုင်",lockAngle:"",resize:"အချိုးအစားကန့်သတ်ရန် Shift နှင့် ဗဟိုမှချိန်ညှိရန် Alt တို့ကိုနှိပ်ထားနိုင်သည်",resizeImage:"",rotate:"Shift ကိုနှိပ်ထားခြင်းဖြင့် ထောင့်အလိုက်လှည့်နိုင်သည်",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},ZNe={cannotShowPreview:"နမူနာမပြသနိုင်ပါ",canvasTooBig:"ကားချပ်အလွန်ကြီးကောင်းကြီးနေနိုင်သည်။",canvasTooBigTip:"မှတ်ချက်။ ။ဝေးကွာနေသော ပုံများ၊ စာများအား ပိုမိုနီးကပ်အောင်ရွှေ့ကြည့်ပါ။"},VNe={headingMain:"ချို့ယွင်းမှုဖြစ်ပေါ်ခဲ့သဖြင့် ထပ်မံကြိုးစားကြည့်ရန် <button>စာမျက်နှာအား အသစ်ပြန်လည်ရယူပါ။</button>",clearCanvasMessage:"အသစ်ပြန်လည်မရယူနိုင်ပါက ထပ်မံကြိုးစားကြည့်ရန်<button>ကားချပ်အား ရှင်းလင်းပါ။</button>",clearCanvasCaveat:" ရေးဆွဲထားသည်များ ဆုံးရှုံးနိုင်သည် ",trackedToSentry:"ချို့ယွင်းမှုသတ်မှတ်ချက် {{eventId}} အားစနစ်အတွင်းခြေရာကောက်ပြီးပါပြီ။",openIssueMessage:"ချို့ယွင်းမှုမှတ်တမ်းတွင် အရေးကြီးအချက်အလက်များပါဝင်မှုမရှိစေရန်အထူးသတိပြုပါသည်။ မပါဝင်ပါက ဆက်လက်ဆောင်ရွက်ရန် <button>ချို့ယွင်းမှုအားခြေရာကောက်ပါ။</button> အောက်ပါအချက်အလက်များအား Github တွင် Issue အနေဖြင့်ဖြည့်သွင်းဖော်ပြပေးပါ။",sceneContent:"မြင်ကွင်းပါအချက်အလက်။ ။"},jNe={desc_intro:"လက်ရှိမြင်ကွင်းတွင်ပူးပေါင်းရေးဆွဲရန် အခြားသူများအား ဖိတ်ကြားနိုင်သည်။",desc_privacy:"နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်ထားသဖြင့်ရေးဆွဲသမျှအား ဆာဗာပေါ်မှပင်လျှင်ကြည့်ရှုနိုင်မည်မဟုတ်ပါ။ မစိုးရိမ်ပါနှင့်။",button_startSession:"ပူးပေါင်းမှုစတင်",button_stopSession:"ပူးပေါင်းမှုအဆုံးသတ်",desc_inProgressIntro:"တိုက်ရိုက်ပူးပေါင်းရေးဆွဲမှုများပြုလုပ်နေပါသည်။",desc_shareLink:"ဤလင့်ခ်အား ပူးပေါင်းရေးဆွဲလိုသူများထံပေးပို့ပါ။ ။ ",desc_exitSession:"ပူးပေါင်းမှုရပ်တန့်ပါက အဖွဲ့အတွင်းမှထွက်ခွာသွားမည်ဖြစ်သော်လည်း မိမိမြင်ကွင်းတွင်ဆက်လက်ရေးဆွဲနိုင်ပါမည်။ အဖွဲ့အတွင်းကျန်ရှိနေခဲ့သောအခြားပါဝင်သူများသည်လည်း ဆက်လက်ပူးပေါင်းရေးဆွဲနေနိုင်ပါလိမ့်မည်။",shareTitle:""},XNe={title:"ချို့ယွင်းချက်"},$Ne={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},AGe={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},eGe={title:""},tGe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},rGe={title:"",content:""},iGe={resetLibrary:"",removeItemsFromLib:""},uGe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},aGe={tooltip:"ရေးဆွဲထားသောပုံများအား နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်ထားသဖြင့် Excalidraw ၏ဆာဗာများပင်လျှင်မြင်တွေ့ရမည်မဟုတ်ပါ။",link:""},nGe={angle:"ထောင့်",element:"",elements:"",height:"အမြင့်",scene:"မြင်ကွင်း",selected:"ရွေးချယ်သည်",storage:"သိုလှောင်ခန်း",title:"အက္ခရာများအတွက်အချက်အလက်များ",total:"စုစုပေါင်း",version:"",versionCopy:"",versionNotAvailable:"",width:"အကျယ်"},oGe={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},sGe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},lGe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},gGe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},cGe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},CGe={title:"",button:"",description:"",syntax:"",preview:""},jcr={labels:KNe,library:JNe,buttons:ONe,alerts:PNe,errors:_Ne,toolBar:WNe,headings:qNe,hints:zNe,canvasError:ZNe,errorSplash:VNe,roomDialog:jNe,errorDialog:XNe,exportDialog:$Ne,helpDialog:AGe,clearCanvasDialog:eGe,publishDialog:tGe,publishSuccessDialog:rGe,confirmDialog:iGe,imageExportDialog:uGe,encrypted:aGe,stats:nGe,toast:oGe,colors:sGe,welcomeScreen:lGe,colorPicker:gGe,overwriteConfirm:cGe,mermaid:CGe}});var OGe={};yt(OGe,{alerts:()=>QGe,buttons:()=>hGe,canvasError:()=>yGe,clearCanvasDialog:()=>xGe,colorPicker:()=>HGe,colors:()=>TGe,confirmDialog:()=>RGe,default:()=>Xcr,encrypted:()=>GGe,errorDialog:()=>vGe,errorSplash:()=>wGe,errors:()=>pGe,exportDialog:()=>kGe,headings:()=>mGe,helpDialog:()=>FGe,hints:()=>DGe,imageExportDialog:()=>NGe,labels:()=>dGe,library:()=>IGe,mermaid:()=>JGe,overwriteConfirm:()=>KGe,publishDialog:()=>SGe,publishSuccessDialog:()=>LGe,roomDialog:()=>bGe,stats:()=>UGe,toast:()=>MGe,toolBar:()=>fGe,welcomeScreen:()=>YGe});var dGe,IGe,hGe,QGe,pGe,fGe,mGe,DGe,yGe,wGe,bGe,vGe,kGe,FGe,xGe,SGe,LGe,RGe,NGe,GGe,UGe,MGe,TGe,YGe,HGe,KGe,JGe,Xcr;var PGe=P(()=>{qt();dGe={paste:"Lim inn",pasteAsPlaintext:"Lim inn som klartekst",pasteCharts:"Lim inn diagrammer",selectAll:"Velg alt",multiSelect:"Legg til element i utvalg",moveCanvas:"Flytt lerretet",cut:"Klipp ut",copy:"Kopier",copyAsPng:"Kopier til PNG",copyAsSvg:"Kopier til utklippstavlen som SVG",copyText:"Kopier til utklippstavlen som tekst",copySource:"",convertToCode:"",bringForward:"Flytt framover",sendToBack:"Send bakerst",bringToFront:"Flytt forrest",sendBackward:"Send bakover",delete:"Slett",copyStyles:"Kopier stiler",pasteStyles:"Lim inn stiler",stroke:"Strek",background:"Bakgrunn",fill:"Fyll",strokeWidth:"Strektykkelse",strokeStyle:"Strekstil",strokeStyle_solid:"Heltrukket",strokeStyle_dashed:"Stiplet",strokeStyle_dotted:"Prikket",sloppiness:"Ujevnhet",opacity:"Synlighet",textAlign:"Tekstjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilspisser",arrowhead_none:"Ingen",arrowhead_arrow:"Pil",arrowhead_bar:"Søyle",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trekant",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Skriftstørrelse",fontFamily:"Fontfamilie",addWatermark:'Legg til "Laget med Excalidraw"',handDrawn:"Håndtegnet",normal:"Normal",code:"Kode",small:"Liten",medium:"Medium",large:"Stor",veryLarge:"Svært stor",solid:"Helfarge",hachure:"Skravert",zigzag:"Sikk-sakk",crossHatch:"Krysskravert",thin:"Tynn",bold:"Tykk",left:"Venstre",center:"Midtstill",right:"Høyre",extraBold:"Ekstra tykk",architect:"Arkitekt",artist:"Kunstner",cartoonist:"Tegner",fileTitle:"Filnavn",colorPicker:"Fargevelger",canvasColors:"Brukes på lerretet",canvasBackground:"Lerretsbakgrunn",drawingCanvas:"Lerret",layers:"Lag",actions:"Handlinger",language:"Språk",liveCollaboration:"Sanntids-samarbeid...",duplicateSelection:"Dupliser",untitled:"Uten navn",name:"Navn",yourName:"Ditt navn",madeWithExcalidraw:"Laget med Excalidraw",group:"Gruppér utvalg",ungroup:"Avgruppér utvalg",collaborators:"Samarbeidspartnere",showGrid:"Vis rutenett",addToLibrary:"Legg til i bibliotek",removeFromLibrary:"Fjern fra bibliotek",libraryLoadingMessage:"Laster bibliotek…",libraries:"Bla gjennom biblioteker",loadingScene:"Laster inn scene…",align:"Juster",alignTop:"Juster øverst",alignBottom:"Juster nederst",alignLeft:"Juster venstre",alignRight:"Juster høyre",centerVertically:"Midtstill vertikalt",centerHorizontally:"Midtstill horisontalt",distributeHorizontally:"Distribuer horisontalt",distributeVertically:"Distribuer vertikalt",flipHorizontal:"Snu horisontalt",flipVertical:"Snu vertikalt",viewMode:"Visningsmodus",share:"Del",showStroke:"Vis fargevelger for kantfarge",showBackground:"Vis fargevelger for bakgrunnsfarge",toggleTheme:"Veksle tema",personalLib:"Personlig bibliotek",excalidrawLib:"Excalidraw-bibliotek",decreaseFontSize:"Reduser skriftstørrelse",increaseFontSize:"Øk skriftstørrelse",unbindText:"Avbind tekst",bindText:"Bind tekst til beholderen",createContainerFromText:"La tekst flyte i en beholder",link:{edit:"Rediger lenke",editEmbed:"Rediger lenke og bygg inn",create:"Opprett lenke",createEmbed:"Opprett lenke og bygg inn",label:"Lenke",labelEmbed:"Lenk & bygg inn",empty:"Ingen lenke er valgt"},lineEditor:{edit:"Rediger linje",exit:"Avslutt linjeredigering"},elementLock:{lock:"Lås",unlock:"Lås opp",lockAll:"Lås alle",unlockAll:"Lås opp alle"},statusPublished:"Publisert",sidebarLock:"Holde sidemenyen åpen",selectAllElementsInFrame:"Velg alle elementene i rammen",removeAllElementsFromFrame:"Fjern alle elementer fra rammen",eyeDropper:"Velg farge fra lerretet",textToDiagram:"",prompt:""},IGe={noItems:"Ingen elementer lagt til ennå...",hint_emptyLibrary:"Velg et objekt på lerretet for å legge det til her, eller installer et bibliotek fra den offentlige samlingen under.",hint_emptyPrivateLibrary:"Velg et objekt på lerretet for å legge det til her."},hGe={clearReset:"Tøm lerretet og tilbakestill bakgrunnsfargen",exportJSON:"Eksporter til fil",exportImage:"Eksporter bilde...",export:"Lagre som...",copyToClipboard:"Kopier til utklippstavle",save:"Lagre til aktiv fil",saveAs:"Lagre som",load:"Åpne",getShareableLink:"Få delingslenke",close:"Lukk",selectLanguage:"Velg språk",scrollBackToContent:"Skroll tilbake til innhold",zoomIn:"Zoom inn",zoomOut:"Zoom ut",resetZoom:"Nullstill zoom",menu:"Meny",done:"Ferdig",edit:"Rediger",undo:"Angre",redo:"Gjør om",resetLibrary:"Nullstill bibliotek",createNewRoom:"Opprett et nytt rom",fullScreen:"Fullskjerm",darkMode:"Mørk modus",lightMode:"Lys modus",zenMode:"Zen-modus",objectsSnapMode:"",exitZenMode:"Avslutt zen-modus",cancel:"Avbryt",clear:"Tøm",remove:"Fjern",embed:"Slå av/på innebygging",publishLibrary:"Publiser",submit:"Send inn",confirm:"Bekreft",embeddableInteractionButton:"Klikk for å samhandle"},QGe={clearReset:"Dette vil tømme lerretet. Er du sikker?",couldNotCreateShareableLink:"Kunne ikke lage delbar lenke.",couldNotCreateShareableLinkTooBig:"Kunne ikke opprette lenke til deling: scenen er for stor",couldNotLoadInvalidFile:"Kunne ikke laste inn ugyldig fil",importBackendFailed:"Importering av backend feilet.",cannotExportEmptyCanvas:"Kan ikke eksportere et tomt lerret.",couldNotCopyToClipboard:"Kunne ikke kopiere til utklippstavlen.",decryptFailed:"Kunne ikke dekryptere data.",uploadedSecurly:"Opplastingen er kryptert og kan ikke leses av Excalidraw-serveren eller tredjeparter.",loadSceneOverridePrompt:"Å laste inn ekstern tegning vil erstatte det eksisterende innholdet. Ønsker du å fortsette?",collabStopOverridePrompt:`Hvis du slutter økten, overskrives din forrige, lokalt lagrede tegning. Er du sikker?
|
||
|
||
(Hvis du ønsker å beholde din lokale tegning, bare lukk nettleserfanen i stedet.)`,errorAddingToLibrary:"Kunne ikke legge element i biblioteket",errorRemovingFromLibrary:"Kunne ikke fjerne element fra biblioteket",confirmAddLibrary:"Dette vil legge til {{numShapes}} figur(er) i biblioteket ditt. Er du sikker?",imageDoesNotContainScene:"Det ser ikke ut til at dette bildet inneholder noen scenedata. Har du aktivert innebygging av scene under eksporten?",cannotRestoreFromImage:"Scenen kunne ikke gjenopprettes fra denne bildefilen",invalidSceneUrl:"Kunne ikke importere scene fra den oppgitte URL-en. Den er enten ødelagt, eller inneholder ikke gyldig Excalidraw JSON-data.",resetLibrary:"Dette vil tømme biblioteket ditt. Er du sikker?",removeItemsFromsLibrary:"Slett {{count}} element(er) fra biblioteket?",invalidEncryptionKey:"Krypteringsnøkkel må ha 22 tegn. Live-samarbeid er deaktivert.",collabOfflineWarning:`Ingen Internett-tilkobling tilgjengelig.
|
||
Endringer dine vil ikke bli lagret!`},pGe={unsupportedFileType:"Filtypen støttes ikke.",imageInsertError:"Kunne ikke sette inn bildet. Prøv igjen senere...",fileTooBig:"Filen er for stor. Maksimal tillatt størrelse er {{maxSize}}.",svgImageInsertError:"Kunne ikke sette inn SVG-bilde. SVG-koden ser ugyldig ut.",failedToFetchImage:"",invalidSVGString:"Ugyldig SVG.",cannotResolveCollabServer:"Kunne ikke koble til samarbeidsserveren. Vennligst oppdater siden og prøv på nytt.",importLibraryError:"Kunne ikke laste bibliotek",collabSaveFailed:"Kan ikke lagre i backend-databasen. Hvis problemer vedvarer, bør du lagre filen lokalt for å sikre at du ikke mister arbeidet.",collabSaveFailed_sizeExceeded:"Kunne ikke lagre til backend-databasen, lerretet ser ut til å være for stort. Du bør lagre filen lokalt for å sikre at du ikke mister arbeidet ditt.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Ser ut som om du bruker Brave nettleser med <bold>Aggressivt Block Finger</bold> -innstillingen aktivert.",line2:"Dette kan resultere i å bryte <bold>tekst-elementene</bold> i tegningene.",line3:"Vi anbefaler på det sterkeste å deaktivere denne innstillingen. Du kan følge <link>disse trinnene</link> om hvordan du gjør det.",line4:"Hvis deaktivering av denne innstillingen ikke fikser visningen av tekstelementer, vennligst åpne en <issueLink>sak</issueLink> på vår GitHub, eller skriv oss på <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Innebygde elementer kan ikke legges til i biblioteket.",iframe:"",image:"Støtte for å legge til bilder i biblioteket kommer snart!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},fGe={selection:"Velg",image:"Sett inn bilde",rectangle:"Rektangel",diamond:"Diamant",ellipse:"Ellipse",arrow:"Pil",line:"Linje",freedraw:"Tegn",text:"Tekst",library:"Bibliotek",lock:"Behold merket verktøy som aktivt",penMode:"Pennemodus - forhindre berøring",link:"Legg til / oppdater link for en valgt figur",eraser:"Viskelær",frame:"Rammeverktøy",magicframe:"",embeddable:"Nettinnbygging",laser:"",hand:"Hånd (panoreringsverktøy)",extraTools:"Flere verktøy",mermaidToExcalidraw:"",magicSettings:""},mGe={canvasActions:"Handlinger: lerret",selectedShapeActions:"Handlinger: valgt objekt",shapes:"Former"},DGe={canvasPanning:"For å flytte lerretet, hold musehjulet eller mellomromstasten mens du drar, eller bruk hånd-verktøyet",linearElement:"Klikk for å starte linje med flere punkter, eller dra for en enkel linje",freeDraw:"Klikk og dra, slipp når du er ferdig",text:"Tips: du kan også legge til tekst ved å dobbeltklikke hvor som helst med utvalgsverktøyet",embeddable:"Klikk og dra for å opprette en nettside innebygd",text_selected:"Dobbeltklikk eller trykk ENTER for å redigere tekst",text_editing:"Trykk Escape eller Ctrl/Cmd+Enter for å fullføre redigering",linearElementMulti:"Klikk på siste punkt eller trykk Escape eller Enter for å fullføre",lockAngle:"Du kan låse vinkelen ved å holde nede SHIFT",resize:`Du kan beholde forholdet ved å trykke SHIFT mens du endrer størrelse,
|
||
trykk ALT for å endre størrelsen fra midten`,resizeImage:`Du kan endre størrelse fritt ved å holde SHIFT,
|
||
hold ALT for å endre størrelse fra midten`,rotate:"Du kan låse vinklene ved å holde SHIFT mens du roterer",lineEditor_info:"Hold Ctrl/Cmd og dobbelklikk eller trykk Ctrl/Cmd + Enter for å endre punkter",lineEditor_pointSelected:"Trykk på Slett for å fjerne punktet, Ctrl / Cmd+D for å duplisere, eller dra for å flytte",lineEditor_nothingSelected:`Velg et punkt å redigere (hold SHIFT for å velge flere),
|
||
eller hold Alt og klikk for å legge til nye punkter`,placeImage:"Klikk for å plassere bildet, eller klikk og dra for å angi størrelsen manuelt",publishLibrary:"Publiser ditt eget bibliotek",bindTextToElement:"Trykk Enter for å legge til tekst",deepBoxSelect:"Hold CTRL/CMD for å markere dypt og forhindre flytting",eraserRevert:"Hold Alt for å reversere elementene merket for sletting",firefox_clipboard_write:'Denne funksjonen kan sannsynligvis aktiveres ved å sette "dom.events.asyncClipboard.clipboardItem" flagget til "true". For å endre nettleserens flagg i Firefox, besøk "about:config"-siden.',disableSnapping:""},yGe={cannotShowPreview:"Kan ikke vise forhåndsvisning",canvasTooBig:"Lerretet kan være for stort.",canvasTooBigTip:"Tips: Prøv å flytte de ytterste elementene litt tettere sammen."},wGe={headingMain:"En feil oppsto. Prøv <button>å laste siden på nytt.</button>",clearCanvasMessage:"Om ny sidelasting ikke fungerer, prøv <button>å tømme lerretet.</button>",clearCanvasCaveat:" Dette vil føre til tap av arbeid ",trackedToSentry:"Feilen med identifikator {{eventId}} ble logget i vårt system.",openIssueMessage:"Vi er veldig nøye med å ikke inkludere dine scene-opplysninger i feilen. Hvis din scene ikke er privat, vurder å følge opp i vårt <button>feilrapporteringssystem.</button> Ta med opplysningene nedenfor ved å kopiere og lime inn i GitHub-saken.",sceneContent:"Scene-innhold:"},bGe={desc_intro:"Du kan invitere personer til scenen din for å samarbeide med deg.",desc_privacy:"Ta det med ro, sesjonen bruker ende-til-ende-kryptering, så alt du tegner forblir privat. Ikke en gang serveren vår kan se hva du lager.",button_startSession:"Start økt",button_stopSession:"Stopp sesjon",desc_inProgressIntro:"Sanntids-samarbeidsøkt er nå i gang.",desc_shareLink:"Del denne linken med de du vil samarbeide med:",desc_exitSession:"Dersom du avslutter sesjonen blir du frakoblet rommet, men du kan fortsette å arbeide med scenen lokalt. Vær oppmerksom på at dette ikke vil påvirke andre personer, og de vil fortsatt ha mulighet til å samarbeide på deres versjon.",shareTitle:"Bli med i en live samarbeidsøkt på Excalidraw"},vGe={title:"Feil"},kGe={disk_title:"Lagre til disk",disk_details:"Eksporter scene-dataene til en fil som du kan importere fra senere.",disk_button:"Lagre til fil",link_title:"Delbar lenke",link_details:"Eksporter som en skrivebeskyttet lenke.",link_button:"Eksporter til lenke",excalidrawplus_description:"Lagre scenen til ditt Excalidraw+ arbeidsområde.",excalidrawplus_button:"Eksporter",excalidrawplus_exportError:"Kunne ikke eksportere til Excalidraw+ for øyeblikket..."},FGe={blog:"Les bloggen vår",click:"klikk",deepSelect:"Marker dypt",deepBoxSelect:"Marker dypt innad i boks og forhindre flytting",curvedArrow:"Buet pil",curvedLine:"Buet linje",documentation:"Dokumentasjon",doubleClick:"dobbeltklikk",drag:"dra",editor:"Redigeringsvisning",editLineArrowPoints:"Rediger linje/pilpunkter",editText:"Rediger tekst / legg til etikett",github:"Funnet et problem? Send inn",howto:"Følg våre veiledninger",or:"eller",preventBinding:"Forhindre pilbinding",tools:"Verktøy",shortcuts:"Tastatursnarveier",textFinish:"Fullfør redigering (teksteditor)",textNewLine:"Legg til ny linje (teksteditor)",title:"Hjelp",view:"Vis",zoomToFit:"Zoom for å se alle elementer",zoomToSelection:"Zoom til utvalg",toggleElementLock:"Lås/lås opp utvalg",movePageUpDown:"Flytt side opp/ned",movePageLeftRight:"Flytt siden til venstre/høyre"},xGe={title:"Tøm lerret"},SGe={title:"Publiser bibliotek",itemName:"Elementnavn",authorName:"Forfatterens navn",githubUsername:"GitHub-brukernavnet",twitterUsername:"Twitter-brukernavn",libraryName:"Biblioteknavn",libraryDesc:"Beskrivelse av bibliotek",website:"Nettsted",placeholder:{authorName:"Ditt navn eller brukernavn",libraryName:"Navnet på biblioteket ditt",libraryDesc:"Beskrivelse av biblioteket ditt for å hjelpe folk med å forstå bruken",githubHandle:"Github-brukernavn (valgfritt), slik at du kan redigere biblioteket når du har sendt inn for gjennomgang",twitterHandle:"Twitter-brukernavn (valgfritt), slik at vi vet hvem vi skal kreditere når promotert på Twitter",website:"Lenke til din personlige nettside eller et annet sted (valgfritt)"},errors:{required:"Påkrevd",website:"Angi en gyldig nettadresse"},noteDescription:"Send inn biblioteket ditt som skal inkluderes i <link>kildekode for offentlig bibliotek</link>for andre å bruke dem i tegninger.",noteGuidelines:"Biblioteket må godkjennes manuelt først. Les <link>retningslinjene</link> før innsending. Du vil trenge en GitHub-konto for å kommunisere og gjøre endringer hvis ønsket, men det er ikke påkrevd.",noteLicense:"Ved å sende inn godtar du at biblioteket blir publisert under <link>MIT-lisens, </link>som kortfattet betyr at andre kan bruke dem uten begrensninger.",noteItems:"Hvert bibliotek må ha sitt eget navn, så det er filtrerbart. Følgende bibliotekselementer vil bli inkludert:",atleastOneLibItem:"Vennligst velg minst ett bibliotek for å komme i gang",republishWarning:"Merk: noen av de valgte elementene er merket som allerede publisert/sendt. Du bør kun sende inn elementer på nytt når du oppdaterer et eksisterende bibliotek eller innlevering."},LGe={title:"Bibliotek innsendt",content:"Takk {{authorName}}. Ditt bibliotek har blitt sendt inn for gjennomgang. Du kan spore statusen<link>her</link>"},RGe={resetLibrary:"Nullstill bibliotek",removeItemsFromLib:"Fjern valgte elementer fra bibliotek"},NGe={header:"Eksporter bilde",label:{withBackground:"Bakgrunn",onlySelected:"Kun valgte",darkMode:"Mørk modus",embedScene:"Bygg inn scene",scale:"Skalering",padding:"Avstand"},tooltip:{embedScene:`Scenedata vil bli lagret i den eksporterte PNG/SVG-filen, slik at scenen kan gjenopprettes fra den.
|
||
Det vil øke den eksporterte filstørrelsen.`},title:{exportToPng:"Eksporter til PNG",exportToSvg:"Eksporter til SVG",copyPngToClipboard:"Kopier PNG til utklippstavlen"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopier til utklippstavle"}},GGe={tooltip:"Dine tegninger er ende-til-ende-krypterte slik at Excalidraw sine servere aldri vil se dem.",link:"Blogginnlegg om ende-til-ende-kryptering i Excalidraw"},UGe={angle:"Vinkel",element:"Element",elements:"Elementer",height:"Høyde",scene:"Scene",selected:"Valgt",storage:"Lagring",title:"Statistikk for nerder",total:"Totalt",version:"Versjon",versionCopy:"Klikk for å kopiere",versionNotAvailable:"Versjon ikke tilgjengelig",width:"Bredde"},MGe={addedToLibrary:"Lagt til i biblioteket",copyStyles:"Kopierte stiler.",copyToClipboard:"Kopiert til utklippstavlen.",copyToClipboardAsPng:`Kopierte {{exportSelection}} til utklippstavlen som PNG
|
||
({{exportColorScheme}})`,fileSaved:"Fil lagret.",fileSavedToFilename:"Lagret til {filename}",canvas:"lerret",selection:"utvalg",pasteAsSingleElement:`Bruk {{shortcut}} for å lime inn som ett enkelt element,
|
||
eller lim inn i en eksisterende tekstbehandler`,unableToEmbed:"Innbygging av denne nettadressen er ikke tillatt. Oppret en sak på GitHub for å be om url-hvitelisting",unrecognizedLinkFormat:'Linken du bygget inn samsvarer ikke med det forventede formatet. Prøv å lime inn "bygg inn"-strengen fra kildesiden'},TGe={transparent:"Gjennomsiktig",black:"Svart",white:"Hvit",red:"Rød",pink:"Rosa",grape:"Drue",violet:"Fiolett",gray:"Grå",blue:"Blå",cyan:"Turkis",teal:"Blågrønn",green:"Grønn",yellow:"Gul",orange:"Oransje",bronze:"Bronse"},YGe={app:{center_heading:"Alle dine data lagres lokalt i din nettleser.",center_heading_plus:"Ønsker du å gå til Excalidraw+ i stedet?",menuHint:"Eksporter, innstillinger, språk, ..."},defaults:{menuHint:"Eksporter, innstillinger og mer...",center_heading:"Diagrammer. Gjort. Enkelt.",toolbarHint:"Velg et verktøy og start å tegne!",helpHint:"Snarveier & hjelp"}},HGe={mostUsedCustomColors:"Mest brukte egendefinerte farger",colors:"Farger",shades:"Toner",hexCode:"Heksadesimal kode",noShades:"Ingen toner tilgjengelig for denne fargen"},KGe={action:{exportToImage:{title:"Eksporter som bilde",button:"Eksporter som bilde",description:"Eksporter scene-dataene til en fil som du kan importere fra senere."},saveToDisk:{title:"Lagre til disk",button:"Lagre til disk",description:"Eksporter scene-dataene til en fil som du kan importere fra senere."},excalidrawPlus:{title:"Excalidraw+",button:"Eksporter til Excalidraw+",description:"Lagre scenen til ditt Excalidraw+-arbeidsområde."}},modal:{loadFromFile:{title:"Last inn fra fil",button:"Last inn fra fil",description:"Å laste fra en fil vil <bold>erstatte ditt eksisterende innhold</bold>.<br></br>Du kan sikkerhetskopiere tegningen din først ved å bruke en av valgene under."},shareableLink:{title:"Last inn fra lenke",button:"Erstatt innholdet mitt",description:"Lasting av ekstern tegning vil <bold>erstatte ditt eksisterende innhold</bold>.<br></br>Du kan sikkerhetskopiere tegningen din først ved å bruke en av valgene nedenfor."}}},JGe={title:"",button:"",description:"",syntax:"",preview:""},Xcr={labels:dGe,library:IGe,buttons:hGe,alerts:QGe,errors:pGe,toolBar:fGe,headings:mGe,hints:DGe,canvasError:yGe,errorSplash:wGe,roomDialog:bGe,errorDialog:vGe,exportDialog:kGe,helpDialog:FGe,clearCanvasDialog:xGe,publishDialog:SGe,publishSuccessDialog:LGe,confirmDialog:RGe,imageExportDialog:NGe,encrypted:GGe,stats:UGe,toast:MGe,colors:TGe,welcomeScreen:YGe,colorPicker:HGe,overwriteConfirm:KGe,mermaid:JGe}});var hUe={};yt(hUe,{alerts:()=>zGe,buttons:()=>qGe,canvasError:()=>$Ge,clearCanvasDialog:()=>uUe,colorPicker:()=>EUe,colors:()=>CUe,confirmDialog:()=>oUe,default:()=>$cr,encrypted:()=>lUe,errorDialog:()=>tUe,errorSplash:()=>AUe,errors:()=>ZGe,exportDialog:()=>rUe,headings:()=>jGe,helpDialog:()=>iUe,hints:()=>XGe,imageExportDialog:()=>sUe,labels:()=>_Ge,library:()=>WGe,mermaid:()=>IUe,overwriteConfirm:()=>dUe,publishDialog:()=>aUe,publishSuccessDialog:()=>nUe,roomDialog:()=>eUe,stats:()=>gUe,toast:()=>cUe,toolBar:()=>VGe,welcomeScreen:()=>BUe});var _Ge,WGe,qGe,zGe,ZGe,VGe,jGe,XGe,$Ge,AUe,eUe,tUe,rUe,iUe,uUe,aUe,nUe,oUe,sUe,lUe,gUe,cUe,CUe,BUe,EUe,dUe,IUe,$cr;var QUe=P(()=>{qt();_Ge={paste:"Plakken",pasteAsPlaintext:"Plakken als platte tekst",pasteCharts:"Plak grafieken",selectAll:"Alles selecteren",multiSelect:"Voeg element toe aan selectie",moveCanvas:"Canvas verplaatsen",cut:"Knip",copy:"Kopiëren",copyAsPng:"Kopieer als PNG",copyAsSvg:"Kopieer naar klembord als SVG",copyText:"Kopieer naar klembord als tekst",copySource:"",convertToCode:"",bringForward:"Breng naar voren",sendToBack:"Stuur naar achtergrond",bringToFront:"Breng naar voorgrond",sendBackward:"Breng naar achter",delete:"Verwijderen",copyStyles:"Kopieer opmaak",pasteStyles:"Plak opmaak",stroke:"Lijn",background:"Achtergrond",fill:"Invulling",strokeWidth:"Lijnbreedte",strokeStyle:"Lijnstijl",strokeStyle_solid:"Ononderbroken",strokeStyle_dashed:"Gestreept",strokeStyle_dotted:"Gestippeld",sloppiness:"Slordigheid",opacity:"Doorzichtigheid",textAlign:"Uitlijning",edges:"Randen",sharp:"Hoekig",round:"Rond",arrowheads:"Pijlpunten",arrowhead_none:"Geen",arrowhead_arrow:"Pijl",arrowhead_bar:"Balk",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Driehoek",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tekstgrootte",fontFamily:"Lettertype",addWatermark:'Voeg "Gemaakt met Excalidraw" toe',handDrawn:"Handgetekend",normal:"Normaal",code:"Code",small:"Klein",medium:"Medium",large:"Groot",veryLarge:"Zeer groot",solid:"Ingekleurd",hachure:"Arcering",zigzag:"",crossHatch:"Tweemaal gearceerd",thin:"Dun",bold:"Vet",left:"Links",center:"Midden",right:"Rechts",extraBold:"Zwaar",architect:"Architect",artist:"Artiest",cartoonist:"Cartoonist",fileTitle:"Bestandsnaam",colorPicker:"Kleurenkiezer",canvasColors:"Gebruikt op canvas",canvasBackground:"Canvas achtergrond",drawingCanvas:"Canvas",layers:"Lagen",actions:"Acties",language:"Taal",liveCollaboration:"Live Samenwerking...",duplicateSelection:"Dupliceer",untitled:"Naamloos",name:"Naam",yourName:"Jouw naam",madeWithExcalidraw:"Gemaakt met Excalidraw",group:"Groeperen",ungroup:"Groep opheffen",collaborators:"Deelnemers",showGrid:"Raster weergeven",addToLibrary:"Voeg toe aan bibliotheek",removeFromLibrary:"Verwijder uit bibliotheek",libraryLoadingMessage:"Bibliotheek laden…",libraries:"Blader door bibliotheken",loadingScene:"Scène laden…",align:"Uitlijnen",alignTop:"Boven uitlijnen",alignBottom:"Onder uitlijnen",alignLeft:"Links uitlijnen",alignRight:"Rechts uitlijnen",centerVertically:"Verticaal Centreren",centerHorizontally:"Horizontaal Centreren",distributeHorizontally:"Horizontaal verspreiden",distributeVertically:"Verticaal distribueren",flipHorizontal:"Horizontaal spiegelen",flipVertical:"Verticaal spiegelen",viewMode:"Weergavemodus",share:"Deel",showStroke:"Toon lijn kleur kiezer",showBackground:"Toon achtergrondkleur kiezer",toggleTheme:"Thema aan/uit",personalLib:"Persoonlijke bibliotheek",excalidrawLib:"Excalidraw bibliotheek",decreaseFontSize:"Letters verkleinen",increaseFontSize:"Letters vergroten",unbindText:"Ontkoppel tekst",bindText:"Koppel tekst aan de container",createContainerFromText:"",link:{edit:"Wijzig link",editEmbed:"Link bewerken & insluiten",create:"Maak link",createEmbed:"Link maken en insluiten",label:"Link",labelEmbed:"Link toevoegen & insluiten",empty:"Er is geen link ingesteld"},lineEditor:{edit:"Bewerk regel",exit:"Verlaat regel-editor"},elementLock:{lock:"Vergrendel",unlock:"Ontgrendel",lockAll:"Vergrendel alles",unlockAll:"Ontgrendel alles"},statusPublished:"Gepubliceerd",sidebarLock:"Zijbalk open houden",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},WGe={noItems:"Nog geen items toegevoegd...",hint_emptyLibrary:"Selecteer een item op het canvas om het hier toe te voegen of installeer een bibliotheek uit de openbare repository, hieronder.",hint_emptyPrivateLibrary:"Selecteer een item op het canvas om het hier toe te voegen."},qGe={clearReset:"Canvas opnieuw instellen",exportJSON:"Exporteren naar bestand",exportImage:"Exporteer afbeelding...",export:"Sla op...",copyToClipboard:"Kopieer",save:"Opslaan naar huidige bestand",saveAs:"Opslaan als",load:"Open",getShareableLink:"Maak een deelbare link",close:"Sluiten",selectLanguage:"Taal selecteren",scrollBackToContent:"Scroll terug naar inhoud",zoomIn:"Inzoomen",zoomOut:"Uitzoomen",resetZoom:"Zoom terugzetten",menu:"Menu",done:"Klaar",edit:"Bewerken",undo:"Ongedaan maken",redo:"Herstel ongedaan maken",resetLibrary:"Bibliotheek Resetten",createNewRoom:"Creëer live-samenwerkingssessie",fullScreen:"Volledig scherm",darkMode:"Donkere modus",lightMode:"Lichte modus",zenMode:"Zen modus",objectsSnapMode:"",exitZenMode:"Verlaat zen modus",cancel:"Annuleren",clear:"Wissen",remove:"Verwijderen",embed:"Insluiten in-/uitschakelen",publishLibrary:"Publiceren",submit:"Versturen",confirm:"Bevestigen",embeddableInteractionButton:"Klik voor interactie"},zGe={clearReset:"Dit zal het hele canvas verwijderen. Weet je het zeker?",couldNotCreateShareableLink:"Kon geen deelbare link aanmaken.",couldNotCreateShareableLinkTooBig:"Kan geen deelbare link aanmaken: de scène is te groot",couldNotLoadInvalidFile:"Kan ongeldig bestand niet laden",importBackendFailed:"Importeren vanuit backend mislukt.",cannotExportEmptyCanvas:"Kan geen leeg canvas exporteren.",couldNotCopyToClipboard:"Kon niet naar klembord kopiëren.",decryptFailed:"Kan gegevens niet decoderen.",uploadedSecurly:"De upload is beveiligd met end-to-end encryptie, wat betekent dat de Excalidraw server en derden de inhoud niet kunnen lezen.",loadSceneOverridePrompt:"Het inladen van een externe tekening zal je bestaande inhoud vervangen. Wil je verdergaan?",collabStopOverridePrompt:`Wanneer de sessie wordt gestopt, overschrijft u de eerdere, lokaal opgeslagen tekening. Weet je het zeker?
|
||
|
||
(Als je de lokale tekening wilt behouden, sluit je in plaats daarvan het browsertabblad)`,errorAddingToLibrary:"Kan item niet toevoegen aan de bibliotheek",errorRemovingFromLibrary:"Kan item niet uit de bibliotheek verwijderen",confirmAddLibrary:"Dit zal {{numShapes}} vorm(en) toevoegen aan je bibliotheek. Weet je het zeker?",imageDoesNotContainScene:"Deze afbeelding lijkt geen scène gegevens te bevatten. Heb je scène embedding tijdens het exporteren ingeschakeld?",cannotRestoreFromImage:"Scène kan niet worden hersteld vanuit dit afbeeldingsbestand",invalidSceneUrl:"Kan scène niet importeren vanuit de opgegeven URL. Het is onjuist of bevat geen geldige Excalidraw JSON-gegevens.",resetLibrary:"Dit zal je bibliotheek wissen. Weet je het zeker?",removeItemsFromsLibrary:"Verwijder {{count}} item(s) uit bibliotheek?",invalidEncryptionKey:"Encryptiesleutel moet 22 tekens zijn. Live samenwerking is uitgeschakeld.",collabOfflineWarning:`Geen internetverbinding beschikbaar.
|
||
Je wijzigingen worden niet opgeslagen!`},ZGe={unsupportedFileType:"Niet-ondersteund bestandstype.",imageInsertError:"Afbeelding invoegen mislukt. Probeer het later opnieuw...",fileTooBig:"Bestand is te groot. Maximale grootte is {{maxSize}}.",svgImageInsertError:"Kon geen SVG-afbeelding invoegen. De SVG-opmaak ziet er niet geldig uit.",failedToFetchImage:"",invalidSVGString:"Ongeldige SVG.",cannotResolveCollabServer:"Kan geen verbinding maken met de collab server. Herlaad de pagina en probeer het opnieuw.",importLibraryError:"Kon bibliotheek niet laden",collabSaveFailed:"Kan niet opslaan in de backend database. Als de problemen blijven bestaan, moet u het bestand lokaal opslaan om ervoor te zorgen dat u uw werk niet verliest.",collabSaveFailed_sizeExceeded:"Kan de backend database niet opslaan, het canvas lijkt te groot te zijn. U moet het bestand lokaal opslaan om ervoor te zorgen dat u uw werk niet verliest.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"Ingesloten elementen kunnen niet worden toegevoegd aan de bibliotheek.",iframe:"",image:"Ondersteuning voor het toevoegen van afbeeldingen aan de bibliotheek komt binnenkort!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},VGe={selection:"Selectie",image:"Voeg afbeelding in",rectangle:"Rechthoek",diamond:"Ruit",ellipse:"Ovaal",arrow:"Pijl",line:"Lijn",freedraw:"Teken",text:"Tekst",library:"Bibliotheek",lock:"Geselecteerde tool actief houden na tekenen",penMode:"Pen modus - Blokkeer aanraken",link:"Link toevoegen / bijwerken voor een geselecteerde vorm",eraser:"Gum",frame:"",magicframe:"",embeddable:"Web insluiten",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},jGe={canvasActions:"Canvasacties",selectedShapeActions:"Acties van geselecteerde vorm",shapes:"Vormen"},XGe={canvasPanning:"Om de canvas te verplaatsen, houd muiswiel of spatiebalk ingedrukt tijdens slepen, of gebruik het handgereedschap",linearElement:"Klik om meerdere punten te starten, sleep voor één lijn",freeDraw:"Klik en sleep, laat los als je klaar bent",text:"Tip: je kunt tekst toevoegen door ergens dubbel te klikken met de selectietool",embeddable:"Klink-sleep om een website-insluiting te maken",text_selected:"Dubbelklik of druk op ENTER om tekst te bewerken",text_editing:"Druk op Escape of CtrlOrCmd+ENTER om het bewerken te voltooien",linearElementMulti:"Klik op het laatste punt of druk op Escape of Enter om te stoppen",lockAngle:"Je kunt de hoek beperken door SHIFT ingedrukt te houden",resize:`Houd tijdens het vergroten SHIFT ingedrukt om verhoudingen te behouden,
|
||
gebruik ALT om vanuit het midden te vergroten/verkleinen`,resizeImage:"",rotate:"Je kan hoeken beperken door SHIFT ingedrukt te houden wanneer je draait",lineEditor_info:"Houd CtrlOrCmd en Dubbelklik of druk op CtrlOrCmd + Enter om punten te bewerken",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"Publiceer je eigen bibliotheek",bindTextToElement:"Druk op enter om tekst toe te voegen",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},$Ge={cannotShowPreview:"Kan voorbeeld niet tonen",canvasTooBig:"Het canvas is mogelijk te groot.",canvasTooBigTip:"Tip: beweeg de verste elementen iets dichter bij elkaar."},AUe={headingMain:"Fout opgetreden. Probeer <button>de pagina opnieuw laden.</button>",clearCanvasMessage:"Als herladen niet werkt, probeer <button>het canvas te wissen.</button>",clearCanvasCaveat:" Dit zal leiden tot verlies van je werk ",trackedToSentry:"De fout met ID {{eventId}} was gevolgd op ons systeem.",openIssueMessage:"We waren voorzichtig om je scène-informatie niet in de fout toe te voegen. Als je scène niet privé is, overweeg dan alstublieft het opvolgen op onze <button>bugtracker.</button> Kopieer de informatie hieronder naar de GitHub issue.",sceneContent:"Scène-inhoud:"},eUe={desc_intro:"Je kunt mensen uitnodigen om met je samen te werken.",desc_privacy:"Geen zorgen, de sessie gebruikt end-to-end encryptie, dus wat je tekent blijft privé. Zelfs onze server zal niet kunnen zien wat je tekent.",button_startSession:"Start sessie",button_stopSession:"Stop sessie",desc_inProgressIntro:"De live-samenwerkingssessie is nu gestart.",desc_shareLink:"Deel deze link met iedereen waarmee je wil samenwerken:",desc_exitSession:`Het stoppen van de sessie zal je loskoppelen van de kamer, maar je kunt lokaal doorwerken met de scène.
|
||
Pas op: dit heeft geen invloed op andere mensen en dat zij nog steeds in staat zullen zijn om samen te werken aan hun versie.`,shareTitle:"Neem deel aan een live samenwerkingssessie op Excalidraw"},tUe={title:"Fout"},rUe={disk_title:"Opslaan op schijf",disk_details:"De scènegegevens exporteren naar een bestand waaruit u later kunt importeren.",disk_button:"Opslaan naar bestand",link_title:"Deelbare link",link_details:"Exporteren als een alleen-lezen link.",link_button:"Exporteer naar link",excalidrawplus_description:"Sla de scène op in je Excalidraw+ werkruimte.",excalidrawplus_button:"Exporteer",excalidrawplus_exportError:"Kan op dit moment niet exporteren naar Excalidraw+..."},iUe={blog:"Lees onze blog",click:"klik",deepSelect:"Deep selecteer",deepBoxSelect:"",curvedArrow:"Gebogen pijl",curvedLine:"Kromme lijn",documentation:"Documentatie",doubleClick:"dubbelklikken",drag:"slepen",editor:"Editor",editLineArrowPoints:"",editText:"",github:"Probleem gevonden? Verzenden",howto:"Volg onze handleidingen",or:"of",preventBinding:"Pijlbinding voorkomen",tools:"Tools",shortcuts:"Sneltoetsen",textFinish:"Voltooi het bewerken (teksteditor)",textNewLine:"Nieuwe regel toevoegen (teksteditor)",title:"Help",view:"Weergave",zoomToFit:"Zoom in op alle elementen",zoomToSelection:"Inzoomen op selectie",toggleElementLock:"",movePageUpDown:"Pagina omhoog/omlaag",movePageLeftRight:"Verplaats pagina links/rechts"},uUe={title:"Wis canvas"},aUe={title:"Publiceer bibliotheek",itemName:"Itemnaam",authorName:"Naam auteur",githubUsername:"GitHub gebruikersnaam",twitterUsername:"Twitter gebruikersnaam",libraryName:"Naam bibliotheek",libraryDesc:"Beschrijving van de bibliotheek",website:"Website",placeholder:{authorName:"Je naam of gebruikersnaam",libraryName:"Naam van je bibliotheek",libraryDesc:"Beschrijving van je bibliotheek om mensen te helpen het gebruik ervan te begrijpen",githubHandle:"",twitterHandle:"",website:"Link naar je persoonlijke website of elders (optioneel)"},errors:{required:"Vereist",website:"Vul een geldige URL in"},noteDescription:"<link>openbare repository</link>",noteGuidelines:"<link>richtlijnen</link>",noteLicense:"<link>MIT-licentie, </link>",noteItems:"",atleastOneLibItem:"",republishWarning:""},nUe={title:"Bibliotheek ingediend",content:"<link>Hier</link>"},oUe={resetLibrary:"Reset bibliotheek",removeItemsFromLib:"Verwijder geselecteerde items uit bibliotheek"},sUe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},lUe={tooltip:"Je tekeningen zijn beveiligd met end-to-end encryptie, dus Excalidraw's servers zullen nooit zien wat je tekent.",link:"Blog post over end-to-end versleuteling in Excalidraw"},gUe={angle:"Hoek",element:"Element",elements:"Elementen",height:"Hoogte",scene:"Scene",selected:"Geselecteerd",storage:"Opslag",title:"Statistieken voor nerds",total:"Totaal",version:"Versie",versionCopy:"Klik om te kopiëren",versionNotAvailable:"Versie niet beschikbaar",width:"Breedte"},cUe={addedToLibrary:"Toegevoegd aan bibliotheek",copyStyles:"Stijlen gekopieerd.",copyToClipboard:"Gekopieerd naar het klembord.",copyToClipboardAsPng:`{{exportSelection}} naar klembord gekopieerd als PNG
|
||
({{exportColorScheme}})`,fileSaved:"Bestand opgeslagen.",fileSavedToFilename:"Opgeslagen als {filename}",canvas:"canvas",selection:"selectie",pasteAsSingleElement:`Gebruik {{shortcut}} om te plakken als een enkel element,
|
||
of plak in een bestaande teksteditor`,unableToEmbed:"Het insluiten van deze url is momenteel niet toegestaan. Zet een probleem op GitHub om de URL op de whitelist te zetten",unrecognizedLinkFormat:"De link die u hebt ingesloten komt niet overeen met het verwachte formaat. Probeer de 'embed' string van de bronsite te plakken"},CUe={transparent:"Transparant",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},BUe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"Exporteren, voorkeuren en meer...",center_heading:"Diagrammen. Eenvoudig. Gemaakt.",toolbarHint:"Kies een tool & begin met tekenen!",helpHint:"Snelkoppelingen en hulp"}},EUe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},dUe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},IUe={title:"",button:"",description:"",syntax:"",preview:""},$cr={labels:_Ge,library:WGe,buttons:qGe,alerts:zGe,errors:ZGe,toolBar:VGe,headings:jGe,hints:XGe,canvasError:$Ge,errorSplash:AUe,roomDialog:eUe,errorDialog:tUe,exportDialog:rUe,helpDialog:iUe,clearCanvasDialog:uUe,publishDialog:aUe,publishSuccessDialog:nUe,confirmDialog:oUe,imageExportDialog:sUe,encrypted:lUe,stats:gUe,toast:cUe,colors:CUe,welcomeScreen:BUe,colorPicker:EUe,overwriteConfirm:dUe,mermaid:IUe}});var qUe={};yt(qUe,{alerts:()=>DUe,buttons:()=>mUe,canvasError:()=>kUe,clearCanvasDialog:()=>NUe,colorPicker:()=>PUe,colors:()=>JUe,confirmDialog:()=>MUe,default:()=>ACr,encrypted:()=>YUe,errorDialog:()=>SUe,errorSplash:()=>FUe,errors:()=>yUe,exportDialog:()=>LUe,headings:()=>bUe,helpDialog:()=>RUe,hints:()=>vUe,imageExportDialog:()=>TUe,labels:()=>pUe,library:()=>fUe,mermaid:()=>WUe,overwriteConfirm:()=>_Ue,publishDialog:()=>GUe,publishSuccessDialog:()=>UUe,roomDialog:()=>xUe,stats:()=>HUe,toast:()=>KUe,toolBar:()=>wUe,welcomeScreen:()=>OUe});var pUe,fUe,mUe,DUe,yUe,wUe,bUe,vUe,kUe,FUe,xUe,SUe,LUe,RUe,NUe,GUe,UUe,MUe,TUe,YUe,HUe,KUe,JUe,OUe,PUe,_Ue,WUe,ACr;var zUe=P(()=>{qt();pUe={paste:"Lim inn",pasteAsPlaintext:"",pasteCharts:"Lim inn diagram",selectAll:"Vel alt",multiSelect:"Legg til element i utval",moveCanvas:"Flytt lerretet",cut:"Klipp ut",copy:"Kopier",copyAsPng:"Kopier til utklippstavla som PNG",copyAsSvg:"Kopier til utklippstavla som SVG",copyText:"",copySource:"",convertToCode:"",bringForward:"Flytt framover",sendToBack:"Send heilt bak",bringToFront:"Flytt heilt fram",sendBackward:"Send bakover",delete:"Slett",copyStyles:"Kopier stilar",pasteStyles:"Lim inn stilar",stroke:"Strek",background:"Bakgrunn",fill:"Fyll",strokeWidth:"Strekbreidd",strokeStyle:"Strekstil",strokeStyle_solid:"Solid",strokeStyle_dashed:"Stipla",strokeStyle_dotted:"Prikka",sloppiness:"Ujamnheit",opacity:"Synlegheit",textAlign:"Tekstjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilhovud",arrowhead_none:"Ingen",arrowhead_arrow:"Pil",arrowhead_bar:"Stolpe",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trekant",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Skriftstorleik",fontFamily:"Skrifttype",addWatermark:"Legg til «Laga med Excalidraw»",handDrawn:"Handteikna",normal:"Normal",code:"Kode",small:"Liten",medium:"Medium",large:"Stor",veryLarge:"Svært stor",solid:"Solid",hachure:"Skravert",zigzag:"",crossHatch:"Krysskravert",thin:"Tynn",bold:"Tjukk",left:"Venstre",center:"Midstill",right:"Høgre",extraBold:"Ekstra tjukk",architect:"Arkitekt",artist:"Kunstnar",cartoonist:"Teiknar",fileTitle:"Filnamn",colorPicker:"Fargeveljar",canvasColors:"Brukt på lerretet",canvasBackground:"Lerretsbakgrunn",drawingCanvas:"Lerret",layers:"Lag",actions:"Handlingar",language:"Språk",liveCollaboration:"",duplicateSelection:"Dupliser",untitled:"Utan namn",name:"Namn",yourName:"Namnet ditt",madeWithExcalidraw:"Laga med Excalidraw",group:"Grupper utval",ungroup:"Avgrupper utval",collaborators:"Samarbeidarar",showGrid:"Vis rutenett",addToLibrary:"Legg til i bibliotek",removeFromLibrary:"Fjern frå bibliotek",libraryLoadingMessage:"Laster bibliotek…",libraries:"Blad gjennom bibliotek",loadingScene:"Laster scene…",align:"Juster",alignTop:"Juster til topp",alignBottom:"Juster til botn",alignLeft:"Juster til venstre",alignRight:"Juster til høgre",centerVertically:"Midtstill vertikalt",centerHorizontally:"Midtstill horisontalt",distributeHorizontally:"Sprei horisontalt",distributeVertically:"Sprei vertikalt",flipHorizontal:"Vipp vassrett",flipVertical:"Vipp loddrett",viewMode:"Visningsmodus",share:"Del",showStroke:"Vis fargeveljar for linjer",showBackground:"Vis fargeveljar for bakgrunn",toggleTheme:"Veksle tema",personalLib:"Personleg bibliotek",excalidrawLib:"Excalidraw-bibliotek",decreaseFontSize:"Gjer skriftstorleik mindre",increaseFontSize:"Gjer skriftstorleik større",unbindText:"Avbind tekst",bindText:"",createContainerFromText:"",link:{edit:"Rediger lenke",editEmbed:"",create:"Lag lenke",createEmbed:"",label:"Lenke",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},fUe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},mUe={clearReset:"Tilbakestill lerretet",exportJSON:"Eksporter til fil",exportImage:"",export:"",copyToClipboard:"Kopier til utklippstavla",save:"Lagre til noverande fil",saveAs:"Lagre som",load:"",getShareableLink:"Hent delingslenke",close:"Lukk",selectLanguage:"Vel språk",scrollBackToContent:"Skroll tilbake til innhald",zoomIn:"Zoom inn",zoomOut:"Zoom ut",resetZoom:"Nullstill zoom",menu:"Meny",done:"Ferdig",edit:"Rediger",undo:"Angre",redo:"Gjer om",resetLibrary:"Nullstill bibliotek",createNewRoom:"Lag nytt rom",fullScreen:"Fullskjerm",darkMode:"Mørk modus",lightMode:"Lys modus",zenMode:"Zen-modus",objectsSnapMode:"",exitZenMode:"Avslutt zen-modus",cancel:"Avbryt",clear:"Tøm",remove:"Fjern",embed:"",publishLibrary:"Publiser",submit:"Send inn",confirm:"Stadfest",embeddableInteractionButton:""},DUe={clearReset:"Dette vil tømme lerretet. Er du sikker?",couldNotCreateShareableLink:"Kunne ikkje lage delingslenke.",couldNotCreateShareableLinkTooBig:"Kunne ikkje opprette deleleg lenke: scena er for stor",couldNotLoadInvalidFile:"Kunne ikkje laste inn ugyldig fil",importBackendFailed:"Importering av backend feila.",cannotExportEmptyCanvas:"Kan ikkje eksportere eit tomt lerret.",couldNotCopyToClipboard:"",decryptFailed:"Kunne ikkje dekryptere data.",uploadedSecurly:"Opplastinga er kryptert og er ikkje mogleg å lese av Excalidraw-serveren eller tredjepartar.",loadSceneOverridePrompt:"Innlasting av ekstern teikning erstattar ditt eksisterande innhald. Ynskjer du å fortsette?",collabStopOverridePrompt:`Viss du avsluttar økta overskriv du den førre, lokalt lagra teikninga di. Er du sikker?
|
||
|
||
(Ønsker du å halde fram med denne? Då er det berre å lukke denne fana.)`,errorAddingToLibrary:"Kunne ikkje legge elementet i biblioteket",errorRemovingFromLibrary:"Kunne ikkje fjerne elementet frå biblioteket",confirmAddLibrary:"Dette vil legge til {{numShapes}} form(er) i biblioteket ditt. Er du sikker?",imageDoesNotContainScene:"Dette biletet ser ikkje ut til å ha noko scenedata. Har du skrutt på innbygging av scene medan eksporteringa heldt på?",cannotRestoreFromImage:"Scena kunne ikkje gjenopprettast frå denne biletfila",invalidSceneUrl:"Kunne ikkje hente noko scene frå den URL-en. Ho er anten øydelagd eller inneheld ikkje gyldig Excalidraw JSON-data.",resetLibrary:"Dette vil fjerne alt innhald frå biblioteket. Er du sikker?",removeItemsFromsLibrary:"Slette {{count}} element frå biblioteket?",invalidEncryptionKey:"Krypteringsnøkkelen må ha 22 teikn. Sanntidssamarbeid er deaktivert.",collabOfflineWarning:""},yUe={unsupportedFileType:"Filtypen er ikkje støtta.",imageInsertError:"Kunne ikkje sette inn biletet. Prøv igjen seinare...",fileTooBig:"Fila er for stor. Maksimal tillate storleik er {{maxSize}}.",svgImageInsertError:"Kunne ikkje sette inn SVG-biletet. SVG-koden ser ugyldig ut.",failedToFetchImage:"",invalidSVGString:"Ugyldig SVG.",cannotResolveCollabServer:"Kunne ikkje kople til samarbeidsserveren. Ver vennleg å oppdatere inn sida og prøv på nytt.",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},wUe={selection:"Vel",image:"Sett in bilete",rectangle:"Rektangel",diamond:"Diamant",ellipse:"Ellipse",arrow:"Pil",line:"Linje",freedraw:"Teikn",text:"Tekst",library:"Bibliotek",lock:"Hald fram med valt verktøy",penMode:"",link:"Legg til/ oppdater lenke til valt figur",eraser:"Viskelêr",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},bUe={canvasActions:"Handlingar: lerret",selectedShapeActions:"Handlingar: valt objekt",shapes:"Formar"},vUe={canvasPanning:"",linearElement:"Klikk for å starte linje med fleire punkt, eller drag for ei enkel linje",freeDraw:"Klikk og drag, slepp når du er ferdig",text:"Tips: du kan òg leggje til tekst ved å dobbeltklikke kor som helst med utvalgsverktyet",embeddable:"",text_selected:"Dobbelklikk eller trykk ENTER for å redigere teksta",text_editing:"Trykk Escape eller CtrlOrCmd+ENTER for å fullføre redigeringa",linearElementMulti:"Klikk på siste punkt eller trykk Escape eller Enter for å fullføre",lockAngle:"Du kan begrense vinkelen ved å holde nede SKIFT",resize:`Du kan halde fram med forholdet ved å trykke SHIFT medan du endrar storleik,
|
||
trykk ALT for å endre storleiken frå midten`,resizeImage:`Du kan endre storleiken fritt ved å halde inne SHIFT,
|
||
hald ALT for å endre storleik frå sentrum`,rotate:"Du kan låse vinklane ved å halde SHIFT medan du roterer",lineEditor_info:"",lineEditor_pointSelected:`Trykk på Slett for å fjerne punkt(a),
|
||
Ctrl / Cmd+D for å duplisere, eller drag for å flytte`,lineEditor_nothingSelected:`Vel eit punkt å redigere (hald inne SHIFT for å velje fleire),
|
||
eller hald inne Alt og klikk for å legge til nye punkt`,placeImage:"Klikk for å plassere biletet, eller klikk og drag for å velje storleik manuelt",publishLibrary:"Publiser ditt eige bibliotek",bindTextToElement:"Trykk på enter for å legge til tekst",deepBoxSelect:"Hald inne Ctrl / Cmd for å velje djupt, og forhindre flytting",eraserRevert:"Hald inne Alt for å reversere markering av element for sletting",firefox_clipboard_write:"",disableSnapping:""},kUe={cannotShowPreview:"Kan ikkje vise førehandsvising",canvasTooBig:"Lerretet er mogleg for stort.",canvasTooBigTip:"Tips: prøv å flytte elementa som er lengst frå kvarandre, litt nærare kvarandre."},FUe={headingMain:"Ein feil oppstod. Prøv <button>å laste sida på nytt.</button>",clearCanvasMessage:"Om ny sidelasting ikkje fungerer, prøv <button>å tømme lerretet.</button>",clearCanvasCaveat:" Dette vil føre til tap av arbeid ",trackedToSentry:"Feilen med identifikator {{eventId}} vart logga i systemet vårt.",openIssueMessage:"Vi er veldig nøye med å ikkje inkludere scene-opplysingane dine i feilmeldinga. Viss scena di ikkje er privat kan du vurdere å følge opp i <button>feilrapporteringssystemet vårt.</button> Ta med opplysingane nedanfor ved å kopiere og lime inn i GitHub-saka.",sceneContent:"Scene-innhald:"},xUe={desc_intro:"Du kan invitere personar til scena di for å samarbeide med deg.",desc_privacy:"Ta det med ro; økta brukar ende-til-ende-kryptering, så alt du teiknar held fram med å vere privat. Ikkje ein gong serveren vår kan sjå kva du lagar.",button_startSession:"Start økt",button_stopSession:"Stopp økt",desc_inProgressIntro:"Sanntids-samarbeidsøkt er no i gang.",desc_shareLink:"Del denne lenka med dei du vil samarbeide med:",desc_exitSession:"Dersom du avsluttar økta blir du kopla frå rommet, men du kan halde fram med å arbeide med scena lokalt. Ver merksam på at dette ikkje vil påverke andre personar, og desse vil framleis ha moglegheit til å samarbeide på deira eigen versjon.",shareTitle:"Bli med på eit sanntidssamarbeid på Excalidraw"},SUe={title:"Feil"},LUe={disk_title:"Lagre til disk",disk_details:"Eksporter scenedataa til ei fil du kan importere seinare.",disk_button:"Lagre til fil",link_title:"Deleleg lenke",link_details:"Eksporter som skrivebeskytta lenke.",link_button:"Eksporter til lenke",excalidrawplus_description:"Lagre scena til Excalidraw+-arbeidsområdet ditt.",excalidrawplus_button:"Eksporter",excalidrawplus_exportError:"Kunne ikkje eksportere til Excalidraw+ akkurat no..."},RUe={blog:"Les bloggen vår",click:"klikk",deepSelect:"Marker djupt",deepBoxSelect:"Marker djupt inni boksen og forhindr flytting",curvedArrow:"Boga pil",curvedLine:"Boga linje",documentation:"Dokumentasjon",doubleClick:"dobbelklikk",drag:"drag",editor:"Redigering",editLineArrowPoints:"",editText:"",github:"Funne eit problem? Send inn",howto:"Følg vegleiinga vår",or:"eller",preventBinding:"Hindre pilkopling",tools:"",shortcuts:"Tastatursnarvegar",textFinish:"Fullfør redigering (teksthandsamar)",textNewLine:"Legg til ny linje (teksthandsamar)",title:"Hjelp",view:"Vising",zoomToFit:"Zoom for å sjå alle elementa",zoomToSelection:"Zoom til utval",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},NUe={title:"Tøm lerretet"},GUe={title:"Publiser bibliotek",itemName:"Elementnamn",authorName:"Eigaren sitt namn",githubUsername:"GitHub-brukarnamn",twitterUsername:"Twitter-brukarnamn",libraryName:"Biblioteknamn",libraryDesc:"Bibliotekskildring",website:"Nettstad",placeholder:{authorName:"Namnet eller brukarnamnet ditt",libraryName:"Namnet på biblioteket ditt",libraryDesc:"Skildring av biblioteket ditt sånn at andre forstår bruken av det",githubHandle:"GitHub-brukarnamn (valfritt), slik at du kan redigere bibiloteket når det er sendt inn til vurdering",twitterHandle:"Twitter-brukarnamn (valfritt), så vi veit kven vi skal kreditere på Twitter",website:"Lenke til den personlege nettstaden din eller ein anna stad (valfritt)"},errors:{required:"Kravt",website:"Fyll inn ein gyldig URL"},noteDescription:"Send inn biblioteket ditt til inkludering i <link>den offentlege bibliotek-kjeldekoda</link>slik at andre kan bruke det i teikningane deira.",noteGuidelines:"Biblioteket må godkjennast manuelt fyrst. Ver vennleg å lese <link>retningslinjene</link> før du sender inn. Du kjem til å trenge ein GitHub-konto for å kommunisere og gjere endringar dersom kravt, men det er ikkje strengt naudsynt.",noteLicense:"Ved å sende inn godkjenner du at biblioteket vert publisert under <link>MIT-lisensen, </link>som kort sagt betyr at kven som helst kan bruke det utan avgrensingar.",noteItems:"Kvart bibliotekselement må ha eit eige namn, slik at det er mogleg å filtrere. Dei følgande bibliotekselementa blir inkludert:",atleastOneLibItem:"Ver vennleg å markere minst eitt bibliotekselement for å starte",republishWarning:""},UUe={title:"Bibliotek innsendt",content:"Tusen takk {{authorName}}! Biblioteket ditt har blitt sendt inn til gjennomgang. Du kan halde styr på status<link>her</link>"},MUe={resetLibrary:"Tilbakestill bibliotek",removeItemsFromLib:"Fjern valde element frå biblioteket"},TUe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},YUe={tooltip:"Teikningane dine er ende-til-ende-krypterte slik at Excalidraw sine serverar aldri får sjå dei.",link:"Blogginnlegg om ende-til-ende-kryptering i Excalidraw"},HUe={angle:"Vinkel",element:"Element",elements:"Element",height:"Høgde",scene:"Scene",selected:"Valde",storage:"Lagring",title:"Statistikk for nerdar",total:"Totalt",version:"Versjon",versionCopy:"Klikk for å kopiere",versionNotAvailable:"Versjonen er ikkje tilgjengeleg",width:"Breidde"},KUe={addedToLibrary:"Lagt til i bibliotek",copyStyles:"Kopierte stilane.",copyToClipboard:"Kopiert til utklippstavla.",copyToClipboardAsPng:`Kopierte {{exportSelection}} til utklippstavla som PNG
|
||
({{exportColorScheme}})`,fileSaved:"Fila er lagra.",fileSavedToFilename:"Lagra som {filename}",canvas:"lerret",selection:"val",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},JUe={transparent:"Gjennomsiktig",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},OUe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},PUe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},_Ue={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},WUe={title:"",button:"",description:"",syntax:"",preview:""},ACr={labels:pUe,library:fUe,buttons:mUe,alerts:DUe,errors:yUe,toolBar:wUe,headings:bUe,hints:vUe,canvasError:kUe,errorSplash:FUe,roomDialog:xUe,errorDialog:SUe,exportDialog:LUe,helpDialog:RUe,clearCanvasDialog:NUe,publishDialog:GUe,publishSuccessDialog:UUe,confirmDialog:MUe,imageExportDialog:TUe,encrypted:YUe,stats:HUe,toast:KUe,colors:JUe,welcomeScreen:OUe,colorPicker:PUe,overwriteConfirm:_Ue,mermaid:WUe}});var mMe={};yt(mMe,{alerts:()=>XUe,buttons:()=>jUe,canvasError:()=>rMe,clearCanvasDialog:()=>sMe,colorPicker:()=>QMe,colors:()=>IMe,confirmDialog:()=>cMe,default:()=>eCr,encrypted:()=>BMe,errorDialog:()=>aMe,errorSplash:()=>iMe,errors:()=>$Ue,exportDialog:()=>nMe,headings:()=>eMe,helpDialog:()=>oMe,hints:()=>tMe,imageExportDialog:()=>CMe,labels:()=>ZUe,library:()=>VUe,mermaid:()=>fMe,overwriteConfirm:()=>pMe,publishDialog:()=>lMe,publishSuccessDialog:()=>gMe,roomDialog:()=>uMe,stats:()=>EMe,toast:()=>dMe,toolBar:()=>AMe,welcomeScreen:()=>hMe});var ZUe,VUe,jUe,XUe,$Ue,AMe,eMe,tMe,rMe,iMe,uMe,aMe,nMe,oMe,sMe,lMe,gMe,cMe,CMe,BMe,EMe,dMe,IMe,hMe,QMe,pMe,fMe,eCr;var DMe=P(()=>{qt();ZUe={paste:"Pegar",pasteAsPlaintext:"Pegar en tèxt brut",pasteCharts:"Pegar los grafics",selectAll:"Tot seleccionar",multiSelect:"Apondre un element a la seleccion",moveCanvas:"Desplaçar lo canabàs",cut:"Talhar",copy:"Copiar",copyAsPng:"Copiar al quichapapièrs coma PNG",copyAsSvg:"Copiar al quichapapièrs coma SVG",copyText:"Copiar al quichapapièrs coma tèxt",copySource:"",convertToCode:"",bringForward:"En avant",sendToBack:"En arrièr",bringToFront:"A l’endavant",sendBackward:"Endarrièr",delete:"Suprimir",copyStyles:"Copiar los estiles",pasteStyles:"Pegar los estils",stroke:"Contorn",background:"Rèireplan",fill:"Empliment",strokeWidth:"Largor de contorn",strokeStyle:"Estil de contorn",strokeStyle_solid:"Solide",strokeStyle_dashed:"Tiret",strokeStyle_dotted:"Puntilhat",sloppiness:"Estil de traça",opacity:"Opacitat",textAlign:"Alinhament tèxt",edges:"Angles",sharp:"Ponchut",round:"Arredonit",arrowheads:"Cap de la flècha",arrowhead_none:"Cap",arrowhead_arrow:"Sageta",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triangle",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Talha polissa",fontFamily:"Familha de polissa",addWatermark:"Apondre « Fabricat amb Excalidraw »",handDrawn:"A la man levada",normal:"Normala",code:"Còdi",small:"Pichona",medium:"Mejana",large:"Granda",veryLarge:"Gradassa",solid:"Solide",hachure:"Raia",zigzag:"Zigzag",crossHatch:"Raia crosada",thin:"Fin",bold:"Espés",left:"Esquèrra",center:"Centre",right:"Drecha",extraBold:"Espesàs",architect:"Arquitècte",artist:"Artista",cartoonist:"Dessenhaire",fileTitle:"Nom del fichièr",colorPicker:"Selector de color",canvasColors:"Utilizada suls canabassses",canvasBackground:"Rèireplan del canabàs",drawingCanvas:"Zòna de dessenh",layers:"Calques",actions:"Accions",language:"Lenga",liveCollaboration:"Collaboracion en dirèct...",duplicateSelection:"Duplicar",untitled:"Sens títol",name:"Nom",yourName:"Vòstre nom",madeWithExcalidraw:"Fabricat amb Excalidraw",group:"Gropar la seleccion",ungroup:"Desunir la seleccion",collaborators:"Collaborators",showGrid:"Afichar la gresilha",addToLibrary:"Apondre a la bibliotèca",removeFromLibrary:"Suprimir de la bibliotèca",libraryLoadingMessage:"Cargament de la bibliotèca…",libraries:"Percórrer las bibliotècas",loadingScene:"Cargament de la scèna…",align:"Alinhament",alignTop:"Alinhar ennaut",alignBottom:"Alinhar enbàs",alignLeft:"Alinhar a esquèrra",alignRight:"Alinhar a drecha",centerVertically:"Centrar verticalament",centerHorizontally:"Centrar orizontalament",distributeHorizontally:"Distribuir orizontalament",distributeVertically:"Distribuir verticalament",flipHorizontal:"Virar orizontalament",flipVertical:"Virar verticalament",viewMode:"Mòde de vista",share:"Partejar",showStroke:"Mostrar lo selector de color de contorn",showBackground:"Mostrar lo selector de color de fons",toggleTheme:"Alternar tèma",personalLib:"Bibliotèca personala",excalidrawLib:"Bibliotèca Excalidraw",decreaseFontSize:"Reduire talha polissa",increaseFontSize:"Aumentar talha polissa",unbindText:"Dessociar lo tèxte",bindText:"Ligar lo tèxt al contenidor",createContainerFromText:"Envelopar lo tèxte dins un contenedor",link:{edit:"Modificar lo ligam",editEmbed:"Modificar lo ligam e l’integracion",create:"Crear un ligam",createEmbed:"Crear un ligam e son integracion",label:"Ligam",labelEmbed:"Ligam e integracion",empty:"Cap de ligam pas definit"},lineEditor:{edit:"Modificar la linha",exit:"Sortir de l’editor de linha"},elementLock:{lock:"Verrolhar",unlock:"Desverrolhar",lockAll:"Tot verrolhar",unlockAll:"Tot desverrolhar"},statusPublished:"Publicat",sidebarLock:"Gardar la barra laterala dobèrta",selectAllElementsInFrame:"Seleccionar totes los elements del quadre",removeAllElementsFromFrame:"Tirar totes los elements d’al quadre",eyeDropper:"Prendre la color a partir d’un canabàs",textToDiagram:"",prompt:""},VUe={noItems:"Cap d’element pas encara apondut...",hint_emptyLibrary:"Seleccionatz un element d’apondre aquí, o installatz una bibliotèca del depaus public, çai-jos.",hint_emptyPrivateLibrary:"Seleccionatz un element d’apondre aquí pel canabàs."},jUe={clearReset:"Reïnicializar lo canabàs",exportJSON:"Exportar en fichièr",exportImage:"Exportar imatges...",export:"Enregistrar dins...",copyToClipboard:"Copiar al quichapapièrs",save:"Salvar al fichièr actual",saveAs:"Enregistrar jos",load:"Dobrir",getShareableLink:"Obténer lo ligam de partatge",close:"Tampar",selectLanguage:"Causir una lenga",scrollBackToContent:"Tornar al contengut",zoomIn:"Zoom avant",zoomOut:"Zoom arrièr",resetZoom:"Tirar lo zoom",menu:"Menú",done:"Acabat",edit:"Modificar",undo:"Anullar",redo:"Restablir",resetLibrary:"Reïnicializar la bibliotèca",createNewRoom:"Crear sala novèla",fullScreen:"Ecran complèt",darkMode:"Mòde escur",lightMode:"Mòde clar",zenMode:"Mòde escur",objectsSnapMode:"Ancorar als objèctes",exitZenMode:"Sortir del mòde zen",cancel:"Anullar",clear:"Escafar",remove:"Tirar",embed:"Alternar l’integracion",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:"Clicar per interagir"},XUe={clearReset:"Aquò suprimirà lo canabàs complèt. O volètz vertadièrament ?",couldNotCreateShareableLink:"Creacion impossibla del ligam de partatge.",couldNotCreateShareableLinkTooBig:"Creacion impossibla del ligam de partatge : la scèna es tròp granda",couldNotLoadInvalidFile:"Cargament impossible d’un fichièr invalid",importBackendFailed:"Importacion fracassada.",cannotExportEmptyCanvas:"Impossible d’exportar los canabasses voids.",couldNotCopyToClipboard:"Còpia impossibla al quichapapièrs.",decryptFailed:"Deschiframent impossible de las donadas.",uploadedSecurly:"Lo telecargament es estat securizat amb un chiframent del cap a la fin, significa que los servidors d’Excalidraw o que quina tèrça part que siá pòdon pas legir lo contengut.",loadSceneOverridePrompt:"Cargar un dessenh extèrn remplaçarà vòstre contengut existent. Volètz contunhar ?",collabStopOverridePrompt:`Arrestar la session remplaçarà vòstre precedent dessenh gardat localament. O volètz vertadièrament ?
|
||
|
||
(Se volètz gardar vòstre dessenh local, tampatz simplament l’onglet del navegador a la plaça)`,errorAddingToLibrary:"Apondon impossible de l’element a la bibliotèca",errorRemovingFromLibrary:"Supression impossibla de l’element a la bibliotèca",confirmAddLibrary:"Apondrà {{numShapes}} forma(s) a vòstra bibliotèca. Confirmatz ?",imageDoesNotContainScene:"Aqueste imatge sembla pas conténer cap de donadas de scèna. Avètz activat l’integracion de scèna pendent l’exportacion ?",cannotRestoreFromImage:"Restauracion impossibla de la scèna a partir del fichièr imatge",invalidSceneUrl:"Importacion impossibla de la scèna a partir de l’URL provesida. Es siá mal formatada o siá conten pas cap de donada JSON Excalidraw valida.",resetLibrary:"Aquò suprimirà vòstra bibliotèca. O volètz vertadièrament ?",removeItemsFromsLibrary:"Suprimir {{count}} element(s) de la bibliotèca ?",invalidEncryptionKey:"La clau de chiframent deu conténer 22 caractèrs. La collaboracion en dirèct es desactivada.",collabOfflineWarning:`Cap de connexion pas disponibla.
|
||
Vòstras modificacions seràn pas salvadas !`},$Ue={unsupportedFileType:"Tipe de fichièr pas pres en carga.",imageInsertError:"Insercion d’imatge impossibla. Tornatz ensajar mai tard...",fileTooBig:"Fichièr tròp pesuc. La talha maximala autorizada es {{maxSize}}.",svgImageInsertError:"Insercion d’imatge SVG impossibla. Las balisas SVG semblan invalidas.",failedToFetchImage:"Fracàs de la recuperacion de l’imatge.",invalidSVGString:"SVG invalid.",cannotResolveCollabServer:"Connexion impossibla al servidor collab. Mercés de recargar la pagina e tornar ensajar.",importLibraryError:"Impossible de cargar la bibliotèca",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"Empegatge impossible (lectura impossibla a partir del quichapapièrs).",asyncPasteFailedOnParse:"Empegatge impossible.",copyToSystemClipboardFailed:"Còpia impossibla al quichapapièrs."},AMe={selection:"Seleccion",image:"Inserir imatge",rectangle:"Rectangle",diamond:"Lausange",ellipse:"Ellipsa",arrow:"Sageta",line:"Linha",freedraw:"Dessenhar",text:"Tèxt",library:"Bibliotèca",lock:"Mantenir activa l’aisina aprèp dessenhar",penMode:"Mòde estilo - empachar lo contact",link:"Apondre/Actualizar lo ligam per una fòrma seleccionada",eraser:"Goma",frame:"Esplech quadre",magicframe:"",embeddable:"Integracion Web",laser:"Puntador laser",hand:"Man (aisina de desplaçament de la vista)",extraTools:"Mai d’aisinas",mermaidToExcalidraw:"De Mermaid cap a Excalidraw",magicSettings:""},eMe={canvasActions:"Accions del canabàs",selectedShapeActions:"Accions per la forma seleccionada",shapes:"Formas"},tMe={canvasPanning:"",linearElement:"Clicatz per començar mantun punt, lisatz per una sola linha",freeDraw:"Clicatz e lisatz, relargatz un còp acabat",text:"Astúcia : podètz tanben apondre de tèxt en doble clicant ont que siá amb l’aisina de seleccion",embeddable:"",text_selected:"Clicatz dos còps o quichatz ENTRADA per modificar lo tèxt",text_editing:"Quichatz ESCAPAR o CtrlOrCmd+ENTRADA per acabar la modificacion",linearElementMulti:"Clicatz sul darrièr punt o quichatz Ecap o Entrada per acabar",lockAngle:"Podètz restrénger l’angle en mantenent MAJ",resize:`Podètz servar las proporcions en mantenent la tòca MAJ pendent lo redimensionament,
|
||
mantenètz la tòca ALT per redimensionar a partir del centre`,resizeImage:`Podètz retalhar liurament en quichant CTRL,
|
||
quichatz ALT per retalhar a partir del centre`,rotate:"Podètz restrénger los angles en mantenent MAJ pendent la rotacion",lineEditor_info:"Tenètz quichat Ctrl o Cmd e doble clic o quichatz Ctrl o Cmd + Entrada per modificar los ponches",lineEditor_pointSelected:`Quichar Suprimir per tirar lo(s) punt(s),
|
||
CtrlOCmd+D per duplicar, o lisatz per desplaçar`,lineEditor_nothingSelected:`Seleccionar un punt d’editar (manténer Maj. per ne seleccionar mantun),
|
||
o manténer Alt e clicar per n’apondre de novèls`,placeImage:"Clicatz per plaçar l’imatge, o clicatz e lisatz per definir sa talha manualament",publishLibrary:"Publicar vòstra pròpria bibliotèca",bindTextToElement:"Quichatz Entrada per apondre de tèxte",deepBoxSelect:"Gardar CtrlOCmd per una seleccion gropada e empachar lo desplaçament",eraserRevert:"Tenètz quichat Alt per anullar los elements marcats per supression",firefox_clipboard_write:"",disableSnapping:""},rMe={cannotShowPreview:"Afichatge impossible de l’apercebut",canvasTooBig:"Lo canabàs pòt èsser tròp grand.",canvasTooBigTip:"Astúcia : ensajatz de sarrar los elements mai alonhats."},iMe={headingMain:"Una error s’es producha. Ensajatz <button>recargament de la pagina.</button>",clearCanvasMessage:"Se recargar fonciona pas, ensajatz <button>d’escafar los canabasses.</button>",clearCanvasCaveat:" Menarà a una pèrda del trabalh ",trackedToSentry:"Error amb l’identificant {{eventId}} es estada enregistrada sus nòstre sistèma.",openIssueMessage:"Èrem plan prudents per inclure pas d’informacions de la scèna vòstra sus l’error. Se vòstra scèna es pas privada, volgatz considerar de perseguir sus nòstre <button>traçadors d’avarias.</button> Volgatz inclure las informacions çai-jos en las copiant e pegant a l’issue GitHub.",sceneContent:"Contengut de la scèna :"},uMe={desc_intro:"Podètz convidar lo monde a vòstra scèna actuala per participar amb vos.",desc_privacy:"Vos en fagatz pas, la session utiliza lo chiframent del cap a la fin, çò que dessenetz demorarà privat. Mai nòstres servidors poiràn pas veire vòstra creacion.",button_startSession:"Començar la session",button_stopSession:"Arrestar la session",desc_inProgressIntro:"La session de collaboracion es ara en cors.",desc_shareLink:"Partejatz aqueste ligam amb lo monde amb qui volètz collaborar :",desc_exitSession:"Arrestar la session vos desconnectarà de la sala, mas poiretz contunhar de trabalhar a la scèna, en local. Notatz qu’aquò afectarà pas los autres, e poiràn collaborar a lor version.",shareTitle:"Rejonhètz una session collaborativa sus Excalidraw"},aMe={title:"Error"},nMe={disk_title:"Salvar al disc",disk_details:"Exportar las donadas de la scèna cap a un fichièr que podètz importar mai tard.",disk_button:"Salvar al fichièr",link_title:"Ligam de partejar",link_details:"Exportar coma un ligam de lectura sola.",link_button:"Exportar en ligam",excalidrawplus_description:"Enregistrar la scèna dins vòstre espaci de trabalh Excalidraw+.",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"Export impossibla cap a Excalidraw+ pel moment..."},oMe={blog:"Legir nòstre blog",click:"clic",deepSelect:"Seleccion prigonda",deepBoxSelect:"Seleccionar demest un grop e empacha lo desplaçament",curvedArrow:"Sageta corba",curvedLine:"Linha corba",documentation:"Documentacion",doubleClick:"doble clic",drag:"lisar",editor:"Editor",editLineArrowPoints:"",editText:"Modificar lo tèxte / apondre etiqueta",github:"Problèma trobat ? Senhalatz-lo",howto:"Seguissètz nòstras guidas",or:"o",preventBinding:"Empachar la fixacion de sagetas",tools:"Aisinas",shortcuts:"Acorchis clavièr",textFinish:"Terminar l’edicion (editor de tèxt)",textNewLine:"Apondre linha novèl (editor de tèxt)",title:"Ajuda",view:"Vista",zoomToFit:"Zoomar per veire totes los elements",zoomToSelection:"Zoomar la seleccion",toggleElementLock:"Verrolhar/Desverrolhar la seleccion",movePageUpDown:"Desplaçar la pagina ennaut/enbàs",movePageLeftRight:"Desplaçar la pagina a esquèrra/drecha"},sMe={title:"Escafar canabàs"},lMe={title:"Publicar la bibliotèca",itemName:"Nom de l’element",authorName:"Nom de l’autor",githubUsername:"Nom d’utilizaire GitHub",twitterUsername:"Nom d’utilizaire Twitter",libraryName:"Nom de la bibliotèca",libraryDesc:"Descripcion de la bibliotèca",website:"Site web",placeholder:{authorName:"Vòstre nom o nom d’utilizaire",libraryName:"Nom de vòstra bibliotèca",libraryDesc:"Descripcion de vòstra bibliotèca per ajudar lo monde a comprendre son utilizacion",githubHandle:"GitHub handle(opcional), per poder modificar la bibliotèca un còp enviada per repassa",twitterHandle:"Nom d’utilizaire Twitter (opcional), per saber qual mercejar quand ne parlam sus Twitter",website:"Ligam cap a vòstre site web personal o endacòm mai (opcional)"},errors:{required:"Requerit",website:"Picatz una URL valida"},noteDescription:"Enviatz vòstra bibliotèca per èsser compresa al <link>repertòri public de bibliotèca</link>per que los autres l’utilizen dins lor dessenhs.",noteGuidelines:"Qualqu’un deu aprovar la bibliotèca manualament per començar. Volgatz legir las <link>linhas directrises</link> abans de sometre. Vos farà mestièr un compte GitHub per comunicar e realizar de modificacions se demandadas, mas es pas complètament obligatòri.",noteLicense:"En sometent, acceptatz que la bibliotèca siá publicada sota la <link>Licéncia MIT, </link>que significa en brèu que qual que siá pòt l’utilizar sens cap de restriccion.",noteItems:"Cada element de bibliotèca deu aver un nom pròpri per èsser filtrable. Los elements de bibliotèca seguentas seràn incluses :",atleastOneLibItem:"Volgatz seleccionar almens un element de bibliotèca per començar",republishWarning:"Nòta : d’unes elements seleccionats son marcats ja coma publicats/enviats. Deuriatz sonque tornar enviar los elements pendent l’actualizacion d’una bibliotèca existenta o un mandadís."},gMe={title:"Bibliotèca somesa",content:"Mercés {{authorName}}. Vòstre bibliotèca es estada somesa per repassa. Podètz seguir l’avançament<link>aquí</link>"},cMe={resetLibrary:"Reïnicializar la bibliotèca",removeItemsFromLib:"Tirar los elements seleccionats de la bibliotèca"},CMe={header:"Exportar imatges",label:{withBackground:"Rèireplan",onlySelected:"Seleccion sonque",darkMode:"Mòde escur",embedScene:"Embarcar la scèna",scale:"Escala",padding:"Espaçament"},tooltip:{embedScene:""},title:{exportToPng:"Exportar en PNG",exportToSvg:"Exportar en SVG",copyPngToClipboard:"Copiar PNG al quichapapièrs"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiar al quichapapièrs"}},BMe={tooltip:"Vòstres dessenhs son chifrats del cap a la fin en consequéncia los servidors d’Excalidraw los veiràn pas jamai.",link:"Article de blòg sul chiframent del cap a la fin dins Excalidraw"},EMe={angle:"Angle",element:"Element",elements:"Elements",height:"Nautor",scene:"Scèna",selected:"Seleccionat",storage:"Emmagazinatge",title:"Estatisticas pels nerds",total:"Total",version:"Version",versionCopy:"Clicar per copiar",versionNotAvailable:"Version pas disponibla",width:"Largor"},dMe={addedToLibrary:"Apondut a la bibliotèca",copyStyles:"Estiles copiats.",copyToClipboard:"Copiats al quichapapièrs.",copyToClipboardAsPng:"{{exportSelection}} copiat coma PNG ({{exportColorScheme}})",fileSaved:"Fichièr enregistrat.",fileSavedToFilename:"Enregistrat jos {filename}",canvas:"canabàs",selection:"seleccion",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},IMe={transparent:"Transparéncia",black:"Negre",white:"Blanc",red:"Roge",pink:"Ròse",grape:"Bordèu",violet:"Violet",gray:"Gris",blue:"Blau",cyan:"Cian",teal:"Sarcèla",green:"Verd",yellow:"Jaune",orange:"Irange",bronze:"Bronze"},hMe={app:{center_heading:"Totas las donadas son enregistradas dins vòstre navegador.",center_heading_plus:"Voliatz puslèu utilizar Excalidraw+ a la plaça ?",menuHint:"Exportar, preferéncias, lengas, ..."},defaults:{menuHint:"Exportar, preferéncias, e mai...",center_heading:"Diagram. Tot. Simplament.",toolbarHint:"Prenètz un esplech e començatz de dessenhar !",helpHint:"Acorchis e ajuda"}},QMe={mostUsedCustomColors:"Colors personalizadas mai utilizadas",colors:"Colors",shades:"Nuanças",hexCode:"Còdi exadecimal",noShades:"Cap de nuança pas disponibla per aquesta color"},pMe={action:{exportToImage:{title:"Exportar coma imatge",button:"Exportar coma imatge",description:""},saveToDisk:{title:"Salvar al disc",button:"Salvar al disc",description:"Exportar las donadas de la scèna cap a un fichièr que podètz importar mai tard."},excalidrawPlus:{title:"Excalidraw+",button:"Exportar dins Excalidraw+",description:"Enregistrar la scèna dins vòstre espaci de trabalh Excalidraw+."}},modal:{loadFromFile:{title:"Cargar d’un fichièr",button:"Cargar d’un fichièr",description:""},shareableLink:{title:"Cargar d’un ligam",button:"Remplaçar mon contengut",description:""}}},fMe={title:"De Mermaid cap a Excalidraw",button:"Inserir",description:"",syntax:"Sintaxi Mermaid",preview:"Apercebut"},eCr={labels:ZUe,library:VUe,buttons:jUe,alerts:XUe,errors:$Ue,toolBar:AMe,headings:eMe,hints:tMe,canvasError:rMe,errorSplash:iMe,roomDialog:uMe,errorDialog:aMe,exportDialog:nMe,helpDialog:oMe,clearCanvasDialog:sMe,publishDialog:lMe,publishSuccessDialog:gMe,confirmDialog:cMe,imageExportDialog:CMe,encrypted:BMe,stats:EMe,toast:dMe,colors:IMe,welcomeScreen:hMe,colorPicker:QMe,overwriteConfirm:pMe,mermaid:fMe}});var jMe={};yt(jMe,{alerts:()=>vMe,buttons:()=>bMe,canvasError:()=>LMe,clearCanvasDialog:()=>TMe,colorPicker:()=>zMe,colors:()=>WMe,confirmDialog:()=>KMe,default:()=>tCr,encrypted:()=>OMe,errorDialog:()=>GMe,errorSplash:()=>RMe,errors:()=>kMe,exportDialog:()=>UMe,headings:()=>xMe,helpDialog:()=>MMe,hints:()=>SMe,imageExportDialog:()=>JMe,labels:()=>yMe,library:()=>wMe,mermaid:()=>VMe,overwriteConfirm:()=>ZMe,publishDialog:()=>YMe,publishSuccessDialog:()=>HMe,roomDialog:()=>NMe,stats:()=>PMe,toast:()=>_Me,toolBar:()=>FMe,welcomeScreen:()=>qMe});var yMe,wMe,bMe,vMe,kMe,FMe,xMe,SMe,LMe,RMe,NMe,GMe,UMe,MMe,TMe,YMe,HMe,KMe,JMe,OMe,PMe,_Me,WMe,qMe,zMe,ZMe,VMe,tCr;var XMe=P(()=>{qt();yMe={paste:"ਪੇਸਟ ਕਰੋ",pasteAsPlaintext:"ਸਾਦੇ ਪਾਠ ਵਜੋਂ ਪੇਸਟ ਕਰੋ",pasteCharts:"ਚਾਰਟ ਪੇਸਟ ਕਰੋ",selectAll:"ਸਾਰੇ ਚੁਣੋ",multiSelect:"ਐਲੀਮੈਂਟ ਨੂੰ ਚੋਣ ਵਿੱਚ ਜੋੜੋ",moveCanvas:"ਕੈਨਵਸ ਹਿਲਾਓ",cut:"ਕੱਟੋ",copy:"ਕਾਪੀ ਕਰੋ",copyAsPng:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ PNG ਵਜੋਂ ਕਾਪੀ ਕਰੋ",copyAsSvg:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ SVG ਵਜੋਂ ਕਾਪੀ ਕਰੋ",copyText:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਪਾਠ ਵਜੋਂ ਕਾਪੀ ਕਰੋ",copySource:"",convertToCode:"",bringForward:"ਅੱਗੇ ਲਿਆਓ",sendToBack:"ਸਭ ਤੋਂ ਪਿੱਛੇ ਭੇਜੋ",bringToFront:"ਸਭ ਤੋਂ ਅੱਗੇ ਲਿਆਓ",sendBackward:"ਪਿੱਛੇ ਭੇਜੋ",delete:"ਮਿਟਾਓ",copyStyles:"ਸਟਾਇਲ ਕਾਪੀ ਕਰੋ",pasteStyles:"ਸਟਾਇਲ ਪੇਸਟ ਕਰੋ",stroke:"ਰੇਖਾ",background:"ਬੈਕਗਰਾਉਂਡ",fill:"ਭਰਨਾ",strokeWidth:"ਰੇਖਾ ਦੀ ਚੌੜਾਈ",strokeStyle:"ਰੇਖਾ ਦਾ ਸਟਾਇਲ",strokeStyle_solid:"ਠੋਸ",strokeStyle_dashed:"ਡੈਸ਼ ਵਾਲੀ",strokeStyle_dotted:"ਬਿੰਦੀਆਂ ਵਾਲੀ",sloppiness:"ਬੇਤਰਤੀਬੀ",opacity:"ਅਪਾਰਦਰਸ਼ਤਾ",textAlign:"ਲਿਖਤ ਇਕਸਾਰਤਾ",edges:"ਕਿਨਾਰੇ",sharp:"ਤਿੱਖੇ",round:"ਗੋਲ",arrowheads:"ਤੀਰ ਦੇ ਸਿਰੇ",arrowhead_none:"ਕੋਈ ਨਹੀਂ",arrowhead_arrow:"ਤੀਰ",arrowhead_bar:"ਡੰਡੀ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"ਤਿਕੋਣ",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"ਫੌਂਟ ਅਕਾਰ",fontFamily:"ਫੌਂਟ ਪਰਿਵਾਰ",addWatermark:'"Excalidraw ਨਾਲ ਬਣਾਇਆ" ਜੋੜੋ',handDrawn:"ਹੱਥਲਿਖਤ",normal:"ਆਮ",code:"ਕੋਡ",small:"ਛੋਟਾ",medium:"ਮੱਧਮ",large:"ਵੱਡਾ",veryLarge:"ਬਹੁਤ ਵੱਡਾ",solid:"ਠੋਸ",hachure:"ਤਿਰਛੀਆਂ ਗਰਿੱਲਾਂ",zigzag:"ਵਿੰਗ-ਤੜਿੰਗ",crossHatch:"ਜਾਲੀ",thin:"ਪਤਲੀ",bold:"ਮੋਟੀ",left:"ਖੱਬੇ",center:"ਵਿਚਕਾਰ",right:"ਸੱਜੇ",extraBold:"ਬਹੁਤ ਮੋਟੀ",architect:"ਭਵਨ ਨਿਰਮਾਣਕਾਰੀ",artist:"ਕਲਾਕਾਰ",cartoonist:"ਕਾਰਟੂਨਿਸਟ",fileTitle:"ਫਾਈਲ ਦਾ ਨਾਂ",colorPicker:"ਰੰਗ ਚੋਣਕਾਰ",canvasColors:"ਕੈਨਵਸ 'ਤੇ ਵਰਤਿਆ",canvasBackground:"ਕੈਨਵਸ ਦਾ ਬੈਕਗਰਾਉਂਡ",drawingCanvas:"ਡਰਾਇੰਗ ਕੈਨਵਸ",layers:"ਪਰਤਾਂ",actions:"ਕਾਰਵਾਈਆਂ",language:"ਭਾਸ਼ਾ",liveCollaboration:"ਲਾਇਵ ਸਹਿਯੋਗ...",duplicateSelection:"ਡੁਪਲੀਕੇਟ ਬਣਾਓ",untitled:"ਬੇ-ਸਿਰਨਾਵਾਂ",name:"ਨਾਂ",yourName:"ਤੁਹਾਡਾ ਨਾਂ",madeWithExcalidraw:"Excalidraw ਨਾਲ ਬਣਾਇਆ",group:"ਚੋਣ ਦਾ ਗਰੁੱਪ ਬਣਾਓ",ungroup:"ਚੋਣ ਦਾ ਗਰੁੱਪ ਤੋੜੋ",collaborators:"ਸਹਿਯੋਗੀ",showGrid:"ਜਾਲੀ ਦਿਖਾਓ",addToLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ ਜੋੜੋ",removeFromLibrary:"ਲਾਇਬ੍ਰੇਰੀ 'ਚੋਂ ਹਟਾਓ",libraryLoadingMessage:"ਲਾਇਬ੍ਰੇਰੀ ਲੋਡ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ…",libraries:"ਲਾਇਬ੍ਰੇਰੀਆਂ ਬਰਾਉਜ਼ ਕਰੋ",loadingScene:"ਦ੍ਰਿਸ਼ ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…",align:"ਇਕਸਾਰ",alignTop:"ਉੱਪਰ ਇਕਸਾਰ ਕਰੋ",alignBottom:"ਹੇਠਾਂ ਇਕਸਾਰ ਕਰੋ",alignLeft:"ਖੱਬੇ ਇਕਸਾਰ ਕਰੋ",alignRight:"ਸੱਜੇ ਇਕਸਾਰ ਕਰੋ",centerVertically:"ਲੇਟਵੇਂ ਵਿਚਕਾਰ ਕਰੋ",centerHorizontally:"ਖੜ੍ਹਵੇਂ ਵਿਚਕਾਰ ਕਰੋ",distributeHorizontally:"ਖੜ੍ਹਵੇਂ ਇਕਸਾਰ ਵੰਡੋ",distributeVertically:"ਲੇਟਵੇਂ ਇਕਸਾਰ ਵੰਡੋ",flipHorizontal:"ਲੇਟਵੇਂ ਪਾਸੇ ਪਲਟੋ",flipVertical:"ਖੜ੍ਹਵੇਂ ਪਾਸੇ ਪਲਟੋ",viewMode:"ਦੇਖਣ ਵਾਲਾ ਮੋਡ",share:"ਸਾਂਝਾ ਕਰੋ",showStroke:"ਰੇਖਾ ਦਾ ਰੰਗ ਚੋਣਕਾਰ ਦਿਖਾਓ",showBackground:"ਬੈਕਗਰਾਉਂਡ ਦਾ ਰੰਗ ਚੋਣਕਾਰ ਦਿਖਾਓ",toggleTheme:"ਥੀਮ ਬਦਲੋ",personalLib:"ਨਿੱਜੀ ਲਾਇਬ੍ਰੇਰੀ",excalidrawLib:"ਐਕਸਕਲੀਡਰਾਅ ਲਾਇਬ੍ਰੇਰੀ",decreaseFontSize:"ਫੌਂਟ ਦਾ ਅਕਾਰ ਘਟਾਓ",increaseFontSize:"ਫੌਂਟ ਦਾ ਅਕਾਰ ਵਧਾਓ",unbindText:"ਪਾਠ ਨੂੰ ਵੱਖ ਕਰੋ",bindText:"ਪਾਠ ਨੂੰ ਕੰਟੇਨਰ ਨਾਲ ਬੰਨ੍ਹੋ",createContainerFromText:"ਪਾਠ ਨੂੰ ਕੰਟੇਨਰ ਵਿੱਚ ਇਕੱਠਾ ਕਰੋ",link:{edit:"ਕੜੀ ਸੋਧੋ",editEmbed:"",create:"ਕੜੀ ਬਣਾਓ",createEmbed:"",label:"ਕੜੀ",labelEmbed:"",empty:""},lineEditor:{edit:"ਪੰਕਤੀ ਸੋਧੋ",exit:"ਪੰਕਤੀ ਸੋਧਕ 'ਤੋਂ ਬਾਹਰ ਨਿਕਲੋ"},elementLock:{lock:"ਲਾਕ ਕਰੋ",unlock:"ਅਨਲਾਕ ਕਰੋ",lockAll:"ਸਭ ਲਾਕ ਕਰੋ",unlockAll:"ਸਭ ਅਨਲਾਕ ਕਰੋ"},statusPublished:"ਪ੍ਰਕਾਸ਼ਤ ਹੈ",sidebarLock:"ਸਾਈਡਬਾਰ ਨੂੰ ਖੁੱਲ੍ਹਾ ਰੱਖੋ",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},wMe={noItems:"ਹਾਲੇ ਤੱਕ ਕੋਈ ਚੀਜ ਜੋੜੀ ਨਹੀਂ ਗਈ...",hint_emptyLibrary:"ਇੱਥੇ ਆਈਟਮ ਜੋੜਨ ਲਈ ਉਸਨੂੰ ਕੈਨਵਸ ‘ਤੇ ਚੁਣੋ, ਜਾਂ ਹੇਠਾਂ ਪਬਲਿਕ ਰਿਪਾਜ਼ੀਟਰੀ ‘ਚੋਂ ਲਾਇਬ੍ਰੇਰੀ ਸਥਾਪਤ ਕਰੋ।",hint_emptyPrivateLibrary:"ਇੱਥੇ ਆਈਟਮ ਜੋੜਨ ਲਈ ਉਸਨੂੰ ਕੈਨਵਸ ‘ਤੇ ਚੁਣੋ।"},bMe={clearReset:"ਕੈਨਵਸ ਰੀਸੈੱਟ ਕਰੋ",exportJSON:"ਫਾਈਲ ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",exportImage:"ਤਸਵੀਰ ਨਿਰਯਾਤ ਕਰੋ...",export:"ਇਸ ਵਿੱਚ ਸਾਂਭੋ...",copyToClipboard:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਕਰੋ",save:"ਮੌਜੂਦਾ ਫਾਈਲ ਵਿੱਚ ਸਾਂਭੋ",saveAs:"ਇਸ ਵਜੋਂ ਸਾਂਭੋ",load:"ਖੋਲ੍ਹੋ",getShareableLink:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ ਲਵੋ",close:"ਬੰਦ ਕਰੋ",selectLanguage:"ਭਾਸ਼ਾ ਚੁਣੋ",scrollBackToContent:"ਸਮੱਗਰੀ 'ਤੇ ਵਾਪਸ ਸਕਰੋਲ ਕਰੋ",zoomIn:"ਜ਼ੂਮ ਵਧਾਓ",zoomOut:"ਜ਼ੂਮ ਘਟਾਓ",resetZoom:"ਜ਼ੂਮ ਰੀਸੈੱਟ ਕਰੋ",menu:"ਮੇਨੂ",done:"ਹੋ ਗਿਆ",edit:"ਸੋਧੋ",undo:"ਅਣਕੀਤਾ ਕਰੋ",redo:"ਮੁੜ-ਕਰੋ",resetLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਰੀਸੈੱਟ ਕਰੋ",createNewRoom:"ਨਵਾਂ ਕਮਰਾ ਬਣਾਓ",fullScreen:"ਪੂਰੀ ਸਕਰੀਨ",darkMode:"ਡਾਰਕ ਮੋਡ",lightMode:"ਲਾਇਟ ਮੋਡ",zenMode:"ਜ਼ੈੱਨ ਮੋਡ",objectsSnapMode:"",exitZenMode:"ਜ਼ੈੱਨ ਮੋਡ 'ਚੋਂ ਬਾਹਰ ਨਿਕਲੋ",cancel:"ਰੱਦ ਕਰੋ",clear:"ਸਾਫ਼ ਕਰੋ",remove:"ਹਟਾਓ",embed:"",publishLibrary:"ਪ੍ਰਕਾਸ਼ਤ ਕਰੋ",submit:"ਜਮ੍ਹਾ ਕਰਵਾਓ",confirm:"ਪੁਸ਼ਟੀ ਕਰੋ",embeddableInteractionButton:""},vMe={clearReset:"ਇਹ ਸਾਰਾ ਕੈਨਵਸ ਸਾਫ ਕਰ ਦੇਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਪੱਕਾ ਇੰਝ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?",couldNotCreateShareableLink:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ ਨਹੀਂ ਬਣਾ ਸਕੇ।",couldNotCreateShareableLinkTooBig:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ ਨਹੀਂ ਬਣਾ ਸਕੇ: ਦ੍ਰਿਸ਼ ਬਹੁਤ ਵੱਡਾ ਹੈ",couldNotLoadInvalidFile:"ਨਜਾਇਜ਼ ਫਾਈਲ ਲੋਡ ਨਹੀਂ ਕਰ ਸਕੇ",importBackendFailed:"ਬੈਕਐੱਨਡ ਤੋਂ ਆਯਾਤ ਕਰਨ ਵਿੱਚ ਅਸਫਲ ਰਹੇ।",cannotExportEmptyCanvas:"ਖਾਲੀ ਕੈਨਵਸ ਨੂੰ ਨਿਰਯਾਤ ਨਹੀਂ ਕਰ ਸਕਦੇ।",couldNotCopyToClipboard:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ।",decryptFailed:"ਡਾਟਾ ਡੀਕਰਿਪਟ ਨਹੀਂ ਕਰ ਸਕੇ।",uploadedSecurly:"ਅੱਪਲੋਡ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕਰਿਪਸ਼ਨ ਨਾਲ ਸੁਰੱਖਿਅਤ ਕੀਤੀ ਹੋਈ ਹੈ, ਜਿਸਦਾ ਮਤਲਬ ਇਹ ਹੈ ਕਿ Excalidraw ਸਰਵਰ ਅਤੇ ਤੀਜੀ ਧਿਰ ਦੇ ਬੰਦੇ ਸਮੱਗਰੀ ਨੂੰ ਪੜ੍ਹ ਨਹੀਂ ਸਕਦੇ।",loadSceneOverridePrompt:"ਬਾਹਰੀ ਡਰਾਇੰਗ ਨੂੰ ਲੋਡ ਕਰਨਾ ਤੁਹਾਡੀ ਮੌਜੂਦਾ ਸਮੱਗਰੀ ਦੀ ਥਾਂ ਲੈ ਲਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਜਾਰੀ ਰੱਖਣਾ ਚਾਹੁੰਦੇ ਹੋ?",collabStopOverridePrompt:`ਇਜਲਾਸ ਨੂੰ ਰੋਕਣਾ ਪਿਛਲੀ ਲੋਕਲ ਸਾਂਭੀ ਡਰਾਇੰਗ ਦੀ ਥਾਂ ਲੈ ਲਵੇਗਾ। ਪੱਕਾ ਇੰਝ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?
|
||
|
||
(ਜੇ ਤੁਸੀਂ ਆਪਣੀ ਲੋਕਲ ਡਰਾਇੰਗ ਨੂੰ ਬਰਕਰਾਰ ਰੱਖਣਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਇਹ ਕਰਨ ਦੀ ਬਜਾਏ ਬੱਸ ਆਪਣਾ ਟੈਬ ਬੰਦ ਕਰ ਦਿਉ।)`,errorAddingToLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ ਸਮੱਗਰੀ ਨਹੀਂ ਜੋੜ ਸਕੇ",errorRemovingFromLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚੋਂ ਸਮੱਗਰੀ ਨਹੀਂ ਹਟਾ ਸਕੇ",confirmAddLibrary:"ਇਹ ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ {{numShapes}} ਆਕ੍ਰਿਤੀ(ਆਂ) ਨੂੰ ਜੋੜ ਦੇਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਪੱਕਾ ਇੰਝ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?",imageDoesNotContainScene:"ਇਸ ਤਸਵੀਰ ਵਿੱਚ ਦ੍ਰਿਸ਼ ਦਾ ਕੋਈ ਵੀ ਡਾਟਾ ਨਜ਼ਰ ਨਹੀਂ ਆ ਰਿਹਾ। ਕੀ ਤੁਸੀਂ ਨਿਰਯਾਤ ਕਰਦੇ ਸਮੇਂ ਦ੍ਰਿਸ਼ ਨੂੰ ਮੜ੍ਹਣਾ ਸਮਰੱਥ ਕੀਤਾ ਸੀ?",cannotRestoreFromImage:"ਇਸ ਤਸਵੀਰ ਫਾਈਲ ਤੋਂ ਦ੍ਰਿਸ਼ ਬਹਾਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ",invalidSceneUrl:"ਦਿੱਤੀ ਗਈ URL 'ਚੋਂ ਦ੍ਰਿਸ਼ ਨੂੰ ਆਯਾਤ ਨਹੀਂ ਕਰ ਸਕੇ। ਇਹ ਜਾਂ ਤਾਂ ਖਰਾਬ ਹੈ, ਜਾਂ ਇਸ ਵਿੱਚ ਜਾਇਜ਼ Excalidraw JSON ਡਾਟਾ ਸ਼ਾਮਲ ਨਹੀਂ ਹੈ।",resetLibrary:"ਇਹ ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਸਾਫ ਕਰ ਦੇਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਪੱਕਾ ਇੰਝ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?",removeItemsFromsLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚੋਂ {{count}} ਚੀਜ਼(-ਜ਼ਾਂ) ਮਿਟਾਉਣੀਆਂ ਹਨ?",invalidEncryptionKey:"ਇਨਕਰਿਪਸ਼ਨ ਕੁੰਜੀ 22 ਅੱਖਰਾਂ ਦੀ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ। ਲਾਇਵ ਸਹਿਯੋਗ ਬੰਦ ਹੈ।",collabOfflineWarning:`ਕੋਈ ਇੰਟਰਨੈੱਟ ਕਨੈਕਸ਼ਨ ਨਹੀਂ ਹੈ
|
||
ਤੁਹਾਡੀਆਂ ਤਬਦੀਲੀਆਂ ਸਾਂਭੀਆਂ ਨਹੀਂ ਜਾਣਗੀਆਂ।`},kMe={unsupportedFileType:"ਫਾਈਲ ਦੀ ਕਿਸਮ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ।",imageInsertError:"ਚਿੱਤਰ ਸ਼ਾਮਲ ਨਹੀਂ ਜਾ ਸਕਿਆ, ਬਾਅਦ ਵਿੱਚ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ...",fileTooBig:"ਫਾਈਲ ਬਹੁਤ ਜ਼ਿਆਦਾ ਵੱਡੀ ਹੈ। ਵੱਧ-ਤੋਂ-ਵੱਧ ਪ੍ਰਵਾਨਤ ਅਕਾਰ {{maxSize}} ਹੈ।",svgImageInsertError:"SVG ਤਸਵੀਰ ਸ਼ਾਮਲ ਨਹੀਂ ਕਰ ਸਕੇ। SVG ਮਾਰਕ-ਅੱਪ ਨਜਾਇਜ਼ ਲੱਗ ਰਿਹਾ ਹੈ।",failedToFetchImage:"",invalidSVGString:"SVG ਨਜਾਇਜ਼ ਹੈ।",cannotResolveCollabServer:"",importLibraryError:"ਲਾਇਬ੍ਰੇਰੀ ਲੋਡ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},FMe={selection:"ਚੋਣਕਾਰ",image:"ਤਸਵੀਰ ਸ਼ਾਮਲ ਕਰੋ",rectangle:"ਆਇਤ",diamond:"ਹੀਰਾ",ellipse:"ਅੰਡਾਕਾਰ",arrow:"ਤੀਰ",line:"ਲਕੀਰ",freedraw:"ਵਾਹੋ",text:"ਪਾਠ",library:"ਲਾਇਬ੍ਰੇਰੀ",lock:"ਡਰਾਇੰਗ ਤੋਂ ਬਾਅਦ ਵੀ ਚੁਣੇ ਹੋਏ ਸੰਦ ਨੂੰ ਸਰਗਰਮ ਰੱਖੋ ",penMode:"ਪੈੱਨ ਮੋਡ - ਟੱਚ ਤੋਂ ਬਚਾਉਂਦਾ ਹੈ",link:"",eraser:"ਰਬੜ",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},xMe={canvasActions:"ਕੈਨਵਸ ਦੀਆਂ ਕਾਰਵਾਈਆਂ",selectedShapeActions:"ਚੁਣੀ ਆਕ੍ਰਿਤੀ ਦੀਆਂ ਕਾਰਵਾਈਆਂ",shapes:"ਆਕ੍ਰਿਤੀਆਂ"},SMe={canvasPanning:"",linearElement:"ਇੱਕ ਤੋਂ ਜ਼ਿਆਦਾ ਬਿੰਦੂਆਂ ਲਈ ਕਲਿੱਕ ਕਰਕੇ ਸ਼ੁਰੂਆਤ ਕਰੋ, ਇਕਹਿਰੀ ਲਕੀਰ ਲਈ ਘਸੀਟੋ",freeDraw:"ਕਲਿੱਕ ਕਰਕੇ ਘਸੀਟੋ, ਪੂਰਾ ਹੋਣ 'ਤੇ ਛੱਡ ਦਿਉ",text:"ਨੁਸਖਾ: ਤੁਸੀਂ ਚੋਣਕਾਰ ਸੰਦ ਰਾਹੀਂ ਕਿਤੇ ਵੀ ਡਬਲ-ਕਲਿੱਕ ਕਰਕੇ ਵੀ ਪਾਠ ਜੋੜ ਸਕਦੇ ਹੋ",embeddable:"",text_selected:"ਪਾਠ ਨੂੰ ਸੋਧਣ ਲਈ ਡਬਲ-ਕਲਿੱਕ ਕਰੋ ਜਾਂ ਐਂਟਰ ਦਬਾਓ",text_editing:"ਸੋਧ ਮੁਕੰਮਲ ਕਰਨ ਲਈ ਐਸਕੇਪ (Esc) ਜਾਂ Ctrl-ਜਾਂ-Cmd+ਐਂਟਰ (enter) ਦਬਾਓ",linearElementMulti:"ਮੁਕੰਮਲ ਕਰਨ ਲਈ ਆਖਰੀ ਬਿੰਦੂ 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਜਾਂ ਇਸਕੇਪ ਜਾਂ ਐਂਟਰ ਦਬਾਓ",lockAngle:"ਤੁਸੀਂ SHIFT ਦਬਾਈ ਰੱਖ ਕੇ ਕੋਣਾਂ ਨੂੰ ਕਾਬੂ ਕਰ ਸਕਦੇ ਹੋ",resize:"ਤੁਸੀਂ ਅਕਾਰ ਬਦਲਦੇ ਸਮੇਂ SHIFT ਦਬਾਈ ਰੱਖ ਕੇ ਅਨੁਪਾਤ ਨੂੰ ਕਾਬੂ ਕਰ ਸਕਦੇ ਹੋ, ਵਿਚਕਾਰ ਤੋਂ ਅਕਾਰ ਬਦਲਣ ਲਈ ALT ਦਬਾਓ",resizeImage:"",rotate:"ਤੁਸੀਂ ਘੁਮਾਉਂਦੇ ਹੋਏ SHIFT ਦਬਾਈ ਰੱਖ ਕੇ ਕੋਣਾਂ ਨੂੰ ਕਾਬੂ ਕਰ ਸਕਦੇ ਹੋ",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"ਆਪਣੀ ਲਾਇਬ੍ਰੇਰੀ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰੋ",bindTextToElement:"ਪਾਠ ਜੋੜਨ ਲਈ ਐੰਟਰ ਦਬਾਓ",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},LMe={cannotShowPreview:"ਝਲਕ ਨਹੀਂ ਦਿਖਾ ਸਕਦੇ",canvasTooBig:"ਸ਼ਾਇਦ ਕੈਨਵਸ ਬਹੁਤ ਜ਼ਿਆਦਾ ਵੱਡਾ ਹੈ।",canvasTooBigTip:"ਨੁਸਖਾ: ਸਭ ਤੋਂ ਦੂਰ ਸਥਿੱਤ ਐਲੀਮੈਂਟਾਂ ਨੂੰ ਥੋੜ੍ਹਾ ਜਿਹਾ ਨੇੜੇ ਲਿਆ ਕੇ ਦੇਖੋ।"},RMe={headingMain:"ਕੋਈ ਸਮੱਸਿਆ ਖੜ੍ਹੀ ਹੋਈ। <button>ਪੰਨਾ ਮੁੜ-ਲੋਡ</button> ਕਰਕੇ ਦੇਖੋ।",clearCanvasMessage:"ਜੇ ਮੁੜ-ਲੋਡ ਕਰਨਾ ਕੰਮ ਨਾ ਕਰੇ, ਤਾਂ ਇਹ ਕਰਕੇ ਦੇਖੋ <button>ਕੈਨਵਸ ਸਾਫ ਕਰੋ।</button>",clearCanvasCaveat:" ਇਹ ਸਾਰਾ ਕੰਮ ਗਵਾ ਦੇਵੇਗਾ ",trackedToSentry:"ਸੂਚਕ {{eventId}} ਵਾਲੀ ਸਮੱਸਿਆ ਸਾਡੇ ਸਿਸਟਮ 'ਤੇ ਟਰੈਕ ਕੀਤੀ ਗਈ ਸੀ।",openIssueMessage:"ਅਸੀਂ ਬੜੇ ਸਾਵਧਾਨ ਸੀ ਕਿ ਗਲਤੀ ਵਿੱਚ ਤੁਹਾਡੇ ਦ੍ਰਿਸ਼ ਦੀ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਨਾ ਕਰੀਏ। ਜੇ ਤੁਹਾਡਾ ਦ੍ਰਿਸ਼ ਨਿੱਜੀ ਨਹੀਂ ਹੈ ਤਾਂ ਇਸ 'ਤੇ ਸਾਡੇ ਨਾਲ ਸੰਪਰਕ ਕਰੋ ਜੀ <button>ਬੱਗ ਟਰੈਕਰ।</button>ਹੇਠਾਂ ਦਿੱਤੀ ਜਾਣਕਾਰੀ ਨੂੰ ਕਾਪੀ ਕਰਕੇ ਗਿੱਟਹੱਬ ਮੁੱਦੇ ਵਿੱਚ ਪੇਸਟ ਕਰਕੇ ਸ਼ਾਮਲ ਕਰੋ ਜੀ।",sceneContent:"ਦ੍ਰਿਸ਼ ਦੀ ਸਮੱਗਰੀ:"},NMe={desc_intro:"ਤੁਸੀਂ ਲੋਕਾਂ ਨੂੰ ਆਪਣੇ ਨਾਲ ਮੌਜੂਦਾ ਦ੍ਰਿਸ਼ 'ਤੇ ਸਹਿਯੋਗ ਕਰਨ ਲਈ ਸੱਦਾ ਭੇਜ ਸਕਦੇ ਹੋ।",desc_privacy:"ਫਿਕਰ ਨਾ ਕਰੋ, ਇਜਲਾਸ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕਰਿਪਸ਼ਨ ਵਰਤਦਾ ਹੈ, ਸੋ ਜੋ ਕੁਝ ਵੀ ਤੁਸੀਂ ਵਾਹੁੰਦੇ ਹੋ ਉਹ ਨਿੱਜੀ ਹੀ ਰਹਿੰਦਾ ਹੈ। ਇੱਥੋਂ ਤੱਕ ਕਿ ਸਾਡੇ ਸਰਵਰ ਵੀ ਨਹੀਂ ਜਾਣ ਸਕਣਗੇ ਕਿ ਤੁਸੀਂ ਕੀ ਬਣਾਇਆ ਹੈ।",button_startSession:"ਇਜਲਾਸ ਸ਼ੁਰੂ ਕਰੋ",button_stopSession:"ਇਜਲਾਸ ਰੋਕੋ",desc_inProgressIntro:"ਲਾਇਵ ਸਹਿਯੋਗ ਇਜਲਾਸ ਹੁਣ ਚੱਲ ਰਿਹਾ ਹੈ।",desc_shareLink:"ਇਸ ਲਿੰਕ ਨੂੰ ਉਹਨਾਂ ਨਾਲ ਸਾਂਝਾ ਕਰੋ ਜਿਹਨਾਂ ਨਾਲ ਤੁਸੀਂ ਸਹਿਯੋਗ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ:",desc_exitSession:"ਇਜਲਾਸ ਨੂੰ ਰੋਕਣਾ ਤੁਹਾਡਾ ਕਮਰੇ ਨਾਲੋਂ ਨਾਤਾ ਤੋੜ ਦੇਵੇਗਾ, ਪਰ ਤੁਸੀਂ ਸਥਾਨਕ ਪੱਧਰ 'ਤੇ ਦ੍ਰਿਸ਼ ਨਾਲ ਕੰਮ ਕਰਨਾ ਜਾਰੀ ਰੱਖ ਸਕੋਗੇ। ਇਹ ਧਿਆਨ 'ਚ ਰੱਖੋ ਕਿ ਇਹ ਬਾਕੀ ਲੋਕਾਂ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਨਹੀਂ ਕਰੇਗਾ , ਅਤੇ ਉਹ ਹਾਲੇ ਵੀ ਆਪਣੇ ਸੰਸਕਰਨ 'ਤੇ ਸਹਿਯੋਗ ਕਰਨ ਦੇ ਕਾਬਲ ਹੋਣਗੇ।",shareTitle:"Excalidraw 'ਤੇ ਲਾਈਵ ਇਜਲਾਸ ਦਾ ਹਿੱਸਾ ਬਣੋ"},GMe={title:"ਗਲਤੀ"},UMe={disk_title:"ਡਿਸਕ ਵਿੱਚ ਸਾਂਭੋ",disk_details:"ਦ੍ਰਿਸ਼ ਦਾ ਡਾਟਾ ਫਾਈਲ ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ ਜਿੱਥੋਂ ਤੁਸੀਂ ਇਸਨੂੰ ਬਾਅਦ ਵਿੱਚ ਆਯਾਤ ਕਰ ਸਕਦੇ ਹੋ।",disk_button:"ਫਾਈਲ ਵਿੱਚ ਸਾਂਭੋ",link_title:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ",link_details:"ਸਿਰਫ ਦੇਖੇ-ਜਾਣ ਵਾਲੀ ਲਿੰਕ ਵਜੋਂ ਨਿਰਯਾਤ ਕਰੋ।",link_button:"ਲਿੰਕ ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",excalidrawplus_description:"ਆਪਣੇ ਦ੍ਰਿਸ਼ ਦੇ ਡਾਟੇ ਨੂੰ Excalidraw+ ਵਰਕਸਪੇਸ ਵਿੱਚ ਸਾਂਭੋ।",excalidrawplus_button:"ਨਿਰਯਾਤ ਕਰੋ",excalidrawplus_exportError:"ਇਸ ਸਮੇਂ Excalidraw+ ਵਿੱਚ ਨਿਰਯਾਤ ਨਹੀਂ ਕਰ ਸਕੇ..."},MMe={blog:"ਸਾਡਾ ਬਲੌਗ ਪੜ੍ਹੋ",click:"ਕਲਿੱਕ",deepSelect:"",deepBoxSelect:"",curvedArrow:"ਵਿੰਗਾ ਤੀਰ",curvedLine:"ਵਿੰਗੀ ਲਕੀਰ",documentation:"ਕਾਗਜ਼ਾਤ",doubleClick:"ਡਬਲ-ਕਲਿੱਕ",drag:"ਘਸੀਟੋ",editor:"ਸੋਧਕ",editLineArrowPoints:"",editText:"",github:"ਕੋਈ ਸਮੱਸਿਆ ਲੱਭੀ? ਜਮ੍ਹਾਂ ਕਰਵਾਓ",howto:"ਸਾਡੀਆਂ ਗਾਈਡਾਂ ਦੀ ਪਾਲਣਾ ਕਰੋ",or:"ਜਾਂ",preventBinding:"ਤੀਰ ਬੱਝਣਾ ਰੋਕੋ",tools:"ਟੂਲ",shortcuts:"ਕੀਬੋਰਡ ਸ਼ਾਰਟਕੱਟ",textFinish:"ਸੋਧਣਾ ਮੁਕੰਮਲ ਕਰੋ (ਪਾਠ ਸੋਧਕ)",textNewLine:"ਨਵੀਂ ਪੰਕਤੀ ਜੋੜੋ (ਪਾਠ ਸੋਧਕ)",title:"ਮਦਦ",view:"ਦਿੱਖ",zoomToFit:"ਸਾਰੇ ਐਲੀਮੈਂਟਾਂ ਨੂੰ ਫਿੱਟ ਕਰਨ ਲਈ ਜ਼ੂਮ ਕਰੋ",zoomToSelection:"ਚੋਣ ਤੱਕ ਜ਼ੂਮ ਕਰੋ",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},TMe={title:"ਕੈਨਵਸ ਨੂੰ ਸਾਫ਼ ਕਰੋ"},YMe={title:"ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਪ੍ਰਕਾਸ਼ਤ ਕਰੋ",itemName:"ਚੀਜ਼ ਦਾ ਨਾਂ",authorName:"ਲੇਖਕ ਦਾ ਨਾਂ",githubUsername:"ਗਿੱਟਹੱਬ ਵਰਤੋਂਕਾਰ ਨਾਂ",twitterUsername:"ਟਵਿੱਟਰ ਦਾ ਵਰਤੋਂਕਾਰ-ਨਾਂ",libraryName:"ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਨਾਂ",libraryDesc:"ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਵੇਰਵਾ",website:"ਵੈੱਬਸਾਇਟ",placeholder:{authorName:"ਤੁਹਾਡਾ ਨਾਂ ਜਾਂ ਵਰਤੋਂਕਾਰ-ਨਾਂ",libraryName:"ਤੁਹਾਡੀ ਲਾਇਬਰ੍ਰੀ ਦਾ ਨਾਂ",libraryDesc:"ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਵੇਰਵਾ ਤਾਂ ਜੋ ਲੋਕਾਂ ਨੂੰ ਇਸ ਤੋੰਂ ਇਸਦੀ ਵਰਤੋਂ ਕਰਨ ਸਬੰਧੀ ਮਦਦ ਮਿਲ ਸਕੇ",githubHandle:"",twitterHandle:"",website:""},errors:{required:"ਲੋੜੀਂਦਾ",website:"ਜਾਇਜ਼ URL ਭਰੋ"},noteDescription:"ਹੋਰ ਲੋਕਾਂ ਵੱਲੋਂ ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਵਰਤਣ ਲਈ ਸਕਣ ਇਸ ਲਈ<link>ਜਨਤਕ ਲਾਇਬ੍ਰੇਰੀ ਦੀ ਰਿਪਾਜ਼ੀਟਰੀ</link> ਵਿੱਚ ਆਪਣੀ ਲਾਇਬ੍ਰੇਰੀ ਸ਼ਾਮਲ ਕਰਵਾਉਣ ਲਈ ਜਮ੍ਹਾ ਕਰਵਾਓ",noteGuidelines:"<link>ਦਿਸ਼ਾ ਨਿਰਦੇਸ਼</link>",noteLicense:"<link>MIT ਲਾਇਸੈਂਸ, </link>",noteItems:"",atleastOneLibItem:"",republishWarning:""},HMe={title:"ਲਾਇਬ੍ਰੇਰੀ ਜਮ੍ਹਾਂ ਕਰਵਾਈ",content:"ਧੰਨਵਾਦ {{authorName}} ਜੀਉ। ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਸਮੀਖਿਆ ਲਈ ਭੇਜ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਤੁਸੀਂ ਉਸਦੀ ਸਥਿਤੀ <link>ਇੱਥੇ</link> ਦੇਖ ਸਕਦੇ ਹੋ।"},KMe={resetLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਰੀਸੈੱਟ ਕਰੋ",removeItemsFromLib:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚੋਂ ਚੁਣੀਆਂ ਹੋਈਆਂ ਆਈਟਮਾਂ ਹਟਾਓ"},JMe={header:"ਤਸਵੀਰ ਨਿਰਯਾਤ ਕਰੋ",label:{withBackground:"ਪਿਛੋਕੜ",onlySelected:"ਸਿਰਫ ਚੁਣੇ ਹੋਏ",darkMode:"ਡਾਰਕ ਮੋਡ",embedScene:"ਦ੍ਰਿਸ਼ ਮੜ੍ਹੋ",scale:"ਸਕੇਲ",padding:"ਪੈਡਿੰਗ"},tooltip:{embedScene:""},title:{exportToPng:"PNG ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",exportToSvg:"SVG ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",copyPngToClipboard:"PNG ਨੂੰ ਕਲਿੱਪੋਬਰਡ ‘ਤੇ ਕਾਪੀ ਕਰੋ"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"ਗੱਤੇ 'ਤੇ ਕਾਪੀ ਕਰੋ"}},OMe={tooltip:"ਤੁਹਾਡੀ ਡਰਾਇੰਗਾਂ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕਰਿਪਟ ਕੀਤੀਆਂ ਹੋਈਆਂ ਹਨ, ਇਸ ਲਈ Excalidraw ਦੇ ਸਰਵਰ ਉਹਨਾਂ ਨੂੰ ਕਦੇ ਵੀ ਨਹੀਂ ਦੇਖਣਗੇ।",link:"Excalidraw ਵਿੱਚ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕ੍ਰਿਪਸ਼ਨ 'ਤੇ ਬਲੌਗ ਸੰਪਾਦਨਾ"},PMe={angle:"ਕੋਣ",element:"ਐਲੀਮੈਂਟ",elements:"ਐਲੀਮੈਂਟ",height:"ਉਚਾਈ",scene:"ਦ੍ਰਿਸ਼",selected:"ਚੁਣੇ",storage:"ਸਟੋਰੇਜ",title:"ਪੜਾਕੂਆਂ ਲਈ ਅੰਕੜੇ",total:"ਕੁੱਲ",version:"ਸੰਸਕਰਨ",versionCopy:"ਕਾਪੀ ਕਰਨ ਲਈ ਕਲਿੱਕ ਕਰੋ",versionNotAvailable:"ਸੰਸਕਰਨ ਉਪਲਬਧ ਨਹੀਂ ਹੈ",width:"ਚੌੜਾਈ"},_Me={addedToLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ ਜੋੜਿਆ",copyStyles:"ਕਾਪੀ ਕੀਤੇ ਸਟਾਇਲ।",copyToClipboard:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਕੀਤਾ।",copyToClipboardAsPng:"{{exportSelection}} ਨੂੰ ਕਲਿੱਪਬੋਰਡ 'ਤੇ PNG ਵਜੋਂ ਕਾਪੀ ਕੀਤਾ ({{exportColorScheme}})",fileSaved:"ਫਾਈਲ ਸਾਂਭੀ ਗਈ।",fileSavedToFilename:"{filename} ਵਿੱਚ ਸਾਂਭੀ",canvas:"ਕੈਨਵਸ",selection:"ਚੋਣ",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},WMe={transparent:"ਪਾਰਦਰਸ਼ੀ",black:"ਕਾਲੀ",white:"ਸਫ਼ੈਦ",red:"ਲਾਲ",pink:"ਗੁਲਾਬੀ",grape:"ਅੰਗੂਰੀ",violet:"ਜਾਮਣੀ",gray:"ਸੁਰਮਈ",blue:"ਨੀਲਾ",cyan:"ਫਿਰੋਜੀ",teal:"ਟੀਲ",green:"ਹਰਾ",yellow:"ਪੀਲਾ",orange:"ਸੰਤਰੀ",bronze:"ਕਾਂਸੇਰੰਗਾ"},qMe={app:{center_heading:"ਤੁਹਾਡਾ ਸਾਰਾ ਡਾਟਾ ਤੁਹਾਡੇ ਲੋਕਲ ਬਰਾਉਜ਼ਰ ਵਿੱਚ ਸਾਂਭਿਆ ਹੋਇਆ ਹੈ।",center_heading_plus:"",menuHint:"ਨਿਰਯਾਤ, ਤਰਜੀਹਾਂ, ਭਾਸ਼ਾਵਾਂ, …"},defaults:{menuHint:"ਨਿਰਯਾਤ, ਤਰਜੀਹਾਂ, ਅਤੇ ਹੋਰ ਵੀ ਬਹੁਤ ਕੁਝ…",center_heading:"ਡਾਇਆਗ੍ਰਾਮਾਂ। ਕੀਤੀਆਂ। ਸੁਖਾਲੀਆਂ।",toolbarHint:"",helpHint:"ਸ਼ਾਰਟਕੱਟ ਤੇ ਮਦਦ"}},zMe={mostUsedCustomColors:"ਸਭ ਤੋਂ ਵੱਧ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਕਸਟਮ ਰੰਗ",colors:"ਰੰਗ",shades:"ਸ਼ੇਡਾਂ",hexCode:"ਹੈਕਸ ਕੋਡ",noShades:"ਇਸ ਰੰਗ ਦੀ ਕੋਈ ਸ਼ੇਡ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"},ZMe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},VMe={title:"",button:"",description:"",syntax:"",preview:""},tCr={labels:yMe,library:wMe,buttons:bMe,alerts:vMe,errors:kMe,toolBar:FMe,headings:xMe,hints:SMe,canvasError:LMe,errorSplash:RMe,roomDialog:NMe,errorDialog:GMe,exportDialog:UMe,helpDialog:MMe,clearCanvasDialog:TMe,publishDialog:YMe,publishSuccessDialog:HMe,confirmDialog:KMe,imageExportDialog:JMe,encrypted:OMe,stats:PMe,toast:_Me,colors:WMe,welcomeScreen:qMe,colorPicker:zMe,overwriteConfirm:ZMe,mermaid:VMe}});var $Me={};yt($Me,{default:()=>oq,en:()=>U4A,kaa:()=>M4A});var ATe=P(()=>{T4A();qt()});var kTe={};yt(kTe,{alerts:()=>iTe,buttons:()=>rTe,canvasError:()=>sTe,clearCanvasDialog:()=>ETe,colorPicker:()=>wTe,colors:()=>DTe,confirmDialog:()=>hTe,default:()=>rCr,encrypted:()=>pTe,errorDialog:()=>cTe,errorSplash:()=>lTe,errors:()=>uTe,exportDialog:()=>CTe,headings:()=>nTe,helpDialog:()=>BTe,hints:()=>oTe,imageExportDialog:()=>QTe,labels:()=>eTe,library:()=>tTe,mermaid:()=>vTe,overwriteConfirm:()=>bTe,publishDialog:()=>dTe,publishSuccessDialog:()=>ITe,roomDialog:()=>gTe,stats:()=>fTe,toast:()=>mTe,toolBar:()=>aTe,welcomeScreen:()=>yTe});var eTe,tTe,rTe,iTe,uTe,aTe,nTe,oTe,sTe,lTe,gTe,cTe,CTe,BTe,ETe,dTe,ITe,hTe,QTe,pTe,fTe,mTe,DTe,yTe,wTe,bTe,vTe,rCr;var FTe=P(()=>{qt();eTe={paste:"Wklej",pasteAsPlaintext:"Wklej jako zwykły tekst",pasteCharts:"Wklej wykresy",selectAll:"Zaznacz wszystko",multiSelect:"Dodaj element do zaznaczenia",moveCanvas:"Przesuń obszar roboczy",cut:"Wytnij",copy:"Kopiuj",copyAsPng:"Skopiuj do schowka jako plik PNG",copyAsSvg:"Skopiuj do schowka jako plik SVG",copyText:"Skopiuj do schowka jako tekst",copySource:"Skopiuj źródło do schowka",convertToCode:"Skonwertuj do kodu",bringForward:"Przenieś wyżej",sendToBack:"Przenieś na spód",bringToFront:"Przenieś na wierzch",sendBackward:"Przenieś niżej",delete:"Usuń",copyStyles:"Kopiuj style",pasteStyles:"Wklej style",stroke:"Kolor obramowania",background:"Kolor wypełnienia",fill:"Wypełnienie",strokeWidth:"Grubość obramowania",strokeStyle:"Styl obrysu",strokeStyle_solid:"Pełny",strokeStyle_dashed:"Kreskowany",strokeStyle_dotted:"Kropkowany",sloppiness:"Styl kreski",opacity:"Przeźroczystość",textAlign:"Wyrównanie tekstu",edges:"Krawędzie",sharp:"Ostry",round:"Zaokrąglij",arrowheads:"Groty",arrowhead_none:"Brak",arrowhead_arrow:"Strzałka",arrowhead_bar:"Kreska",arrowhead_circle:"Okrąg",arrowhead_circle_outline:"Okrąg (obrys)",arrowhead_triangle:"Trójkąt",arrowhead_triangle_outline:"Trójkąt (obrys)",arrowhead_diamond:"Romb",arrowhead_diamond_outline:"Romb (obrys)",fontSize:"Rozmiar tekstu",fontFamily:"Krój pisma",addWatermark:'Dodaj "Zrobione w Excalidraw"',handDrawn:"Odręczny",normal:"Normalny",code:"Kod",small:"Mały",medium:"Średni",large:"Duży",veryLarge:"Bardzo duży",solid:"Pełne",hachure:"Linie",zigzag:"Zygzak",crossHatch:"Zakreślone",thin:"Cienkie",bold:"Pogrubione",left:"Do lewej",center:"Do środka",right:"Do prawej",extraBold:"Ekstra pogrubione",architect:"Dokładny",artist:"Artystyczny",cartoonist:"Rysunkowy",fileTitle:"Nazwa pliku",colorPicker:"Paleta kolorów",canvasColors:"Używane na płótnie",canvasBackground:"Kolor dokumentu",drawingCanvas:"Obszar roboczy",layers:"Warstwy",actions:"Akcje",language:"Język",liveCollaboration:"Współpraca w czasie rzeczywistym...",duplicateSelection:"Powiel",untitled:"Bez tytułu",name:"Nazwa",yourName:"Twoje imię",madeWithExcalidraw:"Zrobione w Excalidraw",group:"Zgrupuj wybrane",ungroup:"Rozgrupuj wybrane",collaborators:"Współtwórcy",showGrid:"Pokaż siatkę",addToLibrary:"Dodaj do biblioteki",removeFromLibrary:"Usuń z biblioteki",libraryLoadingMessage:"Wczytywanie biblioteki…",libraries:"Przeglądaj biblioteki",loadingScene:"Wczytywanie sceny…",align:"Wyrównaj",alignTop:"Wyrównaj do góry",alignBottom:"Wyrównaj do dołu",alignLeft:"Wyrównaj do lewej",alignRight:"Wyrównaj do prawej",centerVertically:"Wyśrodkuj w pionie",centerHorizontally:"Wyśrodkuj w poziomie",distributeHorizontally:"Rozłóż poziomo",distributeVertically:"Rozłóż pionowo",flipHorizontal:"Odwróć w poziomie",flipVertical:"Odwróć w pionie",viewMode:"Tryb widoku",share:"Udostępnij",showStroke:"Pokaż próbnik kolorów obrysu",showBackground:"Pokaż próbnik koloru tła",toggleTheme:"Przełącz motyw",personalLib:"Biblioteka prywatna",excalidrawLib:"Biblioteka Excalidraw",decreaseFontSize:"Zmniejsz rozmiar czcionki",increaseFontSize:"Zwiększ rozmiar czcionki",unbindText:"Odłącz tekst od kontenera",bindText:"Połącz tekst z kontenerem",createContainerFromText:"Zawijaj tekst w kontenerze",link:{edit:"Edytuj łącze",editEmbed:"Edytuj i osadź link",create:"Utwórz łącze",createEmbed:"Stwórz i osadź link",label:"Łącze",labelEmbed:"Podlinkuj i osadź",empty:"Nie ustawiono linku"},lineEditor:{edit:"Edytuj linię",exit:"Wyjdź z edytora linii"},elementLock:{lock:"Zablokuj",unlock:"Odblokuj",lockAll:"Zablokuj wszystko",unlockAll:"Odblokuj wszystko"},statusPublished:"Opublikowano",sidebarLock:"Panel boczny zawsze otwarty",selectAllElementsInFrame:"Zaznacz wszystkie elementy w ramce",removeAllElementsFromFrame:"Usuń wszystkie elementy z ramki",eyeDropper:"Wybierz kolor z płótna",textToDiagram:"Tekst do diagramu",prompt:""},tTe={noItems:"Nie dodano jeszcze żadnych elementów...",hint_emptyLibrary:"Wybierz element na płótnie, aby go tutaj dodać, lub zainstaluj bibliotekę z poniższego publicznego repozytorium.",hint_emptyPrivateLibrary:"Wybierz element, aby dodać go tutaj."},rTe={clearReset:"Wyczyść dokument i zresetuj kolor dokumentu",exportJSON:"Eksportuj do pliku",exportImage:"Eksportuj obraz...",export:"Zapisz jako...",copyToClipboard:"Skopiuj do schowka",save:"Zapisz do bieżącego pliku",saveAs:"Zapisz jako",load:"Otwórz",getShareableLink:"Udostępnij",close:"Zamknij",selectLanguage:"Wybierz język",scrollBackToContent:"Wróć do obszaru roboczego",zoomIn:"Powiększ",zoomOut:"Pomniejsz",resetZoom:"Zresetuj powiększenie",menu:"Menu",done:"Gotowe",edit:"Edytuj",undo:"Cofnij",redo:"Przywróć",resetLibrary:"Resetuj bibliotekę",createNewRoom:"Utwórz nowy pokój",fullScreen:"Pełny ekran",darkMode:"Ciemny motyw",lightMode:"Jasny motyw",zenMode:"Tryb Zen",objectsSnapMode:"Przyciąganie do obiektów",exitZenMode:"Wyjdź z trybu Zen",cancel:"Anuluj",clear:"Wyczyść",remove:"Usuń",embed:"Przełącz osadzenie",publishLibrary:"Opublikuj",submit:"Prześlij",confirm:"Zatwierdź",embeddableInteractionButton:"Kliknij, aby wejść w interakcję"},iTe={clearReset:"To spowoduje usunięcie wszystkiego z dokumentu. Czy chcesz kontynuować?",couldNotCreateShareableLink:"Wystąpił błąd przy generowaniu linka do udostępniania.",couldNotCreateShareableLinkTooBig:"Nie można utworzyć linku do udostępnienia: scena jest za duża",couldNotLoadInvalidFile:"Nie udało się otworzyć pliku. Wybrany plik jest nieprawidłowy.",importBackendFailed:"Wystąpił błąd podczas importowania pliku.",cannotExportEmptyCanvas:"Najpierw musisz coś narysować, aby zapisać dokument.",couldNotCopyToClipboard:"Nie udało się skopiować do schowka.",decryptFailed:"Nie udało się odszyfrować danych.",uploadedSecurly:"By zapewnić Ci prywatność, udostępnianie projektu jest zabezpieczone szyfrowaniem end-to-end, co oznacza, że poza tobą i osobą z którą podzielisz się linkiem, nikt nie ma dostępu do tego co udostępniasz.",loadSceneOverridePrompt:"Wczytanie zewnętrznego rysunku zastąpi istniejącą zawartość. Czy chcesz kontynuować?",collabStopOverridePrompt:`Zatrzymanie sesji nadpisze poprzedni, zapisany lokalnie rysunek. Czy jesteś pewien?
|
||
|
||
(Jeśli chcesz zachować swój lokalny rysunek, po prostu zamknij zakładkę przeglądarki.)`,errorAddingToLibrary:"Nie udało się dodać elementu do biblioteki",errorRemovingFromLibrary:"Nie udało się usunąć elementu z biblioteki",confirmAddLibrary:"To doda {{numShapes}} kształtów do twojej biblioteki. Jesteś pewien?",imageDoesNotContainScene:"Ten obraz nie zawiera żadnych informacji o scenie. Czy włączyłeś osadzanie sceny podczas eksportu?",cannotRestoreFromImage:"Scena nie mogła zostać przywrócona z pliku obrazu",invalidSceneUrl:"Nie udało się zaimportować sceny z podanego adresu URL. Jest ona wadliwa lub nie zawiera poprawnych danych Excalidraw w formacie JSON.",resetLibrary:"To wyczyści twoją bibliotekę. Jesteś pewien?",removeItemsFromsLibrary:"Usunąć {{count}} element(ów) z biblioteki?",invalidEncryptionKey:"Klucz szyfrowania musi składać się z 22 znaków. Współpraca na żywo jest wyłączona.",collabOfflineWarning:`Brak połączenia z Internetem.
|
||
Twoje zmiany nie zostaną zapisane!`},uTe={unsupportedFileType:"Nieobsługiwany typ pliku.",imageInsertError:"Nie udało się wstawić obrazu. Spróbuj ponownie później...",fileTooBig:"Plik jest zbyt duży. Maksymalny dozwolony rozmiar to {{maxSize}}.",svgImageInsertError:"Nie udało się wstawić obrazu SVG. Znacznik SVG wygląda na nieprawidłowy.",failedToFetchImage:"Nie udało się załadować obrazu.",invalidSVGString:"Nieprawidłowy SVG.",cannotResolveCollabServer:"Nie można połączyć się z serwerem współpracy w czasie rzeczywistym. Proszę odświeżyć stronę i spróbować ponownie.",importLibraryError:"Wystąpił błąd w trakcie ładowania biblioteki",collabSaveFailed:"Nie udało się zapisać w bazie danych. Jeśli problemy nie ustąpią, zapisz plik lokalnie, aby nie utracić swojej pracy.",collabSaveFailed_sizeExceeded:"Nie udało się zapisać w bazie danych — dokument jest za duży. Zapisz plik lokalnie, aby nie utracić swojej pracy.",imageToolNotSupported:"Dodawanie obrazów jest wyłączone.",brave_measure_text_error:{line1:"Wygląda na to, że używasz przeglądarki Brave z włączonym ustawieniem <bold>Agressively Block Fingerprinting</bold>.",line2:"Może to doprowadzić do złamania <bold>elementów tekstu</bold> na rysunkach.",line3:"Zdecydowanie zalecamy wyłączenie tego ustawienia. Możesz wykonać <link>te kroki</link>, aby to zrobić.",line4:"Jeśli wyłączenie tego ustawienia nie naprawia wyświetlania elementów tekstowych, zgłoś <issueLink>problem</issueLink> na naszym GitHubie lub napisz do nas na <discordLink>Discordzie</discordLink>"},libraryElementTypeError:{embeddable:"Elementy osadzone nie mogą zostać dodane do biblioteki.",iframe:"Elementy IFrame nie mogą zostać dodane do biblioteki.",image:"Dodawania obrazów do biblioteki nadejdzie wkrótce!"},asyncPasteFailedOnRead:"Nie udało się wkleić (nie udało się odczytać ze schowka systemowego).",asyncPasteFailedOnParse:"Nie udało się wkleić.",copyToSystemClipboardFailed:"Nie udało się skopiować do schowka."},aTe={selection:"Zaznaczenie",image:"Wstaw obraz",rectangle:"Prostokąt",diamond:"Romb",ellipse:"Elipsa",arrow:"Strzałka",line:"Linia",freedraw:"Rysuj",text:"Tekst",library:"Biblioteka",lock:"Zablokuj wybrane narzędzie",penMode:"Tryb pióra — zapobiegaj dotknięciom",link:"Dodaj/aktualizuj link dla wybranego kształtu",eraser:"Gumka",frame:"Ramka",magicframe:"Wireframe do kodu",embeddable:"Osadzenie z internetu",laser:"Wskaźnik laserowy",hand:"Ręka (narzędzie do przesuwania)",extraTools:"Więcej narzędzi",mermaidToExcalidraw:"Konwertuj diagram Mermaid do Excalidraw",magicSettings:"Ustawienia AI"},nTe={canvasActions:"Narzędzia",selectedShapeActions:"Wybrane narzędzie",shapes:"Kształty"},oTe={canvasPanning:"Aby przesunąć płótno, przytrzymaj kółko myszy lub spację podczas przeciągania, albo użyj narzędzia ręki",linearElement:"Naciśnij, aby zrobić punkt, przeciągnij, aby narysować linię",freeDraw:"Naciśnij i przeciągnij by rysować, puść kiedy skończysz",text:"Wskazówka: możesz również dodać tekst klikając dwukrotnie gdziekolwiek za pomocą narzędzia zaznaczania",embeddable:"Kliknij i przeciągnij, aby stworzyć osadzenie strony",text_selected:"Kliknij dwukrotnie lub naciśnij ENTER, aby edytować tekst",text_editing:"Naciśnij Escape lub Ctrl (Cmd w macOS) + ENTER, aby zakończyć edycję",linearElementMulti:"Aby zakończyć krzywą, ponownie kliknij w ostatni punkt, bądź naciśnij Esc albo Enter",lockAngle:"Możesz ograniczyć kąt trzymając SHIFT",resize:"Możesz zachować proporcję trzymająć wcisnięty SHIFT, przytrzymaj ALT by zmienić rozmiar względem środka",resizeImage:`Możesz zmienić rozmiar swobodnie trzymając SHIFT,
|
||
przytrzymaj ALT, aby przeskalować względem środka obiektu`,rotate:"Możesz obracać element w równych odstępach trzymając wciśnięty SHIFT",lineEditor_info:"Przytrzymaj CtrlOrCmd i kliknij dwukrotnie lub naciśnij CtrlOrCmd + Enter, aby edytować punkty",lineEditor_pointSelected:"Naciśnij przycisk Delete, aby usunąć punkt. Ctrl/Cmd+D, aby go zduplikować. Przeciągnij, aby go przenieść",lineEditor_nothingSelected:`Wybierz punkt do edycji (przytrzymaj SHIFT, aby wybrać wiele),
|
||
lub przytrzymaj Alt i kliknij, aby dodać nowe punkty`,placeImage:"Kliknij, aby umieścić obraz, lub kliknij i przeciągnij, aby ustawić jego rozmiar ręcznie",publishLibrary:"Opublikuj własną bibliotekę",bindTextToElement:"Wciśnij enter, aby dodać tekst",deepBoxSelect:"Przytrzymaj CtrlOrCmd, aby wybrać w obrębie grupy i uniknąć przeciągania",eraserRevert:"Przytrzymaj Alt, aby przywrócić elementy oznaczone do usunięcia",firefox_clipboard_write:'Ta funkcja może być włączona poprzez ustawienie flagi "dom.events.asyncClipboard.clipboardItem" na "true". Aby zmienić flagi przeglądarki w Firefox, odwiedź stronę "about:config".',disableSnapping:"Przytrzymaj Ctrl lub Cmd, aby wyłączyć przyciąganie"},sTe={cannotShowPreview:"Nie można wyświetlić podglądu",canvasTooBig:"Obszar roboczy może być za duży.",canvasTooBigTip:"Wskazówka: spróbuj nieco zbliżyć najdalej wysunięte elementy."},lTe={headingMain:"Wystąpił błąd. Spróbuj <button>odświeżyć stronę.</button>",clearCanvasMessage:"Jeśli odświeżenie strony nie zadziałało, spróbuj <button>usunąć wszystko z dokumentu.</button>",clearCanvasCaveat:" Pamiętaj tylko, że spowoduje to utratę całej twojej pracy ",trackedToSentry:"Błąd o identyfikatorze {{eventId}} został zaraportowany w naszym systemie.",openIssueMessage:"Szanujemy twoją prywatność i raport nie zawierał żadnych danych dotyczących tego nad czym pracowałeś, natomiast jeżeli jesteś w stanie podzielić się tym nad czym pracowałeś, prosimy o dodatkowy raport poprzez <button>nasze narzędzie do raportowania błędów.</button> Prosimy o dołączenie poniższej informacji poprzez skopiowanie jej i umieszczenie jej w zgłoszeniu na portalu GitHub.",sceneContent:"Zawartość dokumentu:"},gTe={desc_intro:"Będziesz w stanie pracować wraz z osobami które zaprosisz do współpracy.",desc_privacy:"By zapewnić Ci prywatność, sesja współpracy na żywo jest zabezpieczona szyfrowaniem end-to-end, co oznacza, że poza tobą i osobami z którymi podzielisz się linkiem, nikt nie ma dostępu do tego co będziecie tworzyć.",button_startSession:"Rozpocznij sesję",button_stopSession:"Zakończ sesję",desc_inProgressIntro:"Sesja współpracy na żywo właśnie się rozpoczęła.",desc_shareLink:"Udostępnij ten link osobom, z którymi chcesz współpracować:",desc_exitSession:"Zakończenie sesji spowoduje odłączenie ciebie od pokoju, ale nadal będziesz mógł lokalnie kontynuować pracę. Zauważ, że osoby z którymi współpracowałeś nadal będą mogły współpracować.",shareTitle:"Dołącz do sesji współpracy na żywo w Excalidraw"},cTe={title:"Wystąpił błąd"},CTe={disk_title:"Zapisz na dysku",disk_details:"Eksportuj dane sceny do pliku, z którego możesz importować później.",disk_button:"Zapisz do pliku",link_title:"Link do udostępnienia",link_details:"Eksportuj jako link tylko do odczytu.",link_button:"Wygeneruj link",excalidrawplus_description:"Zapisz scenę do swojego obszaru roboczego Excalidraw+.",excalidrawplus_button:"Eksportuj",excalidrawplus_exportError:"W tej chwili nie można wyeksportować do Excalidraw+..."},BTe={blog:"Przeczytaj na naszym blogu",click:"kliknięcie",deepSelect:"Wybór w obrębie grupy",deepBoxSelect:"Wybór w obrębie grupy i unikanie przeciągania",curvedArrow:"Zakrzywiona strzałka",curvedLine:"Zakrzywiona linia",documentation:"Dokumentacja",doubleClick:"podwójne kliknięcie",drag:"przeciągnij",editor:"Edytor",editLineArrowPoints:"Edytuj punkty linii/strzałki",editText:"Edytuj tekst/dodaj etykietę",github:"Znalazłeś problem? Prześlij",howto:"Skorzystaj z instrukcji",or:"lub",preventBinding:"Zapobiegaj wiązaniu strzałek",tools:"Narzędzia",shortcuts:"Skróty klawiszowe",textFinish:"Zakończ edycję (edytor tekstu)",textNewLine:"Dodaj nowy wiersz (edytor tekstu)",title:"Pomoc",view:"Widok",zoomToFit:"Powiększ, aby wyświetlić wszystkie elementy",zoomToSelection:"Przybliż do zaznaczenia",toggleElementLock:"Zablokuj/odblokuj zaznaczenie",movePageUpDown:"Przesuń stronę w górę/w dół",movePageLeftRight:"Przenieś stronę w lewo/prawo"},ETe={title:"Wyczyść płótno"},dTe={title:"Opublikuj bibliotekę",itemName:"Nazwa elementu",authorName:"Nazwa autora",githubUsername:"Nazwa użytkownika na GitHubie",twitterUsername:"Nazwa użytkownika Twitter",libraryName:"Nazwa biblioteki",libraryDesc:"Opis biblioteki",website:"Strona internetowa",placeholder:{authorName:"Twoje imię lub nazwa użytkownika",libraryName:"Nazwa twojej biblioteki",libraryDesc:"Opis twojej biblioteki, aby pomóc innym zrozumieć jej działanie",githubHandle:"Uchwyt GitHub (opcjonalny), dzięki czemu możesz edytować bibliotekę po przesłaniu do sprawdzenia",twitterHandle:"Nazwa użytkownika w serwisie Twitter (opcjonalna), aby wiedzieć kogo oznaczyć przy promowaniu na Twitterze",website:"Link do Twojej osobistej strony internetowej lub gdzie indziej (opcjonalnie)"},errors:{required:"Wymagane",website:"Wprowadź prawidłowy adres URL"},noteDescription:"<link></link>dla innych osób do wykorzystania w swoich rysunkach.",noteGuidelines:"Biblioteka musi być najpierw zatwierdzona ręcznie. Przeczytaj <link>wytyczne</link>",noteLicense:"Wysyłając zgadzasz się, że biblioteka zostanie opublikowana pod <link>Licencja MIT, </link>w skrócie, każdy może z nich korzystać bez ograniczeń.",noteItems:"Każdy element biblioteki musi mieć własną nazwę, aby był filtrowalny. Uwzględnione zostaną następujące elementy biblioteki:",atleastOneLibItem:"Proszę wybrać co najmniej jeden element biblioteki, by rozpocząć",republishWarning:"Uwaga: niektóre z wybranych elementów są oznaczone jako już opublikowane/wysłane. Powinieneś ponownie przesłać elementy tylko wtedy, gdy aktualizujesz istniejącą bibliotekę lub zgłoszenie."},ITe={title:"Biblioteka została przesłana",content:"Dziękujemy {{authorName}}. Twoja biblioteka została przesłana do sprawdzenia. Możesz śledzić jej stan<link>tutaj</link>"},hTe={resetLibrary:"Zresetuj Bibliotekę",removeItemsFromLib:"Usuń wybrane elementy z biblioteki"},QTe={header:"Eksportuj obraz",label:{withBackground:"Tło",onlySelected:"Tylko wybrane",darkMode:"Tryb ciemny",embedScene:"Osadź scenę",scale:"Skala",padding:"Dopełnienie"},tooltip:{embedScene:`Dane sceny zostaną zapisane w eksportowanym pliku PNG/SVG tak, aby scena mogła zostać z niego przywrócona.
|
||
Zwiększy to rozmiar eksportowanego pliku.`},title:{exportToPng:"Zapisz jako PNG",exportToSvg:"Zapisz jako SVG",copyPngToClipboard:"Skopiuj do schowka jako PNG"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Skopiuj do schowka"}},pTe={tooltip:"Twoje rysunki są zabezpieczone szyfrowaniem end-to-end, tak więc nawet w Excalidraw nie jesteśmy w stanie zobaczyć tego co tworzysz.",link:"Wpis na blogu dotyczący szyfrowania end-to-end w Excalidraw"},fTe={angle:"Kąt",element:"Element",elements:"Elementy",height:"Wysokość",scene:"Scena",selected:"Zaznaczenie",storage:"Pamięć",title:"Statystyki dla nerdów",total:"Łącznie",version:"Wersja",versionCopy:"Kliknij, aby skopiować",versionNotAvailable:"Wersja niedostępna",width:"Szerokość"},mTe={addedToLibrary:"Dodano do biblioteki",copyStyles:"Skopiowano style.",copyToClipboard:"Skopiowano do schowka.",copyToClipboardAsPng:`Skopiowano {{exportSelection}} do schowka jako PNG
|
||
({{exportColorScheme}})`,fileSaved:"Zapisano plik.",fileSavedToFilename:"Zapisano jako {filename}",canvas:"płótno",selection:"zaznaczenie",pasteAsSingleElement:`Użyj {{shortcut}}, aby wkleić jako pojedynczy element,
|
||
lub wklej do istniejącego edytora tekstu`,unableToEmbed:"Osadzenie tego linku jest obecnie niedozwolone. Zgłoś propozycję na portalu GitHub, aby dodać go do listy dozwolonych wyjątków",unrecognizedLinkFormat:'Osadzony link ma niewłaściwy format. Spróbuj wkleić całą zawartość pola "embed" z oryginalnej strony.'},DTe={transparent:"Przezroczysty",black:"Czarny",white:"Biały",red:"Czerwony",pink:"Różowy",grape:"Winogronowy",violet:"Fioletowy",gray:"Szary",blue:"Niebieski",cyan:"Cyjanowy",teal:"Turkusowy",green:"Zielony",yellow:"Żółty",orange:"Pomarańczowy",bronze:"Brązowy"},yTe={app:{center_heading:"Wszystkie dane są zapisywane lokalnie w przeglądarce.",center_heading_plus:"Czy zamiast tego chcesz przejść do Excalidraw+?",menuHint:"Eksportuj, preferencje, języki..."},defaults:{menuHint:"Eksportuj, preferencje i więcej...",center_heading:"Schematy uproszczone.",toolbarHint:"Wybierz narzędzie i zacznij rysować!",helpHint:"Skróty klawiaturowe i pomoc"}},wTe={mostUsedCustomColors:"Najczęściej używane kolory",colors:"Kolory",shades:"Odcienie",hexCode:"Kod HEX",noShades:"Brak dostępnych odcieni dla tego koloru"},bTe={action:{exportToImage:{title:"Eksportuj jako obraz",button:"Eksportuj jako obraz",description:"Eksportuj zawartość sceny jako obraz z możliwością importowania."},saveToDisk:{title:"Zapisz na dysku",button:"Zapisz na dysku",description:"Eksportuj zawartość sceny jako plik z możliwością importowania."},excalidrawPlus:{title:"Excalidraw+",button:"Eksportuj do Excalidraw+",description:"Zapisz scenę do swojego obszaru roboczego Excalidraw+."}},modal:{loadFromFile:{title:"Wczytaj z pliku",button:"Wczytaj z pliku",description:"Wczytanie z pliku <bold>nadpisze istniejącą zawartość</bold>.<br></br>Możesz najpierw utworzyć kopię zapasową swojego rysunku, używając jednej z poniższych opcji."},shareableLink:{title:"Wczytaj z linku",button:"Nadpisz moją zawartość",description:"Wczytanie zewnętrznego pliku <bold>nadpisze istniejącą zawartość</bold>.<br></br>Możesz najpierw utworzyć kopię zapasową swojego rysunku, używając jednej z poniższych opcji."}}},vTe={title:"Konwertuj diagram Mermaid do Excalidraw",button:"Wstaw",description:"Obecnie wspierane są jedynie <flowchartLink>proste grafy</flowchartLink>, <sequenceLink>sekwencje</sequenceLink> i <classLink>diagramy klas</classLink>. Pozostałe typy będą wyświetlane jako obrazy w Excalidraw.",syntax:"Składnia diagramów Mermaid",preview:"Podgląd"},rCr={labels:eTe,library:tTe,buttons:rTe,alerts:iTe,errors:uTe,toolBar:aTe,headings:nTe,hints:oTe,canvasError:sTe,errorSplash:lTe,roomDialog:gTe,errorDialog:cTe,exportDialog:CTe,helpDialog:BTe,clearCanvasDialog:ETe,publishDialog:dTe,publishSuccessDialog:ITe,confirmDialog:hTe,imageExportDialog:QTe,encrypted:pTe,stats:fTe,toast:mTe,colors:DTe,welcomeScreen:yTe,colorPicker:wTe,overwriteConfirm:bTe,mermaid:vTe}});var rYe={};yt(rYe,{alerts:()=>RTe,buttons:()=>LTe,canvasError:()=>TTe,clearCanvasDialog:()=>PTe,colorPicker:()=>AYe,colors:()=>XTe,confirmDialog:()=>qTe,default:()=>iCr,encrypted:()=>ZTe,errorDialog:()=>KTe,errorSplash:()=>YTe,errors:()=>NTe,exportDialog:()=>JTe,headings:()=>UTe,helpDialog:()=>OTe,hints:()=>MTe,imageExportDialog:()=>zTe,labels:()=>xTe,library:()=>STe,mermaid:()=>tYe,overwriteConfirm:()=>eYe,publishDialog:()=>_Te,publishSuccessDialog:()=>WTe,roomDialog:()=>HTe,stats:()=>VTe,toast:()=>jTe,toolBar:()=>GTe,welcomeScreen:()=>$Te});var xTe,STe,LTe,RTe,NTe,GTe,UTe,MTe,TTe,YTe,HTe,KTe,JTe,OTe,PTe,_Te,WTe,qTe,zTe,ZTe,VTe,jTe,XTe,$Te,AYe,eYe,tYe,iCr;var iYe=P(()=>{qt();xTe={paste:"Colar",pasteAsPlaintext:"Colar como texto sem formatação",pasteCharts:"Colar gráficos",selectAll:"Selecionar tudo",multiSelect:"Adicionar elemento à seleção",moveCanvas:"Mover tela",cut:"Recortar",copy:"Copiar",copyAsPng:"Copiar para a área de transferência como PNG",copyAsSvg:"Copiar para a área de transferência como SVG",copyText:"Copiar para área de transferência como texto",copySource:"",convertToCode:"",bringForward:"Trazer para a frente",sendToBack:"Enviar para o fundo",bringToFront:"Trazer para o primeiro plano",sendBackward:"Enviar para trás",delete:"Apagar",copyStyles:"Copiar os estilos",pasteStyles:"Colar os estilos",stroke:"Contorno",background:"Fundo",fill:"Preenchimento",strokeWidth:"Espessura do traço",strokeStyle:"Estilo de traço",strokeStyle_solid:"Sólido",strokeStyle_dashed:"Tracejado",strokeStyle_dotted:"Pontilhado",sloppiness:"Precisão do traço",opacity:"Opacidade",textAlign:"Alinhamento do texto",edges:"Arestas",sharp:"Pontudo",round:"Arredondado",arrowheads:"Pontas",arrowhead_none:"Nenhuma",arrowhead_arrow:"Flecha",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triângulo",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tamanho da fonte",fontFamily:"Família da fonte",addWatermark:'Adicionar "Feito com Excalidraw"',handDrawn:"Manuscrito",normal:"Normal",code:"Código",small:"Pequeno",medium:"Médio",large:"Grande",veryLarge:"Muito grande",solid:"Sólido",hachure:"Hachura",zigzag:"Zigue-zague",crossHatch:"Hachura cruzada",thin:"Fino",bold:"Espesso",left:"Esquerda",center:"Centralizar",right:"Direita",extraBold:"Muito espesso",architect:"Arquiteto",artist:"Artista",cartoonist:"Cartunista",fileTitle:"Nome do arquivo",colorPicker:"Seletor de cores",canvasColors:"Usado na tela",canvasBackground:"Fundo da tela",drawingCanvas:"Tela de desenho",layers:"Camadas",actions:"Ações",language:"Idioma",liveCollaboration:"Colaboração ao vivo...",duplicateSelection:"Duplicar",untitled:"Sem título",name:"Nome",yourName:"Seu nome",madeWithExcalidraw:"Feito com Excalidraw",group:"Agrupar seleção",ungroup:"Desagrupar seleção",collaborators:"Colaboradores",showGrid:"Mostrar grade",addToLibrary:"Adicionar à biblioteca",removeFromLibrary:"Remover da biblioteca",libraryLoadingMessage:"Carregando biblioteca…",libraries:"Procurar bibliotecas",loadingScene:"Carregando cena…",align:"Alinhamento",alignTop:"Alinhar ao topo",alignBottom:"Alinhar embaixo",alignLeft:"Alinhar à esquerda",alignRight:"Alinhar à direita",centerVertically:"Centralizar verticalmente",centerHorizontally:"Centralizar horizontalmente",distributeHorizontally:"Distribuir horizontalmente",distributeVertically:"Distribuir verticalmente",flipHorizontal:"Inverter horizontalmente",flipVertical:"Inverter verticalmente",viewMode:"Modo de visualização",share:"Compartilhar",showStroke:"Exibir seletor de cores do traço",showBackground:"Exibir seletor de cores do fundo",toggleTheme:"Alternar tema",personalLib:"Biblioteca Pessoal",excalidrawLib:"Biblioteca do Excalidraw",decreaseFontSize:"Diminuir o tamanho da fonte",increaseFontSize:"Aumentar o tamanho da fonte",unbindText:"Desvincular texto",bindText:"Vincular texto ao contêiner",createContainerFromText:"Envolver texto em um contêiner",link:{edit:"Editar link",editEmbed:"",create:"Criar link",createEmbed:"",label:"Link",labelEmbed:"",empty:""},lineEditor:{edit:"Editar linha",exit:"Sair do editor de linha"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear tudo",unlockAll:"Desbloquear tudo"},statusPublished:"Publicado",sidebarLock:"Manter barra lateral aberta",selectAllElementsInFrame:"Selecionar todos os elementos no quadro",removeAllElementsFromFrame:"Remover todos os elementos do quadro",eyeDropper:"Escolher cor da tela",textToDiagram:"",prompt:""},STe={noItems:"Nenhum item adicionado ainda...",hint_emptyLibrary:"Selecione um item na tela para adicioná-lo aqui, ou instale uma biblioteca do repositório público, abaixo.",hint_emptyPrivateLibrary:"Selecione um item na tela para adicioná-lo aqui."},LTe={clearReset:"Limpar o canvas e redefinir a cor de fundo",exportJSON:"Exportar arquivo",exportImage:"Exportar imagem...",export:"Salvar como...",copyToClipboard:"Copiar para o clipboard",save:"Salvar para o arquivo atual",saveAs:"Salvar como",load:"Abrir",getShareableLink:"Obter um link de compartilhamento",close:"Fechar",selectLanguage:"Selecionar idioma",scrollBackToContent:"Voltar para o conteúdo",zoomIn:"Aumentar zoom",zoomOut:"Diminuir zoom",resetZoom:"Redefinir zoom",menu:"Menu",done:"Concluído",edit:"Editar",undo:"Desfazer",redo:"Refazer",resetLibrary:"Redefinir biblioteca",createNewRoom:"Criar nova sala",fullScreen:"Tela cheia",darkMode:"Modo escuro",lightMode:"Modo claro",zenMode:"Modo Zen",objectsSnapMode:"",exitZenMode:"Sair do modo zen",cancel:"Cancelar",clear:"Limpar",remove:"Remover",embed:"",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:""},RTe={clearReset:"Isto irá limpar toda a tela. Você tem certeza?",couldNotCreateShareableLink:"Não foi possível criar um link de compartilhamento.",couldNotCreateShareableLinkTooBig:"Não foi possível criar um link compartilhável: a cena é muito grande",couldNotLoadInvalidFile:"Não foi possível carregar o arquivo inválido",importBackendFailed:"A importação do servidor falhou.",cannotExportEmptyCanvas:"Não é possível exportar um canvas vazio.",couldNotCopyToClipboard:"Não foi possível copiar para a área de transferência.",decryptFailed:"Não foi possível descriptografar os dados.",uploadedSecurly:"O upload foi protegido com criptografia de ponta a ponta, o que significa que o servidor do Excalidraw e terceiros não podem ler o conteúdo.",loadSceneOverridePrompt:"Carregar um desenho externo substituirá o seu conteúdo existente. Deseja continuar?",collabStopOverridePrompt:`Ao interromper a sessão, você substituirá seu desenho anterior, armazenado localmente. Você tem certeza?
|
||
|
||
(Se você deseja manter seu desenho local, simplesmente feche a aba do navegador.)`,errorAddingToLibrary:"Não foi possível adicionar o item à biblioteca",errorRemovingFromLibrary:"Não foi possível remover o item da biblioteca",confirmAddLibrary:"Isso adicionará {{numShapes}} forma(s) à sua biblioteca. Tem certeza?",imageDoesNotContainScene:"Esta imagem parece não conter dados de cenas. Você ativou a incorporação da cena durante a exportação?",cannotRestoreFromImage:"Não foi possível restaurar a cena deste arquivo de imagem",invalidSceneUrl:"Não foi possível importar a cena da URL fornecida. Ela está incompleta ou não contém dados JSON válidos do Excalidraw.",resetLibrary:"Isto limpará a sua biblioteca. Você tem certeza?",removeItemsFromsLibrary:"Excluir {{count}} item(ns) da biblioteca?",invalidEncryptionKey:"A chave de encriptação deve ter 22 caracteres. A colaboração ao vivo está desabilitada.",collabOfflineWarning:`Sem conexão com a internet disponível.
|
||
Suas alterações não serão salvas!`},NTe={unsupportedFileType:"Tipo de arquivo não suportado.",imageInsertError:"Não foi possível inserir imagem. Tente novamente mais tarde...",fileTooBig:"O arquivo é muito grande. O tamanho máximo permitido é {{maxSize}}.",svgImageInsertError:"Não foi possível inserir a imagem SVG. A marcação SVG parece inválida.",failedToFetchImage:"",invalidSVGString:"SVG Inválido.",cannotResolveCollabServer:"Não foi possível conectar-se ao servidor colaborativo. Por favor, recarregue a página e tente novamente.",importLibraryError:"Não foi possível carregar a biblioteca",collabSaveFailed:"Não foi possível salvar no banco de dados do servidor. Se os problemas persistirem, salve o arquivo localmente para garantir que não perca o seu trabalho.",collabSaveFailed_sizeExceeded:"Não foi possível salvar no banco de dados do servidor, a tela parece ser muito grande. Se os problemas persistirem, salve o arquivo localmente para garantir que não perca o seu trabalho.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Parece que você está usando o navegador Brave com a configuração <bold>Bloquear Impressões Digitais</bold> no modo agressivo.",line2:"Isso pode acabar quebrando <bold>Elementos de Texto</bold> em seus desenhos.",line3:"Recomendamos fortemente desativar essa configuração. Você pode acessar o <link>passo a passo</link> sobre como fazer isso.",line4:"Se desativar essa configuração não corrigir a exibição de elementos de texto, por favor abra uma <issueLink>issue</issueLink> em nosso GitHub, ou mande uma mensagem em nosso <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},GTe={selection:"Seleção",image:"Inserir imagem",rectangle:"Retângulo",diamond:"Losango",ellipse:"Elipse",arrow:"Flecha",line:"Linha",freedraw:"Desenhar",text:"Texto",library:"Biblioteca",lock:"Manter ativa a ferramenta selecionada após desenhar",penMode:"Modo caneta — impede o toque",link:"Adicionar/Atualizar link para uma forma selecionada",eraser:"Borracha",frame:"Ferramenta de quadro",magicframe:"",embeddable:"",laser:"",hand:"Mão (ferramenta de rolagem)",extraTools:"Mais ferramentas",mermaidToExcalidraw:"",magicSettings:""},UTe={canvasActions:"Ações da tela",selectedShapeActions:"Ações das formas selecionadas",shapes:"Formas"},MTe={canvasPanning:"Para mover a tela, segure a roda do mouse ou a barra de espaço enquanto arrasta ou use a ferramenta de mão",linearElement:"Clique para iniciar vários pontos, arraste para uma única linha",freeDraw:"Toque e arraste, solte quando terminar",text:"Dica: você também pode adicionar texto clicando duas vezes em qualquer lugar com a ferramenta de seleção",embeddable:"",text_selected:"Clique duplo ou tecle ENTER para editar o texto",text_editing:"Pressione Esc ou Ctrl/Cmd+ENTER para encerrar a edição",linearElementMulti:"Clique no último ponto ou pressione Escape ou Enter para terminar",lockAngle:"Você pode restringir o ângulo segurando o SHIFT",resize:`Você pode restringir proporções segurando SHIFT enquanto redimensiona,
|
||
segure ALT para redimensionar do centro`,resizeImage:`Você pode redimensionar livremente segurando SHIFT,
|
||
segure ALT para redimensionar a partir do centro`,rotate:"Você pode restringir os ângulos segurando SHIFT enquanto gira",lineEditor_info:"Pressione CtrlOuCmd e duplo-clique ou pressione CtrlOuCmd + Enter para editar pontos",lineEditor_pointSelected:`Pressione Delete para remover o(s) ponto(s),
|
||
Ctrl/Cmd+D para duplicar ou arraste para mover`,lineEditor_nothingSelected:"Selecione um ponto para editar (segure SHIFT para selecionar vários) ou segure Alt e clique para adicionar novos pontos",placeImage:"Clique para colocar a imagem, ou clique e arraste para definir manualmente o seu tamanho",publishLibrary:"Publicar sua própria biblioteca",bindTextToElement:"Pressione Enter para adicionar o texto",deepBoxSelect:"Segure Ctrl/Cmd para seleção profunda e para evitar arrastar",eraserRevert:"Segure a tecla Alt para inverter os elementos marcados para exclusão",firefox_clipboard_write:'Esse recurso pode ser ativado configurando a opção "dom.events.asyncClipboard.clipboardItem" como "true". Para alterar os sinalizadores do navegador no Firefox, visite a página "about:config".',disableSnapping:""},TTe={cannotShowPreview:"Não é possível mostrar pré-visualização",canvasTooBig:"A tela pode ser muito grande.",canvasTooBigTip:"Dica: tente aproximar um pouco os elementos mais distantes."},YTe={headingMain:"Foi encontrado um erro. Tente <button>recarregar a página.</button>",clearCanvasMessage:"Se recarregar a página não funcionar, tente <button>limpando a tela.</button>",clearCanvasCaveat:" Isso resultará em perda de trabalho ",trackedToSentry:"O erro com o identificador {{eventId}} foi rastreado no nosso sistema.",openIssueMessage:"Fomos muito cautelosos para não incluir suas informações de cena no erro. Se sua cena não for privada, por favor, considere seguir nosso <button>rastreador de bugs.</button> Por favor, inclua informações abaixo, copiando e colando para a issue do GitHub.",sceneContent:"Conteúdo da cena:"},HTe={desc_intro:"Você pode convidar pessoas para sua cena atual para colaborar com você.",desc_privacy:"Não se preocupe, a sessão usa criptografia de ponta a ponta; portanto, o que você desenhar permanecerá privado. Nem mesmo nosso servidor poderá ver o que você cria.",button_startSession:"Iniciar sessão",button_stopSession:"Parar sessão",desc_inProgressIntro:"A sessão de colaboração ao vivo está agora em andamento.",desc_shareLink:"Compartilhe este link com qualquer pessoa com quem você queira colaborar:",desc_exitSession:"Interrompendo a sessão você irá se desconectar da sala, mas você poderá continuar trabalhando com a cena localmente. Observe que isso não afetará outras pessoas, e elas ainda poderão colaborar em suas versões.",shareTitle:"Participe de uma sessão ao vivo de colaboração no Excalidraw"},KTe={title:"Erro"},JTe={disk_title:"Salvar no computador",disk_details:"Exportar os dados da cena para um arquivo que você poderá importar mais tarde.",disk_button:"Salvar em um arquivo",link_title:"Link compartilhável",link_details:"Exportar como link de apenas leitura.",link_button:"Exportar link",excalidrawplus_description:"Salvar a cena na sua área de trabalho Excalidraw+.",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"Não é possível exportar para o Excalidraw+ neste momento..."},OTe={blog:"Leia o nosso blog",click:"clicar",deepSelect:"Seleção profunda",deepBoxSelect:"Use a seleção profunda dentro da caixa para previnir arrastar",curvedArrow:"Seta curva",curvedLine:"Linha curva",documentation:"Documentação",doubleClick:"clique duplo",drag:"arrastar",editor:"Editor",editLineArrowPoints:"Editar linha/ponta da seta",editText:"Editar texto / adicionar etiqueta",github:"Encontrou algum problema? Nos informe",howto:"Siga nossos guias",or:"ou",preventBinding:"Evitar fixação de seta",tools:"Ferramentas",shortcuts:"Atalhos de teclado",textFinish:"Encerrar edição (editor de texto)",textNewLine:"Adicionar nova linha (editor de texto)",title:"Ajudar",view:"Visualizar",zoomToFit:"Ampliar para encaixar todos os elementos",zoomToSelection:"Ampliar a seleção",toggleElementLock:"Bloquear/desbloquear seleção",movePageUpDown:"Mover a página para cima/baixo",movePageLeftRight:"Mover a página para esquerda/direita"},PTe={title:"Limpar a tela"},_Te={title:"Publicar biblioteca",itemName:"Nome do item",authorName:"Nome do autor",githubUsername:"Nome de usuário do GitHub",twitterUsername:"Nome de usuário do Twitter",libraryName:"Nome da Biblioteca",libraryDesc:"Descrição da biblioteca",website:"Site",placeholder:{authorName:"Seu nome ou nome de usuário",libraryName:"Nome da sua biblioteca",libraryDesc:"Descrição para ajudar as pessoas a entenderem o uso da sua da sua biblioteca",githubHandle:"Identificador do GitHub (opcional), para que você possa editar a biblioteca depois de enviar para revisão",twitterHandle:"Nome de usuário do Twitter (opcional), para que saibamos quem deve ser creditado se promovermos no Twitter",website:"Link para o seu site pessoal ou outro lugar (opcional)"},errors:{required:"Obrigatório",website:"Informe uma URL válida"},noteDescription:"Envie sua biblioteca para ser incluída no <link>repositório de biblioteca pública</link>para outras pessoas usarem em seus desenhos.",noteGuidelines:"A biblioteca precisa ser aprovada manualmente primeiro. Por favor leia o <link>orientações</link> antes de enviar. Você precisará de uma conta do GitHub para se comunicar e fazer alterações quando solicitado, mas não é estritamente necessário.",noteLicense:"Ao enviar, você concorda que a biblioteca será publicada sob a <link>Licença MIT, </link>o que, em suma, significa que qualquer pessoa pode utilizá-los sem restrições.",noteItems:"Cada item da biblioteca deve ter seu próprio nome para que seja filtrável. Os seguintes itens da biblioteca serão incluídos:",atleastOneLibItem:"Por favor, selecione pelo menos um item da biblioteca para começar",republishWarning:"Nota: alguns dos itens selecionados estão marcados como já publicado/enviado. Você só deve reenviar itens ao atualizar uma biblioteca existente ou submissão."},WTe={title:"Biblioteca enviada",content:"Obrigado {{authorName}}. Sua biblioteca foi enviada para análise. Você pode acompanhar o status<link>aqui</link>"},qTe={resetLibrary:"Redefinir biblioteca",removeItemsFromLib:"Remover itens selecionados da biblioteca"},zTe={header:"Exportar imagem",label:{withBackground:"Fundo",onlySelected:"Somente selecionados",darkMode:"Modo escuro",embedScene:"Incorporar cena",scale:"Escala",padding:"Margem interna"},tooltip:{embedScene:`Os dados da cena serão salvos no arquivo PNG/SVG exportado para que a cena possa ser restaurada a partir dele.
|
||
Isso aumentará o tamanho do arquivo exportado.`},title:{exportToPng:"Exportar como PNG",exportToSvg:"Exportar como SVG",copyPngToClipboard:"Copiar PNG para área de transferência"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiar para a área de transferência"}},ZTe={tooltip:"Seus desenhos são criptografados de ponta a ponta, então os servidores do Excalidraw nunca os verão.",link:"Publicação de blog com criptografia de ponta a ponta no Excalidraw"},VTe={angle:"Ângulo",element:"Elemento",elements:"Elementos",height:"Altura",scene:"Cena",selected:"Selecionado",storage:"Armazenamento",title:"Estatísticas para nerds",total:"Total",version:"Versão",versionCopy:"Clique para copiar",versionNotAvailable:"Versão não disponível",width:"Largura"},jTe={addedToLibrary:"Adicionado à biblioteca",copyStyles:"Estilos copiados.",copyToClipboard:"Copiado para área de transferência.",copyToClipboardAsPng:"{{exportSelection}} copiado para a área de transferência como PNG ({{exportColorScheme}})",fileSaved:"Arquivo salvo.",fileSavedToFilename:"Salvo em {filename}",canvas:"tela",selection:"seleção",pasteAsSingleElement:`Use {{shortcut}} para colar como um único elemento,
|
||
ou cole em um editor de texto já existente`,unableToEmbed:"",unrecognizedLinkFormat:""},XTe={transparent:"Transparente",black:"Preto",white:"Branco",red:"Vermelho",pink:"Rosa",grape:"Uva",violet:"Violeta",gray:"Cinza",blue:"Azul",cyan:"Ciano",teal:"Verde-azulado",green:"Verde",yellow:"Amarelo",orange:"Laranja",bronze:"Bronze"},$Te={app:{center_heading:"Todos os dados são salvos localmente no seu navegador.",center_heading_plus:"Você queria ir para o Excalidraw+ em vez disso?",menuHint:"Exportar, preferências, idiomas..."},defaults:{menuHint:"Exportar, preferências e mais...",center_heading:"Diagramas, Feito. Simples.",toolbarHint:"Escolha uma ferramenta e comece a desenhar!",helpHint:"Atalhos e ajuda"}},AYe={mostUsedCustomColors:"Cores personalizadas mais usadas",colors:"Cores",shades:"Tons",hexCode:"Código hexadecimal",noShades:"Sem tons disponíveis para essa cor"},eYe={action:{exportToImage:{title:"Exportar como imagem",button:"Exportar como imagem",description:"Exportar os dados da cena para um arquivo que você poderá importar mais tarde."},saveToDisk:{title:"Salvar no computador",button:"Salvar no computador",description:"Exportar os dados da cena para um arquivo que você poderá importar mais tarde."},excalidrawPlus:{title:"Excalidraw+",button:"Exportar para Excalidraw+",description:"Salvar a cena na sua área de trabalho Excalidraw+."}},modal:{loadFromFile:{title:"Carregar de arquivo",button:"Carregar de arquivo",description:"Carregar de um arquivo irá <bold> substituir o conteúdo existente</bold>.<br></br>Você pode salvar seu desenho primeiro usando uma das opções abaixo."},shareableLink:{title:"Carregar de um link",button:"Substituir meu conteúdo",description:"Carregar um desenho externo irá <bold> substituir seu conteúdo existente</bold>.<br></br>Você pode salvar seu desenho antes utilizando uma das opções abaixo."}}},tYe={title:"",button:"",description:"",syntax:"",preview:""},iCr={labels:xTe,library:STe,buttons:LTe,alerts:RTe,errors:NTe,toolBar:GTe,headings:UTe,hints:MTe,canvasError:TTe,errorSplash:YTe,roomDialog:HTe,errorDialog:KTe,exportDialog:JTe,helpDialog:OTe,clearCanvasDialog:PTe,publishDialog:_Te,publishSuccessDialog:WTe,confirmDialog:qTe,imageExportDialog:zTe,encrypted:ZTe,stats:VTe,toast:jTe,colors:XTe,welcomeScreen:$Te,colorPicker:AYe,overwriteConfirm:eYe,mermaid:tYe}});var LYe={};yt(LYe,{alerts:()=>oYe,buttons:()=>nYe,canvasError:()=>CYe,clearCanvasDialog:()=>QYe,colorPicker:()=>FYe,colors:()=>vYe,confirmDialog:()=>mYe,default:()=>uCr,encrypted:()=>yYe,errorDialog:()=>dYe,errorSplash:()=>BYe,errors:()=>sYe,exportDialog:()=>IYe,headings:()=>gYe,helpDialog:()=>hYe,hints:()=>cYe,imageExportDialog:()=>DYe,labels:()=>uYe,library:()=>aYe,mermaid:()=>SYe,overwriteConfirm:()=>xYe,publishDialog:()=>pYe,publishSuccessDialog:()=>fYe,roomDialog:()=>EYe,stats:()=>wYe,toast:()=>bYe,toolBar:()=>lYe,welcomeScreen:()=>kYe});var uYe,aYe,nYe,oYe,sYe,lYe,gYe,cYe,CYe,BYe,EYe,dYe,IYe,hYe,QYe,pYe,fYe,mYe,DYe,yYe,wYe,bYe,vYe,kYe,FYe,xYe,SYe,uCr;var RYe=P(()=>{qt();uYe={paste:"Colar",pasteAsPlaintext:"Colar como texto simples",pasteCharts:"Colar gráficos",selectAll:"Selecionar tudo",multiSelect:"Adicionar elemento à seleção",moveCanvas:"Mover tela",cut:"Cortar",copy:"Copiar",copyAsPng:"Copiar para a área de transferência como PNG",copyAsSvg:"Copiar para a área de transferência como SVG",copyText:"Copiar para Área de Transferência como texto",copySource:"",convertToCode:"",bringForward:"Trazer para o primeiro plano",sendToBack:"Enviar para o plano de fundo",bringToFront:"Trazer para o primeiro plano",sendBackward:"Enviar para trás",delete:"Apagar",copyStyles:"Copiar os estilos",pasteStyles:"Colar os estilos",stroke:"Contornos",background:"Fundo",fill:"Preenchimento",strokeWidth:"Espessura do traço",strokeStyle:"Estilo de traço",strokeStyle_solid:"Sólido",strokeStyle_dashed:"Tracejado",strokeStyle_dotted:"Pontilhado",sloppiness:"Desleixo",opacity:"Opacidade",textAlign:"Alinhamento do texto",edges:"Arestas",sharp:"Aguçado",round:"Redondo",arrowheads:"Pontas",arrowhead_none:"Nenhuma",arrowhead_arrow:"Seta",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triângulo",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tamanho da fonte",fontFamily:"Família da fontes",addWatermark:'Adicionar "Feito com Excalidraw"',handDrawn:"Manuscrito",normal:"Normal",code:"Código",small:"Pequeno",medium:"Médio",large:"Grande",veryLarge:"Muito grande",solid:"Sólido",hachure:"Eclosão",zigzag:"ziguezague",crossHatch:"Sombreado",thin:"Fino",bold:"Espesso",left:"Esquerda",center:"Centralizar",right:"Direita",extraBold:"Muito espesso",architect:"Arquitecto",artist:"Artista",cartoonist:"Caricaturista",fileTitle:"Nome do ficheiro",colorPicker:"Seletor de cores",canvasColors:"Usado na tela",canvasBackground:"Fundo da área de desenho",drawingCanvas:"Área de desenho",layers:"Camadas",actions:"Ações",language:"Idioma",liveCollaboration:"Colaboração ao vivo...",duplicateSelection:"Duplicar",untitled:"Sem título",name:"Nome",yourName:"O seu nome",madeWithExcalidraw:"Feito com Excalidraw",group:"Agrupar seleção",ungroup:"Desagrupar seleção",collaborators:"Colaboradores",showGrid:"Mostrar grelha",addToLibrary:"Adicionar à biblioteca",removeFromLibrary:"Remover da biblioteca",libraryLoadingMessage:"A carregar a biblioteca…",libraries:"Procurar bibliotecas",loadingScene:"A carregar a cena…",align:"Alinhamento",alignTop:"Alinhar ao topo",alignBottom:"Alinhar ao fundo",alignLeft:"Alinhar à esquerda",alignRight:"Alinhar à direita",centerVertically:"Centrar verticalmente",centerHorizontally:"Centrar horizontalmente",distributeHorizontally:"Distribuir horizontalmente",distributeVertically:"Distribuir verticalmente",flipHorizontal:"Inverter horizontalmente",flipVertical:"Inverter verticalmente",viewMode:"Modo de visualização",share:"Partilhar",showStroke:"Mostrar seletor de cores do traço",showBackground:"Mostrar seletor de cores do fundo",toggleTheme:"Alternar tema",personalLib:"Biblioteca pessoal",excalidrawLib:"Biblioteca do Excalidraw",decreaseFontSize:"Reduzir o tamanho do tipo de letra",increaseFontSize:"Aumentar o tamanho do tipo de letra",unbindText:"Desvincular texto",bindText:"Ligar texto ao recipiente",createContainerFromText:"Envolver texto num recipiente",link:{edit:"Editar ligação",editEmbed:"",create:"Criar ligação",createEmbed:"",label:"Ligação",labelEmbed:"",empty:""},lineEditor:{edit:"Editar linha",exit:"Sair do editor de linha"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear todos",unlockAll:"Desbloquear todos"},statusPublished:"Publicado",sidebarLock:"Manter a barra lateral aberta",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},aYe={noItems:"Ainda não foram adicionados nenhuns itens...",hint_emptyLibrary:"Seleccione um item na tela para adicioná-lo aqui, ou então instale uma biblioteca do repositório público abaixo.",hint_emptyPrivateLibrary:"Seleccione um item na tela para adicioná-lo aqui."},nYe={clearReset:"Limpar a área de desenho e redefinir a cor de fundo",exportJSON:"Exportar para ficheiro",exportImage:"Exportar imagem...",export:"Guardar para...",copyToClipboard:"Copiar para o clipboard",save:"Guardar no ficheiro atual",saveAs:"Guardar como",load:"Abrir",getShareableLink:"Obter um link de partilha",close:"Fechar",selectLanguage:"Selecionar idioma",scrollBackToContent:"Voltar ao conteúdo",zoomIn:"Aumentar zoom",zoomOut:"Diminuir zoom",resetZoom:"Redefinir zoom",menu:"Menu",done:"Concluído",edit:"Editar",undo:"Desfazer",redo:"Refazer",resetLibrary:"Repor a biblioteca",createNewRoom:"Criar nova sala",fullScreen:"Ecrã inteiro",darkMode:"Modo escuro",lightMode:"Modo claro",zenMode:"Modo zen",objectsSnapMode:"",exitZenMode:"Sair do modo zen",cancel:"Cancelar",clear:"Limpar",remove:"Remover",embed:"",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:""},oYe={clearReset:"Isto irá limpar toda a área de desenho. Tem a certeza?",couldNotCreateShareableLink:"Não foi possível criar um link partilhável.",couldNotCreateShareableLinkTooBig:"Não foi possível criar um link partilhável: a cena é muito grande",couldNotLoadInvalidFile:"Não foi possível carregar o ficheiro inválido",importBackendFailed:"A importação do servidor falhou.",cannotExportEmptyCanvas:"Não é possível exportar uma área de desenho vazia.",couldNotCopyToClipboard:"Não foi possível copiar para a área de transferência.",decryptFailed:"Não foi possível desencriptar os dados.",uploadedSecurly:"O upload foi protegido com criptografia de ponta a ponta, o que significa que o servidor do Excalidraw e terceiros não podem ler o conteúdo.",loadSceneOverridePrompt:"Se carregar um desenho externo substituirá o conteúdo existente. Quer continuar?",collabStopOverridePrompt:`Ao interromper a sessão irá substituir o último desenho guardado. Tem a certeza?
|
||
|
||
(Caso queira manter o último desenho, simplesmente feche a janela do navegador.)`,errorAddingToLibrary:"Não foi possível adicionar o item à biblioteca",errorRemovingFromLibrary:"Não foi possível remover o item da biblioteca",confirmAddLibrary:"Isso adicionará {{numShapes}} forma(s) à sua biblioteca. Tem a certeza?",imageDoesNotContainScene:"Esta imagem parece não conter dados de cenas. Ativou a incorporação da cena durante a exportação?",cannotRestoreFromImage:"Não foi possível restaurar a cena deste ficheiro de imagem",invalidSceneUrl:"Não foi possível importar a cena a partir do URL fornecido. Ou está mal formado ou não contém dados JSON do Excalidraw válidos.",resetLibrary:"Isto irá limpar a sua biblioteca. Tem a certeza?",removeItemsFromsLibrary:"Apagar {{count}} item(ns) da biblioteca?",invalidEncryptionKey:"Chave de encriptação deve ter 22 caracteres. A colaboração ao vivo está desativada.",collabOfflineWarning:`Sem ligação à internet disponível.
|
||
As suas alterações não serão salvas!`},sYe={unsupportedFileType:"Tipo de ficheiro não suportado.",imageInsertError:"Não foi possível inserir a imagem, tente novamente mais tarde...",fileTooBig:"O ficheiro é muito grande. O tamanho máximo permitido é {{maxSize}}.",svgImageInsertError:"Não foi possível inserir a imagem SVG. A marcação SVG parece inválida.",failedToFetchImage:"",invalidSVGString:"SVG inválido.",cannotResolveCollabServer:"Não foi possível fazer a ligação ao servidor colaborativo. Por favor, volte a carregar a página e tente novamente.",importLibraryError:"Não foi possível carregar a biblioteca",collabSaveFailed:"Não foi possível guardar na base de dados de backend. Se os problemas persistirem, guarde o ficheiro localmente para garantir que não perde o seu trabalho.",collabSaveFailed_sizeExceeded:"Não foi possível guardar na base de dados de backend, o ecrã parece estar muito grande. Deve guardar o ficheiro localmente para garantir que não perde o seu trabalho.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},lYe={selection:"Seleção",image:"Inserir imagem",rectangle:"Retângulo",diamond:"Losango",ellipse:"Elipse",arrow:"Flecha",line:"Linha",freedraw:"Desenhar",text:"Texto",library:"Biblioteca",lock:"Manter a ferramenta selecionada ativa após desenhar",penMode:"Modo caneta - impedir toque",link:"Acrescentar/ Adicionar ligação para uma forma seleccionada",eraser:"Borracha",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Mão (ferramenta de movimento da tela)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},gYe={canvasActions:"Ações da área de desenho",selectedShapeActions:"Ações das formas selecionadas",shapes:"Formas"},cYe={canvasPanning:"Para mover a tela, carregue na roda do rato ou na barra de espaço enquanto arrasta, ou use a ferramenta da mão",linearElement:"Clique para iniciar vários pontos, arraste para uma única linha",freeDraw:"Clique e arraste, large quando terminar",text:"Dica: também pode adicionar texto clicando duas vezes em qualquer lugar com a ferramenta de seleção",embeddable:"",text_selected:"Clique duas vezes ou pressione a tecla Enter para editar o texto",text_editing:"Pressione a tecla Escape ou CtrlOrCmd+ENTER para terminar a edição",linearElementMulti:"Clique no último ponto ou pressione Escape ou Enter para terminar",lockAngle:"Pode restringir o ângulo mantendo premida a tecla SHIFT",resize:`Pode restringir as proporções mantendo a tecla SHIFT premida enquanto redimensiona,
|
||
mantenha a tecla ALT premida para redimensionar a partir do centro`,resizeImage:`Pode redimensionar livremente mantendo pressionada a tecla SHIFT,
|
||
mantenha pressionada a tecla ALT para redimensionar do centro`,rotate:"Pode restringir os ângulos mantendo a tecla SHIFT premida enquanto roda",lineEditor_info:"Pressione CtrlOrCmd e faça um duplo-clique ou pressione CtrlOrCmd + Enter para editar pontos",lineEditor_pointSelected:"Carregue na tecla Delete para remover o(s) ponto(s), CtrlOuCmd+D para duplicar, ou arraste para mover",lineEditor_nothingSelected:`Seleccione um ponto para editar (carregue em SHIFT para seleccionar vários),
|
||
ou carregue em Alt e clique para acrescentar novos pontos`,placeImage:"Clique para colocar a imagem ou clique e arraste para definir o seu tamanho manualmente",publishLibrary:"Publique a sua própria biblioteca",bindTextToElement:"Carregue Enter para acrescentar texto",deepBoxSelect:"Mantenha a tecla CtrlOrCmd carregada para selecção profunda, impedindo o arrastamento",eraserRevert:"Carregue também em Alt para reverter os elementos marcados para serem apagados",firefox_clipboard_write:'Esta função pode provavelmente ser ativada definindo a opção "dom.events.asyncClipboard.clipboardItem" como "true". Para alterar os sinalizadores do navegador no Firefox, visite a página "about:config".',disableSnapping:""},CYe={cannotShowPreview:"Não é possível mostrar uma pré-visualização",canvasTooBig:"A área de desenho pode ser muito grande.",canvasTooBigTip:"Dica: tente aproximar um pouco os elementos mais distantes."},BYe={headingMain:"Foi encontrado um erro. Tente <button>recarregar a página.</button>",clearCanvasMessage:"Se a recarga não funcionar, tente <button>a limpar a área de desenho.</button>",clearCanvasCaveat:" Isso resultará em perda de trabalho ",trackedToSentry:"O erro com o identificador {{eventId}} foi rastreado no nosso sistema.",openIssueMessage:"Fomos muito cautelosos para não incluir suas informações de cena no erro. Se sua cena não for privada, por favor, considere seguir nosso <button>rastreador de bugs.</button> Por favor, inclua informações abaixo, copiando e colando no relatório de erros no GitHub.",sceneContent:"Conteúdo da cena:"},EYe={desc_intro:"Pode convidar pessoas para colaborarem na sua cena atual.",desc_privacy:"Não se preocupe, a sessão usa criptografia de ponta-a-ponta, por isso o que desenhar permanecerá privado. Nem mesmo o nosso servidor poderá ver o que cria.",button_startSession:"Iniciar sessão",button_stopSession:"Parar sessão",desc_inProgressIntro:"A sessão de colaboração ao vivo está agora em andamento.",desc_shareLink:"Partilhe este link com qualquer pessoa com quem queira colaborar:",desc_exitSession:"Interrompendo a sessão irá desconectar-se da sala, mas poderá continuar a trabalhar com a cena localmente. Note que isso não afetará outras pessoas e elas ainda poderão colaborar nas versões deles.",shareTitle:"Participe numa sessão de colaboração ao vivo no Excalidraw"},dYe={title:"Erro"},IYe={disk_title:"Guardar no disco",disk_details:"Exportar os dados da cena para um ficheiro do qual poderá importar mais tarde.",disk_button:"Guardar num ficheiro",link_title:"Link partilhável",link_details:"Exportar como um link de apenas leitura.",link_button:"Exportar para link",excalidrawplus_description:"Guardar a cena no seu espaço de trabalho Excalidraw+",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"Não foi possível exportar para o Excalidraw+ neste momento..."},hYe={blog:"Leia o nosso blogue",click:"clicar",deepSelect:"Selecção profunda",deepBoxSelect:"Selecção profunda dentro da caixa, impedindo que seja arrastada",curvedArrow:"Seta curva",curvedLine:"Linha curva",documentation:"Documentação",doubleClick:"clique duplo",drag:"arrastar",editor:"Editor",editLineArrowPoints:"Editar pontos de linha/seta",editText:"Editar texto / adicionar etiqueta",github:"Encontrou algum problema? Informe-nos",howto:"Siga os nossos guias",or:"ou",preventBinding:"Prevenir fixação de seta",tools:"Ferramentas",shortcuts:"Atalhos de teclado",textFinish:"Finalizar edição (editor texto)",textNewLine:"Adicionar nova linha (editor de texto)",title:"Ajuda",view:"Visualizar",zoomToFit:"Ajustar para todos os elementos caberem",zoomToSelection:"Ampliar a seleção",toggleElementLock:"Trancar/destrancar selecção",movePageUpDown:"Mover página para cima / baixo",movePageLeftRight:"Mover página para esquerda / direita"},QYe={title:"Apagar tela"},pYe={title:"Publicar biblioteca",itemName:"Nome do item",authorName:"Nome do autor",githubUsername:"Nome de utilizador do GitHub",twitterUsername:"Nome de utilizador no Twitter",libraryName:"Nome da biblioteca",libraryDesc:"Descrição da biblioteca",website:"Página web",placeholder:{authorName:"Introduza o seu nome ou nome de utilizador",libraryName:"Nome da sua biblioteca",libraryDesc:"Descrição da sua biblioteca para ajudar as pessoas a entender a utilização dela",githubHandle:"Identificador do GitHub (opcional), para que possa editar a biblioteca depois desta ser enviada para revisão",twitterHandle:"Nome do Twitter (opcional), para que saibamos quem merece os créditos na promoção via Twitter",website:"Ligação para a sua página pessoal ou qualquer outra (opcional)"},errors:{required:"Obrigatório",website:"Introduza um URL válido"},noteDescription:"Envie a sua biblioteca para ser incluída no <link>repositório de bibliotecas públicas</link>para outras pessoas a poderem usar nos seus próprios desenhos.",noteGuidelines:"A biblioteca precisa ser aprovada manualmente primeiro. Por favor, leia <link>orientações</link> antes de enviar. Vai precisar de uma conta no GitHub para comunicar e fazer alterações se solicitado, mas não é estritamente necessária.",noteLicense:"Ao enviar, concorda que a biblioteca será publicada sob a <link>Licença MIT, </link>o que significa, de forma resumida, que qualquer pessoa pode utilizá-la sem restrições.",noteItems:"Cada item da biblioteca deve ter o seu próprio nome para que este seja pesquisável com filtros. Os seguintes itens da biblioteca serão incluídos:",atleastOneLibItem:"Por favor, seleccione pelo menos um item da biblioteca para começar",republishWarning:"Nota: alguns dos itens seleccionados estão marcados como já publicados/enviados. Só deve reenviar itens ao actualizar uma biblioteca existente ou submissão."},fYe={title:"Biblioteca enviada",content:"Obrigado {{authorName}}. A sua biblioteca foi enviada para análise. Pode acompanhar o status<link>aqui</link>"},mYe={resetLibrary:"Repor a biblioteca",removeItemsFromLib:"Remover os itens seleccionados da biblioteca"},DYe={header:"Exportar imagem",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"Cena embutida",scale:"",padding:"Espaçamento"},tooltip:{embedScene:""},title:{exportToPng:"Exportar em PNG",exportToSvg:"Exportar em SVG",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:""}},yYe={tooltip:"Os seus desenhos são encriptados de ponta-a-ponta, por isso os servidores do Excalidraw nunca os verão.",link:"Publicação de blogue na encriptação ponta-a-ponta no Excalidraw"},wYe={angle:"Ângulo",element:"Elemento",elements:"Elementos",height:"Altura",scene:"Cena",selected:"Selecionado",storage:"Armazenamento",title:"Estatísticas para nerds",total:"Total",version:"Versão",versionCopy:"Clique para copiar",versionNotAvailable:"Versão não disponível",width:"Largura"},bYe={addedToLibrary:"Acrescentado à biblioteca",copyStyles:"Estilos copiados.",copyToClipboard:"Copiado para a área de transferência.",copyToClipboardAsPng:`{{exportSelection}} copiado para a área de transferência como PNG
|
||
({{exportColorScheme}})`,fileSaved:"Ficheiro guardado.",fileSavedToFilename:"Guardado como {filename}",canvas:"área de desenho",selection:"seleção",pasteAsSingleElement:`Usar {{shortcut}} para colar como um único elemento,
|
||
ou colar num editor de texto existente`,unableToEmbed:"",unrecognizedLinkFormat:""},vYe={transparent:"Transparente",black:"Preto",white:"Branco",red:"Vermelho",pink:"Rosa",grape:"Uva",violet:"Violeta",gray:"Cinza",blue:"Azul",cyan:"",teal:"",green:"Verde",yellow:"Amarelo",orange:"Laranja",bronze:"Bronze"},kYe={app:{center_heading:"Todos os dados são guardados no seu navegador local.",center_heading_plus:"Queria antes ir para o Excalidraw+?",menuHint:"Exportar, preferências, idiomas..."},defaults:{menuHint:"Exportar, preferências e outros...",center_heading:"Diagramas. Feito. Simples.",toolbarHint:"Escolha uma ferramenta e comece a desenhar!",helpHint:"Atalhos e ajuda"}},FYe={mostUsedCustomColors:"",colors:"Cores",shades:"Tons",hexCode:"",noShades:""},xYe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"Guardar no disco",button:"Guardar no disco",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"Carregar a partir de ficheiro",button:"Carregar a partir de ficheiro",description:""},shareableLink:{title:"",button:"",description:""}}},SYe={title:"",button:"",description:"",syntax:"",preview:""},uCr={labels:uYe,library:aYe,buttons:nYe,alerts:oYe,errors:sYe,toolBar:lYe,headings:gYe,hints:cYe,canvasError:CYe,errorSplash:BYe,roomDialog:EYe,errorDialog:dYe,exportDialog:IYe,helpDialog:hYe,clearCanvasDialog:QYe,publishDialog:pYe,publishSuccessDialog:fYe,confirmDialog:mYe,imageExportDialog:DYe,encrypted:yYe,stats:wYe,toast:bYe,colors:vYe,welcomeScreen:kYe,colorPicker:FYe,overwriteConfirm:xYe,mermaid:SYe}});var nHe={};yt(nHe,{alerts:()=>MYe,buttons:()=>UYe,canvasError:()=>JYe,clearCanvasDialog:()=>zYe,colorPicker:()=>iHe,colors:()=>tHe,confirmDialog:()=>jYe,default:()=>aCr,encrypted:()=>$Ye,errorDialog:()=>_Ye,errorSplash:()=>OYe,errors:()=>TYe,exportDialog:()=>WYe,headings:()=>HYe,helpDialog:()=>qYe,hints:()=>KYe,imageExportDialog:()=>XYe,labels:()=>NYe,library:()=>GYe,mermaid:()=>aHe,overwriteConfirm:()=>uHe,publishDialog:()=>ZYe,publishSuccessDialog:()=>VYe,roomDialog:()=>PYe,stats:()=>AHe,toast:()=>eHe,toolBar:()=>YYe,welcomeScreen:()=>rHe});var NYe,GYe,UYe,MYe,TYe,YYe,HYe,KYe,JYe,OYe,PYe,_Ye,WYe,qYe,zYe,ZYe,VYe,jYe,XYe,$Ye,AHe,eHe,tHe,rHe,iHe,uHe,aHe,aCr;var oHe=P(()=>{qt();NYe={paste:"Lipire",pasteAsPlaintext:"Inserare ca text simplu",pasteCharts:"Lipire diagrame",selectAll:"Selectare totală",multiSelect:"Adaugă element la selecție",moveCanvas:"Mutare pânză",cut:"Decupare",copy:"Copiere",copyAsPng:"Copiere în memoria temporară ca PNG",copyAsSvg:"Copiere în memoria temporară ca SVG",copyText:"Copiere în memoria temporară ca text",copySource:"Copiere sursă în memoria temporară",convertToCode:"Convertire în cod",bringForward:"Aducere în plan apropiat",sendToBack:"Trimitere în ultimul plan",bringToFront:"Aducere în prim plan",sendBackward:"Trimitere în plan secundar",delete:"Ștergere",copyStyles:"Copiere stiluri",pasteStyles:"Lipire stiluri",stroke:"Contur",background:"Fundal",fill:"Umplere",strokeWidth:"Lățimea conturului",strokeStyle:"Stilul conturului",strokeStyle_solid:"Neîntrerupt",strokeStyle_dashed:"Liniuțe",strokeStyle_dotted:"Punctat",sloppiness:"Aspectul trasării",opacity:"Opacitate",textAlign:"Alinierea textului",edges:"Margini",sharp:"Ascuțite",round:"Rotunde",arrowheads:"Vârfuri de săgeată",arrowhead_none:"Niciunul",arrowhead_arrow:"Săgeată",arrowhead_bar:"Bară",arrowhead_circle:"Cerc",arrowhead_circle_outline:"Cerc (contur)",arrowhead_triangle:"Triunghi",arrowhead_triangle_outline:"Triunghi (contur)",arrowhead_diamond:"Romb",arrowhead_diamond_outline:"Romb (contur)",fontSize:"Dimensiune font",fontFamily:"Familia de fonturi",addWatermark:"Adaugă „Realizat cu Excalidraw”",handDrawn:"Scris de mână",normal:"Normal",code:"Cod",small:"Mică",medium:"Medie",large:"Mare",veryLarge:"Foarte mare",solid:"Plină",hachure:"Hașură",zigzag:"Zigzag",crossHatch:"Hașură transversală",thin:"Subțire",bold:"Îngroșată",left:"Stânga",center:"Centru",right:"Dreapta",extraBold:"Extra îngroșată",architect:"Arhitect",artist:"Artist",cartoonist:"Caricaturist",fileTitle:"Nume de fișier",colorPicker:"Selector de culoare",canvasColors:"Folosite pe pânză",canvasBackground:"Fundalul pânzei",drawingCanvas:"Pânză pentru desenat",layers:"Straturi",actions:"Acțiuni",language:"Limbă",liveCollaboration:"Colaborare în direct...",duplicateSelection:"Duplicare",untitled:"Nedenumit",name:"Nume",yourName:"Numele tău",madeWithExcalidraw:"Realizat cu Excalidraw",group:"Grupare selecție",ungroup:"Degrupare selecție",collaborators:"Colaboratori",showGrid:"Afișare grilă",addToLibrary:"Adăugare la bibliotecă",removeFromLibrary:"Eliminare din bibliotecă",libraryLoadingMessage:"Se încarcă biblioteca…",libraries:"Răsfoiește bibliotecile",loadingScene:"Se încarcă scena…",align:"Aliniere",alignTop:"Aliniere sus",alignBottom:"Aliniere jos",alignLeft:"Aliniere la stânga",alignRight:"Aliniere la dreapta",centerVertically:"Centrare verticală",centerHorizontally:"Centrare orizontală",distributeHorizontally:"Distribuie orizontal",distributeVertically:"Distribuie vertical",flipHorizontal:"Răsturnare orizontală",flipVertical:"Răsturnare verticală",viewMode:"Mod de vizualizare",share:"Distribuie",showStroke:"Afișare selector culoare contur",showBackground:"Afișare selector culoare fundal",toggleTheme:"Comutare temă",personalLib:"Biblioteca personală",excalidrawLib:"Biblioteca Excalidraw",decreaseFontSize:"Micșorează dimensiunea fontului",increaseFontSize:"Mărește dimensiunea fontului",unbindText:"Deconectare text",bindText:"Legare text de container",createContainerFromText:"Încadrare text într-un container",link:{edit:"Editare URL",editEmbed:"Editare URL și încorporare",create:"Creare URL",createEmbed:"Creare URL și încorporare",label:"URL",labelEmbed:"URL și încorporare",empty:"Nu este setat niciun URL"},lineEditor:{edit:"Editare linie",exit:"Părăsire editor de linii"},elementLock:{lock:"Blocare",unlock:"Deblocare",lockAll:"Blocare toate",unlockAll:"Deblocare toate"},statusPublished:"Publicat",sidebarLock:"Păstrează deschisă bara laterală",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"Alegere culoare din pânză",textToDiagram:"Text la diagramă",prompt:"Solicitare"},GYe={noItems:"Niciun element adăugat încă...",hint_emptyLibrary:"Selectează un element de pe pânză pentru a-l adăuga aici sau instalează o bibliotecă din depozitul public, de mai jos.",hint_emptyPrivateLibrary:"Selectează un element de pe pânză pentru a-l adăuga aici."},UYe={clearReset:"Resetare pânză",exportJSON:"Exportare la fișiere",exportImage:"Exportare imagine...",export:"Salvare în...",copyToClipboard:"Copiere în memoria temporară",save:"Salvare în fișierul curent",saveAs:"Salvare ca",load:"Deschidere",getShareableLink:"Obține URL partajabil",close:"Închidere",selectLanguage:"Selectare limbă",scrollBackToContent:"Derulare înapoi la conținut",zoomIn:"Apropiere",zoomOut:"Depărtare",resetZoom:"Resetare transfocare",menu:"Meniu",done:"Efectuat",edit:"Edit",undo:"Anulare",redo:"Refacere",resetLibrary:"Resetare bibliotecă",createNewRoom:"Creare cameră nouă",fullScreen:"Ecran complet",darkMode:"Mod întunecat",lightMode:"Mod luminos",zenMode:"Mod zen",objectsSnapMode:"Ancorare la obiecte",exitZenMode:"Ieșire din modul zen",cancel:"Anulare",clear:"Ștergere",remove:"Eliminare",embed:"Comutare încorporare",publishLibrary:"Publicare",submit:"Trimitere",confirm:"Confirmare",embeddableInteractionButton:"Clic pentru interacționare"},MYe={clearReset:"Această opțiune va șterge întreaga pânză. Confirmi?",couldNotCreateShareableLink:"Nu s-a putut crea un URL partajabil.",couldNotCreateShareableLinkTooBig:"Nu s-a putut crea un URL partajabil: scena este prea mare",couldNotLoadInvalidFile:"Fișierul invalid nu a putut fi încărcat",importBackendFailed:"Importarea de la nivel de server a eșuat.",cannotExportEmptyCanvas:"Nu se poate exporta pânza goală.",couldNotCopyToClipboard:"Nu s-a putut copia în memoria temporară.",decryptFailed:"Datele nu au putut fi decriptate.",uploadedSecurly:"Încărcarea a fost securizată prin criptare integrală, însemnând că serverul Excalidraw și terții nu pot citi conținutul.",loadSceneOverridePrompt:"Încărcarea desenului extern va înlocui conținutul existent. Dorești să continui?",collabStopOverridePrompt:`Oprirea sesiunii va suprascrie desenul anterior stocat local. Confirmi alegerea?
|
||
|
||
(Dacă vrei să păstrezi desenul local, pur și simplu închide fila navigatorului în schimb.)`,errorAddingToLibrary:"Elementul nu a putut fi adăugat în bibliotecă",errorRemovingFromLibrary:"Elementul nu a putut fi eliminat din bibliotecă",confirmAddLibrary:"Această acțiune va adăuga {{numShapes}} formă(e) la biblioteca ta. Confirmi?",imageDoesNotContainScene:"Această imagine nu pare să conțină date de scenă. Ai activat încorporarea scenei în timpul exportului?",cannotRestoreFromImage:"Scena nu a putut fi restaurată din acest fișier de imagine",invalidSceneUrl:"Scena nu a putut fi importată din URL-ul furnizat. Este fie incorect formată, fie nu conține date JSON Excalidraw valide.",resetLibrary:"Această opțiune va elimina conținutul din bibliotecă. Confirmi?",removeItemsFromsLibrary:"Ștergi {{count}} element(e) din bibliotecă?",invalidEncryptionKey:"Cheia de criptare trebuie să aibă 22 de caractere. Colaborarea în direct este dezactivată.",collabOfflineWarning:`Nu este disponibilă nicio conexiune la internet.
|
||
Modificările nu vor fi salvate!`},TYe={unsupportedFileType:"Tip de fișier neacceptat.",imageInsertError:"Imaginea nu a putut fi introdusă. Reîncearcă mai târziu...",fileTooBig:"Fișierul este prea mare. Dimensiunea maximă permisă este de {{maxSize}}.",svgImageInsertError:"Imaginea SVG nu a putut fi introdus. Marcajul SVG pare invalid.",failedToFetchImage:"Preluarea imaginii a eșuat.",invalidSVGString:"SVG invalid.",cannotResolveCollabServer:"Nu a putut fi realizată conexiunea la serverul de colaborare. Reîncarcă pagina și încearcă din nou.",importLibraryError:"Biblioteca nu a putut fi încărcată",collabSaveFailed:"Nu s-a putut salva în baza de date la nivel de server. Dacă problemele persistă, ar trebui să salvezi fișierul la nivel local pentru a te asigura că nu îți pierzi munca.",collabSaveFailed_sizeExceeded:"Nu s-a putut salva în baza de date la nivel de server, întrucât se pare că pânza este prea mare. Ar trebui să salvezi fișierul la nivel local pentru a te asigura că nu îți pierzi munca.",imageToolNotSupported:"Imaginile sunt dezactivate.",brave_measure_text_error:{line1:"Se pare că folosești navigatorul Brave cu opțiunea <bold>strictă pentru blocarea amprentării</bold>.",line2:"Acest lucru poate duce la întreruperea <bold>elementelor text</bold> din desene.",line3:"Îți recomandăm ferm să dezactivezi această setare. Poți urma <link>acești pași</link> pentru a face acest lucru.",line4:"Dacă dezactivarea acestei setări nu duce la remedierea afișării elementelor text, deschide un tichet de <issueLink>problemă</issueLink> pe pagina noastră de GitHub sau scrie-ne pe <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Elementele încorporabile nu pot fi adăugate la bibliotecă.",iframe:"Elementele iFrame nu pot fi adăugate la bibliotecă.",image:"În curând vor putea fi adăugate imagini în bibliotecă!"},asyncPasteFailedOnRead:"Lipirea nu a putut fi efectuată (nu s-a putut citit din memoria temporară a sistemului).",asyncPasteFailedOnParse:"Lipirea nu a putut fi efectuată.",copyToSystemClipboardFailed:"Nu s-a putut copia în memoria temporară."},YYe={selection:"Selecție",image:"Introducere imagine",rectangle:"Dreptunghi",diamond:"Romb",ellipse:"Elipsă",arrow:"Săgeată",line:"Linie",freedraw:"Desenare",text:"Text",library:"Bibliotecă",lock:"Menține activ instrumentul selectat după desenare",penMode:"Mod stilou – împiedică atingerea",link:"Adăugare/actualizare URL pentru forma selectată",eraser:"Radieră",frame:"",magicframe:"Structură-de-fire la cod",embeddable:"Încorporare web",laser:"Indicator laser",hand:"Mână (instrument de panoramare)",extraTools:"",mermaidToExcalidraw:"Mermaid la Excalidraw",magicSettings:"Setări IA"},HYe={canvasActions:"Acțiuni pentru pânză",selectedShapeActions:"Acțiuni pentru forma selectată",shapes:"Forme"},KYe={canvasPanning:"Pentru a muta pânză, ține apăsată rotița mausului sau bara de spațiu sau folosește instrumentul în formă de mână",linearElement:"Dă clic pentru a crea mai multe puncte, glisează pentru a forma o singură linie",freeDraw:"Dă clic pe pânză și glisează cursorul, apoi eliberează-l când ai terminat",text:"Sfat: poți adăuga text și dând dublu clic oriunde cu instrumentul de selecție",embeddable:"Dă clic și trage pentru a crea un cod de încorporare de pagină web",text_selected:"Dă dublu clic sau apasă tasta Enter pentru a edita textul",text_editing:"Apasă tasta Escape sau Ctrl sau Cmd + Enter pentru a finaliza editarea",linearElementMulti:"Dă clic pe ultimul punct sau apasă tasta Escape sau tasta Enter pentru a termina",lockAngle:"Poți constrânge unghiul prin ținerea apăsată a tastei SHIFT",resize:`Poți constrânge proporțiile, ținând apăsată tasta SHIFT în timp ce redimensionezi,
|
||
ține apăsată tasta ALT pentru a redimensiona de la centru`,resizeImage:`Poți redimensiona liber ținând apăsată tasta SHIFT,
|
||
ține apăsată tasta ALT pentru a redimensiona din centru`,rotate:"Poți constrânge unghiurile, ținând apăsată tasta SHIFT în timp ce rotești",lineEditor_info:"Ține apăsată tasta Ctrl sau Cmd și dă dublu clic sau apasă tasta Ctrl sau Cmd + Enter pentru a edita puncte",lineEditor_pointSelected:`Apasă tasta Delete pentru a elimina punctele,
|
||
combinația de taste Ctrl sau Cmd + D pentru a le duplica sau glisează-le pentru a le schimba poziția`,lineEditor_nothingSelected:`Selectează un punct pentru a-l edita (ține apăsată tasta SHIFT pentru a selecta mai multe),
|
||
sau ține apăsată tasta Alt și dă clic pentru a adăuga puncte noi`,placeImage:"Dă clic pentru a poziționa imaginea sau dă clic și glisează pentru a seta manual dimensiunea imaginii",publishLibrary:"Publică propria bibliotecă",bindTextToElement:"Apasă tasta Enter pentru a adăuga text",deepBoxSelect:"Ține apăsată tasta Ctrl sau Cmd pentru a efectua selectarea de adâncime și pentru a preveni glisarea",eraserRevert:"Ține apăsată tasta Alt pentru a anula elementele marcate pentru ștergere",firefox_clipboard_write:"Această caracteristică poate fi probabil activată prin setarea preferinței „dom.events.asyncClipboard.clipboardItem” ca „true”. Pentru a schimba preferințele navigatorului în Firefox, accesează pagina „about:config”.",disableSnapping:"Ține apăsat CtrlOrCmd pentru a dezactiva ancorarea"},JYe={cannotShowPreview:"Nu se poate afișa previzualizarea",canvasTooBig:"Pânza poate fi prea mare.",canvasTooBigTip:"Sfat: încearcă să apropii puțin mai mult elementele cele mai îndepărtate."},OYe={headingMain:"A apărut o eroare. Încearcă <button>să reîncarci pagina</button>.",clearCanvasMessage:"Dacă reîncărcarea nu funcționează, încearcă <button>să ștergi pânza</button>.",clearCanvasCaveat:" Acest lucru va duce la pierderea progresului ",trackedToSentry:"Eroarea cu identificatorul {{eventId}} a fost urmărită în sistemul nostru.",openIssueMessage:"Am luat măsuri de precauție pentru a nu include informații despre scenă în eroare. Dacă scena nu este privată, oferă-ne mai multe informații în <button>monitorul nostru pentru erori</button>. Include informațiile de mai jos copiindu-le și lipindu-le în tichetul cu problemă de pe GitHub.",sceneContent:"Conținutul scenei:"},PYe={desc_intro:"Poți invita alte persoane pentru a colabora la scena actuală.",desc_privacy:"Nu te îngrijora. Sesiunea utilizează criptarea integrală, astfel încât orice desenezi va rămâne privat. Nici măcar serverul nostru nu va putea vedea pe ce ai lucrat.",button_startSession:"Pornire sesiune",button_stopSession:"Oprire sesiune",desc_inProgressIntro:"Sesiunea de colaborare în direct este în curs de desfășurare.",desc_shareLink:"Distribuie acest URL persoanelor cu care dorești să colaborezi:",desc_exitSession:"Oprirea sesiunii te va deconecta de la sală, însă vei putea lucra în continuare, pe plan local, cu scena. Reține că această opțiune nu va afecta alte persoane, iar acestea vor putea să colaboreze în continuare pe versiunea lor.",shareTitle:"Alătură-te unei sesiuni de colaborare în direct pe Excalidraw"},_Ye={title:"Eroare"},WYe={disk_title:"Salvare pe disc",disk_details:"Exportă datele scenei pe un fișier din care poți importa mai târziu.",disk_button:"Salvare în fișier",link_title:"URL partajabil",link_details:"Exportă ca URL doar în citire.",link_button:"Exportare în URL",excalidrawplus_description:"Salvează scena în spațiul de lucru Excalidraw+.",excalidrawplus_button:"Exportare",excalidrawplus_exportError:"Excalidraw+ nu a putut fi exportat în acest moment..."},qYe={blog:"Citește blogul nostru",click:"clic",deepSelect:"Selectare de adâncime",deepBoxSelect:"Selectare de adâncime în casetă și prevenire glisare",curvedArrow:"Săgeată curbată",curvedLine:"Linie curbată",documentation:"Documentație",doubleClick:"dublu clic",drag:"glisare",editor:"Editor",editLineArrowPoints:"Editare puncte de săgeată/rând",editText:"Editare text/adăugare etichetă",github:"Ai întâmpinat o problemă? Trimite un raport",howto:"Urmărește ghidurile noastre",or:"sau",preventBinding:"Împiedică legarea săgeții",tools:"Instrumente",shortcuts:"Comenzi rapide de la tastatură",textFinish:"Finalizează editarea (editor de text)",textNewLine:"Adaugă o linie nouă (editor de text)",title:"Ajutor",view:"Vizualizare",zoomToFit:"Transfocare pentru a cuprinde totul",zoomToSelection:"Transfocare la selecție",toggleElementLock:"Blocare/deblocare selecție",movePageUpDown:"Deplasare pagină sus/jos",movePageLeftRight:"Deplasare pagină stânga/dreapta"},zYe={title:"Ștergere pânză"},ZYe={title:"Publicare bibliotecă",itemName:"Denumirea elementului",authorName:"Numele autorului",githubUsername:"Numele de utilizator GitHub",twitterUsername:"Numele de utilizator Twitter",libraryName:"Denumirea bibliotecii",libraryDesc:"Descrierea bibliotecii",website:"Pagină de internet",placeholder:{authorName:"Numele sau numele tău de utilizator",libraryName:"Numele bibliotecii tale",libraryDesc:"Descrierea bibliotecii tale pentru a ajuta oamenii să înțeleagă utilizarea acesteia",githubHandle:"Numele de utilizator GitHub (opțional), pentru a putea edita biblioteca odată ce este trimisă spre revizuire",twitterHandle:"Numele de utilizator Twitter (opțional), pentru a indica sursa la promovarea pe Twitter",website:"Trimitere către pagina ta personală de internet sau altundeva (opțional)"},errors:{required:"Obligatoriu",website:"Introdu un URL valid"},noteDescription:"Trimite-ți biblioteca pentru a fi inclusă în <link>depozitul de biblioteci publice</link> în vederea utilizării de către alte persoane în desenele lor.",noteGuidelines:"Biblioteca trebuie aprobată manual mai întâi. Citește <link>orientările</link> înainte de trimitere. Vei avea nevoie de un cont GitHub pentru a comunica și efectua modificări, dacă este cazul, însă nu este strict necesar.",noteLicense:"Prin trimiterea bibliotecii, ești de acord că aceasta va fi publicată sub <link>Licența MIT, </link>care, pe scurt, înseamnă că oricine o poate folosi fără restricții.",noteItems:"Fiecare element din bibliotecă trebuie să aibă propriul nume astfel încât să fie filtrabil. Următoarele elemente din bibliotecă vor fi incluse:",atleastOneLibItem:"Selectează cel puțin un element din bibliotecă pentru a începe",republishWarning:"Observație: unele dintre elementele selectate sunt marcate ca fiind deja publicate/trimise. Ar trebui să retrimiți elemente numai atunci când actualizezi o trimitere sau o bibliotecă existentă."},VYe={title:"Bibliotecă trimisă",content:"Îți mulțumim, {{authorName}}. Biblioteca a fost trimisă spre revizuire. Poți urmări starea <link>aici</link>"},jYe={resetLibrary:"Resetare bibliotecă",removeItemsFromLib:"Elimină elementele selectate din bibliotecă"},XYe={header:"Exportare imagine",label:{withBackground:"Fundal",onlySelected:"Numai selecția",darkMode:"Mod întunecat",embedScene:"Încorporare scenă",scale:"Scală",padding:"Spațiere"},tooltip:{embedScene:`Datele scenei vor fi salvate în fișierul PNG/SVG exportat, astfel că scena va putea fi restaurată din acesta.
|
||
Va crește dimensiunea fișierului exportat.`},title:{exportToPng:"Exportare ca PNG",exportToSvg:"Exportare ca SVG",copyPngToClipboard:"Copiere PNG în memoria temporară"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiere în memoria temporară"}},$Ye={tooltip:"Desenele tale sunt criptate integral, astfel că serverele Excalidraw nu le vor vedea niciodată.",link:"Articol de blog pe criptarea integrală din Excalidraw"},AHe={angle:"Unghi",element:"Element",elements:"Elemente",height:"Înălțime",scene:"Scenă",selected:"Selectate",storage:"Stocare",title:"Statistici pentru pasionați",total:"Total",version:"Versiune",versionCopy:"Clic pentru copiere",versionNotAvailable:"Versiune indisponibilă",width:"Lățime"},eHe={addedToLibrary:"Adăugat în bibliotecă",copyStyles:"Stiluri copiate.",copyToClipboard:"Copiat în memoria temporară.",copyToClipboardAsPng:`S-a copiat {{exportSelection}} în memoria temporară sub formă de PNG
|
||
({{exportColorScheme}})`,fileSaved:"Fișier salvat.",fileSavedToFilename:"Salvat în {filename}",canvas:"pânza",selection:"selecția",pasteAsSingleElement:`Folosește {{shortcut}} pentru a insera ca un singur element
|
||
sau insera într-un editor de text existent`,unableToEmbed:"Încorporarea acestui URL nu este permisă momentan. Deschideți un tichet cu probleme pe GitHub pentru a solicita adăugarea acestui URL în lista albă",unrecognizedLinkFormat:"URL-ul pe care l-ai încorporat nu coincide cu formatul așteptat. Încearcă să lipești șirul „de încorporat” furnizat de pagina sursă"},tHe={transparent:"Transparent",black:"Negru",white:"Alb",red:"Roșu",pink:"Roz",grape:"Struguriu",violet:"Violet",gray:"Gri",blue:"Albastru",cyan:"Cyan",teal:"Cyan-verde",green:"Verde",yellow:"Galben",orange:"Portocaliu",bronze:"Bronz"},rHe={app:{center_heading:"Toate datele tale sunt salvate local în navigatorul tău.",center_heading_plus:"Ai vrut să mergi în schimb la Excalidraw+?",menuHint:"Exportare, preferințe, limbi, ..."},defaults:{menuHint:"Exportare, preferințe și mai multe...",center_heading:"Diagrame. Făcute. Simple.",toolbarHint:"Alege un instrument și începe să desenezi!",helpHint:"Comenzi rapide și ajutor"}},iHe={mostUsedCustomColors:"Cele mai utilizate culori personalizate",colors:"Culori",shades:"Nuanțe",hexCode:"Cod hexa",noShades:"Nu este disponibilă nicio nuanță pentru această culoare"},uHe={action:{exportToImage:{title:"Exportare ca imagine",button:"Exportare ca imagine",description:"Exportă datele scenei ca fișier din care poți importa mai târziu."},saveToDisk:{title:"Salvare pe disc",button:"Salvare pe disc",description:"Exportă datele scenei pe un fișier din care poți importa mai târziu."},excalidrawPlus:{title:"Excalidraw+",button:"Exportare în Excalidraw+",description:"Salvează scena în spațiul de lucru Excalidraw+."}},modal:{loadFromFile:{title:"Încărcare din fișier",button:"Încărcare din fișier",description:"Încărcarea dintr-un fișier va <bold>înlocui conținutul existent</bold>.<br></br>Poți face mai întâi o copie de rezervă a desenului folosind una dintre opțiunile de mai jos."},shareableLink:{title:"Încărcare din lnk",button:"Înlocuiește conținutul meu",description:"Încărcarea unui desen extern va <bold>înlocui conținutul existent</bold>.<br></br>Poți face mai întâi o copie de rezervă a desenului folosind una dintre opțiunile de mai jos."}}},aHe={title:"Mermaid la Excalidraw",button:"Introducere",description:"În prezent, numai <flowchartLink>Organigramele</flowchartLink>, <sequenceLink>Diagramele de secvență</sequenceLink> și <classLink>Diagramele de clasă</classLink> sunt acceptate. Celelalte tipuri vor fi redate ca imagine în Excalidraw.",syntax:"Sintaxă Mermaid",preview:"Previzualizare"},aCr={labels:NYe,library:GYe,buttons:UYe,alerts:MYe,errors:TYe,toolBar:YYe,headings:HYe,hints:KYe,canvasError:JYe,errorSplash:OYe,roomDialog:PYe,errorDialog:_Ye,exportDialog:WYe,helpDialog:qYe,clearCanvasDialog:zYe,publishDialog:ZYe,publishSuccessDialog:VYe,confirmDialog:jYe,imageExportDialog:XYe,encrypted:$Ye,stats:AHe,toast:eHe,colors:tHe,welcomeScreen:rHe,colorPicker:iHe,overwriteConfirm:uHe,mermaid:aHe}});var UHe={};yt(UHe,{alerts:()=>cHe,buttons:()=>gHe,canvasError:()=>IHe,clearCanvasDialog:()=>DHe,colorPicker:()=>RHe,colors:()=>SHe,confirmDialog:()=>bHe,default:()=>nCr,encrypted:()=>kHe,errorDialog:()=>pHe,errorSplash:()=>hHe,errors:()=>CHe,exportDialog:()=>fHe,headings:()=>EHe,helpDialog:()=>mHe,hints:()=>dHe,imageExportDialog:()=>vHe,labels:()=>sHe,library:()=>lHe,mermaid:()=>GHe,overwriteConfirm:()=>NHe,publishDialog:()=>yHe,publishSuccessDialog:()=>wHe,roomDialog:()=>QHe,stats:()=>FHe,toast:()=>xHe,toolBar:()=>BHe,welcomeScreen:()=>LHe});var sHe,lHe,gHe,cHe,CHe,BHe,EHe,dHe,IHe,hHe,QHe,pHe,fHe,mHe,DHe,yHe,wHe,bHe,vHe,kHe,FHe,xHe,SHe,LHe,RHe,NHe,GHe,nCr;var MHe=P(()=>{qt();sHe={paste:"Вставить",pasteAsPlaintext:"Вставить как обычный текст",pasteCharts:"Вставить диаграммы",selectAll:"Выбрать всё",multiSelect:"Добавить элемент в выделенный фрагмент",moveCanvas:"Переместить холст",cut:"Вырезать",copy:"Копировать",copyAsPng:"Скопировать в буфер обмена как PNG",copyAsSvg:"Скопировать в буфер обмена как SVG",copyText:"Скопировать в буфер обмена как текст",copySource:"Копировать источник в буфер обмена",convertToCode:"Преобразовать в код",bringForward:"Переместить вперед",sendToBack:"На задний план",bringToFront:"На передний план",sendBackward:"Переместить назад",delete:"Удалить",copyStyles:"Скопировать стили",pasteStyles:"Вставить стили",stroke:"Обводка",background:"Фон",fill:"Заливка",strokeWidth:"Толщина штриха",strokeStyle:"Стиль обводки",strokeStyle_solid:"Сплошная",strokeStyle_dashed:"Пунктирная",strokeStyle_dotted:"Точечная",sloppiness:"Стиль обводки",opacity:"Непрозрачность",textAlign:"Выравнивание текста",edges:"Края",sharp:"Острые",round:"Скругленные",arrowheads:"Стрелка",arrowhead_none:"Нет",arrowhead_arrow:"Cтрелка",arrowhead_bar:"Черта",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Треугольник",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Размер шрифта",fontFamily:"Семейство шрифтов",addWatermark:"Добавить «Создано в Excalidraw»",handDrawn:"От руки",normal:"Обычный",code:"Код",small:"Малый",medium:"Средний",large:"Большой",veryLarge:"Очень большой",solid:"Однотонная",hachure:"Штрихованная",zigzag:"Зигзаг",crossHatch:"Перекрестная",thin:"Тонкая",bold:"Жирная",left:"Слева",center:"Центр",right:"Справа",extraBold:"Очень жирная",architect:"Архитектор",artist:"Художник",cartoonist:"Карикатурист",fileTitle:"Имя файла",colorPicker:"Выбор цвета",canvasColors:"Используется на холсте",canvasBackground:"Фон холста",drawingCanvas:"Полотно",layers:"Слои",actions:"Действия",language:"Язык",liveCollaboration:"Онлайн взаимодействие...",duplicateSelection:"Дубликат",untitled:"Безымянный",name:"Имя",yourName:"Ваше имя",madeWithExcalidraw:"Сделано в Excalidraw",group:"Сгруппировать выделение",ungroup:"Разделить выделение",collaborators:"Участники",showGrid:"Показать сетку",addToLibrary:"Добавить в библиотеку",removeFromLibrary:"Удалить из библиотеки",libraryLoadingMessage:"Загрузка библиотеки…",libraries:"Просмотреть библиотеки",loadingScene:"Загрузка сцены…",align:"Выровнять",alignTop:"Выровнять по верхнему краю",alignBottom:"Выровнять по нижнему краю",alignLeft:"Выровнять по левому краю",alignRight:"Выровнять по правому краю",centerVertically:"Центрировать по вертикали",centerHorizontally:"Центрировать по горизонтали",distributeHorizontally:"Распределить по горизонтали",distributeVertically:"Распределить по вертикали",flipHorizontal:"Переворот по горизонтали",flipVertical:"Переворот по вертикали",viewMode:"Вид",share:"Поделиться",showStroke:"Показать выбор цвета обводки",showBackground:"Показать выбор цвета фона",toggleTheme:"Переключить тему",personalLib:"Личная библиотека",excalidrawLib:"Библиотека Excalidraw",decreaseFontSize:"Уменьшить шрифт",increaseFontSize:"Увеличить шрифт",unbindText:"Отвязать текст",bindText:"Привязать текст к контейнеру",createContainerFromText:"Поместить текст в контейнер",link:{edit:"Редактировать ссылку",editEmbed:"",create:"Создать ссылку",createEmbed:"",label:"Ссылка",labelEmbed:"",empty:""},lineEditor:{edit:"Редактирование строки",exit:"Выход из редактора строки"},elementLock:{lock:"Блокировать",unlock:"Разблокировать",lockAll:"Заблокировать все",unlockAll:"Разблокировать все"},statusPublished:"Опубликовано",sidebarLock:"Держать боковую панель открытой",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"Взять образец цвета с холста",textToDiagram:"Текст в диаграмму",prompt:""},lHe={noItems:"Пока ничего не добавлено...",hint_emptyLibrary:"Выберите объект на холсте, чтобы добавить его сюда, или установите библиотеку из публичного репозитория ниже.",hint_emptyPrivateLibrary:"Выберите объект на холсте, чтобы добавить его сюда."},gHe={clearReset:"Очистить холст и сбросить цвет фона",exportJSON:"Сохранить в",exportImage:"Экспортировать изображение...",export:"Сохранить как...",copyToClipboard:"Скопировать в буфер обмена",save:"Сохранить в текущий файл",saveAs:"Сохранить как",load:"Открыть",getShareableLink:"Получить доступ по ссылке",close:"Закрыть",selectLanguage:"Выбрать язык",scrollBackToContent:"Вернуться к содержимому",zoomIn:"Увеличить",zoomOut:"Уменьшить",resetZoom:"Сбросить масштаб",menu:"Меню",done:"Готово",edit:"Изменить",undo:"Шаг назад",redo:"Шаг вперед",resetLibrary:"Сброс библиотеки",createNewRoom:"Создать новую комнату",fullScreen:"Полный экран",darkMode:"Темная тема",lightMode:"Светлая тема",zenMode:"Режим Дзен",objectsSnapMode:"Привязка к объектам",exitZenMode:"Выключить режим концентрации внимания",cancel:"Отменить",clear:"Очистить",remove:"Удалить",embed:"",publishLibrary:"Опубликовать",submit:"Отправить",confirm:"Подтвердить",embeddableInteractionButton:""},cHe={clearReset:"Это очистит весь холст. Вы уверены?",couldNotCreateShareableLink:"Не удалось создать общедоступную ссылку.",couldNotCreateShareableLinkTooBig:"Нельзя создать ссылку, чтобы поделиться. Сцена слишком большая",couldNotLoadInvalidFile:"Не удалось загрузить недопустимый файл",importBackendFailed:"Не удалось импортировать из бэкэнда.",cannotExportEmptyCanvas:"Не может экспортировать пустой холст.",couldNotCopyToClipboard:"Не удалось скопировать в буфер обмена.",decryptFailed:"Не удалось расшифровать данные.",uploadedSecurly:"Загружаемые данные защищена сквозным шифрованием, что означает, что сервер Excalidraw и третьи стороны не могут прочитать содержимое.",loadSceneOverridePrompt:"Загрузка рисунка приведёт к замене имеющегося содержимого. Вы хотите продолжить?",collabStopOverridePrompt:`Остановка сессии перезапишет ваш предыдущий, локально сохранённый рисунок. Вы уверены?
|
||
|
||
(Если вы хотите оставить ваш локальный рисунок, просто закройте вкладку браузера)`,errorAddingToLibrary:"Не удалось добавить объект в библиотеку",errorRemovingFromLibrary:"Не удалось удалить объект из библиотеки",confirmAddLibrary:"Будет добавлено {{numShapes}} фигур в вашу библиотеку. Продолжить?",imageDoesNotContainScene:"Это изображение не содержит данных сцены. Вы включили встраивание сцены во время экспорта?",cannotRestoreFromImage:"Сцена не может быть восстановлена из этого изображения",invalidSceneUrl:"Невозможно импортировать сцену с предоставленного URL. Неверный формат, или не содержит верных Excalidraw JSON данных.",resetLibrary:"Это очистит вашу библиотеку. Вы уверены?",removeItemsFromsLibrary:"Удалить {{count}} объект(ов) из библиотеки?",invalidEncryptionKey:"Ключ шифрования должен состоять из 22 символов. Одновременное редактирование отключено.",collabOfflineWarning:`Отсутствует интернет-соединение.
|
||
Ваши изменения не будут сохранены!`},CHe={unsupportedFileType:"Неподдерживаемый тип файла.",imageInsertError:"Не удалось вставить изображение. Попробуйте позже...",fileTooBig:"Очень большой файл. Максимально разрешенный размер {{maxSize}}.",svgImageInsertError:"Не удалось вставить изображение SVG. Разметка SVG выглядит недействительной.",failedToFetchImage:"Не удалось получить изображение.",invalidSVGString:"Некорректный SVG.",cannotResolveCollabServer:"Не удалось подключиться к серверу совместного редактирования. Перезагрузите страницу и повторите попытку.",importLibraryError:"Не удалось загрузить библиотеку",collabSaveFailed:"Не удалось сохранить в базу данных. Если проблема повторится, нужно будет сохранить файл локально, чтобы быть уверенным, что вы не потеряете вашу работу.",collabSaveFailed_sizeExceeded:"Не удалось сохранить в базу данных. Похоже, что холст слишком большой. Нужно сохранить файл локально, чтобы быть уверенным, что вы не потеряете вашу работу.",imageToolNotSupported:"Изображения отключены.",brave_measure_text_error:{line1:"Похоже, вы используете браузер Brave с включенной опцией <bold>Агрессивно блокировать отслеживание</bold>.",line2:"Это может привести к поломке <bold>Текстовых объектов</bold> на рисунке.",line3:"Мы настоятельно рекомендуем отключить эту настройку. Для этого нужно выполнить <link>эти шаги</link>.",line4:"Если отключение этой настройки не исправит отображение текстовых объектов, создайте <issueLink>issue</issueLink> на нашем GitHub или напишите нам в <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"Элементы IFrame не могут быть добавлены в библиотеку.",image:""},asyncPasteFailedOnRead:"Не удалось вставить (невозможно прочитать из системного буфера обмена).",asyncPasteFailedOnParse:"Не удалось вставить.",copyToSystemClipboardFailed:"Не удалось скопировать в буфер обмена."},BHe={selection:"Выделение области",image:"Вставить изображение",rectangle:"Прямоугольник",diamond:"Ромб",ellipse:"Эллипс",arrow:"Cтрелка",line:"Линия",freedraw:"Чертить",text:"Текст",library:"Библиотека",lock:"Сохранять выбранный инструмент активным после рисования",penMode:"Режим пера - предотвращение касания",link:"Добавить/обновить ссылку для выбранной фигуры",eraser:"Ластик",frame:"",magicframe:"",embeddable:"",laser:"Лазерная указка",hand:"Рука (перемещение холста)",extraTools:"",mermaidToExcalidraw:"Из Mermaid в Excalidraw",magicSettings:"Параметры AI"},EHe={canvasActions:"Операции холста",selectedShapeActions:"Операции выбранной фигуры",shapes:"Фигуры"},dHe={canvasPanning:'Чтобы двигать холст, удерживайте колесо мыши или пробел во время перетаскивания, или используйте инструмент "Рука"',linearElement:"Нажмите, чтобы начать несколько точек, перетащите для одной линии",freeDraw:"Нажмите и перетаскивайте, отпустите по завершении",text:"Совет: при выбранном инструменте выделения дважды щёлкните в любом месте, чтобы добавить текст",embeddable:"",text_selected:"Дважды щелкните мышью или нажмите ENTER, чтобы редактировать текст",text_editing:"Нажмите Escape либо Ctrl или Cmd + ENTER для завершения редактирования",linearElementMulti:"Кликните на последней точке или нажмите Escape или Enter чтобы закончить",lockAngle:"Вы можете ограничить угол удерживая SHIFT",resize:`Вы можете ограничить пропорции, удерживая SHIFT во время изменения размеров,
|
||
удерживайте ALT чтобы изменить размер из центра`,resizeImage:`Вы можете свободно изменять размеры, удерживая кнопку SHIFT,
|
||
удерживайте кнопку ALT, чтобы изменять размер относительно центра`,rotate:"Вы можете ограничить углы, удерживая SHIFT во время вращения",lineEditor_info:"Удерживайте CtrlOrCmd и дважды кликните или нажмите CtrlOrCmd + Enter для редактирования точек",lineEditor_pointSelected:`Нажмите Delete для удаления точки (точек),
|
||
Ctrl+D или Cmd+D для дублирования, перетащите для перемещения`,lineEditor_nothingSelected:`Выберите точку для редактирования (удерживайте SHIFT выбора нескольких точек),
|
||
или удерживайте Alt и кликните для добавления новых точек`,placeImage:"Щелкните, чтобы разместить изображение, или нажмите и перетащите, чтобы установить его размер вручную",publishLibrary:"Опубликовать свою собственную библиотеку",bindTextToElement:"Нажмите Enter для добавления текста",deepBoxSelect:"Удерживайте Ctrl или Cmd для глубокого выделения, чтобы предотвратить перетаскивание",eraserRevert:"Удерживайте Alt, чтобы вернуть элементы, отмеченные для удаления",firefox_clipboard_write:'Эта функция может быть включена при изменении значения флага "dom.events.asyncClipboard.clipboardItem" на "true". Чтобы изменить флаги браузера в Firefox, посетите страницу "about:config".',disableSnapping:""},IHe={cannotShowPreview:"Не удается отобразить предпросмотр",canvasTooBig:"Сцена слишком большая.",canvasTooBigTip:"Совет: попробуйте сблизить элементы рисунка."},hHe={headingMain:"Возникла ошибка. Попробуйте <button>перезагрузить страницу.</button>",clearCanvasMessage:"Если перезагрузка страницы не помогла, попробуйте <button>очистить холст.</button>",clearCanvasCaveat:" Текущая работа будет утеряна ",trackedToSentry:"Ошибка с идентификатором {{eventId}} отслеживается в нашей системе.",openIssueMessage:"Для безопасности информация о вашей сцене не включена в ошибку. Если в сцене нет ничего конфиденциального, пожалуйста следуйте нашим <button>баг трекере.</button> Пожалуйста, приложите информацию ниже, скопировав и вставив её, в issue GitHub.",sceneContent:"Содержание сцены:"},QHe={desc_intro:"Вы можете пригласить людей в текущую сцену для совместной работы.",desc_privacy:"Не беспокойтесь — во время сеанса используется сквозное шифрование. Всё, что вы нарисуете, останется конфиденциальным и не будет доступно даже нашему серверу.",button_startSession:"Начать сеанс",button_stopSession:"Завершить сеанс",desc_inProgressIntro:"Сеанс совместной работы запущен.",desc_shareLink:"Поделитесь этой ссылкой со всеми участниками:",desc_exitSession:"Завершив сеанс, вы выйдете из комнаты, но сможете продолжить работать с документом локально. Это не повлияет на работу других пользователей — они смогут продолжить совместную работу с их версией документа.",shareTitle:"Присоединиться к активной совместной сессии на Excalidraw"},pHe={title:"Ошибка"},fHe={disk_title:"Сохранить на диск",disk_details:"Экспортировать данные сцены в файл, из которого можно импортировать позже.",disk_button:"Сохранить в файл",link_title:"Поделитесь ссылкой",link_details:"Экспорт ссылки только для чтения.",link_button:"Экспорт в ссылку",excalidrawplus_description:"Сохраните сцену в ваше рабочее пространство Excalidraw+.",excalidrawplus_button:"Экспорт",excalidrawplus_exportError:"Не удалось экспортировать в Excalidraw+ на данный момент..."},mHe={blog:"Прочитайте наш блог",click:"нажать",deepSelect:"Глубокое выделение",deepBoxSelect:"Глубокое выделение рамкой, и предотвращение перетаскивания",curvedArrow:"Изогнутая стрелка",curvedLine:"Изогнутая линия",documentation:"Документация",doubleClick:"двойной клик",drag:"перетащить",editor:"Редактор",editLineArrowPoints:"Редактировать концы линий/стрелок",editText:"Редактировать текст / добавить метку",github:"Нашли проблему? Отправьте",howto:"Следуйте нашим инструкциям",or:"или",preventBinding:"Предотвращать привязку стрелок",tools:"Инструменты",shortcuts:"Горячие клавиши",textFinish:"Закончить редактирование (текстовый редактор)",textNewLine:"Добавить новую строку (текстовый редактор)",title:"Помощь",view:"Просмотр",zoomToFit:"Отмастштабировать, чтобы поместились все элементы",zoomToSelection:"Увеличить до выделенного",toggleElementLock:"Заблокировать/разблокировать выделение",movePageUpDown:"Сдвинуть страницу вверх/вниз",movePageLeftRight:"Сдвинуть страницу вправо/влево"},DHe={title:"Очистить холст"},yHe={title:"Опубликовать библиотеку",itemName:"Название объекта",authorName:"Имя автора",githubUsername:"Имя пользователя GitHub",twitterUsername:"Имя пользователя в Twitter",libraryName:"Название библиотеки",libraryDesc:"Описание библиотеки",website:"Веб-сайт",placeholder:{authorName:"Ваше имя или имя пользователя",libraryName:"Название вашей библиотеки",libraryDesc:"Описание вашей библиотеки, которое поможет людям понять её назначение",githubHandle:"Имя пользователя GitHub (необязательно), чтобы вы смогли редактировать библиотеку после её отправки на проверку",twitterHandle:"Имя пользователя в Twitter (необязательно), чтобы мы знали, кого упомянуть при продвижении в Twitter",website:"Ссылка на ваш личный или какой-то другой сайт (необязательно)"},errors:{required:"Обязательно",website:"Введите допустимый URL-адрес"},noteDescription:"Отправить вашу библиотеку для включения в <link>хранилище публичных библиотек</link>, чтобы другие люди могли использовать объекты из вашей библиотеки в своих рисунках.",noteGuidelines:"Библиотека должна быть подтверждена вручную. Пожалуйста, прочтите <link>рекомендации</link> перед отправкой. Вам понадобится учетная запись GitHub, чтобы общаться и вносить изменения при необходимости, но это не обязательно.",noteLicense:"Выполняя отправку, вы соглашаетесь с тем, что библиотека будет опубликована под <link>лицензией MIT, </link>, что, вкратце, означает, что каждый может использовать её без ограничений.",noteItems:"Каждый объект в библиотеке должен иметь свое собственное имя, чтобы по нему можно было фильтровать. Следующие объекты библиотеки будут включены:",atleastOneLibItem:"Пожалуйста, выберите хотя бы один объект в библиотеке, чтобы начать",republishWarning:"Примечание: некоторые из выбранных элементов помечены как уже опубликованные/отправленные. Вы должны повторно отправить элементы только при обновлении существующей библиотеки или сдаче работы."},wHe={title:"Библиотека отправлена",content:"Благодарим вас, {{authorName}}. Ваша библиотека была отправлена на проверку. Вы можете отслеживать статус<link>здесь</link>"},bHe={resetLibrary:"Сброс библиотеки",removeItemsFromLib:"Удалить выбранные объекты из библиотеки"},vHe={header:"Экспортировать изображение",label:{withBackground:"Фон",onlySelected:"Только выделенное",darkMode:"Темная тема",embedScene:"Встроить сцену",scale:"Масштаб",padding:"Отступ"},tooltip:{embedScene:"Сцена будет сохранена в PNG/SVG файл так, чтобы всю сцену можно будет восстановить из этого файла. Это увеличит размер файла."},title:{exportToPng:"Экспорт в PNG",exportToSvg:"Экспорт в SVG",copyPngToClipboard:"Скопировать PNG в буфер обмена"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Скопировать в буфер обмена"}},kHe={tooltip:"Ваши данные защищены сквозным (End-to-end) шифрованием. Серверы Excalidraw никогда не получат доступ к ним.",link:"Запись блога о сквозном шифровании в Excalidraw"},FHe={angle:"Угол",element:"Элемент",elements:"Элементы",height:"Высота",scene:"Сцены",selected:"Выбран",storage:"Хранилище",title:"Статистика для ботаников",total:"Всего",version:"Версия",versionCopy:"Копировать",versionNotAvailable:"Версия не доступна",width:"Ширина"},xHe={addedToLibrary:"Добавлено в библиотеку",copyStyles:"Скопированы стили.",copyToClipboard:"Скопировано в буфер обмена.",copyToClipboardAsPng:"{{exportSelection}} скопировано как PNG ({{exportColorScheme}})",fileSaved:"Файл сохранён.",fileSavedToFilename:"Сохранено в {filename}",canvas:"холст",selection:"выделение",pasteAsSingleElement:`Используйте {{shortcut}}, чтобы вставить один объект,
|
||
или вставьте в существующий текстовый редактор`,unableToEmbed:"",unrecognizedLinkFormat:""},SHe={transparent:"Прозрачный",black:"Чёрный",white:"Белый",red:"Красный",pink:"Розовый",grape:"Виноградный",violet:"Фиолетовый",gray:"Серый",blue:"Синий",cyan:"Голубой",teal:"Бирюзовый",green:"Зелёный",yellow:"Жёлтый",orange:"Оранжевый",bronze:"Бронзовый"},LHe={app:{center_heading:"Все ваши данные сохраняются локально в вашем браузере.",center_heading_plus:"Хотите перейти на Excalidraw+?",menuHint:"Экспорт, настройки, языки, ..."},defaults:{menuHint:"Экспорт, настройки и другое...",center_heading:"Диаграммы. Просто.",toolbarHint:"Выберите инструмент и начните рисовать!",helpHint:"Сочетания клавиш и помощь"}},RHe={mostUsedCustomColors:"Часто используемые пользовательские цвета",colors:"Цвета",shades:"Оттенки",hexCode:"Шестнадцатеричный код",noShades:"Нет доступных оттенков для этого цвета"},NHe={action:{exportToImage:{title:"Экспортировать как изображение",button:"Экспортировать как изображение",description:""},saveToDisk:{title:"Сохранить на диск",button:"Сохранить на диск",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Экспорт в Excalidraw+",description:""}},modal:{loadFromFile:{title:"Загрузить из файла",button:"Загрузить из файла",description:""},shareableLink:{title:"Загрузить по ссылке",button:"",description:""}}},GHe={title:"Из Mermaid в Excalidraw",button:"Вставить",description:"",syntax:"Синтаксис Mermaid",preview:"Предпросмотр"},nCr={labels:sHe,library:lHe,buttons:gHe,alerts:cHe,errors:CHe,toolBar:BHe,headings:EHe,hints:dHe,canvasError:IHe,errorSplash:hHe,roomDialog:QHe,errorDialog:pHe,exportDialog:fHe,helpDialog:mHe,clearCanvasDialog:DHe,publishDialog:yHe,publishSuccessDialog:wHe,confirmDialog:bHe,imageExportDialog:vHe,encrypted:kHe,stats:FHe,toast:xHe,colors:SHe,welcomeScreen:LHe,colorPicker:RHe,overwriteConfirm:NHe,mermaid:GHe}});var gKe={};yt(gKe,{alerts:()=>KHe,buttons:()=>HHe,canvasError:()=>WHe,clearCanvasDialog:()=>XHe,colorPicker:()=>oKe,colors:()=>aKe,confirmDialog:()=>eKe,default:()=>oCr,encrypted:()=>rKe,errorDialog:()=>ZHe,errorSplash:()=>qHe,errors:()=>JHe,exportDialog:()=>VHe,headings:()=>PHe,helpDialog:()=>jHe,hints:()=>_He,imageExportDialog:()=>tKe,labels:()=>THe,library:()=>YHe,mermaid:()=>lKe,overwriteConfirm:()=>sKe,publishDialog:()=>$He,publishSuccessDialog:()=>AKe,roomDialog:()=>zHe,stats:()=>iKe,toast:()=>uKe,toolBar:()=>OHe,welcomeScreen:()=>nKe});var THe,YHe,HHe,KHe,JHe,OHe,PHe,_He,WHe,qHe,zHe,ZHe,VHe,jHe,XHe,$He,AKe,eKe,tKe,rKe,iKe,uKe,aKe,nKe,oKe,sKe,lKe,oCr;var cKe=P(()=>{qt();THe={paste:"අලවන්න",pasteAsPlaintext:"",pasteCharts:"ප්රස්ථාරය",selectAll:"සියල්ලම",multiSelect:"තෝරා ගැනීමට අංගය එකතු කරන්න",moveCanvas:"කැන්වසය චලනය කරන්න",cut:"කපන්න",copy:"පිටපත් කරන්න",copyAsPng:"PNG ලෙස පිටපත් කරන්න",copyAsSvg:"SVG ලෙස පිටපත් කරන්න",copyText:"",copySource:"",convertToCode:"",bringForward:"ඉදිරියට ගෙන්න",sendToBack:"පසුපසටම ගෙනියන්න",bringToFront:"ඉදිරියටම ගෙන්න",sendBackward:"පසුපසට ගෙනියන්න",delete:"මකන්න",copyStyles:"",pasteStyles:"",stroke:"",background:"",fill:"",strokeWidth:"",strokeStyle:"",strokeStyle_solid:"",strokeStyle_dashed:"",strokeStyle_dotted:"",sloppiness:"",opacity:"",textAlign:"",edges:"",sharp:"",round:"",arrowheads:"",arrowhead_none:"",arrowhead_arrow:"",arrowhead_bar:"",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"",fontFamily:"",addWatermark:"",handDrawn:"",normal:"",code:"",small:"",medium:"",large:"",veryLarge:"ඉතා විශාල",solid:"විශාල",hachure:"මධ්යම",zigzag:"",crossHatch:"",thin:"කෙට්ටු",bold:"තද",left:"වම",center:"මැද",right:"දකුණ",extraBold:"ඉතා තද",architect:"වාස්තුවේදීයා",artist:"කලාකරු",cartoonist:"සැකිලිරූකරු",fileTitle:"ගොනු නාමය",colorPicker:"පාට තෝරකය",canvasColors:"",canvasBackground:"කැන්වස පසුබිම",drawingCanvas:"චිත්රක කැන්වසය",layers:"ලේයර",actions:"ක්රියාකාරකම",language:"භාෂාව ",liveCollaboration:"",duplicateSelection:"",untitled:"",name:"නම",yourName:"",madeWithExcalidraw:"",group:"",ungroup:"",collaborators:"",showGrid:"",addToLibrary:"",removeFromLibrary:"",libraryLoadingMessage:"",libraries:"",loadingScene:"",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},YHe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},HHe={clearReset:"",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"",selectLanguage:"",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"",done:"",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},KHe={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},JHe={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},OHe={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},PHe={canvasActions:"",selectedShapeActions:"",shapes:""},_He={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},WHe={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},qHe={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},zHe={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},ZHe={title:""},VHe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},jHe={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},XHe={title:""},$He={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},AKe={title:"",content:""},eKe={resetLibrary:"",removeItemsFromLib:""},tKe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},rKe={tooltip:"",link:""},iKe={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},uKe={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},aKe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},nKe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},oKe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},sKe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},lKe={title:"",button:"",description:"",syntax:"",preview:""},oCr={labels:THe,library:YHe,buttons:HHe,alerts:KHe,errors:JHe,toolBar:OHe,headings:PHe,hints:_He,canvasError:WHe,errorSplash:qHe,roomDialog:zHe,errorDialog:ZHe,exportDialog:VHe,helpDialog:jHe,clearCanvasDialog:XHe,publishDialog:$He,publishSuccessDialog:AKe,confirmDialog:eKe,imageExportDialog:tKe,encrypted:rKe,stats:iKe,toast:uKe,colors:aKe,welcomeScreen:nKe,colorPicker:oKe,overwriteConfirm:sKe,mermaid:lKe}});var HKe={};yt(HKe,{alerts:()=>dKe,buttons:()=>EKe,canvasError:()=>fKe,clearCanvasDialog:()=>vKe,colorPicker:()=>MKe,colors:()=>GKe,confirmDialog:()=>xKe,default:()=>sCr,encrypted:()=>LKe,errorDialog:()=>yKe,errorSplash:()=>mKe,errors:()=>IKe,exportDialog:()=>wKe,headings:()=>QKe,helpDialog:()=>bKe,hints:()=>pKe,imageExportDialog:()=>SKe,labels:()=>CKe,library:()=>BKe,mermaid:()=>YKe,overwriteConfirm:()=>TKe,publishDialog:()=>kKe,publishSuccessDialog:()=>FKe,roomDialog:()=>DKe,stats:()=>RKe,toast:()=>NKe,toolBar:()=>hKe,welcomeScreen:()=>UKe});var CKe,BKe,EKe,dKe,IKe,hKe,QKe,pKe,fKe,mKe,DKe,yKe,wKe,bKe,vKe,kKe,FKe,xKe,SKe,LKe,RKe,NKe,GKe,UKe,MKe,TKe,YKe,sCr;var KKe=P(()=>{qt();CKe={paste:"Vložiť",pasteAsPlaintext:"Vložiť ako obyčajný text",pasteCharts:"Vložiť grafy",selectAll:"Vybrať všetko",multiSelect:"Pridať prvok do výberu",moveCanvas:"Pohyb plátna",cut:"Vystrihnúť",copy:"Kopírovať",copyAsPng:"Kopírovať do schránky ako PNG",copyAsSvg:"Kopírovať do schránky ako SVG",copyText:"Kopírovať do schránky ako text",copySource:"Kopírovať kód do schránky",convertToCode:"Konvertovať na kód",bringForward:"Presunúť o úroveň dopredu",sendToBack:"Presunúť dozadu",bringToFront:"Presunúť dopredu",sendBackward:"Presunúť o úroveň dozadu",delete:"Vymazať",copyStyles:"Kopírovať štýly",pasteStyles:"Vložiť štýly",stroke:"Obrys",background:"Pozadie",fill:"Výplň",strokeWidth:"Hrúbka obrysu",strokeStyle:"Štýl obrysu",strokeStyle_solid:"Plný",strokeStyle_dashed:"Čiarkovaný",strokeStyle_dotted:"Bodkovaný",sloppiness:"Štylizácia",opacity:"Priehľadnosť",textAlign:"Zarovnanie textu",edges:"Okraje",sharp:"Ostré",round:"Zaokrúhlené",arrowheads:"Zakončenie šípky",arrowhead_none:"Žiadne",arrowhead_arrow:"Šípka",arrowhead_bar:"Čiara",arrowhead_circle:"Kruh",arrowhead_circle_outline:"Kruh (obrys)",arrowhead_triangle:"Trojuholník",arrowhead_triangle_outline:"Trojuholník (obrys)",arrowhead_diamond:"Diamant",arrowhead_diamond_outline:"Diamant (obrys)",fontSize:"Veľkosť písma",fontFamily:"Písmo",addWatermark:'Pridať "Vytvorené s Excalidraw"',handDrawn:"Ručne písané",normal:"Normálne",code:"Kód",small:"Malé",medium:"Stredné",large:"Veľké",veryLarge:"Veľmi veľké",solid:"Plná",hachure:"Šrafovaná",zigzag:"Cik-cak",crossHatch:"Mriežkovaná",thin:"Tenká",bold:"Hrubá",left:"Doľava",center:"Na stred",right:"Doprava",extraBold:"Veľmi hrubá",architect:"Architekt",artist:"Umelec",cartoonist:"Ilustrátor",fileTitle:"Názov súboru",colorPicker:"Výber farby",canvasColors:"Použité na plátne",canvasBackground:"Pozadie plátna",drawingCanvas:"Kresliace plátno",layers:"Vrstvy",actions:"Akcie",language:"Jazyk",liveCollaboration:"Živá spolupráca...",duplicateSelection:"Duplikovať",untitled:"Bez názvu",name:"Meno",yourName:"Vaše meno",madeWithExcalidraw:"Vytvorené s Excalidraw",group:"Zoskupiť",ungroup:"Zrušiť zoskupenie",collaborators:"Spolupracovníci",showGrid:"Zobraziť mriežku",addToLibrary:"Pridať do knižnice",removeFromLibrary:"Odstrániť z knižnice",libraryLoadingMessage:"Načítavanie knižnice…",libraries:"Prehliadať knižnice",loadingScene:"Načítavanie scény…",align:"Zarovnanie",alignTop:"Zarovnať nahor",alignBottom:"Zarovnať nadol",alignLeft:"Zarovnať doľava",alignRight:"Zarovnať doprava",centerVertically:"Zarovnať zvislo na stred",centerHorizontally:"Zarovnať vodorovne na stred",distributeHorizontally:"Rozmiestniť vodorovne",distributeVertically:"Rozmiestniť zvisle",flipHorizontal:"Prevrátiť vodorovne",flipVertical:"Prevrátiť zvislo",viewMode:"Režim zobrazenia",share:"Zdieľať",showStroke:"Zobraziť výber farby pre obrys",showBackground:"Zobraziť výber farby pre pozadie",toggleTheme:"Prepnúť tému",personalLib:"Moja knižnica",excalidrawLib:"Excalidraw knižnica",decreaseFontSize:"Zmenšiť veľkosť písma",increaseFontSize:"Zväčšiť veľkosť písma",unbindText:"Zrušiť previazanie textu",bindText:"Previazať text s kontajnerom",createContainerFromText:"Zabaliť text do kontajneru",link:{edit:"Upraviť odkaz",editEmbed:"Editovať a zapustiť odkaz",create:"Vytvoriť odkaz",createEmbed:"Vytvoriť a zapustiť odkaz",label:"Odkaz",labelEmbed:"Zapustiť odkaz",empty:"Nie je nastavený žiaden odkaz"},lineEditor:{edit:"Upraviť čiaru",exit:"Ukončiť editovanie čiary"},elementLock:{lock:"Zamknúť",unlock:"Odomknúť",lockAll:"Zamknúť všetko",unlockAll:"Odomknúť všetko"},statusPublished:"Zverejnené",sidebarLock:"Nechať bočný panel otvorený",selectAllElementsInFrame:"Vybrať všetky prvky v ráme",removeAllElementsFromFrame:"Odstrániť všetky prvky z rámu",eyeDropper:"Vybrať farbu z plátna",textToDiagram:"Text na diagram",prompt:"Inštrukcia"},BKe={noItems:"Zatiaľ neboli pridané žiadne položky...",hint_emptyLibrary:"Vyberte položku z plátna pre jej pridanie do knižnice alebo použite knižnicu z verejného zoznamu knižníc nižšie.",hint_emptyPrivateLibrary:"Vyberte položku z plátna pre jej pridanie do knižnice."},EKe={clearReset:"Obnoviť plátno",exportJSON:"Exportovať do súboru",exportImage:"Exportovať obrázok...",export:"Uložiť do...",copyToClipboard:"Kopírovať do schránky",save:"Uložiť do aktuálneho súboru",saveAs:"Uložiť ako",load:"Otvoriť",getShareableLink:"Získať odkaz na zdieľanie",close:"Zavrieť",selectLanguage:"Zvoliť jazyk",scrollBackToContent:"Vrátiť sa späť na obsah",zoomIn:"Priblížiť",zoomOut:"Oddialiť",resetZoom:"Obnoviť priblíženie",menu:"Ponuka",done:"Hotovo",edit:"Upraviť",undo:"Späť",redo:"Znova",resetLibrary:"Obnoviť knižnicu",createNewRoom:"Vytvoriť novú miestnosť",fullScreen:"Celá obrazovka",darkMode:"Tmavý režim",lightMode:"Svetlý režim",zenMode:"Režim zen",objectsSnapMode:"Prichytiť k objektom",exitZenMode:"Zrušiť režim zen",cancel:"Zrušiť",clear:"Vymazať",remove:"Odstrániť",embed:"Prepnúť zapustenie",publishLibrary:"Uverejniť",submit:"Potvrdiť",confirm:"Potvrdiť",embeddableInteractionButton:"Kliknite pre interakciu"},dKe={clearReset:"Týmto sa vyčistí celé plátno. Ste si istí?",couldNotCreateShareableLink:"Nepodarilo sa vytvoriť odkaz na zdieľanie.",couldNotCreateShareableLinkTooBig:"Nepodarilo sa vytvoriť odkaz na zdieľanie: scéna je príliš veľká",couldNotLoadInvalidFile:"Nepodarilo sa načítať nevalidný súbor",importBackendFailed:"Nepdarilo sa importovanie zo serveru.",cannotExportEmptyCanvas:"Nie je možné exportovať prázdne plátno.",couldNotCopyToClipboard:"Kopírovanie do schránky sa nepodarilo.",decryptFailed:"Nepodarilo sa rozšifrovať údaje.",uploadedSecurly:"Nahratie je zabezpečené end-to-end šifrovaním, takže Excalidraw server a tretie strany nedokážu prečítať jeho obsah.",loadSceneOverridePrompt:"Nahratie externej kresby nahradí existujúci obsah. Prajete si pokračovať?",collabStopOverridePrompt:`Ukončenie schôdze nahradí vašu predchádzajúcu lokálne uloženú scénu. Ste si istý?
|
||
|
||
(Ak si chcete ponechať lokálnu scénu, jednoducho iba zavrite kartu prehliadača.)`,errorAddingToLibrary:"Nepodarilo sa pridať položku do knižnice",errorRemovingFromLibrary:"Nepodarilo sa odstrániť položku z knižnice",confirmAddLibrary:"Týmto sa pridá {{numShapes}} tvar(ov) do vašej knižnice. Ste si istí?",imageDoesNotContainScene:"Tento obrázok neobsahuje žiadne údaje scény. Zvolili ste možnosť zahrnúť scénu počas exportu?",cannotRestoreFromImage:"Nepodarilo sa obnoviť scénu z tohto obrázkového súboru",invalidSceneUrl:"Nepodarilo sa načítať scénu z poskytnutej URL. Je nevalidná alebo neobsahuje žiadne validné Excalidraw JSON dáta.",resetLibrary:"Týmto vyprázdnite vašu knižnicu. Ste si istý?",removeItemsFromsLibrary:"Odstrániť {{count}} položiek z knižnice?",invalidEncryptionKey:"Šifrovací kľúč musí mať 22 znakov. Živá spolupráca je vypnutá.",collabOfflineWarning:`Internetové pripojenie nie je dostupné.
|
||
Vaše zmeny nebudú uložené!`},IKe={unsupportedFileType:"Nepodporovaný typ súboru.",imageInsertError:"Nepodarilo sa vložiť obrázok. Skúste to znova neskôr...",fileTooBig:"Súbor je príliš veľký. Maximálna povolená veľkosť je {{maxSize}}.",svgImageInsertError:"Nepodarilo sa vložiť SVG obrázok. SVG formát je pravdepodobne nevalidný.",failedToFetchImage:"Načítanie obrázka zlyhalo.",invalidSVGString:"Nevalidné SVG.",cannotResolveCollabServer:"Nepodarilo sa pripojiť ku kolaboračnému serveru. Prosím obnovte stránku a skúste to znovu.",importLibraryError:"Nepodarilo sa načítať knižnicu",collabSaveFailed:"Uloženie do databázy sa nepodarilo. Ak tento problém pretrváva uložte si váš súbor lokálne aby ste nestratili vašu prácu.",collabSaveFailed_sizeExceeded:"Uloženie do databázy sa nepodarilo, pretože veľkosť plátna je príliš veľká. Uložte si váš súbor lokálne aby ste nestratili vašu prácu.",imageToolNotSupported:"Obrázky sú vypnuté.",brave_measure_text_error:{line1:"Vyzerá to, že používate prehliadač Brave so zapnutým nastavením pre <bold>agresívne blokovanie</bold>.",line2:"To môže spôsobiť nesprávne zobrazenie <bold>textových prvkov</bold> vo vašej kresbe.",line3:"Dôrazne odporúčame vypnutie toho nastavenia. Môžete tak spraviť vykonaním <link>týchto krokov</link>.",line4:"Ak vypnutie toho nastavenia nevyrieši problém so zobrazením textových prvkov, prosím ohláste <issueLink>problém</issueLink> na našom GitHub-e alebo nám napíšte na náš <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Zapustené prvky nie je možné pridať do knižnice.",iframe:"Vložené rámce IFrame nie je možné pridať do knižnice.",image:"Podpora pre pridávanie obrázkov do knižnice bude dostupná už čoskoro!"},asyncPasteFailedOnRead:"Vloženie sa nepodarilo (nebolo možné prečítať obsah schránky).",asyncPasteFailedOnParse:"Vloženie sa nepodarilo.",copyToSystemClipboardFailed:"Kopírovanie do schránky sa nepodarilo."},hKe={selection:"Výber",image:"Vložiť obrázok",rectangle:"Obdĺžnik",diamond:"Diamant",ellipse:"Elipsa",arrow:"Šípka",line:"Čiara",freedraw:"Kresliť",text:"Text",library:"Knižnica",lock:"Nechať zvolený nástroj aktívny po skončení kreslenia",penMode:"Režim pera – zabrániť dotyku",link:"Pridať/ Upraviť odkaz pre vybraný tvar",eraser:"Guma",frame:"Nástroj rám",magicframe:"Drôtený model na kód",embeddable:"Web Embed",laser:"Laserový ukazovateľ",hand:"Ruka (nástroj pre pohyb plátna)",extraTools:"Ďalšie nástroje",mermaidToExcalidraw:"Mermaid do Excalidraw",magicSettings:"AI nastavenia"},QKe={canvasActions:"Akcie plátna",selectedShapeActions:"Akcie tvarov z výberu",shapes:"Tvary"},pKe={canvasPanning:"Pre pohyb plátna podržte koliesko myši alebo medzerník počas ťahania, alebo použite nástroj ruka",linearElement:"Kliknite na vloženie viacerých bodov, potiahnite na vytvorenie jednej priamky",freeDraw:"Kliknite a ťahajte, pustite na ukončenie",text:"Tip: text môžete pridať aj dvojklikom kdekoľvek, ak je zvolený nástroj výber",embeddable:"Kliknite a ťahajte pre zapustenie webovej stránky",text_selected:"Použite dvojklik alebo stlačte Enter na editáciu textu",text_editing:"Stlačte Escape alebo CtrlOrCmd+ENTER na ukončenie editovania",linearElementMulti:"Kliknite na počiatočný bod alebo stlačte Escape alebo Enter na ukončenie",lockAngle:"Počas rotácie obmedzíte uhol podržaním SHIFT",resize:"Počas zmeny veľkosti zachováte proporcie podržaním SHIFT,\\npodržaním ALT meníte veľkosť so zachovaním stredu",resizeImage:"Podržte SHIFT pre voľnú zmenu veľkosti, podržte ALT pre zmenu veľkosti od stredu",rotate:"Počas rotácie obmedzíte uhol podržaním SHIFT",lineEditor_info:"Podržte CtrlOrCmd a kliknite dva krát alebo stlačte CtrlOrCmd + Enter pre editáciu bodov",lineEditor_pointSelected:"Stačte Delete na vymazanie bodu (bodov), CtrlOrCmd+D na duplikovanie, alebo potiahnite na presunutie",lineEditor_nothingSelected:"Zvoľte bod na upravovanie (podržte SHIFT pre zvolenie viacerých bodov) alebo podržte Alt a kliknite na pridanie nového bodu",placeImage:"Kliknite pre umiestnenie obrázka alebo kliknite a ťahajte pre zmenu jeho veľkosti",publishLibrary:"Uverejniť vašu knižnicu",bindTextToElement:"Stlačte enter na pridanie textu",deepBoxSelect:"Podržte CtrlOrCmd na výber v skupine alebo zamedzeniu poťiahnutia",eraserRevert:"Podržte Alt pre prehodenie položiek určených na vymazanie",firefox_clipboard_write:'Táto sa funkcionalita sa dá zapnúť nastavením "dom.events.asyncClipboard.clipboardItem" na "true". Pre zmenu nastavení vo Firefox-e otvorte stránku "about:config".',disableSnapping:"Podržte CtrlOrCmd pre vypnutie prichytávania"},fKe={cannotShowPreview:"Nie je možné zobraziť náhľad plátna",canvasTooBig:"Plátno je možno príliš veľké.",canvasTooBigTip:"Tip: skúste presunúť najvzdialenejšie prvky bližšie k sebe."},mKe={headingMain:"Nastala chyba. Vyskúšajte <button>obnoviť stránku.</button>",clearCanvasMessage:"Ak obnovenie stránky nepomáha, vyskúšajte <button>vyčistiť plátno.</button>",clearCanvasCaveat:" To bude mať za následok stratu práce ",trackedToSentry:"Chyba s identifikátorom {{eventId}} bola zaznamenaná v našom systéme.",openIssueMessage:"Boli sme veľmi opatrní, aby informácie vašej scény neboli v chybe zaznamenané. Ak vaša scéna nie je súkromná, prosím zvážte pokračovanie na naše <button>hlásenie chýb.</button> Prosím zahrňte informácie nižšie pomocou kopírovania a prilepenia do GitHub issue.",sceneContent:"Obsah scény:"},DKe={desc_intro:"Pozvite niekoho do svojej aktuálnej scény a pracujte spoločne.",desc_privacy:"Nemajte obavy, schôdza používa end-to-end šifrovanie, takže všetko čo nakreslíte je súkromné. Dokonca, ani náš server dedokáže prečítať, čo ste vytvorili.",button_startSession:"Začať schôdzu",button_stopSession:"Ukončiť schôdzu",desc_inProgressIntro:"Práve prebieha živá schôdza.",desc_shareLink:"Zdieľajte tento odkaz s osobou, s ktorou chcete spolupracovať:",desc_exitSession:"Ukončenie schôdze vás odpojí z miestnosti, avšak naďalej budete môcť pokračovať v práci na scéne lokálne. Toto neovplyvní ostatných spolupracovníkov a stále budú môcť spolupracovať na ich verzii.",shareTitle:"Pripojiť sa k živej schôdzi na Excalidraw"},yKe={title:"Chyba"},wKe={disk_title:"Uložiť na disk",disk_details:"Exportovať údaje scény do súboru, z ktorého môžu byť neskôr importované.",disk_button:"Uložiť do súboru",link_title:"Odkaz na zdieľanie",link_details:"Exportovať ako odkaz iba na čítanie.",link_button:"Exportovať ako odkaz",excalidrawplus_description:"Uložiť scénu do vášho Excalidraw+ pracovného priestoru.",excalidrawplus_button:"Exportovať",excalidrawplus_exportError:"Nepodarilo sa vykonať export do Excalidraw+..."},bKe={blog:"Prečítajte si náš blog",click:"kliknutie",deepSelect:"Výber v skupine",deepBoxSelect:"Výber v skupine alebo zamedzenie poťiahnutia",curvedArrow:"Zakrivená šípka",curvedLine:"Zakrivená čiara",documentation:"Dokumentácia",doubleClick:"dvojklik",drag:"potiahnutie",editor:"Editovanie",editLineArrowPoints:"Editácia bodov čiary/šípky",editText:"Editácia textu / pridanie štítku",github:"Objavili ste problém? Nahláste ho",howto:"Postupujte podľa naších návodov",or:"alebo",preventBinding:"Zakázať pripájanie šípky",tools:"Nástroje",shortcuts:"Klávesové skratky",textFinish:"Ukončenie editovania (text editor)",textNewLine:"Vložiť nový riadok (text editor)",title:"Pomocník",view:"Zobrazenie",zoomToFit:"Priblížiť aby boli zahrnuté všetky prvky",zoomToSelection:"Priblížiť na výber",toggleElementLock:"Zamknúť/odomknúť vybrané",movePageUpDown:"Posunúť stranu hore/dole",movePageLeftRight:"Posunúť stranu doľava/doprava"},vKe={title:"Vyčistiť plátno"},kKe={title:"Uverejniť knižnicu",itemName:"Názov položky",authorName:"Meno autora",githubUsername:"Github užívateľské meno",twitterUsername:"Twitter užívateľské meno",libraryName:"Názov knižnice",libraryDesc:"Popis knižnice",website:"Webová stránka",placeholder:{authorName:"Vaše meno alebo užívateľské meno",libraryName:"Názov vašej knižnice",libraryDesc:"Popis vašej knižnice, ktorý ostatným pomôže porozumieť jej vhodnému použitiu",githubHandle:"GitHub užívateľské meno (nepovinné), aby ste mohli robiť úpravy po tom, čo bude knižnica uverejnená na schválenie",twitterHandle:"Twitter užívateľské meno (nepovinné), aby sme vedeli komu pripísať zásluhu pri propagovaní cez Twitter",website:"Odkaz na vašu osobnú webovú stránku alebo niekam inam (nepovinné)"},errors:{required:"Povinné",website:"Zadajte platnú adresu URL"},noteDescription:"Uverejnite vašu knižnicu vo <link>verejnom zozname knižníc</link>aby ju aj ostatní mohli použiť v ich náčrtoch.",noteGuidelines:"Knižnica musí byť najprv manuálne schválená. Prosím prečítajte si <link>pokyny</link> pred uverejnením. Budete potrebovať Github účet na komunikáciu a vykonanie zmien, ak budú potrebné, avšak nie je to úplne povinné.",noteLicense:"Potvrdením súhlasíte, že knižnica bude zverejnená s <link>MIT licenciou, </link>čo v skratke znamená, že ju môže použiť hocikto bez obmedzení.",noteItems:"Každá položka v knižnici musí mať svoje vlastné meno, aby sa dala vyhľadať. Súčasťou knižnice budú nasledujúce položky:",atleastOneLibItem:"Začnite prosím zvolením aspoň jednej položky z knižnice",republishWarning:"Poznámka: Niektoré z vybraných položiek sú už označené ako zverejnené. Ich znovu uverejnenie by ste mali vykovať iba vtedy ak aktualizujete už existujúcu knižnicu alebo požiadavku na uverejnenie."},FKe={title:"Knižnica uverejnená",content:"Ďakujeme vám {{authorName}}. Vaša knižnica bola uverejnená na posúdenie. Stav môžete skontrolovať<link>tu</link>"},xKe={resetLibrary:"Obnoviť knižnicu",removeItemsFromLib:"Odstrániť zvolené položky z knižnice"},SKe={header:"Exportovať obrázok",label:{withBackground:"Pozadie",onlySelected:"Iba vybrané",darkMode:"Tmavý režim",embedScene:"Zahrnúť scénu",scale:"Mierka",padding:"Odsadenie"},tooltip:{embedScene:`Údaje scény budú uložené do exportovaného PNG/SVG súboru, takže scéna z neho môže byť opäť obnovená.
|
||
Bude to mať za následok zvýšenie veľkosti súboru.`},title:{exportToPng:"Exportovať do PNG",exportToSvg:"Exportovať do SVG",copyPngToClipboard:"Kopírovať PNG do schránky"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopírovať do schránky"}},LKe={tooltip:"Vaše kresby používajú end-to-end šifrovanie, takže ich Excalidraw server nedokáže prečítať.",link:"Blog o end-to-end šifrovaní v Excalidraw"},RKe={angle:"Uhol",element:"Prvok",elements:"Prvky",height:"Výška",scene:"Scéna",selected:"Vybrané",storage:"Úložisko",title:"Štatistiky",total:"Celkom",version:"Verzia",versionCopy:"Kliknutím skopírujete",versionNotAvailable:"Verzia nie je k dispozícii",width:"Šírka"},NKe={addedToLibrary:"Pridané do knižnice",copyStyles:"Štýly skopírované.",copyToClipboard:"Skopírované do schránky.",copyToClipboardAsPng:`Kopírovanie {{exportSelection}} do schránky ako PNG prebehlo úspešne
|
||
({{exportColorScheme}})`,fileSaved:"Súbor uložený.",fileSavedToFilename:"Uložený ako {filename}",canvas:"plátna",selection:"výberu",pasteAsSingleElement:"Použitím {{shortcut}} vložte ako samostatný prvok alebo vložte do existujúceho editovaného textu",unableToEmbed:"Zapustenie tejto URL nie je povolené. Vytvorte issue na GitHub-e a požiadajte povolenie tejto URL",unrecognizedLinkFormat:"Odkaz, ktorý sa snažíte zapustiť nie je v očakávanom formáte. Prosím skúste vložiť 'odkaz na zdieľanie' poskytnutý zdrojovou webovou stránkou"},GKe={transparent:"Priehľadná",black:"Čierna",white:"Biela",red:"Červená",pink:"Ružová",grape:"Hroznová fialová",violet:"Fialová",gray:"Sivá",blue:"Modrá",cyan:"Azúrová",teal:"Modrozelená",green:"Zelená",yellow:"Žltá",orange:"Oranžová",bronze:"Bronzová"},UKe={app:{center_heading:"Všetky vaše dáta sú uložené lokálne vo vašom prehliadači.",center_heading_plus:"Chceli ste namiesto toho prejsť do Excalidraw+?",menuHint:"Exportovanie, nastavenia, jazyky, ..."},defaults:{menuHint:"Exportovanie, nastavenia a ďalšie...",center_heading:"Diagramy. Jednoducho.",toolbarHint:"Zvoľte nástroj a začnite kresliť!",helpHint:"Klávesové skratky a pomocník"}},MKe={mostUsedCustomColors:"Najpoužívanejšie vlastné farby",colors:"Farby",shades:"Odtiene",hexCode:"Hex kód",noShades:"Pre túto farbu nie sú dostupné žiadne odtiene"},TKe={action:{exportToImage:{title:"Exportovať ako obrázok",button:"Exportovať ako obrázok",description:"Exportovať údaje scény ako obrázok, z ktorého môžu byť neskôr importované."},saveToDisk:{title:"Uložiť na disk",button:"Uložiť na disk",description:"Exportovať údaje scény do súboru, z ktorého môžu byť neskôr importované."},excalidrawPlus:{title:"Excalidraw+",button:"Exportovať ako Excalidraw+",description:"Uložiť scénu do vášho Excalidraw+ pracovného priestoru."}},modal:{loadFromFile:{title:"Načítať zo súboru",button:"Načítať zo súboru",description:"Načítanie zo súboru <bold>nahradí váš existujúci obsah</bold>.<br></br>Vašu kresbu môžete zálohovať jednou z nižšie uvedených možností."},shareableLink:{title:"Načítať z odkazu",button:"Nahradiť môj obsah",description:"Načítanie externej kresby <bold>nahradí váš existujúci obsah</bold>.<br></br>Vašu kresbu môžete zálohovať jednou z nižšie uvedených možností."}}},YKe={title:"Mermaid do Excalidraw",button:"Vložiť",description:"Aktuálne sú podporované iba <flowchartLink>vývojové diagramy</flowchartLink>, <sequenceLink>sekvenčné diagramy</sequenceLink> a <classLink>diagramy tried</classLink>. Ostatné typy budú v Excalidraw vykreslené ako obrázky.",syntax:"Mermaid syntax",preview:"Ukážka"},sCr={labels:CKe,library:BKe,buttons:EKe,alerts:dKe,errors:IKe,toolBar:hKe,headings:QKe,hints:pKe,canvasError:fKe,errorSplash:mKe,roomDialog:DKe,errorDialog:yKe,exportDialog:wKe,helpDialog:bKe,clearCanvasDialog:vKe,publishDialog:kKe,publishSuccessDialog:FKe,confirmDialog:xKe,imageExportDialog:SKe,encrypted:LKe,stats:RKe,toast:NKe,colors:GKe,welcomeScreen:UKe,colorPicker:MKe,overwriteConfirm:TKe,mermaid:YKe}});var EJe={};yt(EJe,{alerts:()=>_Ke,buttons:()=>PKe,canvasError:()=>VKe,clearCanvasDialog:()=>tJe,colorPicker:()=>cJe,colors:()=>lJe,confirmDialog:()=>uJe,default:()=>lCr,encrypted:()=>nJe,errorDialog:()=>$Ke,errorSplash:()=>jKe,errors:()=>WKe,exportDialog:()=>AJe,headings:()=>zKe,helpDialog:()=>eJe,hints:()=>ZKe,imageExportDialog:()=>aJe,labels:()=>JKe,library:()=>OKe,mermaid:()=>BJe,overwriteConfirm:()=>CJe,publishDialog:()=>rJe,publishSuccessDialog:()=>iJe,roomDialog:()=>XKe,stats:()=>oJe,toast:()=>sJe,toolBar:()=>qKe,welcomeScreen:()=>gJe});var JKe,OKe,PKe,_Ke,WKe,qKe,zKe,ZKe,VKe,jKe,XKe,$Ke,AJe,eJe,tJe,rJe,iJe,uJe,aJe,nJe,oJe,sJe,lJe,gJe,cJe,CJe,BJe,lCr;var dJe=P(()=>{qt();JKe={paste:"Prilepi",pasteAsPlaintext:"Prilepi kot navadno besedilo",pasteCharts:"Prilepi grafikone",selectAll:"Izberi vse",multiSelect:"Dodaj element v izbor",moveCanvas:"Premakni platno",cut:"Izreži",copy:"Kopiraj",copyAsPng:"Kopiraj v odložišče kot PNG",copyAsSvg:"Kopiraj v odložišče kot SVG",copyText:"Kopiraj v odložišče kot besedilo",copySource:"Kopiraj vir v odložišče",convertToCode:"Pretvori v kodo",bringForward:"Postavi naprej",sendToBack:"Pomakni v ozadje",bringToFront:"Pomakni v ospredje",sendBackward:"Pošlji nazaj",delete:"Izbriši",copyStyles:"Kopiraj slog",pasteStyles:"Prilepi slog",stroke:"Poteza",background:"Ozadje",fill:"Polnilo",strokeWidth:"Debelina poteze",strokeStyle:"Slog poteze",strokeStyle_solid:"Polna",strokeStyle_dashed:"Črtkana",strokeStyle_dotted:"Pikasta",sloppiness:"Površnost",opacity:"Prekrivnost",textAlign:"Poravnava besedila",edges:"Robovi",sharp:"Ostri",round:"Okrogli",arrowheads:"Puščice",arrowhead_none:"Brez",arrowhead_arrow:"Puščica",arrowhead_bar:"Palica",arrowhead_circle:"Krog",arrowhead_circle_outline:"Krog (oris)",arrowhead_triangle:"Trikotnik",arrowhead_triangle_outline:"Trikotnik (oris)",arrowhead_diamond:"Diamant",arrowhead_diamond_outline:"Diamant (oris)",fontSize:"Velikost pisave",fontFamily:"Družina pisave",addWatermark:'Dodaj "Izdelano z Excalidraw"',handDrawn:"Ročno narisano",normal:"Običajno",code:"Koda",small:"Majhna",medium:"Srednja",large:"Velika",veryLarge:"Zelo velika",solid:"Polno",hachure:"Šrafura",zigzag:"Cikcak",crossHatch:"Križno",thin:"Tanko",bold:"Krepko",left:"Levo",center:"Sredina",right:"Desno",extraBold:"Ekstra krepko",architect:"Arhitekt",artist:"Umetnik",cartoonist:"Risar",fileTitle:"Ime datoteke",colorPicker:"Izbor barve",canvasColors:"Uporabljeno na platnu",canvasBackground:"Ozadje platna",drawingCanvas:"Platno za risanje",layers:"Plasti",actions:"Dejanja",language:"Jezik",liveCollaboration:"Sodelovanje v živo...",duplicateSelection:"Podvoji",untitled:"Neimenovana",name:"Ime",yourName:"Vaše ime",madeWithExcalidraw:"Izdelano z Excalidraw",group:"Združi izbor",ungroup:"Razdruži izbor",collaborators:"Sodelavci",showGrid:"Prikaži mrežo",addToLibrary:"Dodaj v knjižnico",removeFromLibrary:"Odstrani iz knjižnice",libraryLoadingMessage:"Nalaganje knjižnice ...",libraries:"Brskaj po knjižnicah",loadingScene:"Nalaganje scene...",align:"Poravnava",alignTop:"Poravnaj na vrh",alignBottom:"Poravnaj na dno",alignLeft:"Poravnaj levo",alignRight:"Poravnaj desno",centerVertically:"Navpično na sredini",centerHorizontally:"Vodoravno na sredini",distributeHorizontally:"Porazdeli vodoravno",distributeVertically:"Porazdeli navpično",flipHorizontal:"Obrni vodoravno",flipVertical:"Obrni navpično",viewMode:"Način ogleda",share:"Deli",showStroke:"Prikaži izbirnik barv poteze",showBackground:"Prikaži izbirnik barv ozadja",toggleTheme:"Obrni temo",personalLib:"Osebna knjižnica",excalidrawLib:"Knjižnica Excalidraw",decreaseFontSize:"Zmanjšaj velikost pisave",increaseFontSize:"Povečaj velikost pisave",unbindText:"Veži besedilo",bindText:"Veži besedilo na element",createContainerFromText:"Zavij besedilo v vsebnik",link:{edit:"Uredi povezavo",editEmbed:"Uredi povezavo in vdelaj",create:"Ustvari povezavo",createEmbed:"Ustvari povezavo in vdelaj",label:"Povezava",labelEmbed:"Povezava in vdelovanje",empty:"Povezava ni nastavljena"},lineEditor:{edit:"Uredi črto",exit:"Zapri urejanje črte"},elementLock:{lock:"Zakleni",unlock:"Odkleni",lockAll:"Zakleni vse",unlockAll:"Odkleni vse"},statusPublished:"Objavljeno",sidebarLock:"Obdrži stransko vrstico odprto",selectAllElementsInFrame:"Izberi vse elemente v okvirju",removeAllElementsFromFrame:"Izbriši vse elemente v okvirju",eyeDropper:"Izberi barvo s platna",textToDiagram:"Besedilo v diagram",prompt:"Poziv"},OKe={noItems:"Dodan še ni noben element...",hint_emptyLibrary:"Izberite element na platnu, da ga dodate sem, ali namestite knjižnico iz javnega skladišča spodaj.",hint_emptyPrivateLibrary:"Izberite element na platnu, da ga dodate sem."},PKe={clearReset:"Ponastavi platno",exportJSON:"Izvozi v datoteko",exportImage:"Izvozi sliko...",export:"Shrani v...",copyToClipboard:"Kopiraj v odložišče",save:"Shrani v trenutno datoteko",saveAs:"Shrani kot",load:"Odpri",getShareableLink:"Pridobi povezavo za deljenje",close:"Zapri",selectLanguage:"Izberi jezik",scrollBackToContent:"Pomakni se nazaj na vsebino",zoomIn:"Povečaj",zoomOut:"Pomanjšaj",resetZoom:"Ponastavi povečavo",menu:"Meni",done:"Končano",edit:"Uredi",undo:"Razveljavi",redo:"Ponovi",resetLibrary:"Ponastavi knjižnico",createNewRoom:"Ustvari novo sobo",fullScreen:"Celozaslonski način",darkMode:"Temni način",lightMode:"Svetli način",zenMode:"Način Zen",objectsSnapMode:"Pripenjanje na predmete",exitZenMode:"Zapri način Zen",cancel:"Prekliči",clear:"Počisti",remove:"Odstrani",embed:"Preklopi vdelavo",publishLibrary:"Objavi",submit:"Pošlji",confirm:"Potrdi",embeddableInteractionButton:"Kliknite za interakcijo"},_Ke={clearReset:"To bo počistilo celotno platno. Ali ste prepričani?",couldNotCreateShareableLink:"Povezave za deljenje ni bilo mogoče ustvariti.",couldNotCreateShareableLinkTooBig:"Povezave za deljenje ni bilo mogoče ustvariti: scena je prevelika",couldNotLoadInvalidFile:"Neveljavne datoteke ni bilo mogoče naložiti",importBackendFailed:"Uvoz iz zaledja ni uspel.",cannotExportEmptyCanvas:"Izvoz prazne scene ni mogoč.",couldNotCopyToClipboard:"Kopiranje v odložišče ni uspelo.",decryptFailed:"Dešifriranje podatkov ni uspelo.",uploadedSecurly:"Nalaganje je bilo zaščiteno s šifriranjem od konca do konca, kar pomeni, da strežnik Excalidraw in tretje osebe ne morejo brati vsebine.",loadSceneOverridePrompt:"Nalaganje zunanje risbe bo nadomestilo vašo obstoječo vsebino. Ali želite nadaljevati?",collabStopOverridePrompt:`Ustavitev seje bo prepisala vašo prejšnjo, lokalno shranjeno risbo. Ali ste prepričani?
|
||
|
||
(Če želite obdržati lokalno risbo, preprosto zaprite zavihek brskalnika.)`,errorAddingToLibrary:"Elementa ni bilo mogoče dodati v knjižnico",errorRemovingFromLibrary:"Elementa ni bilo mogoče izbrisati iz knjižnice",confirmAddLibrary:"S tem boste v vašo knjižnico dodali oblike ({{numShapes}}). Ali ste prepričani?",imageDoesNotContainScene:"Zdi se, da ta slika ne vsebuje podatkov o sceni. Ali ste med izvozom omogočili vdelavo scene?",cannotRestoreFromImage:"Scene ni bilo mogoče obnoviti iz te slikovne datoteke",invalidSceneUrl:"S priloženega URL-ja ni bilo mogoče uvoziti scene. Je napačno oblikovana ali pa ne vsebuje veljavnih podatkov Excalidraw JSON.",resetLibrary:"To bo počistilo vašo knjižnico. Ali ste prepričani?",removeItemsFromsLibrary:"Izbriši elemente ({{count}}) iz knjižnice?",invalidEncryptionKey:"Ključ za šifriranje mora vsebovati 22 znakov. Sodelovanje v živo je onemogočeno.",collabOfflineWarning:`Internetna povezava ni na voljo.
|
||
Vaše spremembe ne bodo shranjene!`},WKe={unsupportedFileType:"Nepodprt tip datoteke.",imageInsertError:"Vstavljanje slike ni bilo uspešno. Poskusite ponovno kasneje...",fileTooBig:"Datoteka je prevelika. Največja dovoljena velikost je {{maxSize}}.",svgImageInsertError:"Vstavljanje slike SVG ni uspelo. Oznake SVG so videti neveljavne.",failedToFetchImage:"Pridobivanje slike ni uspelo.",invalidSVGString:"Neveljaven SVG.",cannotResolveCollabServer:"Povezave s strežnikom za sodelovanje ni bilo mogoče vzpostaviti. Ponovno naložite stran in poskusite znova.",importLibraryError:"Nalaganje knjižnice ni uspelo",collabSaveFailed:"Ni bilo mogoče shraniti v zaledno bazo podatkov. Če se težave nadaljujejo, shranite datoteko lokalno, da ne boste izgubili svojega dela.",collabSaveFailed_sizeExceeded:"Ni bilo mogoče shraniti v zaledno bazo podatkov, zdi se, da je platno preveliko. Datoteko shranite lokalno, da ne izgubite svojega dela.",imageToolNotSupported:"Slike so onemogočene.",brave_measure_text_error:{line1:"Videti je, da uporabljate brskalnik Brave z omogočeno nastavitvijo <bold>Agresivno blokiranje prstnih odtisov</bold>.",line2:"To bi lahko povzročilo motnje v obnašanju <bold>besedilnih elementov</bold> v vaših risbah.",line3:"Močno priporočamo, da onemogočite to nastavitev. Sledite <link>tem korakom</link>, kako to storiti.",line4:"Če onemogočanje te nastavitve ne popravi prikaza besedilnih elementov, odprite <issueLink>vprašanje</issueLink> na našem GitHubu ali nam pišite na <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Vdelani elementi ne morejo biti dodani v knjižnico.",iframe:"Elementov iFrame ni mogoče dodati v knjižnico.",image:"Podpora za dodajanje slik v knjižnico prihaja kmalu!"},asyncPasteFailedOnRead:"Ni bilo mogoče prilepiti (ni bilo mogoče brati iz sistemskega odložišča).",asyncPasteFailedOnParse:"Ni bilo mogoče prilepiti.",copyToSystemClipboardFailed:"Ni bilo mogoče kopirati v odložišče."},qKe={selection:"Izbor",image:"Vstavi sliko",rectangle:"Pravokotnik",diamond:"Diamant",ellipse:"Elipsa",arrow:"Puščica",line:"Črta",freedraw:"Risanje",text:"Besedilo",library:"Knjižnica",lock:"Ohrani izbrano orodje aktivno po risanju",penMode:"Način peresa - prepreči dotik",link:"Dodaj/posodobi povezavo za izbrano obliko",eraser:"Radirka",frame:"Okvir",magicframe:"Žični okvir v kodo",embeddable:"Spletna vdelava",laser:"Laserski kazalec",hand:"Roka (orodje za premikanje)",extraTools:"Več orodij",mermaidToExcalidraw:"Mermaid v Excalidraw",magicSettings:"Nastavitve AI"},zKe={canvasActions:"Dejanja za platno",selectedShapeActions:"Dejanja za izbrane oblike",shapes:"Oblike"},ZKe={canvasPanning:"Za premikanje platna med vlečenjem držite kolesce miške ali preslednico ali uporabite orodje roka",linearElement:"Kliknite za začetek več točk, povlecite za posamezno črto",freeDraw:"Kliknite in povlecite, spustite, ko končate",text:"Namig: besedilo lahko dodate tudi z dvoklikom kjer koli z orodjem za izbiro",embeddable:"Kliknite in povlecite, da ustvarite spletno vdelavo",text_selected:"Dvokliknite ali pritisnite tipko Enter, da uredite besedilo",text_editing:"Pritisnite tipko Escape ali CtrlOrCmd+Enter za zaključek urejanja",linearElementMulti:"Kliknite zadnjo točko ali pritisnite Escape ali Enter, da končate",lockAngle:"Kot lahko omejite tako, da držite tipko Shift",resize:"Razmerja lahko omejite tako, da držite tipko Shift med spreminjanjem velikosti. Držite tipko Alt, da spremenite velikost od središča",resizeImage:"Velikost lahko prosto spreminjate tako, da držite tipko Shift. Držite tipko Alt, da spremenite velikost od središča",rotate:"Kote lahko omejite tako, da med vrtenjem držite tipko Shift",lineEditor_info:"Držite CtrlOrCmd in dvokliknite ali pritisnite CtrlOrCmd + Enter za urejanje točk",lineEditor_pointSelected:"Pritisnite tipko Delete, da odstranite točko(e), CtrlOrCmd+D za podvojitev ali povlecite za premikanje",lineEditor_nothingSelected:"Izberite točko za urejanje (pridržite tipko Shift za izbiro več točk), ali držite tipko Alt in kliknite za dodajanje novih točk",placeImage:"Kliknite, da postavite sliko, ali kliknite in povlecite, da ročno nastavite njeno velikost",publishLibrary:"Objavi svojo knjižnico",bindTextToElement:"Pritisnite tipko Enter za dodajanje besedila",deepBoxSelect:"Držite tipko CtrlOrCmd za globoko izbiro in preprečitev vlečenja",eraserRevert:"Pridržite tipko Alt, da razveljavite elemente, označene za brisanje",firefox_clipboard_write:'To funkcijo lahko verjetno omogočite z nastavitvijo zastavice "dom.events.asyncClipboard.clipboardItem" na "true". Če želite spremeniti zastavice brskalnika v Firefoxu, obiščite stran "about:config".',disableSnapping:"Držite CtrlOrCmd, da onemogočite pripenjanje"},VKe={cannotShowPreview:"Predogleda ni bilo mogoče prikazati",canvasTooBig:"Morda je platno preveliko.",canvasTooBigTip:"Nasvet: poskusite premakniti najbolj oddaljene elemente nekoliko bližje skupaj."},jKe={headingMain:"Prišlo je do napake. Poskusite <button>ponovno naložiti stran.</button>",clearCanvasMessage:"Če ponovno nalaganje ne deluje, poskusite <button>počistiti platno.</button>",clearCanvasCaveat:" To bo povzročilo izgubo dela ",trackedToSentry:"Napaka z identifikatorjem {{eventId}} smo zabeležili v naš sistem.",openIssueMessage:"Zelo smo bili previdni, da v podatke o napaki nismo vključili vaših podatkov o sceni. Če vaša scena ni zasebna, vas prosimo, da napišete več podrobnosti na našem <button>sledilniku hroščev.</button> Prosimo, vključite spodnje informacije tako, da jih kopirate in prilepite v GitHub vprašanje.",sceneContent:"Vsebina scene:"},XKe={desc_intro:"Na vašo trenutno sceno lahko povabite osebe, ki bodo sodelovale z vami.",desc_privacy:"Brez skrbi. Seja uporablja šifriranje od konca do konca, tako da bo vse, kar narišete, ostalo zasebno. Niti naš strežnik ne bo mogel videti, kaj si izmislite.",button_startSession:"Začni sejo",button_stopSession:"Ustavi sejo",desc_inProgressIntro:"Seja sodelovanja v živo je v teku.",desc_shareLink:"Delite to povezavo z vsemi, s katerimi želite sodelovati:",desc_exitSession:"Ustavitev seje vas bo odklopila od sobe, vendar boste lahko lokalno nadaljevali delo s sceno. To pa ne bo vplivalo na druge osebe. Druge osebe bodo še vedno lahko sodelovale v svoji različici.",shareTitle:"Pridruži se seji sodelovanja v živo na Excalidraw"},$Ke={title:"Napaka"},AJe={disk_title:"Shrani na disk",disk_details:"Izvozite podatke scene v datoteko, iz katere jo lahko pozneje uvozite.",disk_button:"Shrani v datoteko",link_title:"Povezava za deljenje",link_details:"Izvoz kot povezava samo za branje.",link_button:"Izvoz kot povezava",excalidrawplus_description:"Shrani sceno v svoj delovni prostor Excalidraw+.",excalidrawplus_button:"Izvoz",excalidrawplus_exportError:"Trenutno ni bilo mogoče izvoziti v Excalidraw+..."},eJe={blog:"Preberite naš blog",click:"klik",deepSelect:"Globoka izbira",deepBoxSelect:"Globoka izbira znotraj polja in preprečitev vlečenja",curvedArrow:"Ukrivljena puščica",curvedLine:"Ukrivljena črta",documentation:"Dokumentacija",doubleClick:"dvojni klik",drag:"vleci",editor:"Urejevalnik",editLineArrowPoints:"Uredi črto/točke puščice",editText:"Uredi besedilo / dodaj oznako",github:"Ste našli težavo? Pošljite",howto:"Sledite našim vodičem",or:"ali",preventBinding:"Prepreči vezanje puščice",tools:"Orodja",shortcuts:"Bližnjice na tipkovnici",textFinish:"Zaključi urejanje (urejevalnik besedila)",textNewLine:"Dodaj novo vrstico (urejevalnik besedila)",title:"Pomoč",view:"Pogled",zoomToFit:"Približaj na vse elemente",zoomToSelection:"Približaj na izbor",toggleElementLock:"Zakleni/odkleni izbor",movePageUpDown:"Premakni stran gor/dol",movePageLeftRight:"Premakni stran levo/desno"},tJe={title:"Počisti platno"},rJe={title:"Objavi knjižnico",itemName:"Ime elementa",authorName:"Ime avtorja",githubUsername:"GitHub uporabniško ime",twitterUsername:"Twitter uporabniško ime",libraryName:"Ime knjižnice",libraryDesc:"Opis knijžnice",website:"Spletna stran",placeholder:{authorName:"Vaše ime ali uporabniško ime",libraryName:"Ime vaše knjižnice",libraryDesc:"Opis vaše knjižnice, da bodo ljudje lažje razumeli njeno uporabo",githubHandle:"GitHub uporabniško ime (neobvezno), tako da lahko urejate knjižnico potem, ko jo pošljete v pregled",twitterHandle:"Twitter uporabniško ime (neobvezno), tako da vemo, koga omeniti pri promociji prek Twitterja",website:"Povezava na vašo osebno spletno stran ali drugam (neobvezno)"},errors:{required:"Obvezno",website:"Vnesite veljaven URL"},noteDescription:"Predložite svojo knjižnico, da bo vključena v <link>javno skladišče knjižnic,</link>da jih drugi lahko uporabljajo v svojih risbah.",noteGuidelines:"Knjižnica mora biti najprej ročno odobrena. Prosimo vas, da pred oddajanjem preberete naše <link>smernice.</link>Za komunikacijo in spreminjanje po potrebi boste potrebovali račun GitHub, vendar to ni obvezno.",noteLicense:"Z oddajo se strinjate, da bo knjižnica objavljena pod <link>licenco MIT, </link>kar na kratko pomeni, da jo lahko kdorkoli uporablja brez omejitev.",noteItems:"Vsak element knjižnice mora imeti svoje ime, tako da ga je mogoče filtrirati. Vključeni bodo naslednji elementi knjižnice:",atleastOneLibItem:"Za začetek izberite vsaj en element knjižnice",republishWarning:"Opomba: nekateri izbrani predmeti so označeni kot že objavljeni/oddani. Elemente lahko znova oddate samo, ko posodabljate obstoječo knjižnico ali oddajo."},iJe={title:"Knjižnica oddana",content:"{{authorName}}, hvala. Vaša knjižnica je bila poslana v pregled. Stanje lahko spremljate<link>tukaj</link>"},uJe={resetLibrary:"Ponastavi knjižnico",removeItemsFromLib:"Odstran izbrane elemente iz knjižnice"},aJe={header:"Izvozi sliko",label:{withBackground:"Ozadje",onlySelected:"Samo izbor",darkMode:"Temni način",embedScene:"Vdelaj sceno",scale:"Povečava",padding:"Odmik"},tooltip:{embedScene:`Podatki o sceni bodo shranjeni v izvoženo datoteko PNG/SVG, tako da bo sceno mogoče obnoviti iz nje.
|
||
To bo povečalo velikost izvožene datoteke.`},title:{exportToPng:"Izvozi v PNG",exportToSvg:"Izvozi v SVG",copyPngToClipboard:"Kopiraj PNG v odložišče"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopiraj v odložišče"}},nJe={tooltip:"Vaše risbe so šifrirane od konca do konca, tako da jih strežniki Excalidraw nikoli ne bodo videli.",link:"Blog objava o šifriranju od konca do konca v Excalidraw"},oJe={angle:"Kot",element:"Element",elements:"Elementi",height:"Višina",scene:"Scena",selected:"Izbrano",storage:"Shramba",title:"Statistika za napredne uporabnike",total:"Skupaj",version:"Različica",versionCopy:"Kliknite za kopiranje",versionNotAvailable:"Različica ni na voljo",width:"Širina"},sJe={addedToLibrary:"Dodano v knjižnico",copyStyles:"Slogi kopirani.",copyToClipboard:"Kopirano v odložišče.",copyToClipboardAsPng:"Kopirano v odložišče kot PNG ({{exportSelection}}, {{exportColorScheme}})",fileSaved:"Datoteka shranjena.",fileSavedToFilename:"Shranjeno v {filename}",canvas:"platno",selection:"izbor",pasteAsSingleElement:`Uporabite {{shortcut}}, da prilepite kot en element,
|
||
ali prilepite v obstoječ urejevalnik besedil`,unableToEmbed:"Vdelava tega URL-ja trenutno ni dovoljena. Ustvarite vprašanje na GitHub-u in prosite za vmestitev URL-ja na seznam dovoljenih",unrecognizedLinkFormat:"Povezava, ki ste jo vdelali, se ne ujema s pričakovano obliko. Poskusite prilepiti niz za vdelavo, ki ste ga prejeli na izvorni strani"},lJe={transparent:"Prosojno",black:"Črna",white:"Bela",red:"Rdeča",pink:"Roza",grape:"Grozdje",violet:"Vijolična",gray:"Siva",blue:"Modra",cyan:"Cijan",teal:"Turkizna",green:"Zelena",yellow:"Rumena",orange:"Oranžna",bronze:"Bronasta"},gJe={app:{center_heading:"Vsi vaši podatki so shranjeni lokalno v vašem brskalniku.",center_heading_plus:"Ste namesto tega želeli odpreti Excalidraw+?",menuHint:"Izvoz, nastavitve, jeziki, ..."},defaults:{menuHint:"Izvoz, nastavitve in več ...",center_heading:"Diagrami. Enostavno.",toolbarHint:"Izberi orodje in začni z risanjem!",helpHint:"Bližnjice in pomoč"}},cJe={mostUsedCustomColors:"Najpogosteje uporabljene barve po meri",colors:"Barve",shades:"Odtenki",hexCode:"Hex koda",noShades:"Odtenki za to barvo niso na voljo"},CJe={action:{exportToImage:{title:"Izvozi kot sliko",button:"Izvozi kot sliko",description:"Izvozite podatke scene kot sliko, iz katere jo lahko pozneje uvozite."},saveToDisk:{title:"Shrani na disk",button:"Shrani na disk",description:"Izvozite podatke scene v datoteko, iz katere jo lahko pozneje uvozite."},excalidrawPlus:{title:"Excalidraw+",button:"Izvozi v Excalidraw+",description:"Shrani sceno v svoj delovni prostor Excalidraw+."}},modal:{loadFromFile:{title:"Naloži iz datoteke",button:"Naloži iz datoteke",description:"Nalaganje iz datoteke bo <bold>prepisalo vašo obstoječo vsebino</bold>.<br></br>Svojo risbo lahko najprej varnostno kopirate z eno od spodnjih možnosti."},shareableLink:{title:"Naloži iz povezave",button:"Zamenjaj mojo vsebino",description:"Nalaganje zunanje risbe bo <bold>prepisalo vašo obstoječo vsebino</bold>.<br></br>Svojo risbo lahko najprej varnostno kopirate z eno od spodnjih možnosti."}}},BJe={title:"Mermaid v Excalidraw",button:"Vstavi",description:"Trenutno so podprti samo <flowchartLink>diagrami poteka</flowchartLink>, <sequenceLink>diagrami zaporedij</sequenceLink> in <classLink>Razredni diagrami</classLink>. Druge vrste bodo upodobljene kot slike v Excalidraw.",syntax:"Sintaksa Mermaid",preview:"Predogled"},lCr={labels:JKe,library:OKe,buttons:PKe,alerts:_Ke,errors:WKe,toolBar:qKe,headings:zKe,hints:ZKe,canvasError:VKe,errorSplash:jKe,roomDialog:XKe,errorDialog:$Ke,exportDialog:AJe,helpDialog:eJe,clearCanvasDialog:tJe,publishDialog:rJe,publishSuccessDialog:iJe,confirmDialog:uJe,imageExportDialog:aJe,encrypted:nJe,stats:oJe,toast:sJe,colors:lJe,welcomeScreen:gJe,colorPicker:cJe,overwriteConfirm:CJe,mermaid:BJe}});var PJe={};yt(PJe,{alerts:()=>pJe,buttons:()=>QJe,canvasError:()=>wJe,clearCanvasDialog:()=>SJe,colorPicker:()=>KJe,colors:()=>YJe,confirmDialog:()=>NJe,default:()=>gCr,encrypted:()=>UJe,errorDialog:()=>kJe,errorSplash:()=>bJe,errors:()=>fJe,exportDialog:()=>FJe,headings:()=>DJe,helpDialog:()=>xJe,hints:()=>yJe,imageExportDialog:()=>GJe,labels:()=>IJe,library:()=>hJe,mermaid:()=>OJe,overwriteConfirm:()=>JJe,publishDialog:()=>LJe,publishSuccessDialog:()=>RJe,roomDialog:()=>vJe,stats:()=>MJe,toast:()=>TJe,toolBar:()=>mJe,welcomeScreen:()=>HJe});var IJe,hJe,QJe,pJe,fJe,mJe,DJe,yJe,wJe,bJe,vJe,kJe,FJe,xJe,SJe,LJe,RJe,NJe,GJe,UJe,MJe,TJe,YJe,HJe,KJe,JJe,OJe,gCr;var _Je=P(()=>{qt();IJe={paste:"Klistra in",pasteAsPlaintext:"Klistra som oformaterad text",pasteCharts:"Klistra in diagram",selectAll:"Markera alla",multiSelect:"Lägg till element till markering",moveCanvas:"Flytta canvas",cut:"Klipp ut",copy:"Kopiera",copyAsPng:"Kopiera till urklipp som PNG",copyAsSvg:"Kopiera till urklipp som SVG",copyText:"Kopiera till urklipp som text",copySource:"Kopiera källa till urklipp",convertToCode:"Konvertera till kod",bringForward:"Flytta framåt",sendToBack:"Flytta underst",bringToFront:"Flytta främst",sendBackward:"Skicka bakåt",delete:"Ta bort",copyStyles:"Kopiera stil",pasteStyles:"Klistra in stil",stroke:"Linje",background:"Bakgrund",fill:"Fyllnad",strokeWidth:"Linjebredd",strokeStyle:"Linjestil",strokeStyle_solid:"Solid",strokeStyle_dashed:"Streckad",strokeStyle_dotted:"Punktad",sloppiness:"Slarvighet",opacity:"Genomskinlighet",textAlign:"Textjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilhuvuden",arrowhead_none:"Inga",arrowhead_arrow:"Pil",arrowhead_bar:"Stolpe",arrowhead_circle:"Cirkel",arrowhead_circle_outline:"Cirkel (kontur)",arrowhead_triangle:"Triangel",arrowhead_triangle_outline:"Triangel (kontur)",arrowhead_diamond:"Diamant",arrowhead_diamond_outline:"Diamant (kontur)",fontSize:"Teckenstorlek",fontFamily:"Teckensnitt",addWatermark:'Lägg till "Skapad med Excalidraw"',handDrawn:"Handritad",normal:"Normal",code:"Kod",small:"Liten",medium:"Medium",large:"Stor",veryLarge:"Mycket stor",solid:"Solid",hachure:"Skraffering",zigzag:"Sicksack",crossHatch:"Skraffera med kors",thin:"Tunn",bold:"Fet",left:"Vänster",center:"Centrera",right:"Höger",extraBold:"Extra fet",architect:"Arkitekt",artist:"Artist",cartoonist:"Serietecknare",fileTitle:"Filnamn",colorPicker:"Färgväljare",canvasColors:"Används på canvas",canvasBackground:"Canvas-bakgrund",drawingCanvas:"Ritar canvas",layers:"Lager",actions:"Åtgärder",language:"Språk",liveCollaboration:"Samarbeta live...",duplicateSelection:"Duplicera",untitled:"Namnlös",name:"Namn",yourName:"Ditt namn",madeWithExcalidraw:"Skapad med Excalidraw",group:"Gruppera markering",ungroup:"Avgruppera markering",collaborators:"Medarbetare",showGrid:"Visa rutnät",addToLibrary:"Lägg till i biblioteket",removeFromLibrary:"Ta bort från bibliotek",libraryLoadingMessage:"Laddar bibliotek…",libraries:"Bläddra i bibliotek",loadingScene:"Laddar skiss…",align:"Justera",alignTop:"Justera överkant",alignBottom:"Justera underkant",alignLeft:"Justera vänster",alignRight:"Justera höger",centerVertically:"Centrera vertikalt",centerHorizontally:"Centrera horisontellt",distributeHorizontally:"Fördela horisontellt",distributeVertically:"Fördela vertikalt",flipHorizontal:"Vänd horisontellt",flipVertical:"Vänd vertikalt",viewMode:"Visningsläge",share:"Dela",showStroke:"Visa färgväljare för linjefärg",showBackground:"Visa färgväljare för bakgrundsfärg",toggleTheme:"Växla tema",personalLib:"Personligt bibliotek",excalidrawLib:"Excalidraw bibliotek",decreaseFontSize:"Minska fontstorleken",increaseFontSize:"Öka fontstorleken",unbindText:"Koppla bort text",bindText:"Bind texten till behållaren",createContainerFromText:"Radbryt text i en avgränsad yta",link:{edit:"Redigera länk",editEmbed:"Redigera länk & bädda in",create:"Skapa länk",createEmbed:"Skapa länk & bädda in",label:"Länk",labelEmbed:"Länka & bädda in",empty:"Ingen länk är angiven"},lineEditor:{edit:"Redigera linje",exit:"Avsluta linjeredigerare"},elementLock:{lock:"Lås",unlock:"Lås upp",lockAll:"Lås alla",unlockAll:"Lås upp alla"},statusPublished:"Publicerad",sidebarLock:"Håll sidofältet öppet",selectAllElementsInFrame:"Markera alla element i rutan",removeAllElementsFromFrame:"Ta bort alla element från rutan",eyeDropper:"Välj färg från canvas",textToDiagram:"Text till diagram",prompt:"Fråga"},hJe={noItems:"Inga objekt tillagda ännu...",hint_emptyLibrary:"Välj ett objekt på canvasen för att lägga till det här, eller installera ett bibliotek från det publika arkivet, nedan.",hint_emptyPrivateLibrary:"Välj ett objekt på canvasen för att lägga till det här."},QJe={clearReset:"Återställ canvasen",exportJSON:"Exportera till fil",exportImage:"Exportera bild...",export:"Spara till...",copyToClipboard:"Kopiera till urklipp",save:"Spara till aktuell fil",saveAs:"Spara som",load:"Öppna",getShareableLink:"Hämta delbar länk",close:"Stäng",selectLanguage:"Välj språk",scrollBackToContent:"Bläddra tillbaka till innehållet",zoomIn:"Zooma in",zoomOut:"Zooma ut",resetZoom:"Återställ zoom",menu:"Meny",done:"Klart",edit:"Redigera",undo:"Ångra",redo:"Gör om",resetLibrary:"Återställ bibliotek",createNewRoom:"Skapa ett nytt rum",fullScreen:"Helskärm",darkMode:"Mörkt läge",lightMode:"Ljust läge",zenMode:"Zen-läge",objectsSnapMode:"Fäst mot objekt",exitZenMode:"Gå ur zen-läge",cancel:"Avbryt",clear:"Rensa",remove:"Ta bort",embed:"Växla inbäddning",publishLibrary:"Publicera",submit:"Skicka",confirm:"Bekräfta",embeddableInteractionButton:"Klicka för att interagera"},pJe={clearReset:"Detta rensar hela canvasen. Är du säker?",couldNotCreateShareableLink:"Kunde inte skapa delbar länk.",couldNotCreateShareableLinkTooBig:"Kunde inte skapa delbar länk: skissen är för stor",couldNotLoadInvalidFile:"Kunde inte ladda ogiltig fil",importBackendFailed:"Importering från backend misslyckades.",cannotExportEmptyCanvas:"Kan inte exportera tom canvas.",couldNotCopyToClipboard:"Kunde inte kopiera till urklipp.",decryptFailed:"Kunde inte avkryptera data.",uploadedSecurly:"Uppladdning har säkrats med kryptering från ände till ände. vilket innebär att Excalidraw server och tredje part inte kan läsa innehållet.",loadSceneOverridePrompt:"Laddning av extern skiss kommer att ersätta ditt befintliga innehåll. Vill du fortsätta?",collabStopOverridePrompt:`Att stoppa sessionen kommer att skriva över din föregående, lokalt lagrade skiss. Är du säker?
|
||
|
||
(Om du vill behålla din lokala skiss, stäng bara webbläsarfliken istället.)`,errorAddingToLibrary:"Kunde inte lägga till objekt i biblioteket",errorRemovingFromLibrary:"Kunde inte ta bort objekt från biblioteket",confirmAddLibrary:"Detta kommer att lägga till {{numShapes}} form(er) till ditt bibliotek. Är du säker?",imageDoesNotContainScene:"Den här bilden verkar inte innehålla någon skissdata. Har du aktiverat inbäddning av skiss under export?",cannotRestoreFromImage:"Skiss kunde inte återställas från denna bildfil",invalidSceneUrl:"Det gick inte att importera skiss från den angivna webbadressen. Antingen har den fel format, eller så innehåller den ingen giltig Excalidraw JSON data.",resetLibrary:"Detta kommer att rensa ditt bibliotek. Är du säker?",removeItemsFromsLibrary:"Ta bort {{count}} objekt från biblioteket?",invalidEncryptionKey:"Krypteringsnyckeln måste vara 22 tecken. Livesamarbetet är inaktiverat.",collabOfflineWarning:`Ingen internetanslutning tillgänglig.
|
||
Dina ändringar kommer inte att sparas!`},fJe={unsupportedFileType:"Filtypen stöds inte.",imageInsertError:"Kunde inte infoga bild. Försök igen senare...",fileTooBig:"Filen är för stor. Maximal tillåten storlek är {{maxSize}}.",svgImageInsertError:"Kunde inte infoga SVG-bild. SVG-koden ser ogiltig ut.",failedToFetchImage:"Kunde inte hämta bilden.",invalidSVGString:"Ogiltig SVG.",cannotResolveCollabServer:"Det gick inte att ansluta till samarbets-servern. Ladda om sidan och försök igen.",importLibraryError:"Kunde inte ladda bibliotek",collabSaveFailed:"Det gick inte att spara i backend-databasen. Om problemen kvarstår bör du spara filen lokalt för att se till att du inte förlorar ditt arbete.",collabSaveFailed_sizeExceeded:"Det gick inte att spara till backend-databasen, whiteboarden verkar vara för stor. Du bör spara filen lokalt för att du inte ska förlora ditt arbete.",imageToolNotSupported:"Bilder är inaktiverade.",brave_measure_text_error:{line1:"Det ser ut som om du använder Brave-webbläsaren med <bold>Aggressivt Blockera fingeravtryck</bold> inställningen aktiverad.",line2:"Detta kan resultera i trasiga <bold>Textelement</bold> i dina ritningar.",line3:"Vi rekommenderar starkt att du inaktiverar den här inställningen. Du kan följa <link>dessa steg</link> för att inaktivera den.",line4:"Om inaktivering av denna inställning inte åtgärdar visningen av textelement, öppna ett <issueLink>ärende</issueLink> på vår GitHub, eller skriv till oss på <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Inbäddbara element kan inte läggas till i biblioteket.",iframe:"IFrame-element kan inte läggas till i biblioteket.",image:"Stöd för att lägga till bilder till biblioteket kommer snart!"},asyncPasteFailedOnRead:"Kunde inte klistra in (kunde inte läsa från urklipp).",asyncPasteFailedOnParse:"Kunde inte klistra in.",copyToSystemClipboardFailed:"Kunde inte kopiera till urklipp."},mJe={selection:"Markering",image:"Infoga bild",rectangle:"Rektangel",diamond:"Diamant",ellipse:"Ellips",arrow:"Pil",line:"Linje",freedraw:"Rita",text:"Text",library:"Bibliotek",lock:"Håll valt verktyg aktivt efter ritande",penMode:"Pennläge - förhindra touch",link:"Lägg till / Uppdatera länk för en vald form",eraser:"Radergummi",frame:"Rutverktyg",magicframe:"Trådram till kod",embeddable:"Bädda in (web)",laser:"Laserpekare",hand:"Hand (panoreringsverktyg)",extraTools:"Fler verktyg",mermaidToExcalidraw:"Mermaid till Excalidraw",magicSettings:"AI-inställningar"},DJe={canvasActions:"Canvas-åtgärder",selectedShapeActions:"Valda formåtgärder",shapes:"Former"},yJe={canvasPanning:"För att flytta whiteboarden, håll mushjulet eller mellanslagstangenten medan du drar eller använd handverktyget",linearElement:"Klicka för att starta flera punkter, dra för en linje",freeDraw:"Klicka och dra, släpp när du är klar",text:"Tips: du kan också lägga till text genom att dubbelklicka var som helst med markeringsverktyget",embeddable:"Klicka-dra för att skapa en webbplats-inbäddning",text_selected:"Dubbelklicka eller tryck ENTER för att redigera text",text_editing:"Tryck Escape eller CtrlOrCmd + ENTER för att slutföra redigeringen",linearElementMulti:"Klicka på sista punkten eller tryck Escape eller Enter för att avsluta",lockAngle:"Du kan begränsa vinkeln genom att hålla SKIFT",resize:`Du kan behålla proportioner genom att hålla SHIFT medan du ändrar storlek,
|
||
håller du ALT ändras storlek relativt mitten`,resizeImage:`Du kan ändra storlek fritt genom att hålla SHIFT,
|
||
håll ALT för att ändra storlek från mitten`,rotate:"Du kan begränsa vinklar genom att hålla SHIFT medan du roterar",lineEditor_info:"Håll Ctrl/Cmd och dubbelklicka eller tryck på Ctrl/Cmd + Enter för att redigera punkter",lineEditor_pointSelected:"Tryck på Ta bort för att ta bort punkt(er), Ctrl + D eller Cmd + D för att duplicera, eller dra för att flytta",lineEditor_nothingSelected:`Välj en punkt att redigera (håll SHIFT för att välja flera),
|
||
eller håll ned Alt och klicka för att lägga till nya punkter`,placeImage:"Klicka för att placera bilden, eller klicka och dra för att ställa in dess storlek manuellt",publishLibrary:"Publicera ditt eget bibliotek",bindTextToElement:"Tryck på Enter för att lägga till text",deepBoxSelect:"Håll Ctrl eller Cmd för att djupvälja, och för att förhindra att dra",eraserRevert:"Håll Alt för att återställa de element som är markerade för borttagning",firefox_clipboard_write:'Denna funktion kan sannolikt aktiveras genom att ställa in "dom.events.asyncClipboard.clipboardItem" flaggan till "true". För att ändra webbläsarens flaggor i Firefox, besök "about:config" sidan.',disableSnapping:"Håll Ctrl eller Cmd för att inaktivera fästning"},wJe={cannotShowPreview:"Kan inte visa förhandsgranskning",canvasTooBig:"Canvasen kan vara för stor.",canvasTooBigTip:"Tips: prova att flytta de mest avlägsna elementen lite närmare varandra."},bJe={headingMain:"Ett fel uppstod. Försök <button>med att läsa in sidan på nytt.</button>",clearCanvasMessage:"Om omladdning inte fungerar, försök <button>rensa canvasen.</button>",clearCanvasCaveat:" Detta kommer att leda till förlust av arbete ",trackedToSentry:"Felet med identifieraren {{eventId}} spårades på vårt system.",openIssueMessage:"Vi var mycket försiktiga med att inte inkludera din skissinformation om felet. Om din skiss inte är privat, vänligen överväga att följa upp på vår <button>buggspårare.</button> Vänligen inkludera information nedan genom att kopiera och klistra in i GitHub-problemet.",sceneContent:"Skissinnehåll:"},vJe={desc_intro:"Du kan bjuda in personer till din nuvarande skiss för att samarbeta med dig.",desc_privacy:"Oroa dig inte, sessionen använder kryptering från ände till ände, så vad du än ritar kommer att förbli privat. Inte ens vår server kommer att kunna se vad du skissar.",button_startSession:"Starta sessionen",button_stopSession:"Stoppa session",desc_inProgressIntro:"Nu pågår en live-samarbetssession.",desc_shareLink:"Dela denna länk med någon du vill samarbeta med:",desc_exitSession:"Att avbryta sessionen kommer att koppla bort dig från rummet, men du kommer att kunna fortsätta arbeta med skissen, lokalt. Observera att detta inte påverkar andra människor, och de kommer fortfarande att kunna samarbeta på deras version.",shareTitle:"Delta i en live-samarbetssession på Excalidraw"},kJe={title:"Fel"},FJe={disk_title:"Spara till disk",disk_details:"Exportera skissdata till en fil som du kan importera från senare.",disk_button:"Spara till fil",link_title:"Delbar länk",link_details:"Exportera som en skrivskyddad länk.",link_button:"Exportera till länk",excalidrawplus_description:"Spara skissen till din Excalidraw+ arbetsyta.",excalidrawplus_button:"Exportera",excalidrawplus_exportError:"Det gick inte att exportera till Excalidraw+ just nu..."},xJe={blog:"Läs vår blogg",click:"klicka",deepSelect:"Djupval",deepBoxSelect:"Djupval inom boxen, och förhindra att dra",curvedArrow:"Böjd pil",curvedLine:"Böjd linje",documentation:"Dokumentation",doubleClick:"dubbelklicka",drag:"dra",editor:"Redigerare",editLineArrowPoints:"Redigera linje-/pilpunkter",editText:"Redigera text / lägg till etikett",github:"Hittat ett problem? Rapportera",howto:"Följ våra guider",or:"eller",preventBinding:"Förhindra pilbindning",tools:"Verktyg",shortcuts:"Tangentbordsgenvägar",textFinish:"Slutför redigering (text)",textNewLine:"Lägg till ny rad (text)",title:"Hjälp",view:"Visa",zoomToFit:"Zooma för att rymma alla element",zoomToSelection:"Zooma till markering",toggleElementLock:"Lås/Lås upp valda",movePageUpDown:"Flytta sida upp/ner",movePageLeftRight:"Flytta sida vänster/höger"},SJe={title:"Rensa canvas"},LJe={title:"Publicera bibliotek",itemName:"Objektnamn",authorName:"Upphovsmannens namn",githubUsername:"GitHub-användarnamn",twitterUsername:"Twitter-användarnamn",libraryName:"Biblioteksnamn",libraryDesc:"Biblioteksbeskrivning",website:"Webbplats",placeholder:{authorName:"Ditt namn eller användarnamn",libraryName:"Namn på ditt bibliotek",libraryDesc:"Beskrivning av ditt bibliotek för att hjälpa människor att förstå dess användning",githubHandle:"Github-användarnamn (valfritt), så att du kan redigera biblioteket när du har skickat in det för granskning",twitterHandle:"Twitter-användarnamn (valfritt), så vi vet vem att kreditera när du marknadsför på Twitter",website:"Länk till din personliga webbplats eller någon annan (valfritt)"},errors:{required:"Obligatoriskt",website:"Ange en giltig URL"},noteDescription:"Skicka ditt bibliotek för att inkluderas i <link>det offentliga bibliotekets arkiv</link>för andra människor att använda i sina skisser.",noteGuidelines:"Biblioteket måste godkännas manuellt först. Vänligen läs <link>riktlinjerna</link> innan du skickar in. Du behöver ett GitHub-konto för att kommunicera och göra ändringar om så önskas, men det krävs inte.",noteLicense:"Genom att skicka in godkänner du att biblioteket kommer att publiceras under <link>MIT-licens, </link>vilket kort sagt betyder att vem som helst kan använda det utan restriktioner.",noteItems:"Varje objekt måste ha sitt eget namn så att det är filtrerbart. Följande objekt kommer att inkluderas:",atleastOneLibItem:"Välj minst ett biblioteksobjekt för att komma igång",republishWarning:"Obs: några av de markerade objekten är redan markerade som publicerade/skickade. Du bör endast skicka objekt igen när du uppdaterar ett befintligt bibliotek eller inlämning."},RJe={title:"Bibliotek inskickat",content:"Tack {{authorName}}. Ditt bibliotek har skickats för granskning. Du kan följa status<link>här</link>"},NJe={resetLibrary:"Återställ bibliotek",removeItemsFromLib:"Ta bort markerade objekt från biblioteket"},GJe={header:"Exportera bild",label:{withBackground:"Bakgrund",onlySelected:"Endast markerade",darkMode:"Mörkt läge",embedScene:"Bädda in skiss",scale:"Skala",padding:"Utfyllnad"},tooltip:{embedScene:`Skissdata kommer att sparas i den exporterade PNG/SVG-filen så att skissen kan återställas från den.
|
||
Kommer att öka exporterad filstorlek.`},title:{exportToPng:"Exportera till PNG",exportToSvg:"Exportera till SVG",copyPngToClipboard:"Kopiera PNG till urklipp"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopiera till urklipp"}},UJe={tooltip:"Dina skisser är krypterade från ände till ände så Excalidraws servrar kommer aldrig att se dem.",link:"Blogginlägg om kryptering från ände till ände i Excalidraw"},MJe={angle:"Vinkel",element:"Element",elements:"Element",height:"Höjd",scene:"Skiss",selected:"Valda",storage:"Lagring",title:"Statistik för nördar",total:"Totalt",version:"Version",versionCopy:"Klicka för att kopiera",versionNotAvailable:"Versionen är inte tillgänglig",width:"Bredd"},TJe={addedToLibrary:"Tillagd i biblioteket",copyStyles:"Kopierade stilar.",copyToClipboard:"Kopierad till urklipp.",copyToClipboardAsPng:`Kopierade {{exportSelection}} till urklipp som PNG
|
||
({{exportColorScheme}})`,fileSaved:"Fil sparad.",fileSavedToFilename:"Sparad till {filename}",canvas:"canvas",selection:"markering",pasteAsSingleElement:`Använd {{shortcut}} för att klistra in som ett enda element,
|
||
eller klistra in i en befintlig textredigerare`,unableToEmbed:"Att bädda in denna webbadress är för närvarande inte tillåtet. Skapa en problemrapport på GitHub för att begära att webbadressen vitlistas.",unrecognizedLinkFormat:"Länken du bäddade in matchar inte det förväntade formatet. Försök klistra in 'embed'-strängen som tillhandahålls av källwebbplatsen"},YJe={transparent:"Genomskinlig",black:"Svart",white:"Vit",red:"Röd",pink:"Rosa",grape:"Lila",violet:"Violett",gray:"Grå",blue:"Blå",cyan:"Turkos",teal:"Blågrön",green:"Grön",yellow:"Gul",orange:"Orange",bronze:"Brons"},HJe={app:{center_heading:"All data sparas lokalt i din webbläsare.",center_heading_plus:"Ville du gå till Excalidraw+ istället?",menuHint:"Exportera, inställningar, språk, ..."},defaults:{menuHint:"Exportera, inställningar och mer...",center_heading:"Förenklade. Diagram.",toolbarHint:"Välj ett verktyg & börja rita!",helpHint:"Genvägar & hjälp"}},KJe={mostUsedCustomColors:"Mest frekvent använda anpassade färger",colors:"Färger",shades:"Nyanser",hexCode:"Hex-kod",noShades:"Inga nyanser tillgängliga för denna färg"},JJe={action:{exportToImage:{title:"Exportera som bild",button:"Exportera som bild",description:"Exportera scendata som en bild från vilken du kan importera senare."},saveToDisk:{title:"Spara till disk",button:"Spara till disk",description:"Exportera scendata till en fil från vilken du kan importera senare."},excalidrawPlus:{title:"Excalidraw+",button:"Exportera till Excalidraw+",description:"Spara skissen till din Excalidraw+ arbetsyta."}},modal:{loadFromFile:{title:"Läs in från fil",button:"Läs in från fil",description:"Laddar från en fil kommer <bold>ersätta ditt befintliga innehåll</bold>.<br></br>Du kan säkerhetskopiera din ritning först med hjälp av ett av alternativen nedan."},shareableLink:{title:"Läs in från länk",button:"Ersätt mitt innehåll",description:"Inläsning av en extern ritning kommer <bold>ersätta ditt befintliga innehåll</bold>.<br></br>Du kan säkerhetskopiera din ritning först genom att använda ett av alternativen nedan."}}},OJe={title:"Mermaid till Excalidraw",button:"Infoga",description:"För närvarande stöds endast <flowchartLink>Flödesdiagram</flowchartLink>,<sequenceLink> Sekvensdiagram </sequenceLink> och <classLink>Klassdiagram</classLink>. De andra typerna kommer att återges som bild i Excalidraw.",syntax:"Mermaid-syntax",preview:"Förhandsgranska"},gCr={labels:IJe,library:hJe,buttons:QJe,alerts:pJe,errors:fJe,toolBar:mJe,headings:DJe,hints:yJe,canvasError:wJe,errorSplash:bJe,roomDialog:vJe,errorDialog:kJe,exportDialog:FJe,helpDialog:xJe,clearCanvasDialog:SJe,publishDialog:LJe,publishSuccessDialog:RJe,confirmDialog:NJe,imageExportDialog:GJe,encrypted:UJe,stats:MJe,toast:TJe,colors:YJe,welcomeScreen:HJe,colorPicker:KJe,overwriteConfirm:JJe,mermaid:OJe}});var QOe={};yt(QOe,{alerts:()=>ZJe,buttons:()=>zJe,canvasError:()=>AOe,clearCanvasDialog:()=>aOe,colorPicker:()=>dOe,colors:()=>BOe,confirmDialog:()=>sOe,default:()=>cCr,encrypted:()=>gOe,errorDialog:()=>rOe,errorSplash:()=>eOe,errors:()=>VJe,exportDialog:()=>iOe,headings:()=>XJe,helpDialog:()=>uOe,hints:()=>$Je,imageExportDialog:()=>lOe,labels:()=>WJe,library:()=>qJe,mermaid:()=>hOe,overwriteConfirm:()=>IOe,publishDialog:()=>nOe,publishSuccessDialog:()=>oOe,roomDialog:()=>tOe,stats:()=>cOe,toast:()=>COe,toolBar:()=>jJe,welcomeScreen:()=>EOe});var WJe,qJe,zJe,ZJe,VJe,jJe,XJe,$Je,AOe,eOe,tOe,rOe,iOe,uOe,aOe,nOe,oOe,sOe,lOe,gOe,cOe,COe,BOe,EOe,dOe,IOe,hOe,cCr;var pOe=P(()=>{qt();WJe={paste:"ஒட்டு",pasteAsPlaintext:"அலங்காரமின்றி ஒட்டு",pasteCharts:"விளக்கப்படங்களை ஒட்டு",selectAll:"எல்லாம் தேர்ந்தெடு",multiSelect:"உறுப்பைத் தெரிவில் சேர்",moveCanvas:"கித்தானை நகர்த்து",cut:"வெட்டு",copy:"நகலெடு",copyAsPng:"நகலகத்திற்கு PNG ஆக நகலெடு",copyAsSvg:"நகலகத்திற்கு SVG ஆக நகலெடு",copyText:"நகலகத்திற்கு உரையாக நகலெடு",copySource:"",convertToCode:"",bringForward:"முன்நோக்கி கொண்டுவா",sendToBack:"பின்னே அனுப்பு",bringToFront:"முன்னே கொண்டுவா",sendBackward:"பின்நோக்கி அனுப்பு",delete:"அழி",copyStyles:"ஒயில்களை நகலெடு",pasteStyles:"ஒயில்களை ஒட்டு",stroke:"கீறல்",background:"பின்புலம்",fill:"நிரப்பல்",strokeWidth:"கீறல் அகலம்",strokeStyle:"கீறல் ஒயில்",strokeStyle_solid:"திடமான",strokeStyle_dashed:"கோடிட்ட",strokeStyle_dotted:"புள்ளியிட்ட",sloppiness:"அசட்டுத்தனம்",opacity:"ஒளிபுகாவியல்பு",textAlign:"உரைச் சீரமைப்பு",edges:"விளிம்புகள்",sharp:"கூர்மை",round:"வட்டம்",arrowheads:"அம்புத்தலைகள்",arrowhead_none:"ஏதுமில்லை",arrowhead_arrow:"அம்பு",arrowhead_bar:"பட்டை",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"முக்கோணம்",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"எழுத்துரு அளவு",fontFamily:"எழுத்துரு குடும்பம்",addWatermark:'"எக்ஸ்கேலிட்ரா கொண்டு ஆனது"-ஐச் சேர்',handDrawn:"கையால்-வரைந்த",normal:"இயல்பு",code:"குறியீடு",small:"சிறிய",medium:"நடுத்தரமான",large:"பெரிய",veryLarge:"மிகப் பெரிய",solid:"திடமான",hachure:"மலைக்குறிக்கோடு",zigzag:"கோணல்மாணல்",crossHatch:"குறுக்குகதவு",thin:"மெல்லிய",bold:"பட்டை",left:"இடது",center:"மையம்",right:"வலது",extraBold:"கூடுதல் பட்டை",architect:"கட்டடக்கலைஞர்",artist:"கலைஞர்",cartoonist:"கேலிச்சித்திர ஓவியர்",fileTitle:"கோப்புப் பெயர்",colorPicker:"நிறத் தேர்வி",canvasColors:"கித்தானில் பயன்படுத்தப்பட்டது",canvasBackground:"கித்தான் பின்னணி",drawingCanvas:"கித்தான் வரைகிறது",layers:"அடுக்குகள்",actions:"செயல்கள்",language:"மொழி",liveCollaboration:"நேரடி கூட்டுப்பணி...",duplicateSelection:"நகலாக்கு",untitled:"தலைப்பற்றது",name:"பெயர்",yourName:"உங்கள் பெயர்",madeWithExcalidraw:"எக்ஸ்கேலிட்ரா கொண்டு ஆனது",group:"தேர்ந்ததை ஒன்றிணை",ungroup:"தேர்ந்ததைப் பிரி",collaborators:"கூட்டுப்பணியினர்",showGrid:"கட்டதைக் காட்டு",addToLibrary:"நூலகத்தில் சேர்",removeFromLibrary:"நூலகத்திலிருந்து நீக்கு",libraryLoadingMessage:"நூலகத்தை ஏற்றுகிறது…",libraries:"நூலகங்களை உலாவு",loadingScene:"காட்சியை ஏற்றுகிறது…",align:"சீரமை",alignTop:"மேலே சீரமை",alignBottom:"கீழே சீரமை",alignLeft:"இடதில் சீரமை",alignRight:"வலதில் சீரமை",centerVertically:"செங்குத்தாக மையப்படுத்து",centerHorizontally:"கிடைமட்டமாக மையப்படுத்து",distributeHorizontally:"கிடைமட்டமாக விநியோகி",distributeVertically:"செங்குத்தாக விநியோகி",flipHorizontal:"கிடைமட்டமாக புரட்டு",flipVertical:"செங்குத்தாக புரட்டு",viewMode:"பார்வை பயன்முறை",share:"பகிர்",showStroke:"கீறல் நிற எடுப்பானைக் காட்டு",showBackground:"பின்னணி நிற எடுப்பானைக் காட்டு",toggleTheme:"தோற்றத்தை நிலைமாற்று",personalLib:"தனக்குரிய நூலகம்",excalidrawLib:"எக்ஸ்கேலிட்ரா நூலகம்",decreaseFontSize:"எழுத்துரு அளவைக் குறை",increaseFontSize:"எழுத்துரு அளவை அதிகரி",unbindText:"உரையைப் பிணைவவிழ்",bindText:"உரையைக் கொள்கலனுக்குப் பிணை",createContainerFromText:"உரையைக் கொள்கலனுள் சுருட்டு",link:{edit:"தொடுப்பைத் திருத்து",editEmbed:"",create:"தொடுப்பைப் படை",createEmbed:"",label:"தொடுப்பு",labelEmbed:"",empty:""},lineEditor:{edit:"தொடுப்பைத் திருத்து",exit:"வரி திருத்தியிலிருந்து வெளியேறு"},elementLock:{lock:"பூட்டு",unlock:"பூட்டவிழ்",lockAll:"எல்லாம் பூட்டு",unlockAll:"எல்லாம் பூட்டவிழ்"},statusPublished:"வெளியிடப்பட்டது",sidebarLock:"பக்கப்பட்டையைத் திறந்தே வை",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"கித்தானிலிருந்து நிறம் தேர்ந்தெடு",textToDiagram:"",prompt:""},qJe={noItems:"இதுவரை உருப்படிகள் சேரக்கப்படவில்லை...",hint_emptyLibrary:"கித்தானிலுள்ள உருப்படியை இங்குச் சேர்க்க தேர்ந்தெடு, அல்லது கீழுள்ள பொது களஞ்சியத்திலிருந்து நூலகத்தை நிறுவு.",hint_emptyPrivateLibrary:"கித்தானிலுள்ள உருப்படியை இங்குச் சேர்க்க தேர்ந்தெடு."},zJe={clearReset:"கித்தானை அகரமாக்கு",exportJSON:"கோப்புக்கு ஏற்றுமதிசெய்",exportImage:"படத்தை ஏற்றுமதிசெய்...",export:"இதில் சேமி...",copyToClipboard:"நகலகத்திற்கு நகலெடு",save:"தற்போதைய கோப்புக்குச் சேமி",saveAs:"இப்படி சேமி",load:"திற",getShareableLink:"பகிரக்கூடிய தொடுப்பைப் பெறு",close:"மூடு",selectLanguage:"மொழியைத் தேர்ந்தெடு",scrollBackToContent:"உருட்டி உள்ளடக்கத்துக்குத் திரும்பு",zoomIn:"பெரிதாக்கு",zoomOut:"சிறிதாக்கு",resetZoom:"உருவளவை அகரமாக்கு",menu:"சிறுபட்டி",done:"முடிந்தது",edit:"திருத்து",undo:"செயல்தவிர்",redo:"மீண்டும்செய்",resetLibrary:"நூலகத்தை அகரமாக்கு",createNewRoom:"புதிய அறையை உருவாக்கு",fullScreen:"முழுத் திரை",darkMode:"கருமை பயன்முறை",lightMode:"வெளிர்ந்த பயன்முறை",zenMode:"ஜென் பயன்முறை",objectsSnapMode:"",exitZenMode:"ஜென் பயன்முறையை விலகு",cancel:"ரத்துசெய்",clear:"துடை",remove:"நீக்கு",embed:"",publishLibrary:"பிரசுரி",submit:"சமர்ப்பி",confirm:"உறுதிசெய்",embeddableInteractionButton:""},ZJe={clearReset:"இது முழு கித்தானையும் துடைக்கும். நீங்கள் உறுதியா?",couldNotCreateShareableLink:"பகிரக்கூடிய தொடுப்பை உருவாக்க முடியவில்லை.",couldNotCreateShareableLinkTooBig:"பகிரக்கூடிய தொடுப்பை உருவாக்க முடியவில்லை: காட்சி மிகப்பெரிதாக உள்ளது",couldNotLoadInvalidFile:"செல்லாத கோப்பை ஏற்ற முடியவில்லை",importBackendFailed:"தேகத்திலிருந்து இறக்குமதி தோல்வி.",cannotExportEmptyCanvas:"காலியான கித்தானை ஏற்றுமதிசெய்ய முடியாது.",couldNotCopyToClipboard:"நகலகத்திற்கு நகலெடுக்க முடியவில்லை.",decryptFailed:"தரவை மறைநீக்க முடியவில்லை.",uploadedSecurly:"பதிவேற்றம் இருமுனை மறையாகத்தால் பாதுகாக்கப்பட்டுள்ளது, எனவே எக்ஸ்கேலிட்ரா சேவையகமும் மூன்றாம் தரப்பினரும் உள்ளடக்கத்தை வாசிக்கமுடியாது.",loadSceneOverridePrompt:"வெளிப்புறச்சித்திரமேற்றல் இருக்கிற உள்ளடக்கத்தை இடங்கொள்ளும். தொடர விருப்பமா?",collabStopOverridePrompt:`அமர்வை நிறுத்துதல் முன்னர் அகமாக தேக்கிய உம் சித்திரத்தை மேலெழுதும். நீங்கள் உறுதியா?
|
||
|
||
(உம் அக சித்திரத்தை வைக்கவேண்டுமெனில், சும்மா உலாவி தாவலை மூடுக அதற்குபதிலாக.)`,errorAddingToLibrary:"உருப்படியை நூலகத்தில் சேர்க்க இயலா",errorRemovingFromLibrary:"உருப்படியை நூலகத்திலிருந்து நீக்க இயலா",confirmAddLibrary:"இதனால் {{numShapes}} வடிவம்(கள்) உம் நூலகத்தில் சேரும். நீங்கள் உறுதியா?",imageDoesNotContainScene:"இப்படத்தில் காட்சி தரவு ஏதும் இருப்பதுபோல் தெரியவில்லை. ஏற்றுமதியின்போது காட்சி உட்பதிதலை இயக்கினீரா?",cannotRestoreFromImage:"இப்படக்கோப்பிலிருந்து காட்சி மீட்டெடுக்கப்பட முடியாது",invalidSceneUrl:"வழங்கப்பட்ட உரலியிலிருந்து காட்சியை இறக்கவியலா. இது தவறான வடிவத்தில் உள்ளது, அ செல்லத்தக்க எக்ஸ்கேலிட்ரா JSON தரவைக் கொண்டில்லை.",resetLibrary:"இது உங்கள் நுலகத்தைத் துடைக்கும். நீங்கள் உறுதியா?",removeItemsFromsLibrary:"{{count}} உருப்படி(கள்)-ஐ உம் நூலகத்திலிருந்து அழிக்கவா?",invalidEncryptionKey:"மறையாக்க விசை 22 வரியுருக்கள் கொண்டிருக்கவேண்டும். நேரடி கூட்டுப்பணி முடக்கப்பட்டது.",collabOfflineWarning:`இணைய இணைப்பு இல்லை.
|
||
உமது மாற்றங்கள் சேமிக்கப்படா!`},VJe={unsupportedFileType:"ஆதரிக்கப்படா கோப்பு வகை.",imageInsertError:"படத்தைப் புகுத்தவியலா. பிறகு மீண்டும் முயலவும்...",fileTooBig:"கோப்பு மிகப்பெரிது. அனுமதிக்கப்பட்ட அதிகபட்ச அளவு {{maxSize}}.",svgImageInsertError:"எஸ்விஜி படத்தைப் புகுத்தவியலா. எஸ்விஜியின் மார்க்அப் செல்லாததாக தெரிகிறது.",failedToFetchImage:"",invalidSVGString:"செல்லாத SVG.",cannotResolveCollabServer:"கூட்டுப்பணிச் சேவையகத்துடன் இணைக்க முடியவில்லை. பக்கத்தை மீளேற்றி மீண்டும் முயலவும்.",importLibraryError:"நூலகத்தை ஏற்ற முடியவில்லை",collabSaveFailed:"பின்முனை தரவுத்தளத்தில் சேமிக்க முடியவில்லை. சிக்கல்கள் நீடித்தால், உமது வேலைகளை இழக்காமலிருப்பதை உறுதிசெய்ய உமது கோப்பை உள்ளகத்தில் சேமிக்க வேண்டும்.",collabSaveFailed_sizeExceeded:"பின்முனை தரவுத்தளத்தில் சேமிக்க முடியவில்லை, கித்தான் மிகப்பெரிதாகத் தெரிகிறது. உமது வேலைகளை இழக்காமலிருப்பதை உறுதிசெய்ய உமது கோப்பை உள்ளகத்தில் சேமிக்க வேண்டும்.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},jJe={selection:"தெரிவு",image:"படத்தைப் புகுத்து",rectangle:"செவ்வகம்",diamond:"வைரம்",ellipse:"நீள்வட்டம்",arrow:"அம்பு",line:"வரி",freedraw:"வரை",text:"உரை",library:"நூலகம்",lock:"தேர்ந்த கருவியை வரைந்த பின்பும் வைத்திரு",penMode:"பேனா - தடுப்பு தொடுதல்",link:"தேர்தெடுத்த வடிவத்திற்குத் தொடுப்பைச் சேர்/ புதுப்பி",eraser:"அழிப்பி",frame:"சட்டகம் கருவி",magicframe:"",embeddable:"",laser:"",hand:"கை (பார்வை நகர்கும் கருவி)",extraTools:"மற்ற கருவிகள்",mermaidToExcalidraw:"",magicSettings:""},XJe={canvasActions:"கித்தான் செயல்கள்",selectedShapeActions:"தேர்ந்த வடிவம் செயல்கள்",shapes:"வடிவங்கள்"},$Je={canvasPanning:"",linearElement:"பல புள்ளிகளைத் துவக்க சொடுக்கு, ஒற்றை வரிக்கு பிடித்திழு",freeDraw:"சொடுக்கி பிடித்திழு, முடித்ததும் விடுவி",text:"துணுக்குதவி: தெரிவு கருவி கொண்டு எங்காவது இரு-சொடுக்கி உரையைச் சேர்க்கலாம்",embeddable:"",text_selected:"உரையைத் திருத்த இரு-சொடுக்கு அ ENTERஐ அழுத்து",text_editing:"திருத்துவதை முடிக்க Escape அ CtrlOrCmd+ENTERஐ அழுத்து",linearElementMulti:"கடைசி புள்ளியில் சொடுக்கு அ முடிக்க Escape அ Enter அழுத்து",lockAngle:"SHIFTஐ அழுத்திப்பிடித்து கோணத்தை வற்புறுத்தலாம்",resize:`மறுஅளவிடுகையில் SHIFTஐ அழுத்திப்பிடித்து விகிதசமத்தை வற்புறுத்தலாம்,
|
||
மையத்திலிருந்து மறுஅளவிட ALTஐ அழுத்திப்பிடி`,resizeImage:`SHIFTஐ நீண்டழுத்தி கட்டற்று அளவுமாற்றலாம்,
|
||
மையத்திலிருந்து அளவுமாற்ற ALTஐ நீண்டழுத்துக`,rotate:"சுழற்றுகையில் SHIFTஐ அழுத்திப்பிடித்து கோணங்களை வற்புறுத்தலாம்",lineEditor_info:"",lineEditor_pointSelected:`புள்ளி(கள்)ஐ நீக்க Deleteஐ அழுத்து,
|
||
நகலாக்க CtrlOrCmd+D, அ நகர்த்த பிடித்திழு`,lineEditor_nothingSelected:`திருத்த புள்ளியைத் தேர்ந்தெடு (பலவற்றை தேர SHIFTஐ அழுத்திப்பிடி),
|
||
அ புதிய புள்ளிகளைச் சேர்க்க Altஐ அழுத்திப்பிடித்துச் சொடுக்கு`,placeImage:"படத்தை வைக்கச் சொடுக்கு, அ கைமுறையாக அளவு அமைக்க சொடுக்கி பிடித்திழு",publishLibrary:"உம் சொந்த நூலகத்தைப் பிரசுரி",bindTextToElement:"உரையைச் சேர்க்க enterஐ அழுத்து",deepBoxSelect:"ஆழ்ந்துத் தேரவும் பிடித்திழுத்தலைத் தவிர்க்கவும் CtrlOrCmdஐ அழுத்திப்பிடி",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},AOe={cannotShowPreview:"முன்னோட்டம் காட்ட இயலவில்லை",canvasTooBig:"கித்தான் மிகப்பெரிதாக இருக்கலாம்.",canvasTooBigTip:"துணுக்குதவி: தூரத்திலுள்ள உறுப்புகளைப் நெருக்கமாக நகர்த்தப்பார்."},eOe={headingMain:"பிழையைச் சந்தித்தீரா. முயலவும் <button>பக்கத்தை மீண்டுமேற்றுகிறது.</button>",clearCanvasMessage:"மீண்டுமேற்றல் வேலைசெய்யவிட்டால், முயற்சி <button>கித்தானைத் துடைக்கிறது.</button>",clearCanvasCaveat:" இது வேலையை இழக்கக்கூடும் ",trackedToSentry:"இனங்காணியில் பிழை {{eventId}} எங்கள் இயங்குதளத்தில் தடமறியப்பட்டது.",openIssueMessage:"பிழையில் உம் காட்சி தகவலை உள்ளடக்காமலிருக்க நாங்கள் மிக எச்சரிக்கையாக இருந்தோம். உம் காட்சி தனிப்பட்டதில்லையெனில், பின்தொடர்வதற்கு பரிசீலிக்கவும் எங்கள் <button>பிழை தடமி.</button> கீழுள்ள தகவலை நகலெடுத்து ஒட்டி GitHub சிக்கலுள் உள்ளடக்கவும்.",sceneContent:"காட்சி உள்ளடக்கம்:"},tOe={desc_intro:"உம்முடன் கூட்டுப்பணிசெய்ய மக்களை தற்போதைய காட்சிக்கு அழைப்பிடலாம்.",desc_privacy:"வருந்தாதீர், அமர்வு இருமுனை மறையகத்தைப் பயன்படுத்துகிறது, ஆக நீங்கள் வரைவது எதுவும் தனிப்பட்டதாக இருக்கும். எங்கள் சேவையகத்தால் கூட நீங்கள் என்ன செய்ததைப் பார்க்கவியலாது.",button_startSession:"அமர்வைத் துவக்கு",button_stopSession:"அமர்வை நிறுத்து",desc_inProgressIntro:"நேரடி-கூட்டுப்பணி அமர்வு தற்போது செயலிலுள்ளது.",desc_shareLink:"கூட்டுப்பணிபுரிய விரும்பும் எவருனும் இத்தொடுப்பைப் பகிர்க:",desc_exitSession:"அமர்வை நிறுத்தல் உம்மை அறையிலிருந்து துண்டிக்கும், ஆனால் காட்சியுடன் தொடர்ந்து பணிபுரிய உம்மாலியலும், அகமாக. இது பிற மக்களைப் பாதிக்காதென்பதைக் குறி, மற்றும் அவர்களாலவர்களுடைய பதிப்பில் இன்னும் கூட்டுப்பணிபுரியவியலும்.",shareTitle:"எக்ஸ்கேலிட்ராவில் நேரடி கூட்டுப்பணி அமர்வில் சேர்"},rOe={title:"பிழை"},iOe={disk_title:"வட்டில் சேமி",disk_details:"காட்சித் தரவை நீங்கள் பின்னர் இறக்குமதி செய்யக்கூடிய ஒரு கோப்பிற்கு ஏற்றுமதிசெய்க.",disk_button:"கோப்பில் சேமி",link_title:"பகிரக்கூடிய தொடுப்பு",link_details:"வாசிக்க-மட்டும் தொடுப்பாக ஏற்றுமதிசெய்.",link_button:"தொடுப்புக்கு ஏற்றுமதிசெய்",excalidrawplus_description:"காட்சியை உன் எக்ஸ்கேலிட்ரா பணியிடத்தில் சேமி.",excalidrawplus_button:"ஏற்றுமதி",excalidrawplus_exportError:"இத்தருணத்தில் எக்ஸ்கேலிட்ரா+ க்கு ஏற்றுமதிசெய்ய முடியவில்லை..."},uOe={blog:"எமது வலைப்பூவை வாசி",click:"சொடுக்கு",deepSelect:"ஆழ்ந்துத் தேர்",deepBoxSelect:"பெட்டியினுள் ஆழ்ந்துத் தேர், மற்றும் பிடித்திழுத்தலைத் தவிர்",curvedArrow:"வளைந்த அம்பு",curvedLine:"வளைந்த வரி",documentation:"ஆவணமாக்கல்",doubleClick:"இரு-சொடுக்கு",drag:"பிடித்திழு",editor:"திருத்தி",editLineArrowPoints:"",editText:"",github:"சிக்கலைக் கண்டீரா? சமர்ப்பி",howto:"எங்கள் கையேடுகளைப் பின்பற்றுக",or:"அ",preventBinding:"அம்பு பிணைதலைத் தவிர்",tools:"கருவிகள்",shortcuts:"விசைப்பலகை குறுக்குவழிகள்",textFinish:"திருத்துதலை முடி (உரை திருத்தி)",textNewLine:"புதிய வரியைச் சேர் (உரை திருத்தி)",title:"உதவி",view:"பார்",zoomToFit:"அனைத்துறுப்புகளும் பொருந்தும்படி விரிவாக்கு",zoomToSelection:"தெரிவுக்கு விரிவாக்கு",toggleElementLock:"தேர்ந்தெடுப்பைப் பூட்டு/பூட்டவிழ்",movePageUpDown:"மேலே/கீழே நகர்த்தவும்",movePageLeftRight:"இடது/வலது பக்கம் நகர்த்தவும்"},aOe={title:"கித்தானைத் துடை"},nOe={title:"நூலகத்தைப் பிரசுரி",itemName:"உருப்படியின் பெயர்",authorName:"ஆசிரியர் பெயர்",githubUsername:"GitHub பயனர்பெயர்",twitterUsername:"டுவிட்டர் பயனர்பெயர்",libraryName:"நூலக பெயர்",libraryDesc:"நூலக விவரிப்பு",website:"வலைத்தளம்",placeholder:{authorName:"உம் பெயர் அ பயனர்பெயர்",libraryName:"உம் நூலகத்தின் பெயர்",libraryDesc:"உம் நூலகத்தின் விவரிப்பு இதன் பயன்பாட்டை மக்கள் புரிந்துகொள்ளவுதவ",githubHandle:"GitHub கைப்பிடி (விரும்பினால்), ஆதலால் நீங்கள் நூலகத்தை மதிப்பாய்விற்காக சமர்ப்பித்தவுடன் திருத்தமுடியும்",twitterHandle:"டுவிட்டர் பயனர்பெயர் (விரும்பினால்), ஆதலால் டுவிட்டரில் முன்னிறுத்தும்போது யாமெவரைப் புகழ்வதென்றறிவோம்",website:"உமக்குரிய வலைத்தளத்திற்கு அ வேறெங்கிற்குமான தொடுப்பு (விரும்பினால்)"},errors:{required:"தேவைப்டுகிறது",website:"செல்லத்தக்க உரலியை உள்ளிடு"},noteDescription:"உம் நூலகத்தைச் சமர்ப்பி உள்ளடக்குவதற்கு <link>பொது நூலக களஞ்சியத்தில்</link>பிற மக்களவர்களின் சித்திரங்களில் பயன்படுத்த.",noteGuidelines:"நூலகம் முதலில் கைமுறையாக ஒப்புக்கொள்ளப்படவேண்டும். வாசிக்கவும் <link>வழிகாட்டுதல்களைச்</link> சமர்ப்பிக்கும் முன்பு. கோரப்பட்டால் தொடர்புகொள்ள மற்றும் மாற்றங்கள் செய்ய உமக்கொரு GitHub கணக்கு தேவை, ஆனால் அது கண்டிப்பாக தேவையல்ல.",noteLicense:"சமர்ப்பிப்பதனால், நூலகம் இதனடியில் பிரசரிக்கப்பட ஏற்கிறீர்கள் <link>MIT உரிமம், </link>சுருக்கமாக எவருமிதைப் வரையறையின்றி பயன்படுத்தலாமென குறிக்கிறது.",noteItems:"வடிக்கட்டக்கூடியதாகவிருக்க ஒவ்வொரு நூலகவுருப்படிக்கும் சொந்த பெயர் இருக்கவேண்டும். பின்வரும் நூலகவுருப்படிகள் உள்ளடக்கப்படும்:",atleastOneLibItem:"ஆரம்பிக்க ஒரு நூலக உருப்படியையாவது தேர்ந்தெடுக்கவும்",republishWarning:""},oOe={title:"நூலகம் சமர்ப்பிக்கப்பட்டது",content:"நன்றி {{authorName}}. உமது நூலகம் மதிப்பாய்விற்காக சமர்ப்பிக்கப்பட்டது. நிலையை நீங்கள் தடமறியலாம்<link>இங்கே</link>"},sOe={resetLibrary:"நூலகத்தை அகரமாக்கு",removeItemsFromLib:"நூலகத்திலிருந்து தேர்ந்தெடுத்த உருப்படிகளை நீக்கு"},lOe={header:"படத்தை ஏற்றுமதிதல",label:{withBackground:"பின்னணி",onlySelected:"தேர்ந்ததை மட்டும்",darkMode:"இருள் பயன்முறை",embedScene:"காட்சியை உட்பொதி",scale:"அளவுகோல்",padding:""},tooltip:{embedScene:""},title:{exportToPng:"PNGக்கு ஏற்றுமதிசெய்",exportToSvg:"SVGக்கு ஏற்றுமதிசெய்",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:""}},gOe={tooltip:"உம் சித்திரங்கள் இருமுனை மறையாக்கம் செய்யப்பட்டவையாதலால் எக்ஸ்கேலிட்ராவின் சேவையகங்கள் அவற்றை ஒருபோதும் பார்க்கா.",link:"எக்ஸ்கேலிட்ராவில் இருமுனை மறையாக்கம் மீதான வலைப்பூ இடுகை"},cOe={angle:"கோணம்",element:"உறுப்பு",elements:"உறுப்புகள்",height:"உயரம்",scene:"காட்சி",selected:"தேர்ந்தவை",storage:"சேமிப்பகம்",title:"மேதாவிகளுக்கான புள்ளிவிவரங்கள்",total:"மொத்தம்",version:"பதிப்பு",versionCopy:"நகலெடுக்க சொடுக்கு",versionNotAvailable:"பதிப்பு கிடைக்கவில்லை",width:"அகலம்"},COe={addedToLibrary:"நூலகத்தில் சேர்க்கப்பட்டது",copyStyles:"ஒயில்கள் நகலெடுக்கப்பட்டன.",copyToClipboard:"நகலகத்திற்கு நகலெடுக்கப்பட்டது.",copyToClipboardAsPng:`{{exportSelection}}-ஐ நகலகத்திற்கு PNG ஆக நகலெடுத்தது
|
||
({{exportColorScheme}})`,fileSaved:"கோப்பு சேமிக்கப்பட்டது.",fileSavedToFilename:"{filename}-க்கு சேமிக்கப்பட்டது",canvas:"கித்தான்",selection:"தெரிவு",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},BOe={transparent:"ஒளிபுகுத்தன்மை",black:"கருப்பு",white:"வெள்ளை",red:"சிவப்பு",pink:"இளஞ்சிவப்பு",grape:"திராட்சை",violet:"ஊதா",gray:"சாம்பல்",blue:"நீலம்",cyan:"மயில்நிறம்",teal:"டீல்",green:"பச்சை",yellow:"மஞ்சள்",orange:"ஆரஞ்சு",bronze:"வெண்கலம்"},EOe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"எளிமையாக வரைபடங்கள் உருவாக்க!",toolbarHint:"கருவியைத் தேர்ந்தெடு & வரை!",helpHint:"குறுக்குவழிகள் & உதவி"}},dOe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},IOe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},hOe={title:"",button:"",description:"",syntax:"",preview:""},cCr={labels:WJe,library:qJe,buttons:zJe,alerts:ZJe,errors:VJe,toolBar:jJe,headings:XJe,hints:$Je,canvasError:AOe,errorSplash:eOe,roomDialog:tOe,errorDialog:rOe,exportDialog:iOe,helpDialog:uOe,clearCanvasDialog:aOe,publishDialog:nOe,publishSuccessDialog:oOe,confirmDialog:sOe,imageExportDialog:lOe,encrypted:gOe,stats:cOe,toast:COe,colors:BOe,welcomeScreen:EOe,colorPicker:dOe,overwriteConfirm:IOe,mermaid:hOe}});var zOe={};yt(zOe,{alerts:()=>yOe,buttons:()=>DOe,canvasError:()=>FOe,clearCanvasDialog:()=>GOe,colorPicker:()=>_Oe,colors:()=>OOe,confirmDialog:()=>TOe,default:()=>CCr,encrypted:()=>HOe,errorDialog:()=>LOe,errorSplash:()=>xOe,errors:()=>wOe,exportDialog:()=>ROe,headings:()=>vOe,helpDialog:()=>NOe,hints:()=>kOe,imageExportDialog:()=>YOe,labels:()=>fOe,library:()=>mOe,mermaid:()=>qOe,overwriteConfirm:()=>WOe,publishDialog:()=>UOe,publishSuccessDialog:()=>MOe,roomDialog:()=>SOe,stats:()=>KOe,toast:()=>JOe,toolBar:()=>bOe,welcomeScreen:()=>POe});var fOe,mOe,DOe,yOe,wOe,bOe,vOe,kOe,FOe,xOe,SOe,LOe,ROe,NOe,GOe,UOe,MOe,TOe,YOe,HOe,KOe,JOe,OOe,POe,_Oe,WOe,qOe,CCr;var ZOe=P(()=>{qt();fOe={paste:"วาง",pasteAsPlaintext:"วางโดยไม่มีการจัดรูปแบบ",pasteCharts:"วางแผนภูมิ",selectAll:"เลือกทั้งหมด",multiSelect:"",moveCanvas:"",cut:"ตัด",copy:"คัดลอก",copyAsPng:"คัดลองไปยังคลิปบอร์ดเป็น PNG",copyAsSvg:"คัดลองไปยังคลิปบอร์ดเป็น SVG",copyText:"คัดลองไปยังคลิปบอร์ดเป็นข้อความ",copySource:"",convertToCode:"",bringForward:"นำขึ้นข้างบน",sendToBack:"ย้ายไปข้างล่าง",bringToFront:"นำขึ้นข้างหน้า",sendBackward:"ย้ายไปข้างหลัง",delete:"ลบ",copyStyles:"คัดลอกรูปแบบ",pasteStyles:"วางรูปแบบ",stroke:"เส้นขอบ",background:"พื้นหลัง",fill:"เติมสี",strokeWidth:"น้ำหนักเส้นขอบ",strokeStyle:"รูปแบบเส้น",strokeStyle_solid:"เส้นทึบ",strokeStyle_dashed:"เส้นประ",strokeStyle_dotted:"จุด",sloppiness:"ความเลอะเทอะ",opacity:"ความทึบแสง",textAlign:"จัดข้อความ",edges:"ขอบ",sharp:"",round:"",arrowheads:"หัวลูกศร",arrowhead_none:"ไม่มี",arrowhead_arrow:"ลูกศร",arrowhead_bar:"แถบ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"สามเหลี่ยม",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"ขนาดตัวอักษร",fontFamily:"แบบตัวอักษร",addWatermark:'เพิ่มลายน้ำ "สร้างด้วย Excalidraw"',handDrawn:"ลายมือ",normal:"ปกติ",code:"โค้ด",small:"เล็ก",medium:"กลาง",large:"ใหญ่",veryLarge:"ใหญ่มาก",solid:"",hachure:"",zigzag:"",crossHatch:"",thin:"บาง",bold:"หนา",left:"ซ้าย",center:"กลาง",right:"ขวา",extraBold:"หนาพิเศษ",architect:"",artist:"ศิลปิน",cartoonist:"",fileTitle:"ชื่อไฟล์",colorPicker:"เลือกสีที่กำหนดเอง",canvasColors:"",canvasBackground:"",drawingCanvas:"",layers:"",actions:"การกระทำ",language:"ภาษา",liveCollaboration:"",duplicateSelection:"ทำสำเนา",untitled:"ไม่มีชื่อ",name:"ชื่อ",yourName:"ชื่อของคุณ",madeWithExcalidraw:"",group:"จัดกลุ่ม",ungroup:"ยกเลิกการจัดกลุ่ม",collaborators:"",showGrid:"แสดงเส้นตาราง",addToLibrary:"เพิ่มไปในคลัง",removeFromLibrary:"นำออกจากคลัง",libraryLoadingMessage:"กำลังโหลดคลัง...",libraries:"",loadingScene:"กำลังโหลดฉาก",align:"จัดตำแหน่ง",alignTop:"จัดชิดด้านบน",alignBottom:"จัดชิดด้านล่าง",alignLeft:"จัดชิดซ้าย",alignRight:"จัดชิดขวา",centerVertically:"กึ่งกลางแนวตั้ง",centerHorizontally:"กึ่งกลางแนวนอน",distributeHorizontally:"กระจายแนวนอน",distributeVertically:"กระจายแนวตั้ง",flipHorizontal:"พลิกแนวนอน",flipVertical:"พลิกแนวตั้ง",viewMode:"โหมดมุมมอง",share:"แชร์",showStroke:"",showBackground:"",toggleTheme:"สลับธีม",personalLib:"คลังของฉัน",excalidrawLib:"คลังของ Excalidraw",decreaseFontSize:"ลดขนาดตัวอักษร",increaseFontSize:"เพิ่มขนาดตัวอักษร",unbindText:"ยกเลิกการผูกติด",bindText:"",createContainerFromText:"",link:{edit:"แก้ไขลิงก์",editEmbed:"แก้ไขลิงค์และการฝัง",create:"สร้างลิงค์",createEmbed:"สร้างลิงค์และการฝัง",label:"ลิงค์",labelEmbed:"ลิงค์และการฝัง",empty:"ไม่ได้ใส่ลิงค์"},lineEditor:{edit:"แก้ไขเส้น",exit:""},elementLock:{lock:"ล็อก",unlock:"ปลดล็อก",lockAll:"ล็อกทั้งหมด",unlockAll:"ปลดล็อกทั้งหมด"},statusPublished:"เผยแพร่",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},mOe={noItems:"ยังไม่มีรายการที่เพิ่มเข้าไปได้",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},DOe={clearReset:"รีเซ็ทผืนผ้าใบ",exportJSON:"ส่งออกไปยังไฟล์",exportImage:"ส่งออกเป็นรูปภาพ",export:"บันทึกไปยัง",copyToClipboard:"คัดลอกไปยังคลิปบอร์ด",save:"บันทึกเป็นไฟล์ปัจจุบัน",saveAs:"บันทึกเป็น",load:"เปิด",getShareableLink:"สร้างลิงค์ที่แชร์ได้",close:"ปิด",selectLanguage:"เลือกภาษา",scrollBackToContent:"เลื่อนกลับไปด้านบน",zoomIn:"ซูมเข้า",zoomOut:"ซูมออก",resetZoom:"รีเซ็ตการซูม",menu:"เมนู",done:"เสร็จสิ้น",edit:"แก้ไข",undo:"เลิกทำ",redo:"ทำซ้ำ",resetLibrary:"รีเซ็ตคลัง",createNewRoom:"สร้างห้องใหม่",fullScreen:"เต็มหน้าจอ",darkMode:"โหมดกลางคืน",lightMode:"โหมดกลางวัน",zenMode:"โหมด Zen",objectsSnapMode:"",exitZenMode:"ออกจากโหมด Zen",cancel:"ยกเลิก",clear:"เคลียร์",remove:"ลบ",embed:"สลับการฝัง",publishLibrary:"เผยแพร่",submit:"ตกลง",confirm:"ยืนยัน",embeddableInteractionButton:"คลิกเพื่อปฏิสัมพันธ์"},yOe={clearReset:"",couldNotCreateShareableLink:"ไม่สามารถสร้างลิงค์ได้",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"ไม่สามารถโหลดไฟล์ที่ผิดพลาดได้",importBackendFailed:"เกิดข้อผิดพลาดจากการนำเข้าจากระบบหลังบ้าน",cannotExportEmptyCanvas:"ไม่สามารถนำออกจากผืนผ้าใบที่ว่างเปล่าได้",couldNotCopyToClipboard:"ไม่สามารถคัดลอกไปยังคลิปบอร์ดได้",decryptFailed:"ไม่สามารถถอดรหัสข้อมูลได้",uploadedSecurly:"การอัพโหลดได้ถูกเข้ารหัสแบบ end-to-end หมายความว่าเซิร์ฟเวอร์ของ Excalidraw และบุคคลอื่นไม่สามารถอ่านข้อมูลได้",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"ไม่สามารถเพิ่มรายการเข้าไปในคลังได้",errorRemovingFromLibrary:"ไม่สามารถลบรายการนี้ออกจากคลังได้",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},wOe={unsupportedFileType:"ไม่รองรับชนิดของไฟล์นี้",imageInsertError:"ไม่สามารถเพิ่มรูปภาพได้ ลองอีกครั้งในภายหลัง",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"ไฟล์ SVG ผิดพลาด",cannotResolveCollabServer:"ไม่สามารถเชื่อต่อกับ collab เซิร์ฟเวอร์ได้ โปรดลองโหลดหน้านี้ใหม่และลองอีกครั้ง",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"การเพิ่มองค์ประกอบที่ฝังยังไม่สามารถเพิ่มเข้าไปในไลบลารีได้",iframe:"",image:"การสนับสนุนสำหรับเพิ่มรูปภาพลงในไลบลารีจะมาในเร็ว ๆ นี้"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},bOe={selection:"",image:"",rectangle:"สี่เหลี่ยมผืนผ้า",diamond:"",ellipse:"วงรี",arrow:"ลูกศร",line:"",freedraw:"",text:"ข้อความ",library:"คลัง",lock:"",penMode:"",link:"",eraser:"ยางลบ",frame:"",magicframe:"",embeddable:"ฝังเว็บ",laser:"",hand:"",extraTools:"เครื่องมืออื่นๆ",mermaidToExcalidraw:"",magicSettings:""},vOe={canvasActions:"",selectedShapeActions:"",shapes:"รูปร่าง"},kOe={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"คลิกและลากเพื่อสร้างการฝังสำหรับเว็บไซต์",text_selected:"คลิกสองครั้งหรือกด ENTER เพื่อแก้ไขข้อความ",text_editing:"กดปุ่ม Esc หรือกด Ctrl, Cmd + Enter เพื่อเสร็จการแก้ไข",linearElementMulti:"คลิกที่จุดสุดท้ายหรือกด Escape หรือ Enter เพื่อเสร็จสิ้น",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:`กดปุ่ม Delete เพื่อลบจุด
|
||
กด Ctrl หรือ Cmd + D เพื่อทำซ้ำหรือลากเพื่อเคลื่อนย้าย`,lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},FOe={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},xOe={headingMain:"<button>กำลังรีโหลดหน้า</button>",clearCanvasMessage:"ถ้าโหลดไม่ได้ ให้ลอง <button>เคลียร์ผืนผ้าใบ</button>",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},SOe={desc_intro:"",desc_privacy:"",button_startSession:"เริ่มเซสชัน",button_stopSession:"หยุดเซสชัน",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},LOe={title:""},ROe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:"ไม่สามารถส่งออกไปที่ Excalidraw+ ได้ในขณะนี้"},NOe={blog:"อ่านบล็อกของพวกเรา",click:"คลิก",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"ดับเบิลคลิก",drag:"ลาก",editor:"",editLineArrowPoints:"",editText:"แก้ไขข้อความ / เพิ่มข้อความ",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"ช่วยเหลือ",view:"ดู",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:"ย้ายหน้าไปด้าน ซ้าย/ขวา"},GOe={title:""},UOe={title:"",itemName:"",authorName:"ชื่อเจ้าของ",githubUsername:"ชื่อผู้ใช้ GitHub",twitterUsername:"ชื่อผู้ใช้ Twitter",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},MOe={title:"",content:""},TOe={resetLibrary:"",removeItemsFromLib:""},YOe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"โหมดกลางคืน",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"ส่งออกไปเป็น SVG",exportToSvg:"ส่งออกไปเป็น SVG",copyPngToClipboard:"คัดลอก PNG ไปยังคลิปบอร์ด"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"คัดลอกไปยังคลิปบอร์ด"}},HOe={tooltip:"",link:""},KOe={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},JOe={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},OOe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"ฟ้าน้ำทะเล",green:"เขียว",yellow:"เหลือง",orange:"ส้ม",bronze:"ทองแดง"},POe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},_Oe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},WOe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},qOe={title:"",button:"",description:"",syntax:"",preview:""},CCr={labels:fOe,library:mOe,buttons:DOe,alerts:yOe,errors:wOe,toolBar:bOe,headings:vOe,hints:kOe,canvasError:FOe,errorSplash:xOe,roomDialog:SOe,errorDialog:LOe,exportDialog:ROe,helpDialog:NOe,clearCanvasDialog:GOe,publishDialog:UOe,publishSuccessDialog:MOe,confirmDialog:TOe,imageExportDialog:YOe,encrypted:HOe,stats:KOe,toast:JOe,colors:OOe,welcomeScreen:POe,colorPicker:_Oe,overwriteConfirm:WOe,mermaid:qOe}});var DPe={};yt(DPe,{alerts:()=>$Oe,buttons:()=>XOe,canvasError:()=>iPe,clearCanvasDialog:()=>lPe,colorPicker:()=>pPe,colors:()=>hPe,confirmDialog:()=>CPe,default:()=>BCr,encrypted:()=>EPe,errorDialog:()=>nPe,errorSplash:()=>uPe,errors:()=>APe,exportDialog:()=>oPe,headings:()=>tPe,helpDialog:()=>sPe,hints:()=>rPe,imageExportDialog:()=>BPe,labels:()=>VOe,library:()=>jOe,mermaid:()=>mPe,overwriteConfirm:()=>fPe,publishDialog:()=>gPe,publishSuccessDialog:()=>cPe,roomDialog:()=>aPe,stats:()=>dPe,toast:()=>IPe,toolBar:()=>ePe,welcomeScreen:()=>QPe});var VOe,jOe,XOe,$Oe,APe,ePe,tPe,rPe,iPe,uPe,aPe,nPe,oPe,sPe,lPe,gPe,cPe,CPe,BPe,EPe,dPe,IPe,hPe,QPe,pPe,fPe,mPe,BCr;var yPe=P(()=>{qt();VOe={paste:"Yapıştır",pasteAsPlaintext:"Düz metin olarak yapıştır",pasteCharts:"Grafikleri yapıştır",selectAll:"Tümünü seç",multiSelect:"Seçime öge ekle",moveCanvas:"Tuvali taşı",cut:"Kes",copy:"Kopyala",copyAsPng:"Panoya PNG olarak kopyala",copyAsSvg:"Panoya SVG olarak kopyala",copyText:"Panoya metin olarak kopyala",copySource:"",convertToCode:"",bringForward:"Bir öne getir",sendToBack:"Arkaya gönder",bringToFront:"En öne getir",sendBackward:"Bir geriye gönder",delete:"Sil",copyStyles:"Stilleri kopyala",pasteStyles:"Stilleri yapıştır",stroke:"Vurgu",background:"Arka plan",fill:"Doldur",strokeWidth:"Kontur genişliği",strokeStyle:"Kontur stili",strokeStyle_solid:"Dolu",strokeStyle_dashed:"Kesik çizgili",strokeStyle_dotted:"Noktalı",sloppiness:"Üstün körülük",opacity:"Opaklık",textAlign:"Metin hizala",edges:"Kenarlar",sharp:"Keskin",round:"Yuvarlak",arrowheads:"Ok uçları",arrowhead_none:"Yok",arrowhead_arrow:"Ok",arrowhead_bar:"Çizgi",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Üçgen",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Yazı tipi boyutu",fontFamily:"Yazı tipi ailesi",addWatermark:'"Excalidraw ile yapıldı" yazısını ekle',handDrawn:"El-yazısı",normal:"Normal",code:"Kod",small:"Küçük",medium:"Orta",large:"Büyük",veryLarge:"Çok geniş",solid:"Dolu",hachure:"Taralı",zigzag:"Zikzak",crossHatch:"Çapraz-taralı",thin:"İnce",bold:"Kalın",left:"Sol",center:"Ortala",right:"Sağ",extraBold:"Ekstra kalın",architect:"Mimar",artist:"Sanatçı",cartoonist:"Karikatürist",fileTitle:"Dosya adı",colorPicker:"Renk seçici",canvasColors:"Tuvalin üzerinde kullanıldı",canvasBackground:"Tuval arka planı",drawingCanvas:"Çizim tuvali",layers:"Katmanlar",actions:"Eylemler",language:"Dil",liveCollaboration:"Canlı ortak çalışma alanı...",duplicateSelection:"Çoğalt",untitled:"Adsız",name:"İsim",yourName:"İsminiz",madeWithExcalidraw:"Excalidraw ile yapıldı",group:"Seçimi grup yap",ungroup:"Seçilen grubu dağıt",collaborators:"Ortaklar",showGrid:"Izgarayı göster",addToLibrary:"Kütüphaneye ekle",removeFromLibrary:"Kütüphaneden kaldır",libraryLoadingMessage:"Kütüphane yükleniyor…",libraries:"Kütüphanelere gözat",loadingScene:"Sahne yükleniyor…",align:"Hizala",alignTop:"Yukarı hizala",alignBottom:"Aşağı hizala",alignLeft:"Sola hizala",alignRight:"Sağa hizala",centerVertically:"Dikeyde ortala",centerHorizontally:"Yatayda ortala",distributeHorizontally:"Yatay dağıt",distributeVertically:"Dikey dağıt",flipHorizontal:"Yatay döndür",flipVertical:"Dikey döndür",viewMode:"Görünüm modu",share:"Paylaş",showStroke:"Kontur için renk seçiciyi göster",showBackground:"Arkaplan için renk seçiciyi göster",toggleTheme:"Temayı etkinleştir/devre dışı bırak",personalLib:"Kişisel Kitaplık",excalidrawLib:"Excalidraw Kitaplığı",decreaseFontSize:"Yazı Tipi Boyutunu Küçült",increaseFontSize:"Yazı Tipi Boyutunu Büyült",unbindText:"Metni çöz",bindText:"Metni taşıyıcıya bağla",createContainerFromText:"Metni bileşen içinde sar",link:{edit:"Bağlantıyı düzenle",editEmbed:"Bağlantıyı düzenle & yerleştir",create:"Bağlantı oluştur",createEmbed:"Bağlantı oluştur & yerleştir",label:"Bağlantı",labelEmbed:"Bağlantı & yerleştirme",empty:"Herhangi bir bağlantı oluşturulmadı"},lineEditor:{edit:"Çizgiyi düzenle",exit:"Çizgi düzenlemeden çık"},elementLock:{lock:"Kilitle",unlock:"Kilidi Kaldır",lockAll:"Hepsini kilitle",unlockAll:"Hepsinin kilidini kaldır"},statusPublished:"Yayınlandı",sidebarLock:"Kenar çubuğu açık kalsın",selectAllElementsInFrame:"Çerçevedeki tüm bileşenleri seç",removeAllElementsFromFrame:"Çerçevedeki tüm bileşenleri sil",eyeDropper:"Tuvalden renk seç",textToDiagram:"",prompt:""},jOe={noItems:"Öğe eklenmedi...",hint_emptyLibrary:"Öğelerden birini eklemek için öğeyi seçiniz veya aşağıdaki genel kütüphaneden öğeleri ekleyin.",hint_emptyPrivateLibrary:"Tuvalden bir eleman seçerek sayfaya ekleyin."},XOe={clearReset:"Tuvali sıfırla",exportJSON:"Dosyaya aktar",exportImage:"Resimleri dışa aktar...",export:"Şuraya kaydet...",copyToClipboard:"Panoya kopyala",save:"Geçerli dosyaya kaydet",saveAs:"Farklı kaydet",load:"Aç",getShareableLink:"Paylaşılabilir bağlantı al",close:"Kapat",selectLanguage:"Dil seçin",scrollBackToContent:"İçeriğe geri dön",zoomIn:"Yakınlaştır",zoomOut:"Uzaklaştır",resetZoom:"Yakınlaştırmayı sıfırla",menu:"Menü",done:"Tamam",edit:"Düzenle",undo:"Geri Al",redo:"Yeniden yap",resetLibrary:"Kütüphaneyi sıfırla",createNewRoom:"Yeni oda oluştur",fullScreen:"Tam ekran",darkMode:"Koyu tema",lightMode:"Açık tema",zenMode:"Zen modu",objectsSnapMode:"Nesnelere hizala",exitZenMode:"Zen modundan çık",cancel:"İptal",clear:"Temizle",remove:"Kaldır",embed:"",publishLibrary:"Yayınla",submit:"Gönder",confirm:"Onayla",embeddableInteractionButton:"Etkileşime girmek için tıkla"},$Oe={clearReset:"Tuvalin tamamı temizlenecek. Emin misiniz?",couldNotCreateShareableLink:"Paylaşılabilir bağlantı oluşturulamadı.",couldNotCreateShareableLinkTooBig:"Paylaşılabilir bağlantı oluşturulamadı: sahne çok büyük",couldNotLoadInvalidFile:"Bilinmeyen dosya yüklenemiyor",importBackendFailed:"Sunucudan içe aktarma başarısız.",cannotExportEmptyCanvas:"Boş tuval dışarıya aktarılamaz.",couldNotCopyToClipboard:"Panoya kopyalanamıyor.",decryptFailed:"Şifrelenmiş veri çözümlenemedi.",uploadedSecurly:"Yükleme uçtan uca şifreleme ile korunmaktadır. Excalidraw sunucusu ve üçüncül şahıslar içeriği okuyamayacaktır.",loadSceneOverridePrompt:"Harici çizimler yüklemek mevcut olan içeriği değiştirecektir. Devam etmek istiyor musunuz?",collabStopOverridePrompt:`Oturumu sonlandırmak daha önceki, yerel olarak kaydedilmiş çizimin üzerine kaydedilmesine sebep olacak. Emin misiniz?
|
||
|
||
(Yerel çiziminizi kaybetmemek için tarayıcı sekmesini kapatabilirsiniz.)`,errorAddingToLibrary:"Öğe kütüphaneye eklenemedi",errorRemovingFromLibrary:"Öğe kütüphaneden silinemedi",confirmAddLibrary:"Bu, kitaplığınıza {{numShapes}} tane şekil ekleyecek. Emin misiniz?",imageDoesNotContainScene:"Bu görüntü herhangi bir sahne verisi içermiyor gibi görünüyor. Dışa aktarma sırasında sahne yerleştirmeyi etkinleştirdiniz mi?",cannotRestoreFromImage:"Sahne bu resim dosyasından geri yüklenemedi",invalidSceneUrl:"Verilen bağlantıdan çalışma alanı yüklenemedi. Dosya bozuk olabilir veya geçerli bir Excalidraw JSON verisi bulundurmuyor olabilir.",resetLibrary:"Bu işlem kütüphanenizi sıfırlayacak. Emin misiniz?",removeItemsFromsLibrary:"{{count}} öğe(ler) kitaplıktan kaldırılsın mı?",invalidEncryptionKey:"Şifreleme anahtarı 22 karakter olmalı. Canlı işbirliği devre dışı bırakıldı.",collabOfflineWarning:"İnternet bağlantısı bulunamadı. Değişiklikleriniz kaydedilmeyecek!"},APe={unsupportedFileType:"Desteklenmeyen dosya türü.",imageInsertError:"Görsel eklenemedi. Daha sonra tekrar deneyin...",fileTooBig:"Dosya çok büyük. İzin verilen maksimum boyut {{maxSize}}.",svgImageInsertError:"SVG resmi eklenemedi. SVG işaretlemesi geçersiz görünüyor.",failedToFetchImage:"",invalidSVGString:"Geçersiz SVG.",cannotResolveCollabServer:"İş birliği sunucusuna bağlanılamıyor. Lütfen sayfayı yenileyip tekrar deneyin.",importLibraryError:"Kütüphane yüklenemedi",collabSaveFailed:"Backend veritabanına kaydedilemedi. Eğer problem devam ederse, çalışmanızı korumak için dosyayı yerel olarak kaydetmelisiniz.",collabSaveFailed_sizeExceeded:"Backend veritabanına kaydedilemedi; tuval çok büyük. Çalışmanızı korumak için dosyayı yerel olarak kaydetmelisiniz.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:"Resimleri kütüphaneye ekleme desteği yakında geliyor!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},ePe={selection:"Seçme",image:"Görsel ekle",rectangle:"Dikdörtgen",diamond:"Elmas",ellipse:"Elips",arrow:"Ok",line:"Çizgi",freedraw:"Çiz",text:"Yazı",library:"Kütüphane",lock:"Seçilen aracı çizimden sonra aktif tut",penMode:"Kalem modu - dokunmayı engelle",link:"Seçilen şekil için bağlantı Ekle/Güncelle",eraser:"Silgi",frame:"Çerçeve aracı",magicframe:"",embeddable:"Web Yerleştirme",laser:"Lazer işaretçisi",hand:"",extraTools:"Daha fazla araç",mermaidToExcalidraw:"",magicSettings:""},tPe={canvasActions:"Tuval eylemleri",selectedShapeActions:"Seçilen şekil aksiyonları",shapes:"Şekiller"},rPe={canvasPanning:"",linearElement:"Birden fazla nokta için tıklayın, tek çizgi için sürükleyin",freeDraw:"Tıkla ve sürükle, bitirdiğinde serbest bırak",text:"İpucu: seçme aracıyla herhangi bir yere çift tıklayarak da yazı ekleyebilirsin",embeddable:"Web sitesi yerleştirmek için sürükle bırak",text_selected:"Metni düzenlemek için çift tıklayın veya ENTER'a basın",text_editing:"Düzenlemeyi bitirmek için ESC veya Ctrl/Cmd+ENTER tuşlarına basın",linearElementMulti:"Bitirmek için son noktaya tıklayın ya da Escape veya Enter tuşuna basın",lockAngle:"SHIFT tuşuna basılı tutarak açıyı koruyabilirsiniz",resize:`Yeniden boyutlandırırken SHIFT tuşunu basılı tutarak oranları sınırlayabilirsiniz,
|
||
merkezden yeniden boyutlandırmak için ALT tuşunu basılı tutun`,resizeImage:"SHIFT'e basılı tutarak serbestçe yeniden boyutlandırabilirsiniz, merkezden yeniden boyutlandırmak için ALT tuşunu basılı tutun",rotate:"Döndürürken SHIFT tuşuna basılı tutarak açıları koruyabilirsiniz",lineEditor_info:"Puanları düzenlemek için ctrl veya cmd tuşuna basılı tutup çift tıklayın veya enter tuşuna basın",lineEditor_pointSelected:`Sil tuşuna basarak noktaları silin,
|
||
Ctrl/Cmd + D ile çoğaltın, ya da sürükleyerek taşıyın`,lineEditor_nothingSelected:`Düzenlemek için bir nokta seçin (birden fazla seçmek için SHIFT tuşunu basılı tutun),
|
||
veya Alt tuşunu basılı tutun ve yeni noktalar eklemek için tıklayın`,placeImage:"Resmi yerleştirmek için tıklayın ya da boyutunu manuel olarak ayarlamak için tıklayıp sürükleyin",publishLibrary:"Kendi kitaplığınızı yayınlayın",bindTextToElement:"Enter tuşuna basarak metin ekleyin",deepBoxSelect:"Ctrl/Cmd tuşuna basılı tutarak derin seçim yapın ya da sürüklemeyi engelleyin",eraserRevert:"Alt tuşuna basılı tutarak silinme için işaretlenmiş ögeleri tersine çevirin",firefox_clipboard_write:"",disableSnapping:""},iPe={cannotShowPreview:"Önizleme gösterilemiyor",canvasTooBig:"Kanvas çok büyük olabilir.",canvasTooBigTip:"İpucu: En uzaktaki elemanları birbirine yakınlaştırmayı deneyin."},uPe={headingMain:"Hata oluştu. Lütfen <button>sayfayı yenilemeyi deneyin.</button>",clearCanvasMessage:"Yenileme sonrası sorun devam ediyorsa, lütfen <button>çizim alanını temizlemeyi deneyin.</button>",clearCanvasCaveat:" Bu, yaptığınız değişiklikleri sıfırlayacak ",trackedToSentry:"Tanımlayıcı ile ilgili hata {{eventId}} sistemimize yakalandı.",openIssueMessage:"Sahne bilginizi hata mesajına yansıtmamak için oldukça dikkatli davrandık. Eğer sahneniz gizli değilse hatayı lütfen şuradan takip edin <button>hata takibi.</button> Lütfen aşağıya GitHub sorununa kopyalayarak ve yapıştırarak bilgi ekleyin.",sceneContent:"Sahne içeriği:"},aPe={desc_intro:"Çalışma alanınıza, sizinle birlikte çalışabilmeleri için başkalarını da ekleyebilirsiniz.",desc_privacy:"Çalışma ortamında yaptıklarınız ve çizimleriniz uçtan uca şifrelemeyle saklanmaktadır. Sunucularımız dahi bu verileri şifrelenmemiş haliyle göremez.",button_startSession:"Oturumu başlat",button_stopSession:"Oturumu sonlandır",desc_inProgressIntro:"Ortak çalışma ortamı oluşturuldu.",desc_shareLink:"Bu bağlantıyı birlikte çalışacağınız kişilerle paylaşabilirsiniz:",desc_exitSession:"Çalışma ortamını kapattığınızda ortak çalışmadan ayrılmış olursunuz ancak kendi versiyonunuzda çalışmaya devam edebilirsiniz. Bu durumda ortak çalıştığınız diğer kişiler etkilenmeyecek, çalışma ortamındaki versiyon üzerinden çalışmaya devam edebilecekler.",shareTitle:"Excalidraw'da canlı ortak calışma oturumuna katıl"},nPe={title:"Hata"},oPe={disk_title:"Belleğe kaydet",disk_details:"Sahne verilerini daha sonra içe aktarabileceğiniz bir dosyaya aktarın.",disk_button:"Dosyaya kaydet",link_title:"Paylaşılabilir bağlantı",link_details:"Salt okunur bir bağlantı olarak dışa aktarın.",link_button:"Bağlantı olarak dışa aktar",excalidrawplus_description:"Sahneyi Excalidraw+ çalışma alanınıza kaydedin.",excalidrawplus_button:"Dışa aktar",excalidrawplus_exportError:"Şu anda Excalidraw+'a aktarılamadı..."},sPe={blog:"Blog'umuzu okuyun",click:"tıkla",deepSelect:"Derin seçim",deepBoxSelect:"Kutu içerisinde derin seçim yapın, sürüklemeyi engelleyin",curvedArrow:"Eğri ok",curvedLine:"Eğri çizgi",documentation:"Dokümantasyon",doubleClick:"çift-tıklama",drag:"sürükle",editor:"Düzenleyici",editLineArrowPoints:"Çizgi/ok noktalarını düzenle",editText:"Etiket / metin düzenle",github:"Bir hata mı buldun? Bildir",howto:"Rehberlerimizi takip edin",or:"veya",preventBinding:"Ok bağlamayı önleyin",tools:"Araçlar",shortcuts:"Klavye kısayolları",textFinish:"Düzenlemeyi bitir (metin düzenleyici)",textNewLine:"Yeni satır ekle (metin düzenleyici)",title:"Yardım",view:"Görünüm",zoomToFit:"Tüm öğeleri sığdırmak için yakınlaştır",zoomToSelection:"Seçime yakınlaş",toggleElementLock:"Seçimi Kilitle/çöz",movePageUpDown:"Sayfayı yukarı/aşağı kaydır",movePageLeftRight:"Sayfayı sola/sağa kaydır"},lPe={title:"Tuvali temizle"},gPe={title:"Kitaplığı yayınla",itemName:"Öğe adı",authorName:"Yazar adı",githubUsername:"GıtHub kullanıcı adı",twitterUsername:"Twitter kullanıcı adı",libraryName:"Kitaplık adı",libraryDesc:"Kitaplık açıklaması",website:"Web sitesi",placeholder:{authorName:"Adınız ya da kullanıcı adınız",libraryName:"Kitaplığınızın adı",libraryDesc:"İnsanların kullanımını anlamasına yardımcı olmak için kitaplığınızın açıklaması",githubHandle:"Github bağlantısı ( tercihe bağlı), kütüphane gözden geçirme için onaylandığında düzenleyebiliesiniz diye",twitterHandle:"Twitter kullanıcı adı ( tercihe bağlı), bu sayede Twitter üzerinde paylaşıren çalışmanızı size atfedebiliriz",website:"Kişisel web sayfanızı ya da başka bir yeri bağlayın (tercihe bağlı)"},errors:{required:"Gerekli",website:"Geçerli bir URL girin"},noteDescription:"Submit your library to be included in the <link>genel kütüphane reposu</link>diğer insanlar çizimlerinde kullanabilsin diye.",noteGuidelines:"Önce kütüphane elle onaylanmalı. şunu okuyun <link>yönergeler</link> onaylamadan önce. gerekli olması halinde iletişim kurmak için ve değişiklik için Github hesabı gerekli, ama çok da illaki olmalı değil.",noteLicense:"Bunu onaylayarak, kütüğhanenin şu lisansla yayınlanmasını onaylıyorsunuz <link>MIT Lisans, </link>ki bu kısaca herkesin onu kısıtlama olmaksızın kullanabileceği anlamına gelmektedir.",noteItems:"Her kütüphane kendi ismine sahip olmalı ki tarama yapabilelim. Şu kütüphane ögeleri dahil edilecek:",atleastOneLibItem:"Lütfen başlamak için en az bir tane kütüphane ögesi seçin",republishWarning:"Not: seçilen ögelerden bir kısmı zaten yayınlanmış/gönderilmiş. Yalnızca mevcut kütüphane ve gönderileri güncellerken yeniden gönderme işlemi yapmalısınız."},cPe={title:"Kütüphane gönderildi",content:"Teşekkürler {{authorName}}. Kütüphaneniz gözden geçirme için alındı. Durumu takip edebilirsiniz<link>burada</link>"},CPe={resetLibrary:"Kütüphaneyi sıfırla",removeItemsFromLib:"Seçilen ögeleri kütüphaneden kaldır"},BPe={header:"Resmi dışa aktar",label:{withBackground:"Arka plan",onlySelected:"Sadece seçilen",darkMode:"Karanlık mod",embedScene:"Sahne yerleştir",scale:"Ölçeklendir",padding:"Dış boşluk"},tooltip:{embedScene:"Sahne verisi, sahnenin geri yüklenebilmesi için dışarı aktarılan PNG/SVG dosyasına kaydedilecektir. Bu, dışa aktarılan dosya boyutunu arttıracaktır."},title:{exportToPng:"PNG olarak dışa aktar",exportToSvg:"SVG olarak dışa aktar",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Panoya kopyala"}},EPe={tooltip:"Çizimleriniz uçtan-uca şifrelenmiştir, Excalidraw'ın sunucuları bile onları göremez.",link:"Excalidraw'da uçtan uca şifreleme hakkında blog yazısı"},dPe={angle:"Açı",element:"Bileşen",elements:"Bileşenler",height:"Yükseklik",scene:"Sahne",selected:"Seçili",storage:"Depolama",title:"İnekler için istatistikler",total:"Toplam",version:"Sürüm",versionCopy:"Kopyalamak için tıkla",versionNotAvailable:"Sürüm mevcut değil",width:"Genişlik"},IPe={addedToLibrary:"Kütüphaneye eklendi",copyStyles:"Stiller kopyalandı.",copyToClipboard:"Panoya kopyalandı.",copyToClipboardAsPng:`{{exportSelection}} panoya PNG olarak
|
||
({{exportColorScheme}}) kopyalandı`,fileSaved:"Dosya kaydedildi.",fileSavedToFilename:"{filename} kaydedildi",canvas:"tuval",selection:"seçim",pasteAsSingleElement:"Tekil obje olarak yapıştırmak için veya var olan bir metin editörüne yapıştırmak için {{shortcut}} kullanın",unableToEmbed:"",unrecognizedLinkFormat:""},hPe={transparent:"Şeffaf",black:"Siyah",white:"Beyaz",red:"Kırmızı",pink:"Pembe",grape:"Koyu Mor",violet:"Menekşe rengi",gray:"Gri",blue:"Mavi",cyan:"Camgöbeği",teal:"Deniz mavisi",green:"Yeşil",yellow:"Sarı",orange:"Turuncu",bronze:""},QPe={app:{center_heading:"",center_heading_plus:"Ecalidraw+'a mı gitmek istediniz?",menuHint:"Dışa aktar, seçenekler, diller, ..."},defaults:{menuHint:"Dışa aktar, seçenekler, ve daha fazlası...",center_heading:"",toolbarHint:"Bir araç seçin ve çizime başlayın!",helpHint:"Kısayollar & yardım"}},pPe={mostUsedCustomColors:"En çok kullanılan özel renkler",colors:"Renkler",shades:"",hexCode:"Hex kodu",noShades:""},fPe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"Diske Kaydet",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},mPe={title:"",button:"",description:"",syntax:"",preview:""},BCr={labels:VOe,library:jOe,buttons:XOe,alerts:$Oe,errors:APe,toolBar:ePe,headings:tPe,hints:rPe,canvasError:iPe,errorSplash:uPe,roomDialog:aPe,errorDialog:nPe,exportDialog:oPe,helpDialog:sPe,clearCanvasDialog:lPe,publishDialog:gPe,publishSuccessDialog:cPe,confirmDialog:CPe,imageExportDialog:BPe,encrypted:EPe,stats:dPe,toast:IPe,colors:hPe,welcomeScreen:QPe,colorPicker:pPe,overwriteConfirm:fPe,mermaid:mPe}});var XPe={};yt(XPe,{alerts:()=>kPe,buttons:()=>vPe,canvasError:()=>RPe,clearCanvasDialog:()=>YPe,colorPicker:()=>ZPe,colors:()=>qPe,confirmDialog:()=>JPe,default:()=>ECr,encrypted:()=>PPe,errorDialog:()=>UPe,errorSplash:()=>NPe,errors:()=>FPe,exportDialog:()=>MPe,headings:()=>SPe,helpDialog:()=>TPe,hints:()=>LPe,imageExportDialog:()=>OPe,labels:()=>wPe,library:()=>bPe,mermaid:()=>jPe,overwriteConfirm:()=>VPe,publishDialog:()=>HPe,publishSuccessDialog:()=>KPe,roomDialog:()=>GPe,stats:()=>_Pe,toast:()=>WPe,toolBar:()=>xPe,welcomeScreen:()=>zPe});var wPe,bPe,vPe,kPe,FPe,xPe,SPe,LPe,RPe,NPe,GPe,UPe,MPe,TPe,YPe,HPe,KPe,JPe,OPe,PPe,_Pe,WPe,qPe,zPe,ZPe,VPe,jPe,ECr;var $Pe=P(()=>{qt();wPe={paste:"Вставити",pasteAsPlaintext:"Вставити як простий текст",pasteCharts:"Вставити діаграми",selectAll:"Вибрати все",multiSelect:"Додати елемент до вибраного",moveCanvas:"Перемістити полотно",cut:"Вирізати",copy:"Копіювати",copyAsPng:"Копіювати як PNG",copyAsSvg:"Копіювати як SVG",copyText:"Копіювати в буфер обміну як текст",copySource:"",convertToCode:"",bringForward:"Перемістити вперед",sendToBack:"На задній план",bringToFront:"На передній план",sendBackward:"Перемістити назад",delete:"Видалити",copyStyles:"Копіювати стилі",pasteStyles:"Вставити стилі",stroke:"Контур",background:"Тло",fill:"Заповнити",strokeWidth:"Товщина контуру",strokeStyle:"Стиль контуру",strokeStyle_solid:"Суцільний",strokeStyle_dashed:"Пунктир",strokeStyle_dotted:"Крапки",sloppiness:"Охайність",opacity:"Прозорість",textAlign:"Вирівнювання тексту",edges:"Краї",sharp:"Гострі",round:"Круглі",arrowheads:"Закінчення стрілки",arrowhead_none:"Жоден",arrowhead_arrow:"Стрілка",arrowhead_bar:"Колона",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Трикутник",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Розмір шрифту",fontFamily:"Шрифт",addWatermark:"Додати «Накреслене в Excalidraw»",handDrawn:"Ручний апарат",normal:"Звичайний",code:"Код",small:"Малий",medium:"Середній",large:"Великий",veryLarge:"Дуже великий",solid:"Суцільна",hachure:"Штриховка",zigzag:"Зиґзаґ",crossHatch:"Перехресна штриховка",thin:"Тонкий",bold:"Жирний",left:"Зліва",center:"По центру",right:"Справа",extraBold:"Товстий",architect:"Архітектор",artist:"Художник",cartoonist:"Карикатурист",fileTitle:"Назва файла",colorPicker:"Палітра кольорів",canvasColors:"Використовується на полотні",canvasBackground:"Тло полотна",drawingCanvas:"Полотно",layers:"Шари",actions:"Дії",language:"Мова",liveCollaboration:"Спільна робота наживо...",duplicateSelection:"Дублювати",untitled:"Без назви",name:"Ім’я",yourName:"Ваше ім’я",madeWithExcalidraw:"Накреслене в Excalidraw",group:"Групувати виділене",ungroup:"Розгрупувати виділене",collaborators:"Співавтори",showGrid:"Показати сітку",addToLibrary:"Додати до бібліотеки",removeFromLibrary:"Видалити з бібліотеки",libraryLoadingMessage:"Завантажити бібліотеку…",libraries:"Всі бібліотеки",loadingScene:"Завантаження сцени…",align:"Вирівнювання",alignTop:"Вирівняти по верхньому краю",alignBottom:"Вирівняти по нижньому краю",alignLeft:"Вирівняти по лівому краю",alignRight:"Вирівнювання по правому краю",centerVertically:"Центрувати по вертикалі",centerHorizontally:"Центрувати по горизонталі",distributeHorizontally:"Розподілити по горизонталі",distributeVertically:"Розподілити вертикально",flipHorizontal:"Віддзеркалити горизонтально",flipVertical:"Віддзеркалити вертикально",viewMode:"Режим перегляду",share:"Поділитися",showStroke:"Показати палітру для контура",showBackground:"Показати палітру для фону",toggleTheme:"Перемкнути тему",personalLib:"Персональна бібліотека",excalidrawLib:"Бібліотека Excalidraw",decreaseFontSize:"Зменшити розмір шрифту",increaseFontSize:"Збільшити розмір шрифту",unbindText:"Відв'язати текст",bindText:"Прив’язати текст до контейнера",createContainerFromText:"Огорнути текст у контейнер",link:{edit:"Редагування посилання",editEmbed:"Редагування посилання і вкладення",create:"Створити посилання",createEmbed:"Створити посилання і вкладення",label:"Посилання",labelEmbed:"Посилання і вкладення",empty:"Посилання відсутнє"},lineEditor:{edit:"Редагувати лінію",exit:"Закінчити редагування лінії"},elementLock:{lock:"Блокувати",unlock:"Розблокувати",lockAll:"Заблокувати все",unlockAll:"Розблокувати все"},statusPublished:"Опубліковано",sidebarLock:"Не закривати бокове меню",selectAllElementsInFrame:"Обрати всі елементи у фреймі",removeAllElementsFromFrame:"Видалити всі елементи з фрейму",eyeDropper:"Вибрати колір з полотна",textToDiagram:"",prompt:""},bPe={noItems:"Тут поки пусто...",hint_emptyLibrary:"Виберіть об'єкт на полотні, щоб додати його сюди або встановіть бібліотеку з публічного репозиторію, що нижче.",hint_emptyPrivateLibrary:"Виберіть елемент на полотні, щоб додати його сюди."},vPe={clearReset:"Очистити полотно",exportJSON:"Експорт у файл",exportImage:"Експорт зображення...",export:"Зберегти як...",copyToClipboard:"Скопіювати до буферу обміну",save:"Зберегти до поточного файлу",saveAs:"Зберегти як",load:"Відкрити",getShareableLink:"Отримати посилання",close:"Закрити",selectLanguage:"Обрати мову",scrollBackToContent:"Повернутися до вмісту",zoomIn:"Збільшити",zoomOut:"Зменшити",resetZoom:"Скинути масштаб",menu:"Меню",done:"Готово",edit:"Редагувати",undo:"Відмінити",redo:"Повторити",resetLibrary:"Очистити бібліотеку",createNewRoom:"Створити нову кімнату",fullScreen:"Повноекранний режим",darkMode:"Темна тема",lightMode:"Світла тема",zenMode:"Режим Дзен",objectsSnapMode:"",exitZenMode:"Вийти з дзен-режиму",cancel:"Скасувати",clear:"Очистити",remove:"Видалити",embed:"Перемкнути вкладення",publishLibrary:"Опублікувати",submit:"Надіслати",confirm:"Підтвердити",embeddableInteractionButton:"Натисніть для взаємодії"},kPe={clearReset:"Це очистить все полотно. Впевнені?",couldNotCreateShareableLink:"Не вдалося створити посилання.",couldNotCreateShareableLinkTooBig:"Не вдалося створити посилання для обміну: сцена занадто велика",couldNotLoadInvalidFile:"Файл з помилками не відкрився",importBackendFailed:"Імпортування невдале.",cannotExportEmptyCanvas:"Не вийшло експортувати пусте полотно.",couldNotCopyToClipboard:"Не вдалося скопіювати до буфера обміну.",decryptFailed:"Не вдалося розшифрувати дані.",uploadedSecurly:"Це завантаження було захищене наскрізним шифруванням, а це означає що сервер Excalidraw та інші не зможуть прочитати вміст.",loadSceneOverridePrompt:"Завантаження зовнішнього креслення замінить ваш наявний контент. Продовжити?",collabStopOverridePrompt:`Зупинка сесії перезапише ваш попередній, локально збережений малюнок. Ви впевнені?
|
||
|
||
(Якщо ви хочете зберегти локальний малюнок, просто закрийте замість нього вкладку браузера.)`,errorAddingToLibrary:"Не вдалося додати елемент до бібліотеки",errorRemovingFromLibrary:"Не вдалося видалити елемент з бібліотеки",confirmAddLibrary:"Це призведе до додавання {{numShapes}} фігур до вашої бібліотеки. Ви впевнені?",imageDoesNotContainScene:"Виглядає ніби зображення не містить корисної інформації. Ви увімкнули вбудовування сцени при експорті?",cannotRestoreFromImage:"Сцена не може бути відновлена з цього файлу зображення",invalidSceneUrl:"Не вдалося імпортувати сцену з наданого URL. Він або недоформований, або не містить дійсних даних Excalidraw JSON.",resetLibrary:"Це призведе до очищення бібліотеки. Ви впевнені?",removeItemsFromsLibrary:"Видалити {{count}} елемент(ів) з бібліотеки?",invalidEncryptionKey:"Ключ шифрування повинен бути довжиною до 22 символів. Спільну роботу вимкнено.",collabOfflineWarning:`Немає підключення до Інтернету.
|
||
Ваші зміни не будуть збережені!`},FPe={unsupportedFileType:"Непідтримуваний тип файлу.",imageInsertError:"Не вдалося вставити зображення. Повторіть спробу пізніше...",fileTooBig:"Занадто великий розмір файлу, максимальний розмір файлу {{maxSize}}.",svgImageInsertError:"Не вдалося вставити SVG-зображення. Помилка розмітки SVG.",failedToFetchImage:"",invalidSVGString:"Недійсний SVG.",cannotResolveCollabServer:"Не вдалося приєднатися до сервера. Перезавантажте сторінку та повторіть спробу.",importLibraryError:"Не вдалося завантажити бібліотеку",collabSaveFailed:"Не вдалося зберегти у базу даних сервера. Якщо проблеми не зникнуть, Вам слід зберегти файл локально, щоб не втратити роботу.",collabSaveFailed_sizeExceeded:"Полотно завелике! Не вдалося зберегти у базу даних сервера. Вам слід зберегти файл локально, щоб не втратити свою роботу.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Ви використовуєте браузер Brave з увімкненим налаштуванням <bold>Агресивного Блокування Розпізнавання Пристрою</bold>.",line2:"Це може нашкодити <bold>текстовим елементам</bold> у ваших малюнках.",line3:"Ми наполегливо рекомендуємо вимкнути це налаштування. Виконайте наступні <link>кроки</link>, щоб виправити це.",line4:"Якщо вимкнення цього параметра не вирішує показ текстових елементів, тоді створіть, будь ласка, <issueLink>запит на розв'язання проблеми</issueLink> на нашому GitHub або напишіть нам у <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Вбудовані елементи не можна додати в бібліотеку.",iframe:"",image:"Підтримка додавання зображень в бібліотеку найближчим часом!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},xPe={selection:"Виділення",image:"Вставити зображення",rectangle:"Прямокутник",diamond:"Ромб",ellipse:"Еліпс",arrow:"Стрілка",line:"Лінія",freedraw:"Малювати",text:"Текст",library:"Бібліотека",lock:"Залишити обраний інструмент після креслення",penMode:"Режим пера - запобігання дотику",link:"Додати/Оновити посилання для вибраної форми",eraser:"Очищувач",frame:"Інструмент фрейму",magicframe:"",embeddable:"Веб вкладення",laser:"",hand:"Рука (інструмент для панорамування)",extraTools:"Інші інструменти",mermaidToExcalidraw:"",magicSettings:""},SPe={canvasActions:"Дії з полотном",selectedShapeActions:"Вибрані дії з фігурою",shapes:"Фігури"},LPe={canvasPanning:"Щоб перемістити полотно, утримуйте коліщатко миші або пробіл під час перетягування, або скористайтеся інструментом Рука",linearElement:"Натисніть щоб додати кілька точок. Перетягніть щоб намалювати одну лінію",freeDraw:"Натисніть і потягніть, відпустіть коли завершите",text:"Порада: можна також додати текст, двічі клацнувши по будь-якому місці інструментом вибору",embeddable:"Клікніть та перетягніть для створення вбудованого вебсайту",text_selected:"Подвійний клік або натисніть клавішу ENTER, щоб редагувати текст",text_editing:"Натисніть клавішу Escape або Ctrl/Cmd+ENTER, щоб завершити редагування",linearElementMulti:"Натисніть на останню точку, клацніть Esc або Enter щоб завершити",lockAngle:"Ви можете обмежити кут, утримуюючи SHIFT",resize:`Ви можете зберегти пропорції, утримуючи SHIFT під час зміни розміру,
|
||
утримуйте ALT для змінення розміру від центру`,resizeImage:"Ви можете змінювати розміри утримуючи клавішу SHIFT, втримуйте клавішу ALT щоб змінювати розмір відносно центру",rotate:"Ви можете обмежити кути, утримуючи SHIFT під час обертання",lineEditor_info:"Утримуйте CtrlOrCmd і двічі клацніть або натисніть CtrlOrCmd + Enter, щоб редагувати цятки",lineEditor_pointSelected:"Натисніть Delete для видалення точку (точок), або Ctrl/Cmd+D для дублювання, перетаскування працює як звично",lineEditor_nothingSelected:"Виберіть точку для редагування (втримуйте клавішу SHIFT для вибору кількох точок), або клавішу Alt для додавання нових точок",placeImage:"Клацніть, щоб розмістити зображення, або натисніть та потягніть щоб змінити його розмір",publishLibrary:"Опублікувати свою власну бібліотеку",bindTextToElement:"Натисніть Enter, щоб додати текст",deepBoxSelect:"Втримуйте Ctrl/Cmd для глибокого виділення та щоб попередити перетягування",eraserRevert:"Втримуйте клавішу Alt, щоб повернути елементи позначені для видалення",firefox_clipboard_write:'Цю функцію можна ввімкнути, встановивши значення "true" для налаштування "dom.events.asyncClipboard.clipboardItem". Перейдіть на сторінку «about:config», щоб змінити налаштування браузера у Firefox.',disableSnapping:""},RPe={cannotShowPreview:"Не вдається показати попередній перегляд",canvasTooBig:"Полотно може бути завеликим.",canvasTooBigTip:"Порада: спробуйте підсунути найвіддаленіші елементи ближче один до одного."},NPe={headingMain:"Сталася помилка. Спробуйте <button>перезавантажити сторінку.</button>",clearCanvasMessage:"Якщо перезавантаження не допоможе, спробуйте <button>очистити полотно.</button>",clearCanvasCaveat:" Це призведе до втрати роботи ",trackedToSentry:"Помилка з ідентифікатором {{eventId}} було відслідковано в нашій системі.",openIssueMessage:"Ми були дуже обережні, щоб не включати інформацію про ваші сцени в текст помилки. Якщо ваша сцена не була приватна, будь ласка, розгляньте можливість продовження на нашому <button>трекер помилок.</button> Будь ласка, додайте інформацію нижче, скопіюючи і вставляючи у GitHub issue.",sceneContent:"Вміст сцени:"},GPe={desc_intro:"Ви можете запросити людей для спільної роботи.",desc_privacy:"Не хвилюйтеся, сесія захищена наскрізним шифруванням, тому ваше креслення залишиться приватним. Навіть наш сервер не побачить вашу роботу.",button_startSession:"Почати сесію",button_stopSession:"Закрити сесію",desc_inProgressIntro:"Сесія спільної роботи над кресленням триває.",desc_shareLink:"Поділіться цим посиланням з будь-ким для спільної роботи:",desc_exitSession:"Зупинка сесії відключить вас від кімнати, але ви зможете продовжити роботу з полотном локально. Зверніть увагу, що це не вплине на інших людей, і вони все одно зможуть працювати над їх версією.",shareTitle:"Приєднатися до сеансу спільної роботи на Excalidraw"},UPe={title:"Помилка"},MPe={disk_title:"Зберегти на диск",disk_details:"Експорт даних сцени в файл, з якого можна імпортувати пізніше.",disk_button:"Зберегти до файлу",link_title:"Доступ за посиланням",link_details:"Експортувати як посилання тільки для читання.",link_button:"Експортувати у посилання",excalidrawplus_description:"Збережіть сцену у вашому обліковому записі Excalidraw+.",excalidrawplus_button:"Експортувати",excalidrawplus_exportError:"Не вдалося експортувати у Excalidraw+..."},TPe={blog:"Наш блог",click:"натиснути",deepSelect:"Глибокий вибір",deepBoxSelect:"Глибоке виділення в межах рамки, та обмеження перетягування",curvedArrow:"Крива стрілка",curvedLine:"Крива лінія",documentation:"Документація",doubleClick:"подвійний клік",drag:"перетягнути",editor:"Редактор",editLineArrowPoints:"Редагувати лінію/стрілки",editText:"Редагувати текст / додати позначку",github:"Знайшли помилку? Повідомте",howto:"Дотримуйтесь наших інструкцій",or:"або",preventBinding:"Запобігти зв'язування зі стрілками",tools:"Інструменти",shortcuts:"Гарячі клавіші",textFinish:"Завершити редагування (текстовий редактор)",textNewLine:"Додати новий рядок (текстовий редактор)",title:"Допомога",view:"Вигляд",zoomToFit:"Збільшити щоб умістити всі елементи",zoomToSelection:"Наблизити вибране",toggleElementLock:"Заблокувати/розблокувати вибране",movePageUpDown:"Пересунути сторінку вгору/вниз",movePageLeftRight:"Пересунути сторінку вліво/вправо"},YPe={title:"Очистити полотно"},HPe={title:"Опублікувати бібліотеку",itemName:"Назва елементу",authorName:"Ім'я автора",githubUsername:"Ім'я користувача Github",twitterUsername:"Ім'я користувача Твитер",libraryName:"Назва бібліотеки",libraryDesc:"Опис бібліотеки",website:"Вебсайт",placeholder:{authorName:"Ваше ім'я або ім'я користувача",libraryName:"Назва вашої бібліотеки",libraryDesc:"Опис вашої бібліотеки, щоб допомогти людям зрозуміти її використання",githubHandle:"Ім'я користувача в GitHub (необов'язково), щоб ви могли редагувати бібліотеку під час перевірки",twitterHandle:"Ім'я користувача у Twitter (необов'язково), щоб ми могли згадати вас під час промоції у Twitter",website:"Посилання на ваш особистий сайт або інший сайт (опціонально)"},errors:{required:"Обов’язково",website:"Введіть дійсну URL-адресу"},noteDescription:"Подати бібліотеку, щоб вона була включена до <link>публічного репозиторія бібліотек</link>для інших людей, для використання у їхніх полотнах.",noteGuidelines:"Спочатку бібліотека повинна бути підтверджена. Будь ласка, прочитайте <link>настанови</link> перед відправкою. Вам знадобиться обліковий запис на GitHub, щоб колаборувати та вносити зміни, але це не обов'язково.",noteLicense:"Публікуючи, ви погоджуєтеся, що бібліотека буде опублікована під <link>Ліцензія MIT, </link>, простими словами, це означає що нею зможе користуватися будь-хто без обмежень.",noteItems:"Кожен об'єкт в бібліотеці повинен мати назву, це потрібно для пошуку та фільтрування. Наступні об'єкти бібліотеки будуть включені:",atleastOneLibItem:"Будь ласка, виберіть принаймні один елемент бібліотеки, щоб почати",republishWarning:"Зауважте, деякі з вибраних елементів позначені як вже опубліковані/надіслані. Ви повинні повторно надсилати елементи тільки при оновленні вже опублікованої бібліотеки чи при публікації бібліотеки."},KPe={title:"Бібліотека відправлена",content:"Дякуємо, {{authorName}}. Ваша бібліотека була відправлена для розгляду. Ви можете відстежувати статус<link>тут</link>"},JPe={resetLibrary:"Очистити бібліотеку",removeItemsFromLib:"Видалити вибрані елементи з бібліотеки"},OPe={header:"Експортувати зображення",label:{withBackground:"Тло",onlySelected:"Тільки вибране",darkMode:"Темний режим",embedScene:"Вбудована сцена",scale:"Масштабування",padding:"Відступ"},tooltip:{embedScene:"Дані сцени будуть збережені в експортований файл PNG/SVG. Ця сцена може бути відновлена з нього, однак це збільшить розмір експортованого файлу."},title:{exportToPng:"Експортувати в PNG",exportToSvg:"Експортувати у SVG",copyPngToClipboard:"Скопіювати PNG в буфер обміну"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Копіювати в буфер обміну"}},PPe={tooltip:"Ваші креслення захищені наскрізним шифруванням — сервери Excalidraw ніколи їх не побачать.",link:"Допис у блозі на наскрізному шифруванні в Excalidraw"},_Pe={angle:"Кут",element:"Елемент",elements:"Елементи",height:"Висота",scene:"Сцена",selected:"Обрано",storage:"Сховище",title:"Статистика",total:"Всього",version:"Версія",versionCopy:"Натисніть, щоб скопіювати",versionNotAvailable:"Версія недоступна",width:"Ширина"},WPe={addedToLibrary:"Додано до бібліотеки",copyStyles:"Скопійовані стилі.",copyToClipboard:"Скопіювати до буферу обміну.",copyToClipboardAsPng:`Скопійовано {{exportSelection}} до буфера обміну як PNG
|
||
({{exportColorScheme}})`,fileSaved:"Файл збережено.",fileSavedToFilename:"Збережено в {filename}",canvas:"полотно",selection:"виділення",pasteAsSingleElement:"Використайте {{shortcut}} для вставки самостійного зразка або використайте в текстовому редакторі",unableToEmbed:"Вбудування цієї url на даний час не допускається. Підніміть питання на GitHub, щоб попросити внести URL-адресу до білого списку",unrecognizedLinkFormat:'Посилання, яке ви вставили, не відповідає очікуваному формату. Будь ласка, спробуйте вставити рядок "embed", наданий сайтом-джерелом'},qPe={transparent:"Прозорий",black:"Чорний",white:"Білий",red:"Червоний",pink:"Рожевий",grape:"Виноградний",violet:"Фіолетовий",gray:"Сірий",blue:"Синій",cyan:"Ціан",teal:"Бірюзовий",green:"Зелений",yellow:"Жовтий",orange:"Помаранчевий",bronze:"Бронзовий"},zPe={app:{center_heading:"Всі ваші дані збережено локально у Вашому браузері.",center_heading_plus:"Чи бажаєте перейти до Excalidraw+?",menuHint:"Експорт, налаштування, мови, ..."},defaults:{menuHint:"Експорт, налаштування та багато іншого...",center_heading:"Діаграми. Робити. Просто.",toolbarHint:"Оберіть інструмент і почніть малювати!",helpHint:"Гарячі клавіші і допомога"}},ZPe={mostUsedCustomColors:"Найбільш використовувані користувацькі кольори",colors:"Кольори",shades:"Тіні",hexCode:"Hex-код",noShades:"Немає доступних відтінків цього кольору"},VPe={action:{exportToImage:{title:"Експортувати як зображення",button:"Експортувати як зображення",description:"Експорт даних сцени у вигляді зображення, з якого можна імпортувати пізніше."},saveToDisk:{title:"Зберегти на диск",button:"Зберегти на диск",description:"Експорт даних сцени в файл, з якого можна імпортувати пізніше."},excalidrawPlus:{title:"Excalidraw+",button:"Експортувати до Excalidraw+",description:"Зберегти сцену до робочого простору Excalidraw+."}},modal:{loadFromFile:{title:"Завантажити з файлу",button:"Завантажити з файлу",description:"Завантаження з файлу <bold>замінить наявний вміст</bold>.<br></br>Ви можете спочатку створити резервну копію малюнка, скориставшись одним із наведених нижче способів."},shareableLink:{title:"Завантажити з посилання",button:"Замінити мій контент",description:"Завантаження зовнішнього малюнка <bold>замінить ваш наявний вміст</bold>.<br></br>Ви можете спочатку створити резервну копію малюнка, скориставшись одним із наведених нижче способів."}}},jPe={title:"",button:"",description:"",syntax:"",preview:""},ECr={labels:wPe,library:bPe,buttons:vPe,alerts:kPe,errors:FPe,toolBar:xPe,headings:SPe,hints:LPe,canvasError:RPe,errorSplash:NPe,roomDialog:GPe,errorDialog:UPe,exportDialog:MPe,helpDialog:TPe,clearCanvasDialog:YPe,publishDialog:HPe,publishSuccessDialog:KPe,confirmDialog:JPe,imageExportDialog:OPe,encrypted:PPe,stats:_Pe,toast:WPe,colors:qPe,welcomeScreen:zPe,colorPicker:ZPe,overwriteConfirm:VPe,mermaid:jPe}});var v_e={};yt(v_e,{alerts:()=>r_e,buttons:()=>t_e,canvasError:()=>o_e,clearCanvasDialog:()=>B_e,colorPicker:()=>y_e,colors:()=>m_e,confirmDialog:()=>I_e,default:()=>dCr,encrypted:()=>Q_e,errorDialog:()=>g_e,errorSplash:()=>s_e,errors:()=>i_e,exportDialog:()=>c_e,headings:()=>a_e,helpDialog:()=>C_e,hints:()=>n_e,imageExportDialog:()=>h_e,labels:()=>A_e,library:()=>e_e,mermaid:()=>b_e,overwriteConfirm:()=>w_e,publishDialog:()=>E_e,publishSuccessDialog:()=>d_e,roomDialog:()=>l_e,stats:()=>p_e,toast:()=>f_e,toolBar:()=>u_e,welcomeScreen:()=>D_e});var A_e,e_e,t_e,r_e,i_e,u_e,a_e,n_e,o_e,s_e,l_e,g_e,c_e,C_e,B_e,E_e,d_e,I_e,h_e,Q_e,p_e,f_e,m_e,D_e,y_e,w_e,b_e,dCr;var k_e=P(()=>{qt();A_e={paste:"Dán",pasteAsPlaintext:"Dán kiểu văn bản thuần",pasteCharts:"Dán biểu đồ",selectAll:"Chọn tất cả",multiSelect:"Thêm mới vào Select",moveCanvas:"Di chuyển canvas",cut:"Cắt",copy:"Sao chép",copyAsPng:"Sao chép vào bộ nhớ tạm dưới dạng PNG",copyAsSvg:"Sao chép vào bộ nhớ tạm dưới dạng SVG",copyText:"Sao chép vào bộ nhớ tạm dưới dạng chữ",copySource:"",convertToCode:"",bringForward:"Đưa ra trước",sendToBack:"Hạ xuống dưới",bringToFront:"Đưa ra đầu tiên",sendBackward:"Hạ xuống cuối",delete:"Xóa",copyStyles:"Sao chép định dạng",pasteStyles:"Dán định dạng",stroke:"Nét",background:"Nền",fill:"Fill",strokeWidth:"Độ dày nét",strokeStyle:"Kiểu nét",strokeStyle_solid:"Khối",strokeStyle_dashed:"Gạch ngang",strokeStyle_dotted:"Nhiều chấm",sloppiness:"Hoa văn nét",opacity:"Độ trong suốt",textAlign:"Căn chỉnh văn bản",edges:"Cạnh",sharp:"Nhọn",round:"Tròn",arrowheads:"Đầu mũi tên",arrowhead_none:"Không",arrowhead_arrow:"Mũi tên",arrowhead_bar:"Thanh",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Tam giác",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Cỡ chữ",fontFamily:"Phông chữ",addWatermark:'Làm với Excalidraw"',handDrawn:"Vẽ tay",normal:"Bình thường",code:"Mã",small:"Nhỏ",medium:"Vừa",large:"Lớn",veryLarge:"Rất lớn",solid:"Đặc",hachure:"Nét gạch gạch",zigzag:"Zigzag",crossHatch:"Nét gạch chéo",thin:"Mỏng",bold:"In đậm",left:"Trái",center:"Giữa",right:"Phải",extraBold:"Nét siêu đậm",architect:"Kiến trúc sư",artist:"Nghệ sỹ",cartoonist:"Hoạt hình",fileTitle:"Tên tập tin",colorPicker:"Chọn màu",canvasColors:"Đã dùng trên canvas",canvasBackground:"Nền canvas",drawingCanvas:"Canvas vẽ",layers:"Lớp",actions:"Chức năng",language:"Ngôn ngữ",liveCollaboration:"Hợp tác trực tiếp...",duplicateSelection:"Tạo bản sao",untitled:"Không có tiêu đề",name:"Tên",yourName:"Tên của bạn",madeWithExcalidraw:"Làm với Excalidraw",group:"Gộp nhóm lại lựa chọn",ungroup:"Tách nhóm lựa chọn",collaborators:"Cộng tác viên",showGrid:"Hiển thị lưới",addToLibrary:"Thêm vào thư viện",removeFromLibrary:"Xóa khỏi thư viện",libraryLoadingMessage:"Đang tải thư viện…",libraries:"Xem thư viện",loadingScene:"Đang tải về…",align:"Căn chỉnh",alignTop:"Căn trên",alignBottom:"Căn dưới",alignLeft:"Canh trái",alignRight:"Canh phải",centerVertically:"Giữa theo chiều dọc",centerHorizontally:"Giữa theo chiều ngang",distributeHorizontally:"Phân bố theo chiều ngang",distributeVertically:"Phân bố theo chiều dọc",flipHorizontal:"Lật ngang",flipVertical:"Lật dọc",viewMode:"Chế độ xem",share:"Chia sẻ",showStroke:"Hiển thị chọn màu",showBackground:"Hiện thị chọn màu nền",toggleTheme:"",personalLib:"Thư viện cá nhân",excalidrawLib:"Thư viện Excalidraw",decreaseFontSize:"Giảm cỡ chữ",increaseFontSize:"Tăng cỡ chữ",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Sửa liên kết",editEmbed:"",create:"Tạo liên kết",createEmbed:"",label:"Liên kết",labelEmbed:"",empty:""},lineEditor:{edit:"Điều chỉnh nét",exit:"Thoát chỉnh nét"},elementLock:{lock:"Khoá",unlock:"Mở khoá",lockAll:"Khóa tất cả",unlockAll:"Mở khóa tất cả"},statusPublished:"Đã đăng tải",sidebarLock:"Giữ thanh bên luôn mở",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},e_e={noItems:"Chưa có món nào...",hint_emptyLibrary:"Chọn một món trên canvas để thêm nó vào đây, hoặc cài đặt thư viện từ kho lưu trữ công cộng, ở bên dưới.",hint_emptyPrivateLibrary:"Chọn một món trên canvas để thêm nó vào đây."},t_e={clearReset:"Reset canvas",exportJSON:"Xuất ra tập tin",exportImage:"Xuất file ảnh...",export:"Lưu vào...",copyToClipboard:"Sao chép vào bộ nhớ tạm",save:"Lưu vào tập tin hiện tại",saveAs:"Lưu thành",load:"Mở",getShareableLink:"Tạo liên kết để chia sẻ",close:"Đóng",selectLanguage:"Chọn ngôn ngữ",scrollBackToContent:"Cuộn về nội dung chính",zoomIn:"Phóng to",zoomOut:"Thu nhỏ",resetZoom:"Đặt lại thu phóng",menu:"Bảng chọn",done:"Xong",edit:"Chỉnh sửa",undo:"Hoàn tác",redo:"Làm lại",resetLibrary:"",createNewRoom:"Tạo phòng mới",fullScreen:"Toàn màn hình",darkMode:"Chế độ tối",lightMode:"Chế độ sáng",zenMode:"Chế độ zen",objectsSnapMode:"",exitZenMode:"Thoát chể độ zen",cancel:"Hủy",clear:"Làm sạch",remove:"Xóa",embed:"",publishLibrary:"Đăng tải",submit:"Gửi",confirm:"Xác nhận",embeddableInteractionButton:""},r_e={clearReset:"Điều này sẽ dọn hết canvas. Bạn có chắc không?",couldNotCreateShareableLink:"Không thể tạo đường dẫn chia sẻ.",couldNotCreateShareableLinkTooBig:"Không thể tạo đường dẫn chia sẻ: bản vẽ quá lớn",couldNotLoadInvalidFile:"Không thể load tập tin không hợp lệ",importBackendFailed:"",cannotExportEmptyCanvas:"Không thể xuất canvas trống.",couldNotCopyToClipboard:"",decryptFailed:"Không thể giải mã dữ liệu.",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:`Dừng phiên sẽ ghi đè lên bản vẽ được lưu trữ cục bộ trước đó của bạn. Bạn có chắc không?
|
||
|
||
(Nếu bạn muốn giữ bản vẽ cục bộ của mình, chỉ cần đóng tab trình duyệt.)`,errorAddingToLibrary:"Không thể thêm món vào thư viện",errorRemovingFromLibrary:"Không thể xoá món khỏi thư viện",confirmAddLibrary:"Hình {{numShapes}} sẽ được thêm vào thư viện. Bạn chắc chứ?",imageDoesNotContainScene:"Hình ảnh này dường như không chứa bất kỳ dữ liệu cảnh nào. Bạn đã bật tính năng nhúng cảnh khi xuất chưa?",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"Xoá {{count}} món từ thư viện?",invalidEncryptionKey:"Khóa mã hóa phải có 22 ký tự. Hợp tác trực tiếp bị vô hiệu hóa.",collabOfflineWarning:`Không có kết nối internet.
|
||
Thay đổi của bạn sẽ không được lưu!`},i_e={unsupportedFileType:"Loại tập tin không được hỗ trợ.",imageInsertError:"Không thể thêm ảnh. Hãy thử lại sau...",fileTooBig:"Tệp tin quá lớn. Dung lượng tối đa cho phép là {{maxSize}}.",svgImageInsertError:"Không thể thêm ảnh SVG. Mã SVG có vẻ sai.",failedToFetchImage:"",invalidSVGString:"SVG không hợp lệ.",cannotResolveCollabServer:"Không thể kết nối với máy chủ hợp tác. Hãy tải lại trang và thử lại.",importLibraryError:"Không thể tải thư viện",collabSaveFailed:"Không thể lưu vào cơ sở dữ liệu. Nếu vấn đề tiếp tục xảy ra, bạn nên lưu tệp vào máy để đảm bảo bạn không bị mất công việc.",collabSaveFailed_sizeExceeded:"Không thể lưu vào cơ sở dữ liệu, canvas có vẻ quá lớn. Bạn nên lưu tệp cục bộ để đảm bảo bạn không bị mất công việc.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},u_e={selection:"Lựa chọn",image:"Chèn ảnh",rectangle:"Hình chữ nhật",diamond:"Kim cương",ellipse:"Hình elíp",arrow:"Mũi tên",line:"Đường kẻ",freedraw:"Vẽ",text:"Văn bản",library:"Thư viện",lock:"Giữ dụng cũ hiện tại sau khi vẽ",penMode:"Chế độ bút vẽ - ngăn ngừa chạm nhầm",link:"Thêm/ Chỉnh sửa liên kết cho hình được chọn",eraser:"Xóa",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Tay kéo",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},a_e={canvasActions:"Hành động canvas",selectedShapeActions:"Các hành động cho hình dạng đã chọn",shapes:"Các hình khối"},n_e={canvasPanning:"Để di chuyển canvas, giữ con lăn chuột hoặc phím cách trong khi kéo, hoặc sử dụng công cụ cầm tay",linearElement:"Ấn để bắt đầu nhiểm điểm vẽ, kéo để vẽ một đường thẳng",freeDraw:"Ấn bà kéo, thả khi bạn xong",text:"Mẹo: bạn có thể thêm văn bản tại bất cứ đâu bằng cách ấn hai lần bằng tool lựa chọn",embeddable:"",text_selected:"Ấn 2 lần hoặc nhấn ENTER để chỉnh văn bản",text_editing:"Nhấn Escape hoặc Ctrl/Cmd+ENTER để hoàn thành chỉnh sửa",linearElementMulti:"Nhấn vào điểm cuối hoặc nhấn Escape hoặc Enter để kết thúc",lockAngle:"Bạn có thể chỉnh lại góc bằng cách giữ phím SHIFT",resize:`Bạn có thể chỉnh tỷ lệ bằng cách giữ SHIFT khi chỉnh kích cỡ,
|
||
giữ ALT để chỉnh kích cỡ từ trung tâm`,resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:'Tính năng này có thể được bật bằng cách đặt cờ "dom.events.asyncClipboard.clipboardItem" thành "true". Để thay đổi cờ trình duyệt trong Firefox, hãy truy cập trang "about:config".',disableSnapping:""},o_e={cannotShowPreview:"Không thể xem trước",canvasTooBig:"Canvas này có thể hơi lớn.",canvasTooBigTip:"Mẹo: hãy thử di chuyển các elements nhất lại gần nhau hơn một chút."},s_e={headingMain:"",clearCanvasMessage:"Nếu không tải lại được, hãy thử <button>dọn canvas.</button>",clearCanvasCaveat:" Điều này sẽ dẫn đến mất dữ liệu bạn đã làm ",trackedToSentry:"",openIssueMessage:"",sceneContent:""},l_e={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},g_e={title:""},c_e={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},C_e={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},B_e={title:"Dọn canvas"},E_e={title:"",itemName:"Tên món",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"Từng món trong thư viện phải có tên riêng để có thể lọc. Các món thư viện sau đây sẽ thêm:",atleastOneLibItem:"Vui lòng chọn ít nhất một món thư viện để bắt đầu",republishWarning:"Lưu ý: một số món đã chọn được đánh dấu là đã xuất bản/đã gửi. Bạn chỉ nên gửi lại các món khi cập nhật thư viện hiện có hoặc gửi."},d_e={title:"",content:""},I_e={resetLibrary:"",removeItemsFromLib:"Xóa món đã chọn khỏi thư viện"},h_e={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Q_e={tooltip:"",link:""},p_e={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},f_e={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"canvas",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},m_e={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},D_e={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},y_e={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},w_e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},b_e={title:"",button:"",description:"",syntax:"",preview:""},dCr={labels:A_e,library:e_e,buttons:t_e,alerts:r_e,errors:i_e,toolBar:u_e,headings:a_e,hints:n_e,canvasError:o_e,errorSplash:s_e,roomDialog:l_e,errorDialog:g_e,exportDialog:c_e,helpDialog:C_e,clearCanvasDialog:B_e,publishDialog:E_e,publishSuccessDialog:d_e,confirmDialog:I_e,imageExportDialog:h_e,encrypted:Q_e,stats:p_e,toast:f_e,colors:m_e,welcomeScreen:D_e,colorPicker:y_e,overwriteConfirm:w_e,mermaid:b_e}});var tWe={};yt(tWe,{alerts:()=>L_e,buttons:()=>S_e,canvasError:()=>M_e,clearCanvasDialog:()=>O_e,colorPicker:()=>$_e,colors:()=>j_e,confirmDialog:()=>W_e,default:()=>ICr,encrypted:()=>z_e,errorDialog:()=>H_e,errorSplash:()=>T_e,errors:()=>R_e,exportDialog:()=>K_e,headings:()=>G_e,helpDialog:()=>J_e,hints:()=>U_e,imageExportDialog:()=>q_e,labels:()=>F_e,library:()=>x_e,mermaid:()=>eWe,overwriteConfirm:()=>AWe,publishDialog:()=>P_e,publishSuccessDialog:()=>__e,roomDialog:()=>Y_e,stats:()=>Z_e,toast:()=>V_e,toolBar:()=>N_e,welcomeScreen:()=>X_e});var F_e,x_e,S_e,L_e,R_e,N_e,G_e,U_e,M_e,T_e,Y_e,H_e,K_e,J_e,O_e,P_e,__e,W_e,q_e,z_e,Z_e,V_e,j_e,X_e,$_e,AWe,eWe,ICr;var rWe=P(()=>{qt();F_e={paste:"粘贴",pasteAsPlaintext:"粘贴为纯文本",pasteCharts:"粘贴图表",selectAll:"全部选中",multiSelect:"添加元素到选区",moveCanvas:"移动画布",cut:"剪切",copy:"拷贝",copyAsPng:"复制为 PNG 到剪贴板",copyAsSvg:"复制为 SVG 到剪贴板",copyText:"复制文本到剪贴板",copySource:"复制源码到剪贴板",convertToCode:"转换成代码",bringForward:"上移一层",sendToBack:"置于底层",bringToFront:"置于顶层",sendBackward:"下移一层",delete:"删除",copyStyles:"拷贝样式",pasteStyles:"粘贴样式",stroke:"描边",background:"背景",fill:"填充",strokeWidth:"描边宽度",strokeStyle:"边框样式",strokeStyle_solid:"实线",strokeStyle_dashed:"虚线",strokeStyle_dotted:"点虚线",sloppiness:"线条风格",opacity:"透明度",textAlign:"文本对齐",edges:"边角",sharp:"尖锐",round:"圆润",arrowheads:"端点",arrowhead_none:"无",arrowhead_arrow:"箭头",arrowhead_bar:"条状",arrowhead_circle:"圆点",arrowhead_circle_outline:"圆点(空心)",arrowhead_triangle:"三角箭头",arrowhead_triangle_outline:"三角箭头(空心)",arrowhead_diamond:"菱形",arrowhead_diamond_outline:"菱形(空心)",fontSize:"字体大小",fontFamily:"字体",addWatermark:"添加 “使用 Excalidraw 创建” 水印",handDrawn:"手写",normal:"普通",code:"代码",small:"小",medium:"中",large:"大",veryLarge:"加大",solid:"实心",hachure:"线条",zigzag:"之字形折线",crossHatch:"交叉线条",thin:"细",bold:"粗",left:"左对齐",center:"居中",right:"右对齐",extraBold:"特粗",architect:"朴素",artist:"艺术",cartoonist:"漫画家",fileTitle:"文件名",colorPicker:"取色器",canvasColors:"画布上的",canvasBackground:"画布背景",drawingCanvas:"绘制 Canvas",layers:"图层",actions:"操作",language:"语言",liveCollaboration:"实时协作...",duplicateSelection:"复制",untitled:"无标题",name:"名字",yourName:"您的姓名",madeWithExcalidraw:"使用 Excalidraw 创建",group:"编组",ungroup:"解除编组",collaborators:"协作者",showGrid:"显示网格",addToLibrary:"添加到素材库中",removeFromLibrary:"从素材库中移除",libraryLoadingMessage:"正在加载素材库…",libraries:"浏览素材库",loadingScene:"正在加载绘图…",align:"对齐",alignTop:"顶部对齐",alignBottom:"底端对齐",alignLeft:"左对齐",alignRight:"右对齐",centerVertically:"垂直居中",centerHorizontally:"水平居中",distributeHorizontally:"水平等距分布",distributeVertically:"垂直等距分布",flipHorizontal:"水平翻转",flipVertical:"垂直翻转",viewMode:"查看模式",share:"分享",showStroke:"显示描边颜色选择器",showBackground:"显示背景颜色选择器",toggleTheme:"切换主题",personalLib:"个人素材库",excalidrawLib:"Excalidraw 素材库",decreaseFontSize:"缩小字体大小",increaseFontSize:"放大字体大小",unbindText:"取消文本绑定",bindText:"将文本绑定到容器",createContainerFromText:"将文本包围在容器中",link:{edit:"编辑链接",editEmbed:"编辑链接与嵌入",create:"新建链接",createEmbed:"创建链接与嵌入",label:"链接",labelEmbed:"链接与嵌入",empty:"未设定链接"},lineEditor:{edit:"编辑线条",exit:"退出线条编辑"},elementLock:{lock:"锁定",unlock:"解除锁定",lockAll:"全部锁定",unlockAll:"全部解锁"},statusPublished:"已发布",sidebarLock:"侧边栏常驻",selectAllElementsInFrame:"选择画框中的所有元素",removeAllElementsFromFrame:"分离出画框中的所有元素",eyeDropper:"从画布上取色",textToDiagram:"文字至图表",prompt:"Prompt"},x_e={noItems:"尚未添加任何项目……",hint_emptyLibrary:"选中画布上的项目添加到此处,或从下方的公共素材库中导入。",hint_emptyPrivateLibrary:"选中画布上的项目添加到此处。"},S_e={clearReset:"重置画布",exportJSON:"导出为文件",exportImage:"导出图片...",export:"保存到...",copyToClipboard:"复制到剪贴板",save:"保存至当前文件",saveAs:"保存为",load:"打开",getShareableLink:"获取共享链接",close:"关闭",selectLanguage:"选择语言",scrollBackToContent:"滚动回到内容",zoomIn:"放大",zoomOut:"缩小",resetZoom:"重置缩放",menu:"菜单",done:"完成",edit:"编辑",undo:"撤销",redo:"重做",resetLibrary:"重置素材库",createNewRoom:"新建会议室",fullScreen:"全屏",darkMode:"深色模式",lightMode:"浅色模式",zenMode:"禅模式",objectsSnapMode:"吸附至对象",exitZenMode:"退出禅模式",cancel:"取消",clear:"清除",remove:"删除",embed:"切换嵌入",publishLibrary:"发布",submit:"提交",confirm:"确定",embeddableInteractionButton:"点击以开始交互"},L_e={clearReset:"这将会清除整个画布。您是否要继续?",couldNotCreateShareableLink:"无法创建共享链接",couldNotCreateShareableLinkTooBig:"无法创建可共享链接:画布过大",couldNotLoadInvalidFile:"无法加载无效的文件",importBackendFailed:"从后端导入失败。",cannotExportEmptyCanvas:"无法导出空白画布。",couldNotCopyToClipboard:"无法复制到剪贴板。",decryptFailed:"无法解密数据。",uploadedSecurly:"上传已被端到端加密保护,这意味着 Excalidraw 的服务器和第三方都无法读取内容。",loadSceneOverridePrompt:"加载外部绘图将取代您现有的内容。您想要继续吗?",collabStopOverridePrompt:`停止会话将覆盖您先前本地存储的绘图。 您确定吗?
|
||
|
||
(如果您想保持本地绘图,只需关闭浏览器选项卡。)`,errorAddingToLibrary:"无法将项目添加到素材库中",errorRemovingFromLibrary:"无法从素材库中移除项目",confirmAddLibrary:"这将添加 {{numShapes}} 个形状到您的素材库中。您确定吗?",imageDoesNotContainScene:"此图像似乎不包含任何画布数据。您是否在导出时启用了画布嵌入功能?",cannotRestoreFromImage:"无法从此图像文件恢复画布",invalidSceneUrl:"无法从提供的 URL 导入场景。它或者格式不正确,或者不包含有效的 Excalidraw JSON 数据。",resetLibrary:"这将会清除你的素材库。你确定要这么做吗?",removeItemsFromsLibrary:"确定要从素材库中删除 {{count}} 个项目吗?",invalidEncryptionKey:"密钥必须包含22个字符。实时协作已被禁用。",collabOfflineWarning:`无网络连接。
|
||
您的改动将不会被保存!`},R_e={unsupportedFileType:"不支持的文件格式。",imageInsertError:"无法插入图像。请稍后再试……",fileTooBig:"文件过大。最大允许的大小为 {{maxSize}}。",svgImageInsertError:"无法插入 SVG 图像。该 SVG 标记似乎是无效的。",failedToFetchImage:"无法获取图片。",invalidSVGString:"无效的 SVG。",cannotResolveCollabServer:"无法连接到实时协作服务器。请重新加载页面并重试。",importLibraryError:"无法加载素材库",collabSaveFailed:"无法保存到后端数据库。如果问题持续存在,您应该保存文件到本地,以确保您的工作不会丢失。",collabSaveFailed_sizeExceeded:"无法保存到后端数据库,画布似乎过大。您应该保存文件到本地,以确保您的工作不会丢失。",imageToolNotSupported:"图片已被禁用。",brave_measure_text_error:{line1:"您似乎正在使用 Brave 浏览器并启用了<bold>积极阻止指纹识别</bold>的设置。",line2:"这可能会破坏绘图中的 <bold>文本元素</bold>。",line3:"我们强烈建议禁用此设置。您可以按照<link>这些步骤</link>来设置。",line4:"如果禁用此设置无法修复文本元素的显示,请在 GitHub 上提交一个 <issueLink>issue</issueLink> ,或者在 <discordLink>Discord</discordLink> 上反馈"},libraryElementTypeError:{embeddable:"嵌入的元素不能被添加到素材库。",iframe:"不能将 IFrame 元素添加到素材库中。",image:"我们不久将支持添加图片到素材库"},asyncPasteFailedOnRead:"无法粘贴(无法读取系统剪贴板)。",asyncPasteFailedOnParse:"无法粘贴。",copyToSystemClipboardFailed:"无法复制到剪贴板。"},N_e={selection:"选择",image:"插入图像",rectangle:"矩形",diamond:"菱形",ellipse:"椭圆",arrow:"箭头",line:"线条",freedraw:"自由书写",text:"文字",library:"素材库",lock:"绘制后保持所选的工具栏状态",penMode:"笔模式 – 避免误触",link:"为选中的形状添加/更新链接",eraser:"橡皮",frame:"画框工具",magicframe:"线框图至代码",embeddable:"嵌入网页",laser:"激光笔",hand:"抓手(平移工具)",extraTools:"更多工具",mermaidToExcalidraw:"Mermaid 至 Excalidraw",magicSettings:"AI 设置"},G_e={canvasActions:"画布动作",selectedShapeActions:"选定形状操作",shapes:"形状"},U_e={canvasPanning:"要移动画布,请按住鼠标滚轮或空格键同时拖拽鼠标,或使用抓手工具。",linearElement:"点击创建多个点 拖动创建直线",freeDraw:"点击并拖动,完成时松开",text:"提示:您也可以使用选择工具双击任意位置来添加文字",embeddable:"点击并拖动以创建嵌入网页",text_selected:"双击或按回车键以编辑文本",text_editing:"按下 Escape 或 CtrlOrCmd+ENTER 完成编辑",linearElementMulti:"点击最后一个点或按下 Esc/Enter 来完成",lockAngle:"可以按住 Shift 来约束角度",resize:`您可以按住SHIFT来限制比例大小,
|
||
按住ALT来调整中心大小`,resizeImage:`按住SHIFT可以自由缩放,
|
||
按住ALT可以从中间缩放`,rotate:"旋转时可以按住 Shift 来约束角度",lineEditor_info:"按住 CtrlOrCmd 并双击或按 CtrlOrCmd + Enter 来编辑点",lineEditor_pointSelected:"按下 Delete 移除点,CtrlOrCmd+D 以复制,拖动以移动",lineEditor_nothingSelected:`选择要编辑的点 (按住 SHIFT 选择多个),
|
||
或按住 Alt 并点击以添加新点`,placeImage:"点击放置图像,或者点击并拖动以手动设置图像大小",publishLibrary:"发布您自己的素材库",bindTextToElement:"按下 Enter 以添加文本",deepBoxSelect:"按住 CtrlOrCmd 以深度选择,并避免拖拽",eraserRevert:"按住 Alt 以反选被标记删除的元素",firefox_clipboard_write:"将高级配置首选项“dom.events.asyncClipboard.clipboardItem”设置为“true”可以启用此功能。要更改 Firefox 的高级配置首选项,请前往“about:config”页面。",disableSnapping:"按住 Ctrl 或 Cmd 以禁用吸附"},M_e={cannotShowPreview:"无法显示预览",canvasTooBig:"画布可能过大。",canvasTooBigTip:"提示:尝试将最远的元素移动到和其它元素更近一些。"},T_e={headingMain:"遇到异常。请尝试<button>重新加载页面</button>。",clearCanvasMessage:"如果重新加载页面无效,请尝试<button>清除画布</button>。",clearCanvasCaveat:"这会造成当前工作丢失",trackedToSentry:"标识符为{{eventId}}的错误已在我们的系统中被记录",openIssueMessage:"我们非常谨慎地处理错误信息,您的画布内容不会被包含在错误报告中。如果您的画布内容不需要保持私密,请考虑在我们的 <button>bug 跟踪系统</button>上提供更多信息。请复制粘贴以下信息到 GitHub Issue 中。",sceneContent:"画布内容:"},Y_e={desc_intro:"你可以邀请其他人到目前的画面中与你协作。",desc_privacy:"别担心,该会话使用端到端加密,无论绘制什么都将保持私密,甚至连我们的服务器也无法查看。",button_startSession:"开始会话",button_stopSession:"结束会话",desc_inProgressIntro:"实时协作会话进行中。",desc_shareLink:"分享此链接给你要协作的用户",desc_exitSession:"停止会话将中断您与房间的连接,但您依然可以在本地继续使用画布。请注意,这不会影响到其他用户,他们仍可以在他们的版本上继续协作。",shareTitle:"加入 Excalidraw 实时协作会话"},H_e={title:"错误"},K_e={disk_title:"保存到本地",disk_details:"将画布数据导出为文件,以便以后导入",disk_button:"保存为文件",link_title:"分享链接",link_details:"导出为只读链接。",link_button:"导出链接",excalidrawplus_description:"将画布保存到您的 Excalidraw+ 工作区。",excalidrawplus_button:"导出",excalidrawplus_exportError:"暂时无法导出到 Excalidraw+ ..."},J_e={blog:"浏览我们的博客",click:"单击",deepSelect:"深度选择",deepBoxSelect:"在方框内深度选择并避免拖拽",curvedArrow:"曲线箭头",curvedLine:"曲线",documentation:"文档",doubleClick:"双击",drag:"拖动",editor:"编辑器",editLineArrowPoints:"编辑线条或箭头的点",editText:"添加或编辑文本",github:"发现问题?提交反馈",howto:"帮助文档",or:"或",preventBinding:"禁用箭头吸附",tools:"工具",shortcuts:"快捷键列表",textFinish:"完成编辑 (文本编辑器)",textNewLine:"添加新行(文本编辑器)",title:"帮助",view:"视图",zoomToFit:"缩放以适应所有元素",zoomToSelection:"缩放到选区",toggleElementLock:"锁定/解锁",movePageUpDown:"上下移动页面",movePageLeftRight:"左右移动页面"},O_e={title:"清除画布"},P_e={title:"发布素材库",itemName:"项目名称",authorName:"作者名",githubUsername:"GitHub 用户名",twitterUsername:"Twitter 用户名",libraryName:"名称",libraryDesc:"简介",website:"网址",placeholder:{authorName:"您的名字或用户名",libraryName:"素材库名称",libraryDesc:"介绍您的素材库,让人们了解其用途",githubHandle:"GitHub 用户名(可选),填写后,您可以编辑已提交待审的素材库",twitterHandle:"Twitter 用户名(可选),填写后,当我们在Twitter发布推广信息时便可提及您",website:"您个人网站的或任意的链接(可选)"},errors:{required:"必填",website:"输入一个有效的URL"},noteDescription:"提交后,您的素材库将被包含在<link>公共素材库广场</link>以供其他人在绘图中使用。",noteGuidelines:"提交的素材库需先经人工审核。在提交之前,请先阅读<link>指南</link> 。后续沟通和对库的修改需要 GitHub 账号,但这不是必须的。",noteLicense:"提交即表明您已同意素材库将遵循 <link>MIT 许可证</link>,简而言之,任何人都可以不受限制地使用它们。",noteItems:"素材库中每个项目都有各自的名称以供筛选。以下项目将被包含:",atleastOneLibItem:"请选择至少一个素材库以开始",republishWarning:"注意:部分选中的项目已经发布或提交。请仅在更新已有或已提交的素材库时重复提交项目。"},__e={title:"素材库已提交",content:"谢谢你 {{authorName}}。您的素材库已被提交审核。请点击<link>此处</link>跟进此次提交的状态"},W_e={resetLibrary:"重置素材库",removeItemsFromLib:"从素材库中删除选中的项目"},q_e={header:"导出图片",label:{withBackground:"背景",onlySelected:"仅选中",darkMode:"深色模式",embedScene:"包含画布数据",scale:"缩放比例",padding:"内边距"},tooltip:{embedScene:`画布数据将被保存到导出的 PNG/SVG 文件,以便恢复。
|
||
将会增加导出文件的大小。`},title:{exportToPng:"导出为 PNG",exportToSvg:"导出为 SVG",copyPngToClipboard:"复制 PNG 到剪切板"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"复制到剪贴板"}},z_e={tooltip:"您的绘图采用端到端加密,其内容对于 Excalidraw 服务器是不可见的。",link:"Excalidraw 中关于端到端加密的博客"},Z_e={angle:"角度",element:"元素",elements:"元素",height:"高度",scene:"画布",selected:"选中",storage:"存储",title:"详细统计信息",total:"总计",version:"版本",versionCopy:"点击复制",versionNotAvailable:"版本不可用",width:"宽度"},V_e={addedToLibrary:"添加到素材库中",copyStyles:"样式已拷贝。",copyToClipboard:"已复制到剪切板。",copyToClipboardAsPng:`已将 {{exportSelection}} 作为 PNG 复制到剪贴板
|
||
({{exportColorScheme}})`,fileSaved:"文件已保存。",fileSavedToFilename:"保存到 {filename}",canvas:"画布",selection:"所选项",pasteAsSingleElement:`使用 {{shortcut}} 粘贴为单个元素,
|
||
或粘贴到现有的文本编辑器里`,unableToEmbed:"目前不允许嵌入此网址。请在 GitHub 上提 issue 请求将此网址加入白名单",unrecognizedLinkFormat:"您嵌入的链接不符合格式要求。请尝试粘贴源网站提供的“嵌入 (embed)”字符串"},j_e={transparent:"透明",black:"黑",white:"白",red:"红",pink:"粉红",grape:"紫红",violet:"蓝紫",gray:"灰",blue:"蓝",cyan:"青",teal:"蓝绿",green:"绿",yellow:"黄",orange:"橙",bronze:"古铜"},X_e={app:{center_heading:"您的所有数据都储存在浏览器本地。",center_heading_plus:"是否前往 Excalidraw+ ?",menuHint:"导出、首选项、语言……"},defaults:{menuHint:"导出、首选项……",center_heading:"图,化繁为简。",toolbarHint:"选择工具并开始绘图!",helpHint:"快捷键和帮助"}},$_e={mostUsedCustomColors:"常用自定义颜色",colors:"颜色",shades:"色调明暗",hexCode:"十六进制值",noShades:"此颜色没有可用的明暗变化"},AWe={action:{exportToImage:{title:"导出为图片",button:"导出为图片",description:"将画布数据导出为图片,以便以后导入。"},saveToDisk:{title:"保存到本地",button:"保存到本地",description:"将画布数据导出为文件,以便以后导入。"},excalidrawPlus:{title:"Excalidraw+",button:"导出到 Excalidraw+",description:"将画布保存到您的 Excalidraw+ 工作区。"}},modal:{loadFromFile:{title:"从文件加载",button:"从文件加载",description:"从文件加载将<bold>替换您现有的内容</bold>。<br></br>您可以先使用下列方式备份您的绘图。"},shareableLink:{title:"从链接加载",button:"替换我的内容",description:"加载外部绘图将<bold>替换您现有的内容</bold>。<br></br>您可以先使用下列方式备份您的绘图。"}}},eWe={title:"Mermaid 至 Excalidraw",button:"插入",description:"目前仅支持<flowchartLink>流程图</flowchartLink>、<sequenceLink>序列图</sequenceLink>和<classLink>类图</classLink>。其他类型在 Excalidraw 中将以图像呈现。",syntax:"Mermaid 语法",preview:"预览"},ICr={labels:F_e,library:x_e,buttons:S_e,alerts:L_e,errors:R_e,toolBar:N_e,headings:G_e,hints:U_e,canvasError:M_e,errorSplash:T_e,roomDialog:Y_e,errorDialog:H_e,exportDialog:K_e,helpDialog:J_e,clearCanvasDialog:O_e,publishDialog:P_e,publishSuccessDialog:__e,confirmDialog:W_e,imageExportDialog:q_e,encrypted:z_e,stats:Z_e,toast:V_e,colors:j_e,welcomeScreen:X_e,colorPicker:$_e,overwriteConfirm:AWe,mermaid:eWe}});var SWe={};yt(SWe,{alerts:()=>nWe,buttons:()=>aWe,canvasError:()=>cWe,clearCanvasDialog:()=>hWe,colorPicker:()=>kWe,colors:()=>bWe,confirmDialog:()=>fWe,default:()=>hCr,encrypted:()=>DWe,errorDialog:()=>EWe,errorSplash:()=>CWe,errors:()=>oWe,exportDialog:()=>dWe,headings:()=>lWe,helpDialog:()=>IWe,hints:()=>gWe,imageExportDialog:()=>mWe,labels:()=>iWe,library:()=>uWe,mermaid:()=>xWe,overwriteConfirm:()=>FWe,publishDialog:()=>QWe,publishSuccessDialog:()=>pWe,roomDialog:()=>BWe,stats:()=>yWe,toast:()=>wWe,toolBar:()=>sWe,welcomeScreen:()=>vWe});var iWe,uWe,aWe,nWe,oWe,sWe,lWe,gWe,cWe,CWe,BWe,EWe,dWe,IWe,hWe,QWe,pWe,fWe,mWe,DWe,yWe,wWe,bWe,vWe,kWe,FWe,xWe,hCr;var LWe=P(()=>{qt();iWe={paste:"貼上",pasteAsPlaintext:"",pasteCharts:"貼上圖表",selectAll:"全選",multiSelect:"多重選取",moveCanvas:"移動畫布",cut:"剪下",copy:"複製",copyAsPng:"以 PNG 格式複製",copyAsSvg:"以 SVG 格式複製",copyText:"",copySource:"",convertToCode:"",bringForward:"往上一層移動",sendToBack:"移到最底層",bringToFront:"移到最上層",sendBackward:"往下一層移動",delete:"刪除",copyStyles:"複製樣式",pasteStyles:"套用樣式",stroke:"筆跡顏色",background:"填充顏色",fill:"背景樣式",strokeWidth:"筆跡寬度",strokeStyle:"筆跡線條",strokeStyle_solid:"實線",strokeStyle_dashed:"虛線(較密)",strokeStyle_dotted:"虛線(較疏)",sloppiness:"筆跡風格",opacity:"透明度",textAlign:"文字對齊",edges:"邊角樣式",sharp:"銳角",round:"圓角",arrowheads:"箭嘴",arrowhead_none:"無箭嘴",arrowhead_arrow:"普通箭嘴",arrowhead_bar:"平頭條狀",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"三角箭嘴",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"字型大小",fontFamily:"字體",addWatermark:"加入「使用 Excalidraw 製圖」水印",handDrawn:"手繪體",normal:"電腦字體",code:"等寬體",small:"細",medium:"中",large:"大",veryLarge:"勁大",solid:"實心",hachure:"斜線",zigzag:"",crossHatch:"交叉格仔",thin:"幼",bold:"粗",left:"靠左對齊",center:"置中對齊",right:"靠右對齊",extraBold:"勁粗",architect:"手繪風格",artist:"藝術家風格",cartoonist:"卡通風格",fileTitle:"檔案名稱",colorPicker:"",canvasColors:"",canvasBackground:"畫布背景顏色",drawingCanvas:"畫布",layers:"圖層",actions:"動作",language:"\uD83C\uDF0F 語言",liveCollaboration:"",duplicateSelection:"製作副本",untitled:"未命名的作品",name:"",yourName:"你的名稱",madeWithExcalidraw:"使用 Excalidraw 製圖",group:"建立物件群組",ungroup:"取消物件群組",collaborators:"已連線的協作者",showGrid:"顯示網格",addToLibrary:"加入作品庫",removeFromLibrary:"從作品庫中移除",libraryLoadingMessage:"正在載入作品庫…",libraries:"瀏覽作品庫",loadingScene:"載入畫布中…",align:"物件對齊",alignTop:"水平置頂",alignBottom:"水平置底",alignLeft:"垂直靠左對齊",alignRight:"垂直靠右對齊",centerVertically:"垂直置中",centerHorizontally:"水平置中",distributeHorizontally:"左右等距",distributeVertically:"上下等距",flipHorizontal:"左右反轉",flipVertical:"上下反轉",viewMode:"唯讀模式",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},uWe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},aWe={clearReset:"清空畫布",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"",selectLanguage:"",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"",done:"",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},nWe={clearReset:"【‼️ 警告 ‼️ 無法復原的動作】你確定要清空呢塊畫布嗎?",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"無嘢可以匯出喎~畫吓嘢先?",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},oWe={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},sWe={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},lWe={canvasActions:"畫布動作",selectedShapeActions:"",shapes:""},gWe={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},cWe={cannotShowPreview:"無法顯示預覽",canvasTooBig:"塊畫布太大啦,縮細啲先啦?",canvasTooBigTip:""},CWe={headingMain:"",clearCanvasMessage:"如果重新整理頁面都係睇唔到,你可以<button>清空畫布</button>",clearCanvasCaveat:"(注意:呢個動作會直接丟棄你嘅作品,並且無法復原)",trackedToSentry:"",openIssueMessage:"",sceneContent:""},BWe={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},EWe={title:""},dWe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},IWe={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},hWe={title:""},QWe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},pWe={title:"",content:""},fWe={resetLibrary:"",removeItemsFromLib:""},mWe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},DWe={tooltip:"",link:""},yWe={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},wWe={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"畫布",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},bWe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},vWe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},kWe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},FWe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},xWe={title:"",button:"",description:"",syntax:"",preview:""},hCr={labels:iWe,library:uWe,buttons:aWe,alerts:nWe,errors:oWe,toolBar:sWe,headings:lWe,hints:gWe,canvasError:cWe,errorSplash:CWe,roomDialog:BWe,errorDialog:EWe,exportDialog:dWe,helpDialog:IWe,clearCanvasDialog:hWe,publishDialog:QWe,publishSuccessDialog:pWe,confirmDialog:fWe,imageExportDialog:mWe,encrypted:DWe,stats:yWe,toast:wWe,colors:bWe,welcomeScreen:vWe,colorPicker:kWe,overwriteConfirm:FWe,mermaid:xWe}});var aqe={};yt(aqe,{alerts:()=>UWe,buttons:()=>GWe,canvasError:()=>KWe,clearCanvasDialog:()=>qWe,colorPicker:()=>rqe,colors:()=>eqe,confirmDialog:()=>VWe,default:()=>QCr,encrypted:()=>XWe,errorDialog:()=>PWe,errorSplash:()=>JWe,errors:()=>MWe,exportDialog:()=>_We,headings:()=>YWe,helpDialog:()=>WWe,hints:()=>HWe,imageExportDialog:()=>jWe,labels:()=>RWe,library:()=>NWe,mermaid:()=>uqe,overwriteConfirm:()=>iqe,publishDialog:()=>zWe,publishSuccessDialog:()=>ZWe,roomDialog:()=>OWe,stats:()=>$We,toast:()=>Aqe,toolBar:()=>TWe,welcomeScreen:()=>tqe});var RWe,NWe,GWe,UWe,MWe,TWe,YWe,HWe,KWe,JWe,OWe,PWe,_We,WWe,qWe,zWe,ZWe,VWe,jWe,XWe,$We,Aqe,eqe,tqe,rqe,iqe,uqe,QCr;var nqe=P(()=>{qt();RWe={paste:"貼上",pasteAsPlaintext:"以純文字貼上",pasteCharts:"貼上圖表",selectAll:"全選",multiSelect:"將物件加入選取範圍",moveCanvas:"移動畫布",cut:"剪下",copy:"複製",copyAsPng:"以PNG格式儲存到剪貼板",copyAsSvg:"以SVG格式複製到剪貼板",copyText:"以文字格式複製至剪貼簿",copySource:"複製來源至剪貼簿",convertToCode:"轉換為程式碼",bringForward:"上移一層",sendToBack:"移到最底層",bringToFront:"置於最頂層",sendBackward:"往後移一層",delete:"刪除",copyStyles:"複製樣式",pasteStyles:"貼上樣式",stroke:"筆畫",background:"背景",fill:"填滿",strokeWidth:"筆跡寬度",strokeStyle:"筆畫樣式",strokeStyle_solid:"實線",strokeStyle_dashed:"虛線",strokeStyle_dotted:"點線",sloppiness:"線條風格",opacity:"透明度",textAlign:"文字對齊",edges:"邊緣",sharp:"尖銳",round:"平滑",arrowheads:"箭頭",arrowhead_none:"無",arrowhead_arrow:"箭頭",arrowhead_bar:"條狀箭頭",arrowhead_circle:"圓形",arrowhead_circle_outline:"圓形(外框)",arrowhead_triangle:"三角形",arrowhead_triangle_outline:"三角形(外框)",arrowhead_diamond:"菱形",arrowhead_diamond_outline:"菱形(外框)",fontSize:"字型大小",fontFamily:"字體集",addWatermark:'加上 "Made with Excalidraw" 浮水印',handDrawn:"手寫",normal:"一般",code:"代碼",small:"小",medium:"中",large:"大",veryLarge:"特大",solid:"實心",hachure:"斜線筆觸",zigzag:"Z字形",crossHatch:"交叉筆觸",thin:"細",bold:"粗",left:"左側",center:"置中",right:"右側",extraBold:"極粗",architect:"精確",artist:"藝術",cartoonist:"卡通",fileTitle:"檔案名稱",colorPicker:"色彩選擇工具",canvasColors:"使用於畫布",canvasBackground:"Canvas 背景",drawingCanvas:"繪圖 canvas",layers:"圖層",actions:"動作",language:"語言",liveCollaboration:"即時協作...",duplicateSelection:"複製",untitled:"無標題",name:"名稱",yourName:"你的名稱",madeWithExcalidraw:"以 Excalidraw 製作",group:"建立群組",ungroup:"取消群組",collaborators:"協作者",showGrid:"顯示格線",addToLibrary:"加入資料庫",removeFromLibrary:"從資料庫中移除",libraryLoadingMessage:"資料庫讀取中…",libraries:"瀏覽資料庫",loadingScene:"場景讀取中…",align:"對齊",alignTop:"對齊頂部",alignBottom:"對齊底部",alignLeft:"對齊左側",alignRight:"對齊右側",centerVertically:"垂直置中",centerHorizontally:"水平置中",distributeHorizontally:"水平分布",distributeVertically:"垂直分布",flipHorizontal:"水平翻轉",flipVertical:"垂直翻轉",viewMode:"檢視模式",share:"共享",showStroke:"顯示線條檢色器",showBackground:"顯示背景檢色器",toggleTheme:"切換主題",personalLib:"個人資料庫",excalidrawLib:"Excalidraw 資料庫",decreaseFontSize:"縮小文字",increaseFontSize:"放大文字",unbindText:"取消綁定文字",bindText:"結合文字至容器",createContainerFromText:"將文字包於容器中",link:{edit:"編輯連結",editEmbed:"編輯連結&嵌入",create:"建立連結",createEmbed:"建立連結&嵌入",label:"連結",labelEmbed:"連結&嵌入",empty:"未設定連結"},lineEditor:{edit:"編輯線條",exit:"結束線條編輯"},elementLock:{lock:"鎖定",unlock:"解鎖",lockAll:"全部鎖定",unlockAll:"全部解鎖"},statusPublished:"已發布",sidebarLock:"側欄維持開啟",selectAllElementsInFrame:"選取框架內的所有元素",removeAllElementsFromFrame:"從框架內移除所有元素",eyeDropper:"從畫布中選取顏色",textToDiagram:"文字轉圖表",prompt:"提示詞"},NWe={noItems:"尚未加入任何物件...",hint_emptyLibrary:"選取畫布上的物件以加入,或從下方的公開 repository 中安裝資料庫",hint_emptyPrivateLibrary:"選擇畫布上的物件以在此加入"},GWe={clearReset:"重置 canvas",exportJSON:"匯出至檔案",exportImage:"匯出圖片",export:"儲存至...",copyToClipboard:"複製至剪貼簿",save:"儲存目前檔案",saveAs:"儲存為",load:"開啟",getShareableLink:"取得共享連結",close:"關閉",selectLanguage:"選擇語言",scrollBackToContent:"捲動回到內容",zoomIn:"放大",zoomOut:"縮小",resetZoom:"重設縮放",menu:"選單",done:"完成",edit:"編輯",undo:"復原",redo:"重做",resetLibrary:"重設資料庫",createNewRoom:"建立新協作會議室",fullScreen:"全螢幕",darkMode:"深色模式",lightMode:"淺色模式",zenMode:"專注模式",objectsSnapMode:"吸附至物件",exitZenMode:"離開專注模式",cancel:"取消",clear:"清除",remove:"刪除",embed:"切換嵌入",publishLibrary:"發布",submit:"送出",confirm:"確認",embeddableInteractionButton:"點擊以互動"},UWe={clearReset:"這將會清除整個 canvas。你確定嗎?",couldNotCreateShareableLink:"無法建立共享連結。",couldNotCreateShareableLinkTooBig:"無法建立共享連結:場景太大",couldNotLoadInvalidFile:"無法讀取失效的檔案。",importBackendFailed:"後端讀取失敗。",cannotExportEmptyCanvas:"無法輸出空白的 canvas。",couldNotCopyToClipboard:"無法複製到剪貼簿",decryptFailed:"無法解密資料。",uploadedSecurly:"上傳已通過 end-to-end 加密,Excalidraw 伺服器和第三方無法皆讀取其內容。",loadSceneOverridePrompt:"讀取外部圖樣將取代目前的內容。是否要繼續?",collabStopOverridePrompt:`停止連線將覆蓋您先前於本機儲存的繪圖進度,是否確認?
|
||
|
||
(如要保留原有的本機繪圖進度,直接關閉瀏覽器分頁即可。)`,errorAddingToLibrary:"無法於此資料庫加入項目",errorRemovingFromLibrary:"無法由此資料庫移除項目",confirmAddLibrary:"這將會將 {{numShapes}} 個圖形加入你的資料庫,你確定嗎?",imageDoesNotContainScene:"此圖檔中未包含場景資料。輸出檔案時是否有包含場景資料?",cannotRestoreFromImage:"無法由此檔案回復場景。",invalidSceneUrl:"無法由提供的 URL 匯入場景。可能是發生異常,或未包含有效的 Excalidraw JSON 資料。",resetLibrary:"這會清除您的資料庫,是否確定?",removeItemsFromsLibrary:"從資料庫刪除 {{count}} 項?",invalidEncryptionKey:"加密鍵必須為22字元。即時協作已停用。",collabOfflineWarning:`沒有可用的網路連線。
|
||
變更無法儲存!`},MWe={unsupportedFileType:"不支援的檔案類型。",imageInsertError:"無法插入圖片。請稍後再試…",fileTooBig:"檔案過大。可接受的最大尺寸為 {{maxSize}} 。",svgImageInsertError:"無法插入 SVG 圖片。此 SVG 檔案有問題。",failedToFetchImage:"無法獲取圖片。",invalidSVGString:"無效的 SVG。",cannotResolveCollabServer:"無法連結至 collab 伺服器。請重新整理後再試一次。",importLibraryError:"無法載入資料庫",collabSaveFailed:"無法儲存至後端資料庫。若此問題持續發生,請將檔案儲存於本機以確保資料不會遺失。",collabSaveFailed_sizeExceeded:"無法儲存至後端資料庫,可能的原因為畫布尺寸過大。請將檔案儲存於本機以確保資料不會遺失。",imageToolNotSupported:"圖片已停用",brave_measure_text_error:{line1:"看起來您開啟了 Brave 瀏覽器的 <bold>Aggressively Block Fingerprinting</bold> 設定。",line2:"這可能造成您畫布中 <bold>文字元素</bold> 的異常。",line3:"我們強烈建議您關閉此設定。您可以依照 <link>這些步驟</link> 來進行。",line4:"若關閉此設定並未修復文字元素的顯示問題,請回報於我們 GitHub 上的 <issueLink>issue</issueLink>,或在 <discordLink>Discord</discordLink> 上告訴我們。"},libraryElementTypeError:{embeddable:"可嵌入元素無法加入資料庫",iframe:"IFrame 元素無法加入資料庫",image:"即將支援加入圖片至資料庫!"},asyncPasteFailedOnRead:"無法貼上(無法由系統剪貼簿讀入)",asyncPasteFailedOnParse:"無法貼上",copyToSystemClipboardFailed:"無法複製至剪貼簿"},TWe={selection:"選取",image:"插入圖片",rectangle:"長方形",diamond:"菱形",ellipse:"橢圓",arrow:"箭頭",line:"線條",freedraw:"繪圖",text:"文字",library:"資料庫",lock:"可連續使用選取的工具",penMode:"筆模式 - 避免觸摸",link:"為所選的形狀增加\b/更新連結",eraser:"橡皮擦",frame:"框架工具",magicframe:"線框稿轉為程式碼",embeddable:"嵌入網站",laser:"雷射筆",hand:"手形(平移工具)",extraTools:"更多工具",mermaidToExcalidraw:"Mermaid 至 Excalidraw",magicSettings:"AI 設定"},YWe={canvasActions:"canvas 動作",selectedShapeActions:"選取圖形動作",shapes:"形狀"},HWe={canvasPanning:"若要移動畫布,請在拖曳時按住滑鼠滾輪或空白鍵,或使用手形工具",linearElement:"點擊以繪製多點曲線;或拖曳以繪製直線",freeDraw:"點擊並拖曳來繪圖,放開即結束",text:"提示:亦可使用選取工具在任何地方雙擊來加入文字",embeddable:"點擊並拖移以建立嵌入網站",text_selected:"雙擊滑鼠或按 Enter 以編輯文字",text_editing:"按跳脫鍵或 Ctrl 或 Cmd + Enter 以結束編輯",linearElementMulti:"按下 Escape 或 Enter 以結束繪製",lockAngle:"按住 SHIFT 可限制旋轉角度",resize:"縮放時按住 Shift 可保持原比例縮放;\\n按住 Alt 可由中心點進行縮放",resizeImage:"按住 SHIFT 可任意縮放,按住 ALT 可由中央縮放。",rotate:"旋轉時按住 Shift 可限制旋轉角度",lineEditor_info:"按住 Ctrl 或 Cmd 並雙擊或按住 Ctrl 或 Cmd + Enter 來編輯控制點",lineEditor_pointSelected:"按下 Delete 可移除錨點;Ctrl 或 Cmd + D 可複製;或可拖曳來移動",lineEditor_nothingSelected:`選擇要編輯的錨點(按住 SHIFT 可多選),
|
||
或按住 Alt 並點擊以增加新錨點。`,placeImage:"點擊以放置圖片,或點擊並拖曳以手動調整其尺寸。",publishLibrary:"發布個人資料庫",bindTextToElement:"按下 Enter 以加入文字。",deepBoxSelect:"按住 Ctrl 或 Cmd 以深度選取並避免拖曳",eraserRevert:"按住 Alt 以反選取已標記待刪除的元素",firefox_clipboard_write:`此功能有機會透過將 "dom.events.asyncClipboard.clipboardItem" 設定為 "true" 來開啟。
|
||
若要變更 Firefox 瀏覽器的此設定值,請至 "about:config" 頁面。`,disableSnapping:"按住 Ctrl 或 Cmd 以禁用吸附"},KWe={cannotShowPreview:"無法顯示預覽",canvasTooBig:"畫布可能過大",canvasTooBigTip:"提示:可嘗試將最遠的元素移動至較集中的位置"},JWe={headingMain:"發生錯誤,嘗試<button>重新載入頁面。</button>",clearCanvasMessage:"若重新載入仍無法解決問題,嘗試<button>清除 canvas。</button>",clearCanvasCaveat:"此動作將造成目前的作品被移除。",trackedToSentry:"此錯誤與其識別碼{{eventId}}將由系統記錄。",openIssueMessage:"我們將謹慎處理,你的作品內容不會被包含在錯誤報告中。若你的作品不需保持私密,請考慮使用我們的<button>bug tracker。</button>請將下列資訊複製貼上至 GitHub issue 中。",sceneContent:"作品內容:"},OWe={desc_intro:"你可以邀請其他人一起協作目前的作品。",desc_privacy:"連線使用 end-to-end 加密故無須擔心作品的安全性。即使是我們的伺服器也無法取得其內容。",button_startSession:"開始連線",button_stopSession:"停止連線",desc_inProgressIntro:"即時協作連線正在進行中。",desc_shareLink:"將此連結分享給欲協作的對象:",desc_exitSession:"停止連線將中斷你與協作會議室的連結,但你仍可於本機編輯此作品。意指停止連線後你的編輯不會被先前共同協作的人看見,且他們可繼續共同協作另一個版本。",shareTitle:"加入 Excalidraw 上的即時協作會議室"},PWe={title:"錯誤"},_We={disk_title:"儲存至硬碟",disk_details:"將場景匯出為可供匯入之檔案",disk_button:"儲存至檔案",link_title:"可共享連結",link_details:"匯出為唯讀連結",link_button:"匯出為連結",excalidrawplus_description:"將此場景儲存至你的 Excalidraw+ 工作區",excalidrawplus_button:"輸出",excalidrawplus_exportError:"目前無法輸出至 Excalidraw+"},WWe={blog:"閱讀部落格",click:"點擊",deepSelect:"深度選取",deepBoxSelect:"在容器內深度選取並避免拖曳",curvedArrow:"曲箭頭",curvedLine:"曲線",documentation:"文件",doubleClick:"雙擊",drag:"拖曳",editor:"編輯器",editLineArrowPoints:"編輯線/箭頭控制點",editText:"編輯文字/增加標籤",github:"發現異常?回報問題",howto:"參照我們的說明",or:"或",preventBinding:"避免箭號連結",tools:"工具",shortcuts:"鍵盤快速鍵",textFinish:"完成編輯(文字編輯器)",textNewLine:"換行(文字編輯器)",title:"說明",view:"檢視",zoomToFit:"放大至填滿畫面",zoomToSelection:"縮放至選取區",toggleElementLock:"鎖定/解鎖已選的項目",movePageUpDown:"向上/下移動頁面",movePageLeftRight:"向左/右移動頁面"},qWe={title:"清除畫布"},zWe={title:"發布資料庫",itemName:"項目名稱",authorName:"作者名稱",githubUsername:"GitHub 帳號",twitterUsername:"Twitter 帳號",libraryName:"資料庫名稱",libraryDesc:"資料庫說明",website:"網站",placeholder:{authorName:"您的名稱或帳號",libraryName:"您的資料庫名稱",libraryDesc:"提供您的資料庫說明以利他人理解其用途",githubHandle:"Github handle(選填),填寫後您可編輯已送出待審查的資料庫",twitterHandle:"Twitter 帳號(選填),填寫後若我們在 Twitter 推廣時可提及您",website:"您個人網站或其他網站的連結(選填)"},errors:{required:"必填",website:"請輸入有效的 URL"},noteDescription:"送出您的資料庫後將被包含於<link>公開資料庫 repository</link>以利他人在其繪圖中使用。",noteGuidelines:"資料庫需先經人工審查。請閱讀<link>說明文件</link>再送出。若需溝通與修改時要透過 GitHub 帳號來進行,但並非強制需求。",noteLicense:"送出即代表您同意此資料庫將發布時使用 <link>MIT 授權,</link>簡單來說是指任何人都能不受限制的使用。",noteItems:"每個資料庫項目都有獨立的名稱故可篩選。會包含下列資料庫項目:",atleastOneLibItem:"請選擇至少一項資料庫項目",republishWarning:"注意:部分選取中的物件先前已發布/送出過。建議僅在要更新現存資料庫或已送出的物件時才重新送出這些物件。"},ZWe={title:"資料庫已送出",content:"感謝 {{authorName}} 。您的資料庫已送出待審查。您可查看目前狀態<link>在此</link>"},VWe={resetLibrary:"重設資料庫",removeItemsFromLib:"從資料庫移除所選的項目"},jWe={header:"匯出圖片",label:{withBackground:"背景",onlySelected:"僅選取物件",darkMode:"深色模式",embedScene:"嵌入場景",scale:"縮放比例",padding:"內間距"},tooltip:{embedScene:`用於回復場景的場景資料會被包含在輸出的 PNG/SVG 檔案中。
|
||
會增加輸出的檔案大小。`},title:{exportToPng:"輸出成 PNG",exportToSvg:"輸出成 SVG",copyPngToClipboard:"複製 PNG 至剪貼簿"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"複製至剪貼簿"}},XWe={tooltip:"你的作品已使用 end-to-end 方式加密,Excalidraw 的伺服器也無法取得其內容。",link:"Excalidraw 端到端加密的相關部落格文章"},$We={angle:"角度",element:"元素",elements:"元素",height:"高度",scene:"場景",selected:"已選",storage:"儲存",title:"詳細統計",total:"合計",version:"版本",versionCopy:"點擊複製",versionNotAvailable:"無法取得版本",width:"寬度"},Aqe={addedToLibrary:"加入資料庫",copyStyles:"已複製樣式",copyToClipboard:"複製至剪貼簿。",copyToClipboardAsPng:`以 PNG 格式將 {{exportSelection}} 複製至剪貼簿
|
||
({{exportColorScheme}})`,fileSaved:"已儲存檔案。",fileSavedToFilename:"儲存為 {filename}",canvas:"畫布",selection:"已選項目",pasteAsSingleElement:`使用 {{shortcut}} 以做為單一物件貼上,
|
||
或貼上至現有的文字編輯器`,unableToEmbed:"目前不允許嵌入此網址。您可至 GitHub 提出 issue 以要求將此網址加入合格名單。",unrecognizedLinkFormat:"您嵌入的連結格式不符。請嘗試貼入原網站所提供的「嵌入」字串。"},eqe={transparent:"透明",black:"黑",white:"白",red:"紅",pink:"粉紅",grape:"深紫",violet:"藍紫",gray:"灰",blue:"藍",cyan:"青",teal:"藍綠",green:"綠",yellow:"黃",orange:"橘",bronze:"銅"},tqe={app:{center_heading:"所有資料皆已在瀏覽器中儲存於本機",center_heading_plus:"您是否是要前往 Excalidraw+ ?",menuHint:"輸出、偏好設定、語言..."},defaults:{menuHint:"輸出、偏好設定及其他...",center_heading:"圖表。製作。超簡單。",toolbarHint:"選個工具開始畫圖吧!",helpHint:"快速鍵與說明"}},rqe={mostUsedCustomColors:"最常使用的自訂顏色",colors:"顏色",shades:"漸變色",hexCode:"Hex 碼",noShades:"沒有此顏色的漸變色"},iqe={action:{exportToImage:{title:"匯出為圖片",button:"匯出為圖片",description:"將場景匯出為可供匯入的圖片檔案"},saveToDisk:{title:"儲存至硬碟",button:"儲存至硬碟",description:"將場景匯出為可供匯入的檔案"},excalidrawPlus:{title:"Excalidraw+",button:"匯出至 Excalidraw+",description:"將此場景儲存至您的 Excalidraw+ 工作區"}},modal:{loadFromFile:{title:"從檔案載入",button:"從檔案載入",description:"從檔案載入將<bold>取代您目前的內容</bold>。<br></br>可先使用下方的選項備份您的繪圖。"},shareableLink:{title:"從連結載入",button:"取代我的內容",description:"載入外部繪圖將<bold>取代您目前的內容</bold>。<br></br>可先使用下方的選項備份您的繪圖。"}}},uqe={title:"Mermaid 至 Excalidraw",button:"插入",description:"目前僅支援 <flowchartLink>Flowchart</flowchartLink> 、 <sequenceLink>Sequence</sequenceLink> 及 <classLink>Class </classLink> 圖表。其餘檔案類型在 Excalidraw 將會以圖像呈現。",syntax:"Mermaid 語法",preview:"預覽"},QCr={labels:RWe,library:NWe,buttons:GWe,alerts:UWe,errors:MWe,toolBar:TWe,headings:YWe,hints:HWe,canvasError:KWe,errorSplash:JWe,roomDialog:OWe,errorDialog:PWe,exportDialog:_We,helpDialog:WWe,clearCanvasDialog:qWe,publishDialog:zWe,publishSuccessDialog:ZWe,confirmDialog:VWe,imageExportDialog:jWe,encrypted:XWe,stats:$We,toast:Aqe,colors:eqe,welcomeScreen:tqe,colorPicker:rqe,overwriteConfirm:iqe,mermaid:uqe}});var oqe=P(()=>{(()=>{if(Path2D.prototype.roundRect??=A,globalThis.CanvasRenderingContext2D)globalThis.CanvasRenderingContext2D.prototype.roundRect??=A;if(globalThis.OffscreenCanvasRenderingContext2D)globalThis.OffscreenCanvasRenderingContext2D.prototype.roundRect??=A;function A(r,i,u,a,n){if(![r,i,u,a].every((m)=>Number.isFinite(m)))return;n=I(n);let o,s,l,g;if(n.length===4)o=Q(n[0]),s=Q(n[1]),l=Q(n[2]),g=Q(n[3]);else if(n.length===3)o=Q(n[0]),s=Q(n[1]),g=Q(n[1]),l=Q(n[2]);else if(n.length===2)o=Q(n[0]),l=Q(n[0]),s=Q(n[1]),g=Q(n[1]);else if(n.length===1)o=Q(n[0]),s=Q(n[0]),l=Q(n[0]),g=Q(n[0]);else throw RangeError(`${e(this)} ${n.length} is not a valid size for radii sequence.`);let C=[o,s,l,g],B=C.find(({x:m,y:f})=>m<0||f<0),E=B?.x<0?B.x:B?.y;if(C.some(({x:m,y:f})=>!Number.isFinite(m)||!Number.isFinite(f)))return;if(B)throw RangeError(`${e(this)} Radius value ${B} is negative.`);if(p(C),u<0&&a<0)this.moveTo(r-o.x,i),this.ellipse(r+u+s.x,i-s.y,s.x,s.y,0,-Math.PI*1.5,-Math.PI),this.ellipse(r+u+l.x,i+a+l.y,l.x,l.y,0,-Math.PI,-Math.PI/2),this.ellipse(r-g.x,i+a+g.y,g.x,g.y,0,-Math.PI/2,0),this.ellipse(r-o.x,i-o.y,o.x,o.y,0,0,-Math.PI/2);else if(u<0)this.moveTo(r-o.x,i),this.ellipse(r+u+s.x,i+s.y,s.x,s.y,0,-Math.PI/2,-Math.PI,1),this.ellipse(r+u+l.x,i+a-l.y,l.x,l.y,0,-Math.PI,-Math.PI*1.5,1),this.ellipse(r-g.x,i+a-g.y,g.x,g.y,0,Math.PI/2,0,1),this.ellipse(r-o.x,i+o.y,o.x,o.y,0,0,-Math.PI/2,1);else if(a<0)this.moveTo(r+o.x,i),this.ellipse(r+u-s.x,i-s.y,s.x,s.y,0,Math.PI/2,0,1),this.ellipse(r+u-l.x,i+a+l.y,l.x,l.y,0,0,-Math.PI/2,1),this.ellipse(r+g.x,i+a+g.y,g.x,g.y,0,-Math.PI/2,-Math.PI,1),this.ellipse(r+o.x,i-o.y,o.x,o.y,0,-Math.PI,-Math.PI*1.5,1);else this.moveTo(r+o.x,i),this.ellipse(r+u-s.x,i+s.y,s.x,s.y,0,-Math.PI/2,0),this.ellipse(r+u-l.x,i+a-l.y,l.x,l.y,0,0,Math.PI/2),this.ellipse(r+g.x,i+a-g.y,g.x,g.y,0,Math.PI/2,Math.PI),this.ellipse(r+o.x,i+o.y,o.x,o.y,0,Math.PI,Math.PI*1.5);this.closePath(),this.moveTo(r,i);function d(m){let{x:f,y:D,z:w,w:b}=m;return{x:f,y:D,z:w,w:b}}function I(m){let f=typeof m;if(f==="undefined"||m===null)return[0];if(f==="function")return[NaN];if(f==="object"){if(typeof m[Symbol.iterator]==="function")return[...m].map((D)=>{let w=typeof D;if(w==="undefined"||D===null)return 0;if(w==="function")return NaN;if(w==="object")return d(D);return h(D)});return[d(m)]}return[h(m)]}function h(m){return+m}function Q(m){let f=h(m);if(Number.isFinite(f))return{x:f,y:f};if(Object(m)===m)return{x:h(m.x??0),y:h(m.y??0)};return{x:NaN,y:NaN}}function p(m){let[f,D,w,b]=m,F=[Math.abs(u)/(f.x+D.x),Math.abs(a)/(D.y+w.y),Math.abs(u)/(w.x+b.x),Math.abs(a)/(f.y+b.y)],v=Math.min(...F);if(v<=1)for(let S of m)S.x*=v,S.y*=v}}function e(r){return`Failed to execute 'roundRect' on '${t(r)}':`}function t(r){return Object(r)===r&&r instanceof Path2D?"Path2D":r instanceof globalThis?.CanvasRenderingContext2D?"CanvasRenderingContext2D":r instanceof globalThis?.OffscreenCanvasRenderingContext2D?"OffscreenCanvasRenderingContext2D":r?.constructor.name||r}})()});hEA();kP();KdA();j6();G4A();T4A();qt();fe();fe();var cnr=0;function Pn(A,e){let t=`atom${++cnr}`,r={toString(){return(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&this.debugLabel?t+":"+this.debugLabel:t}};if(typeof A==="function")r.read=A;else r.init=A,r.read=Cnr,r.write=Bnr;if(e)r.write=e;return r}function Cnr(A){return A(this)}function Bnr(A,e,t){return e(this,typeof t==="function"?t(A(this)):t)}var k1e=(A,e)=>A.unstable_is?A.unstable_is(e):e===A,H4A=(A)=>("init"in A),Y4A=(A)=>!!A.write,lq=new WeakMap,K4A=(A)=>{var e;return J4A(A)&&!((e=lq.get(A))==null?void 0:e[1])},Enr=(A,e)=>{let t=lq.get(A);if(t)t[1]=!0,t[0].forEach((r)=>r(e));else if((import.meta.env?import.meta.env.MODE:void 0)!=="production")throw Error("[Bug] cancelable promise not found")},dnr=(A)=>{if(lq.has(A))return;let e=[new Set,!1];lq.set(A,e);let t=()=>{e[1]=!0};A.then(t,t),A.onCancel=(r)=>{e[0].add(r)}},J4A=(A)=>typeof(A==null?void 0:A.then)==="function",F1e=(A)=>("v"in A)||("e"in A),sq=(A)=>{if("e"in A)throw A.e;if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!("v"in A))throw Error("[Bug] atom state is not initialized");return A.v},L1e=(A,e,t)=>{if(!t.p.has(A))t.p.add(A),e.then(()=>{t.p.delete(A)},()=>{t.p.delete(A)})},x1e=(A,e,t,r,i)=>{var u;if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&r===e)throw Error("[Bug] atom cannot depend on itself");if(t.d.set(r,i.n),K4A(t.v))L1e(e,t.v,i);if((u=i.m)==null||u.t.add(e),A)Inr(A,r,e)},vS=()=>({D:new Map,H:new Set,M:new Set,L:new Set}),FS=(A,e,t)=>{A[e].add(t)},S1e=(A,e,t)=>{if(!A.D.has(e))A.D.set(e,new Set),FS(A,"M",()=>{var r;(r=t.m)==null||r.l.forEach((i)=>FS(A,"M",i))})},Inr=(A,e,t)=>{let r=A.D.get(e);if(r)r.add(t)},hnr=(A,e)=>A.D.get(e),w2=(A)=>{let e,t=!1,r=(i)=>{try{i()}catch(u){if(!t)e=u,t=!0}};while(A.H.size||A.M.size||A.L.size)A.D.clear(),A.H.forEach(r),A.H.clear(),A.M.forEach(r),A.M.clear(),A.L.forEach(r),A.L.clear();if(t)throw e},R1e=(...[A,e,t,r])=>{let i=(h,Q,p)=>{let m="v"in Q,f=Q.v,D=K4A(Q.v)?Q.v:null;if(J4A(p)){dnr(p);for(let w of Q.d.keys())L1e(h,p,A(w));Q.v=p}else Q.v=p;if(delete Q.e,delete Q.x,!m||!Object.is(f,Q.v)){if(++Q.n,D)Enr(D,p)}},u=(h,Q)=>{var p;let m=A(Q);if(F1e(m)){if(m.m&&!m.x)return m;if(Array.from(m.d).every(([v,S])=>u(h,v).n===S))return m}m.d.clear();let f=!0,D=(v)=>{if(k1e(Q,v)){let x=A(v);if(!F1e(x))if(H4A(v))i(v,x,v.init);else throw Error("no atom init");return sq(x)}let S=u(h,v);try{return sq(S)}finally{if(f)x1e(h,Q,m,v,S);else{let x=vS();x1e(x,Q,m,v,S),g(x,Q,m),w2(x)}}},w,b,F={get signal(){if(!w)w=new AbortController;return w.signal},get setSelf(){if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!Y4A(Q))console.warn("setSelf function cannot be used with read-only atom");if(!b&&Y4A(Q))b=(...v)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&f)console.warn("setSelf function cannot be called in sync");if(!f)return l(Q,...v)};return b}};try{let v=e(Q,D,F);if(i(Q,m,v),J4A(v)){(p=v.onCancel)==null||p.call(v,()=>w==null?void 0:w.abort());let S=()=>{if(m.m){let x=vS();g(x,Q,m),w2(x)}};v.then(S,S)}return m}catch(v){return delete m.v,m.e=v,delete m.x,++m.n,m}finally{f=!1}},a=(h)=>sq(u(void 0,h)),n=(h,Q,p)=>{var m,f;let D=new Map;for(let w of((m=p.m)==null?void 0:m.t)||[]){let b=A(w);if(b.m)D.set(w,b)}for(let w of p.p)D.set(w,A(w));return(f=hnr(h,Q))==null||f.forEach((w)=>{D.set(w,A(w))}),D},o=(h,Q,p)=>{let m=[],f=new Set,D=new Set,w=[[Q,p]];while(w.length>0){let[b,F]=w[w.length-1];if(D.has(b)){w.pop();continue}if(f.has(b)){m.push([b,F,F.n]),D.add(b),F.x=!0,w.pop();continue}f.add(b);for(let[v,S]of n(h,b,F))if(b!==v&&!f.has(v))w.push([v,S])}FS(h,"H",()=>{let b=new Set([Q]);for(let F=m.length-1;F>=0;--F){let[v,S,x]=m[F],k=!1;for(let T of S.d.keys())if(T!==v&&b.has(T)){k=!0;break}if(k){if(u(h,v),g(h,v,S),x!==S.n)S1e(h,v,S),b.add(v)}delete S.x}})},s=(h,Q,...p)=>{let m=!0,f=(w)=>sq(u(h,w)),D=(w,...b)=>{let F=A(w);try{if(k1e(Q,w)){if(!H4A(w))throw Error("atom not writable");let v=F.n,S=b[0];if(i(w,F,S),g(h,w,F),v!==F.n)S1e(h,w,F),o(h,w,F);return}else return s(h,w,...b)}finally{if(!m)w2(h)}};try{return t(Q,f,D,...p)}finally{m=!1}},l=(h,...Q)=>{let p=vS();try{return s(p,h,...Q)}finally{w2(p)}},g=(h,Q,p)=>{if(p.m&&!K4A(p.v)){for(let m of p.d.keys())if(!p.m.d.has(m))C(h,m,A(m)).t.add(Q),p.m.d.add(m);for(let m of p.m.d||[])if(!p.d.has(m)){p.m.d.delete(m);let f=B(h,m,A(m));f==null||f.t.delete(Q)}}},C=(h,Q,p)=>{if(!p.m){u(h,Q);for(let m of p.d.keys())C(h,m,A(m)).t.add(Q);if(p.m={l:new Set,d:new Set(p.d.keys()),t:new Set},Y4A(Q)){let m=p.m,f,D=(w,b)=>{let F=!0;f=(...v)=>{try{return s(w,Q,...v)}finally{if(!F)w2(w)}};try{return b()}finally{F=!1}};FS(h,"L",()=>{let w=D(h,()=>r(Q,(...b)=>f(...b)));if(w)m.u=(b)=>D(b,w)})}}return p.m},B=(h,Q,p)=>{if(p.m&&!p.m.l.size&&!Array.from(p.m.t).some((m)=>{var f;return(f=A(m).m)==null?void 0:f.d.has(Q)})){let m=p.m.u;if(m)FS(h,"L",()=>m(h));delete p.m;for(let f of p.d.keys()){let D=B(h,f,A(f));D==null||D.t.delete(Q)}return}return p.m};return{get:a,set:l,sub:(h,Q)=>{let p=vS(),m=A(h),D=C(p,h,m).l;return D.add(Q),w2(p),()=>{D.delete(Q);let w=vS();B(w,h,m),w2(w)}},unstable_derive:(h)=>R1e(...h(A,e,t,r))}},Qnr=(A)=>{let e=new WeakMap,t=new Set,r,i=0,u=A.unstable_derive((o,s,l,g)=>(r=o,[(C)=>{let B=e.get(C);if(!B){let E=o(C);B=new Proxy(E,{set(d,I,h){if(I==="m")t.add(C);return Reflect.set(d,I,h)},deleteProperty(d,I){if(I==="m")t.delete(C);return Reflect.deleteProperty(d,I)}}),e.set(C,B)}return B},s,(C,B,E,...d)=>{if(i)return E(C,...d);return l(C,B,E,...d)},g])),a=u.set;return Object.assign(u,{dev4_get_internal_weak_map:()=>({get:(o)=>{let s=r(o);if(s.n===0)return;return s}}),dev4_get_mounted_atoms:()=>t,dev4_restore_atoms:(o)=>{a({read:()=>null,write:(l,g)=>{++i;try{for(let[C,B]of o)if(H4A(C))g(C,B)}finally{--i}}})}})},A5=()=>{let A=new WeakMap,t=R1e((r)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!r)throw Error("Atom is undefined or null");let i=A.get(r);if(!i)i={d:new Map,p:new Set,n:0},A.set(r,i);return i},(r,...i)=>r.read(...i),(r,...i)=>r.write(...i),(r,...i)=>{var u;return(u=r.onMount)==null?void 0:u.call(r,...i)});if((import.meta.env?import.meta.env.MODE:void 0)!=="production")return Qnr(t);return t},kS,N1e=()=>{if(!kS){if(kS=A5(),(import.meta.env?import.meta.env.MODE:void 0)!=="production"){if(globalThis.__JOTAI_DEFAULT_STORE__||(globalThis.__JOTAI_DEFAULT_STORE__=kS),globalThis.__JOTAI_DEFAULT_STORE__!==kS)console.warn("Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044")}}return kS};fe();var pnr=yi(void 0),e5=(A)=>{let e=Si(pnr);return(A==null?void 0:A.store)||e||N1e()};var P4A=(A)=>typeof(A==null?void 0:A.then)==="function",U1e=(A)=>{A.status="pending",A.then((e)=>{A.status="fulfilled",A.value=e},(e)=>{A.status="rejected",A.reason=e})},fnr=vt.use||((A)=>{if(A.status==="pending")throw A;else if(A.status==="fulfilled")return A.value;else if(A.status==="rejected")throw A.reason;else throw U1e(A),A}),O4A=new WeakMap,G1e=(A)=>{let e=O4A.get(A);if(!e)e=new Promise((t,r)=>{let i=A,u=(o)=>(s)=>{if(i===o)t(s)},a=(o)=>(s)=>{if(i===o)r(s)},n=(o)=>{if("onCancel"in o&&typeof o.onCancel==="function")o.onCancel((s)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&s===o)throw Error("[Bug] p is not updated even after cancelation");if(P4A(s))O4A.set(s,e),i=s,s.then(u(s),a(s)),n(s);else t(s)})};A.then(u(A),a(A)),n(A)}),O4A.set(A,e);return e};function _4A(A,e){let t=e5(e),[[r,i,u],a]=G1((s)=>{let l=t.get(A);if(Object.is(s[0],l)&&s[1]===t&&s[2]===A)return s;return[l,t,A]},void 0,()=>[t.get(A),t,A]),n=r;if(i!==t||u!==A)a(),n=t.get(A);let o=e==null?void 0:e.delay;if(le(()=>{let s=t.sub(A,()=>{if(typeof o==="number"){let l=t.get(A);if(P4A(l))U1e(G1e(l));setTimeout(a,o);return}a()});return a(),s},[t,A,o]),N1(n),P4A(n)){let s=G1e(n);return fnr(s)}return n}function gq(A,e){let t=e5(e);return lt((...i)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!("write"in A))throw Error("not writable atom");return t.set(A,...i)},[t,A])}function W4A(A,e){return[_4A(A,e),gq(A,e)]}Be();fe();fe();var M1e=new WeakMap;function T1e(A,e){let t=e5(e),r=mnr(t);for(let[i,u]of A)if(!r.has(i)||(e==null?void 0:e.dangerouslyForceHydrate))r.add(i),t.set(i,u)}var mnr=(A)=>{let e=M1e.get(A);if(!e)e=new WeakSet,M1e.set(A,e);return e};function t5(){return t5=Object.assign?Object.assign.bind():function(A){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r))A[r]=t[r]}return A},t5.apply(this,arguments)}function cq(){let A=yi(null);function e({store:a,initialValues:n=[],children:o}){let s=Ee(a);if(!s.current)s.current=A5();return T1e(n,{store:s.current}),N(A.Provider,{value:s.current,children:o})}let t=(a)=>{let n=Si(A);if(!n)throw Error("Missing Provider from createIsolation");return e5(t5({store:n},a))};return{Provider:e,useStore:t,useAtom:(a,n)=>{let o=t();return W4A(a,t5({store:o},n))},useAtomValue:(a,n)=>{let o=t();return _4A(a,t5({store:o},n))},useSetAtom:(a,n)=>{let o=t();return gq(a,t5({store:o},n))}}}var{read:wwi,write:bwi}=Pn(null);var vwi=yi({scope:void 0,baseStore:void 0});fe();fe();Be();Be();Be();fe();function P3e(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=="function")return;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(P3e)}catch(A){console.error(A)}}fe();var Fa=yu(_1e());function dt(A){for(var e="https://reactjs.org/docs/error-decoder.html?invariant="+A,t=1;t<arguments.length;t++)e+="&args[]="+encodeURIComponent(arguments[t]);return"Minified React error #"+A+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var Zpe=new Set,iL={};function K2(A,e){y5(A,e),y5(A+"Capture",e)}function y5(A,e){iL[A]=e;for(A=0;A<e.length;A++)Zpe.add(e[A])}var Vh=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),D1A=Object.prototype.hasOwnProperty,Jnr=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,W1e={},q1e={};function Onr(A){if(D1A.call(q1e,A))return!0;if(D1A.call(W1e,A))return!1;if(Jnr.test(A))return q1e[A]=!0;return W1e[A]=!0,!1}function Pnr(A,e,t,r){if(t!==null&&t.type===0)return!1;switch(typeof e){case"function":case"symbol":return!0;case"boolean":if(r)return!1;if(t!==null)return!t.acceptsBooleans;return A=A.toLowerCase().slice(0,5),A!=="data-"&&A!=="aria-";default:return!1}}function _nr(A,e,t,r){if(e===null||typeof e>"u"||Pnr(A,e,t,r))return!0;if(r)return!1;if(t!==null)switch(t.type){case 3:return!e;case 4:return e===!1;case 5:return isNaN(e);case 6:return isNaN(e)||1>e}return!1}function qs(A,e,t,r,i,u,a){this.acceptsBooleans=e===2||e===3||e===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=t,this.propertyName=A,this.type=e,this.sanitizeURL=u,this.removeEmptyString=a}var w0={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(A){w0[A]=new qs(A,0,!1,A,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(A){var e=A[0];w0[e]=new qs(e,1,!1,A[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(A){w0[A]=new qs(A,2,!1,A.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(A){w0[A]=new qs(A,2,!1,A,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(A){w0[A]=new qs(A,3,!1,A.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(A){w0[A]=new qs(A,3,!0,A,null,!1,!1)});["capture","download"].forEach(function(A){w0[A]=new qs(A,4,!1,A,null,!1,!1)});["cols","rows","size","span"].forEach(function(A){w0[A]=new qs(A,6,!1,A,null,!1,!1)});["rowSpan","start"].forEach(function(A){w0[A]=new qs(A,5,!1,A.toLowerCase(),null,!1,!1)});var IpA=/[\-:]([a-z])/g;function hpA(A){return A[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(A){var e=A.replace(IpA,hpA);w0[e]=new qs(e,1,!1,A,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(A){var e=A.replace(IpA,hpA);w0[e]=new qs(e,1,!1,A,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(A){var e=A.replace(IpA,hpA);w0[e]=new qs(e,1,!1,A,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(A){w0[A]=new qs(A,1,!1,A.toLowerCase(),null,!1,!1)});w0.xlinkHref=new qs("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(A){w0[A]=new qs(A,1,!1,A.toLowerCase(),null,!0,!0)});function QpA(A,e,t,r){var i=w0.hasOwnProperty(e)?w0[e]:null;if(i!==null?i.type!==0:r||!(2<e.length)||e[0]!=="o"&&e[0]!=="O"||e[1]!=="n"&&e[1]!=="N")_nr(e,t,i,r)&&(t=null),r||i===null?Onr(e)&&(t===null?A.removeAttribute(e):A.setAttribute(e,""+t)):i.mustUseProperty?A[i.propertyName]=t===null?i.type===3?!1:"":t:(e=i.attributeName,r=i.attributeNamespace,t===null?A.removeAttribute(e):(i=i.type,t=i===3||i===4&&t===!0?"":""+t,r?A.setAttributeNS(r,e,t):A.setAttribute(e,t)))}var $h=s9,pq=Symbol.for("react.element"),n5=Symbol.for("react.portal"),o5=Symbol.for("react.fragment"),ppA=Symbol.for("react.strict_mode"),y1A=Symbol.for("react.profiler"),Vpe=Symbol.for("react.provider"),jpe=Symbol.for("react.context"),fpA=Symbol.for("react.forward_ref"),w1A=Symbol.for("react.suspense"),b1A=Symbol.for("react.suspense_list"),mpA=Symbol.for("react.memo"),Ep=Symbol.for("react.lazy"),Xpe=Symbol.for("react.offscreen"),z1e=Symbol.iterator;function RS(A){if(A===null||typeof A!=="object")return null;return A=z1e&&A[z1e]||A["@@iterator"],typeof A==="function"?A:null}var Ka=Object.assign,r1A;function HS(A){if(r1A===void 0)try{throw Error()}catch(t){var e=t.stack.trim().match(/\n( *(at )?)/);r1A=e&&e[1]||""}return`
|
||
`+r1A+A}var i1A=!1;function u1A(A,e){if(!A||i1A)return"";i1A=!0;var t=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(e)if(e=function(){throw Error()},Object.defineProperty(e.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==="object"&&Reflect.construct){try{Reflect.construct(e,[])}catch(s){var r=s}Reflect.construct(A,[],e)}else{try{e.call()}catch(s){r=s}A.call(e.prototype)}else{try{throw Error()}catch(s){r=s}A()}}catch(s){if(s&&r&&typeof s.stack==="string"){for(var i=s.stack.split(`
|
||
`),u=r.stack.split(`
|
||
`),a=i.length-1,n=u.length-1;1<=a&&0<=n&&i[a]!==u[n];)n--;for(;1<=a&&0<=n;a--,n--)if(i[a]!==u[n]){if(a!==1||n!==1)do if(a--,n--,0>n||i[a]!==u[n]){var o=`
|
||
`+i[a].replace(" at new "," at ");return A.displayName&&o.includes("<anonymous>")&&(o=o.replace("<anonymous>",A.displayName)),o}while(1<=a&&0<=n);break}}}finally{i1A=!1,Error.prepareStackTrace=t}return(A=A?A.displayName||A.name:"")?HS(A):""}function Wnr(A){switch(A.tag){case 5:return HS(A.type);case 16:return HS("Lazy");case 13:return HS("Suspense");case 19:return HS("SuspenseList");case 0:case 2:case 15:return A=u1A(A.type,!1),A;case 11:return A=u1A(A.type.render,!1),A;case 1:return A=u1A(A.type,!0),A;default:return""}}function v1A(A){if(A==null)return null;if(typeof A==="function")return A.displayName||A.name||null;if(typeof A==="string")return A;switch(A){case o5:return"Fragment";case n5:return"Portal";case y1A:return"Profiler";case ppA:return"StrictMode";case w1A:return"Suspense";case b1A:return"SuspenseList"}if(typeof A==="object")switch(A.$$typeof){case jpe:return(A.displayName||"Context")+".Consumer";case Vpe:return(A._context.displayName||"Context")+".Provider";case fpA:var e=A.render;return A=A.displayName,A||(A=e.displayName||e.name||"",A=A!==""?"ForwardRef("+A+")":"ForwardRef"),A;case mpA:return e=A.displayName||null,e!==null?e:v1A(A.type)||"Memo";case Ep:e=A._payload,A=A._init;try{return v1A(A(e))}catch(t){}}return null}function qnr(A){var e=A.type;switch(A.tag){case 24:return"Cache";case 9:return(e.displayName||"Context")+".Consumer";case 10:return(e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return A=e.render,A=A.displayName||A.name||"",e.displayName||(A!==""?"ForwardRef("+A+")":"ForwardRef");case 7:return"Fragment";case 5:return e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return v1A(e);case 8:return e===ppA?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof e==="function")return e.displayName||e.name||null;if(typeof e==="string")return e}return null}function kp(A){switch(typeof A){case"boolean":case"number":case"string":case"undefined":return A;case"object":return A;default:return""}}function $pe(A){var e=A.type;return(A=A.nodeName)&&A.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function znr(A){var e=$pe(A)?"checked":"value",t=Object.getOwnPropertyDescriptor(A.constructor.prototype,e),r=""+A[e];if(!A.hasOwnProperty(e)&&typeof t<"u"&&typeof t.get==="function"&&typeof t.set==="function"){var{get:i,set:u}=t;return Object.defineProperty(A,e,{configurable:!0,get:function(){return i.call(this)},set:function(a){r=""+a,u.call(this,a)}}),Object.defineProperty(A,e,{enumerable:t.enumerable}),{getValue:function(){return r},setValue:function(a){r=""+a},stopTracking:function(){A._valueTracker=null,delete A[e]}}}}function fq(A){A._valueTracker||(A._valueTracker=znr(A))}function Afe(A){if(!A)return!1;var e=A._valueTracker;if(!e)return!0;var t=e.getValue(),r="";return A&&(r=$pe(A)?A.checked?"true":"false":A.value),A=r,A!==t?(e.setValue(A),!0):!1}function Wq(A){if(A=A||(typeof document<"u"?document:void 0),typeof A>"u")return null;try{return A.activeElement||A.body}catch(e){return A.body}}function k1A(A,e){var t=e.checked;return Ka({},e,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:t!=null?t:A._wrapperState.initialChecked})}function Z1e(A,e){var t=e.defaultValue==null?"":e.defaultValue,r=e.checked!=null?e.checked:e.defaultChecked;t=kp(e.value!=null?e.value:t),A._wrapperState={initialChecked:r,initialValue:t,controlled:e.type==="checkbox"||e.type==="radio"?e.checked!=null:e.value!=null}}function efe(A,e){e=e.checked,e!=null&&QpA(A,"checked",e,!1)}function F1A(A,e){efe(A,e);var t=kp(e.value),r=e.type;if(t!=null)if(r==="number"){if(t===0&&A.value===""||A.value!=t)A.value=""+t}else A.value!==""+t&&(A.value=""+t);else if(r==="submit"||r==="reset"){A.removeAttribute("value");return}e.hasOwnProperty("value")?x1A(A,e.type,t):e.hasOwnProperty("defaultValue")&&x1A(A,e.type,kp(e.defaultValue)),e.checked==null&&e.defaultChecked!=null&&(A.defaultChecked=!!e.defaultChecked)}function V1e(A,e,t){if(e.hasOwnProperty("value")||e.hasOwnProperty("defaultValue")){var r=e.type;if(!(r!=="submit"&&r!=="reset"||e.value!==void 0&&e.value!==null))return;e=""+A._wrapperState.initialValue,t||e===A.value||(A.value=e),A.defaultValue=e}t=A.name,t!==""&&(A.name=""),A.defaultChecked=!!A._wrapperState.initialChecked,t!==""&&(A.name=t)}function x1A(A,e,t){if(e!=="number"||Wq(A.ownerDocument)!==A)t==null?A.defaultValue=""+A._wrapperState.initialValue:A.defaultValue!==""+t&&(A.defaultValue=""+t)}var KS=Array.isArray;function h5(A,e,t,r){if(A=A.options,e){e={};for(var i=0;i<t.length;i++)e["$"+t[i]]=!0;for(t=0;t<A.length;t++)i=e.hasOwnProperty("$"+A[t].value),A[t].selected!==i&&(A[t].selected=i),i&&r&&(A[t].defaultSelected=!0)}else{t=""+kp(t),e=null;for(i=0;i<A.length;i++){if(A[i].value===t){A[i].selected=!0,r&&(A[i].defaultSelected=!0);return}e!==null||A[i].disabled||(e=A[i])}e!==null&&(e.selected=!0)}}function S1A(A,e){if(e.dangerouslySetInnerHTML!=null)throw Error(dt(91));return Ka({},e,{value:void 0,defaultValue:void 0,children:""+A._wrapperState.initialValue})}function j1e(A,e){var t=e.value;if(t==null){if(t=e.children,e=e.defaultValue,t!=null){if(e!=null)throw Error(dt(92));if(KS(t)){if(1<t.length)throw Error(dt(93));t=t[0]}e=t}e==null&&(e=""),t=e}A._wrapperState={initialValue:kp(t)}}function tfe(A,e){var t=kp(e.value),r=kp(e.defaultValue);t!=null&&(t=""+t,t!==A.value&&(A.value=t),e.defaultValue==null&&A.defaultValue!==t&&(A.defaultValue=t)),r!=null&&(A.defaultValue=""+r)}function X1e(A){var e=A.textContent;e===A._wrapperState.initialValue&&e!==""&&e!==null&&(A.value=e)}function rfe(A){switch(A){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function L1A(A,e){return A==null||A==="http://www.w3.org/1999/xhtml"?rfe(e):A==="http://www.w3.org/2000/svg"&&e==="foreignObject"?"http://www.w3.org/1999/xhtml":A}var mq,ife=function(A){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(e,t,r,i){MSApp.execUnsafeLocalFunction(function(){return A(e,t,r,i)})}:A}(function(A,e){if(A.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in A)A.innerHTML=e;else{mq=mq||document.createElement("div"),mq.innerHTML="<svg>"+e.valueOf().toString()+"</svg>";for(e=mq.firstChild;A.firstChild;)A.removeChild(A.firstChild);for(;e.firstChild;)A.appendChild(e.firstChild)}});function uL(A,e){if(e){var t=A.firstChild;if(t&&t===A.lastChild&&t.nodeType===3){t.nodeValue=e;return}}A.textContent=e}var ZS={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Znr=["Webkit","ms","Moz","O"];Object.keys(ZS).forEach(function(A){Znr.forEach(function(e){e=e+A.charAt(0).toUpperCase()+A.substring(1),ZS[e]=ZS[A]})});function ufe(A,e,t){return e==null||typeof e==="boolean"||e===""?"":t||typeof e!=="number"||e===0||ZS.hasOwnProperty(A)&&ZS[A]?(""+e).trim():e+"px"}function afe(A,e){A=A.style;for(var t in e)if(e.hasOwnProperty(t)){var r=t.indexOf("--")===0,i=ufe(t,e[t],r);t==="float"&&(t="cssFloat"),r?A.setProperty(t,i):A[t]=i}}var Vnr=Ka({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function R1A(A,e){if(e){if(Vnr[A]&&(e.children!=null||e.dangerouslySetInnerHTML!=null))throw Error(dt(137,A));if(e.dangerouslySetInnerHTML!=null){if(e.children!=null)throw Error(dt(60));if(typeof e.dangerouslySetInnerHTML!=="object"||!("__html"in e.dangerouslySetInnerHTML))throw Error(dt(61))}if(e.style!=null&&typeof e.style!=="object")throw Error(dt(62))}}function N1A(A,e){if(A.indexOf("-")===-1)return typeof e.is==="string";switch(A){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var G1A=null;function DpA(A){return A=A.target||A.srcElement||window,A.correspondingUseElement&&(A=A.correspondingUseElement),A.nodeType===3?A.parentNode:A}var U1A=null,Q5=null,p5=null;function $1e(A){if(A=fz(A)){if(typeof U1A!=="function")throw Error(dt(280));var e=A.stateNode;e&&(e=RpA(e),U1A(A.stateNode,A.type,e))}}function jnr(A){Q5?p5?p5.push(A):p5=[A]:Q5=A}function Xnr(){if(Q5){var A=Q5,e=p5;if(p5=Q5=null,$1e(A),e)for(A=0;A<e.length;A++)$1e(e[A])}}function nfe(A,e){return A(e)}function ofe(){}var a1A=!1;function sfe(A,e,t){if(a1A)return A(e,t);a1A=!0;try{return nfe(A,e,t)}finally{if(a1A=!1,Q5!==null||p5!==null)ofe(),Xnr()}}function aL(A,e){var t=A.stateNode;if(t===null)return null;var r=RpA(t);if(r===null)return null;t=r[e];A:switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(A=A.type,r=!(A==="button"||A==="input"||A==="select"||A==="textarea")),A=!r;break A;default:A=!1}if(A)return null;if(t&&typeof t!=="function")throw Error(dt(231,e,typeof t));return t}var M1A=!1;if(Vh)try{v2={},Object.defineProperty(v2,"passive",{get:function(){M1A=!0}}),window.addEventListener("test",v2,v2),window.removeEventListener("test",v2,v2)}catch(A){M1A=!1}var v2;function $nr(A,e,t,r,i,u,a,n,o){var s=Array.prototype.slice.call(arguments,3);try{e.apply(t,s)}catch(l){this.onError(l)}}var VS=!1,qq=null,zq=!1,T1A=null,Aor={onError:function(A){VS=!0,qq=A}};function eor(A,e,t,r,i,u,a,n,o){VS=!1,qq=null,$nr.apply(Aor,arguments)}function tor(A,e,t,r,i,u,a,n,o){if(eor.apply(this,arguments),VS){if(VS){var s=qq;VS=!1,qq=null}else throw Error(dt(198));zq||(zq=!0,T1A=s)}}function J2(A){var e=A,t=A;if(A.alternate)for(;e.return;)e=e.return;else{A=e;do e=A,(e.flags&4098)!==0&&(t=e.return),A=e.return;while(A)}return e.tag===3?t:null}function lfe(A){if(A.tag===13){var e=A.memoizedState;if(e===null&&(A=A.alternate,A!==null&&(e=A.memoizedState)),e!==null)return e.dehydrated}return null}function Ape(A){if(J2(A)!==A)throw Error(dt(188))}function ror(A){var e=A.alternate;if(!e){if(e=J2(A),e===null)throw Error(dt(188));return e!==A?null:A}for(var t=A,r=e;;){var i=t.return;if(i===null)break;var u=i.alternate;if(u===null){if(r=i.return,r!==null){t=r;continue}break}if(i.child===u.child){for(u=i.child;u;){if(u===t)return Ape(i),A;if(u===r)return Ape(i),e;u=u.sibling}throw Error(dt(188))}if(t.return!==r.return)t=i,r=u;else{for(var a=!1,n=i.child;n;){if(n===t){a=!0,t=i,r=u;break}if(n===r){a=!0,r=i,t=u;break}n=n.sibling}if(!a){for(n=u.child;n;){if(n===t){a=!0,t=u,r=i;break}if(n===r){a=!0,r=u,t=i;break}n=n.sibling}if(!a)throw Error(dt(189))}}if(t.alternate!==r)throw Error(dt(190))}if(t.tag!==3)throw Error(dt(188));return t.stateNode.current===t?A:e}function ior(A){return A=ror(A),A!==null?gfe(A):null}function gfe(A){if(A.tag===5||A.tag===6)return A;for(A=A.child;A!==null;){var e=gfe(A);if(e!==null)return e;A=A.sibling}return null}var cfe=Fa.unstable_scheduleCallback,epe=Fa.unstable_cancelCallback,uor=Fa.unstable_shouldYield,aor=Fa.unstable_requestPaint,wn=Fa.unstable_now,nor=Fa.unstable_getCurrentPriorityLevel,ypA=Fa.unstable_ImmediatePriority,Cfe=Fa.unstable_UserBlockingPriority,Zq=Fa.unstable_NormalPriority,oor=Fa.unstable_LowPriority,Bfe=Fa.unstable_IdlePriority,Ez=null,Ud=null;function sor(A){if(Ud&&typeof Ud.onCommitFiberRoot==="function")try{Ud.onCommitFiberRoot(Ez,A,void 0,(A.current.flags&128)===128)}catch(e){}}var FB=Math.clz32?Math.clz32:cor,{log:lor,LN2:gor}=Math;function cor(A){return A>>>=0,A===0?32:31-(lor(A)/gor|0)|0}var Dq=64,yq=4194304;function JS(A){switch(A&-A){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return A&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return A&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return A}}function Vq(A,e){var t=A.pendingLanes;if(t===0)return 0;var r=0,i=A.suspendedLanes,u=A.pingedLanes,a=t&268435455;if(a!==0){var n=a&~i;n!==0?r=JS(n):(u&=a,u!==0&&(r=JS(u)))}else a=t&~i,a!==0?r=JS(a):u!==0&&(r=JS(u));if(r===0)return 0;if(e!==0&&e!==r&&(e&i)===0&&(i=r&-r,u=e&-e,i>=u||i===16&&(u&4194240)!==0))return e;if((r&4)!==0&&(r|=t&16),e=A.entangledLanes,e!==0)for(A=A.entanglements,e&=r;0<e;)t=31-FB(e),i=1<<t,r|=A[t],e&=~i;return r}function Cor(A,e){switch(A){case 1:case 2:case 4:return e+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5000;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Bor(A,e){for(var{suspendedLanes:t,pingedLanes:r,expirationTimes:i,pendingLanes:u}=A;0<u;){var a=31-FB(u),n=1<<a,o=i[a];if(o===-1){if((n&t)===0||(n&r)!==0)i[a]=Cor(n,e)}else o<=e&&(A.expiredLanes|=n);u&=~n}}function Y1A(A){return A=A.pendingLanes&-1073741825,A!==0?A:A&1073741824?1073741824:0}function Efe(){var A=Dq;return Dq<<=1,(Dq&4194240)===0&&(Dq=64),A}function dz(A,e,t){A.pendingLanes|=e,e!==536870912&&(A.suspendedLanes=0,A.pingedLanes=0),A=A.eventTimes,e=31-FB(e),A[e]=t}function Eor(A,e){var t=A.pendingLanes&~e;A.pendingLanes=e,A.suspendedLanes=0,A.pingedLanes=0,A.expiredLanes&=e,A.mutableReadLanes&=e,A.entangledLanes&=e,e=A.entanglements;var r=A.eventTimes;for(A=A.expirationTimes;0<t;){var i=31-FB(t),u=1<<i;e[i]=0,r[i]=-1,A[i]=-1,t&=~u}}function wpA(A,e){var t=A.entangledLanes|=e;for(A=A.entanglements;t;){var r=31-FB(t),i=1<<r;i&e|A[r]&e&&(A[r]|=e),t&=~i}}var mu=0;function dfe(A){return A&=-A,1<A?4<A?(A&268435455)!==0?16:536870912:4:1}var Ife,bpA,hfe,Qfe,pfe,H1A=!1,wq=[],fp=null,mp=null,Dp=null,nL=new Map,oL=new Map,Ip=[],dor="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function tpe(A,e){switch(A){case"focusin":case"focusout":fp=null;break;case"dragenter":case"dragleave":mp=null;break;case"mouseover":case"mouseout":Dp=null;break;case"pointerover":case"pointerout":nL.delete(e.pointerId);break;case"gotpointercapture":case"lostpointercapture":oL.delete(e.pointerId)}}function NS(A,e,t,r,i,u){if(A===null||A.nativeEvent!==u)return A={blockedOn:e,domEventName:t,eventSystemFlags:r,nativeEvent:u,targetContainers:[i]},e!==null&&(e=fz(e),e!==null&&bpA(e)),A;return A.eventSystemFlags|=r,e=A.targetContainers,i!==null&&e.indexOf(i)===-1&&e.push(i),A}function Ior(A,e,t,r,i){switch(e){case"focusin":return fp=NS(fp,A,e,t,r,i),!0;case"dragenter":return mp=NS(mp,A,e,t,r,i),!0;case"mouseover":return Dp=NS(Dp,A,e,t,r,i),!0;case"pointerover":var u=i.pointerId;return nL.set(u,NS(nL.get(u)||null,A,e,t,r,i)),!0;case"gotpointercapture":return u=i.pointerId,oL.set(u,NS(oL.get(u)||null,A,e,t,r,i)),!0}return!1}function ffe(A){var e=x2(A.target);if(e!==null){var t=J2(e);if(t!==null){if(e=t.tag,e===13){if(e=lfe(t),e!==null){A.blockedOn=e,pfe(A.priority,function(){hfe(t)});return}}else if(e===3&&t.stateNode.current.memoizedState.isDehydrated){A.blockedOn=t.tag===3?t.stateNode.containerInfo:null;return}}}A.blockedOn=null}function Gq(A){if(A.blockedOn!==null)return!1;for(var e=A.targetContainers;0<e.length;){var t=K1A(A.domEventName,A.eventSystemFlags,e[0],A.nativeEvent);if(t===null){t=A.nativeEvent;var r=new t.constructor(t.type,t);G1A=r,t.target.dispatchEvent(r),G1A=null}else return e=fz(t),e!==null&&bpA(e),A.blockedOn=t,!1;e.shift()}return!0}function rpe(A,e,t){Gq(A)&&t.delete(e)}function hor(){H1A=!1,fp!==null&&Gq(fp)&&(fp=null),mp!==null&&Gq(mp)&&(mp=null),Dp!==null&&Gq(Dp)&&(Dp=null),nL.forEach(rpe),oL.forEach(rpe)}function GS(A,e){A.blockedOn===e&&(A.blockedOn=null,H1A||(H1A=!0,Fa.unstable_scheduleCallback(Fa.unstable_NormalPriority,hor)))}function sL(A){function e(i){return GS(i,A)}if(0<wq.length){GS(wq[0],A);for(var t=1;t<wq.length;t++){var r=wq[t];r.blockedOn===A&&(r.blockedOn=null)}}fp!==null&&GS(fp,A),mp!==null&&GS(mp,A),Dp!==null&&GS(Dp,A),nL.forEach(e),oL.forEach(e);for(t=0;t<Ip.length;t++)r=Ip[t],r.blockedOn===A&&(r.blockedOn=null);for(;0<Ip.length&&(t=Ip[0],t.blockedOn===null);)ffe(t),t.blockedOn===null&&Ip.shift()}var f5=$h.ReactCurrentBatchConfig,jq=!0;function Qor(A,e,t,r){var i=mu,u=f5.transition;f5.transition=null;try{mu=1,vpA(A,e,t,r)}finally{mu=i,f5.transition=u}}function por(A,e,t,r){var i=mu,u=f5.transition;f5.transition=null;try{mu=4,vpA(A,e,t,r)}finally{mu=i,f5.transition=u}}function vpA(A,e,t,r){if(jq){var i=K1A(A,e,t,r);if(i===null)c1A(A,e,r,Xq,t),tpe(A,r);else if(Ior(i,A,e,t,r))r.stopPropagation();else if(tpe(A,r),e&4&&-1<dor.indexOf(A)){for(;i!==null;){var u=fz(i);if(u!==null&&Ife(u),u=K1A(A,e,t,r),u===null&&c1A(A,e,r,Xq,t),u===i)break;i=u}i!==null&&r.stopPropagation()}else c1A(A,e,r,null,t)}}var Xq=null;function K1A(A,e,t,r){if(Xq=null,A=DpA(r),A=x2(A),A!==null)if(e=J2(A),e===null)A=null;else if(t=e.tag,t===13){if(A=lfe(e),A!==null)return A;A=null}else if(t===3){if(e.stateNode.current.memoizedState.isDehydrated)return e.tag===3?e.stateNode.containerInfo:null;A=null}else e!==A&&(A=null);return Xq=A,null}function mfe(A){switch(A){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(nor()){case ypA:return 1;case Cfe:return 4;case Zq:case oor:return 16;case Bfe:return 536870912;default:return 16}default:return 16}}var Qp=null,kpA=null,Uq=null;function Dfe(){if(Uq)return Uq;var A,e=kpA,t=e.length,r,i="value"in Qp?Qp.value:Qp.textContent,u=i.length;for(A=0;A<t&&e[A]===i[A];A++);var a=t-A;for(r=1;r<=a&&e[t-r]===i[u-r];r++);return Uq=i.slice(A,1<r?1-r:void 0)}function Mq(A){var e=A.keyCode;return"charCode"in A?(A=A.charCode,A===0&&e===13&&(A=13)):A=e,A===10&&(A=13),32<=A||A===13?A:0}function bq(){return!0}function ipe(){return!1}function Yg(A){function e(t,r,i,u,a){this._reactName=t,this._targetInst=i,this.type=r,this.nativeEvent=u,this.target=a,this.currentTarget=null;for(var n in A)A.hasOwnProperty(n)&&(t=A[n],this[n]=t?t(u):u[n]);return this.isDefaultPrevented=(u.defaultPrevented!=null?u.defaultPrevented:u.returnValue===!1)?bq:ipe,this.isPropagationStopped=ipe,this}return Ka(e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var t=this.nativeEvent;t&&(t.preventDefault?t.preventDefault():typeof t.returnValue!=="unknown"&&(t.returnValue=!1),this.isDefaultPrevented=bq)},stopPropagation:function(){var t=this.nativeEvent;t&&(t.stopPropagation?t.stopPropagation():typeof t.cancelBubble!=="unknown"&&(t.cancelBubble=!0),this.isPropagationStopped=bq)},persist:function(){},isPersistent:bq}),e}var S5={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(A){return A.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},FpA=Yg(S5),pL=Ka({},S5,{view:0,detail:0}),mor=Yg(pL),n1A,o1A,US,Iz=Ka({},pL,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:xpA,button:0,buttons:0,relatedTarget:function(A){return A.relatedTarget===void 0?A.fromElement===A.srcElement?A.toElement:A.fromElement:A.relatedTarget},movementX:function(A){if("movementX"in A)return A.movementX;return A!==US&&(US&&A.type==="mousemove"?(n1A=A.screenX-US.screenX,o1A=A.screenY-US.screenY):o1A=n1A=0,US=A),n1A},movementY:function(A){return"movementY"in A?A.movementY:o1A}}),upe=Yg(Iz),Dor=Ka({},Iz,{dataTransfer:0}),yor=Yg(Dor),wor=Ka({},pL,{relatedTarget:0}),s1A=Yg(wor),bor=Ka({},S5,{animationName:0,elapsedTime:0,pseudoElement:0}),vor=Yg(bor),kor=Ka({},S5,{clipboardData:function(A){return"clipboardData"in A?A.clipboardData:window.clipboardData}}),For=Yg(kor),xor=Ka({},S5,{data:0}),ape=Yg(xor),Sor={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Lor={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Ror={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Nor(A){var e=this.nativeEvent;return e.getModifierState?e.getModifierState(A):(A=Ror[A])?!!e[A]:!1}function xpA(){return Nor}var Gor=Ka({},pL,{key:function(A){if(A.key){var e=Sor[A.key]||A.key;if(e!=="Unidentified")return e}return A.type==="keypress"?(A=Mq(A),A===13?"Enter":String.fromCharCode(A)):A.type==="keydown"||A.type==="keyup"?Lor[A.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:xpA,charCode:function(A){return A.type==="keypress"?Mq(A):0},keyCode:function(A){return A.type==="keydown"||A.type==="keyup"?A.keyCode:0},which:function(A){return A.type==="keypress"?Mq(A):A.type==="keydown"||A.type==="keyup"?A.keyCode:0}}),Uor=Yg(Gor),Mor=Ka({},Iz,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),npe=Yg(Mor),Tor=Ka({},pL,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:xpA}),Yor=Yg(Tor),Hor=Ka({},S5,{propertyName:0,elapsedTime:0,pseudoElement:0}),Kor=Yg(Hor),Jor=Ka({},Iz,{deltaX:function(A){return"deltaX"in A?A.deltaX:("wheelDeltaX"in A)?-A.wheelDeltaX:0},deltaY:function(A){return"deltaY"in A?A.deltaY:("wheelDeltaY"in A)?-A.wheelDeltaY:("wheelDelta"in A)?-A.wheelDelta:0},deltaZ:0,deltaMode:0}),Oor=Yg(Jor),Por=[9,13,27,32],SpA=Vh&&"CompositionEvent"in window,jS=null;Vh&&"documentMode"in document&&(jS=document.documentMode);var _or=Vh&&"TextEvent"in window&&!jS,yfe=Vh&&(!SpA||jS&&8<jS&&11>=jS),ope=String.fromCharCode(32),spe=!1;function wfe(A,e){switch(A){case"keyup":return Por.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function bfe(A){return A=A.detail,typeof A==="object"&&"data"in A?A.data:null}var s5=!1;function Wor(A,e){switch(A){case"compositionend":return bfe(e);case"keypress":if(e.which!==32)return null;return spe=!0,ope;case"textInput":return A=e.data,A===ope&&spe?null:A;default:return null}}function qor(A,e){if(s5)return A==="compositionend"||!SpA&&wfe(A,e)?(A=Dfe(),Uq=kpA=Qp=null,s5=!1,A):null;switch(A){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1<e.char.length)return e.char;if(e.which)return String.fromCharCode(e.which)}return null;case"compositionend":return yfe&&e.locale!=="ko"?null:e.data;default:return null}}var zor={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function lpe(A){var e=A&&A.nodeName&&A.nodeName.toLowerCase();return e==="input"?!!zor[A.type]:e==="textarea"?!0:!1}function vfe(A,e,t,r){jnr(r),e=$q(e,"onChange"),0<e.length&&(t=new FpA("onChange","change",null,t,r),A.push({event:t,listeners:e}))}var XS=null,lL=null;function Zor(A){Tfe(A,0)}function hz(A){var e=zS(A);if(Afe(e))return A}function Vor(A,e){if(A==="change")return e}var kfe=!1;if(Vh){if(Vh){if(PS="oninput"in document,!PS)Tq=document.createElement("div"),Tq.setAttribute("oninput","return;"),PS=typeof Tq.oninput==="function";OS=PS}else OS=!1;kfe=OS&&(!document.documentMode||9<document.documentMode)}var OS,PS,Tq;function gpe(){XS&&(XS.detachEvent("onpropertychange",Ffe),lL=XS=null)}function Ffe(A){if(A.propertyName==="value"&&hz(lL)){var e=[];vfe(e,lL,A,DpA(A)),sfe(Zor,e)}}function jor(A,e,t){A==="focusin"?(gpe(),XS=e,lL=t,XS.attachEvent("onpropertychange",Ffe)):A==="focusout"&&gpe()}function Xor(A){if(A==="selectionchange"||A==="keyup"||A==="keydown")return hz(lL)}function $or(A,e){if(A==="click")return hz(e)}function A0r(A,e){if(A==="input"||A==="change")return hz(e)}function e0r(A,e){return A===e&&(A!==0||1/A===1/e)||A!==A&&e!==e}var SB=typeof Object.is==="function"?Object.is:e0r;function gL(A,e){if(SB(A,e))return!0;if(typeof A!=="object"||A===null||typeof e!=="object"||e===null)return!1;var t=Object.keys(A),r=Object.keys(e);if(t.length!==r.length)return!1;for(r=0;r<t.length;r++){var i=t[r];if(!D1A.call(e,i)||!SB(A[i],e[i]))return!1}return!0}function cpe(A){for(;A&&A.firstChild;)A=A.firstChild;return A}function Cpe(A,e){var t=cpe(A);A=0;for(var r;t;){if(t.nodeType===3){if(r=A+t.textContent.length,A<=e&&r>=e)return{node:t,offset:e-A};A=r}A:{for(;t;){if(t.nextSibling){t=t.nextSibling;break A}t=t.parentNode}t=void 0}t=cpe(t)}}function xfe(A,e){return A&&e?A===e?!0:A&&A.nodeType===3?!1:e&&e.nodeType===3?xfe(A,e.parentNode):("contains"in A)?A.contains(e):A.compareDocumentPosition?!!(A.compareDocumentPosition(e)&16):!1:!1}function Sfe(){for(var A=window,e=Wq();e instanceof A.HTMLIFrameElement;){try{var t=typeof e.contentWindow.location.href==="string"}catch(r){t=!1}if(t)A=e.contentWindow;else break;e=Wq(A.document)}return e}function LpA(A){var e=A&&A.nodeName&&A.nodeName.toLowerCase();return e&&(e==="input"&&(A.type==="text"||A.type==="search"||A.type==="tel"||A.type==="url"||A.type==="password")||e==="textarea"||A.contentEditable==="true")}function t0r(A){var e=Sfe(),t=A.focusedElem,r=A.selectionRange;if(e!==t&&t&&t.ownerDocument&&xfe(t.ownerDocument.documentElement,t)){if(r!==null&&LpA(t)){if(e=r.start,A=r.end,A===void 0&&(A=e),"selectionStart"in t)t.selectionStart=e,t.selectionEnd=Math.min(A,t.value.length);else if(A=(e=t.ownerDocument||document)&&e.defaultView||window,A.getSelection){A=A.getSelection();var i=t.textContent.length,u=Math.min(r.start,i);r=r.end===void 0?u:Math.min(r.end,i),!A.extend&&u>r&&(i=r,r=u,u=i),i=Cpe(t,u);var a=Cpe(t,r);i&&a&&(A.rangeCount!==1||A.anchorNode!==i.node||A.anchorOffset!==i.offset||A.focusNode!==a.node||A.focusOffset!==a.offset)&&(e=e.createRange(),e.setStart(i.node,i.offset),A.removeAllRanges(),u>r?(A.addRange(e),A.extend(a.node,a.offset)):(e.setEnd(a.node,a.offset),A.addRange(e)))}}e=[];for(A=t;A=A.parentNode;)A.nodeType===1&&e.push({element:A,left:A.scrollLeft,top:A.scrollTop});typeof t.focus==="function"&&t.focus();for(t=0;t<e.length;t++)A=e[t],A.element.scrollLeft=A.left,A.element.scrollTop=A.top}}var r0r=Vh&&"documentMode"in document&&11>=document.documentMode,l5=null,J1A=null,$S=null,O1A=!1;function Bpe(A,e,t){var r=t.window===t?t.document:t.nodeType===9?t:t.ownerDocument;O1A||l5==null||l5!==Wq(r)||(r=l5,("selectionStart"in r)&&LpA(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),$S&&gL($S,r)||($S=r,r=$q(J1A,"onSelect"),0<r.length&&(e=new FpA("onSelect","select",null,e,t),A.push({event:e,listeners:r}),e.target=l5)))}function vq(A,e){var t={};return t[A.toLowerCase()]=e.toLowerCase(),t["Webkit"+A]="webkit"+e,t["Moz"+A]="moz"+e,t}var g5={animationend:vq("Animation","AnimationEnd"),animationiteration:vq("Animation","AnimationIteration"),animationstart:vq("Animation","AnimationStart"),transitionend:vq("Transition","TransitionEnd")},l1A={},Lfe={};Vh&&(Lfe=document.createElement("div").style,("AnimationEvent"in window)||(delete g5.animationend.animation,delete g5.animationiteration.animation,delete g5.animationstart.animation),("TransitionEvent"in window)||delete g5.transitionend.transition);function Qz(A){if(l1A[A])return l1A[A];if(!g5[A])return A;var e=g5[A],t;for(t in e)if(e.hasOwnProperty(t)&&t in Lfe)return l1A[A]=e[t];return A}var Rfe=Qz("animationend"),Nfe=Qz("animationiteration"),Gfe=Qz("animationstart"),Ufe=Qz("transitionend"),Mfe=new Map,Epe="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function xp(A,e){Mfe.set(A,e),K2(e,[A])}for(_S=0;_S<Epe.length;_S++)WS=Epe[_S],P1A=WS.toLowerCase(),_1A=WS[0].toUpperCase()+WS.slice(1),xp(P1A,"on"+_1A);var WS,P1A,_1A,_S;xp(Rfe,"onAnimationEnd");xp(Nfe,"onAnimationIteration");xp(Gfe,"onAnimationStart");xp("dblclick","onDoubleClick");xp("focusin","onFocus");xp("focusout","onBlur");xp(Ufe,"onTransitionEnd");y5("onMouseEnter",["mouseout","mouseover"]);y5("onMouseLeave",["mouseout","mouseover"]);y5("onPointerEnter",["pointerout","pointerover"]);y5("onPointerLeave",["pointerout","pointerover"]);K2("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));K2("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));K2("onBeforeInput",["compositionend","keypress","textInput","paste"]);K2("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));K2("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));K2("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var qS="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),i0r=new Set("cancel close invalid load scroll toggle".split(" ").concat(qS));function dpe(A,e,t){var r=A.type||"unknown-event";A.currentTarget=t,tor(r,e,void 0,A),A.currentTarget=null}function Tfe(A,e){e=(e&4)!==0;for(var t=0;t<A.length;t++){var r=A[t],i=r.event;r=r.listeners;A:{var u=void 0;if(e)for(var a=r.length-1;0<=a;a--){var n=r[a],o=n.instance,s=n.currentTarget;if(n=n.listener,o!==u&&i.isPropagationStopped())break A;dpe(i,n,s),u=o}else for(a=0;a<r.length;a++){if(n=r[a],o=n.instance,s=n.currentTarget,n=n.listener,o!==u&&i.isPropagationStopped())break A;dpe(i,n,s),u=o}}}if(zq)throw A=T1A,zq=!1,T1A=null,A}function sa(A,e){var t=e[V1A];t===void 0&&(t=e[V1A]=new Set);var r=A+"__bubble";t.has(r)||(Yfe(e,A,2,!1),t.add(r))}function g1A(A,e,t){var r=0;e&&(r|=4),Yfe(t,A,r,e)}var kq="_reactListening"+Math.random().toString(36).slice(2);function u0r(A){if(!A[kq]){A[kq]=!0,Zpe.forEach(function(t){t!=="selectionchange"&&(i0r.has(t)||g1A(t,!1,A),g1A(t,!0,A))});var e=A.nodeType===9?A:A.ownerDocument;e===null||e[kq]||(e[kq]=!0,g1A("selectionchange",!1,e))}}function Yfe(A,e,t,r){switch(mfe(e)){case 1:var i=Qor;break;case 4:i=por;break;default:i=vpA}t=i.bind(null,e,t,A),i=void 0,!M1A||e!=="touchstart"&&e!=="touchmove"&&e!=="wheel"||(i=!0),r?i!==void 0?A.addEventListener(e,t,{capture:!0,passive:i}):A.addEventListener(e,t,!0):i!==void 0?A.addEventListener(e,t,{passive:i}):A.addEventListener(e,t,!1)}function c1A(A,e,t,r,i){var u=r;if((e&1)===0&&(e&2)===0&&r!==null)A:for(;;){if(r===null)return;var a=r.tag;if(a===3||a===4){var n=r.stateNode.containerInfo;if(n===i||n.nodeType===8&&n.parentNode===i)break;if(a===4)for(a=r.return;a!==null;){var o=a.tag;if(o===3||o===4){if(o=a.stateNode.containerInfo,o===i||o.nodeType===8&&o.parentNode===i)return}a=a.return}for(;n!==null;){if(a=x2(n),a===null)return;if(o=a.tag,o===5||o===6){r=u=a;continue A}n=n.parentNode}}r=r.return}sfe(function(){var s=u,l=DpA(t),g=[];A:{var C=Mfe.get(A);if(C!==void 0){var B=FpA,E=A;switch(A){case"keypress":if(Mq(t)===0)break A;case"keydown":case"keyup":B=Uor;break;case"focusin":E="focus",B=s1A;break;case"focusout":E="blur",B=s1A;break;case"beforeblur":case"afterblur":B=s1A;break;case"click":if(t.button===2)break A;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":B=upe;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":B=yor;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":B=Yor;break;case Rfe:case Nfe:case Gfe:B=vor;break;case Ufe:B=Kor;break;case"scroll":B=mor;break;case"wheel":B=Oor;break;case"copy":case"cut":case"paste":B=For;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":B=npe}var d=(e&4)!==0,I=!d&&A==="scroll",h=d?C!==null?C+"Capture":null:C;d=[];for(var Q=s,p;Q!==null;){p=Q;var m=p.stateNode;if(p.tag===5&&m!==null&&(p=m,h!==null&&(m=aL(Q,h),m!=null&&d.push(cL(Q,m,p)))),I)break;Q=Q.return}0<d.length&&(C=new B(C,E,null,t,l),g.push({event:C,listeners:d}))}}if((e&7)===0){A:{if(C=A==="mouseover"||A==="pointerover",B=A==="mouseout"||A==="pointerout",C&&t!==G1A&&(E=t.relatedTarget||t.fromElement)&&(x2(E)||E[pz]))break A;if(B||C){if(C=l.window===l?l:(C=l.ownerDocument)?C.defaultView||C.parentWindow:window,B){if(E=t.relatedTarget||t.toElement,B=s,E=E?x2(E):null,E!==null&&(I=J2(E),E!==I||E.tag!==5&&E.tag!==6))E=null}else B=null,E=s;if(B!==E){if(d=upe,m="onMouseLeave",h="onMouseEnter",Q="mouse",A==="pointerout"||A==="pointerover")d=npe,m="onPointerLeave",h="onPointerEnter",Q="pointer";if(I=B==null?C:zS(B),p=E==null?C:zS(E),C=new d(m,Q+"leave",B,t,l),C.target=I,C.relatedTarget=p,m=null,x2(l)===s&&(d=new d(h,Q+"enter",E,t,l),d.target=p,d.relatedTarget=I,m=d),I=m,B&&E)e:{d=B,h=E,Q=0;for(p=d;p;p=u5(p))Q++;p=0;for(m=h;m;m=u5(m))p++;for(;0<Q-p;)d=u5(d),Q--;for(;0<p-Q;)h=u5(h),p--;for(;Q--;){if(d===h||h!==null&&d===h.alternate)break e;d=u5(d),h=u5(h)}d=null}else d=null;B!==null&&Ipe(g,C,B,d,!1),E!==null&&I!==null&&Ipe(g,I,E,d,!0)}}}A:{if(C=s?zS(s):window,B=C.nodeName&&C.nodeName.toLowerCase(),B==="select"||B==="input"&&C.type==="file")var f=Vor;else if(lpe(C))if(kfe)f=A0r;else{f=Xor;var D=jor}else(B=C.nodeName)&&B.toLowerCase()==="input"&&(C.type==="checkbox"||C.type==="radio")&&(f=$or);if(f&&(f=f(A,s))){vfe(g,f,t,l);break A}D&&D(A,C,s),A==="focusout"&&(D=C._wrapperState)&&D.controlled&&C.type==="number"&&x1A(C,"number",C.value)}switch(D=s?zS(s):window,A){case"focusin":if(lpe(D)||D.contentEditable==="true")l5=D,J1A=s,$S=null;break;case"focusout":$S=J1A=l5=null;break;case"mousedown":O1A=!0;break;case"contextmenu":case"mouseup":case"dragend":O1A=!1,Bpe(g,t,l);break;case"selectionchange":if(r0r)break;case"keydown":case"keyup":Bpe(g,t,l)}var w;if(SpA)A:{switch(A){case"compositionstart":var b="onCompositionStart";break A;case"compositionend":b="onCompositionEnd";break A;case"compositionupdate":b="onCompositionUpdate";break A}b=void 0}else s5?wfe(A,t)&&(b="onCompositionEnd"):A==="keydown"&&t.keyCode===229&&(b="onCompositionStart");if(b&&(yfe&&t.locale!=="ko"&&(s5||b!=="onCompositionStart"?b==="onCompositionEnd"&&s5&&(w=Dfe()):(Qp=l,kpA=("value"in Qp)?Qp.value:Qp.textContent,s5=!0)),D=$q(s,b),0<D.length&&(b=new ape(b,A,null,t,l),g.push({event:b,listeners:D}),w?b.data=w:(w=bfe(t),w!==null&&(b.data=w)))),w=_or?Wor(A,t):qor(A,t))s=$q(s,"onBeforeInput"),0<s.length&&(l=new ape("onBeforeInput","beforeinput",null,t,l),g.push({event:l,listeners:s}),l.data=w)}Tfe(g,e)})}function cL(A,e,t){return{instance:A,listener:e,currentTarget:t}}function $q(A,e){for(var t=e+"Capture",r=[];A!==null;){var i=A,u=i.stateNode;i.tag===5&&u!==null&&(i=u,u=aL(A,t),u!=null&&r.unshift(cL(A,u,i)),u=aL(A,e),u!=null&&r.push(cL(A,u,i))),A=A.return}return r}function u5(A){if(A===null)return null;do A=A.return;while(A&&A.tag!==5);return A?A:null}function Ipe(A,e,t,r,i){for(var u=e._reactName,a=[];t!==null&&t!==r;){var n=t,o=n.alternate,s=n.stateNode;if(o!==null&&o===r)break;n.tag===5&&s!==null&&(n=s,i?(o=aL(t,u),o!=null&&a.unshift(cL(t,o,n))):i||(o=aL(t,u),o!=null&&a.push(cL(t,o,n)))),t=t.return}a.length!==0&&A.push({event:e,listeners:a})}var a0r=/\r\n?/g,n0r=/\u0000|\uFFFD/g;function hpe(A){return(typeof A==="string"?A:""+A).replace(a0r,`
|
||
`).replace(n0r,"")}function Fq(A,e,t){if(e=hpe(e),hpe(A)!==e&&t)throw Error(dt(425))}function Az(){}var W1A=null,q1A=null;function z1A(A,e){return A==="textarea"||A==="noscript"||typeof e.children==="string"||typeof e.children==="number"||typeof e.dangerouslySetInnerHTML==="object"&&e.dangerouslySetInnerHTML!==null&&e.dangerouslySetInnerHTML.__html!=null}var Z1A=typeof setTimeout==="function"?setTimeout:void 0,o0r=typeof clearTimeout==="function"?clearTimeout:void 0,Qpe=typeof Promise==="function"?Promise:void 0,s0r=typeof queueMicrotask==="function"?queueMicrotask:typeof Qpe<"u"?function(A){return Qpe.resolve(null).then(A).catch(l0r)}:Z1A;function l0r(A){setTimeout(function(){throw A})}function C1A(A,e){var t=e,r=0;do{var i=t.nextSibling;if(A.removeChild(t),i&&i.nodeType===8)if(t=i.data,t==="/$"){if(r===0){A.removeChild(i),sL(e);return}r--}else t!=="$"&&t!=="$?"&&t!=="$!"||r++;t=i}while(t);sL(e)}function yp(A){for(;A!=null;A=A.nextSibling){var e=A.nodeType;if(e===1||e===3)break;if(e===8){if(e=A.data,e==="$"||e==="$!"||e==="$?")break;if(e==="/$")return null}}return A}function ppe(A){A=A.previousSibling;for(var e=0;A;){if(A.nodeType===8){var t=A.data;if(t==="$"||t==="$!"||t==="$?"){if(e===0)return A;e--}else t==="/$"&&e++}A=A.previousSibling}return null}var L5=Math.random().toString(36).slice(2),Gd="__reactFiber$"+L5,CL="__reactProps$"+L5,pz="__reactContainer$"+L5,V1A="__reactEvents$"+L5,g0r="__reactListeners$"+L5,c0r="__reactHandles$"+L5;function x2(A){var e=A[Gd];if(e)return e;for(var t=A.parentNode;t;){if(e=t[pz]||t[Gd]){if(t=e.alternate,e.child!==null||t!==null&&t.child!==null)for(A=ppe(A);A!==null;){if(t=A[Gd])return t;A=ppe(A)}return e}A=t,t=A.parentNode}return null}function fz(A){return A=A[Gd]||A[pz],!A||A.tag!==5&&A.tag!==6&&A.tag!==13&&A.tag!==3?null:A}function zS(A){if(A.tag===5||A.tag===6)return A.stateNode;throw Error(dt(33))}function RpA(A){return A[CL]||null}var j1A=[],c5=-1;function Sp(A){return{current:A}}function la(A){0>c5||(A.current=j1A[c5],j1A[c5]=null,c5--)}function Vu(A,e){c5++,j1A[c5]=A.current,A.current=e}var Fp={},ts=Sp(Fp),Jl=Sp(!1),M2=Fp;function w5(A,e){var t=A.type.contextTypes;if(!t)return Fp;var r=A.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===e)return r.__reactInternalMemoizedMaskedChildContext;var i={},u;for(u in t)i[u]=e[u];return r&&(A=A.stateNode,A.__reactInternalMemoizedUnmaskedChildContext=e,A.__reactInternalMemoizedMaskedChildContext=i),i}function Ol(A){return A=A.childContextTypes,A!==null&&A!==void 0}function ez(){la(Jl),la(ts)}function fpe(A,e,t){if(ts.current!==Fp)throw Error(dt(168));Vu(ts,e),Vu(Jl,t)}function Hfe(A,e,t){var r=A.stateNode;if(e=e.childContextTypes,typeof r.getChildContext!=="function")return t;r=r.getChildContext();for(var i in r)if(!(i in e))throw Error(dt(108,qnr(A)||"Unknown",i));return Ka({},t,r)}function tz(A){return A=(A=A.stateNode)&&A.__reactInternalMemoizedMergedChildContext||Fp,M2=ts.current,Vu(ts,A),Vu(Jl,Jl.current),!0}function mpe(A,e,t){var r=A.stateNode;if(!r)throw Error(dt(169));t?(A=Hfe(A,e,M2),r.__reactInternalMemoizedMergedChildContext=A,la(Jl),la(ts),Vu(ts,A)):la(Jl),Vu(Jl,t)}var qh=null,mz=!1,B1A=!1;function Kfe(A){qh===null?qh=[A]:qh.push(A)}function C0r(A){mz=!0,Kfe(A)}function Lp(){if(!B1A&&qh!==null){B1A=!0;var A=0,e=mu;try{var t=qh;for(mu=1;A<t.length;A++){var r=t[A];do r=r(!0);while(r!==null)}qh=null,mz=!1}catch(i){throw qh!==null&&(qh=qh.slice(A+1)),cfe(ypA,Lp),i}finally{mu=e,B1A=!1}}return null}var C5=[],B5=0,rz=null,iz=0,_c=[],Wc=0,T2=null,zh=1,Zh="";function k2(A,e){C5[B5++]=iz,C5[B5++]=rz,rz=A,iz=e}function Jfe(A,e,t){_c[Wc++]=zh,_c[Wc++]=Zh,_c[Wc++]=T2,T2=A;var r=zh;A=Zh;var i=32-FB(r)-1;r&=~(1<<i),t+=1;var u=32-FB(e)+i;if(30<u){var a=i-i%5;u=(r&(1<<a)-1).toString(32),r>>=a,i-=a,zh=1<<32-FB(e)+i|t<<i|r,Zh=u+A}else zh=1<<u|t<<i|r,Zh=A}function NpA(A){A.return!==null&&(k2(A,1),Jfe(A,1,0))}function GpA(A){for(;A===rz;)rz=C5[--B5],C5[B5]=null,iz=C5[--B5],C5[B5]=null;for(;A===T2;)T2=_c[--Wc],_c[Wc]=null,Zh=_c[--Wc],_c[Wc]=null,zh=_c[--Wc],_c[Wc]=null}var Mg=null,Ug=null,ka=!1,vB=null;function Ofe(A,e){var t=kB(5,null,null,0);t.elementType="DELETED",t.stateNode=e,t.return=A,e=A.deletions,e===null?(A.deletions=[t],A.flags|=16):e.push(t)}function Dpe(A,e){switch(A.tag){case 5:var t=A.type;return e=e.nodeType!==1||t.toLowerCase()!==e.nodeName.toLowerCase()?null:e,e!==null?(A.stateNode=e,Mg=A,Ug=yp(e.firstChild),!0):!1;case 6:return e=A.pendingProps===""||e.nodeType!==3?null:e,e!==null?(A.stateNode=e,Mg=A,Ug=null,!0):!1;case 13:return e=e.nodeType!==8?null:e,e!==null?(t=T2!==null?{id:zh,overflow:Zh}:null,A.memoizedState={dehydrated:e,treeContext:t,retryLane:1073741824},t=kB(18,null,null,0),t.stateNode=e,t.return=A,A.child=t,Mg=A,Ug=null,!0):!1;default:return!1}}function X1A(A){return(A.mode&1)!==0&&(A.flags&128)===0}function $1A(A){if(ka){var e=Ug;if(e){var t=e;if(!Dpe(A,e)){if(X1A(A))throw Error(dt(418));e=yp(t.nextSibling);var r=Mg;e&&Dpe(A,e)?Ofe(r,t):(A.flags=A.flags&-4097|2,ka=!1,Mg=A)}}else{if(X1A(A))throw Error(dt(418));A.flags=A.flags&-4097|2,ka=!1,Mg=A}}}function ype(A){for(A=A.return;A!==null&&A.tag!==5&&A.tag!==3&&A.tag!==13;)A=A.return;Mg=A}function xq(A){if(A!==Mg)return!1;if(!ka)return ype(A),ka=!0,!1;var e;if((e=A.tag!==3)&&!(e=A.tag!==5)&&(e=A.type,e=e!=="head"&&e!=="body"&&!z1A(A.type,A.memoizedProps)),e&&(e=Ug)){if(X1A(A))throw Pfe(),Error(dt(418));for(;e;)Ofe(A,e),e=yp(e.nextSibling)}if(ype(A),A.tag===13){if(A=A.memoizedState,A=A!==null?A.dehydrated:null,!A)throw Error(dt(317));A:{A=A.nextSibling;for(e=0;A;){if(A.nodeType===8){var t=A.data;if(t==="/$"){if(e===0){Ug=yp(A.nextSibling);break A}e--}else t!=="$"&&t!=="$!"&&t!=="$?"||e++}A=A.nextSibling}Ug=null}}else Ug=Mg?yp(A.stateNode.nextSibling):null;return!0}function Pfe(){for(var A=Ug;A;)A=yp(A.nextSibling)}function b5(){Ug=Mg=null,ka=!1}function UpA(A){vB===null?vB=[A]:vB.push(A)}var B0r=$h.ReactCurrentBatchConfig;function MS(A,e,t){if(A=t.ref,A!==null&&typeof A!=="function"&&typeof A!=="object"){if(t._owner){if(t=t._owner,t){if(t.tag!==1)throw Error(dt(309));var r=t.stateNode}if(!r)throw Error(dt(147,A));var i=r,u=""+A;if(e!==null&&e.ref!==null&&typeof e.ref==="function"&&e.ref._stringRef===u)return e.ref;return e=function(a){var n=i.refs;a===null?delete n[u]:n[u]=a},e._stringRef=u,e}if(typeof A!=="string")throw Error(dt(284));if(!t._owner)throw Error(dt(290,A))}return A}function Sq(A,e){throw A=Object.prototype.toString.call(e),Error(dt(31,A==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":A))}function wpe(A){var e=A._init;return e(A._payload)}function _fe(A){function e(h,Q){if(A){var p=h.deletions;p===null?(h.deletions=[Q],h.flags|=16):p.push(Q)}}function t(h,Q){if(!A)return null;for(;Q!==null;)e(h,Q),Q=Q.sibling;return null}function r(h,Q){for(h=new Map;Q!==null;)Q.key!==null?h.set(Q.key,Q):h.set(Q.index,Q),Q=Q.sibling;return h}function i(h,Q){return h=vp(h,Q),h.index=0,h.sibling=null,h}function u(h,Q,p){if(h.index=p,!A)return h.flags|=1048576,Q;if(p=h.alternate,p!==null)return p=p.index,p<Q?(h.flags|=2,Q):p;return h.flags|=2,Q}function a(h){return A&&h.alternate===null&&(h.flags|=2),h}function n(h,Q,p,m){if(Q===null||Q.tag!==6)return Q=f1A(p,h.mode,m),Q.return=h,Q;return Q=i(Q,p),Q.return=h,Q}function o(h,Q,p,m){var f=p.type;if(f===o5)return l(h,Q,p.props.children,m,p.key);if(Q!==null&&(Q.elementType===f||typeof f==="object"&&f!==null&&f.$$typeof===Ep&&wpe(f)===Q.type))return m=i(Q,p.props),m.ref=MS(h,Q,p),m.return=h,m;return m=_q(p.type,p.key,p.props,null,h.mode,m),m.ref=MS(h,Q,p),m.return=h,m}function s(h,Q,p,m){if(Q===null||Q.tag!==4||Q.stateNode.containerInfo!==p.containerInfo||Q.stateNode.implementation!==p.implementation)return Q=m1A(p,h.mode,m),Q.return=h,Q;return Q=i(Q,p.children||[]),Q.return=h,Q}function l(h,Q,p,m,f){if(Q===null||Q.tag!==7)return Q=U2(p,h.mode,m,f),Q.return=h,Q;return Q=i(Q,p),Q.return=h,Q}function g(h,Q,p){if(typeof Q==="string"&&Q!==""||typeof Q==="number")return Q=f1A(""+Q,h.mode,p),Q.return=h,Q;if(typeof Q==="object"&&Q!==null){switch(Q.$$typeof){case pq:return p=_q(Q.type,Q.key,Q.props,null,h.mode,p),p.ref=MS(h,null,Q),p.return=h,p;case n5:return Q=m1A(Q,h.mode,p),Q.return=h,Q;case Ep:var m=Q._init;return g(h,m(Q._payload),p)}if(KS(Q)||RS(Q))return Q=U2(Q,h.mode,p,null),Q.return=h,Q;Sq(h,Q)}return null}function C(h,Q,p,m){var f=Q!==null?Q.key:null;if(typeof p==="string"&&p!==""||typeof p==="number")return f!==null?null:n(h,Q,""+p,m);if(typeof p==="object"&&p!==null){switch(p.$$typeof){case pq:return p.key===f?o(h,Q,p,m):null;case n5:return p.key===f?s(h,Q,p,m):null;case Ep:return f=p._init,C(h,Q,f(p._payload),m)}if(KS(p)||RS(p))return f!==null?null:l(h,Q,p,m,null);Sq(h,p)}return null}function B(h,Q,p,m,f){if(typeof m==="string"&&m!==""||typeof m==="number")return h=h.get(p)||null,n(Q,h,""+m,f);if(typeof m==="object"&&m!==null){switch(m.$$typeof){case pq:return h=h.get(m.key===null?p:m.key)||null,o(Q,h,m,f);case n5:return h=h.get(m.key===null?p:m.key)||null,s(Q,h,m,f);case Ep:var D=m._init;return B(h,Q,p,D(m._payload),f)}if(KS(m)||RS(m))return h=h.get(p)||null,l(Q,h,m,f,null);Sq(Q,m)}return null}function E(h,Q,p,m){for(var f=null,D=null,w=Q,b=Q=0,F=null;w!==null&&b<p.length;b++){w.index>b?(F=w,w=null):F=w.sibling;var v=C(h,w,p[b],m);if(v===null){w===null&&(w=F);break}A&&w&&v.alternate===null&&e(h,w),Q=u(v,Q,b),D===null?f=v:D.sibling=v,D=v,w=F}if(b===p.length)return t(h,w),ka&&k2(h,b),f;if(w===null){for(;b<p.length;b++)w=g(h,p[b],m),w!==null&&(Q=u(w,Q,b),D===null?f=w:D.sibling=w,D=w);return ka&&k2(h,b),f}for(w=r(h,w);b<p.length;b++)F=B(w,h,b,p[b],m),F!==null&&(A&&F.alternate!==null&&w.delete(F.key===null?b:F.key),Q=u(F,Q,b),D===null?f=F:D.sibling=F,D=F);return A&&w.forEach(function(S){return e(h,S)}),ka&&k2(h,b),f}function d(h,Q,p,m){var f=RS(p);if(typeof f!=="function")throw Error(dt(150));if(p=f.call(p),p==null)throw Error(dt(151));for(var D=f=null,w=Q,b=Q=0,F=null,v=p.next();w!==null&&!v.done;b++,v=p.next()){w.index>b?(F=w,w=null):F=w.sibling;var S=C(h,w,v.value,m);if(S===null){w===null&&(w=F);break}A&&w&&S.alternate===null&&e(h,w),Q=u(S,Q,b),D===null?f=S:D.sibling=S,D=S,w=F}if(v.done)return t(h,w),ka&&k2(h,b),f;if(w===null){for(;!v.done;b++,v=p.next())v=g(h,v.value,m),v!==null&&(Q=u(v,Q,b),D===null?f=v:D.sibling=v,D=v);return ka&&k2(h,b),f}for(w=r(h,w);!v.done;b++,v=p.next())v=B(w,h,b,v.value,m),v!==null&&(A&&v.alternate!==null&&w.delete(v.key===null?b:v.key),Q=u(v,Q,b),D===null?f=v:D.sibling=v,D=v);return A&&w.forEach(function(x){return e(h,x)}),ka&&k2(h,b),f}function I(h,Q,p,m){if(typeof p==="object"&&p!==null&&p.type===o5&&p.key===null&&(p=p.props.children),typeof p==="object"&&p!==null){switch(p.$$typeof){case pq:A:{for(var f=p.key,D=Q;D!==null;){if(D.key===f){if(f=p.type,f===o5){if(D.tag===7){t(h,D.sibling),Q=i(D,p.props.children),Q.return=h,h=Q;break A}}else if(D.elementType===f||typeof f==="object"&&f!==null&&f.$$typeof===Ep&&wpe(f)===D.type){t(h,D.sibling),Q=i(D,p.props),Q.ref=MS(h,D,p),Q.return=h,h=Q;break A}t(h,D);break}else e(h,D);D=D.sibling}p.type===o5?(Q=U2(p.props.children,h.mode,m,p.key),Q.return=h,h=Q):(m=_q(p.type,p.key,p.props,null,h.mode,m),m.ref=MS(h,Q,p),m.return=h,h=m)}return a(h);case n5:A:{for(D=p.key;Q!==null;){if(Q.key===D)if(Q.tag===4&&Q.stateNode.containerInfo===p.containerInfo&&Q.stateNode.implementation===p.implementation){t(h,Q.sibling),Q=i(Q,p.children||[]),Q.return=h,h=Q;break A}else{t(h,Q);break}else e(h,Q);Q=Q.sibling}Q=m1A(p,h.mode,m),Q.return=h,h=Q}return a(h);case Ep:return D=p._init,I(h,Q,D(p._payload),m)}if(KS(p))return E(h,Q,p,m);if(RS(p))return d(h,Q,p,m);Sq(h,p)}return typeof p==="string"&&p!==""||typeof p==="number"?(p=""+p,Q!==null&&Q.tag===6?(t(h,Q.sibling),Q=i(Q,p),Q.return=h,h=Q):(t(h,Q),Q=f1A(p,h.mode,m),Q.return=h,h=Q),a(h)):t(h,Q)}return I}var v5=_fe(!0),Wfe=_fe(!1),uz=Sp(null),az=null,E5=null,MpA=null;function TpA(){MpA=E5=az=null}function YpA(A){var e=uz.current;la(uz),A._currentValue=e}function ApA(A,e,t){for(;A!==null;){var r=A.alternate;if((A.childLanes&e)!==e?(A.childLanes|=e,r!==null&&(r.childLanes|=e)):r!==null&&(r.childLanes&e)!==e&&(r.childLanes|=e),A===t)break;A=A.return}}function m5(A,e){az=A,MpA=E5=null,A=A.dependencies,A!==null&&A.firstContext!==null&&((A.lanes&e)!==0&&(Kl=!0),A.firstContext=null)}function zc(A){var e=A._currentValue;if(MpA!==A)if(A={context:A,memoizedValue:e,next:null},E5===null){if(az===null)throw Error(dt(308));E5=A,az.dependencies={lanes:0,firstContext:A}}else E5=E5.next=A;return e}var S2=null;function HpA(A){S2===null?S2=[A]:S2.push(A)}function qfe(A,e,t,r){var i=e.interleaved;return i===null?(t.next=t,HpA(e)):(t.next=i.next,i.next=t),e.interleaved=t,jh(A,r)}function jh(A,e){A.lanes|=e;var t=A.alternate;t!==null&&(t.lanes|=e),t=A;for(A=A.return;A!==null;)A.childLanes|=e,t=A.alternate,t!==null&&(t.childLanes|=e),t=A,A=A.return;return t.tag===3?t.stateNode:null}var dp=!1;function zfe(A){A.updateQueue={baseState:A.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Zfe(A,e){A=A.updateQueue,e.updateQueue===A&&(e.updateQueue={baseState:A.baseState,firstBaseUpdate:A.firstBaseUpdate,lastBaseUpdate:A.lastBaseUpdate,shared:A.shared,effects:A.effects})}function wp(A,e){return{eventTime:A,lane:e,tag:0,payload:null,callback:null,next:null}}function R2(A,e,t){var r=A.updateQueue;if(r===null)return null;if(r=r.shared,(_i&2)!==0){var i=r.pending;return i===null?e.next=e:(e.next=i.next,i.next=e),r.pending=e,jh(A,t)}return i=r.interleaved,i===null?(e.next=e,HpA(r)):(e.next=i.next,i.next=e),r.interleaved=e,jh(A,t)}function Yq(A,e,t){if(e=e.updateQueue,e!==null&&(e=e.shared,(t&4194240)!==0)){var r=e.lanes;r&=A.pendingLanes,t|=r,e.lanes=t,wpA(A,t)}}function bpe(A,e){var t=A.updateQueue,r=A.alternate;if(r!==null&&(r=r.updateQueue,t===r)){var i=null,u=null;if(t=t.firstBaseUpdate,t!==null){do{var a={eventTime:t.eventTime,lane:t.lane,tag:t.tag,payload:t.payload,callback:t.callback,next:null};u===null?i=u=a:u=u.next=a,t=t.next}while(t!==null);u===null?i=u=e:u=u.next=e}else i=u=e;t={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:u,shared:r.shared,effects:r.effects},A.updateQueue=t;return}A=t.lastBaseUpdate,A===null?t.firstBaseUpdate=e:A.next=e,t.lastBaseUpdate=e}function nz(A,e,t,r){var i=A.updateQueue;dp=!1;var u=i.firstBaseUpdate,a=i.lastBaseUpdate,n=i.shared.pending;if(n!==null){i.shared.pending=null;var o=n,s=o.next;o.next=null,a===null?u=s:a.next=s,a=o;var l=A.alternate;l!==null&&(l=l.updateQueue,n=l.lastBaseUpdate,n!==a&&(n===null?l.firstBaseUpdate=s:n.next=s,l.lastBaseUpdate=o))}if(u!==null){var g=i.baseState;a=0,l=s=o=null,n=u;do{var C=n.lane,B=n.eventTime;if((r&C)===C){l!==null&&(l=l.next={eventTime:B,lane:0,tag:n.tag,payload:n.payload,callback:n.callback,next:null});A:{var E=A,d=n;switch(C=e,B=t,d.tag){case 1:if(E=d.payload,typeof E==="function"){g=E.call(B,g,C);break A}g=E;break A;case 3:E.flags=E.flags&-65537|128;case 0:if(E=d.payload,C=typeof E==="function"?E.call(B,g,C):E,C===null||C===void 0)break A;g=Ka({},g,C);break A;case 2:dp=!0}}n.callback!==null&&n.lane!==0&&(A.flags|=64,C=i.effects,C===null?i.effects=[n]:C.push(n))}else B={eventTime:B,lane:C,tag:n.tag,payload:n.payload,callback:n.callback,next:null},l===null?(s=l=B,o=g):l=l.next=B,a|=C;if(n=n.next,n===null)if(n=i.shared.pending,n===null)break;else C=n,n=C.next,C.next=null,i.lastBaseUpdate=C,i.shared.pending=null}while(1);if(l===null&&(o=g),i.baseState=o,i.firstBaseUpdate=s,i.lastBaseUpdate=l,e=i.shared.interleaved,e!==null){i=e;do a|=i.lane,i=i.next;while(i!==e)}else u===null&&(i.shared.lanes=0);H2|=a,A.lanes=a,A.memoizedState=g}}function vpe(A,e,t){if(A=e.effects,e.effects=null,A!==null)for(e=0;e<A.length;e++){var r=A[e],i=r.callback;if(i!==null){if(r.callback=null,r=t,typeof i!=="function")throw Error(dt(191,i));i.call(r)}}}var fL={},Md=Sp(fL),BL=Sp(fL),EL=Sp(fL);function L2(A){if(A===fL)throw Error(dt(174));return A}function KpA(A,e){switch(Vu(EL,e),Vu(BL,A),Vu(Md,fL),A=e.nodeType,A){case 9:case 11:e=(e=e.documentElement)?e.namespaceURI:L1A(null,"");break;default:A=A===8?e.parentNode:e,e=A.namespaceURI||null,A=A.tagName,e=L1A(e,A)}la(Md),Vu(Md,e)}function k5(){la(Md),la(BL),la(EL)}function Vfe(A){L2(EL.current);var e=L2(Md.current),t=L1A(e,A.type);e!==t&&(Vu(BL,A),Vu(Md,t))}function JpA(A){BL.current===A&&(la(Md),la(BL))}var Ya=Sp(0);function oz(A){for(var e=A;e!==null;){if(e.tag===13){var t=e.memoizedState;if(t!==null&&(t=t.dehydrated,t===null||t.data==="$?"||t.data==="$!"))return e}else if(e.tag===19&&e.memoizedProps.revealOrder!==void 0){if((e.flags&128)!==0)return e}else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===A)break;for(;e.sibling===null;){if(e.return===null||e.return===A)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var E1A=[];function OpA(){for(var A=0;A<E1A.length;A++)E1A[A]._workInProgressVersionPrimary=null;E1A.length=0}var{ReactCurrentDispatcher:Hq,ReactCurrentBatchConfig:d1A}=$h,Y2=0,Ha=null,po=null,_o=null,sz=!1,AL=!1,dL=0,E0r=0;function $0(){throw Error(dt(321))}function PpA(A,e){if(e===null)return!1;for(var t=0;t<e.length&&t<A.length;t++)if(!SB(A[t],e[t]))return!1;return!0}function _pA(A,e,t,r,i,u){if(Y2=u,Ha=e,e.memoizedState=null,e.updateQueue=null,e.lanes=0,Hq.current=A===null||A.memoizedState===null?Q0r:p0r,A=t(r,i),AL){u=0;do{if(AL=!1,dL=0,25<=u)throw Error(dt(301));u+=1,_o=po=null,e.updateQueue=null,Hq.current=f0r,A=t(r,i)}while(AL)}if(Hq.current=lz,e=po!==null&&po.next!==null,Y2=0,_o=po=Ha=null,sz=!1,e)throw Error(dt(300));return A}function WpA(){var A=dL!==0;return dL=0,A}function Nd(){var A={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return _o===null?Ha.memoizedState=_o=A:_o=_o.next=A,_o}function Zc(){if(po===null){var A=Ha.alternate;A=A!==null?A.memoizedState:null}else A=po.next;var e=_o===null?Ha.memoizedState:_o.next;if(e!==null)_o=e,po=A;else{if(A===null)throw Error(dt(310));po=A,A={memoizedState:po.memoizedState,baseState:po.baseState,baseQueue:po.baseQueue,queue:po.queue,next:null},_o===null?Ha.memoizedState=_o=A:_o=_o.next=A}return _o}function IL(A,e){return typeof e==="function"?e(A):e}function I1A(A){var e=Zc(),t=e.queue;if(t===null)throw Error(dt(311));t.lastRenderedReducer=A;var r=po,i=r.baseQueue,u=t.pending;if(u!==null){if(i!==null){var a=i.next;i.next=u.next,u.next=a}r.baseQueue=i=u,t.pending=null}if(i!==null){u=i.next,r=r.baseState;var n=a=null,o=null,s=u;do{var l=s.lane;if((Y2&l)===l)o!==null&&(o=o.next={lane:0,action:s.action,hasEagerState:s.hasEagerState,eagerState:s.eagerState,next:null}),r=s.hasEagerState?s.eagerState:A(r,s.action);else{var g={lane:l,action:s.action,hasEagerState:s.hasEagerState,eagerState:s.eagerState,next:null};o===null?(n=o=g,a=r):o=o.next=g,Ha.lanes|=l,H2|=l}s=s.next}while(s!==null&&s!==u);o===null?a=r:o.next=n,SB(r,e.memoizedState)||(Kl=!0),e.memoizedState=r,e.baseState=a,e.baseQueue=o,t.lastRenderedState=r}if(A=t.interleaved,A!==null){i=A;do u=i.lane,Ha.lanes|=u,H2|=u,i=i.next;while(i!==A)}else i===null&&(t.lanes=0);return[e.memoizedState,t.dispatch]}function h1A(A){var e=Zc(),t=e.queue;if(t===null)throw Error(dt(311));t.lastRenderedReducer=A;var{dispatch:r,pending:i}=t,u=e.memoizedState;if(i!==null){t.pending=null;var a=i=i.next;do u=A(u,a.action),a=a.next;while(a!==i);SB(u,e.memoizedState)||(Kl=!0),e.memoizedState=u,e.baseQueue===null&&(e.baseState=u),t.lastRenderedState=u}return[u,r]}function jfe(){}function Xfe(A,e){var t=Ha,r=Zc(),i=e(),u=!SB(r.memoizedState,i);if(u&&(r.memoizedState=i,Kl=!0),r=r.queue,qpA(e3e.bind(null,t,r,A),[A]),r.getSnapshot!==e||u||_o!==null&&_o.memoizedState.tag&1){if(t.flags|=2048,hL(9,A3e.bind(null,t,r,i,e),void 0,null),Wo===null)throw Error(dt(349));(Y2&30)!==0||$fe(t,e,i)}return i}function $fe(A,e,t){A.flags|=16384,A={getSnapshot:e,value:t},e=Ha.updateQueue,e===null?(e={lastEffect:null,stores:null},Ha.updateQueue=e,e.stores=[A]):(t=e.stores,t===null?e.stores=[A]:t.push(A))}function A3e(A,e,t,r){e.value=t,e.getSnapshot=r,t3e(e)&&r3e(A)}function e3e(A,e,t){return t(function(){t3e(e)&&r3e(A)})}function t3e(A){var e=A.getSnapshot;A=A.value;try{var t=e();return!SB(A,t)}catch(r){return!0}}function r3e(A){var e=jh(A,1);e!==null&&xB(e,A,1,-1)}function kpe(A){var e=Nd();return typeof A==="function"&&(A=A()),e.memoizedState=e.baseState=A,A={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:IL,lastRenderedState:A},e.queue=A,A=A.dispatch=h0r.bind(null,Ha,A),[e.memoizedState,A]}function hL(A,e,t,r){return A={tag:A,create:e,destroy:t,deps:r,next:null},e=Ha.updateQueue,e===null?(e={lastEffect:null,stores:null},Ha.updateQueue=e,e.lastEffect=A.next=A):(t=e.lastEffect,t===null?e.lastEffect=A.next=A:(r=t.next,t.next=A,A.next=r,e.lastEffect=A)),A}function i3e(){return Zc().memoizedState}function Kq(A,e,t,r){var i=Nd();Ha.flags|=A,i.memoizedState=hL(1|e,t,void 0,r===void 0?null:r)}function Dz(A,e,t,r){var i=Zc();r=r===void 0?null:r;var u=void 0;if(po!==null){var a=po.memoizedState;if(u=a.destroy,r!==null&&PpA(r,a.deps)){i.memoizedState=hL(e,t,u,r);return}}Ha.flags|=A,i.memoizedState=hL(1|e,t,u,r)}function Fpe(A,e){return Kq(8390656,8,A,e)}function qpA(A,e){return Dz(2048,8,A,e)}function u3e(A,e){return Dz(4,2,A,e)}function a3e(A,e){return Dz(4,4,A,e)}function n3e(A,e){if(typeof e==="function")return A=A(),e(A),function(){e(null)};if(e!==null&&e!==void 0)return A=A(),e.current=A,function(){e.current=null}}function o3e(A,e,t){return t=t!==null&&t!==void 0?t.concat([A]):null,Dz(4,4,n3e.bind(null,e,A),t)}function zpA(){}function s3e(A,e){var t=Zc();e=e===void 0?null:e;var r=t.memoizedState;if(r!==null&&e!==null&&PpA(e,r[1]))return r[0];return t.memoizedState=[A,e],A}function l3e(A,e){var t=Zc();e=e===void 0?null:e;var r=t.memoizedState;if(r!==null&&e!==null&&PpA(e,r[1]))return r[0];return A=A(),t.memoizedState=[A,e],A}function g3e(A,e,t){if((Y2&21)===0)return A.baseState&&(A.baseState=!1,Kl=!0),A.memoizedState=t;return SB(t,e)||(t=Efe(),Ha.lanes|=t,H2|=t,A.baseState=!0),e}function d0r(A,e){var t=mu;mu=t!==0&&4>t?t:4,A(!0);var r=d1A.transition;d1A.transition={};try{A(!1),e()}finally{mu=t,d1A.transition=r}}function c3e(){return Zc().memoizedState}function I0r(A,e,t){var r=N2(A);if(t={lane:r,action:t,hasEagerState:!1,eagerState:null,next:null},C3e(A))B3e(e,t);else if(t=qfe(A,e,t,r),t!==null){var i=Pl();xB(t,A,r,i),E3e(t,e,r)}}function h0r(A,e,t){var r=N2(A),i={lane:r,action:t,hasEagerState:!1,eagerState:null,next:null};if(C3e(A))B3e(e,i);else{var u=A.alternate;if(A.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var a=e.lastRenderedState,n=u(a,t);if(i.hasEagerState=!0,i.eagerState=n,SB(n,a)){var o=e.interleaved;o===null?(i.next=i,HpA(e)):(i.next=o.next,o.next=i),e.interleaved=i;return}}catch(s){}finally{}t=qfe(A,e,i,r),t!==null&&(i=Pl(),xB(t,A,r,i),E3e(t,e,r))}}function C3e(A){var e=A.alternate;return A===Ha||e!==null&&e===Ha}function B3e(A,e){AL=sz=!0;var t=A.pending;t===null?e.next=e:(e.next=t.next,t.next=e),A.pending=e}function E3e(A,e,t){if((t&4194240)!==0){var r=e.lanes;r&=A.pendingLanes,t|=r,e.lanes=t,wpA(A,t)}}var lz={readContext:zc,useCallback:$0,useContext:$0,useEffect:$0,useImperativeHandle:$0,useInsertionEffect:$0,useLayoutEffect:$0,useMemo:$0,useReducer:$0,useRef:$0,useState:$0,useDebugValue:$0,useDeferredValue:$0,useTransition:$0,useMutableSource:$0,useSyncExternalStore:$0,useId:$0,unstable_isNewReconciler:!1},Q0r={readContext:zc,useCallback:function(A,e){return Nd().memoizedState=[A,e===void 0?null:e],A},useContext:zc,useEffect:Fpe,useImperativeHandle:function(A,e,t){return t=t!==null&&t!==void 0?t.concat([A]):null,Kq(4194308,4,n3e.bind(null,e,A),t)},useLayoutEffect:function(A,e){return Kq(4194308,4,A,e)},useInsertionEffect:function(A,e){return Kq(4,2,A,e)},useMemo:function(A,e){var t=Nd();return e=e===void 0?null:e,A=A(),t.memoizedState=[A,e],A},useReducer:function(A,e,t){var r=Nd();return e=t!==void 0?t(e):e,r.memoizedState=r.baseState=e,A={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:A,lastRenderedState:e},r.queue=A,A=A.dispatch=I0r.bind(null,Ha,A),[r.memoizedState,A]},useRef:function(A){var e=Nd();return A={current:A},e.memoizedState=A},useState:kpe,useDebugValue:zpA,useDeferredValue:function(A){return Nd().memoizedState=A},useTransition:function(){var A=kpe(!1),e=A[0];return A=d0r.bind(null,A[1]),Nd().memoizedState=A,[e,A]},useMutableSource:function(){},useSyncExternalStore:function(A,e,t){var r=Ha,i=Nd();if(ka){if(t===void 0)throw Error(dt(407));t=t()}else{if(t=e(),Wo===null)throw Error(dt(349));(Y2&30)!==0||$fe(r,e,t)}i.memoizedState=t;var u={value:t,getSnapshot:e};return i.queue=u,Fpe(e3e.bind(null,r,u,A),[A]),r.flags|=2048,hL(9,A3e.bind(null,r,u,t,e),void 0,null),t},useId:function(){var A=Nd(),e=Wo.identifierPrefix;if(ka){var t=Zh,r=zh;t=(r&~(1<<32-FB(r)-1)).toString(32)+t,e=":"+e+"R"+t,t=dL++,0<t&&(e+="H"+t.toString(32)),e+=":"}else t=E0r++,e=":"+e+"r"+t.toString(32)+":";return A.memoizedState=e},unstable_isNewReconciler:!1},p0r={readContext:zc,useCallback:s3e,useContext:zc,useEffect:qpA,useImperativeHandle:o3e,useInsertionEffect:u3e,useLayoutEffect:a3e,useMemo:l3e,useReducer:I1A,useRef:i3e,useState:function(){return I1A(IL)},useDebugValue:zpA,useDeferredValue:function(A){var e=Zc();return g3e(e,po.memoizedState,A)},useTransition:function(){var A=I1A(IL)[0],e=Zc().memoizedState;return[A,e]},useMutableSource:jfe,useSyncExternalStore:Xfe,useId:c3e,unstable_isNewReconciler:!1},f0r={readContext:zc,useCallback:s3e,useContext:zc,useEffect:qpA,useImperativeHandle:o3e,useInsertionEffect:u3e,useLayoutEffect:a3e,useMemo:l3e,useReducer:h1A,useRef:i3e,useState:function(){return h1A(IL)},useDebugValue:zpA,useDeferredValue:function(A){var e=Zc();return po===null?e.memoizedState=A:g3e(e,po.memoizedState,A)},useTransition:function(){var A=h1A(IL)[0],e=Zc().memoizedState;return[A,e]},useMutableSource:jfe,useSyncExternalStore:Xfe,useId:c3e,unstable_isNewReconciler:!1};function wB(A,e){if(A&&A.defaultProps){e=Ka({},e),A=A.defaultProps;for(var t in A)e[t]===void 0&&(e[t]=A[t]);return e}return e}function epA(A,e,t,r){e=A.memoizedState,t=t(r,e),t=t===null||t===void 0?e:Ka({},e,t),A.memoizedState=t,A.lanes===0&&(A.updateQueue.baseState=t)}var yz={isMounted:function(A){return(A=A._reactInternals)?J2(A)===A:!1},enqueueSetState:function(A,e,t){A=A._reactInternals;var r=Pl(),i=N2(A),u=wp(r,i);u.payload=e,t!==void 0&&t!==null&&(u.callback=t),e=R2(A,u,i),e!==null&&(xB(e,A,i,r),Yq(e,A,i))},enqueueReplaceState:function(A,e,t){A=A._reactInternals;var r=Pl(),i=N2(A),u=wp(r,i);u.tag=1,u.payload=e,t!==void 0&&t!==null&&(u.callback=t),e=R2(A,u,i),e!==null&&(xB(e,A,i,r),Yq(e,A,i))},enqueueForceUpdate:function(A,e){A=A._reactInternals;var t=Pl(),r=N2(A),i=wp(t,r);i.tag=2,e!==void 0&&e!==null&&(i.callback=e),e=R2(A,i,r),e!==null&&(xB(e,A,r,t),Yq(e,A,r))}};function xpe(A,e,t,r,i,u,a){return A=A.stateNode,typeof A.shouldComponentUpdate==="function"?A.shouldComponentUpdate(r,u,a):e.prototype&&e.prototype.isPureReactComponent?!gL(t,r)||!gL(i,u):!0}function d3e(A,e,t){var r=!1,i=Fp,u=e.contextType;return typeof u==="object"&&u!==null?u=zc(u):(i=Ol(e)?M2:ts.current,r=e.contextTypes,u=(r=r!==null&&r!==void 0)?w5(A,i):Fp),e=new e(t,u),A.memoizedState=e.state!==null&&e.state!==void 0?e.state:null,e.updater=yz,A.stateNode=e,e._reactInternals=A,r&&(A=A.stateNode,A.__reactInternalMemoizedUnmaskedChildContext=i,A.__reactInternalMemoizedMaskedChildContext=u),e}function Spe(A,e,t,r){A=e.state,typeof e.componentWillReceiveProps==="function"&&e.componentWillReceiveProps(t,r),typeof e.UNSAFE_componentWillReceiveProps==="function"&&e.UNSAFE_componentWillReceiveProps(t,r),e.state!==A&&yz.enqueueReplaceState(e,e.state,null)}function tpA(A,e,t,r){var i=A.stateNode;i.props=t,i.state=A.memoizedState,i.refs={},zfe(A);var u=e.contextType;typeof u==="object"&&u!==null?i.context=zc(u):(u=Ol(e)?M2:ts.current,i.context=w5(A,u)),i.state=A.memoizedState,u=e.getDerivedStateFromProps,typeof u==="function"&&(epA(A,e,u,t),i.state=A.memoizedState),typeof e.getDerivedStateFromProps==="function"||typeof i.getSnapshotBeforeUpdate==="function"||typeof i.UNSAFE_componentWillMount!=="function"&&typeof i.componentWillMount!=="function"||(e=i.state,typeof i.componentWillMount==="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount==="function"&&i.UNSAFE_componentWillMount(),e!==i.state&&yz.enqueueReplaceState(i,i.state,null),nz(A,t,i,r),i.state=A.memoizedState),typeof i.componentDidMount==="function"&&(A.flags|=4194308)}function F5(A,e){try{var t="",r=e;do t+=Wnr(r),r=r.return;while(r);var i=t}catch(u){i=`
|
||
Error generating stack: `+u.message+`
|
||
`+u.stack}return{value:A,source:e,stack:i,digest:null}}function Q1A(A,e,t){return{value:A,source:null,stack:t!=null?t:null,digest:e!=null?e:null}}function rpA(A,e){try{console.error(e.value)}catch(t){setTimeout(function(){throw t})}}var m0r=typeof WeakMap==="function"?WeakMap:Map;function I3e(A,e,t){t=wp(-1,t),t.tag=3,t.payload={element:null};var r=e.value;return t.callback=function(){cz||(cz=!0,CpA=r),rpA(A,e)},t}function h3e(A,e,t){t=wp(-1,t),t.tag=3;var r=A.type.getDerivedStateFromError;if(typeof r==="function"){var i=e.value;t.payload=function(){return r(i)},t.callback=function(){rpA(A,e)}}var u=A.stateNode;return u!==null&&typeof u.componentDidCatch==="function"&&(t.callback=function(){rpA(A,e),typeof r!=="function"&&(bp===null?bp=new Set([this]):bp.add(this));var a=e.stack;this.componentDidCatch(e.value,{componentStack:a!==null?a:""})}),t}function Lpe(A,e,t){var r=A.pingCache;if(r===null){r=A.pingCache=new m0r;var i=new Set;r.set(e,i)}else i=r.get(e),i===void 0&&(i=new Set,r.set(e,i));i.has(t)||(i.add(t),A=U0r.bind(null,A,e,t),e.then(A,A))}function Rpe(A){do{var e;if(e=A.tag===13)e=A.memoizedState,e=e!==null?e.dehydrated!==null?!0:!1:!0;if(e)return A;A=A.return}while(A!==null);return null}function Npe(A,e,t,r,i){if((A.mode&1)===0)return A===e?A.flags|=65536:(A.flags|=128,t.flags|=131072,t.flags&=-52805,t.tag===1&&(t.alternate===null?t.tag=17:(e=wp(-1,1),e.tag=2,R2(t,e,1))),t.lanes|=1),A;return A.flags|=65536,A.lanes=i,A}var D0r=$h.ReactCurrentOwner,Kl=!1;function Ws(A,e,t,r){e.child=A===null?Wfe(e,null,t,r):v5(e,A.child,t,r)}function Gpe(A,e,t,r,i){t=t.render;var u=e.ref;if(m5(e,i),r=_pA(A,e,t,r,u,i),t=WpA(),A!==null&&!Kl)return e.updateQueue=A.updateQueue,e.flags&=-2053,A.lanes&=~i,Xh(A,e,i);return ka&&t&&NpA(e),e.flags|=1,Ws(A,e,r,i),e.child}function Upe(A,e,t,r,i){if(A===null){var u=t.type;if(typeof u==="function"&&!efA(u)&&u.defaultProps===void 0&&t.compare===null&&t.defaultProps===void 0)return e.tag=15,e.type=u,Q3e(A,e,u,r,i);return A=_q(t.type,null,r,e,e.mode,i),A.ref=e.ref,A.return=e,e.child=A}if(u=A.child,(A.lanes&i)===0){var a=u.memoizedProps;if(t=t.compare,t=t!==null?t:gL,t(a,r)&&A.ref===e.ref)return Xh(A,e,i)}return e.flags|=1,A=vp(u,r),A.ref=e.ref,A.return=e,e.child=A}function Q3e(A,e,t,r,i){if(A!==null){var u=A.memoizedProps;if(gL(u,r)&&A.ref===e.ref)if(Kl=!1,e.pendingProps=r=u,(A.lanes&i)!==0)(A.flags&131072)!==0&&(Kl=!0);else return e.lanes=A.lanes,Xh(A,e,i)}return ipA(A,e,t,r,i)}function p3e(A,e,t){var r=e.pendingProps,i=r.children,u=A!==null?A.memoizedState:null;if(r.mode==="hidden")if((e.mode&1)===0)e.memoizedState={baseLanes:0,cachePool:null,transitions:null},Vu(I5,Gg),Gg|=t;else{if((t&1073741824)===0)return A=u!==null?u.baseLanes|t:t,e.lanes=e.childLanes=1073741824,e.memoizedState={baseLanes:A,cachePool:null,transitions:null},e.updateQueue=null,Vu(I5,Gg),Gg|=A,null;e.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=u!==null?u.baseLanes:t,Vu(I5,Gg),Gg|=r}else u!==null?(r=u.baseLanes|t,e.memoizedState=null):r=t,Vu(I5,Gg),Gg|=r;return Ws(A,e,i,t),e.child}function f3e(A,e){var t=e.ref;if(A===null&&t!==null||A!==null&&A.ref!==t)e.flags|=512,e.flags|=2097152}function ipA(A,e,t,r,i){var u=Ol(t)?M2:ts.current;if(u=w5(e,u),m5(e,i),t=_pA(A,e,t,r,u,i),r=WpA(),A!==null&&!Kl)return e.updateQueue=A.updateQueue,e.flags&=-2053,A.lanes&=~i,Xh(A,e,i);return ka&&r&&NpA(e),e.flags|=1,Ws(A,e,t,i),e.child}function Mpe(A,e,t,r,i){if(Ol(t)){var u=!0;tz(e)}else u=!1;if(m5(e,i),e.stateNode===null)Jq(A,e),d3e(e,t,r),tpA(e,t,r,i),r=!0;else if(A===null){var{stateNode:a,memoizedProps:n}=e;a.props=n;var o=a.context,s=t.contextType;typeof s==="object"&&s!==null?s=zc(s):(s=Ol(t)?M2:ts.current,s=w5(e,s));var l=t.getDerivedStateFromProps,g=typeof l==="function"||typeof a.getSnapshotBeforeUpdate==="function";g||typeof a.UNSAFE_componentWillReceiveProps!=="function"&&typeof a.componentWillReceiveProps!=="function"||(n!==r||o!==s)&&Spe(e,a,r,s),dp=!1;var C=e.memoizedState;a.state=C,nz(e,r,a,i),o=e.memoizedState,n!==r||C!==o||Jl.current||dp?(typeof l==="function"&&(epA(e,t,l,r),o=e.memoizedState),(n=dp||xpe(e,t,n,r,C,o,s))?(g||typeof a.UNSAFE_componentWillMount!=="function"&&typeof a.componentWillMount!=="function"||(typeof a.componentWillMount==="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==="function"&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==="function"&&(e.flags|=4194308)):(typeof a.componentDidMount==="function"&&(e.flags|=4194308),e.memoizedProps=r,e.memoizedState=o),a.props=r,a.state=o,a.context=s,r=n):(typeof a.componentDidMount==="function"&&(e.flags|=4194308),r=!1)}else{a=e.stateNode,Zfe(A,e),n=e.memoizedProps,s=e.type===e.elementType?n:wB(e.type,n),a.props=s,g=e.pendingProps,C=a.context,o=t.contextType,typeof o==="object"&&o!==null?o=zc(o):(o=Ol(t)?M2:ts.current,o=w5(e,o));var B=t.getDerivedStateFromProps;(l=typeof B==="function"||typeof a.getSnapshotBeforeUpdate==="function")||typeof a.UNSAFE_componentWillReceiveProps!=="function"&&typeof a.componentWillReceiveProps!=="function"||(n!==g||C!==o)&&Spe(e,a,r,o),dp=!1,C=e.memoizedState,a.state=C,nz(e,r,a,i);var E=e.memoizedState;n!==g||C!==E||Jl.current||dp?(typeof B==="function"&&(epA(e,t,B,r),E=e.memoizedState),(s=dp||xpe(e,t,s,r,C,E,o)||!1)?(l||typeof a.UNSAFE_componentWillUpdate!=="function"&&typeof a.componentWillUpdate!=="function"||(typeof a.componentWillUpdate==="function"&&a.componentWillUpdate(r,E,o),typeof a.UNSAFE_componentWillUpdate==="function"&&a.UNSAFE_componentWillUpdate(r,E,o)),typeof a.componentDidUpdate==="function"&&(e.flags|=4),typeof a.getSnapshotBeforeUpdate==="function"&&(e.flags|=1024)):(typeof a.componentDidUpdate!=="function"||n===A.memoizedProps&&C===A.memoizedState||(e.flags|=4),typeof a.getSnapshotBeforeUpdate!=="function"||n===A.memoizedProps&&C===A.memoizedState||(e.flags|=1024),e.memoizedProps=r,e.memoizedState=E),a.props=r,a.state=E,a.context=o,r=s):(typeof a.componentDidUpdate!=="function"||n===A.memoizedProps&&C===A.memoizedState||(e.flags|=4),typeof a.getSnapshotBeforeUpdate!=="function"||n===A.memoizedProps&&C===A.memoizedState||(e.flags|=1024),r=!1)}return upA(A,e,t,r,u,i)}function upA(A,e,t,r,i,u){f3e(A,e);var a=(e.flags&128)!==0;if(!r&&!a)return i&&mpe(e,t,!1),Xh(A,e,u);r=e.stateNode,D0r.current=e;var n=a&&typeof t.getDerivedStateFromError!=="function"?null:r.render();return e.flags|=1,A!==null&&a?(e.child=v5(e,A.child,null,u),e.child=v5(e,null,n,u)):Ws(A,e,n,u),e.memoizedState=r.state,i&&mpe(e,t,!0),e.child}function m3e(A){var e=A.stateNode;e.pendingContext?fpe(A,e.pendingContext,e.pendingContext!==e.context):e.context&&fpe(A,e.context,!1),KpA(A,e.containerInfo)}function Tpe(A,e,t,r,i){return b5(),UpA(i),e.flags|=256,Ws(A,e,t,r),e.child}var apA={dehydrated:null,treeContext:null,retryLane:0};function npA(A){return{baseLanes:A,cachePool:null,transitions:null}}function D3e(A,e,t){var r=e.pendingProps,i=Ya.current,u=!1,a=(e.flags&128)!==0,n;if((n=a)||(n=A!==null&&A.memoizedState===null?!1:(i&2)!==0),n)u=!0,e.flags&=-129;else if(A===null||A.memoizedState!==null)i|=1;if(Vu(Ya,i&1),A===null){if($1A(e),A=e.memoizedState,A!==null&&(A=A.dehydrated,A!==null))return(e.mode&1)===0?e.lanes=1:A.data==="$!"?e.lanes=8:e.lanes=1073741824,null;return a=r.children,A=r.fallback,u?(r=e.mode,u=e.child,a={mode:"hidden",children:a},(r&1)===0&&u!==null?(u.childLanes=0,u.pendingProps=a):u=kz(a,r,0,null),A=U2(A,r,t,null),u.return=e,A.return=e,u.sibling=A,e.child=u,e.child.memoizedState=npA(t),e.memoizedState=apA,A):ZpA(e,a)}if(i=A.memoizedState,i!==null&&(n=i.dehydrated,n!==null))return y0r(A,e,a,r,n,i,t);if(u){u=r.fallback,a=e.mode,i=A.child,n=i.sibling;var o={mode:"hidden",children:r.children};return(a&1)===0&&e.child!==i?(r=e.child,r.childLanes=0,r.pendingProps=o,e.deletions=null):(r=vp(i,o),r.subtreeFlags=i.subtreeFlags&14680064),n!==null?u=vp(n,u):(u=U2(u,a,t,null),u.flags|=2),u.return=e,r.return=e,r.sibling=u,e.child=r,r=u,u=e.child,a=A.child.memoizedState,a=a===null?npA(t):{baseLanes:a.baseLanes|t,cachePool:null,transitions:a.transitions},u.memoizedState=a,u.childLanes=A.childLanes&~t,e.memoizedState=apA,r}return u=A.child,A=u.sibling,r=vp(u,{mode:"visible",children:r.children}),(e.mode&1)===0&&(r.lanes=t),r.return=e,r.sibling=null,A!==null&&(t=e.deletions,t===null?(e.deletions=[A],e.flags|=16):t.push(A)),e.child=r,e.memoizedState=null,r}function ZpA(A,e){return e=kz({mode:"visible",children:e},A.mode,0,null),e.return=A,A.child=e}function Lq(A,e,t,r){return r!==null&&UpA(r),v5(e,A.child,null,t),A=ZpA(e,e.pendingProps.children),A.flags|=2,e.memoizedState=null,A}function y0r(A,e,t,r,i,u,a){if(t){if(e.flags&256)return e.flags&=-257,r=Q1A(Error(dt(422))),Lq(A,e,a,r);if(e.memoizedState!==null)return e.child=A.child,e.flags|=128,null;return u=r.fallback,i=e.mode,r=kz({mode:"visible",children:r.children},i,0,null),u=U2(u,i,a,null),u.flags|=2,r.return=e,u.return=e,r.sibling=u,e.child=r,(e.mode&1)!==0&&v5(e,A.child,null,a),e.child.memoizedState=npA(a),e.memoizedState=apA,u}if((e.mode&1)===0)return Lq(A,e,a,null);if(i.data==="$!"){if(r=i.nextSibling&&i.nextSibling.dataset,r)var n=r.dgst;return r=n,u=Error(dt(419)),r=Q1A(u,r,void 0),Lq(A,e,a,r)}if(n=(a&A.childLanes)!==0,Kl||n){if(r=Wo,r!==null){switch(a&-a){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}i=(i&(r.suspendedLanes|a))!==0?0:i,i!==0&&i!==u.retryLane&&(u.retryLane=i,jh(A,i),xB(r,A,i,-1))}return AfA(),r=Q1A(Error(dt(421))),Lq(A,e,a,r)}if(i.data==="$?")return e.flags|=128,e.child=A.child,e=M0r.bind(null,A),i._reactRetry=e,null;return A=u.treeContext,Ug=yp(i.nextSibling),Mg=e,ka=!0,vB=null,A!==null&&(_c[Wc++]=zh,_c[Wc++]=Zh,_c[Wc++]=T2,zh=A.id,Zh=A.overflow,T2=e),e=ZpA(e,r.children),e.flags|=4096,e}function Ype(A,e,t){A.lanes|=e;var r=A.alternate;r!==null&&(r.lanes|=e),ApA(A.return,e,t)}function p1A(A,e,t,r,i){var u=A.memoizedState;u===null?A.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:r,tail:t,tailMode:i}:(u.isBackwards=e,u.rendering=null,u.renderingStartTime=0,u.last=r,u.tail=t,u.tailMode=i)}function y3e(A,e,t){var r=e.pendingProps,i=r.revealOrder,u=r.tail;if(Ws(A,e,r.children,t),r=Ya.current,(r&2)!==0)r=r&1|2,e.flags|=128;else{if(A!==null&&(A.flags&128)!==0)A:for(A=e.child;A!==null;){if(A.tag===13)A.memoizedState!==null&&Ype(A,t,e);else if(A.tag===19)Ype(A,t,e);else if(A.child!==null){A.child.return=A,A=A.child;continue}if(A===e)break A;for(;A.sibling===null;){if(A.return===null||A.return===e)break A;A=A.return}A.sibling.return=A.return,A=A.sibling}r&=1}if(Vu(Ya,r),(e.mode&1)===0)e.memoizedState=null;else switch(i){case"forwards":t=e.child;for(i=null;t!==null;)A=t.alternate,A!==null&&oz(A)===null&&(i=t),t=t.sibling;t=i,t===null?(i=e.child,e.child=null):(i=t.sibling,t.sibling=null),p1A(e,!1,i,t,u);break;case"backwards":t=null,i=e.child;for(e.child=null;i!==null;){if(A=i.alternate,A!==null&&oz(A)===null){e.child=i;break}A=i.sibling,i.sibling=t,t=i,i=A}p1A(e,!0,t,null,u);break;case"together":p1A(e,!1,null,null,void 0);break;default:e.memoizedState=null}return e.child}function Jq(A,e){(e.mode&1)===0&&A!==null&&(A.alternate=null,e.alternate=null,e.flags|=2)}function Xh(A,e,t){if(A!==null&&(e.dependencies=A.dependencies),H2|=e.lanes,(t&e.childLanes)===0)return null;if(A!==null&&e.child!==A.child)throw Error(dt(153));if(e.child!==null){A=e.child,t=vp(A,A.pendingProps),e.child=t;for(t.return=e;A.sibling!==null;)A=A.sibling,t=t.sibling=vp(A,A.pendingProps),t.return=e;t.sibling=null}return e.child}function w0r(A,e,t){switch(e.tag){case 3:m3e(e),b5();break;case 5:Vfe(e);break;case 1:Ol(e.type)&&tz(e);break;case 4:KpA(e,e.stateNode.containerInfo);break;case 10:var r=e.type._context,i=e.memoizedProps.value;Vu(uz,r._currentValue),r._currentValue=i;break;case 13:if(r=e.memoizedState,r!==null){if(r.dehydrated!==null)return Vu(Ya,Ya.current&1),e.flags|=128,null;if((t&e.child.childLanes)!==0)return D3e(A,e,t);return Vu(Ya,Ya.current&1),A=Xh(A,e,t),A!==null?A.sibling:null}Vu(Ya,Ya.current&1);break;case 19:if(r=(t&e.childLanes)!==0,(A.flags&128)!==0){if(r)return y3e(A,e,t);e.flags|=128}if(i=e.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),Vu(Ya,Ya.current),r)break;else return null;case 22:case 23:return e.lanes=0,p3e(A,e,t)}return Xh(A,e,t)}var w3e,opA,b3e,v3e;w3e=function(A,e){for(var t=e.child;t!==null;){if(t.tag===5||t.tag===6)A.appendChild(t.stateNode);else if(t.tag!==4&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return;t=t.return}t.sibling.return=t.return,t=t.sibling}};opA=function(){};b3e=function(A,e,t,r){var i=A.memoizedProps;if(i!==r){A=e.stateNode,L2(Md.current);var u=null;switch(t){case"input":i=k1A(A,i),r=k1A(A,r),u=[];break;case"select":i=Ka({},i,{value:void 0}),r=Ka({},r,{value:void 0}),u=[];break;case"textarea":i=S1A(A,i),r=S1A(A,r),u=[];break;default:typeof i.onClick!=="function"&&typeof r.onClick==="function"&&(A.onclick=Az)}R1A(t,r);var a;t=null;for(s in i)if(!r.hasOwnProperty(s)&&i.hasOwnProperty(s)&&i[s]!=null)if(s==="style"){var n=i[s];for(a in n)n.hasOwnProperty(a)&&(t||(t={}),t[a]="")}else s!=="dangerouslySetInnerHTML"&&s!=="children"&&s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(iL.hasOwnProperty(s)?u||(u=[]):(u=u||[]).push(s,null));for(s in r){var o=r[s];if(n=i!=null?i[s]:void 0,r.hasOwnProperty(s)&&o!==n&&(o!=null||n!=null))if(s==="style")if(n){for(a in n)!n.hasOwnProperty(a)||o&&o.hasOwnProperty(a)||(t||(t={}),t[a]="");for(a in o)o.hasOwnProperty(a)&&n[a]!==o[a]&&(t||(t={}),t[a]=o[a])}else t||(u||(u=[]),u.push(s,t)),t=o;else s==="dangerouslySetInnerHTML"?(o=o?o.__html:void 0,n=n?n.__html:void 0,o!=null&&n!==o&&(u=u||[]).push(s,o)):s==="children"?typeof o!=="string"&&typeof o!=="number"||(u=u||[]).push(s,""+o):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&(iL.hasOwnProperty(s)?(o!=null&&s==="onScroll"&&sa("scroll",A),u||n===o||(u=[])):(u=u||[]).push(s,o))}t&&(u=u||[]).push("style",t);var s=u;if(e.updateQueue=s)e.flags|=4}};v3e=function(A,e,t,r){t!==r&&(e.flags|=4)};function TS(A,e){if(!ka)switch(A.tailMode){case"hidden":e=A.tail;for(var t=null;e!==null;)e.alternate!==null&&(t=e),e=e.sibling;t===null?A.tail=null:t.sibling=null;break;case"collapsed":t=A.tail;for(var r=null;t!==null;)t.alternate!==null&&(r=t),t=t.sibling;r===null?e||A.tail===null?A.tail=null:A.tail.sibling=null:r.sibling=null}}function As(A){var e=A.alternate!==null&&A.alternate.child===A.child,t=0,r=0;if(e)for(var i=A.child;i!==null;)t|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=A,i=i.sibling;else for(i=A.child;i!==null;)t|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=A,i=i.sibling;return A.subtreeFlags|=r,A.childLanes=t,e}function b0r(A,e,t){var r=e.pendingProps;switch(GpA(e),e.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return As(e),null;case 1:return Ol(e.type)&&ez(),As(e),null;case 3:if(r=e.stateNode,k5(),la(Jl),la(ts),OpA(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),A===null||A.child===null)xq(e)?e.flags|=4:A===null||A.memoizedState.isDehydrated&&(e.flags&256)===0||(e.flags|=1024,vB!==null&&(dpA(vB),vB=null));return opA(A,e),As(e),null;case 5:JpA(e);var i=L2(EL.current);if(t=e.type,A!==null&&e.stateNode!=null)b3e(A,e,t,r,i),A.ref!==e.ref&&(e.flags|=512,e.flags|=2097152);else{if(!r){if(e.stateNode===null)throw Error(dt(166));return As(e),null}if(A=L2(Md.current),xq(e)){r=e.stateNode,t=e.type;var u=e.memoizedProps;switch(r[Gd]=e,r[CL]=u,A=(e.mode&1)!==0,t){case"dialog":sa("cancel",r),sa("close",r);break;case"iframe":case"object":case"embed":sa("load",r);break;case"video":case"audio":for(i=0;i<qS.length;i++)sa(qS[i],r);break;case"source":sa("error",r);break;case"img":case"image":case"link":sa("error",r),sa("load",r);break;case"details":sa("toggle",r);break;case"input":Z1e(r,u),sa("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!u.multiple},sa("invalid",r);break;case"textarea":j1e(r,u),sa("invalid",r)}R1A(t,u),i=null;for(var a in u)if(u.hasOwnProperty(a)){var n=u[a];a==="children"?typeof n==="string"?r.textContent!==n&&(u.suppressHydrationWarning!==!0&&Fq(r.textContent,n,A),i=["children",n]):typeof n==="number"&&r.textContent!==""+n&&(u.suppressHydrationWarning!==!0&&Fq(r.textContent,n,A),i=["children",""+n]):iL.hasOwnProperty(a)&&n!=null&&a==="onScroll"&&sa("scroll",r)}switch(t){case"input":fq(r),V1e(r,u,!0);break;case"textarea":fq(r),X1e(r);break;case"select":case"option":break;default:typeof u.onClick==="function"&&(r.onclick=Az)}r=i,e.updateQueue=r,r!==null&&(e.flags|=4)}else{a=i.nodeType===9?i:i.ownerDocument,A==="http://www.w3.org/1999/xhtml"&&(A=rfe(t)),A==="http://www.w3.org/1999/xhtml"?t==="script"?(A=a.createElement("div"),A.innerHTML="<script><\/script>",A=A.removeChild(A.firstChild)):typeof r.is==="string"?A=a.createElement(t,{is:r.is}):(A=a.createElement(t),t==="select"&&(a=A,r.multiple?a.multiple=!0:r.size&&(a.size=r.size))):A=a.createElementNS(A,t),A[Gd]=e,A[CL]=r,w3e(A,e,!1,!1),e.stateNode=A;A:{switch(a=N1A(t,r),t){case"dialog":sa("cancel",A),sa("close",A),i=r;break;case"iframe":case"object":case"embed":sa("load",A),i=r;break;case"video":case"audio":for(i=0;i<qS.length;i++)sa(qS[i],A);i=r;break;case"source":sa("error",A),i=r;break;case"img":case"image":case"link":sa("error",A),sa("load",A),i=r;break;case"details":sa("toggle",A),i=r;break;case"input":Z1e(A,r),i=k1A(A,r),sa("invalid",A);break;case"option":i=r;break;case"select":A._wrapperState={wasMultiple:!!r.multiple},i=Ka({},r,{value:void 0}),sa("invalid",A);break;case"textarea":j1e(A,r),i=S1A(A,r),sa("invalid",A);break;default:i=r}R1A(t,i),n=i;for(u in n)if(n.hasOwnProperty(u)){var o=n[u];u==="style"?afe(A,o):u==="dangerouslySetInnerHTML"?(o=o?o.__html:void 0,o!=null&&ife(A,o)):u==="children"?typeof o==="string"?(t!=="textarea"||o!=="")&&uL(A,o):typeof o==="number"&&uL(A,""+o):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(iL.hasOwnProperty(u)?o!=null&&u==="onScroll"&&sa("scroll",A):o!=null&&QpA(A,u,o,a))}switch(t){case"input":fq(A),V1e(A,r,!1);break;case"textarea":fq(A),X1e(A);break;case"option":r.value!=null&&A.setAttribute("value",""+kp(r.value));break;case"select":A.multiple=!!r.multiple,u=r.value,u!=null?h5(A,!!r.multiple,u,!1):r.defaultValue!=null&&h5(A,!!r.multiple,r.defaultValue,!0);break;default:typeof i.onClick==="function"&&(A.onclick=Az)}switch(t){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break A;case"img":r=!0;break A;default:r=!1}}r&&(e.flags|=4)}e.ref!==null&&(e.flags|=512,e.flags|=2097152)}return As(e),null;case 6:if(A&&e.stateNode!=null)v3e(A,e,A.memoizedProps,r);else{if(typeof r!=="string"&&e.stateNode===null)throw Error(dt(166));if(t=L2(EL.current),L2(Md.current),xq(e)){if(r=e.stateNode,t=e.memoizedProps,r[Gd]=e,u=r.nodeValue!==t){if(A=Mg,A!==null)switch(A.tag){case 3:Fq(r.nodeValue,t,(A.mode&1)!==0);break;case 5:A.memoizedProps.suppressHydrationWarning!==!0&&Fq(r.nodeValue,t,(A.mode&1)!==0)}}u&&(e.flags|=4)}else r=(t.nodeType===9?t:t.ownerDocument).createTextNode(r),r[Gd]=e,e.stateNode=r}return As(e),null;case 13:if(la(Ya),r=e.memoizedState,A===null||A.memoizedState!==null&&A.memoizedState.dehydrated!==null){if(ka&&Ug!==null&&(e.mode&1)!==0&&(e.flags&128)===0)Pfe(),b5(),e.flags|=98560,u=!1;else if(u=xq(e),r!==null&&r.dehydrated!==null){if(A===null){if(!u)throw Error(dt(318));if(u=e.memoizedState,u=u!==null?u.dehydrated:null,!u)throw Error(dt(317));u[Gd]=e}else b5(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;As(e),u=!1}else vB!==null&&(dpA(vB),vB=null),u=!0;if(!u)return e.flags&65536?e:null}if((e.flags&128)!==0)return e.lanes=t,e;return r=r!==null,r!==(A!==null&&A.memoizedState!==null)&&r&&(e.child.flags|=8192,(e.mode&1)!==0&&(A===null||(Ya.current&1)!==0?fo===0&&(fo=3):AfA())),e.updateQueue!==null&&(e.flags|=4),As(e),null;case 4:return k5(),opA(A,e),A===null&&u0r(e.stateNode.containerInfo),As(e),null;case 10:return YpA(e.type._context),As(e),null;case 17:return Ol(e.type)&&ez(),As(e),null;case 19:if(la(Ya),u=e.memoizedState,u===null)return As(e),null;if(r=(e.flags&128)!==0,a=u.rendering,a===null)if(r)TS(u,!1);else{if(fo!==0||A!==null&&(A.flags&128)!==0)for(A=e.child;A!==null;){if(a=oz(A),a!==null){e.flags|=128,TS(u,!1),r=a.updateQueue,r!==null&&(e.updateQueue=r,e.flags|=4),e.subtreeFlags=0,r=t;for(t=e.child;t!==null;)u=t,A=r,u.flags&=14680066,a=u.alternate,a===null?(u.childLanes=0,u.lanes=A,u.child=null,u.subtreeFlags=0,u.memoizedProps=null,u.memoizedState=null,u.updateQueue=null,u.dependencies=null,u.stateNode=null):(u.childLanes=a.childLanes,u.lanes=a.lanes,u.child=a.child,u.subtreeFlags=0,u.deletions=null,u.memoizedProps=a.memoizedProps,u.memoizedState=a.memoizedState,u.updateQueue=a.updateQueue,u.type=a.type,A=a.dependencies,u.dependencies=A===null?null:{lanes:A.lanes,firstContext:A.firstContext}),t=t.sibling;return Vu(Ya,Ya.current&1|2),e.child}A=A.sibling}u.tail!==null&&wn()>x5&&(e.flags|=128,r=!0,TS(u,!1),e.lanes=4194304)}else{if(!r)if(A=oz(a),A!==null){if(e.flags|=128,r=!0,t=A.updateQueue,t!==null&&(e.updateQueue=t,e.flags|=4),TS(u,!0),u.tail===null&&u.tailMode==="hidden"&&!a.alternate&&!ka)return As(e),null}else 2*wn()-u.renderingStartTime>x5&&t!==1073741824&&(e.flags|=128,r=!0,TS(u,!1),e.lanes=4194304);u.isBackwards?(a.sibling=e.child,e.child=a):(t=u.last,t!==null?t.sibling=a:e.child=a,u.last=a)}if(u.tail!==null)return e=u.tail,u.rendering=e,u.tail=e.sibling,u.renderingStartTime=wn(),e.sibling=null,t=Ya.current,Vu(Ya,r?t&1|2:t&1),e;return As(e),null;case 22:case 23:return $pA(),r=e.memoizedState!==null,A!==null&&A.memoizedState!==null!==r&&(e.flags|=8192),r&&(e.mode&1)!==0?(Gg&1073741824)!==0&&(As(e),e.subtreeFlags&6&&(e.flags|=8192)):As(e),null;case 24:return null;case 25:return null}throw Error(dt(156,e.tag))}function v0r(A,e){switch(GpA(e),e.tag){case 1:return Ol(e.type)&&ez(),A=e.flags,A&65536?(e.flags=A&-65537|128,e):null;case 3:return k5(),la(Jl),la(ts),OpA(),A=e.flags,(A&65536)!==0&&(A&128)===0?(e.flags=A&-65537|128,e):null;case 5:return JpA(e),null;case 13:if(la(Ya),A=e.memoizedState,A!==null&&A.dehydrated!==null){if(e.alternate===null)throw Error(dt(340));b5()}return A=e.flags,A&65536?(e.flags=A&-65537|128,e):null;case 19:return la(Ya),null;case 4:return k5(),null;case 10:return YpA(e.type._context),null;case 22:case 23:return $pA(),null;case 24:return null;default:return null}}var Rq=!1,es=!1,k0r=typeof WeakSet==="function"?WeakSet:Set,Tt=null;function d5(A,e){var t=A.ref;if(t!==null)if(typeof t==="function")try{t(null)}catch(r){an(A,e,r)}else t.current=null}function spA(A,e,t){try{t()}catch(r){an(A,e,r)}}var Hpe=!1;function F0r(A,e){if(W1A=jq,A=Sfe(),LpA(A)){if("selectionStart"in A)var t={start:A.selectionStart,end:A.selectionEnd};else A:{t=(t=A.ownerDocument)&&t.defaultView||window;var r=t.getSelection&&t.getSelection();if(r&&r.rangeCount!==0){t=r.anchorNode;var i=r.anchorOffset,u=r.focusNode;r=r.focusOffset;try{t.nodeType,u.nodeType}catch(m){t=null;break A}var a=0,n=-1,o=-1,s=0,l=0,g=A,C=null;e:for(;;){for(var B;;){if(g!==t||i!==0&&g.nodeType!==3||(n=a+i),g!==u||r!==0&&g.nodeType!==3||(o=a+r),g.nodeType===3&&(a+=g.nodeValue.length),(B=g.firstChild)===null)break;C=g,g=B}for(;;){if(g===A)break e;if(C===t&&++s===i&&(n=a),C===u&&++l===r&&(o=a),(B=g.nextSibling)!==null)break;g=C,C=g.parentNode}g=B}t=n===-1||o===-1?null:{start:n,end:o}}else t=null}t=t||{start:0,end:0}}else t=null;q1A={focusedElem:A,selectionRange:t},jq=!1;for(Tt=e;Tt!==null;)if(e=Tt,A=e.child,(e.subtreeFlags&1028)!==0&&A!==null)A.return=e,Tt=A;else for(;Tt!==null;){e=Tt;try{var E=e.alternate;if((e.flags&1024)!==0)switch(e.tag){case 0:case 11:case 15:break;case 1:if(E!==null){var d=E.memoizedProps,I=E.memoizedState,h=e.stateNode,Q=h.getSnapshotBeforeUpdate(e.elementType===e.type?d:wB(e.type,d),I);h.__reactInternalSnapshotBeforeUpdate=Q}break;case 3:var p=e.stateNode.containerInfo;p.nodeType===1?p.textContent="":p.nodeType===9&&p.documentElement&&p.removeChild(p.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(dt(163))}}catch(m){an(e,e.return,m)}if(A=e.sibling,A!==null){A.return=e.return,Tt=A;break}Tt=e.return}return E=Hpe,Hpe=!1,E}function eL(A,e,t){var r=e.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&A)===A){var u=i.destroy;i.destroy=void 0,u!==void 0&&spA(e,t,u)}i=i.next}while(i!==r)}}function wz(A,e){if(e=e.updateQueue,e=e!==null?e.lastEffect:null,e!==null){var t=e=e.next;do{if((t.tag&A)===A){var r=t.create;t.destroy=r()}t=t.next}while(t!==e)}}function lpA(A){var e=A.ref;if(e!==null){var t=A.stateNode;switch(A.tag){case 5:A=t;break;default:A=t}typeof e==="function"?e(A):e.current=A}}function k3e(A){var e=A.alternate;e!==null&&(A.alternate=null,k3e(e)),A.child=null,A.deletions=null,A.sibling=null,A.tag===5&&(e=A.stateNode,e!==null&&(delete e[Gd],delete e[CL],delete e[V1A],delete e[g0r],delete e[c0r])),A.stateNode=null,A.return=null,A.dependencies=null,A.memoizedProps=null,A.memoizedState=null,A.pendingProps=null,A.stateNode=null,A.updateQueue=null}function F3e(A){return A.tag===5||A.tag===3||A.tag===4}function Kpe(A){A:for(;;){for(;A.sibling===null;){if(A.return===null||F3e(A.return))return null;A=A.return}A.sibling.return=A.return;for(A=A.sibling;A.tag!==5&&A.tag!==6&&A.tag!==18;){if(A.flags&2)continue A;if(A.child===null||A.tag===4)continue A;else A.child.return=A,A=A.child}if(!(A.flags&2))return A.stateNode}}function gpA(A,e,t){var r=A.tag;if(r===5||r===6)A=A.stateNode,e?t.nodeType===8?t.parentNode.insertBefore(A,e):t.insertBefore(A,e):(t.nodeType===8?(e=t.parentNode,e.insertBefore(A,t)):(e=t,e.appendChild(A)),t=t._reactRootContainer,t!==null&&t!==void 0||e.onclick!==null||(e.onclick=Az));else if(r!==4&&(A=A.child,A!==null))for(gpA(A,e,t),A=A.sibling;A!==null;)gpA(A,e,t),A=A.sibling}function cpA(A,e,t){var r=A.tag;if(r===5||r===6)A=A.stateNode,e?t.insertBefore(A,e):t.appendChild(A);else if(r!==4&&(A=A.child,A!==null))for(cpA(A,e,t),A=A.sibling;A!==null;)cpA(A,e,t),A=A.sibling}var D0=null,bB=!1;function Bp(A,e,t){for(t=t.child;t!==null;)x3e(A,e,t),t=t.sibling}function x3e(A,e,t){if(Ud&&typeof Ud.onCommitFiberUnmount==="function")try{Ud.onCommitFiberUnmount(Ez,t)}catch(n){}switch(t.tag){case 5:es||d5(t,e);case 6:var r=D0,i=bB;D0=null,Bp(A,e,t),D0=r,bB=i,D0!==null&&(bB?(A=D0,t=t.stateNode,A.nodeType===8?A.parentNode.removeChild(t):A.removeChild(t)):D0.removeChild(t.stateNode));break;case 18:D0!==null&&(bB?(A=D0,t=t.stateNode,A.nodeType===8?C1A(A.parentNode,t):A.nodeType===1&&C1A(A,t),sL(A)):C1A(D0,t.stateNode));break;case 4:r=D0,i=bB,D0=t.stateNode.containerInfo,bB=!0,Bp(A,e,t),D0=r,bB=i;break;case 0:case 11:case 14:case 15:if(!es&&(r=t.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var u=i,a=u.destroy;u=u.tag,a!==void 0&&((u&2)!==0?spA(t,e,a):(u&4)!==0&&spA(t,e,a)),i=i.next}while(i!==r)}Bp(A,e,t);break;case 1:if(!es&&(d5(t,e),r=t.stateNode,typeof r.componentWillUnmount==="function"))try{r.props=t.memoizedProps,r.state=t.memoizedState,r.componentWillUnmount()}catch(n){an(t,e,n)}Bp(A,e,t);break;case 21:Bp(A,e,t);break;case 22:t.mode&1?(es=(r=es)||t.memoizedState!==null,Bp(A,e,t),es=r):Bp(A,e,t);break;default:Bp(A,e,t)}}function Jpe(A){var e=A.updateQueue;if(e!==null){A.updateQueue=null;var t=A.stateNode;t===null&&(t=A.stateNode=new k0r),e.forEach(function(r){var i=T0r.bind(null,A,r);t.has(r)||(t.add(r),r.then(i,i))})}}function yB(A,e){var t=e.deletions;if(t!==null)for(var r=0;r<t.length;r++){var i=t[r];try{var u=A,a=e,n=a;A:for(;n!==null;){switch(n.tag){case 5:D0=n.stateNode,bB=!1;break A;case 3:D0=n.stateNode.containerInfo,bB=!0;break A;case 4:D0=n.stateNode.containerInfo,bB=!0;break A}n=n.return}if(D0===null)throw Error(dt(160));x3e(u,a,i),D0=null,bB=!1;var o=i.alternate;o!==null&&(o.return=null),i.return=null}catch(s){an(i,e,s)}}if(e.subtreeFlags&12854)for(e=e.child;e!==null;)S3e(e,A),e=e.sibling}function S3e(A,e){var{alternate:t,flags:r}=A;switch(A.tag){case 0:case 11:case 14:case 15:if(yB(e,A),Rd(A),r&4){try{eL(3,A,A.return),wz(3,A)}catch(d){an(A,A.return,d)}try{eL(5,A,A.return)}catch(d){an(A,A.return,d)}}break;case 1:yB(e,A),Rd(A),r&512&&t!==null&&d5(t,t.return);break;case 5:if(yB(e,A),Rd(A),r&512&&t!==null&&d5(t,t.return),A.flags&32){var i=A.stateNode;try{uL(i,"")}catch(d){an(A,A.return,d)}}if(r&4&&(i=A.stateNode,i!=null)){var u=A.memoizedProps,a=t!==null?t.memoizedProps:u,{type:n,updateQueue:o}=A;if(A.updateQueue=null,o!==null)try{n==="input"&&u.type==="radio"&&u.name!=null&&efe(i,u),N1A(n,a);var s=N1A(n,u);for(a=0;a<o.length;a+=2){var l=o[a],g=o[a+1];l==="style"?afe(i,g):l==="dangerouslySetInnerHTML"?ife(i,g):l==="children"?uL(i,g):QpA(i,l,g,s)}switch(n){case"input":F1A(i,u);break;case"textarea":tfe(i,u);break;case"select":var C=i._wrapperState.wasMultiple;i._wrapperState.wasMultiple=!!u.multiple;var B=u.value;B!=null?h5(i,!!u.multiple,B,!1):C!==!!u.multiple&&(u.defaultValue!=null?h5(i,!!u.multiple,u.defaultValue,!0):h5(i,!!u.multiple,u.multiple?[]:"",!1))}i[CL]=u}catch(d){an(A,A.return,d)}}break;case 6:if(yB(e,A),Rd(A),r&4){if(A.stateNode===null)throw Error(dt(162));i=A.stateNode,u=A.memoizedProps;try{i.nodeValue=u}catch(d){an(A,A.return,d)}}break;case 3:if(yB(e,A),Rd(A),r&4&&t!==null&&t.memoizedState.isDehydrated)try{sL(e.containerInfo)}catch(d){an(A,A.return,d)}break;case 4:yB(e,A),Rd(A);break;case 13:yB(e,A),Rd(A),i=A.child,i.flags&8192&&(u=i.memoizedState!==null,i.stateNode.isHidden=u,!u||i.alternate!==null&&i.alternate.memoizedState!==null||(XpA=wn())),r&4&&Jpe(A);break;case 22:if(l=t!==null&&t.memoizedState!==null,A.mode&1?(es=(s=es)||l,yB(e,A),es=s):yB(e,A),Rd(A),r&8192){if(s=A.memoizedState!==null,(A.stateNode.isHidden=s)&&!l&&(A.mode&1)!==0)for(Tt=A,l=A.child;l!==null;){for(g=Tt=l;Tt!==null;){switch(C=Tt,B=C.child,C.tag){case 0:case 11:case 14:case 15:eL(4,C,C.return);break;case 1:d5(C,C.return);var E=C.stateNode;if(typeof E.componentWillUnmount==="function"){r=C,t=C.return;try{e=r,E.props=e.memoizedProps,E.state=e.memoizedState,E.componentWillUnmount()}catch(d){an(r,t,d)}}break;case 5:d5(C,C.return);break;case 22:if(C.memoizedState!==null){Ppe(g);continue}}B!==null?(B.return=C,Tt=B):Ppe(g)}l=l.sibling}A:for(l=null,g=A;;){if(g.tag===5){if(l===null){l=g;try{i=g.stateNode,s?(u=i.style,typeof u.setProperty==="function"?u.setProperty("display","none","important"):u.display="none"):(n=g.stateNode,o=g.memoizedProps.style,a=o!==void 0&&o!==null&&o.hasOwnProperty("display")?o.display:null,n.style.display=ufe("display",a))}catch(d){an(A,A.return,d)}}}else if(g.tag===6){if(l===null)try{g.stateNode.nodeValue=s?"":g.memoizedProps}catch(d){an(A,A.return,d)}}else if((g.tag!==22&&g.tag!==23||g.memoizedState===null||g===A)&&g.child!==null){g.child.return=g,g=g.child;continue}if(g===A)break A;for(;g.sibling===null;){if(g.return===null||g.return===A)break A;l===g&&(l=null),g=g.return}l===g&&(l=null),g.sibling.return=g.return,g=g.sibling}}break;case 19:yB(e,A),Rd(A),r&4&&Jpe(A);break;case 21:break;default:yB(e,A),Rd(A)}}function Rd(A){var e=A.flags;if(e&2){try{A:{for(var t=A.return;t!==null;){if(F3e(t)){var r=t;break A}t=t.return}throw Error(dt(160))}switch(r.tag){case 5:var i=r.stateNode;r.flags&32&&(uL(i,""),r.flags&=-33);var u=Kpe(A);cpA(A,u,i);break;case 3:case 4:var a=r.stateNode.containerInfo,n=Kpe(A);gpA(A,n,a);break;default:throw Error(dt(161))}}catch(o){an(A,A.return,o)}A.flags&=-3}e&4096&&(A.flags&=-4097)}function x0r(A,e,t){Tt=A,L3e(A,e,t)}function L3e(A,e,t){for(var r=(A.mode&1)!==0;Tt!==null;){var i=Tt,u=i.child;if(i.tag===22&&r){var a=i.memoizedState!==null||Rq;if(!a){var n=i.alternate,o=n!==null&&n.memoizedState!==null||es;n=Rq;var s=es;if(Rq=a,(es=o)&&!s)for(Tt=i;Tt!==null;)a=Tt,o=a.child,a.tag===22&&a.memoizedState!==null?_pe(i):o!==null?(o.return=a,Tt=o):_pe(i);for(;u!==null;)Tt=u,L3e(u,e,t),u=u.sibling;Tt=i,Rq=n,es=s}Ope(A,e,t)}else(i.subtreeFlags&8772)!==0&&u!==null?(u.return=i,Tt=u):Ope(A,e,t)}}function Ope(A){for(;Tt!==null;){var e=Tt;if((e.flags&8772)!==0){var t=e.alternate;try{if((e.flags&8772)!==0)switch(e.tag){case 0:case 11:case 15:es||wz(5,e);break;case 1:var r=e.stateNode;if(e.flags&4&&!es)if(t===null)r.componentDidMount();else{var i=e.elementType===e.type?t.memoizedProps:wB(e.type,t.memoizedProps);r.componentDidUpdate(i,t.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var u=e.updateQueue;u!==null&&vpe(e,u,r);break;case 3:var a=e.updateQueue;if(a!==null){if(t=null,e.child!==null)switch(e.child.tag){case 5:t=e.child.stateNode;break;case 1:t=e.child.stateNode}vpe(e,a,t)}break;case 5:var n=e.stateNode;if(t===null&&e.flags&4){t=n;var o=e.memoizedProps;switch(e.type){case"button":case"input":case"select":case"textarea":o.autoFocus&&t.focus();break;case"img":o.src&&(t.src=o.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(e.memoizedState===null){var s=e.alternate;if(s!==null){var l=s.memoizedState;if(l!==null){var g=l.dehydrated;g!==null&&sL(g)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(dt(163))}es||e.flags&512&&lpA(e)}catch(C){an(e,e.return,C)}}if(e===A){Tt=null;break}if(t=e.sibling,t!==null){t.return=e.return,Tt=t;break}Tt=e.return}}function Ppe(A){for(;Tt!==null;){var e=Tt;if(e===A){Tt=null;break}var t=e.sibling;if(t!==null){t.return=e.return,Tt=t;break}Tt=e.return}}function _pe(A){for(;Tt!==null;){var e=Tt;try{switch(e.tag){case 0:case 11:case 15:var t=e.return;try{wz(4,e)}catch(o){an(e,t,o)}break;case 1:var r=e.stateNode;if(typeof r.componentDidMount==="function"){var i=e.return;try{r.componentDidMount()}catch(o){an(e,i,o)}}var u=e.return;try{lpA(e)}catch(o){an(e,u,o)}break;case 5:var a=e.return;try{lpA(e)}catch(o){an(e,a,o)}}}catch(o){an(e,e.return,o)}if(e===A){Tt=null;break}var n=e.sibling;if(n!==null){n.return=e.return,Tt=n;break}Tt=e.return}}var S0r=Math.ceil,{ReactCurrentDispatcher:gz,ReactCurrentOwner:VpA,ReactCurrentBatchConfig:qc}=$h,_i=0,Wo=null,_n=null,y0=0,Gg=0,I5=Sp(0),fo=0,QL=null,H2=0,bz=0,jpA=0,tL=null,Hl=null,XpA=0,x5=1/0,Wh=null,cz=!1,CpA=null,bp=null,Nq=!1,pp=null,Cz=0,rL=0,BpA=null,Oq=-1,Pq=0;function Pl(){return(_i&6)!==0?wn():Oq!==-1?Oq:Oq=wn()}function N2(A){if((A.mode&1)===0)return 1;if((_i&2)!==0&&y0!==0)return y0&-y0;if(B0r.transition!==null)return Pq===0&&(Pq=Efe()),Pq;if(A=mu,A!==0)return A;return A=window.event,A=A===void 0?16:mfe(A.type),A}function xB(A,e,t,r){if(50<rL)throw rL=0,BpA=null,Error(dt(185));if(dz(A,t,r),(_i&2)===0||A!==Wo)A===Wo&&((_i&2)===0&&(bz|=t),fo===4&&hp(A,y0)),Tg(A,r),t===1&&_i===0&&(e.mode&1)===0&&(x5=wn()+500,mz&&Lp())}function Tg(A,e){var t=A.callbackNode;Bor(A,e);var r=Vq(A,A===Wo?y0:0);if(r===0)t!==null&&epe(t),A.callbackNode=null,A.callbackPriority=0;else if(e=r&-r,A.callbackPriority!==e){if(t!=null&&epe(t),e===1)A.tag===0?C0r(Wpe.bind(null,A)):Kfe(Wpe.bind(null,A)),s0r(function(){(_i&6)===0&&Lp()}),t=null;else{switch(dfe(r)){case 1:t=ypA;break;case 4:t=Cfe;break;case 16:t=Zq;break;case 536870912:t=Bfe;break;default:t=Zq}t=K3e(t,R3e.bind(null,A))}A.callbackPriority=e,A.callbackNode=t}}function R3e(A,e){if(Oq=-1,Pq=0,(_i&6)!==0)throw Error(dt(327));var t=A.callbackNode;if(D5()&&A.callbackNode!==t)return null;var r=Vq(A,A===Wo?y0:0);if(r===0)return null;if((r&30)!==0||(r&A.expiredLanes)!==0||e)e=Bz(A,r);else{e=r;var i=_i;_i|=2;var u=U3e();if(Wo!==A||y0!==e)Wh=null,x5=wn()+500,G2(A,e);do try{N0r();break}catch(n){G3e(A,n)}while(1);TpA(),gz.current=u,_i=i,_n!==null?e=0:(Wo=null,y0=0,e=fo)}if(e!==0){if(e===2&&(i=Y1A(A),i!==0&&(r=i,e=EpA(A,i))),e===1)throw t=QL,G2(A,0),hp(A,r),Tg(A,wn()),t;if(e===6)hp(A,r);else{if(i=A.current.alternate,(r&30)===0&&!L0r(i)&&(e=Bz(A,r),e===2&&(u=Y1A(A),u!==0&&(r=u,e=EpA(A,u))),e===1))throw t=QL,G2(A,0),hp(A,r),Tg(A,wn()),t;switch(A.finishedWork=i,A.finishedLanes=r,e){case 0:case 1:throw Error(dt(345));case 2:F2(A,Hl,Wh);break;case 3:if(hp(A,r),(r&130023424)===r&&(e=XpA+500-wn(),10<e)){if(Vq(A,0)!==0)break;if(i=A.suspendedLanes,(i&r)!==r){Pl(),A.pingedLanes|=A.suspendedLanes&i;break}A.timeoutHandle=Z1A(F2.bind(null,A,Hl,Wh),e);break}F2(A,Hl,Wh);break;case 4:if(hp(A,r),(r&4194240)===r)break;e=A.eventTimes;for(i=-1;0<r;){var a=31-FB(r);u=1<<a,a=e[a],a>i&&(i=a),r&=~u}if(r=i,r=wn()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3000>r?3000:4320>r?4320:1960*S0r(r/1960))-r,10<r){A.timeoutHandle=Z1A(F2.bind(null,A,Hl,Wh),r);break}F2(A,Hl,Wh);break;case 5:F2(A,Hl,Wh);break;default:throw Error(dt(329))}}}return Tg(A,wn()),A.callbackNode===t?R3e.bind(null,A):null}function EpA(A,e){var t=tL;return A.current.memoizedState.isDehydrated&&(G2(A,e).flags|=256),A=Bz(A,e),A!==2&&(e=Hl,Hl=t,e!==null&&dpA(e)),A}function dpA(A){Hl===null?Hl=A:Hl.push.apply(Hl,A)}function L0r(A){for(var e=A;;){if(e.flags&16384){var t=e.updateQueue;if(t!==null&&(t=t.stores,t!==null))for(var r=0;r<t.length;r++){var i=t[r],u=i.getSnapshot;i=i.value;try{if(!SB(u(),i))return!1}catch(a){return!1}}}if(t=e.child,e.subtreeFlags&16384&&t!==null)t.return=e,e=t;else{if(e===A)break;for(;e.sibling===null;){if(e.return===null||e.return===A)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}function hp(A,e){e&=~jpA,e&=~bz,A.suspendedLanes|=e,A.pingedLanes&=~e;for(A=A.expirationTimes;0<e;){var t=31-FB(e),r=1<<t;A[t]=-1,e&=~r}}function Wpe(A){if((_i&6)!==0)throw Error(dt(327));D5();var e=Vq(A,0);if((e&1)===0)return Tg(A,wn()),null;var t=Bz(A,e);if(A.tag!==0&&t===2){var r=Y1A(A);r!==0&&(e=r,t=EpA(A,r))}if(t===1)throw t=QL,G2(A,0),hp(A,e),Tg(A,wn()),t;if(t===6)throw Error(dt(345));return A.finishedWork=A.current.alternate,A.finishedLanes=e,F2(A,Hl,Wh),Tg(A,wn()),null}function N3e(A,e){var t=_i;_i|=1;try{return A(e)}finally{_i=t,_i===0&&(x5=wn()+500,mz&&Lp())}}function vz(A){pp!==null&&pp.tag===0&&(_i&6)===0&&D5();var e=_i;_i|=1;var t=qc.transition,r=mu;try{if(qc.transition=null,mu=1,A)return A()}finally{mu=r,qc.transition=t,_i=e,(_i&6)===0&&Lp()}}function $pA(){Gg=I5.current,la(I5)}function G2(A,e){A.finishedWork=null,A.finishedLanes=0;var t=A.timeoutHandle;if(t!==-1&&(A.timeoutHandle=-1,o0r(t)),_n!==null)for(t=_n.return;t!==null;){var r=t;switch(GpA(r),r.tag){case 1:r=r.type.childContextTypes,r!==null&&r!==void 0&&ez();break;case 3:k5(),la(Jl),la(ts),OpA();break;case 5:JpA(r);break;case 4:k5();break;case 13:la(Ya);break;case 19:la(Ya);break;case 10:YpA(r.type._context);break;case 22:case 23:$pA()}t=t.return}if(Wo=A,_n=A=vp(A.current,null),y0=Gg=e,fo=0,QL=null,jpA=bz=H2=0,Hl=tL=null,S2!==null){for(e=0;e<S2.length;e++)if(t=S2[e],r=t.interleaved,r!==null){t.interleaved=null;var i=r.next,u=t.pending;if(u!==null){var a=u.next;u.next=i,r.next=a}t.pending=r}S2=null}return A}function G3e(A,e){do{var t=_n;try{if(TpA(),Hq.current=lz,sz){for(var r=Ha.memoizedState;r!==null;){var i=r.queue;i!==null&&(i.pending=null),r=r.next}sz=!1}if(Y2=0,_o=po=Ha=null,AL=!1,dL=0,VpA.current=null,t===null||t.return===null){fo=1,QL=e,_n=null;break}A:{var u=A,a=t.return,n=t,o=e;if(e=y0,n.flags|=32768,o!==null&&typeof o==="object"&&typeof o.then==="function"){var s=o,l=n,g=l.tag;if((l.mode&1)===0&&(g===0||g===11||g===15)){var C=l.alternate;C?(l.updateQueue=C.updateQueue,l.memoizedState=C.memoizedState,l.lanes=C.lanes):(l.updateQueue=null,l.memoizedState=null)}var B=Rpe(a);if(B!==null){B.flags&=-257,Npe(B,a,n,u,e),B.mode&1&&Lpe(u,s,e),e=B,o=s;var E=e.updateQueue;if(E===null){var d=new Set;d.add(o),e.updateQueue=d}else E.add(o);break A}else{if((e&1)===0){Lpe(u,s,e),AfA();break A}o=Error(dt(426))}}else if(ka&&n.mode&1){var I=Rpe(a);if(I!==null){(I.flags&65536)===0&&(I.flags|=256),Npe(I,a,n,u,e),UpA(F5(o,n));break A}}u=o=F5(o,n),fo!==4&&(fo=2),tL===null?tL=[u]:tL.push(u),u=a;do{switch(u.tag){case 3:u.flags|=65536,e&=-e,u.lanes|=e;var h=I3e(u,o,e);bpe(u,h);break A;case 1:n=o;var Q=u.type,p=u.stateNode;if((u.flags&128)===0&&(typeof Q.getDerivedStateFromError==="function"||p!==null&&typeof p.componentDidCatch==="function"&&(bp===null||!bp.has(p)))){u.flags|=65536,e&=-e,u.lanes|=e;var m=h3e(u,n,e);bpe(u,m);break A}}u=u.return}while(u!==null)}T3e(t)}catch(f){e=f,_n===t&&t!==null&&(_n=t=t.return);continue}break}while(1)}function U3e(){var A=gz.current;return gz.current=lz,A===null?lz:A}function AfA(){if(fo===0||fo===3||fo===2)fo=4;Wo===null||(H2&268435455)===0&&(bz&268435455)===0||hp(Wo,y0)}function Bz(A,e){var t=_i;_i|=2;var r=U3e();if(Wo!==A||y0!==e)Wh=null,G2(A,e);do try{R0r();break}catch(i){G3e(A,i)}while(1);if(TpA(),_i=t,gz.current=r,_n!==null)throw Error(dt(261));return Wo=null,y0=0,fo}function R0r(){for(;_n!==null;)M3e(_n)}function N0r(){for(;_n!==null&&!uor();)M3e(_n)}function M3e(A){var e=H3e(A.alternate,A,Gg);A.memoizedProps=A.pendingProps,e===null?T3e(A):_n=e,VpA.current=null}function T3e(A){var e=A;do{var t=e.alternate;if(A=e.return,(e.flags&32768)===0){if(t=b0r(t,e,Gg),t!==null){_n=t;return}}else{if(t=v0r(t,e),t!==null){t.flags&=32767,_n=t;return}if(A!==null)A.flags|=32768,A.subtreeFlags=0,A.deletions=null;else{fo=6,_n=null;return}}if(e=e.sibling,e!==null){_n=e;return}_n=e=A}while(e!==null);fo===0&&(fo=5)}function F2(A,e,t){var r=mu,i=qc.transition;try{qc.transition=null,mu=1,G0r(A,e,t,r)}finally{qc.transition=i,mu=r}return null}function G0r(A,e,t,r){do D5();while(pp!==null);if((_i&6)!==0)throw Error(dt(327));t=A.finishedWork;var i=A.finishedLanes;if(t===null)return null;if(A.finishedWork=null,A.finishedLanes=0,t===A.current)throw Error(dt(177));A.callbackNode=null,A.callbackPriority=0;var u=t.lanes|t.childLanes;if(Eor(A,u),A===Wo&&(_n=Wo=null,y0=0),(t.subtreeFlags&2064)===0&&(t.flags&2064)===0||Nq||(Nq=!0,K3e(Zq,function(){return D5(),null})),u=(t.flags&15990)!==0,(t.subtreeFlags&15990)!==0||u){u=qc.transition,qc.transition=null;var a=mu;mu=1;var n=_i;_i|=4,VpA.current=null,F0r(A,t),S3e(t,A),t0r(q1A),jq=!!W1A,q1A=W1A=null,A.current=t,x0r(t,A,i),aor(),_i=n,mu=a,qc.transition=u}else A.current=t;if(Nq&&(Nq=!1,pp=A,Cz=i),u=A.pendingLanes,u===0&&(bp=null),sor(t.stateNode,r),Tg(A,wn()),e!==null)for(r=A.onRecoverableError,t=0;t<e.length;t++)i=e[t],r(i.value,{componentStack:i.stack,digest:i.digest});if(cz)throw cz=!1,A=CpA,CpA=null,A;return(Cz&1)!==0&&A.tag!==0&&D5(),u=A.pendingLanes,(u&1)!==0?A===BpA?rL++:(rL=0,BpA=A):rL=0,Lp(),null}function D5(){if(pp!==null){var A=dfe(Cz),e=qc.transition,t=mu;try{if(qc.transition=null,mu=16>A?16:A,pp===null)var r=!1;else{if(A=pp,pp=null,Cz=0,(_i&6)!==0)throw Error(dt(331));var i=_i;_i|=4;for(Tt=A.current;Tt!==null;){var u=Tt,a=u.child;if((Tt.flags&16)!==0){var n=u.deletions;if(n!==null){for(var o=0;o<n.length;o++){var s=n[o];for(Tt=s;Tt!==null;){var l=Tt;switch(l.tag){case 0:case 11:case 15:eL(8,l,u)}var g=l.child;if(g!==null)g.return=l,Tt=g;else for(;Tt!==null;){l=Tt;var C=l.sibling,B=l.return;if(k3e(l),l===s){Tt=null;break}if(C!==null){C.return=B,Tt=C;break}Tt=B}}}var E=u.alternate;if(E!==null){var d=E.child;if(d!==null){E.child=null;do{var I=d.sibling;d.sibling=null,d=I}while(d!==null)}}Tt=u}}if((u.subtreeFlags&2064)!==0&&a!==null)a.return=u,Tt=a;else A:for(;Tt!==null;){if(u=Tt,(u.flags&2048)!==0)switch(u.tag){case 0:case 11:case 15:eL(9,u,u.return)}var h=u.sibling;if(h!==null){h.return=u.return,Tt=h;break A}Tt=u.return}}var Q=A.current;for(Tt=Q;Tt!==null;){a=Tt;var p=a.child;if((a.subtreeFlags&2064)!==0&&p!==null)p.return=a,Tt=p;else A:for(a=Q;Tt!==null;){if(n=Tt,(n.flags&2048)!==0)try{switch(n.tag){case 0:case 11:case 15:wz(9,n)}}catch(f){an(n,n.return,f)}if(n===a){Tt=null;break A}var m=n.sibling;if(m!==null){m.return=n.return,Tt=m;break A}Tt=n.return}}if(_i=i,Lp(),Ud&&typeof Ud.onPostCommitFiberRoot==="function")try{Ud.onPostCommitFiberRoot(Ez,A)}catch(f){}r=!0}return r}finally{mu=t,qc.transition=e}}return!1}function qpe(A,e,t){e=F5(t,e),e=I3e(A,e,1),A=R2(A,e,1),e=Pl(),A!==null&&(dz(A,1,e),Tg(A,e))}function an(A,e,t){if(A.tag===3)qpe(A,A,t);else for(;e!==null;){if(e.tag===3){qpe(e,A,t);break}else if(e.tag===1){var r=e.stateNode;if(typeof e.type.getDerivedStateFromError==="function"||typeof r.componentDidCatch==="function"&&(bp===null||!bp.has(r))){A=F5(t,A),A=h3e(e,A,1),e=R2(e,A,1),A=Pl(),e!==null&&(dz(e,1,A),Tg(e,A));break}}e=e.return}}function U0r(A,e,t){var r=A.pingCache;r!==null&&r.delete(e),e=Pl(),A.pingedLanes|=A.suspendedLanes&t,Wo===A&&(y0&t)===t&&(fo===4||fo===3&&(y0&130023424)===y0&&500>wn()-XpA?G2(A,0):jpA|=t),Tg(A,e)}function Y3e(A,e){e===0&&((A.mode&1)===0?e=1:(e=yq,yq<<=1,(yq&130023424)===0&&(yq=4194304)));var t=Pl();A=jh(A,e),A!==null&&(dz(A,e,t),Tg(A,t))}function M0r(A){var e=A.memoizedState,t=0;e!==null&&(t=e.retryLane),Y3e(A,t)}function T0r(A,e){var t=0;switch(A.tag){case 13:var{stateNode:r,memoizedState:i}=A;i!==null&&(t=i.retryLane);break;case 19:r=A.stateNode;break;default:throw Error(dt(314))}r!==null&&r.delete(e),Y3e(A,t)}var H3e;H3e=function(A,e,t){if(A!==null)if(A.memoizedProps!==e.pendingProps||Jl.current)Kl=!0;else{if((A.lanes&t)===0&&(e.flags&128)===0)return Kl=!1,w0r(A,e,t);Kl=(A.flags&131072)!==0?!0:!1}else Kl=!1,ka&&(e.flags&1048576)!==0&&Jfe(e,iz,e.index);switch(e.lanes=0,e.tag){case 2:var r=e.type;Jq(A,e),A=e.pendingProps;var i=w5(e,ts.current);m5(e,t),i=_pA(null,e,r,A,i,t);var u=WpA();return e.flags|=1,typeof i==="object"&&i!==null&&typeof i.render==="function"&&i.$$typeof===void 0?(e.tag=1,e.memoizedState=null,e.updateQueue=null,Ol(r)?(u=!0,tz(e)):u=!1,e.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,zfe(e),i.updater=yz,e.stateNode=i,i._reactInternals=e,tpA(e,r,A,t),e=upA(null,e,r,!0,u,t)):(e.tag=0,ka&&u&&NpA(e),Ws(null,e,i,t),e=e.child),e;case 16:r=e.elementType;A:{switch(Jq(A,e),A=e.pendingProps,i=r._init,r=i(r._payload),e.type=r,i=e.tag=H0r(r),A=wB(r,A),i){case 0:e=ipA(null,e,r,A,t);break A;case 1:e=Mpe(null,e,r,A,t);break A;case 11:e=Gpe(null,e,r,A,t);break A;case 14:e=Upe(null,e,r,wB(r.type,A),t);break A}throw Error(dt(306,r,""))}return e;case 0:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:wB(r,i),ipA(A,e,r,i,t);case 1:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:wB(r,i),Mpe(A,e,r,i,t);case 3:A:{if(m3e(e),A===null)throw Error(dt(387));r=e.pendingProps,u=e.memoizedState,i=u.element,Zfe(A,e),nz(e,r,null,t);var a=e.memoizedState;if(r=a.element,u.isDehydrated)if(u={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},e.updateQueue.baseState=u,e.memoizedState=u,e.flags&256){i=F5(Error(dt(423)),e),e=Tpe(A,e,r,t,i);break A}else if(r!==i){i=F5(Error(dt(424)),e),e=Tpe(A,e,r,t,i);break A}else for(Ug=yp(e.stateNode.containerInfo.firstChild),Mg=e,ka=!0,vB=null,t=Wfe(e,null,r,t),e.child=t;t;)t.flags=t.flags&-3|4096,t=t.sibling;else{if(b5(),r===i){e=Xh(A,e,t);break A}Ws(A,e,r,t)}e=e.child}return e;case 5:return Vfe(e),A===null&&$1A(e),r=e.type,i=e.pendingProps,u=A!==null?A.memoizedProps:null,a=i.children,z1A(r,i)?a=null:u!==null&&z1A(r,u)&&(e.flags|=32),f3e(A,e),Ws(A,e,a,t),e.child;case 6:return A===null&&$1A(e),null;case 13:return D3e(A,e,t);case 4:return KpA(e,e.stateNode.containerInfo),r=e.pendingProps,A===null?e.child=v5(e,null,r,t):Ws(A,e,r,t),e.child;case 11:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:wB(r,i),Gpe(A,e,r,i,t);case 7:return Ws(A,e,e.pendingProps,t),e.child;case 8:return Ws(A,e,e.pendingProps.children,t),e.child;case 12:return Ws(A,e,e.pendingProps.children,t),e.child;case 10:A:{if(r=e.type._context,i=e.pendingProps,u=e.memoizedProps,a=i.value,Vu(uz,r._currentValue),r._currentValue=a,u!==null)if(SB(u.value,a)){if(u.children===i.children&&!Jl.current){e=Xh(A,e,t);break A}}else for(u=e.child,u!==null&&(u.return=e);u!==null;){var n=u.dependencies;if(n!==null){a=u.child;for(var o=n.firstContext;o!==null;){if(o.context===r){if(u.tag===1){o=wp(-1,t&-t),o.tag=2;var s=u.updateQueue;if(s!==null){s=s.shared;var l=s.pending;l===null?o.next=o:(o.next=l.next,l.next=o),s.pending=o}}u.lanes|=t,o=u.alternate,o!==null&&(o.lanes|=t),ApA(u.return,t,e),n.lanes|=t;break}o=o.next}}else if(u.tag===10)a=u.type===e.type?null:u.child;else if(u.tag===18){if(a=u.return,a===null)throw Error(dt(341));a.lanes|=t,n=a.alternate,n!==null&&(n.lanes|=t),ApA(a,t,e),a=u.sibling}else a=u.child;if(a!==null)a.return=u;else for(a=u;a!==null;){if(a===e){a=null;break}if(u=a.sibling,u!==null){u.return=a.return,a=u;break}a=a.return}u=a}Ws(A,e,i.children,t),e=e.child}return e;case 9:return i=e.type,r=e.pendingProps.children,m5(e,t),i=zc(i),r=r(i),e.flags|=1,Ws(A,e,r,t),e.child;case 14:return r=e.type,i=wB(r,e.pendingProps),i=wB(r.type,i),Upe(A,e,r,i,t);case 15:return Q3e(A,e,e.type,e.pendingProps,t);case 17:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:wB(r,i),Jq(A,e),e.tag=1,Ol(r)?(A=!0,tz(e)):A=!1,m5(e,t),d3e(e,r,i),tpA(e,r,i,t),upA(null,e,r,!0,A,t);case 19:return y3e(A,e,t);case 22:return p3e(A,e,t)}throw Error(dt(156,e.tag))};function K3e(A,e){return cfe(A,e)}function Y0r(A,e,t,r){this.tag=A,this.key=t,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function kB(A,e,t,r){return new Y0r(A,e,t,r)}function efA(A){return A=A.prototype,!(!A||!A.isReactComponent)}function H0r(A){if(typeof A==="function")return efA(A)?1:0;if(A!==void 0&&A!==null){if(A=A.$$typeof,A===fpA)return 11;if(A===mpA)return 14}return 2}function vp(A,e){var t=A.alternate;return t===null?(t=kB(A.tag,e,A.key,A.mode),t.elementType=A.elementType,t.type=A.type,t.stateNode=A.stateNode,t.alternate=A,A.alternate=t):(t.pendingProps=e,t.type=A.type,t.flags=0,t.subtreeFlags=0,t.deletions=null),t.flags=A.flags&14680064,t.childLanes=A.childLanes,t.lanes=A.lanes,t.child=A.child,t.memoizedProps=A.memoizedProps,t.memoizedState=A.memoizedState,t.updateQueue=A.updateQueue,e=A.dependencies,t.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},t.sibling=A.sibling,t.index=A.index,t.ref=A.ref,t}function _q(A,e,t,r,i,u){var a=2;if(r=A,typeof A==="function")efA(A)&&(a=1);else if(typeof A==="string")a=5;else A:switch(A){case o5:return U2(t.children,i,u,e);case ppA:a=8,i|=8;break;case y1A:return A=kB(12,t,e,i|2),A.elementType=y1A,A.lanes=u,A;case w1A:return A=kB(13,t,e,i),A.elementType=w1A,A.lanes=u,A;case b1A:return A=kB(19,t,e,i),A.elementType=b1A,A.lanes=u,A;case Xpe:return kz(t,i,u,e);default:if(typeof A==="object"&&A!==null)switch(A.$$typeof){case Vpe:a=10;break A;case jpe:a=9;break A;case fpA:a=11;break A;case mpA:a=14;break A;case Ep:a=16,r=null;break A}throw Error(dt(130,A==null?A:typeof A,""))}return e=kB(a,t,e,i),e.elementType=A,e.type=r,e.lanes=u,e}function U2(A,e,t,r){return A=kB(7,A,r,e),A.lanes=t,A}function kz(A,e,t,r){return A=kB(22,A,r,e),A.elementType=Xpe,A.lanes=t,A.stateNode={isHidden:!1},A}function f1A(A,e,t){return A=kB(6,A,null,e),A.lanes=t,A}function m1A(A,e,t){return e=kB(4,A.children!==null?A.children:[],A.key,e),e.lanes=t,e.stateNode={containerInfo:A.containerInfo,pendingChildren:null,implementation:A.implementation},e}function K0r(A,e,t){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:n5,key:r==null?null:""+r,children:A,containerInfo:e,implementation:t}}function J0r(A){if(!A)return Fp;A=A._reactInternals;A:{if(J2(A)!==A||A.tag!==1)throw Error(dt(170));var e=A;do{switch(e.tag){case 3:e=e.stateNode.context;break A;case 1:if(Ol(e.type)){e=e.stateNode.__reactInternalMemoizedMergedChildContext;break A}}e=e.return}while(e!==null);throw Error(dt(171))}if(A.tag===1){var t=A.type;if(Ol(t))return Hfe(A,t,e)}return e}function J3e(A,e,t,r){var i=e.current,u=Pl(),a=N2(i);return t=J0r(t),e.context===null?e.context=t:e.pendingContext=t,e=wp(u,a),e.payload={element:A},r=r===void 0?null:r,r!==null&&(e.callback=r),A=R2(i,e,a),A!==null&&(xB(A,i,a,u),Yq(A,i,a)),a}function zpe(A,e){if(A=A.memoizedState,A!==null&&A.dehydrated!==null){var t=A.retryLane;A.retryLane=t!==0&&t<e?t:e}}function tfA(A,e){zpe(A,e),(A=A.alternate)&&zpe(A,e)}function O0r(){return null}function O3e(A){this._internalRoot=A}rfA.prototype.render=O3e.prototype.render=function(A){var e=this._internalRoot;if(e===null)throw Error(dt(409));J3e(A,e,null,null)};rfA.prototype.unmount=O3e.prototype.unmount=function(){var A=this._internalRoot;if(A!==null){this._internalRoot=null;var e=A.containerInfo;vz(function(){J3e(null,A,null,null)}),e[pz]=null}};function rfA(A){this._internalRoot=A}rfA.prototype.unstable_scheduleHydration=function(A){if(A){var e=Qfe();A={blockedOn:null,target:A,priority:e};for(var t=0;t<Ip.length&&e!==0&&e<Ip[t].priority;t++);Ip.splice(t,0,A),t===0&&ffe(A)}};function P0r(A){return!(!A||A.nodeType!==1&&A.nodeType!==9&&A.nodeType!==11)}Ife=function(A){switch(A.tag){case 3:var e=A.stateNode;if(e.current.memoizedState.isDehydrated){var t=JS(e.pendingLanes);t!==0&&(wpA(e,t|1),Tg(e,wn()),(_i&6)===0&&(x5=wn()+500,Lp()))}break;case 13:vz(function(){var r=jh(A,1);if(r!==null){var i=Pl();xB(r,A,1,i)}}),tfA(A,1)}};bpA=function(A){if(A.tag===13){var e=jh(A,134217728);if(e!==null){var t=Pl();xB(e,A,134217728,t)}tfA(A,134217728)}};hfe=function(A){if(A.tag===13){var e=N2(A),t=jh(A,e);if(t!==null){var r=Pl();xB(t,A,e,r)}tfA(A,e)}};Qfe=function(){return mu};pfe=function(A,e){var t=mu;try{return mu=A,e()}finally{mu=t}};U1A=function(A,e,t){switch(e){case"input":if(F1A(A,t),e=t.name,t.type==="radio"&&e!=null){for(t=A;t.parentNode;)t=t.parentNode;t=t.querySelectorAll("input[name="+JSON.stringify(""+e)+'][type="radio"]');for(e=0;e<t.length;e++){var r=t[e];if(r!==A&&r.form===A.form){var i=RpA(r);if(!i)throw Error(dt(90));Afe(r),F1A(r,i)}}}break;case"textarea":tfe(A,t);break;case"select":e=t.value,e!=null&&h5(A,!!t.multiple,e,!1)}};nfe=N3e;ofe=vz;var YS={findFiberByHostInstance:x2,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},_0r={bundleType:YS.bundleType,version:YS.version,rendererPackageName:YS.rendererPackageName,rendererConfig:YS.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:$h.ReactCurrentDispatcher,findHostInstanceByFiber:function(A){return A=ior(A),A===null?null:A.stateNode},findFiberByHostInstance:YS.findFiberByHostInstance||O0r,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){if(a5=__REACT_DEVTOOLS_GLOBAL_HOOK__,!a5.isDisabled&&a5.supportsFiber)try{Ez=a5.inject(_0r),Ud=a5}catch(A){}}var a5;var R5=function(A,e){var t=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!P0r(e))throw Error(dt(200));return K0r(A,e,null,t)};var Wn=function(A){return vz(A)};var N5=N3e;P3e();B8();nd();fe();Be();Be();Be();Be();fe();fe();Be();Be();Be();Be();fe();fe();Be();Be();fe();Be();fe();Be();Be();Be();fe();function Td(A,e,{checkForDefaultPrevented:t=!0}={}){return function(i){if(A?.(i),t===!1||!i.defaultPrevented)return e?.(i)}}fe();function _3e(A,e){if(typeof A==="function")return A(e);else if(A!==null&&A!==void 0)A.current=e}function ufA(...A){return(e)=>{let t=!1,r=A.map((i)=>{let u=_3e(i,e);if(!t&&typeof u=="function")t=!0;return u});if(t)return()=>{for(let i=0;i<r.length;i++){let u=r[i];if(typeof u=="function")u();else _3e(A[i],null)}}}}function Hg(...A){return lt(ufA(...A),A)}fe();Be();function Fz(A,e=[]){let t=[];function r(u,a){let n=yi(a),o=t.length;t=[...t,a];let s=(g)=>{let{scope:C,children:B,...E}=g,d=C?.[A]?.[o]||n,I=Ut(()=>E,Object.values(E));return N(d.Provider,{value:I,children:B})};s.displayName=u+"Provider";function l(g,C){let B=C?.[A]?.[o]||n,E=Si(B);if(E)return E;if(a!==void 0)return a;throw Error(`\`${g}\` must be used within \`${u}\``)}return[s,l]}let i=()=>{let u=t.map((a)=>yi(a));return function(n){let o=n?.[A]||u;return Ut(()=>({[`__scope${A}`]:{...n,[A]:o}}),[n,o])}};return i.scopeName=A,[r,W0r(i,...e)]}function W0r(...A){let e=A[0];if(A.length===1)return e;let t=()=>{let r=A.map((i)=>({useScope:i(),scopeName:i.scopeName}));return function(u){let a=r.reduce((n,{useScope:o,scopeName:s})=>{let g=o(u)[`__scope${s}`];return{...n,...g}},{});return Ut(()=>({[`__scope${e.scopeName}`]:a}),[a])}};return t.scopeName=e.scopeName,t}fe();fe();fe();Be();var mL=Dt((A,e)=>{let{children:t,...r}=A,i=di.toArray(t),u=i.find(z0r);if(u){let a=u.props.children,n=i.map((o)=>{if(o===u){if(di.count(a)>1)return di.only(null);return Da(a)?a.props.children:null}else return o});return N(afA,{...r,ref:e,children:Da(a)?Jn(a,void 0,n):null})}return N(afA,{...r,ref:e,children:t})});mL.displayName="Slot";var afA=Dt((A,e)=>{let{children:t,...r}=A;if(Da(t)){let i=V0r(t),u=Z0r(r,t.props);if(t.type!==Co)u.ref=e?ufA(e,i):i;return Jn(t,u)}return di.count(t)>1?di.only(null):null});afA.displayName="SlotClone";var q0r=({children:A})=>N(et,{children:A});function z0r(A){return Da(A)&&A.type===q0r}function Z0r(A,e){let t={...e};for(let r in e){let i=A[r],u=e[r];if(/^on[A-Z]/.test(r)){if(i&&u)t[r]=(...n)=>{u(...n),i(...n)};else if(i)t[r]=i}else if(r==="style")t[r]={...i,...u};else if(r==="className")t[r]=[i,u].filter(Boolean).join(" ")}return{...A,...t}}function V0r(A){let e=Object.getOwnPropertyDescriptor(A.props,"ref")?.get,t=e&&"isReactWarning"in e&&e.isReactWarning;if(t)return A.ref;if(e=Object.getOwnPropertyDescriptor(A,"ref")?.get,t=e&&"isReactWarning"in e&&e.isReactWarning,t)return A.props.ref;return A.props.ref||A.ref}Be();var j0r=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],zs=j0r.reduce((A,e)=>{let t=Dt((r,i)=>{let{asChild:u,...a}=r,n=u?mL:e;if(typeof window<"u")window[Symbol.for("radix-ui")]=!0;return N(n,{...a,ref:i})});return t.displayName=`Primitive.${e}`,{...A,[e]:t}},{});function W3e(A,e){if(A)Wn(()=>A.dispatchEvent(e))}fe();function Kg(A){let e=Ee(A);return le(()=>{e.current=A}),Ut(()=>(...t)=>e.current?.(...t),[])}fe();function q3e(A,e=globalThis?.document){let t=Kg(A);le(()=>{let r=(i)=>{if(i.key==="Escape")t(i)};return e.addEventListener("keydown",r,{capture:!0}),()=>e.removeEventListener("keydown",r,{capture:!0})},[t,e])}Be();var X0r="DismissableLayer",nfA="dismissableLayer.update",$0r="dismissableLayer.pointerDownOutside",Asr="dismissableLayer.focusOutside",z3e,V3e=yi({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),ofA=Dt((A,e)=>{let{disableOutsidePointerEvents:t=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:u,onInteractOutside:a,onDismiss:n,...o}=A,s=Si(V3e),[l,g]=we(null),C=l?.ownerDocument??globalThis?.document,[,B]=we({}),E=Hg(e,(w)=>g(w)),d=Array.from(s.layers),[I]=[...s.layersWithOutsidePointerEventsDisabled].slice(-1),h=d.indexOf(I),Q=l?d.indexOf(l):-1,p=s.layersWithOutsidePointerEventsDisabled.size>0,m=Q>=h,f=rsr((w)=>{let b=w.target,F=[...s.branches].some((v)=>v.contains(b));if(!m||F)return;if(i?.(w),a?.(w),!w.defaultPrevented)n?.()},C),D=isr((w)=>{let b=w.target;if([...s.branches].some((v)=>v.contains(b)))return;if(u?.(w),a?.(w),!w.defaultPrevented)n?.()},C);return q3e((w)=>{if(Q!==s.layers.size-1)return;if(r?.(w),!w.defaultPrevented&&n)w.preventDefault(),n()},C),le(()=>{if(!l)return;if(t){if(s.layersWithOutsidePointerEventsDisabled.size===0)z3e=C.body.style.pointerEvents,C.body.style.pointerEvents="none";s.layersWithOutsidePointerEventsDisabled.add(l)}return s.layers.add(l),Z3e(),()=>{if(t&&s.layersWithOutsidePointerEventsDisabled.size===1)C.body.style.pointerEvents=z3e}},[l,C,t,s]),le(()=>()=>{if(!l)return;s.layers.delete(l),s.layersWithOutsidePointerEventsDisabled.delete(l),Z3e()},[l,s]),le(()=>{let w=()=>B({});return document.addEventListener(nfA,w),()=>document.removeEventListener(nfA,w)},[]),N(zs.div,{...o,ref:E,style:{pointerEvents:p?m?"auto":"none":void 0,...A.style},onFocusCapture:Td(A.onFocusCapture,D.onFocusCapture),onBlurCapture:Td(A.onBlurCapture,D.onBlurCapture),onPointerDownCapture:Td(A.onPointerDownCapture,f.onPointerDownCapture)})});ofA.displayName=X0r;var esr="DismissableLayerBranch",tsr=Dt((A,e)=>{let t=Si(V3e),r=Ee(null),i=Hg(e,r);return le(()=>{let u=r.current;if(u)return t.branches.add(u),()=>{t.branches.delete(u)}},[t.branches]),N(zs.div,{...A,ref:i})});tsr.displayName=esr;function rsr(A,e=globalThis?.document){let t=Kg(A),r=Ee(!1),i=Ee(()=>{});return le(()=>{let u=(n)=>{if(n.target&&!r.current){let s=function(){j3e($0r,t,l,{discrete:!0})};var o=s;let l={originalEvent:n};if(n.pointerType==="touch")e.removeEventListener("click",i.current),i.current=s,e.addEventListener("click",i.current,{once:!0});else s()}else e.removeEventListener("click",i.current);r.current=!1},a=window.setTimeout(()=>{e.addEventListener("pointerdown",u)},0);return()=>{window.clearTimeout(a),e.removeEventListener("pointerdown",u),e.removeEventListener("click",i.current)}},[e,t]),{onPointerDownCapture:()=>r.current=!0}}function isr(A,e=globalThis?.document){let t=Kg(A),r=Ee(!1);return le(()=>{let i=(u)=>{if(u.target&&!r.current)j3e(Asr,t,{originalEvent:u},{discrete:!1})};return e.addEventListener("focusin",i),()=>e.removeEventListener("focusin",i)},[e,t]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function Z3e(){let A=new CustomEvent(nfA);document.dispatchEvent(A)}function j3e(A,e,t,{discrete:r}){let i=t.originalEvent.target,u=new CustomEvent(A,{bubbles:!1,cancelable:!0,detail:t});if(e)i.addEventListener(A,e,{once:!0});if(r)W3e(i,u);else i.dispatchEvent(u)}fe();var sfA=0;function $3e(){le(()=>{let A=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",A[0]??X3e()),document.body.insertAdjacentElement("beforeend",A[1]??X3e()),sfA++,()=>{if(sfA===1)document.querySelectorAll("[data-radix-focus-guard]").forEach((e)=>e.remove());sfA--}},[])}function X3e(){let A=document.createElement("span");return A.setAttribute("data-radix-focus-guard",""),A.tabIndex=0,A.style.outline="none",A.style.opacity="0",A.style.position="fixed",A.style.pointerEvents="none",A}fe();Be();var lfA="focusScope.autoFocusOnMount",gfA="focusScope.autoFocusOnUnmount",Ame={bubbles:!1,cancelable:!0},usr="FocusScope",cfA=Dt((A,e)=>{let{loop:t=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:u,...a}=A,[n,o]=we(null),s=Kg(i),l=Kg(u),g=Ee(null),C=Hg(e,(d)=>o(d)),B=Ee({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;le(()=>{if(r){let Q=function(D){if(B.paused||!n)return;let w=D.target;if(n.contains(w))g.current=w;else Rp(g.current,{select:!0})},p=function(D){if(B.paused||!n)return;let w=D.relatedTarget;if(w===null)return;if(!n.contains(w))Rp(g.current,{select:!0})},m=function(D){if(document.activeElement!==document.body)return;for(let b of D)if(b.removedNodes.length>0)Rp(n)};var d=Q,I=p,h=m;document.addEventListener("focusin",Q),document.addEventListener("focusout",p);let f=new MutationObserver(m);if(n)f.observe(n,{childList:!0,subtree:!0});return()=>{document.removeEventListener("focusin",Q),document.removeEventListener("focusout",p),f.disconnect()}}},[r,n,B.paused]),le(()=>{if(n){tme.add(B);let d=document.activeElement;if(!n.contains(d)){let h=new CustomEvent(lfA,Ame);if(n.addEventListener(lfA,s),n.dispatchEvent(h),!h.defaultPrevented){if(asr(gsr(ime(n)),{select:!0}),document.activeElement===d)Rp(n)}}return()=>{n.removeEventListener(lfA,s),setTimeout(()=>{let h=new CustomEvent(gfA,Ame);if(n.addEventListener(gfA,l),n.dispatchEvent(h),!h.defaultPrevented)Rp(d??document.body,{select:!0});n.removeEventListener(gfA,l),tme.remove(B)},0)}}},[n,s,l,B]);let E=lt((d)=>{if(!t&&!r)return;if(B.paused)return;let I=d.key==="Tab"&&!d.altKey&&!d.ctrlKey&&!d.metaKey,h=document.activeElement;if(I&&h){let Q=d.currentTarget,[p,m]=nsr(Q);if(!(p&&m)){if(h===Q)d.preventDefault()}else if(!d.shiftKey&&h===m){if(d.preventDefault(),t)Rp(p,{select:!0})}else if(d.shiftKey&&h===p){if(d.preventDefault(),t)Rp(m,{select:!0})}}},[t,r,B.paused]);return N(zs.div,{tabIndex:-1,...a,ref:C,onKeyDown:E})});cfA.displayName=usr;function asr(A,{select:e=!1}={}){let t=document.activeElement;for(let r of A)if(Rp(r,{select:e}),document.activeElement!==t)return}function nsr(A){let e=ime(A),t=eme(e,A),r=eme(e.reverse(),A);return[t,r]}function ime(A){let e=[],t=document.createTreeWalker(A,NodeFilter.SHOW_ELEMENT,{acceptNode:(r)=>{let i=r.tagName==="INPUT"&&r.type==="hidden";if(r.disabled||r.hidden||i)return NodeFilter.FILTER_SKIP;return r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});while(t.nextNode())e.push(t.currentNode);return e}function eme(A,e){for(let t of A)if(!osr(t,{upTo:e}))return t}function osr(A,{upTo:e}){if(getComputedStyle(A).visibility==="hidden")return!0;while(A){if(e!==void 0&&A===e)return!1;if(getComputedStyle(A).display==="none")return!0;A=A.parentElement}return!1}function ssr(A){return A instanceof HTMLInputElement&&"select"in A}function Rp(A,{select:e=!1}={}){if(A&&A.focus){let t=document.activeElement;if(A.focus({preventScroll:!0}),A!==t&&ssr(A)&&e)A.select()}}var tme=lsr();function lsr(){let A=[];return{add(e){let t=A[0];if(e!==t)t?.pause();A=rme(A,e),A.unshift(e)},remove(e){A=rme(A,e),A[0]?.resume()}}}function rme(A,e){let t=[...A],r=t.indexOf(e);if(r!==-1)t.splice(r,1);return t}function gsr(A){return A.filter((e)=>e.tagName!=="A")}fe();fe();var Vc=Boolean(globalThis?.document)?Ii:()=>{};var csr=vt["useId".toString()]||(()=>{return}),Csr=0;function ume(A){let[e,t]=we(csr());return Vc(()=>{if(!A)t((r)=>r??String(Csr++))},[A]),A||(e?`radix-${e}`:"")}fe();var ome=["top","right","bottom","left"];var{min:Yd,max:LB,round:yL,floor:wL}=Math,Hd=(A)=>({x:A,y:A}),Bsr={left:"right",right:"left",bottom:"top",top:"bottom"};function CfA(A,e,t){return LB(A,Yd(e,t))}function Kd(A,e){return typeof A==="function"?A(e):A}function AQ(A){return A.split("-")[0]}function O2(A){return A.split("-")[1]}function Sz(A){return A==="x"?"y":"x"}function Lz(A){return A==="y"?"height":"width"}function RB(A){let e=A[0];return e==="t"||e==="b"?"y":"x"}function Rz(A){return Sz(RB(A))}function sme(A,e,t){if(t===void 0)t=!1;let r=O2(A),i=Rz(A),u=Lz(i),a=i==="x"?r===(t?"end":"start")?"right":"left":r==="start"?"bottom":"top";if(e.reference[u]>e.floating[u])a=DL(a);return[a,DL(a)]}function lme(A){let e=DL(A);return[xz(A),e,xz(e)]}function xz(A){return A.includes("start")?A.replace("start","end"):A.replace("end","start")}var ame=["left","right"],nme=["right","left"],Esr=["top","bottom"],dsr=["bottom","top"];function Isr(A,e,t){switch(A){case"top":case"bottom":if(t)return e?nme:ame;return e?ame:nme;case"left":case"right":return e?Esr:dsr;default:return[]}}function gme(A,e,t,r){let i=O2(A),u=Isr(AQ(A),t==="start",r);if(i){if(u=u.map((a)=>a+"-"+i),e)u=u.concat(u.map(xz))}return u}function DL(A){let e=AQ(A);return Bsr[e]+A.slice(e.length)}function hsr(A){var e,t,r,i;return{top:(e=A.top)!=null?e:0,right:(t=A.right)!=null?t:0,bottom:(r=A.bottom)!=null?r:0,left:(i=A.left)!=null?i:0}}function BfA(A){return typeof A!=="number"?hsr(A):{top:A,right:A,bottom:A,left:A}}function P2(A){let{x:e,y:t,width:r,height:i}=A;return{width:r,height:i,top:t,left:e,right:e+r,bottom:t+i,x:e,y:t}}function cme(A,e,t){let{reference:r,floating:i}=A,u=RB(e),a=Rz(e),n=Lz(a),o=AQ(e),s=u==="y",l=r.x+r.width/2-i.width/2,g=r.y+r.height/2-i.height/2,C=r[n]/2-i[n]/2,B;switch(o){case"top":B={x:l,y:r.y-i.height};break;case"bottom":B={x:l,y:r.y+r.height};break;case"right":B={x:r.x+r.width,y:g};break;case"left":B={x:r.x-i.width,y:g};break;default:B={x:r.x,y:r.y}}let E=O2(e);if(E)B[a]+=C*(E==="end"?1:-1)*(t&&s?-1:1);return B}async function Eme(A,e){var t;if(e===void 0)e={};let{x:r,y:i,platform:u,rects:a,elements:n,strategy:o}=A,{boundary:s="clippingAncestors",rootBoundary:l="viewport",elementContext:g="floating",altBoundary:C=!1,padding:B=0}=Kd(e,A),E=BfA(B),I=n[C?g==="floating"?"reference":"floating":g],h=P2(await u.getClippingRect({element:((t=await(u.isElement==null?void 0:u.isElement(I)))!=null?t:!0)?I:I.contextElement||await(u.getDocumentElement==null?void 0:u.getDocumentElement(n.floating)),boundary:s,rootBoundary:l,strategy:o})),Q=g==="floating"?{x:r,y:i,width:a.floating.width,height:a.floating.height}:a.reference,p=await(u.getOffsetParent==null?void 0:u.getOffsetParent(n.floating)),m=await(u.isElement==null?void 0:u.isElement(p))&&await(u.getScale==null?void 0:u.getScale(p))||{x:1,y:1},f=P2(u.convertOffsetParentRelativeRectToViewportRelativeRect?await u.convertOffsetParentRelativeRectToViewportRelativeRect({elements:n,rect:Q,offsetParent:p,strategy:o}):Q);return{top:(h.top-f.top+E.top)/m.y,bottom:(f.bottom-h.bottom+E.bottom)/m.y,left:(h.left-f.left+E.left)/m.x,right:(f.right-h.right+E.right)/m.x}}var Qsr=50,dme=async(A,e,t)=>{let{placement:r="bottom",strategy:i="absolute",middleware:u=[],platform:a}=t,n=a.detectOverflow?a:{...a,detectOverflow:Eme},o=await(a.isRTL==null?void 0:a.isRTL(e)),s=await a.getElementRects({reference:A,floating:e,strategy:i}),{x:l,y:g}=cme(s,r,o),C=r,B=0,E={};for(let d=0;d<u.length;d++){let I=u[d];if(!I)continue;let{name:h,fn:Q}=I,{x:p,y:m,data:f,reset:D}=await Q({x:l,y:g,initialPlacement:r,placement:C,strategy:i,middlewareData:E,rects:s,platform:n,elements:{reference:A,floating:e}});if(l=p!=null?p:l,g=m!=null?m:g,E[h]={...E[h],...f},D&&B<Qsr){if(B++,typeof D==="object"){if(D.placement)C=D.placement;if(D.rects)s=D.rects===!0?await a.getElementRects({reference:A,floating:e,strategy:i}):D.rects;({x:l,y:g}=cme(s,C,o))}d=-1}}return{x:l,y:g,placement:C,strategy:i,middlewareData:E}},Ime=(A)=>({name:"arrow",options:A,async fn(e){let{x:t,y:r,placement:i,rects:u,platform:a,elements:n,middlewareData:o}=e,{element:s,padding:l=0}=Kd(A,e)||{};if(s==null)return{};let g=BfA(l),C={x:t,y:r},B=Rz(i),E=Lz(B),d=await a.getDimensions(s),I=B==="y",h=I?"top":"left",Q=I?"bottom":"right",p=I?"clientHeight":"clientWidth",m=u.reference[E]+u.reference[B]-C[B]-u.floating[E],f=C[B]-u.reference[B],D=await(a.getOffsetParent==null?void 0:a.getOffsetParent(s)),w=D?D[p]:0;if(!w||!await(a.isElement==null?void 0:a.isElement(D)))w=n.floating[p]||u.floating[E];let b=m/2-f/2,F=w/2-d[E]/2-1,v=Yd(g[h],F),S=Yd(g[Q],F),x=w-d[E]-S,k=w/2-d[E]/2+b,T=CfA(v,k,x),R=!o.arrow&&O2(i)!=null&&k!==T&&u.reference[E]/2-(k<v?v:S)-d[E]/2<0,L=R?k<v?k-v:k-x:0;return{[B]:C[B]+L,data:{[B]:T,centerOffset:k-T-L,...R&&{alignmentOffset:L}},reset:R}}});var hme=function(A){if(A===void 0)A={};return{name:"flip",options:A,async fn(e){var t,r;let{placement:i,middlewareData:u,rects:a,initialPlacement:n,platform:o,elements:s}=e,{mainAxis:l=!0,crossAxis:g=!0,fallbackPlacements:C,fallbackStrategy:B="bestFit",fallbackAxisSideDirection:E="none",flipAlignment:d=!0,...I}=Kd(A,e);if((t=u.arrow)!=null&&t.alignmentOffset)return{};let h=AQ(i),Q=RB(n),p=AQ(n)===n,m=await(o.isRTL==null?void 0:o.isRTL(s.floating)),f=C||(p||!d?[DL(n)]:lme(n)),D=E!=="none";if(!C&&D)f.push(...gme(n,d,E,m));let w=[n,...f],b=await o.detectOverflow(e,I),F=[],v=((r=u.flip)==null?void 0:r.overflows)||[];if(l)F.push(b[h]);if(g){let T=sme(i,a,m);F.push(b[T[0]],b[T[1]])}if(v=[...v,{placement:i,overflows:F}],!F.every((T)=>T<=0)){var S,x;let T=(((S=u.flip)==null?void 0:S.index)||0)+1,R=w[T];if(R){if(!(g==="alignment"?Q!==RB(R):!1)||v.every((U)=>RB(U.placement)===Q?U.overflows[0]>0:!0))return{data:{index:T,overflows:v},reset:{placement:R}}}let L=(x=v.filter((M)=>M.overflows[0]<=0).sort((M,U)=>M.overflows[1]-U.overflows[1])[0])==null?void 0:x.placement;if(!L)switch(B){case"bestFit":{var k;let M=(k=v.filter((U)=>{if(D){let Y=RB(U.placement);return Y===Q||Y==="y"}return!0}).map((U)=>[U.placement,U.overflows.filter((Y)=>Y>0).reduce((Y,H)=>Y+H,0)]).sort((U,Y)=>U[1]-Y[1])[0])==null?void 0:k[0];if(M)L=M;break}case"initialPlacement":L=n;break}if(i!==L)return{reset:{placement:L}}}return{}}}};function Cme(A,e){return{top:A.top-e.height,right:A.right-e.width,bottom:A.bottom-e.height,left:A.left-e.width}}function Bme(A){return ome.some((e)=>A[e]>=0)}var Qme=function(A){if(A===void 0)A={};return{name:"hide",options:A,async fn(e){let{rects:t,platform:r}=e,{strategy:i="referenceHidden",...u}=Kd(A,e);switch(i){case"referenceHidden":{let a=await r.detectOverflow(e,{...u,elementContext:"reference"}),n=Cme(a,t.reference);return{data:{referenceHiddenOffsets:n,referenceHidden:Bme(n)}}}case"escaped":{let a=await r.detectOverflow(e,{...u,altBoundary:!0}),n=Cme(a,t.floating);return{data:{escapedOffsets:n,escaped:Bme(n)}}}default:return{}}}}};var pme=new Set(["left","top"]);async function psr(A,e){let{placement:t,platform:r,elements:i}=A,u=await(r.isRTL==null?void 0:r.isRTL(i.floating)),a=AQ(t),n=O2(t),o=RB(t)==="y",s=pme.has(a)?-1:1,l=u&&o?-1:1,g=Kd(e,A),{mainAxis:C,crossAxis:B,alignmentAxis:E}=typeof g==="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};if(n&&typeof E==="number")B=n==="end"?E*-1:E;return o?{x:B*l,y:C*s}:{x:C*s,y:B*l}}var fme=function(A){if(A===void 0)A=0;return{name:"offset",options:A,async fn(e){var t,r;let{x:i,y:u,placement:a,middlewareData:n}=e,o=await psr(e,A);if(a===((t=n.offset)==null?void 0:t.placement)&&(r=n.arrow)!=null&&r.alignmentOffset)return{};return{x:i+o.x,y:u+o.y,data:{...o,placement:a}}}}},mme=function(A){if(A===void 0)A={};return{name:"shift",options:A,async fn(e){let{x:t,y:r,placement:i,platform:u}=e,{mainAxis:a=!0,crossAxis:n=!1,limiter:o={fn:(Q)=>{let{x:p,y:m}=Q;return{x:p,y:m}}},...s}=Kd(A,e),l={x:t,y:r},g=await u.detectOverflow(e,s),C=RB(i),B=Sz(C),E=l[B],d=l[C],I=(Q,p)=>CfA(p+g[Q==="y"?"top":"left"],p,p-g[Q==="y"?"bottom":"right"]);if(a)E=I(B,E);if(n)d=I(C,d);let h=o.fn({...e,[B]:E,[C]:d});return{...h,data:{x:h.x-t,y:h.y-r,enabled:{[B]:a,[C]:n}}}}}},Dme=function(A){if(A===void 0)A={};return{options:A,fn(e){var t,r;let{x:i,y:u,placement:a,rects:n,middlewareData:o}=e,{offset:s=0,mainAxis:l=!0,crossAxis:g=!0}=Kd(A,e),C={x:i,y:u},B=RB(a),E=Sz(B),d=C[E],I=C[B],h=Kd(s,e),Q=typeof h==="number"?{mainAxis:h,crossAxis:0}:{mainAxis:(t=h.mainAxis)!=null?t:0,crossAxis:(r=h.crossAxis)!=null?r:0};if(l){let f=E==="y"?"height":"width",D=n.reference[E]-n.floating[f]+Q.mainAxis,w=n.reference[E]+n.reference[f]-Q.mainAxis;if(d<D)d=D;else if(d>w)d=w}if(g){var p,m;let f=E==="y"?"width":"height",D=pme.has(AQ(a)),w=n.reference[B]-n.floating[f]+(D?((p=o.offset)==null?void 0:p[B])||0:0)+(D?0:Q.crossAxis),b=n.reference[B]+n.reference[f]+(D?0:((m=o.offset)==null?void 0:m[B])||0)-(D?Q.crossAxis:0);if(I<w)I=w;else if(I>b)I=b}return{[E]:d,[B]:I}}}},yme=function(A){if(A===void 0)A={};return{name:"size",options:A,async fn(e){let{placement:t,rects:r,platform:i,elements:u}=e,{apply:a=()=>{},...n}=Kd(A,e),o=await i.detectOverflow(e,n),s=AQ(t),l=O2(t),g=RB(t)==="y",{width:C,height:B}=r.floating,E,d;if(s==="top"||s==="bottom")E=s,d=l===(await(i.isRTL==null?void 0:i.isRTL(u.floating))?"start":"end")?"left":"right";else d=s,E=l==="end"?"top":"bottom";let I=B-o.top-o.bottom,h=C-o.left-o.right,Q=Yd(B-o[E],I),p=Yd(C-o[d],h),m=e.middlewareData.shift,f=!m,D=Q,w=p;if(m!=null&&m.enabled.x)w=h;if(m!=null&&m.enabled.y)D=I;if(f&&!l)if(g)w=C-2*LB(o.left,o.right);else D=B-2*LB(o.top,o.bottom);await a({...e,availableWidth:w,availableHeight:D});let b=await i.getDimensions(u.floating);if(C!==b.width||B!==b.height)return{reset:{rects:!0}};return{}}}};function Nz(){return typeof window<"u"}function q2(A){if(bme(A))return(A.nodeName||"").toLowerCase();return"#document"}function Zs(A){var e;return(A==null||(e=A.ownerDocument)==null?void 0:e.defaultView)||window}function Jd(A){var e;return(e=(bme(A)?A.ownerDocument:A.document)||window.document)==null?void 0:e.documentElement}function bme(A){if(!Nz())return!1;return A instanceof Node||A instanceof Zs(A).Node}function NB(A){if(!Nz())return!1;return A instanceof Element||A instanceof Zs(A).Element}function eQ(A){if(!Nz())return!1;return A instanceof HTMLElement||A instanceof Zs(A).HTMLElement}function wme(A){if(!Nz()||typeof ShadowRoot>"u")return!1;return A instanceof ShadowRoot||A instanceof Zs(A).ShadowRoot}function bL(A){let{overflow:e,overflowX:t,overflowY:r,display:i}=GB(A);return/auto|scroll|overlay|hidden|clip/.test(e+r+t)&&i!=="inline"&&i!=="contents"}function vme(A){return/^(table|td|th)$/.test(q2(A))}function vL(A){try{if(A.matches(":popover-open"))return!0}catch(e){}try{return A.matches(":modal")}catch(e){return!1}}var fsr=/transform|translate|scale|rotate|perspective|filter/,msr=/paint|layout|strict|content/,_2=(A)=>!!A&&A!=="none",EfA;function Gz(A){let e=NB(A)?GB(A):A;return _2(e.transform)||_2(e.translate)||_2(e.scale)||_2(e.rotate)||_2(e.perspective)||!Uz()&&(_2(e.backdropFilter)||_2(e.filter))||fsr.test(e.willChange||"")||msr.test(e.contain||"")}function kme(A){let e=Np(A);while(eQ(e)&&!G5(e)){if(Gz(e))return e;else if(vL(e))return null;e=Np(e)}return null}function Uz(){if(EfA==null)EfA=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none");return EfA}function G5(A){return/^(html|body|#document)$/.test(q2(A))}function GB(A){return Zs(A).getComputedStyle(A)}function kL(A){if(NB(A))return{scrollLeft:A.scrollLeft,scrollTop:A.scrollTop};return{scrollLeft:A.scrollX,scrollTop:A.scrollY}}function Np(A){if(q2(A)==="html")return A;let e=A.assignedSlot||A.parentNode||wme(A)&&A.host||Jd(A);return wme(e)?e.host:e}function Fme(A){let e=Np(A);if(G5(e))return(A.ownerDocument||A).body;if(eQ(e)&&bL(e))return e;return Fme(e)}function W2(A,e,t){var r;if(e===void 0)e=[];if(t===void 0)t=!0;let i=Fme(A),u=i===((r=A.ownerDocument)==null?void 0:r.body),a=Zs(i);if(u){let n=Mz(a);return e.concat(a,a.visualViewport||[],bL(i)?i:[],n&&t?W2(n):[])}else return e.concat(i,W2(i,[],t))}function Mz(A){return A.parent&&Object.getPrototypeOf(A.parent)?A.frameElement:null}function Lme(A){let e=GB(A),t=parseFloat(e.width)||0,r=parseFloat(e.height)||0,i=eQ(A),u=i?A.offsetWidth:t,a=i?A.offsetHeight:r,n=yL(t)!==u||yL(r)!==a;if(n)t=u,r=a;return{width:t,height:r,$:n}}function IfA(A){return!NB(A)?A.contextElement:A}function U5(A){let e=IfA(A);if(!eQ(e))return Hd(1);let t=e.getBoundingClientRect(),{width:r,height:i,$:u}=Lme(e),a=(u?yL(t.width):t.width)/r,n=(u?yL(t.height):t.height)/i;if(!a||!Number.isFinite(a))a=1;if(!n||!Number.isFinite(n))n=1;return{x:a,y:n}}var Dsr=Hd(0);function Rme(A){let e=Zs(A);if(!Uz()||!e.visualViewport)return Dsr;return{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function ysr(A,e,t){if(e===void 0)e=!1;return!!t&&e&&t===Zs(A)}function z2(A,e,t,r){if(e===void 0)e=!1;if(t===void 0)t=!1;let i=A.getBoundingClientRect(),u=IfA(A),a=Hd(1);if(e)if(r){if(NB(r))a=U5(r)}else a=U5(A);let n=ysr(u,t,r)?Rme(u):Hd(0),o=(i.left+n.x)/a.x,s=(i.top+n.y)/a.y,l=i.width/a.x,g=i.height/a.y;if(u&&r){let C=Zs(u),B=NB(r)?Zs(r):r,E=C,d=Mz(E);while(d&&B!==E){let I=U5(d),h=d.getBoundingClientRect(),Q=GB(d),p=h.left+(d.clientLeft+parseFloat(Q.paddingLeft))*I.x,m=h.top+(d.clientTop+parseFloat(Q.paddingTop))*I.y;o*=I.x,s*=I.y,l*=I.x,g*=I.y,o+=p,s+=m,E=Zs(d),d=Mz(E)}}return P2({width:l,height:g,x:o,y:s})}function Tz(A,e){let t=kL(A).scrollLeft;if(!e)return z2(Jd(A)).left+t;return e.left+t}function Nme(A,e){let t=A.getBoundingClientRect(),r=t.left+e.scrollLeft-Tz(A,t),i=t.top+e.scrollTop;return{x:r,y:i}}function wsr(A){let{elements:e,rect:t,offsetParent:r,strategy:i}=A,u=i==="fixed",a=Jd(r),n=e?vL(e.floating):!1;if(r===a||n&&u)return t;let o={scrollLeft:0,scrollTop:0},s=Hd(1),l=Hd(0),g=eQ(r);if(g||!u){if(q2(r)!=="body"||bL(a))o=kL(r);if(g){let B=z2(r);s=U5(r),l.x=B.x+r.clientLeft,l.y=B.y+r.clientTop}}let C=a&&!g&&!u?Nme(a,o):Hd(0);return{width:t.width*s.x,height:t.height*s.y,x:t.x*s.x-o.scrollLeft*s.x+l.x+C.x,y:t.y*s.y-o.scrollTop*s.y+l.y+C.y}}function bsr(A){return A.getClientRects?Array.from(A.getClientRects()):[]}function vsr(A){let e=kL(A),t=A.ownerDocument.body,r=LB(A.scrollWidth,A.clientWidth,t.scrollWidth,t.clientWidth),i=LB(A.scrollHeight,A.clientHeight,t.scrollHeight,t.clientHeight),u=-e.scrollLeft+Tz(A),a=-e.scrollTop;if(GB(t).direction==="rtl")u+=LB(A.clientWidth,t.clientWidth)-r;return{width:r,height:i,x:u,y:a}}var ksr=25;function Fsr(A,e,t){if(t===void 0)t="viewport";let r=t==="layoutViewport",i=Zs(A),u=Jd(A),a=i.visualViewport,{clientWidth:n,clientHeight:o}=u,s=0,l=0;if(a){let C=!Uz()||e==="fixed";if(r){if(!C)s=-a.offsetLeft,l=-a.offsetTop}else if(n=a.width,o=a.height,C)s=a.offsetLeft,l=a.offsetTop}if(Tz(u)<=0){let C=u.ownerDocument,B=C.body,E=getComputedStyle(B),d=C.compatMode==="CSS1Compat"?parseFloat(E.marginLeft)+parseFloat(E.marginRight)||0:0,I=Math.abs(u.clientWidth-B.clientWidth-d),h=getComputedStyle(u).scrollbarGutter==="stable both-edges"?I/2:I;if(h<=ksr)n-=h}return{width:n,height:o,x:s,y:l}}function xsr(A,e){let t=z2(A,!0,e==="fixed"),r=t.top+A.clientTop,i=t.left+A.clientLeft,u=U5(A),a=A.clientWidth*u.x,n=A.clientHeight*u.y,o=i*u.x,s=r*u.y;return{width:a,height:n,x:o,y:s}}function xme(A,e,t){let r;if(e==="viewport"||e==="layoutViewport")r=Fsr(A,t,e);else if(e==="document")r=vsr(Jd(A));else if(NB(e))r=xsr(e,t);else{let i=Rme(A);r={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return P2(r)}function Ssr(A,e){let t=e.get(A);if(t)return t;let r=W2(A,[],!1).filter((n)=>NB(n)&&q2(n)!=="body"),i=null,u=GB(A).position==="fixed",a=u?Np(A):A;while(NB(a)&&!G5(a)){let n=GB(a),o=Gz(a),s=i?i.position:u?"fixed":"";if(!o&&(s==="fixed"||s==="absolute"&&n.position==="static"))r=r.filter((g)=>g!==a);else i=n;a=Np(a)}return e.set(A,r),r}function Lsr(A){let{element:e,boundary:t,rootBoundary:r,strategy:i}=A,a=[...t==="clippingAncestors"?vL(e)?[]:Ssr(e,this._c):[].concat(t),r],n=xme(e,a[0],i),{top:o,right:s,bottom:l,left:g}=n;for(let C=1;C<a.length;C++){let B=xme(e,a[C],i);o=LB(B.top,o),s=Yd(B.right,s),l=Yd(B.bottom,l),g=LB(B.left,g)}return{width:s-g,height:l-o,x:g,y:o}}function Rsr(A){let{width:e,height:t}=Lme(A);return{width:e,height:t}}function Nsr(A,e,t){let r=eQ(e),i=Jd(e),u=t==="fixed",a=z2(A,!0,u,e),n={scrollLeft:0,scrollTop:0},o=Hd(0);if(r||!u){if(q2(e)!=="body"||bL(i))n=kL(e);if(r){let C=z2(e,!0,u,e);o.x=C.x+e.clientLeft,o.y=C.y+e.clientTop}}if(!r&&i)o.x=Tz(i);let s=i&&!r&&!u?Nme(i,n):Hd(0),l=a.left+n.scrollLeft-o.x-s.x,g=a.top+n.scrollTop-o.y-s.y;return{x:l,y:g,width:a.width,height:a.height}}function dfA(A){return GB(A).position==="static"}function Sme(A,e){if(!eQ(A)||GB(A).position==="fixed")return null;if(e)return e(A);let t=A.offsetParent;if(Jd(A)===t)t=t.ownerDocument.body;return t}function Gme(A,e){let t=Zs(A);if(vL(A))return t;if(!eQ(A)){let i=Np(A);while(i&&!G5(i)){if(NB(i)&&!dfA(i))return i;i=Np(i)}return t}let r=Sme(A,e);while(r&&vme(r)&&dfA(r))r=Sme(r,e);if(r&&G5(r)&&dfA(r)&&!Gz(r))return t;return r||kme(A)||t}var Gsr=async function(A){let e=this.getOffsetParent||Gme,t=this.getDimensions,r=await t(A.floating);return{reference:Nsr(A.reference,await e(A.floating),A.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Usr(A){return GB(A).direction==="rtl"}var Ume={convertOffsetParentRelativeRectToViewportRelativeRect:wsr,getDocumentElement:Jd,getClippingRect:Lsr,getOffsetParent:Gme,getElementRects:Gsr,getClientRects:bsr,getDimensions:Rsr,getScale:U5,isElement:NB,isRTL:Usr};function Mme(A,e){return A.x===e.x&&A.y===e.y&&A.width===e.width&&A.height===e.height}function Msr(A,e,t){let r=null,i,u=Jd(A);function a(){var l;clearTimeout(i),(l=r)==null||l.disconnect(),r=null}function n(l,g){if(l===void 0)l=!1;if(g===void 0)g=1;a();let C=A.getBoundingClientRect(),{left:B,top:E,width:d,height:I}=C;if(!l)e();if(!d||!I)return;let h=wL(E),Q=wL(u.clientWidth-(B+d)),p=wL(u.clientHeight-(E+I)),m=wL(B),D={rootMargin:-h+"px "+-Q+"px "+-p+"px "+-m+"px",threshold:LB(0,Yd(1,g))||1},w=!0;function b(F){let v=F[0].intersectionRatio;if(!Mme(C,A.getBoundingClientRect()))return n();if(v!==g){if(!w)return n();if(!v)i=setTimeout(()=>{n(!1,0.0000001)},1000);else n(!1,v)}w=!1}try{r=new IntersectionObserver(b,{...D,root:u.ownerDocument})}catch(F){r=new IntersectionObserver(b,D)}r.observe(A)}let o=Zs(A),s=()=>n(t);return o.addEventListener("resize",s),n(!0),()=>{o.removeEventListener("resize",s),a()}}function hfA(A,e,t,r){if(r===void 0)r={};let{ancestorScroll:i=!0,ancestorResize:u=!0,elementResize:a=typeof ResizeObserver==="function",layoutShift:n=typeof IntersectionObserver==="function",animationFrame:o=!1}=r,s=IfA(A),l=i||u?[...s?W2(s):[],...e?W2(e):[]]:[];l.forEach((h)=>{i&&h.addEventListener("scroll",t),u&&h.addEventListener("resize",t)});let g=s&&n?Msr(s,t,u):null,C=-1,B=null;if(a){if(B=new ResizeObserver((h)=>{let[Q]=h;if(Q&&Q.target===s&&B&&e)B.unobserve(e),cancelAnimationFrame(C),C=requestAnimationFrame(()=>{var p;(p=B)==null||p.observe(e)});t()}),s&&!o)B.observe(s);if(e)B.observe(e)}let E,d=o?z2(A):null;if(o)I();function I(){let h=z2(A);if(d&&!Mme(d,h))t();d=h,E=requestAnimationFrame(I)}return t(),()=>{var h;if(l.forEach((Q)=>{i&&Q.removeEventListener("scroll",t),u&&Q.removeEventListener("resize",t)}),g==null||g(),(h=B)==null||h.disconnect(),B=null,o)cancelAnimationFrame(E)}}var Tme=fme;var Yme=mme,Hme=hme,Kme=yme,Jme=Qme,QfA=Ime;var Ome=Dme,pfA=(A,e,t)=>{let r=new Map,i=t!=null?t:{},u={...Ume,...i.platform,_c:r};return dme(A,e,{...i,platform:u})};fe();fe();var Tsr=typeof document<"u",Ysr=function(){},Yz=Tsr?Ii:Ysr;function Hz(A,e){if(A===e)return!0;if(typeof A!==typeof e)return!1;if(typeof A==="function"&&A.toString()===e.toString())return!0;let t,r,i;if(A&&e&&typeof A==="object"){if(Array.isArray(A)){if(t=A.length,t!==e.length)return!1;for(r=t;r--!==0;)if(!Hz(A[r],e[r]))return!1;return!0}if(i=Object.keys(A),t=i.length,t!==Object.keys(e).length)return!1;for(r=t;r--!==0;)if(!{}.hasOwnProperty.call(e,i[r]))return!1;for(r=t;r--!==0;){let u=i[r];if(u==="_owner"&&A.$$typeof)continue;if(!Hz(A[u],e[u]))return!1}return!0}return A!==A&&e!==e}function _me(A){if(typeof window>"u")return 1;return(A.ownerDocument.defaultView||window).devicePixelRatio||1}function Pme(A,e){let t=_me(A);return Math.round(e*t)/t}function ffA(A){let e=Ee(A);return Yz(()=>{e.current=A}),e}function Wme(A){if(A===void 0)A={};let{placement:e="bottom",strategy:t="absolute",middleware:r=[],platform:i,elements:{reference:u,floating:a}={},transform:n=!0,whileElementsMounted:o,open:s}=A,[l,g]=we({x:0,y:0,strategy:t,placement:e,middlewareData:{},isPositioned:!1}),[C,B]=we(r);if(!Hz(C,r))B(r);let[E,d]=we(null),[I,h]=we(null),Q=lt((U)=>{if(U!==D.current)D.current=U,d(U)},[]),p=lt((U)=>{if(U!==w.current)w.current=U,h(U)},[]),m=u||E,f=a||I,D=Ee(null),w=Ee(null),b=Ee(l),F=o!=null,v=ffA(o),S=ffA(i),x=ffA(s),k=lt(()=>{if(!D.current||!w.current)return;let U={placement:e,strategy:t,middleware:C};if(S.current)U.platform=S.current;pfA(D.current,w.current,U).then((Y)=>{let H={...Y,isPositioned:x.current!==!1};if(T.current&&!Hz(b.current,H))b.current=H,Wn(()=>{g(H)})})},[C,e,t,S,x]);Yz(()=>{if(s===!1&&b.current.isPositioned)b.current.isPositioned=!1,g((U)=>({...U,isPositioned:!1}))},[s]);let T=Ee(!1);Yz(()=>(T.current=!0,()=>{T.current=!1}),[]),Yz(()=>{if(m)D.current=m;if(f)w.current=f;if(m&&f){if(v.current)return v.current(m,f,k);k()}},[m,f,k,v,F]);let R=Ut(()=>({reference:D,floating:w,setReference:Q,setFloating:p}),[Q,p]),L=Ut(()=>({reference:m,floating:f}),[m,f]),M=Ut(()=>{let U={position:t,left:0,top:0};if(!L.floating)return U;let Y=Pme(L.floating,l.x),H=Pme(L.floating,l.y);if(n)return{...U,transform:"translate("+Y+"px, "+H+"px)",..._me(L.floating)>=1.5&&{willChange:"transform"}};return{position:t,left:Y,top:H}},[t,n,L.floating,l.x,l.y]);return Ut(()=>({...l,update:k,refs:R,elements:L,floatingStyles:M}),[l,k,R,L,M])}var Hsr=(A)=>{function e(t){return{}.hasOwnProperty.call(t,"current")}return{name:"arrow",options:A,fn(t){let{element:r,padding:i}=typeof A==="function"?A(t):A;if(r&&e(r)){if(r.current!=null)return QfA({element:r.current,padding:i}).fn(t);return{}}if(r)return QfA({element:r,padding:i}).fn(t);return{}}}},qme=(A,e)=>{let t=Tme(A);return{name:t.name,fn:t.fn,options:[A,e]}},zme=(A,e)=>{let t=Yme(A);return{name:t.name,fn:t.fn,options:[A,e]}},Zme=(A,e)=>({fn:Ome(A).fn,options:[A,e]}),Vme=(A,e)=>{let t=Hme(A);return{name:t.name,fn:t.fn,options:[A,e]}},jme=(A,e)=>{let t=Kme(A);return{name:t.name,fn:t.fn,options:[A,e]}};var Xme=(A,e)=>{let t=Jme(A);return{name:t.name,fn:t.fn,options:[A,e]}};var $me=(A,e)=>{let t=Hsr(A);return{name:t.name,fn:t.fn,options:[A,e]}};fe();Be();var Ksr="Arrow",A2e=Dt((A,e)=>{let{children:t,width:r=10,height:i=5,...u}=A;return N(zs.svg,{...u,ref:e,width:r,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:A.asChild?t:N("polygon",{points:"0,0 30,0 15,10"})})});A2e.displayName=Ksr;var e2e=A2e;fe();function t2e(A){let[e,t]=we(void 0);return Vc(()=>{if(A){t({width:A.offsetWidth,height:A.offsetHeight});let r=new ResizeObserver((i)=>{if(!Array.isArray(i))return;if(!i.length)return;let u=i[0],a,n;if("borderBoxSize"in u){let o=u.borderBoxSize,s=Array.isArray(o)?o[0]:o;a=s.inlineSize,n=s.blockSize}else a=A.offsetWidth,n=A.offsetHeight;t({width:a,height:n})});return r.observe(A,{box:"border-box"}),()=>r.unobserve(A)}else t(void 0)},[A]),e}Be();var mfA="Popper",[r2e,DfA]=Fz(mfA),[Osr,i2e]=r2e(mfA),u2e=(A)=>{let{__scopePopper:e,children:t}=A,[r,i]=we(null);return N(Osr,{scope:e,anchor:r,onAnchorChange:i,children:t})};u2e.displayName=mfA;var a2e="PopperAnchor",n2e=Dt((A,e)=>{let{__scopePopper:t,virtualRef:r,...i}=A,u=i2e(a2e,t),a=Ee(null),n=Hg(e,a);return le(()=>{u.onAnchorChange(r?.current||a.current)}),r?null:N(zs.div,{...i,ref:n})});n2e.displayName=a2e;var yfA="PopperContent",[Psr,_sr]=r2e(yfA),o2e=Dt((A,e)=>{let{__scopePopper:t,side:r="bottom",sideOffset:i=0,align:u="center",alignOffset:a=0,arrowPadding:n=0,avoidCollisions:o=!0,collisionBoundary:s=[],collisionPadding:l=0,sticky:g="partial",hideWhenDetached:C=!1,updatePositionStrategy:B="optimized",onPlaced:E,...d}=A,I=i2e(yfA,t),[h,Q]=we(null),p=Hg(e,(q)=>Q(q)),[m,f]=we(null),D=t2e(m),w=D?.width??0,b=D?.height??0,F=r+(u!=="center"?"-"+u:""),v=typeof l==="number"?l:{top:0,right:0,bottom:0,left:0,...l},S=Array.isArray(s)?s:[s],x=S.length>0,k={padding:v,boundary:S.filter(qsr),altBoundary:x},{refs:T,floatingStyles:R,placement:L,isPositioned:M,middlewareData:U}=Wme({strategy:"fixed",placement:F,whileElementsMounted:(...q)=>hfA(...q,{animationFrame:B==="always"}),elements:{reference:I.anchor},middleware:[qme({mainAxis:i+b,alignmentAxis:a}),o&&zme({mainAxis:!0,crossAxis:!1,limiter:g==="partial"?Zme():void 0,...k}),o&&Vme({...k}),jme({...k,apply:({elements:q,rects:CA,availableWidth:tA,availableHeight:lA})=>{let{width:gA,height:aA}=CA.reference,RA=q.floating.style;RA.setProperty("--radix-popper-available-width",`${tA}px`),RA.setProperty("--radix-popper-available-height",`${lA}px`),RA.setProperty("--radix-popper-anchor-width",`${gA}px`),RA.setProperty("--radix-popper-anchor-height",`${aA}px`)}}),m&&$me({element:m,padding:n}),zsr({arrowWidth:w,arrowHeight:b}),C&&Xme({strategy:"referenceHidden",...k})]}),[Y,H]=g2e(L),J=Kg(E);Vc(()=>{if(M)J?.()},[M,J]);let K=U.arrow?.x,O=U.arrow?.y,_=U.arrow?.centerOffset!==0,[z,j]=we();return Vc(()=>{if(h)j(window.getComputedStyle(h).zIndex)},[h]),N("div",{ref:T.setFloating,"data-radix-popper-content-wrapper":"",style:{...R,transform:M?R.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:z,["--radix-popper-transform-origin"]:[U.transformOrigin?.x,U.transformOrigin?.y].join(" "),...U.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:A.dir,children:N(Psr,{scope:t,placedSide:Y,onArrowChange:f,arrowX:K,arrowY:O,shouldHideArrow:_,children:N(zs.div,{"data-side":Y,"data-align":H,...d,ref:p,style:{...d.style,animation:!M?"none":void 0}})})})});o2e.displayName=yfA;var s2e="PopperArrow",Wsr={top:"bottom",right:"left",bottom:"top",left:"right"},l2e=Dt(function(e,t){let{__scopePopper:r,...i}=e,u=_sr(s2e,r),a=Wsr[u.placedSide];return N("span",{ref:u.onArrowChange,style:{position:"absolute",left:u.arrowX,top:u.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[u.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[u.placedSide],visibility:u.shouldHideArrow?"hidden":void 0},children:N(e2e,{...i,ref:t,style:{...i.style,display:"block"}})})});l2e.displayName=s2e;function qsr(A){return A!==null}var zsr=(A)=>({name:"transformOrigin",options:A,fn(e){let{placement:t,rects:r,middlewareData:i}=e,a=i.arrow?.centerOffset!==0,n=a?0:A.arrowWidth,o=a?0:A.arrowHeight,[s,l]=g2e(t),g={start:"0%",center:"50%",end:"100%"}[l],C=(i.arrow?.x??0)+n/2,B=(i.arrow?.y??0)+o/2,E="",d="";if(s==="bottom")E=a?g:`${C}px`,d=`${-o}px`;else if(s==="top")E=a?g:`${C}px`,d=`${r.floating.height+o}px`;else if(s==="right")E=`${-o}px`,d=a?g:`${B}px`;else if(s==="left")E=`${r.floating.width+o}px`,d=a?g:`${B}px`;return{data:{x:E,y:d}}}});function g2e(A){let[e,t="center"]=A.split("-");return[e,t]}var c2e=u2e,wfA=n2e,C2e=o2e,B2e=l2e;fe();Be();var Vsr="Portal",bfA=Dt((A,e)=>{let{container:t,...r}=A,[i,u]=we(!1);Vc(()=>u(!0),[]);let a=t||i&&globalThis?.document?.body;return a?R5(N(zs.div,{...r,ref:e}),a):null});bfA.displayName=Vsr;fe();fe();function jsr(A,e){return G1((t,r)=>e[t][r]??t,A)}var Jz=(A)=>{let{present:e,children:t}=A,r=Xsr(e),i=typeof t==="function"?t({present:r.isPresent}):di.only(t),u=Hg(r.ref,$sr(i));return typeof t==="function"||r.isPresent?Jn(i,{ref:u}):null};Jz.displayName="Presence";function Xsr(A){let[e,t]=we(),r=Ee({}),i=Ee(A),u=Ee("none"),a=A?"mounted":"unmounted",[n,o]=jsr(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return le(()=>{let s=Kz(r.current);u.current=n==="mounted"?s:"none"},[n]),Vc(()=>{let s=r.current,l=i.current;if(l!==A){let C=u.current,B=Kz(s);if(A)o("MOUNT");else if(B==="none"||s?.display==="none")o("UNMOUNT");else if(l&&C!==B)o("ANIMATION_OUT");else o("UNMOUNT");i.current=A}},[A,o]),Vc(()=>{if(e){let s,l=e.ownerDocument.defaultView??window,g=(B)=>{let d=Kz(r.current).includes(B.animationName);if(B.target===e&&d){if(o("ANIMATION_END"),!i.current){let I=e.style.animationFillMode;e.style.animationFillMode="forwards",s=l.setTimeout(()=>{if(e.style.animationFillMode==="forwards")e.style.animationFillMode=I})}}},C=(B)=>{if(B.target===e)u.current=Kz(r.current)};return e.addEventListener("animationstart",C),e.addEventListener("animationcancel",g),e.addEventListener("animationend",g),()=>{l.clearTimeout(s),e.removeEventListener("animationstart",C),e.removeEventListener("animationcancel",g),e.removeEventListener("animationend",g)}}else o("ANIMATION_END")},[e,o]),{isPresent:["mounted","unmountSuspended"].includes(n),ref:lt((s)=>{if(s)r.current=getComputedStyle(s);t(s)},[])}}function Kz(A){return A?.animationName||"none"}function $sr(A){let e=Object.getOwnPropertyDescriptor(A.props,"ref")?.get,t=e&&"isReactWarning"in e&&e.isReactWarning;if(t)return A.ref;if(e=Object.getOwnPropertyDescriptor(A,"ref")?.get,t=e&&"isReactWarning"in e&&e.isReactWarning,t)return A.props.ref;return A.props.ref||A.ref}fe();function E2e({prop:A,defaultProp:e,onChange:t=()=>{}}){let[r,i]=Alr({defaultProp:e,onChange:t}),u=A!==void 0,a=u?A:r,n=Kg(t),o=lt((s)=>{if(u){let g=typeof s==="function"?s(A):s;if(g!==A)n(g)}else i(s)},[u,A,i,n]);return[a,o]}function Alr({defaultProp:A,onChange:e}){let t=we(A),[r]=t,i=Ee(r),u=Kg(e);return le(()=>{if(i.current!==r)u(r),i.current=r},[r,i,u]),t}var elr=function(A){if(typeof document>"u")return null;var e=Array.isArray(A)?A[0]:A;return e.ownerDocument.body},M5=new WeakMap,Oz=new WeakMap,Pz={},vfA=0,d2e=function(A){return A&&(A.host||d2e(A.parentNode))},tlr=function(A,e){return e.map(function(t){if(A.contains(t))return t;var r=d2e(t);if(r&&A.contains(r))return r;return console.error("aria-hidden",t,"in not contained inside",A,". Doing nothing"),null}).filter(function(t){return Boolean(t)})},rlr=function(A,e,t,r){var i=tlr(e,Array.isArray(A)?A:[A]);if(!Pz[t])Pz[t]=new WeakMap;var u=Pz[t],a=[],n=new Set,o=new Set(i),s=function(g){if(!g||n.has(g))return;n.add(g),s(g.parentNode)};i.forEach(s);var l=function(g){if(!g||o.has(g))return;Array.prototype.forEach.call(g.children,function(C){if(n.has(C))l(C);else try{var B=C.getAttribute(r),E=B!==null&&B!=="false",d=(M5.get(C)||0)+1,I=(u.get(C)||0)+1;if(M5.set(C,d),u.set(C,I),a.push(C),d===1&&E)Oz.set(C,!0);if(I===1)C.setAttribute(t,"true");if(!E)C.setAttribute(r,"true")}catch(h){console.error("aria-hidden: cannot operate on ",C,h)}})};return l(e),n.clear(),vfA++,function(){if(a.forEach(function(g){var C=M5.get(g)-1,B=u.get(g)-1;if(M5.set(g,C),u.set(g,B),!C){if(!Oz.has(g))g.removeAttribute(r);Oz.delete(g)}if(!B)g.removeAttribute(t)}),vfA--,!vfA)M5=new WeakMap,M5=new WeakMap,Oz=new WeakMap,Pz={}}},I2e=function(A,e,t){if(t===void 0)t="data-aria-hidden";var r=Array.from(Array.isArray(A)?A:[A]),i=e||elr(A);if(!i)return function(){return null};return r.push.apply(r,Array.from(i.querySelectorAll("[aria-live], script"))),rlr(r,i,t,"aria-hidden")};var _l=function(){return _l=Object.assign||function(e){for(var t,r=1,i=arguments.length;r<i;r++){t=arguments[r];for(var u in t)if(Object.prototype.hasOwnProperty.call(t,u))e[u]=t[u]}return e},_l.apply(this,arguments)};function _z(A,e){var t={};for(var r in A)if(Object.prototype.hasOwnProperty.call(A,r)&&e.indexOf(r)<0)t[r]=A[r];if(A!=null&&typeof Object.getOwnPropertySymbols==="function"){for(var i=0,r=Object.getOwnPropertySymbols(A);i<r.length;i++)if(e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(A,r[i]))t[r[i]]=A[r[i]]}return t}function h2e(A,e,t){if(t||arguments.length===2){for(var r=0,i=e.length,u;r<i;r++)if(u||!(r in e)){if(!u)u=Array.prototype.slice.call(e,0,r);u[r]=e[r]}}return A.concat(u||Array.prototype.slice.call(e))}fe();fe();var Z2="right-scroll-bar-position",V2="width-before-scroll-bar",kfA="with-scroll-bars-hidden",FfA="--removed-body-scroll-bar-size";fe();function Wz(A,e){if(typeof A==="function")A(e);else if(A)A.current=e;return A}fe();function Q2e(A,e){var t=we(function(){return{value:A,callback:e,facade:{get current(){return t.value},set current(r){var i=t.value;if(i!==r)t.value=r,t.callback(r,i)}}}})[0];return t.callback=e,t.facade}var ilr=typeof window<"u"?Ii:le,p2e=new WeakMap;function xfA(A,e){var t=Q2e(e||null,function(r){return A.forEach(function(i){return Wz(i,r)})});return ilr(function(){var r=p2e.get(t);if(r){var i=new Set(r),u=new Set(A),a=t.current;i.forEach(function(n){if(!u.has(n))Wz(n,null)}),u.forEach(function(n){if(!i.has(n))Wz(n,a)})}p2e.set(t,A)},[A]),t}function ulr(A){return A}function alr(A,e){if(e===void 0)e=ulr;var t=[],r=!1,i={read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");if(t.length)return t[t.length-1];return A},useMedium:function(u){var a=e(u,r);return t.push(a),function(){t=t.filter(function(n){return n!==a})}},assignSyncMedium:function(u){r=!0;while(t.length){var a=t;t=[],a.forEach(u)}t={push:function(n){return u(n)},filter:function(){return t}}},assignMedium:function(u){r=!0;var a=[];if(t.length){var n=t;t=[],n.forEach(u),a=t}var o=function(){var l=a;a=[],l.forEach(u)},s=function(){return Promise.resolve().then(o)};s(),t={push:function(l){a.push(l),s()},filter:function(l){return a=a.filter(l),t}}}};return i}function SfA(A){if(A===void 0)A={};var e=alr(null);return e.options=_l({async:!0,ssr:!1},A),e}fe();var f2e=function(A){var e=A.sideCar,t=_z(A,["sideCar"]);if(!e)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=e.read();if(!r)throw Error("Sidecar medium not found");return Rt(r,_l({},t))};f2e.isSideCarExport=!0;function LfA(A,e){return A.useMedium(e),f2e}var qz=SfA();var RfA=function(){return},FL=Dt(function(A,e){var t=Ee(null),r=we({onScrollCapture:RfA,onWheelCapture:RfA,onTouchMoveCapture:RfA}),i=r[0],u=r[1],{forwardProps:a,children:n,className:o,removeScrollBar:s,enabled:l,shards:g,sideCar:C,noRelative:B,noIsolation:E,inert:d,allowPinchZoom:I,as:h}=A,Q=h===void 0?"div":h,p=A.gapMode,m=_z(A,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),f=C,D=xfA([t,e]),w=_l(_l({},m),i);return Rt(Co,null,l&&Rt(f,{sideCar:qz,removeScrollBar:s,shards:g,noRelative:B,noIsolation:E,inert:d,setCallbacks:u,allowPinchZoom:!!I,lockRef:t,gapMode:p}),a?Jn(di.only(n),_l(_l({},w),{ref:D})):Rt(Q,_l({},w,{className:o,ref:D}),n))});FL.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};FL.classNames={fullWidth:V2,zeroRight:Z2};fe();fe();fe();var m2e;var D2e=function(){if(m2e)return m2e;if(typeof __webpack_nonce__<"u")return __webpack_nonce__;return};function nlr(){if(!document)return null;var A=document.createElement("style");A.type="text/css";var e=D2e();if(e)A.setAttribute("nonce",e);return A}function olr(A,e){if(A.styleSheet)A.styleSheet.cssText=e;else A.appendChild(document.createTextNode(e))}function slr(A){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(A)}var NfA=function(){var A=0,e=null;return{add:function(t){if(A==0){if(e=nlr())olr(e,t),slr(e)}A++},remove:function(){if(A--,!A&&e)e.parentNode&&e.parentNode.removeChild(e),e=null}}};var GfA=function(){var A=NfA();return function(e,t){le(function(){return A.add(e),function(){A.remove()}},[e&&t])}};var xL=function(){var A=GfA(),e=function(t){var{styles:r,dynamic:i}=t;return A(r,i),null};return e};var llr={left:0,top:0,right:0,gap:0},UfA=function(A){return parseInt(A||"",10)||0},glr=function(A){var e=window.getComputedStyle(document.body),t=e[A==="padding"?"paddingLeft":"marginLeft"],r=e[A==="padding"?"paddingTop":"marginTop"],i=e[A==="padding"?"paddingRight":"marginRight"];return[UfA(t),UfA(r),UfA(i)]},MfA=function(A){if(A===void 0)A="margin";if(typeof window>"u")return llr;var e=glr(A),t=document.documentElement.clientWidth,r=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,r-t+e[2]-e[0])}};var clr=xL(),T5="data-scroll-locked",Clr=function(A,e,t,r){var{left:i,top:u,right:a,gap:n}=A;if(t===void 0)t="margin";return`
|
||
.`.concat(kfA,` {
|
||
overflow: hidden `).concat(r,`;
|
||
padding-right: `).concat(n,"px ").concat(r,`;
|
||
}
|
||
body[`).concat(T5,`] {
|
||
overflow: hidden `).concat(r,`;
|
||
overscroll-behavior: contain;
|
||
`).concat([e&&"position: relative ".concat(r,";"),t==="margin"&&`
|
||
padding-left: `.concat(i,`px;
|
||
padding-top: `).concat(u,`px;
|
||
padding-right: `).concat(a,`px;
|
||
margin-left:0;
|
||
margin-top:0;
|
||
margin-right: `).concat(n,"px ").concat(r,`;
|
||
`),t==="padding"&&"padding-right: ".concat(n,"px ").concat(r,";")].filter(Boolean).join(""),`
|
||
}
|
||
|
||
.`).concat(Z2,` {
|
||
right: `).concat(n,"px ").concat(r,`;
|
||
}
|
||
|
||
.`).concat(V2,` {
|
||
margin-right: `).concat(n,"px ").concat(r,`;
|
||
}
|
||
|
||
.`).concat(Z2," .").concat(Z2,` {
|
||
right: 0 `).concat(r,`;
|
||
}
|
||
|
||
.`).concat(V2," .").concat(V2,` {
|
||
margin-right: 0 `).concat(r,`;
|
||
}
|
||
|
||
body[`).concat(T5,`] {
|
||
`).concat(FfA,": ").concat(n,`px;
|
||
}
|
||
`)},y2e=function(){var A=parseInt(document.body.getAttribute(T5)||"0",10);return isFinite(A)?A:0},Blr=function(){le(function(){return document.body.setAttribute(T5,(y2e()+1).toString()),function(){var A=y2e()-1;if(A<=0)document.body.removeAttribute(T5);else document.body.setAttribute(T5,A.toString())}},[])},TfA=function(A){var{noRelative:e,noImportant:t,gapMode:r}=A,i=r===void 0?"margin":r;Blr();var u=Ut(function(){return MfA(i)},[i]);return Rt(clr,{styles:Clr(u,!e,i,!t?"!important":"")})};var YfA=!1;if(typeof window<"u")try{Y5=Object.defineProperty({},"passive",{get:function(){return YfA=!0,!0}}),window.addEventListener("test",Y5,Y5),window.removeEventListener("test",Y5,Y5)}catch(A){YfA=!1}var Y5,j2=YfA?{passive:!1}:!1;var Elr=function(A){return A.tagName==="TEXTAREA"},w2e=function(A,e){if(!(A instanceof Element))return!1;var t=window.getComputedStyle(A);return t[e]!=="hidden"&&!(t.overflowY===t.overflowX&&!Elr(A)&&t[e]==="visible")},dlr=function(A){return w2e(A,"overflowY")},Ilr=function(A){return w2e(A,"overflowX")},HfA=function(A,e){var t=e.ownerDocument,r=e;do{if(typeof ShadowRoot<"u"&&r instanceof ShadowRoot)r=r.host;var i=b2e(A,r);if(i){var u=v2e(A,r),a=u[1],n=u[2];if(a>n)return!0}r=r.parentNode}while(r&&r!==t.body);return!1},hlr=function(A){var{scrollTop:e,scrollHeight:t,clientHeight:r}=A;return[e,t,r]},Qlr=function(A){var{scrollLeft:e,scrollWidth:t,clientWidth:r}=A;return[e,t,r]},b2e=function(A,e){return A==="v"?dlr(e):Ilr(e)},v2e=function(A,e){return A==="v"?hlr(e):Qlr(e)},plr=function(A,e){return A==="h"&&e==="rtl"?-1:1},k2e=function(A,e,t,r,i){var u=plr(A,window.getComputedStyle(e).direction),a=u*r,n=t.target,o=e.contains(n),s=!1,l=a>0,g=0,C=0;do{if(!n)break;var B=v2e(A,n),E=B[0],d=B[1],I=B[2],h=d-I-u*E;if(E||h){if(b2e(A,n))g+=h,C+=E}var Q=n.parentNode;n=Q&&Q.nodeType===Node.DOCUMENT_FRAGMENT_NODE?Q.host:Q}while(!o&&n!==document.body||o&&(e.contains(n)||e===n));if(l&&(i&&Math.abs(g)<1||!i&&a>g))s=!0;else if(!l&&(i&&Math.abs(C)<1||!i&&-a>C))s=!0;return s};var zz=function(A){return"changedTouches"in A?[A.changedTouches[0].clientX,A.changedTouches[0].clientY]:[0,0]},F2e=function(A){return[A.deltaX,A.deltaY]},x2e=function(A){return A&&"current"in A?A.current:A},flr=function(A,e){return A[0]===e[0]&&A[1]===e[1]},mlr=function(A){return`
|
||
.block-interactivity-`.concat(A,` {pointer-events: none;}
|
||
.allow-interactivity-`).concat(A,` {pointer-events: all;}
|
||
`)},Dlr=0,H5=[];function S2e(A){var e=Ee([]),t=Ee([0,0]),r=Ee(),i=we(Dlr++)[0],u=we(xL)[0],a=Ee(A);le(function(){a.current=A},[A]),le(function(){if(A.inert){document.body.classList.add("block-interactivity-".concat(i));var d=h2e([A.lockRef.current],(A.shards||[]).map(x2e),!0).filter(Boolean);return d.forEach(function(I){return I.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),d.forEach(function(I){return I.classList.remove("allow-interactivity-".concat(i))})}}return},[A.inert,A.lockRef.current,A.shards]);var n=lt(function(d,I){if("touches"in d&&d.touches.length===2||d.type==="wheel"&&d.ctrlKey)return!a.current.allowPinchZoom;var h=zz(d),Q=t.current,p="deltaX"in d?d.deltaX:Q[0]-h[0],m="deltaY"in d?d.deltaY:Q[1]-h[1],f,D=d.target,w=Math.abs(p)>Math.abs(m)?"h":"v";if("touches"in d&&w==="h"&&D.type==="range")return!1;var b=window.getSelection(),F=b&&b.anchorNode,v=F?F===D||F.contains(D):!1;if(v)return!1;var S=HfA(w,D);if(!S)return!0;if(S)f=w;else f=w==="v"?"h":"v",S=HfA(w,D);if(!S)return!1;if(!r.current&&"changedTouches"in d&&(p||m))r.current=f;if(!f)return!0;var x=r.current||f;return k2e(x,I,d,x==="h"?p:m,!0)},[]),o=lt(function(d){var I=d;if(!H5.length||H5[H5.length-1]!==u)return;var h="deltaY"in I?F2e(I):zz(I),Q=e.current.filter(function(f){return f.name===I.type&&(f.target===I.target||I.target===f.shadowParent)&&flr(f.delta,h)})[0];if(Q&&Q.should){if(I.cancelable)I.preventDefault();return}if(!Q){var p=(a.current.shards||[]).map(x2e).filter(Boolean).filter(function(f){return f.contains(I.target)}),m=p.length>0?n(I,p[0]):!a.current.noIsolation;if(m){if(I.cancelable)I.preventDefault()}}},[]),s=lt(function(d,I,h,Q){var p={name:d,delta:I,target:h,should:Q,shadowParent:ylr(h)};e.current.push(p),setTimeout(function(){e.current=e.current.filter(function(m){return m!==p})},1)},[]),l=lt(function(d){t.current=zz(d),r.current=void 0},[]),g=lt(function(d){s(d.type,F2e(d),d.target,n(d,A.lockRef.current))},[]),C=lt(function(d){s(d.type,zz(d),d.target,n(d,A.lockRef.current))},[]);le(function(){return H5.push(u),A.setCallbacks({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:C}),document.addEventListener("wheel",o,j2),document.addEventListener("touchmove",o,j2),document.addEventListener("touchstart",l,j2),function(){H5=H5.filter(function(d){return d!==u}),document.removeEventListener("wheel",o,j2),document.removeEventListener("touchmove",o,j2),document.removeEventListener("touchstart",l,j2)}},[]);var{removeScrollBar:B,inert:E}=A;return Rt(Co,null,E?Rt(u,{styles:mlr(i)}):null,B?Rt(TfA,{noRelative:A.noRelative,gapMode:A.gapMode}):null)}function ylr(A){var e=null;while(A!==null){if(A instanceof ShadowRoot)e=A.host,A=A.host;A=A.parentNode}return e}var L2e=LfA(qz,S2e);var R2e=Dt(function(A,e){return Rt(FL,_l({},A,{ref:e,sideCar:L2e}))});R2e.classNames=FL.classNames;var KfA=R2e;Be();var JfA="Popover",[N2e,G5i]=Fz(JfA,[DfA]),SL=DfA(),[wlr,Gp]=N2e(JfA),G2e=(A)=>{let{__scopePopover:e,children:t,open:r,defaultOpen:i,onOpenChange:u,modal:a=!1}=A,n=SL(e),o=Ee(null),[s,l]=we(!1),[g=!1,C]=E2e({prop:r,defaultProp:i,onChange:u});return N(c2e,{...n,children:N(wlr,{scope:e,contentId:ume(),triggerRef:o,open:g,onOpenChange:C,onOpenToggle:lt(()=>C((B)=>!B),[C]),hasCustomAnchor:s,onCustomAnchorAdd:lt(()=>l(!0),[]),onCustomAnchorRemove:lt(()=>l(!1),[]),modal:a,children:t})})};G2e.displayName=JfA;var U2e="PopoverAnchor",blr=Dt((A,e)=>{let{__scopePopover:t,...r}=A,i=Gp(U2e,t),u=SL(t),{onCustomAnchorAdd:a,onCustomAnchorRemove:n}=i;return le(()=>(a(),()=>n()),[a,n]),N(wfA,{...u,...r,ref:e})});blr.displayName=U2e;var M2e="PopoverTrigger",T2e=Dt((A,e)=>{let{__scopePopover:t,...r}=A,i=Gp(M2e,t),u=SL(t),a=Hg(e,i.triggerRef),n=N(zs.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":P2e(i.open),...r,ref:a,onClick:Td(A.onClick,i.onOpenToggle)});return i.hasCustomAnchor?n:N(wfA,{asChild:!0,...u,children:n})});T2e.displayName=M2e;var OfA="PopoverPortal",[vlr,klr]=N2e(OfA,{forceMount:void 0}),Y2e=(A)=>{let{__scopePopover:e,forceMount:t,children:r,container:i}=A,u=Gp(OfA,e);return N(vlr,{scope:e,forceMount:t,children:N(Jz,{present:t||u.open,children:N(bfA,{asChild:!0,container:i,children:r})})})};Y2e.displayName=OfA;var K5="PopoverContent",H2e=Dt((A,e)=>{let t=klr(K5,A.__scopePopover),{forceMount:r=t.forceMount,...i}=A,u=Gp(K5,A.__scopePopover);return N(Jz,{present:r||u.open,children:u.modal?N(Flr,{...i,ref:e}):N(xlr,{...i,ref:e})})});H2e.displayName=K5;var Flr=Dt((A,e)=>{let t=Gp(K5,A.__scopePopover),r=Ee(null),i=Hg(e,r),u=Ee(!1);return le(()=>{let a=r.current;if(a)return I2e(a)},[]),N(KfA,{as:mL,allowPinchZoom:!0,children:N(K2e,{...A,ref:i,trapFocus:t.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:Td(A.onCloseAutoFocus,(a)=>{if(a.preventDefault(),!u.current)t.triggerRef.current?.focus()}),onPointerDownOutside:Td(A.onPointerDownOutside,(a)=>{let n=a.detail.originalEvent,o=n.button===0&&n.ctrlKey===!0,s=n.button===2||o;u.current=s},{checkForDefaultPrevented:!1}),onFocusOutside:Td(A.onFocusOutside,(a)=>a.preventDefault(),{checkForDefaultPrevented:!1})})})}),xlr=Dt((A,e)=>{let t=Gp(K5,A.__scopePopover),r=Ee(!1),i=Ee(!1);return N(K2e,{...A,ref:e,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:(u)=>{if(A.onCloseAutoFocus?.(u),!u.defaultPrevented){if(!r.current)t.triggerRef.current?.focus();u.preventDefault()}r.current=!1,i.current=!1},onInteractOutside:(u)=>{if(A.onInteractOutside?.(u),!u.defaultPrevented){if(r.current=!0,u.detail.originalEvent.type==="pointerdown")i.current=!0}let a=u.target;if(t.triggerRef.current?.contains(a))u.preventDefault();if(u.detail.originalEvent.type==="focusin"&&i.current)u.preventDefault()}})}),K2e=Dt((A,e)=>{let{__scopePopover:t,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:u,disableOutsidePointerEvents:a,onEscapeKeyDown:n,onPointerDownOutside:o,onFocusOutside:s,onInteractOutside:l,...g}=A,C=Gp(K5,t),B=SL(t);return $3e(),N(cfA,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:u,children:N(ofA,{asChild:!0,disableOutsidePointerEvents:a,onInteractOutside:l,onEscapeKeyDown:n,onPointerDownOutside:o,onFocusOutside:s,onDismiss:()=>C.onOpenChange(!1),children:N(C2e,{"data-state":P2e(C.open),role:"dialog",id:C.contentId,...B,...g,ref:e,style:{...g.style,...{"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}}})})})}),J2e="PopoverClose",Slr=Dt((A,e)=>{let{__scopePopover:t,...r}=A,i=Gp(J2e,t);return N(zs.button,{type:"button",...r,ref:e,onClick:Td(A.onClick,()=>i.onOpenChange(!1))})});Slr.displayName=J2e;var Llr="PopoverArrow",O2e=Dt((A,e)=>{let{__scopePopover:t,...r}=A,i=SL(t);return N(B2e,{...i,...r,ref:e})});O2e.displayName=Llr;function P2e(A){return A?"open":"closed"}var Up=G2e;var Mp=T2e,_2e=Y2e,J5=H2e;var Zz=O2e;fe();fe();fe();fe();fe();fe();fe();Be();Be();fe();fe();Be();Be();Be();fe();Be();Be();Be();fe();fe();fe();Be();fe();Be();Be();fe();fe();Be();Be();Be();fe();Be();Be();fe();Be();Be();fe();Be();Be();Be();fe();Be();Be();Be();Be();Be();Be();fe();Be();Be();Be();Be();fe();Be();Be();fe();fe();fe();fe();Be();fe();fe();fe();fe();fe();Be();Be();Be();fe();fe();Be();Be();fe();L1();Be();Be();Be();fe();Be();Be();Be();fe();Be();Be();fe();fe();Be();fe();Be();fe();Be();Be();Be();fe();Be();Be();fe();fe();var CZe=yu(i9(),1),BZe=yu(z2e(),1);fe();var Z2e=(A)=>{let e,t=new Set,r=(l,g)=>{let C=typeof l==="function"?l(e):l;if(!Object.is(C,e)){let B=e;e=(g!=null?g:typeof C!=="object"||C===null)?C:Object.assign({},e,C),t.forEach((E)=>E(e,B))}},i=()=>e,o={setState:r,getState:i,getInitialState:()=>s,subscribe:(l)=>(t.add(l),()=>t.delete(l)),destroy:()=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production")console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected.");t.clear()}},s=e=A(r,i,o);return o},V2e=(A)=>A?Z2e(A):Z2e;fe();fe();var _fA={};PZ(_fA,{useSyncExternalStoreWithSelector:()=>X2e},{useSyncExternalStoreWithSelector:(T5i)=>X2e=T5i});var Plr=j2e();function _lr(A,e){return A===e&&(A!==0||1/A===1/e)||A!==A&&e!==e}var Wlr=typeof Object.is==="function"?Object.is:_lr,qlr=Plr.useSyncExternalStore,zlr=Ee,Zlr=le,Vlr=Ut,jlr=N1;var X2e=function(A,e,t,r,i){var u=zlr(null);if(u.current===null){var a={hasValue:!1,value:null};u.current=a}else a=u.current;u=Vlr(function(){function o(B){if(!s){if(s=!0,l=B,B=r(B),i!==void 0&&a.hasValue){var E=a.value;if(i(E,B))return g=E}return g=B}if(E=g,Wlr(l,B))return E;var d=r(B);if(i!==void 0&&i(E,d))return l=B,E;return l=B,g=d}var s=!1,l,g,C=t===void 0?null:t;return[function(){return o(e())},C===null?void 0:function(){return o(C())}]},[e,t,r,i]);var n=qlr(A,u[0],u[1]);return Zlr(function(){a.hasValue=!0,a.value=n},[n]),jlr(n),n};var{useDebugValue:Xlr}=vt,{useSyncExternalStoreWithSelector:$lr}=_fA,$2e=!1,Agr=(A)=>A;function egr(A,e=Agr,t){if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&t&&!$2e)console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),$2e=!0;let r=$lr(A.subscribe,A.getState,A.getServerState||A.getInitialState,e,t);return Xlr(r),r}var ADe=(A)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&typeof A!=="function")console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");let e=typeof A==="function"?V2e(A):A,t=(r,i)=>egr(e,r,i);return Object.assign(t,e),t},eDe=(A)=>A?ADe(A):ADe;var tDe,rDe,iDe=typeof window<"u"&&((tDe=window.document)!=null&&tDe.createElement||((rDe=window.navigator)==null?void 0:rDe.product)==="ReactNative")?Ii:le;function UB(){let A=eDe((e)=>({current:[],version:0,set:e}));return{In:({children:e})=>{let t=A((i)=>i.set),r=A((i)=>i.version);return iDe(()=>{t((i)=>({version:i.version+1}))},[]),iDe(()=>(t(({current:i})=>({current:[...i,e]})),()=>t(({current:i})=>({current:i.filter((u)=>u!==e)}))),[e,r]),null},Out:()=>{let e=A((t)=>t.current);return Rt(Co,null,e)}}}Be();fe();Be();Be();Be();Be();fe();Be();Be();fe();Be();fe();Be();fe();fe();Be();fe();Be();Be();fe();Be();fe();Be();Be();Be();Be();Be();Be();Be();Be();L1();fe();Be();fe();Be();fe();Be();fe();L1();Be();Be();Be();Be();fe();fe();fe();Be();Be();function ju(){return ju=Object.assign?Object.assign.bind():function(A){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(A[r]=t[r])}return A},ju.apply(null,arguments)}fe();function Vz(A,e,{checkForDefaultPrevented:t=!0}={}){return function(i){if(A===null||A===void 0||A(i),t===!1||!i.defaultPrevented)return e===null||e===void 0?void 0:e(i)}}fe();function uDe(A,e=[]){let t=[];function r(u,a){let n=yi(a),o=t.length;t=[...t,a];function s(g){let{scope:C,children:B,...E}=g,d=(C===null||C===void 0?void 0:C[A][o])||n,I=Ut(()=>E,Object.values(E));return Rt(d.Provider,{value:I},B)}function l(g,C){let B=(C===null||C===void 0?void 0:C[A][o])||n,E=Si(B);if(E)return E;if(a!==void 0)return a;throw Error(`\`${g}\` must be used within \`${u}\``)}return s.displayName=u+"Provider",[s,l]}let i=()=>{let u=t.map((a)=>yi(a));return function(n){let o=(n===null||n===void 0?void 0:n[A])||u;return Ut(()=>({[`__scope${A}`]:{...n,[A]:o}}),[n,o])}};return i.scopeName=A,[r,tgr(i,...e)]}function tgr(...A){let e=A[0];if(A.length===1)return e;let t=()=>{let r=A.map((i)=>({useScope:i(),scopeName:i.scopeName}));return function(u){let a=r.reduce((n,{useScope:o,scopeName:s})=>{let g=o(u)[`__scope${s}`];return{...n,...g}},{});return Ut(()=>({[`__scope${e.scopeName}`]:a}),[a])}};return t.scopeName=e.scopeName,t}fe();function X2(A,e,{checkForDefaultPrevented:t=!0}={}){return function(i){if(A===null||A===void 0||A(i),t===!1||!i.defaultPrevented)return e===null||e===void 0?void 0:e(i)}}fe();fe();function aDe(A,e=[]){let t=[];function r(u,a){let n=yi(a),o=t.length;t=[...t,a];function s(g){let{scope:C,children:B,...E}=g,d=(C===null||C===void 0?void 0:C[A][o])||n,I=Ut(()=>E,Object.values(E));return Rt(d.Provider,{value:I},B)}function l(g,C){let B=(C===null||C===void 0?void 0:C[A][o])||n,E=Si(B);if(E)return E;if(a!==void 0)return a;throw Error(`\`${g}\` must be used within \`${u}\``)}return s.displayName=u+"Provider",[s,l]}let i=()=>{let u=t.map((a)=>yi(a));return function(n){let o=(n===null||n===void 0?void 0:n[A])||u;return Ut(()=>({[`__scope${A}`]:{...n,[A]:o}}),[n,o])}};return i.scopeName=A,[r,rgr(i,...e)]}function rgr(...A){let e=A[0];if(A.length===1)return e;let t=()=>{let r=A.map((i)=>({useScope:i(),scopeName:i.scopeName}));return function(u){let a=r.reduce((n,{useScope:o,scopeName:s})=>{let g=o(u)[`__scope${s}`];return{...n,...g}},{});return Ut(()=>({[`__scope${e.scopeName}`]:a}),[a])}};return t.scopeName=e.scopeName,t}fe();function igr(A,e){if(typeof A==="function")A(e);else if(A!==null&&A!==void 0)A.current=e}function WfA(...A){return(e)=>A.forEach((t)=>igr(t,e))}function qfA(...A){return lt(WfA(...A),A)}fe();var jz=Dt((A,e)=>{let{children:t,...r}=A,i=di.toArray(t),u=i.find(agr);if(u){let a=u.props.children,n=i.map((o)=>{if(o===u){if(di.count(a)>1)return di.only(null);return Da(a)?a.props.children:null}else return o});return Rt(zfA,ju({},r,{ref:e}),Da(a)?Jn(a,void 0,n):null)}return Rt(zfA,ju({},r,{ref:e}),t)});jz.displayName="Slot";var zfA=Dt((A,e)=>{let{children:t,...r}=A;if(Da(t))return Jn(t,{...ngr(r,t.props),ref:WfA(e,t.ref)});return di.count(t)>1?di.only(null):null});zfA.displayName="SlotClone";var ugr=({children:A})=>Rt(Co,null,A);function agr(A){return Da(A)&&A.type===ugr}function ngr(A,e){let t={...e};for(let r in e){let i=A[r],u=e[r];if(/^on[A-Z]/.test(r)){if(i&&u)t[r]=(...n)=>{u(...n),i(...n)};else if(i)t[r]=i}else if(r==="style")t[r]={...i,...u};else if(r==="className")t[r]=[i,u].filter(Boolean).join(" ")}return{...A,...t}}function nDe(A){let e=A+"CollectionProvider",[t,r]=aDe(e),[i,u]=t(e,{collectionRef:{current:null},itemMap:new Map}),a=(B)=>{let{scope:E,children:d}=B,I=Ee(null),h=Ee(new Map).current;return Rt(i,{scope:E,itemMap:h,collectionRef:I},d)},n=A+"CollectionSlot",o=Dt((B,E)=>{let{scope:d,children:I}=B,h=u(n,d),Q=qfA(E,h.collectionRef);return Rt(jz,{ref:Q},I)}),s=A+"CollectionItemSlot",l="data-radix-collection-item",g=Dt((B,E)=>{let{scope:d,children:I,...h}=B,Q=Ee(null),p=qfA(E,Q),m=u(s,d);return le(()=>(m.itemMap.set(Q,{ref:Q,...h}),()=>void m.itemMap.delete(Q))),Rt(jz,{[l]:"",ref:p},I)});function C(B){let E=u(A+"CollectionConsumer",B);return lt(()=>{let I=E.collectionRef.current;if(!I)return[];let h=Array.from(I.querySelectorAll(`[${l}]`));return Array.from(E.itemMap.values()).sort((m,f)=>h.indexOf(m.ref.current)-h.indexOf(f.ref.current))},[E.collectionRef,E.itemMap])}return[{Provider:a,Slot:o,ItemSlot:g},C,r]}fe();function ogr(A,e){if(typeof A==="function")A(e);else if(A!==null&&A!==void 0)A.current=e}function ZfA(...A){return(e)=>A.forEach((t)=>ogr(t,e))}function oDe(...A){return lt(ZfA(...A),A)}fe();function sDe(A,e=[]){let t=[];function r(u,a){let n=yi(a),o=t.length;t=[...t,a];function s(g){let{scope:C,children:B,...E}=g,d=(C===null||C===void 0?void 0:C[A][o])||n,I=Ut(()=>E,Object.values(E));return Rt(d.Provider,{value:I},B)}function l(g,C){let B=(C===null||C===void 0?void 0:C[A][o])||n,E=Si(B);if(E)return E;if(a!==void 0)return a;throw Error(`\`${g}\` must be used within \`${u}\``)}return s.displayName=u+"Provider",[s,l]}let i=()=>{let u=t.map((a)=>yi(a));return function(n){let o=(n===null||n===void 0?void 0:n[A])||u;return Ut(()=>({[`__scope${A}`]:{...n,[A]:o}}),[n,o])}};return i.scopeName=A,[r,sgr(i,...e)]}function sgr(...A){let e=A[0];if(A.length===1)return e;let t=()=>{let r=A.map((i)=>({useScope:i(),scopeName:i.scopeName}));return function(u){let a=r.reduce((n,{useScope:o,scopeName:s})=>{let g=o(u)[`__scope${s}`];return{...n,...g}},{});return Ut(()=>({[`__scope${e.scopeName}`]:a}),[a])}};return t.scopeName=e.scopeName,t}fe();fe();var lDe=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?Ii:()=>{};var lgr=vt["useId".toString()]||(()=>{return}),ggr=0;function gDe(A){let[e,t]=we(lgr());return lDe(()=>{if(!A)t((r)=>r!==null&&r!==void 0?r:String(ggr++))},[A]),A||(e?`radix-${e}`:"")}fe();fe();var jfA=Dt((A,e)=>{let{children:t,...r}=A,i=di.toArray(t),u=i.find(Cgr);if(u){let a=u.props.children,n=i.map((o)=>{if(o===u){if(di.count(a)>1)return di.only(null);return Da(a)?a.props.children:null}else return o});return Rt(VfA,ju({},r,{ref:e}),Da(a)?Jn(a,void 0,n):null)}return Rt(VfA,ju({},r,{ref:e}),t)});jfA.displayName="Slot";var VfA=Dt((A,e)=>{let{children:t,...r}=A;if(Da(t))return Jn(t,{...Bgr(r,t.props),ref:ZfA(e,t.ref)});return di.count(t)>1?di.only(null):null});VfA.displayName="SlotClone";var cgr=({children:A})=>Rt(Co,null,A);function Cgr(A){return Da(A)&&A.type===cgr}function Bgr(A,e){let t={...e};for(let r in e){let i=A[r],u=e[r];if(/^on[A-Z]/.test(r)){if(i&&u)t[r]=(...n)=>{u(...n),i(...n)};else if(i)t[r]=i}else if(r==="style")t[r]={...i,...u};else if(r==="className")t[r]=[i,u].filter(Boolean).join(" ")}return{...A,...t}}var Egr=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],XfA=Egr.reduce((A,e)=>{let t=Dt((r,i)=>{let{asChild:u,...a}=r,n=u?jfA:e;return le(()=>{window[Symbol.for("radix-ui")]=!0},[]),Rt(n,ju({},a,{ref:i}))});return t.displayName=`Primitive.${e}`,{...A,[e]:t}},{});fe();function LL(A){let e=Ee(A);return le(()=>{e.current=A}),Ut(()=>(...t)=>{var r;return(r=e.current)===null||r===void 0?void 0:r.call(e,...t)},[])}fe();function cDe({prop:A,defaultProp:e,onChange:t=()=>{}}){let[r,i]=dgr({defaultProp:e,onChange:t}),u=A!==void 0,a=u?A:r,n=LL(t),o=lt((s)=>{if(u){let g=typeof s==="function"?s(A):s;if(g!==A)n(g)}else i(s)},[u,A,i,n]);return[a,o]}function dgr({defaultProp:A,onChange:e}){let t=we(A),[r]=t,i=Ee(r),u=LL(e);return le(()=>{if(i.current!==r)u(r),i.current=r},[r,i,u]),t}fe();var Igr=yi(void 0);function Xz(A){let e=Si(Igr);return A||e||"ltr"}var $fA="rovingFocusGroup.onEntryFocus",hgr={bubbles:!1,cancelable:!0},e3A="RovingFocusGroup",[A3A,CDe,Qgr]=nDe(e3A),[pgr,t3A]=sDe(e3A,[Qgr]),[fgr,mgr]=pgr(e3A),Dgr=Dt((A,e)=>Rt(A3A.Provider,{scope:A.__scopeRovingFocusGroup},Rt(A3A.Slot,{scope:A.__scopeRovingFocusGroup},Rt(ygr,ju({},A,{ref:e}))))),ygr=Dt((A,e)=>{let{__scopeRovingFocusGroup:t,orientation:r,loop:i=!1,dir:u,currentTabStopId:a,defaultCurrentTabStopId:n,onCurrentTabStopIdChange:o,onEntryFocus:s,...l}=A,g=Ee(null),C=oDe(e,g),B=Xz(u),[E=null,d]=cDe({prop:a,defaultProp:n,onChange:o}),[I,h]=we(!1),Q=LL(s),p=CDe(t),m=Ee(!1),[f,D]=we(0);return le(()=>{let w=g.current;if(w)return w.addEventListener($fA,Q),()=>w.removeEventListener($fA,Q)},[Q]),Rt(fgr,{scope:t,orientation:r,dir:B,loop:i,currentTabStopId:E,onItemFocus:lt((w)=>d(w),[d]),onItemShiftTab:lt(()=>h(!0),[]),onFocusableItemAdd:lt(()=>D((w)=>w+1),[]),onFocusableItemRemove:lt(()=>D((w)=>w-1),[])},Rt(XfA.div,ju({tabIndex:I||f===0?-1:0,"data-orientation":r},l,{ref:C,style:{outline:"none",...A.style},onMouseDown:X2(A.onMouseDown,()=>{m.current=!0}),onFocus:X2(A.onFocus,(w)=>{let b=!m.current;if(w.target===w.currentTarget&&b&&!I){let F=new CustomEvent($fA,hgr);if(w.currentTarget.dispatchEvent(F),!F.defaultPrevented){let v=p().filter((R)=>R.focusable),S=v.find((R)=>R.active),x=v.find((R)=>R.id===E),T=[S,x,...v].filter(Boolean).map((R)=>R.ref.current);BDe(T)}}m.current=!1}),onBlur:X2(A.onBlur,()=>h(!1))})))}),wgr="RovingFocusGroupItem",bgr=Dt((A,e)=>{let{__scopeRovingFocusGroup:t,focusable:r=!0,active:i=!1,tabStopId:u,...a}=A,n=gDe(),o=u||n,s=mgr(wgr,t),l=s.currentTabStopId===o,g=CDe(t),{onFocusableItemAdd:C,onFocusableItemRemove:B}=s;return le(()=>{if(r)return C(),()=>B()},[r,C,B]),Rt(A3A.ItemSlot,{scope:t,id:o,focusable:r,active:i},Rt(XfA.span,ju({tabIndex:l?0:-1,"data-orientation":s.orientation},a,{ref:e,onMouseDown:X2(A.onMouseDown,(E)=>{if(!r)E.preventDefault();else s.onItemFocus(o)}),onFocus:X2(A.onFocus,()=>s.onItemFocus(o)),onKeyDown:X2(A.onKeyDown,(E)=>{if(E.key==="Tab"&&E.shiftKey){s.onItemShiftTab();return}if(E.target!==E.currentTarget)return;let d=Fgr(E,s.orientation,s.dir);if(d!==void 0){E.preventDefault();let h=g().filter((Q)=>Q.focusable).map((Q)=>Q.ref.current);if(d==="last")h.reverse();else if(d==="prev"||d==="next"){if(d==="prev")h.reverse();let Q=h.indexOf(E.currentTarget);h=s.loop?xgr(h,Q+1):h.slice(Q+1)}setTimeout(()=>BDe(h))}})})))}),vgr={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function kgr(A,e){if(e!=="rtl")return A;return A==="ArrowLeft"?"ArrowRight":A==="ArrowRight"?"ArrowLeft":A}function Fgr(A,e,t){let r=kgr(A.key,t);if(e==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))return;if(e==="horizontal"&&["ArrowUp","ArrowDown"].includes(r))return;return vgr[r]}function BDe(A){let e=document.activeElement;for(let t of A){if(t===e)return;if(t.focus(),document.activeElement!==e)return}}function xgr(A,e){return A.map((t,r)=>A[(e+r)%A.length])}var EDe=Dgr,dDe=bgr;fe();fe();function Sgr(A,e){if(typeof A==="function")A(e);else if(A!==null&&A!==void 0)A.current=e}function Lgr(...A){return(e)=>A.forEach((t)=>Sgr(t,e))}function IDe(...A){return lt(Lgr(...A),A)}fe();var r3A=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?Ii:()=>{};function Rgr(A,e){return G1((t,r)=>{let i=e[t][r];return i!==null&&i!==void 0?i:t},A)}var i3A=(A)=>{let{present:e,children:t}=A,r=Ngr(e),i=typeof t==="function"?t({present:r.isPresent}):di.only(t),u=IDe(r.ref,i.ref);return typeof t==="function"||r.isPresent?Jn(i,{ref:u}):null};i3A.displayName="Presence";function Ngr(A){let[e,t]=we(),r=Ee({}),i=Ee(A),u=Ee("none"),a=A?"mounted":"unmounted",[n,o]=Rgr(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return le(()=>{let s=$z(r.current);u.current=n==="mounted"?s:"none"},[n]),r3A(()=>{let s=r.current,l=i.current;if(l!==A){let C=u.current,B=$z(s);if(A)o("MOUNT");else if(B==="none"||(s===null||s===void 0?void 0:s.display)==="none")o("UNMOUNT");else if(l&&C!==B)o("ANIMATION_OUT");else o("UNMOUNT");i.current=A}},[A,o]),r3A(()=>{if(e){let s=(g)=>{let B=$z(r.current).includes(g.animationName);if(g.target===e&&B)Wn(()=>o("ANIMATION_END"))},l=(g)=>{if(g.target===e)u.current=$z(r.current)};return e.addEventListener("animationstart",l),e.addEventListener("animationcancel",s),e.addEventListener("animationend",s),()=>{e.removeEventListener("animationstart",l),e.removeEventListener("animationcancel",s),e.removeEventListener("animationend",s)}}else o("ANIMATION_END")},[e,o]),{isPresent:["mounted","unmountSuspended"].includes(n),ref:lt((s)=>{if(s)r.current=getComputedStyle(s);t(s)},[])}}function $z(A){return(A===null||A===void 0?void 0:A.animationName)||"none"}fe();fe();fe();function Ggr(A,e){if(typeof A==="function")A(e);else if(A!==null&&A!==void 0)A.current=e}function hDe(...A){return(e)=>A.forEach((t)=>Ggr(t,e))}var a3A=Dt((A,e)=>{let{children:t,...r}=A,i=di.toArray(t),u=i.find(Mgr);if(u){let a=u.props.children,n=i.map((o)=>{if(o===u){if(di.count(a)>1)return di.only(null);return Da(a)?a.props.children:null}else return o});return Rt(u3A,ju({},r,{ref:e}),Da(a)?Jn(a,void 0,n):null)}return Rt(u3A,ju({},r,{ref:e}),t)});a3A.displayName="Slot";var u3A=Dt((A,e)=>{let{children:t,...r}=A;if(Da(t))return Jn(t,{...Tgr(r,t.props),ref:hDe(e,t.ref)});return di.count(t)>1?di.only(null):null});u3A.displayName="SlotClone";var Ugr=({children:A})=>Rt(Co,null,A);function Mgr(A){return Da(A)&&A.type===Ugr}function Tgr(A,e){let t={...e};for(let r in e){let i=A[r],u=e[r];if(/^on[A-Z]/.test(r)){if(i&&u)t[r]=(...n)=>{u(...n),i(...n)};else if(i)t[r]=i}else if(r==="style")t[r]={...i,...u};else if(r==="className")t[r]=[i,u].filter(Boolean).join(" ")}return{...A,...t}}var Ygr=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],RL=Ygr.reduce((A,e)=>{let t=Dt((r,i)=>{let{asChild:u,...a}=r,n=u?a3A:e;return le(()=>{window[Symbol.for("radix-ui")]=!0},[]),Rt(n,ju({},a,{ref:i}))});return t.displayName=`Primitive.${e}`,{...A,[e]:t}},{});fe();fe();function n3A(A){let e=Ee(A);return le(()=>{e.current=A}),Ut(()=>(...t)=>{var r;return(r=e.current)===null||r===void 0?void 0:r.call(e,...t)},[])}function QDe({prop:A,defaultProp:e,onChange:t=()=>{}}){let[r,i]=Hgr({defaultProp:e,onChange:t}),u=A!==void 0,a=u?A:r,n=n3A(t),o=lt((s)=>{if(u){let g=typeof s==="function"?s(A):s;if(g!==A)n(g)}else i(s)},[u,A,i,n]);return[a,o]}function Hgr({defaultProp:A,onChange:e}){let t=we(A),[r]=t,i=Ee(r),u=n3A(e);return le(()=>{if(i.current!==r)u(r),i.current=r},[r,i,u]),t}fe();fe();var pDe=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?Ii:()=>{};var Kgr=vt["useId".toString()]||(()=>{return}),Jgr=0;function fDe(A){let[e,t]=we(Kgr());return pDe(()=>{if(!A)t((r)=>r!==null&&r!==void 0?r:String(Jgr++))},[A]),A||(e?`radix-${e}`:"")}var mDe="Tabs",[Ogr,Lvi]=uDe(mDe,[t3A]),DDe=t3A(),[Pgr,o3A]=Ogr(mDe),_gr=Dt((A,e)=>{let{__scopeTabs:t,value:r,onValueChange:i,defaultValue:u,orientation:a="horizontal",dir:n,activationMode:o="automatic",...s}=A,l=Xz(n),[g,C]=QDe({prop:r,onChange:i,defaultProp:u});return Rt(Pgr,{scope:t,baseId:fDe(),value:g,onValueChange:C,orientation:a,dir:l,activationMode:o},Rt(RL.div,ju({dir:l,"data-orientation":a},s,{ref:e})))}),Wgr="TabsList",qgr=Dt((A,e)=>{let{__scopeTabs:t,loop:r=!0,...i}=A,u=o3A(Wgr,t),a=DDe(t);return Rt(EDe,ju({asChild:!0},a,{orientation:u.orientation,dir:u.dir,loop:r}),Rt(RL.div,ju({role:"tablist","aria-orientation":u.orientation},i,{ref:e})))}),zgr="TabsTrigger",Zgr=Dt((A,e)=>{let{__scopeTabs:t,value:r,disabled:i=!1,...u}=A,a=o3A(zgr,t),n=DDe(t),o=yDe(a.baseId,r),s=wDe(a.baseId,r),l=r===a.value;return Rt(dDe,ju({asChild:!0},n,{focusable:!i,active:l}),Rt(RL.button,ju({type:"button",role:"tab","aria-selected":l,"aria-controls":s,"data-state":l?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:o},u,{ref:e,onMouseDown:Vz(A.onMouseDown,(g)=>{if(!i&&g.button===0&&g.ctrlKey===!1)a.onValueChange(r);else g.preventDefault()}),onKeyDown:Vz(A.onKeyDown,(g)=>{if([" ","Enter"].includes(g.key))a.onValueChange(r)}),onFocus:Vz(A.onFocus,()=>{let g=a.activationMode!=="manual";if(!l&&!i&&g)a.onValueChange(r)})})))}),Vgr="TabsContent",jgr=Dt((A,e)=>{let{__scopeTabs:t,value:r,forceMount:i,children:u,...a}=A,n=o3A(Vgr,t),o=yDe(n.baseId,r),s=wDe(n.baseId,r),l=r===n.value,g=Ee(l);return le(()=>{let C=requestAnimationFrame(()=>g.current=!1);return()=>cancelAnimationFrame(C)},[]),Rt(i3A,{present:i||l},({present:C})=>Rt(RL.div,ju({"data-state":l?"active":"inactive","data-orientation":n.orientation,role:"tabpanel","aria-labelledby":o,hidden:!C,id:s,tabIndex:0},a,{ref:e,style:{...A.style,animationDuration:g.current?"0s":void 0}}),C&&u))});function yDe(A,e){return`${A}-trigger-${e}`}function wDe(A,e){return`${A}-content-${e}`}var AZ=_gr,eZ=qgr,tZ=Zgr,rZ=jgr;Be();Be();Be();Be();Be();fe();Be();Be();fe();Be();Be();Be();Be();fe();Be();Be();fe();Be();fe();Be();Be();fe();Be();Be();Be();Be();var uVe=yu(FDe(),1);fe();Be();fe();Be();Be();Be();Be();fe();fe();Be();Be();Be();Be();fe();Be();Be();Be();Be();fe();Be();Be();Be();fe();Be();Be();fe();Be();Be();fe();var IVe=yu(i9(),1),hVe=yu(i9(),1);fe();L1();Be();fe();Be();fe();Be();Be();Be();Be();function Ecr(A,e,t,r){Object.defineProperty(A,e,{get:t,set:r,enumerable:!0,configurable:!0})}var dcr={};Ecr(dcr,"LaserPointer",()=>Yp);function nn([A,e,t],[r,i,u]){return[A+r,e+i,t+u]}function NL([A,e,t],[r,i,u]){return[A-r,e-i,t-u]}function qn([A,e,t],r){return[A*r,e*r,t*r]}function P5([A,e,t]){return[A/Math.sqrt(A**2+e**2),e/Math.sqrt(A**2+e**2),t]}function rs([A,e,t],r){return[Math.cos(r)*A-Math.sin(r)*e,Math.sin(r)*A+Math.cos(r)*e,t]}function Icr(A,e,t){return nn(A,qn(NL(e,A),t))}function xDe(A,e,t){return Math.atan2(t[1]-A[1],t[0]-A[0])-Math.atan2(e[1]-A[1],e[0]-A[0])}function SDe(A){return Math.atan2(Math.sin(A),Math.cos(A))}function LDe([A,e]){return Math.sqrt(A**2+e**2)}function _5([A,e],[t,r]){return Math.sqrt((t-A)**2+(r-e)**2)}function hcr(A){if(A.length<2)return 0;let e=0;for(let t=1;t<=A.length-1;t++)e+=_5(A[t-1],A[t]);return e+=_5(A[A.length-2],A[A.length-1]),e}var Qcr=(A,e,t)=>Math.max(e,Math.min(t,A));function pcr(A,e,t){let r=_5(e,t);if(r===0)return _5(A,e);let i=Qcr(((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r**2,0,1),u=[e[0]+i*(t[0]-e[0]),e[1]+i*(t[1]-e[1]),A[2]];return _5(u,A)}function iZ(A,e){if(e===0)return A;if(A.length<=2)return A;let t=A[0],r=A[A.length-1],[i,u]=A.reduce(([a,n],o,s)=>{let l=pcr(o,t,r);return l>a?[l,s]:[a,n]},[0,-1]);if(i>=e){let a=A[u];return[...iZ([t,...A.slice(1,u),a],e).slice(0,-1),a,...iZ([a,...A.slice(u,-1),r],e).slice(1)]}else return[t,r]}class Yp{static{this.defaults={size:2,streamline:0.45,simplify:0.1,simplifyPhase:"output",keepHead:!1,sizeMapping:()=>1}}static{this.constants={cornerDetectionMaxAngle:75,cornerDetectionVariance:(A)=>A>35?0.5:1,maxTailLength:50}}constructor(A){this.originalPoints=[],this.stablePoints=[],this.tailPoints=[],this.isFresh=!0,this.options=Object.assign({},Yp.defaults,A)}get lastPoint(){return this.tailPoints[this.tailPoints.length-1]??this.stablePoints[this.stablePoints.length-1]}addPoint(A){let e=this.originalPoints[this.originalPoints.length-1];if(e&&e[0]===A[0]&&e[1]===A[1])return;if(this.originalPoints.push(A),this.isFresh){this.isFresh=!1,this.stablePoints.push(A);return}if(this.options.streamline>0)A=Icr(this.lastPoint,A,1-this.options.streamline);if(this.tailPoints.push(A),hcr(this.tailPoints)>Yp.constants.maxTailLength)this.stabilizeTail()}close(){this.stabilizeTail()}stabilizeTail(){if(this.options.simplify>0&&this.options.simplifyPhase=="tail")throw Error("Not implemented yet");else this.stablePoints.push(...this.tailPoints),this.tailPoints=[]}getSize(A,e,t,r,i){return(A??this.options.size)*this.options.sizeMapping({pressure:e,runningLength:i,currentIndex:t,totalLength:r})}getStrokeOutline(A){if(this.isFresh)return[];let e=[...this.stablePoints,...this.tailPoints];if(this.options.simplify>0&&this.options.simplifyPhase==="input")e=iZ(e,this.options.simplify);let t=e.length;if(t===0)return[];if(t===1){let D=e[0],w=this.getSize(A,D[2],0,t,0);if(w<0.5)return[];let b=[];for(let F=0;F<=Math.PI*2;F+=Math.PI/16)b.push(nn(D,qn(rs([1,0,0],F),w)));return b.push(nn(D,qn([1,0,0],this.getSize(A,D[2],0,t,0)))),b}if(t===2){let D=e[0],w=e[1],b=this.getSize(A,D[2],0,t,0),F=this.getSize(A,w[2],0,t,0);if(b<0.5||F<0.5)return[];let v=[],S=xDe(D,[D[0],D[1]-100,D[2]],w);for(let x=S;x<=Math.PI+S;x+=Math.PI/16)v.push(nn(D,qn(rs([1,0,0],x),b)));for(let x=Math.PI+S;x<=Math.PI*2+S;x+=Math.PI/16)v.push(nn(w,qn(rs([1,0,0],x),F)));return v.push(v[0]),v}let r=[],i=[],u=0,a=0,n=0,o=0;for(let D=1;D<t-1;D++){let w=e[D-1],b=e[D],F=e[D+1],v=b[2],S=_5(w,b);o+=S,u=a+(S-a)*0.2;let x=this.getSize(A,v,D,t,o);if(x===0){n=D+1;continue}let k=P5(NL(w,b)),T=P5(NL(F,b)),R=rs(k,Math.PI/2),L=rs(k,-Math.PI/2),M=rs(T,Math.PI/2),U=rs(T,-Math.PI/2),Y=nn(b,qn(R,x)),H=nn(b,qn(L,x)),J=nn(b,qn(M,x)),K=nn(b,qn(U,x)),O=nn(R,U),_=nn(L,M),z=nn(b,qn(LDe(O)===0?k:P5(O),x)),j=nn(b,qn(LDe(_)===0?T:P5(_),x)),q=SDe(xDe(b,w,F)),CA=Yp.constants.cornerDetectionMaxAngle/180*Math.PI*Yp.constants.cornerDetectionVariance(u);if(Math.abs(q)<CA){let tA=Math.abs(SDe(Math.PI-q));if(tA===0)continue;if(q<0){i.push(H,j);for(let lA=0;lA<=tA;lA+=tA/4)r.push(nn(b,rs(qn(R,x),lA)));for(let lA=tA;lA>=0;lA-=tA/4)i.push(nn(b,rs(qn(R,x),lA)));i.push(j,J)}else{r.push(Y,z);for(let lA=0;lA<=tA;lA+=tA/4)i.push(nn(b,rs(qn(R,-x),-lA)));for(let lA=tA;lA>=0;lA-=tA/4)r.push(nn(b,rs(qn(R,-x),-lA)));r.push(z,K)}}else r.push(z),i.push(j);a=u}if(n>=t-2)if(this.options.keepHead){let D=e[t-1],w=[];for(let b=0;b<=Math.PI*2;b+=Math.PI/16)w.push(nn(D,qn(rs([1,0,0],b),this.options.size)));return w.push(nn(D,qn([1,0,0],this.options.size))),w}else return[];let s=e[n],l=e[n+1],g=e[t-2],C=e[t-1],B=P5(NL(l,s)),E=P5(NL(g,C)),d=rs(B,-Math.PI/2),I=rs(E,Math.PI/2),h=this.getSize(A,s[2],0,t,0),Q=[],p=this.options.keepHead?this.options.size:this.getSize(A,g[2],t-2,t,o),m=[];if(h>1){for(let D=0;D<=Math.PI;D+=Math.PI/16)Q.unshift(nn(s,rs(qn(d,h),-D)));Q.unshift(nn(s,qn(d,-h)))}else Q.push(s);for(let D=0;D<=Math.PI*3;D+=Math.PI/16)m.push(nn(C,rs(qn(I,-p),-D)));let f=[...Q,...r,...m.reverse(),...i.reverse()];if(Q.length>0)f.push(Q[0]);if(this.options.simplify>0&&this.options.simplifyPhase==="output")return iZ(f,this.options.simplify);return f}}fe();Be();Be();Be();Be();Be();Be();Be();Be();Be();fe();Be();var SVe=yu(i9(),1),fze=cq(),{useAtom:Oa,useSetAtom:fZ,useAtomValue:mze,useStore:eFi}=fze,pCr=fze.Provider,TB=A5(),fCr=Hge({"./locales/ar-SA.json":()=>Promise.resolve().then(() => (nye(),aye)),"./locales/az-AZ.json":()=>Promise.resolve().then(() => (Uye(),Gye)),"./locales/bg-BG.json":()=>Promise.resolve().then(() => (gwe(),lwe)),"./locales/bn-BD.json":()=>Promise.resolve().then(() => (Hwe(),Ywe)),"./locales/ca-ES.json":()=>Promise.resolve().then(() => (E6e(),B6e)),"./locales/cs-CZ.json":()=>Promise.resolve().then(() => (P6e(),O6e)),"./locales/da-DK.json":()=>Promise.resolve().then(() => (Q9e(),h9e)),"./locales/de-DE.json":()=>Promise.resolve().then(() => (z9e(),q9e)),"./locales/el-GR.json":()=>Promise.resolve().then(() => (D5e(),m5e)),"./locales/en.json":()=>Promise.resolve().then(() => (w5e(),y5e)),"./locales/es-ES.json":()=>Promise.resolve().then(() => (Abe(),$5e)),"./locales/eu-ES.json":()=>Promise.resolve().then(() => (Fbe(),kbe)),"./locales/fa-IR.json":()=>Promise.resolve().then(() => (ive(),rve)),"./locales/fi-FI.json":()=>Promise.resolve().then(() => (Rve(),Lve)),"./locales/fr-FR.json":()=>Promise.resolve().then(() => (oke(),nke)),"./locales/gl-ES.json":()=>Promise.resolve().then(() => (Mke(),Uke)),"./locales/he-IL.json":()=>Promise.resolve().then(() => (cFe(),gFe)),"./locales/hi-IN.json":()=>Promise.resolve().then(() => (KFe(),HFe)),"./locales/hu-HU.json":()=>Promise.resolve().then(() => (dxe(),Exe)),"./locales/id-ID.json":()=>Promise.resolve().then(() => (_xe(),Pxe)),"./locales/it-IT.json":()=>Promise.resolve().then(() => (p7e(),Q7e)),"./locales/ja-JP.json":()=>Promise.resolve().then(() => (Z7e(),z7e)),"./locales/kaa.json":()=>Promise.resolve().then(() => (y8e(),D8e)),"./locales/kab-KAB.json":()=>Promise.resolve().then(() => ($8e(),X8e)),"./locales/kk-KZ.json":()=>Promise.resolve().then(() => (kSe(),vSe)),"./locales/km-KH.json":()=>Promise.resolve().then(() => (rLe(),tLe)),"./locales/ko-KR.json":()=>Promise.resolve().then(() => (LLe(),SLe)),"./locales/ku-TR.json":()=>Promise.resolve().then(() => (nRe(),aRe)),"./locales/lt-LT.json":()=>Promise.resolve().then(() => (URe(),GRe)),"./locales/lv-LV.json":()=>Promise.resolve().then(() => (gNe(),lNe)),"./locales/mr-IN.json":()=>Promise.resolve().then(() => (HNe(),YNe)),"./locales/my-MM.json":()=>Promise.resolve().then(() => (EGe(),BGe)),"./locales/nb-NO.json":()=>Promise.resolve().then(() => (PGe(),OGe)),"./locales/nl-NL.json":()=>Promise.resolve().then(() => (QUe(),hUe)),"./locales/nn-NO.json":()=>Promise.resolve().then(() => (zUe(),qUe)),"./locales/oc-FR.json":()=>Promise.resolve().then(() => (DMe(),mMe)),"./locales/pa-IN.json":()=>Promise.resolve().then(() => (XMe(),jMe)),"./locales/percentages.json":()=>Promise.resolve().then(() => (ATe(),$Me)),"./locales/pl-PL.json":()=>Promise.resolve().then(() => (FTe(),kTe)),"./locales/pt-BR.json":()=>Promise.resolve().then(() => (iYe(),rYe)),"./locales/pt-PT.json":()=>Promise.resolve().then(() => (RYe(),LYe)),"./locales/ro-RO.json":()=>Promise.resolve().then(() => (oHe(),nHe)),"./locales/ru-RU.json":()=>Promise.resolve().then(() => (MHe(),UHe)),"./locales/si-LK.json":()=>Promise.resolve().then(() => (cKe(),gKe)),"./locales/sk-SK.json":()=>Promise.resolve().then(() => (KKe(),HKe)),"./locales/sl-SI.json":()=>Promise.resolve().then(() => (dJe(),EJe)),"./locales/sv-SE.json":()=>Promise.resolve().then(() => (_Je(),PJe)),"./locales/ta-IN.json":()=>Promise.resolve().then(() => (pOe(),QOe)),"./locales/th-TH.json":()=>Promise.resolve().then(() => (ZOe(),zOe)),"./locales/tr-TR.json":()=>Promise.resolve().then(() => (yPe(),DPe)),"./locales/uk-UA.json":()=>Promise.resolve().then(() => ($Pe(),XPe)),"./locales/vi-VN.json":()=>Promise.resolve().then(() => (k_e(),v_e)),"./locales/zh-CN.json":()=>Promise.resolve().then(() => (rWe(),tWe)),"./locales/zh-HK.json":()=>Promise.resolve().then(() => (LWe(),SWe)),"./locales/zh-TW.json":()=>Promise.resolve().then(() => (nqe(),aqe))}),mCr=85,X5={code:"en",label:"English"},O3A=[X5,...[{code:"ar-SA",label:"العربية",rtl:!0},{code:"bg-BG",label:"Български"},{code:"ca-ES",label:"Català"},{code:"cs-CZ",label:"Česky"},{code:"de-DE",label:"Deutsch"},{code:"el-GR",label:"Ελληνικά"},{code:"es-ES",label:"Español"},{code:"eu-ES",label:"Euskara"},{code:"fa-IR",label:"فارسی",rtl:!0},{code:"fi-FI",label:"Suomi"},{code:"fr-FR",label:"Français"},{code:"gl-ES",label:"Galego"},{code:"he-IL",label:"עברית",rtl:!0},{code:"hi-IN",label:"हिन्दी"},{code:"hu-HU",label:"Magyar"},{code:"id-ID",label:"Bahasa Indonesia"},{code:"it-IT",label:"Italiano"},{code:"ja-JP",label:"日本語"},{code:"kab-KAB",label:"Taqbaylit"},{code:"kk-KZ",label:"Қазақ тілі"},{code:"ko-KR",label:"한국어"},{code:"ku-TR",label:"Kurdî"},{code:"lt-LT",label:"Lietuvių"},{code:"lv-LV",label:"Latviešu"},{code:"my-MM",label:"Burmese"},{code:"nb-NO",label:"Norsk bokmål"},{code:"nl-NL",label:"Nederlands"},{code:"nn-NO",label:"Norsk nynorsk"},{code:"oc-FR",label:"Occitan"},{code:"pa-IN",label:"ਪੰਜਾਬੀ"},{code:"pl-PL",label:"Polski"},{code:"pt-BR",label:"Português Brasileiro"},{code:"pt-PT",label:"Português"},{code:"ro-RO",label:"Română"},{code:"ru-RU",label:"Русский"},{code:"sk-SK",label:"Slovenčina"},{code:"sv-SE",label:"Svenska"},{code:"sl-SI",label:"Slovenščina"},{code:"tr-TR",label:"Türkçe"},{code:"uk-UA",label:"Українська"},{code:"zh-CN",label:"简体中文"},{code:"zh-TW",label:"繁體中文"},{code:"vi-VN",label:"Tiếng Việt"},{code:"mr-IN",label:"मराठी"}].filter((A)=>oq[A.code]>=mCr).sort((A,e)=>A.label>e.label?1:-1)],EZ="__test__";Qr.DEV&&O3A.unshift({code:EZ,label:"test language"},{code:`${EZ}.rtl`,label:"test language (rtl)",rtl:!0});var z5=X5,lZ={},Dze=async(A)=>{if(z5=A,document.documentElement.dir=z5.rtl?"rtl":"ltr",document.documentElement.lang=z5.code,A.code.startsWith(EZ))lZ={};else try{lZ=await fCr(`./locales/${z5.code}.json`)}catch(e){console.error(`Failed to load language ${A.code}:`,e.message),lZ=bS}TB.set(yze,A.code)},WL=()=>z5,sqe=(A,e)=>{for(let t=0;t<e.length;++t){let r=e[t];if(A[r]===void 0)return;A=A[r]}if(typeof A=="string")return A},uA=(A,e,t)=>{if(z5.code.startsWith(EZ))return`[[${e?`${A}(${JSON.stringify(e).slice(1,-1)})`:A}]]`;let r=A.split("."),i=sqe(lZ,r)||sqe(bS,r)||t;if(i===void 0){let u=`Can't find translation for ${A}`;if(Qr.PROD)return console.warn(u),"";throw Error(u)}if(e)for(let u in e)i=i.replace(`{{${u}}}`,String(e[u]));return i},yze=Pn(X5.code),as=()=>{let A=mze(yze);return{t:uA,langCode:A}},DCr=({size:A="1em",circleWidth:e=8,synchronized:t=!1,className:r=""})=>{let i=-(Ee(Date.now()).current%1600);return N("div",{className:`Spinner ${r}`,children:N("svg",{viewBox:"0 0 100 100",style:{width:A,height:A,"--spinner-delay":t?`${i}ms`:0},children:N("circle",{cx:"50",cy:"50",r:50-e/2,strokeWidth:e,fill:"none",strokeMiterlimit:"10"})})})},tQ=DCr,wze=({delay:A,theme:e})=>{let[t,r]=we(!!A);return le(()=>{if(!A)return;let i=setTimeout(()=>{r(!1)},A);return()=>clearTimeout(i)},[A]),t?null:cA("div",{className:Re("LoadingMessage",{"LoadingMessage--dark":e===$r.DARK}),children:[N("div",{children:N(tQ,{})}),N("div",{className:"LoadingMessage-text",children:uA("labels.loadingScene")})]})},yCr=(A)=>{let[e,t]=we(!0);return le(()=>{let r=async()=>{await Dze(i),t(!1)},i=O3A.find((u)=>u.code===A.langCode)||X5;r()},[A.langCode]),e?N(wze,{theme:A.theme}):A.children},ci=Dt(({size:A="medium",visible:e=!0,className:t="",...r},i)=>{let{id:u}=zd(),a=Ee(null);zm(i,()=>a.current);let n=`ToolIcon_size_${A}`,[o,s]=we(!1),l=Ee(!0),g=async(B)=>{let E="onClick"in r&&r.onClick?.(B);if(U9(E))try{s(!0),await E}catch(d){if(d instanceof aS)console.warn(d);else throw d}finally{l.current&&s(!1)}};le(()=>(l.current=!0,()=>{l.current=!1}),[]);let C=Ee(null);if(r.type==="button"||r.type==="icon"||r.type==="submit"){let B=r.type==="icon"?"button":r.type;return cA("button",{className:Re("ToolIcon_type_button",n,t,e&&!r.hidden?"ToolIcon_type_button--show":"ToolIcon_type_button--hide",{ToolIcon:!r.hidden,"ToolIcon--selected":r.selected,"ToolIcon--plain":r.type==="icon"}),style:r.style,"data-testid":r["data-testid"],hidden:r.hidden,title:r.title,"aria-label":r["aria-label"],type:B,onClick:g,ref:a,disabled:o||r.isLoading||!!r.disabled,children:[(r.icon||r.label)&&cA("div",{className:"ToolIcon__icon","aria-hidden":"true","aria-disabled":!!r.disabled,children:[r.icon||r.label,r.keyBindingLabel&&N("span",{className:"ToolIcon__keybinding",children:r.keyBindingLabel}),r.isLoading&&N(tQ,{})]}),r.showAriaLabel&&cA("div",{className:"ToolIcon__label",children:[r["aria-label"]," ",o&&N(tQ,{})]}),r.children]})}return cA("label",{className:Re("ToolIcon",t),title:r.title,onPointerDown:(B)=>{C.current=B.pointerType||null,r.onPointerDown?.({pointerType:B.pointerType||null})},onPointerUp:()=>{requestAnimationFrame(()=>{C.current=null})},children:[N("input",{className:`ToolIcon_type_radio ${n}`,type:"radio",name:r.name,"aria-label":r["aria-label"],"aria-keyshortcuts":r["aria-keyshortcuts"],"data-testid":r["data-testid"],id:`${u}-${r.id}`,onChange:()=>{r.onChange?.({pointerType:C.current})},checked:r.checked,ref:a}),cA("div",{className:"ToolIcon__icon",children:[r.icon,r.keyBindingLabel&&N("span",{className:"ToolIcon__keybinding",children:r.keyBindingLabel})]})]})});ci.displayName="ToolButton";var wCr=(A,e,t)=>{let r=new Set(Jr(A.filter((l)=>nr(l)),e).map((l)=>l.id)),i={},u=t.scene.getNonDeletedElementsMap(),a=new Set;for(let l of r){let g=mB(A,l);for(let C of g)if(!a.has(C.id)){if(Tu(C)){let B=Qo(C,u);B&&(i[B.id]=!0)}else i[C.id]=!0;a.add(C.id)}}let n=!0,o=A.map((l)=>{if(e.selectedElementIds[l.id]){let g=Tu(l)?Qo(l,u):null;return l.frameId&&r.has(l.frameId)?(n=!1,i[l.id]=!0,l):g?.frameId&&r.has(g?.frameId)?l:(l.boundElements&&l.boundElements.forEach((C)=>{let B=t.scene.getNonDeletedElementsMap().get(C.id);B&&ft(B)&&(Se(B,{startBinding:l.id===B.startBinding?.elementId?null:B.startBinding,endBinding:l.id===B.endBinding?.elementId?null:B.endBinding}),Se(B,{points:B.points}))}),Tr(l,{isDeleted:!0}))}return l.frameId&&r.has(l.frameId)?(n=!1,Tu(l)||(i[l.id]=!0),Tr(l,{frameId:null})):Tu(l)&&e.selectedElementIds[l.containerId]?Tr(l,{isDeleted:!0}):l}),s=e.editingGroupId;if(n&&e.editingGroupId){let l=Yu(o,e.editingGroupId).filter((g)=>!g.isDeleted);if(l.length>1)l[0]&&(i[l[0].id]=!0);else{s=null,l[0]&&(i[l[0].id]=!0);let g=l[0];if(g){let C=g.groupIds.findIndex((E)=>E===e.editingGroupId),B=g.groupIds[C+1];if(B){let E=Yu(o,B).filter((d)=>!d.isDeleted);E.length>1&&(s=B,E.forEach((d)=>{i[d.id]=!0}))}}}}return{elements:o,appState:{...e,...V0({selectedElementIds:i,editingGroupId:s},o,e,null)}}},lqe=(A,e)=>{if(A.editingGroupId){let t=Yu(fu(e),A.editingGroupId);if(t.length)return{...A,selectedElementIds:{[t[0].id]:!0}}}return A},bze=at({name:"deleteSelectedElements",label:"labels.delete",icon:ap,trackEvent:{category:"element",action:"delete"},perform:(A,e,t,r)=>{if(e.editingLinearElement){let{elementId:a,selectedPointsIndices:n,startBindingElement:o,endBindingElement:s}=e.editingLinearElement,l=r.scene.getNonDeletedElementsMap(),g=ht.getElement(a,l);if(!g||n==null)return!1;if(g.points.length<2){let B=A.map((d)=>d.id===g.id?Tr(d,{isDeleted:!0}):d),E=lqe(e,B);return{elements:B,appState:{...E,editingLinearElement:null},captureUpdate:be.IMMEDIATELY}}let C={startBindingElement:n?.includes(0)?null:o,endBindingElement:n?.includes(g.points.length-1)?null:s};return ht.deletePoints(g,n),{elements:A,appState:{...e,editingLinearElement:{...e.editingLinearElement,...C,selectedPointsIndices:n?.[0]>0?[n[0]-1]:[0]}},captureUpdate:be.IMMEDIATELY}}let{elements:i,appState:u}=wCr(A,e,r);return OhA(i,i.filter((a)=>a.isDeleted)),u=lqe(u,i),{elements:i,appState:{...u,activeTool:un(e,{type:"selection"}),multiElement:null,activeEmbeddable:null},captureUpdate:yn(fu(A),e)?be.IMMEDIATELY:be.EVENTUALLY}},keyTest:(A,e,t)=>(A.key===PA.BACKSPACE||A.key===PA.DELETE)&&!A[PA.CTRL_OR_CMD],PanelComponent:({elements:A,appState:e,updateData:t})=>N(ci,{type:"button",icon:ap,title:uA("labels.delete"),"aria-label":uA("labels.delete"),onClick:()=>t(null),visible:yn(fu(A),e)})}),k3A=(A,e)=>A.frameId===e||A.id===e,vze=(A,e,t)=>{let r=[],i=[],u=null,a=-1,n=ar(t||Jr(A,e,{includeBoundTextElement:!0,includeElementsInFrames:!0}));for(;++a<A.length;){let o=A[a];n.get(o.id)?(i.length&&(r=r.concat(i),i=[]),r.push(a),u=a+1):o.isDeleted&&u===a?(u=a+1,i.push(a)):i=[]}return r},bCr=(A)=>{let e=0;return A.reduce((t,r,i)=>(i>0&&A[i-1]!==r-1&&(e=++e),(t[e]||(t[e]=[])).push(r),t),[])},gqe=(A,e,t)=>{if("containerId"in A&&A.containerId){let r=yd.getScene(A).getElement(A.containerId);if(r)return t==="left"?Math.min(e.indexOf(r),e.indexOf(A)):Math.max(e.indexOf(r),e.indexOf(A))}else{let r=A.boundElements?.find((i)=>i.type!=="arrow")?.id;if(r){let i=yd.getScene(A).getElement(r);if(i)return t==="left"?Math.min(e.indexOf(i),e.indexOf(A)):Math.max(e.indexOf(i),e.indexOf(A))}}},vCr=(A,e)=>{let t=-1,r=-1;return A.forEach((i,u)=>{k3A(i,e)&&(t===-1&&(t=u),r=u)}),t===-1?[]:A.slice(t,r+1)},kCr=(A,e,t,r,i)=>{let u=e[t],a=(g)=>g.isDeleted?!1:i?g.frameId===i:A.editingGroupId?g.groupIds.includes(A.editingGroupId):!0,n=r==="left"?tp(e,(g)=>a(g),Math.max(0,t-1)):GIA(e,(g)=>a(g),t+1),o=e[n];if(!o)return-1;if(A.editingGroupId){if(u?.groupIds.join("")===o?.groupIds.join(""))return gqe(o,e,r)??n;if(!o?.groupIds.includes(A.editingGroupId))return-1}if(!i&&(o.frameId||nr(o))){let g=vCr(e,o.frameId||o.id);return r==="left"?e.indexOf(g[0]):e.indexOf(g[g.length-1])}if(!o.groupIds.length)return gqe(o,e,r)??n;let s=A.editingGroupId?o.groupIds[o.groupIds.indexOf(A.editingGroupId)-1]:o.groupIds[o.groupIds.length-1],l=Yu(e,s);return l.length?r==="left"?e.indexOf(l[0]):e.indexOf(l[l.length-1]):n},kze=(A,e)=>e.reduce((t,r)=>{let i=A[r];return t.set(i.id,i),t},new Map),Fze=(A,e,t)=>{let r=vze(A,e),i=kze(A,r),u=bCr(r);t==="right"&&(u=u.reverse());let a=new Set(r.filter((n)=>nr(A[n])).map((n)=>A[n].id));return u.forEach((n,o)=>{let s=n[0],l=n[n.length-1],g=t==="left"?s:l,C=n.some((Q)=>{let p=A[Q];return p.frameId&&a.has(p.frameId)})?null:A[g]?.frameId,B=kCr(e,A,g,t,C);if(B===-1||g===B)return;let E=t==="left"?A.slice(0,B):A.slice(0,s),d=A.slice(s,l+1),I=t==="left"?A.slice(B,s):A.slice(l+1,B+1),h=t==="left"?A.slice(l+1):A.slice(B+1);A=t==="left"?[...E,...d,...I,...h]:[...E,...I,...d,...h]}),CB(A,i),A},xze=(A,e,t,r,i)=>{let u=vze(A,e,i),a=kze(A,u),n=[],o,s;if(t==="left"){if(r)o=GIA(A,(E)=>k3A(E,r));else if(e.editingGroupId){let E=Yu(A,e.editingGroupId);if(!E.length)return A;o=A.indexOf(E[0])}else o=0;s=u[u.length-1]}else{if(r)s=tp(A,(E)=>k3A(E,r));else if(e.editingGroupId){let E=Yu(A,e.editingGroupId);if(!E.length)return A;s=A.indexOf(E[E.length-1])}else s=A.length-1;o=u[0]}o===-1&&(o=0);for(let E=o;E<s+1;E++)u.includes(E)||n.push(A[E]);let l=Array.from(a.values()),g=A.slice(0,o),C=A.slice(s+1),B=t==="left"?[...g,...l,...n,...C]:[...g,...n,...l,...C];return CB(B,a),B};function Sze(A,e,t,r){let i=ar(Jr(A,e,{includeBoundTextElement:!0,includeElementsInFrames:!0})),u={regularElements:[],frameChildren:new Map},a=new Set;for(let s of A)i.has(s.id)&&nr(s)&&a.add(s.id);for(let s of A)if(i.has(s.id))if(nr(s)||s.frameId&&a.has(s.frameId))u.regularElements.push(s);else if(!s.frameId)u.regularElements.push(s);else{let l=u.frameChildren.get(s.frameId)||[];l.push(s),u.frameChildren.set(s.frameId,l)}let n=A,o=Array.from(u.frameChildren.entries());for(let[s,l]of o)n=r(A,e,t,s,l);return r(n,e,t,null,u.regularElements)}var FCr=(A,e)=>Fze(A,e,"left"),xCr=(A,e)=>Fze(A,e,"right"),SCr=(A,e)=>Sze(A,e,"left",xze),LCr=(A,e)=>Sze(A,e,"right",xze),RCr=at({name:"sendBackward",label:"labels.sendBackward",keywords:["move down","zindex","layer"],icon:ihA,trackEvent:{category:"element"},perform:(A,e)=>({elements:FCr(A,e),appState:e,captureUpdate:be.IMMEDIATELY}),keyPriority:40,keyTest:(A)=>A[PA.CTRL_OR_CMD]&&!A.shiftKey&&A.code===hi.BRACKET_LEFT,PanelComponent:({updateData:A,appState:e})=>N("button",{type:"button",className:"zIndexButton",onClick:()=>A(null),title:`${uA("labels.sendBackward")} — ${Fe("CtrlOrCmd+[")}`,children:ihA})}),NCr=at({name:"bringForward",label:"labels.bringForward",keywords:["move up","zindex","layer"],icon:rhA,trackEvent:{category:"element"},perform:(A,e)=>({elements:xCr(A,e),appState:e,captureUpdate:be.IMMEDIATELY}),keyPriority:40,keyTest:(A)=>A[PA.CTRL_OR_CMD]&&!A.shiftKey&&A.code===hi.BRACKET_RIGHT,PanelComponent:({updateData:A,appState:e})=>N("button",{type:"button",className:"zIndexButton",onClick:()=>A(null),title:`${uA("labels.bringForward")} — ${Fe("CtrlOrCmd+]")}`,children:rhA})}),GCr=at({name:"sendToBack",label:"labels.sendToBack",keywords:["move down","zindex","layer"],icon:ahA,trackEvent:{category:"element"},perform:(A,e)=>({elements:SCr(A,e),appState:e,captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>BB?A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.BRACKET_LEFT:A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.code===hi.BRACKET_LEFT,PanelComponent:({updateData:A,appState:e})=>N("button",{type:"button",className:"zIndexButton",onClick:()=>A(null),title:`${uA("labels.sendToBack")} — ${BB?Fe("CtrlOrCmd+Alt+["):Fe("CtrlOrCmd+Shift+[")}`,children:ahA})}),UCr=at({name:"bringToFront",label:"labels.bringToFront",keywords:["move up","zindex","layer"],icon:uhA,trackEvent:{category:"element"},perform:(A,e)=>({elements:LCr(A,e),appState:e,captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>BB?A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.BRACKET_RIGHT:A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.code===hi.BRACKET_RIGHT,PanelComponent:({updateData:A,appState:e})=>N("button",{type:"button",className:"zIndexButton",onClick:(t)=>A(null),title:`${uA("labels.bringToFront")} — ${BB?Fe("CtrlOrCmd+Alt+]"):Fe("CtrlOrCmd+Shift+]")}`,children:uhA})}),MCr=at({name:"selectAll",label:"labels.selectAll",icon:Zhe,trackEvent:{category:"canvas"},viewMode:!1,perform:(A,e,t,r)=>{if(e.editingLinearElement)return!1;let i=A.filter((u)=>!u.isDeleted&&!(Et(u)&&u.containerId)&&!u.locked).reduce((u,a)=>(u[a.id]=!0,u),{});return{appState:{...e,...V0({editingGroupId:null,selectedElementIds:i},fu(A),e,r),selectedLinearElement:Object.keys(i).length===1&&Nr(A[0])?new ht(A[0]):null},captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.A}),TCr=(A)=>{let e=A.slice(),t=new Set,r=(u)=>{let a=u[0]?.groupIds?.join(""),n=[u[0]],o=[];for(let s of u.slice(1))s.groupIds?.join("")===a?n.push(s):o.push(s);return o.length?[...n,...r(o)]:n},i=new Map;return e.forEach((u,a)=>{if(!i.has(u.id))if(u.groupIds?.length){let n=u.groupIds[u.groupIds.length-1],o=e.slice(a).filter((s)=>{let l=s?.groupIds?.some((g)=>g===n);return l&&i.set(s.id,!0),l});for(let s of r(o))t.add(s)}else t.add(u)}),t.size!==A.length?(console.error("normalizeGroupElementOrder: lost some elements... bailing!"),A):[...t]},YCr=(A)=>{let e=QIe(A),t=A.slice(),r=new Set;return t.forEach((i,u)=>{i&&(i.boundElements?.length?(r.add(i),t[u]=null,i.boundElements.forEach((a)=>{let n=e.get(a.id);n&&a.type==="text"&&(r.add(n[0]),t[n[1]]=null)})):i.type==="text"&&i.containerId&&e.get(i.containerId)?.[0].boundElements?.find((a)=>a.id===i.id)||(r.add(i),t[u]=null))}),r.size!==A.length?(console.error("normalizeBoundElementsOrder: lost some elements... bailing!"),A):[...r]},HCr=(A)=>YCr(TCr(A)),KCr=at({name:"duplicateSelection",label:"labels.duplicateSelection",icon:rW,trackEvent:{category:"element"},perform:(A,e,t,r)=>{if(e.editingLinearElement)try{let u=ht.duplicateSelectedPoints(e,r.scene.getNonDeletedElementsMap());return{elements:A,appState:u,captureUpdate:be.IMMEDIATELY}}catch{return!1}let i=JCr(A,e);if(r.props.onDuplicate&&i.elements){let u=r.props.onDuplicate(i.elements,A);u&&(i.elements=u)}return{...i,captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.D,PanelComponent:({elements:A,appState:e,updateData:t})=>N(ci,{type:"button",icon:rW,title:`${uA("labels.duplicateSelection")} — ${Fe("CtrlOrCmd+D")}`,"aria-label":uA("labels.duplicateSelection"),onClick:()=>t(null),visible:yn(fu(A),e)})}),JCr=(A,e)=>{let t=new Map,r=[],i=[],u=new Map,a=new Map,n=ar(A),o=(d)=>{let I=HIA(d).reduce((h,Q)=>{if(l.has(Q.id))return h;l.set(Q.id,!0);let p=nQA(e.editingGroupId,t,Q,{x:Q.x+P8/2,y:Q.y+P8/2});return l.set(p.id,!0),a.set(p.id,p),u.set(Q.id,p.id),i.push(Q),r.push(p),h.push(p),h},[]);return Array.isArray(d)?I:I[0]||null};A=HCr(A);let s=ar(Jr(A,e,{includeBoundTextElement:!0,includeElementsInFrames:!0})),l=new Map,g=A.slice(),C=(d,I)=>{fn(d!==-1,"targetIndex === -1 "),!(!Array.isArray(I)&&!I)&&g.splice(d+1,0,...HIA(I))},B=new Set(A.filter((d)=>s.has(d.id)&&nr(d)).map((d)=>d.id));for(let d of A){if(l.has(d.id)||!s.has(d.id))continue;let I=zhA(e,d);if(I){let h=Yu(A,I).flatMap((p)=>nr(p)?[...mB(A,p.id),p]:[p]),Q=tp(g,(p)=>p.groupIds?.includes(I));C(Q,o(h));continue}if(!(d.frameId&&B.has(d.frameId))){if(nr(d)){let h=d.id,Q=mB(A,h),p=tp(g,(m)=>m.frameId===h||m.id===h);C(p,o([...Q,d]));continue}if(Yl(d)){let h=Gr(d,n),Q=tp(g,(p)=>p.id===d.id||("containerId"in p)&&p.containerId===d.id);h?C(Q,o([d,h])):C(Q,o(d));continue}if(Tu(d)){let h=Qo(d,n),Q=tp(g,(p)=>p.id===d.id||p.id===h?.id);h?C(Q,o([h,d])):C(Q,o(d));continue}C(tp(g,(h)=>h.id===d.id),o(d))}}AQA(g,i,u),JhA(g,i,u),FQA(g,i,u);let E=XW(r);return{elements:g,appState:{...e,...V0({editingGroupId:e.editingGroupId,selectedElementIds:E.reduce((d,I)=>(Tu(I)||(d[I.id]=!0),d),{})},fu(g),e,null)}}},OCr=new Set(["command_palette","export"]),Nu=(A,e,t,r)=>{try{if(typeof window>"u"||Qr.VITE_WORKER_ID||Qr.VITE_APP_ENABLE_TRACKING!=="true"||!OCr.has(A)||Qr.DEV)return;Qr.PROD||console.info("trackEvent",{category:A,action:e,label:t,value:r}),window.sa_event&&window.sa_event(e,{category:A,label:t,value:r})}catch(i){console.error("error during analytics",i)}},Lze=Dt((A,e)=>{let{title:t,className:r,testId:i,active:u,standalone:a,icon:n,onClick:o}=A;return N("button",{type:"button",ref:e,title:t,"data-testid":i,className:Re(r,{standalone:a,active:u}),onClick:o,children:n},t)}),Wd=(A)=>N("div",{className:"buttonList",children:A.options.map((e)=>A.type==="button"?N(Lze,{icon:e.icon,title:e.text,testId:e.testId,active:e.active??A.value===e.value,onClick:(t)=>A.onClick(e.value,t)},e.text):cA("label",{className:Re({active:A.value===e.value}),title:e.text,children:[N("input",{type:"radio",name:A.group,onChange:()=>A.onChange(e.value),checked:A.value===e.value,"data-testid":e.testId}),e.icon]},e.text))}),PCr=({onChange:A,type:e,activeColor:t,topPicks:r})=>{let i;return e==="elementStroke"&&(i=hIA),e==="elementBackground"&&(i=QIA),e==="canvasBackground"&&(i=pIA),r&&(i=r),i?N("div",{className:"color-picker__top-picks",children:i.map((u)=>N("button",{className:Re("color-picker__button",{active:u===t,"is-transparent":u==="transparent"||!u}),style:{"--swatch-color":u},type:"button",title:u,onClick:()=>A(u),"data-testid":`color-top-pick-${u}`,children:N("div",{className:"color-picker__button-outline"})},u))}):(console.error("Invalid type for TopPicks"),null)},Rze=()=>N("div",{style:{width:1,height:"1rem",backgroundColor:"var(--default-border-color)",margin:"0 auto"}}),mZ=({palette:A,color:e})=>{for(let[t,r]of Object.entries(A))if(Array.isArray(r)){let i=r.indexOf(e);if(i>-1)return{colorName:t,shade:i}}else if(r===e)return{colorName:t,shade:null};return null},F3A=[["q","w","e","r","t"],["a","s","d","f","g"],["z","x","c","v","b"]].flat(),Nze=({color:A,palette:e})=>!Object.values(e).flat().includes(A),_Cr=(A,e,t)=>{let r={elementBackground:"backgroundColor",elementStroke:"strokeColor"},i=A.filter((a)=>{if(a.isDeleted)return!1;let n=a[r[e]];return Nze({color:n,palette:t})}),u=new Map;return i.forEach((a)=>{let n=a[r[e]];u.has(n)?u.set(n,u.get(n)+1):u.set(n,1)}),[...u.entries()].sort((a,n)=>n[1]-a[1]).map((a)=>a[0]).slice(0,kde)},$5=Pn(null),cqe=(A,e,t)=>(A*299+e*587+t*114)/1000>=160?"black":"white",WCr=(A,e)=>{if(e){let u=new Option().style;if(u.color=A,u.color){let a=u.color.replace(/^(rgb|rgba)\(/,"").replace(/\)$/,"").replace(/\s/g,"").split(","),n=parseInt(a[0]),o=parseInt(a[1]),s=parseInt(a[2]);return cqe(n,o,s)}}if(A==="transparent")return"black";let t=parseInt(A.substring(1,3),16),r=parseInt(A.substring(3,5),16),i=parseInt(A.substring(5,7),16);return cqe(t,r,i)},qCr=({color:A,keyLabel:e,isCustomColor:t=!1,isShade:r=!1})=>cA("div",{className:"color-picker__button__hotkey-label",style:{color:WCr(A,t)},children:[r&&"⇧",e]}),P3A=qCr,zCr=({hex:A,onChange:e,palette:t})=>{let r=mZ({color:A||"transparent",palette:t}),[i,u]=Oa($5),a=Ee(null);if(le(()=>{a.current&&i==="shades"&&a.current.focus()},[r,i]),r){let{colorName:n,shade:o}=r,s=t[n];if(Array.isArray(s))return N("div",{className:"color-picker-content--default shades",children:s.map((l,g)=>cA("button",{ref:g===o&&i==="shades"?a:void 0,tabIndex:-1,type:"button",className:Re("color-picker__button color-picker__button--large",{active:g===o}),"aria-label":"Shade",title:`${n} - ${g+1}`,style:l?{"--swatch-color":l}:void 0,onClick:()=>{e(l),u("shades")},children:[N("div",{className:"color-picker__button-outline"}),N(P3A,{color:l,keyLabel:g+1,isShade:!0})]},g))})}return cA("div",{className:"color-picker-content--default",style:{position:"relative"},tabIndex:-1,children:[N("button",{type:"button",tabIndex:-1,className:"color-picker__button color-picker__button--large color-picker__button--no-focus-visible"}),N("div",{tabIndex:-1,style:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",textAlign:"center",fontSize:"0.75rem"},children:uA("colorPicker.noShades")})]})},ZCr=({palette:A,color:e,onChange:t,label:r,activeShade:i})=>{let u=mZ({color:e||"transparent",palette:A}),[a,n]=Oa($5),o=Ee(null);return le(()=>{o.current&&a==="baseColors"&&o.current.focus()},[u?.colorName,a]),N("div",{className:"color-picker-content--default",children:Object.entries(A).map(([s,l],g)=>{let C=(Array.isArray(l)?l[i]:l)||"transparent",B=F3A[g],E=uA(`colors.${s.replace(/\d+/,"")}`,null,"");return cA("button",{ref:u?.colorName===s?o:void 0,tabIndex:-1,type:"button",className:Re("color-picker__button color-picker__button--large",{active:u?.colorName===s,"is-transparent":C==="transparent"||!C}),onClick:()=>{t(C),n("baseColors")},title:`${E}${C.startsWith("#")?` ${C}`:""} — ${B}`,"aria-label":`${E} — ${B}`,style:C?{"--swatch-color":C}:void 0,"data-testid":`color-${s}`,children:[N("div",{className:"color-picker__button-outline"}),N(P3A,{color:C,keyLabel:B})]},s)})})},VCr=ZCr,jCr=({colors:A,color:e,onChange:t,label:r})=>{let[i,u]=Oa($5),a=Ee(null);return le(()=>{a.current&&a.current.focus()},[e,i]),N("div",{className:"color-picker-content--default",children:A.map((n,o)=>cA("button",{ref:e===n?a:void 0,tabIndex:-1,type:"button",className:Re("color-picker__button color-picker__button--large",{active:e===n,"is-transparent":n==="transparent"||!n}),onClick:()=>{t(n),u("custom")},title:n,"aria-label":r,style:{"--swatch-color":n},children:[N("div",{className:"color-picker__button-outline"}),N(P3A,{color:n,keyLabel:o+1,isCustomColor:!0})]},o))})},g3A=(A,e,t)=>{let r=Math.ceil(t/n2);switch(e=e??-1,A){case"ArrowLeft":{let i=e-1;return i<0?t-1:i}case"ArrowRight":return(e+1)%t;case"ArrowDown":{let i=e+n2;return i>=t?e%n2:i}case"ArrowUp":{let i=e-n2,u=i<0?n2*r+i:i;return u>=t?void 0:u}}},XCr=({e:A,colorObj:e,onChange:t,palette:r,customColors:i,setActiveColorPickerSection:u,activeShade:a})=>{if(e?.shade!=null&&["Digit1","Digit2","Digit3","Digit4","Digit5"].includes(A.code)&&A.shiftKey){let n=Number(A.code.slice(-1))-1;return t(r[e.colorName][n]),u("shades"),!0}if(["1","2","3","4","5"].includes(A.key)&&i[Number(A.key)-1])return t(i[Number(A.key)-1]),u("custom"),!0;if(F3A.includes(A.key)){let n=F3A.indexOf(A.key),o=Object.keys(r)[n],s=r[o],l=Array.isArray(s)?s[a]:s;return t(l),u("baseColors"),!0}return!1},$Cr=({event:A,activeColorPickerSection:e,palette:t,color:r,onChange:i,customColors:u,setActiveColorPickerSection:a,updateData:n,activeShade:o,onEyeDropperToggle:s,onEscape:l})=>{if(A[PA.CTRL_OR_CMD])return!1;if(A.key===PA.ESCAPE)return l(A),!0;if(A.key===PA.ALT)return s(!0),!0;if(A.key===PA.I)return s(),!0;let g=mZ({color:r,palette:t});if(A.key===PA.TAB){let C={custom:!!u.length,baseColors:!0,shades:g?.shade!=null,hex:!0},B=Object.entries(C).reduce((Q,[p,m])=>(m&&Q.push(p),Q),[]),E=B.indexOf(e),d=A.shiftKey?-1:1,I=E+d>B.length-1?0:E+d<0?B.length-1:E+d,h=B[I];return h&&a(h),h==="custom"?i(u[0]):h==="baseColors"&&(Object.entries(t).find(([Q,p])=>Array.isArray(p)?p.includes(r):p===r?Q:null)||i(zr.black)),A.preventDefault(),A.stopPropagation(),!0}if(XCr({e:A,colorObj:g,onChange:i,palette:t,customColors:u,setActiveColorPickerSection:a,activeShade:o}))return!0;if(e==="shades"&&g){let{shade:C}=g,B=g3A(A.key,C,n2);if(B!==void 0)return i(t[g.colorName][B]),!0}if(e==="baseColors"&&g){let{colorName:C}=g,B=Object.keys(t),E=B.indexOf(C),d=g3A(A.key,E,B.length);if(d!==void 0){let I=B[d],h=t[I];return i(Array.isArray(h)?h[o]:h),!0}}if(e==="custom"){let C=u.indexOf(r),B=g3A(A.key,C,u.length);if(B!==void 0){let E=u[B];return i(E),!0}}return!1},ABr=({children:A})=>N("div",{className:"color-picker__heading",children:A}),gZ=ABr,eBr=({color:A,onChange:e,label:t,type:r,elements:i,palette:u,updateData:a,children:n,onEyeDropperToggle:o,onEscape:s})=>{let[l]=we(()=>r==="canvasBackground"?[]:_Cr(i,r,u)),[g,C]=Oa($5),B=mZ({color:A,palette:u});le(()=>{if(!g){let h=Nze({color:A,palette:u}),Q=h&&!l.includes(A);C(Q?"hex":h?"custom":B?.shade!=null?"shades":"baseColors")}},[g,A,u,C,B,l]);let[E,d]=we(B?.shade??(r==="elementBackground"?E9:B9));le(()=>{B?.shade!=null&&d(B.shade);let h=(Q)=>{Q.key===PA.ALT&&o(!1)};return document.addEventListener("keyup",h,{capture:!0}),()=>{document.removeEventListener("keyup",h,{capture:!0})}},[B,o]);let I=Ee(null);return N("div",{role:"dialog","aria-modal":"true","aria-label":uA("labels.colorPicker"),children:cA("div",{ref:I,onKeyDown:(h)=>{$Cr({event:h,activeColorPickerSection:g,palette:u,color:A,onChange:e,onEyeDropperToggle:o,customColors:l,setActiveColorPickerSection:C,updateData:a,activeShade:E,onEscape:s})&&(h.preventDefault(),h.stopPropagation())},className:"color-picker-content properties-content",tabIndex:-1,children:[!!l.length&&cA("div",{children:[N(gZ,{children:uA("colorPicker.mostUsedCustomColors")}),N(jCr,{colors:l,color:A,label:uA("colorPicker.mostUsedCustomColors"),onChange:e})]}),cA("div",{children:[N(gZ,{children:uA("colorPicker.colors")}),N(VCr,{color:A,label:t,palette:u,onChange:e,activeShade:E})]}),cA("div",{children:[N(gZ,{children:uA("colorPicker.shades")}),N(zCr,{hex:A,onChange:e,palette:u})]}),n]})})},Gze=yi(null),b0=()=>Si(Gze),Uze=(A)=>{let[e,t]=we(null),r=Do(),{theme:i}=b0(),{container:u}=zd();return Ii(()=>{e&&(e.className="",e.classList.add("excalidraw",...A?.className?.split(/\s+/)||[]),e.classList.toggle("excalidraw--mobile",r.editor.isMobile),e.classList.toggle("theme--dark",i===$r.DARK))},[e,i,r.editor.isMobile,A?.className]),Ii(()=>{let a=A?.parentSelector?u?.querySelector(A.parentSelector):document.body;if(!a)return;let n=document.createElement("div");return a.appendChild(n),t(n),()=>{a.removeChild(n)}},[u,A?.parentSelector]),e};function _3A(A,e,t){le(()=>{function r(i){let u=i;if(!A.current)return;let a=t?.(u,A.current);if(a===!0)return;if(a===!1)return e(u);A.current.contains(u.target)||!document.documentElement.contains(u.target)||u.target.closest("[data-radix-portal]")||u.target===document.documentElement&&document.body.style.pointerEvents==="none"||u.target.closest("[data-prevent-outside-click]")||e(u)}return document.addEventListener("pointerdown",r),document.addEventListener("touchstart",r),()=>{document.removeEventListener("pointerdown",r),document.removeEventListener("touchstart",r)}},[A,e,t])}var DZ=(A)=>{let e=Ee(A);return Object.assign(e.current,A),e.current},yZ=Pn(null),tBr=({onCancel:A,onChange:e,onSelect:t,colorPickerType:r})=>{let i=Uze({className:"excalidraw-eye-dropper-backdrop",parentSelector:".excalidraw-eye-dropper-container"}),u=b0(),a=SZ(),n=qd(),o=Jr(a,u),s=DZ({app:n,onCancel:A,onChange:e,onSelect:t,selectedElements:o}),{container:l}=zd();le(()=>{let C=g.current;if(!C||!n.canvas||!i)return;let B=!1,E=n.canvas.getContext("2d"),d=({clientX:D,clientY:w})=>{let b=E.getImageData((D-u.offsetLeft)*window.devicePixelRatio,(w-u.offsetTop)*window.devicePixelRatio,1,1).data;return Lde(b[0],b[1],b[2])},I=({clientX:D,clientY:w,altKey:b})=>{C.style.top=`${w+20}px`,C.style.left=`${D+20}px`;let F=d({clientX:D,clientY:w});B&&s.onChange(r,F,s.selectedElements,{altKey:b}),C.style.background=F},h=()=>{s.onCancel()},Q=(D,w)=>{s.onSelect(D,w)},p=(D)=>{B=!0,D.stopImmediatePropagation()},m=(D)=>{B=!1,l?.focus(),D.stopImmediatePropagation(),D.preventDefault(),Q(d(D),D)},f=(D)=>{D.key===PA.ESCAPE&&(D.preventDefault(),D.stopImmediatePropagation(),h())};return i.tabIndex=-1,i.focus(),I({clientX:s.app.lastViewportPosition.x,clientY:s.app.lastViewportPosition.y,altKey:!1}),i.addEventListener("keydown",f),i.addEventListener("pointerdown",p),i.addEventListener("pointerup",m),window.addEventListener("pointermove",I,{passive:!0}),window.addEventListener("blur",h),()=>{B=!1,i.removeEventListener("keydown",f),i.removeEventListener("pointerdown",p),i.removeEventListener("pointerup",m),window.removeEventListener("pointermove",I),window.removeEventListener("blur",h)}},[s,n.canvas,i,r,l,u.offsetLeft,u.offsetTop]);let g=Ee(null);return _3A(g,()=>{A()},(C)=>!!C.target.closest(".excalidraw-eye-dropper-trigger, .excalidraw-eye-dropper-backdrop")),i?R5(N("div",{ref:g,className:"excalidraw-eye-dropper-preview"}),i):null},rBr=({color:A,onChange:e,label:t,colorPickerType:r})=>{let i=Do(),[u,a]=we(A),[n,o]=Oa($5);le(()=>{a(A)},[A]);let s=lt((E)=>{let d=E.toLowerCase(),I=iBr(d);I&&e(I),a(d)},[e]),l=Ee(null),g=Ee(null);le(()=>{l.current&&l.current.focus()},[n]);let[C,B]=Oa(yZ);return le(()=>()=>{B(null)},[B]),cA("div",{className:"color-picker__input-label",children:[N("div",{className:"color-picker__input-hash",children:"#"}),N("input",{ref:n==="hex"?l:void 0,style:{border:0,padding:0},spellCheck:!1,className:"color-picker-input","aria-label":t,onChange:(E)=>{s(E.target.value)},value:(u||"").replace(/^#/,""),onBlur:()=>{a(A)},tabIndex:-1,onFocus:()=>o("hex"),onKeyDown:(E)=>{E.key!==PA.TAB&&(E.key===PA.ESCAPE&&g.current?.focus(),E.stopPropagation())}}),!i.editor.isMobile&&cA(et,{children:[N("div",{style:{width:"1px",height:"1.25rem",backgroundColor:"var(--default-border-color)"}}),N("div",{ref:g,className:Re("excalidraw-eye-dropper-trigger",{selected:C}),onClick:()=>B((E)=>E?null:{keepOpenOnAlt:!1,onSelect:(d)=>e(d),colorPickerType:r}),title:`${uA("labels.eyeDropper")} — ${PA.I.toLocaleUpperCase()} or ${Fe("Alt")} `,children:Hhe})]})]})},YB=Dt(({children:A,padding:e,className:t,style:r},i)=>N("div",{className:Re("Island",t),style:{"--padding":e,...r},ref:i,children:A})),Mze=Dt(({className:A,container:e,children:t,style:r,onClose:i,onKeyDown:u,onFocusOutside:a,onPointerLeave:n,onPointerDownOutside:o},s)=>{let l=Do();return N(_2e,{container:e,children:cA(J5,{ref:s,className:Re("focus-visible-none",A),"data-prevent-outside-click":!0,side:l.editor.isMobile&&!l.viewport.isLandscape?"bottom":"right",align:l.editor.isMobile&&!l.viewport.isLandscape?"center":"start",alignOffset:-16,sideOffset:20,style:{zIndex:"var(--zIndex-popup)"},onPointerLeave:n,onKeyDown:u,onFocusOutside:a,onPointerDownOutside:o,onCloseAutoFocus:(g)=>{g.stopPropagation(),g.preventDefault(),e&&!cIe(document.activeElement)&&e.focus(),i()},children:[N(YB,{padding:3,style:r,children:t}),N(Zz,{width:20,height:10,style:{fill:"var(--popup-bg-color)",filter:"drop-shadow(rgba(0, 0, 0, 0.05) 0px 3px 2px)"}})]})})}),Cqe=(A)=>{let e=new Option().style;return e.color=A,!!e.color},iBr=(A)=>Rc(A)?A:Cqe(`#${A}`)?`#${A}`:Cqe(A)?A:null,uBr=({type:A,color:e,onChange:t,label:r,elements:i,palette:u=zr,updateData:a})=>{let{container:n}=zd(),[,o]=Oa($5),[s,l]=Oa(yZ),g=cA("div",{children:[N(gZ,{children:uA("colorPicker.hexCode")}),N(rBr,{color:e,label:r,onChange:(E)=>{t(E)},colorPickerType:A})]}),C=Ee(null),B=()=>{C.current?.querySelector(".color-picker-content")?.focus()};return N(Mze,{container:n,style:{maxWidth:"13rem"},onFocusOutside:(E)=>{B(),E.preventDefault()},onPointerDownOutside:(E)=>{s&&E.preventDefault()},onClose:()=>{a({openPopup:null}),o(null)},children:u?N(eBr,{palette:u,color:e,onChange:(E)=>{t(E)},onEyeDropperToggle:(E)=>{l((d)=>E?(d=d||{keepOpenOnAlt:!0,onSelect:t,colorPickerType:A},d.keepOpenOnAlt=!0,d):E===!1||d?null:{keepOpenOnAlt:!1,onSelect:t,colorPickerType:A})},onEscape:(E)=>{s?l(null):a({openPopup:null})},label:r,type:A,elements:i,updateData:a,children:g}):g})},aBr=({label:A,color:e,type:t})=>N(Mp,{type:"button",className:Re("color-picker__button active-color properties-trigger",{"is-transparent":e==="transparent"||!e}),"aria-label":A,style:e?{"--swatch-color":e}:void 0,title:t==="elementStroke"?uA("labels.showStroke"):uA("labels.showBackground"),children:N("div",{className:"color-picker__button-outline"})}),W3A=({type:A,color:e,onChange:t,label:r,elements:i,palette:u=zr,topPicks:a,updateData:n,appState:o})=>N("div",{children:cA("div",{role:"dialog","aria-modal":"true",className:"color-picker-container",children:[N(PCr,{activeColor:e,onChange:t,type:A,topPicks:a}),N(Rze,{}),cA(Up,{open:o.openPopup===A,onOpenChange:(s)=>{n({openPopup:s?A:null})},children:[N(aBr,{color:e,label:r,type:A}),o.openPopup===A&&N(uBr,{type:A,color:e,onChange:t,label:r,elements:i,palette:u,updateData:n})]})]})}),wZ=({icon:A})=>N("span",{style:{width:"1em",margin:"0 0.5ex 0 0.5ex",display:"inline-block",lineHeight:0,verticalAlign:"middle"},children:A}),nBr=({label:A,open:e,openTrigger:t,children:r,className:i})=>cA(et,{children:[cA("div",{style:{cursor:"pointer",display:"flex",justifyContent:"space-between",alignItems:"center"},className:i,onClick:t,children:[A,N(wZ,{icon:e?lQe:bhA})]}),e&&N("div",{style:{display:"flex",flexDirection:"column"},children:r})]}),x3A=nBr,oBr=Pn(!1);function sBr({options:A,value:e,label:t,onChange:r,onClose:i,numberOfOptionsToAlwaysShow:u=A.length}){let a=Do(),n=(B)=>{let E=A.find((d)=>d.keyBinding===B.key.toLowerCase());if(!(B.metaKey||B.altKey||B.ctrlKey)&&E)r(E.value),B.preventDefault();else if(B.key===PA.TAB){let d=A.findIndex((h)=>h.value===e),I=B.shiftKey?(A.length+d-1)%A.length:(d+1)%A.length;r(A[I].value)}else if(Y9(B.key)){let d=WL().rtl,I=A.findIndex((h)=>h.value===e);if(I!==-1){let h=A.length,Q=I;switch(B.key){case(d?PA.ARROW_LEFT:PA.ARROW_RIGHT):Q=(I+1)%h;break;case(d?PA.ARROW_RIGHT:PA.ARROW_LEFT):Q=(h+I-1)%h;break;case PA.ARROW_DOWN:{Q=(I+(u??1))%h;break}case PA.ARROW_UP:{Q=(h+I-(u??1))%h;break}}r(A[Q].value)}B.preventDefault()}else(B.key===PA.ESCAPE||B.key===PA.ENTER)&&(B.preventDefault(),i());B.nativeEvent.stopImmediatePropagation(),B.stopPropagation()},[o,s]=Oa(oBr),l=Ut(()=>A.slice(0,u),[A,u]),g=Ut(()=>A.slice(u),[A,u]);le(()=>{l.some((B)=>B.value===e)||s(!0)},[e,l,s]);let C=(B)=>N("div",{className:"picker-content",children:B.map((E,d)=>cA("button",{type:"button",className:Re("picker-option",{active:e===E.value}),onClick:(I)=>{r(E.value)},title:`${E.text} ${E.keyBinding&&`— ${E.keyBinding.toUpperCase()}`}`,"aria-label":E.text||"none","aria-keyshortcuts":E.keyBinding||void 0,ref:(I)=>{e===E.value&&setTimeout(()=>{I?.focus()},0)},children:[E.icon,E.keyBinding&&N("span",{className:"picker-keybinding",children:E.keyBinding})]},E.text))});return N(J5,{side:a.editor.isMobile&&!a.viewport.isLandscape?"top":"bottom",align:"start",sideOffset:12,style:{zIndex:"var(--zIndex-popup)"},onKeyDown:n,children:cA("div",{className:"picker",role:"dialog","aria-modal":"true","aria-label":t,children:[C(l),g.length>0&&N(x3A,{label:uA("labels.more_options"),open:o,openTrigger:()=>{s((B)=>!B)},className:"picker-collapsible",children:C(g)})]})})}function Bqe({value:A,label:e,options:t,onChange:r,group:i="",numberOfOptionsToAlwaysShow:u}){let[a,n]=we(!1),o=Ee(null);return N("div",{children:cA(Up,{open:a,onOpenChange:(s)=>n(s),children:[N(Mp,{name:i,type:"button","aria-label":e,onClick:()=>n(!a),ref:o,className:a?"active":"",children:t.find((s)=>s.value===A)?.icon}),a&&N(sBr,{options:t,value:A,label:e,onChange:r,onClose:()=>{n(!1)},numberOfOptionsToAlwaysShow:u})]})})}var Tze=Dt(({className:A,placeholder:e,onChange:t},r)=>cA("div",{className:Re("QuickSearch__wrapper",A),children:[np,N("input",{ref:r,className:"QuickSearch__input",type:"text",placeholder:e,onChange:(i)=>t(i.target.value.trim().toLowerCase())})]})),Yze=({className:A,placeholder:e,children:t})=>{let r=!di.count(t);return N("div",{className:Re("ScrollableList__wrapper",A),role:"menu",children:r?N("div",{className:"empty",children:e}):t})},Hze=({children:A,className:e="",style:t,title:r})=>cA("div",{className:`dropdown-menu-group ${e}`,style:t,children:[r&&N("p",{className:"dropdown-menu-group-title",children:r}),A]}),S3A=Hze;Hze.displayName="DropdownMenuGroup";var Kze=yi({}),Jze=(A="",e=!1,t=!1)=>`dropdown-menu-item dropdown-menu-item-base ${A}
|
||
${e?"dropdown-menu-item--selected":""} ${t?"dropdown-menu-item--hovered":""}`.trim(),Oze=(A,e)=>{let t=Si(Kze);return X8(A,(r)=>{let i=new CustomEvent("menu.itemSelect",{bubbles:!0,cancelable:!0});e?.(i),i.defaultPrevented||t.onSelect?.(i)})},lBr=({textStyle:A,icon:e,shortcut:t,children:r})=>{let i=Do();return cA(et,{children:[e&&N("div",{className:"dropdown-menu-item__icon",children:e}),N("div",{style:A,className:"dropdown-menu-item__text",children:r}),t&&!i.editor.isMobile&&N("div",{className:"dropdown-menu-item__shortcut",children:t})]})},Pze=lBr,q3A=({icon:A,value:e,order:t,children:r,shortcut:i,className:u,hovered:a,selected:n,textStyle:o,onSelect:s,onClick:l,...g})=>{let C=Oze(l,s),B=Ee(null);return le(()=>{a&&(t===0?B.current?.scrollIntoView({block:"end"}):B.current?.scrollIntoView({block:"nearest"}))},[a,t]),N("button",{...g,ref:B,value:e,onClick:C,className:Jze(u,n,a),title:g.title??g["aria-label"],children:N(Pze,{textStyle:o,icon:A,shortcut:i,children:r})})};q3A.displayName="DropdownMenuItem";var KL={GREEN:"green",RED:"red",BLUE:"blue"},z3A=({type:A=KL.BLUE,children:e})=>{let{theme:t}=AR(),r={display:"inline-flex",marginLeft:"auto",padding:"2px 4px",borderRadius:6,fontSize:9,fontFamily:"Cascadia, monospace",border:t===$r.LIGHT?"1.5px solid white":"none"};switch(A){case KL.GREEN:Object.assign(r,{backgroundColor:"var(--background-color-badge)",color:"var(--color-badge)"});break;case KL.RED:Object.assign(r,{backgroundColor:"pink",color:"darkred"});break;case KL.BLUE:default:Object.assign(r,{background:"var(--color-promo)",color:"var(--color-surface-lowest)"})}return N("div",{className:"DropDownMenuItemBadge",style:r,children:e})};z3A.displayName="DropdownMenuItemBadge";q3A.Badge=z3A;var $c=q3A,gBr=({event:A,inputRef:e,hoveredFont:t,filteredFonts:r,onClose:i,onSelect:u,onHover:a})=>{if(!A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key.toLowerCase()===PA.F)return e.current?.focus(),!0;if(A.key===PA.ESCAPE)return i(),!0;if(A.key===PA.ENTER)return t?.value&&u(t.value),!0;if(A.key===PA.ARROW_DOWN)return t?.next?a(t.next.value):r[0]?.value&&a(r[0].value),!0;if(A.key===PA.ARROW_UP)return t?.prev?a(t.prev.value):r[r.length-1]?.value&&a(r[r.length-1].value),!0},cBr=gi(({selectedFontFamily:A,hoveredFontFamily:e,onSelect:t,onHover:r,onLeave:i,onOpen:u,onClose:a})=>{let{container:n}=zd(),{fonts:o}=qd(),{showDeprecatedFonts:s}=$L(),[l,g]=we(""),C=Ee(null),B=Ut(()=>Array.from(kd.registered.entries()).filter(([b,{metadata:F}])=>!F.serverSide&&!F.fallback).map(([b,{metadata:F,fontFaces:v}])=>{let S={value:b,icon:F.icon??N8,text:v[0]?.fontFace?.family??"Unknown"};return F.deprecated&&Object.assign(S,{deprecated:F.deprecated,badge:{type:KL.RED,placeholder:uA("fontList.badge.old")}}),S}).sort((b,F)=>b.text.toLowerCase()>F.text.toLowerCase()?1:-1),[]),E=Ut(()=>new Set(o.getSceneFamilies()),[A]),d=Ut(()=>B.filter((b)=>E.has(b.value)),[B,E]),I=Ut(()=>B.filter((b)=>!E.has(b.value)&&(s||!b.deprecated)),[B,E,s]),h=Ut(()=>pIe([...d,...I].filter((b)=>b.text?.toLowerCase().includes(l))),[d,I,l]),Q=Ut(()=>{let b;return e?b=h.find((F)=>F.value===e):A&&(b=h.find((F)=>F.value===A)),!b&&l&&(h[0]?.value?r(h[0].value):i()),b},[e,A,l,h,r,i]),p=lt((b)=>{gBr({event:b,inputRef:C,hoveredFont:Q,filteredFonts:h,onSelect:t,onHover:r,onClose:a})&&(b.preventDefault(),b.stopPropagation())},[Q,h,t,r,a]);le(()=>(u(),()=>{a()}),[]);let m=Ut(()=>h.filter((b)=>E.has(b.value)),[h,E]),f=Ut(()=>h.filter((b)=>!E.has(b.value)),[h,E]),D=(b,F)=>cA($c,{icon:b.icon,value:b.value,order:F,textStyle:{fontFamily:B2({fontFamily:b.value})},hovered:b.value===Q?.value,selected:b.value===A,tabIndex:b.value===A?0:-1,onClick:(v)=>{t(Number(v.currentTarget.value))},onMouseMove:()=>{Q?.value!==b.value&&r(b.value)},children:[b.text,b.badge&&N(z3A,{type:b.badge.type,children:b.badge.placeholder})]},b.value),w=[];return m.length&&w.push(N(S3A,{title:uA("fontList.sceneFonts"),children:m.map(D)},"group_1")),f.length&&w.push(N(S3A,{title:uA("fontList.availableFonts"),children:f.map((b,F)=>D(b,F+m.length))},"group_2")),cA(Mze,{className:"properties-content",container:n,style:{width:"15rem"},onClose:a,onPointerLeave:i,onKeyDown:p,children:[N(Tze,{ref:C,placeholder:uA("quickSearch.placeholder"),onChange:E2(g,20)}),N(Yze,{className:"dropdown-menu fonts manual-hover",placeholder:uA("fontList.empty"),children:w.length?w:null})]})},(A,e)=>A.selectedFontFamily===e.selectedFontFamily&&A.hoveredFontFamily===e.hoveredFontFamily),CBr=({selectedFontFamily:A})=>{let e=Ut(()=>!!(A&&!EBr(A)),[A]);return N(Mp,{asChild:!0,children:N("div",{children:N(Lze,{standalone:!0,icon:zIA,title:uA("labels.showFonts"),className:"properties-trigger",testId:"font-family-show-fonts",active:e,onClick:()=>{}})})})},_ze=[{value:aa.Excalifont,icon:y9,text:uA("labels.handDrawn"),testId:"font-family-hand-drawn"},{value:aa.Nunito,icon:N8,text:uA("labels.normal"),testId:"font-family-normal"},{value:aa["Comic Shanns"],icon:R_,text:uA("labels.code"),testId:"font-family-code"}],BBr=new Set(_ze.map((A)=>A.value)),EBr=(A)=>A?BBr.has(A):!1,dBr=gi(({isOpened:A,selectedFontFamily:e,hoveredFontFamily:t,onSelect:r,onHover:i,onLeave:u,onPopupChange:a})=>{let n=Ut(()=>_ze,[]),o=lt((s)=>{s&&r(s)},[r]);return cA("div",{role:"dialog","aria-modal":"true",className:"FontPicker__container",children:[N(Wd,{type:"button",options:n,value:e,onClick:o}),N(Rze,{}),cA(Up,{open:A,onOpenChange:a,children:[N(CBr,{selectedFontFamily:e}),A&&N(cBr,{selectedFontFamily:e,hoveredFontFamily:t,onSelect:o,onHover:i,onLeave:u,onOpen:()=>a(!0),onClose:()=>a(!1)})]})]})},(A,e)=>A.isOpened===e.isOpened&&A.selectedFontFamily===e.selectedFontFamily&&A.hoveredFontFamily===e.hoveredFontFamily),IBr=({updateData:A,appState:e,elements:t,testId:r})=>{let i=Ee(null),u=Ee(null),a=js(t,e,(n)=>n.opacity,!0,e.currentItemOpacity);return le(()=>{if(i.current&&u.current){let n=i.current,o=u.current,s=n.offsetWidth,l=15,g=a/100*(s-l)+l/2;o.style.left=`${g}px`,n.style.background=`linear-gradient(to right, var(--color-slider-track) 0%, var(--color-slider-track) ${a}%, var(--button-bg) ${a}%, var(--button-bg) 100%)`}},[a]),cA("label",{className:"control-label",children:[uA("labels.opacity"),cA("div",{className:"range-wrapper",children:[N("input",{ref:i,type:"range",min:"0",max:"100",step:"10",onChange:(n)=>{A(+n.target.value)},value:a,className:"range-input","data-testid":r}),N("div",{className:"value-bubble",ref:u,children:a!==0?a:null}),N("div",{className:"zero-label",children:"0"})]})]})},Wze=0.1,Vs=(A,e,t,r=!1)=>{let i=ar(Jr(A,e,{includeBoundTextElement:r}));return A.map((u)=>i.get(u.id)||u.id===e.editingTextElement?.id?t(u):u)},js=function(A,e,t,r,i){let u=e.editingTextElement,a=fu(A),n=null;return u&&(n=t(u)),n||(yn(a,e)?n=e1e(r===!0?a:a.filter((o)=>r(o)),e,t)??(typeof i=="function"?i(!0):i):n=typeof i=="function"?i(!1):i),n},hBr=(A,e)=>Tu(e)||!e.autoResize?e:Se(e,{x:A.textAlign==="left"?A.x:A.x+(A.width-e.width)/(A.textAlign==="center"?2:1),y:A.y+(A.height-e.height)/2},!1),Z3A=(A,e,t,r,i)=>{let u=new Set,a=Vs(A,e,(o)=>{if(Et(o)){let s=r(o);u.add(s);let l=Tr(o,{fontSize:s});return j0(l,t.scene.getContainerElement(o),t.scene.getNonDeletedElementsMap()),l=hBr(o,l),l}return o},!0),n=ar(a);return Jr(A,e,{includeBoundTextElement:!0}).forEach((o)=>{Et(o)&&Os(o,n)}),{elements:a,appState:{...e,currentItemFontSize:u.size===1?[...u][0]:i??e.currentItemFontSize},captureUpdate:be.IMMEDIATELY}},Sxi=at({name:"changeStrokeColor",label:"labels.stroke",trackEvent:!1,perform:(A,e,t)=>({...t.currentItemStrokeColor&&{elements:Vs(A,e,(r)=>hW(r.type)?Tr(r,{strokeColor:t.currentItemStrokeColor}):r,!0)},appState:{...e,...t},captureUpdate:t.currentItemStrokeColor?be.IMMEDIATELY:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t,appProps:r})=>cA(et,{children:[N("h3",{"aria-hidden":"true",children:uA("labels.stroke")}),N(W3A,{topPicks:hIA,palette:xde,type:"elementStroke",label:uA("labels.stroke"),color:js(A,e,(i)=>i.strokeColor,!0,e.currentItemStrokeColor),onChange:(i)=>t({currentItemStrokeColor:i}),elements:A,appState:e,updateData:t})]})}),Lxi=at({name:"changeBackgroundColor",label:"labels.changeBackground",trackEvent:!1,perform:(A,e,t)=>({...t.currentItemBackgroundColor&&{elements:Vs(A,e,(r)=>Tr(r,{backgroundColor:t.currentItemBackgroundColor}))},appState:{...e,...t},captureUpdate:t.currentItemBackgroundColor?be.IMMEDIATELY:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t,appProps:r})=>cA(et,{children:[N("h3",{"aria-hidden":"true",children:uA("labels.background")}),N(W3A,{topPicks:QIA,palette:Sde,type:"elementBackground",label:uA("labels.background"),color:js(A,e,(i)=>i.backgroundColor,!0,e.currentItemBackgroundColor),onChange:(i)=>t({currentItemBackgroundColor:i}),elements:A,appState:e,updateData:t})]})}),Rxi=at({name:"changeFillStyle",label:"labels.fill",trackEvent:!1,perform:(A,e,t,r)=>(Nu("element","changeFillStyle",`${t} (${r.device.editor.isMobile?"mobile":"desktop"})`),{elements:Vs(A,e,(i)=>Tr(i,{fillStyle:t})),appState:{...e,currentItemFillStyle:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=Jr(A,e),i=r.length>0&&r.every((u)=>u.fillStyle==="zigzag");return cA("fieldset",{children:[N("legend",{children:uA("labels.fill")}),N(Wd,{type:"button",options:[{value:"hachure",text:`${i?uA("labels.zigzag"):uA("labels.hachure")} (${Fe("Alt-Click")})`,icon:i?Ahe:ehe,active:i?!0:void 0,testId:"fill-hachure"},{value:"cross-hatch",text:uA("labels.crossHatch"),icon:the,testId:"fill-cross-hatch"},{value:"solid",text:uA("labels.solid"),icon:rhe,testId:"fill-solid"}],value:js(A,e,(u)=>u.fillStyle,(u)=>u.hasOwnProperty("fillStyle"),(u)=>u?null:e.currentItemFillStyle),onClick:(u,a)=>{let n=a.altKey&&u==="hachure"&&r.every((o)=>o.fillStyle==="hachure")?"zigzag":u;t(n)}})]})}}),Nxi=at({name:"changeStrokeWidth",label:"labels.strokeWidth",trackEvent:!1,perform:(A,e,t)=>({elements:Vs(A,e,(r)=>Tr(r,{strokeWidth:t})),appState:{...e,currentItemStrokeWidth:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>cA("fieldset",{children:[N("legend",{children:uA("labels.strokeWidth")}),N(Wd,{group:"stroke-width",options:[{value:Z_.thin,text:uA("labels.thin"),icon:dhA,testId:"strokeWidth-thin"},{value:Z_.bold,text:uA("labels.bold"),icon:ihe,testId:"strokeWidth-bold"},{value:Z_.extraBold,text:uA("labels.extraBold"),icon:uhe,testId:"strokeWidth-extraBold"}],value:js(A,e,(r)=>r.strokeWidth,(r)=>r.hasOwnProperty("strokeWidth"),(r)=>r?null:e.currentItemStrokeWidth),onChange:(r)=>t(r)})]})}),Gxi=at({name:"changeSloppiness",label:"labels.sloppiness",trackEvent:!1,perform:(A,e,t)=>({elements:Vs(A,e,(r)=>Tr(r,{seed:QB(),roughness:t})),appState:{...e,currentItemRoughness:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>cA("fieldset",{children:[N("legend",{children:uA("labels.sloppiness")}),N(Wd,{group:"sloppiness",options:[{value:0,text:uA("labels.architect"),icon:ohe},{value:1,text:uA("labels.artist"),icon:she},{value:2,text:uA("labels.cartoonist"),icon:lhe}],value:js(A,e,(r)=>r.roughness,(r)=>r.hasOwnProperty("roughness"),(r)=>r?null:e.currentItemRoughness),onChange:(r)=>t(r)})]})}),Uxi=at({name:"changeStrokeStyle",label:"labels.strokeStyle",trackEvent:!1,perform:(A,e,t)=>({elements:Vs(A,e,(r)=>Tr(r,{strokeStyle:t})),appState:{...e,currentItemStrokeStyle:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>cA("fieldset",{children:[N("legend",{children:uA("labels.strokeStyle")}),N(Wd,{group:"strokeStyle",options:[{value:"solid",text:uA("labels.strokeStyle_solid"),icon:dhA},{value:"dashed",text:uA("labels.strokeStyle_dashed"),icon:ahe},{value:"dotted",text:uA("labels.strokeStyle_dotted"),icon:nhe}],value:js(A,e,(r)=>r.strokeStyle,(r)=>r.hasOwnProperty("strokeStyle"),(r)=>r?null:e.currentItemStrokeStyle),onChange:(r)=>t(r)})]})}),Mxi=at({name:"changeOpacity",label:"labels.opacity",trackEvent:!1,perform:(A,e,t)=>({elements:Vs(A,e,(r)=>Tr(r,{opacity:t}),!0),appState:{...e,currentItemOpacity:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>N(IBr,{updateData:t,elements:A,appState:e,testId:"opacity"})}),Txi=at({name:"changeFontSize",label:"labels.fontSize",trackEvent:!1,perform:(A,e,t,r)=>Z3A(A,e,r,()=>t,t),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>cA("fieldset",{children:[N("legend",{children:uA("labels.fontSize")}),N(Wd,{group:"font-size",options:[{value:16,text:uA("labels.small"),icon:whe,testId:"fontSize-small"},{value:20,text:uA("labels.medium"),icon:bhe,testId:"fontSize-medium"},{value:28,text:uA("labels.large"),icon:vhe,testId:"fontSize-large"},{value:36,text:uA("labels.veryLarge"),icon:khe,testId:"fontSize-veryLarge"}],value:js(A,e,(i)=>{if(Et(i))return i.fontSize;let u=Gr(i,r.scene.getNonDeletedElementsMap());return u?u.fontSize:null},(i)=>Et(i)||Gr(i,r.scene.getNonDeletedElementsMap())!==null,(i)=>i?null:e.currentItemFontSize||wd),onChange:(i)=>t(i)})]})}),Eqe=at({name:"decreaseFontSize",label:"labels.decreaseFontSize",icon:iS,trackEvent:!1,perform:(A,e,t,r)=>Z3A(A,e,r,(i)=>Math.round(1/(1+Wze)*i.fontSize)),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&(A.key===PA.CHEVRON_LEFT||A.key===PA.COMMA)}),dqe=at({name:"increaseFontSize",label:"labels.increaseFontSize",icon:iS,trackEvent:!1,perform:(A,e,t,r)=>Z3A(A,e,r,(i)=>Math.round(i.fontSize*(1+Wze))),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&(A.key===PA.CHEVRON_RIGHT||A.key===PA.PERIOD)}),Yxi=at({name:"changeFontFamily",label:"labels.fontFamily",trackEvent:!1,perform:(A,e,t,r)=>{let{cachedElements:i,resetAll:u,resetContainers:a,...n}=t;if(u)return{elements:Vs(A,e,(E)=>{let d=i?.get(E.id);return d?Tr(E,{...d}):E},!0),appState:{...e,...n},captureUpdate:be.NEVER};let{currentItemFontFamily:o,currentHoveredFontFamily:s}=t,l=be.EVENTUALLY,g,C=!1;if(o)g=o,l=be.IMMEDIATELY;else if(s){g=s,l=be.EVENTUALLY;let E=Jr(A,e,{includeBoundTextElement:!0}).filter((d)=>Et(d));if(E.length>200)C=!0;else{let d=0,I=0;for(;d<E.length&&I<5000;){let h=E[d];I+=h?.originalText.length||0,d++}I>5000&&(C=!0)}}let B={appState:{...e,...n},captureUpdate:l};if(g&&!C){let E=new Map,d=new Set,I=!1,h=Array.from(kd.loadedFontsCache.values()),Q=Object.entries(aa).find(([f,D])=>D===g)?.[0];s&&Q&&h.some((f)=>f.startsWith(Q))&&(I=!0),Object.assign(B,{elements:Vs(A,e,(f)=>{if(Et(f)&&(f.fontFamily!==g||o)){let D=Tr(f,{fontFamily:g,lineHeight:op(g)}),w=i?.get(f.containerId||"")||{},b=r.scene.getContainerElement(f);return a&&b&&w&&Se(b,{...w},!1),I||(d=new Set([...d,...Array.from(D.originalText)])),E.set(D,b),D}return f},!0)});let p=`10px ${B2({fontFamily:g})}`,m=Array.from(d.values()).join();if(I||window.document.fonts.check(p,m))for(let[f,D]of E)j0(f,D,r.scene.getNonDeletedElementsMap(),!1);else window.document.fonts.load(p,m).then((f)=>{for(let[D,w]of E){let b=r.scene.getElement(D.id),F=w?r.scene.getElement(w.id):null;b&&j0(b,F,r.scene.getNonDeletedElementsMap(),!1)}r.fonts.onLoaded(f)})}return B},PanelComponent:({elements:A,appState:e,app:t,updateData:r})=>{let i=Ee(new Map),u=Ee(null),[a,n]=we({}),o=Ee(!0),s=Ut(()=>{let l=(g,C)=>js(g,e,(B)=>{if(Et(B))return B.fontFamily;let E=Gr(B,C);return E?E.fontFamily:null},(B)=>Et(B)||Gr(B,C)!==null,(B)=>B?null:e.currentItemFontFamily||Oh);return a.openPopup==="fontFamily"&&e.openPopup==="fontFamily"?l(Array.from(i.current?.values()??[]),i.current):!a.openPopup&&e.openPopup!=="fontFamily"?l(A,t.scene.getNonDeletedElementsMap()):u.current},[a.openPopup,e,A,t.scene]);return le(()=>{u.current=s},[s]),le(()=>{Object.keys(a).length&&(r(a),n({}))},[a]),le(()=>(o.current=!1,()=>{o.current=!0}),[]),cA("fieldset",{children:[N("legend",{children:uA("labels.fontFamily")}),N(dBr,{isOpened:e.openPopup==="fontFamily",selectedFontFamily:s,hoveredFontFamily:e.currentHoveredFontFamily,onSelect:(l)=>{n({openPopup:null,currentHoveredFontFamily:null,currentItemFontFamily:l}),i.current.clear()},onHover:(l)=>{n({currentHoveredFontFamily:l,cachedElements:new Map(i.current),resetContainers:!0})},onLeave:()=>{n({currentHoveredFontFamily:null,cachedElements:new Map(i.current),resetAll:!0})},onPopupChange:(l)=>{if(l){i.current.clear();let{editingTextElement:g}=e;if(g?.type==="text"){let C=t.scene.getElement(g.id);i.current.set(g.id,Tr(C||g,{},!0))}else{let C=Jr(A,e,{includeBoundTextElement:!0});for(let B of C)i.current.set(B.id,Tr(B,{},!0))}n({openPopup:"fontFamily"})}else{let g={openPopup:null,currentHoveredFontFamily:null,cachedElements:new Map(i.current),resetAll:!0};o.current?r({...a,...g}):n(g),i.current.clear()}}})]})}}),Hxi=at({name:"changeTextAlign",label:"Change text alignment",trackEvent:!1,perform:(A,e,t,r)=>({elements:Vs(A,e,(i)=>{if(Et(i)){let u=Tr(i,{textAlign:t});return j0(u,r.scene.getContainerElement(i),r.scene.getNonDeletedElementsMap()),u}return i},!0),appState:{...e,currentItemTextAlign:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>{let i=r.scene.getNonDeletedElementsMap();return cA("fieldset",{children:[N("legend",{children:uA("labels.textAlign")}),N(Wd,{group:"text-align",options:[{value:"left",text:uA("labels.left"),icon:Fhe,testId:"align-left"},{value:"center",text:uA("labels.center"),icon:xhe,testId:"align-horizontal-center"},{value:"right",text:uA("labels.right"),icon:She,testId:"align-right"}],value:js(A,e,(u)=>{if(Et(u))return u.textAlign;let a=Gr(u,i);return a?a.textAlign:null},(u)=>Et(u)||Gr(u,i)!==null,(u)=>u?null:e.currentItemTextAlign),onChange:(u)=>t(u)})]})}}),Kxi=at({name:"changeVerticalAlign",label:"Change vertical alignment",trackEvent:{category:"element"},perform:(A,e,t,r)=>({elements:Vs(A,e,(i)=>{if(Et(i)){let u=Tr(i,{verticalAlign:t});return j0(u,r.scene.getContainerElement(i),r.scene.getNonDeletedElementsMap()),u}return i},!0),appState:{...e},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N("fieldset",{children:N(Wd,{group:"text-align",options:[{value:Ul.TOP,text:uA("labels.alignTop"),icon:N(Lhe,{theme:e.theme}),testId:"align-top"},{value:Ul.MIDDLE,text:uA("labels.centerVertically"),icon:N(Nhe,{theme:e.theme}),testId:"align-middle"},{value:Ul.BOTTOM,text:uA("labels.alignBottom"),icon:N(Rhe,{theme:e.theme}),testId:"align-bottom"}],value:js(A,e,(i)=>{if(Et(i)&&i.containerId)return i.verticalAlign;let u=Gr(i,r.scene.getNonDeletedElementsMap());return u?u.verticalAlign:null},(i)=>Et(i)||Gr(i,r.scene.getNonDeletedElementsMap())!==null,(i)=>i?null:Ul.MIDDLE),onChange:(i)=>t(i)})})}),Jxi=at({name:"changeRoundness",label:"Change edge roundness",trackEvent:!1,perform:(A,e,t)=>({elements:Vs(A,e,(r)=>ft(r)?r:Tr(r,{roundness:t==="round"?{type:d2(r.type)?mn.ADAPTIVE_RADIUS:mn.PROPORTIONAL_RADIUS}:null})),appState:{...e,currentItemRoundness:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=MQA(fu(A),e).some((i)=>i.roundness?.type===mn.LEGACY);return cA("fieldset",{children:[N("legend",{children:uA("labels.edges")}),N(Wd,{group:"edges",options:[{value:"sharp",text:uA("labels.sharp"),icon:ghe},{value:"round",text:uA("labels.round"),icon:che}],value:js(A,e,(i)=>r?null:i.roundness?"round":"sharp",(i)=>!Kr(i)&&i.hasOwnProperty("roundness"),(i)=>i?null:e.currentItemRoundness),onChange:(i)=>t(i)})]})}}),Iqe=(A)=>[{value:null,text:uA("labels.arrowhead_none"),keyBinding:"q",icon:Che},{value:"arrow",text:uA("labels.arrowhead_arrow"),keyBinding:"w",icon:N(Bhe,{flip:A})},{value:"triangle",text:uA("labels.arrowhead_triangle"),icon:N(hhe,{flip:A}),keyBinding:"e"},{value:"triangle_outline",text:uA("labels.arrowhead_triangle_outline"),icon:N(Qhe,{flip:A}),keyBinding:"r"},{value:"circle",text:uA("labels.arrowhead_circle"),keyBinding:"a",icon:N(Ehe,{flip:A})},{value:"circle_outline",text:uA("labels.arrowhead_circle_outline"),keyBinding:"s",icon:N(dhe,{flip:A})},{value:"diamond",text:uA("labels.arrowhead_diamond"),icon:N(phe,{flip:A}),keyBinding:"d"},{value:"diamond_outline",text:uA("labels.arrowhead_diamond_outline"),icon:N(fhe,{flip:A}),keyBinding:"f"},{value:"bar",text:uA("labels.arrowhead_bar"),keyBinding:"z",icon:N(Ihe,{flip:A})},{value:"crowfoot_one",text:uA("labels.arrowhead_crowfoot_one"),icon:N(Dhe,{flip:A}),keyBinding:"c"},{value:"crowfoot_many",text:uA("labels.arrowhead_crowfoot_many"),icon:N(mhe,{flip:A}),keyBinding:"x"},{value:"crowfoot_one_or_many",text:uA("labels.arrowhead_crowfoot_one_or_many"),icon:N(yhe,{flip:A}),keyBinding:"v"}],Oxi=at({name:"changeArrowhead",label:"Change arrowheads",trackEvent:!1,perform:(A,e,t)=>({elements:Vs(A,e,(r)=>{if(Nr(r)){let{position:i,type:u}=t;if(i==="start")return Tr(r,{startArrowhead:u});if(i==="end")return Tr(r,{endArrowhead:u})}return r}),appState:{...e,[t.position==="start"?"currentItemStartArrowhead":"currentItemEndArrowhead"]:t.type},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=WL().rtl;return cA("fieldset",{children:[N("legend",{children:uA("labels.arrowheads")}),cA("div",{className:"iconSelectList buttonList",children:[N(Bqe,{label:"arrowhead_start",options:Iqe(!r),value:js(A,e,(i)=>Nr(i)&&nS(i.type)?i.startArrowhead:e.currentItemStartArrowhead,!0,e.currentItemStartArrowhead),onChange:(i)=>t({position:"start",type:i}),numberOfOptionsToAlwaysShow:4}),N(Bqe,{label:"arrowhead_end",group:"arrowheads",options:Iqe(!!r),value:js(A,e,(i)=>Nr(i)&&nS(i.type)?i.endArrowhead:e.currentItemEndArrowhead,!0,e.currentItemEndArrowhead),onChange:(i)=>t({position:"end",type:i}),numberOfOptionsToAlwaysShow:4})]})]})}}),Pxi=at({name:"changeArrowType",label:"Change arrow types",trackEvent:!1,perform:(A,e,t,r)=>{let i=Vs(A,e,(n)=>{if(!Kr(n))return n;let o=Tr(n,{roundness:t===ho.round?{type:mn.PROPORTIONAL_RADIUS}:null,elbowed:t===ho.elbow,points:t===ho.elbow||n.elbowed?[n.points[0],n.points[n.points.length-1]]:n.points});if(ft(o)){let s=r.scene.getNonDeletedElementsMap();r.dismissLinearEditor();let l=ht.getPointAtIndexGlobalCoordinates(o,0,s),g=ht.getPointAtIndexGlobalCoordinates(o,-1,s),C=!o.startBinding&&Hc(Nc(l),A,s,e.zoom,!1,!0),B=!o.endBinding&&Hc(Nc(g),A,s,e.zoom,!1,!0),E=C||o.startBinding&&s.get(o.startBinding.elementId),d=B||o.endBinding&&s.get(o.endBinding.elementId),I=C?v9(o,C,"start"):l,h=B?v9(o,B,"end"):g;C&&lB(o,C,"start",s),B&&lB(o,B,"end",s),Se(o,{points:[I,h].map((Q)=>X(Q[0]-o.x,Q[1]-o.y)),...E&&o.startBinding?{startBinding:{...o.startBinding,...lS(o,E,"start",s)}}:{},...d&&o.endBinding?{endBinding:{...o.endBinding,...lS(o,d,"end",s)}}:{}}),ht.updateEditorMidPointsCache(o,s,r.state)}return o}),u={...e,currentItemArrowType:t},a=e.selectedLinearElement?.elementId;if(a){let n=i.find((o)=>o.id===a);n&&(u.selectedLinearElement=new ht(n))}return{elements:i,appState:u,captureUpdate:be.IMMEDIATELY}},PanelComponent:({elements:A,appState:e,updateData:t})=>cA("fieldset",{children:[N("legend",{children:uA("labels.arrowtypes")}),N(Wd,{group:"arrowtypes",options:[{value:ho.sharp,text:uA("labels.arrowtype_sharp"),icon:nQe,testId:"sharp-arrow"},{value:ho.round,text:uA("labels.arrowtype_round"),icon:sQe,testId:"round-arrow"},{value:ho.elbow,text:uA("labels.arrowtype_elbowed"),icon:oQe,testId:"elbow-arrow"}],value:js(A,e,(r)=>Kr(r)?r.elbowed?ho.elbow:r.roundness?ho.round:ho.sharp:null,(r)=>Kr(r),(r)=>r?null:e.currentItemArrowType),onChange:(r)=>t(r)})]})}),AD=({viewportX:A,viewportY:e,nextZoom:t},r)=>{let i=A-r.offsetLeft,u=e-r.offsetTop,a=r.zoom.value,n=r.scrollX+(i-i/a),o=r.scrollY+(u-u/a),s=-(i-i/t),l=-(u-u/t);return{scrollX:n+s,scrollY:o+l,zoom:{value:t}}},JL=()=>{let A=document.querySelector(".excalidraw-tooltip");if(A)return A;let e=document.createElement("div");return document.body.appendChild(e),e.classList.add("excalidraw-tooltip"),e},qze=(A,e,t="bottom")=>{let r=A.getBoundingClientRect(),{innerWidth:i,innerHeight:u}=window,a=5,n=e.left+e.width/2-r.width/2;n<0?n=a:n+r.width>=i&&(n=i-r.width-a);let o;t==="bottom"?(o=e.top+e.height+a,o+r.height>=u&&(o=e.top-r.height-a)):(o=e.top-r.height-a,o<0&&(o=e.top+e.height+a)),Object.assign(A.style,{top:`${o}px`,left:`${n}px`})},QBr=(A,e,t,r)=>{e.classList.add("excalidraw-tooltip--visible"),e.style.minWidth=r?"50ch":"10ch",e.style.maxWidth=r?"50ch":"15ch",e.textContent=t;let i=A.getBoundingClientRect();qze(e,i)},tD=({children:A,label:e,long:t=!1,style:r,disabled:i})=>(le(()=>()=>JL().classList.remove("excalidraw-tooltip--visible"),[]),i?null:N("div",{className:"excalidraw-tooltip-wrapper",onPointerEnter:(u)=>QBr(u.currentTarget,JL(),e,t),onPointerLeave:()=>JL().classList.remove("excalidraw-tooltip--visible"),style:r,children:A})),zxi=at({name:"changeViewBackgroundColor",label:"labels.canvasBackground",paletteName:"Change canvas background color",trackEvent:!1,predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.changeViewBackgroundColor&&!e.viewModeEnabled,perform:(A,e,t)=>({appState:{...e,...t},captureUpdate:t.viewBackgroundColor?be.IMMEDIATELY:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t,appProps:r})=>N(W3A,{palette:null,topPicks:pIA,label:uA("labels.canvasBackground"),type:"canvasBackground",color:e.viewBackgroundColor,onChange:(i)=>t({viewBackgroundColor:i}),"data-testid":"canvas-background-picker",elements:A,appState:e,updateData:t})}),OL=at({name:"clearCanvas",label:"labels.clearCanvas",paletteName:"Clear canvas",icon:ap,trackEvent:{category:"canvas"},predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.clearCanvas&&!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector",perform:(A,e,t,r)=>(r.imageCache.clear(),{elements:A.map((i)=>Tr(i,{isDeleted:!0})),appState:{...EB(),files:{},theme:e.theme,penMode:e.penMode,penDetected:e.penDetected,exportBackground:e.exportBackground,exportEmbedScene:e.exportEmbedScene,gridSize:e.gridSize,gridStep:e.gridStep,gridModeEnabled:e.gridModeEnabled,stats:e.stats,pasteDialog:e.pasteDialog,activeTool:e.activeTool.type==="image"?{...e.activeTool,type:"selection"}:e.activeTool},captureUpdate:be.IMMEDIATELY})}),hqe=at({name:"zoomIn",label:"buttons.zoomIn",viewMode:!0,icon:ZIA,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>({appState:{...e,...AD({viewportX:e.width/2+e.offsetLeft,viewportY:e.height/2+e.offsetTop,nextZoom:Fd(e.zoom.value+_8)},e),userToFollow:null},captureUpdate:be.EVENTUALLY}),PanelComponent:({updateData:A,appState:e})=>N(ci,{type:"button",className:"zoom-in-button zoom-button",icon:ZIA,title:`${uA("buttons.zoomIn")} — ${Fe("CtrlOrCmd++")}`,"aria-label":uA("buttons.zoomIn"),disabled:e.zoom.value>=W_,onClick:()=>{A(null)}}),keyTest:(A)=>(A.code===hi.EQUAL||A.code===hi.NUM_ADD)&&(A[PA.CTRL_OR_CMD]||A.shiftKey)}),Qqe=at({name:"zoomOut",label:"buttons.zoomOut",icon:VIA,viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>({appState:{...e,...AD({viewportX:e.width/2+e.offsetLeft,viewportY:e.height/2+e.offsetTop,nextZoom:Fd(e.zoom.value-_8)},e),userToFollow:null},captureUpdate:be.EVENTUALLY}),PanelComponent:({updateData:A,appState:e})=>N(ci,{type:"button",className:"zoom-out-button zoom-button",icon:VIA,title:`${uA("buttons.zoomOut")} — ${Fe("CtrlOrCmd+-")}`,"aria-label":uA("buttons.zoomOut"),disabled:e.zoom.value<=__,onClick:()=>{A(null)}}),keyTest:(A)=>(A.code===hi.MINUS||A.code===hi.NUM_SUBTRACT)&&(A[PA.CTRL_OR_CMD]||A.shiftKey)}),pqe=at({name:"resetZoom",label:"buttons.resetZoom",icon:MIe,viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>({appState:{...e,...AD({viewportX:e.width/2+e.offsetLeft,viewportY:e.height/2+e.offsetTop,nextZoom:Fd(1)},e),userToFollow:null},captureUpdate:be.EVENTUALLY}),PanelComponent:({updateData:A,appState:e})=>N(tD,{label:uA("buttons.resetZoom"),style:{height:"100%"},children:cA(ci,{type:"button",className:"reset-zoom-button zoom-button",title:uA("buttons.resetZoom"),"aria-label":uA("buttons.resetZoom"),onClick:()=>{A(null)},children:[(e.zoom.value*100).toFixed(0),"%"]})}),keyTest:(A)=>(A.code===hi.ZERO||A.code===hi.NUM_ZERO)&&(A[PA.CTRL_OR_CMD]||A.shiftKey)}),pBr=(A,e,t=1)=>{let[r,i,u,a]=A,n=u-r,o=e.width/n,s=a-i,l=e.height/s,g=Math.min(o,l)*Vr(t,0.1,1);return Math.min(g,1)},fBr=({bounds:A,appState:e,canvasOffsets:t,fitToViewport:r=!1,viewportZoomFactor:i=1,minZoom:u=-1/0,maxZoom:a=1/0})=>{i=Vr(i,__,W_);let[n,o,s,l]=A,g=(n+s)/2,C=(o+l)/2,B=t?.left??0,E=t?.top??0,d=t?.right??0,I=t?.bottom??0,h=e.width-B-d,Q=e.height-E-I,p;if(r){let D=s-n,w=l-o;p=Math.min(h/D,Q/w)*i}else p=pBr(A,{width:h,height:Q},i);let m=Fd(Vr(aIe(p,_8,"floor"),u,a)),f=PhA({scenePoint:{x:g,y:C},viewportDimensions:{width:e.width,height:e.height},offsets:t,zoom:{value:m}});return{appState:{...e,scrollX:f.scrollX,scrollY:f.scrollY,zoom:{value:m}},captureUpdate:be.EVENTUALLY}},bZ=({canvasOffsets:A,targetElements:e,appState:t,fitToViewport:r,viewportZoomFactor:i,minZoom:u,maxZoom:a})=>{let n=Pi(fu(e));return fBr({canvasOffsets:A,bounds:n,appState:t,fitToViewport:r,viewportZoomFactor:i,minZoom:u,maxZoom:a})},Zxi=at({name:"zoomToFitSelectionInViewport",label:"labels.zoomToFitViewport",icon:cW,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return bZ({targetElements:i.length?i:A,appState:{...e,userToFollow:null},fitToViewport:!1,canvasOffsets:r.getEditorUIOffsets()})},keyTest:(A)=>A.code===hi.TWO&&A.shiftKey&&!A.altKey&&!A[PA.CTRL_OR_CMD]}),Vxi=at({name:"zoomToFitSelection",label:"helpDialog.zoomToSelection",icon:cW,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return bZ({targetElements:i.length?i:A,appState:{...e,userToFollow:null},fitToViewport:!0,canvasOffsets:r.getEditorUIOffsets()})},keyTest:(A)=>A.code===hi.THREE&&A.shiftKey&&!A.altKey&&!A[PA.CTRL_OR_CMD]}),jxi=at({name:"zoomToFit",label:"helpDialog.zoomToFit",icon:cW,viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>bZ({targetElements:A,appState:{...e,userToFollow:null},fitToViewport:!1,canvasOffsets:r.getEditorUIOffsets()}),keyTest:(A)=>A.code===hi.ONE&&A.shiftKey&&!A.altKey&&!A[PA.CTRL_OR_CMD]}),dZ=at({name:"toggleTheme",label:(A,e)=>e.theme===$r.DARK?"buttons.lightMode":"buttons.darkMode",keywords:["toggle","dark","light","mode","theme"],icon:(A)=>A.theme===$r.LIGHT?iW:uW,viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e,t)=>({appState:{...e,theme:t||(e.theme===$r.LIGHT?$r.DARK:$r.LIGHT)},captureUpdate:be.EVENTUALLY}),keyTest:(A)=>A.altKey&&A.shiftKey&&A.code===hi.D,predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.toggleTheme}),Xxi=at({name:"toggleEraserTool",label:"toolBar.eraser",trackEvent:{category:"toolbar"},perform:(A,e)=>{let t;return dB(e)?t=un(e,{...e.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):t=un(e,{type:"eraser",lastActiveToolBeforeEraser:e.activeTool}),{appState:{...e,selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null,activeTool:t},captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A.key===PA.E}),mBr=at({name:"toggleHandTool",label:"toolBar.hand",paletteName:"Toggle hand tool",trackEvent:{category:"toolbar"},icon:hhA,viewMode:!1,perform:(A,e,t,r)=>{let i;return C2(e)?i=un(e,{...e.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):(i=un(e,{type:"hand",lastActiveToolBeforeEraser:e.activeTool}),Cu(r.interactiveCanvas,iu.GRAB)),{appState:{...e,selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null,activeTool:i},captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>!A.altKey&&!A[PA.CTRL_OR_CMD]&&A.key===PA.H}),MB=at({name:"finalize",label:"",trackEvent:!1,perform:(A,e,t,r)=>{let{interactiveCanvas:i,focusContainer:u,scene:a}=r,n=a.getNonDeletedElementsMap();if(e.editingLinearElement){let{elementId:C,startBindingElement:B,endBindingElement:E}=e.editingLinearElement,d=ht.getElement(C,n);if(d)return oB(d)&&oS(d,B,E,n,a),{elements:d.points.length<2||y2(d)?A.filter((I)=>I.id!==d.id):void 0,appState:{...e,cursorButton:"up",editingLinearElement:null},captureUpdate:be.IMMEDIATELY}}let o=A,s=e.pendingImageElementId&&a.getElement(e.pendingImageElementId);s&&Se(s,{isDeleted:!0},!1),window.document.activeElement instanceof HTMLElement&&u();let l=e.multiElement?e.multiElement:e.newElement?.type==="freedraw"?e.newElement:null;if(l){if(l.type!=="freedraw"&&e.lastPointerDownWith!=="touch"){let{points:B,lastCommittedPoint:E}=l;(!E||B[B.length-1]!==E)&&Se(l,{points:l.points.slice(0,-1)})}y2(l)&&(o=o.filter((B)=>B.id!==l.id));let C=fd(l.points,e.zoom.value);if((l.type==="line"||l.type==="freedraw")&&C){let B=l.points,E=B[0];Se(l,{points:B.map((d,I)=>I===B.length-1?X(E[0],E[1]):d)})}if(oB(l)&&!C&&l.points.length>1){let[B,E]=ht.getPointAtIndexGlobalCoordinates(l,-1,ar(A));wW(l,e,{x:B,y:E},n,A)}}(!e.activeTool.locked&&e.activeTool.type!=="freedraw"||!l)&&Oc(i);let g;return e.activeTool.type==="eraser"?g=un(e,{...e.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):g=un(e,{type:"selection"}),{elements:o,appState:{...e,cursorButton:"up",activeTool:(e.activeTool.locked||e.activeTool.type==="freedraw")&&l?e.activeTool:g,activeEmbeddable:null,newElement:null,selectionElement:null,multiElement:null,editingTextElement:null,startBoundElement:null,suggestedBindings:[],selectedElementIds:l&&!e.activeTool.locked&&e.activeTool.type!=="freedraw"?{...e.selectedElementIds,[l.id]:!0}:e.selectedElementIds,selectedLinearElement:l&&Nr(l)?new ht(l):e.selectedLinearElement,pendingImageElementId:null},captureUpdate:be.IMMEDIATELY}},keyTest:(A,e)=>A.key===PA.ESCAPE&&(e.editingLinearElement!==null||!e.newElement&&e.multiElement===null)||(A.key===PA.ESCAPE||A.key===PA.ENTER)&&e.multiElement!==null,PanelComponent:({appState:A,updateData:e,data:t})=>N(ci,{type:"button",icon:qIe,title:uA("buttons.done"),"aria-label":uA("buttons.done"),onClick:e,visible:A.multiElement!=null,size:t?.size||"medium",style:{pointerEvents:"all"}})}),DBr=(A)=>{let{id:e}=zd(),[t,r]=we(A.value),i=(a)=>{A.ignoreFocus||hIe(a.target);let n=a.target.value;n!==A.value&&A.onChange(n)},u=(a)=>{if(a.key===PA.ENTER){if(a.preventDefault(),a.nativeEvent.isComposing||a.keyCode===229)return;a.currentTarget.blur()}};return cA("div",{className:"ProjectName",children:[N("label",{className:"ProjectName-label",htmlFor:"filename",children:`${A.label}:`}),N("input",{type:"text",className:"TextInput",onBlur:i,onKeyDown:u,id:`${e}-filename`,value:t,onChange:(a)=>r(a.target.value)})]})},yBr=(A)=>{let e=A.title||(A.value===$r.DARK?uA("buttons.lightMode"):uA("buttons.darkMode"));return N(ci,{type:"icon",icon:A.value===$r.LIGHT?fqe.MOON:fqe.SUN,title:e,"aria-label":e,onClick:()=>A.onChange(A.value===$r.DARK?$r.LIGHT:$r.DARK),"data-testid":"toggle-dark-mode"})},fqe={SUN:N("svg",{width:"512",height:"512",className:"rtl-mirror",viewBox:"0 0 512 512",children:N("path",{fill:"currentColor",d:"M256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm246.4 80.5l-94.7-47.3 33.5-100.4c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.4-94.8c-6.4-12.8-24.6-12.8-31 0l-47.3 94.7L92.7 70.8c-13.6-4.5-26.5 8.4-21.9 21.9l33.5 100.4-94.7 47.4c-12.8 6.4-12.8 24.6 0 31l94.7 47.3-33.5 100.5c-4.5 13.6 8.4 26.5 21.9 21.9l100.4-33.5 47.3 94.7c6.4 12.8 24.6 12.8 31 0l47.3-94.7 100.4 33.5c13.6 4.5 26.5-8.4 21.9-21.9l-33.5-100.4 94.7-47.3c13-6.5 13-24.7.2-31.1zm-155.9 106c-49.9 49.9-131.1 49.9-181 0-49.9-49.9-49.9-131.1 0-181 49.9-49.9 131.1-49.9 181 0 49.9 49.9 49.9 131.1 0 181z"})}),MOON:N("svg",{width:"512",height:"512",className:"rtl-mirror",viewBox:"0 0 512 512",children:N("path",{fill:"currentColor",d:"M283.211 512c78.962 0 151.079-35.925 198.857-94.792 7.068-8.708-.639-21.43-11.562-19.35-124.203 23.654-238.262-71.576-238.262-196.954 0-72.222 38.662-138.635 101.498-174.394 9.686-5.512 7.25-20.197-3.756-22.23A258.156 258.156 0 0 0 283.211 0c-141.309 0-256 114.511-256 256 0 141.309 114.511 256 256 256z"})})},vZ=(A,{selectedElementIds:e},t)=>{A=fu(A);let r=t&&yn(A,{selectedElementIds:e}),i=null,u=r?Jr(A,{selectedElementIds:e},{includeBoundTextElement:!0}):A;return r&&(u.length===1&&nr(u[0])?(i=u[0],u=jW(A,i)):u.length>1&&(u=Jr(A,{selectedElementIds:e},{includeBoundTextElement:!0,includeElementsInFrames:!0}))),{exportingFrame:i,exportedElements:vd(u)}},kZ=async(A,e,t,r,{exportBackground:i,exportPadding:u=g2,viewBackgroundColor:a,name:n=t.name||kIA,fileHandle:o=null,exportingFrame:s=null})=>{if(e.length===0)throw Error(uA("alerts.cannotExportEmptyCanvas"));if(A==="svg"||A==="clipboard-svg"){let g=KW(e,{exportBackground:i,exportWithDarkMode:t.exportWithDarkMode,viewBackgroundColor:a,exportPadding:u,exportScale:t.exportScale,exportEmbedScene:t.exportEmbedScene&&A==="svg"},r,{exportingFrame:s});if(A==="svg")return ES(g.then((C)=>new Blob([C.outerHTML],{type:Xt.svg})),{description:"Export to SVG",name:n,extension:t.exportEmbedScene?"excalidraw.svg":"svg",mimeTypes:[l2.svg],fileHandle:o});if(A==="clipboard-svg"){let C=await g.then((B)=>B.outerHTML);try{await z9(C)}catch{throw Error(uA("errors.copyToSystemClipboardFailed"))}return}}let l=pQA(e,t,r,{exportBackground:i,viewBackgroundColor:a,exportPadding:u,exportingFrame:s});if(A==="png"){let g=$9(l);return t.exportEmbedScene&&(g=g.then((C)=>Promise.resolve().then(() => (HdA(),{})).then(({})=>c_({blob:C,metadata:UW(e,t,r,"local")})))),ES(g,{description:"Export to PNG",name:n,extension:t.exportEmbedScene?"excalidraw.png":"png",mimeTypes:[l2.png],fileHandle:o})}else if(A==="clipboard")try{let g=$9(l);await W4e(g)}catch(g){throw console.warn(g),g.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(uA("canvasError.canvasTooBig")):x9&&g.name==="TypeError"?Error(`${uA("alerts.couldNotCopyToClipboard")}
|
||
|
||
${uA("hints.firefox_clipboard_write")}`):Error(uA("alerts.couldNotCopyToClipboard"))}else throw Error("Unsupported export type")},wBr=async(A,e,t,r)=>{let{exportBackground:i,viewBackgroundColor:u,fileHandle:a}=e,n=zQA(a);if(!a||!C1e(n))throw Error("fileHandle should exist and should be of type svg or png when resaving");e={...e,exportEmbedScene:!0};let{exportedElements:o,exportingFrame:s}=vZ(A,e,!1);return await kZ(n,o,e,t,{exportBackground:i,viewBackgroundColor:u,name:r,fileHandle:a,exportingFrame:s}),{fileHandle:a}},V3A=({children:A,checked:e,onChange:t,className:r})=>cA("div",{className:Re("Checkbox",r,{"is-checked":e}),onClick:(i)=>{t(!e,i),i.currentTarget.querySelector(".Checkbox-box").focus()},children:[N("button",{type:"button",className:"Checkbox-box",role:"checkbox","aria-checked":e,children:JIe}),N("div",{className:"Checkbox-label",children:A})]}),bBr=at({name:"changeProjectName",label:"labels.fileTitle",trackEvent:!1,perform:(A,e,t)=>({appState:{...e,name:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e,appProps:t,data:r,app:i})=>N(DBr,{label:uA("labels.fileTitle"),value:i.getName(),onChange:(u)=>e(u),ignoreFocus:r?.ignoreFocus??!1})}),vBr=at({name:"changeExportScale",label:"imageExportDialog.scale",trackEvent:{category:"export",action:"scale"},perform:(A,e,t)=>({appState:{...e,exportScale:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=fu(A),i=yn(r,e)?Jr(r,e):r;return N(et,{children:z_.map((u)=>{let[a,n]=G4e(i,g2,u),o=`${uA("imageExportDialog.label.scale")} ${u}x (${a}x${n})`;return N(ci,{size:"small",type:"radio",icon:`${u}x`,name:"export-canvas-scale",title:o,"aria-label":o,id:"export-canvas-scale",checked:u===e.exportScale,onChange:()=>t(u)},u)})})}}),kBr=at({name:"changeExportBackground",label:"imageExportDialog.label.withBackground",trackEvent:{category:"export",action:"toggleBackground"},perform:(A,e,t)=>({appState:{...e,exportBackground:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e})=>N(V3A,{checked:A.exportBackground,onChange:(t)=>e(t),children:uA("imageExportDialog.label.withBackground")})}),zze=at({name:"changeExportEmbedScene",label:"imageExportDialog.tooltip.embedScene",trackEvent:{category:"export",action:"embedScene"},perform:(A,e,t)=>({appState:{...e,exportEmbedScene:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e})=>cA(V3A,{checked:A.exportEmbedScene,onChange:(t)=>e(t),children:[uA("imageExportDialog.label.embedScene"),N(tD,{label:uA("imageExportDialog.tooltip.embedScene"),long:!0,children:N("div",{className:"excalidraw-tooltip-icon",children:zIe})})]})}),mqe=at({name:"saveToActiveFile",label:"buttons.save",icon:rS,trackEvent:{category:"export"},predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.saveToActiveFile&&!!e.fileHandle&&!e.viewModeEnabled,perform:async(A,e,t,r)=>{let i=!!e.fileHandle;try{let{fileHandle:u}=uq(e.fileHandle)?await wBr(A,e,r.files,r.getName()):await sQA(A,e,r.files,r.getName());return{captureUpdate:be.EVENTUALLY,appState:{...e,fileHandle:u,toast:i?{message:u?.name?uA("toast.fileSavedToFilename").replace("{filename}",`"${u.name}"`):uA("toast.fileSaved")}:null}}}catch(u){return u?.name!=="AbortError"?console.error(u):console.warn(u),{captureUpdate:be.EVENTUALLY}}},keyTest:(A)=>A.key===PA.S&&A[PA.CTRL_OR_CMD]&&!A.shiftKey}),Zze=at({name:"saveFileToDisk",label:"exportDialog.disk_title",icon:rS,viewMode:!0,trackEvent:{category:"export"},perform:async(A,e,t,r)=>{try{let{fileHandle:i}=await sQA(A,{...e,fileHandle:null},r.files,r.getName());return{captureUpdate:be.EVENTUALLY,appState:{...e,openDialog:null,fileHandle:i,toast:{message:uA("toast.fileSaved")}}}}catch(i){return i?.name!=="AbortError"?console.error(i):console.warn(i),{captureUpdate:be.EVENTUALLY}}},keyTest:(A)=>A.key===PA.S&&A.shiftKey&&A[PA.CTRL_OR_CMD],PanelComponent:({updateData:A})=>N(ci,{type:"button",icon:PIe,title:uA("buttons.saveAs"),"aria-label":uA("buttons.saveAs"),showAriaLabel:Do().editor.isMobile,hidden:!Rh,onClick:()=>A(null),"data-testid":"save-as-button"})}),L3A=at({name:"loadScene",label:"buttons.load",trackEvent:{category:"export"},predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.loadScene&&!e.viewModeEnabled,perform:async(A,e,t,r)=>{try{let{elements:i,appState:u,files:a}=await b4e(e,A);return{elements:i,appState:u,files:a,captureUpdate:be.IMMEDIATELY}}catch(i){return i?.name==="AbortError"?(console.warn(i),!1):{elements:A,appState:{...e,errorMessage:i.message},files:r.files,captureUpdate:be.EVENTUALLY}}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.O}),FBr=at({name:"exportWithDarkMode",label:"imageExportDialog.label.darkMode",trackEvent:{category:"export",action:"toggleTheme"},perform:(A,e,t)=>({appState:{...e,exportWithDarkMode:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e})=>N("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:"-45px",marginBottom:"10px"},children:N(yBr,{value:A.exportWithDarkMode?$r.DARK:$r.LIGHT,onChange:(t)=>{e(t===$r.DARK)},title:uA("imageExportDialog.label.darkMode")})})}),Vze="{}",xBr=at({name:"copyStyles",label:"labels.copyStyles",icon:whA,trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=[],u=A.find((a)=>e.selectedElementIds[a.id]);if(i.push(u),u&&Yl(u)){let a=Gr(u,r.scene.getNonDeletedElementsMap());i.push(a)}return u&&(Vze=JSON.stringify(i)),{appState:{...e,toast:{message:uA("toast.copyStyles")}},captureUpdate:be.EVENTUALLY}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.C}),SBr=at({name:"pasteStyles",label:"labels.pasteStyles",icon:whA,trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=JSON.parse(Vze),u=i[0],a=i[1];if(!OIA(u))return{elements:A,captureUpdate:be.EVENTUALLY};let n=Jr(A,e,{includeBoundTextElement:!0}),o=n.map((s)=>s.id);return{elements:A.map((s)=>{if(o.includes(s.id)){let l=u;if(Et(s)&&s.containerId&&(l=a),!l)return s;let g=Tr(s,{backgroundColor:l?.backgroundColor,strokeWidth:l?.strokeWidth,strokeColor:l?.strokeColor,strokeStyle:l?.strokeStyle,fillStyle:l?.fillStyle,opacity:l?.opacity,roughness:l?.roughness,roundness:l.roundness?wIe(l.roundness.type,s)?l.roundness:bIe(s):null});if(Et(g)){let C=l.fontSize||wd,B=l.fontFamily||Oh;g=Tr(g,{fontSize:C,fontFamily:B,textAlign:l.textAlign||S9,lineHeight:l.lineHeight||op(B)});let E=null;g.containerId&&(E=n.find((d)=>Et(g)&&d.id===g.containerId)||null),j0(g,E,r.scene.getNonDeletedElementsMap())}return g.type==="arrow"&&Kr(l)&&(g=Tr(g,{startArrowhead:l.startArrowhead,endArrowhead:l.endArrowhead})),nr(s)&&(g=Tr(g,{roundness:null,backgroundColor:"transparent"})),g}return s}),captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.V}),n7i=at({name:"toggleCanvasMenu",label:"buttons.menu",trackEvent:{category:"menu"},perform:(A,e)=>({appState:{...e,openMenu:e.openMenu==="canvas"?null:"canvas"},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e})=>N(ci,{type:"button",icon:jIA,"aria-label":uA("buttons.menu"),onClick:e,selected:A.openMenu==="canvas"})}),o7i=at({name:"toggleEditMenu",label:"buttons.edit",trackEvent:{category:"menu"},perform:(A,e)=>({appState:{...e,openMenu:e.openMenu==="shape"?null:"shape"},captureUpdate:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t})=>N(ci,{visible:rq(e,fu(A)),type:"button",icon:_Ie,"aria-label":uA("buttons.edit"),onClick:t,selected:e.openMenu==="shape"})}),j3A=at({name:"toggleShortcuts",label:"welcomeScreen.defaults.helpHint",icon:YIe,viewMode:!0,trackEvent:{category:"menu",action:"toggleHelpDialog"},perform:(A,e,t,{focusContainer:r})=>(e.openDialog?.name==="help"&&r(),{appState:{...e,openDialog:e.openDialog?.name==="help"?null:{name:"help"}},captureUpdate:be.EVENTUALLY}),keyTest:(A)=>A.key===PA.QUESTION_MARK}),LBr=(A)=>{if(A.length>=2){let e=A[0].groupIds;for(let t of e)if(A.reduce((r,i)=>r&&O9(i,t),!0))return!0}return!1},Dqe=(A,e,t)=>{let r=t.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0});return r.length>=2&&!LBr(r)&&!UQA(r)},RBr=at({name:"group",label:"labels.group",icon:(A)=>N(BhA,{theme:A.theme}),trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=ZW(r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0}));if(i.length<2)return{appState:e,elements:A,captureUpdate:be.EVENTUALLY};let u=lp(e);if(u.length===1){let d=u[0],I=new Set(Yu(A,d).map((Q)=>Q.id)),h=new Set(i.map((Q)=>Q.id));if(new Set([...Array.from(I),...Array.from(h)]).size===I.size)return{appState:e,elements:A,captureUpdate:be.EVENTUALLY}}let a=[...A];new Set(i.map((d)=>d.frameId)).size>1&&j4e(i).forEach((d,I)=>{fS(d,r.scene.getNonDeletedElementsMap())});let n=Lg(),o=ar(i);a=a.map((d)=>o.get(d.id)?Tr(d,{groupIds:jQe(d.groupIds,n,e.editingGroupId)}):d);let s=Yu(a,n),l=s[s.length-1],g=a.lastIndexOf(l),C=a.slice(g+1),B=a.slice(0,g).filter((d)=>!O9(d,n)),E=CB([...B,...s,...C],ar(s));return{appState:{...e,...WhA(n,{...e,selectedGroupIds:{}},fu(a))},elements:E,captureUpdate:be.IMMEDIATELY}},predicate:(A,e,t,r)=>Dqe(A,e,r),keyTest:(A)=>!A.shiftKey&&A[PA.CTRL_OR_CMD]&&A.key===PA.G,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Dqe(A,e,r),type:"button",icon:N(BhA,{theme:e.theme}),onClick:()=>t(null),title:`${uA("labels.group")} — ${Fe("CtrlOrCmd+G")}`,"aria-label":uA("labels.group"),visible:yn(fu(A),e)})}),NBr=at({name:"ungroup",label:"labels.ungroup",icon:(A)=>N(EhA,{theme:A.theme}),trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=lp(e),u=ar(A);if(i.length===0)return{appState:e,elements:A,captureUpdate:be.EVENTUALLY};let a=[...A],n=[];a=a.map((g)=>{Tu(g)&&n.push(g.id);let C=XQe(g.groupIds,e.selectedGroupIds);return C.length===g.groupIds.length?g:Tr(g,{groupIds:C})});let o=V0(e,fu(a),e,null),s=r.scene.getSelectedElements(e),l=new Set(s.filter((g)=>g.frameId).map((g)=>g.frameId));return zW(A).filter((g)=>l.has(g.id)).forEach((g)=>{g&&(a=NQA(a,pS(a,g,e,u),g,r))}),o.selectedElementIds=Object.entries(o.selectedElementIds).reduce((g,[C,B])=>(B&&!n.includes(C)&&(g[C]=!0),g),{}),{appState:{...e,...o},elements:a,captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A.shiftKey&&A[PA.CTRL_OR_CMD]&&A.key===PA.G.toUpperCase(),predicate:(A,e)=>lp(e).length>0,PanelComponent:({elements:A,appState:e,updateData:t})=>N(ci,{type:"button",hidden:lp(e).length===0,icon:N(EhA,{theme:e.theme}),onClick:()=>t(null),title:`${uA("labels.ungroup")} — ${Fe("CtrlOrCmd+Shift+G")}`,"aria-label":uA("labels.ungroup"),visible:yn(fu(A),e)})}),jze=(A,e,t,r,i,u,a)=>{A.beginPath(),A.moveTo(e+u,t),A.lineTo(e+r-u,t),A.quadraticCurveTo(e+r,t,e+r,t+u),A.lineTo(e+r,t+i-u),A.quadraticCurveTo(e+r,t+i,e+r-u,t+i),A.lineTo(e+u,t+i),A.quadraticCurveTo(e,t+i,e,t+i-u),A.lineTo(e,t+u),A.quadraticCurveTo(e,t,e+u,t),A.closePath(),A.fill(),a&&(A.strokeStyle=a),A.stroke()};function GBr(A){let e=0;if(A.length===0)return e;for(let t=0;t<A.length;t++){let r=A.charCodeAt(t);e=(e<<5)-e+r}return e}var FZ=(A,e)=>`hsl(${Math.abs(GBr(e?.id||A))%37*10}, 100%, 83%)`,UBr=(A)=>{let e=A?.trim()?.codePointAt(0);return(e?String.fromCodePoint(e):"?").toUpperCase()},MBr=({context:A,renderConfig:e,appState:t,normalizedWidth:r,normalizedHeight:i})=>{for(let[u,a]of e.remotePointerViewportCoords){let{x:n,y:o}=a,s=t.collaborators.get(u);n-=t.offsetLeft,o-=t.offsetTop;let l=11,g=14,C=n<0||n>r-l||o<0||o>i-g;n=Math.max(n,0),n=Math.min(n,r-l),o=Math.max(o,0),o=Math.min(o,i-g);let B=FZ(u,s);A.save(),A.strokeStyle=B,A.fillStyle=B;let E=e.remotePointerUserStates.get(u),d=C||E==="idle"||E==="away";d&&(A.globalAlpha=0.3),e.remotePointerButton.get(u)==="down"&&(A.beginPath(),A.arc(n,o,15,0,2*Math.PI,!1),A.lineWidth=3,A.strokeStyle="#ffffff88",A.stroke(),A.closePath(),A.beginPath(),A.arc(n,o,15,0,2*Math.PI,!1),A.lineWidth=1,A.strokeStyle=B,A.stroke(),A.closePath());let I=t.theme===$r.DARK?"#2f6330":Jde,h=s?.isSpeaking;h&&(A.fillStyle=I,A.strokeStyle=I,A.lineWidth=10,A.lineJoin="round",A.beginPath(),A.moveTo(n,o),A.lineTo(n+0,o+14),A.lineTo(n+4,o+9),A.lineTo(n+11,o+8),A.closePath(),A.stroke(),A.fill()),A.fillStyle=O8,A.strokeStyle=O8,A.lineWidth=6,A.lineJoin="round",A.beginPath(),A.moveTo(n,o),A.lineTo(n+0,o+14),A.lineTo(n+4,o+9),A.lineTo(n+11,o+8),A.closePath(),A.stroke(),A.fill(),A.fillStyle=B,A.strokeStyle=B,A.lineWidth=2,A.lineJoin="round",A.beginPath(),d?(A.moveTo(n-1,o-1),A.lineTo(n-1,o+15),A.lineTo(n+5,o+10),A.lineTo(n+12,o+9),A.closePath(),A.fill()):(A.moveTo(n,o),A.lineTo(n+0,o+14),A.lineTo(n+4,o+9),A.lineTo(n+11,o+8),A.closePath(),A.fill(),A.stroke());let Q=e.remotePointerUsernames.get(u)||"";if(!C&&Q){A.font="600 12px sans-serif";let p=(h?n+0:n)+l/2,m=(h?o+0:o)+g+2,f=5,D=3,w=A.measureText(Q),b=w.actualBoundingBoxDescent+w.actualBoundingBoxAscent,F=Math.max(b,12),v=p-1,S=m-1,x=w.width+2+f*2+2,k=F+2+D*2+2;if(A.roundRect?(A.beginPath(),A.roundRect(v,S,x,k,8),A.fillStyle=B,A.fill(),A.strokeStyle=O8,A.stroke(),h&&(A.beginPath(),A.roundRect(v-2,S-2,x+4,k+4,8),A.strokeStyle=I,A.stroke())):jze(A,v,S,x,k,8,O8),A.fillStyle=Kde,A.fillText(Q,p+f+1,m+D+w.actualBoundingBoxAscent+Math.floor((F-b)/2)+2),h){A.fillStyle=I;let T=8,R=8,L=5;A.fillRect(v+x+R,S+(k/2-T/2),2,T),A.fillRect(v+x+R+L,S+(k/2-T*2/2),2,T*2),A.fillRect(v+x+R+L*2,S+(k/2-T/2),2,T)}}A.restore(),A.closePath()}},yqe=({color:A,onClick:e,name:t,src:r,className:i})=>{let u=UBr(t),[a,n]=we(!1),o=!a&&r,s=o?void 0:{background:A};return N("div",{className:Re("Avatar",i),style:s,onClick:e,children:o?N("img",{className:"Avatar-img",src:r,alt:u,referrerPolicy:"no-referrer",onError:()=>n(!0)}):u})},E7i=at({name:"goToCollaborator",label:"Go to a collaborator",viewMode:!0,trackEvent:{category:"collab"},perform:(A,e,t)=>!t.socketId||e.userToFollow?.socketId===t.socketId||t.isCurrentUser?{appState:{...e,userToFollow:null},captureUpdate:be.EVENTUALLY}:{appState:{...e,userToFollow:{socketId:t.socketId,username:t.username||""},openMenu:e.openMenu==="canvas"?null:e.openMenu},captureUpdate:be.EVENTUALLY},PanelComponent:({updateData:A,data:e,appState:t})=>{let{socketId:r,collaborator:i,withName:u,isBeingFollowed:a}=e,n=FZ(r,i),o=Re({"is-followed":a,"is-current-user":i.isCurrentUser===!0,"is-speaking":i.isSpeaking,"is-in-call":i.isInCall,"is-muted":i.isMuted}),s=i.isInCall?i.isSpeaking?cA("div",{className:"UserList__collaborator-status-icon-speaking-indicator",title:uA("userList.hint.isSpeaking"),children:[N("div",{}),N("div",{}),N("div",{})]}):i.isMuted?N("div",{className:"UserList__collaborator-status-icon-microphone-muted",title:uA("userList.hint.micMuted"),children:zhe}):N("div",{title:uA("userList.hint.inCall"),children:qhe}):null;return u?cA("div",{className:`dropdown-menu-item dropdown-menu-item-base UserList__collaborator ${o}`,style:{"--avatar-size":"1.5rem"},onClick:()=>A(i),children:[N(yqe,{color:n,onClick:()=>{},name:i.username||"",src:i.avatarUrl,className:o}),N("div",{className:"UserList__collaborator-name",children:i.username}),cA("div",{className:"UserList__collaborator-status-icons","aria-hidden":!0,children:[a&&N("div",{className:"UserList__collaborator-status-icon-is-followed",title:uA("userList.hint.followStatus"),children:gW}),s]})]}):cA("div",{className:`UserList__collaborator UserList__collaborator--avatar-only ${o}`,children:[N(yqe,{color:n,onClick:()=>{A(i)},name:i.username||"",src:i.avatarUrl,className:o}),s&&N("div",{className:"UserList__collaborator-status-icon",children:s})]})}}),TBr=at({name:"addToLibrary",trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});for(let u of vIA)if(i.some((a)=>a.type===u))return{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:uA(`errors.libraryElementTypeError.${u}`)}};return r.library.getLatestLibrary().then((u)=>r.library.setLibrary([{id:Lg(),status:"unpublished",elements:i.map(gp),created:Date.now()},...u])).then(()=>({captureUpdate:be.EVENTUALLY,appState:{...e,toast:{message:uA("toast.addedToLibrary")}}})).catch((u)=>({captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:u.message}}))},label:"labels.addToLibrary"}),YBr=(A,e,t,r)=>{let i=gS(A,e),u=Jc(A);return i.flatMap((a)=>{let n=HBr(a,u,t);return a.map((o)=>{let s=Se(o,{x:o.x+n.x,y:o.y+n.y});return Os(o,r.getNonDeletedElementsMap(),{simultaneouslyUpdated:a}),s})})},HBr=(A,e,{axis:t,position:r})=>{let i=Jc(A),[u,a]=t==="x"?["minX","maxX"]:["minY","maxY"],n={x:0,y:0};return r==="start"?{...n,[t]:e[u]-i[u]}:r==="end"?{...n,[t]:e[a]-i[a]}:{...n,[t]:(e[u]+e[a])/2-(i[u]+i[a])/2}},Jg=(A,e)=>{let t=e.scene.getSelectedElements(A);return t.length>1&&!t.some((r)=>nr(r))},Ab=(A,e,t,r)=>{let i=t.scene.getSelectedElements(e),u=ar(A),a=YBr(i,u,r,t.scene),n=ar(a);return D2(A.map((o)=>n.get(o.id)||o),e,t)},I7i=at({name:"alignTop",label:"labels.alignTop",icon:nhA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Jg(e,r),perform:(A,e,t,r)=>({appState:e,elements:Ab(A,e,r,{position:"start",axis:"y"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key===PA.ARROW_UP,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Jg(e,r),type:"button",icon:nhA,onClick:()=>t(null),title:`${uA("labels.alignTop")} — ${Fe("CtrlOrCmd+Shift+Up")}`,"aria-label":uA("labels.alignTop"),visible:yn(fu(A),e)})}),h7i=at({name:"alignBottom",label:"labels.alignBottom",icon:ohA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Jg(e,r),perform:(A,e,t,r)=>({appState:e,elements:Ab(A,e,r,{position:"end",axis:"y"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key===PA.ARROW_DOWN,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Jg(e,r),type:"button",icon:ohA,onClick:()=>t(null),title:`${uA("labels.alignBottom")} — ${Fe("CtrlOrCmd+Shift+Down")}`,"aria-label":uA("labels.alignBottom"),visible:yn(fu(A),e)})}),Q7i=at({name:"alignLeft",label:"labels.alignLeft",icon:shA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Jg(e,r),perform:(A,e,t,r)=>({appState:e,elements:Ab(A,e,r,{position:"start",axis:"x"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key===PA.ARROW_LEFT,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Jg(e,r),type:"button",icon:shA,onClick:()=>t(null),title:`${uA("labels.alignLeft")} — ${Fe("CtrlOrCmd+Shift+Left")}`,"aria-label":uA("labels.alignLeft"),visible:yn(fu(A),e)})}),p7i=at({name:"alignRight",label:"labels.alignRight",icon:lhA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Jg(e,r),perform:(A,e,t,r)=>({appState:e,elements:Ab(A,e,r,{position:"end",axis:"x"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key===PA.ARROW_RIGHT,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Jg(e,r),type:"button",icon:lhA,onClick:()=>t(null),title:`${uA("labels.alignRight")} — ${Fe("CtrlOrCmd+Shift+Right")}`,"aria-label":uA("labels.alignRight"),visible:yn(fu(A),e)})}),f7i=at({name:"alignVerticallyCentered",label:"labels.centerVertically",icon:ghA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Jg(e,r),perform:(A,e,t,r)=>({appState:e,elements:Ab(A,e,r,{position:"center",axis:"y"}),captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Jg(e,r),type:"button",icon:ghA,onClick:()=>t(null),title:uA("labels.centerVertically"),"aria-label":uA("labels.centerVertically"),visible:yn(fu(A),e)})}),m7i=at({name:"alignHorizontallyCentered",label:"labels.centerHorizontally",icon:chA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Jg(e,r),perform:(A,e,t,r)=>({appState:e,elements:Ab(A,e,r,{position:"center",axis:"x"}),captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Jg(e,r),type:"button",icon:chA,onClick:()=>t(null),title:uA("labels.centerHorizontally"),"aria-label":uA("labels.centerHorizontally"),visible:yn(fu(A),e)})}),KBr=(A,e,t)=>{let[r,i,u,a]=t.axis==="x"?["minX","midX","maxX","width"]:["minY","midY","maxY","height"],n=Jc(A),o=gS(A,e).map((C)=>[C,Jc(C)]).sort((C,B)=>C[1][i]-B[1][i]),s=0;for(let C of o)s+=C[1][a];let l=(n[a]-s)/(o.length-1);if(l<0){let C=o.findIndex((I)=>I[1][r]===n[r]),B=o.findIndex((I)=>I[1][u]===n[u]),E=(o[B][1][i]-o[C][1][i])/(o.length-1),d=o[C][1][i];return o.flatMap(([I,h],Q)=>{let p={x:0,y:0};return Q!==C&&Q!==B&&(d+=E,p[t.axis]=d-h[i]),I.map((m)=>Tr(m,{x:m.x+p.x,y:m.y+p.y}))})}let g=n[r];return o.flatMap(([C,B])=>{let E={x:0,y:0};return E[t.axis]=g-B[r],g+=l,g+=B[a],C.map((d)=>Tr(d,{x:d.x+E.x,y:d.y+E.y}))})},Xze=(A,e)=>{let t=e.scene.getSelectedElements(A);return t.length>1&&!t.some((r)=>nr(r))},$ze=(A,e,t,r)=>{let i=t.scene.getSelectedElements(e),u=KBr(i,t.scene.getNonDeletedElementsMap(),r),a=ar(u);return D2(A.map((n)=>a.get(n.id)||n),e,t)},y7i=at({name:"distributeHorizontally",label:"labels.distributeHorizontally",trackEvent:{category:"element"},perform:(A,e,t,r)=>({appState:e,elements:$ze(A,e,r,{space:"between",axis:"x"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.H,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Xze(e,r),type:"button",icon:XIe,onClick:()=>t(null),title:`${uA("labels.distributeHorizontally")} — ${Fe("Alt+H")}`,"aria-label":uA("labels.distributeHorizontally"),visible:yn(fu(A),e)})}),w7i=at({name:"distributeVertically",label:"labels.distributeVertically",trackEvent:{category:"element"},perform:(A,e,t,r)=>({appState:e,elements:$ze(A,e,r,{space:"between",axis:"y"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.V,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Xze(e,r),type:"button",icon:$Ie,onClick:()=>t(null),title:`${uA("labels.distributeVertically")} — ${Fe("Alt+V")}`,"aria-label":uA("labels.distributeVertically"),visible:yn(fu(A),e)})}),JBr=at({name:"flipHorizontal",label:"labels.flipHorizontal",icon:Xhe,trackEvent:{category:"element"},perform:(A,e,t,r)=>({elements:D2(AZe(A,r.scene.getNonDeletedElementsMap(),e,"horizontal",r),e,r),appState:e,captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A.shiftKey&&A.code===hi.H}),OBr=at({name:"flipVertical",label:"labels.flipVertical",icon:jhe,trackEvent:{category:"element"},perform:(A,e,t,r)=>({elements:D2(AZe(A,r.scene.getNonDeletedElementsMap(),e,"vertical",r),e,r),appState:e,captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A.shiftKey&&A.code===hi.V&&!A[PA.CTRL_OR_CMD]}),AZe=(A,e,t,r,i)=>{let u=Jr(fu(A),t,{includeBoundTextElement:!0,includeElementsInFrames:!0}),a=PBr(u,e,t,r,i),n=ar(a);return A.map((o)=>n.get(o.id)||o)},PBr=(A,e,t,r,i)=>{if(A.every((B)=>Kr(B)&&(B.startBinding||B.endBinding)))return A.map((B)=>{let E=B;return Tr(E,{startArrowhead:E.endArrowhead,endArrowhead:E.startArrowhead})});let{midX:u,midY:a}=Jc(A);WQA(A,e,"nw",i.scene,new Map(Array.from(e.values()).map((B)=>[B.id,gp(B)])),{flipByX:r==="horizontal",flipByY:r==="vertical",shouldResizeFromCenter:!0,shouldMaintainAspectRatio:!0}),sS(A.filter(Nr),e,i.scene.getNonDeletedElements(),i.scene,V1(t),[],t.zoom);let{elbowArrows:n,otherElements:o}=A.reduce((B,E)=>ft(E)?{...B,elbowArrows:B.elbowArrows.concat(E)}:{...B,otherElements:B.otherElements.concat(E)},{elbowArrows:[],otherElements:[]}),{midX:s,midY:l}=Jc(A),[g,C]=[u-s,a-l];return o.forEach((B)=>Se(B,{x:B.x+g,y:B.y+C})),n.forEach((B)=>Se(B,{x:B.x+g,y:B.y+C})),A},cZ=at({name:"copy",label:"labels.copy",icon:rW,trackEvent:{category:"element"},perform:async(A,e,t,r)=>{let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});try{await O4e(i,r.files,t)}catch(u){return{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:u.message}}}return{captureUpdate:be.EVENTUALLY}},keyTest:void 0}),wqe=at({name:"paste",label:"labels.paste",trackEvent:{category:"element"},perform:async(A,e,t,r)=>{let i;try{i=await _4e()}catch(u){return u.name==="AbortError"||u.name==="NotAllowedError"?!1:(console.error(`actionPaste ${u.name}: ${u.message}`),x9?{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:uA("hints.firefox_clipboard_write")}}:{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:uA("errors.asyncPasteFailedOnRead")}})}try{r.pasteFromClipboard(J4e({types:i}))}catch(u){return console.error(u),{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:uA("errors.asyncPasteFailedOnParse")}}}return{captureUpdate:be.EVENTUALLY}},keyTest:void 0}),bqe=at({name:"cut",label:"labels.cut",icon:Uhe,trackEvent:{category:"element"},perform:(A,e,t,r)=>(cZ.perform(A,e,t,r),bze.perform(A,e,null,r)),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.X}),vqe=at({name:"copyAsSvg",label:"labels.copyAsSvg",icon:$he,trackEvent:{category:"element"},perform:async(A,e,t,r)=>{if(!r.canvas)return{captureUpdate:be.EVENTUALLY};let{exportedElements:i,exportingFrame:u}=vZ(A,e,!0);try{await kZ("clipboard-svg",i,e,r.files,{...e,exportingFrame:u,name:r.getName()});let a=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});return{appState:{toast:{message:uA("toast.copyToClipboardAsSvg",{exportSelection:a.length?uA("toast.selection"):uA("toast.canvas"),exportColorScheme:e.exportWithDarkMode?uA("buttons.darkMode"):uA("buttons.lightMode")})}},captureUpdate:be.EVENTUALLY}}catch(a){return console.error(a),{appState:{errorMessage:a.message},captureUpdate:be.EVENTUALLY}}},predicate:(A)=>_W&&A.length>0,keywords:["svg","clipboard","copy"]}),kqe=at({name:"copyAsPng",label:"labels.copyAsPng",icon:AQe,trackEvent:{category:"element"},perform:async(A,e,t,r)=>{if(!r.canvas)return{captureUpdate:be.EVENTUALLY};let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}),{exportedElements:u,exportingFrame:a}=vZ(A,e,!0);try{return await kZ("clipboard",u,e,r.files,{...e,exportingFrame:a,name:r.getName()}),{appState:{...e,toast:{message:uA("toast.copyToClipboardAsPng",{exportSelection:i.length?uA("toast.selection"):uA("toast.canvas"),exportColorScheme:e.exportWithDarkMode?uA("buttons.darkMode"):uA("buttons.lightMode")})}},captureUpdate:be.EVENTUALLY}}catch(n){return console.error(n),{appState:{...e,errorMessage:n.message},captureUpdate:be.EVENTUALLY}}},predicate:(A)=>WW&&A.length>0,keyTest:(A)=>A.code===hi.C&&A.altKey&&A.shiftKey,keywords:["png","clipboard","copy"]}),Fqe=at({name:"copyText",label:"labels.copyText",trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0});try{z9(c4e(i))}catch{throw Error(uA("errors.copyToSystemClipboardFailed"))}return{captureUpdate:be.EVENTUALLY}},predicate:(A,e,t,r)=>_W&&r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0}).some(Et),keywords:["text","clipboard","copy"]}),xqe=at({name:"gridMode",icon:uQe,keywords:["snap"],label:"labels.toggleGrid",viewMode:!0,trackEvent:{category:"canvas",predicate:(A)=>A.gridModeEnabled},perform(A,e){return{appState:{...e,gridModeEnabled:!this.checked(e),objectsSnapModeEnabled:!1},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.gridModeEnabled,predicate:(A,e,t)=>t.gridModeEnabled===void 0,keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.code===hi.QUOTE}),R3A=at({name:"zenMode",label:"buttons.zenMode",icon:tQe,paletteName:"Toggle zen mode",viewMode:!0,trackEvent:{category:"canvas",predicate:(A)=>!A.zenModeEnabled},perform(A,e){return{appState:{...e,zenModeEnabled:!this.checked(e)},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.zenModeEnabled,predicate:(A,e,t)=>typeof t.zenModeEnabled>"u",keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.Z}),_Br=at({name:"objectsSnapMode",label:"buttons.objectsSnapMode",icon:eQe,viewMode:!1,trackEvent:{category:"canvas",predicate:(A)=>!A.objectsSnapModeEnabled},perform(A,e){return{appState:{...e,objectsSnapModeEnabled:!this.checked(e),gridModeEnabled:!1},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.objectsSnapModeEnabled,predicate:(A,e,t)=>typeof t.objectsSnapModeEnabled>"u",keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.S}),N3A=at({name:"stats",label:"stats.fullTitle",icon:Vhe,paletteName:"Toggle stats",viewMode:!0,trackEvent:{category:"menu"},keywords:["edit","attributes","customize"],perform(A,e){return{appState:{...e,stats:{...e.stats,open:!this.checked(e)}},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.stats.open,keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.SLASH}),WBr=at({name:"unbindText",label:"labels.unbindText",trackEvent:{category:"element"},predicate:(A,e,t,r)=>r.scene.getSelectedElements(e).some((i)=>Yl(i)),perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e),u=r.scene.getNonDeletedElementsMap();return i.forEach((a)=>{let n=Gr(a,u);if(n){let{width:o,height:s}=m0(n.originalText,cu(n),n.lineHeight),l=a4e(a.id);$hA(a.id);let{x:g,y:C}=CS(a,n,u);Se(n,{containerId:null,width:o,height:s,text:n.originalText,x:g,y:C}),Se(a,{boundElements:a.boundElements?.filter((B)=>B.id!==n.id),height:l||a.height})}}),{elements:A,appState:e,captureUpdate:be.IMMEDIATELY}}}),qBr=at({name:"bindText",label:"labels.bindText",trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);if(i.length===2){let u=Et(i[0])||Et(i[1]),a;if(ip(i[0])?a=i[0]:ip(i[1])&&(a=i[1]),u&&a&&Gr(a,r.scene.getNonDeletedElementsMap())===null)return!0}return!1},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e),u,a;Et(i[0])&&ip(i[1])?(u=i[0],a=i[1]):(u=i[1],a=i[0]),Se(u,{containerId:a.id,verticalAlign:Ul.MIDDLE,textAlign:D9.CENTER,autoResize:!0}),Se(a,{boundElements:(a.boundElements||[]).concat({type:"text",id:u.id})});let n=a.height;return j0(u,a,r.scene.getNonDeletedElementsMap()),cS(a.id,n),{elements:zBr(A,a,u),appState:{...e,selectedElementIds:{[a.id]:!0}},captureUpdate:be.IMMEDIATELY}}}),zBr=(A,e,t)=>{let r=A.slice(),i=r.findIndex((a)=>a.id===t.id);r.splice(i,1);let u=r.findIndex((a)=>a.id===e.id);return r.splice(u+1,0,t),CB(r,ar([e,t])),r},ZBr=(A,e,t)=>{let r=A.slice(),i=r.findIndex((a)=>a.id===e.id);r.splice(i,1);let u=r.findIndex((a)=>a.id===t.id);return r.splice(u,0,e),CB(r,ar([e,t])),r},VBr=at({name:"wrapTextInContainer",label:"labels.createContainerFromText",trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e),u=i.every((a)=>Et(a));return i.length>0&&u},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e),u=A.slice(),a={};for(let n of i)if(Et(n)){let o=pB({type:"rectangle",backgroundColor:e.currentItemBackgroundColor,boundElements:[...n.boundElements||[],{id:n.id,type:"text"}],angle:n.angle,fillStyle:e.currentItemFillStyle,strokeColor:e.currentItemStrokeColor,roughness:e.currentItemRoughness,strokeWidth:e.currentItemStrokeWidth,strokeStyle:e.currentItemStrokeStyle,roundness:e.currentItemRoundness==="round"?{type:d2("rectangle")?mn.ADAPTIVE_RADIUS:mn.PROPORTIONAL_RADIUS}:null,opacity:100,locked:!1,x:n.x-pn,y:n.y-pn,width:j1(n.width,"rectangle"),height:j1(n.height,"rectangle"),groupIds:n.groupIds,frameId:n.frameId});if(n.boundElements?.length){let s=n.boundElements.filter((l)=>l.type==="arrow").map((l)=>l.id);u.filter((l)=>s.includes(l.id)).forEach((l)=>{let{startBinding:g,endBinding:C}=l;g?.elementId===n.id&&(g={...g,elementId:o.id}),C?.elementId===n.id&&(C={...C,elementId:o.id}),(g||C)&&Se(l,{startBinding:g,endBinding:C},!1)})}Se(n,{containerId:o.id,verticalAlign:Ul.MIDDLE,boundElements:null,textAlign:D9.CENTER,autoResize:!0},!1),j0(n,o,r.scene.getNonDeletedElementsMap()),u=ZBr([...u,o],o,n),a[o.id]=!0}return{elements:u,appState:{...e,selectedElementIds:a},captureUpdate:be.IMMEDIATELY}}}),X3A=380,jBr=42,G3A=5,eZe=85,XBr=500,U3A=!1,uZ=new Map,$Br=({element:A,elementsMap:e,setAppState:t,onLinkOpen:r,setToast:i,updateEmbedValidationStatus:u})=>{let a=AR(),n=$L(),o=Do(),s=A.link||"",[l,g]=we(s),C=Ee(null),B=a.showHyperlinkPopup==="editor",E=lt(()=>{if(!C.current)return;let p=Ml(C.current.value)||null;if(!A.link&&p&&Nu("hyperlink","create"),_s(A)){if(a.activeEmbeddable?.element===A&&t({activeEmbeddable:null}),!p){Se(A,{link:null}),u(A,!1);return}if(!BS(p,n.validateEmbeddable))p&&i({message:uA("toast.unableToEmbed"),closable:!0}),A.link&&uZ.set(A.id,A.link),Se(A,{link:p}),u(A,!1);else{let{width:m,height:f}=A,D=m2(p);D?.error instanceof URIError&&i({message:uA("toast.unrecognizedLinkFormat"),closable:!0});let w=D?D.intrinsicSize.w/D.intrinsicSize.h:1,b=uZ.get(A.id)!==A.link;Se(A,{...b?{width:D?.type==="video"?m>f?m:f*w:m,height:D?.type==="video"&&m>f?m/w:f}:{},link:p}),u(A,!0),uZ.has(A.id)&&uZ.delete(A.id)}}else Se(A,{link:p})},[A,i,n.validateEmbeddable,a.activeEmbeddable,t,u]);Ii(()=>()=>{E()},[E]),le(()=>{B&&C?.current&&!(o.viewport.isMobile||o.isTouchScreen)&&C.current.select()},[B,o.viewport.isMobile,o.isTouchScreen]),le(()=>{let p=null,m=(f)=>{if(B)return;p&&clearTimeout(p),tEr(A,e,a,X(f.clientX,f.clientY))&&(p=window.setTimeout(()=>{t({showHyperlinkPopup:!1})},XBr))};return window.addEventListener("pointermove",m,!1),()=>{window.removeEventListener("pointermove",m,!1),p&&clearTimeout(p)}},[a,A,B,t,e]);let d=lt(()=>{Nu("hyperlink","delete"),Se(A,{link:null}),t({showHyperlinkPopup:!1})},[t,A]),I=()=>{Nu("hyperlink","edit","popup-ui"),t({showHyperlinkPopup:"editor"})},{x:h,y:Q}=tZe(A,a,e);return a.contextMenu||a.selectedElementsAreBeingDragged||a.resizingElement||a.isRotating||a.openMenu||a.viewModeEnabled?null:cA("div",{className:"excalidraw-hyperlinkContainer",style:{top:`${Q}px`,left:`${h}px`,width:X3A,padding:G3A},children:[B?N("input",{className:Re("excalidraw-hyperlinkContainer-input"),placeholder:uA("labels.link.hint"),ref:C,value:l,onChange:(p)=>g(p.target.value),autoFocus:!0,onKeyDown:(p)=>{p.stopPropagation(),p[PA.CTRL_OR_CMD]&&p.key===PA.K&&p.preventDefault(),(p.key===PA.ENTER||p.key===PA.ESCAPE)&&(E(),t({showHyperlinkPopup:"info"}))}}):A.link?N("a",{href:Ml(A.link||""),className:"excalidraw-hyperlinkContainer-link",target:eQA(A.link)?"_self":"_blank",onClick:(p)=>{if(A.link&&r){let m=MIA("excalidraw-link",p.nativeEvent);r({...A,link:Ml(A.link)},m),m.defaultPrevented&&p.preventDefault()}},rel:"noopener noreferrer",children:A.link}):N("div",{className:"excalidraw-hyperlinkContainer-link",children:uA("labels.link.empty")}),cA("div",{className:"excalidraw-hyperlinkContainer__buttons",children:[!B&&N(ci,{type:"button",title:uA("buttons.edit"),"aria-label":uA("buttons.edit"),label:uA("buttons.edit"),onClick:I,className:"excalidraw-hyperlinkContainer--edit",icon:y9}),N(ci,{type:"button",title:uA("labels.linkToElement"),"aria-label":uA("labels.linkToElement"),label:uA("labels.linkToElement"),onClick:()=>{t({openDialog:{name:"elementLinkSelector",sourceElementId:A.id}})},icon:khA}),s&&!_s(A)&&N(ci,{type:"button",title:uA("buttons.remove"),"aria-label":uA("buttons.remove"),label:uA("buttons.remove"),onClick:d,className:"excalidraw-hyperlinkContainer--remove",icon:ap})]})]})},tZe=(A,e,t)=>{let[r,i]=Rr(A,t),{x:u,y:a}=Mc({sceneX:r+A.width/2,sceneY:i},e),n=u-e.offsetLeft-X3A/2,o=a-e.offsetTop-eZe;return{x:n,y:o}},Sqe=(A,e)=>{let t=Jr(A,e);return _s(t[0])?"labels.link.editEmbed":t[0]?.link?"labels.link.edit":"labels.link.create"},PL=null,AEr=(A,e,t)=>{PL&&clearTimeout(PL),PL=window.setTimeout(()=>eEr(A,e,t),zde)},eEr=(A,e,t)=>{if(!A.link)return;let r=JL();r.classList.add("excalidraw-tooltip--visible"),r.style.maxWidth="20rem",r.textContent=q9(A.link)?uA("labels.link.goToElement"):A.link;let[i,u,a,n]=Rr(A,t),[o,s,l,g]=MW([i,u,a,n],A.angle,e),C=Mc({sceneX:o,sceneY:s},e);qze(r,{left:C.x,top:C.y,width:l,height:g},"top"),Nu("hyperlink","tooltip","link-icon"),U3A=!0},Lqe=()=>{PL&&clearTimeout(PL),U3A&&(U3A=!1,JL().classList.remove("excalidraw-tooltip--visible"))},tEr=(A,e,t,[r,i])=>{let{x:u,y:a}=Ru({clientX:r,clientY:i},t),n=15/t.zoom.value;if(CW(u,a,A,e))return!1;let[o,s,l]=Rr(A,e);if(u>=o&&u<=l&&a>=s-eZe&&a<=s)return!1;let{x:g,y:C}=tZe(A,t,e);return!(r>=g-n&&r<=g+X3A+G3A*2+n&&i>=C-n&&i<=C+n+G3A*2+jBr)},rZe=at({name:"hyperlink",label:(A,e)=>Sqe(A,e),icon:nW,perform:(A,e)=>e.showHyperlinkPopup==="editor"?!1:{elements:A,appState:{...e,showHyperlinkPopup:"editor",openMenu:null},captureUpdate:be.IMMEDIATELY},trackEvent:{category:"hyperlink",action:"click"},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.K,predicate:(A,e)=>Jr(A,e).length===1,PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=Jr(A,e);return N(ci,{type:"button",icon:nW,"aria-label":uA(Sqe(A,e)),title:`${_s(A[0])?uA("labels.link.labelEmbed"):uA("labels.link.label")} - ${Fe("CtrlOrCmd+K")}`,onClick:()=>t(null),selected:r.length===1&&!!r[0].link})}}),c3A=(A)=>A.every((e)=>!e.locked),rEr=at({name:"toggleElementLock",label:(A,e,t)=>{let r=t.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!1});return r.length===1&&!nr(r[0])?r[0].locked?"labels.elementLock.unlock":"labels.elementLock.lock":c3A(r)?"labels.elementLock.lockAll":"labels.elementLock.unlockAll"},icon:(A,e)=>{let t=Jr(e,A);return c3A(t)?tW:tS},trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return i.length>0&&!i.some((u)=>u.locked&&u.frameId)},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});if(!i.length)return!1;let u=c3A(i),a=ar(i);return{elements:A.map((n)=>a.has(n.id)?Tr(n,{locked:u}):n),appState:{...e,selectedLinearElement:u?null:e.selectedLinearElement},captureUpdate:be.IMMEDIATELY}},keyTest:(A,e,t,r)=>A.key.toLocaleLowerCase()===PA.L&&A[PA.CTRL_OR_CMD]&&A.shiftKey&&r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!1}).length>0}),iEr=at({name:"unlockAllElements",paletteName:"Unlock all elements",trackEvent:{category:"canvas"},viewMode:!1,icon:tS,predicate:(A,e)=>Jr(A,e).length===0&&A.some((t)=>t.locked),perform:(A,e)=>{let t=A.filter((r)=>r.locked);return{elements:A.map((r)=>r.locked?Tr(r,{locked:!1}):r),appState:{...e,selectedElementIds:Object.fromEntries(t.map((r)=>[r.id,!0]))},captureUpdate:be.IMMEDIATELY}},label:"labels.elementLock.unlockAll"}),uEr=()=>{let[A,e]=we(null),t=lt((r)=>e(r),[]);return[A,t]},aEr=(A)=>{let{closeOnClickOutside:e=!0}=A,t=Uze({className:"excalidraw-modal-container"}),r=Ee(document.body.classList.contains("excalidraw-animations-disabled"));if(!t)return null;let i=(u)=>{u.key===PA.ESCAPE&&(u.nativeEvent.stopImmediatePropagation(),u.stopPropagation(),A.onCloseRequest())};return R5(cA("div",{className:Re("Modal",A.className,{"animations-disabled":r.current}),role:"dialog","aria-modal":"true",onKeyDown:i,"aria-labelledby":A.labelledBy,"data-prevent-outside-click":!0,children:[N("div",{className:"Modal__background",onClick:e?A.onCloseRequest:void 0}),N("div",{className:"Modal__content",style:{"--max-width":`${A.maxWidth}px`},tabIndex:0,children:A.children})]}),t)},iZe=Pn(new Map),Rqe=async(A)=>await QS({elements:A,appState:{exportBackground:!1,viewBackgroundColor:zr.white},files:null,renderEmbeddables:!1,skipInliningFonts:!0}),nEr=(A,e,t)=>{let[r,i]=we();return le(()=>{if(e)if(A){let u=t.get(A);u?i(u):(async()=>{let a=await Rqe(e);a.querySelector(".style-fonts")?.remove(),a&&(t.set(A,a),i(a))})()}else(async()=>{let u=await Rqe(e);i(u)})()},[A,e,t,i]),r},uZe=()=>{let[A]=Oa(iZe);return{clearLibraryCache:()=>A.clear(),deleteItemsFromLibraryCache:(e)=>{e.forEach((t)=>A.delete(t))},svgCache:A}},oEr=class{constructor(){UA(this,"jobs",[]),UA(this,"running",!1)}tick(){if(this.running)return;let A=this.jobs.shift();A?(this.running=!0,A.promise.resolve(t2(A.jobFactory,...A.args).finally(()=>{this.running=!1,this.tick()}))):this.running=!1}push(A,...e){let t=dIe();return this.jobs.push({jobFactory:A,promise:t,args:e}),this.tick(),t}};var sEr=new fB,qL=Pn({status:"loaded",isInitialized:!1,libraryItems:[]}),GL=(A)=>vd(A),lEr=(A,e)=>!A.find((t)=>t.elements.length!==e.elements.length?!1:t.elements.every((r,i)=>r.id===e.elements[i].id&&r.versionNonce===e.elements[i].versionNonce)),gEr=(A,e)=>{let t=[];for(let r of e)lEr(A,r)&&t.push(r);return[...t,...A]},cEr=(A,e)=>{let t=ar(e),r={deletedItems:new Map,addedItems:new Map};for(let u of A)t.has(u.id)||r.deletedItems.set(u.id,u);let i=ar(A);for(let u of e)i.has(u.id)||r.addedItems.set(u.id,u);return r},CEr=class{constructor(A){UA(this,"currLibraryItems",[]),UA(this,"prevLibraryItems",GL(this.currLibraryItems)),UA(this,"app"),UA(this,"updateQueue",[]),UA(this,"getLastUpdateTask",()=>this.updateQueue[this.updateQueue.length-1]),UA(this,"notifyListeners",()=>{if(this.updateQueue.length>0)TB.set(qL,(e)=>({status:"loading",libraryItems:this.currLibraryItems,isInitialized:e.isInitialized}));else{TB.set(qL,{status:"loaded",libraryItems:this.currLibraryItems,isInitialized:!0});try{let e=this.prevLibraryItems;this.prevLibraryItems=GL(this.currLibraryItems);let t=GL(this.currLibraryItems);this.app.props.onLibraryChange?.(t),sEr.trigger(cEr(e,t),t)}catch(e){console.error(e)}}}),UA(this,"destroy",()=>{this.updateQueue=[],this.currLibraryItems=[],TB.set(iZe,new Map)}),UA(this,"resetLibrary",()=>this.setLibrary([])),UA(this,"getLatestLibrary",()=>new Promise(async(e)=>{try{let t=await(this.getLastUpdateTask()||this.currLibraryItems);this.updateQueue.length>0?e(this.getLatestLibrary()):e(GL(t))}catch{return e(this.currLibraryItems)}})),UA(this,"updateLibrary",async({libraryItems:e,prompt:t=!1,merge:r=!1,openLibraryMenu:i=!1,defaultStatus:u="unpublished"})=>(i&&this.app.setState({openSidebar:{name:Kc.name,tab:q8}}),this.setLibrary(()=>new Promise(async(a,n)=>{try{let o=await(typeof e=="function"&&!(e instanceof Blob)?e(this.currLibraryItems):e),s;o instanceof Blob?s=await E1e(o,u):s=PW(o,u),!t||window.confirm(uA("alerts.confirmAddLibrary",{numShapes:s.length}))?(t&&this.app.focusContainer(),a(r?gEr(this.currLibraryItems,s):s)):n(new aS)}catch(o){n(o)}})))),UA(this,"setLibrary",(e)=>{let t=new Promise(async(r,i)=>{try{await this.getLastUpdateTask(),typeof e=="function"&&(e=e(this.currLibraryItems)),this.currLibraryItems=GL(await e),r(this.currLibraryItems)}catch(u){i(u)}}).catch((r)=>{if(r.name==="AbortError")return console.warn("Library update aborted by user"),this.currLibraryItems;throw r}).finally(()=>{this.updateQueue=this.updateQueue.filter((r)=>r!==t),this.notifyListeners()});return this.updateQueue.push(t),this.notifyListeners(),t}),this.app=A}},BEr=CEr,aZe=(A)=>{let e=Math.ceil(Math.sqrt(A.length)),t=[],r=(C)=>A.slice(C*e,C*e+e).reduce((B,E)=>{let{height:d}=Jc(E.elements);return Math.max(B,d)},0),i=(C)=>{let B=0,E=0,d=0;for(let I of A){if(B%e===0&&(E=0),E===C){let{width:h}=Jc(I.elements);d=Math.max(d,h)}B++,E++}return d},u=0,a=0,n=0,o=0,s=0,l=0,g=0;for(let C of A){s&&s%e===0&&(a+=n+50,u=0,l=0,g++),l===0&&(n=r(g)),o=i(l);let{minX:B,minY:E,width:d,height:I}=Jc(C.elements),h=(o-d)/2,Q=(n-I)/2;t.push(...C.elements.map((p)=>({...p,x:p.x+u+h-B,y:p.y+a+Q-E}))),u+=o+50,s++,l++}return t};var aZ=class A{constructor(e){UA(this,"adapter"),this.adapter=e}static async getLibraryItems(e,t,r=!0){let i=()=>new Promise(async(u,a)=>{try{let n=await e.load({source:t});u(PW(n?.libraryItems||[],"published"))}catch(n){a(n)}});return r?A.queue.push(i):i()}getLibraryItems(e){return A.getLibraryItems(this.adapter,e,!1)}};UA(aZ,"queue",new oEr),UA(aZ,"run",async(A,e)=>{let t=new aZ(A);return aZ.queue.push(()=>e(t))});var EEr=Dt(({children:A,gap:e,align:t,justifyContent:r,className:i,style:u},a)=>N("div",{className:Re("Stack Stack_horizontal",i),style:{"--gap":e,alignItems:t,justifyContent:r,...u},ref:a,children:A})),dEr=Dt(({children:A,gap:e,align:t,justifyContent:r,className:i,style:u},a)=>N("div",{className:Re("Stack Stack_vertical",i),style:{"--gap":e,justifyItems:t,justifyContent:r,...u},ref:a,children:A})),Xc={Row:EEr,Col:dEr},IEr=({theme:A,id:e,libraryReturnUrl:t})=>{let r=t||window.location.origin+window.location.pathname;return N("a",{className:"library-menu-browse-button",href:`${Qr.VITE_APP_LIBRARY_URL}?target=${window.name||"_blank"}&referrer=${r}&useHash=true&token=${e}&theme=${A}&version=${W8.excalidrawLibrary}`,target:"_excalidraw_libraries",children:uA("labels.libraries")})},hEr=IEr,nZe=({libraryReturnUrl:A,theme:e,id:t,style:r,children:i,className:u})=>cA("div",{className:Re("library-menu-control-buttons",u),style:r,children:[N(hEr,{id:t,libraryReturnUrl:A,theme:e}),i]}),QEr=/({{[\w-]+}})|(<[\w-]+>)|(<\/[\w-]+>)/g,pEr=/{{([\w-]+)}}/,fEr=/<([\w-]+)>/,mEr=/<\/([\w-]+)>/,DEr=(A,e)=>{let t=[{name:"",children:[]}];return A.split(QEr).filter(Boolean).forEach((r)=>{let i=r.match(fEr),u=r.match(mEr),a=r.match(pEr);if(i!==null){let n=i[1];e.hasOwnProperty(n)?t.push({name:n,children:[]}):console.warn(`Trans: missed to pass in prop ${n} for interpolating ${A}`)}else if(u!==null)if(u[1]===t[t.length-1].name){let n=t.pop(),o=Rt(Co,{},...n.children),s=e[n.name];typeof s=="function"&&t[t.length-1].children.push(s(o))}else console.warn(`Trans: unexpected end tag ${r} for interpolating ${A}`);else if(a!==null){let n=a[1];e.hasOwnProperty(n)?t[t.length-1].children.push(e[n]):console.warn(`Trans: key ${n} not in props for interpolating ${A}`)}else t[t.length-1].children.push(r)}),t.length!==1&&console.warn(`Trans: stack not empty for interpolating ${A}`),t[0].children},yEr=({i18nKey:A,children:e,...t})=>{let{t:r}=as();return Rt(Co,{},...DEr(r(A),t))},_d=yEr,wEr=({label:A,onClick:e,className:t,children:r,actionType:i,type:u="button",isLoading:a,...n})=>{let o=i?`Dialog__action-button--${i}`:"";return cA("button",{className:Re("Dialog__action-button",o,t),type:u,"aria-label":A,onClick:e,...n,children:[r&&N("div",{style:a?{visibility:"hidden"}:{},children:r}),N("div",{style:a?{visibility:"hidden"}:{},children:A}),a&&N("div",{style:{position:"absolute",inset:0},children:N(tQ,{})})]})},j5=wEr,bEr=(A)=>{let{onConfirm:e,onCancel:t,children:r,confirmText:i=uA("buttons.confirm"),cancelText:u=uA("buttons.cancel"),className:a="",...n}=A,o=zn(),s=fZ($3A),{container:l}=zd();return cA(HB,{onCloseRequest:t,size:"small",...n,className:`confirm-dialog ${a}`,children:[r,cA("div",{className:"confirm-dialog-buttons",children:[N(j5,{label:u,onClick:()=>{o({openMenu:null}),s(!1),Wn(()=>{t()}),l?.focus()}}),N(j5,{label:i,onClick:()=>{o({openMenu:null}),s(!1),Wn(()=>{e()}),l?.focus()},actionType:"danger"})]})]})},oZe=bEr,eD=class{static has(A){try{return!!window.localStorage.getItem(A)}catch(e){return console.warn(`localStorage.getItem error: ${e.message}`),!1}}static get(A){try{let e=window.localStorage.getItem(A);return e?JSON.parse(e):null}catch(e){return console.warn(`localStorage.getItem error: ${e.message}`),null}}};UA(eD,"set",(A,e)=>{try{return window.localStorage.setItem(A,JSON.stringify(e)),!0}catch(t){return console.warn(`localStorage.setItem error: ${t.message}`),!1}}),UA(eD,"delete",(A)=>{try{window.localStorage.removeItem(A)}catch(e){console.warn(`localStorage.removeItem error: ${e.message}`)}});var vEr=async(A)=>{let e=Math.round(8),t=Math.max(Math.round(2),2),r=BIe(A,6),i=document.createElement("canvas");i.width=r[0].length*128+(r[0].length+1)*(e*2)-e*2,i.height=r.length*128+(r.length+1)*(e*2)-e*2;let u=i.getContext("2d");u.fillStyle=ua.white,u.fillRect(0,0,i.width,i.height);for(let[a,n]of A.entries()){let o=await qW({elements:n.elements,files:null,maxWidthOrHeight:128}),{width:s,height:l}=o,g=Math.floor(a/6)*(128+e*2),C=a%6*(128+e*2);u.drawImage(o,C+(128-s)/2+e,g+(128-l)/2+e),u.lineWidth=t,u.strokeStyle=ua.gray[4],u.strokeRect(C+e/2,g+e/2,128+e,128+e)}return await aq(new File([await $9(i)],"preview",{type:Xt.png}),{outputType:Xt.jpg,maxWidthOrHeight:5000})},kEr=({libItem:A,appState:e,index:t,onChange:r,onRemove:i})=>{let u=Ee(null),a=Ee(null);return le(()=>{let n=u.current;n&&(async()=>{let o=await QS({elements:A.elements,appState:{...e,viewBackgroundColor:ua.white,exportBackground:!0},files:null,skipInliningFonts:!0});n.innerHTML=o.outerHTML})()},[A.elements,e]),cA("div",{className:"single-library-item",children:[A.status==="published"&&N("span",{className:"single-library-item-status",children:uA("labels.statusPublished")}),N("div",{ref:u,className:"single-library-item__svg"}),N(ci,{"aria-label":uA("buttons.remove"),type:"button",icon:h2,className:"single-library-item--remove",onClick:i.bind(null,A.id),title:uA("buttons.remove")}),cA("div",{style:{display:"flex",margin:"0.8rem 0",width:"100%",fontSize:"14px",fontWeight:500,flexDirection:"column"},children:[cA("label",{style:{display:"flex",justifyContent:"space-between",flexDirection:"column"},children:[cA("div",{style:{padding:"0.5em 0"},children:[N("span",{style:{fontWeight:500,color:ua.gray[6]},children:uA("publishDialog.itemName")}),N("span",{"aria-hidden":"true",className:"required",children:"*"})]}),N("input",{type:"text",ref:a,style:{width:"80%",padding:"0.2rem"},defaultValue:A.name,placeholder:"Item name",onChange:(n)=>{r(n.target.value,t)}})]}),N("span",{className:"error",children:A.error})]})]})},FEr=({onClose:A,libraryItems:e,appState:t,onSuccess:r,onError:i,updateItemsInStorage:u,onRemove:a})=>{let[n,o]=we({authorName:"",githubHandle:"",name:"",description:"",twitterHandle:"",website:""}),[s,l]=we(!1);le(()=>{let p=eD.get(L9.PUBLISH_LIBRARY);p&&o(p)},[]);let[g,C]=we(e.slice());le(()=>{C(e.slice())},[e]);let B=(p)=>{o({...n,[p.target.name]:p.target.value})},E=async(p)=>{p.preventDefault(),l(!0);let m=[],f=!1;if(g.forEach((S)=>{let x="";S.name||(x=uA("publishDialog.errors.required"),f=!0),m.push({...S,error:x})}),f){C(m),l(!1);return}let D=await vEr(g),w={type:Fg.excalidrawLibrary,version:W8.excalidrawLibrary,source:P_,libraryItems:g},b=JSON.stringify(w,null,2),F=new Blob([b],{type:"application/json"}),v=new FormData;v.append("excalidrawLib",F),v.append("previewImage",D),v.append("previewImageType",D.type),v.append("title",n.name),v.append("authorName",n.authorName),v.append("githubHandle",n.githubHandle),v.append("name",n.name),v.append("description",n.description),v.append("twitterHandle",n.twitterHandle),v.append("website",n.website),fetch(`${Qr.VITE_APP_LIBRARY_BACKEND}/submit`,{method:"post",body:v}).then((S)=>S.ok?S.json().then(({url:x})=>{eD.delete(L9.PUBLISH_LIBRARY),r({url:x,authorName:n.authorName,items:g})}):S.json().catch(()=>{throw Error(S.statusText||"something went wrong")}).then((x)=>{throw Error(x.message||S.statusText||"something went wrong")}),(S)=>{console.error(S),i(S),l(!1)}).catch((S)=>{console.error(S),i(S),l(!1)})},d=()=>{let p=[];return g.forEach((m,f)=>{p.push(N("div",{className:"single-library-item-wrapper",children:N(kEr,{libItem:m,appState:t,index:f,onChange:(D,w)=>{let b=g.slice();b[w].name=D,C(b)},onRemove:a})},f))}),N("div",{className:"selected-library-items",children:p})},I=lt(()=>{u(g),eD.set(L9.PUBLISH_LIBRARY,n),A()},[g,A,u,n]),h=!!e.length,Q=e.some((p)=>p.status==="published");return N(HB,{onCloseRequest:I,title:uA("publishDialog.title"),className:"publish-library",children:h?cA("form",{onSubmit:E,children:[N("div",{className:"publish-library-note",children:N(_d,{i18nKey:"publishDialog.noteDescription",link:(p)=>N("a",{href:"https://libraries.excalidraw.com",target:"_blank",rel:"noopener noreferrer",children:p})})}),N("span",{className:"publish-library-note",children:N(_d,{i18nKey:"publishDialog.noteGuidelines",link:(p)=>N("a",{href:"https://github.com/excalidraw/excalidraw-libraries#guidelines",target:"_blank",rel:"noopener noreferrer",children:p})})}),N("div",{className:"publish-library-note",children:uA("publishDialog.noteItems")}),Q&&N("span",{className:"publish-library-note publish-library-warning",children:uA("publishDialog.republishWarning")}),d(),cA("div",{className:"publish-library__fields",children:[cA("label",{children:[cA("div",{children:[N("span",{children:uA("publishDialog.libraryName")}),N("span",{"aria-hidden":"true",className:"required",children:"*"})]}),N("input",{type:"text",name:"name",required:!0,value:n.name,onChange:B,placeholder:uA("publishDialog.placeholder.libraryName")})]}),cA("label",{style:{alignItems:"flex-start"},children:[cA("div",{children:[N("span",{children:uA("publishDialog.libraryDesc")}),N("span",{"aria-hidden":"true",className:"required",children:"*"})]}),N("textarea",{name:"description",rows:4,required:!0,value:n.description,onChange:B,placeholder:uA("publishDialog.placeholder.libraryDesc")})]}),cA("label",{children:[cA("div",{children:[N("span",{children:uA("publishDialog.authorName")}),N("span",{"aria-hidden":"true",className:"required",children:"*"})]}),N("input",{type:"text",name:"authorName",required:!0,value:n.authorName,onChange:B,placeholder:uA("publishDialog.placeholder.authorName")})]}),cA("label",{children:[N("span",{children:uA("publishDialog.githubUsername")}),N("input",{type:"text",name:"githubHandle",value:n.githubHandle,onChange:B,placeholder:uA("publishDialog.placeholder.githubHandle")})]}),cA("label",{children:[N("span",{children:uA("publishDialog.twitterUsername")}),N("input",{type:"text",name:"twitterHandle",value:n.twitterHandle,onChange:B,placeholder:uA("publishDialog.placeholder.twitterHandle")})]}),cA("label",{children:[N("span",{children:uA("publishDialog.website")}),N("input",{type:"text",name:"website",pattern:"https?://.+",title:uA("publishDialog.errors.website"),value:n.website,onChange:B,placeholder:uA("publishDialog.placeholder.website")})]}),N("span",{className:"publish-library-note",children:N(_d,{i18nKey:"publishDialog.noteLicense",link:(p)=>N("a",{href:"https://github.com/excalidraw/excalidraw-libraries/blob/main/LICENSE",target:"_blank",rel:"noopener noreferrer",children:p})})})]}),cA("div",{className:"publish-library__buttons",children:[N(j5,{label:uA("buttons.cancel"),onClick:I,"data-testid":"cancel-clear-canvas-button"}),N(j5,{type:"submit",label:uA("buttons.submit"),actionType:"primary",isLoading:s})]})]}):N("p",{style:{padding:"1em",textAlign:"center",fontWeight:500},children:uA("publishDialog.atleastOneLibItem")})})},xEr=FEr,sZe=({className:A="",children:e,onToggle:t,title:r,...i})=>{let u=Do(),a=Re(`dropdown-menu-button ${A}`,"zen-mode-transition",{"dropdown-menu-button--mobile":u.editor.isMobile}).trim();return N("button",{"data-prevent-outside-click":!0,className:a,onClick:t,type:"button","data-testid":"dropdown-menu-button",title:r,...i,children:e})},SEr=sZe;sZe.displayName="DropdownMenuTrigger";var lZe=()=>N("div",{style:{height:"1px",backgroundColor:"var(--default-border-color)",margin:".5rem 0"}}),LEr=lZe;lZe.displayName="DropdownMenuSeparator";var gZe=({children:A,onClickOutside:e,className:t="",onSelect:r,style:i})=>{let u=Do(),a=Ee(null),n=DZ({onClickOutside:e});_3A(a,()=>{n.onClickOutside?.()}),le(()=>{let s=(g)=>{g.key===PA.ESCAPE&&(g.stopImmediatePropagation(),n.onClickOutside?.())},l={capture:!0};return document.addEventListener("keydown",s,l),()=>{document.removeEventListener("keydown",s,l)}},[n]);let o=Re(`dropdown-menu ${t}`,{"dropdown-menu--mobile":u.editor.isMobile}).trim();return N(Kze.Provider,{value:{onSelect:r},children:N("div",{ref:a,className:o,style:i,"data-testid":"dropdown-menu",children:u.editor.isMobile?N(Xc.Col,{className:"dropdown-menu-container",children:A}):N(YB,{className:"dropdown-menu-container",padding:2,style:{zIndex:2},children:A})})})};gZe.displayName="DropdownMenuContent";var REr=gZe,cZe=({icon:A,shortcut:e,href:t,children:r,onSelect:i,className:u="",selected:a,rel:n="noreferrer",...o})=>{let s=Oze(o.onClick,i);return N("a",{...o,href:t,target:"_blank",rel:"noreferrer",className:Jze(u,a),title:o.title??o["aria-label"],onClick:s,children:N(Pze,{icon:A,shortcut:e,children:r})})},CZ=cZe;cZe.displayName="DropdownMenuItemLink";var NEr=({children:A,className:e="",selected:t,...r})=>N("div",{...r,className:`dropdown-menu-item-base dropdown-menu-item-custom ${e} ${t?"dropdown-menu-item--selected":""}`.trim(),children:A}),GEr=NEr,UEr=(A)=>di.toArray(A).find((t)=>Da(t)&&typeof t.type!="string"&&t?.type.displayName&&t.type.displayName==="DropdownMenuTrigger")||null,MEr=(A)=>di.toArray(A).find((t)=>Da(t)&&typeof t.type!="string"&&t?.type.displayName&&t.type.displayName==="DropdownMenuContent")||null,iQ=({children:A,open:e})=>{let t=UEr(A),r=MEr(A);return cA(et,{children:[t,e&&r]})};iQ.Trigger=SEr;iQ.Content=REr;iQ.Item=$c;iQ.ItemLink=CZ;iQ.ItemCustom=GEr;iQ.Group=S3A;iQ.Separator=LEr;var Hu=iQ;iQ.displayName="DropdownMenu";var TEr=(A,e)=>A.filter((t)=>e.includes(t.id)),YEr=({setAppState:A,selectedItems:e,library:t,onRemoveFromLibrary:r,resetLibrary:i,onSelectItems:u,appState:a,className:n})=>{let[o]=Oa(qL),[s,l]=Oa($3A),g=()=>{let v=e.length?uA("alerts.removeItemsFromsLibrary",{count:e.length}):uA("alerts.resetLibrary"),S=e.length?uA("confirmDialog.removeItemsFromLib"):uA("confirmDialog.resetLibrary");return N(oZe,{onConfirm:()=>{e.length?r():i(),B(!1)},onCancel:()=>{B(!1)},title:S,children:N("p",{children:v})})},[C,B]=we(!1),E=!!e.length,d=E?o.libraryItems.filter((v)=>e.includes(v.id)):o.libraryItems,I=E?uA("buttons.remove"):uA("buttons.resetLibrary"),[h,Q]=we(!1),[p,m]=we(null),f=lt(()=>cA(HB,{onCloseRequest:()=>m(null),title:uA("publishSuccessDialog.title"),className:"publish-library-success",size:"small",children:[N("p",{children:N(_d,{i18nKey:"publishSuccessDialog.content",authorName:p.authorName,link:(v)=>N("a",{href:p?.url,target:"_blank",rel:"noopener noreferrer",children:v})})}),N(ci,{type:"button",title:uA("buttons.close"),"aria-label":uA("buttons.close"),label:uA("buttons.close"),onClick:()=>m(null),"data-testid":"publish-library-success-close",className:"publish-library-success-close"})]}),[m,p]),D=(v,S)=>{Q(!1),m({url:v.url,authorName:v.authorName});let x=S.slice();x.forEach((k)=>{e.includes(k.id)&&(k.status="published")}),t.setLibrary(x)},w=async()=>{try{await t.updateLibrary({libraryItems:GW({description:"Excalidraw library files"}),merge:!0,openLibraryMenu:!0})}catch(v){if(v?.name==="AbortError"){console.warn(v);return}A({errorMessage:uA("errors.importLibraryError")})}},b=async()=>{let v=E?d:await t.getLatestLibrary();k4e(v).catch(NIA).catch((S)=>{A({errorMessage:S.message})})},F=()=>cA(Hu,{open:s,children:[N(Hu.Trigger,{onToggle:()=>l(!s),children:SIe}),cA(Hu.Content,{onClickOutside:()=>l(!1),onSelect:()=>l(!1),className:"library-menu",children:[!E&&N(Hu.Item,{onSelect:w,icon:oW,"data-testid":"lib-dropdown--load",children:uA("buttons.load")}),!!d.length&&N(Hu.Item,{onSelect:b,icon:rS,"data-testid":"lib-dropdown--export",children:uA("buttons.export")}),!!d.length&&N(Hu.Item,{onSelect:()=>B(!0),icon:ap,children:I}),E&&N(Hu.Item,{icon:Ghe,onSelect:()=>Q(!0),"data-testid":"lib-dropdown--remove",children:uA("buttons.publishLibrary")})]})]});return cA("div",{className:Re("library-menu-dropdown-container",n),children:[F(),e.length>0&&N("div",{className:"library-actions-counter",children:e.length}),C&&g(),h&&N(xEr,{onClose:()=>Q(!1),libraryItems:TEr(o.libraryItems,e),appState:a,onSuccess:(v)=>D(v,o.libraryItems),onError:(v)=>window.alert(v),updateItemsInStorage:()=>t.setLibrary(o.libraryItems),onRemove:(v)=>u(e.filter((S)=>S!==v))}),p&&f()]})},Nqe=({selectedItems:A,onSelectItems:e,className:t})=>{let{library:r}=qd(),{clearLibraryCache:i,deleteItemsFromLibraryCache:u}=uZe(),a=b0(),n=zn(),[o]=Oa(qL),s=async(l)=>{let g=l.filter((C)=>!A.includes(C.id));r.setLibrary(g).catch(()=>{n({errorMessage:uA("alerts.errorRemovingFromLibrary")})}),u(A),e([])};return N(YEr,{appState:a,setAppState:n,selectedItems:A,onSelectItems:e,library:r,onRemoveFromLibrary:()=>s(o.libraryItems),resetLibrary:()=>{r.resetLibrary(),i()},className:t})},HEr=gi(({id:A,elements:e,isPending:t,onClick:r,selected:i,onToggle:u,onDrag:a,svgCache:n})=>{let o=Ee(null),s=nEr(A,e,n);le(()=>{let E=o.current;if(E)return s&&(E.innerHTML=s.outerHTML),()=>{E.innerHTML=""}},[s]);let[l,g]=we(!1),C=Do().editor.isMobile,B=t&&N("div",{className:"library-unit__adder",children:xIe});return cA("div",{className:Re("library-unit",{"library-unit__active":e,"library-unit--hover":e&&l,"library-unit--selected":i,"library-unit--skeleton":!s}),onMouseEnter:()=>g(!0),onMouseLeave:()=>g(!1),children:[N("div",{className:Re("library-unit__dragger",{"library-unit__pulse":!!t}),ref:o,draggable:!!e,onClick:e||t?(E)=>{A&&E.shiftKey?u(A,E):r(A)}:void 0,onDragStart:(E)=>{if(!A){E.preventDefault();return}g(!1),a(A,E)}}),B,A&&e&&(l||C||i)&&N(V3A,{checked:i,onChange:(E,d)=>u(A,d),className:"library-unit__checkbox"})]})}),KEr=()=>N("div",{className:"library-unit library-unit--skeleton"});function JEr(){return[!1,lt((A)=>A(),[])]}var OEr=GdA||JEr,Gqe=({children:A})=>N("div",{className:"library-menu-items-container__grid",children:A}),C3A=gi(({items:A,onItemSelectToggle:e,onItemDrag:t,isItemSelected:r,onClick:i,svgCache:u,itemsRenderedPerBatch:a})=>{let[,n]=OEr(),[o,s]=we(0);return le(()=>{o<A.length&&n(()=>{s(o+a)})},[o,A.length,n,a]),N(et,{children:A.map((l,g)=>g<o?N(HEr,{elements:l?.elements,isPending:!l?.id&&!!l?.elements,onClick:i,svgCache:u,id:l?.id,selected:r(l.id),onToggle:e,onDrag:t},l?.id??g):N(KEr,{},g))})}),PEr=Pn(0),_Er=(A)=>{let[e,t]=Oa(PEr);return le(()=>{let{current:r}=A;if(!r)return;let i=CZe.default(()=>{let{scrollTop:u}=r;t(u)},200);return r.addEventListener("scroll",i),()=>{i.cancel(),r.removeEventListener("scroll",i)}},[A,t]),e},WEr=17,qEr=64;function zEr({isLoading:A,libraryItems:e,onAddToLibrary:t,onInsertLibraryItems:r,pendingElements:i,theme:u,id:a,libraryReturnUrl:n,onSelectItems:o,selectedItems:s}){let l=Ee(null),g=_Er(l);le(()=>{g>0&&l.current?.scrollTo(0,g)},[]);let{svgCache:C}=uZe(),B=Ut(()=>e.filter((v)=>v.status!=="published"),[e]),E=Ut(()=>e.filter((v)=>v.status==="published"),[e]),d=!e.length&&!i.length,I=!i.length&&!B.length&&!E.length,[h,Q]=we(null),p=lt((v,S)=>{let x=!s.includes(v),k=[...B,...E];if(x){if(S.shiftKey&&h){let T=k.findIndex((U)=>U.id===h),R=k.findIndex((U)=>U.id===v);if(T===-1||R===-1){o([...s,v]);return}let L=ar(s),M=k.reduce((U,Y,H)=>((H>=T&&H<=R||L.has(Y.id))&&U.push(Y.id),U),[]);o(M)}else o([...s,v]);Q(v)}else Q(null),o(s.filter((T)=>T!==v))},[h,o,E,s,B]),m=lt((v)=>{let S;return s.includes(v)?S=e.filter((x)=>s.includes(x.id)):S=e.filter((x)=>x.id===v),S.map((x)=>({...x,elements:oQA(x.elements,{randomizeSeed:!0})}))},[e,s]),f=lt((v,S)=>{S.dataTransfer.setData(Xt.excalidrawlib,lQA(m(v)))},[m]),D=lt((v)=>v?s.includes(v):!1,[s]),w=lt(()=>{t(i)},[i,t]),b=lt((v)=>{v&&r(m(v))},[m,r]),F=C.size>=e.length?qEr:WEr;return cA("div",{className:"library-menu-items-container",style:i.length||B.length||E.length?{justifyContent:"flex-start"}:{borderBottom:0},children:[!I&&N(Nqe,{selectedItems:s,onSelectItems:o,className:"library-menu-dropdown-container--in-heading"}),cA(Xc.Col,{className:"library-menu-items-container__items",align:"start",gap:1,style:{flex:E.length>0?1:"0 1 auto",marginBottom:0},ref:l,children:[cA(et,{children:[!I&&N("div",{className:"library-menu-items-container__header",children:uA("labels.personalLib")}),A&&N("div",{style:{position:"absolute",top:"var(--container-padding-y)",right:"var(--container-padding-x)",transform:"translateY(50%)"},children:N(tQ,{})}),!i.length&&!B.length?cA("div",{className:"library-menu-items__no-items",children:[N("div",{className:"library-menu-items__no-items__label",children:uA("library.noItems")}),N("div",{className:"library-menu-items__no-items__hint",children:E.length>0?uA("library.hint_emptyPrivateLibrary"):uA("library.hint_emptyLibrary")})]}):cA(Gqe,{children:[i.length>0&&N(C3A,{itemsRenderedPerBatch:F,items:[{id:null,elements:i}],onItemSelectToggle:p,onItemDrag:f,onClick:w,isItemSelected:D,svgCache:C}),N(C3A,{itemsRenderedPerBatch:F,items:B,onItemSelectToggle:p,onItemDrag:f,onClick:b,isItemSelected:D,svgCache:C})]})]}),cA(et,{children:[(E.length>0||i.length>0||B.length>0)&&N("div",{className:"library-menu-items-container__header library-menu-items-container__header--excal",children:uA("labels.excalidrawLib")}),E.length>0?N(Gqe,{children:N(C3A,{itemsRenderedPerBatch:F,items:E,onItemSelectToggle:p,onItemDrag:f,onClick:b,isItemSelected:D,svgCache:C})}):B.length>0?N("div",{style:{margin:"1rem 0",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",width:"100%",fontSize:".9rem"},children:uA("library.noItems")}):null]}),d&&N(nZe,{style:{padding:"16px 0",width:"100%"},id:a,libraryReturnUrl:n,theme:u,children:N(Nqe,{selectedItems:s,onSelectItems:o})})]})]})}var $3A=Pn(!1),Uqe=({children:A})=>N("div",{className:"layer-ui__library",children:A}),ZEr=gi(({onInsertLibraryItems:A,pendingElements:e,onAddToLibrary:t,setAppState:r,libraryReturnUrl:i,library:u,id:a,theme:n,selectedItems:o,onSelectItems:s})=>{let[l]=Oa(qL),g=lt((E)=>{(async(d,I)=>{Nu("element","addToLibrary","ui");for(let Q of vIA)if(d.some((p)=>p.type===Q))return r({errorMessage:uA(`errors.libraryElementTypeError.${Q}`)});let h=[{status:"unpublished",elements:d,id:Lg(),created:Date.now()},...I];t(),u.setLibrary(h).catch(()=>{r({errorMessage:uA("alerts.errorAddingToLibrary")})})})(E,l.libraryItems)},[t,u,r,l.libraryItems]),C=Ut(()=>l.libraryItems,[l]);if(l.status==="loading"&&!l.isInitialized)return N(Uqe,{children:N("div",{className:"layer-ui__library-message",children:cA("div",{children:[N(tQ,{size:"2em"}),N("span",{children:uA("labels.libraryLoadingMessage")})]})})});let B=l.libraryItems.length>0||e.length>0;return cA(Uqe,{children:[N(zEr,{isLoading:l.status==="loading",libraryItems:C,onAddToLibrary:g,onInsertLibraryItems:A,pendingElements:e,id:a,libraryReturnUrl:i,theme:n,onSelectItems:s,selectedItems:o}),B&&N(nZe,{className:"library-menu-control-buttons--at-bottom",style:{padding:"16px 12px 0 12px"},id:a,libraryReturnUrl:i,theme:n})]})}),B3A=(A,e)=>({elements:A,pending:Jr(A,{selectedElementIds:e},{includeBoundTextElement:!0,includeElementsInFrames:!0}),selectedElementIds:e}),VEr=(A,e)=>{let t=SZ(),[r,i]=we(()=>B3A(t,A.selectedElementIds)),u=Ee(new Map);return le(()=>{for(let a of r.pending)u.current.set(a.id,a.version)},[r.pending]),le(()=>{e.state.cursorButton==="up"&&e.state.activeTool.type==="selection"&&i((a)=>{if(!Po(a.selectedElementIds,A.selectedElementIds))return u.current.clear(),B3A(t,A.selectedElementIds);let n=e.scene.getNonDeletedElementsMap();for(let o of Object.keys(A.selectedElementIds)){let s=n.get(o)?.version;if(s&&s!==u.current.get(o))return B3A(t,A.selectedElementIds)}return a})},[e,e.state.cursorButton,e.state.activeTool.type,A.selectedElementIds,t]),r.pending},jEr=gi(()=>{let A=qd(),{onInsertElements:e}=A,t=$L(),r=b0(),i=zn(),[u,a]=we([]),n=Ut(()=>A.library,[A.library]),o=VEr(r,A),s=lt((g)=>{e(aZe(g))},[e]),l=lt(()=>{i({selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null})},[i]);return N(ZEr,{pendingElements:o,onInsertLibraryItems:s,onAddToLibrary:l,setAppState:i,libraryReturnUrl:t.libraryReturnUrl,library:n,id:A.id,theme:r.theme,selectedItems:u,onSelectItems:a})});function XEr(A){if(A&&typeof A=="number")return A;switch(A){case"small":return 550;case"wide":return 1024;case"regular":default:return 800}}var HB=(A)=>{let[e,t]=uEr(),[r]=we(document.activeElement),{id:i}=zd(),u=Do().viewport.isMobile;le(()=>{if(!e)return;let s=j_(e);setTimeout(()=>{s.length>0&&A.autofocus!==!1&&(s[1]||s[0]).focus()});let l=(g)=>{if(g.key===PA.TAB){let C=j_(e),{activeElement:B}=document,E=C.findIndex((d)=>d===B);E===0&&g.shiftKey?(C[C.length-1].focus(),g.preventDefault()):E===C.length-1&&!g.shiftKey&&(C[0].focus(),g.preventDefault())}};return e.addEventListener("keydown",l),()=>e.removeEventListener("keydown",l)},[e,A.autofocus]);let a=zn(),n=fZ($3A),o=()=>{a({openMenu:null}),n(!1),r.focus(),A.onCloseRequest()};return N(aEr,{className:Re("Dialog",A.className,{"Dialog--fullscreen":u}),labelledBy:"dialog-title",maxWidth:XEr(A.size),onCloseRequest:o,closeOnClickOutside:A.closeOnClickOutside,children:cA(YB,{ref:t,children:[A.title&&N("h2",{id:`${i}-dialog-title`,className:"Dialog__title",children:N("span",{className:"Dialog__titleContent",children:A.title})}),u&&N("button",{className:"Dialog__close",onClick:o,title:uA("buttons.close"),"aria-label":uA("buttons.close"),type:"button",children:h2}),N("div",{className:"Dialog__content",children:A.children})]})})},rD=({type:A="button",onSelect:e,selected:t,children:r,className:i="",...u})=>N("button",{onClick:X8(u.onClick,(a)=>{e()}),type:A,className:Re("excalidraw-button",i,{selected:t}),...u,children:r}),AmA=Dt(({onChange:A,label:e,fullWidth:t,placeholder:r,readonly:i,selectOnRender:u,onKeyDown:a,isRedacted:n=!1,icon:o,className:s,...l},g)=>{let C=Ee(null);zm(g,()=>C.current),Ii(()=>{u&&(C.current?.focus(),C.current?.select())},[u]);let[B,E]=we(!1);return cA("div",{className:Re("ExcTextField",s,{"ExcTextField--fullWidth":t,"ExcTextField--hasIcon":!!o}),onClick:()=>{C.current?.focus()},children:[o,e&&N("div",{className:"ExcTextField__label",children:e}),cA("div",{className:Re("ExcTextField__input",{"ExcTextField__input--readonly":i}),children:[N("input",{className:Re({"is-redacted":"value"in l&&l.value&&n&&!B}),readOnly:i,value:"value"in l?l.value:void 0,defaultValue:"defaultValue"in l?l.defaultValue:void 0,placeholder:r,ref:C,onChange:(d)=>A?.(d.target.value),onKeyDown:a}),n&&N(rD,{onSelect:()=>E(!B),style:{border:0,userSelect:"none"},children:B?Ohe:gW})]})]})}),$Er={toggleTheme:[Fe("Shift+Alt+D")],saveScene:[Fe("CtrlOrCmd+S")],loadScene:[Fe("CtrlOrCmd+O")],clearCanvas:[Fe("CtrlOrCmd+Delete")],imageExport:[Fe("CtrlOrCmd+Shift+E")],commandPalette:[Fe("CtrlOrCmd+/"),Fe("CtrlOrCmd+Shift+P")],cut:[Fe("CtrlOrCmd+X")],copy:[Fe("CtrlOrCmd+C")],paste:[Fe("CtrlOrCmd+V")],copyStyles:[Fe("CtrlOrCmd+Alt+C")],pasteStyles:[Fe("CtrlOrCmd+Alt+V")],selectAll:[Fe("CtrlOrCmd+A")],deleteSelectedElements:[Fe("Delete")],duplicateSelection:[Fe("CtrlOrCmd+D"),Fe(`Alt+${uA("helpDialog.drag")}`)],sendBackward:[Fe("CtrlOrCmd+[")],bringForward:[Fe("CtrlOrCmd+]")],sendToBack:[BB?Fe("CtrlOrCmd+Alt+["):Fe("CtrlOrCmd+Shift+[")],bringToFront:[BB?Fe("CtrlOrCmd+Alt+]"):Fe("CtrlOrCmd+Shift+]")],copyAsPng:[Fe("Shift+Alt+C")],group:[Fe("CtrlOrCmd+G")],ungroup:[Fe("CtrlOrCmd+Shift+G")],gridMode:[Fe("CtrlOrCmd+'")],zenMode:[Fe("Alt+Z")],objectsSnapMode:[Fe("Alt+S")],stats:[Fe("Alt+/")],addToLibrary:[],flipHorizontal:[Fe("Shift+H")],flipVertical:[Fe("Shift+V")],viewMode:[Fe("Alt+R")],hyperlink:[Fe("CtrlOrCmd+K")],toggleElementLock:[Fe("CtrlOrCmd+Shift+L")],resetZoom:[Fe("CtrlOrCmd+0")],zoomOut:[Fe("CtrlOrCmd+-")],zoomIn:[Fe("CtrlOrCmd++")],zoomToFitSelection:[Fe("Shift+3")],zoomToFit:[Fe("Shift+1")],zoomToFitSelectionInViewport:[Fe("Shift+2")],toggleEraserTool:[Fe("E")],toggleHandTool:[Fe("H")],setFrameAsActiveTool:[Fe("F")],saveFileToDisk:[Fe("CtrlOrCmd+S")],saveToActiveFile:[Fe("CtrlOrCmd+S")],toggleShortcuts:[Fe("?")],searchMenu:[Fe("CtrlOrCmd+F")],wrapSelectionInFrame:[]},us=(A,e=0)=>{let t=$Er[A];return t&&t.length>0?t[e]||t[0]:""},Adr="\\u0300-\\u036f",edr="\\ufe20-\\ufe2f",tdr="\\u20d0-\\u20ff",rdr=Adr+edr+tdr,idr=`[${rdr}]`,udr=RegExp(idr,"g"),adr=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ndr={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"E",æ:"e",Þ:"T",þ:"t",ß:"s",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"I",ij:"i",Œ:"E",œ:"e",ʼn:"n",ſ:"s"},Mqe=(A)=>A.replace(adr,(e)=>ndr[e]||e).replace(udr,""),EZe=yi(null),Xs=()=>Si(EZe),odr=cq(),sdr=()=>Ut(()=>({MainMenuTunnel:UB(),WelcomeScreenMenuHintTunnel:UB(),WelcomeScreenToolbarHintTunnel:UB(),WelcomeScreenHelpHintTunnel:UB(),WelcomeScreenCenterTunnel:UB(),FooterCenterTunnel:UB(),DefaultSidebarTriggerTunnel:UB(),DefaultSidebarTabTriggersTunnel:UB(),OverwriteConfirmDialogTunnel:UB(),TTDDialogTriggerTunnel:UB(),tunnelsJotai:odr}),[]),dZe=(A,e)=>{let t=e[0]?.type||null;for(let r of e)if(r.type!==t){t=null;break}return hW(A.activeTool.type)&&A.activeTool.type!=="image"&&t!=="image"&&t!=="frame"&&t!=="magicframe"||e.some((r)=>hW(r.type))},IZe=(A,e)=>p2(A.activeTool.type)||e.some((t)=>p2(t.type)),hZe=({appState:A,elementsMap:e,renderAction:t,app:r})=>{let i=MQA(e,A),u=!1;i.length===2&&(Yl(i[0])||Yl(i[1]))&&(u=!0);let a=!!(A.editingTextElement||A.newElement),n=Do(),o=document.documentElement.getAttribute("dir")==="rtl",s=p2(A.activeTool.type)&&!Rc(A.currentItemBackgroundColor)||i.some((E)=>p2(E.type)&&!Rc(E.backgroundColor)),l=i.length===1||u,g=!A.editingLinearElement&&i.length===1&&Nr(i[0])&&!ft(i[0]),C=!A.croppingElementId&&i.length===1&&Ri(i[0]),B=!u&&Jg(A,r);return cA("div",{className:"panelColumn",children:[N("div",{children:dZe(A,i)&&t("changeStrokeColor")}),IZe(A,i)&&N("div",{children:t("changeBackgroundColor")}),s&&t("changeFillStyle"),(NhA(A.activeTool.type)||i.some((E)=>NhA(E.type)))&&t("changeStrokeWidth"),(A.activeTool.type==="freedraw"||i.some((E)=>E.type==="freedraw"))&&t("changeStrokeShape"),(GhA(A.activeTool.type)||i.some((E)=>GhA(E.type)))&&cA(et,{children:[t("changeStrokeStyle"),t("changeSloppiness")]}),(QW(A.activeTool.type)||i.some((E)=>QW(E.type)))&&N(et,{children:t("changeRoundness")}),(UhA(A.activeTool.type)||i.some((E)=>UhA(E.type)))&&N(et,{children:t("changeArrowType")}),(A.activeTool.type==="text"||i.some(Et))&&cA(et,{children:[t("changeFontFamily"),t("changeFontSize"),(A.activeTool.type==="text"||l4e(i,e))&&t("changeTextAlign")]}),s4e(i,e)&&t("changeVerticalAlign"),(nS(A.activeTool.type)||i.some((E)=>nS(E.type)))&&N(et,{children:t("changeArrowhead")}),t("changeOpacity"),cA("fieldset",{children:[N("legend",{children:uA("labels.layers")}),cA("div",{className:"buttonList",children:[t("sendToBack"),t("sendBackward"),t("bringForward"),t("bringToFront")]})]}),B&&!u&&cA("fieldset",{children:[N("legend",{children:uA("labels.align")}),cA("div",{className:"buttonList",children:[o?cA(et,{children:[t("alignRight"),t("alignHorizontallyCentered"),t("alignLeft")]}):cA(et,{children:[t("alignLeft"),t("alignHorizontallyCentered"),t("alignRight")]}),i.length>2&&t("distributeHorizontally"),N("div",{style:{flexBasis:"100%",height:0}}),cA("div",{style:{display:"flex",flexWrap:"wrap",gap:".5rem",marginTop:"-0.5rem"},children:[t("alignTop"),t("alignVerticallyCentered"),t("alignBottom"),i.length>2&&t("distributeVertically")]})]})]}),!a&&i.length>0&&cA("fieldset",{children:[N("legend",{children:uA("labels.actions")}),cA("div",{className:"buttonList",children:[!n.editor.isMobile&&t("duplicateSelection"),!n.editor.isMobile&&t("deleteSelectedElements"),t("group"),t("ungroup"),l&&t("hyperlink"),C&&t("cropEditor"),g&&t("toggleLinearEditor")]})]})]})},QZe=({activeTool:A,appState:e,app:t,UIOptions:r})=>{let[i,u]=we(!1),a=A.type==="frame",n=A.type==="laser",o=A.type==="embeddable",{TTDDialogTriggerTunnel:s}=Xs();return cA(et,{children:[dW.map(({value:l,icon:g,key:C,numericKey:B,fillable:E},d)=>{if(r.tools?.[l]===!1)return null;let I=uA(`toolBar.${l}`),h=C&&N9(typeof C=="string"?C:C[0]),Q=h?`${h} ${uA("helpDialog.or")} ${B}`:`${B}`;return N(ci,{className:Re("Shape",{fillable:E}),type:"radio",icon:g,checked:A.type===l,name:"editor-current-shape",title:`${N9(I)} — ${Q}`,keyBindingLabel:B||h,"aria-label":N9(I),"aria-keyshortcuts":Q,"data-testid":`toolbar-${l}`,onPointerDown:({pointerType:p})=>{!e.penDetected&&p==="pen"&&t.togglePenMode(!0)},onChange:({pointerType:p})=>{e.activeTool.type!==l&&Nu("toolbar",l,"ui"),l==="image"?t.setActiveTool({type:l,insertOnCanvasDirectly:p!=="mouse"}):t.setActiveTool({type:l})}},l)}),N("div",{className:"App-toolbar__divider"}),cA(Hu,{open:i,children:[N(Hu.Trigger,{className:Re("App-toolbar__extra-tools-trigger",{"App-toolbar__extra-tools-trigger--selected":a||o||n&&!t.props.isCollaborating}),onToggle:()=>u(!i),title:uA("toolBar.extraTools"),children:Khe}),cA(Hu.Content,{onClickOutside:()=>u(!1),onSelect:()=>u(!1),className:"App-toolbar__extra-tools-dropdown",children:[N(Hu.Item,{onSelect:()=>t.setActiveTool({type:"frame"}),icon:phA,shortcut:PA.F.toLocaleUpperCase(),"data-testid":"toolbar-frame",selected:a,children:uA("toolBar.frame")}),N(Hu.Item,{onSelect:()=>t.setActiveTool({type:"embeddable"}),icon:TIe,"data-testid":"toolbar-embeddable",selected:o,children:uA("toolBar.embeddable")}),N(Hu.Item,{onSelect:()=>t.setActiveTool({type:"laser"}),icon:mhA,"data-testid":"toolbar-laser",selected:n,shortcut:PA.K.toLocaleUpperCase(),children:uA("toolBar.laser")}),N("div",{style:{margin:"6px 0",fontSize:14,fontWeight:600},children:"Generate"}),t.props.aiEnabled!==!1&&N(s.Out,{}),N(Hu.Item,{onSelect:()=>t.setOpenDialog({name:"ttd",tab:"mermaid"}),icon:fhA,"data-testid":"toolbar-embeddable",children:uA("toolBar.mermaidToExcalidraw")}),t.props.aiEnabled!==!1&&t.plugins.diagramToCode&&N(et,{children:cA(Hu.Item,{onSelect:()=>t.onMagicframeToolSelect(),icon:DhA,"data-testid":"toolbar-magicframe",children:[uA("toolBar.magicframe"),N(Hu.Item.Badge,{children:"AI"})]})})]})]})]})},ldr=({renderAction:A,zoom:e})=>N(Xc.Col,{gap:1,className:s2.ZOOM_ACTIONS,children:cA(Xc.Row,{align:"center",children:[A("zoomOut"),A("resetZoom"),A("zoomIn")]})}),gdr=({renderAction:A,className:e})=>cA("div",{className:`undo-redo-buttons ${e}`,children:[N("div",{className:"undo-button-container",children:N(tD,{label:uA("buttons.undo"),children:A("undo")})}),N("div",{className:"redo-button-container",children:cA(tD,{label:uA("buttons.redo"),children:[" ",A("redo")]})})]}),cdr=({actionManager:A,showExitZenModeBtn:e})=>N("button",{type:"button",className:Re("disable-zen-mode",{"disable-zen-mode--visible":e}),onClick:()=>A.executeAction(R3A),children:uA("buttons.exitZenMode")}),Cdr=({renderAction:A,className:e})=>N("div",{className:`finalize-button ${e}`,children:A("finalize",{size:"small"})}),Tqe=(A)=>{let e=Ee({userFn:A});return e.current.userFn=A,e.current.stableFn||(e.current.stableFn=(...t)=>e.current.userFn(...t)),e.current.stableFn},xZ=Pn(null),Bdr=()=>{let[A,e]=Oa(xZ),t=ql();return A&&A==="clearCanvas"?N(oZe,{onConfirm:()=>{t.executeAction(OL),e(null)},onCancel:()=>e(null),title:uA("clearCanvasDialog.title"),children:cA("p",{className:"clear-canvas__content",children:[" ",uA("alerts.clearReset")]})}):null},pZe={};NEA(pZe,{toggleTheme:()=>Edr});var Edr={...dZ,category:"App",label:"Toggle theme",perform:({actionManager:A})=>{A.executeAction(dZ,"commandPalette")}},fZe=at({name:"copyElementLink",label:"labels.copyElementLink",icon:lW,trackEvent:{category:"element"},perform:async(A,e,t,r)=>{let i=Jr(A,e);try{if(window.location){let u=IQA(i,e);return u?(await z9(r.props.generateLinkForSelection?r.props.generateLinkForSelection(u.id,u.type):dQA(u.id,u.type)),{appState:{toast:{message:uA("toast.elementLinkCopied"),closable:!0}},captureUpdate:be.EVENTUALLY}):{appState:e,elements:A,app:r,captureUpdate:be.EVENTUALLY}}}catch(u){console.error(u)}return{appState:e,elements:A,app:r,captureUpdate:be.EVENTUALLY}},predicate:(A,e)=>IS(Jr(A,e))}),ddr=at({name:"linkToElement",label:"labels.linkToElement",icon:khA,perform:(A,e,t,r)=>{let i=Jr(A,e);return i.length!==1||!IS(i)?{elements:A,appState:e,app:r,captureUpdate:be.EVENTUALLY}:{appState:{...e,openDialog:{name:"elementLinkSelector",sourceElementId:Jr(A,e)[0].id}},captureUpdate:be.IMMEDIATELY}},predicate:(A,e,t,r)=>{let i=Jr(A,e);return e.openDialog?.name!=="elementLinkSelector"&&i.length===1&&IS(i)},trackEvent:!1}),Idr=Pn(null),on={app:"App",export:"Export",tools:"Tools",editor:"Editor",elements:"Elements",links:"Links"},hdr=(A)=>{switch(A){case on.app:return 1;case on.export:return 2;case on.editor:return 3;case on.tools:return 4;case on.elements:return 5;case on.links:return 6;default:return 10}},BZ=({shortcut:A,className:e,children:t})=>{let r=A.replace("++","+$").split("+");return cA("div",{className:Re("shortcut",e),children:[r.map((i,u)=>N("div",{className:"shortcut-wrapper",children:N("div",{className:"shortcut-key",children:i==="$"?"+":i})},i)),N("div",{className:"shortcut-desc",children:t})]})},mZe=(A)=>!A.altKey&&A[PA.CTRL_OR_CMD]&&(A.shiftKey&&A.key.toLowerCase()===PA.P||A.key===PA.SLASH),H8i=Object.assign((A)=>{let e=b0(),t=zn();return le(()=>{let r=(i)=>{mZe(i)&&(i.preventDefault(),i.stopPropagation(),t((u)=>{let a=u.openDialog?.name==="commandPalette"?null:{name:"commandPalette"};return a&&Nu("command_palette","open","shortcut"),{openDialog:a}}))};return window.addEventListener("keydown",r,{capture:!0}),()=>window.removeEventListener("keydown",r,{capture:!0})},[t]),e.openDialog?.name!=="commandPalette"?null:N(Qdr,{...A})},{defaultItems:pZe});function Qdr({customCommandPaletteItems:A}){let e=qd(),t=b0(),r=zn(),i=$L(),u=ql(),[a,n]=Oa(Idr),[o,s]=we(null),l=Ee(null),g=DZ({uiAppState:t,customCommandPaletteItems:A,appProps:i});le(()=>{let{uiAppState:D,customCommandPaletteItems:w,appProps:b}=g,F=(k)=>{let T="";return k.label&&(typeof k.label=="function"?T=uA(k.label(e.scene.getNonDeletedElements(),D,e)):T=uA(k.label)),T},v=(k)=>typeof k.icon=="function"?k.icon(D,e.scene.getNonDeletedElements()):k.icon,S=[],x=(k,T,R)=>{let L={label:F(k),icon:v(k),category:T,shortcut:us(k.name),keywords:k.keywords,predicate:k.predicate,viewMode:k.viewMode,perform:()=>{u.executeAction(k,"commandPalette")}};return R?R(L,k):L};if(D&&e.scene&&u){let k=[u.actions.group,u.actions.ungroup,u.actions.cut,u.actions.copy,u.actions.deleteSelectedElements,u.actions.wrapSelectionInFrame,u.actions.copyStyles,u.actions.pasteStyles,u.actions.bringToFront,u.actions.bringForward,u.actions.sendBackward,u.actions.sendToBack,u.actions.alignTop,u.actions.alignBottom,u.actions.alignLeft,u.actions.alignRight,u.actions.alignVerticallyCentered,u.actions.alignHorizontallyCentered,u.actions.duplicateSelection,u.actions.flipHorizontal,u.actions.flipVertical,u.actions.zoomToFitSelection,u.actions.zoomToFitSelectionInViewport,u.actions.increaseFontSize,u.actions.decreaseFontSize,u.actions.toggleLinearEditor,u.actions.cropEditor,rZe,fZe,ddr].map((Y)=>x(Y,on.elements,(H,J)=>({...H,predicate:J.predicate?J.predicate:(K,O,_,z)=>Jr(K,O).length>0}))),T=[u.actions.toggleHandTool,u.actions.setFrameAsActiveTool].map((Y)=>x(Y,on.tools)),R=[u.actions.undo,u.actions.redo,u.actions.zoomIn,u.actions.zoomOut,u.actions.resetZoom,u.actions.zoomToFit,u.actions.zenMode,u.actions.viewMode,u.actions.gridMode,u.actions.objectsSnapMode,u.actions.toggleShortcuts,u.actions.selectAll,u.actions.toggleElementLock,u.actions.unlockAllElements,u.actions.stats].map((Y)=>x(Y,on.editor)),L=[u.actions.saveToActiveFile,u.actions.saveFileToDisk,u.actions.copyAsPng,u.actions.copyAsSvg].map((Y)=>x(Y,on.export));S=[...k,...R,{label:F(OL),icon:v(OL),shortcut:us(OL.name),category:on.editor,keywords:["delete","destroy"],viewMode:!1,perform:()=>{TB.set(xZ,"clearCanvas")}},{label:uA("buttons.exportImage"),category:on.export,icon:AhA,shortcut:us("imageExport"),keywords:["export","image","png","jpeg","svg","clipboard","picture"],perform:()=>{r({openDialog:{name:"imageExport"}})}},...L];let M=[{label:uA("toolBar.library"),category:on.app,icon:eW,viewMode:!1,perform:()=>{D.openSidebar?r({openSidebar:null}):r({openSidebar:{name:Kc.name,tab:Kc.defaultTab}})}},{label:uA("search.title"),category:on.app,icon:np,viewMode:!0,perform:()=>{u.executeAction(DZe)}},{label:uA("labels.changeStroke"),keywords:["color","outline"],category:on.elements,icon:sW,viewMode:!1,predicate:(Y,H)=>{let J=Jr(Y,H);return J.length>0&&dZe(H,J)},perform:()=>{r((Y)=>({openMenu:Y.openMenu==="shape"?null:"shape",openPopup:"elementStroke"}))}},{label:uA("labels.changeBackground"),keywords:["color","fill"],icon:sW,category:on.elements,viewMode:!1,predicate:(Y,H)=>{let J=Jr(Y,H);return J.length>0&&IZe(H,J)},perform:()=>{r((Y)=>({openMenu:Y.openMenu==="shape"?null:"shape",openPopup:"elementBackground"}))}},{label:uA("labels.canvasBackground"),keywords:["color"],icon:sW,category:on.editor,viewMode:!1,perform:()=>{r((Y)=>({openMenu:Y.openMenu==="canvas"?null:"canvas",openPopup:"canvasBackground"}))}},...dW.reduce((Y,H)=>{let{value:J,icon:K,key:O,numericKey:_}=H;if(b.UIOptions.tools?.[J]===!1)return Y;let z=O&&N9(typeof O=="string"?O:O[0])||_,j={label:uA(`toolBar.${J}`),category:on.tools,shortcut:z,icon:K,keywords:["toolbar"],viewMode:!1,perform:({event:q})=>{J==="image"?e.setActiveTool({type:J,insertOnCanvasDirectly:q.type==="keydown"}):e.setActiveTool({type:J})}};return Y.push(j),Y},[]),...T,{label:uA("toolBar.lock"),category:on.tools,icon:D.activeTool.locked?tW:tS,shortcut:PA.Q.toLocaleUpperCase(),viewMode:!1,perform:()=>{e.toggleLock()}},{label:`${uA("labels.textToDiagram")}...`,category:on.tools,icon:_he,viewMode:!1,predicate:b.aiEnabled,perform:()=>{r((Y)=>({...Y,openDialog:{name:"ttd",tab:"text-to-diagram"}}))}},{label:`${uA("toolBar.mermaidToExcalidraw")}...`,category:on.tools,icon:fhA,viewMode:!1,predicate:b.aiEnabled,perform:()=>{r((Y)=>({...Y,openDialog:{name:"ttd",tab:"mermaid"}}))}}],U=[...S,...M,...w||[]].map((Y)=>({...Y,icon:Y.icon||yhA,order:Y.order??hdr(Y.category),haystack:`${Mqe(Y.label.toLocaleLowerCase())} ${Y.keywords?.join(" ")||""}`}));s(U),n(U.find((Y)=>Y.label===a?.label)??null)}},[g,e,u,s,a?.label,n,r]);let[C,B]=we(""),[E,d]=we(null),[I,h]=we({}),Q=(D)=>{r({openDialog:null},D),B("")},p=(D,w)=>{t.openDialog?.name==="commandPalette"&&(w.stopPropagation(),w.preventDefault(),document.body.classList.add("excalidraw-animations-disabled"),Q(()=>{D.perform({actionManager:u,event:w}),n(D),requestAnimationFrame(()=>{document.body.classList.remove("excalidraw-animations-disabled")})}))},m=Tqe((D)=>D.viewMode===!1&&t.viewModeEnabled?!1:typeof D.predicate=="function"?D.predicate(e.scene.getNonDeletedElements(),t,i,e):D.predicate===void 0||D.predicate),f=Tqe((D)=>{let w=Ap(D.target)||mZe(D)||D.key===PA.ESCAPE;if(w&&D.key!==PA.ARROW_UP&&D.key!==PA.ARROW_DOWN&&D.key!==PA.ENTER)return;let b=Object.values(I).flat(),F=a&&!C&&m(a);if(D.key===PA.ARROW_UP){D.preventDefault();let v=b.findIndex((k)=>k.label===E?.label);if(F){if(v===0){d(a);return}if(E===a){let k=b[b.length-1];k&&d(k);return}}let S;v===-1?S=b.length-1:S=v===0?b.length-1:(v-1)%b.length;let x=b[S];x&&d(x);return}if(D.key===PA.ARROW_DOWN){D.preventDefault();let v=b.findIndex((k)=>k.label===E?.label);if(F){if(!E||v===b.length-1){d(a);return}if(E===a){let k=b[0];k&&d(k);return}}let S=(v+1)%b.length,x=b[S];x&&d(x);return}if(D.key===PA.ENTER&&E&&setTimeout(()=>{p(E,D)}),!w){if(D.stopPropagation(),/^[a-zA-Z0-9]$/.test(D.key)){l?.current?.focus();return}D.preventDefault()}});return le(()=>(window.addEventListener("keydown",f,{capture:!0}),()=>window.removeEventListener("keydown",f,{capture:!0})),[f]),le(()=>{if(!o)return;let D=(v)=>{let S={};for(let x of v)S[x.category]?S[x.category].push(x):S[x.category]=[x];return S},w=o.filter(m).sort((v,S)=>v.order-S.order),b=!C&&a&&m(a);if(!C){h(D(b?w.filter((v)=>v.label!==a?.label):w)),d(b?a:w[0]||null);return}let F=Mqe(C.toLocaleLowerCase().replace(/[<>_| -]/g,""));w=BZe.default.filter(F,w,{extract:(v)=>v.haystack}).sort((v,S)=>S.score-v.score).map((v)=>v.original),h(D(w)),d(w[0]??null)},[C,o,m,a]),cA(HB,{onCloseRequest:()=>Q(),closeOnClickOutside:!0,title:!1,size:720,autofocus:!0,className:"command-palette-dialog",children:[N(AmA,{value:C,placeholder:uA("commandPalette.search.placeholder"),onChange:(D)=>{B(D)},selectOnRender:!0,ref:l}),!e.device.viewport.isMobile&&cA("div",{className:"shortcuts-wrapper",children:[N(BZ,{shortcut:"↑↓",children:uA("commandPalette.shortcuts.select")}),N(BZ,{shortcut:"↵",children:uA("commandPalette.shortcuts.confirm")}),N(BZ,{shortcut:Fe("Esc"),children:uA("commandPalette.shortcuts.close")})]}),cA("div",{className:"commands",children:[a&&!C&&cA("div",{className:"command-category",children:[cA("div",{className:"command-category-title",children:[uA("commandPalette.recents"),N("div",{className:"icon",style:{marginLeft:"6px"},children:Whe})]}),N(Yqe,{command:a,isSelected:a.label===E?.label,onClick:(D)=>p(a,D),disabled:!m(a),onMouseMove:()=>d(a),showShortcut:!e.device.viewport.isMobile,appState:t})]}),Object.keys(I).length>0?Object.keys(I).map((D,w)=>cA("div",{className:"command-category",children:[N("div",{className:"command-category-title",children:D}),I[D].map((b)=>N(Yqe,{command:b,isSelected:b.label===E?.label,onClick:(F)=>p(b,F),onMouseMove:()=>d(b),showShortcut:!e.device.viewport.isMobile,appState:t},b.label))]},D)):o?cA("div",{className:"no-match",children:[N("div",{className:"icon",children:np})," ",uA("commandPalette.search.noMatch")]}):null]})]})}var Yqe=({command:A,isSelected:e,disabled:t,onMouseMove:r,onClick:i,showShortcut:u,appState:a})=>{let n=()=>{};return cA("div",{className:Re("command-item",{"item-selected":e,"item-disabled":t}),ref:(o)=>{e&&!t&&o?.scrollIntoView?.({block:"nearest"})},onClick:t?n:i,onMouseMove:t?n:r,title:t?uA("commandPalette.itemNotAvailable"):"",children:[cA("div",{className:"name",children:[A.icon&&N(wZ,{icon:typeof A.icon=="function"?A.icon(a):A.icon}),A.label]}),u&&A.shortcut&&N(BZ,{shortcut:A.shortcut})]})},pdr=at({name:"toggleLinearEditor",category:on.elements,label:(A,e,t)=>t.scene.getSelectedElements({selectedElementIds:e.selectedElementIds})[0]?.type==="arrow"?"labels.lineEditor.editArrow":"labels.lineEditor.edit",keywords:["line"],trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return!!(!e.editingLinearElement&&i.length===1&&Nr(i[0])&&!ft(i[0]))},perform(A,e,t,r){let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0})[0],u=e.editingLinearElement?.elementId===i.id?null:new ht(i);return{appState:{...e,editingLinearElement:u},captureUpdate:be.IMMEDIATELY}},PanelComponent:({appState:A,updateData:e,app:t})=>{let r=t.scene.getSelectedElements({selectedElementIds:A.selectedElementIds})[0],i=uA(r.type==="arrow"?"labels.lineEditor.editArrow":"labels.lineEditor.edit");return N(ci,{type:"button",icon:aQe,title:i,"aria-label":i,onClick:()=>e(null)})}}),DZe=at({name:"searchMenu",icon:np,keywords:["search","find"],label:"search.title",viewMode:!0,trackEvent:{category:"search_menu",action:"toggle",predicate:(A)=>A.gridModeEnabled},perform(A,e,t,r){if(e.openSidebar?.name===Kc.name&&e.openSidebar.tab===c2){let i=r.excalidrawContainerValue.container?.querySelector(`.${s2.SEARCH_MENU_INPUT_WRAPPER} input`);return i?.matches(":focus")?{appState:{...e,openSidebar:null},captureUpdate:be.EVENTUALLY}:(i?.focus(),i?.select(),!1)}return{appState:{...e,openSidebar:{name:Kc.name,tab:c2},openDialog:null},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.gridModeEnabled,predicate:(A,e,t)=>t.gridModeEnabled===void 0,keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.F}),fdr=at({name:"cropEditor",label:"helpDialog.cropStart",icon:vhA,viewMode:!0,trackEvent:{category:"menu"},keywords:["image","crop"],perform(A,e,t,r){let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0})[0];return{appState:{...e,isCropping:!1,croppingElementId:i.id},captureUpdate:be.IMMEDIATELY}},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return!!(!e.croppingElementId&&i.length===1&&Ri(i[0]))},PanelComponent:({appState:A,updateData:e,app:t})=>{let r=uA("helpDialog.cropStart");return N(ci,{type:"button",icon:vhA,title:r,"aria-label":r,onClick:()=>e(null)})}}),IZ=class{constructor(A=!0,e=!0){this.isUndoStackEmpty=A,this.isRedoStackEmpty=e}},Hqe=class A{constructor(){UA(this,"onHistoryChangedEmitter",new fB),UA(this,"undoStack",[]),UA(this,"redoStack",[])}get isUndoStackEmpty(){return this.undoStack.length===0}get isRedoStackEmpty(){return this.redoStack.length===0}clear(){this.undoStack.length=0,this.redoStack.length=0}record(e,t){let r=mdr.create(t,e);r.isEmpty()||(this.undoStack.push(r.inverse()),r.elementsChange.isEmpty()||(this.redoStack.length=0),this.onHistoryChangedEmitter.trigger(new IZ(this.isUndoStackEmpty,this.isRedoStackEmpty)))}undo(e,t,r){return this.perform(e,t,r,()=>A.pop(this.undoStack),(i)=>A.push(this.redoStack,i,e))}redo(e,t,r){return this.perform(e,t,r,()=>A.pop(this.redoStack),(i)=>A.push(this.undoStack,i,e))}perform(e,t,r,i,u){try{let a=i();if(a===null)return;let n=e,o=t,s=!1;for(;a;){try{[n,o,s]=a.applyTo(n,o,r)}finally{u(a)}if(s)break;a=i()}return[n,o]}finally{this.onHistoryChangedEmitter.trigger(new IZ(this.isUndoStackEmpty,this.isRedoStackEmpty))}}static pop(e){if(!e.length)return null;let t=e.pop();return t!==void 0?t:null}static push(e,t,r){let i=t.inverse().applyLatestChanges(r);return e.push(i)}},mdr=class A{constructor(e,t){this.appStateChange=e,this.elementsChange=t}static create(e,t){return new A(e,t)}inverse(){return new A(this.appStateChange.inverse(),this.elementsChange.inverse())}applyTo(e,t,r){let[i,u]=this.elementsChange.applyTo(e,r.elements),[a,n]=this.appStateChange.applyTo(t,i);return[i,a,u||n]}applyLatestChanges(e){let t=this.elementsChange.applyLatestChanges(e);return A.create(this.appStateChange,t)}isEmpty(){return this.appStateChange.isEmpty()&&this.elementsChange.isEmpty()}},yZe=(A,e)=>{let[t,r]=we(e);return le(()=>{let i=A.on((u)=>{r(u)});return()=>{i()}},[A]),t},wZe=(A,e,t)=>{if(!e.multiElement&&!e.resizingElement&&!e.editingTextElement&&!e.newElement&&!e.selectedElementsAreBeingDragged&&!e.selectionElement&&!A.flowChartCreator.isCreatingChart){let r=t();if(!r)return{captureUpdate:be.EVENTUALLY};let[i,u]=r,a=Array.from(i.values());return{appState:u,elements:a,captureUpdate:be.NEVER}}return{captureUpdate:be.EVENTUALLY}},Ddr=(A,e)=>({name:"undo",label:"buttons.undo",icon:ehA,trackEvent:{category:"history"},viewMode:!1,perform:(t,r,i,u)=>wZe(u,r,()=>A.undo(ar(t),r,e.snapshot)),keyTest:(t)=>t[PA.CTRL_OR_CMD]&&BW(t,PA.Z)&&!t.shiftKey,PanelComponent:({updateData:t,data:r})=>{let{isUndoStackEmpty:i}=yZe(A.onHistoryChangedEmitter,new IZ(A.isUndoStackEmpty,A.isRedoStackEmpty));return N(ci,{type:"button",icon:ehA,"aria-label":uA("buttons.undo"),onClick:t,size:r?.size||"medium",disabled:i,"data-testid":"button-undo"})}}),ydr=(A,e)=>({name:"redo",label:"buttons.redo",icon:thA,trackEvent:{category:"history"},viewMode:!1,perform:(t,r,i,u)=>wZe(u,r,()=>A.redo(ar(t),r,e.snapshot)),keyTest:(t)=>t[PA.CTRL_OR_CMD]&&t.shiftKey&&BW(t,PA.Z)||fIA&&t.ctrlKey&&!t.shiftKey&&BW(t,PA.Y),PanelComponent:({updateData:t,data:r})=>{let{isRedoStackEmpty:i}=yZe(A.onHistoryChangedEmitter,new IZ(A.isUndoStackEmpty,A.isRedoStackEmpty));return N(ci,{type:"button",icon:thA,"aria-label":uA("buttons.redo"),onClick:t,size:r?.size||"medium",disabled:i,"data-testid":"button-redo"})}}),E3A=(A,e,t,r,i,u)=>{if(A.trackEvent)try{typeof A.trackEvent=="object"&&(!A.trackEvent.predicate||A.trackEvent.predicate(t,r,u))&&Nu(A.trackEvent.category,A.trackEvent.action||A.name,`${e} (${i.device.editor.isMobile?"mobile":"desktop"})`)}catch(a){console.error("error while logging action:",a)}},wdr=class{constructor(A,e,t,r){UA(this,"actions",{}),UA(this,"updater"),UA(this,"getAppState"),UA(this,"getElementsIncludingDeleted"),UA(this,"app"),UA(this,"renderAction",(i,u)=>{let a=this.app.props.UIOptions.canvasActions;if(this.actions[i]&&"PanelComponent"in this.actions[i]&&(!(i in a)||a[i])){let n=this.actions[i],o=n.PanelComponent;o.displayName="PanelComponent";let s=this.getElementsIncludingDeleted(),l=this.getAppState(),g=(C)=>{E3A(n,"ui",l,s,this.app,C),this.updater(n.perform(this.getElementsIncludingDeleted(),this.getAppState(),C,this.app))};return N(o,{elements:this.getElementsIncludingDeleted(),appState:this.getAppState(),updateData:g,appProps:this.app.props,app:this.app,data:u})}return null}),UA(this,"isActionEnabled",(i)=>{let u=this.getElementsIncludingDeleted(),a=this.getAppState();return!i.predicate||i.predicate(u,a,this.app.props,this.app)}),this.updater=(i)=>{if(U9(i))i.then((u)=>A(u));else return A(i)},this.getAppState=e,this.getElementsIncludingDeleted=t,this.app=r}registerAction(A){this.actions[A.name]=A}registerAll(A){A.forEach((e)=>this.registerAction(e))}handleKeyDown(A){let e=this.app.props.UIOptions.canvasActions,t=Object.values(this.actions).sort((n,o)=>(o.keyPriority||0)-(n.keyPriority||0)).filter((n)=>(n.name in e?e[n.name]:!0)&&n.keyTest&&n.keyTest(A,this.getAppState(),this.getElementsIncludingDeleted(),this.app));if(t.length!==1)return t.length>1&&console.warn("Canceling as multiple actions match this shortcut",t),!1;let r=t[0];if(this.getAppState().viewModeEnabled&&r.viewMode!==!0)return!1;let i=this.getElementsIncludingDeleted(),u=this.getAppState(),a=null;return E3A(r,"keyboard",u,i,this.app,null),A.preventDefault(),A.stopPropagation(),this.updater(t[0].perform(i,u,a,this.app)),!0}executeAction(A,e="api",t=null){let r=this.getElementsIncludingDeleted(),i=this.getAppState();E3A(A,e,i,r,this.app,t),this.updater(A.perform(r,i,t,this.app))}},Kqe=(A)=>{let e=Array.from(A.values());return{x:Oqe(e,(t)=>t.x)/e.length,y:Oqe(e,(t)=>t.y)/e.length}},Jqe=([A,e])=>Math.hypot(A.x-e.x,A.y-e.y),Oqe=(A,e)=>A.reduce((t,r)=>t+e(r),0),bdr=({children:A,left:e,top:t,onCloseRequest:r,fitInViewport:i=!1,offsetLeft:u=0,offsetTop:a=0,viewportWidth:n=window.innerWidth,viewportHeight:o=window.innerHeight})=>{let s=Ee(null);le(()=>{let g=s.current;if(!g)return;g.contains(document.activeElement)||g.focus();let C=(B)=>{if(B.key===PA.TAB){let E=j_(g),{activeElement:d}=document,I=E.findIndex((h)=>h===d);d===g?(B.shiftKey?E[E.length-1]?.focus():E[0].focus(),B.preventDefault(),B.stopImmediatePropagation()):I===0&&B.shiftKey?(E[E.length-1]?.focus(),B.preventDefault(),B.stopImmediatePropagation()):I===E.length-1&&!B.shiftKey&&(E[0]?.focus(),B.preventDefault(),B.stopImmediatePropagation())}};return g.addEventListener("keydown",C),()=>g.removeEventListener("keydown",C)},[]);let l=Ee(null);return Ii(()=>{if(i&&s.current&&t!=null&&e!=null){let g=s.current,{width:C,height:B}=g.getBoundingClientRect();if(l.current?.top===t&&l.current?.left===e)return;l.current={top:t,left:e},C>=n?(g.style.width=`${n}px`,g.style.left="0px",g.style.overflowX="scroll"):e+C-u>n?g.style.left=`${n-C-10}px`:g.style.left=`${e}px`,B>=o?(g.style.height=`${o-20}px`,g.style.top="10px",g.style.overflowY="scroll"):t+B-a>o?g.style.top=`${o-B}px`:g.style.top=`${t}px`}},[t,e,i,n,o,u,a]),le(()=>{if(r){let g=(C)=>{s.current?.contains(C.target)||N5(()=>r(C))};return document.addEventListener("pointerdown",g,!1),()=>document.removeEventListener("pointerdown",g,!1)}},[r]),N("div",{className:"popover",ref:s,tabIndex:-1,children:A})},mo="separator",vdr=gi(({actionManager:A,items:e,top:t,left:r,onClose:i})=>{let u=AR(),a=SZ(),n=e.reduce((o,s)=>(s&&(s===mo||!s.predicate||s.predicate(a,u,A.app.props,A.app))&&o.push(s),o),[]);return N(bdr,{onCloseRequest:()=>{i()},top:t,left:r,fitInViewport:!0,offsetLeft:u.offsetLeft,offsetTop:u.offsetTop,viewportWidth:u.width,viewportHeight:u.height,children:N("ul",{className:"context-menu",onContextMenu:(o)=>o.preventDefault(),children:n.map((o,s)=>{if(o===mo)return!n[s-1]||n[s-1]===mo?null:N("hr",{className:"context-menu-item-separator"},s);let l=o.name,g="";return o.label&&(typeof o.label=="function"?g=uA(o.label(a,u,A.app)):g=uA(o.label)),N("li",{"data-testid":l,onClick:()=>{i(()=>{A.executeAction(o,"contextMenu")})},children:cA("button",{type:"button",className:Re("context-menu-item",{dangerous:l==="deleteSelectedElements",checkmark:o.checked?.(u)}),children:[N("div",{className:"context-menu-item__label",children:g}),N("kbd",{className:"context-menu-item__shortcut",children:l?us(l):""})]})},s)})})})}),kdr=({children:A,onClose:e})=>{let[t,r]=we(!!A),{container:i}=zd(),u=lt(()=>{r(!1),e&&e(),i?.focus()},[e,i]);return N(et,{children:t&&N(HB,{size:"small",onCloseRequest:u,title:uA("errorDialog.title"),children:N("div",{style:{whiteSpace:"pre-wrap"},children:A})})})},bZe=function({onChange:A,value:e,choices:t,name:r}){return N("div",{className:"RadioGroup",children:t.map((i)=>cA("div",{className:Re("RadioGroup__choice",{active:i.value===e}),title:i.ariaLabel,children:[N("input",{name:r,type:"radio",checked:i.value===e,onChange:()=>A(i.value),"aria-label":i.ariaLabel}),i.label]},String(i.value)))})},nZ=({title:A,name:e,checked:t,onChange:r,disabled:i=!1})=>N("div",{className:Re("Switch",{toggled:t,disabled:i}),children:N("input",{name:e,id:e,title:A,type:"checkbox",checked:t,disabled:i,onChange:()=>r(!t),onKeyDown:(u)=>{u.key===" "&&r(!t)}})}),_L=Dt(({children:A,icon:e,onClick:t,label:r,variant:i="filled",color:u="primary",size:a="medium",fullWidth:n,className:o,status:s},l)=>{let[g,C]=we(!1),B=async(d)=>{let I=t?.(d);if(U9(I)){let h=window.setTimeout(()=>{C(!0)},50);try{await I}catch(Q){if(Q instanceof aS)console.warn(Q);else throw Q}finally{clearTimeout(h),C(!1)}}},E=g?"loading":s;return u=E==="success"?"success":u,N("button",{className:Re("ExcButton",`ExcButton--color-${u}`,`ExcButton--variant-${i}`,`ExcButton--size-${a}`,`ExcButton--status-${E}`,{"ExcButton--fullWidth":n},o),onClick:B,type:"button","aria-label":r,ref:l,disabled:E==="loading"||E==="success",children:cA("div",{className:"ExcButton__contents",children:[E==="loading"?N(tQ,{className:"ExcButton__statusIcon"}):E==="success"&&N("div",{className:"ExcButton__statusIcon",children:The}),e&&N("div",{className:"ExcButton__icon","aria-hidden":!0,children:e}),i!=="icon"&&(A??r)]})})}),Fdr=2000,xdr=()=>{let[A,e]=we(null),t=Ee(0),r=()=>{clearTimeout(t.current),e("success"),t.current=window.setTimeout(()=>{e(null)},Fdr)},i=lt(()=>{e(null)},[]);return{copyStatus:A,resetCopyStatus:i,onCopy:r}},Sdr="filter"in document.createElement("canvas").getContext("2d"),Ldr=()=>cA("div",{children:[N("h3",{children:uA("canvasError.cannotShowPreview")}),N("p",{children:N("span",{children:uA("canvasError.canvasTooBig")})}),cA("em",{children:["(",uA("canvasError.canvasTooBigTip"),")"]})]}),Rdr=({appStateSnapshot:A,elementsSnapshot:e,files:t,actionManager:r,onExportImage:i,name:u})=>{let a=yn(e,A),[n,o]=we(u),[s,l]=we(a),[g,C]=we(A.exportBackground),[B,E]=we(A.exportWithDarkMode),[d,I]=we(A.exportEmbedScene),[h,Q]=we(A.exportScale),p=Ee(null),[m,f]=we(null),{onCopy:D,copyStatus:w,resetCopyStatus:b}=xdr();le(()=>{b()},[n,g,B,h,d,b]);let{exportedElements:F,exportingFrame:v}=vZ(e,A,s);return le(()=>{let S=p.current;if(!S)return;let{offsetWidth:x,offsetHeight:k}=S;x&&qW({elements:F,appState:{...A,name:n,exportBackground:g,exportWithDarkMode:B,exportScale:h,exportEmbedScene:d},files:t,exportPadding:g2,maxWidthOrHeight:Math.max(x,k),exportingFrame:v}).then((T)=>(f(null),$9(T).then(()=>{S.replaceChildren(T)}).catch((R)=>{throw R.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(uA("canvasError.canvasTooBig")):R}))).catch((T)=>{console.error(T),f(T)})},[A,t,F,v,n,g,B,h,d]),cA("div",{className:"ImageExportModal",children:[N("h3",{children:uA("imageExportDialog.header")}),cA("div",{className:"ImageExportModal__preview",children:[N("div",{className:"ImageExportModal__preview__canvas",ref:p,children:m&&N(Ldr,{})}),N("div",{className:"ImageExportModal__preview__filename",children:!Rh&&N("input",{type:"text",className:"TextInput",value:n,style:{width:"30ch"},onChange:(S)=>{o(S.target.value),r.executeAction(bBr,"ui",S.target.value)}})})]}),cA("div",{className:"ImageExportModal__settings",children:[N("h3",{children:uA("imageExportDialog.header")}),a&&N(UL,{label:uA("imageExportDialog.label.onlySelected"),name:"exportOnlySelected",children:N(nZ,{name:"exportOnlySelected",checked:s,onChange:(S)=>{l(S)}})}),N(UL,{label:uA("imageExportDialog.label.withBackground"),name:"exportBackgroundSwitch",children:N(nZ,{name:"exportBackgroundSwitch",checked:g,onChange:(S)=>{C(S),r.executeAction(kBr,"ui",S)}})}),Sdr&&N(UL,{label:uA("imageExportDialog.label.darkMode"),name:"exportDarkModeSwitch",children:N(nZ,{name:"exportDarkModeSwitch",checked:B,onChange:(S)=>{E(S),r.executeAction(FBr,"ui",S)}})}),N(UL,{label:uA("imageExportDialog.label.embedScene"),tooltip:uA("imageExportDialog.tooltip.embedScene"),name:"exportEmbedSwitch",children:N(nZ,{name:"exportEmbedSwitch",checked:d,onChange:(S)=>{I(S),r.executeAction(zze,"ui",S)}})}),N(UL,{label:uA("imageExportDialog.label.scale"),name:"exportScale",children:N(bZe,{name:"exportScale",value:h,onChange:(S)=>{Q(S),r.executeAction(vBr,"ui",S)},choices:z_.map((S)=>({value:S,label:`${S}×`}))})}),cA("div",{className:"ImageExportModal__settings__buttons",children:[N(_L,{className:"ImageExportModal__settings__buttons__button",label:uA("imageExportDialog.title.exportToPng"),onClick:()=>i(O_.png,F,{exportingFrame:v}),icon:QhA,children:uA("imageExportDialog.button.exportToPng")}),N(_L,{className:"ImageExportModal__settings__buttons__button",label:uA("imageExportDialog.title.exportToSvg"),onClick:()=>i(O_.svg,F,{exportingFrame:v}),icon:QhA,children:uA("imageExportDialog.button.exportToSvg")}),(WW||x9)&&N(_L,{className:"ImageExportModal__settings__buttons__button",label:uA("imageExportDialog.title.copyPngToClipboard"),status:w,onClick:async()=>{await i(O_.clipboard,F,{exportingFrame:v}),D()},icon:lW,children:uA("imageExportDialog.button.copyPngToClipboard")})]})]})]})},UL=({label:A,children:e,tooltip:t,name:r})=>cA("div",{className:"ImageExportModal__settings__setting",title:A,children:[cA("label",{htmlFor:r,className:"ImageExportModal__settings__setting__label",children:[A,t&&N(tD,{label:t,long:!0,children:Mhe})]}),N("div",{className:"ImageExportModal__settings__setting__content",children:e})]}),Ndr=({elements:A,appState:e,files:t,actionManager:r,onExportImage:i,onCloseRequest:u,name:a})=>{let[{appStateSnapshot:n,elementsSnapshot:o}]=we(()=>({appStateSnapshot:vd(e),elementsSnapshot:vd(A)}));return N(HB,{onCloseRequest:u,size:"wide",title:!1,children:N(Rdr,{elementsSnapshot:o,appStateSnapshot:n,files:t,actionManager:r,onExportImage:i,name:a})})},vZe=({children:A,side:e,className:t})=>N("div",{className:Re("FixedSideContainer",`FixedSideContainer_side_${e}`,t),children:A}),Z5=100,V5=100,Pqe=(A)=>{switch(A){case PA.ARROW_UP:return"up";case PA.ARROW_DOWN:return"down";case PA.ARROW_RIGHT:return"right";case PA.ARROW_LEFT:return"left";default:return"right"}},kZe=(A,e,t,r)=>{let i=[...t.values()].reduce((u,a)=>{let n;if(ft(a)&&(n=a[A==="predecessors"?"startBinding":"endBinding"])&&a[A==="predecessors"?"endBinding":"startBinding"]?.elementId===e.id){let o=t.get(n.elementId);if(!o)return u;fn(Yc(o),"not an ExcalidrawBindableElement");let s=A==="predecessors"?a.points[a.points.length-1]:[0,0],l=MhA(e,iB(e),[s[0]+a.x,s[1]+a.y]);u.push({relative:o,heading:l})}return u},[]);switch(r){case"up":return i.filter((u)=>va(u.heading,Ks)).map((u)=>u.relative);case"down":return i.filter((u)=>va(u.heading,Io)).map((u)=>u.relative);case"right":return i.filter((u)=>va(u.heading,wa)).map((u)=>u.relative);case"left":return i.filter((u)=>va(u.heading,Hs)).map((u)=>u.relative)}},M3A=(A,e,t)=>kZe("successors",A,e,t),T3A=(A,e,t)=>kZe("predecessors",A,e,t),Gdr=(A,e,t)=>{let r=V5+A.width;if(t==="up"||t==="down"){let n=Z5+A.height,o=A.x,s=A.x+A.width;if(e.every((l)=>l.x+l.width<o||l.x>s))return{x:0,y:n*(t==="up"?-1:1)}}else if(t==="right"||t==="left"){let n=A.y,o=A.y+A.height;if(e.every((s)=>s.y+s.height<n||s.y>o))return{x:(V5+A.width)*(t==="left"?-1:1),y:0}}if(t==="up"||t==="down"){let n=Z5+A.height,o=(e.length,n),s=e.length===0?0:(e.length+1)%2===0?(e.length+1)/2*r:e.length/2*r*-1;return t==="up"?{x:s,y:o*-1}:{x:s,y:o}}let i=Z5+A.height,u=(e.length,V5+A.width),a=e.length===0?0:(e.length+1)%2===0?(e.length+1)/2*i:e.length/2*i*-1;return t==="left"?{x:u*-1,y:a}:{x:u,y:a}},Udr=(A,e,t,r)=>{let i=M3A(A,e,r),u=T3A(A,e,r),a=Gdr(A,[...i,...u],r),n=pB({type:A.type,x:A.x+a.x,y:A.y+a.y,width:A.width,height:A.height,roundness:A.roundness,roughness:A.roughness,backgroundColor:A.backgroundColor,strokeColor:A.strokeColor,strokeWidth:A.strokeWidth,opacity:A.opacity,fillStyle:A.fillStyle,strokeStyle:A.strokeStyle});fn(AS(n),"not an ExcalidrawFlowchartNodeElement");let o=FZe(A,n,e,r,t);return{nextNode:n,bindingArrow:o}},Mdr=(A,e,t,r,i)=>{let u=[];for(let a=0;a<i;a++){let n,o;if(r==="left"||r==="right"){let g=Z5*(i-1)+i*A.height,C=A.y+A.height/2-g/2,B=V5+A.width;r==="left"&&(B*=-1),n=A.x+B;let E=(Z5+A.height)*a;o=C+E}else{let g=V5*(i-1)+i*A.width,C=A.x+A.width/2-g/2,B=Z5+A.height;r==="up"&&(B*=-1),o=A.y+B;let E=(V5+A.width)*a;n=C+E}let s=pB({type:A.type,x:n,y:o,width:A.width,height:A.height,roundness:A.roundness,roughness:A.roughness,backgroundColor:A.backgroundColor,strokeColor:A.strokeColor,strokeWidth:A.strokeWidth,opacity:A.opacity,fillStyle:A.fillStyle,strokeStyle:A.strokeStyle});fn(AS(s),"not an ExcalidrawFlowchartNodeElement");let l=FZe(A,s,e,r,t);u.push(s),u.push(l)}return u},FZe=(A,e,t,r,i)=>{let u,a;switch(r){case"up":{u=A.x+A.width/2,a=A.y-6;break}case"down":{u=A.x+A.width/2,a=A.y+A.height+6;break}case"right":{u=A.x+A.width+6,a=A.y+A.height/2;break}case"left":{u=A.x-6,a=A.y+A.height/2;break}}let n,o;switch(r){case"up":{n=e.x+e.width/2-u,o=e.y+e.height-a+6;break}case"down":{n=e.x+e.width/2-u,o=e.y-a-6;break}case"right":{n=e.x-u-6,o=e.y-a+e.height/2;break}case"left":{n=e.x+e.width-u+6,o=e.y-a+e.height/2;break}}let s=RW({type:"arrow",x:u,y:a,startArrowhead:null,endArrowhead:i.currentItemEndArrowhead,strokeColor:A.strokeColor,strokeStyle:A.strokeStyle,strokeWidth:A.strokeWidth,opacity:A.opacity,roughness:A.roughness,points:[X(0,0),X(n,o)],elbowed:!0});lB(s,A,"start",t),lB(s,e,"end",t);let l=new Map;l.set(A.id,A),l.set(e.id,e),l.set(s.id,s),ht.movePoints(s,[{index:1,point:s.points[1]}]);let g=JW(s,Sg(new Map([...t.entries(),[A.id,A],[e.id,e],[s.id,s]])),{points:s.points});return{...s,...g}},Tdr=class{constructor(){UA(this,"isExploring",!1),UA(this,"sameLevelNodes",[]),UA(this,"sameLevelIndex",0),UA(this,"direction",null),UA(this,"visitedNodes",new Set)}clear(){this.isExploring=!1,this.sameLevelNodes=[],this.sameLevelIndex=0,this.direction=null,this.visitedNodes.clear()}exploreByDirection(A,e,t){if(!Yc(A))return null;if(t!==this.direction&&this.clear(),this.visitedNodes.has(A.id)||this.visitedNodes.add(A.id),this.isExploring&&t===this.direction&&this.sameLevelNodes.length>1)return this.sameLevelIndex=(this.sameLevelIndex+1)%this.sameLevelNodes.length,this.sameLevelNodes[this.sameLevelIndex].id;let r=[...M3A(A,e,t),...T3A(A,e,t)];if(r.length>0)return this.sameLevelIndex=0,this.isExploring=!0,this.sameLevelNodes=r,this.direction=t,this.visitedNodes.add(r[0].id),r[0].id;if(t===this.direction||!this.isExploring){this.isExploring||this.visitedNodes.add(A.id);let i=["up","right","down","left"].filter((u)=>u!==t).map((u)=>[...M3A(A,e,u),...T3A(A,e,u)]).flat().filter((u)=>!this.visitedNodes.has(u.id));for(let u of i)if(!this.visitedNodes.has(u.id))return this.visitedNodes.add(u.id),this.isExploring=!0,this.direction=t,u.id}return null}},Ydr=class{constructor(){UA(this,"isCreatingChart",!1),UA(this,"numberOfNodes",0),UA(this,"direction","right"),UA(this,"pendingNodes",null)}createNodes(A,e,t,r){if(r!==this.direction){let{nextNode:i,bindingArrow:u}=Udr(A,e,t,r);this.numberOfNodes=1,this.isCreatingChart=!0,this.direction=r,this.pendingNodes=[i,u]}else{this.numberOfNodes+=1;let i=Mdr(A,e,t,r,this.numberOfNodes);this.isCreatingChart=!0,this.direction=r,this.pendingNodes=i}if(A.frameId){let i=e.get(A.frameId);fn(i&&KIA(i),"not an ExcalidrawFrameElement"),i&&this.pendingNodes.every((u)=>Z9([u],i,e)||Kh(u,i,e))&&(this.pendingNodes=this.pendingNodes.map((u)=>Se(u,{frameId:A.frameId},!1)))}}clear(){this.isCreatingChart=!1,this.pendingNodes=null,this.direction=null,this.numberOfNodes=0}},Hdr=(A,e)=>{for(let[,t]of e)if(t.type==="arrow"&&(t.startBinding?.elementId===A.id||t.endBinding?.elementId===A.id))return!0;return!1},Kdr=({appState:A,isMobile:e,device:t,app:r})=>{let{activeTool:i,isResizing:u,isRotating:a,lastPointerDownWith:n}=A,o=A.multiElement!==null;if(A.openSidebar?.name===Kc.name&&A.openSidebar.tab===c2&&A.searchMatches?.length)return uA("hints.dismissSearch");if(A.openSidebar&&!t.editor.canFitSidebar)return null;if(dB(A))return uA("hints.eraserRevert");if(i.type==="arrow"||i.type==="line")return o?uA("hints.linearElementMulti"):i.type==="arrow"?uA("hints.arrowTool",{arrowShortcut:Fe("A")}):uA("hints.linearElement");if(i.type==="freedraw")return uA("hints.freeDraw");if(i.type==="text")return uA("hints.text");if(i.type==="embeddable")return uA("hints.embeddable");if(A.activeTool.type==="image"&&A.pendingImageElementId)return uA("hints.placeImage");let s=r.scene.getSelectedElements(A);if(u&&n==="mouse"&&s.length===1){let l=s[0];return Nr(l)&&l.points.length===2?uA("hints.lockAngle"):Ri(l)?uA("hints.resizeImage"):uA("hints.resize")}if(a&&n==="mouse")return uA("hints.rotate");if(s.length===1&&Et(s[0]))return uA("hints.text_selected");if(A.editingTextElement)return uA("hints.text_editing");if(A.croppingElementId)return uA("hints.leaveCropEditor");if(s.length===1&&Ri(s[0]))return uA("hints.enterCropEditor");if(i.type==="selection"){if(A.selectionElement&&!s.length&&!A.editingTextElement&&!A.editingLinearElement)return uA("hints.deepBoxSelect");if(P9(r)&&A.selectedElementsAreBeingDragged)return uA("hints.disableSnapping");if(!s.length&&!e)return uA("hints.canvasPanning");if(s.length===1){if(Nr(s[0]))return A.editingLinearElement?A.editingLinearElement.selectedPointsIndices?uA("hints.lineEditor_pointSelected"):uA("hints.lineEditor_nothingSelected"):uA("hints.lineEditor_info");if(!A.newElement&&!A.selectedElementsAreBeingDragged&&ip(s[0]))return AS(s[0])?Hdr(s[0],r.scene.getNonDeletedElementsMap())?[uA("hints.bindTextToElement"),uA("hints.createFlowchart")]:[uA("hints.bindTextToElement"),uA("hints.createFlowchart")]:uA("hints.bindTextToElement")}}return null},xZe=({appState:A,isMobile:e,device:t,app:r})=>{let i=Kdr({appState:A,isMobile:e,device:t,app:r});if(!i)return null;let u=Array.isArray(i)?i.map((a)=>Fe(a).replace(/\. ?$/,"")).join(". "):Fe(i);return N("div",{className:"HintViewer",children:N("span",{children:u})})},Jdr="medium",_qe={CHECKED:tW,UNCHECKED:tS},SZe=(A)=>cA("label",{className:Re("ToolIcon ToolIcon__lock",`ToolIcon_size_${Jdr}`,{"is-mobile":A.isMobile}),title:`${A.title} — Q`,children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:A.name,onChange:A.onChange,checked:A.checked,"aria-label":A.title,"data-testid":"toolbar-lock"}),N("div",{className:"ToolIcon__icon",children:A.checked?_qe.CHECKED:_qe.UNCHECKED})]}),zL=({heading:A,children:e,...t})=>{let{id:r}=zd(),i=N("h2",{className:"visually-hidden",id:`${r}-${A}-title`,children:uA(`headings.${A}`)});return N("section",{...t,"aria-labelledby":`${r}-${A}-title`,children:typeof e=="function"?e(i):cA(et,{children:[i,e]})})},Pd=4,Kp=6,Odr="rgba(0,0,0,0.3)",Pdr=(A,e,t,r)=>{if(!A.length)return{horizontal:null,vertical:null};let[i,u,a,n]=Pi(A),o=e/r.zoom.value,s=t/r.zoom.value,l=e-o,g=t-s,C={top:parseInt(V8("sat"))||0,bottom:parseInt(V8("sab"))||0,left:parseInt(V8("sal"))||0,right:parseInt(V8("sar"))||0},B=WL().rtl,E=-r.scrollX+l/2+C.left,d=-r.scrollY+g/2+C.top,I=E+o-C.right,h=d+s-C.bottom,Q=Math.min(i,E),p=Math.min(u,d),m=Math.max(a,I),f=Math.max(n,h);return{horizontal:E===Q&&I===m?null:{x:Math.max(C.left,Pd)+(E-Q)/(m-Q)*e,y:t-Kp-Math.max(Pd,C.bottom),width:(I-E)/(m-Q)*e-Math.max(Pd*2,C.left+C.right),height:Kp},vertical:d===p&&h===f?null:{x:B?Math.max(C.left,Pd):e-Kp-Math.max(C.right,Pd),y:(d-p)/(f-p)*t+Math.max(C.top,Pd),width:Kp,height:(h-d)/(f-p)*t-Math.max(Pd*2,C.top+C.bottom)}}},Wqe=(A,e,t)=>{let[r,i]=[A.horizontal,A.vertical].map((u)=>u!=null&&u.x<=e&&e<=u.x+u.width&&u.y<=t&&t<=u.y+u.height);return{isOverEither:r||i,isOverHorizontal:r,isOverVertical:i}},_dr="medium",LZe=(A)=>A.penDetected?cA("label",{className:Re("ToolIcon ToolIcon__penMode",`ToolIcon_size_${_dr}`,{"is-mobile":A.isMobile}),title:`${A.title}`,children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:A.name,onChange:A.onChange,checked:A.checked,"aria-label":A.title}),N("div",{className:"ToolIcon__icon",children:UIe})]}):null,RZe=(A)=>N(ci,{className:Re("Shape",{fillable:!1}),type:"radio",icon:hhA,name:"editor-current-shape",checked:A.checked,title:`${A.title} — H`,keyBindingLabel:A.isMobile?void 0:PA.H.toLocaleUpperCase(),"aria-label":`${A.title} — H`,"aria-keyshortcuts":PA.H,"data-testid":"toolbar-hand",onChange:()=>A.onChange?.()}),Wdr=({appState:A,elements:e,actionManager:t,setAppState:r,onLockToggle:i,onHandToolToggle:u,onPenModeToggle:a,renderTopRightUI:n,renderCustomStats:o,renderSidebars:s,device:l,renderWelcomeScreen:g,UIOptions:C,app:B})=>{let{WelcomeScreenCenterTunnel:E,MainMenuTunnel:d,DefaultSidebarTriggerTunnel:I}=Xs(),h=()=>cA(vZe,{side:"top",className:"App-top-bar",children:[g&&N(E.Out,{}),N(zL,{heading:"shapes",children:(p)=>N(Xc.Col,{gap:4,align:"center",children:cA(Xc.Row,{gap:1,className:"App-toolbar-container",children:[cA(YB,{padding:1,className:"App-toolbar App-toolbar--mobile",children:[p,N(Xc.Row,{gap:1,children:N(QZe,{appState:A,activeTool:A.activeTool,UIOptions:C,app:B})})]}),n&&n(!0,A),cA("div",{className:"mobile-misc-tools-container",children:[!A.viewModeEnabled&&A.openDialog?.name!=="elementLinkSelector"&&N(I.Out,{}),N(LZe,{checked:A.penMode,onChange:()=>a(null),title:uA("toolBar.penMode"),isMobile:!0,penDetected:A.penDetected}),N(SZe,{checked:A.activeTool.locked,onChange:i,title:uA("toolBar.lock"),isMobile:!0}),N(RZe,{checked:C2(A),onChange:()=>u(),title:uA("toolBar.hand"),isMobile:!0})]})]})})}),N(xZe,{appState:A,isMobile:!0,device:l,app:B})]}),Q=()=>A.viewModeEnabled||A.openDialog?.name==="elementLinkSelector"?N("div",{className:"App-toolbar-content",children:N(d.Out,{})}):cA("div",{className:"App-toolbar-content",children:[N(d.Out,{}),t.renderAction("toggleEditMenu"),t.renderAction(A.multiElement?"finalize":"duplicateSelection"),t.renderAction("deleteSelectedElements"),cA("div",{children:[t.renderAction("undo"),t.renderAction("redo")]})]});return cA(et,{children:[s(),!A.viewModeEnabled&&A.openDialog?.name!=="elementLinkSelector"&&h(),N("div",{className:"App-bottom-bar",style:{marginBottom:Kp+Pd*2,marginLeft:Kp+Pd*2,marginRight:Kp+Pd*2},children:cA(YB,{padding:0,children:[A.openMenu==="shape"&&!A.viewModeEnabled&&A.openDialog?.name!=="elementLinkSelector"&&rq(A,e)?N(zL,{className:"App-mobile-menu",heading:"selectedShapeActions",children:N(hZe,{appState:A,elementsMap:B.scene.getNonDeletedElementsMap(),renderAction:t.renderAction,app:B})}):null,cA("footer",{className:"App-toolbar",children:[Q(),A.scrolledOutside&&!A.openMenu&&!A.openSidebar&&N("button",{type:"button",className:"scroll-back-to-content",onClick:()=>{r((p)=>({...J9(e,p)}))},children:uA("buttons.scrollBackToContent")})]})]})})]})},qqe=(A)=>{let e=Ee(null),[t,r]=we(null);return Ii(()=>{if(!A.spreadsheet)return;let i=K4e(A.chartType,A.spreadsheet,0,0);r(i);let u,a=e.current;return(async()=>(u=await KW(i,{exportBackground:!1,viewBackgroundColor:ua.white},null,{skipInliningFonts:!0}),u.querySelector(".style-fonts")?.remove(),a.replaceChildren(),a.appendChild(u),A.selected&&a.parentNode.focus()))(),()=>{a.replaceChildren()}},[A.spreadsheet,A.chartType,A.selected]),N("button",{type:"button",className:"ChartPreview",onClick:()=>{t&&A.onClick(A.chartType,t)},children:N("div",{ref:e})})},qdr=({setAppState:A,appState:e,onClose:t})=>{let{onInsertElements:r}=qd(),i=lt(()=>{t&&t()},[t]),u=(a,n)=>{r(n),Nu("paste","chart",a),A({currentChartType:a,pasteDialog:{shown:!1,data:null}})};return N(HB,{size:"small",onCloseRequest:i,title:uA("labels.pasteCharts"),className:"PasteChartDialog",autofocus:!1,children:cA("div",{className:"container",children:[N(qqe,{chartType:"bar",spreadsheet:e.pasteDialog.data,selected:e.currentChartType==="bar",onClick:u}),N(qqe,{chartType:"line",spreadsheet:e.pasteDialog.data,selected:e.currentChartType==="line",onClick:u})]})})},zdr=()=>cA("div",{className:"HelpDialog__header",children:[cA("a",{className:"HelpDialog__btn",href:"https://docs.excalidraw.com",target:"_blank",rel:"noopener noreferrer",children:[N("div",{className:"HelpDialog__link-icon",children:XIA}),uA("helpDialog.documentation")]}),cA("a",{className:"HelpDialog__btn",href:"https://plus.excalidraw.com/blog",target:"_blank",rel:"noopener noreferrer",children:[N("div",{className:"HelpDialog__link-icon",children:XIA}),uA("helpDialog.blog")]}),cA("a",{className:"HelpDialog__btn",href:"https://github.com/excalidraw/excalidraw/issues",target:"_blank",rel:"noopener noreferrer",children:[N("div",{className:"HelpDialog__link-icon",children:$IA}),uA("helpDialog.github")]}),cA("a",{className:"HelpDialog__btn",href:"https://youtube.com/@excalidraw",target:"_blank",rel:"noopener noreferrer",children:[N("div",{className:"HelpDialog__link-icon",children:iQe}),"YouTube"]})]}),Zdr=(A)=>cA(et,{children:[N("h3",{children:A.title}),N("div",{className:"HelpDialog__islands-container",children:A.children})]}),d3A=(A)=>cA("div",{className:`HelpDialog__island ${A.className}`,children:[N("h4",{className:"HelpDialog__island-title",children:A.caption}),N("div",{className:"HelpDialog__island-content",children:A.children})]});function*Vdr(A,e){let t=!0;for(let r of A)t||(yield e),t=!1,yield r}var jdr=(A)=>A.replace(/\b[a-z]\b/,(e)=>e.toUpperCase()),mt=({label:A,shortcuts:e,isOr:t=!0})=>{let r=e.map((i)=>(i.endsWith("++")?[...i.slice(0,-2).split("+"),"+"]:i.split("+")).map((u)=>N(Xdr,{children:jdr(u)},u)));return cA("div",{className:"HelpDialog__shortcut",children:[N("div",{children:A}),N("div",{className:"HelpDialog__key-container",children:[...Vdr(r,t?uA("helpDialog.or"):null)]})]})},Xdr=(A)=>N("kbd",{className:"HelpDialog__key",...A}),$dr=({onClose:A})=>{let e=lt(()=>{A&&A()},[A]);return N(et,{children:cA(HB,{onCloseRequest:e,title:uA("helpDialog.title"),className:"HelpDialog",children:[N(zdr,{}),cA(Zdr,{title:uA("helpDialog.shortcuts"),children:[cA(d3A,{className:"HelpDialog__island--tools",caption:uA("helpDialog.tools"),children:[N(mt,{label:uA("toolBar.hand"),shortcuts:[PA.H]}),N(mt,{label:uA("toolBar.selection"),shortcuts:[PA.V,PA[1]]}),N(mt,{label:uA("toolBar.rectangle"),shortcuts:[PA.R,PA[2]]}),N(mt,{label:uA("toolBar.diamond"),shortcuts:[PA.D,PA[3]]}),N(mt,{label:uA("toolBar.ellipse"),shortcuts:[PA.O,PA[4]]}),N(mt,{label:uA("toolBar.arrow"),shortcuts:[PA.A,PA[5]]}),N(mt,{label:uA("toolBar.line"),shortcuts:[PA.L,PA[6]]}),N(mt,{label:uA("toolBar.freedraw"),shortcuts:[PA.P,PA[7]]}),N(mt,{label:uA("toolBar.text"),shortcuts:[PA.T,PA[8]]}),N(mt,{label:uA("toolBar.image"),shortcuts:[PA[9]]}),N(mt,{label:uA("toolBar.eraser"),shortcuts:[PA.E,PA[0]]}),N(mt,{label:uA("toolBar.frame"),shortcuts:[PA.F]}),N(mt,{label:uA("toolBar.laser"),shortcuts:[PA.K]}),N(mt,{label:uA("labels.eyeDropper"),shortcuts:[PA.I,"Shift+S","Shift+G"]}),N(mt,{label:uA("helpDialog.editLineArrowPoints"),shortcuts:[Fe("CtrlOrCmd+Enter")]}),N(mt,{label:uA("helpDialog.editText"),shortcuts:[Fe("Enter")]}),N(mt,{label:uA("helpDialog.textNewLine"),shortcuts:[Fe("Enter"),Fe("Shift+Enter")]}),N(mt,{label:uA("helpDialog.textFinish"),shortcuts:[Fe("Esc"),Fe("CtrlOrCmd+Enter")]}),N(mt,{label:uA("helpDialog.curvedArrow"),shortcuts:["A",uA("helpDialog.click"),uA("helpDialog.click"),uA("helpDialog.click")],isOr:!1}),N(mt,{label:uA("helpDialog.curvedLine"),shortcuts:["L",uA("helpDialog.click"),uA("helpDialog.click"),uA("helpDialog.click")],isOr:!1}),N(mt,{label:uA("helpDialog.cropStart"),shortcuts:[uA("helpDialog.doubleClick"),Fe("Enter")],isOr:!0}),N(mt,{label:uA("helpDialog.cropFinish"),shortcuts:[Fe("Enter"),Fe("Escape")],isOr:!0}),N(mt,{label:uA("toolBar.lock"),shortcuts:[PA.Q]}),N(mt,{label:uA("helpDialog.preventBinding"),shortcuts:[Fe("CtrlOrCmd")]}),N(mt,{label:uA("toolBar.link"),shortcuts:[Fe("CtrlOrCmd+K")]})]}),cA(d3A,{className:"HelpDialog__island--view",caption:uA("helpDialog.view"),children:[N(mt,{label:uA("buttons.zoomIn"),shortcuts:[Fe("CtrlOrCmd++")]}),N(mt,{label:uA("buttons.zoomOut"),shortcuts:[Fe("CtrlOrCmd+-")]}),N(mt,{label:uA("buttons.resetZoom"),shortcuts:[Fe("CtrlOrCmd+0")]}),N(mt,{label:uA("helpDialog.zoomToFit"),shortcuts:["Shift+1"]}),N(mt,{label:uA("helpDialog.zoomToSelection"),shortcuts:["Shift+2"]}),N(mt,{label:uA("helpDialog.movePageUpDown"),shortcuts:["PgUp/PgDn"]}),N(mt,{label:uA("helpDialog.movePageLeftRight"),shortcuts:["Shift+PgUp/PgDn"]}),N(mt,{label:uA("buttons.zenMode"),shortcuts:[Fe("Alt+Z")]}),N(mt,{label:uA("buttons.objectsSnapMode"),shortcuts:[Fe("Alt+S")]}),N(mt,{label:uA("labels.toggleGrid"),shortcuts:[Fe("CtrlOrCmd+'")]}),N(mt,{label:uA("labels.viewMode"),shortcuts:[Fe("Alt+R")]}),N(mt,{label:uA("labels.toggleTheme"),shortcuts:[Fe("Alt+Shift+D")]}),N(mt,{label:uA("stats.fullTitle"),shortcuts:[Fe("Alt+/")]}),N(mt,{label:uA("search.title"),shortcuts:[us("searchMenu")]}),N(mt,{label:uA("commandPalette.title"),shortcuts:x9?[us("commandPalette")]:[us("commandPalette"),us("commandPalette",1)]})]}),cA(d3A,{className:"HelpDialog__island--editor",caption:uA("helpDialog.editor"),children:[N(mt,{label:uA("helpDialog.createFlowchart"),shortcuts:[Fe("CtrlOrCmd+Arrow Key")],isOr:!0}),N(mt,{label:uA("helpDialog.navigateFlowchart"),shortcuts:[Fe("Alt+Arrow Key")],isOr:!0}),N(mt,{label:uA("labels.moveCanvas"),shortcuts:[Fe(`Space+${uA("helpDialog.drag")}`),Fe(`Wheel+${uA("helpDialog.drag")}`)],isOr:!0}),N(mt,{label:uA("buttons.clearReset"),shortcuts:[Fe("CtrlOrCmd+Delete")]}),N(mt,{label:uA("labels.delete"),shortcuts:[Fe("Delete")]}),N(mt,{label:uA("labels.cut"),shortcuts:[Fe("CtrlOrCmd+X")]}),N(mt,{label:uA("labels.copy"),shortcuts:[Fe("CtrlOrCmd+C")]}),N(mt,{label:uA("labels.paste"),shortcuts:[Fe("CtrlOrCmd+V")]}),N(mt,{label:uA("labels.pasteAsPlaintext"),shortcuts:[Fe("CtrlOrCmd+Shift+V")]}),N(mt,{label:uA("labels.selectAll"),shortcuts:[Fe("CtrlOrCmd+A")]}),N(mt,{label:uA("labels.multiSelect"),shortcuts:[Fe(`Shift+${uA("helpDialog.click")}`)]}),N(mt,{label:uA("helpDialog.deepSelect"),shortcuts:[Fe(`CtrlOrCmd+${uA("helpDialog.click")}`)]}),N(mt,{label:uA("helpDialog.deepBoxSelect"),shortcuts:[Fe(`CtrlOrCmd+${uA("helpDialog.drag")}`)]}),(WW||x9)&&N(mt,{label:uA("labels.copyAsPng"),shortcuts:[Fe("Shift+Alt+C")]}),N(mt,{label:uA("labels.copyStyles"),shortcuts:[Fe("CtrlOrCmd+Alt+C")]}),N(mt,{label:uA("labels.pasteStyles"),shortcuts:[Fe("CtrlOrCmd+Alt+V")]}),N(mt,{label:uA("labels.sendToBack"),shortcuts:[BB?Fe("CtrlOrCmd+Alt+["):Fe("CtrlOrCmd+Shift+[")]}),N(mt,{label:uA("labels.bringToFront"),shortcuts:[BB?Fe("CtrlOrCmd+Alt+]"):Fe("CtrlOrCmd+Shift+]")]}),N(mt,{label:uA("labels.sendBackward"),shortcuts:[Fe("CtrlOrCmd+[")]}),N(mt,{label:uA("labels.bringForward"),shortcuts:[Fe("CtrlOrCmd+]")]}),N(mt,{label:uA("labels.alignTop"),shortcuts:[Fe("CtrlOrCmd+Shift+Up")]}),N(mt,{label:uA("labels.alignBottom"),shortcuts:[Fe("CtrlOrCmd+Shift+Down")]}),N(mt,{label:uA("labels.alignLeft"),shortcuts:[Fe("CtrlOrCmd+Shift+Left")]}),N(mt,{label:uA("labels.alignRight"),shortcuts:[Fe("CtrlOrCmd+Shift+Right")]}),N(mt,{label:uA("labels.duplicateSelection"),shortcuts:[Fe("CtrlOrCmd+D"),Fe(`Alt+${uA("helpDialog.drag")}`)]}),N(mt,{label:uA("helpDialog.toggleElementLock"),shortcuts:[Fe("CtrlOrCmd+Shift+L")]}),N(mt,{label:uA("buttons.undo"),shortcuts:[Fe("CtrlOrCmd+Z")]}),N(mt,{label:uA("buttons.redo"),shortcuts:fIA?[Fe("CtrlOrCmd+Y"),Fe("CtrlOrCmd+Shift+Z")]:[Fe("CtrlOrCmd+Shift+Z")]}),N(mt,{label:uA("labels.group"),shortcuts:[Fe("CtrlOrCmd+G")]}),N(mt,{label:uA("labels.ungroup"),shortcuts:[Fe("CtrlOrCmd+Shift+G")]}),N(mt,{label:uA("labels.flipHorizontal"),shortcuts:[Fe("Shift+H")]}),N(mt,{label:uA("labels.flipVertical"),shortcuts:[Fe("Shift+V")]}),N(mt,{label:uA("labels.showStroke"),shortcuts:[Fe("S")]}),N(mt,{label:uA("labels.showBackground"),shortcuts:[Fe("G")]}),N(mt,{label:uA("labels.showFonts"),shortcuts:[Fe("Shift+F")]}),N(mt,{label:uA("labels.decreaseFontSize"),shortcuts:[Fe("CtrlOrCmd+Shift+<")]}),N(mt,{label:uA("labels.increaseFontSize"),shortcuts:[Fe("CtrlOrCmd+Shift+>")]})]})]})]})})},AIr=4,eIr=8,tIr=({shouldWrap:A,children:e,username:t})=>A?N(tD,{label:t||"Unknown user",children:e}):N(et,{children:e}),I3A=({actionManager:A,collaborator:e,socketId:t,withName:r=!1,shouldWrapWithTooltip:i=!1,isBeingFollowed:u})=>{let a={socketId:t,collaborator:e,withName:r,isBeingFollowed:u},n=A.renderAction("goToCollaborator",a);return N(tIr,{username:e.username,shouldWrap:i,children:n},t)},rIr=["avatarUrl","id","socketId","username","isInCall","isSpeaking","isMuted"],NZe=gi(({className:A,mobile:e,collaborators:t,userToFollow:r})=>{let i=ql(),u=new Map;t.forEach((E,d)=>{let I=E.id||d;u.set(I,{...E,socketId:d})});let a=Array.from(u.values()).filter((E)=>E.username?.trim()),[n,o]=we(""),s=a.filter((E)=>E.username?.toLowerCase().includes(n)),l=Ee(null);Ii(()=>{if(l.current){let E=(I)=>{let h=Math.max(1,Math.min(8,Math.floor(I/38)));C(h)};if(E(l.current.clientWidth),!J_)return;let d=new ResizeObserver((I)=>{for(let h of I){let{width:Q}=h.contentRect;E(Q)}});return d.observe(l.current),()=>{d.disconnect()}}},[]);let[g,C]=we(AIr),B=a.slice(0,g-1).map((E)=>I3A({actionManager:i,collaborator:E,socketId:E.socketId,shouldWrapWithTooltip:!0,isBeingFollowed:E.socketId===r}));return e?N("div",{className:Re("UserList UserList_mobile",A),children:a.map((E)=>I3A({actionManager:i,collaborator:E,socketId:E.socketId,shouldWrapWithTooltip:!0,isBeingFollowed:E.socketId===r}))}):N("div",{className:"UserList__wrapper",ref:l,children:cA("div",{className:Re("UserList",A),style:{"--max-avatars":g},children:[B,a.length>g-1&&cA(Up,{children:[cA(Mp,{className:"UserList__more",children:["+",a.length-g+1]}),N(J5,{style:{zIndex:2,width:"15rem",textAlign:"left"},align:"end",sideOffset:10,children:cA(YB,{padding:2,children:[a.length>=eIr&&N(Tze,{placeholder:uA("quickSearch.placeholder"),onChange:o}),N(Yze,{className:"dropdown-menu UserList__collaborators",placeholder:uA("userList.empty"),children:s.length>0?[N("div",{className:"hint",children:uA("userList.hint.text")}),s.map((E)=>I3A({actionManager:i,collaborator:E,socketId:E.socketId,withName:!0,isBeingFollowed:E.socketId===r}))]:[]}),N(Zz,{width:20,height:10,style:{fill:"var(--popup-bg-color)",filter:"drop-shadow(rgba(0, 0, 0, 0.05) 0px 3px 2px)"}})]})})]})]})})},(A,e)=>{if(A.collaborators.size!==e.collaborators.size||A.mobile!==e.mobile||A.className!==e.className||A.userToFollow!==e.userToFollow)return!1;let t=e.collaborators.keys();for(let[r,i]of A.collaborators){let u=e.collaborators.get(r);if(!u||r!==t.next().value||!Po(i,u,rIr))return!1}return!0}),zqe=({children:A,color:e})=>N("div",{className:"Card",style:{"--card-color":e==="primary"?"var(--color-primary)":ua[e][7],"--card-color-darker":e==="primary"?"var(--color-primary-darker)":ua[e][8],"--card-color-darkest":e==="primary"?"var(--color-primary-darkest)":ua[e][9]},children:A}),iIr=({elements:A,appState:e,setAppState:t,files:r,actionManager:i,exportOpts:u,canvas:a,onCloseRequest:n})=>{let{onExportToBackend:o}=u;return N("div",{className:"ExportDialog ExportDialog--json",children:cA("div",{className:"ExportDialog-cards",children:[u.saveFileToDisk&&cA(zqe,{color:"lime",children:[N("div",{className:"Card-icon",children:WIe}),N("h2",{children:uA("exportDialog.disk_title")}),cA("div",{className:"Card-details",children:[uA("exportDialog.disk_details"),!Rh&&i.renderAction("changeProjectName")]}),N(ci,{className:"Card-button",type:"button",title:uA("exportDialog.disk_button"),"aria-label":uA("exportDialog.disk_button"),showAriaLabel:!0,onClick:()=>{i.executeAction(Zze,"ui")}})]}),o&&cA(zqe,{color:"pink",children:[N("div",{className:"Card-icon",children:nW}),N("h2",{children:uA("exportDialog.link_title")}),N("div",{className:"Card-details",children:uA("exportDialog.link_details")}),N(ci,{className:"Card-button",type:"button",title:uA("exportDialog.link_button"),"aria-label":uA("exportDialog.link_button"),showAriaLabel:!0,onClick:async()=>{try{Nu("export","link",`ui (${fIe()})`),await o(A,e,r),n()}catch(s){t({errorMessage:s.message})}}})]}),u.renderCustomUI&&u.renderCustomUI(A,e,r,a)]})})},uIr=({elements:A,appState:e,files:t,actionManager:r,exportOpts:i,canvas:u,setAppState:a})=>{let n=lt(()=>{a({openDialog:null})},[a]);return N(et,{children:e.openDialog?.name==="jsonExport"&&N(HB,{onCloseRequest:n,title:uA("buttons.export"),children:N(iIr,{elements:A,appState:e,setAppState:a,files:t,actionManager:r,onCloseRequest:n,exportOpts:i,canvas:u})})})},aIr=(A)=>N("button",{className:"help-icon",onClick:A.onClick,type:"button",title:`${uA("helpDialog.title")} — ?`,"aria-label":uA("helpDialog.title"),children:aW}),GZe=({appState:A,actionManager:e,showExitZenModeBtn:t,renderWelcomeScreen:r})=>{let{FooterCenterTunnel:i,WelcomeScreenHelpHintTunnel:u}=Xs(),a=Do(),n=!A.viewModeEnabled&&A.multiElement&&a.isTouchScreen;return cA("footer",{role:"contentinfo",className:"layer-ui__wrapper__footer App-menu App-menu_bottom",children:[N("div",{className:Re("layer-ui__wrapper__footer-left zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-left":A.zenModeEnabled}),children:N(Xc.Col,{gap:2,children:cA(zL,{heading:"canvasActions",children:[N(ldr,{renderAction:e.renderAction,zoom:A.zoom}),!A.viewModeEnabled&&N(gdr,{renderAction:e.renderAction,className:Re("zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-bottom":A.zenModeEnabled})}),n&&N(Cdr,{renderAction:e.renderAction,className:Re("zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-left":A.zenModeEnabled})})]})})}),N(i.Out,{}),N("div",{className:Re("layer-ui__wrapper__footer-right zen-mode-transition",{"transition-right":A.zenModeEnabled}),children:cA("div",{style:{position:"relative"},children:[r&&N(u.Out,{}),N(aIr,{onClick:()=>e.executeAction(j3A)})]})}),N(cdr,{actionManager:e,showExitZenModeBtn:t})]})},nIr=GZe;GZe.displayName="Footer";var UZe=yi({}),MZe=({children:A,className:e})=>{let t=Do(),r=Si(UZe),i=!!(t.editor.canFitSidebar&&r.shouldRenderDockButton);return cA("div",{className:Re("sidebar__header",e),"data-testid":"sidebar-header",children:[A,cA("div",{className:"sidebar__header__buttons",children:[i&&N(tD,{label:uA("labels.sidebarLock"),children:N(rD,{onSelect:()=>r.onDock?.(!r.docked),selected:!!r.docked,className:"sidebar__dock","data-testid":"sidebar-dock","aria-label":uA("labels.sidebarLock"),children:LIe})}),N(rD,{"data-testid":"sidebar-close",className:"sidebar__close",onSelect:r.onCloseRequest,"aria-label":uA("buttons.close"),children:h2})]})]})};MZe.displayName="SidebarHeader";var TZe=({name:A,tab:e,icon:t,title:r,children:i,onToggle:u,className:a,style:n})=>{let o=zn(),s=b0();return cA("label",{title:r,className:"sidebar-trigger__label-element",children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",onChange:(l)=>{document.querySelector(".layer-ui__wrapper")?.classList.remove("animate");let g=l.target.checked;o({openSidebar:g?{name:A,tab:e}:null}),u?.(g)},checked:s.openSidebar?.name===A,"aria-label":r,"aria-keyshortcuts":"0"}),cA("div",{className:Re("sidebar-trigger",a),style:n,children:[t&&N("div",{children:t}),i&&N("div",{className:"sidebar-trigger__label",children:i})]})]})};TZe.displayName="SidebarTrigger";var YZe=({children:A,...e})=>N(eZ,{className:"sidebar-triggers",...e,children:A});YZe.displayName="SidebarTabTriggers";var HZe=({children:A,tab:e,onSelect:t,...r})=>N(tZ,{value:e,asChild:!0,onSelect:t,children:N("button",{type:"button",className:"excalidraw-button sidebar-tab-trigger",...r,children:A})});HZe.displayName="SidebarTabTrigger";var KZe=({children:A,...e})=>{let t=b0(),r=zn();if(!t.openSidebar)return null;let{name:i}=t.openSidebar;return N(AZ,{className:"sidebar-tabs-root",value:t.openSidebar.tab,onValueChange:(u)=>r((a)=>({...a,openSidebar:{...a.openSidebar,name:i,tab:u}})),...e,children:A})};KZe.displayName="SidebarTabs";var JZe=({tab:A,children:e,...t})=>N(rZ,{...t,value:A,"data-testid":A,children:e});JZe.displayName="SidebarTab";var emA=Pn(!1),OZe=Dt(({name:A,children:e,onDock:t,docked:r,className:i,...u},a)=>{Qr.DEV&&t&&r==null&&console.warn("Sidebar: `docked` must be set when `onDock` is supplied for the sidebar to be user-dockable. To hide this message, either pass `docked` or remove `onDock`");let n=zn(),o=fZ(emA);Ii(()=>(o(!!r),()=>{o(!1)}),[o,r]);let s=Ee({});s.current.onCloseRequest=()=>{n({openSidebar:null})},s.current.onDock=(B)=>t?.(B),s.current=j8(s.current,{docked:r,shouldRenderDockButton:!!t&&r!=null});let l=Ee(null);zm(a,()=>l.current);let g=Do(),C=lt(()=>{document.querySelector(".Dialog")||n({openSidebar:null})},[n]);return _3A(l,lt((B)=>{B.target.closest(".sidebar-trigger")||(!r||!g.editor.canFitSidebar)&&C()},[C,r,g.editor.canFitSidebar])),le(()=>{let B=(E)=>{E.key===PA.ESCAPE&&(!r||!g.editor.canFitSidebar)&&C()};return document.addEventListener("keydown",B),()=>{document.removeEventListener("keydown",B)}},[C,r,g.editor.canFitSidebar]),N(YB,{...u,className:Re("sidebar",{"sidebar--docked":r},i),ref:l,children:N(UZe.Provider,{value:s.current,children:e})})});OZe.displayName="SidebarInner";var Od=Object.assign(Dt((A,e)=>{let t=b0(),{onStateChange:r}=A,i=Ee(t.openSidebar);le(()=>{(!t.openSidebar&&i?.current?.name===A.name||t.openSidebar?.name===A.name&&i?.current?.name!==A.name||i.current?.name===A.name)&&t.openSidebar!==i.current&&r?.(t.openSidebar?.name!==A.name?null:t.openSidebar),i.current=t.openSidebar},[t.openSidebar,r,A.name]);let[u,a]=we(!1);return Ii(()=>(a(!0),()=>a(!1)),[]),u&&t.openSidebar?.name===A.name?Rt(OZe,{...A,ref:e,key:A.name}):null}),{Header:MZe,TabTriggers:YZe,TabTrigger:HZe,Tabs:KZe,Tab:JZe,Trigger:TZe});Od.displayName="Sidebar";var PZe={};NEA(PZe,{ChangeCanvasBackground:()=>eVe,ClearCanvas:()=>$Ze,CommandPalette:()=>VZe,Export:()=>tVe,Help:()=>XZe,LiveCollaborationTrigger:()=>iVe,LoadScene:()=>qZe,SaveAsImage:()=>ZZe,SaveToActiveFile:()=>zZe,SearchMenu:()=>jZe,Socials:()=>rVe,ToggleTheme:()=>AVe});var _Ze=Pn({active:!1});async function oIr({title:A,description:e,actionLabel:t,color:r}){return new Promise((i)=>{TB.set(_Ze,{active:!0,onConfirm:()=>i(!0),onClose:()=>i(!1),onReject:()=>i(!1),title:A,description:e,actionLabel:t,color:r})})}var WZe=({value:A,shortcut:e,onChange:t,choices:r,children:i,name:u})=>{let a=Do();return cA(et,{children:[cA("div",{className:"dropdown-menu-item-base dropdown-menu-item-bare",children:[N("label",{className:"dropdown-menu-item__text",htmlFor:u,children:i}),N(bZe,{name:u,value:A,onChange:t,choices:r})]}),e&&!a.editor.isMobile&&N("div",{className:"dropdown-menu-item__shortcut dropdown-menu-item__shortcut--orphaned",children:e})]})};WZe.displayName="DropdownMenuItemContentRadio";var sIr=WZe,qZe=()=>{let{t:A}=as(),e=ql(),t=SZ();return e.isActionEnabled(L3A)?N($c,{icon:oW,onSelect:async()=>{(!t.length||await oIr({title:A("overwriteConfirm.modal.loadFromFile.title"),actionLabel:A("overwriteConfirm.modal.loadFromFile.button"),color:"warning",description:N(_d,{i18nKey:"overwriteConfirm.modal.loadFromFile.description",bold:(r)=>N("strong",{children:r}),br:()=>N("br",{})})}))&&e.executeAction(L3A)},"data-testid":"load-button",shortcut:us("loadScene"),"aria-label":A("buttons.load"),children:A("buttons.load")}):null};qZe.displayName="LoadScene";var zZe=()=>{let{t:A}=as(),e=ql();return e.isActionEnabled(mqe)?N($c,{shortcut:us("saveScene"),"data-testid":"save-button",onSelect:()=>e.executeAction(mqe),icon:OIe,"aria-label":`${A("buttons.save")}`,children:`${A("buttons.save")}`}):null};zZe.displayName="SaveToActiveFile";var ZZe=()=>{let A=zn(),{t:e}=as();return N($c,{icon:AhA,"data-testid":"image-export-button",onSelect:()=>A({openDialog:{name:"imageExport"}}),shortcut:us("imageExport"),"aria-label":e("buttons.exportImage"),children:e("buttons.exportImage")})};ZZe.displayName="SaveAsImage";var VZe=(A)=>{let e=zn(),{t}=as();return N($c,{icon:yhA,"data-testid":"command-palette-button",onSelect:()=>{Nu("command_palette","open","menu"),e({openDialog:{name:"commandPalette"}})},shortcut:us("commandPalette"),"aria-label":t("commandPalette.title"),className:A?.className,children:t("commandPalette.title")})};VZe.displayName="CommandPalette";var jZe=(A)=>{let{t:e}=as(),t=ql();return N($c,{icon:np,"data-testid":"search-menu-button",onSelect:()=>{t.executeAction(DZe)},shortcut:us("searchMenu"),"aria-label":e("search.title"),className:A?.className,children:e("search.title")})};jZe.displayName="SearchMenu";var XZe=()=>{let{t:A}=as(),e=ql();return N($c,{"data-testid":"help-menu-item",icon:aW,onSelect:()=>e.executeAction(j3A),shortcut:"?","aria-label":A("helpDialog.title"),children:A("helpDialog.title")})};XZe.displayName="Help";var $Ze=()=>{let{t:A}=as(),e=fZ(xZ);return ql().isActionEnabled(OL)?N($c,{icon:ap,onSelect:()=>e("clearCanvas"),"data-testid":"clear-canvas-button","aria-label":A("buttons.clearReset"),children:A("buttons.clearReset")}):null};$Ze.displayName="ClearCanvas";var AVe=(A)=>{let{t:e}=as(),t=b0(),r=ql(),i=us("toggleTheme");return r.isActionEnabled(dZ)?A?.allowSystemTheme?N(sIr,{name:"theme",value:A.theme,onChange:(u)=>A.onSelect(u),choices:[{value:$r.LIGHT,label:uW,ariaLabel:`${e("buttons.lightMode")} - ${i}`},{value:$r.DARK,label:iW,ariaLabel:`${e("buttons.darkMode")} - ${i}`},{value:"system",label:rQe,ariaLabel:e("buttons.systemMode")}],children:e("labels.theme")}):N($c,{onSelect:(u)=>{if(u.preventDefault(),A?.onSelect)A.onSelect(t.theme===$r.DARK?$r.LIGHT:$r.DARK);else return r.executeAction(dZ)},icon:t.theme===$r.DARK?uW:iW,"data-testid":"toggle-dark-mode",shortcut:i,"aria-label":t.theme===$r.DARK?e("buttons.lightMode"):e("buttons.darkMode"),children:t.theme===$r.DARK?e("buttons.lightMode"):e("buttons.darkMode")}):null};AVe.displayName="ToggleTheme";var eVe=()=>{let{t:A}=as(),e=b0(),t=ql(),r=$L();return e.viewModeEnabled||!r.UIOptions.canvasActions.changeViewBackgroundColor?null:cA("div",{style:{marginTop:"0.5rem"},children:[N("div",{"data-testid":"canvas-background-label",style:{fontSize:".75rem",marginBottom:".5rem"},children:A("labels.canvasBackground")}),N("div",{style:{padding:"0 0.625rem"},children:t.renderAction("changeViewBackgroundColor")})]})};eVe.displayName="ChangeCanvasBackground";var tVe=()=>{let{t:A}=as(),e=zn();return N($c,{icon:rS,onSelect:()=>{e({openDialog:{name:"jsonExport"}})},"data-testid":"json-export-button","aria-label":A("buttons.export"),children:A("buttons.export")})};tVe.displayName="Export";var rVe=()=>{let{t:A}=as();return cA(et,{children:[N(CZ,{icon:$IA,href:"https://github.com/excalidraw/excalidraw","aria-label":"GitHub",children:"GitHub"}),N(CZ,{icon:KIe,href:"https://x.com/excalidraw","aria-label":"X",children:A("labels.followUs")}),N(CZ,{icon:HIe,href:"https://discord.gg/UexuTaE","aria-label":"Discord",children:A("labels.discordChat")})]})};rVe.displayName="Socials";var iVe=({onSelect:A,isCollaborating:e})=>{let{t}=as();return N($c,{"data-testid":"collab-button",icon:ChA,className:Re({"active-collab":e}),onSelect:A,children:t("labels.liveCollaboration")})};iVe.displayName="LiveCollaborationTrigger";var jL=(A,e)=>{let t=Pn(0),r=(i)=>{let{tunnelsJotai:{useAtom:u}}=Xs(),[,a]=u(t),n=Ee({preferHost:!1,counter:0});return Ii(()=>{let o=n.current;return a((s)=>{let l=s+1;return o.counter=l,l}),()=>{a((s)=>{let l=s-1;return o.counter=l,l||(o.preferHost=!1),l})}},[a]),i.__fallback||(n.current.preferHost=!0),!n.current.counter&&i.__fallback&&n.current.preferHost||n.current.counter>1&&i.__fallback?null:N(e,{...i})};return r.displayName=A,r},lIr=Object.assign(jL("MainMenu",({children:A,onSelect:e})=>{let{MainMenuTunnel:t}=Xs(),r=Do(),i=b0(),u=zn(),a=r.editor.isMobile?void 0:()=>u({openMenu:null});return N(t.In,{children:cA(Hu,{open:i.openMenu==="canvas",children:[N(Hu.Trigger,{onToggle:()=>{u({openMenu:i.openMenu==="canvas"?null:"canvas"})},"data-testid":"main-menu-trigger",className:"main-menu-trigger",children:jIA}),cA(Hu.Content,{onClickOutside:a,onSelect:X8(e,()=>{u({openMenu:null})}),children:[A,r.editor.isMobile&&i.collaborators.size>0&&cA("fieldset",{className:"UserList-Wrapper",children:[N("legend",{children:uA("labels.collaborators")}),N(NZe,{mobile:!0,collaborators:i.collaborators,userToFollow:i.userToFollow?.socketId||null})]})]})]})})}),{Trigger:Hu.Trigger,Item:Hu.Item,ItemLink:Hu.ItemLink,ItemCustom:Hu.ItemCustom,Group:Hu.Group,Separator:Hu.Separator,DefaultItems:PZe}),Wl=lIr,tmA=({title:A,children:e,actionLabel:t,onClick:r})=>cA("div",{className:"OverwriteConfirm__Actions__Action",children:[N("h4",{children:A}),N("div",{className:"OverwriteConfirm__Actions__Action__content",children:e}),N(_L,{variant:"outlined",color:"muted",label:t,size:"large",fullWidth:!0,onClick:r})]}),gIr=()=>{let{t:A}=as(),e=ql(),t=zn();return N(tmA,{title:A("overwriteConfirm.action.exportToImage.title"),actionLabel:A("overwriteConfirm.action.exportToImage.button"),onClick:()=>{e.executeAction(zze,"ui",!0),t({openDialog:{name:"imageExport"}})},children:A("overwriteConfirm.action.exportToImage.description")})},cIr=()=>{let{t:A}=as(),e=ql();return N(tmA,{title:A("overwriteConfirm.action.saveToDisk.title"),actionLabel:A("overwriteConfirm.action.saveToDisk.button"),onClick:()=>{e.executeAction(Zze,"ui")},children:A("overwriteConfirm.action.saveToDisk.description")})},Zqe=Object.assign(({children:A})=>N("div",{className:"OverwriteConfirm__Actions",children:A}),{ExportToImage:gIr,SaveToDisk:cIr}),h3A=Object.assign(jL("OverwriteConfirmDialog",({children:A})=>{let{OverwriteConfirmDialogTunnel:e}=Xs(),[t,r]=Oa(_Ze);if(!t.active)return null;let i=()=>{t.onClose(),r((a)=>({...a,active:!1}))},u=()=>{t.onConfirm(),r((a)=>({...a,active:!1}))};return N(e.In,{children:N(HB,{onCloseRequest:i,title:!1,size:916,children:cA("div",{className:"OverwriteConfirm",children:[N("h3",{children:t.title}),cA("div",{className:`OverwriteConfirm__Description OverwriteConfirm__Description--color-${t.color}`,children:[N("div",{className:"OverwriteConfirm__Description__icon",children:Yhe}),N("div",{children:t.description}),N("div",{className:"OverwriteConfirm__Description__spacer"}),N(_L,{color:t.color,size:"large",label:t.actionLabel,onClick:u})]}),N(Zqe,{children:A})]})})})}),{Actions:Zqe,Action:tmA}),CIr=Pn(""),aVe=Pn(null),BIr=350,EIr=()=>{let A=qd(),e=zn(),t=Ee(null),[r,i]=Oa(CIr),u=r.trim(),[a,n]=we(!1),[o,s]=we({nonce:null,items:[]}),l=Ee(null),g=Ee(void 0),[C,B]=Oa(aVe),E=A.scene.getNonDeletedElementsMap();le(()=>{a||(u!==l.current||A.scene.getSceneNonce()!==g.current)&&(l.current=null,Vqe(u,A,(p,m)=>{s({nonce:QB(),items:p}),l.current=u,g.current=A.scene.getSceneNonce(),e({searchMatches:p.map((f)=>({id:f.textElement.id,focus:!1,matchedLines:f.matchedLines}))})}))},[a,u,E,A,e,B,g]);let d=()=>{o.items.length>0&&B((p)=>p===null?0:(p+1)%o.items.length)},I=()=>{o.items.length>0&&B((p)=>p===null?0:p-1<0?o.items.length-1:p-1)};le(()=>{e((p)=>({searchMatches:p.searchMatches.map((m,f)=>f===C?{...m,focus:!0}:{...m,focus:!1})}))},[C,e]),le(()=>{if(o.items.length>0&&C!==null){let p=o.items[C];if(p){let m=A.state.zoom.value,f=Tl({text:p.searchQuery,x:p.textElement.x+(p.matchedLines[0]?.offsetX??0),y:p.textElement.y+(p.matchedLines[0]?.offsetY??0),width:p.matchedLines[0]?.width,height:p.matchedLines[0]?.height,fontSize:p.textElement.fontSize,fontFamily:p.textElement.fontFamily}),D=14,w=p.textElement.fontSize,b=w*m<D;if(!wS([f],A.canvas.width/window.devicePixelRatio,A.canvas.height/window.devicePixelRatio,{offsetLeft:A.state.offsetLeft,offsetTop:A.state.offsetTop,scrollX:A.state.scrollX,scrollY:A.state.scrollY,zoom:A.state.zoom},A.scene.getNonDeletedElementsMap(),A.getEditorUIOffsets())||b){let F;b?w>=D?F={fitToContent:!0}:F={fitToViewport:!0,maxZoom:IB(D/w,1)}:F={fitToContent:!0},A.scrollToContent(f,{animate:!0,duration:300,...F,canvasOffsets:A.getEditorUIOffsets()})}}}},[C,o,A]),le(()=>()=>{B(null),l.current=null,g.current=void 0,e({searchMatches:[]}),n(!1)},[e,B]);let h=DZ({goToNextItem:d,goToPreviousItem:I,searchMatches:o});le(()=>oa(window,"keydown",(m)=>{if(m.key===PA.ESCAPE&&!A.state.openDialog&&!A.state.openPopup){m.preventDefault(),m.stopPropagation(),e({openSidebar:null});return}m[PA.CTRL_OR_CMD]&&m.key===PA.F&&(m.preventDefault(),m.stopPropagation(),t.current?.matches(":focus")?e({openSidebar:null}):(A.state.openDialog&&e({openDialog:null}),t.current?.focus(),t.current?.select())),m.target instanceof HTMLElement&&m.target.closest(".layer-ui__search")&&h.searchMatches.items.length&&(m.key===PA.ENTER&&(m.stopPropagation(),h.goToNextItem()),m.key===PA.ARROW_UP?(m.stopPropagation(),h.goToPreviousItem()):m.key===PA.ARROW_DOWN&&(m.stopPropagation(),h.goToNextItem()))},{capture:!0,passive:!1}),[e,h,A]);let Q=`${o.items.length} ${o.items.length===1?uA("search.singleResult"):uA("search.multipleResults")}`;return cA("div",{className:"layer-ui__search",children:[N("div",{className:"layer-ui__search-header",children:N(AmA,{className:s2.SEARCH_MENU_INPUT_WRAPPER,value:r,ref:t,placeholder:uA("search.placeholder"),icon:np,onChange:(p)=>{i(p),n(!0);let m=p.trim();Vqe(m,A,(f,D)=>{s({nonce:QB(),items:f}),B(D),l.current=m,g.current=A.scene.getSceneNonce(),e({searchMatches:f.map((w)=>({id:w.textElement.id,focus:!1,matchedLines:w.matchedLines}))}),n(!1)})},selectOnRender:!0})}),cA("div",{className:"layer-ui__search-count",children:[o.items.length>0&&cA(et,{children:[C!==null&&C>-1?cA("div",{children:[C+1," / ",Q]}):N("div",{children:Q}),cA("div",{className:"result-nav",children:[N(rD,{onSelect:()=>{d()},className:"result-nav-btn",children:bhA}),N(rD,{onSelect:()=>{I()},className:"result-nav-btn",children:gQe})]})]}),o.items.length===0&&u&&l.current&&N("div",{style:{margin:"1rem auto"},children:uA("search.noMatch")})]}),N(QIr,{matches:o,onItemClick:B,focusIndex:C,searchQuery:u})]})},dIr=(A)=>{let e=[A.preview.moreBefore?"...":"",A.preview.previewText.slice(0,A.preview.indexInSearchQuery),A.preview.previewText.slice(A.preview.indexInSearchQuery,A.preview.indexInSearchQuery+A.searchQuery.length),A.preview.previewText.slice(A.preview.indexInSearchQuery+A.searchQuery.length),A.preview.moreAfter?"...":""];return N("div",{tabIndex:-1,className:Re("layer-ui__result-item",{active:A.highlighted}),onClick:A.onClick,ref:(t)=>{A.highlighted&&t?.scrollIntoView({behavior:"auto",block:"nearest"})},children:N("div",{className:"preview-text",children:e.flatMap((t,r)=>N(Co,{children:r===2?N("b",{children:t}):t},r))})})},IIr=(A)=>N("div",{className:"layer-ui__search-result-container",children:A.matches.items.map((e,t)=>N(dIr,{searchQuery:A.searchQuery,preview:e.preview,highlighted:t===A.focusIndex,onClick:()=>A.onItemClick(t)},e.textElement.id+e.index))}),hIr=(A,e)=>A.matches.nonce===e.matches.nonce&&A.focusIndex===e.focusIndex,QIr=gi(IIr,hIr),pIr=(A,e,t)=>{let r=A.slice(0,e),i=r.split(/\s+/),u=r.endsWith(" "),a=i.length-2-1-(u?0:1),n=i.slice(a<=0?0:a).join(" ")+(u?" ":""),o=20;n=n.length>o?n.slice(-o):n;let s=A.slice(e+t.length),l=s.split(/\s+/),g=!s.startsWith(" "),C=g?6:5,B=(g?"":" ")+l.slice(0,C).join(" ");return{indexInSearchQuery:n.length,previewText:n+t+B,moreBefore:a>0,moreAfter:l.length>C}},fIr=(A,e)=>{let t=A.split(`
|
||
`),r=[],i=0;for(let u=0;u<t.length;u++){let a=t[u],n=t[u+1];if(n){let o=e.indexOf(n,i);if(o>a.length+i){let s=o-(a.length+i);for(;s>0;)a+=" ",s--}}r.push(a),i=i+a.length}return r.join(`
|
||
`)},mIr=(A,e,t)=>{let r=fIr(A.text,A.originalText).split(`
|
||
`),i=[],u=0,a=0;for(let l of r){let g=u,C=g+l.length-1;i.push({line:l,startIndex:g,endIndex:C,lineNumber:a}),u=C+1,a++}let n=t,o=A.originalText.slice(t,t+e.length),s=[];for(let l of i){if(o==="")break;if(n>=l.startIndex&&n<=l.endIndex){let g=l.endIndex+1-n,C=l.line.slice(0,n-l.startIndex),B=o.slice(0,g);o=o.slice(g);let E=m0(C,cu(A),A.lineHeight);if(C===""&&(E.width=0),A.textAlign!=="left"&&l.line.length>0){let p=m0(l.line,cu(A),A.lineHeight),m=A.textAlign==="center"?(A.width-p.width)/2:A.width-p.width;E.width+=m}let{width:d,height:I}=m0(B,cu(A),A.lineHeight),h=E.width,Q=l.lineNumber*E.height;s.push({offsetX:h,offsetY:Q,width:d,height:I}),n+=g}}return s},DIr=(A)=>A.replace(/[.*+?^${}()|[\]\\-]/g,"\\$&"),Vqe=uVe.default((A,e,t)=>{if(!A||A===""){t([],null);return}let r=e.scene.getNonDeletedElements().filter((o)=>Et(o));r.sort((o,s)=>o.y-s.y);let i=[],u=new RegExp(DIr(A),"gi");for(let o of r){let s=null,l=o.originalText;for(;(s=u.exec(l))!==null;){let g=pIr(l,s.index,A),C=mIr(o,A,s.index);C.length>0&&i.push({textElement:o,searchQuery:A,preview:g,index:s.index,matchedLines:C})}}let a=new Set(e.visibleElements.map((o)=>o.id)),n=i.findIndex((o)=>a.has(o.textElement.id))??null;t(i,n)},BIr),nVe=jL("DefaultSidebarTrigger",(A)=>{let{DefaultSidebarTriggerTunnel:e}=Xs();return N(e.In,{children:N(Od.Trigger,{...A,className:"default-sidebar-trigger",name:Kc.name})})});nVe.displayName="DefaultSidebarTrigger";var oVe=({children:A})=>{let{DefaultSidebarTabTriggersTunnel:e}=Xs();return N(e.In,{children:A})};oVe.displayName="DefaultTabTriggers";var jqe=Object.assign(jL("DefaultSidebar",({children:A,className:e,onDock:t,docked:r,...i})=>{let u=b0(),a=zn(),{DefaultSidebarTabTriggersTunnel:n}=Xs(),o=u.openSidebar?.tab===c2;return Rt(Od,{...i,name:"default",key:"default",className:Re("default-sidebar",e),docked:o||(r??u.defaultSidebarDockedPreference),onDock:o||t===!1||!t&&r!=null?void 0:X8(t,(s)=>{a({defaultSidebarDockedPreference:s})})},cA(Od.Tabs,{children:[N(Od.Header,{children:cA(Od.TabTriggers,{children:[N(Od.TabTrigger,{tab:c2,children:np}),N(Od.TabTrigger,{tab:q8,children:eW}),N(n.Out,{})]})}),N(Od.Tab,{tab:q8,children:N(jEr,{})}),N(Od.Tab,{tab:c2,children:N(EIr,{})}),A]}))}),{Trigger:nVe,TabTriggers:oVe}),yIr="small",wIr=(A)=>cA("label",{className:Re("ToolIcon ToolIcon__LaserPointer",`ToolIcon_size_${yIr}`,{"is-mobile":A.isMobile}),title:`${A.title}`,children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:A.name,onChange:A.onChange,checked:A.checked,"aria-label":A.title,"data-testid":"toolbar-LaserPointer"}),N("div",{className:"ToolIcon__icon",children:mhA})]}),bIr=({canvasRef:A,setError:e})=>{let t=A.current;if(!t)return;let r=t.parentElement;r&&(r.style.background="",e(null),t.replaceChildren())},sVe=async({canvasRef:A,mermaidToExcalidrawLib:e,mermaidDefinition:t,setError:r,data:i})=>{let u=A.current,a=u?.parentElement;if(!(!u||!a)){if(!t){bIr({canvasRef:A,setError:r});return}try{let n=await e.api,o;try{o=await n.parseMermaidToExcalidraw(t)}catch{o=await n.parseMermaidToExcalidraw(t.replace(/"/g,"'"))}let{elements:s,files:l={}}=o;r(null),i.current={elements:VL(s,{regenerateIds:!0}),files:l};let g=await qW({elements:i.current.elements,files:i.current.files,exportPadding:g2,maxWidthOrHeight:Math.max(a.offsetWidth,a.offsetHeight)*window.devicePixelRatio});try{await $9(g)}catch(C){throw C.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(uA("canvasError.canvasTooBig")):C}a.style.background="var(--default-bg-color)",u.replaceChildren(g)}catch(n){throw a.style.background="var(--default-bg-color)",t&&r(n),n}}},rmA=(A)=>{eD.set(L9.MERMAID_TO_EXCALIDRAW,A)},lVe=({app:A,data:e,text:t,shouldSaveMermaidDataToStorage:r})=>{let{elements:i,files:u}=e.current;i.length&&(A.addElementsFromPasteOrLibrary({elements:i,files:u,position:"center",fitToContent:!0}),A.setOpenDialog(null),r&&t&&rmA(t))},gVe=({children:A})=>N("div",{className:"ttd-dialog-panels",children:A}),hZ=({label:A,children:e,panelAction:t,panelActionDisabled:r=!1,onTextSubmitInProgess:i,renderTopRight:u,renderSubmitShortcut:a,renderBottomRight:n})=>cA("div",{className:"ttd-dialog-panel",children:[cA("div",{className:"ttd-dialog-panel__header",children:[N("label",{children:A}),u?.()]}),e,cA("div",{className:Re("ttd-dialog-panel-button-container",{invisible:!t}),style:{display:"flex",alignItems:"center"},children:[cA(rD,{className:"ttd-dialog-panel-button",onSelect:t?t.action:()=>{},disabled:r||i,children:[cA("div",{className:Re({invisible:i}),children:[t?.label,t?.icon&&N("span",{children:t.icon})]}),i&&N(tQ,{})]}),!r&&!i&&a?.(),n?.()]})]}),cVe=({input:A,placeholder:e,onChange:t,onKeyboardSubmit:r})=>{let i=Ee(null),u=Ee(r);return u.current=r,le(()=>{if(!u.current)return;let a=i.current;if(a){let n=(o)=>{o[PA.CTRL_OR_CMD]&&o.key===PA.ENTER&&(o.preventDefault(),u.current?.())};return a.addEventListener("keydown",n),()=>{a.removeEventListener("keydown",n)}}},[]),N("textarea",{className:"ttd-dialog-input",onChange:t,value:A,placeholder:e,autoFocus:!0,ref:i})},vIr=({error:A})=>cA("div",{"data-testid":"ttd-dialog-output-error",className:"ttd-dialog-output-error",children:["Error! ",N("p",{children:A})]}),CVe=({error:A,canvasRef:e,loaded:t})=>cA("div",{className:"ttd-dialog-output-wrapper",children:[A&&N(vIr,{error:A.message}),t?N("div",{ref:e,style:{opacity:A?"0.15":1},className:"ttd-dialog-output-canvas-container"}):N(tQ,{size:"2rem"})]}),BVe=()=>cA("div",{className:"ttd-dialog-submit-shortcut",children:[N("div",{className:"ttd-dialog-submit-shortcut__key",children:Fe("CtrlOrCmd")}),N("div",{className:"ttd-dialog-submit-shortcut__key",children:Fe("Enter")})]}),kIr=`flowchart TD
|
||
A[Christmas] -->|Get money| B(Go shopping)
|
||
B --> C{Let me think}
|
||
C -->|One| D[Laptop]
|
||
C -->|Two| E[iPhone]
|
||
C -->|Three| F[Car]`,Xqe=E2(rmA,300),FIr=({mermaidToExcalidrawLib:A})=>{let[e,t]=we(()=>eD.get(L9.MERMAID_TO_EXCALIDRAW)||kIr),r=i_(e.trim()),[i,u]=we(null),a=Ee(null),n=Ee({elements:[],files:null}),o=qd();le(()=>{sVe({canvasRef:a,data:n,mermaidToExcalidrawLib:A,setError:u,mermaidDefinition:r}).catch((l)=>{UIA()&&console.error("Failed to parse mermaid definition",l)}),Xqe(r)},[r,A]),le(()=>()=>{Xqe.flush()},[]);let s=()=>{lVe({app:o,data:n,text:e,shouldSaveMermaidDataToStorage:!0})};return cA(et,{children:[N("div",{className:"ttd-dialog-desc",children:N(_d,{i18nKey:"mermaid.description",flowchartLink:(l)=>N("a",{href:"https://mermaid.js.org/syntax/flowchart.html",children:l}),sequenceLink:(l)=>N("a",{href:"https://mermaid.js.org/syntax/sequenceDiagram.html",children:l}),classLink:(l)=>N("a",{href:"https://mermaid.js.org/syntax/classDiagram.html",children:l})})}),cA(gVe,{children:[N(hZ,{label:uA("mermaid.syntax"),children:N(cVe,{input:e,placeholder:"Write Mermaid diagram defintion here...",onChange:(l)=>t(l.target.value),onKeyboardSubmit:()=>{s()}})}),N(hZ,{label:uA("mermaid.preview"),panelAction:{action:()=>{s()},label:uA("mermaid.button"),icon:uS},renderSubmitShortcut:()=>N(BVe,{}),children:N(CVe,{canvasRef:a,loaded:A.loaded,error:i})})]})]})},xIr=FIr,EVe=(A)=>{let e=zn(),t=Ee(null),r=Ee(0);return N(AZ,{ref:t,className:"ttd-dialog-tabs-root",value:A.tab,onValueChange:(i)=>{if(!i)return;let u=t.current?.closest(".Modal__content");if(u){let a=u.offsetHeight||0;a>r.current&&(r.current=a,u.style.minHeight=`min(${r.current}px, 100%)`)}A.dialog==="ttd"&&TIA(["text-to-diagram","mermaid"],i)&&e({openDialog:{name:A.dialog,tab:i}})},children:A.children})};EVe.displayName="TTDDialogTabs";var SIr=EVe,dVe=({children:A,...e})=>N(eZ,{className:"ttd-dialog-triggers",...e,children:A});dVe.displayName="TTDDialogTabTriggers";var Y3A=({children:A,tab:e,onSelect:t,...r})=>N(tZ,{value:e,asChild:!0,onSelect:t,children:N("button",{type:"button",className:"ttd-dialog-tab-trigger",...r,children:A})});Y3A.displayName="TTDDialogTabTrigger";var H3A=({tab:A,children:e,...t})=>N(rZ,{...t,value:A,children:e});H3A.displayName="TTDDialogTab";var Q3A=3,W5=1000,LIr=Pn(null),RIr=Pn(null),NIr=(A)=>{let e=b0();return e.openDialog?.name!=="ttd"?null:N(GIr,{...A,tab:e.openDialog.tab})},GIr=jL("TTDDialogBase",({tab:A,...e})=>{let t=qd(),r=zn(),i=Ee(null),[u,a]=Oa(RIr),[n,o]=we(u?.prompt??""),s=n.trim(),l=(D)=>{o(D.target.value),a((w)=>({generatedResponse:w?.generatedResponse??null,prompt:D.target.value}))},[g,C]=we(!1),[B,E]=Oa(LIr),d=async()=>{if(s.length>W5||s.length<Q3A||g||B?.rateLimitRemaining===0||"__fallback"in e){s.length<Q3A&&f(Error(`Prompt is too short (min ${Q3A} characters)`)),s.length>W5&&f(Error(`Prompt is too long (max ${W5} characters)`));return}try{C(!0),Nu("ai","generate","ttd");let{generatedResponse:D,error:w,rateLimit:b,rateLimitRemaining:F}=await e.onTextSubmit(s);if(typeof D=="string"&&a((v)=>({generatedResponse:D,prompt:v?.prompt??null})),f9(b)&&f9(F)&&E({rateLimit:b,rateLimitRemaining:F}),w){f(w);return}if(!D){f(Error("Generation failed"));return}try{await sVe({canvasRef:i,data:p,mermaidToExcalidrawLib:h,setError:f,mermaidDefinition:D}),Nu("ai","mermaid parse success","ttd")}catch(v){console.info(`%cTTD mermaid render errror: ${v.message}`,"color: red"),console.info(`>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
||
TTD mermaid definition render errror: ${v.message}`,"color: yellow"),Nu("ai","mermaid parse failed","ttd"),f(Error("Generated an invalid diagram :(. You may also try a different prompt."))}}catch(D){let w=D.message;(!w||w==="Failed to fetch")&&(w="Request failed"),f(Error(w))}finally{C(!1)}},I=Ee(d);I.current=d;let[h,Q]=we({loaded:!1,api:Promise.resolve().then(() => (kP(),Tge))});le(()=>{(async()=>{await h.api,Q((D)=>({...D,loaded:!0}))})()},[h.api]);let p=Ee({elements:[],files:null}),[m,f]=we(null);return N(HB,{className:"ttd-dialog",onCloseRequest:()=>{t.setOpenDialog(null)},size:1200,title:!1,...e,autofocus:!1,children:cA(SIr,{dialog:"ttd",tab:A,children:["__fallback"in e&&e.__fallback?N("p",{className:"dialog-mermaid-title",children:uA("mermaid.title")}):cA(dVe,{children:[N(Y3A,{tab:"text-to-diagram",children:cA("div",{style:{display:"flex",alignItems:"center"},children:[uA("labels.textToDiagram"),N("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"1px 6px",marginLeft:"10px",fontSize:10,borderRadius:"12px",background:"var(--color-promo)",color:"var(--color-surface-lowest)"},children:"AI Beta"})]})}),N(Y3A,{tab:"mermaid",children:"Mermaid"})]}),N(H3A,{className:"ttd-dialog-content",tab:"mermaid",children:N(xIr,{mermaidToExcalidrawLib:h})}),!("__fallback"in e)&&cA(H3A,{className:"ttd-dialog-content",tab:"text-to-diagram",children:[N("div",{className:"ttd-dialog-desc",children:"Currently we use Mermaid as a middle step, so you'll get best results if you describe a diagram, workflow, flow chart, and similar."}),cA(gVe,{children:[N(hZ,{label:uA("labels.prompt"),panelAction:{action:d,label:"Generate",icon:uS},onTextSubmitInProgess:g,panelActionDisabled:s.length>W5||B?.rateLimitRemaining===0,renderTopRight:()=>B?cA("div",{className:"ttd-dialog-rate-limit",style:{fontSize:12,marginLeft:"auto",color:B.rateLimitRemaining===0?"var(--color-danger)":void 0},children:[B.rateLimitRemaining," requests left today"]}):null,renderSubmitShortcut:()=>N(BVe,{}),renderBottomRight:()=>{if(typeof u?.generatedResponse=="string")return cA("div",{className:"excalidraw-link",style:{marginLeft:"auto",fontSize:14},onClick:()=>{typeof u?.generatedResponse=="string"&&(rmA(u.generatedResponse),r({openDialog:{name:"ttd",tab:"mermaid"}}))},children:["View as Mermaid",N(wZ,{icon:uS})]});let D=s.length/W5;return D>0.8?cA("div",{style:{marginLeft:"auto",fontSize:12,fontFamily:"monospace",color:D>1?"var(--color-danger)":void 0},children:["Length: ",s.length,"/",W5]}):null},children:N(cVe,{onChange:l,input:n,placeholder:"Describe what you want to see...",onKeyboardSubmit:()=>{I.current()}})}),N(hZ,{label:"Preview",panelAction:{action:()=>{console.info("Panel action clicked"),lVe({app:t,data:p})},label:"Insert",icon:uS},children:N(CVe,{canvasRef:i,error:m,loaded:h.loaded})})]})]})]})})}),UIr=0.01,rQ=(A,e)=>!(e==="height"&&Et(A)||e==="width"&&Et(A)||e==="angle"&&nr(A)),is=(A,e)=>{let t=A+e/2;return t-t%e},QZ=(A,e,t)=>Object.keys(A).map((r)=>({original:(t??e).get(r),latest:e.get(r)})).filter((r)=>r.original!==void 0&&r.latest!==void 0),ZL=(A,e,t,r,i,u,a,n=!0)=>{let o=r.get(t.id);if(!o)return;let[s,l]=[t.x+t.width/2,t.y+t.height/2],[g,C]=ye(X(t.x,t.y),X(s,l),t.angle),B=A-g,E=e-C,[d,I]=ye(X(A,e),X(s+B,l+E),-t.angle);Se(o,{x:d,y:I},n),K3A(o,r,i,u);let h=Gr(t,a);if(h){let Q=r.get(h.id);Q&&Se(Q,{x:h.x+B,y:h.y+E},n)}},imA=(A,e)=>{let t=lp(e).map((r)=>Yu(A,r).reduce((i,u)=>(i[u.id]=!0,i),{}));return A.filter((r)=>!f2(r)).forEach((r)=>{t.push({[r.id]:!0})}),t},K3A=(A,e,t,r,i)=>{Nr(A)?sS([A],e,t,r,!0,[],i?.zoom):Os(A,e,i)},MIr=({label:A,icon:e,dragInputCallback:t,value:r,elements:i,editable:u=!0,shouldKeepAspectRatio:a,property:n,scene:o,appState:s,sensitivity:l=1})=>{let g=qd(),C=Ee(null),B=Ee(null),[E,d]=we(r.toString()),I=Ee(null);I.current||(I.current={originalAppState:vd(s),originalElements:i,lastUpdatedValue:E,updatePending:!1}),le(()=>{let p=r.toString();d(p),I.current.lastUpdatedValue=p},[r]);let h=(p,m,f)=>{if(!I.current.updatePending)return!1;I.current.updatePending=!1;let D=Number(p);if(isNaN(D)){d(r.toString());return}let w=Number(D.toFixed(2)),b=Number(r);(isNaN(b)||Math.abs(w-b)>=UIr)&&(I.current.lastUpdatedValue=p,t({accumulatedChange:0,instantChange:0,originalElements:m,originalElementsMap:g.scene.getNonDeletedElementsMap(),shouldKeepAspectRatio:a,shouldChangeByStepSize:!1,scene:o,nextValue:w,property:n,originalAppState:f,setInputValue:(F)=>d(String(F))}),g.syncActionResult({captureUpdate:be.IMMEDIATELY}))},Q=Ee({});return Q.current.handleInputValue=h,le(()=>{let p=C.current,m=Q.current;return()=>{let f=p?.value;f&&m.handleInputValue?.(f,I.current.originalElements,I.current.originalAppState),window.removeEventListener("pointermove",m.onPointerMove,!1),window.removeEventListener("pointerup",m.onPointerUp,!1)}},[u]),u?cA("div",{className:Re("drag-input-container",!u&&"disabled"),"data-testid":A,children:[N("div",{className:"drag-input-label",ref:B,onPointerDown:(p)=>{if(C.current&&u){document.body.classList.add("excalidraw-cursor-resize");let m=Number(C.current.value);isNaN(m)&&(m=0);let f=null,D=g.scene.getNonDeletedElements().reduce((k,T)=>(k.set(T.id,gp(T)),k),new Map),w=i.map((k)=>D.get(k.id)),b=vd(s),F=0,v=0,S=(k)=>{if(f&&D!==null&&w!==null){let T=k.clientX-f.x;T!==0&&(v+=T,Math.abs(v)>=l&&(v=Math.sign(v)*Math.floor(Math.abs(v)/l),F+=v,t({accumulatedChange:F,instantChange:v,originalElements:w,originalElementsMap:D,shouldKeepAspectRatio:a,shouldChangeByStepSize:k.shiftKey,property:n,scene:o,originalAppState:b,setInputValue:(R)=>d(String(R))}),v=0))}f={x:k.clientX,y:k.clientY}},x=()=>{window.removeEventListener("pointermove",S,!1),g.syncActionResult({captureUpdate:be.IMMEDIATELY}),f=null,F=0,v=0,w=null,D=null,document.body.classList.remove("excalidraw-cursor-resize"),window.removeEventListener("pointerup",x,!1)};Q.current.onPointerMove=S,Q.current.onPointerUp=x,window.addEventListener("pointermove",S,!1),window.addEventListener("pointerup",x,!1)}},onPointerEnter:()=>{B.current&&(B.current.style.cursor="ew-resize")},children:e?N(wZ,{icon:e}):A}),N("input",{className:"drag-input",autoComplete:"off",spellCheck:"false",onKeyDown:(p)=>{if(u){let m=p.target;m instanceof HTMLInputElement&&p.key===PA.ENTER&&(h(m.value,i,s),g.focusContainer())}},ref:C,value:E,onChange:(p)=>{I.current.updatePending=!0,d(p.target.value)},onFocus:(p)=>{p.target.select(),I.current.originalElements=i,I.current.originalAppState=vd(s)},onBlur:(p)=>{E?u&&h(p.target.value,I.current.originalElements,I.current.originalAppState):d(r.toString())},disabled:!u})]}):null},uQ=MIr,$qe=10,TIr=(A)=>A.type==="image",YIr=({accumulatedChange:A,originalElements:e,originalElementsMap:t,shouldKeepAspectRatio:r,shouldChangeByStepSize:i,nextValue:u,property:a,originalAppState:n,instantChange:o,scene:s})=>{let l=s.getNonDeletedElementsMap(),g=e[0],C=l.get(g.id);if(g&&C){let B=r||TIr(g),E=g.width/g.height;if(n.croppingElementId===g.id){let p=l.get(g.id);if(!p||!Ri(p)||!p.crop)return;let m=p.crop,f={...m},D=p.scale[0]===-1,w=p.scale[1]===-1,{width:b,height:F}=md(p),v=m.naturalWidth/b,S=m.naturalHeight/F,x=D?m.width+m.x:m.naturalWidth-m.x,k=w?m.height+m.y:m.naturalHeight-m.y,T=Bo*v,R=Bo*S;if(u!==void 0){if(a==="width"){let H=u*v,J=Vr(H,T,x);f={...f,width:J,x:D?m.x+m.width-J:m.x}}else if(a==="height"){let H=u*S,J=Vr(H,R,k);f={...f,height:J,y:w?m.y+m.height-J:m.y}}Se(p,{crop:f,width:f.width/(m.naturalWidth/b),height:f.height/(m.naturalHeight/F)});return}let L=a==="width"?o:0,M=a==="height"?o:0,U=Vr(m.width+L,T,x),Y=Vr(m.height+M,T,k);f={...m,x:D?m.x+m.width-U:m.x,y:w?m.y+m.height-Y:m.y,width:U,height:Y},Se(p,{crop:f,width:f.width/(m.naturalWidth/b),height:f.height/(m.naturalHeight/F)});return}if(u!==void 0){let p=Math.max(a==="width"?u:B?u*E:g.width,Rg),m=Math.max(a==="height"?u:B?u/E:g.height,Rg);X9(p,m,C,g,l,t,a==="width"?"e":"s",{shouldMaintainAspectRatio:B});return}let d=a==="width"?A:0,I=a==="height"?A:0,h=Math.max(0,g.width+d);a==="width"&&(i?h=is(h,$qe):h=Math.round(h));let Q=Math.max(0,g.height+I);a==="height"&&(i?Q=is(Q,$qe):Q=Math.round(Q)),B&&(a==="width"?Q=Math.round(h/E*100)/100:h=Math.round(Q*E*100)/100),Q=Math.max(Rg,Q),h=Math.max(Rg,h),X9(h,Q,C,g,l,t,a==="width"?"e":"s",{shouldMaintainAspectRatio:B})}},HIr=({property:A,element:e,scene:t,appState:r})=>{let i=IB(A==="width"?e.width:e.height,2);if(r.croppingElementId&&r.croppingElementId===e.id&&Ri(e)&&e.crop){let{width:u,height:a}=md(e);if(A==="width"){let n=u/e.crop.naturalWidth;i=IB(e.crop.width*n,2)}if(A==="height"){let n=a/e.crop.naturalHeight;i=IB(e.crop.height*n,2)}}return N(uQ,{label:A==="width"?"W":"H",elements:[e],dragInputCallback:YIr,value:i,editable:rQ(e,A),scene:t,appState:r,property:A})},Aze=HIr;var KIr=15,JIr=({accumulatedChange:A,originalElements:e,shouldChangeByStepSize:t,nextValue:r,scene:i})=>{let u=i.getNonDeletedElementsMap(),a=i.getNonDeletedElements(),n=e[0];if(n&&!ft(n)){let o=u.get(n.id);if(!o)return;if(r!==void 0){let E=P1(r);Se(o,{angle:E}),K3A(o,u,a,i);let d=Gr(o,u);d&&!Kr(o)&&Se(d,{angle:E});return}let s=Math.round(R9(n.angle)*100)/100,l=Math.round(A),g=(s+l)%360;t&&(g=is(g,KIr)),g=g<0?g+360:g;let C=P1(g);Se(o,{angle:C}),K3A(o,u,a,i);let B=Gr(o,u);B&&!Kr(o)&&Se(B,{angle:C})}},OIr=({element:A,scene:e,appState:t,property:r})=>N(uQ,{label:"A",icon:IhA,value:Math.round(R9(A.angle)%360*100)/100,elements:[A],dragInputCallback:JIr,editable:rQ(A,"angle"),scene:e,appState:t,property:r}),PIr=OIr,eze=4,_Ir=4,WIr=({accumulatedChange:A,originalElements:e,shouldChangeByStepSize:t,nextValue:r,scene:i})=>{let u=i.getNonDeletedElementsMap(),a=e[0];if(a){let n=u.get(a.id);if(!n||!Et(n))return;let o;if(r!==void 0)o=Math.max(Math.round(r),eze);else if(a.type==="text"){let s=Math.round(a.fontSize),l=Math.round(A);o=Math.max(s+l,eze),t&&(o=is(o,_Ir))}o&&(Se(n,{fontSize:o}),j0(n,i.getContainerElement(n),i.getNonDeletedElementsMap()))}},qIr=({element:A,scene:e,appState:t,property:r})=>{let i=Et(A)?A:Yl(A)?Gr(A,e.getNonDeletedElementsMap()):null;return i?N(uQ,{label:"F",value:Math.round(i.fontSize*10)/10,elements:[i],dragInputCallback:WIr,icon:iS,appState:t,scene:e,property:r}):null},zIr=qIr,q5=10,ZIr=(A,e,t,r)=>{let i=r.x-A,u=r.y-e,a=r.width*t,n=r.height*t,o=A+i*t,s=e+u*t;return{width:a,height:n,x:o,y:s,...tq(r,a,n,!1),...Et(r)?{fontSize:r.fontSize*t}:{}}},VIr=(A,e,t,r,i,u,a,n)=>{let o=ZIr(A,e,r,u);Se(i,o,!1);let s=Gr(u,n);if(s){let l=s.fontSize*r;Os(i,a,{newSize:{width:o.width,height:o.height}});let g=a.get(s.id);g&&Et(g)&&(Se(g,{fontSize:l},!1),_9(i,a,t==="width"?"e":"s",!0))}},tze=(A,e,t,r,i,u,a,n,o,s)=>{u==="width"?e=Math.round(A/r*100)/100:A=Math.round(e*r*100)/100;let l=e/t;for(let g=0;g<n.length;g++){let C=n[g],B=a[g];VIr(i[0],i[1],u,l,B,C,o,s)}},jIr=({accumulatedChange:A,originalElements:e,originalElementsMap:t,originalAppState:r,shouldChangeByStepSize:i,nextValue:u,scene:a,property:n})=>{let o=a.getNonDeletedElementsMap(),s=imA(e,r);if(u!==void 0){for(let C of s){let B=QZ(C,o,t);if(B.length>1){let E=B.map((F)=>F.latest),d=B.map((F)=>F.original),[I,h,Q,p]=Pi(d),m=Q-I,f=p-h,D=m/f,w=Math.max(Rg,n==="width"?Math.max(0,u):m),b=Math.max(Rg,n==="height"?Math.max(0,u):f);tze(w,b,f,D,X(I,h),n,E,d,o,t)}else{let[E]=B,d=E?.latest,I=E?.original;if(d&&I&&rQ(d,n)){let h=n==="width"?Math.max(0,u):d.width;n==="width"&&(i?h=is(h,q5):h=Math.round(h));let Q=n==="height"?Math.max(0,u):d.height;n==="height"&&(i?Q=is(Q,q5):Q=Math.round(Q)),h=Math.max(Rg,h),Q=Math.max(Rg,Q),X9(h,Q,d,I,o,t,n==="width"?"e":"s",{shouldInformMutation:!1})}}}a.triggerUpdate();return}let l=n==="width"?A:0,g=n==="height"?A:0;for(let C of s){let B=QZ(C,o,t);if(B.length>1){let E=B.map((F)=>F.latest),d=B.map((F)=>F.original),[I,h,Q,p]=Pi(d),m=Q-I,f=p-h,D=m/f,w=Math.max(0,m+l);n==="width"&&(i?w=is(w,q5):w=Math.round(w));let b=Math.max(0,f+g);n==="height"&&(i?b=is(b,q5):b=Math.round(b)),w=Math.max(Rg,w),b=Math.max(Rg,b),tze(w,b,f,D,X(I,h),n,E,d,o,t)}else{let[E]=B,d=E?.latest,I=E?.original;if(d&&I&&rQ(d,n)){let h=Math.max(0,I.width+l);n==="width"&&(i?h=is(h,q5):h=Math.round(h));let Q=Math.max(0,I.height+g);n==="height"&&(i?Q=is(Q,q5):Q=Math.round(Q)),h=Math.max(Rg,h),Q=Math.max(Rg,Q),X9(h,Q,d,I,o,t,n==="width"?"e":"s",{shouldInformMutation:!1})}}}a.triggerUpdate()},XIr=({property:A,elements:e,elementsMap:t,atomicUnits:r,scene:i,appState:u})=>{let a=Ut(()=>r.map((s)=>{let l=QZ(s,t);if(l.length>1){let[C,B,E,d]=Pi(l.map((I)=>I.latest));return Math.round((A==="width"?E-C:d-B)*100)/100}let[g]=l;return Math.round((A==="width"?g.latest.width:g.latest.height)*100)/100}),[t,r,A]),n=new Set(a).size===1?Math.round(a[0]*100)/100:"Mixed",o=a.length>0;return N(uQ,{label:A==="width"?"W":"H",elements:e,dragInputCallback:jIr,value:n,editable:o,appState:u,property:A,scene:i})},rze=XIr,$Ir=15,Ahr=({accumulatedChange:A,originalElements:e,shouldChangeByStepSize:t,nextValue:r,property:i,scene:u})=>{let a=u.getNonDeletedElementsMap(),n=e.map((s)=>a.get(s.id)).filter((s)=>s&&!f2(s)&&rQ(s,i)),o=e.filter((s)=>!f2(s)&&rQ(s,i));if(r!==void 0){let s=P1(r);for(let l of n){if(!l)continue;Se(l,{angle:s},!1);let g=Gr(l,a);g&&!Kr(l)&&Se(g,{angle:s},!1)}u.triggerUpdate();return}for(let s=0;s<n.length;s++){let l=n[s];if(!l)continue;let g=o[s],C=Math.round(R9(g.angle)*100)/100,B=Math.round(A),E=(C+B)%360;t&&(E=is(E,$Ir)),E=E<0?E+360:E;let d=P1(E);Se(l,{angle:d},!1);let I=Gr(l,a);I&&!Kr(l)&&Se(I,{angle:d},!1)}u.triggerUpdate()},ehr=({elements:A,scene:e,appState:t,property:r})=>{let i=A.filter((o)=>!f2(o)&&rQ(o,"angle")),u=i.map((o)=>Math.round(R9(o.angle)%360*100)/100),a=new Set(u).size===1?u[0]:"Mixed",n=i.some((o)=>rQ(o,"angle"));return N(uQ,{label:"A",icon:IhA,value:a,elements:A,dragInputCallback:Ahr,editable:n,appState:t,scene:e,property:r})},thr=ehr,ize=4,rhr=4,ihr=(A,e)=>A.reduce((t,r)=>{if(!r||f2(r))return t;if(Et(r))return t.push(r),t;if(Yl(r)){let i=Gr(r,e);if(i)return t.push(i),t}return t},[]),uhr=({accumulatedChange:A,originalElements:e,shouldChangeByStepSize:t,nextValue:r,scene:i})=>{let u=i.getNonDeletedElementsMap(),a=e.map((o)=>u.get(o.id)),n;if(r){n=Math.max(Math.round(r),ize);for(let o of a)Se(o,{fontSize:n},!1),j0(o,i.getContainerElement(o),u,!1);i.triggerUpdate()}else{let o=e;for(let s=0;s<a.length;s++){let l=a[s],g=o[s],C=Math.round(g.fontSize),B=Math.round(A),E=Math.max(C+B,ize);t&&(E=is(E,rhr)),Se(l,{fontSize:E},!1),j0(l,i.getContainerElement(l),u,!1)}i.triggerUpdate()}},ahr=({elements:A,scene:e,appState:t,property:r,elementsMap:i})=>{let u=ihr(A,i);if(!u.length)return null;let a=u.map((s)=>Math.round(s.fontSize*10)/10),n=new Set(a).size===1?a[0]:"Mixed",o=a.length>0;return N(uQ,{label:"F",icon:iS,elements:u,dragInputCallback:uhr,value:n,editable:o,scene:e,property:r,appState:t})},nhr=ahr,uze=10,ohr=({accumulatedChange:A,instantChange:e,originalElements:t,originalElementsMap:r,shouldChangeByStepSize:i,nextValue:u,property:a,scene:n,originalAppState:o})=>{let s=n.getNonDeletedElementsMap(),l=n.getNonDeletedElements(),g=t[0],[C,B]=[g.x+g.width/2,g.y+g.height/2],[E,d]=ye(X(g.x,g.y),X(C,B),g.angle);if(o.croppingElementId===g.id){let m=s.get(g.id);if(!m||!Ri(m)||!m.crop)return;let f=m.crop,D=f,w=m.scale[0]===-1,b=m.scale[1]===-1,{width:F,height:v}=md(m);if(u!==void 0){if(a==="x"){let k=u*(f.naturalWidth/F);w?D={...f,x:Vr(f.naturalWidth-k-f.width,0,f.naturalWidth-f.width)}:D={...f,x:Vr(u*(f.naturalWidth/F),0,f.naturalWidth-f.width)}}a==="y"&&(D={...f,y:Vr(u*(f.naturalHeight/v),0,f.naturalHeight-f.height)}),Se(m,{crop:D});return}let S=(a==="x"?e:0)*(w?-1:1),x=(a==="y"?e:0)*(b?-1:1);D={...f,x:Vr(f.x+S,0,f.naturalWidth-f.width),y:Vr(f.y+x,0,f.naturalHeight-f.height)},Se(m,{crop:D});return}if(u!==void 0){ZL(a==="x"?u:E,a==="y"?u:d,g,s,l,n,r);return}let I=a==="x"?A:0,h=a==="y"?A:0,Q=a==="x"?Math.round(i?is(g.x+I,uze):E+I):E,p=a==="y"?Math.round(i?is(g.y+h,uze):d+h):d;ZL(Q,p,g,s,l,n,r)},shr=({property:A,element:e,elementsMap:t,scene:r,appState:i})=>{let[u,a]=ye(X(e.x,e.y),X(e.x+e.width/2,e.y+e.height/2),e.angle),n=IB(A==="x"?u:a,2);if(i.croppingElementId===e.id&&Ri(e)&&e.crop){let o=xQe(e);o&&(n=IB(A==="x"?o.x:o.y,2))}return N(uQ,{label:A==="x"?"X":"Y",elements:[e],dragInputCallback:ohr,scene:r,value:n,property:A,appState:i})},aze=shr,lhr=10,ghr=(A,e,t,r,i,u,a,n)=>{for(let o=0;o<r.length;o++){let s=i[o],[l,g]=[s.x+s.width/2,s.y+s.height/2],[C,B]=ye(X(s.x,s.y),X(l,g),s.angle),E=A==="x"?Math.round(C+e):C,d=A==="y"?Math.round(B+t):B;ZL(E,d,s,u,r,n,a,!1)}},chr=(A,e,t,r,i,u,a)=>{let[n,o,,]=Pi(t),s=A-n,l=e-o;for(let g=0;g<t.length;g++){let C=t[g],B=r.get(C.id);if(B&&(!Et(B)||!B.containerId)){let[E,d]=[B.x+B.width/2,B.y+B.height/2],[I,h]=ye(X(B.x,B.y),X(E,d),B.angle);ZL(I+s,h+l,C,r,i,a,u,!1)}}},Chr=({accumulatedChange:A,originalElements:e,originalElementsMap:t,shouldChangeByStepSize:r,nextValue:i,property:u,scene:a,originalAppState:n})=>{let o=a.getNonDeletedElementsMap(),s=a.getNonDeletedElements();if(i!==void 0){for(let g of imA(e,n)){let C=QZ(g,o,t);if(C.length>1){let[B,E,,]=Pi(C.map((d)=>d.latest));chr(u==="x"?i:B,u==="y"?i:E,C.map((d)=>d.original),o,s,t,a)}else{let B=C[0]?.original,E=C[0]?.latest;if(B&&E&&rQ(E,u)){let[d,I]=[B.x+B.width/2,B.y+B.height/2],[h,Q]=ye(X(B.x,B.y),X(d,I),B.angle);ZL(u==="x"?i:h,u==="y"?i:Q,B,o,s,a,t,!1)}}}a.triggerUpdate();return}let l=r?is(A,lhr):A;ghr(u,u==="x"?l:0,u==="y"?l:0,e,e,o,t,a),a.triggerUpdate()},Bhr=({property:A,elements:e,elementsMap:t,atomicUnits:r,scene:i,appState:u})=>{let a=Ut(()=>r.map((o)=>{let s=Object.keys(o).map((d)=>t.get(d)).filter((d)=>d!==void 0);if(s.length>1){let[d,I]=Pi(s);return Math.round((A==="x"?d:I)*100)/100}let[l]=s,[g,C]=[l.x+l.width/2,l.y+l.height/2],[B,E]=ye(X(l.x,l.y),X(g,C),l.angle);return Math.round((A==="x"?B:E)*100)/100}),[r,t,A]),n=new Set(a).size===1?a[0]:"Mixed";return N(uQ,{label:A==="x"?"X":"Y",elements:e,dragInputCallback:Chr,value:n,property:A,scene:i,appState:u})},nze=Bhr,oze=5,Ehr=({property:A,scene:e,appState:t,setAppState:r})=>N(uQ,{label:"Grid step",sensitivity:8,elements:[],dragInputCallback:({nextValue:i,instantChange:u,shouldChangeByStepSize:a,setInputValue:n})=>{r((o)=>{let s;return i?s=i:u&&(s=a?is(o.gridStep+oze*Math.sign(u),oze):o.gridStep+u),s?(s=_hA(s),n(s),{gridStep:s}):(n(o.gridStep),null)})},scene:e,value:t.gridStep,property:A,appState:t}),dhr=Ehr,Ihr=50,umA=(A)=>{let e=AR(),t=A.app.scene.getSceneNonce()||1,r=A.app.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!1}),i=P9(A.app);return N(hhr,{...A,appState:e,sceneNonce:t,selectedElements:r,gridModeEnabled:i})},Xu=({children:A,columns:e=1,heading:t,style:r,...i})=>N("div",{className:Re("exc-stats__row",{"exc-stats__row--heading":t}),style:{gridTemplateColumns:`repeat(${e}, 1fr)`,...r},...i,children:A});Xu.displayName="StatsRow";var pZ=({children:A,order:e,style:t,...r})=>N("div",{className:"exc-stats__rows",style:{order:e,...t},...r,children:A});pZ.displayName="StatsRows";umA.StatsRow=Xu;umA.StatsRows=pZ;var hhr=gi(({app:A,onClose:e,renderCustomStats:t,selectedElements:r,appState:i,sceneNonce:u,gridModeEnabled:a})=>{let n=A.scene,o=n.getNonDeletedElements(),s=n.getNonDeletedElementsMap(),l=zn(),g=r.length===1?r[0]:null,C=r.length>1?r:null,B=i.croppingElementId&&Ri(g),E=B?md(g):null,[d,I]=we({width:0,height:0}),h=Ut(()=>IVe.default((m)=>{let f=Pi(m);I({width:Math.round(f[2])-Math.round(f[0]),height:Math.round(f[3])-Math.round(f[1])})},Ihr),[]);le(()=>{h(o)},[u,o,h]),le(()=>()=>h.cancel(),[h]);let Q=Ut(()=>imA(r,i),[r,i]),p=Ut(()=>UQA(r),[r]);return N("div",{className:"exc-stats",children:cA(YB,{padding:3,children:[cA("div",{className:"title",children:[N("h2",{children:uA("stats.title")}),N("div",{className:"close",onClick:e,children:h2})]}),cA(x3A,{label:N("h3",{children:uA("stats.generalStats")}),open:!!(i.stats.panels&A2.generalStats),openTrigger:()=>l((m)=>({stats:{open:!0,panels:m.stats.panels^A2.generalStats}})),children:[cA(pZ,{children:[N(Xu,{heading:!0,children:uA("stats.scene")}),cA(Xu,{columns:2,children:[N("div",{children:uA("stats.shapes")}),N("div",{children:o.length})]}),cA(Xu,{columns:2,children:[N("div",{children:uA("stats.width")}),N("div",{children:d.width})]}),cA(Xu,{columns:2,children:[N("div",{children:uA("stats.height")}),N("div",{children:d.height})]}),a&&cA(et,{children:[N(Xu,{heading:!0,children:"Canvas"}),N(Xu,{children:N(dhr,{property:"gridStep",scene:n,appState:i,setAppState:l})})]})]}),t?.(o,i)]}),!p&&r.length>0&&N("div",{id:"elementStats",style:{marginTop:12},children:N(x3A,{label:N("h3",{children:uA("stats.elementProperties")}),open:!!(i.stats.panels&A2.elementProperties),openTrigger:()=>l((m)=>({stats:{open:!0,panels:m.stats.panels^A2.elementProperties}})),children:cA(pZ,{children:[g&&cA(et,{children:[B&&N(Xu,{heading:!0,children:uA("labels.unCroppedDimension")}),i.croppingElementId&&Ri(g)&&E&&cA(Xu,{columns:2,children:[N("div",{children:uA("stats.width")}),N("div",{children:IB(E.width,2)})]}),i.croppingElementId&&Ri(g)&&E&&cA(Xu,{columns:2,children:[N("div",{children:uA("stats.height")}),N("div",{children:IB(E.height,2)})]}),N(Xu,{heading:!0,"data-testid":"stats-element-type",children:i.croppingElementId?uA("labels.imageCropping"):uA(`element.${g.type}`)}),N(Xu,{children:N(aze,{element:g,property:"x",elementsMap:s,scene:n,appState:i})}),N(Xu,{children:N(aze,{element:g,property:"y",elementsMap:s,scene:n,appState:i})}),N(Xu,{children:N(Aze,{property:"width",element:g,scene:n,appState:i})}),N(Xu,{children:N(Aze,{property:"height",element:g,scene:n,appState:i})}),!ft(g)&&N(Xu,{children:N(PIr,{property:"angle",element:g,scene:n,appState:i})}),N(Xu,{children:N(zIr,{property:"fontSize",element:g,scene:n,appState:i})})]}),C&&cA(et,{children:[VhA(C)&&N(Xu,{heading:!0,children:uA("element.group")}),cA(Xu,{columns:2,style:{margin:"0.3125rem 0"},children:[N("div",{children:uA("stats.shapes")}),N("div",{children:r.length})]}),N(Xu,{children:N(nze,{property:"x",elements:C,elementsMap:s,atomicUnits:Q,scene:n,appState:i})}),N(Xu,{children:N(nze,{property:"y",elements:C,elementsMap:s,atomicUnits:Q,scene:n,appState:i})}),N(Xu,{children:N(rze,{property:"width",elements:C,elementsMap:s,atomicUnits:Q,scene:n,appState:i})}),N(Xu,{children:N(rze,{property:"height",elements:C,elementsMap:s,atomicUnits:Q,scene:n,appState:i})}),N(Xu,{children:N(thr,{property:"angle",elements:C,scene:n,appState:i})}),N(Xu,{children:N(nhr,{property:"fontSize",elements:C,scene:n,appState:i,elementsMap:s})})]})]})})})]})})},(A,e)=>A.sceneNonce===e.sceneNonce&&A.selectedElements===e.selectedElements&&A.appState.stats.panels===e.appState.stats.panels&&A.gridModeEnabled===e.gridModeEnabled&&A.appState.gridStep===e.appState.gridStep&&A.appState.croppingElementId===e.appState.croppingElementId),Qhr=({sourceElementId:A,onClose:e,elementsMap:t,appState:r,generateLinkForSelection:i=dQA})=>{let u=t.get(A)?.link??null,[a,n]=we(u),[o,s]=we(!1);le(()=>{let g=Jr(t,r),C=u;if(g.length>0&&i){let B=IQA(g,r);B&&(C=Ml(i(B.id,B.type)))}n(C)},[t,r,r.selectedElementIds,u,i]);let l=lt(()=>{if(a&&a!==t.get(A)?.link){let g=t.get(A);g&&Se(g,{link:a})}if(!a&&o&&A){let g=t.get(A);g&&Se(g,{link:null})}e?.()},[A,a,t,o,e]);return le(()=>{let g=(C)=>{r.openDialog?.name==="elementLinkSelector"&&C.key===PA.ENTER&&l(),r.openDialog?.name==="elementLinkSelector"&&C.key===PA.ESCAPE&&e?.()};return window.addEventListener("keydown",g),()=>{window.removeEventListener("keydown",g)}},[r,e,l]),cA("div",{className:"ElementLinkDialog",children:[cA("div",{className:"ElementLinkDialog__header",children:[N("h2",{children:uA("elementLink.title")}),N("p",{children:uA("elementLink.desc")})]}),cA("div",{className:"ElementLinkDialog__input",children:[N(AmA,{value:a??"",onChange:(g)=>{o||s(!0),n(g)},onKeyDown:(g)=>{g.key===PA.ENTER&&l()},className:"ElementLinkDialog__input-field",selectOnRender:!0}),u&&a&&N(ci,{type:"button",title:uA("buttons.remove"),"aria-label":uA("buttons.remove"),label:uA("buttons.remove"),onClick:()=>{n(null),s(!0)},className:"ElementLinkDialog__remove",icon:ap})]}),cA("div",{className:"ElementLinkDialog__actions",children:[N(j5,{label:uA("buttons.cancel"),onClick:()=>{e?.()},style:{marginRight:10}}),N(j5,{label:uA("buttons.confirm"),onClick:l,actionType:"primary"})]})]})},phr=Qhr,fhr=({UIOptions:A})=>cA(Wl,{__fallback:!0,children:[N(Wl.DefaultItems.LoadScene,{}),N(Wl.DefaultItems.SaveToActiveFile,{}),A.canvasActions.export&&N(Wl.DefaultItems.Export,{}),A.canvasActions.saveAsImage&&N(Wl.DefaultItems.SaveAsImage,{}),N(Wl.DefaultItems.SearchMenu,{}),N(Wl.DefaultItems.Help,{}),N(Wl.DefaultItems.ClearCanvas,{}),N(Wl.Separator,{}),N(Wl.Group,{title:"Excalidraw links",children:N(Wl.DefaultItems.Socials,{})}),N(Wl.Separator,{}),N(Wl.DefaultItems.ToggleTheme,{}),N(Wl.DefaultItems.ChangeCanvasBackground,{})]}),mhr=()=>cA(h3A,{__fallback:!0,children:[N(h3A.Actions.SaveToDisk,{}),N(h3A.Actions.ExportToImage,{})]}),Dhr=({actionManager:A,appState:e,files:t,setAppState:r,elements:i,canvas:u,onLockToggle:a,onHandToolToggle:n,onPenModeToggle:o,showExitZenModeBtn:s,renderTopRightUI:l,renderCustomStats:g,UIOptions:C,onExportImage:B,renderWelcomeScreen:E,children:d,app:I,isCollaborating:h,generateLinkForSelection:Q})=>{let p=Do(),m=sdr(),f=m.tunnelsJotai.Provider,[D,w]=Oa(yZ),b=()=>C.canvasActions.export?N(uIr,{elements:i,appState:e,files:t,actionManager:A,exportOpts:C.canvasActions.export,canvas:u,setAppState:r}):null,F=()=>!C.canvasActions.saveAsImage||e.openDialog?.name!=="imageExport"?null:N(Ndr,{elements:i,appState:e,files:t,actionManager:A,onExportImage:B,onCloseRequest:()=>r({openDialog:null}),name:I.getName()}),v=()=>cA("div",{style:{position:"relative"},children:[N(m.MainMenuTunnel.Out,{}),E&&N(m.WelcomeScreenMenuHintTunnel.Out,{})]}),S=()=>N(zL,{heading:"selectedShapeActions",className:Re("selected-shape-actions zen-mode-transition",{"transition-left":e.zenModeEnabled}),children:N(YB,{className:s2.SHAPE_ACTIONS_MENU,padding:2,style:{maxHeight:`${e.height-166}px`},children:N(hZe,{appState:e,elementsMap:I.scene.getNonDeletedElementsMap(),renderAction:A.renderAction,app:I})})}),x=()=>{let L=rq(e,i),M=e.stats.open&&!e.zenModeEnabled&&!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector";return N(vZe,{side:"top",children:cA("div",{className:"App-menu App-menu_top",children:[cA(Xc.Col,{gap:6,className:Re("App-menu_top__left"),children:[v(),L&&S()]}),!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector"&&N(zL,{heading:"shapes",className:"shapes-section",children:(U)=>cA("div",{style:{position:"relative"},children:[E&&N(m.WelcomeScreenToolbarHintTunnel.Out,{}),N(Xc.Col,{gap:4,align:"start",children:cA(Xc.Row,{gap:1,className:Re("App-toolbar-container",{"zen-mode":e.zenModeEnabled}),children:[cA(YB,{padding:1,className:Re("App-toolbar",{"zen-mode":e.zenModeEnabled}),children:[N(xZe,{appState:e,isMobile:p.editor.isMobile,device:p,app:I}),U,cA(Xc.Row,{gap:1,children:[N(LZe,{zenModeEnabled:e.zenModeEnabled,checked:e.penMode,onChange:()=>o(null),title:uA("toolBar.penMode"),penDetected:e.penDetected}),N(SZe,{checked:e.activeTool.locked,onChange:a,title:uA("toolBar.lock")}),N("div",{className:"App-toolbar__divider"}),N(RZe,{checked:C2(e),onChange:()=>n(),title:uA("toolBar.hand"),isMobile:!0}),N(QZe,{appState:e,activeTool:e.activeTool,UIOptions:C,app:I})]})]}),h&&N(YB,{style:{marginLeft:8,alignSelf:"center",height:"fit-content"},children:N(wIr,{title:uA("toolBar.laser"),checked:e.activeTool.type===On.laser,onChange:()=>I.setActiveTool({type:On.laser}),isMobile:!0})})]})})]})}),cA("div",{className:Re("layer-ui__wrapper__top-right zen-mode-transition",{"transition-right":e.zenModeEnabled}),children:[e.collaborators.size>0&&N(NZe,{collaborators:e.collaborators,userToFollow:e.userToFollow?.socketId||null}),l?.(p.editor.isMobile,e),!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector"&&(!T||e.openSidebar?.name!==Kc.name)&&N(m.DefaultSidebarTriggerTunnel.Out,{}),M&&N(umA,{app:I,onClose:()=>{A.executeAction(N3A)},renderCustomStats:g})]})]})})},k=()=>N(jqe,{__fallback:!0,onDock:(L)=>{Nu("sidebar",`toggleDock (${L?"dock":"undock"})`,`(${p.editor.isMobile?"mobile":"desktop"})`)}}),T=mze(emA),R=cA(et,{children:[d,N(fhr,{UIOptions:C}),N(jqe.Trigger,{__fallback:!0,icon:eW,title:N9(uA("toolBar.library")),onToggle:(L)=>{L&&Nu("sidebar",`${Kc.name} (open)`,`button (${p.editor.isMobile?"mobile":"desktop"})`)},tab:Kc.defaultTab,children:uA("toolBar.library")}),N(mhr,{}),e.openDialog?.name==="ttd"&&N(NIr,{__fallback:!0}),e.isLoading&&N(wze,{delay:250}),e.errorMessage&&N(kdr,{onClose:()=>r({errorMessage:null}),children:e.errorMessage}),D&&!p.editor.isMobile&&N(tBr,{colorPickerType:D.colorPickerType,onCancel:()=>{w(null)},onChange:(L,M,U,{altKey:Y})=>{if(!(L!=="elementBackground"&&L!=="elementStroke"))if(U.length){for(let H of U)Se(H,{[Y&&D.swapPreviewOnAlt?L==="elementBackground"?"strokeColor":"backgroundColor":L==="elementBackground"?"backgroundColor":"strokeColor"]:M},!1),na.delete(H);yd.getScene(U[0])?.triggerUpdate()}else r(L==="elementBackground"?{currentItemBackgroundColor:M}:{currentItemStrokeColor:M})},onSelect:(L,M)=>{w((U)=>U?.keepOpenOnAlt&&M.altKey?U:null),D?.onSelect?.(L,M)}}),e.openDialog?.name==="help"&&N($dr,{onClose:()=>{r({openDialog:null})}}),N(Bdr,{}),e.openDialog?.name==="elementLinkSelector"&&N(phr,{sourceElementId:e.openDialog.sourceElementId,onClose:()=>{r({openDialog:null})},elementsMap:I.scene.getNonDeletedElementsMap(),appState:e,generateLinkForSelection:Q}),N(m.OverwriteConfirmDialogTunnel.Out,{}),F(),b(),e.pasteDialog.shown&&N(qdr,{setAppState:r,appState:e,onClose:()=>r({pasteDialog:{shown:!1,data:null}})}),p.editor.isMobile&&N(Wdr,{app:I,appState:e,elements:i,actionManager:A,renderJSONExportDialog:b,renderImageExportDialog:F,setAppState:r,onLockToggle:a,onHandToolToggle:n,onPenModeToggle:o,renderTopRightUI:l,renderCustomStats:g,renderSidebars:k,device:p,renderWelcomeScreen:E,UIOptions:C}),!p.editor.isMobile&&cA(et,{children:[cA("div",{className:"layer-ui__wrapper",style:e.openSidebar&&T&&p.editor.canFitSidebar?{width:"calc(100% - var(--right-sidebar-width))"}:{},children:[E&&N(m.WelcomeScreenCenterTunnel.Out,{}),x(),N(nIr,{appState:e,actionManager:A,showExitZenModeBtn:s,renderWelcomeScreen:E}),e.scrolledOutside&&N("button",{type:"button",className:"scroll-back-to-content",onClick:()=>{r((L)=>({...J9(i,L)}))},children:uA("buttons.scrollBackToContent")})]}),k()]})]});return N(Gze.Provider,{value:e,children:N(f,{children:N(EZe.Provider,{value:m,children:R})})})},sze=(A)=>{let{suggestedBindings:e,startBoundElement:t,cursorButton:r,scrollX:i,scrollY:u,...a}=A;return a},yhr=(A,e)=>{if(A.children!==e.children)return!1;let{canvas:t,appState:r,...i}=A,{canvas:u,appState:a,...n}=e;return Po(sze(r),sze(a),{selectedElementIds:Po,selectedGroupIds:Po})&&Po(i,n)},whr=gi(Dhr,yhr),bhr=5000,vhr=({message:A,onClose:e,closable:t=!1,duration:r=bhr,style:i})=>{let u=Ee(0),a=r!==1/0,n=lt(()=>{a&&(u.current=window.setTimeout(()=>e(),r))},[e,r,a]);return le(()=>{if(a)return n(),()=>clearTimeout(u.current)},[n,A,r,a]),cA("div",{className:"Toast",onMouseEnter:a?()=>clearTimeout(u?.current):void 0,onMouseLeave:a?n:void 0,style:i,children:[N("p",{className:"Toast__message",children:A}),t&&N(ci,{icon:h2,"aria-label":"close",type:"icon",onClick:e,className:"close"})]})},lze=at({name:"viewMode",label:"labels.viewMode",paletteName:"Toggle view mode",icon:gW,viewMode:!0,trackEvent:{category:"canvas",predicate:(A)=>!A.viewModeEnabled},perform(A,e){return{appState:{...e,viewModeEnabled:!this.checked(e)},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.viewModeEnabled,predicate:(A,e,t)=>typeof t.viewModeEnabled>"u",keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.R}),QVe=(A,e)=>{let t=e.scene.getSelectedElements(A);return t.length===1&&nr(t[0])},khr=at({name:"selectAllElementsInFrame",label:"labels.selectAllElementsInFrame",trackEvent:{category:"canvas"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e).at(0)||null;if(nr(i)){let u=mB(fu(A),i.id).filter((a)=>!(a.type==="text"&&a.containerId));return{elements:A,appState:{...e,selectedElementIds:u.reduce((a,n)=>(a[n.id]=!0,a),{})},captureUpdate:be.IMMEDIATELY}}return{elements:A,appState:e,captureUpdate:be.EVENTUALLY}},predicate:(A,e,t,r)=>QVe(e,r)}),Fhr=at({name:"removeAllElementsFromFrame",label:"labels.removeAllElementsFromFrame",trackEvent:{category:"history"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e).at(0)||null;return nr(i)?{elements:RQA(A,i),appState:{...e,selectedElementIds:{[i.id]:!0}},captureUpdate:be.IMMEDIATELY}:{elements:A,appState:e,captureUpdate:be.EVENTUALLY}},predicate:(A,e,t,r)=>QVe(e,r)}),XLi=at({name:"updateFrameRendering",label:"labels.updateFrameRendering",viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e)=>({elements:A,appState:{...e,frameRendering:{...e.frameRendering,enabled:!e.frameRendering.enabled}},captureUpdate:be.EVENTUALLY}),checked:(A)=>A.frameRendering.enabled}),$Li=at({name:"setFrameAsActiveTool",label:"toolBar.frame",trackEvent:{category:"toolbar"},icon:phA,viewMode:!1,perform:(A,e,t,r)=>{let i=un(e,{type:"frame"});return hB(r.interactiveCanvas,{...e,activeTool:i}),{elements:A,appState:{...e,activeTool:un(e,{type:"frame"})},captureUpdate:be.EVENTUALLY}},keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&!A.shiftKey&&!A.altKey&&A.key.toLocaleLowerCase()===PA.F}),xhr=at({name:"wrapSelectionInFrame",label:"labels.wrapSelectionInFrame",trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=Jr(A,e);return i.length>0&&!i.some((u)=>nr(u))},perform:(A,e,t,r)=>{let i=Jr(A,e),[u,a,n,o]=Pi(i,r.scene.getNonDeletedElementsMap()),s=16,l=SW({x:u-s,y:a-s,width:n-u+s*2,height:o-a+s*2});if(e.editingGroupId){let g=Yu(i,e.editingGroupId);for(let C of g){let B=C.groupIds.indexOf(e.editingGroupId);Se(C,{groupIds:C.groupIds.slice(0,B)},!1)}}return{elements:V9([...r.scene.getElementsIncludingDeleted(),l],i,l,e),appState:{selectedElementIds:{[l.id]:!0}},captureUpdate:be.IMMEDIATELY}}}),Shr=()=>cA("div",{"data-testid":"brave-measure-text-error",children:[N("p",{children:N(_d,{i18nKey:"errors.brave_measure_text_error.line1",bold:(A)=>N("span",{style:{fontWeight:600},children:A})})}),N("p",{children:N(_d,{i18nKey:"errors.brave_measure_text_error.line2",bold:(A)=>N("span",{style:{fontWeight:600},children:A})})}),N("p",{children:N(_d,{i18nKey:"errors.brave_measure_text_error.line3",link:(A)=>N("a",{href:"http://docs.excalidraw.com/docs/@excalidraw/excalidraw/faq#turning-off-aggresive-block-fingerprinting-in-brave-browser",children:A})})}),N("p",{children:N(_d,{i18nKey:"errors.brave_measure_text_error.line4",issueLink:(A)=>N("a",{href:"https://github.com/excalidraw/excalidraw/issues/new",children:A}),discordLink:(A)=>cA("a",{href:"https://discord.gg/UexuTaE",children:[A,"."]})})})]}),Lhr=Shr,oZ={width:100,height:0},Jp=100,Rhr=(A,e,t)=>{let r=Tl({x:0,y:0,textAlign:D9.CENTER,verticalAlign:Ul.MIDDLE,...e,containerId:A.id,strokeColor:e.strokeColor||A.strokeColor});return Object.assign(A,{boundElements:(A.boundElements||[]).concat({type:"text",id:r.id})}),j0(r,A,t),[A,r]},gze=(A,e,t,r,i)=>{let u,a;if(Object.assign(A,{startBinding:A?.startBinding||null,endBinding:A.endBinding||null}),e){let l=e?.width??Jp,g=e?.height??Jp,C;e.id&&(C=r.getElement(e.id),C||console.error(`No element for start binding with id ${e.id} found`));let B=e.x||A.x-l,E=e.y||A.y-g/2,d=C?C.type:e.type;if(d){if(d==="text"){let I="";C&&C.type==="text"?I=C.text:e.type==="text"&&(I=e.text),I||console.error(`No text found for start binding text element for ${A.id}`),u=Tl({x:B,y:E,type:"text",...C,...e,text:I}),Object.assign(u,{x:e.x||A.x-u.width,y:e.y||A.y-u.height/2})}else switch(d){case"rectangle":case"ellipse":case"diamond":{u=pB({x:B,y:E,width:l,height:g,...C,...e,type:d});break}default:rp(A,`Unhandled element start type "${e.type}"`,!0)}lB(A,u,"start",i)}}if(t){let l=t?.height??Jp,g=t?.width??Jp,C;t.id&&(C=r.getElement(t.id),C||console.error(`No element for end binding with id ${t.id} found`));let B=t.x||A.x+A.width,E=t.y||A.y-l/2,d=C?C.type:t.type;if(d){if(d==="text"){let I="";C&&C.type==="text"?I=C.text:t.type==="text"&&(I=t.text),I||console.error(`No text found for end binding text element for ${A.id}`),a=Tl({x:B,y:E,type:"text",...C,...t,text:I}),Object.assign(a,{y:t.y||A.y-a.height/2})}else switch(d){case"rectangle":case"ellipse":case"diamond":{a=pB({x:B,y:E,width:g,height:l,...C,...t,type:d});break}default:rp(A,`Unhandled element end type "${d}"`,!0)}lB(A,a,"end",i)}}if(A.points.length<2)return{linearElement:A,startBoundElement:u,endBoundElement:a};let n=A.points.length-1,o=0.5,s=vd(A.points);return A.points[n][0]>A.points[n-1][0]&&(s[0][0]=o,s[n][0]-=o),A.points[n][0]<A.points[n-1][0]&&(s[0][0]=-o,s[n][0]+=o),A.points[n][1]>A.points[n-1][1]&&(s[0][1]=o,s[n][1]-=o),A.points[n][1]<A.points[n-1][1]&&(s[0][1]=-o,s[n][1]+=o),Object.assign(A,{points:s}),{linearElement:A,startBoundElement:u,endBoundElement:a}},Nhr=class{constructor(){UA(this,"excalidrawElements",new Map),UA(this,"add",(A)=>{A&&this.excalidrawElements.set(A.id,A)}),UA(this,"getElements",()=>Sd(Array.from(this.excalidrawElements.values()))),UA(this,"getElementsMap",()=>Sg(ar(this.getElements()))),UA(this,"getElement",(A)=>this.excalidrawElements.get(A))}},VL=(A,e)=>{if(!A)return[];let t=vd(A),r=new Nhr,i=new Map,u=new Map;for(let n of t){let o,s=n.id;switch(e?.regenerateIds!==!1&&Object.assign(n,{id:Lg()}),n.type){case"rectangle":case"ellipse":case"diamond":{let l=n?.label?.text&&n.width===void 0?0:n?.width||Jp,g=n?.label?.text&&n.height===void 0?0:n?.height||Jp;o=pB({...n,width:l,height:g});break}case"line":{let l=n.width||oZ.width,g=n.height||oZ.height;o=W1({width:l,height:g,points:[X(0,0),X(l,g)],...n});break}case"arrow":{let l=n.width||oZ.width,g=n.height||oZ.height;o=RW({width:l,height:g,endArrowhead:"arrow",points:[X(0,0),X(l,g)],...n,type:"arrow"}),Object.assign(o,u2(o.points));break}case"text":{let l=n?.fontFamily||Oh,g=n?.fontSize||wd,C=n?.lineHeight||op(l),B=n.text??"",E=I2(B),d=m0(E,cu({fontFamily:l,fontSize:g}),C);o=Tl({width:d.width,height:d.height,fontFamily:l,fontSize:g,...n});break}case"image":{o=aQA({width:n?.width||Jp,height:n?.height||Jp,...n});break}case"frame":{o=SW({x:0,y:0,...n});break}case"magicframe":{o=LW({x:0,y:0,...n});break}case"freedraw":case"iframe":case"embeddable":{o=n;break}default:o=n,rp(n,`Unhandled element type "${n.type}"`,!0)}r.getElement(o.id)?console.error(`Duplicate id found for ${o.id}`):(r.add(o),i.set(o.id,n),s&&u.set(s,o.id))}let a=r.getElementsMap();for(let[n,o]of i){let s=r.getElement(n);switch(o.type){case"rectangle":case"ellipse":case"diamond":case"arrow":{if(o.label?.text){let[l,g]=Rhr(s,o?.label,a);if(r.add(l),r.add(g),Kr(l)){let C=o.type==="arrow"?o?.start:void 0,B=o.type==="arrow"?o?.end:void 0;if(C&&C.id){let h=u.get(C.id);h&&Object.assign(C,{id:h})}if(B&&B.id){let h=u.get(B.id);h&&Object.assign(B,{id:h})}let{linearElement:E,startBoundElement:d,endBoundElement:I}=gze(l,C,B,r,a);l=E,r.add(E),r.add(d),r.add(I)}}else switch(o.type){case"arrow":{let{start:l,end:g}=o;if(l&&l.id){let d=u.get(l.id);Object.assign(l,{id:d})}if(g&&g.id){let d=u.get(g.id);Object.assign(g,{id:d})}let{linearElement:C,startBoundElement:B,endBoundElement:E}=gze(s,l,g,r,a);r.add(C),r.add(B),r.add(E);break}}break}}}for(let[n,o]of i){if(o.type!=="frame"&&o.type!=="magicframe")continue;let s=r.getElement(n);if(!s)throw Error(`Excalidraw element with id ${n} doesn't exist`);let l=[];o.children.forEach((m)=>{let f=u.get(m);if(!f)throw Error(`Element with ${m} wasn't mapped correctly`);let D=r.getElement(f);if(!D)throw Error(`Frame element with id ${f} doesn't exist`);Object.assign(D,{frameId:s.id}),D?.boundElements?.forEach((w)=>{let b=r.getElement(w.id);if(!b)throw Error(`Bound element with id ${w.id} doesn't exist`);Object.assign(b,{frameId:s.id}),l.push(b)}),l.push(D)});let[g,C,B,E]=Pi(l),d=10;g=g-d,C=C-d,B=B+d,E=E+d;let I=s?.x||g,h=s?.y||C,Q=s?.width||B-g,p=s?.height||E-C;Object.assign(s,{x:I,y:h,width:Q,height:p}),UIA()&&o.children.length&&(s?.x||s?.y||s?.width||s?.height)&&console.info("User provided frame attributes are being considered, if you find this inaccurate, please remove any of the attributes - x, y, width and height so frame coordinates and dimensions are calculated automatically")}return r.getElements()},Ja=(A)=>(e)=>{N5(A,e)},p3A=(A)=>Z8((e)=>{N5(A,e)}),amA=(()=>{let A;try{let t=u_.split(".");A=Number(t[0])>17}catch{A=!1}let e=!1;return()=>window.EXCALIDRAW_THROTTLE_RENDER===!0?A?!0:(e||(e=!0,console.warn("Excalidraw: render throttling is disabled on React versions < 18.")),!1):!1})(),Ghr="#ff6b6b",Uhr="#ff0000",cze=1,Cze=2,Mhr=(A,e)=>{if(!e.snapLines.length)return;let t=e.theme===$r.LIGHT||e.zenModeEnabled?Ghr:Uhr,r=(e.zenModeEnabled?cze*1.5:cze)/e.zoom.value;A.save(),A.translate(e.scrollX,e.scrollY);for(let i of e.snapLines)i.type==="pointer"?(A.lineWidth=r,A.strokeStyle=t,Yhr(i,A,e)):i.type==="gap"?(A.lineWidth=r,A.strokeStyle=t,Hhr(i.points[0],i.points[1],i.direction,e,A)):i.type==="points"&&(A.lineWidth=r,A.strokeStyle=t,Thr(i,A,e));A.restore()},Thr=(A,e,t)=>{if(!t.zenModeEnabled){let r=A.points[0],i=A.points[A.points.length-1];jc(r,i,e)}for(let r of A.points)pVe(r,t,e)},Yhr=(A,e,t)=>{pVe(A.points[0],t,e),t.zenModeEnabled||jc(A.points[0],A.points[1],e)},pVe=([A,e],t,r)=>{r.save();let i=(t.zenModeEnabled?Cze*1.5:Cze)/t.zoom.value;r.beginPath(),r.moveTo(A-i,e-i),r.lineTo(A+i,e+i),r.moveTo(A+i,e-i),r.lineTo(A-i,e+i),r.stroke(),r.restore()},jc=(A,e,t)=>{t.beginPath(),t.lineTo(A[0],A[1]),t.lineTo(e[0],e[1]),t.stroke()},Hhr=(A,e,t,r,i)=>{let u=8/r.zoom.value,a=u/2,n=u/4;if(t==="horizontal"){let o=[(A[0]+e[0])/2,A[1]];r.zenModeEnabled||jc(X(A[0],A[1]-u),X(A[0],A[1]+u),i),jc(X(o[0]-n,o[1]-a),X(o[0]-n,o[1]+a),i),jc(X(o[0]+n,o[1]-a),X(o[0]+n,o[1]+a),i),r.zenModeEnabled||(jc(X(e[0],e[1]-u),X(e[0],e[1]+u),i),jc(A,e,i))}else{let o=[A[0],(A[1]+e[1])/2];r.zenModeEnabled||jc(X(A[0]-u,A[1]),X(A[0]+u,A[1]),i),jc(X(o[0]-a,o[1]-n),X(o[0]+a,o[1]-n),i),jc(X(o[0]-a,o[1]+n),X(o[0]+a,o[1]+n),i),r.zenModeEnabled||(jc(X(e[0]-u,e[1]),X(e[0]+u,e[1]),i),jc(A,e,i))}},Khr=(A,e)=>{fn(e.selectedLinearElement,"selectedLinearElement is null");let{segmentMidPointHoveredCoords:t}=e.selectedLinearElement;fn(t,"midPointCoords is null"),A.save(),A.translate(e.scrollX,e.scrollY),fVe(t,A,e),A.restore()},Jhr=(A,e,t)=>{let{elementId:r,hoverPointIndex:i}=e.selectedLinearElement;if(e.editingLinearElement?.selectedPointsIndices?.includes(i))return;let u=ht.getElement(r,t);if(!u)return;let a=ht.getPointAtIndexGlobalCoordinates(u,i,t);A.save(),A.translate(e.scrollX,e.scrollY),fVe(a,A,e),A.restore()},fVe=(A,e,t)=>{e.fillStyle="rgba(105, 101, 219, 0.4)",dS(e,A[0],A[1],ht.POINT_HANDLE_SIZE/t.zoom.value,!1)},XL=(A,e,t,r,i,u,a,n,o=!1,s=0)=>{A.save(),A.translate(u,a),A.rotate(n),o&&A.fillRect(e-u,t-a,r,i),s&&A.roundRect?(A.beginPath(),A.roundRect(e-u,t-a,r,i,s),A.stroke(),A.closePath()):A.strokeRect(e-u,t-a,r,i),A.restore()},Ohr=(A,e,t,r,i,u)=>{A.save(),A.translate(r,i),A.rotate(u),A.beginPath(),A.moveTo(0,t/2),A.lineTo(e/2,0),A.lineTo(0,-t/2),A.lineTo(-e/2,0),A.closePath(),A.stroke(),A.restore()},f3A=(A,e,t,r,i,u=!1)=>{A.strokeStyle="#5e5ad8",A.setLineDash([]),A.fillStyle="rgba(255, 255, 255, 0.9)",i?A.fillStyle="rgba(134, 131, 226, 0.9)":u&&(A.fillStyle="rgba(177, 151, 252, 0.7)"),dS(A,t[0],t[1],r/e.zoom.value,!u)},Phr=(A,e,t,r,i,u)=>{A.beginPath(),A.ellipse(r,i,e/2,t/2,u,0,Math.PI*2),A.stroke()},_hr=(A,e,t,r)=>{let[i,u,a,n]=Rr(e,t),o=a-i,s=n-u;A.strokeStyle="rgba(0,0,0,.05)";let l=r.value<1?r.value:1;A.lineWidth=mW/l;let g=A.lineWidth/2+DW,C=Gc(Math.min(e.width,e.height),e);switch(e.type){case"rectangle":case"text":case"image":case"iframe":case"embeddable":case"frame":case"magicframe":XL(A,i-g,u-g,o+g*2,s+g*2,i+o/2,u+s/2,e.angle,void 0,C);break;case"diamond":let B=Math.hypot(o,s),E=g*B/s,d=g*B/o;Ohr(A,o+E*2,s+d*2,i+o/2,u+s/2,e.angle);break;case"ellipse":Phr(A,o+g*2,s+g*2,i+o/2,u+s/2,e.angle);break}},Whr=(A,e,t,r)=>{let[i,u,a]=e,n=K9(a,a.width,a.height,r);A.strokeStyle="rgba(0,0,0,0)",A.fillStyle="rgba(0,0,0,.05)",(u==="both"?[0,-1]:u==="start"?[0]:[-1]).forEach((o)=>{let[s,l]=ht.getPointAtIndexGlobalCoordinates(i,o,t);dS(A,s,l,n)})},mVe=(A,e,t)=>{let{angle:r,x1:i,y1:u,x2:a,y2:n,selectionColors:o,cx:s,cy:l,dashed:g,activeEmbeddable:C}=t,B=a-i,E=n-u,d=(t.padding??Z1*2)/e.zoom.value,I=8/e.zoom.value,h=4/e.zoom.value;A.save(),A.translate(e.scrollX,e.scrollY),A.lineWidth=(C?4:1)/e.zoom.value;let Q=o.length;for(let p=0;p<Q;++p)A.strokeStyle=o[p],g&&A.setLineDash([I,h+(I+h)*(Q-1)]),A.lineDashOffset=(I+h)*p,XL(A,i-d,u-d,B+d*2,E+d*2,s,l,r);A.restore()},qhr=(A,e,t,r)=>{let i=Array.isArray(t)?Whr:_hr;A.save(),A.translate(e.scrollX,e.scrollY),i(A,t,r,e.zoom),A.restore()},zhr=(A,e,t,r)=>{let[i,u,a,n]=Rr(t,r),o=a-i,s=n-u;A.strokeStyle="rgb(0,118,255)",A.lineWidth=Zu.strokeWidth/e.zoom.value,A.save(),A.translate(e.scrollX,e.scrollY),XL(A,i,u,o,s,i+o/2,u+s/2,t.angle,!1,Zu.radius/e.zoom.value),A.restore()},Zhr=(A,e,t)=>{let r=t.filter((n)=>n.groupIds.length===0),i=t.filter((n)=>n.groupIds.length>0),u=(n)=>{let[o,s,l,g]=Pi(n);return{angle:0,x1:o,x2:l,y1:s,y2:g,selectionColors:["rgb(0,118,255)"],dashed:!1,cx:o+(l-o)/2,cy:s+(g-s)/2,activeEmbeddable:!1}},a=(n)=>{let o=Yu(t,n);return u(o)};Object.entries(ZhA(i,e)).filter(([n,o])=>o).map(([n,o])=>n).map((n)=>a(n)).concat(r.map((n)=>u([n]))).forEach((n)=>mVe(A,e,n))},m3A=(A,e,t,r)=>{if(!e.selectedLinearElement)return;A.save(),A.translate(e.scrollX,e.scrollY),A.lineWidth=1/e.zoom.value;let i=ht.getPointsGlobalCoordinates(t,r),{POINT_HANDLE_SIZE:u}=ht,a=e.editingLinearElement?u:u/2;if(i.forEach((n,o)=>{if(ft(t)&&o!==0&&o!==i.length-1)return;let s=!!e.editingLinearElement?.selectedPointsIndices?.includes(o);f3A(A,e,n,a,s)}),ft(t)){let n=t.fixedSegments?.map((o)=>o.index)||[];i.slice(0,-1).forEach((o,s)=>{ht.isSegmentTooShort(t,i[s+1],i[s],s,e.zoom)||f3A(A,e,X((o[0]+i[s+1][0])/2,(o[1]+i[s+1][1])/2),u/2,!1,!n.includes(s+1))})}else ht.getEditorMidPoints(t,r,e).filter((n,o,s)=>n!==null&&!(ft(t)&&(o===0||o===s.length-1))).forEach((n)=>{(e.editingLinearElement||i.length===2)&&f3A(A,e,n,u/2,!1,!0)});A.restore()},Bze=(A,e,t,r,i)=>{Object.keys(r).forEach((u)=>{let a=r[u];if(a!==void 0){let[n,o,s,l]=a;A.save(),A.lineWidth=1/t.zoom.value,e.selectionColor&&(A.strokeStyle=e.selectionColor),u==="rotation"?dS(A,n+s/2,o+l/2,s/2):A.roundRect?(A.beginPath(),A.roundRect(n,o,s,l,2/t.zoom.value),A.fill(),A.stroke()):XL(A,n,o,s,l,n+s/2,o+l/2,i,!0),A.restore()}})},Vhr=(A,e,t,r,i)=>{let[u,a,,,n,o]=Rr(r,i),s=3,l=20,g=s/t.zoom.value,C=g/2,B=n-u+g,E=o-a+g,d=Math.min(l/t.zoom.value,B),I=Math.min(l/t.zoom.value,E);A.save(),A.fillStyle=e.selectionColor,A.strokeStyle=e.selectionColor,A.lineWidth=g,[[[-B,-E],[0,C],[d,C],[C,0],[C,I]],[[B-C,-E],[C,C],[-d+C,C],[0,0],[0,I]],[[-B,E],[0,-C],[d,-C],[C,0],[C,-I]],[[B-C,E],[C,-C],[-d+C,-C],[0,0],[0,-I]]].forEach((h)=>{let[[Q,p],[m,f],[D,w],[b,F],[v,S]]=h;A.save(),A.translate(n,o),A.rotate(r.angle),A.beginPath(),A.moveTo(Q+m,p+f),A.lineTo(Q+D,p+w),A.stroke(),A.beginPath(),A.moveTo(Q+b,p+F),A.lineTo(Q+v,p+S),A.stroke(),A.restore()}),A.restore()},jhr=(A,e,t,r)=>{e.save();let i=Z1*2/t.zoom.value,u=A.width+i*2,a=A.height+i*2,n=A.x+u/2,o=A.y+a/2,s=-(u/2+i),l=-(a/2+i);e.translate(n+t.scrollX,o+t.scrollY),e.rotate(A.angle),e.lineWidth=1/t.zoom.value,e.strokeStyle=r,e.strokeRect(s,l,u,a),e.restore()},DVe=({canvas:A,elementsMap:e,visibleElements:t,selectedElements:r,allElementsMap:i,scale:u,appState:a,renderConfig:n,device:o})=>{if(A===null)return{atLeastOneVisibleElement:!1,elementsMap:e};let[s,l]=YW(A,u),g=HW({canvas:A,scale:u,normalizedWidth:s,normalizedHeight:l});g.save(),g.scale(a.zoom.value,a.zoom.value);let C;if(t.forEach((d)=>{a.editingLinearElement?.elementId===d.id&&d&&(C=d)}),C&&m3A(g,a,C,e),a.selectionElement&&!a.isCropping)try{MQe(a.selectionElement,g,a,n.selectionColor)}catch(d){console.error(d)}if(a.editingTextElement&&Et(a.editingTextElement)){let d=i.get(a.editingTextElement.id);d&&!d.autoResize&&jhr(d,g,a,n.selectionColor)}a.isBindingEnabled&&a.suggestedBindings.filter((d)=>d!=null).forEach((d)=>{qhr(g,a,d,e)}),a.frameToHighlight&&zhr(g,a,a.frameToHighlight,e),a.elementsToHighlight&&Zhr(g,a,a.elementsToHighlight);let B=r.some((d)=>nr(d));if(r.length===1&&a.editingLinearElement?.elementId===r[0].id&&m3A(g,a,r[0],e),ft(r[0])&&a.selectedLinearElement&&a.selectedLinearElement.segmentMidPointHoveredCoords?Khr(g,a):a.selectedLinearElement&&a.selectedLinearElement.hoverPointIndex>=0&&!(ft(r[0])&&a.selectedLinearElement.hoverPointIndex>0&&a.selectedLinearElement.hoverPointIndex<r[0].points.length-1)&&Jhr(g,a,e),!a.multiElement&&!a.editingLinearElement){let d=KQA(r,a),I=r.length===1&&Nr(r[0]);I&&a.selectedLinearElement?.elementId===r[0].id&&!r[0].locked&&m3A(g,a,r[0],e);let h=n.selectionColor||ua.black;if(d){let Q=ar(r),p=[];for(let f of e.values()){let D=[],w=n.remoteSelectedElementIds.get(f.id);if(I&&ft(f)&&(f.startBinding||f.endBinding)||(Q.has(f.id)&&!qhA(a,f)&&D.push(h),w&&D.push(...w.map((b)=>FZ(b,a.collaborators.get(b))))),D.length){let[b,F,v,S,x,k]=Rr(f,e,!0);p.push({angle:f.angle,x1:b,y1:F,x2:v,y2:S,selectionColors:D,dashed:!!w,cx:x,cy:k,activeEmbeddable:a.activeEmbeddable?.element===f&&a.activeEmbeddable.state==="active",padding:f.id===a.croppingElementId||Ri(f)?0:void 0})}}let m=(f)=>{let D=Yu(e,f),[w,b,F,v]=Pi(D);p.push({angle:0,x1:w,x2:F,y1:b,y2:v,selectionColors:[ua.black],dashed:!0,cx:w+(F-w)/2,cy:b+(v-b)/2,activeEmbeddable:!1})};for(let f of lp(a))m(f);a.editingGroupId&&m(a.editingGroupId),p.forEach((f)=>mVe(g,a,f))}if(g.save(),g.translate(a.scrollX,a.scrollY),r.length===1){g.fillStyle=ua.white;let Q=HQA(r[0],a.zoom,e,"mouse",j9(o));if(!a.viewModeEnabled&&d&&!Et(a.editingTextElement)&&!a.croppingElementId&&Bze(g,n,a,Q,r[0].angle),a.croppingElementId&&!a.isCropping){let p=e.get(a.croppingElementId);p&&Ri(p)&&Vhr(g,n,a,p,e)}}else if(r.length>1&&!a.isRotating){let Q=Z1*2/a.zoom.value;g.fillStyle=ua.white;let[p,m,f,D]=Pi(r),w=g.getLineDash();g.setLineDash([2/a.zoom.value]);let b=g.lineWidth;g.lineWidth=1/a.zoom.value,g.strokeStyle=h,XL(g,p-Q,m-Q,f-p+Q*2,D-m+Q*2,(p+f)/2,(m+D)/2,0),g.lineWidth=b,g.setLineDash(w);let F=eq([p,m,f,D,(p+f)/2,(m+D)/2],0,a.zoom,"mouse",B?{...j9(o),rotation:!0}:j9(o));r.some((v)=>!v.locked)&&Bze(g,n,a,F,0)}g.restore()}a.searchMatches.forEach(({id:d,focus:I,matchedLines:h})=>{let Q=e.get(d);if(Q&&Et(Q)){let[p,m,,,f,D]=Rr(Q,e,!0);g.save(),a.theme===$r.LIGHT?I?g.fillStyle="rgba(255, 124, 0, 0.4)":g.fillStyle="rgba(255, 226, 0, 0.4)":I?g.fillStyle="rgba(229, 82, 0, 0.4)":g.fillStyle="rgba(99, 52, 0, 0.4)",g.translate(a.scrollX,a.scrollY),g.translate(f,D),g.rotate(Q.angle),h.forEach((w)=>{g.fillRect(p+w.offsetX-f,m+w.offsetY-D,w.width,w.height)}),g.restore()}}),Mhr(g,a),g.restore(),MBr({context:g,renderConfig:n,appState:a,normalizedWidth:s,normalizedHeight:l});let E;return n.renderScrollbars&&(E=Pdr(t,s,l,a),g.save(),g.fillStyle=Odr,g.strokeStyle="rgba(255,255,255,0.8)",[E.horizontal,E.vertical].forEach((d)=>{d&&jze(g,d.x,d.y,d.width,d.height,Kp/2)}),g.restore()),{scrollBars:E,atLeastOneVisibleElement:t.length>0,elementsMap:e}},yVe=Z8((A)=>{let e=DVe(A);A.callback?.(e)},{trailing:!0}),Xhr=(A,e)=>{if(e){yVe(A);return}let t=DVe(A);return A.callback(t),t},$hr=(A)=>{let e=Ee(!1);return le(()=>{if(!e.current){e.current=!0;return}let t=new Map,r=new Map,i=new Map,u=new Map,a=new Map;A.appState.collaborators.forEach((o,s)=>{if(o.selectedElementIds)for(let l of Object.keys(o.selectedElementIds))i.has(l)||i.set(l,[]),i.get(l).push(s);!o.pointer||o.pointer.renderCursor===!1||(o.username&&u.set(s,o.username),o.userState&&a.set(s,o.userState),r.set(s,Mc({sceneX:o.pointer.x,sceneY:o.pointer.y},A.appState)),t.set(s,o.button))});let n=A.containerRef?.current&&getComputedStyle(A.containerRef.current).getPropertyValue("--color-selection")||"#6965db";Xhr({canvas:A.canvas,elementsMap:A.elementsMap,visibleElements:A.visibleElements,selectedElements:A.selectedElements,allElementsMap:A.allElementsMap,scale:window.devicePixelRatio,appState:A.appState,renderConfig:{remotePointerViewportCoords:r,remotePointerButton:t,remoteSelectedElementIds:i,remotePointerUsernames:u,remotePointerUserStates:a,selectionColor:n,renderScrollbars:!1},device:A.device,callback:A.renderInteractiveSceneCallback},amA())}),N("canvas",{className:"excalidraw__canvas interactive",style:{width:A.appState.width,height:A.appState.height,cursor:A.appState.viewModeEnabled?iu.GRAB:iu.AUTO},width:A.appState.width*A.scale,height:A.appState.height*A.scale,ref:A.handleCanvasRef,onContextMenu:A.onContextMenu,onPointerMove:A.onPointerMove,onPointerUp:A.onPointerUp,onPointerCancel:A.onPointerCancel,onTouchMove:A.onTouchMove,onPointerDown:A.onPointerDown,onDoubleClick:A.appState.viewModeEnabled?void 0:A.onDoubleClick,children:uA("labels.drawingCanvas")})},Eze=(A)=>({zoom:A.zoom,scrollX:A.scrollX,scrollY:A.scrollY,width:A.width,height:A.height,viewModeEnabled:A.viewModeEnabled,openDialog:A.openDialog,editingGroupId:A.editingGroupId,editingLinearElement:A.editingLinearElement,selectedElementIds:A.selectedElementIds,frameToHighlight:A.frameToHighlight,offsetLeft:A.offsetLeft,offsetTop:A.offsetTop,theme:A.theme,pendingImageElementId:A.pendingImageElementId,selectionElement:A.selectionElement,selectedGroupIds:A.selectedGroupIds,selectedLinearElement:A.selectedLinearElement,multiElement:A.multiElement,isBindingEnabled:A.isBindingEnabled,suggestedBindings:A.suggestedBindings,isRotating:A.isRotating,elementsToHighlight:A.elementsToHighlight,collaborators:A.collaborators,activeEmbeddable:A.activeEmbeddable,snapLines:A.snapLines,zenModeEnabled:A.zenModeEnabled,editingTextElement:A.editingTextElement,isCropping:A.isCropping,croppingElementId:A.croppingElementId,searchMatches:A.searchMatches}),AQr=(A,e)=>A.selectionNonce!==e.selectionNonce||A.sceneNonce!==e.sceneNonce||A.scale!==e.scale||A.elementsMap!==e.elementsMap||A.visibleElements!==e.visibleElements||A.selectedElements!==e.selectedElements?!1:Po(Eze(A.appState),Eze(e.appState)),eQr=gi($hr,AQr),tQr=(A)=>{let e=Ee(null),t=Ee(!1);return le(()=>{let r=e.current;if(!r)return;let i=A.canvas;t.current||(t.current=!0,r.replaceChildren(i),i.classList.add("excalidraw__canvas","static"));let u=`${A.appState.width}px`,a=`${A.appState.height}px`;i.style.width!==u&&(i.style.width=u),i.style.height!==a&&(i.style.height=a);let n=A.appState.width*A.scale,o=A.appState.height*A.scale;i.width!==n&&(i.width=n),i.height!==o&&(i.height=o),QQA({canvas:i,rc:A.rc,scale:A.scale,elementsMap:A.elementsMap,allElementsMap:A.allElementsMap,visibleElements:A.visibleElements,appState:A.appState,renderConfig:A.renderConfig},amA())}),N("div",{className:"excalidraw__canvas-wrapper",ref:e})},dze=(A)=>({zoom:A.zoom,scrollX:A.scrollX,scrollY:A.scrollY,width:A.width,height:A.height,viewModeEnabled:A.viewModeEnabled,openDialog:A.openDialog,hoveredElementIds:A.hoveredElementIds,offsetLeft:A.offsetLeft,offsetTop:A.offsetTop,theme:A.theme,pendingImageElementId:A.pendingImageElementId,shouldCacheIgnoreZoom:A.shouldCacheIgnoreZoom,viewBackgroundColor:A.viewBackgroundColor,exportScale:A.exportScale,selectedElementsAreBeingDragged:A.selectedElementsAreBeingDragged,gridSize:A.gridSize,gridStep:A.gridStep,frameRendering:A.frameRendering,selectedElementIds:A.selectedElementIds,frameToHighlight:A.frameToHighlight,editingGroupId:A.editingGroupId,currentHoveredFontFamily:A.currentHoveredFontFamily,croppingElementId:A.croppingElementId}),rQr=(A,e)=>A.sceneNonce!==e.sceneNonce||A.scale!==e.scale||A.elementsMap!==e.elementsMap||A.visibleElements!==e.visibleElements?!1:Po(dze(A.appState),dze(e.appState))&&Po(A.renderConfig,e.renderConfig),iQr=gi(tQr,rQr),Ize=class{constructor(A){UA(this,"scene"),UA(this,"getRenderableElements",(()=>{let e=({elementsMap:r,zoom:i,offsetLeft:u,offsetTop:a,scrollX:n,scrollY:o,height:s,width:l})=>{let g=[];for(let C of r.values())yS(C,l,s,{zoom:i,offsetLeft:u,offsetTop:a,scrollX:n,scrollY:o},r)&&g.push(C);return g},t=({elements:r,editingTextElement:i,newElementId:u,pendingImageElementId:a})=>{let n=Sg(new Map);for(let o of r)Ri(o)&&a===o.id||u!==o.id&&(!i||i.type!=="text"||o.id!==i.id)&&n.set(o.id,o);return n};return mIe(({zoom:r,offsetLeft:i,offsetTop:u,scrollX:a,scrollY:n,height:o,width:s,editingTextElement:l,newElementId:g,pendingImageElementId:C,sceneNonce:B})=>{let E=this.scene.getNonDeletedElements(),d=t({elements:E,editingTextElement:l,newElementId:g,pendingImageElementId:C}),I=e({elementsMap:d,zoom:r,offsetLeft:i,offsetTop:u,scrollX:a,scrollY:n,height:o,width:s});return{elementsMap:d,visibleElements:I}})})()),this.scene=A}destroy(){yVe.cancel(),hQA.cancel(),this.getRenderableElements.clear()}},uQr=({trails:A})=>{let e=Ee(null);return le(()=>{if(e.current)for(let t of A)t.start(e.current);return()=>{for(let t of A)t.stop()}},A),N("div",{className:"SVGLayer",children:N("svg",{ref:e})})},aQr=5,nQr=(A,e,t)=>{let[r,i]=Rr(A,t),{x:u,y:a}=Mc({sceneX:r+A.width,sceneY:i},e),n=u-e.offsetLeft+10,o=a-e.offsetTop;return{x:n,y:o}},hze=({children:A,element:e,elementsMap:t})=>{let r=AR();if(r.contextMenu||r.newElement||r.resizingElement||r.isRotating||r.openMenu||r.viewModeEnabled)return null;let{x:i,y:u}=nQr(e,r,t);return N("div",{className:"excalidraw-canvas-buttons",style:{top:`${u}px`,left:`${i}px`,padding:aQr},children:A})},oQr="small",D3A=(A)=>cA("label",{className:Re("ToolIcon ToolIcon__MagicButton",`ToolIcon_size_${oQr}`,{"is-mobile":A.isMobile}),title:`${A.title}`,children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:A.name,onChange:A.onChange,checked:A.checked,"aria-label":A.title}),N("div",{className:"ToolIcon__icon",children:A.icon})]}),sQr=({height:A,width:e,userToFollow:t,onDisconnect:r})=>N("div",{className:"follow-mode",style:{width:e,height:A},children:cA("div",{className:"follow-mode__badge",children:[cA("div",{className:"follow-mode__badge__label",children:["Following"," ",N("span",{className:"follow-mode__badge__username",title:t.username,children:t.username})]}),N("button",{type:"button",onClick:r,className:"follow-mode__disconnect-btn",children:h2})]})}),lQr=sQr,gQr=class{constructor(){UA(this,"targets",new WeakMap),UA(this,"rafIds",new WeakMap)}register(A,e){this.targets.set(A,{callback:e,stopped:!0})}start(A){let e=this.targets.get(A);e&&(this.rafIds.has(A)||(this.targets.set(A,{...e,stopped:!1}),this.scheduleFrame(A)))}stop(A){let e=this.targets.get(A);e&&!e.stopped&&this.targets.set(A,{...e,stopped:!0}),this.cancelFrame(A)}constructFrame(A){return(e)=>{let t=this.targets.get(A);if(!t)return;let r=this.onFrame(t,e);!t.stopped&&!r?this.scheduleFrame(A):this.cancelFrame(A)}}scheduleFrame(A){let e=requestAnimationFrame(this.constructFrame(A));this.rafIds.set(A,e)}cancelFrame(A){if(this.rafIds.has(A)){let e=this.rafIds.get(A);cancelAnimationFrame(e)}this.rafIds.delete(A)}onFrame(A,e){return A.callback(e)??!1}},J3A=class{constructor(A,e,t){this.animationFrameHandler=A,this.app=e,this.options=t,UA(this,"currentTrail"),UA(this,"pastTrails",[]),UA(this,"container"),UA(this,"trailElement"),this.animationFrameHandler.register(this,this.onFrame.bind(this)),this.trailElement=document.createElementNS(wi,"path")}get hasCurrentTrail(){return!!this.currentTrail}hasLastPoint(A,e){if(this.currentTrail){let t=this.currentTrail.originalPoints.length;return this.currentTrail.originalPoints[t-1][0]===A&&this.currentTrail.originalPoints[t-1][1]===e}return!1}start(A){A&&(this.container=A),this.trailElement.parentNode!==this.container&&this.container&&this.container.appendChild(this.trailElement),this.animationFrameHandler.start(this)}stop(){this.animationFrameHandler.stop(this),this.trailElement.parentNode===this.container&&this.container?.removeChild(this.trailElement)}startPath(A,e){this.currentTrail=new Yp(this.options),this.currentTrail.addPoint([A,e,performance.now()]),this.update()}addPointToPath(A,e){this.currentTrail&&(this.currentTrail.addPoint([A,e,performance.now()]),this.update())}endPath(){this.currentTrail&&(this.currentTrail.close(),this.currentTrail.options.keepHead=!1,this.pastTrails.push(this.currentTrail),this.currentTrail=void 0,this.update())}update(){this.start()}onFrame(){let A=[];for(let t of this.pastTrails)A.push(this.drawTrail(t,this.app.state));if(this.currentTrail){let t=this.drawTrail(this.currentTrail,this.app.state);A.push(t)}this.pastTrails=this.pastTrails.filter((t)=>t.getStrokeOutline().length!==0),A.length===0&&this.stop();let e=A.join(" ").trim();this.trailElement.setAttribute("d",e),this.trailElement.setAttribute("fill",(this.options.fill??(()=>"black"))(this))}drawTrail(A,e){let t=A.getStrokeOutline(A.options.size/e.zoom.value).map(([r,i])=>{let u=Mc({sceneX:r,sceneY:i},e);return[u.x,u.y]});return DIe(t,!0)}},cQr=class{constructor(A,e){this.animationFrameHandler=A,this.app=e,UA(this,"localTrail"),UA(this,"collabTrails",new Map),UA(this,"container"),this.animationFrameHandler.register(this,this.onFrame.bind(this)),this.localTrail=new J3A(A,e,{...this.getTrailOptions(),fill:()=>Tde})}getTrailOptions(){return{simplify:0,streamline:0.4,sizeMapping:(A)=>{let e=Math.max(0,1-(performance.now()-A.pressure)/1000),t=(50-Math.min(50,A.totalLength-A.currentIndex))/50;return Math.min(ep(t),ep(e))}}}startPath(A,e){this.localTrail.startPath(A,e)}addPointToPath(A,e){this.localTrail.addPointToPath(A,e)}endPath(){this.localTrail.endPath()}start(A){this.container=A,this.animationFrameHandler.start(this),this.localTrail.start(A)}stop(){this.animationFrameHandler.stop(this),this.localTrail.stop()}onFrame(){this.updateCollabTrails()}updateCollabTrails(){if(!(!this.container||this.app.state.collaborators.size===0)){for(let[A,e]of this.app.state.collaborators.entries()){let t;this.collabTrails.has(A)?t=this.collabTrails.get(A):(t=new J3A(this.animationFrameHandler,this.app,{...this.getTrailOptions(),fill:()=>e.pointer?.laserColor||FZ(A,e)}),t.start(this.container),this.collabTrails.set(A,t)),e.pointer&&e.pointer.tool==="laser"&&(e.button==="down"&&!t.hasCurrentTrail&&t.startPath(e.pointer.x,e.pointer.y),e.button==="down"&&t.hasCurrentTrail&&!t.hasLastPoint(e.pointer.x,e.pointer.y)&&t.addPointToPath(e.pointer.x,e.pointer.y),e.button==="up"&&t.hasCurrentTrail&&(t.addPointToPath(e.pointer.x,e.pointer.y),t.endPath()))}for(let A of this.collabTrails.keys())this.app.state.collaborators.has(A)||(this.collabTrails.get(A).stop(),this.collabTrails.delete(A))}}},CQr=(A,e,t,r,i,u)=>{let{zoom:a}=r,n=180*t/Math.PI,o=A*(a.value-1)/2,s=e*(a.value-1)/2;return A>i&&a.value!==1&&(o=i*(a.value-1)/2),e>u&&a.value!==1&&(s=u*(a.value-1)/2),`translate(${o}px, ${s}px) scale(${a.value}) rotate(${n}deg)`},BQr=({id:A,onChange:e,onSubmit:t,getViewportCoords:r,element:i,canvas:u,excalidrawContainer:a,app:n,autoSelect:o=!0})=>{let s=(R,L)=>{if(!L.style.fontFamily||!L.style.fontSize)return!1;let M=L.style.fontFamily.replace(/"/g,"");return B2({fontFamily:R.fontFamily})!==M||`${R.fontSize}px`!==L.style.fontSize},l=()=>{let R=n.state,L=yd.getScene(i)?.getElement(A);if(!L)return;let{textAlign:M,verticalAlign:U}=L,Y=n.scene.getNonDeletedElementsMap();if(L&&Et(L)){let{x:H,y:J}=L,K=Qo(L,n.scene.getNonDeletedElementsMap()),{width:O,height:_,width:z,height:j}=L;if(K&&L.containerId){if(Kr(K)){let TA=ht.getBoundTextElementPosition(K,L,Y);H=TA.x,J=TA.y}let wA=s(L,g),JA;if(wA?JA=cS(K.id,K.height):(JA=a2[K.id],JA||(JA=cS(K.id,K.height))),z=gB(K,L),j=W9(K,L),!Kr(K)&&_>j){let TA=j1(_,K.type);Se(K,{height:TA});return}else if(!Kr(K)&&K.height>JA.height&&_<j){let TA=j1(_,K.type);Se(K,{height:TA})}else{let{y:TA}=CS(K,L,Y);J=TA}}let[q,CA]=r(H,J),{selectionStart:tA,selectionEnd:lA}=g,gA=g.value.length;if(tA===lA&&lA!==gA){let wA=gA-lA;g.selectionStart=g.value.length-wA,g.selectionEnd=g.value.length-wA}K?O+=0.5:(z=(R.width-8-q)/R.zoom.value,O=Math.min(O,z)),_*=1.05;let aA=cu(L),RA=(R.height-CA)/R.zoom.value;Object.assign(g.style,{font:aA,lineHeight:L.lineHeight,width:`${O}px`,height:`${_}px`,left:`${q}px`,top:`${CA}px`,transform:CQr(O,_,o4e(L,K),R,z,RA),textAlign:M,verticalAlign:U,color:L.strokeColor,opacity:L.opacity/100,filter:"var(--theme-filter)",maxHeight:`${RA}px`}),g.scrollTop=0,bd()&&(g.style.fontFamily=B2(L)),Se(L,{x:H,y:J})}},g=document.createElement("textarea");g.dir="auto",g.tabIndex=0,g.dataset.type="wysiwyg",g.wrap="off",g.classList.add("excalidraw-wysiwyg");let C="pre",B="normal";(Tu(i)||!i.autoResize)&&(C="pre-wrap",B="break-word"),Object.assign(g.style,{position:"absolute",display:"inline-block",minHeight:"1em",backfaceVisibility:"hidden",margin:0,padding:0,border:0,outline:0,resize:"none",background:"transparent",overflow:"hidden",zIndex:"var(--zIndex-wysiwyg)",wordBreak:B,whiteSpace:C,overflowWrap:"break-word",boxSizing:"content-box"}),g.value=i.originalText,l(),e&&(g.onpaste=async(R)=>{let L=await kQA(R,!0);if(!L.text)return;let M=I2(L.text);if(!M)return;let U=Qo(i,n.scene.getNonDeletedElementsMap()),Y=cu({fontSize:n.state.currentItemFontSize,fontFamily:n.state.currentItemFontFamily});if(U){let H=Gr(U,n.scene.getNonDeletedElementsMap()),J=up(`${g.value}${M}`,Y,gB(U,H)),K=AW(J,Y);g.style.width=`${K}px`}},g.oninput=()=>{let R=I2(g.value);if(g.value!==R){let L=g.selectionStart;g.value=R,g.selectionStart=L,g.selectionEnd=L}e(g.value)}),g.onkeydown=(R)=>{if(!R.shiftKey&&hqe.keyTest(R))R.preventDefault(),n.actionManager.executeAction(hqe),l();else if(!R.shiftKey&&Qqe.keyTest(R))R.preventDefault(),n.actionManager.executeAction(Qqe),l();else if(!R.shiftKey&&pqe.keyTest(R))R.preventDefault(),n.actionManager.executeAction(pqe),l();else if(Eqe.keyTest(R))n.actionManager.executeAction(Eqe);else if(dqe.keyTest(R))n.actionManager.executeAction(dqe);else if(R.key===PA.ESCAPE)R.preventDefault(),f=!0,D();else if(R.key===PA.ENTER&&R[PA.CTRL_OR_CMD]){if(R.preventDefault(),R.isComposing||R.keyCode===229)return;f=!0,D()}else if(R.key===PA.TAB||R[PA.CTRL_OR_CMD]&&(R.code===hi.BRACKET_LEFT||R.code===hi.BRACKET_RIGHT)){if(R.preventDefault(),R.isComposing)return;R.shiftKey||R.code===hi.BRACKET_LEFT?Q():h(),g.dispatchEvent(new Event("input"))}};let E=4,d=" ".repeat(E),I=new RegExp(`^ {1,${E}}`),h=()=>{let{selectionStart:R,selectionEnd:L}=g,M=p(),U=g.value;M.forEach((Y)=>{let H=U.slice(0,Y),J=U.slice(Y);U=`${H}${d}${J}`}),g.value=U,g.selectionStart=R+E,g.selectionEnd=L+E*M.length},Q=()=>{let{selectionStart:R,selectionEnd:L}=g,M=p(),U=[],Y=g.value;M.forEach((H)=>{let J=Y.slice(H,H+E).match(I);if(J){let K=Y.slice(0,H),O=Y.slice(H+J[0].length);Y=`${K}${O}`,U.push(H)}}),g.value=Y,U.length&&(R>U[U.length-1]?g.selectionStart=Math.max(R-E,U[U.length-1]):g.selectionStart=R,g.selectionEnd=Math.max(g.selectionStart,L-E*U.length))},p=()=>{let{selectionStart:R,selectionEnd:L,value:M}=g,U=M.slice(0,R).match(/[^\n]*$/)[0].length;return R=R-U,M.slice(R,L).split(`
|
||
`).reduce((Y,H,J,K)=>Y.concat(J?Y[J-1]+K[J-1].length+1:R),[]).reverse()},m=(R)=>{R.target instanceof HTMLCanvasElement&&(R.preventDefault(),R.stopPropagation())},f=!1,D=()=>{if(k)return;k=!0,w();let R=yd.getScene(i)?.getElement(i.id);if(!R)return;let L=Qo(R,n.scene.getNonDeletedElementsMap());if(L){if(g.value.trim()){let M=Dd(L);!M||M!==i.id?Se(L,{boundElements:(L.boundElements||[]).concat({type:"text",id:i.id})}):Kr(L)&&DS(L)}else Se(L,{boundElements:L.boundElements?.filter((M)=>!Et(M))});j0(R,L,n.scene.getNonDeletedElementsMap())}t({viaKeyboard:f,nextOriginalText:g.value})},w=()=>{g.onblur=null,g.oninput=null,g.onkeydown=null,T&&T.disconnect(),window.removeEventListener("resize",l),window.removeEventListener("wheel",m,!0),window.removeEventListener("pointerdown",v),window.removeEventListener("pointerup",b),window.removeEventListener("blur",D),window.removeEventListener("beforeunload",D),S(),x(),g.remove()},b=(R)=>{window.removeEventListener("pointerup",b);let L=R?.target,M=L instanceof HTMLElement&&L.classList.contains("properties-trigger");setTimeout(()=>{g.onblur=D,M||g.focus()})},F=()=>{g.onblur=null,window.addEventListener("pointerup",b),window.addEventListener("blur",D)},v=(R)=>{let L=R?.target;if(R.button===Jh.WHEEL){L instanceof HTMLTextAreaElement&&(R.preventDefault(),n.handleCanvasPanUsingWheelOrSpaceDrag(R)),F();return}let M=L instanceof HTMLElement&&L.classList.contains("properties-trigger");(R.target instanceof HTMLElement||R.target instanceof SVGElement)&&R.target.closest(`.${s2.SHAPE_ACTIONS_MENU}, .${s2.ZOOM_ACTIONS}`)&&!Ap(R.target)||M?F():R.target instanceof HTMLCanvasElement&&!bd()&&requestAnimationFrame(()=>{D()})},S=n.scene.onUpdate(()=>{l(),!!document.activeElement?.closest(".properties-content")||g.focus()}),x=n.onScrollChangeEmitter.on(()=>{l()}),k=!1;o&&g.select(),b();let T=null;u&&"ResizeObserver"in window?(T=new window.ResizeObserver(()=>{l()}),T.observe(u)):window.addEventListener("resize",l),g.onpointerdown=(R)=>R.stopPropagation(),requestAnimationFrame(()=>{window.addEventListener("pointerdown",v,{capture:!0})}),window.addEventListener("beforeunload",D),a?.querySelector(".excalidraw-textEditorContainer").appendChild(g)},EQr=at({name:"autoResize",label:"labels.autoResize",icon:null,trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=Jr(A,e);return i.length===1&&Et(i[0])&&!i[0].autoResize},perform:(A,e,t,r)=>{let i=Jr(A,e);return{appState:e,elements:A.map((u)=>{if(u.id===i[0].id&&Et(u)){let a=m0(u.originalText,cu(u),u.lineHeight);return Tr(u,{autoResize:!0,width:a.width,height:a.height,text:u.originalText})}return u}),captureUpdate:be.IMMEDIATELY}}}),dQr=(A)=>new RegExp(`^(?:%%{.*?}%%[\\s\\n]*)?\\b(?:${["flowchart","graph","sequenceDiagram","classDiagram","stateDiagram","stateDiagram-v2","erDiagram","journey","gantt","pie","quadrantChart","requirementDiagram","gitGraph","C4Context","mindmap","timeline","zenuml","sankey","xychart","block"].map((t)=>`\\s*${t}(-beta)?`).join("|")})\\b`).test(A.trim()),wVe=({canvas:A,rc:e,newElement:t,elementsMap:r,allElementsMap:i,scale:u,appState:a,renderConfig:n})=>{if(A){let[o,s]=YW(A,u),l=HW({canvas:A,scale:u,normalizedWidth:o,normalizedHeight:s});l.save(),l.scale(a.zoom.value,a.zoom.value),t&&t.type!=="selection"?K1(t,r,i,e,l,n,a):l.clearRect(0,0,o,s)}},IQr=Z8((A)=>{wVe(A)},{trailing:!0}),hQr=(A,e)=>{if(e){IQr(A);return}wVe(A)},QQr=(A)=>{let e=Ee(null);return le(()=>{e.current&&hQr({canvas:e.current,scale:A.scale,newElement:A.appState.newElement,elementsMap:A.elementsMap,allElementsMap:A.allElementsMap,rc:A.rc,renderConfig:A.renderConfig,appState:A.appState},amA())}),N("canvas",{className:"excalidraw__canvas",style:{width:A.appState.width,height:A.appState.height},width:A.appState.width*A.scale,height:A.appState.height*A.scale,ref:e})},pQr=QQr,bVe=yi(null),vVe=yi(null),kVe={viewport:{isMobile:!1,isLandscape:!1},editor:{isMobile:!1,canFitSidebar:!1},isTouchScreen:!1},nmA=yi(kVe);nmA.displayName="DeviceContext";var omA=yi({container:null,id:null});omA.displayName="ExcalidrawContainerContext";var smA=yi([]);smA.displayName="ExcalidrawElementsContext";var lmA=yi({...EB(),width:0,height:0,offsetLeft:0,offsetTop:0});lmA.displayName="ExcalidrawAppStateContext";var gmA=yi(()=>{console.warn("Uninitialized ExcalidrawSetAppStateContext context!")});gmA.displayName="ExcalidrawSetAppStateContext";var cmA=yi(null);cmA.displayName="ExcalidrawActionManagerContext";var qd=()=>Si(bVe),$L=()=>Si(vVe),Do=()=>Si(nmA),zd=()=>Si(omA),SZ=()=>Si(smA),AR=()=>Si(lmA),zn=()=>Si(gmA),ql=()=>Si(cmA),ML=!1,y3A=0,$2=!1,TL=!1,w3A=!1,b3A={horizontal:null,vertical:null},Hp=0,YL=!1,v3A=new Map,sZ=!1,Qze=0,pze=!1,HL=null,Wi={pointers:new Map,lastCenter:null,initialDistance:null,initialScale:null},fQr=class A extends RdA{constructor(e){super(e);UA(this,"canvas"),UA(this,"interactiveCanvas",null),UA(this,"rc"),UA(this,"unmounted",!1),UA(this,"actionManager"),UA(this,"device",kVe),UA(this,"excalidrawContainerRef",NdA()),UA(this,"scene"),UA(this,"fonts"),UA(this,"renderer"),UA(this,"visibleElements"),UA(this,"resizeObserver"),UA(this,"nearestScrollableContainer"),UA(this,"library"),UA(this,"libraryItemsFromStorage"),UA(this,"id"),UA(this,"store"),UA(this,"history"),UA(this,"excalidrawContainerValue"),UA(this,"files",{}),UA(this,"imageCache",new Map),UA(this,"iFrameRefs",new Map),UA(this,"embedsValidationStatus",new Map),UA(this,"initializedEmbeds",new Set),UA(this,"elementsPendingErasure",new Set),UA(this,"flowChartCreator",new Ydr),UA(this,"flowChartNavigator",new Tdr),UA(this,"hitLinkElement"),UA(this,"lastPointerDownEvent",null),UA(this,"lastPointerUpEvent",null),UA(this,"lastPointerMoveEvent",null),UA(this,"lastPointerMoveCoords",null),UA(this,"lastViewportPosition",{x:0,y:0}),UA(this,"animationFrameHandler",new gQr),UA(this,"laserTrails",new cQr(this.animationFrameHandler,this)),UA(this,"eraserTrail",new J3A(this.animationFrameHandler,this,{streamline:0.2,size:5,keepHead:!0,sizeMapping:(l)=>{let g=Math.max(0,1-(performance.now()-l.pressure)/200),C=(10-Math.min(10,l.totalLength-l.currentIndex))/10;return Math.min(ep(C),ep(g))},fill:()=>this.state.theme===$r.LIGHT?"rgba(0, 0, 0, 0.2)":"rgba(255, 255, 255, 0.2)"})),UA(this,"onChangeEmitter",new fB),UA(this,"onPointerDownEmitter",new fB),UA(this,"onPointerUpEmitter",new fB),UA(this,"onUserFollowEmitter",new fB),UA(this,"onScrollChangeEmitter",new fB),UA(this,"missingPointerEventCleanupEmitter",new fB),UA(this,"onRemoveEventListenersEmitter",new fB),UA(this,"getEffectiveGridSize",()=>P9(this)?this.state.gridSize:null),UA(this,"updateEmbedValidationStatus",(l,g)=>{this.embedsValidationStatus.set(l.id,g),na.delete(l)}),UA(this,"updateEmbeddables",()=>{let l=new Set,g=!1;this.scene.getNonDeletedElements().filter((C)=>{if(_s(C)){if(l.add(C.id),!this.embedsValidationStatus.has(C.id)){g=!0;let B=BS(C.link,this.props.validateEmbeddable);this.updateEmbedValidationStatus(C,B)}}else Ph(C)&&l.add(C.id);return!1}),g&&this.scene.triggerUpdate(),this.iFrameRefs.forEach((C,B)=>{l.has(B)||this.iFrameRefs.delete(B)})}),UA(this,"getFrameNameDOMId",(l)=>`${this.id}-frame-name-${l.id}`),UA(this,"frameNameBoundsCache",{get:(l)=>{let g=this.frameNameBoundsCache._cache.get(l.id);if(!g||g.zoom!==this.state.zoom.value||g.versionNonce!==l.versionNonce){let C=document.getElementById(this.getFrameNameDOMId(l));if(C){let B=C.getBoundingClientRect(),E=Ru({clientX:B.x,clientY:B.y},this.state),d=Ru({clientX:B.right,clientY:B.bottom},this.state);return g={x:E.x,y:E.y,width:d.x-E.x,height:d.y-E.y,angle:0,zoom:this.state.zoom.value,versionNonce:l.versionNonce},this.frameNameBoundsCache._cache.set(l.id,g),g}return null}return g},_cache:new Map}),UA(this,"resetEditingFrame",(l)=>{l&&Se(l,{name:l.name?.trim()||null}),this.setState({editingFrame:null})}),UA(this,"renderFrameNames",()=>{if(!this.state.frameRendering.enabled||!this.state.frameRendering.name)return this.state.editingFrame&&this.resetEditingFrame(null),null;let l=this.state.theme===$r.DARK;return this.scene.getNonDeletedFramesLikes().map((g)=>{if(!yS(g,this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap()))return this.state.editingFrame===g.id&&this.resetEditingFrame(g),null;let{x:C,y:B}=Mc({sceneX:g.x,sceneY:g.y},this.state),E=6,d,I=GQA(g);if(g.id===this.state.editingFrame){let h=I;d=N("input",{autoFocus:!0,value:h,onChange:(Q)=>{Se(g,{name:Q.target.value})},onFocus:(Q)=>Q.target.select(),onBlur:()=>this.resetEditingFrame(g),onKeyDown:(Q)=>{(Q.key===PA.ESCAPE||Q.key===PA.ENTER)&&this.resetEditingFrame(g)},style:{background:this.state.viewBackgroundColor,filter:l?q_:"none",zIndex:2,border:"none",display:"block",padding:`${E}px`,borderRadius:4,boxShadow:"inset 0 0 0 1px var(--color-primary)",fontFamily:"Assistant",fontSize:"14px",transform:`translate(-${E}px, ${E}px)`,color:"var(--color-gray-80)",overflow:"hidden",maxWidth:`${document.body.clientWidth-C-E}px`},size:h.length+1||1,dir:"auto",autoComplete:"off",autoCapitalize:"off",autoCorrect:"off"})}else d=I;return N("div",{id:this.getFrameNameDOMId(g),style:{position:"absolute",bottom:`${this.state.height+Zu.nameOffsetY-B+this.state.offsetTop}px`,left:`${C-this.state.offsetLeft}px`,zIndex:2,fontSize:Zu.nameFontSize,color:l?Zu.nameColorDarkTheme:Zu.nameColorLightTheme,lineHeight:Zu.nameLineHeight,width:"max-content",maxWidth:`${g.width}px`,overflow:g.id===this.state.editingFrame?"visible":"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",cursor:iu.MOVE,pointerEvents:this.state.viewModeEnabled?o2.disabled:o2.enabled},onPointerDown:(h)=>this.handleCanvasPointerDown(h),onWheel:(h)=>this.handleWheel(h),onContextMenu:this.handleCanvasContextMenu,onDoubleClick:()=>{this.setState({editingFrame:g.id})},children:d},g.id)})}),UA(this,"focusContainer",()=>{this.excalidrawContainerRef.current?.focus()}),UA(this,"getSceneElementsIncludingDeleted",()=>this.scene.getElementsIncludingDeleted()),UA(this,"getSceneElements",()=>this.scene.getNonDeletedElements()),UA(this,"onInsertElements",(l)=>{this.addElementsFromPasteOrLibrary({elements:l,position:"center",files:null})}),UA(this,"onExportImage",async(l,g,C)=>{Nu("export",l,"ui");let B=await kZ(l,g,this.state,this.files,{exportBackground:this.state.exportBackground,name:this.getName(),viewBackgroundColor:this.state.viewBackgroundColor,exportingFrame:C.exportingFrame}).catch(NIA).catch((E)=>{console.error(E),this.setState({errorMessage:E.message})});this.state.exportEmbedScene&&B&&uq(B)&&this.setState({fileHandle:B})}),UA(this,"magicGenerations",new Map),UA(this,"updateMagicGeneration",({frameElement:l,data:g})=>{g.status==="pending"?Se(l,{customData:{generationData:void 0}},!1):Se(l,{customData:{generationData:g}},!1),this.magicGenerations.set(l.id,g),this.triggerRender()}),UA(this,"plugins",{}),UA(this,"onMagicframeToolSelect",()=>{let l=this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds});if(l.length===0)this.setActiveTool({type:On.magicframe}),Nu("ai","tool-select (empty-selection)","d2c");else{let g=l.length===1&&$8(l[0])&&l[0];if(!g&&l.some((B)=>nr(B)||B.frameId)){this.setActiveTool({type:On.magicframe});return}Nu("ai","tool-select (existing selection)","d2c");let C;if(g)C=g;else{let[B,E,d,I]=Pi(l),h=50;C=LW({...Zu,x:B-h,y:E-h,width:d-B+h*2,height:I-E+h*2,opacity:100,locked:!1}),this.scene.insertElement(C);for(let Q of l)Se(Q,{frameId:C.id});this.setState({selectedElementIds:{[C.id]:!0}})}this.onMagicFrameGenerate(C,"upstream")}}),UA(this,"openEyeDropper",({type:l})=>{TB.set(yZ,{swapPreviewOnAlt:!0,colorPickerType:l==="stroke"?"elementStroke":"elementBackground",onSelect:(g,C)=>{let B=l==="background"&&C.altKey||l==="stroke"&&!C.altKey;!this.scene.getSelectedElements(this.state).length||this.state.activeTool.type!=="selection"?B?this.syncActionResult({appState:{...this.state,currentItemStrokeColor:g},captureUpdate:be.IMMEDIATELY}):this.syncActionResult({appState:{...this.state,currentItemBackgroundColor:g},captureUpdate:be.IMMEDIATELY}):this.updateScene({elements:this.scene.getElementsIncludingDeleted().map((E)=>this.state.selectedElementIds[E.id]?Tr(E,{[B?"strokeColor":"backgroundColor"]:g}):E),captureUpdate:be.IMMEDIATELY})},keepOpenOnAlt:!1})}),UA(this,"dismissLinearEditor",()=>{setTimeout(()=>{this.setState({editingLinearElement:null})})}),UA(this,"syncActionResult",Ja((l)=>{if(this.unmounted||l===!1)return;l.captureUpdate===be.NEVER?this.store.shouldUpdateSnapshot():l.captureUpdate===be.IMMEDIATELY&&this.store.shouldCaptureIncrement();let g=!1,C=null;if(l.elements&&(this.scene.replaceAllElements(l.elements),g=!0),l.files&&(this.addMissingFiles(l.files,l.replaceFiles),this.addNewImagesToImageCache()),l.appState||C||this.state.contextMenu){let B=l?.appState?.viewModeEnabled||!1,E=l?.appState?.zenModeEnabled||!1,d=l?.appState?.theme||this.props.theme||$r.LIGHT,I=l?.appState?.name??this.state.name,h=l?.appState?.errorMessage??this.state.errorMessage;typeof this.props.viewModeEnabled<"u"&&(B=this.props.viewModeEnabled),typeof this.props.zenModeEnabled<"u"&&(E=this.props.zenModeEnabled),C=l.appState?.editingTextElement||null,l.elements&&C&&l.elements.forEach((Q)=>{C?.id===Q.id&&C!==Q&&iq(Q)&&Et(Q)&&(C=Q)}),C?.isDeleted&&(C=null),this.setState((Q)=>{let p=l.appState||{};return{...Q,...p,contextMenu:null,editingTextElement:C,viewModeEnabled:B,zenModeEnabled:E,theme:d,name:I,errorMessage:h}}),g=!0}!g&&l.captureUpdate!==be.EVENTUALLY&&this.scene.triggerUpdate()})),UA(this,"onBlur",Ja(()=>{$2=!1,this.setState({isBindingEnabled:!0})})),UA(this,"onUnload",()=>{this.onBlur()}),UA(this,"disableEvent",(l)=>{l.preventDefault()}),UA(this,"resetHistory",()=>{this.history.clear()}),UA(this,"resetStore",()=>{this.store.clear()}),UA(this,"resetScene",Ja((l)=>{this.scene.replaceAllElements([]),this.setState((g)=>({...EB(),isLoading:l?.resetLoadingState?!1:g.isLoading,theme:this.state.theme})),this.resetStore(),this.resetHistory()})),UA(this,"initializeScene",async()=>{"launchQueue"in window&&"LaunchParams"in window&&window.launchQueue.setConsumer(async(C)=>{if(!C.files.length)return;let B=C.files[0],E=await B.getFile();this.loadFileToCanvas(new File([E],E.name||"",{type:E.type}),B)}),this.props.theme&&this.setState({theme:this.props.theme}),this.state.isLoading||this.setState({isLoading:!0});let l=null;try{typeof this.props.initialData=="function"?l=await this.props.initialData()||null:l=await this.props.initialData||null,l?.libraryItems&&this.library.updateLibrary({libraryItems:l.libraryItems,merge:!0}).catch((C)=>{console.error(C)})}catch(C){console.error(C),l={appState:{errorMessage:C.message||"Encountered an error during importing or restoring scene data"}}}let g=hS(l,null,null,{repairBindings:!0});g.appState={...g.appState,theme:this.props.theme||g.appState.theme,openSidebar:g.appState?.openSidebar||this.state.openSidebar,activeTool:g.appState.activeTool.type==="image"?{...g.appState.activeTool,type:"selection"}:g.appState.activeTool,isLoading:!1,toast:this.state.toast},l?.scrollToContent&&(g.appState={...g.appState,...J9(g.elements,{...g.appState,width:this.state.width,height:this.state.height,offsetTop:this.state.offsetTop,offsetLeft:this.state.offsetLeft})}),this.resetStore(),this.resetHistory(),this.syncActionResult({...g,captureUpdate:be.NEVER}),this.clearImageShapeCache(),this.fonts.loadSceneFonts().then((C)=>{this.fonts.onLoaded(C)}),q9(window.location.href)&&this.scrollToContent(window.location.href,{animate:!1})}),UA(this,"isMobileBreakpoint",(l,g)=>l<Zde||g<jde&&l<Vde),UA(this,"refreshViewportBreakpoints",()=>{if(!this.excalidrawContainerRef.current)return;let{clientWidth:l,clientHeight:g}=document.body,C=this.device.viewport,B=j8(C,{isLandscape:l>g,isMobile:this.isMobileBreakpoint(l,g)});return C!==B?(this.device={...this.device,viewport:B},!0):!1}),UA(this,"refreshEditorBreakpoints",()=>{let l=this.excalidrawContainerRef.current;if(!l)return;let{width:g,height:C}=l.getBoundingClientRect(),B=this.props.UIOptions.dockedSidebarBreakpoint!=null?this.props.UIOptions.dockedSidebarBreakpoint:Xde,E=this.device.editor,d=j8(E,{isMobile:this.isMobileBreakpoint(g,C),canFitSidebar:g>B});return E!==d?(this.device={...this.device,editor:d},!0):!1}),UA(this,"onResize",Ja(()=>{this.scene.getElementsIncludingDeleted().forEach((l)=>na.delete(l)),this.refreshViewportBreakpoints(),this.updateDOMRect(),J_||this.refreshEditorBreakpoints(),this.setState({})})),UA(this,"onFullscreenChange",()=>{!document.fullscreenElement&&this.state.activeEmbeddable?.state==="active"&&this.setState({activeEmbeddable:null})}),UA(this,"renderInteractiveSceneCallback",({atLeastOneVisibleElement:l,scrollBars:g,elementsMap:C})=>{g&&(b3A=g);let B=this.state.editingTextElement?!1:!l&&C.size>0;this.state.scrolledOutside!==B&&this.setState({scrolledOutside:B}),this.scheduleImageRefresh()}),UA(this,"onScroll",E2(()=>{let{offsetTop:l,offsetLeft:g}=this.getCanvasOffsets();this.setState((C)=>C.offsetLeft===g&&C.offsetTop===l?null:{offsetTop:l,offsetLeft:g})},qde)),UA(this,"onCut",Ja((l)=>{!this.excalidrawContainerRef.current?.contains(document.activeElement)||Ap(l.target)||(this.actionManager.executeAction(bqe,"keyboard",l),l.preventDefault(),l.stopPropagation())})),UA(this,"onCopy",Ja((l)=>{!this.excalidrawContainerRef.current?.contains(document.activeElement)||Ap(l.target)||(this.actionManager.executeAction(cZ,"keyboard",l),l.preventDefault(),l.stopPropagation())})),UA(this,"onTouchStart",(l)=>{if(mIA&&l.preventDefault(),!ML){ML=!0,clearTimeout(y3A),y3A=window.setTimeout(A.resetTapTwice,_de);return}if(ML&&l.touches.length===1){let g=l.touches[0];this.handleCanvasDoubleClick({clientX:g.clientX,clientY:g.clientY}),ML=!1,clearTimeout(y3A)}l.touches.length===2&&this.setState({selectedElementIds:Ni({},this.state),activeEmbeddable:null})}),UA(this,"onTouchEnd",(l)=>{this.resetContextMenuTimer(),l.touches.length>0?this.setState({previousSelectedElementIds:{},selectedElementIds:Ni(this.state.previousSelectedElementIds,this.state)}):Wi.pointers.clear()}),UA(this,"pasteFromClipboard",Ja(async(l)=>{let g=!!sZ,C=document.activeElement,B=this.excalidrawContainerRef.current?.contains(C);if(l&&!B)return;let E=document.elementFromPoint(this.lastViewportPosition.x,this.lastViewportPosition.y);if(l&&(!(E instanceof HTMLCanvasElement)||Ap(C)))return;let{x:d,y:I}=Ru({clientX:this.lastViewportPosition.x,clientY:this.lastViewportPosition.y},this.state),h=l?.clipboardData?.files[0],Q=await kQA(l,g);if(!h&&!g){if(Q.mixedContent)return this.addElementsFromMixedContentPaste(Q.mixedContent,{isPlainPaste:g,sceneX:d,sceneY:I});if(Q.text){let p=Q.text.trim();p.startsWith("<svg")&&p.endsWith("</svg>")&&(h=$QA(p))}}if(cp(h)&&!Q.spreadsheet){if(!this.isToolSupported("image")){this.setState({errorMessage:uA("errors.imageToolNotSupported")});return}let p=this.createImageElement({sceneX:d,sceneY:I});this.insertImageElement(p,h),this.initializeImageDimensions(p),this.setState({selectedElementIds:Ni({[p.id]:!0},this.state)});return}if(this.props.onPaste)try{if(await this.props.onPaste(Q,l)===!1)return}catch(p){console.error(p)}if(Q.errorMessage)this.setState({errorMessage:Q.errorMessage});else if(Q.spreadsheet&&!g)this.setState({pasteDialog:{data:Q.spreadsheet,shown:!0}});else if(Q.elements){let p=Q.programmaticAPI?VL(Q.elements):Q.elements;this.addElementsFromPasteOrLibrary({elements:p,files:Q.files||null,position:"cursor",retainSeed:g})}else if(Q.text){if(Q.text&&dQr(Q.text)){let f=await Promise.resolve().then(() => (kP(),{}));try{let{elements:D,files:w={}}=await vP(Q.text),b=VL(D,{regenerateIds:!0});this.addElementsFromPasteOrLibrary({elements:b,files:w,position:"cursor"});return}catch(D){console.warn(`parsing pasted text as mermaid definition failed: ${D.message}`)}}let p=YIA(Q.text).split(/\n+/).map((f)=>f.trim()).filter(Boolean),m=p.map((f)=>w4e(f)).filter((f)=>BS(f,this.props.validateEmbeddable)&&(/^(http|https):\/\/[^\s/$.?#].[^\s]*$/.test(f)||m2(f)?.type==="video"));if(!sZ&&m.length>0&&m.length===p.length){let f=[];for(let D of m){let w=f[f.length-1],b=this.insertEmbeddableElement({sceneX:w?w.x+w.width+20:d,sceneY:I,link:Ml(D)});b&&f.push(b)}f.length&&this.setState({selectedElementIds:Object.fromEntries(f.map((D)=>[D.id,!0]))});return}this.addTextFromPaste(Q.text,g)}this.setActiveTool({type:"selection"}),l?.preventDefault()})),UA(this,"addElementsFromPasteOrLibrary",(l)=>{let g=OW(l.elements,null,void 0),[C,B,E,d]=Pi(g),I=f0(C,E)/2,h=f0(B,d)/2,Q=typeof l.position=="object"?l.position.clientX:l.position==="cursor"?this.lastViewportPosition.x:this.state.width/2+this.state.offsetLeft,p=typeof l.position=="object"?l.position.clientY:l.position==="cursor"?this.lastViewportPosition.y:this.state.height/2+this.state.offsetTop,{x:m,y:f}=Ru({clientX:Q,clientY:p},this.state),D=m-I,w=f-h,[b,F]=Dn(D,w,this.getEffectiveGridSize()),v=oQA(g.map((R)=>Tr(R,{x:R.x+b-C,y:R.y+F-B})),{randomizeSeed:!l.retainSeed}),S=this.scene.getElementsIncludingDeleted(),x=[...S,...v];x=this.props.onDuplicate?.(x,S)||x,CB(x,ar(v));let k=this.getTopLayerFrameAtSceneCoords({x:m,y:f});if(k){let R=$4e(v,k);V9(x,R,k,this.state)}this.scene.replaceAllElements(x),v.forEach((R)=>{if(Et(R)&&Tu(R)){let L=Qo(R,this.scene.getElementsMapIncludingDeleted());j0(R,L,this.scene.getElementsMapIncludingDeleted())}}),Rde&&kd.loadElementsFonts(v).then((R)=>{this.fonts.onLoaded(R)}),l.files&&this.addMissingFiles(l.files),this.store.shouldCaptureIncrement();let T=XW(v);this.setState({...this.state,openSidebar:this.state.openSidebar&&this.device.editor.canFitSidebar&&TB.get(emA)?this.state.openSidebar:null,...V0({editingGroupId:null,selectedElementIds:T.reduce((R,L)=>(Tu(L)||(R[L.id]=!0),R),{})},this.scene.getNonDeletedElements(),this.state,this)},()=>{l.files&&this.addNewImagesToImageCache()}),this.setActiveTool({type:"selection"}),l.fitToContent&&this.scrollToContent(v,{fitToContent:!0,canvasOffsets:this.getEditorUIOffsets()})}),UA(this,"setAppState",(l,g)=>{this.setState(l,g)}),UA(this,"removePointer",(l)=>{Hp&&this.resetContextMenuTimer(),Wi.pointers.delete(l.pointerId)}),UA(this,"toggleLock",(l="ui")=>{this.state.activeTool.locked||Nu("toolbar","toggleLock",`${l} (${this.device.editor.isMobile?"mobile":"desktop"})`),this.setState((g)=>({activeTool:{...g.activeTool,...un(this.state,g.activeTool.locked?{type:"selection"}:g.activeTool),locked:!g.activeTool.locked}}))}),UA(this,"updateFrameRendering",(l)=>{this.setState((g)=>{let C=typeof l=="function"?l(g.frameRendering):l;return{frameRendering:{enabled:C?.enabled??g.frameRendering.enabled,clip:C?.clip??g.frameRendering.clip,name:C?.name??g.frameRendering.name,outline:C?.outline??g.frameRendering.outline}}})}),UA(this,"togglePenMode",(l)=>{this.setState((g)=>({penMode:l??!g.penMode,penDetected:!0}))}),UA(this,"onHandToolToggle",()=>{this.actionManager.executeAction(mBr)}),UA(this,"zoomCanvas",(l)=>{this.setState({...AD({viewportX:this.state.width/2+this.state.offsetLeft,viewportY:this.state.height/2+this.state.offsetTop,nextZoom:Fd(l)},this.state)})}),UA(this,"cancelInProgressAnimation",null),UA(this,"scrollToContent",(l=this.scene.getNonDeletedElements(),g)=>{if(typeof l=="string"){let I;if(q9(l)?I=S4e(l):I=l,I){let h=this.scene.getElementsFromId(I);h?.length?this.scrollToContent(h,{fitToContent:g?.fitToContent??!0,animate:g?.animate??!0}):q9(l)&&this.setState({toast:{message:uA("elementLink.notFound"),duration:3000,closable:!0}})}return}this.cancelInProgressAnimation?.();let C=Array.isArray(l)?l:[l],B=this.state.zoom,E=this.state.scrollX,d=this.state.scrollY;if(g?.fitToContent||g?.fitToViewport){let{appState:I}=bZ({canvasOffsets:g.canvasOffsets,targetElements:C,appState:this.state,fitToViewport:!!g?.fitToViewport,viewportZoomFactor:g?.viewportZoomFactor,minZoom:g?.minZoom,maxZoom:g?.maxZoom});B=I.zoom,E=I.scrollX,d=I.scrollY}else{let I=J9(C,this.state);E=I.scrollX,d=I.scrollY}if(g?.animate){let I=this.state.scrollX,h=this.state.scrollY,Q=this.state.zoom.value,p=CIe({fromValues:{scrollX:I,scrollY:h,zoom:Q},toValues:{scrollX:E,scrollY:d,zoom:B.value},interpolateValue:(m,f,D,w)=>{if(w==="zoom")return m*Math.pow(f/m,ep(D))},onStep:({scrollX:m,scrollY:f,zoom:D})=>{this.setState({scrollX:m,scrollY:f,zoom:{value:D}})},onStart:()=>{this.setState({shouldCacheIgnoreZoom:!0})},onEnd:()=>{this.setState({shouldCacheIgnoreZoom:!1})},onCancel:()=>{this.setState({shouldCacheIgnoreZoom:!1})},duration:g?.duration??500});this.cancelInProgressAnimation=()=>{p(),this.cancelInProgressAnimation=null}}else this.setState({scrollX:E,scrollY:d,zoom:B})}),UA(this,"maybeUnfollowRemoteUser",()=>{this.state.userToFollow&&this.setState({userToFollow:null})}),UA(this,"translateCanvas",(l)=>{this.cancelInProgressAnimation?.(),this.maybeUnfollowRemoteUser(),this.setState(l)}),UA(this,"setToast",(l)=>{this.setState({toast:l})}),UA(this,"restoreFileFromShare",async()=>{try{let l=await caches.open("web-share-target"),g=await l.match("shared-file");if(g){let C=await g.blob(),B=new File([C],C.name||"",{type:C.type});this.loadFileToCanvas(B,null),await l.delete("shared-file"),window.history.replaceState(null,Gde,window.location.pathname)}}catch(l){this.setState({errorMessage:l.message})}}),UA(this,"addFiles",Ja((l)=>{let{addedFiles:g}=this.addMissingFiles(l);this.clearImageShapeCache(g),this.scene.triggerUpdate(),this.addNewImagesToImageCache()})),UA(this,"addMissingFiles",(l,g=!1)=>{let C=g?{}:{...this.files},B={},E=Array.isArray(l)?l:Object.values(l);for(let d of E)if(!C[d.id]&&(B[d.id]=d,C[d.id]=d,d.mimeType===Xt.svg))try{let I=I1e(BQA(Q1e(d.dataURL)),Xt.svg);d.dataURL!==I&&(d.version=(d.version??1)+1,d.dataURL=I)}catch(I){console.error(I)}return this.files=C,{addedFiles:B}}),UA(this,"updateScene",Ja((l)=>{let g=Sd(l.elements??[]);if(l.captureUpdate&&l.captureUpdate!==be.EVENTUALLY){let C=this.store.snapshot.appState,B=this.store.snapshot.elements,E=l.appState?Object.assign({},C,l.appState):C,d=l.elements?this.store.filterUncomittedElements(this.scene.getElementsMapIncludingDeleted(),ar(g)):B;l.captureUpdate===be.IMMEDIATELY?this.store.captureIncrement(d,E):l.captureUpdate===be.NEVER&&this.store.updateSnapshot(d,E)}l.appState&&this.setState(l.appState),l.elements&&this.scene.replaceAllElements(g),l.collaborators&&this.setState({collaborators:l.collaborators})})),UA(this,"triggerRender",(l)=>{l===!0?this.scene.triggerUpdate():this.setState({})}),UA(this,"toggleSidebar",({name:l,tab:g,force:C})=>{let B;C===void 0?B=this.state.openSidebar?.name===l&&this.state.openSidebar?.tab===g?null:l:B=C?l:null;let E=B?{name:B}:null;return E&&g&&(E.tab=g),this.setState({openSidebar:E}),!!B}),UA(this,"updateCurrentCursorPosition",Ja((l)=>{this.lastViewportPosition.x=l.clientX,this.lastViewportPosition.y=l.clientY})),UA(this,"getEditorUIOffsets",()=>{let l=this.excalidrawContainerRef?.current?.querySelector(".App-toolbar")?.getBoundingClientRect()?.bottom??0,g=this.excalidrawContainerRef?.current?.querySelector(".sidebar")?.getBoundingClientRect(),C=this.excalidrawContainerRef?.current?.querySelector(".App-menu__left")?.getBoundingClientRect(),B=16;return WL().rtl?{top:l+B,right:Math.max(this.state.width-(C?.left??this.state.width),0)+B,bottom:B,left:Math.max(g?.right??0,0)+B}:{top:l+B,right:Math.max(this.state.width-(g?.left??this.state.width)+B,0),bottom:B,left:Math.max(C?.right??0,0)+B}}),UA(this,"onKeyDown",Ja((l)=>{if("Proxy"in window&&(!l.shiftKey&&/^[A-Z]$/.test(l.key)||l.shiftKey&&/^[a-z]$/.test(l.key))&&(l=new Proxy(l,{get(E,d){let I=E[d];return typeof I=="function"?I.bind(E):d==="key"?l.shiftKey?E.key.toUpperCase():E.key.toLowerCase():I}})),!V_(l.target)){if((l.key===PA.ESCAPE||l.key===PA.ENTER)&&this.state.croppingElementId){this.finishImageCropping();return}let E=Jr(this.scene.getNonDeletedElementsMap(),this.state);if(E.length===1&&Ri(E[0])&&l.key===PA.ENTER){this.startImageCropping(E[0]);return}if(l.key===PA.ESCAPE&&this.flowChartCreator.isCreatingChart){this.flowChartCreator.clear(),this.triggerRender(!0);return}let d=Y9(l.key);if(l[PA.CTRL_OR_CMD]&&d&&!l.shiftKey){l.preventDefault();let I=Jr(this.scene.getNonDeletedElementsMap(),this.state);I.length===1&&AS(I[0])&&this.flowChartCreator.createNodes(I[0],this.scene.getNonDeletedElementsMap(),this.state,Pqe(l.key)),this.flowChartCreator.pendingNodes?.length&&!wS(this.flowChartCreator.pendingNodes,this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())&&this.scrollToContent(this.flowChartCreator.pendingNodes,{animate:!0,duration:300,fitToContent:!0,canvasOffsets:this.getEditorUIOffsets()});return}if(l.altKey){let I=Jr(this.scene.getNonDeletedElementsMap(),this.state);if(I.length===1&&d){l.preventDefault();let h=this.flowChartNavigator.exploreByDirection(I[0],this.scene.getNonDeletedElementsMap(),Pqe(l.key));if(h){this.setState((p)=>({selectedElementIds:Ni({[h]:!0},p)}));let Q=this.scene.getNonDeletedElementsMap().get(h);Q&&!wS([Q],this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())&&this.scrollToContent(Q,{animate:!0,duration:300,canvasOffsets:this.getEditorUIOffsets()})}return}}}if(l[PA.CTRL_OR_CMD]&&l.key===PA.P&&!l.shiftKey&&!l.altKey){this.setToast({message:uA("commandPalette.shortcutHint",{shortcut:us("commandPalette")})}),l.preventDefault();return}if(l[PA.CTRL_OR_CMD]&&l.key.toLowerCase()===PA.V&&(sZ=l.shiftKey,clearTimeout(Qze),Qze=window.setTimeout(()=>{sZ=!1},100)),l[PA.CTRL_OR_CMD]&&Ap(l.target)&&(l.code===hi.MINUS||l.code===hi.EQUAL)){l.preventDefault();return}if(Ap(l.target)&&l.key!==PA.ESCAPE||Y9(l.key)&&V_(l.target))return;if(l.key===PA.QUESTION_MARK){this.setState({openDialog:{name:"help"}});return}else if(l.key.toLowerCase()===PA.E&&l.shiftKey&&l[PA.CTRL_OR_CMD]){l.preventDefault(),this.setState({openDialog:{name:"imageExport"}});return}if(l.key===PA.PAGE_UP||l.key===PA.PAGE_DOWN){let E=(l.shiftKey?this.state.width:this.state.height)/this.state.zoom.value;l.key===PA.PAGE_DOWN&&(E=-E),l.shiftKey?this.translateCanvas((d)=>({scrollX:d.scrollX+E})):this.translateCanvas((d)=>({scrollY:d.scrollY+E}))}if(this.state.openDialog?.name==="elementLinkSelector"||this.actionManager.handleKeyDown(l)||this.state.viewModeEnabled)return;if(l[PA.CTRL_OR_CMD]&&this.state.isBindingEnabled&&this.setState({isBindingEnabled:!1}),Y9(l.key)){let E=this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}),d=E.find(ft),I=new Set;E.filter(ft).filter((m)=>{let f=m.startBinding&&!E.some((w)=>w.id===m.startBinding?.elementId),D=m.endBinding&&!E.some((w)=>w.id===m.endBinding?.elementId);return f||D}).forEach((m)=>I.add(m.id)),E=E.filter((m)=>!I.has(m.id));let h=this.getEffectiveGridSize()&&(l.shiftKey?DIA:this.getEffectiveGridSize())||(l.shiftKey?Ude:DIA),Q=0,p=0;l.key===PA.ARROW_LEFT?Q=-h:l.key===PA.ARROW_RIGHT?Q=h:l.key===PA.ARROW_UP?p=-h:l.key===PA.ARROW_DOWN&&(p=h),E.forEach((m)=>{Se(m,{x:m.x+Q,y:m.y+p},!1),Os(m,this.scene.getNonDeletedElementsMap(),{simultaneouslyUpdated:E})}),this.setState({suggestedBindings:yW(E.filter((m)=>m.id!==d?.id||h!==0),this.scene.getNonDeletedElementsMap(),this.state.zoom)}),this.scene.triggerUpdate(),l.preventDefault()}else if(l.key===PA.ENTER){let E=this.scene.getSelectedElements(this.state);if(E.length===1){let d=E[0];if(l[PA.CTRL_OR_CMD])Nr(d)&&(!this.state.editingLinearElement||this.state.editingLinearElement.elementId!==E[0].id)&&(this.store.shouldCaptureIncrement(),ft(d)||this.setState({editingLinearElement:new ht(d)}));else if(Et(d)||g4e(d)){let I;Et(d)||(I=d);let h=xW(d,this.state,this.scene.getNonDeletedElementsMap()),{x:Q,y:p}=h;this.startTextEditing({sceneX:Q,sceneY:p,container:I}),l.preventDefault();return}else nr(d)&&this.setState({editingFrame:d.id})}}else if(!l.ctrlKey&&!l.altKey&&!l.metaKey&&!this.state.newElement&&!this.state.selectionElement&&!this.state.selectedElementsAreBeingDragged){let E=wQe(l.key);E?(this.state.activeTool.type!==E&&Nu("toolbar",E,`keyboard (${this.device.editor.isMobile?"mobile":"desktop"})`),E==="arrow"&&this.state.activeTool.type==="arrow"&&this.setState((d)=>({currentItemArrowType:d.currentItemArrowType===ho.sharp?ho.round:d.currentItemArrowType===ho.round?ho.elbow:ho.sharp})),this.setActiveTool({type:E}),l.stopPropagation()):l.key===PA.Q&&(this.toggleLock("keyboard"),l.stopPropagation())}if(l.key===PA.SPACE&&Wi.pointers.size===0&&($2=!0,Cu(this.interactiveCanvas,iu.GRAB),l.preventDefault()),(l.key===PA.G||l.key===PA.S)&&!l.altKey&&!l[PA.CTRL_OR_CMD]){let E=this.scene.getSelectedElements(this.state);if(this.state.activeTool.type==="selection"&&!E.length)return;l.key===PA.G&&(p2(this.state.activeTool.type)||E.some((d)=>p2(d.type)))&&(this.setState({openPopup:"elementBackground"}),l.stopPropagation()),l.key===PA.S&&(this.setState({openPopup:"elementStroke"}),l.stopPropagation())}if(!l[PA.CTRL_OR_CMD]&&l.shiftKey&&l.key.toLowerCase()===PA.F){let E=this.scene.getSelectedElements(this.state);if(this.state.activeTool.type==="selection"&&!E.length)return;(this.state.activeTool.type==="text"||E.find((d)=>Et(d)||Gr(d,this.scene.getNonDeletedElementsMap())))&&(l.preventDefault(),this.setState({openPopup:"fontFamily"}))}if(l.key===PA.K&&!l.altKey&&!l[PA.CTRL_OR_CMD]){this.state.activeTool.type==="laser"?this.setActiveTool({type:"selection"}):this.setActiveTool({type:"laser"});return}l[PA.CTRL_OR_CMD]&&(l.key===PA.BACKSPACE||l.key===PA.DELETE)&&TB.set(xZ,"clearCanvas");let g=l.key.toLocaleLowerCase(),C=g===PA.S&&l.shiftKey,B=l.key===PA.I||g===PA.G&&l.shiftKey;(C||B)&&this.openEyeDropper({type:C?"stroke":"background"})})),UA(this,"onKeyUp",Ja((l)=>{if(l.key===PA.SPACE&&(this.state.viewModeEnabled||this.state.openDialog?.name==="elementLinkSelector"?Cu(this.interactiveCanvas,iu.GRAB):this.state.activeTool.type==="selection"?Oc(this.interactiveCanvas):(hB(this.interactiveCanvas,this.state),this.setState({selectedElementIds:Ni({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})),$2=!1),!l[PA.CTRL_OR_CMD]&&!this.state.isBindingEnabled&&this.setState({isBindingEnabled:!0}),Y9(l.key)&&(sS(this.scene.getSelectedElements(this.state).filter(Nr),this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements(),this.scene,V1(this.state),this.state.selectedLinearElement?.selectedPointsIndices??[],this.state.zoom),this.setState({suggestedBindings:[]})),l.altKey||this.flowChartNavigator.isExploring&&(this.flowChartNavigator.clear(),this.syncActionResult({captureUpdate:be.IMMEDIATELY})),!l[PA.CTRL_OR_CMD]&&this.flowChartCreator.isCreatingChart){this.flowChartCreator.pendingNodes?.length&&this.scene.insertElements(this.flowChartCreator.pendingNodes);let g=this.flowChartCreator.pendingNodes?.[0];g&&(this.setState((C)=>({selectedElementIds:Ni({[g.id]:!0},C)})),wS([g],this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())||this.scrollToContent(g,{animate:!0,duration:300,canvasOffsets:this.getEditorUIOffsets()})),this.flowChartCreator.clear(),this.syncActionResult({captureUpdate:be.IMMEDIATELY})}})),UA(this,"isToolSupported",(l)=>this.props.UIOptions.tools?.[l]!==!1),UA(this,"setActiveTool",(l)=>{if(!this.isToolSupported(l.type)){console.warn(`"${l.type}" tool is disabled via "UIOptions.canvasActions.tools.${l.type}"`);return}let g=un(this.state,l);g.type==="hand"?Cu(this.interactiveCanvas,iu.GRAB):$2||hB(this.interactiveCanvas,{...this.state,activeTool:g}),gIe(document.activeElement)&&this.focusContainer(),X_(g.type)||this.setState({suggestedBindings:[]}),g.type==="image"&&this.onImageAction({insertOnCanvasDirectly:(l.type==="image"&&l.insertOnCanvasDirectly)??!1}),this.setState((C)=>{let B={snapLines:C.snapLines.length?[]:C.snapLines,originSnapOffset:null,activeEmbeddable:null};return g.type==="freedraw"&&this.store.shouldCaptureIncrement(),g.type!=="selection"?{...C,activeTool:g,selectedElementIds:Ni({},C),selectedGroupIds:Ni({},C),editingGroupId:null,multiElement:null,...B}:{...C,activeTool:g,...B}})}),UA(this,"setOpenDialog",(l)=>{this.setState({openDialog:l})}),UA(this,"setCursor",(l)=>{Cu(this.interactiveCanvas,l)}),UA(this,"resetCursor",()=>{Oc(this.interactiveCanvas)}),UA(this,"isTouchScreenMultiTouchGesture",()=>Wi.pointers.size>=2),UA(this,"getName",()=>this.state.name||this.props.name||`${uA("labels.untitled")}-${RIA()}`),UA(this,"onGestureStart",Ja((l)=>{l.preventDefault(),this.isTouchScreenMultiTouchGesture()&&this.setState({selectedElementIds:Ni({},this.state),activeEmbeddable:null}),Wi.initialScale=this.state.zoom.value})),UA(this,"onGestureChange",Ja((l)=>{if(l.preventDefault(),this.isTouchScreenMultiTouchGesture())return;let g=Wi.initialScale;g&&this.setState((C)=>({...AD({viewportX:this.lastViewportPosition.x,viewportY:this.lastViewportPosition.y,nextZoom:Fd(g*l.scale)},C)}))})),UA(this,"onGestureEnd",Ja((l)=>{l.preventDefault(),this.isTouchScreenMultiTouchGesture()&&this.setState({previousSelectedElementIds:{},selectedElementIds:Ni(this.state.previousSelectedElementIds,this.state)}),Wi.initialScale=null})),UA(this,"startTextEditing",({sceneX:l,sceneY:g,insertAtParentCenter:C=!0,container:B,autoEdit:E=!0})=>{let d=!1,I=C&&this.getTextWysiwygSnappedToCenterPosition(l,g,this.state,B);B&&I&&(Gr(B,this.scene.getNonDeletedElementsMap())||(d=!0));let h=null,Q=this.scene.getSelectedElements(this.state);Q.length===1?Et(Q[0])?h=Q[0]:B?h=Gr(Q[0],this.scene.getNonDeletedElementsMap()):h=this.getTextElementAtPosition(l,g):h=this.getTextElementAtPosition(l,g);let p=h?.fontFamily||this.state.currentItemFontFamily,m=h?.lineHeight||op(p),f=this.state.currentItemFontSize;if(!h&&d&&B&&!Kr(B)){let b=PIA(cu({fontSize:f,fontFamily:p}),m),F=WIA(f,m),v=Math.max(B.height,F),S=Math.max(B.width,b);Se(B,{height:v,width:S}),l=B.x+S/2,g=B.y+v/2,I&&(I=this.getTextWysiwygSnappedToCenterPosition(l,g,this.state,B))}let D=this.getTopLayerFrameAtSceneCoords({x:l,y:g}),w=h||Tl({x:I?I.elementCenterX:l,y:I?I.elementCenterY:g,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,text:"",fontSize:f,fontFamily:p,textAlign:I?"center":this.state.currentItemTextAlign,verticalAlign:I?Ul.MIDDLE:J8,containerId:d?B?.id:void 0,groupIds:B?.groupIds??[],lineHeight:m,angle:B?.angle??0,frameId:D?D.id:null});if(!h&&d&&B&&Se(B,{boundElements:(B.boundElements||[]).concat({type:"text",id:w.id})}),this.setState({editingTextElement:w}),!h)if(B&&d){let b=this.scene.getElementIndex(B.id);this.scene.insertElementAtIndex(w,b+1)}else this.scene.insertElement(w);E||h||B?this.handleTextWysiwyg(w,{isExistingElement:!!h}):this.setState({newElement:w,multiElement:null})}),UA(this,"startImageCropping",(l)=>{this.store.shouldCaptureIncrement(),this.setState({croppingElementId:l.id})}),UA(this,"finishImageCropping",()=>{this.state.croppingElementId&&(this.store.shouldCaptureIncrement(),this.setState({croppingElementId:null}))}),UA(this,"handleCanvasDoubleClick",(l)=>{if(this.state.multiElement||this.state.activeTool.type!=="selection")return;let g=this.scene.getSelectedElements(this.state),{x:C,y:B}=Ru(l,this.state);if(g.length===1&&Nr(g[0])){if(l[PA.CTRL_OR_CMD]&&(!this.state.editingLinearElement||this.state.editingLinearElement.elementId!==g[0].id)&&!ft(g[0])){this.store.shouldCaptureIncrement(),this.setState({editingLinearElement:new ht(g[0])});return}else if(this.state.selectedLinearElement&&ft(g[0])){let E=ht.getSegmentMidpointHitCoords(this.state.selectedLinearElement,{x:C,y:B},this.state,this.scene.getNonDeletedElementsMap()),d=E?ht.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,E,this.scene.getNonDeletedElementsMap()):-1;if(d&&d>-1){this.store.shouldCaptureIncrement(),ht.deleteFixedSegment(g[0],d);let I=ht.getSegmentMidpointHitCoords({...this.state.selectedLinearElement,segmentMidPointHoveredCoords:null},{x:C,y:B},this.state,this.scene.getNonDeletedElementsMap()),h=I?ht.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,I,this.scene.getNonDeletedElementsMap()):null;this.setState({selectedLinearElement:{...this.state.selectedLinearElement,pointerDownState:{...this.state.selectedLinearElement.pointerDownState,segmentMidpoint:{index:h,value:E,added:!1}},segmentMidPointHoveredCoords:I}});return}}}if(g.length===1&&Ri(g[0])){this.startImageCropping(g[0]);return}if(Oc(this.interactiveCanvas),lp(this.state).length>0){let E=this.getElementAtPosition(C,B),d=E&&VQe(E,this.state.selectedGroupIds);if(d){this.store.shouldCaptureIncrement(),this.setState((I)=>({...I,...V0({editingGroupId:d,selectedElementIds:{[E.id]:!0}},this.scene.getNonDeletedElements(),I,this)}));return}}if(Oc(this.interactiveCanvas),!l[PA.CTRL_OR_CMD]&&!this.state.viewModeEnabled){let E=this.getElementAtPosition(C,B);if(xg(E)){this.setState({activeEmbeddable:{element:E,state:"active"}});return}let d=this.getTextBindableContainerAtPosition(C,B);if(d&&(Yl(d)||!Rc(d.backgroundColor)||Q2({x:C,y:B,element:d,shape:pd(d,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()}))){let I=xW(d,this.state,this.scene.getNonDeletedElementsMap());C=I.x,B=I.y}this.startTextEditing({sceneX:C,sceneY:B,insertAtParentCenter:!l.altKey,container:d})}}),UA(this,"getElementLinkAtPosition",(l,g)=>{let C=this.scene.getNonDeletedElements(),B=-1;for(let E=C.length-1;E>=0;E--){let d=C[E];if(g&&d.id===g.id&&(B=E),d.link&&E>=B&&TW(d,this.scene.getNonDeletedElementsMap(),this.state,X(l.x,l.y),this.device.editor.isMobile))return d}}),UA(this,"redirectToLink",(l,g)=>{let C=Li(X(this.lastPointerDownEvent.clientX,this.lastPointerDownEvent.clientY),X(this.lastPointerUpEvent.clientX,this.lastPointerUpEvent.clientY));if(!this.hitLinkElement||C>$1)return;let B=Ru(this.lastPointerDownEvent,this.state),E=this.scene.getNonDeletedElementsMap(),d=TW(this.hitLinkElement,E,this.state,X(B.x,B.y),this.device.editor.isMobile),I=Ru(this.lastPointerUpEvent,this.state),h=TW(this.hitLinkElement,E,this.state,X(I.x,I.y),this.device.editor.isMobile);if(d&&h){Lqe();let Q=this.hitLinkElement.link;if(Q){Q=Ml(Q);let p;if(this.props.onLinkOpen&&(p=MIA("excalidraw-link",l.nativeEvent),this.props.onLinkOpen({...this.hitLinkElement,link:Q},p)),!p?.defaultPrevented){let m=eQA(Q)?"_self":"_blank",f=window.open(void 0,m);f&&(f.opener=null,f.location=Q)}}}}),UA(this,"getTopLayerFrameAtSceneCoords",(l)=>{let g=this.scene.getNonDeletedElementsMap(),C=this.scene.getNonDeletedFramesLikes().filter((B)=>LQA(l,B,g));return C.length?C[C.length-1]:null}),UA(this,"handleCanvasPointerMove",(l)=>{this.savePointer(l.clientX,l.clientY,this.state.cursorButton),this.lastPointerMoveEvent=l.nativeEvent,Wi.pointers.has(l.pointerId)&&Wi.pointers.set(l.pointerId,{x:l.clientX,y:l.clientY});let g=Wi.initialScale;if(Wi.pointers.size===2&&Wi.lastCenter&&g&&Wi.initialDistance){let p=Kqe(Wi.pointers),m=p.x-Wi.lastCenter.x,f=p.y-Wi.lastCenter.y;Wi.lastCenter=p;let D=Jqe(Array.from(Wi.pointers.values())),w=this.state.activeTool.type==="freedraw"&&this.state.penMode?1:D/Wi.initialDistance,b=w?Fd(g*w):this.state.zoom.value;this.setState((F)=>{let v=AD({viewportX:p.x,viewportY:p.y,nextZoom:b},F);this.translateCanvas({zoom:v.zoom,scrollX:v.scrollX+2*(m/b),scrollY:v.scrollY+2*(f/b),shouldCacheIgnoreZoom:!0})}),this.resetShouldCacheIgnoreZoomDebounced()}else Wi.lastCenter=Wi.initialDistance=Wi.initialScale=null;if($2||TL||w3A||C2(this.state))return;let C=Wqe(b3A,l.clientX-this.state.offsetLeft,l.clientY-this.state.offsetTop).isOverEither;!this.state.newElement&&!this.state.selectionElement&&!this.state.selectedElementsAreBeingDragged&&!this.state.multiElement&&(C?Oc(this.interactiveCanvas):hB(this.interactiveCanvas,this.state));let B=Ru(l,this.state),{x:E,y:d}=B;if(!this.state.newElement&&u4e(this.state.activeTool.type)){let{originOffset:p,snapLines:m}=i4e(this.scene.getNonDeletedElements(),this,{x:E,y:d},l,this.scene.getNonDeletedElementsMap());this.setState((f)=>{let D=M9(f.snapLines,m),w=f.originSnapOffset?M9(f.originSnapOffset,p):p;return f.snapLines===D&&f.originSnapOffset===w?null:{snapLines:D,originSnapOffset:w}})}else!this.state.newElement&&!this.state.selectedElementsAreBeingDragged&&!this.state.selectionElement&&this.setState((p)=>p.snapLines.length?{snapLines:[]}:null);if(this.state.editingLinearElement&&!this.state.editingLinearElement.isDragging){let p=ht.handlePointerMove(l,E,d,this,this.scene.getNonDeletedElementsMap());p&&p!==this.state.editingLinearElement&&Wn(()=>{this.setState({editingLinearElement:p})}),p?.lastUncommittedPoint!=null?this.maybeSuggestBindingAtCursor(B,p.elbowed):Wn(()=>{this.setState({suggestedBindings:[]})})}if(JIA(this.state.activeTool.type)){let{newElement:p}=this.state;oB(p,!1)?this.maybeSuggestBindingsForLinearElementAtCoords(p,[B],this.state.startBoundElement):this.maybeSuggestBindingAtCursor(B,!1)}if(this.state.multiElement){let{multiElement:p}=this.state,{x:m,y:f}=p,{points:D,lastCommittedPoint:w}=p,b=D[D.length-1];if(hB(this.interactiveCanvas,this.state),b===w)Li(X(E-m,d-f),b)>=H8?Se(p,{points:[...D,X(E-m,d-f)]},!1):Cu(this.interactiveCanvas,iu.POINTER);else if(D.length>2&&w&&Li(X(E-m,d-f),w)<H8)Cu(this.interactiveCanvas,iu.POINTER),Se(p,{points:D.slice(0,-1)},!1);else{let[F,v]=Dn(E,d,l[PA.CTRL_OR_CMD]||ft(p)?null:this.getEffectiveGridSize()),[S,x]=p?.lastCommittedPoint??[0,0],k=F-m-S,T=v-f-x;w9(l)&&({width:k,height:T}=Aq(S+m,x+f,F,v)),fd(D,this.state.zoom.value)&&Cu(this.interactiveCanvas,iu.POINTER),Se(p,{points:[...D.slice(0,-1),X(S+k,x+T)]},!1,{isDragging:!0}),this.triggerRender(!1)}return}if(!!l.buttons||this.state.activeTool.type!=="selection"&&this.state.activeTool.type!=="text"&&this.state.activeTool.type!=="eraser")return;let I=this.scene.getNonDeletedElements(),h=this.scene.getSelectedElements(this.state);if(h.length===1&&!C&&!this.state.editingLinearElement){if(this.state.selectedLinearElement&&this.handleHoverSelectedLinearElement(this.state.selectedLinearElement,E,d),(!this.state.selectedLinearElement||this.state.selectedLinearElement.hoverPointIndex===-1)&&this.state.openDialog?.name!=="elementLinkSelector"&&!(h.length===1&&ft(h[0]))){let p=JQA(I,this.state,E,d,this.state.zoom,l.pointerType,this.scene.getNonDeletedElementsMap(),this.device);if(p&&p.transformHandleType){Cu(this.interactiveCanvas,PQA(p));return}}}else if(h.length>1&&!C&&this.state.openDialog?.name!=="elementLinkSelector"){let p=OQA(Pi(h),E,d,this.state.zoom,l.pointerType,this.device);if(p){Cu(this.interactiveCanvas,PQA({transformHandleType:p}));return}}let Q=this.getElementAtPosition(B.x,B.y);this.hitLinkElement=this.getElementLinkAtPosition(B,Q),!dB(this.state)&&(this.hitLinkElement&&!this.state.selectedElementIds[this.hitLinkElement.id]?(Cu(this.interactiveCanvas,iu.POINTER),AEr(this.hitLinkElement,this.state,this.scene.getNonDeletedElementsMap())):(Lqe(),Q&&(Q.link||_s(Q))&&this.state.selectedElementIds[Q.id]&&!this.state.contextMenu&&!this.state.showHyperlinkPopup?this.setState({showHyperlinkPopup:"info"}):this.state.activeTool.type==="text"?Cu(this.interactiveCanvas,Et(Q)?iu.TEXT:iu.CROSSHAIR):this.state.viewModeEnabled?Cu(this.interactiveCanvas,iu.GRAB):this.state.openDialog?.name==="elementLinkSelector"?Cu(this.interactiveCanvas,iu.AUTO):C?Cu(this.interactiveCanvas,iu.AUTO):this.state.selectedLinearElement?this.handleHoverSelectedLinearElement(this.state.selectedLinearElement,E,d):l[PA.CTRL_OR_CMD]?Cu(this.interactiveCanvas,iu.AUTO):(Q||this.isHittingCommonBoundingBoxOfSelectedElements(B,h))&&!Q?.locked&&(Q&&xg(Q)&&this.isIframeLikeElementCenter(Q,l,E,d)?(Cu(this.interactiveCanvas,iu.POINTER),this.setState({activeEmbeddable:{element:Q,state:"hover"}})):(!Q||!ft(Q))&&(Cu(this.interactiveCanvas,iu.MOVE),this.state.activeEmbeddable?.state==="hover"&&this.setState({activeEmbeddable:null})))),this.state.openDialog?.name==="elementLinkSelector"&&Q?this.setState((p)=>({hoveredElementIds:M9(p.hoveredElementIds,V0({editingGroupId:p.editingGroupId,selectedElementIds:{[Q.id]:!0}},this.scene.getNonDeletedElements(),p,this).selectedElementIds)})):this.state.openDialog?.name==="elementLinkSelector"&&!Q&&this.setState((p)=>({hoveredElementIds:M9(p.hoveredElementIds,{})})))}),UA(this,"handleEraser",(l,g,C)=>{this.eraserTrail.addPointToPath(C.x,C.y);let B=!1,E=new Set,d=this.scene.getNonDeletedElements(),I=(f)=>{for(let D of f){if(D.locked)return;if(l.altKey?this.elementsPendingErasure.delete(D.id)&&(B=!0):this.elementsPendingErasure.has(D.id)||(B=!0,this.elementsPendingErasure.add(D.id)),B&&D.groupIds?.length){let w=D.groupIds.at(-1);if(!E.has(w)){E.add(w);let b=Yu(d,w);for(let F of b)l.altKey?this.elementsPendingErasure.delete(F.id):this.elementsPendingErasure.add(F.id)}}}},h=Li(X(g.lastCoords.x,g.lastCoords.y),X(C.x,C.y)),Q=this.getElementHitThreshold(),p={...g.lastCoords},m=0;for(;m<=h;){let f=this.getElementsAtPosition(p.x,p.y);if(I(f),m===h)break;m=Math.min(m+Q,h);let D=m/h,w=(1-D)*p.x+D*C.x,b=(1-D)*p.y+D*C.y;p.x=w,p.y=b}if(g.lastCoords.x=C.x,g.lastCoords.y=C.y,B){for(let f of this.scene.getNonDeletedElements())Tu(f)&&(this.elementsPendingErasure.has(f.id)||this.elementsPendingErasure.has(f.containerId))&&(l.altKey?(this.elementsPendingErasure.delete(f.id),this.elementsPendingErasure.delete(f.containerId)):(this.elementsPendingErasure.add(f.id),this.elementsPendingErasure.add(f.containerId)));this.elementsPendingErasure=new Set(this.elementsPendingErasure),this.triggerRender()}}),UA(this,"handleTouchMove",(l)=>{YL=!0}),UA(this,"handleCanvasPointerDown",(l)=>{let g=l.target;if(g.setPointerCapture&&g.setPointerCapture(l.pointerId),this.maybeCleanupAfterMissingPointerUp(l.nativeEvent),this.maybeUnfollowRemoteUser(),this.state.searchMatches&&(this.setState((Q)=>({searchMatches:Q.searchMatches.map((p)=>({...p,focus:!1}))})),TB.set(aVe,null)),this.state.contextMenu&&this.setState({contextMenu:null}),this.state.snapLines&&this.setAppState({snapLines:[]}),this.updateGestureOnPointerDown(l),l.pointerType==="touch"&&this.state.newElement&&this.state.newElement.type==="freedraw"){let Q=this.state.newElement;this.updateScene({...Q.points.length<10?{elements:this.scene.getElementsIncludingDeleted().filter((p)=>p.id!==Q.id)}:{},appState:{newElement:null,editingTextElement:null,startBoundElement:null,suggestedBindings:[],selectedElementIds:Ni(Object.keys(this.state.selectedElementIds).filter((p)=>p!==Q.id).reduce((p,m)=>(p[m]=this.state.selectedElementIds[m],p),{}),this.state)},captureUpdate:this.state.openDialog?.name==="elementLinkSelector"?be.EVENTUALLY:be.NEVER});return}let C=document.getSelection();if(C?.anchorNode&&C.removeAllRanges(),this.maybeOpenContextMenuAfterPointerDownOnTouchDevices(l),!this.state.penDetected&&l.pointerType==="pen"&&this.setState((Q)=>({penMode:!0,penDetected:!0})),!this.device.isTouchScreen&&["pen","touch"].includes(l.pointerType)&&(this.device=j8(this.device,{isTouchScreen:!0})),TL||(this.lastPointerDownEvent=l,this.handleCanvasPanUsingWheelOrSpaceDrag(l)))return;if(this.setState({lastPointerDownWith:l.pointerType,cursorButton:"down"}),this.savePointer(l.clientX,l.clientY,"down"),l.button===Jh.ERASER&&this.state.activeTool.type!==On.eraser){this.setState({activeTool:un(this.state,{type:On.eraser,lastActiveToolBeforeEraser:this.state.activeTool})},()=>{this.handleCanvasPointerDown(l);let Q=()=>{p(),m?.(),dB(this.state)&&this.setState({activeTool:un(this.state,{...this.state.activeTool.lastActiveTool||{type:On.selection},lastActiveToolBeforeEraser:null})})},p=oa(window,"pointerup",Q,{once:!0}),m;requestAnimationFrame(()=>{m=this.missingPointerEventCleanupEmitter.once(Q)})});return}if(l.button!==Jh.MAIN&&l.button!==Jh.TOUCH&&l.button!==Jh.ERASER||Wi.pointers.size>1)return;let B=this.initialPointerDownState(l);if(this.setState({selectedElementsAreBeingDragged:!1}),this.handleDraggingScrollBar(l,B)||(this.clearSelectionIfNotUsingSelection(),this.updateBindingEnabledOnPointerMove(l),this.handleSelectionOnPointerDown(l,B))||!(!this.state.penMode||l.pointerType!=="touch"||this.state.activeTool.type==="selection"||this.state.activeTool.type==="text"||this.state.activeTool.type==="image"))return;if(this.state.activeTool.type==="text")this.handleTextOnPointerDown(l,B);else if(this.state.activeTool.type==="arrow"||this.state.activeTool.type==="line")this.handleLinearElementOnPointerDown(l,this.state.activeTool.type,B);else if(this.state.activeTool.type==="image"){Cu(this.interactiveCanvas,iu.CROSSHAIR);let Q=this.state.pendingImageElementId&&this.scene.getElement(this.state.pendingImageElementId);if(!Q)return;this.setState({newElement:Q,pendingImageElementId:null,multiElement:null});let{x:p,y:m}=Ru(l,this.state),f=this.getTopLayerFrameAtSceneCoords({x:p,y:m});Se(Q,{x:p,y:m,frameId:f?f.id:null})}else this.state.activeTool.type==="freedraw"?this.handleFreeDrawElementOnPointerDown(l,this.state.activeTool.type,B):this.state.activeTool.type==="custom"?hB(this.interactiveCanvas,this.state):this.state.activeTool.type===On.frame||this.state.activeTool.type===On.magicframe?this.createFrameElementOnPointerDown(B,this.state.activeTool.type):this.state.activeTool.type==="laser"?this.laserTrails.startPath(B.lastCoords.x,B.lastCoords.y):this.state.activeTool.type!=="eraser"&&this.state.activeTool.type!=="hand"&&this.createGenericElementOnPointerDown(this.state.activeTool.type,B);this.props?.onPointerDown?.(this.state.activeTool,B),this.onPointerDownEmitter.trigger(this.state.activeTool,B,l),this.state.activeTool.type==="eraser"&&this.eraserTrail.startPath(B.lastCoords.x,B.lastCoords.y);let E=this.onPointerMoveFromPointerDownHandler(B),d=this.onPointerUpFromPointerDownHandler(B),I=this.onKeyDownFromPointerDownHandler(B),h=this.onKeyUpFromPointerDownHandler(B);this.missingPointerEventCleanupEmitter.once((Q)=>d(Q||l.nativeEvent)),(!this.state.viewModeEnabled||this.state.activeTool.type==="laser")&&(window.addEventListener("pointermove",E),window.addEventListener("pointerup",d),window.addEventListener("keydown",I),window.addEventListener("keyup",h),B.eventListeners.onMove=E,B.eventListeners.onUp=d,B.eventListeners.onKeyUp=h,B.eventListeners.onKeyDown=I)}),UA(this,"handleCanvasPointerUp",(l)=>{this.removePointer(l),this.lastPointerUpEvent=l;let g=Ru({clientX:l.clientX,clientY:l.clientY},this.state),C=l.timeStamp-(this.lastPointerDownEvent?.timeStamp??0);if(this.device.editor.isMobile&&C<300){let B=this.getElementAtPosition(g.x,g.y);if(xg(B)&&this.isIframeLikeElementCenter(B,l,g.x,g.y)){this.handleEmbeddableCenterClick(B);return}}if(this.device.isTouchScreen){let B=this.getElementAtPosition(g.x,g.y);this.hitLinkElement=this.getElementLinkAtPosition(g,B)}this.hitLinkElement&&!this.state.selectedElementIds[this.hitLinkElement.id]?C<300&&xg(this.hitLinkElement)&&!EQA(this.hitLinkElement,this.scene.getNonDeletedElementsMap(),this.state,X(g.x,g.y))?this.handleEmbeddableCenterClick(this.hitLinkElement):this.redirectToLink(l,this.device.isTouchScreen):this.state.viewModeEnabled&&this.setState({activeEmbeddable:null,selectedElementIds:{}})}),UA(this,"maybeOpenContextMenuAfterPointerDownOnTouchDevices",(l)=>{l.pointerType==="touch"&&(YL=!1,Hp?YL=!0:Hp=window.setTimeout(()=>{Hp=0,YL||this.handleCanvasContextMenu(l)},Wde))}),UA(this,"resetContextMenuTimer",()=>{clearTimeout(Hp),Hp=0,YL=!1}),UA(this,"maybeCleanupAfterMissingPointerUp",(l)=>{HL?.(),this.missingPointerEventCleanupEmitter.trigger(l).clear()}),UA(this,"handleCanvasPanUsingWheelOrSpaceDrag",(l)=>{if(!(Wi.pointers.size<=1&&(l.button===Jh.WHEEL||l.button===Jh.MAIN&&$2||C2(this.state)||this.state.viewModeEnabled)))return!1;TL=!0,this.focusContainer(),this.state.editingTextElement||l.preventDefault();let g=!1,C=typeof window===void 0?!1:/Linux/.test(window.navigator.platform);Cu(this.interactiveCanvas,iu.GRABBING);let{clientX:B,clientY:E}=l,d=p3A((h)=>{let Q=B-h.clientX,p=E-h.clientY;if(B=h.clientX,E=h.clientY,C&&!g&&(Math.abs(Q)>1||Math.abs(p)>1)){g=!0;let m=(D)=>{document.body.removeEventListener("paste",m),D.stopPropagation()},f=()=>{setTimeout(()=>{document.body.removeEventListener("paste",m),window.removeEventListener("pointerup",f)},100)};document.body.addEventListener("paste",m),window.addEventListener("pointerup",f)}this.translateCanvas({scrollX:this.state.scrollX-Q/this.state.zoom.value,scrollY:this.state.scrollY-p/this.state.zoom.value})}),I=Ja(HL=()=>{HL=null,TL=!1,$2||(this.state.viewModeEnabled?Cu(this.interactiveCanvas,iu.GRAB):hB(this.interactiveCanvas,this.state)),this.setState({cursorButton:"up"}),this.savePointer(l.clientX,l.clientY,"up"),window.removeEventListener("pointermove",d),window.removeEventListener("pointerup",I),window.removeEventListener("blur",I),d.flush()});return window.addEventListener("blur",I),window.addEventListener("pointermove",d,{passive:!0}),window.addEventListener("pointerup",I),!0}),UA(this,"clearSelectionIfNotUsingSelection",()=>{this.state.activeTool.type!=="selection"&&this.setState({selectedElementIds:Ni({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})}),UA(this,"handleSelectionOnPointerDown",(l,g)=>{if(this.state.activeTool.type==="selection"){let C=this.scene.getNonDeletedElements(),B=this.scene.getNonDeletedElementsMap(),E=this.scene.getSelectedElements(this.state);if(E.length===1&&!this.state.editingLinearElement&&!ft(E[0])&&!(this.state.selectedLinearElement&&this.state.selectedLinearElement.hoverPointIndex!==-1)){let d=JQA(C,this.state,g.origin.x,g.origin.y,this.state.zoom,l.pointerType,this.scene.getNonDeletedElementsMap(),this.device);d!=null&&(d.transformHandleType==="rotation"?(this.setState({resizingElement:d.element}),g.resize.handleType=d.transformHandleType):(this.state.croppingElementId||this.setState({resizingElement:d.element}),g.resize.handleType=d.transformHandleType))}else E.length>1&&(g.resize.handleType=OQA(Pi(E),g.origin.x,g.origin.y,this.state.zoom,l.pointerType,this.device));if(g.resize.handleType)g.resize.isResizing=!0,g.resize.offset=Nc(u1e(g.resize.handleType,E,B,g.origin.x,g.origin.y)),E.length===1&&Nr(E[0])&&E[0].points.length===2&&(g.resize.arrowDirection=a1e(g.resize.handleType,E[0]));else{if(this.state.selectedLinearElement){let h=this.state.editingLinearElement||this.state.selectedLinearElement,Q=ht.handlePointerDown(l,this,this.store,g.origin,h,this.scene);if(Q.hitElement&&(g.hit.element=Q.hitElement),Q.linearElementEditor&&(this.setState({selectedLinearElement:Q.linearElementEditor}),this.state.editingLinearElement&&this.setState({editingLinearElement:Q.linearElementEditor})),Q.didAddPoint)return!0}if(g.hit.element=g.hit.element??this.getElementAtPosition(g.origin.x,g.origin.y),this.hitLinkElement=this.getElementLinkAtPosition(g.origin,g.hit.element),this.hitLinkElement)return!0;if(this.state.croppingElementId&&g.hit.element?.id!==this.state.croppingElementId&&this.finishImageCropping(),g.hit.element&&this.getElementLinkAtPosition({x:g.origin.x,y:g.origin.y},g.hit.element))return!1;g.hit.allHitElements=this.getElementsAtPosition(g.origin.x,g.origin.y);let d=g.hit.element,I=g.hit.allHitElements.some((h)=>this.isASelectedElement(h));if((d===null||!I)&&!l.shiftKey&&!g.hit.hasHitCommonBoundingBoxOfSelectedElements&&this.clearSelection(d),this.state.editingLinearElement)this.setState({selectedElementIds:Ni({[this.state.editingLinearElement.elementId]:!0},this.state)});else if(d!=null){if(l[PA.CTRL_OR_CMD])return this.state.selectedElementIds[d.id]||(g.hit.wasAddedToSelection=!0),this.setState((h)=>({...ZQe(h,d),previousSelectedElementIds:this.state.selectedElementIds})),!1;this.state.selectedElementIds[d.id]||(this.state.editingGroupId&&!O9(d,this.state.editingGroupId)&&this.setState({selectedElementIds:Ni({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null}),!I&&!g.hit.hasHitCommonBoundingBoxOfSelectedElements&&(this.setState((h)=>{let Q={...h.selectedElementIds,[d.id]:!0},p=[];if(Object.keys(h.selectedElementIds).forEach((m)=>{let f=this.scene.getElement(m);f&&p.push(f)}),nr(d))mB(p,d.id).forEach((m)=>{delete Q[m.id]});else if(d.frameId)Q[d.frameId]&&delete Q[d.id];else{let m=d.groupIds,f=new Set(m.flatMap((D)=>Yu(this.scene.getNonDeletedElements(),D)).filter((D)=>nr(D)).map((D)=>D.id));f.size>0&&p.forEach((D)=>{D.frameId&&f.has(D.frameId)&&(delete Q[D.id],D.groupIds.flatMap((w)=>Yu(this.scene.getNonDeletedElements(),w)).forEach((w)=>{delete Q[w.id]}))})}return h.openDialog?.name==="elementLinkSelector"&&(d.groupIds.some((m)=>h.selectedGroupIds[m])||(Q={[d.id]:!0})),{...V0({editingGroupId:h.editingGroupId,selectedElementIds:Q},this.scene.getNonDeletedElements(),h,this),showHyperlinkPopup:d.link||_s(d)?"info":!1}}),g.hit.wasAddedToSelection=!0))}this.setState({previousSelectedElementIds:this.state.selectedElementIds})}}return!1}),UA(this,"handleTextOnPointerDown",(l,g)=>{if(this.state.editingTextElement)return;let C=g.origin.x,B=g.origin.y,E=this.getElementAtPosition(C,B,{includeBoundTextElement:!0}),d=this.getTextBindableContainerAtPosition(C,B);Yl(E)&&(d=E,C=E.x+E.width/2,B=E.y+E.height/2),this.startTextEditing({sceneX:C,sceneY:B,insertAtParentCenter:!l.altKey,container:d,autoEdit:!1}),Oc(this.interactiveCanvas),this.state.activeTool.locked||this.setState({activeTool:un(this.state,{type:"selection"})})}),UA(this,"handleFreeDrawElementOnPointerDown",(l,g,C)=>{let[B,E]=Dn(C.origin.x,C.origin.y,null),d=this.getTopLayerFrameAtSceneCoords({x:B,y:E}),I=l.pressure===0.5,h=h4e({type:g,x:B,y:E,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:null,simulatePressure:I,locked:!1,frameId:d?d.id:null,points:[X(0,0)],pressures:I?[]:[l.pressure]});this.scene.insertElement(h),this.setState((p)=>{let m={...p.selectedElementIds};return delete m[h.id],{selectedElementIds:Ni(m,p)}});let Q=Hc(C.origin,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom);this.setState({newElement:h,startBoundElement:Q,suggestedBindings:[]})}),UA(this,"insertIframeElement",({sceneX:l,sceneY:g,width:C,height:B})=>{let[E,d]=Dn(l,g,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),I=d4e({type:"iframe",x:E,y:d,strokeColor:"transparent",backgroundColor:"transparent",fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:this.getCurrentItemRoundness("iframe"),opacity:this.state.currentItemOpacity,locked:!1,width:C,height:B});return this.scene.insertElement(I),I}),UA(this,"insertEmbeddableElement",({sceneX:l,sceneY:g,link:C})=>{let[B,E]=Dn(l,g,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),d=m2(C);if(!d)return;d.error instanceof URIError&&this.setToast({message:uA("toast.unrecognizedLinkFormat"),closable:!0});let I=iQA({type:"embeddable",x:B,y:E,strokeColor:"transparent",backgroundColor:"transparent",fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:this.getCurrentItemRoundness("embeddable"),opacity:this.state.currentItemOpacity,locked:!1,width:d.intrinsicSize.w,height:d.intrinsicSize.h,link:C});return this.scene.insertElement(I),I}),UA(this,"createImageElement",({sceneX:l,sceneY:g,addToFrameUnderCursor:C=!0})=>{let[B,E]=Dn(l,g,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),d=C?this.getTopLayerFrameAtSceneCoords({x:B,y:E}):null;return aQA({type:"image",x:B,y:E,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:null,opacity:this.state.currentItemOpacity,locked:!1,frameId:d?d.id:null})}),UA(this,"handleLinearElementOnPointerDown",(l,g,C)=>{if(this.state.multiElement){let{multiElement:B}=this.state;if(B.type==="line"&&fd(B.points,this.state.zoom.value)){Se(B,{lastCommittedPoint:B.points[B.points.length-1]}),this.actionManager.executeAction(MB);return}if(ft(B)&&B.points.length>1){Se(B,{lastCommittedPoint:B.points[B.points.length-1]}),this.actionManager.executeAction(MB);return}let{x:E,y:d,lastCommittedPoint:I}=B;if(B.points.length>1&&I&&Li(X(C.origin.x-E,C.origin.y-d),I)<H8){this.actionManager.executeAction(MB);return}this.setState((h)=>({selectedElementIds:Ni({...h.selectedElementIds,[B.id]:!0},h)})),Se(B,{lastCommittedPoint:B.points[B.points.length-1]}),Cu(this.interactiveCanvas,iu.POINTER)}else{let[B,E]=Dn(C.origin.x,C.origin.y,l[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),d=this.getTopLayerFrameAtSceneCoords({x:B,y:E}),{currentItemStartArrowhead:I,currentItemEndArrowhead:h}=this.state,[Q,p]=g==="arrow"?[I,h]:[null,null],m=g==="arrow"?RW({type:g,x:B,y:E,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.state.currentItemArrowType===ho.round?{type:mn.PROPORTIONAL_RADIUS}:null,startArrowhead:Q,endArrowhead:p,locked:!1,frameId:d?d.id:null,elbowed:this.state.currentItemArrowType===ho.elbow,fixedSegments:this.state.currentItemArrowType===ho.elbow?[]:null}):W1({type:g,x:B,y:E,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.state.currentItemRoundness==="round"?{type:mn.PROPORTIONAL_RADIUS}:null,locked:!1,frameId:d?d.id:null});this.setState((D)=>{let w={...D.selectedElementIds};return delete w[m.id],{selectedElementIds:Ni(w,D)}}),Se(m,{points:[...m.points,X(0,0)]});let f=Hc(C.origin,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,ft(m),ft(m));this.scene.insertElement(m),this.setState({newElement:m,startBoundElement:f,suggestedBindings:[]})}}),UA(this,"createGenericElementOnPointerDown",(l,g)=>{let[C,B]=Dn(g.origin.x,g.origin.y,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),E=this.getTopLayerFrameAtSceneCoords({x:C,y:B}),d={x:C,y:B,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.getCurrentItemRoundness(l),locked:!1,frameId:E?E.id:null},I;l==="embeddable"?I=iQA({type:"embeddable",...d}):I=pB({type:l,...d}),I.type==="selection"?this.setState({selectionElement:I}):(this.scene.insertElement(I),this.setState({multiElement:null,newElement:I}))}),UA(this,"createFrameElementOnPointerDown",(l,g)=>{let[C,B]=Dn(l.origin.x,l.origin.y,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),E={x:C,y:B,opacity:this.state.currentItemOpacity,locked:!1,...Zu},d=g===On.magicframe?LW(E):SW(E);this.scene.insertElement(d),this.setState({multiElement:null,newElement:d})}),UA(this,"restoreReadyToEraseElements",()=>{this.elementsPendingErasure=new Set,this.triggerRender()}),UA(this,"eraseElements",()=>{let l=!1,g=this.scene.getElementsIncludingDeleted().map((C)=>this.elementsPendingErasure.has(C.id)||C.frameId&&this.elementsPendingErasure.has(C.frameId)||Tu(C)&&this.elementsPendingErasure.has(C.containerId)?(l=!0,Tr(C,{isDeleted:!0})):C);this.elementsPendingErasure=new Set,l&&(this.store.shouldCaptureIncrement(),this.scene.replaceAllElements(g))}),UA(this,"initializeImage",async({imageFile:l,imageElement:g,showCursorImagePreview:C=!1})=>{if(!cp(l))throw Error(uA("errors.unsupportedFileType"));let B=l.type;if(Cu(this.interactiveCanvas,"wait"),B===Xt.svg)try{l=$QA(BQA(await l.text()),l.name)}catch(h){throw console.warn(h),Error(uA("errors.svgImageInsertError"))}let E=await(this.props.generateIdForFile?.(l)||d1e(l));if(!E)throw console.warn("Couldn't generate file id or the supplied `generateIdForFile` didn't resolve to one."),Error(uA("errors.imageInsertError"));if(!this.files[E]?.dataURL){try{l=await aq(l,{maxWidthOrHeight:$de})}catch(h){console.error("Error trying to resizing image file on insertion",h)}if(l.size>bIA)throw Error(uA("errors.fileTooBig",{maxSize:`${Math.trunc(bIA/1024/1024)}MB`}))}if(C){let h=this.files[E]?.dataURL,Q=h&&h1e(h);this.setImagePreviewCursor(Q||l)}let d=this.files[E]?.dataURL||await XQA(l),I=Se(g,{fileId:E},!1);return new Promise(async(h,Q)=>{try{this.addMissingFiles([{mimeType:B,id:E,dataURL:d,created:Date.now(),lastRetrieved:Date.now()}]);let p=this.imageCache.get(E);p||(this.addNewImagesToImageCache(),await this.updateImageCache([I])),p?.image instanceof Promise&&await p.image,this.state.pendingImageElementId!==I.id&&this.state.newElement?.id!==I.id&&this.initializeImageDimensions(I,!0),h(I)}catch(p){console.error(p),Q(Error(uA("errors.imageInsertError")))}finally{C||Oc(this.interactiveCanvas)}})}),UA(this,"insertImageElement",async(l,g,C)=>{if(!this.isToolSupported("image")){this.setState({errorMessage:uA("errors.imageToolNotSupported")});return}this.scene.insertElement(l);try{return await this.initializeImage({imageFile:g,imageElement:l,showCursorImagePreview:C})}catch(B){return Se(l,{isDeleted:!0}),this.actionManager.executeAction(MB),this.setState({errorMessage:B.message||uA("errors.imageInsertError")}),null}}),UA(this,"setImagePreviewCursor",async(l)=>{let g;try{g=await aq(l,{maxWidthOrHeight:96})}catch(B){throw B.cause==="UNSUPPORTED"?Error(uA("errors.unsupportedFileType")):B}let C=await XQA(g);if(l.type===Xt.svg){let B=await gQA(C),E=Math.min(B.height,96),d=E*(B.width/B.height);d>96&&(d=96,E=d*(B.height/B.width));let I=document.createElement("canvas");I.height=E,I.width=d,I.getContext("2d").drawImage(B,0,0,d,E),C=I.toDataURL(Xt.svg)}this.state.pendingImageElementId&&Cu(this.interactiveCanvas,`url(${C}) 4 4, auto`)}),UA(this,"onImageAction",async({insertOnCanvasDirectly:l})=>{try{let g=this.state.width/2+this.state.offsetLeft,C=this.state.height/2+this.state.offsetTop,{x:B,y:E}=Ru({clientX:g,clientY:C},this.state),d=await GW({description:"Image",extensions:Object.keys(l2)}),I=this.createImageElement({sceneX:B,sceneY:E,addToFrameUnderCursor:!1});l?(this.insertImageElement(I,d),this.initializeImageDimensions(I),this.setState({selectedElementIds:Ni({[I.id]:!0},this.state)},()=>{this.actionManager.executeAction(MB)})):this.setState({pendingImageElementId:I.id},()=>{this.insertImageElement(I,d,!0)})}catch(g){g.name!=="AbortError"?console.error(g):console.warn(g),this.setState({pendingImageElementId:null,newElement:null,activeTool:un(this.state,{type:"selection"})},()=>{this.actionManager.executeAction(MB)})}}),UA(this,"initializeImageDimensions",(l,g=!1)=>{let C=Ng(l)&&this.imageCache.get(l.fileId)?.image;if(!C||C instanceof Promise){if(l.width<$1/this.state.zoom.value&&l.height<$1/this.state.zoom.value){let B=100/this.state.zoom.value;Se(l,{x:l.x-B/2,y:l.y-B/2,width:B,height:B})}return}if(g||l.width<$1/this.state.zoom.value&&l.height<$1/this.state.zoom.value){let B=Math.max(this.state.height-120,160),E=Math.min(B,Math.floor(this.state.height*0.5)/this.state.zoom.value),d=Math.min(C.naturalHeight,E),I=d*(C.naturalWidth/C.naturalHeight),h=l.x+l.width/2-I/2,Q=l.y+l.height/2-d/2;Se(l,{x:h,y:Q,width:I,height:d,crop:null})}}),UA(this,"updateImageCache",async(l,g=this.files)=>{let{updatedFiles:C,erroredFiles:B}=await cQA({imageCache:this.imageCache,fileIds:l.map((E)=>E.fileId),files:g});if(C.size||B.size)for(let E of l)C.has(E.fileId)&&na.delete(E);return B.size&&this.scene.replaceAllElements(this.scene.getElementsIncludingDeleted().map((E)=>Ng(E)&&B.has(E.fileId)?Tr(E,{status:"error"}):E)),{updatedFiles:C,erroredFiles:B}}),UA(this,"addNewImagesToImageCache",async(l=CQA(this.scene.getNonDeletedElements()),g=this.files)=>{let C=l.filter((B)=>!B.isDeleted&&!this.imageCache.has(B.fileId));if(C.length){let{updatedFiles:B}=await this.updateImageCache(C,g);B.size&&this.scene.triggerUpdate()}}),UA(this,"scheduleImageRefresh",hVe.default(()=>{this.addNewImagesToImageCache()},Pde)),UA(this,"updateBindingEnabledOnPointerMove",(l)=>{let g=PQe(l);this.state.isBindingEnabled!==g&&this.setState({isBindingEnabled:g})}),UA(this,"maybeSuggestBindingAtCursor",(l,g)=>{let C=Hc(l,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,!1,g);this.setState({suggestedBindings:C!=null?[C]:[]})}),UA(this,"maybeSuggestBindingsForLinearElementAtCoords",(l,g,C)=>{if(!g.length)return;let B=g.reduce((E,d)=>{let I=Hc(d,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,ft(l),ft(l));return I!=null&&!KhA(l,C?.id,I)&&E.push(I),E},[]);this.setState({suggestedBindings:B})}),UA(this,"handleInteractiveCanvasRef",(l)=>{l!==null?(this.interactiveCanvas=l,this.interactiveCanvas.addEventListener("touchstart",this.onTouchStart,{passive:!1}),this.interactiveCanvas.addEventListener("touchend",this.onTouchEnd)):(this.interactiveCanvas?.removeEventListener("touchstart",this.onTouchStart),this.interactiveCanvas?.removeEventListener("touchend",this.onTouchEnd))}),UA(this,"handleAppOnDrop",async(l)=>{let{file:g,fileHandle:C}=await f1e(l),{x:B,y:E}=Ru(l,this.state);try{if(cp(g)&&this.isToolSupported("image")){if(g?.type===Xt.png||g?.type===Xt.svg)try{let h=await VQA(g,this.state,this.scene.getElementsIncludingDeleted(),C);this.syncActionResult({...h,appState:{...h.appState||this.state,isLoading:!1},replaceFiles:!0,captureUpdate:be.IMMEDIATELY});return}catch(h){if(h.name!=="EncodingError")throw Error(uA("alerts.couldNotLoadInvalidFile"))}let I=this.createImageElement({sceneX:B,sceneY:E});this.insertImageElement(I,g),this.initializeImageDimensions(I),this.setState({selectedElementIds:Ni({[I.id]:!0},this.state)});return}}catch(I){return this.setState({isLoading:!1,errorMessage:I.message})}let d=l.dataTransfer.getData(Xt.excalidrawlib);if(d&&typeof d=="string"){try{let I=jQA(d);this.addElementsFromPasteOrLibrary({elements:aZe(I),position:l,files:null})}catch(I){this.setState({errorMessage:I.message})}return}if(g&&await this.loadFileToCanvas(g,C),l.dataTransfer?.types?.includes("text/plain")){let I=l.dataTransfer?.getData("text");if(I&&BS(I,this.props.validateEmbeddable)&&(/^(http|https):\/\/[^\s/$.?#].[^\s]*$/.test(I)||m2(I)?.type==="video")){let h=this.insertEmbeddableElement({sceneX:B,sceneY:E,link:Ml(I)});h&&this.setState({selectedElementIds:{[h.id]:!0}})}}}),UA(this,"loadFileToCanvas",async(l,g)=>{l=await nq(l);try{let C=this.scene.getElementsIncludingDeleted(),B;try{B=await ZQA(l,this.state,C,g)}catch(E){let d=E instanceof O1;if(d&&E.code==="IMAGE_NOT_CONTAINS_SCENE_DATA"&&!this.isToolSupported("image")){this.setState({isLoading:!1,errorMessage:uA("errors.imageToolNotSupported")});return}let I=d?uA("alerts.cannotRestoreFromImage"):uA("alerts.couldNotLoadInvalidFile");this.setState({isLoading:!1,errorMessage:I})}if(!B)return;B.type===Xt.excalidraw?(Sd(C.concat(B.data.elements)),this.store.updateSnapshot(ar(C),this.state),this.setState({isLoading:!0}),this.syncActionResult({...B.data,appState:{...B.data.appState||this.state,isLoading:!1},replaceFiles:!0,captureUpdate:be.IMMEDIATELY})):B.type===Xt.excalidrawlib&&await this.library.updateLibrary({libraryItems:l,merge:!0,openLibraryMenu:!0}).catch((E)=>{console.error(E),this.setState({errorMessage:uA("errors.importLibraryError")})})}catch(C){this.setState({isLoading:!1,errorMessage:C.message})}}),UA(this,"handleCanvasContextMenu",(l)=>{if(l.preventDefault(),(("pointerType"in l.nativeEvent)&&l.nativeEvent.pointerType==="touch"||("pointerType"in l.nativeEvent)&&l.nativeEvent.pointerType==="pen"&&l.button!==Jh.SECONDARY)&&this.state.activeTool.type!=="selection")return;let{x:g,y:C}=Ru(l,this.state),B=this.getElementAtPosition(g,C,{preferSelected:!0,includeLockedElements:!0}),E=this.scene.getSelectedElements(this.state),d=this.isHittingCommonBoundingBoxOfSelectedElements({x:g,y:C},E),I=B||d?"element":"canvas",h=this.excalidrawContainerRef.current,{top:Q,left:p}=h.getBoundingClientRect(),m=l.clientX-p,f=l.clientY-Q;Nu("contextMenu","openContextMenu",I),this.setState({...B&&!this.state.selectedElementIds[B.id]?{...this.state,...V0({editingGroupId:this.state.editingGroupId,selectedElementIds:{[B.id]:!0}},this.scene.getNonDeletedElements(),this.state,this),selectedLinearElement:Nr(B)?new ht(B):null}:this.state,showHyperlinkPopup:!1},()=>{this.setState({contextMenu:{top:f,left:m,items:this.getContextMenuItems(I)}})})}),UA(this,"maybeDragNewGenericElement",(l,g,C=!0)=>{let B=this.state.selectionElement,E=l.lastCoords;if(B&&this.state.activeTool.type!=="eraser"){qQA({newElement:B,elementType:this.state.activeTool.type,originX:l.origin.x,originY:l.origin.y,x:E.x,y:E.y,width:f0(l.origin.x,E.x),height:f0(l.origin.y,E.y),shouldMaintainAspectRatio:H9(g),shouldResizeFromCenter:EW(g),zoom:this.state.zoom.value,informMutation:C});return}let d=this.state.newElement;if(!d)return;let[I,h]=Dn(E.x,E.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),Q=Ng(d)&&this.imageCache.get(d.fileId)?.image,p=Q&&!(Q instanceof Promise)?Q.width/Q.height:null;this.maybeCacheReferenceSnapPoints(g,[d]);let{snapOffset:m,snapLines:f}=r4e(d,this,g,{x:l.originInGrid.x+(this.state.originSnapOffset?.x??0),y:l.originInGrid.y+(this.state.originSnapOffset?.y??0)},{x:I-l.originInGrid.x,y:h-l.originInGrid.y},this.scene.getNonDeletedElementsMap());I+=m.x,h+=m.y,this.setState({snapLines:f}),qQA({newElement:d,elementType:this.state.activeTool.type,originX:l.originInGrid.x,originY:l.originInGrid.y,x:I,y:h,width:f0(l.originInGrid.x,I),height:f0(l.originInGrid.y,h),shouldMaintainAspectRatio:Ri(d)?!H9(g):H9(g),shouldResizeFromCenter:EW(g),zoom:this.state.zoom.value,widthAspectRatio:p,originOffset:this.state.originSnapOffset,informMutation:C}),this.setState({newElement:d}),(this.state.activeTool.type===On.frame||this.state.activeTool.type===On.magicframe)&&this.setState({elementsToHighlight:pS(this.scene.getNonDeletedElements(),d,this.state,this.scene.getNonDeletedElementsMap())})}),UA(this,"maybeHandleCrop",(l,g)=>{if(!this.state.croppingElementId)return!1;let C=l.resize.handleType,B=l.lastCoords,[E,d]=Dn(B.x-l.resize.offset.x,B.y-l.resize.offset.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),I=this.scene.getNonDeletedElementsMap().get(this.state.croppingElementId);if(C&&I&&Ri(I)){let h=l.originalElements.get(I.id),Q=Ng(I)&&this.imageCache.get(I.fileId)?.image;if(h&&Ri(h)&&Q&&!(Q instanceof Promise)){let[p,m]=Dn(B.x,B.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),f={x:p-l.originInGrid.x,y:m-l.originInGrid.y};this.maybeCacheReferenceSnapPoints(g,[I]);let{snapOffset:D,snapLines:w}=XhA([I],[h],this,g,f,C);Se(I,FQe(I,C,Q.naturalWidth,Q.naturalHeight,E+D.x,d+D.y,g.shiftKey?h.width/h.height:void 0)),Os(I,this.scene.getNonDeletedElementsMap(),{newSize:{width:I.width,height:I.height}}),this.setState({isCropping:C&&C!=="rotation",snapLines:w})}return!0}return!1}),UA(this,"maybeHandleResize",(l,g)=>{let C=this.scene.getSelectedElements(this.state),B=C.filter((p)=>nr(p)),E=l.resize.handleType;if(B.length>0&&E==="rotation"||C.length===1&&ft(C[0])||this.state.croppingElementId)return!1;this.setState({isResizing:E&&E!=="rotation",isRotating:E==="rotation",activeEmbeddable:null});let d=l.lastCoords,[I,h]=Dn(d.x-l.resize.offset.x,d.y-l.resize.offset.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),Q=new Map;if(B.forEach((p)=>{mB(this.scene.getNonDeletedElements(),p.id).forEach((m)=>{Q.set(p.id+m.id,{x:m.x-p.x,y:m.y-p.y})})}),!this.state.selectedElementsAreBeingDragged){let[p,m]=Dn(d.x,d.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),f={x:p-l.originInGrid.x,y:m-l.originInGrid.y},D=[...l.originalElements.values()];this.maybeCacheReferenceSnapPoints(g,C);let{snapOffset:w,snapLines:b}=XhA(C,Jr(D,this.state),this,g,f,E);I+=w.x,h+=w.y,this.setState({snapLines:b})}if(i1e(l.originalElements,E,C,this.scene.getElementsMapIncludingDeleted(),this.scene,w9(g),EW(g),C.some((p)=>Ri(p))?!H9(g):H9(g),I,h,l.resize.center.x,l.resize.center.y)){let p=yW(C,this.scene.getNonDeletedElementsMap(),this.state.zoom),m=new Set;return B.forEach((f)=>{pS(this.scene.getNonDeletedElements(),f,this.state,this.scene.getNonDeletedElementsMap()).forEach((D)=>m.add(D))}),this.setState({elementsToHighlight:[...m],suggestedBindings:p}),!0}return!1}),UA(this,"getContextMenuItems",(l)=>{let g=[];return g.push(kqe,vqe),l==="canvas"?this.state.viewModeEnabled?[...g,xqe,R3A,lze,N3A]:[wqe,mo,kqe,vqe,Fqe,mo,MCr,iEr,mo,xqe,_Br,R3A,lze,N3A]:(g.push(Fqe),this.state.viewModeEnabled?[cZ,...g]:[mo,bqe,cZ,wqe,mo,khr,Fhr,xhr,mo,fdr,mo,...g,mo,xBr,SBr,mo,RBr,EQr,WBr,qBr,VBr,NBr,mo,TBr,mo,RCr,NCr,GCr,UCr,mo,JBr,OBr,mo,pdr,mo,rZe,fZe,mo,KCr,rEr,mo,bze])}),UA(this,"handleWheel",Ja((l)=>{if(!(l.target instanceof HTMLCanvasElement||l.target instanceof HTMLTextAreaElement||l.target instanceof HTMLIFrameElement)){l[PA.CTRL_OR_CMD]&&l.preventDefault();return}if(l.preventDefault(),TL)return;let{deltaX:g,deltaY:C}=l;if(l.metaKey||l.ctrlKey){let B=Math.sign(C),E=_8*100,d=Math.abs(C),I=C;d>E&&(I=E*B);let h=this.state.zoom.value-I/100;h+=Math.log10(Math.max(1,this.state.zoom.value))*-B*Math.min(1,d/20),this.translateCanvas((Q)=>({...AD({viewportX:this.lastViewportPosition.x,viewportY:this.lastViewportPosition.y,nextZoom:Fd(h)},Q),shouldCacheIgnoreZoom:!0})),this.resetShouldCacheIgnoreZoomDebounced();return}if(l.shiftKey){this.translateCanvas(({zoom:B,scrollX:E})=>({scrollX:E-(C||g)/B.value}));return}this.translateCanvas(({zoom:B,scrollX:E,scrollY:d})=>({scrollX:E-g/B.value,scrollY:d-C/B.value}))})),UA(this,"savePointer",(l,g,C)=>{if(!l||!g)return;let{x:B,y:E}=Ru({clientX:l,clientY:g},this.state);isNaN(B)||isNaN(E);let d={x:B,y:E,tool:this.state.activeTool.type==="laser"?"laser":"pointer"};this.props.onPointerUpdate?.({pointer:d,button:C,pointersMap:Wi.pointers})}),UA(this,"resetShouldCacheIgnoreZoomDebounced",E2(()=>{this.unmounted||this.setState({shouldCacheIgnoreZoom:!1})},300)),UA(this,"updateDOMRect",(l)=>{if(this.excalidrawContainerRef?.current){let g=this.excalidrawContainerRef.current,{width:C,height:B,left:E,top:d}=g.getBoundingClientRect(),{width:I,height:h,offsetTop:Q,offsetLeft:p}=this.state;if(C===I&&B===h&&E===p&&d===Q){l&&l();return}this.setState({width:C,height:B,offsetLeft:E,offsetTop:d},()=>{l&&l()})}}),UA(this,"refresh",()=>{this.setState({...this.getCanvasOffsets()})});let t=EB(),{excalidrawAPI:r,viewModeEnabled:i=!1,zenModeEnabled:u=!1,gridModeEnabled:a=!1,objectsSnapModeEnabled:n=!1,theme:o=t.theme,name:s=`${uA("labels.untitled")}-${RIA()}`}=e;if(this.state={...t,theme:o,isLoading:!0,...this.getCanvasOffsets(),viewModeEnabled:i,zenModeEnabled:u,objectsSnapModeEnabled:n,gridModeEnabled:a??t.gridModeEnabled,name:s,width:window.innerWidth,height:window.innerHeight},this.id=fa(),this.library=new BEr(this),this.actionManager=new wdr(this.syncActionResult,()=>this.state,()=>this.scene.getElementsIncludingDeleted(),this),this.scene=new yd,this.canvas=document.createElement("canvas"),this.rc=xc.canvas(this.canvas),this.renderer=new Ize(this.scene),this.visibleElements=[],this.store=new D4e,this.history=new Hqe,r){let l={updateScene:this.updateScene,updateLibrary:this.library.updateLibrary,addFiles:this.addFiles,resetScene:this.resetScene,getSceneElementsIncludingDeleted:this.getSceneElementsIncludingDeleted,history:{clear:this.resetHistory},scrollToContent:this.scrollToContent,getSceneElements:this.getSceneElements,getAppState:()=>this.state,getFiles:()=>this.files,getName:this.getName,registerAction:(g)=>{this.actionManager.registerAction(g)},refresh:this.refresh,setToast:this.setToast,id:this.id,setActiveTool:this.setActiveTool,setCursor:this.setCursor,resetCursor:this.resetCursor,updateFrameRendering:this.updateFrameRendering,toggleSidebar:this.toggleSidebar,onChange:(g)=>this.onChangeEmitter.on(g),onPointerDown:(g)=>this.onPointerDownEmitter.on(g),onPointerUp:(g)=>this.onPointerUpEmitter.on(g),onScrollChange:(g)=>this.onScrollChangeEmitter.on(g),onUserFollow:(g)=>this.onUserFollowEmitter.on(g)};typeof r=="function"?r(l):console.error("excalidrawAPI should be a function!")}this.excalidrawContainerValue={container:this.excalidrawContainerRef.current,id:this.id},this.fonts=new kd(this.scene),this.history=new Hqe,this.actionManager.registerAll(U_),this.actionManager.registerAction(Ddr(this.history,this.store)),this.actionManager.registerAction(ydr(this.history,this.store))}onWindowMessage(e){if(e.origin!=="https://player.vimeo.com"&&e.origin!=="https://www.youtube.com")return;let t=null;try{t=JSON.parse(e.data)}catch{}if(t)switch(e.origin){case"https://player.vimeo.com":if(t.method==="paused"){let r=null,i=document.body.querySelectorAll("iframe.excalidraw__embeddable");if(!i)break;for(let u of i)u.contentWindow===e.source&&(r=u.contentWindow);r?.postMessage(JSON.stringify({method:t.value?"play":"pause",value:!0}),"*")}break;case"https://www.youtube.com":if(t.event==="infoDelivery"&&t.info&&t.id&&typeof t.info.playerState=="number"){let r=t.id,i=t.info.playerState;Object.values(K8).includes(i)&&v3A.set(r,i)}break}}cacheEmbeddableRef(e,t){t&&this.iFrameRefs.set(e.id,t)}getHTMLIFrameElement(e){return this.iFrameRefs.get(e.id)}handleEmbeddableCenterClick(e){if(this.state.activeEmbeddable?.element===e&&this.state.activeEmbeddable?.state==="active"||(setTimeout(()=>{this.setState({activeEmbeddable:{element:e,state:"active"},selectedElementIds:{[e.id]:!0},newElement:null,selectionElement:null})},100),Ph(e)))return;let t=this.getHTMLIFrameElement(e);if(t?.contentWindow){if(t.src.includes("youtube")){let r=v3A.get(e.id);switch(r||(v3A.set(e.id,K8.UNSTARTED),t.contentWindow.postMessage(JSON.stringify({event:"listening",id:e.id}),"*")),r){case K8.PLAYING:case K8.BUFFERING:t.contentWindow?.postMessage(JSON.stringify({event:"command",func:"pauseVideo",args:""}),"*");break;default:t.contentWindow?.postMessage(JSON.stringify({event:"command",func:"playVideo",args:""}),"*")}}t.src.includes("player.vimeo.com")&&t.contentWindow.postMessage(JSON.stringify({method:"paused"}),"*")}}isIframeLikeElementCenter(e,t,r,i){return e&&!t.altKey&&!t.shiftKey&&!t.metaKey&&!t.ctrlKey&&(this.state.activeEmbeddable?.element!==e||this.state.activeEmbeddable?.state==="hover"||!this.state.activeEmbeddable)&&r>=e.x+e.width/3&&r<=e.x+2*e.width/3&&i>=e.y+e.height/3&&i<=e.y+2*e.height/3}renderEmbeddables(){let e=this.state.zoom.value,t=this.state.width,r=this.state.height,i=this.scene.getNonDeletedElements().filter((u)=>_s(u)&&this.embedsValidationStatus.get(u.id)===!0||Ph(u));return N(et,{children:i.map((u)=>{let{x:a,y:n}=Mc({sceneX:u.x,sceneY:u.y},this.state),o=yS(u,t,r,this.state,this.scene.getNonDeletedElementsMap()),s=this.initializedEmbeds.has(u.id);if(o&&!s&&this.initializedEmbeds.add(u.id),!(o||s))return null;let l;if(Ph(u)){l=null;let B=(u.customData?.generationData??this.magicGenerations.get(u.id))||{status:"error",message:"No generation data",code:"ERR_NO_GENERATION_DATA"};if(B.status==="done"){let E=B.html;l={intrinsicSize:{w:u.width,h:u.height},type:"document",srcdoc:()=>E}}else if(B.status==="pending")l={intrinsicSize:{w:u.width,h:u.height},type:"document",srcdoc:()=>m9(`
|
||
<style>
|
||
html, body {
|
||
width: 100%;
|
||
height: 100%;
|
||
color: ${this.state.theme===$r.DARK?"white":"black"};
|
||
}
|
||
body {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
flex-direction: column;
|
||
gap: 1rem;
|
||
}
|
||
|
||
.Spinner {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
margin-left: auto;
|
||
margin-right: auto;
|
||
}
|
||
|
||
.Spinner svg {
|
||
animation: rotate 1.6s linear infinite;
|
||
transform-origin: center center;
|
||
width: 40px;
|
||
height: 40px;
|
||
}
|
||
|
||
.Spinner circle {
|
||
stroke: currentColor;
|
||
animation: dash 1.6s linear 0s infinite;
|
||
stroke-linecap: round;
|
||
}
|
||
|
||
@keyframes rotate {
|
||
100% {
|
||
transform: rotate(360deg);
|
||
}
|
||
}
|
||
|
||
@keyframes dash {
|
||
0% {
|
||
stroke-dasharray: 1, 300;
|
||
stroke-dashoffset: 0;
|
||
}
|
||
50% {
|
||
stroke-dasharray: 150, 300;
|
||
stroke-dashoffset: -200;
|
||
}
|
||
100% {
|
||
stroke-dasharray: 1, 300;
|
||
stroke-dashoffset: -280;
|
||
}
|
||
}
|
||
</style>
|
||
<div class="Spinner">
|
||
<svg
|
||
viewBox="0 0 100 100"
|
||
>
|
||
<circle
|
||
cx="50"
|
||
cy="50"
|
||
r="46"
|
||
stroke-width="8"
|
||
fill="none"
|
||
stroke-miter-limit="10"
|
||
/>
|
||
</svg>
|
||
</div>
|
||
<div>Generating...</div>
|
||
`)};else{let E;B.code==="ERR_GENERATION_INTERRUPTED"?E="Generation was interrupted...":E=B.message||"Generation failed",l={intrinsicSize:{w:u.width,h:u.height},type:"document",srcdoc:()=>m9(`
|
||
<style>
|
||
html, body {
|
||
height: 100%;
|
||
}
|
||
body {
|
||
display: flex;
|
||
flex-direction: column;
|
||
align-items: center;
|
||
justify-content: center;
|
||
color: ${zr.red[3]};
|
||
}
|
||
h1, h3 {
|
||
margin-top: 0;
|
||
margin-bottom: 0.5rem;
|
||
}
|
||
</style>
|
||
<h1>Error!</h1>
|
||
<h3>${E}</h3>
|
||
`)}}}else l=m2(tQA(u.link||""));let g=this.state.activeEmbeddable?.element===u&&this.state.activeEmbeddable?.state==="active",C=this.state.activeEmbeddable?.element===u&&this.state.activeEmbeddable?.state==="hover";return N("div",{className:Re("excalidraw__embeddable-container",{"is-hovered":C}),style:{transform:o?`translate(${a-this.state.offsetLeft}px, ${n-this.state.offsetTop}px) scale(${e})`:"none",display:o?"block":"none",opacity:LhA(u,Ps(u,this.scene.getNonDeletedElementsMap()),this.elementsPendingErasure,null,this.state.openDialog?.name==="elementLinkSelector"?FIA:1),"--embeddable-radius":`${Gc(Math.min(u.width,u.height),u)}px`},children:cA("div",{className:"excalidraw__embeddable-container__inner",style:{width:o?`${u.width}px`:0,height:o?`${u.height}px`:0,transform:o?`rotate(${u.angle}rad)`:"none",pointerEvents:g?o2.enabled:o2.disabled},children:[C&&N("div",{className:"excalidraw__embeddable-hint",children:uA("buttons.embeddableInteractionButton")}),N("div",{className:"excalidraw__embeddable__outer",style:{padding:`${u.strokeWidth}px`},children:(_s(u)?this.props.renderEmbeddable?.(u,this.state):null)??N("iframe",{ref:(B)=>this.cacheEmbeddableRef(u,B),className:"excalidraw__embeddable",srcDoc:l?.type==="document"?l.srcdoc(this.state.theme):void 0,src:l?.type!=="document"?l?.link??"":void 0,scrolling:"no",referrerPolicy:"no-referrer-when-downgrade",title:"Excalidraw Embedded Content",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,sandbox:`${l?.sandbox?.allowSameOrigin?"allow-same-origin":""} allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-presentation allow-downloads`})})]})},u.id)})})}toggleOverscrollBehavior(e){document.documentElement.style.overscrollBehaviorX=e.type==="pointerenter"?"none":"auto"}render(){let e=this.scene.getSelectedElements(this.state),{renderTopRightUI:t,renderCustomStats:r}=this.props,i=this.scene.getSceneNonce(),{elementsMap:u,visibleElements:a}=this.renderer.getRenderableElements({sceneNonce:i,zoom:this.state.zoom,offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,height:this.state.height,width:this.state.width,editingTextElement:this.state.editingTextElement,newElementId:this.state.newElement?.id,pendingImageElementId:this.state.pendingImageElementId});this.visibleElements=a;let n=this.scene.getNonDeletedElementsMap(),o="setPointerCapture"in HTMLElement.prototype?!1:this.state.selectionElement||this.state.newElement||this.state.selectedElementsAreBeingDragged||this.state.resizingElement||this.state.activeTool.type==="laser"&&this.state.cursorButton==="down",s=e[0];return N("div",{className:Re("excalidraw excalidraw-container",{"excalidraw--view-mode":this.state.viewModeEnabled||this.state.openDialog?.name==="elementLinkSelector","excalidraw--mobile":this.device.editor.isMobile}),style:{"--ui-pointerEvents":o?o2.disabled:o2.enabled,"--right-sidebar-width":"302px"},ref:this.excalidrawContainerRef,onDrop:this.handleAppOnDrop,tabIndex:0,onKeyDown:this.props.handleKeyboardGlobally?void 0:this.onKeyDown,onPointerEnter:this.toggleOverscrollBehavior,onPointerLeave:this.toggleOverscrollBehavior,children:N(bVe.Provider,{value:this,children:N(vVe.Provider,{value:this.props,children:N(omA.Provider,{value:this.excalidrawContainerValue,children:N(nmA.Provider,{value:this.device,children:N(gmA.Provider,{value:this.setAppState,children:N(lmA.Provider,{value:this.state,children:cA(smA.Provider,{value:this.scene.getNonDeletedElements(),children:[cA(cmA.Provider,{value:this.actionManager,children:[N(whr,{canvas:this.canvas,appState:this.state,files:this.files,setAppState:this.setAppState,actionManager:this.actionManager,elements:this.scene.getNonDeletedElements(),onLockToggle:this.toggleLock,onPenModeToggle:this.togglePenMode,onHandToolToggle:this.onHandToolToggle,langCode:WL().code,renderTopRightUI:t,renderCustomStats:r,showExitZenModeBtn:typeof this.props?.zenModeEnabled>"u"&&this.state.zenModeEnabled,UIOptions:this.props.UIOptions,onExportImage:this.onExportImage,renderWelcomeScreen:!this.state.isLoading&&this.state.showWelcomeScreen&&this.state.activeTool.type==="selection"&&!this.state.zenModeEnabled&&!this.scene.getElementsIncludingDeleted().length,app:this,isCollaborating:this.props.isCollaborating,generateLinkForSelection:this.props.generateLinkForSelection,children:this.props.children}),N("div",{className:"excalidraw-textEditorContainer"}),N("div",{className:"excalidraw-contextMenuContainer"}),N("div",{className:"excalidraw-eye-dropper-container"}),N(uQr,{trails:[this.laserTrails,this.eraserTrail]}),e.length===1&&this.state.openDialog?.name!=="elementLinkSelector"&&this.state.showHyperlinkPopup&&N($Br,{element:s,elementsMap:n,setAppState:this.setAppState,onLinkOpen:this.props.onLinkOpen,setToast:this.setToast,updateEmbedValidationStatus:this.updateEmbedValidationStatus},s.id),this.props.aiEnabled!==!1&&e.length===1&&$8(s)&&N(hze,{element:s,elementsMap:u,children:N(D3A,{title:uA("labels.convertToCode"),icon:DhA,checked:!1,onChange:()=>this.onMagicFrameGenerate(s,"button")})}),e.length===1&&Ph(s)&&s.customData?.generationData?.status==="done"&&cA(hze,{element:s,elementsMap:u,children:[N(D3A,{title:uA("labels.copySource"),icon:lW,checked:!1,onChange:()=>this.onIframeSrcCopy(s)}),N(D3A,{title:"Enter fullscreen",icon:Jhe,checked:!1,onChange:()=>{let l=this.getHTMLIFrameElement(s);if(l)try{l.requestFullscreen(),this.setState({activeEmbeddable:{element:s,state:"active"},selectedElementIds:{[s.id]:!0},newElement:null,selectionElement:null})}catch(g){console.warn(g),this.setState({errorMessage:"Couldn't enter fullscreen"})}}})]}),this.state.toast!==null&&N(vhr,{message:this.state.toast.message,onClose:()=>this.setToast(null),duration:this.state.toast.duration,closable:this.state.toast.closable}),this.state.contextMenu&&N(vdr,{items:this.state.contextMenu.items,top:this.state.contextMenu.top,left:this.state.contextMenu.left,actionManager:this.actionManager,onClose:(l)=>{this.setState({contextMenu:null},()=>{this.focusContainer(),l?.()})}}),N(iQr,{canvas:this.canvas,rc:this.rc,elementsMap:u,allElementsMap:n,visibleElements:a,sceneNonce:i,selectionNonce:this.state.selectionElement?.versionNonce,scale:window.devicePixelRatio,appState:this.state,renderConfig:{imageCache:this.imageCache,isExporting:!1,renderGrid:P9(this),canvasBackgroundColor:this.state.viewBackgroundColor,embedsValidationStatus:this.embedsValidationStatus,elementsPendingErasure:this.elementsPendingErasure,pendingFlowchartNodes:this.flowChartCreator.pendingNodes}}),this.state.newElement&&N(pQr,{appState:this.state,scale:window.devicePixelRatio,rc:this.rc,elementsMap:u,allElementsMap:n,renderConfig:{imageCache:this.imageCache,isExporting:!1,renderGrid:!1,canvasBackgroundColor:this.state.viewBackgroundColor,embedsValidationStatus:this.embedsValidationStatus,elementsPendingErasure:this.elementsPendingErasure,pendingFlowchartNodes:null}}),N(eQr,{containerRef:this.excalidrawContainerRef,canvas:this.interactiveCanvas,elementsMap:u,visibleElements:a,allElementsMap:n,selectedElements:e,sceneNonce:i,selectionNonce:this.state.selectionElement?.versionNonce,scale:window.devicePixelRatio,appState:this.state,device:this.device,renderInteractiveSceneCallback:this.renderInteractiveSceneCallback,handleCanvasRef:this.handleInteractiveCanvasRef,onContextMenu:this.handleCanvasContextMenu,onPointerMove:this.handleCanvasPointerMove,onPointerUp:this.handleCanvasPointerUp,onPointerCancel:this.removePointer,onTouchMove:this.handleTouchMove,onPointerDown:this.handleCanvasPointerDown,onDoubleClick:this.handleCanvasDoubleClick}),this.state.userToFollow&&N(lQr,{width:this.state.width,height:this.state.height,userToFollow:this.state.userToFollow,onDisconnect:this.maybeUnfollowRemoteUser}),this.renderFrameNames()]}),this.renderEmbeddables()]})})})})})})})})}setPlugins(e){Object.assign(this.plugins,e)}async onMagicFrameGenerate(e,t){let r=this.plugins.diagramToCode?.generate;if(!r){this.setState({errorMessage:"No diagram to code plugin found"});return}let i=jW(this.scene.getNonDeletedElements(),e).filter((a)=>!$8(a));if(!i.length){t==="button"?(this.setState({errorMessage:"Cannot generate from an empty frame"}),Nu("ai","generate (no-children)","d2c")):this.setActiveTool({type:"magicframe"});return}let u=this.insertIframeElement({sceneX:e.x+e.width+30,sceneY:e.y,width:e.width,height:e.height});if(u){this.updateMagicGeneration({frameElement:u,data:{status:"pending"}}),this.setState({selectedElementIds:{[u.id]:!0}}),Nu("ai","generate (start)","d2c");try{let{html:a}=await r({frame:e,children:i});if(Nu("ai","generate (success)","d2c"),!a.trim()){this.updateMagicGeneration({frameElement:u,data:{status:"error",code:"ERR_OAI",message:"Nothing genereated :("}});return}let n=a.includes("<!DOCTYPE html>")&&a.includes("</html>")?a.slice(a.indexOf("<!DOCTYPE html>"),a.indexOf("</html>")+7):a;this.updateMagicGeneration({frameElement:u,data:{status:"done",html:n}})}catch(a){Nu("ai","generate (failed)","d2c"),this.updateMagicGeneration({frameElement:u,data:{status:"error",code:"ERR_OAI",message:a.message||"Unknown error during generation"}})}}}onIframeSrcCopy(e){e.customData?.generationData?.status==="done"&&(z9(e.customData.generationData.html),this.setToast({message:"copied to clipboard",closable:!1,duration:1500}))}clearImageShapeCache(e){let t=e??this.files;this.scene.getNonDeletedElements().forEach((r)=>{Ng(r)&&t[r.fileId]&&(this.imageCache.delete(r.fileId),na.delete(r))})}async componentDidMount(){if(this.unmounted=!1,this.excalidrawContainerValue.container=this.excalidrawContainerRef.current,Qr.MODE===Js.TEST||Qr.DEV){let e=this.setState.bind(this);Object.defineProperties(window.h,{state:{configurable:!0,get:()=>this.state},setState:{configurable:!0,value:(...t)=>this.setState(...t)},app:{configurable:!0,value:this},history:{configurable:!0,value:this.history},store:{configurable:!0,value:this.store},fonts:{configurable:!0,value:this.fonts}})}this.store.onStoreIncrementEmitter.on((e)=>{this.history.record(e.elementsChange,e.appStateChange)}),this.scene.onUpdate(this.triggerRender),this.addEventListeners(),this.props.autoFocus&&this.excalidrawContainerRef.current&&this.focusContainer(),bd()||(this.refreshViewportBreakpoints(),this.refreshEditorBreakpoints()),J_&&this.excalidrawContainerRef.current&&(this.resizeObserver=new ResizeObserver(()=>{this.refreshEditorBreakpoints(),this.updateDOMRect()}),this.resizeObserver?.observe(this.excalidrawContainerRef.current)),new URLSearchParams(window.location.search.slice(1)).has("web-share-target")?this.restoreFileFromShare():this.updateDOMRect(this.initializeScene),Nde()&&!kIe()&&this.setState({errorMessage:N(Lhr,{})})}componentWillUnmount(){window.launchQueue?.setConsumer(()=>{}),this.renderer.destroy(),this.scene.destroy(),this.scene=new yd,this.fonts=new kd(this.scene),this.renderer=new Ize(this.scene),this.files={},this.imageCache.clear(),this.resizeObserver?.disconnect(),this.unmounted=!0,this.removeEventListeners(),this.library.destroy(),this.laserTrails.stop(),this.eraserTrail.stop(),this.onChangeEmitter.clear(),this.store.onStoreIncrementEmitter.clear(),na.destroy(),xd.destroy(),clearTimeout(Hp),yn.clearCache(),V0.clearCache(),Hp=0,document.documentElement.style.overscrollBehaviorX=""}removeEventListeners(){this.onRemoveEventListenersEmitter.trigger()}addEventListeners(){this.removeEventListeners(),this.props.handleKeyboardGlobally&&this.onRemoveEventListenersEmitter.once(oa(document,"keydown",this.onKeyDown,!1)),this.onRemoveEventListenersEmitter.once(oa(this.excalidrawContainerRef.current,"wheel",this.handleWheel,{passive:!1}),oa(window,"message",this.onWindowMessage,!1),oa(document,"pointerup",this.removePointer,{passive:!1}),oa(document,"copy",this.onCopy,{passive:!1}),oa(document,"keyup",this.onKeyUp,{passive:!0}),oa(document,"pointermove",this.updateCurrentCursorPosition,{passive:!1}),oa(document.fonts,"loadingdone",(e)=>{let t=e.fontfaces;this.fonts.onLoaded(t)},{passive:!1}),oa(document,"gesturestart",this.onGestureStart,!1),oa(document,"gesturechange",this.onGestureChange,!1),oa(document,"gestureend",this.onGestureEnd,!1),oa(window,"focus",()=>{this.maybeCleanupAfterMissingPointerUp(null),this.triggerRender(!0)},{passive:!1})),!this.state.viewModeEnabled&&(this.onRemoveEventListenersEmitter.once(oa(document,"fullscreenchange",this.onFullscreenChange,{passive:!1}),oa(document,"paste",this.pasteFromClipboard,{passive:!1}),oa(document,"cut",this.onCut,{passive:!1}),oa(window,"resize",this.onResize,!1),oa(window,"unload",this.onUnload,!1),oa(window,"blur",this.onBlur,!1),oa(this.excalidrawContainerRef.current,"wheel",this.handleWheel,{passive:!1}),oa(this.excalidrawContainerRef.current,"dragover",this.disableEvent,!1),oa(this.excalidrawContainerRef.current,"drop",this.disableEvent,!1)),this.props.detectScroll&&this.onRemoveEventListenersEmitter.once(oa(IIe(this.excalidrawContainerRef.current),"scroll",this.onScroll,{passive:!1})))}componentDidUpdate(e,t){this.updateEmbeddables();let r=this.scene.getElementsIncludingDeleted(),i=this.scene.getElementsMapIncludingDeleted(),u=this.scene.getNonDeletedElementsMap();!this.state.showWelcomeScreen&&!r.length&&this.setState({showWelcomeScreen:!0}),e.UIOptions.dockedSidebarBreakpoint!==this.props.UIOptions.dockedSidebarBreakpoint&&this.refreshEditorBreakpoints(),t.userToFollow&&!this.state.collaborators.has(t.userToFollow.socketId)&&this.maybeUnfollowRemoteUser(),(t.zoom.value!==this.state.zoom.value||t.scrollX!==this.state.scrollX||t.scrollY!==this.state.scrollY)&&(this.props?.onScrollChange?.(this.state.scrollX,this.state.scrollY,this.state.zoom),this.onScrollChangeEmitter.trigger(this.state.scrollX,this.state.scrollY,this.state.zoom)),t.userToFollow!==this.state.userToFollow&&(t.userToFollow&&this.onUserFollowEmitter.trigger({userToFollow:t.userToFollow,action:"UNFOLLOW"}),this.state.userToFollow&&this.onUserFollowEmitter.trigger({userToFollow:this.state.userToFollow,action:"FOLLOW"})),Object.keys(this.state.selectedElementIds).length&&dB(this.state)&&this.setState({activeTool:un(this.state,{type:"selection"})}),this.state.activeTool.type==="eraser"&&t.theme!==this.state.theme&&rQA(this.interactiveCanvas,this.state.theme),t.activeTool.type==="selection"&&this.state.activeTool.type!=="selection"&&this.state.showHyperlinkPopup&&this.setState({showHyperlinkPopup:!1}),e.langCode!==this.props.langCode&&this.updateLanguage(),dB(t)&&!dB(this.state)&&this.eraserTrail.endPath(),e.viewModeEnabled!==this.props.viewModeEnabled&&this.setState({viewModeEnabled:!!this.props.viewModeEnabled}),t.viewModeEnabled!==this.state.viewModeEnabled&&(this.addEventListeners(),this.deselectElements()),(t.openDialog?.name==="elementLinkSelector"||this.state.openDialog?.name==="elementLinkSelector")&&t.openDialog?.name!==this.state.openDialog?.name&&(this.deselectElements(),this.setState({hoveredElementIds:{}})),e.zenModeEnabled!==this.props.zenModeEnabled&&this.setState({zenModeEnabled:!!this.props.zenModeEnabled}),e.theme!==this.props.theme&&this.props.theme&&this.setState({theme:this.props.theme}),this.excalidrawContainerRef.current?.classList.toggle("theme--dark",this.state.theme===$r.DARK),this.state.editingLinearElement&&!this.state.selectedElementIds[this.state.editingLinearElement.elementId]&&setTimeout(()=>{this.state.editingLinearElement&&this.actionManager.executeAction(MB)}),this.state.editingTextElement?.isDeleted&&this.setState({editingTextElement:null}),this.state.selectedLinearElement&&!this.state.selectedElementIds[this.state.selectedLinearElement.elementId]&&this.setState({selectedLinearElement:null});let{multiElement:a}=t;t.activeTool!==this.state.activeTool&&a!=null&&V1(this.state)&&oB(a,!1)&&wW(a,this.state,Nc(ht.getPointAtIndexGlobalCoordinates(a,-1,u)),this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements()),this.store.commit(i,this.state),this.state.isLoading||(this.props.onChange?.(r,this.state,this.files),this.onChangeEmitter.trigger(r,this.state,this.files))}static resetTapTwice(){ML=!1}async addElementsFromMixedContentPaste(e,{isPlainPaste:t,sceneX:r,sceneY:i}){if(!t&&e.some((u)=>u.type==="imageUrl")&&this.isToolSupported("image")){let u=e.filter((g)=>g.type==="imageUrl").map((g)=>g.value),a=await Promise.all(u.map(async(g)=>{try{return{file:await p1e(g)}}catch(C){let B=C.message;return C.cause==="FETCH_ERROR"?B=uA("errors.failedToFetchImage"):C.cause==="UNSUPPORTED"&&(B=uA("errors.unsupportedFileType")),{errorMessage:B}}})),n=i,o=!1,s={};for(let g of a)if(g.file){let C=this.createImageElement({sceneX:r,sceneY:n}),B=await this.insertImageElement(C,g.file);B&&(o||(o=!0,n-=B.height/2),Se(B,{y:n},!1),n=C.y+C.height+25,s[C.id]=!0)}this.setState({selectedElementIds:Ni(s,this.state)});let l=a.find((g)=>!!g.errorMessage);l&&l.errorMessage&&this.setState({errorMessage:l.errorMessage})}else{let u=e.filter((a)=>a.type==="text");u.length&&this.addTextFromPaste(u.map((a)=>a.value).join(`
|
||
|
||
`),t)}}addTextFromPaste(e,t=!1){let{x:r,y:i}=Ru({clientX:this.lastViewportPosition.x,clientY:this.lastViewportPosition.y},this.state),u={x:r,y:i,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roundness:null,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,text:e,fontSize:this.state.currentItemFontSize,fontFamily:this.state.currentItemFontFamily,textAlign:S9,verticalAlign:J8,locked:!1},a=cu({fontSize:u.fontSize,fontFamily:u.fontFamily}),n=op(u.fontFamily),[o,,s]=OQe(this.state),l=Math.max(Math.min((s-o)*0.5,800),200),g=10,C=i,B=t?[e]:e.split(`
|
||
`),E=B.reduce((d,I,h)=>{let Q=I2(I).trim();if(Q.length){let p=this.getTopLayerFrameAtSceneCoords({x:r,y:C}),m=m0(Q,a,n),f=m.width>l,D=f?up(Q,a,l):Q;m=f?m0(D,a,n):m;let w=r-m.width/2,b=C-m.height/2,F=Tl({...u,x:w,y:b,text:D,originalText:Q,lineHeight:n,autoResize:!f,frameId:p?p.id:null});d.push(F),C+=F.height+g}else B[h-1]?.trim()&&(C+=T9(u.fontSize,n)+g);return d},[]);E.length!==0&&(this.scene.insertElements(E),this.setState({selectedElementIds:Ni(Object.fromEntries(E.map((d)=>[d.id,!0])),this.state)}),!t&&E.length>1&&pze===!1&&!this.device.editor.isMobile&&(this.setToast({message:uA("toast.pasteAsSingleElement",{shortcut:Fe("CtrlOrCmd+Shift+V")}),duration:5000}),pze=!0),this.store.shouldCaptureIncrement())}handleTextWysiwyg(e,{isExistingElement:t=!1}){let r=this.scene.getElementsMapIncludingDeleted(),i=(u,a)=>{this.scene.replaceAllElements([...this.scene.getElementsIncludingDeleted().map((n)=>n.id===e.id&&Et(n)?Tr(n,{originalText:u,isDeleted:a??n.isDeleted,...uQA(n,Qo(n,r),r,u)}):n)])};BQr({id:e.id,canvas:this.canvas,getViewportCoords:(u,a)=>{let{x:n,y:o}=Mc({sceneX:u,sceneY:a},this.state);return[n-this.state.offsetLeft,o-this.state.offsetTop]},onChange:Ja((u)=>{i(u,!1),iq(e)&&Os(e,this.scene.getNonDeletedElementsMap())}),onSubmit:Ja(({viaKeyboard:u,nextOriginalText:a})=>{let n=!a.trim();if(i(a,n),!n&&u){let o=e.containerId?e.containerId:e.id;Wn(()=>{this.setState((s)=>({selectedElementIds:Ni({...s.selectedElementIds,[o]:!0},s)}))})}n&&OhA(this.scene.getNonDeletedElements(),[e]),(!n||t)&&this.store.shouldCaptureIncrement(),Wn(()=>{this.setState({newElement:null,editingTextElement:null})}),this.state.activeTool.locked&&hB(this.interactiveCanvas,this.state),this.focusContainer()}),element:e,excalidrawContainer:this.excalidrawContainerRef.current,app:this,autoSelect:!this.device.isTouchScreen}),this.deselectElements(),i(e.originalText,!1)}deselectElements(){this.setState({selectedElementIds:Ni({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})}getTextElementAtPosition(e,t){let r=this.getElementAtPosition(e,t,{includeBoundTextElement:!0});return r&&Et(r)&&!r.isDeleted?r:null}getElementAtPosition(e,t,r){let i=this.getElementsAtPosition(e,t,r?.includeBoundTextElement,r?.includeLockedElements);if(i.length>1){if(r?.preferSelected){for(let a=i.length-1;a>-1;a--)if(this.state.selectedElementIds[i[a].id])return i[a]}let u=i[i.length-1];return Q2({x:e,y:t,element:u,shape:pd(u,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()/2,frameNameBound:nr(u)?this.frameNameBoundsCache.get(u):null})?u:i[i.length-2]}return i.length===1?i[0]:null}getElementsAtPosition(e,t,r=!1,i=!1){let u=[],a=this.scene.getNonDeletedElementsMap();return(r&&i?this.scene.getNonDeletedElements():this.scene.getNonDeletedElements().filter((n)=>(i||!n.locked)&&(r||!(Et(n)&&n.containerId)))).filter((n)=>this.hitElement(e,t,n)).filter((n)=>{let o=Ps(n,a);return o&&this.state.frameRendering.enabled&&this.state.frameRendering.clip?LQA({x:e,y:t},o,a):!0}).filter((n)=>Ph(n)?(u.push(n),!1):!0).concat(u)}getElementHitThreshold(){return Hde/this.state.zoom.value}hitElement(e,t,r,i=!0){if(i&&this.state.selectedElementIds[r.id]&&KQA([r],this.state)){let u=IQe(r,this.scene.getNonDeletedElementsMap(),Ri(r)?0:this.getElementHitThreshold());if(G8(X(e,t),u))return!0}return xhA(e,t,ShA(r,this.scene.getNonDeletedElementsMap()))?!0:Q2({x:e,y:t,element:r,shape:pd(r,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold(),frameNameBound:nr(r)?this.frameNameBoundsCache.get(r):null})}getTextBindableContainerAtPosition(e,t){let r=this.scene.getNonDeletedElements(),i=this.scene.getSelectedElements(this.state);if(i.length===1)return ip(i[0],!1)?i[0]:null;let u=null;for(let a=r.length-1;a>=0;--a){if(r[a].isDeleted)continue;let[n,o,s,l]=Rr(r[a],this.scene.getNonDeletedElementsMap());if(Kr(r[a])&&Q2({x:e,y:t,element:r[a],shape:pd(r[a],this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()})){u=r[a];break}else if(n<e&&e<s&&o<t&&t<l){u=r[a];break}}return ip(u,!1)?u:null}handleHoverSelectedLinearElement(e,t,r){let i=this.scene.getNonDeletedElementsMap(),u=ht.getElement(e.elementId,i);if(u)if(this.state.selectedLinearElement){let a=-1,n=null;Q2({x:t,y:r,element:u,shape:pd(u,this.scene.getNonDeletedElementsMap())})?(a=ht.getPointIndexUnderCursor(u,i,this.state.zoom,t,r),n=ht.getSegmentMidpointHitCoords(e,{x:t,y:r},this.state,this.scene.getNonDeletedElementsMap()),(ft(u)?a===0||a===u.points.length-1:a>=0)||n?Cu(this.interactiveCanvas,iu.POINTER):this.hitElement(t,r,u)&&Cu(this.interactiveCanvas,iu.MOVE)):this.hitElement(t,r,u)&&(!ft(u)||!(u.startBinding||u.endBinding))&&Cu(this.interactiveCanvas,iu.MOVE),this.state.selectedLinearElement.hoverPointIndex!==a&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,hoverPointIndex:a}}),ht.arePointsEqual(this.state.selectedLinearElement.segmentMidPointHoveredCoords,n)||this.setState({selectedLinearElement:{...this.state.selectedLinearElement,segmentMidPointHoveredCoords:n}})}else Cu(this.interactiveCanvas,iu.AUTO)}updateGestureOnPointerDown(e){Wi.pointers.set(e.pointerId,{x:e.clientX,y:e.clientY}),Wi.pointers.size===2&&(Wi.lastCenter=Kqe(Wi.pointers),Wi.initialScale=this.state.zoom.value,Wi.initialDistance=Jqe(Array.from(Wi.pointers.values())))}initialPointerDownState(e){let t=Ru(e,this.state),r=this.scene.getSelectedElements(this.state),[i,u,a,n]=Pi(r),o=r.findIndex(ft)===0;return{origin:t,withCmdOrCtrl:e[PA.CTRL_OR_CMD],originInGrid:Nc(Dn(t.x,t.y,e[PA.CTRL_OR_CMD]||o?null:this.getEffectiveGridSize())),scrollbars:Wqe(b3A,e.clientX-this.state.offsetLeft,e.clientY-this.state.offsetTop),lastCoords:{...t},originalElements:this.scene.getNonDeletedElements().reduce((s,l)=>(s.set(l.id,gp(l)),s),new Map),resize:{handleType:!1,isResizing:!1,offset:{x:0,y:0},arrowDirection:"origin",center:{x:(a+i)/2,y:(n+u)/2}},hit:{element:null,allHitElements:[],wasAddedToSelection:!1,hasBeenDuplicated:!1,hasHitCommonBoundingBoxOfSelectedElements:this.isHittingCommonBoundingBoxOfSelectedElements(t,r)},drag:{hasOccurred:!1,offset:null},eventListeners:{onMove:null,onUp:null,onKeyUp:null,onKeyDown:null},boxSelection:{hasOccurred:!1}}}handleDraggingScrollBar(e,t){if(!(t.scrollbars.isOverEither&&!this.state.multiElement))return!1;w3A=!0,t.lastCoords.x=e.clientX,t.lastCoords.y=e.clientY;let r=p3A((u)=>{u.target instanceof HTMLElement&&this.handlePointerMoveOverScrollbars(u,t)}),i=Ja(()=>{HL=null,w3A=!1,hB(this.interactiveCanvas,this.state),this.setState({cursorButton:"up"}),this.savePointer(e.clientX,e.clientY,"up"),window.removeEventListener("pointermove",r),window.removeEventListener("pointerup",i),r.flush()});return HL=i,window.addEventListener("pointermove",r),window.addEventListener("pointerup",i),!0}isASelectedElement(e){return e!=null&&this.state.selectedElementIds[e.id]}isHittingCommonBoundingBoxOfSelectedElements(e,t){if(t.length<2)return!1;let r=this.getElementHitThreshold(),[i,u,a,n]=Pi(t);return e.x>i-r&&e.x<a+r&&e.y>u-r&&e.y<n+r}getCurrentItemRoundness(e){return this.state.currentItemRoundness==="round"?{type:d2(e)?mn.ADAPTIVE_RADIUS:mn.PROPORTIONAL_RADIUS}:null}maybeCacheReferenceSnapPoints(e,t,r=!1){_h({event:e,app:this,selectedElements:t})&&(r||!xd.getReferenceSnapPoints())&&xd.setReferenceSnapPoints(e4e(this.scene.getNonDeletedElements(),t,this.state,this.scene.getNonDeletedElementsMap()))}maybeCacheVisibleGaps(e,t,r=!1){_h({event:e,app:this,selectedElements:t})&&(r||!xd.getVisibleGaps())&&xd.setVisibleGaps(A4e(this.scene.getNonDeletedElements(),t,this.state,this.scene.getNonDeletedElementsMap()))}onKeyDownFromPointerDownHandler(e){return Ja((t)=>{this.maybeHandleResize(e,t)||this.maybeDragNewGenericElement(e,t)})}onKeyUpFromPointerDownHandler(e){return Ja((t)=>{t.key===PA.ALT&&t.preventDefault(),!this.maybeHandleResize(e,t)&&this.maybeDragNewGenericElement(e,t)})}onPointerMoveFromPointerDownHandler(e){return p3A((t)=>{if(this.state.openDialog?.name==="elementLinkSelector")return;let r=Ru(t,this.state);if(this.state.selectedLinearElement&&this.state.selectedLinearElement.elbowed&&this.state.selectedLinearElement.pointerDownState.segmentMidpoint.index){let[l,g]=Dn(r.x,r.y,t[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),C=this.state.selectedLinearElement.pointerDownState.segmentMidpoint.index;if(C<0){let E=ht.getSegmentMidpointHitCoords({...this.state.selectedLinearElement,segmentMidPointHoveredCoords:null},{x:l,y:g},this.state,this.scene.getNonDeletedElementsMap());C=E?ht.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,E,this.scene.getNonDeletedElementsMap()):-1}let B=ht.moveFixedSegment(this.state.selectedLinearElement,C,l,g,this.scene.getNonDeletedElementsMap());Wn(()=>{this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,segmentMidPointHoveredCoords:B.segmentMidPointHoveredCoords,pointerDownState:B.pointerDownState}})});return}let i=this.lastPointerMoveCoords??e.origin;if(this.lastPointerMoveCoords=r,e.drag.offset===null&&(e.drag.offset=Nc(o1e(this.scene.getSelectedElements(this.state),e.origin.x,e.origin.y))),!(t.target instanceof HTMLElement)||this.handlePointerMoveOverScrollbars(t,e))return;if(dB(this.state)){this.handleEraser(t,e,r);return}this.state.activeTool.type==="laser"&&this.laserTrails.addPointToPath(r.x,r.y);let[u,a]=Dn(r.x,r.y,t[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize());if(!e.drag.hasOccurred&&(this.state.activeTool.type==="arrow"||this.state.activeTool.type==="line")&&Li(X(r.x,r.y),X(e.origin.x,e.origin.y))<$1)return;if(e.resize.isResizing&&(e.lastCoords.x=r.x,e.lastCoords.y=r.y,this.maybeHandleCrop(e,t)||this.maybeHandleResize(e,t)))return!0;let n=this.scene.getNonDeletedElementsMap();if(this.state.selectedLinearElement){let l=this.state.editingLinearElement||this.state.selectedLinearElement;if(ht.shouldAddMidpoint(this.state.selectedLinearElement,r,this.state,n)){let g=ht.addMidpoint(this.state.selectedLinearElement,r,this,!t[PA.CTRL_OR_CMD],n);if(!g)return;Wn(()=>{this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,pointerDownState:g.pointerDownState,selectedPointsIndices:g.selectedPointsIndices}}),this.state.editingLinearElement&&this.setState({editingLinearElement:{...this.state.editingLinearElement,pointerDownState:g.pointerDownState,selectedPointsIndices:g.selectedPointsIndices}})});return}else if(l.pointerDownState.segmentMidpoint.value!==null&&!l.pointerDownState.segmentMidpoint.added)return;if(ht.handlePointDragging(t,this,r.x,r.y,(g,C)=>{this.maybeSuggestBindingsForLinearElementAtCoords(g,C)},l,this.scene)){e.lastCoords.x=r.x,e.lastCoords.y=r.y,e.drag.hasOccurred=!0,this.state.editingLinearElement&&!this.state.editingLinearElement.isDragging&&this.setState({editingLinearElement:{...this.state.editingLinearElement,isDragging:!0}}),this.state.selectedLinearElement.isDragging||this.setState({selectedLinearElement:{...this.state.selectedLinearElement,isDragging:!0}});return}}let o=e.hit.allHitElements.some((l)=>this.isASelectedElement(l)),s=this.state.editingLinearElement&&t.shiftKey&&this.state.editingLinearElement.elementId===e.hit.element?.id;if((o||e.hit.hasHitCommonBoundingBoxOfSelectedElements)&&!s){let l=this.scene.getSelectedElements(this.state);if(l.every((E)=>E.locked))return;let g=l.find((E)=>nr(E)),C=this.getTopLayerFrameAtSceneCoords(r),B=C&&!g?C:null;if(this.state.frameToHighlight!==B&&Wn(()=>{this.setState({frameToHighlight:B})}),e.drag.hasOccurred=!0,l.length>0&&!e.withCmdOrCtrl&&!this.state.editingTextElement&&this.state.activeEmbeddable?.state!=="active"){let E={x:r.x-e.origin.x,y:r.y-e.origin.y},d=[...e.originalElements.values()],I=t.shiftKey;if(I){let p=Math.abs(E.x),m=Math.abs(E.y),f=I&&p<m,D=I&&p>m;f&&(E.x=0),D&&(E.y=0)}if(this.state.croppingElementId){let p=this.scene.getNonDeletedElementsMap().get(this.state.croppingElementId);if(p&&Ri(p)&&p.crop!==null&&e.hit.element===p){let m=p.crop,f=Ng(p)&&this.imageCache.get(p.fileId)?.image;if(f&&!(f instanceof Promise)){let D=ba(Oo(r.x-i.x,r.y-i.y),Math.max(this.state.zoom.value,2)),[w,b,F,v,S,x]=Rr(p,n),k=Mt(ye(X(w,b),X(S,x),p.angle)),T=Mt(ye(X(F,b),X(S,x),p.angle)),R=Mt(ye(X(w,v),X(S,x),p.angle)),L=p0(S8(T,k)),M=p0(S8(R,k)),U=Oo(xIA(D,L),xIA(D,M)),Y={...m,x:Vr(m.x-U[0]*Math.sign(p.scale[0]),0,f.naturalWidth-m.width),y:Vr(m.y-U[1]*Math.sign(p.scale[1]),0,f.naturalHeight-m.height)};Se(p,{crop:Y});return}}}this.maybeCacheVisibleGaps(t,l),this.maybeCacheReferenceSnapPoints(t,l);let{snapOffset:h,snapLines:Q}=t4e(d,E,this,t,this.scene.getNonDeletedElementsMap());if(this.setState({snapLines:Q}),this.state.editingFrame||n1e(e,l,E,this.scene,h,t[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),this.setState({selectedElementsAreBeingDragged:!0,selectionElement:null}),(l.length!==1||!ft(l[0]))&&this.setState({suggestedBindings:yW(l,this.scene.getNonDeletedElementsMap(),this.state.zoom)}),t.altKey&&!e.hit.hasBeenDuplicated){e.hit.hasBeenDuplicated=!0;let p=[],m=[],f=new Map,D=new Map,w=e.hit.element,b=new Set(this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}).map((S)=>S.id)),F=this.scene.getElementsIncludingDeleted();for(let S of F){let x=b.has(S.id)||S.id===w?.id&&e.hit.wasAddedToSelection;if(Math.abs(S.x)>1e7||Math.abs(S.x)>1e7||Math.abs(S.width)>1e7||Math.abs(S.height)>1e7){console.error("Alt+dragging element in scene with invalid dimensions",S.x,S.y,S.width,S.height,x);return}if(x){let k=nQA(this.state.editingGroupId,f,S);if(Math.abs(k.x)>1e7||Math.abs(k.x)>1e7||Math.abs(k.width)>1e7||Math.abs(k.height)>1e7){console.error("Alt+dragging duplicated element with invalid dimensions",k.x,k.y,k.width,k.height);return}let T=e.originalElements.get(S.id);if(Math.abs(T.x)>1e7||Math.abs(T.x)>1e7||Math.abs(T.width)>1e7||Math.abs(T.height)>1e7){console.error("Alt+dragging duplicated element with invalid dimensions",T.x,T.y,T.width,T.height);return}Se(k,{x:T.x,y:T.y}),e.originalElements.set(k.id,k),p.push(k),m.push(S),D.set(S.id,k.id)}else p.push(S)}let v=[...p,...m];v=this.props.onDuplicate?.(v,F)||v,CB(v,ar(m)),AQA(p,m,D),JhA(v,m,D,"duplicatesServeAsOld"),FQA(v,m,D),this.scene.replaceAllElements(v),this.maybeCacheVisibleGaps(t,l,!0),this.maybeCacheReferenceSnapPoints(t,l,!0)}return}}if(this.state.selectionElement)e.lastCoords.x=r.x,e.lastCoords.y=r.y,this.maybeDragNewGenericElement(e,t);else{let l=this.state.newElement;if(!l)return;if(l.type==="freedraw"){let g=l.points,C=r.x-l.x,B=r.y-l.y,E=g.length>0&&g[g.length-1];if(!(E&&E[0]===C&&E[1]===B)){let d=l.simulatePressure?l.pressures:[...l.pressures,t.pressure];Se(l,{points:[...g,X(C,B)],pressures:d},!1),this.setState({newElement:l})}}else if(Nr(l)){e.drag.hasOccurred=!0;let g=l.points,C=u-l.x,B=a-l.y;w9(t)&&g.length===2&&({width:C,height:B}=Aq(l.x,l.y,r.x,r.y)),g.length===1?Se(l,{points:[...g,X(C,B)]},!1):(g.length===2||g.length>1&&ft(l))&&Se(l,{points:[...g.slice(0,-1),X(C,B)]},!1,{isDragging:!0}),this.setState({newElement:l}),oB(l,!1)&&this.maybeSuggestBindingsForLinearElementAtCoords(l,[r],this.state.startBoundElement)}else e.lastCoords.x=r.x,e.lastCoords.y=r.y,this.maybeDragNewGenericElement(e,t,!1)}if(this.state.activeTool.type==="selection"){e.boxSelection.hasOccurred=!0;let l=this.scene.getNonDeletedElements();if(this.state.editingLinearElement)ht.handleBoxSelection(t,this.state,this.setState.bind(this),this.scene.getNonDeletedElementsMap());else{let g=!0;!t.shiftKey&&yn(l,this.state)&&(e.withCmdOrCtrl&&e.hit.element?this.setState((B)=>V0({...B,selectedElementIds:{[e.hit.element.id]:!0}},this.scene.getNonDeletedElements(),B,this)):g=!1);let C=this.state.selectionElement?$W(l,this.state.selectionElement,this.scene.getNonDeletedElementsMap(),!1):[];this.setState((B)=>{let E={...g&&B.selectedElementIds,...C.reduce((d,I)=>(d[I.id]=!0,d),{})};return e.hit.element&&(C.length?delete E[e.hit.element.id]:E[e.hit.element.id]=!0),B=g?B:{...B,selectedGroupIds:{},editingGroupId:null},{...V0({editingGroupId:B.editingGroupId,selectedElementIds:E},this.scene.getNonDeletedElements(),B,this),selectedLinearElement:C.length===1&&Nr(C[0])?new ht(C[0]):null,showHyperlinkPopup:C.length===1&&(C[0].link||_s(C[0]))?"info":!1}})}}})}handlePointerMoveOverScrollbars(e,t){if(t.scrollbars.isOverHorizontal){let r=e.clientX,i=r-t.lastCoords.x;return this.translateCanvas({scrollX:this.state.scrollX-i/this.state.zoom.value}),t.lastCoords.x=r,!0}if(t.scrollbars.isOverVertical){let r=e.clientY,i=r-t.lastCoords.y;return this.translateCanvas({scrollY:this.state.scrollY-i/this.state.zoom.value}),t.lastCoords.y=r,!0}return!1}onPointerUpFromPointerDownHandler(e){return Ja((t)=>{this.removePointer(t),e.eventListeners.onMove&&e.eventListeners.onMove.flush();let{newElement:r,resizingElement:i,croppingElementId:u,multiElement:a,activeTool:n,isResizing:o,isRotating:s,isCropping:l}=this.state;this.setState((d)=>({isResizing:!1,isRotating:!1,isCropping:!1,resizingElement:null,selectionElement:null,frameToHighlight:null,elementsToHighlight:null,cursorButton:"up",snapLines:M9(d.snapLines,[]),originSnapOffset:null})),this.lastPointerMoveCoords=null,xd.setReferenceSnapPoints(null),xd.setVisibleGaps(null),this.savePointer(t.clientX,t.clientY,"up"),this.setState({selectedElementsAreBeingDragged:!1});let g=this.scene.getNonDeletedElementsMap();if(e.drag.hasOccurred&&e.hit?.element?.id){let d=g.get(e.hit.element.id);Yc(d)&&d.boundElements?.filter((I)=>I.type==="arrow").map((I)=>g.get(I.id)).filter((I)=>ft(I)).forEach((I)=>{I&&Se(I,{},!0)})}if(this.state.editingLinearElement)if(!e.boxSelection.hasOccurred&&e.hit?.element?.id!==this.state.editingLinearElement.elementId)this.actionManager.executeAction(MB);else{let d=ht.handlePointerUp(t,this.state.editingLinearElement,this.state,this.scene);d!==this.state.editingLinearElement&&this.setState({editingLinearElement:d,suggestedBindings:[]})}else if(this.state.selectedLinearElement){if(this.state.selectedLinearElement.elbowed){let d=ht.getElement(this.state.selectedLinearElement.elementId,this.scene.getNonDeletedElementsMap());d&&Se(d,{},!0)}if(e.hit?.element?.id!==this.state.selectedLinearElement.elementId)this.scene.getSelectedElements(this.state).length>1&&this.setState({selectedLinearElement:null});else{let d=ht.handlePointerUp(t,this.state.selectedLinearElement,this.state,this.scene),{startBindingElement:I,endBindingElement:h}=d,Q=this.scene.getElement(d.elementId);oB(Q)&&oS(Q,I,h,g,this.scene),d!==this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...d,selectedPointsIndices:null},suggestedBindings:[]})}}if(this.missingPointerEventCleanupEmitter.clear(),window.removeEventListener("pointermove",e.eventListeners.onMove),window.removeEventListener("pointerup",e.eventListeners.onUp),window.removeEventListener("keydown",e.eventListeners.onKeyDown),window.removeEventListener("keyup",e.eventListeners.onKeyUp),this.state.pendingImageElementId&&this.setState({pendingImageElementId:null}),this.props?.onPointerUp?.(n,e),this.onPointerUpEmitter.trigger(this.state.activeTool,e,t),r?.type==="freedraw"){let d=Ru(t,this.state),I=r.points,h=d.x-r.x,Q=d.y-r.y;h===I[0][0]&&Q===I[0][1]&&(Q+=0.0001,h+=0.0001);let p=r.simulatePressure?[]:[...r.pressures,t.pressure];Se(r,{points:[...I,X(h,Q)],pressures:p,lastCommittedPoint:X(h,Q)}),this.actionManager.executeAction(MB);return}if(Ri(r)){let d=r;try{this.initializeImageDimensions(d),this.setState({selectedElementIds:Ni({[d.id]:!0},this.state)},()=>{this.actionManager.executeAction(MB)})}catch(I){console.error(I),this.scene.replaceAllElements(this.scene.getElementsIncludingDeleted().filter((h)=>h.id!==d.id)),this.actionManager.executeAction(MB)}return}if(Nr(r)){r.points.length>1&&this.store.shouldCaptureIncrement();let d=Ru(t,this.state);!e.drag.hasOccurred&&r&&!a?(Se(r,{points:[...r.points,X(d.x-r.x,d.y-r.y)]}),this.setState({multiElement:r,newElement:r})):e.drag.hasOccurred&&!a&&(V1(this.state)&&oB(r,!1)&&wW(r,this.state,d,this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements()),this.setState({suggestedBindings:[],startBoundElement:null}),n.locked?this.setState((I)=>({newElement:null})):(Oc(this.interactiveCanvas),this.setState((I)=>({newElement:null,activeTool:un(this.state,{type:"selection"}),selectedElementIds:Ni({...I.selectedElementIds,[r.id]:!0},I),selectedLinearElement:new ht(r)}))),this.scene.triggerUpdate());return}if(Et(r)){let d=$_(cu({fontSize:r.fontSize,fontFamily:r.fontFamily}),r.lineHeight);r.width<d&&Se(r,{autoResize:!0}),this.resetCursor(),this.handleTextWysiwyg(r,{isExistingElement:!0})}if(n.type!=="selection"&&r&&y2(r)){this.updateScene({elements:this.scene.getElementsIncludingDeleted().filter((d)=>d.id!==r.id),appState:{newElement:null},captureUpdate:be.NEVER});return}if(nr(r)){let d=X4e(this.scene.getElementsIncludingDeleted(),r,this.scene.getNonDeletedElementsMap());this.scene.replaceAllElements(V9(this.scene.getElementsMapIncludingDeleted(),d,r,this.state))}if(r&&(Se(r,TQA(r)),this.scene.triggerUpdate()),e.drag.hasOccurred){let d=Ru(t,this.state);if(this.state.selectedLinearElement&&this.state.selectedLinearElement.isDragging){let I=this.scene.getElement(this.state.selectedLinearElement.elementId);if(I?.frameId){let h=Ps(I,g);h&&I&&(Kh(I,h,this.scene.getNonDeletedElementsMap())||(Se(I,{groupIds:[]}),fS([I],this.scene.getNonDeletedElementsMap()),this.scene.triggerUpdate()))}}else{let I=this.getTopLayerFrameAtSceneCoords(d),h=this.scene.getSelectedElements(this.state),Q=this.scene.getElementsMapIncludingDeleted(),p=(m)=>{if(m.length>0){for(let f of m){let D=f.groupIds.indexOf(this.state.editingGroupId);Se(f,{groupIds:f.groupIds.slice(0,D)},!1)}Q.forEach((f)=>{f.groupIds.length&&Yu(Q,f.groupIds[f.groupIds.length-1]).length<2&&Se(f,{groupIds:[]},!1)}),this.setState({editingGroupId:null})}};if(I&&!this.state.selectedElementIds[I.id]){let m=h.filter((f)=>f.frameId!==I.id&&mS(f,Q,this.state));this.state.editingGroupId&&p(m),Q=V9(Q,m,I,this.state)}else if(!I&&this.state.editingGroupId){let m=h.filter((f)=>f.frameId&&!mS(f,Q,this.state));p(m)}Q=D2(Q,this.state,this),this.scene.replaceAllElements(Q)}}if(i&&this.store.shouldCaptureIncrement(),i&&y2(i)&&this.updateScene({elements:this.scene.getElementsIncludingDeleted().filter((d)=>d.id!==i.id),captureUpdate:be.NEVER}),e.resize.isResizing){let d=D2(this.scene.getElementsIncludingDeleted(),this.state,this),I=this.scene.getSelectedElements(this.state).filter((h)=>nr(h));for(let h of I)d=NQA(d,pS(this.scene.getElementsIncludingDeleted(),h,this.state,g),h,this);this.scene.replaceAllElements(d)}let C=e.hit.element;this.state.selectedLinearElement?.elementId!==C?.id&&Nr(C)&&this.scene.getSelectedElements(this.state).length===1&&this.setState({selectedLinearElement:new ht(C)}),(!u||u&&(!C&&!l||C&&C.id!==u))&&this.finishImageCropping();let B=this.lastPointerDownEvent,E=this.lastPointerUpEvent||this.lastPointerMoveEvent;if(dB(this.state)&&B&&E){if(this.eraserTrail.endPath(),Li(X(B.clientX,B.clientY),X(E.clientX,E.clientY))===0){let d=Ru({clientX:E.clientX,clientY:E.clientY},this.state);this.getElementsAtPosition(d.x,d.y).forEach((I)=>this.elementsPendingErasure.add(I.id))}this.eraseElements();return}else this.elementsPendingErasure.size&&this.restoreReadyToEraseElements();if(C&&!e.drag.hasOccurred&&!e.hit.wasAddedToSelection&&(!this.state.editingLinearElement||!e.boxSelection.hasOccurred)&&(t.shiftKey&&!this.state.editingLinearElement?this.state.selectedElementIds[C.id]?qhA(this.state,C)?this.setState((d)=>{let I={...d.selectedElementIds};for(let h of C.groupIds.flatMap((Q)=>Yu(this.scene.getNonDeletedElements(),Q)))delete I[h.id];return{selectedGroupIds:{...d.selectedElementIds,...C.groupIds.map((h)=>({[h]:!1})).reduce((h,Q)=>({...h,...Q}),{})},selectedElementIds:Ni(I,d)}}):this.state.selectedLinearElement?.isDragging||this.setState((d)=>{let I={...d.selectedElementIds};delete I[C.id];let h=Jr(this.scene.getNonDeletedElements(),{selectedElementIds:I});return{...V0({editingGroupId:d.editingGroupId,selectedElementIds:I},this.scene.getNonDeletedElements(),d,this),selectedLinearElement:h.length===1&&Nr(h[0])?new ht(h[0]):d.selectedLinearElement}}):C.frameId&&this.state.selectedElementIds[C.frameId]?this.setState((d)=>{let I={...d.selectedElementIds,[C.id]:!0};return delete I[C.frameId],(this.scene.getElement(C.frameId)?.groupIds??[]).flatMap((h)=>Yu(this.scene.getNonDeletedElements(),h)).forEach((h)=>{delete I[h.id]}),{...V0({editingGroupId:d.editingGroupId,selectedElementIds:I},this.scene.getNonDeletedElements(),d,this),showHyperlinkPopup:C.link||_s(C)?"info":!1}}):this.setState((d)=>({selectedElementIds:Ni({...d.selectedElementIds,[C.id]:!0},d)})):this.setState((d)=>({...V0({editingGroupId:d.editingGroupId,selectedElementIds:{[C.id]:!0}},this.scene.getNonDeletedElements(),d,this),selectedLinearElement:Nr(C)&&d.selectedLinearElement?.elementId!==C.id?new ht(C):d.selectedLinearElement}))),!(C&&ft(C))&&!e.drag.hasOccurred&&!this.state.isResizing&&(C&&DQe({x:e.origin.x,y:e.origin.y,element:C,shape:pd(C,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold(),frameNameBound:nr(C)?this.frameNameBoundsCache.get(C):null},g)||!C&&e.hit.hasHitCommonBoundingBoxOfSelectedElements)){this.state.editingLinearElement?this.setState({editingLinearElement:null}):this.setState({selectedElementIds:Ni({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null}),Cu(this.interactiveCanvas,iu.AUTO);return}if(!n.locked&&n.type!=="freedraw"&&r&&this.setState((d)=>({selectedElementIds:Ni({...d.selectedElementIds,[r.id]:!0},d),showHyperlinkPopup:_s(r)&&!r.link?"editor":d.showHyperlinkPopup})),(n.type!=="selection"||yn(this.scene.getNonDeletedElements(),this.state)||!Po(this.state.previousSelectedElementIds,this.state.selectedElementIds))&&this.store.shouldCaptureIncrement(),e.drag.hasOccurred||o||s||l){let d=this.scene.getSelectedElements(this.state).filter(Nr);sS(d,this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements(),this.scene,V1(this.state),this.state.selectedLinearElement?.selectedPointsIndices??[],this.state.zoom)}if(n.type==="laser"){this.laserTrails.endPath();return}!n.locked&&n.type!=="freedraw"?(Oc(this.interactiveCanvas),this.setState({newElement:null,suggestedBindings:[],activeTool:un(this.state,{type:"selection"})})):this.setState({newElement:null,suggestedBindings:[]}),C&&this.lastPointerUpEvent&&this.lastPointerDownEvent&&this.lastPointerUpEvent.timeStamp-this.lastPointerDownEvent.timeStamp<300&&Wi.pointers.size<=1&&xg(C)&&this.isIframeLikeElementCenter(C,this.lastPointerUpEvent,e.origin.x,e.origin.y)&&this.handleEmbeddableCenterClick(C)})}clearSelection(e){this.setState((t)=>({selectedElementIds:Ni({},t),activeEmbeddable:null,selectedGroupIds:{},editingGroupId:t.editingGroupId&&e!=null&&O9(e,t.editingGroupId)?t.editingGroupId:null})),this.setState({selectedElementIds:Ni({},this.state),activeEmbeddable:null,previousSelectedElementIds:this.state.selectedElementIds})}getTextWysiwygSnappedToCenterPosition(e,t,r,i){if(i){let u=i.x+i.width/2,a=i.y+i.height/2,n=xW(i,r,this.scene.getNonDeletedElementsMap());if(n&&(u=n.x,a=n.y),Math.hypot(e-u,t-a)<Mde){let{x:o,y:s}=Mc({sceneX:u,sceneY:a},r);return{viewportX:o,viewportY:s,elementCenterX:u,elementCenterY:a}}}}getCanvasOffsets(){if(this.excalidrawContainerRef?.current){let e=this.excalidrawContainerRef.current,{left:t,top:r}=e.getBoundingClientRect();return{offsetLeft:t,offsetTop:r}}return{offsetLeft:0,offsetTop:0}}async updateLanguage(){let e=O3A.find((t)=>t.code===this.props.langCode)||X5;await Dze(e),this.setAppState({})}},mQr=()=>{(Qr.MODE===Js.TEST||Qr.DEV)&&(window.h=window.h||{},Object.defineProperties(window.h,{elements:{configurable:!0,get(){return this.app?.scene.getElementsIncludingDeleted()},set(A){return this.app?.scene.replaceAllElements(Sd(A))}},scene:{configurable:!0,get(){return this.app?.scene}}}))};mQr();var DQr=fQr,yQr=()=>{Array.prototype.at||Object.defineProperty(Array.prototype,"at",{value:function(A){if(A=Math.trunc(A)||0,A<0&&(A+=this.length),!(A<0||A>=this.length))return this[A]},writable:!0,enumerable:!1,configurable:!0}),Element.prototype.replaceChildren||(Element.prototype.replaceChildren=function(...A){this.innerHTML="",this.append(...A)})},wQr=yQr,bQr=({children:A})=>{let{FooterCenterTunnel:e}=Xs(),t=b0();return N(e.In,{children:N("div",{className:Re("footer-center zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-bottom":t.zenModeEnabled}),children:A})})};bQr.displayName="FooterCenter";var vQr=()=>N("svg",{viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"ExcalidrawLogo-icon",children:N("path",{d:"M39.9 32.889a.326.326 0 0 0-.279-.056c-2.094-3.083-4.774-6-7.343-8.833l-.419-.472a.212.212 0 0 0-.056-.139.586.586 0 0 0-.167-.111l-.084-.083-.056-.056c-.084-.167-.28-.278-.475-.167-.782.39-1.507.973-2.206 1.528-.92.722-1.842 1.445-2.708 2.25a8.405 8.405 0 0 0-.977 1.028c-.14.194-.028.361.14.444-.615.611-1.23 1.223-1.843 1.861a.315.315 0 0 0-.084.223c0 .083.056.166.111.194l1.09.833v.028c1.535 1.528 4.244 3.611 7.12 5.861.418.334.865.667 1.284 1 .195.223.39.473.558.695.084.11.28.139.391.055.056.056.14.111.196.167a.398.398 0 0 0 .167.056.255.255 0 0 0 .224-.111.394.394 0 0 0 .055-.167c.029 0 .028.028.056.028a.318.318 0 0 0 .224-.084l5.082-5.528a.309.309 0 0 0 0-.444Zm-14.63-1.917a.485.485 0 0 0 .111.14c.586.5 1.2 1 1.843 1.555l-2.569-1.945-.251-.166c-.056-.028-.112-.084-.168-.111l-.195-.167.056-.056.055-.055.112-.111c.866-.861 2.346-2.306 3.1-3.028-.81.805-2.43 3.167-2.095 3.944Zm8.767 6.89-2.122-1.612a44.713 44.713 0 0 0-2.625-2.5c1.145.861 2.122 1.611 2.262 1.75 1.117.972 1.06.806 1.815 1.445l.921.666a1.06 1.06 0 0 1-.251.25Zm.558.416-.056-.028c.084-.055.168-.111.252-.194l-.196.222ZM1.089 5.75c.055.361.14.722.195 1.056.335 1.833.67 3.5 1.284 4.75l.252.944c.084.361.223.806.363.917 1.424 1.25 3.602 3.11 5.947 4.889a.295.295 0 0 0 .363 0s0 .027.028.027a.254.254 0 0 0 .196.084.318.318 0 0 0 .223-.084c2.988-3.305 5.221-6.027 6.813-8.305.112-.111.14-.278.14-.417.111-.111.195-.25.307-.333.111-.111.111-.306 0-.39l-.028-.027c0-.055-.028-.139-.084-.167-.698-.666-1.2-1.138-1.731-1.638-.922-.862-1.871-1.75-3.881-3.75l-.028-.028c-.028-.028-.056-.056-.112-.056-.558-.194-1.703-.389-3.127-.639C6.087 2.223 3.21 1.723.614.944c0 0-.168 0-.196.028l-.083.084c-.028.027-.056.055-.224.11h.056-.056c.028.167.028.278.084.473 0 .055.112.5.112.555l.782 3.556Zm15.496 3.278-.335-.334c.084.112.196.195.335.334Zm-3.546 4.666-.056.056c0-.028.028-.056.056-.056Zm-2.038-10c.168.167.866.834 1.033.973-.726-.334-2.54-1.167-3.379-1.445.838.167 1.983.334 2.346.472ZM1.424 2.306c.419.722.754 3.222 1.089 5.666-.196-.778-.335-1.555-.503-2.278-.251-1.277-.503-2.416-.838-3.416.056 0 .14 0 .252.028Zm-.168-.584c-.112 0-.223-.028-.307-.028 0-.027 0-.055-.028-.055.14 0 .223.028.335.083Zm-1.089.222c0-.027 0-.027 0 0ZM39.453 1.333c.028-.11-.558-.61-.363-.639.42-.027.42-.666 0-.666-.558.028-1.144.166-1.675.25-.977.194-1.982.389-2.96.61-2.205.473-4.383.973-6.561 1.557-.67.194-1.424.333-2.066.666-.224.111-.196.333-.084.472-.056.028-.084.028-.14.056-.195.028-.363.056-.558.083-.168.028-.252.167-.224.334 0 .027.028.083.028.11-1.173 1.556-2.485 3.195-3.909 4.945-1.396 1.611-2.876 3.306-4.356 5.056-4.719 5.5-10.052 11.75-15.943 17.25a.268.268 0 0 0 0 .389c.028.027.056.055.084.055-.084.084-.168.14-.252.222-.056.056-.084.111-.084.167a.605.605 0 0 0-.111.139c-.112.111-.112.305.028.389.111.11.307.11.39-.028.029-.028.029-.056.056-.056a.44.44 0 0 1 .615 0c.335.362.67.723.977 1.028l-.698-.583c-.112-.111-.307-.083-.39.028-.113.11-.085.305.027.389l7.427 6.194c.056.056.112.056.196.056s.14-.028.195-.084l.168-.166c.028.027.083.027.111.027.084 0 .14-.027.196-.083 10.052-10.055 18.15-17.639 27.42-24.417.083-.055.111-.166.111-.25.112 0 .196-.083.251-.194 1.704-5.194 2.039-9.806 2.15-12.083v-.028c0-.028.028-.056.028-.083.028-.056.028-.084.028-.084a1.626 1.626 0 0 0-.111-1.028ZM21.472 9.5c.446-.5.893-1.028 1.34-1.5-2.876 3.778-7.65 9.583-14.408 16.5 4.607-5.083 9.242-10.333 13.068-15ZM5.193 35.778h.084-.084Zm3.462 3.194c-.027-.028-.027-.028 0-.028v.028Zm4.16-3.583c.224-.25.448-.472.699-.722 0 0 0 .027.028.027-.252.223-.475.445-.726.695Zm1.146-1.111c.14-.14.279-.334.446-.5l.028-.028c1.648-1.694 3.351-3.389 5.082-5.111l.028-.028c.419-.333.921-.694 1.368-1.028a379.003 379.003 0 0 0-6.952 6.695ZM24.794 6.472c-.921 1.195-1.954 2.778-2.82 4.028-2.736 3.944-11.532 13.583-11.727 13.75a1976.983 1976.983 0 0 1-8.042 7.639l-.167.167c-.14-.167-.14-.417.028-.556C14.49 19.861 22.03 10.167 25.074 5.917c-.084.194-.14.36-.28.555Zm4.83 5.695c-1.116-.64-1.646-1.64-1.34-2.611l.084-.334c.028-.083.084-.194.14-.277.307-.5.754-.917 1.257-1.167.027 0 .055 0 .083-.028-.028-.056-.028-.139-.028-.222.028-.167.14-.278.335-.278.335 0 1.369.306 1.76.639.111.083.223.194.335.305.14.167.363.445.474.667.056.028.112.306.196.445.056.222.111.472.084.694-.028.028 0 .194-.028.194a2.668 2.668 0 0 1-.363 1.028c-.028.028-.028.056-.056.084l-.028.027c-.14.223-.335.417-.53.556-.643.444-1.369.583-2.095.389 0 0-.195-.084-.28-.111Zm8.154-.834a39.098 39.098 0 0 1-.893 3.167c0 .028-.028.083 0 .111-.056 0-.084.028-.14.056-2.206 1.61-4.356 3.305-6.506 5.028 1.843-1.64 3.686-3.306 5.613-4.945.558-.5.949-1.139 1.06-1.861l.28-1.667v-.055c.14-.334.67-.195.586.166Z",fill:"currentColor"})}),kQr=()=>cA("svg",{viewBox:"0 0 450 55",xmlns:"http://www.w3.org/2000/svg",fill:"none",className:"ExcalidrawLogo-text",children:[N("path",{d:"M429.27 96.74c2.47-1.39 4.78-3.02 6.83-4.95 1.43-1.35 2.73-2.86 3.81-4.51-.66.9-1.4 1.77-2.23 2.59-2.91 2.84-5.72 5.09-8.42 6.87h.01ZM343.6 69.36c.33 3.13.58 6.27.79 9.4.09 1.37.18 2.75.25 4.12-.12-4.46-.27-8.93-.5-13.39-.11-2.08-.24-4.16-.4-6.24-.06 1.79-.11 3.85-.13 6.11h-.01ZM378.47 98.34c.01-.37.07-1.13.01-6.51-.11 1.9-.22 3.81-.31 5.71-.07 1.42-.22 2.91-.16 4.35.39.03.78.07 1.17.1-.92-.85-.76-2.01-.72-3.66l.01.01ZM344.09 86.12c-.09-2.41-.22-4.83-.39-7.24v12.21c.15-.05.32-.09.47-.14.05-1.61-.03-3.23-.09-4.83h.01ZM440.69 66.79c-.22-.34-.45-.67-.69-.99-3.71-4.87-9.91-7.14-15.65-8.55-1.05-.26-2.12-.49-3.18-.71 2.29.59 4.48 1.26 6.64 2.02 7.19 2.54 10.57 5.41 12.88 8.23ZM305.09 72.46l1.2 3.6c.84 2.53 1.67 5.06 2.46 7.61.24.78.5 1.57.73 2.36.22-.04.44-.08.67-.12a776.9 776.9 0 0 1-5.01-13.57c-.02.04-.03.09-.05.13v-.01ZM345.49 90.25v.31c1.48-.42 3.05-.83 4.66-1.2-1.56.25-3.12.52-4.66.89ZM371.02 90.22c0-.57-.04-1.14-.11-1.71-.06-.02-.12-.04-.19-.05-.21-.05-.43-.08-.65-.11.42.16.74.88.95 1.87ZM398.93 54.23c-.13 0-.27-.01-.4-.02l.03.4c.11-.15.23-.27.37-.38ZM401.57 62.28v-.15c-1.22-.24-2.86-.61-3.23-1.25-.09-.15-.18-.51-.27-.98-.09.37-.2.73-.33 1.09 1.24.56 2.52.98 3.83 1.29ZM421.73 88.68c-2.97 1.65-6.28 3.12-9.69 3.68v.18c4.72-.14 11.63-3.85 16.33-8.38-2.04 1.75-4.33 3.24-6.63 4.53l-.01-.01ZM411.28 80.92c-.05-1.2-.09-2.4-.15-3.6-.21 5.66-.46 11.38-.47 14.51.24-.02.48-.04.71-.07.15-3.61.05-7.23-.09-10.83v-.01Z",transform:"translate(-144.023 -51.76)"}),N("path",{d:"M425.38 67.41c-3.5-1.45-7.19-2.57-14.06-3.62.09 1.97.06 4.88-.03 8.12.03.04.06.09.06.15.19 1.36.28 2.73.37 4.1.25 3.77.39 7.55.41 11.33 0 1.38-.01 2.76-.07 4.13 1.4-.25 2.78-.65 4.12-1.15 4.07-1.5 7.94-3.78 11.28-6.54 2.33-1.92 5.13-4.49 5.88-7.58.63-3.53-2.45-6.68-7.97-8.96l.01.02ZM411.35 92.53v-.06l-.34.03c.11.01.22.03.34.03ZM314.26 64.06c-.23-.59-.47-1.17-.7-1.75.57 1.62 1.11 3.25 1.6 4.9l.15.54 2.35 6.05c.32.82.66 1.64.98 2.46-1.38-4.1-2.83-8.17-4.39-12.2h.01ZM156.82 103.07c-.18.13-.38.23-.58.33 1.32-.03 2.66-.2 3.93-.34.86-.09 1.72-.22 2.58-.33-2.12.1-4.12.17-5.94.34h.01ZM210.14 68.88s.03.04.05.07c.18-.31.39-.64.58-.96-.21.3-.42.6-.64.89h.01ZM201.65 82.8c-.5.77-1.02 1.56-1.49 2.37 1.11-1.55 2.21-3.1 3.2-4.59-.23.23-.49.51-.75.79-.32.47-.65.95-.96 1.43ZM194.03 98.66c-.33-.4-.65-.84-1.05-1.17-.24-.2-.07-.49.17-.56-.23-.26-.42-.5-.63-.75 1.51-2.55 3.93-5.87 6.4-9.28-.17-.08-.29-.28-.2-.49.04-.09.09-.17.13-.26-1.21 1.78-2.42 3.55-3.61 5.33-.87 1.31-1.74 2.64-2.54 4-.29.5-.63 1.04-.87 1.61.81.65 1.63 1.27 2.47 1.88-.09-.11-.18-.21-.27-.32v.01ZM307.79 82.93c-1-3.17-2.05-6.32-3.1-9.48-1.62 4.08-3.69 9.17-6.16 15.19 3.32-1.04 6.77-1.87 10.27-2.5-.32-1.08-.67-2.15-1.01-3.21ZM149.5 80.7c.05-1.71.04-3.43 0-5.14-.1 2.26-.16 4.51-.22 6.77-.02.73-.03 1.46-.04 2.19.14-1.27.2-2.55.24-3.82h.02ZM228.98 98.3c.39 1.25.91 3.03.94 3.91.06-.03.12-.07.17-.1.08-1.29-.55-2.65-1.11-3.81ZM307.72 53.36c.81.5 1.53 1.04 2.07 1.49-.38-.8-.78-1.58-1.21-2.35-.17.03-.34.06-.51.11-.43.12-.86.26-1.29.41.35-.01.53.1.94.34ZM283.69 96.14c3.91-7.25 6.89-13.35 8.88-18.15l1.1-2.66c-1.27 2.64-2.56 5.27-3.83 7.9-1.53 3.15-3.06 6.31-4.58 9.47-.87 1.81-1.76 3.62-2.54 5.47.04.02.07.04.11.07.05.05.1.09.15.14.05-.73.27-1.48.71-2.24ZM289.92 103.23s-.04.01-.05.03c0-.02.04-.03.05-.04.05-.05.11-.1.16-.15l.21-.21c-.55 0-1.5-.27-2.55-.72.4.26.8.51 1.22.74.24.13.48.26.73.37.05.02.1.03.14.05a.27.27 0 0 1 .08-.07h.01ZM269.23 68.49c-.39-.19-.82-.48-1.33-.87-3.06-1.56-6.31-2.78-9.36-2.35-3.5.49-5.7 1.11-7.74 2.44 5.71-2.6 12.82-2.07 18.44.79l-.01-.01ZM177.87 53.69l1.06.03c-.96-.22-2-.25-2.89-.3-4.95-.26-9.99.33-14.86 1.19-2.44.43-4.88.95-7.28 1.59 9.09-1.76 15.69-2.77 23.97-2.51ZM219.85 55.51c-.18.12-.36.27-.56.45-.45.53-.86 1.11-1.26 1.66-1.91 2.61-3.71 5.31-5.57 7.95l-.12.18 8.05-10.11c-.18-.05-.36-.1-.55-.13h.01ZM510.71 54.1c.12-.15.29-.3.53-.45.69-.4 3.72-.63 5.87-.74-.36-.02-.73-.04-1.09-.05-1.84-.03-3.67.09-5.49.35.05.3.12.59.18.88v.01ZM510.76 86.02c1.37-3.07 2.49-6.27 3.57-9.46.55-1.64 1.12-3.3 1.6-4.97-1.59 4.01-3.67 9.14-6.2 15.3.24-.08.5-.14.74-.22.1-.22.19-.44.29-.65ZM566.95 75.76c.11-.02.23.03.31.11-.05-.13-.09-.26-.14-.39-.05.09-.11.18-.17.28ZM511.33 86.41c3.08-.89 6.24-1.62 9.46-2.14-1.51-3.98-2.98-7.96-4.39-11.87-.05.15-.09.31-.14.46-1.02 3.32-2.15 6.61-3.39 9.85-.48 1.25-.98 2.49-1.53 3.7h-.01ZM578.24 74.45c.11-.44.23-.87.35-1.31-.31.7-.64 1.39-.97 2.08.09.21.19.4.28.61.12-.46.23-.92.35-1.38h-.01ZM520.62 53.11c-.09 0-.18-.01-.28-.02.38.34.29 1.08.93 2.53l6.65 17.15c2.2 5.68 4.69 11.36 7.41 16.87l1.06 2.17c-2.95-7.05-5.92-14.08-8.87-21.13-1.58-3.79-3.16-7.59-4.7-11.4-.78-1.92-1.73-3.89-2.25-5.91-.03-.1 0-.19.04-.26h.01ZM578.78 77.87c1.45-5.77 3.07-10.43 3.58-13.36.05-.34.16-.88.31-1.55-.67 1.79-1.37 3.56-2.08 5.33-.12.43-.23.86-.35 1.29-.65 2.43-1.29 4.86-1.9 7.3.14.33.29.65.43 1l.01-.01ZM545.3 94.66c.02-.44.03-.83.05-1.12.02-1.01.05-2.02.11-3.02.03-6.66-.46-14.33-1.46-22.8-.13-.42-.27-1.24-.56-2.89 0-.02 0-.04-.01-.06.62 6.61.95 13.25 1.32 19.87.17 3.08.33 6.16.52 9.23.02.25.03.52.04.78l-.01.01ZM580.77 102.81c.13.2.27.38.37.49.27-.11.53-.22.8-.32-.43.09-.82.05-1.17-.16v-.01ZM530.48 104.07h.33c-.36-.13-.71-.32-1.04-.56.14.24.3.47.45.7.06-.08.14-.13.26-.13v-.01ZM542.63 58.82c.06.23.11.47.15.71.14-.33.36-.62.7-.86-.28.05-.57.11-.85.15ZM583.81 57.87c.15-.7.29-1.41.42-2.11-.14.45-.28.9-.42 1.34-.46 1.44-.89 2.89-1.31 4.34.44-1.19.88-2.37 1.31-3.57ZM523.62 91.48c-4.66 1.17-9.05 2.89-14.02 5.27 4.65-1.84 9.48-3.29 14.28-4.63-.09-.22-.17-.41-.26-.64ZM460.64 78.3c-.04-2.9-.11-5.81-.28-8.71-.1-1.68-.17-3.43-.5-5.09-.07.02-.14.03-.2.05.3 6.54.45 12.17.51 17.12.17-.07.34-.14.51-.2 0-1.06-.01-2.11-.03-3.17h-.01ZM470.63 63.24c-3.38-.26-6.81.32-10.1 1.1.41 2.01.47 4.14.57 6.18.18 3.55.25 7.11.27 10.67 3.31-1.38 6.5-3.12 9.3-5.35 1.96-1.56 3.86-3.41 5.02-5.66.73-1.41 1.19-3.22.26-4.65-1.09-1.7-3.46-2.14-5.32-2.29ZM460.29 63.68c1-.24 2.01-.46 3.04-.65-1.15.16-2.37.38-3.71.69v.13c.07-.02.15-.04.22-.05.11-.13.3-.18.45-.11v-.01ZM457.24 100.96c.43-.03.86-.07 1.29-.11.14-.49.27-.99.38-1.49-.44.7-1 1.23-1.67 1.6ZM482.88 104.98c-.18.23-.36.38-.55.47.14.09.27.19.4.28a70.76 70.76 0 0 0 4.37-4.63c.76-.89 1.52-1.81 2.19-2.77-.3-.27-.61-.53-.92-.79-.07 1.94-4.62 6.32-5.49 7.45v-.01Z",transform:"translate(-144.023 -51.76)"}),N("path",{d:"M474.36 63.31c-.4-.16-.84-.27-1.29-.37 1.56.42 3.08 1.22 3.76 2.74.62 1.4.32 2.95-.28 4.32.7-1.22.94-2.34.74-3.47-.24-1.33-1.19-2.54-2.93-3.21v-.01ZM477.34 89.18c-1.2-.81-2.4-1.62-3.6-2.42-.14.1-.26.19-.4.29 1.4.67 2.73 1.39 4 2.13ZM465.88 93.85c.37.25.74.5 1.1.75.46.32.92.65 1.38.97-1.57-1.2-2.01-1.61-2.49-1.72h.01ZM574.92 90.06c-2.28-5.21-4.93-11.13-5.67-12.26-.1-.15-1.57-3.01-1.63-3.08 0 0-.01.02-.02.02.4 1.37 1.09 2.69 1.65 3.99 2.14 4.95 4.36 9.86 6.67 14.73.6 1.26 1.21 2.52 1.83 3.78-.75-2.01-1.64-4.45-2.83-7.18ZM448.73 65.29c.1.2.22.38.34.57.22-.02.43-.06.65-.08v-.08c-.14-.05-.25 0-.99-.41ZM460.16 94.81c-.02.31-.06.59-.1.89-.03 1.71-.33 3.43-.79 5.07.15-.02.3-.03.45-.05.01-.04.02-.08.03-.11.09-.34.15-.69.2-1.03.17-1.07.25-2.16.33-3.24.05-.69.08-1.39.12-2.08-.27.1-.27.26-.24.57v-.02Z",transform:"translate(-144.023 -51.76)"}),N("path",{d:"m328.67 98.12-3.22-6.58c-1.29-2.63-2.53-5.29-3.72-7.97-.25-.85-.52-1.69-.79-2.53-.81-2.57-1.67-5.12-2.55-7.67-1.92-5.53-3.9-11.08-6.32-16.41-.72-1.58-1.46-3.44-2.63-4.79-.03-.17-.16-.29-.34-.36a.282.282 0 0 0-.23-.04c-.06-.01-.12 0-.18.01-.74.06-1.5.38-2.19.61-2.22.77-4.4 1.64-6.63 2.38-.03-.08-.06-.16-.09-.25-.15-.42-.82-.24-.67.19.03.09.07.19.1.28l-.18.06c-.36.11-.28.6 0 .68.18 1.18.63 2.36.98 3.49.03.09.06.17.08.26-.08.23-.17.46-.24.64-.37.98-.79 1.94-1.21 2.9-1.27 2.89-2.62 5.75-3.98 8.6-3.18 6.67-6.44 13.31-9.64 19.97-1.08 2.25-2.2 4.5-3.15 6.81-.13.32.24.5.5.37 1.34 1.33 2.84 2.5 4.4 3.57.65.44 1.31.87 2.01 1.24.4.22.86.48 1.33.5.24.01.35-.19.33-.37.11-.1.21-.21.28-.28.41-.41.81-.84 1.2-1.26.85-.92 1.69-1.87 2.5-2.84 6.31-2.34 12.6-4.31 18.71-5.84 2.14 5.3 3.43 8.43 3.97 9.58.55 1.05 1.15 1.88 1.82 2.52 1.32.56 6.96-.03 9.23-1.96.87-1.28 1.19-2.67.93-4.15-.09-.5-.22-.95-.4-1.33l-.01-.03Zm-20.09-45.61c.43.77.83 1.56 1.21 2.35-.54-.45-1.27-.99-2.07-1.49-.42-.24-.6-.35-.94-.34.43-.15.85-.29 1.29-.41.17-.05.34-.08.51-.11Zm-25.86 45.66c.78-1.85 1.67-3.66 2.54-5.47 1.51-3.16 3.05-6.31 4.58-9.47 1.28-2.63 2.56-5.26 3.83-7.9l-1.1 2.66c-1.99 4.79-4.97 10.9-8.88 18.15-.43.76-.66 1.51-.71 2.24-.05-.05-.1-.09-.15-.14a.259.259 0 0 0-.11-.07Zm6.24 4.71c-.42-.23-.82-.48-1.22-.74 1.05.45 2 .72 2.55.72l-.21.21c-.05.05-.11.1-.16.15-.01.01-.04.03-.05.04 0-.02.03-.02.05-.03a.27.27 0 0 0-.08.07c-.05-.02-.1-.03-.14-.05-.25-.1-.49-.24-.73-.37h-.01Zm15.73-29.43c1.05 3.15 2.1 6.31 3.1 9.48.34 1.06.69 2.13 1.01 3.21-3.5.63-6.95 1.46-10.27 2.5 2.48-6.03 4.54-11.11 6.16-15.19Zm4.79 12.57c-.23-.79-.49-1.58-.73-2.36-.79-2.54-1.63-5.08-2.46-7.61l-1.2-3.6c.02-.04.04-.09.05-.13 1.6 4.45 3.28 9 5.01 13.57l-.67.12v.01Zm5.83-18.27-.15-.54c-.49-1.64-1.03-3.28-1.6-4.9.23.58.47 1.17.7 1.75 1.56 4.03 3.01 8.1 4.39 12.2-.33-.82-.67-1.64-.98-2.46l-2.35-6.05h-.01ZM390.43 79.37c-.13-10.43-.22-17.5-.24-19.97-.24-1.6.21-2.88-.65-3.65-.14-.13-.32-.23-.52-.32h.03c.45 0 .45-.69 0-.7-1.75-.03-3.5-.04-5.25-.14-1.38-.08-2.76-.21-4.15-.31-.07 0-.12.01-.17.04-.21-.07-.47.03-.45.31l.03.45c-.11.14-.19.3-.22.5-.21 1.26-.32 13.67-.36 23.59-.32 5.79-.67 11.57-.97 17.36-.09 1.73-.29 3.54-.21 5.3-.39.02-.38.64.04.69v.12c.05.44.74.45.7 0v-.06c1.1.09 2.2.21 3.3.3 1.14.19 2.44.2 3.29.17 1.73-.05 2.92-.05 3.8-.37.45-.05.9-.11 1.35-.17.44-.06.25-.73-.19-.67h-.01c.24-.32.45-.72.62-1.25.66-1.84.41-6.36.34-11.33l-.13-9.9.02.01Zm-12.26 18.17c.09-1.91.2-3.81.31-5.71.06 5.38 0 6.14-.01 6.51-.05 1.65-.21 2.81.72 3.66-.39-.04-.78-.07-1.17-.1-.06-1.44.09-2.93.16-4.35l-.01-.01ZM588.97 53.85c-2.06-.25-3.17-.51-3.76-.6a.3.3 0 0 1 .04-.08c.22-.39-.39-.75-.6-.35-.56 1.02-.9 2.19-1.26 3.29-.61 1.88-1.17 3.78-1.72 5.68-.63 2.19-1.24 4.39-1.83 6.59-.81 2.03-1.67 4.05-2.61 6.03-1.7-3.64-3.11-6.04-4.03-7.57-2.26-3.74-2.85-5.48-3.57-6.08l.31-.09c.43-.12.25-.8-.19-.67-1.06.3-2.12.6-3.17.95-.93.32-1.85.69-2.76 1.07-.13.05-.19.16-.22.27-.04.02-.08.05-.11.07-.04-.06-.07-.12-.11-.18a.354.354 0 0 0-.48-.12c-.16.09-.22.32-.13.48l.33.54c0 .09.02.18.06.28.51 1.16.78 1.38.72 1.47-2.42 3.44-5.41 7.86-6.2 9.1-1.27 1.97-2.01 3.14-2.45 3.84l-.91-6.56-.43-4.1c-.19-1.85-.37-3.23-.53-4.13-.19-1.1-.3-2.15-.45-3.16-.2-1.36-.29-2.06-.47-2.42h.04c.45.02.45-.68 0-.7-3.43-.16-6.81.94-10.17 1.48-.24-.22-.73-.04-.58.32.24.59.33 1.25.43 1.87.17 1.06.29 2.13.4 3.2.32 3.09.53 6.2.74 9.3.44 6.75.77 13.51 1.17 20.26.11 1.95.13 3.96.46 5.89.05.3.37.31.55.14.74 1.71 2.87 1.27 6.13 1.27 1.34 0 2.39.04 2.99-.11.02.32.48.53.63.18 3.61-8.26 7.41-16.46 12.05-24.2.03-.05.04-.1.05-.15.3.73.64 1.45.94 2.16.97 2.26 1.97 4.52 2.98 6.76 2.26 5.03 4.54 10.07 7.09 14.96.47.9.94 1.79 1.47 2.65.2.32.4.67.66.96-.18.25 0 .68.34.54.91-.38 1.82-.75 2.76-1.07 1.04-.35 2.11-.65 3.17-.95.39-.11.28-.66-.07-.68.62-.4.95-.96.87-1.91-.3-3.34.72-7.47.86-8.52l2.14-11.43c1.75-10.74 3.13-17.51 3.23-20.86.02-.49.08-2.84.13-3.24.17-1.25.48-1-4.96-1.65l.03-.02Zm-46.19 5.67c-.04-.24-.09-.48-.15-.71l.85-.15c-.34.24-.56.53-.7.86Zm1.95 25.12c-.36-6.63-.7-13.26-1.32-19.87 0 .02 0 .04.01.06.29 1.65.44 2.47.56 2.89 1 8.46 1.5 16.14 1.46 22.8-.06.99-.1 2-.11 3.02-.01.29-.03.68-.05 1.12-.01-.26-.03-.53-.04-.78-.19-3.08-.35-6.16-.52-9.23l.01-.01Zm36.4 18.66c-.11-.11-.24-.29-.37-.49.35.21.74.26 1.17.16-.27.11-.53.22-.8.32v.01Zm-.89-33.72c.12-.43.23-.86.35-1.29.71-1.77 1.41-3.55 2.08-5.33-.15.68-.26 1.22-.31 1.55-.5 2.94-2.13 7.59-3.58 13.36-.15-.35-.29-.66-.43-1 .61-2.44 1.25-4.87 1.9-7.3l-.01.01Zm3.56-12.48c.14-.44.28-.89.42-1.34-.13.7-.27 1.41-.42 2.11-.43 1.19-.86 2.38-1.31 3.57.42-1.45.85-2.9 1.31-4.34Zm-5.22 16.05c-.11.44-.23.87-.35 1.31-.12.46-.23.92-.35 1.38-.1-.22-.19-.4-.28-.61.34-.69.66-1.38.97-2.08h.01Zm-11.64 2.62c.06-.1.12-.19.17-.28.05.13.09.26.14.39a.398.398 0 0 0-.31-.11Zm2.3 2.98c-.56-1.3-1.25-2.63-1.65-3.99 0 0 .01-.02.02-.02.06.08 1.52 2.93 1.63 3.08.73 1.13 3.38 7.04 5.67 12.26 1.2 2.73 2.08 5.17 2.83 7.18-.62-1.25-1.23-2.51-1.83-3.78-2.31-4.87-4.53-9.78-6.67-14.73ZM275.92 87.03c-1.06-2.18-1.13-3.45-2.44-2.93-1.52.57-2.94 1.3-4.5 2.1-1.4.72-2.68 1.44-3.92 2.12.01-.25-.24-.5-.51-.34-4.8 2.93-12.41 4.7-17.28 1.31-1.98-1.77-3.32-4.15-3.97-5.78-.29-.95-.49-1.94-.63-2.93-.14-3.34 1.58-6.53 3.9-9.12.8-.79 1.68-1.51 2.66-2.12 3.7-2.3 8.22-3.07 12.51-2.51 2.71.35 5.32 1.24 7.71 2.55.39.22.75-.39.35-.6-.18-.1-.37-.18-.55-.27.56.27 1.03.33 1.51.19l-.48.39c-.15.11-.23.3-.13.48.09.15.33.24.48.13 1.3-.97 2.46-2.09 3.45-3.37.37-.29.64-.6.65-.97v-.02c.08-.33-.03-.7-.21-1.08-.31-.87-.98-2.01-2.19-3.26-2.43-2.52-3.79-3.45-5.68-4.26-1.14-.49-3.12-1.06-4.42-1.23-3.28-.42-10.64-1.21-18.18 4.11-7.74 5.46-11.94 12.3-12.23 20.61-.08 2.06.04 3.98.34 5.71.74 4.18 2.57 8 5.44 11.34 4.26 4.99 9.76 7.52 16.34 7.52 4.85 0 9.69-1.77 14.89-4.62.23-.12.45-.23.68-.35 2.19-1.1 4.37-2.23 6.46-3.5.49-.3 1.03-.61 1.5-.98 1.47-.87 1.11-1.12.49-2.95-.39-1.14-.76-2.7-2.06-5.36l.02-.01Zm-17.38-21.76c3.05-.42 6.31.79 9.36 2.35.51.39.94.68 1.33.87-5.61-2.86-12.72-3.39-18.44-.79 2.05-1.33 4.24-1.95 7.74-2.44l.01.01ZM443.67 72.67c-.4-2.2-1.15-4.33-2.37-6.22-1.49-2.32-3.58-4.19-5.91-5.64-6.17-3.81-13.75-5.11-20.83-6.01-3.23-.41-6.47-.69-9.72-.92l-1.39-.12c-.85-.07-1.52-.1-2.05-.1-1.08-.06-2.17-.12-3.25-.17-.08 0-.14.02-.19.05-.1.05-.18.14-.16.3.27 2.55-.01 5.12-.92 7.52-.15.38.4.56.62.28 1.32.59 2.68 1.05 4.08 1.37 0 2.78-.14 7.58-.33 12.91 0 0 0 .02-.01.03-.61 3.66-.79 7.42-1 11.12-.23 4.01-.43 8.03-.44 12.05 0 .64 0 1.28.03 1.93.02.31 0 .68.15.96.06.11.14.16.24.17-.2.17-.21.54.11.59 3.83.67 7.78.71 11.68.25 2.3-.19 4.87-.65 7.65-1.56 1.85-.54 3.67-1.18 5.43-1.91 7.2-3.02 14.31-8.07 17.35-15.53.76-1.86 1.17-3.8 1.31-5.75.3-1.93.28-3.82-.09-5.58l.01-.02Zm-19.32-15.42c5.74 1.41 11.94 3.68 15.65 8.55.25.32.47.65.69.99-2.3-2.82-5.68-5.69-12.88-8.23-2.16-.76-4.35-1.43-6.64-2.02 1.06.21 2.13.45 3.18.71Zm-25.82-3.04c.13 0 .27.01.4.02-.14.1-.26.23-.37.38 0-.13-.02-.26-.03-.4Zm34.82 22.17c-.75 3.09-3.55 5.66-5.88 7.58-3.35 2.76-7.21 5.03-11.28 6.54-1.33.49-2.71.9-4.12 1.15.06-1.38.08-2.76.07-4.13-.02-3.78-.16-7.56-.41-11.33-.09-1.37-.18-2.74-.37-4.1 0-.06-.03-.11-.06-.15.09-3.25.12-6.16.03-8.12 6.86 1.05 10.56 2.17 14.06 3.62 5.52 2.28 8.59 5.44 7.97 8.96l-.01-.02Zm-22 16.15c-.12 0-.23-.02-.34-.03l.34-.03v.06Zm-.69-.7c0-3.13.26-8.84.47-14.51.06 1.2.11 2.41.15 3.6.15 3.6.25 7.23.09 10.83-.24.03-.48.05-.71.07v.01Zm-12.33-30.94c.37.63 2.01 1.01 3.23 1.25v.15c-1.31-.31-2.59-.73-3.83-1.29.12-.36.23-.72.33-1.09.08.48.18.84.27.98Zm13.7 31.65v-.18c3.41-.56 6.71-2.02 9.69-3.68 2.31-1.28 4.59-2.78 6.63-4.53-4.69 4.53-11.61 8.24-16.33 8.38l.01.01Zm24.07-.75c-2.05 1.93-4.37 3.56-6.83 4.95 2.7-1.78 5.52-4.03 8.42-6.87.82-.82 1.56-1.69 2.23-2.59-1.08 1.65-2.38 3.16-3.81 4.51h-.01ZM187.16 92.14c-.79-2.47-2.1-7.12-3.1-6.87-.19-.01-2.09.77-4.08 1.54-3.06 1.18-5.91 2.13-10.09 2.82-2.74.42-5.87 1.01-10.61 1.06.04-3.34.05-6.01.05-7.99 7.97-.65 12.33-2.11 16.37-3.55 1.11-.39 2.69-1.01 2.63-1.8-.08-.35-.55-1.39-1.17-2.61-.47-1.16-.98-2.31-1.61-3.38-.42-.71-1.04-1.69-1.86-2.06-.11-.08-.22-.13-.29-.12-.02 0-.04 0-.07.01-.19-.04-.39-.05-.6-.01-.17.03-.24.15-.25.28-.04.02-.09.04-.14.05-4.33 1.48-8.85 2.33-13.24 3.61a499.1 499.1 0 0 0-.31-8.19c4.51-.99 8.88-1.38 13.11-1.82 3.68-.38 6.28.12 7.47.34.59.11.9.16 1.16.18h.1c-.1.37.44.66.62.28.02-.04.03-.08.05-.13.15.2.53.22.62-.1.17-.58.19-1.21.21-1.81v-.36c.03-.15.05-.3.07-.45.52-2.47.33-5.09-.64-7.44-.11-.27-.44-.28-.6-.14-.08-.21-.15-.42-.24-.62-.19-.41-.79-.05-.6.35.03.07.05.15.09.22-.98-.42-2.15-.54-3.17-.63-2.17-.19-4.37-.14-6.54 0-5.7.35-11.4 1.3-16.91 2.79-2.08.56-4.13 1.22-6.14 2-4.54 1.05-3.79 1.51-2.17 6.07.18.51.46 1.68.54 1.94.82 2.47 1.08 2.13 3.1 2.13s0 .05 0 .08h.52c-.48 2.66-.51 5.45-.62 8.13-.15 3.48-.22 6.96-.28 10.45 0 .41-.01.82-.02 1.23-.16.29-.33.57-.51.85-.05.38-.09.77-.14 1.18-.42 3.52-.59 6.48-.52 8.8v.34c.02.47.05.76.06.87.16 1.57-.26 3.47 1.35 3.79 1.61.32 3.5.55 4.85.55.11 0 .22-.02.33-.02 1.79.24 3.67.05 5.45-.12 2.85-.28 5.69-.7 8.51-1.19 3.03-.53 6.05-1.14 9.04-1.86 2.4-.58 4.82-1.19 7.13-2.06.51-.19 1.73-.57 2.46-1.14 1.81-.68 2.18-1 1.57-2.67-.23-.62-.48-1.49-.91-2.78l-.03-.02Zm-11.12-38.71c.89.05 1.93.08 2.89.3-.33 0-.68-.02-1.06-.03-8.28-.26-14.88.75-23.97 2.51 2.41-.64 4.85-1.16 7.28-1.59 4.87-.86 9.91-1.45 14.86-1.19Zm-26.53 22.13c.03 1.71.04 3.43 0 5.14-.04 1.27-.11 2.55-.24 3.82 0-.73.02-1.46.04-2.19.05-2.26.12-4.51.22-6.77h-.02Zm6.73 27.85c.2-.1.4-.21.58-.33 1.82-.17 3.82-.24 5.94-.34-.86.11-1.72.24-2.58.33-1.27.14-2.61.31-3.93.34h-.01ZM534.48 85.44c-3.52-8.38-7.07-16.75-10.5-25.17-.63-1.54-1.25-3.09-1.86-4.65-.31-.8-.65-1.6-.87-2.43-.04-.17-.17-.24-.31-.25.1-.2 0-.51-.29-.53-1.59-.08-3.18-.22-4.78-.25-1.96-.03-3.91.13-5.84.42-.31.05-.31.38-.13.56-.03.06-.05.14-.04.22.23 1.54.63 3.06 1.16 4.53.13.35.27.7.41 1.06l-2.68 6.18c-.11.03-.2.09-.25.22-.67 1.9-1.52 3.73-2.34 5.56a536.85 536.85 0 0 1-3.9 8.45c-2.64 5.64-5.34 11.25-7.91 16.93-.44.97-.88 1.94-1.29 2.93-.2.48-.47 1-.55 1.52v.05c-.02.12.02.26.16.34 1.19.73 2.41 1.41 3.66 2.05 1.2.62 2.45 1.25 3.76 1.61.43.12.62-.55.19-.67-1.13-.31-2.2-.83-3.24-1.36 1.09.36 2.1.69 2.75.93 2.82 1.01 2.38 1.1 4.3-3.75 2.1-1.09 4.34-1.96 6.53-2.79 4.35-1.64 8.8-3.03 13.27-4.29.82 2.01 1.77 3.97 2.72 5.92.35.83.62 1.45.79 1.82.22.42.45.8.69 1.15.17.33.33.67.5 1 .42.8.84 1.63 1.4 2.35.23.29.6 0 .55-.31 1.53-.02 3.06-.07 4.58-.27.92-.12 1.82-.32 2.71-.54 1.39-.27 3.85-1.11 3.74-1.42-.67-1.96-1.55-3.87-2.34-5.78-1.57-3.78-3.16-7.56-4.75-11.33v-.01Zm-11.65-26.16c1.54 3.81 3.12 7.6 4.7 11.4 2.94 7.05 5.91 14.09 8.87 21.13l-1.06-2.17c-2.71-5.51-5.2-11.19-7.41-16.87l-6.65-17.15c-.65-1.45-.55-2.19-.93-2.53.09 0 .18.01.28.02a.29.29 0 0 0-.04.26c.52 2.02 1.47 3.98 2.25 5.91h-.01Zm-6.58 13.58c.05-.15.09-.31.14-.46 1.41 3.92 2.88 7.9 4.39 11.87-3.22.52-6.38 1.25-9.46 2.14.55-1.22 1.05-2.46 1.53-3.7 1.24-3.24 2.37-6.53 3.39-9.85h.01Zm-.23-20c.36 0 .73.03 1.09.05-2.15.1-5.18.33-5.87.74-.24.15-.41.3-.53.45-.06-.29-.13-.58-.18-.88 1.82-.26 3.65-.39 5.49-.35v-.01Zm-.09 18.72c-.49 1.67-1.05 3.33-1.6 4.97-1.07 3.19-2.19 6.38-3.57 9.46-.09.21-.19.43-.29.65-.25.07-.5.14-.74.22 2.53-6.16 4.61-11.29 6.2-15.3Zm-6.34 25.16c4.97-2.38 9.37-4.1 14.02-5.27l.26.64c-4.8 1.35-9.63 2.8-14.28 4.63Zm20.17 6.76c.33.23.68.42 1.04.56h-.33c-.12 0-.21.06-.26.13-.15-.23-.31-.45-.45-.7v.01ZM226.57 91.75c-3.55-4.74-6.68-9.11-9.31-12.99 9.2-15.25 10.05-17.81 10.35-18.38.17-.34 1.09-2.27.64-2.53-1.13-.65-1.03-.65-2.97-1.71-1.19-.65-3.04-1.61-4.53-2.12-1.71-.59-1.24-.36-3 2.77-.06.1-.11.2-.17.3-.75 1.02-1.48 2.05-2.2 3.09-1.88 2.71-3.73 5.45-5.69 8.1-3.68-4.91-6.88-8.76-9.51-11.43-.15-.15-.3-.29-.46-.42-1.27-1.28-7.24 3.53-7.93 5.58-.09.09-.19.16-.28.25-.27.26.03.64.33.58.19.65.5 1.29.94 1.91 3.85 5.06 7.19 9.76 9.94 14-1.23 2.61-3.06 5-4.67 7.38l-2.28 3.33c-.5.66-.93 1.23-1.29 1.69-.67.93-2.09 2.61-2.3 3.87-.51.85-1.16 1.84-1.29 2.83-.06.44.61.63.67.19.01-.08.04-.15.06-.22 1.36 1.08 2.76 2.11 4.19 3.11 1.3.91 2.62 1.85 4.04 2.56.21.1.4 0 .48-.17.24.07.48.14.72.2.44.1.62-.57.19-.67-2.02-.48-3.77-1.57-5.23-3.02-.47-.46-.9-.96-1.32-1.46 1.74 1.35 4.2 2.89 5.89 4.14 1.39 1.03 2.85-2.27 4.22-4.2 1.86-2.64 3.96-5.86 5.52-8.29l10.39 14.51c.67.81 1.14 1.21 1.57 1.36-.05.24.12.51.41.4 1.53-.58 3.05-1.19 4.54-1.87 1.52-.69 3.06-1.45 4.36-2.5a.28.28 0 0 0 .12-.23c1.66-1.1.81-1.74-1.41-4.91-1.13-1.58-1.71-2.36-3.7-5.01l-.03-.02Zm2.41 6.54c.56 1.15 1.19 2.52 1.11 3.81-.06.04-.12.07-.17.1-.03-.88-.55-2.66-.94-3.91Zm-16.51-32.73c1.86-2.65 3.65-5.35 5.57-7.95.4-.55.81-1.13 1.26-1.66.19-.18.38-.33.56-.45.18.03.36.08.55.13l-8.05 10.11.12-.18h-.01ZM192.7 95.48c.79-1.37 1.66-2.69 2.54-4 1.19-1.79 2.4-3.56 3.61-5.33-.04.09-.09.17-.13.26-.1.22.03.41.2.49-2.47 3.42-4.89 6.73-6.4 9.28.21.24.4.48.63.75-.24.07-.4.36-.17.56.4.33.72.77 1.05 1.17.09.11.18.21.27.32-.84-.61-1.66-1.24-2.47-1.88.24-.57.58-1.11.87-1.61v-.01Zm7.46-10.32c.47-.81.98-1.59 1.49-2.37.31-.48.64-.95.96-1.43.26-.29.52-.56.75-.79-.99 1.48-2.09 3.03-3.2 4.59Zm10.03-16.22s-.03-.05-.05-.07c.22-.29.43-.59.64-.89-.2.32-.4.65-.58.96h-.01ZM371.54 87.96c-.01-.08-.01-.16-.03-.23-.06-.38-.58-.29-.66.03-.3-.05-.6-.08-.81-.11-1.14-.15-2.29-.19-3.44-.2 1.04-.09 2.09-.18 3.14-.23.45-.02.45-.72 0-.7-6.57.35-13.14 1.23-19.65 2.11-1.53.21-3.05.42-4.57.68-.01 0-.02.01-.04.01-.04-3.33-.13-6.66-.24-9.99-.19-5.7-.4-11.41-.88-17.1-.13-1.51-.23-3.07-.49-4.58 0-.25 0-.48-.02-.68-.06-1.19-.04-2.61-.68-2.78-.16-.07-.72-.16-1.5-.24.22-.17.16-.62-.2-.63-1.19-.04-2.39.09-3.57.23-1.2.14-2.41.32-3.59.6-.16-.1-.41-.06-.5.12-.06.02-.13.03-.19.05-.35.1-.29.55-.03.66-.26.6-.19 2.27-.21 3-.02.66-.66 33.73-.9 40.3-.03.65.06 1.12.04 1.45-.16 3.05.87 4.96 6.34 3.93 1.09-.08 2.75-.77 5.36-1.43 4.13-1.04 5.78-1.52 6.2-1.65 6.43-1.69 6.78-1.97 11.72-2.43.55-.05 4.8-.38 6.03-.3.64.04 1.19.07 1.65.1.09 0 .16-.03.24-.05.1.27.56.33.66-.02.39-1.32.61-2.71.78-4.08.2-1.61.29-3.24.15-4.86.24.03.52-.23.38-.53-.09-.2-.27-.33-.49-.43v-.02Zm-.63.56c.07.57.11 1.14.11 1.71-.21-.99-.53-1.71-.95-1.87.22.03.44.06.65.11.06.01.12.04.19.05Zm-25.41 1.73c1.54-.36 3.1-.64 4.66-.89-1.61.37-3.18.77-4.66 1.2v-.31Zm-.86-7.37c-.07-1.37-.16-2.75-.25-4.12-.21-3.13-.45-6.27-.79-9.4.02-2.25.08-4.31.13-6.11.16 2.08.29 4.16.4 6.24.23 4.46.38 8.93.5 13.39h.01Zm-.94-4c.16 2.41.29 4.83.39 7.24.06 1.6.14 3.22.09 4.83-.15.05-.32.09-.47.14V78.88h-.01ZM483.72 92.83c-3.05-2.28-6.22-4.4-9.38-6.51 8.86-6.49 13.49-12.95 13.73-19.23.04-.76 0-1.5-.13-2.2-.67-3.82-3.5-6.68-8.39-8.48.13.04.27.08.4.13 3.92 1.39 7.74 4.23 8.5 8.56.34 1.95-.05 3.96-.98 5.69-.21.4.39.75.6.35 1.86-3.46 1.46-7.55-.97-10.63-3.53-4.47-9.76-5.88-15.16-6.16-2.32-.12-4.64-.04-6.95.19-6 .32-12.71 1.68-17.63 3.21-.37.11-.67.23-.92.35-.2-.17-.62.02-.57.37v.03c-.64.68-.18 1.64.48 3.21.38.91.67 1.89 1.15 2.58.32.76.68 1.51 1.13 2.19.14.21.38.19.53.07.19-.02.38-.05.57-.08v1.57c-.06.06-.1.13-.11.23-.27 4.18-.34 8.38-.48 12.57l-.3 9.03c-.24 3.91-.44 6.77-.46 7.26-.05.88-.11 1.95.07 2.81-.01.22-.02.43-.04.65 0 .11-.02.23-.03.35 0 .05-.03.27-.01.16-.05.4.5.59.64.28.05.04.12.08.2.08 1.75.13 3.5.28 5.25.3 1.69.02 3.38-.12 5.06-.32.08.23.36.39.55.15.06-.08.11-.17.16-.26.18-.09.24-.32.18-.48.05-.2.1-.4.13-.6.16-.86.25-1.74.33-2.62.11-1.17.17-2.34.23-3.51.15-.01.32-.03.52-.04.36-.03 1.73-.15 2.06-.15.39 0 .7-.02.95-.04 1.76 1.11 3.45 2.35 5.14 3.55 2.83 2.01 5.64 4.04 8.47 6.04 1.42 1 2.85 2 4.29 2.97.1.06.19.07.27.04.08 0 .17-.02.25-.1 1.61-1.56 3.15-3.18 4.6-4.88.75-.88 1.49-1.78 2.15-2.73.01.01.03.02.04.03.34.3.83-.2.49-.49-2.16-1.9-4.34-3.76-6.64-5.48l.03-.01Zm-6.38-3.65a55.72 55.72 0 0 0-4-2.13c.14-.1.26-.19.4-.29 1.2.81 2.4 1.61 3.6 2.42Zm-20.1 11.78c.67-.37 1.23-.91 1.67-1.6-.11.5-.24 1-.38 1.49-.43.04-.86.08-1.29.11Zm2.38-37.24c1.34-.31 2.56-.52 3.71-.69-1.03.19-2.04.41-3.04.65-.14-.07-.34-.02-.45.11-.07.02-.15.04-.22.05v-.13.01Zm.04.84c.07-.02.14-.03.2-.05.34 1.66.41 3.41.5 5.09.17 2.9.24 5.81.28 8.71l.03 3.17c-.17.07-.34.14-.51.2-.06-4.96-.21-10.58-.51-17.12h.01Zm16.04 5.62c-1.16 2.25-3.06 4.1-5.02 5.66-2.8 2.23-5.99 3.97-9.3 5.35-.01-3.56-.09-7.12-.27-10.67-.1-2.04-.16-4.16-.57-6.18 3.3-.78 6.72-1.36 10.1-1.1 1.85.14 4.23.59 5.32 2.29.92 1.43.46 3.24-.26 4.65Zm.85-.18c.6-1.37.9-2.92.28-4.32-.67-1.52-2.2-2.32-3.76-2.74.46.1.89.21 1.29.37 1.74.67 2.69 1.88 2.93 3.21.2 1.13-.05 2.25-.74 3.47V70Zm-27.47-4.14c-.12-.19-.23-.38-.34-.57.74.42.85.36.99.41v.08c-.22.03-.43.06-.65.08Zm11.21 30.46c-.08 1.08-.16 2.17-.33 3.24-.05.35-.11.69-.2 1.03 0 .04-.02.07-.03.11-.15.02-.3.04-.45.05.45-1.64.76-3.36.79-5.07.03-.29.08-.57.1-.89-.03-.31-.03-.47.24-.57-.04.69-.07 1.39-.12 2.08v.02Zm5.6-2.47c.48.11.92.52 2.49 1.72-.46-.32-.92-.65-1.38-.97-.37-.25-.73-.5-1.1-.75h-.01Zm21.23 7.24a70.76 70.76 0 0 1-4.37 4.63c-.14-.09-.27-.19-.4-.28.19-.09.37-.24.55-.47.87-1.14 5.43-5.51 5.49-7.45.31.26.62.53.92.79-.67.97-1.42 1.88-2.19 2.77v.01Z",fill:"currentColor",transform:"translate(-144.023 -51.76)"})]}),FQr=({style:A,size:e="small",withText:t})=>cA("div",{className:`ExcalidrawLogo is-${e}`,style:A,children:[N(vQr,{}),t&&N(kQr,{})]}),CmA=({icon:A,shortcut:e,children:t})=>{let r=Do();return cA(et,{children:[N("div",{className:"welcome-screen-menu-item__icon",children:A}),N("div",{className:"welcome-screen-menu-item__text",children:t}),e&&!r.editor.isMobile&&N("div",{className:"welcome-screen-menu-item__shortcut",children:e})]})};CmA.displayName="WelcomeScreenMenuItemContent";var eR=({onSelect:A,children:e,icon:t,shortcut:r,className:i="",...u})=>N("button",{...u,type:"button",className:`welcome-screen-menu-item ${i}`,onClick:A,children:N(CmA,{icon:t,shortcut:r,children:e})});eR.displayName="WelcomeScreenMenuItem";var FVe=({children:A,href:e,icon:t,shortcut:r,className:i="",...u})=>N("a",{...u,className:`welcome-screen-menu-item ${i}`,href:e,target:"_blank",rel:"noreferrer",children:N(CmA,{icon:t,shortcut:r,children:A})});FVe.displayName="WelcomeScreenMenuItemLink";var KB=({children:A})=>{let{WelcomeScreenCenterTunnel:e}=Xs();return N(e.In,{children:N("div",{className:"welcome-screen-center",children:A||cA(et,{children:[N(BmA,{}),N(EmA,{children:uA("welcomeScreen.defaults.center_heading")}),cA(dmA,{children:[N(hmA,{}),N(ImA,{})]})]})})})};KB.displayName="Center";var BmA=({children:A})=>N("div",{className:"welcome-screen-center__logo excalifont welcome-screen-decor",children:A||N(FQr,{withText:!0})});BmA.displayName="Logo";var EmA=({children:A})=>N("div",{className:"welcome-screen-center__heading welcome-screen-decor excalifont",children:A});EmA.displayName="Heading";var dmA=({children:A})=>N("div",{className:"welcome-screen-menu",children:A});dmA.displayName="Menu";var ImA=()=>{let A=ql();return N(eR,{onSelect:()=>A.executeAction(j3A),shortcut:"?",icon:aW,children:uA("helpDialog.title")})};ImA.displayName="MenuItemHelp";var hmA=()=>{let A=b0(),e=ql();return A.viewModeEnabled?null:N(eR,{onSelect:()=>e.executeAction(L3A),shortcut:us("loadScene"),icon:oW,children:uA("buttons.load")})};hmA.displayName="MenuItemLoadScene";var xVe=({onSelect:A})=>{let{t:e}=as();return N(eR,{shortcut:null,onSelect:A,icon:ChA,children:e("labels.liveCollaboration")})};xVe.displayName="MenuItemLiveCollaborationTrigger";KB.Logo=BmA;KB.Heading=EmA;KB.Menu=dmA;KB.MenuItem=eR;KB.MenuItemLink=FVe;KB.MenuItemHelp=ImA;KB.MenuItemLoadScene=hmA;KB.MenuItemLiveCollaborationTrigger=xVe;var QmA=({children:A})=>{let{WelcomeScreenMenuHintTunnel:e}=Xs();return N(e.In,{children:cA("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--menu",children:[RIe,N("div",{className:"welcome-screen-decor-hint__label",children:A||uA("welcomeScreen.defaults.menuHint")})]})})};QmA.displayName="MenuHint";var pmA=({children:A})=>{let{WelcomeScreenToolbarHintTunnel:e}=Xs();return N(e.In,{children:cA("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--toolbar",children:[N("div",{className:"welcome-screen-decor-hint__label",children:A||uA("welcomeScreen.defaults.toolbarHint")}),GIe]})})};pmA.displayName="ToolbarHint";var fmA=({children:A})=>{let{WelcomeScreenHelpHintTunnel:e}=Xs();return N(e.In,{children:cA("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--help",children:[N("div",{children:A||uA("welcomeScreen.defaults.helpHint")}),NIe]})})};fmA.displayName="HelpHint";var mmA=(A)=>N(et,{children:A.children||cA(et,{children:[N(KB,{}),N(QmA,{}),N(pmA,{}),N(fmA,{})]})});mmA.displayName="WelcomeScreen";mmA.Center=KB;mmA.Hints={MenuHint:QmA,ToolbarHint:pmA,HelpHint:fmA};var xQr=({isCollaborating:A,onSelect:e,...t})=>{let r=b0(),i=r.width<830;return cA(rD,{...t,className:Re("collab-button",{active:A}),type:"button",onSelect:e,style:{position:"relative",width:i?void 0:"auto"},title:uA("labels.liveCollaboration"),children:[i?ZIe:uA("labels.share"),r.collaborators.size>0&&N("div",{className:"CollabButton-collaborators",children:r.collaborators.size})]})};xQr.displayName="LiveCollaborationTrigger";var bRi=SVe.default((A,e,t)=>{if(Qr.DEV||Qr.MODE===Js.TEST||window?.DEBUG_FRACTIONAL_INDICES){let r=Sd(A.map((i)=>({...i})));NW(r,{shouldThrow:Qr.DEV||Qr.MODE===Js.TEST,includeBoundTextValidation:!0,reconciliationContext:{localElements:e,remoteElements:t}})}},60000,{leading:!0,trailing:!1});var SQr=({children:A,icon:e})=>{let{TTDDialogTriggerTunnel:t}=Xs(),r=zn();return N(t.In,{children:cA(Hu.Item,{onSelect:()=>{Nu("ai","dialog open","ttd"),r({openDialog:{name:"ttd",tab:"text-to-diagram"}})},icon:e??Phe,children:[A??uA("labels.textToDiagram"),N(Hu.Item.Badge,{children:"AI"})]})})};SQr.displayName="TTDDialogTrigger";wQr();var LQr=(A)=>{let{onChange:e,initialData:t,excalidrawAPI:r,isCollaborating:i=!1,onPointerUpdate:u,renderTopRightUI:a,langCode:n=X5.code,viewModeEnabled:o,zenModeEnabled:s,gridModeEnabled:l,libraryReturnUrl:g,theme:C,name:B,renderCustomStats:E,onPaste:d,detectScroll:I=!0,handleKeyboardGlobally:h=!1,onLibraryChange:Q,autoFocus:p=!1,generateIdForFile:m,onLinkOpen:f,generateLinkForSelection:D,onPointerDown:w,onPointerUp:b,onScrollChange:F,onDuplicate:v,children:S,validateEmbeddable:x,renderEmbeddable:k,aiEnabled:T,showDeprecatedFonts:R}=A,L=A.UIOptions?.canvasActions,M={...A.UIOptions,canvasActions:{...wIA.canvasActions,...L},tools:{image:A.UIOptions?.tools?.image??!0}};return L?.export&&(M.canvasActions.export.saveFileToDisk=L.export?.saveFileToDisk??wIA.canvasActions.export.saveFileToDisk),M.canvasActions.toggleTheme===null&&typeof C>"u"&&(M.canvasActions.toggleTheme=!0),le(()=>{(async()=>{await Promise.resolve().then(() => (oqe(),{}))})();let U=(Y)=>{typeof Y.scale=="number"&&Y.scale!==1&&Y.preventDefault()};return document.addEventListener("touchmove",U,{passive:!1}),()=>{document.removeEventListener("touchmove",U)}},[]),N(pCr,{store:TB,children:N(yCr,{langCode:n,theme:C,children:N(DQr,{onChange:e,initialData:t,excalidrawAPI:r,isCollaborating:i,onPointerUpdate:u,renderTopRightUI:a,langCode:n,viewModeEnabled:o,zenModeEnabled:s,gridModeEnabled:l,libraryReturnUrl:g,theme:C,name:B,renderCustomStats:E,UIOptions:M,onPaste:d,detectScroll:I,handleKeyboardGlobally:h,onLibraryChange:Q,autoFocus:p,generateIdForFile:m,onLinkOpen:f,generateLinkForSelection:D,onPointerDown:w,onPointerUp:b,onScrollChange:F,onDuplicate:v,validateEmbeddable:x,renderEmbeddable:k,aiEnabled:T!==!1,showDeprecatedFonts:R,children:S})})})},RQr=(A,e)=>{if(A.children!==e.children)return!1;let{initialData:t,UIOptions:r={},...i}=A,{initialData:u,UIOptions:a={},...n}=e,o=Object.keys(r),s=Object.keys(a);return o.length!==s.length?!1:o.every((l)=>l==="canvasActions"?Object.keys(r.canvasActions).every((g)=>g==="export"&&r?.canvasActions?.export&&a?.canvasActions?.export?r.canvasActions.export.saveFileToDisk===a.canvasActions.export.saveFileToDisk:r?.canvasActions?.[g]===a?.canvasActions?.[g]):r[l]===a[l])&&Po(i,n)},NQr=gi(LQr,RQr);NQr.displayName="Excalidraw";window.EXCALIDRAW_ASSET_PATH="https://gstack-render.localhost/excalidraw-assets/";var GQr='Helvetica, "Liberation Sans", Arial, "Hiragino Kaku Gothic ProN", "Noto Sans CJK JP", "Microsoft YaHei", "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif';xm.initialize({startOnLoad:!1,securityLevel:"strict",theme:"neutral",fontFamily:GQr,htmlLabels:!1,flowchart:{htmlLabels:!1}});window.__renderMermaid=async(A,e)=>{if(!/^[A-Za-z][\w-]*$/.test(A))throw Error(`invalid mermaid render id: ${A}`);let{svg:t}=await xm.render(A,e);return t};window.__mermaidToExcalidraw=async(A)=>{let{elements:e,files:t}=await vP(A),i={type:"excalidraw",version:2,source:"gstack-diagram-render",elements:VL(e),appState:{viewBackgroundColor:"#ffffff"},files:t??{}};return JSON.stringify(i)};window.__excalidrawToSvg=async(A)=>{let e=JSON.parse(A);if(!Array.isArray(e.elements))throw Error("excalidraw scene has no elements array");let t=await QS({elements:e.elements,appState:{...e.appState??{},exportBackground:!0},files:e.files??null,exportPadding:16});return new XMLSerializer().serializeToString(t)};var UQr=1e4;function RVe(A){if(!(A>0&&A<=UQr))throw Error(`targetWidthPx out of range: ${A}`)}window.__rasterize=async(A,e)=>{RVe(e);let t=new Blob([A],{type:"image/svg+xml;charset=utf-8"}),r=URL.createObjectURL(t);try{let i=new Image;await new Promise((l,g)=>{i.onload=()=>l(),i.onerror=()=>g(Error("SVG image decode failed (malformed SVG or foreignObject content)")),i.src=r});let u=i.naturalWidth||800,a=i.naturalHeight||600,n=e/u,o=document.createElement("canvas");o.width=Math.round(u*n),o.height=Math.round(a*n);let s=o.getContext("2d");if(!s)throw Error("2d canvas context unavailable");return s.fillStyle="#ffffff",s.fillRect(0,0,o.width,o.height),s.drawImage(i,0,0,o.width,o.height),o.toDataURL("image/png")}finally{URL.revokeObjectURL(r)}};window.__mountForScreenshot=(A,e)=>{document.getElementById("raster-stage")?.remove();let t=document.createElement("div");t.id="raster-stage",t.style.cssText=`display:inline-block;background:#fff;width:${e}px`,t.innerHTML=A;let r=t.querySelector("svg");if(r)r.setAttribute("width",String(e)),r.removeAttribute("height"),r.style.height="auto";return document.body.appendChild(t),`mounted:${e}`};window.__downscaleRaster=async(A,e,t)=>{RVe(e);let r=new Image;await new Promise((o,s)=>{r.onload=()=>o(),r.onerror=()=>s(Error("image decode failed")),r.src=A});let i=e/(r.naturalWidth||e),u=document.createElement("canvas");u.width=Math.round(r.naturalWidth*i),u.height=Math.round(r.naturalHeight*i);let a=u.getContext("2d");if(!a)throw Error("2d canvas context unavailable");a.drawImage(r,0,0,u.width,u.height);let n=t==="image/jpeg"?"image/jpeg":"image/png";return n==="image/jpeg"?u.toDataURL(n,0.9):u.toDataURL(n)};window.__probeImage=async(A)=>{let e=new Image;return await new Promise((t,r)=>{e.onload=()=>t(),e.onerror=()=>r(Error("image decode failed")),e.src=A}),JSON.stringify({width:e.naturalWidth,height:e.naturalHeight})};window.__bundleInfo={name:"gstack-diagram-render",deps:{"@excalidraw/excalidraw":"0.18.1","@excalidraw/mermaid-to-excalidraw":"2.2.2",mermaid:"11.16.1",react:"18.3.1","react-dom":"18.3.1"}};var LVe=document.getElementById("status");if(LVe)LVe.textContent="ready";var LZ=document.createElement("div");LZ.id="done";LZ.textContent="ready";LZ.style.cssText="position:absolute;left:-9999px";document.body.appendChild(LZ);
|
||
|
||
</script>
|
||
</body>
|
||
</html>
|